@videojs/react 10.0.0-beta.1 → 10.0.0-beta.11

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 (468) hide show
  1. package/dist/default/icons/dist/react/default/captions-off.js +0 -1
  2. package/dist/default/icons/dist/react/default/captions-off.js.map +1 -1
  3. package/dist/default/icons/dist/react/default/captions-on.js +0 -1
  4. package/dist/default/icons/dist/react/default/captions-on.js.map +1 -1
  5. package/dist/default/icons/dist/react/default/fullscreen-enter.js +0 -1
  6. package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  7. package/dist/default/icons/dist/react/default/fullscreen-exit.js +0 -1
  8. package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  9. package/dist/default/icons/dist/react/default/pause.js +0 -1
  10. package/dist/default/icons/dist/react/default/pause.js.map +1 -1
  11. package/dist/default/icons/dist/react/default/pip-enter.js +33 -0
  12. package/dist/default/icons/dist/react/default/pip-enter.js.map +1 -0
  13. package/dist/default/icons/dist/react/default/pip-exit.js +33 -0
  14. package/dist/default/icons/dist/react/default/pip-exit.js.map +1 -0
  15. package/dist/default/icons/dist/react/default/play.js +0 -1
  16. package/dist/default/icons/dist/react/default/play.js.map +1 -1
  17. package/dist/default/icons/dist/react/default/restart.js +0 -1
  18. package/dist/default/icons/dist/react/default/restart.js.map +1 -1
  19. package/dist/default/icons/dist/react/default/seek.js +0 -1
  20. package/dist/default/icons/dist/react/default/seek.js.map +1 -1
  21. package/dist/default/icons/dist/react/default/spinner.js +0 -1
  22. package/dist/default/icons/dist/react/default/spinner.js.map +1 -1
  23. package/dist/default/icons/dist/react/default/volume-high.js +0 -1
  24. package/dist/default/icons/dist/react/default/volume-high.js.map +1 -1
  25. package/dist/default/icons/dist/react/default/volume-low.js +0 -1
  26. package/dist/default/icons/dist/react/default/volume-low.js.map +1 -1
  27. package/dist/default/icons/dist/react/default/volume-off.js +0 -1
  28. package/dist/default/icons/dist/react/default/volume-off.js.map +1 -1
  29. package/dist/default/icons/dist/react/minimal/captions-off.js +0 -1
  30. package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -1
  31. package/dist/default/icons/dist/react/minimal/captions-on.js +0 -1
  32. package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -1
  33. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js +0 -1
  34. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  35. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js +0 -1
  36. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  37. package/dist/default/icons/dist/react/minimal/pause.js +0 -1
  38. package/dist/default/icons/dist/react/minimal/pause.js.map +1 -1
  39. package/dist/default/icons/dist/react/minimal/pip-enter.js +37 -0
  40. package/dist/default/icons/dist/react/minimal/pip-enter.js.map +1 -0
  41. package/dist/default/icons/dist/react/minimal/pip-exit.js +37 -0
  42. package/dist/default/icons/dist/react/minimal/pip-exit.js.map +1 -0
  43. package/dist/default/icons/dist/react/minimal/play.js +0 -1
  44. package/dist/default/icons/dist/react/minimal/play.js.map +1 -1
  45. package/dist/default/icons/dist/react/minimal/restart.js +0 -1
  46. package/dist/default/icons/dist/react/minimal/restart.js.map +1 -1
  47. package/dist/default/icons/dist/react/minimal/seek.js +0 -1
  48. package/dist/default/icons/dist/react/minimal/seek.js.map +1 -1
  49. package/dist/default/icons/dist/react/minimal/spinner.js +0 -1
  50. package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -1
  51. package/dist/default/icons/dist/react/minimal/volume-high.js +0 -1
  52. package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -1
  53. package/dist/default/icons/dist/react/minimal/volume-low.js +0 -1
  54. package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -1
  55. package/dist/default/icons/dist/react/minimal/volume-off.js +0 -1
  56. package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -1
  57. package/dist/default/index.js +9 -2
  58. package/dist/default/media/audio.js +3 -6
  59. package/dist/default/media/audio.js.map +1 -1
  60. package/dist/default/media/background-video/index.js +2 -2
  61. package/dist/default/media/background-video/index.js.map +1 -1
  62. package/dist/default/media/dash-video/index.js +21 -0
  63. package/dist/default/media/dash-video/index.js.map +1 -0
  64. package/dist/default/media/hls-video/index.js +3 -8
  65. package/dist/default/media/hls-video/index.js.map +1 -1
  66. package/dist/default/media/simple-hls-video/index.js +3 -7
  67. package/dist/default/media/simple-hls-video/index.js.map +1 -1
  68. package/dist/default/media/video.js +3 -6
  69. package/dist/default/media/video.js.map +1 -1
  70. package/dist/default/player/context.js +16 -10
  71. package/dist/default/player/context.js.map +1 -1
  72. package/dist/default/player/create-player.js +16 -2
  73. package/dist/default/player/create-player.js.map +1 -1
  74. package/dist/default/presets/audio/minimal-skin.css +237 -157
  75. package/dist/default/presets/audio/minimal-skin.js +136 -119
  76. package/dist/default/presets/audio/minimal-skin.js.map +1 -1
  77. package/dist/default/presets/audio/minimal-skin.tailwind.js +148 -131
  78. package/dist/default/presets/audio/minimal-skin.tailwind.js.map +1 -1
  79. package/dist/default/presets/audio/skin.css +234 -153
  80. package/dist/default/presets/audio/skin.js +129 -112
  81. package/dist/default/presets/audio/skin.js.map +1 -1
  82. package/dist/default/presets/audio/skin.tailwind.js +141 -125
  83. package/dist/default/presets/audio/skin.tailwind.js.map +1 -1
  84. package/dist/default/presets/{video/error-dialog.js → error-dialog.js} +18 -18
  85. package/dist/default/presets/error-dialog.js.map +1 -0
  86. package/dist/default/presets/video/minimal-skin.css +486 -301
  87. package/dist/default/presets/video/minimal-skin.js +127 -97
  88. package/dist/default/presets/video/minimal-skin.js.map +1 -1
  89. package/dist/default/presets/video/minimal-skin.tailwind.js +141 -112
  90. package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
  91. package/dist/default/presets/video/skin.css +484 -289
  92. package/dist/default/presets/video/skin.js +121 -94
  93. package/dist/default/presets/video/skin.js.map +1 -1
  94. package/dist/default/presets/video/skin.tailwind.js +135 -109
  95. package/dist/default/presets/video/skin.tailwind.js.map +1 -1
  96. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +9 -20
  97. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  98. package/dist/default/skins/dist/default/default/tailwind/components/button.js +4 -3
  99. package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  100. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
  101. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  102. package/dist/default/skins/dist/default/default/tailwind/components/error.js +3 -3
  103. package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  104. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js +1 -1
  105. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  106. package/dist/default/skins/dist/default/default/tailwind/components/popup.js +3 -3
  107. package/dist/default/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  108. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +16 -0
  109. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
  110. package/dist/default/skins/dist/default/default/tailwind/components/preview.js +13 -0
  111. package/dist/default/skins/dist/default/default/tailwind/components/preview.js.map +1 -0
  112. package/dist/default/skins/dist/default/default/tailwind/components/root.js +1 -1
  113. package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  114. package/dist/default/skins/dist/default/default/tailwind/components/seek.js +1 -1
  115. package/dist/default/skins/dist/default/default/tailwind/components/seek.js.map +1 -1
  116. package/dist/default/skins/dist/default/default/tailwind/components/slider.js +1 -1
  117. package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  118. package/dist/default/skins/dist/default/default/tailwind/components/surface.js +1 -1
  119. package/dist/default/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  120. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +26 -15
  121. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  122. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +10 -18
  123. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  124. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +4 -3
  125. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  126. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  127. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  128. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js +3 -3
  129. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  130. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js +1 -1
  131. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  132. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js +4 -3
  133. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  134. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
  135. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
  136. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js +14 -0
  137. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -0
  138. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +1 -1
  139. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  140. package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js +1 -1
  141. package/dist/default/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -1
  142. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +1 -1
  143. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  144. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +1 -1
  145. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  146. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +31 -15
  147. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  148. package/dist/{dev/skins/dist/default/default/tailwind/components → default/skins/dist/default/shared/tailwind}/icon-state.js +6 -1
  149. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -0
  150. package/dist/default/ui/alert-dialog/alert-dialog-root.js +2 -2
  151. package/dist/default/ui/buffering-indicator/buffering-indicator.js +3 -1
  152. package/dist/default/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  153. package/dist/default/ui/captions-button/captions-button.js +1 -1
  154. package/dist/default/ui/controls/controls-root.js +1 -1
  155. package/dist/default/ui/fullscreen-button/fullscreen-button.js +1 -1
  156. package/dist/default/ui/hooks/use-slider.js +1 -1
  157. package/dist/default/ui/mute-button/mute-button.js +1 -1
  158. package/dist/default/ui/pip-button/pip-button.js +1 -1
  159. package/dist/default/ui/play-button/play-button.js +1 -1
  160. package/dist/default/ui/playback-rate-button/playback-rate-button.js +1 -1
  161. package/dist/default/ui/popover/popover-popup.js +11 -2
  162. package/dist/default/ui/popover/popover-popup.js.map +1 -1
  163. package/dist/default/ui/popover/popover-root.js +2 -2
  164. package/dist/default/ui/poster/poster.js +1 -1
  165. package/dist/default/ui/seek-button/seek-button.js +1 -1
  166. package/dist/default/ui/slider/slider-root.js +1 -1
  167. package/dist/default/ui/thumbnail/index.js +3 -0
  168. package/dist/default/ui/thumbnail/thumbnail.js +1 -1
  169. package/dist/default/ui/time/time-value.js +1 -1
  170. package/dist/default/ui/time-slider/time-slider-root.js +3 -3
  171. package/dist/default/ui/time-slider/time-slider-root.js.map +1 -1
  172. package/dist/default/ui/tooltip/tooltip-popup.js +12 -3
  173. package/dist/default/ui/tooltip/tooltip-popup.js.map +1 -1
  174. package/dist/default/ui/tooltip/tooltip-provider.js +1 -1
  175. package/dist/default/ui/tooltip/tooltip-root.js +3 -2
  176. package/dist/default/ui/tooltip/tooltip-root.js.map +1 -1
  177. package/dist/default/ui/volume-slider/volume-slider-root.js +4 -4
  178. package/dist/default/ui/volume-slider/volume-slider-root.js.map +1 -1
  179. package/dist/default/utils/use-destroy.js +12 -4
  180. package/dist/default/utils/use-destroy.js.map +1 -1
  181. package/dist/default/utils/use-media-instance.js +24 -0
  182. package/dist/default/utils/use-media-instance.js.map +1 -0
  183. package/dist/default/utils/use-render.js +5 -1
  184. package/dist/default/utils/use-render.js.map +1 -1
  185. package/dist/dev/icons/dist/react/default/captions-off.js +0 -1
  186. package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -1
  187. package/dist/dev/icons/dist/react/default/captions-on.js +0 -1
  188. package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -1
  189. package/dist/dev/icons/dist/react/default/fullscreen-enter.js +0 -1
  190. package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  191. package/dist/dev/icons/dist/react/default/fullscreen-exit.js +0 -1
  192. package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  193. package/dist/dev/icons/dist/react/default/pause.js +0 -1
  194. package/dist/dev/icons/dist/react/default/pause.js.map +1 -1
  195. package/dist/dev/icons/dist/react/default/pip-enter.js +33 -0
  196. package/dist/dev/icons/dist/react/default/pip-enter.js.map +1 -0
  197. package/dist/dev/icons/dist/react/default/pip-exit.js +33 -0
  198. package/dist/dev/icons/dist/react/default/pip-exit.js.map +1 -0
  199. package/dist/dev/icons/dist/react/default/play.js +0 -1
  200. package/dist/dev/icons/dist/react/default/play.js.map +1 -1
  201. package/dist/dev/icons/dist/react/default/restart.js +0 -1
  202. package/dist/dev/icons/dist/react/default/restart.js.map +1 -1
  203. package/dist/dev/icons/dist/react/default/seek.js +0 -1
  204. package/dist/dev/icons/dist/react/default/seek.js.map +1 -1
  205. package/dist/dev/icons/dist/react/default/spinner.js +0 -1
  206. package/dist/dev/icons/dist/react/default/spinner.js.map +1 -1
  207. package/dist/dev/icons/dist/react/default/volume-high.js +0 -1
  208. package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -1
  209. package/dist/dev/icons/dist/react/default/volume-low.js +0 -1
  210. package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -1
  211. package/dist/dev/icons/dist/react/default/volume-off.js +0 -1
  212. package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -1
  213. package/dist/dev/icons/dist/react/minimal/captions-off.js +0 -1
  214. package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -1
  215. package/dist/dev/icons/dist/react/minimal/captions-on.js +0 -1
  216. package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -1
  217. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js +0 -1
  218. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  219. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js +0 -1
  220. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  221. package/dist/dev/icons/dist/react/minimal/pause.js +0 -1
  222. package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -1
  223. package/dist/dev/icons/dist/react/minimal/pip-enter.js +37 -0
  224. package/dist/dev/icons/dist/react/minimal/pip-enter.js.map +1 -0
  225. package/dist/dev/icons/dist/react/minimal/pip-exit.js +37 -0
  226. package/dist/dev/icons/dist/react/minimal/pip-exit.js.map +1 -0
  227. package/dist/dev/icons/dist/react/minimal/play.js +0 -1
  228. package/dist/dev/icons/dist/react/minimal/play.js.map +1 -1
  229. package/dist/dev/icons/dist/react/minimal/restart.js +0 -1
  230. package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -1
  231. package/dist/dev/icons/dist/react/minimal/seek.js +0 -1
  232. package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -1
  233. package/dist/dev/icons/dist/react/minimal/spinner.js +0 -1
  234. package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -1
  235. package/dist/dev/icons/dist/react/minimal/volume-high.js +0 -1
  236. package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -1
  237. package/dist/dev/icons/dist/react/minimal/volume-low.js +0 -1
  238. package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -1
  239. package/dist/dev/icons/dist/react/minimal/volume-off.js +0 -1
  240. package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -1
  241. package/dist/dev/index.d.ts +9 -2
  242. package/dist/dev/index.js +9 -2
  243. package/dist/dev/media/audio.d.ts.map +1 -1
  244. package/dist/dev/media/audio.js +3 -6
  245. package/dist/dev/media/audio.js.map +1 -1
  246. package/dist/dev/media/background-video/index.js +2 -2
  247. package/dist/dev/media/background-video/index.js.map +1 -1
  248. package/dist/dev/media/dash-video/index.d.ts +11 -0
  249. package/dist/dev/media/dash-video/index.d.ts.map +1 -0
  250. package/dist/dev/media/dash-video/index.js +21 -0
  251. package/dist/dev/media/dash-video/index.js.map +1 -0
  252. package/dist/dev/media/hls-video/index.d.ts.map +1 -1
  253. package/dist/dev/media/hls-video/index.js +3 -8
  254. package/dist/dev/media/hls-video/index.js.map +1 -1
  255. package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -1
  256. package/dist/dev/media/simple-hls-video/index.js +3 -7
  257. package/dist/dev/media/simple-hls-video/index.js.map +1 -1
  258. package/dist/dev/media/video.d.ts.map +1 -1
  259. package/dist/dev/media/video.js +3 -6
  260. package/dist/dev/media/video.js.map +1 -1
  261. package/dist/dev/player/context.d.ts +20 -4
  262. package/dist/dev/player/context.d.ts.map +1 -1
  263. package/dist/dev/player/context.js +16 -10
  264. package/dist/dev/player/context.js.map +1 -1
  265. package/dist/dev/player/create-player.js +16 -2
  266. package/dist/dev/player/create-player.js.map +1 -1
  267. package/dist/dev/presets/audio/minimal-skin.css +237 -157
  268. package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -1
  269. package/dist/dev/presets/audio/minimal-skin.js +136 -119
  270. package/dist/dev/presets/audio/minimal-skin.js.map +1 -1
  271. package/dist/dev/presets/audio/minimal-skin.tailwind.d.ts.map +1 -1
  272. package/dist/dev/presets/audio/minimal-skin.tailwind.js +148 -131
  273. package/dist/dev/presets/audio/minimal-skin.tailwind.js.map +1 -1
  274. package/dist/dev/presets/audio/skin.css +234 -153
  275. package/dist/dev/presets/audio/skin.d.ts.map +1 -1
  276. package/dist/dev/presets/audio/skin.js +129 -112
  277. package/dist/dev/presets/audio/skin.js.map +1 -1
  278. package/dist/dev/presets/audio/skin.tailwind.d.ts.map +1 -1
  279. package/dist/dev/presets/audio/skin.tailwind.js +141 -125
  280. package/dist/dev/presets/audio/skin.tailwind.js.map +1 -1
  281. package/dist/dev/presets/{video/error-dialog.js → error-dialog.js} +18 -18
  282. package/dist/dev/presets/error-dialog.js.map +1 -0
  283. package/dist/dev/presets/types.d.ts +6 -1
  284. package/dist/dev/presets/types.d.ts.map +1 -1
  285. package/dist/dev/presets/video/minimal-skin.css +486 -301
  286. package/dist/dev/presets/video/minimal-skin.d.ts +2 -2
  287. package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
  288. package/dist/dev/presets/video/minimal-skin.js +127 -97
  289. package/dist/dev/presets/video/minimal-skin.js.map +1 -1
  290. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
  291. package/dist/dev/presets/video/minimal-skin.tailwind.js +141 -112
  292. package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
  293. package/dist/dev/presets/video/skin.css +484 -289
  294. package/dist/dev/presets/video/skin.d.ts +2 -2
  295. package/dist/dev/presets/video/skin.d.ts.map +1 -1
  296. package/dist/dev/presets/video/skin.js +121 -94
  297. package/dist/dev/presets/video/skin.js.map +1 -1
  298. package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
  299. package/dist/dev/presets/video/skin.tailwind.js +135 -109
  300. package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
  301. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +9 -20
  302. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  303. package/dist/dev/skins/dist/default/default/tailwind/components/button.js +4 -3
  304. package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  305. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +1 -1
  306. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  307. package/dist/dev/skins/dist/default/default/tailwind/components/error.js +3 -3
  308. package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  309. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js +1 -1
  310. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  311. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js +3 -3
  312. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  313. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +16 -0
  314. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -0
  315. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js +13 -0
  316. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js.map +1 -0
  317. package/dist/dev/skins/dist/default/default/tailwind/components/root.js +1 -1
  318. package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  319. package/dist/dev/skins/dist/default/default/tailwind/components/seek.js +1 -1
  320. package/dist/dev/skins/dist/default/default/tailwind/components/seek.js.map +1 -1
  321. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +1 -1
  322. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  323. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js +1 -1
  324. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  325. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +26 -15
  326. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  327. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +10 -18
  328. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  329. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +4 -3
  330. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  331. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  332. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  333. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js +3 -3
  334. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  335. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js +1 -1
  336. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  337. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js +4 -3
  338. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  339. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +16 -0
  340. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -0
  341. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js +14 -0
  342. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -0
  343. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +1 -1
  344. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  345. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js +1 -1
  346. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek.js.map +1 -1
  347. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +1 -1
  348. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  349. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +1 -1
  350. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  351. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +31 -15
  352. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  353. package/dist/{default/skins/dist/default/default/tailwind/components → dev/skins/dist/default/shared/tailwind}/icon-state.js +6 -1
  354. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -0
  355. package/dist/dev/ui/alert-dialog/alert-dialog-close.d.ts +1 -1
  356. package/dist/dev/ui/alert-dialog/alert-dialog-description.d.ts +1 -1
  357. package/dist/dev/ui/alert-dialog/alert-dialog-popup.d.ts +1 -1
  358. package/dist/dev/ui/alert-dialog/alert-dialog-root.d.ts +1 -1
  359. package/dist/dev/ui/alert-dialog/alert-dialog-root.js +2 -2
  360. package/dist/dev/ui/alert-dialog/alert-dialog-title.d.ts +1 -1
  361. package/dist/dev/ui/alert-dialog/context.d.ts +2 -3
  362. package/dist/dev/ui/alert-dialog/context.d.ts.map +1 -1
  363. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts +1 -1
  364. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts.map +1 -1
  365. package/dist/dev/ui/buffering-indicator/buffering-indicator.js +3 -1
  366. package/dist/dev/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  367. package/dist/dev/ui/captions-button/captions-button.d.ts +1 -1
  368. package/dist/dev/ui/captions-button/captions-button.js +1 -1
  369. package/dist/dev/ui/controls/controls-group.d.ts +1 -1
  370. package/dist/dev/ui/controls/controls-root.d.ts +1 -1
  371. package/dist/dev/ui/controls/controls-root.js +1 -1
  372. package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts +1 -1
  373. package/dist/dev/ui/fullscreen-button/fullscreen-button.js +1 -1
  374. package/dist/dev/ui/hooks/use-slider.d.ts +1 -1
  375. package/dist/dev/ui/hooks/use-slider.js +1 -1
  376. package/dist/dev/ui/mute-button/mute-button.d.ts +1 -1
  377. package/dist/dev/ui/mute-button/mute-button.js +1 -1
  378. package/dist/dev/ui/pip-button/pip-button.d.ts +1 -1
  379. package/dist/dev/ui/pip-button/pip-button.js +1 -1
  380. package/dist/dev/ui/play-button/play-button.d.ts +1 -1
  381. package/dist/dev/ui/play-button/play-button.js +1 -1
  382. package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts +1 -1
  383. package/dist/dev/ui/playback-rate-button/playback-rate-button.js +1 -1
  384. package/dist/dev/ui/popover/context.d.ts +2 -3
  385. package/dist/dev/ui/popover/context.d.ts.map +1 -1
  386. package/dist/dev/ui/popover/popover-arrow.d.ts +1 -1
  387. package/dist/dev/ui/popover/popover-popup.d.ts +1 -1
  388. package/dist/dev/ui/popover/popover-popup.d.ts.map +1 -1
  389. package/dist/dev/ui/popover/popover-popup.js +11 -2
  390. package/dist/dev/ui/popover/popover-popup.js.map +1 -1
  391. package/dist/dev/ui/popover/popover-root.d.ts +1 -1
  392. package/dist/dev/ui/popover/popover-root.js +2 -2
  393. package/dist/dev/ui/popover/popover-trigger.d.ts +1 -1
  394. package/dist/dev/ui/poster/poster.d.ts +1 -1
  395. package/dist/dev/ui/poster/poster.js +1 -1
  396. package/dist/dev/ui/seek-button/seek-button.d.ts +1 -1
  397. package/dist/dev/ui/seek-button/seek-button.js +1 -1
  398. package/dist/dev/ui/slider/slider-buffer.d.ts +1 -1
  399. package/dist/dev/ui/slider/slider-fill.d.ts +1 -1
  400. package/dist/dev/ui/slider/slider-preview.d.ts +1 -1
  401. package/dist/dev/ui/slider/slider-root.d.ts +1 -1
  402. package/dist/dev/ui/slider/slider-root.js +1 -1
  403. package/dist/dev/ui/slider/slider-thumb.d.ts +1 -1
  404. package/dist/dev/ui/slider/slider-thumbnail.d.ts +1 -1
  405. package/dist/dev/ui/slider/slider-track.d.ts +1 -1
  406. package/dist/dev/ui/slider/slider-value.d.ts +1 -1
  407. package/dist/dev/ui/thumbnail/index.d.ts +2 -0
  408. package/dist/dev/ui/thumbnail/index.js +3 -0
  409. package/dist/dev/ui/thumbnail/thumbnail.d.ts +1 -1
  410. package/dist/dev/ui/thumbnail/thumbnail.js +1 -1
  411. package/dist/dev/ui/time/time-value.d.ts +1 -1
  412. package/dist/dev/ui/time/time-value.js +1 -1
  413. package/dist/dev/ui/time-slider/time-slider-root.d.ts +1 -1
  414. package/dist/dev/ui/time-slider/time-slider-root.js +3 -3
  415. package/dist/dev/ui/time-slider/time-slider-root.js.map +1 -1
  416. package/dist/dev/ui/tooltip/context.d.ts +2 -3
  417. package/dist/dev/ui/tooltip/context.d.ts.map +1 -1
  418. package/dist/dev/ui/tooltip/tooltip-arrow.d.ts +1 -1
  419. package/dist/dev/ui/tooltip/tooltip-popup.d.ts +1 -1
  420. package/dist/dev/ui/tooltip/tooltip-popup.d.ts.map +1 -1
  421. package/dist/dev/ui/tooltip/tooltip-popup.js +12 -3
  422. package/dist/dev/ui/tooltip/tooltip-popup.js.map +1 -1
  423. package/dist/dev/ui/tooltip/tooltip-provider.d.ts +1 -1
  424. package/dist/dev/ui/tooltip/tooltip-provider.js +1 -1
  425. package/dist/dev/ui/tooltip/tooltip-root.d.ts +1 -1
  426. package/dist/dev/ui/tooltip/tooltip-root.d.ts.map +1 -1
  427. package/dist/dev/ui/tooltip/tooltip-root.js +3 -2
  428. package/dist/dev/ui/tooltip/tooltip-root.js.map +1 -1
  429. package/dist/dev/ui/tooltip/tooltip-trigger.d.ts +1 -1
  430. package/dist/dev/ui/volume-slider/volume-slider-root.d.ts +1 -1
  431. package/dist/dev/ui/volume-slider/volume-slider-root.js +4 -4
  432. package/dist/dev/ui/volume-slider/volume-slider-root.js.map +1 -1
  433. package/dist/dev/utils/attach-media-element.d.ts +9 -0
  434. package/dist/dev/utils/attach-media-element.d.ts.map +1 -0
  435. package/dist/dev/utils/media-props.d.ts +307 -0
  436. package/dist/dev/utils/media-props.d.ts.map +1 -0
  437. package/dist/dev/utils/use-composed-refs.d.ts +29 -0
  438. package/dist/dev/utils/use-composed-refs.d.ts.map +1 -0
  439. package/dist/dev/utils/use-destroy.d.ts +22 -0
  440. package/dist/dev/utils/use-destroy.d.ts.map +1 -0
  441. package/dist/dev/utils/use-destroy.js +12 -4
  442. package/dist/dev/utils/use-destroy.js.map +1 -1
  443. package/dist/dev/utils/use-latest-ref.d.ts +18 -0
  444. package/dist/dev/utils/use-latest-ref.d.ts.map +1 -0
  445. package/dist/dev/utils/use-media-instance.d.ts +16 -0
  446. package/dist/dev/utils/use-media-instance.d.ts.map +1 -0
  447. package/dist/dev/utils/use-media-instance.js +24 -0
  448. package/dist/dev/utils/use-media-instance.js.map +1 -0
  449. package/dist/dev/utils/use-render.d.ts.map +1 -1
  450. package/dist/dev/utils/use-render.js +5 -1
  451. package/dist/dev/utils/use-render.js.map +1 -1
  452. package/package.json +9 -9
  453. package/dist/default/icons/dist/react/default/pip.js +0 -27
  454. package/dist/default/icons/dist/react/default/pip.js.map +0 -1
  455. package/dist/default/icons/dist/react/minimal/pip.js +0 -27
  456. package/dist/default/icons/dist/react/minimal/pip.js.map +0 -1
  457. package/dist/default/presets/video/error-dialog.js.map +0 -1
  458. package/dist/default/skins/dist/default/default/tailwind/components/icon-state.js.map +0 -1
  459. package/dist/default/skins/dist/default/minimal/tailwind/components/icon-state.js +0 -29
  460. package/dist/default/skins/dist/default/minimal/tailwind/components/icon-state.js.map +0 -1
  461. package/dist/dev/icons/dist/react/default/pip.js +0 -27
  462. package/dist/dev/icons/dist/react/default/pip.js.map +0 -1
  463. package/dist/dev/icons/dist/react/minimal/pip.js +0 -27
  464. package/dist/dev/icons/dist/react/minimal/pip.js.map +0 -1
  465. package/dist/dev/presets/video/error-dialog.js.map +0 -1
  466. package/dist/dev/skins/dist/default/default/tailwind/components/icon-state.js.map +0 -1
  467. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon-state.js +0 -29
  468. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon-state.js.map +0 -1
@@ -7,6 +7,10 @@ import { cloneElement, createElement, isValidElement } from "react";
7
7
  import { isFunction } from "@videojs/utils/predicate";
8
8
 
9
9
  //#region src/utils/use-render.tsx
10
+ /** Check if a value is a render prop (function or React element). */
11
+ function isRenderProp(value) {
12
+ return isFunction(value) || isValidElement(value);
13
+ }
10
14
  function resolveClassName(className, state) {
11
15
  return isFunction(className) ? className(state) : className;
12
16
  }
@@ -67,5 +71,5 @@ function renderElement(element, componentProps, params) {
67
71
  }
68
72
 
69
73
  //#endregion
70
- export { renderElement };
74
+ export { isRenderProp, renderElement };
71
75
  //# sourceMappingURL=use-render.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-render.js","names":[],"sources":["../../../src/utils/use-render.tsx"],"sourcesContent":["'use client';\n\nimport { getStateDataAttrs, type StateAttrMap } from '@videojs/core/dom';\nimport { isFunction } from '@videojs/utils/predicate';\nimport type { CSSProperties, ReactElement, Ref } from 'react';\nimport { cloneElement, createElement, isValidElement } from 'react';\nimport { mergeProps } from './merge-props';\nimport type { HTMLProps, RenderProp } from './types';\nimport { composeRefs } from './use-composed-refs';\n\ntype IntrinsicTagName = keyof React.JSX.IntrinsicElements;\n\nexport interface UseRenderComponentProps<State> {\n className?: string | ((state: State) => string | undefined) | undefined;\n style?: CSSProperties | ((state: State) => CSSProperties | undefined) | undefined;\n render?: RenderProp<State> | undefined;\n}\n\nexport interface UseRenderParameters<State, RenderedElementType extends Element> {\n state: State;\n ref?: Ref<RenderedElementType> | Ref<RenderedElementType>[] | undefined;\n props?: object | object[] | undefined;\n stateAttrMap?: StateAttrMap<State> | undefined;\n}\n\nfunction resolveClassName<State>(\n className: string | ((state: State) => string | undefined) | undefined,\n state: State\n): string | undefined {\n return isFunction(className) ? className(state) : className;\n}\n\nfunction resolveStyle<State>(\n style: CSSProperties | ((state: State) => CSSProperties | undefined) | undefined,\n state: State\n): CSSProperties | undefined {\n return isFunction(style) ? style(state) : style;\n}\n\nfunction getElementRef(element: ReactElement): Ref<unknown> | undefined {\n // React 19+ uses element.props.ref, older versions use element.ref\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const elementAny = element as any;\n return elementAny.ref ?? elementAny.props?.ref;\n}\n\n/**\n * Render a UI component element.\n *\n * Handles:\n * - Default tag rendering\n * - Render prop (element or function)\n * - Props merging (event handlers chained, className concatenated, style merged)\n * - Ref composition\n * - className/style as functions of state\n *\n * @public\n * @example\n * ```tsx\n * return renderElement('button', componentProps, {\n * state,\n * ref: [forwardedRef, buttonRef],\n * props: [{ type: 'button' }, elementProps, getButtonProps],\n * });\n * ```\n */\nexport function renderElement<\n State extends object,\n RenderedElementType extends Element,\n TagName extends IntrinsicTagName,\n>(\n element: TagName,\n componentProps: UseRenderComponentProps<State>,\n params: UseRenderParameters<State, RenderedElementType>\n): ReactElement | null {\n const { className: classNameProp, style: styleProp, render } = componentProps;\n const { state, ref, props, stateAttrMap } = params;\n\n // Resolve className and style if they're functions\n const className = resolveClassName(classNameProp, state);\n const style = resolveStyle(styleProp, state);\n\n // Generate data attributes from state\n const stateDataAttrs = getStateDataAttrs(state, stateAttrMap);\n\n // Merge: state data attrs first, then props (so props can override)\n const propsArray = Array.isArray(props) ? props : props ? [props] : [];\n const mergedProps = mergeProps(stateDataAttrs, ...(propsArray as Record<string, unknown>[]));\n\n if (className !== undefined) {\n // Add resolved className and style\n mergedProps.className = mergedProps.className ? `${mergedProps.className} ${className}` : className;\n }\n\n if (style !== undefined) {\n mergedProps.style = mergedProps.style ? { ...(mergedProps.style as CSSProperties), ...style } : style;\n }\n\n if (isFunction(render)) {\n // Render function: call with props and state\n const mergedRef = composeRefs(ref, mergedProps.ref);\n return render({ ...mergedProps, ref: mergedRef } as HTMLProps, state);\n }\n\n if (isValidElement(render)) {\n const elementRef = getElementRef(render);\n\n const mergedRef = composeRefs(ref, mergedProps.ref, elementRef);\n\n const elementProps = mergeProps(mergedProps, render.props as Record<string, unknown>);\n elementProps.ref = mergedRef;\n\n return cloneElement(render, elementProps);\n }\n\n // Default tag\n const mergedRef = composeRefs(ref, mergedProps.ref);\n mergedProps.ref = mergedRef;\n\n return createElement(element, mergedProps);\n}\n\nexport namespace renderElement {\n export type ComponentProps<State> = UseRenderComponentProps<State>;\n export type Parameters<State, RenderedElementType extends Element> = UseRenderParameters<State, RenderedElementType>;\n}\n"],"mappings":";;;;;;;;;AAyBA,SAAS,iBACP,WACA,OACoB;AACpB,QAAO,WAAW,UAAU,GAAG,UAAU,MAAM,GAAG;;AAGpD,SAAS,aACP,OACA,OAC2B;AAC3B,QAAO,WAAW,MAAM,GAAG,MAAM,MAAM,GAAG;;AAG5C,SAAS,cAAc,SAAiD;CAGtE,MAAM,aAAa;AACnB,QAAO,WAAW,OAAO,WAAW,OAAO;;;;;;;;;;;;;;;;;;;;;;AAuB7C,SAAgB,cAKd,SACA,gBACA,QACqB;CACrB,MAAM,EAAE,WAAW,eAAe,OAAO,WAAW,WAAW;CAC/D,MAAM,EAAE,OAAO,KAAK,OAAO,iBAAiB;CAG5C,MAAM,YAAY,iBAAiB,eAAe,MAAM;CACxD,MAAM,QAAQ,aAAa,WAAW,MAAM;CAO5C,MAAM,cAAc,WAJG,kBAAkB,OAAO,aAAa,EAId,GAD5B,MAAM,QAAQ,MAAM,GAAG,QAAQ,QAAQ,CAAC,MAAM,GAAG,EAAE,CACsB;AAE5F,KAAI,cAAc,OAEhB,aAAY,YAAY,YAAY,YAAY,GAAG,YAAY,UAAU,GAAG,cAAc;AAG5F,KAAI,UAAU,OACZ,aAAY,QAAQ,YAAY,QAAQ;EAAE,GAAI,YAAY;EAAyB,GAAG;EAAO,GAAG;AAGlG,KAAI,WAAW,OAAO,EAAE;EAEtB,MAAM,YAAY,YAAY,KAAK,YAAY,IAAI;AACnD,SAAO,OAAO;GAAE,GAAG;GAAa,KAAK;GAAW,EAAe,MAAM;;AAGvE,KAAI,eAAe,OAAO,EAAE;EAC1B,MAAM,aAAa,cAAc,OAAO;EAExC,MAAM,YAAY,YAAY,KAAK,YAAY,KAAK,WAAW;EAE/D,MAAM,eAAe,WAAW,aAAa,OAAO,MAAiC;AACrF,eAAa,MAAM;AAEnB,SAAO,aAAa,QAAQ,aAAa;;AAK3C,aAAY,MADM,YAAY,KAAK,YAAY,IAAI;AAGnD,QAAO,cAAc,SAAS,YAAY"}
1
+ {"version":3,"file":"use-render.js","names":[],"sources":["../../../src/utils/use-render.tsx"],"sourcesContent":["'use client';\n\nimport { getStateDataAttrs, type StateAttrMap } from '@videojs/core/dom';\nimport { isFunction } from '@videojs/utils/predicate';\nimport type { CSSProperties, ReactElement, Ref } from 'react';\nimport { cloneElement, createElement, isValidElement } from 'react';\nimport { mergeProps } from './merge-props';\nimport type { HTMLProps, RenderProp } from './types';\nimport { composeRefs } from './use-composed-refs';\n\n/** Check if a value is a render prop (function or React element). */\nexport function isRenderProp(value: unknown): value is RenderProp<any> {\n return isFunction(value) || isValidElement(value);\n}\n\ntype IntrinsicTagName = keyof React.JSX.IntrinsicElements;\n\nexport interface UseRenderComponentProps<State> {\n className?: string | ((state: State) => string | undefined) | undefined;\n style?: CSSProperties | ((state: State) => CSSProperties | undefined) | undefined;\n render?: RenderProp<State> | undefined;\n}\n\nexport interface UseRenderParameters<State, RenderedElementType extends Element> {\n state: State;\n ref?: Ref<RenderedElementType> | Ref<RenderedElementType>[] | undefined;\n props?: object | object[] | undefined;\n stateAttrMap?: StateAttrMap<State> | undefined;\n}\n\nfunction resolveClassName<State>(\n className: string | ((state: State) => string | undefined) | undefined,\n state: State\n): string | undefined {\n return isFunction(className) ? className(state) : className;\n}\n\nfunction resolveStyle<State>(\n style: CSSProperties | ((state: State) => CSSProperties | undefined) | undefined,\n state: State\n): CSSProperties | undefined {\n return isFunction(style) ? style(state) : style;\n}\n\nfunction getElementRef(element: ReactElement): Ref<unknown> | undefined {\n // React 19+ uses element.props.ref, older versions use element.ref\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const elementAny = element as any;\n return elementAny.ref ?? elementAny.props?.ref;\n}\n\n/**\n * Render a UI component element.\n *\n * Handles:\n * - Default tag rendering\n * - Render prop (element or function)\n * - Props merging (event handlers chained, className concatenated, style merged)\n * - Ref composition\n * - className/style as functions of state\n *\n * @public\n * @example\n * ```tsx\n * return renderElement('button', componentProps, {\n * state,\n * ref: [forwardedRef, buttonRef],\n * props: [{ type: 'button' }, elementProps, getButtonProps],\n * });\n * ```\n */\nexport function renderElement<\n State extends object,\n RenderedElementType extends Element,\n TagName extends IntrinsicTagName,\n>(\n element: TagName,\n componentProps: UseRenderComponentProps<State>,\n params: UseRenderParameters<State, RenderedElementType>\n): ReactElement | null {\n const { className: classNameProp, style: styleProp, render } = componentProps;\n const { state, ref, props, stateAttrMap } = params;\n\n // Resolve className and style if they're functions\n const className = resolveClassName(classNameProp, state);\n const style = resolveStyle(styleProp, state);\n\n // Generate data attributes from state\n const stateDataAttrs = getStateDataAttrs(state, stateAttrMap);\n\n // Merge: state data attrs first, then props (so props can override)\n const propsArray = Array.isArray(props) ? props : props ? [props] : [];\n const mergedProps = mergeProps(stateDataAttrs, ...(propsArray as Record<string, unknown>[]));\n\n if (className !== undefined) {\n // Add resolved className and style\n mergedProps.className = mergedProps.className ? `${mergedProps.className} ${className}` : className;\n }\n\n if (style !== undefined) {\n mergedProps.style = mergedProps.style ? { ...(mergedProps.style as CSSProperties), ...style } : style;\n }\n\n if (isFunction(render)) {\n // Render function: call with props and state\n const mergedRef = composeRefs(ref, mergedProps.ref);\n return render({ ...mergedProps, ref: mergedRef } as HTMLProps, state);\n }\n\n if (isValidElement(render)) {\n const elementRef = getElementRef(render);\n\n const mergedRef = composeRefs(ref, mergedProps.ref, elementRef);\n\n const elementProps = mergeProps(mergedProps, render.props as Record<string, unknown>);\n elementProps.ref = mergedRef;\n\n return cloneElement(render, elementProps);\n }\n\n // Default tag\n const mergedRef = composeRefs(ref, mergedProps.ref);\n mergedProps.ref = mergedRef;\n\n return createElement(element, mergedProps);\n}\n\nexport namespace renderElement {\n export type ComponentProps<State> = UseRenderComponentProps<State>;\n export type Parameters<State, RenderedElementType extends Element> = UseRenderParameters<State, RenderedElementType>;\n}\n"],"mappings":";;;;;;;;;;AAWA,SAAgB,aAAa,OAA0C;AACrE,QAAO,WAAW,MAAM,IAAI,eAAe,MAAM;;AAkBnD,SAAS,iBACP,WACA,OACoB;AACpB,QAAO,WAAW,UAAU,GAAG,UAAU,MAAM,GAAG;;AAGpD,SAAS,aACP,OACA,OAC2B;AAC3B,QAAO,WAAW,MAAM,GAAG,MAAM,MAAM,GAAG;;AAG5C,SAAS,cAAc,SAAiD;CAGtE,MAAM,aAAa;AACnB,QAAO,WAAW,OAAO,WAAW,OAAO;;;;;;;;;;;;;;;;;;;;;;AAuB7C,SAAgB,cAKd,SACA,gBACA,QACqB;CACrB,MAAM,EAAE,WAAW,eAAe,OAAO,WAAW,WAAW;CAC/D,MAAM,EAAE,OAAO,KAAK,OAAO,iBAAiB;CAG5C,MAAM,YAAY,iBAAiB,eAAe,MAAM;CACxD,MAAM,QAAQ,aAAa,WAAW,MAAM;CAO5C,MAAM,cAAc,WAJG,kBAAkB,OAAO,aAAa,EAId,GAD5B,MAAM,QAAQ,MAAM,GAAG,QAAQ,QAAQ,CAAC,MAAM,GAAG,EAAE,CACsB;AAE5F,KAAI,cAAc,OAEhB,aAAY,YAAY,YAAY,YAAY,GAAG,YAAY,UAAU,GAAG,cAAc;AAG5F,KAAI,UAAU,OACZ,aAAY,QAAQ,YAAY,QAAQ;EAAE,GAAI,YAAY;EAAyB,GAAG;EAAO,GAAG;AAGlG,KAAI,WAAW,OAAO,EAAE;EAEtB,MAAM,YAAY,YAAY,KAAK,YAAY,IAAI;AACnD,SAAO,OAAO;GAAE,GAAG;GAAa,KAAK;GAAW,EAAe,MAAM;;AAGvE,KAAI,eAAe,OAAO,EAAE;EAC1B,MAAM,aAAa,cAAc,OAAO;EAExC,MAAM,YAAY,YAAY,KAAK,YAAY,KAAK,WAAW;EAE/D,MAAM,eAAe,WAAW,aAAa,OAAO,MAAiC;AACrF,eAAa,MAAM;AAEnB,SAAO,aAAa,QAAQ,aAAa;;AAK3C,aAAY,MADM,YAAY,KAAK,YAAY,IAAI;AAGnD,QAAO,cAAc,SAAS,YAAY"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@videojs/react",
3
3
  "type": "module",
4
- "version": "10.0.0-beta.1",
4
+ "version": "10.0.0-beta.11",
5
5
  "description": "React library for building media players",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
@@ -65,10 +65,10 @@
65
65
  "react": ">=16.8.0"
66
66
  },
67
67
  "dependencies": {
68
- "@videojs/spf": "10.0.0-beta.1",
69
- "@videojs/core": "10.0.0-beta.1",
70
- "@videojs/store": "10.0.0-beta.1",
71
- "@videojs/utils": "10.0.0-beta.1"
68
+ "@videojs/core": "10.0.0-beta.11",
69
+ "@videojs/spf": "10.0.0-beta.11",
70
+ "@videojs/store": "10.0.0-beta.11",
71
+ "@videojs/utils": "10.0.0-beta.11"
72
72
  },
73
73
  "devDependencies": {
74
74
  "@testing-library/react": "^16.3.0",
@@ -77,10 +77,10 @@
77
77
  "react": "^19.2.1",
78
78
  "react-dom": "^19.2.1",
79
79
  "tsdown": "^0.20.3",
80
- "typescript": "^5.9.3",
81
- "vitest": "^3.2.4",
82
- "@videojs/icons": "10.0.0-beta.1",
83
- "@videojs/skins": "10.0.0-alpha.4"
80
+ "typescript": "^6.0.2",
81
+ "vitest": "^4.1.0",
82
+ "@videojs/icons": "10.0.0-beta.11",
83
+ "@videojs/skins": "10.0.0-beta.11"
84
84
  },
85
85
  "publishConfig": {
86
86
  "access": "public"
@@ -1,27 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
-
3
- //#region ../icons/dist/react/default/pip.js
4
- const PipIcon = (props) => /* @__PURE__ */ jsxs("svg", {
5
- xmlns: "http://www.w3.org/2000/svg",
6
- width: 18,
7
- height: 18,
8
- fill: "none",
9
- "aria-hidden": "true",
10
- viewBox: "0 0 18 18",
11
- ...props,
12
- children: [/* @__PURE__ */ jsx("path", {
13
- fill: "currentColor",
14
- d: "M13 2a4 4 0 0 1 4 4v2.035A3.5 3.5 0 0 0 16.5 8H15V6.273C15 5.018 13.96 4 12.679 4H4.32C3.04 4 2 5.018 2 6.273v5.454C2 12.982 3.04 14 4.321 14H6v1.5q0 .255.035.5H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"
15
- }), /* @__PURE__ */ jsx("rect", {
16
- width: 10,
17
- height: 7,
18
- x: 8,
19
- y: 10,
20
- fill: "currentColor",
21
- rx: 2
22
- })]
23
- });
24
-
25
- //#endregion
26
- export { PipIcon as default };
27
- //# sourceMappingURL=pip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pip.js","names":[],"sources":["../../../../../../../icons/dist/react/default/pip.js"],"sourcesContent":["import { jsx, jsxs } from \"react/jsx-runtime\";\nconst PipIcon = (props) => /* @__PURE__ */ jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 18, height: 18, fill: \"none\", \"aria-hidden\": \"true\", viewBox: \"0 0 18 18\", ...props, children: [\n /* @__PURE__ */ jsx(\"path\", { fill: \"currentColor\", d: \"M13 2a4 4 0 0 1 4 4v2.035A3.5 3.5 0 0 0 16.5 8H15V6.273C15 5.018 13.96 4 12.679 4H4.32C3.04 4 2 5.018 2 6.273v5.454C2 12.982 3.04 14 4.321 14H6v1.5q0 .255.035.5H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\" }),\n /* @__PURE__ */ jsx(\"rect\", { width: 10, height: 7, x: 8, y: 10, fill: \"currentColor\", rx: 2 })\n] });\nexport default PipIcon;\n"],"mappings":";;;AACA,MAAM,WAAW,UAA0B,qBAAK,OAAO;CAAE,OAAO;CAA8B,OAAO;CAAI,QAAQ;CAAI,MAAM;CAAQ,eAAe;CAAQ,SAAS;CAAa,GAAG;CAAO,UAAU,CAClL,oBAAI,QAAQ;EAAE,MAAM;EAAgB,GAAG;EAAqM,CAAC,EAC7O,oBAAI,QAAQ;EAAE,OAAO;EAAI,QAAQ;EAAG,GAAG;EAAG,GAAG;EAAI,MAAM;EAAgB,IAAI;EAAG,CAAC,CAChG;CAAE,CAAC"}
@@ -1,27 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
-
3
- //#region ../icons/dist/react/minimal/pip.js
4
- const PipIcon = (props) => /* @__PURE__ */ jsxs("svg", {
5
- xmlns: "http://www.w3.org/2000/svg",
6
- width: 18,
7
- height: 18,
8
- fill: "none",
9
- "aria-hidden": "true",
10
- viewBox: "0 0 18 18",
11
- ...props,
12
- children: [/* @__PURE__ */ jsx("path", {
13
- fill: "currentColor",
14
- d: "M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"
15
- }), /* @__PURE__ */ jsx("rect", {
16
- width: 10,
17
- height: 7,
18
- x: 8,
19
- y: 10,
20
- fill: "currentColor",
21
- rx: 2
22
- })]
23
- });
24
-
25
- //#endregion
26
- export { PipIcon as default };
27
- //# sourceMappingURL=pip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pip.js","names":[],"sources":["../../../../../../../icons/dist/react/minimal/pip.js"],"sourcesContent":["import { jsx, jsxs } from \"react/jsx-runtime\";\nconst PipIcon = (props) => /* @__PURE__ */ jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 18, height: 18, fill: \"none\", \"aria-hidden\": \"true\", viewBox: \"0 0 18 18\", ...props, children: [\n /* @__PURE__ */ jsx(\"path\", { fill: \"currentColor\", d: \"M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\" }),\n /* @__PURE__ */ jsx(\"rect\", { width: 10, height: 7, x: 8, y: 10, fill: \"currentColor\", rx: 2 })\n] });\nexport default PipIcon;\n"],"mappings":";;;AACA,MAAM,WAAW,UAA0B,qBAAK,OAAO;CAAE,OAAO;CAA8B,OAAO;CAAI,QAAQ;CAAI,MAAM;CAAQ,eAAe;CAAQ,SAAS;CAAa,GAAG;CAAO,UAAU,CAClL,oBAAI,QAAQ;EAAE,MAAM;EAAgB,GAAG;EAAsL,CAAC,EAC9N,oBAAI,QAAQ;EAAE,OAAO;EAAI,QAAQ;EAAG,GAAG;EAAG,GAAG;EAAI,MAAM;EAAgB,IAAI;EAAG,CAAC,CAChG;CAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-dialog.js","names":["AlertDialog.Root","AlertDialog.Popup","AlertDialog.Title","AlertDialog.Description","AlertDialog.Close"],"sources":["../../../../src/presets/video/error-dialog.tsx"],"sourcesContent":["'use client';\n\nimport { selectError } from '@videojs/core/dom';\nimport { type ReactNode, useRef } from 'react';\nimport { usePlayer } from '@/player/context';\nimport { AlertDialog } from '@/ui/alert-dialog';\n\nexport interface ErrorDialogClasses {\n root?: string;\n dialog?: string;\n content?: string;\n title?: string;\n description?: string;\n actions?: string;\n close?: string;\n}\n\nexport function ErrorDialog({ classes }: { classes?: ErrorDialogClasses }): ReactNode {\n const errorState = usePlayer(selectError);\n const lastError = useRef(errorState?.error);\n if (errorState?.error) lastError.current = errorState.error;\n\n if (!errorState) return null;\n\n return (\n <AlertDialog.Root\n open={!!errorState.error}\n onOpenChange={(open) => {\n if (!open) errorState.dismissError();\n }}\n >\n <AlertDialog.Popup className={classes?.root}>\n <div className={classes?.dialog}>\n <div className={classes?.content}>\n <AlertDialog.Title className={classes?.title}>Something went wrong.</AlertDialog.Title>\n <AlertDialog.Description className={classes?.description}>\n {lastError.current?.message ?? 'An error occurred while trying to play the video. Please try again.'}\n </AlertDialog.Description>\n </div>\n <div className={classes?.actions}>\n <AlertDialog.Close className={classes?.close}>OK</AlertDialog.Close>\n </div>\n </div>\n </AlertDialog.Popup>\n </AlertDialog.Root>\n );\n}\n"],"mappings":";;;;;;;;;;;;;AAiBA,SAAgB,YAAY,EAAE,WAAwD;CACpF,MAAM,aAAa,UAAU,YAAY;CACzC,MAAM,YAAY,OAAO,YAAY,MAAM;AAC3C,KAAI,YAAY,MAAO,WAAU,UAAU,WAAW;AAEtD,KAAI,CAAC,WAAY,QAAO;AAExB,QACE,oBAACA;EACC,MAAM,CAAC,CAAC,WAAW;EACnB,eAAe,SAAS;AACtB,OAAI,CAAC,KAAM,YAAW,cAAc;;YAGtC,oBAACC;GAAkB,WAAW,SAAS;aACrC,qBAAC;IAAI,WAAW,SAAS;eACvB,qBAAC;KAAI,WAAW,SAAS;gBACvB,oBAACC;MAAkB,WAAW,SAAS;gBAAO;OAAyC,EACvF,oBAACC;MAAwB,WAAW,SAAS;gBAC1C,UAAU,SAAS,WAAW;OACP;MACtB,EACN,oBAAC;KAAI,WAAW,SAAS;eACvB,oBAACC;MAAkB,WAAW,SAAS;gBAAO;OAAsB;MAChE;KACF;IACY;GACH"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"icon-state.js","names":[],"sources":["../../../../../../../../../skins/dist/default/default/tailwind/components/icon-state.js"],"sourcesContent":["//#region src/default/tailwind/components/icon-state.ts\nconst iconState = {\n\tplay: {\n\t\tbutton: \"group\",\n\t\trestart: \"hidden opacity-0 group-data-ended:block group-data-ended:opacity-100\",\n\t\tplay: \"hidden opacity-0 group-not-data-ended:group-data-paused:block group-not-data-ended:group-data-paused:opacity-100\",\n\t\tpause: \"hidden opacity-0 group-not-data-paused:group-not-data-ended:block group-not-data-paused:group-not-data-ended:opacity-100\"\n\t},\n\tmute: {\n\t\tbutton: \"group\",\n\t\tvolumeOff: \"hidden opacity-0 group-data-muted:block group-data-muted:opacity-100\",\n\t\tvolumeLow: \"hidden opacity-0 group-not-data-muted:group-data-[volume-level=low]:block group-not-data-muted:group-data-[volume-level=low]:opacity-100\",\n\t\tvolumeHigh: \"hidden opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:block group-not-data-muted:group-not-data-[volume-level=low]:opacity-100\"\n\t},\n\tfullscreen: {\n\t\tbutton: \"group\",\n\t\tenter: \"hidden opacity-0 group-not-data-fullscreen:block group-not-data-fullscreen:opacity-100\",\n\t\texit: \"hidden opacity-0 group-data-fullscreen:block group-data-fullscreen:opacity-100\"\n\t},\n\tcaptions: {\n\t\tbutton: \"group\",\n\t\toff: \"hidden opacity-0 group-not-data-active:block group-not-data-active:opacity-100\",\n\t\ton: \"hidden opacity-0 group-data-active:block group-data-active:opacity-100\"\n\t}\n};\n\n//#endregion\nexport { iconState };\n//# sourceMappingURL=icon-state.js.map"],"mappings":";AACA,MAAM,YAAY;CACjB,MAAM;EACL,QAAQ;EACR,SAAS;EACT,MAAM;EACN,OAAO;EACP;CACD,MAAM;EACL,QAAQ;EACR,WAAW;EACX,WAAW;EACX,YAAY;EACZ;CACD,YAAY;EACX,QAAQ;EACR,OAAO;EACP,MAAM;EACN;CACD,UAAU;EACT,QAAQ;EACR,KAAK;EACL,IAAI;EACJ;CACD"}
@@ -1,29 +0,0 @@
1
- //#region ../skins/dist/default/minimal/tailwind/components/icon-state.js
2
- const iconState = {
3
- play: {
4
- button: "group",
5
- restart: "hidden opacity-0 group-data-ended:block group-data-ended:opacity-100",
6
- play: "hidden opacity-0 group-not-data-ended:group-data-paused:block group-not-data-ended:group-data-paused:opacity-100",
7
- pause: "hidden opacity-0 group-not-data-paused:group-not-data-ended:block group-not-data-paused:group-not-data-ended:opacity-100"
8
- },
9
- mute: {
10
- button: "group",
11
- volumeOff: "hidden opacity-0 group-data-muted:block group-data-muted:opacity-100",
12
- volumeLow: "hidden opacity-0 group-not-data-muted:group-data-[volume-level=low]:block group-not-data-muted:group-data-[volume-level=low]:opacity-100",
13
- volumeHigh: "hidden opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:block group-not-data-muted:group-not-data-[volume-level=low]:opacity-100"
14
- },
15
- fullscreen: {
16
- button: "group",
17
- enter: "hidden opacity-0 group-not-data-fullscreen:block group-not-data-fullscreen:opacity-100",
18
- exit: "hidden opacity-0 group-data-fullscreen:block group-data-fullscreen:opacity-100"
19
- },
20
- captions: {
21
- button: "group",
22
- off: "hidden opacity-0 group-not-data-active:block group-not-data-active:opacity-100",
23
- on: "hidden opacity-0 group-data-active:block group-data-active:opacity-100"
24
- }
25
- };
26
-
27
- //#endregion
28
- export { iconState };
29
- //# sourceMappingURL=icon-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"icon-state.js","names":[],"sources":["../../../../../../../../../skins/dist/default/minimal/tailwind/components/icon-state.js"],"sourcesContent":["//#region src/minimal/tailwind/components/icon-state.ts\nconst iconState = {\n\tplay: {\n\t\tbutton: \"group\",\n\t\trestart: \"hidden opacity-0 group-data-ended:block group-data-ended:opacity-100\",\n\t\tplay: \"hidden opacity-0 group-not-data-ended:group-data-paused:block group-not-data-ended:group-data-paused:opacity-100\",\n\t\tpause: \"hidden opacity-0 group-not-data-paused:group-not-data-ended:block group-not-data-paused:group-not-data-ended:opacity-100\"\n\t},\n\tmute: {\n\t\tbutton: \"group\",\n\t\tvolumeOff: \"hidden opacity-0 group-data-muted:block group-data-muted:opacity-100\",\n\t\tvolumeLow: \"hidden opacity-0 group-not-data-muted:group-data-[volume-level=low]:block group-not-data-muted:group-data-[volume-level=low]:opacity-100\",\n\t\tvolumeHigh: \"hidden opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:block group-not-data-muted:group-not-data-[volume-level=low]:opacity-100\"\n\t},\n\tfullscreen: {\n\t\tbutton: \"group\",\n\t\tenter: \"hidden opacity-0 group-not-data-fullscreen:block group-not-data-fullscreen:opacity-100\",\n\t\texit: \"hidden opacity-0 group-data-fullscreen:block group-data-fullscreen:opacity-100\"\n\t},\n\tcaptions: {\n\t\tbutton: \"group\",\n\t\toff: \"hidden opacity-0 group-not-data-active:block group-not-data-active:opacity-100\",\n\t\ton: \"hidden opacity-0 group-data-active:block group-data-active:opacity-100\"\n\t}\n};\n\n//#endregion\nexport { iconState };\n//# sourceMappingURL=icon-state.js.map"],"mappings":";AACA,MAAM,YAAY;CACjB,MAAM;EACL,QAAQ;EACR,SAAS;EACT,MAAM;EACN,OAAO;EACP;CACD,MAAM;EACL,QAAQ;EACR,WAAW;EACX,WAAW;EACX,YAAY;EACZ;CACD,YAAY;EACX,QAAQ;EACR,OAAO;EACP,MAAM;EACN;CACD,UAAU;EACT,QAAQ;EACR,KAAK;EACL,IAAI;EACJ;CACD"}
@@ -1,27 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
-
3
- //#region ../icons/dist/react/default/pip.js
4
- const PipIcon = (props) => /* @__PURE__ */ jsxs("svg", {
5
- xmlns: "http://www.w3.org/2000/svg",
6
- width: 18,
7
- height: 18,
8
- fill: "none",
9
- "aria-hidden": "true",
10
- viewBox: "0 0 18 18",
11
- ...props,
12
- children: [/* @__PURE__ */ jsx("path", {
13
- fill: "currentColor",
14
- d: "M13 2a4 4 0 0 1 4 4v2.035A3.5 3.5 0 0 0 16.5 8H15V6.273C15 5.018 13.96 4 12.679 4H4.32C3.04 4 2 5.018 2 6.273v5.454C2 12.982 3.04 14 4.321 14H6v1.5q0 .255.035.5H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"
15
- }), /* @__PURE__ */ jsx("rect", {
16
- width: 10,
17
- height: 7,
18
- x: 8,
19
- y: 10,
20
- fill: "currentColor",
21
- rx: 2
22
- })]
23
- });
24
-
25
- //#endregion
26
- export { PipIcon as default };
27
- //# sourceMappingURL=pip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pip.js","names":[],"sources":["../../../../../../../icons/dist/react/default/pip.js"],"sourcesContent":["import { jsx, jsxs } from \"react/jsx-runtime\";\nconst PipIcon = (props) => /* @__PURE__ */ jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 18, height: 18, fill: \"none\", \"aria-hidden\": \"true\", viewBox: \"0 0 18 18\", ...props, children: [\n /* @__PURE__ */ jsx(\"path\", { fill: \"currentColor\", d: \"M13 2a4 4 0 0 1 4 4v2.035A3.5 3.5 0 0 0 16.5 8H15V6.273C15 5.018 13.96 4 12.679 4H4.32C3.04 4 2 5.018 2 6.273v5.454C2 12.982 3.04 14 4.321 14H6v1.5q0 .255.035.5H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\" }),\n /* @__PURE__ */ jsx(\"rect\", { width: 10, height: 7, x: 8, y: 10, fill: \"currentColor\", rx: 2 })\n] });\nexport default PipIcon;\n"],"mappings":";;;AACA,MAAM,WAAW,UAA0B,qBAAK,OAAO;CAAE,OAAO;CAA8B,OAAO;CAAI,QAAQ;CAAI,MAAM;CAAQ,eAAe;CAAQ,SAAS;CAAa,GAAG;CAAO,UAAU,CAClL,oBAAI,QAAQ;EAAE,MAAM;EAAgB,GAAG;EAAqM,CAAC,EAC7O,oBAAI,QAAQ;EAAE,OAAO;EAAI,QAAQ;EAAG,GAAG;EAAG,GAAG;EAAI,MAAM;EAAgB,IAAI;EAAG,CAAC,CAChG;CAAE,CAAC"}
@@ -1,27 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
-
3
- //#region ../icons/dist/react/minimal/pip.js
4
- const PipIcon = (props) => /* @__PURE__ */ jsxs("svg", {
5
- xmlns: "http://www.w3.org/2000/svg",
6
- width: 18,
7
- height: 18,
8
- fill: "none",
9
- "aria-hidden": "true",
10
- viewBox: "0 0 18 18",
11
- ...props,
12
- children: [/* @__PURE__ */ jsx("path", {
13
- fill: "currentColor",
14
- d: "M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z"
15
- }), /* @__PURE__ */ jsx("rect", {
16
- width: 10,
17
- height: 7,
18
- x: 8,
19
- y: 10,
20
- fill: "currentColor",
21
- rx: 2
22
- })]
23
- });
24
-
25
- //#endregion
26
- export { PipIcon as default };
27
- //# sourceMappingURL=pip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pip.js","names":[],"sources":["../../../../../../../icons/dist/react/minimal/pip.js"],"sourcesContent":["import { jsx, jsxs } from \"react/jsx-runtime\";\nconst PipIcon = (props) => /* @__PURE__ */ jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 18, height: 18, fill: \"none\", \"aria-hidden\": \"true\", viewBox: \"0 0 18 18\", ...props, children: [\n /* @__PURE__ */ jsx(\"path\", { fill: \"currentColor\", d: \"M13 2a4 4 0 0 1 4 4v2.645a3.5 3.5 0 0 0-1-.145h-.5V6A2.5 2.5 0 0 0 13 3.5H4A2.5 2.5 0 0 0 1.5 6v6A2.5 2.5 0 0 0 4 14.5h2.5v.5c0 .347.05.683.145 1H4a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4z\" }),\n /* @__PURE__ */ jsx(\"rect\", { width: 10, height: 7, x: 8, y: 10, fill: \"currentColor\", rx: 2 })\n] });\nexport default PipIcon;\n"],"mappings":";;;AACA,MAAM,WAAW,UAA0B,qBAAK,OAAO;CAAE,OAAO;CAA8B,OAAO;CAAI,QAAQ;CAAI,MAAM;CAAQ,eAAe;CAAQ,SAAS;CAAa,GAAG;CAAO,UAAU,CAClL,oBAAI,QAAQ;EAAE,MAAM;EAAgB,GAAG;EAAsL,CAAC,EAC9N,oBAAI,QAAQ;EAAE,OAAO;EAAI,QAAQ;EAAG,GAAG;EAAG,GAAG;EAAI,MAAM;EAAgB,IAAI;EAAG,CAAC,CAChG;CAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-dialog.js","names":["AlertDialog.Root","AlertDialog.Popup","AlertDialog.Title","AlertDialog.Description","AlertDialog.Close"],"sources":["../../../../src/presets/video/error-dialog.tsx"],"sourcesContent":["'use client';\n\nimport { selectError } from '@videojs/core/dom';\nimport { type ReactNode, useRef } from 'react';\nimport { usePlayer } from '@/player/context';\nimport { AlertDialog } from '@/ui/alert-dialog';\n\nexport interface ErrorDialogClasses {\n root?: string;\n dialog?: string;\n content?: string;\n title?: string;\n description?: string;\n actions?: string;\n close?: string;\n}\n\nexport function ErrorDialog({ classes }: { classes?: ErrorDialogClasses }): ReactNode {\n const errorState = usePlayer(selectError);\n const lastError = useRef(errorState?.error);\n if (errorState?.error) lastError.current = errorState.error;\n\n if (!errorState) return null;\n\n return (\n <AlertDialog.Root\n open={!!errorState.error}\n onOpenChange={(open) => {\n if (!open) errorState.dismissError();\n }}\n >\n <AlertDialog.Popup className={classes?.root}>\n <div className={classes?.dialog}>\n <div className={classes?.content}>\n <AlertDialog.Title className={classes?.title}>Something went wrong.</AlertDialog.Title>\n <AlertDialog.Description className={classes?.description}>\n {lastError.current?.message ?? 'An error occurred while trying to play the video. Please try again.'}\n </AlertDialog.Description>\n </div>\n <div className={classes?.actions}>\n <AlertDialog.Close className={classes?.close}>OK</AlertDialog.Close>\n </div>\n </div>\n </AlertDialog.Popup>\n </AlertDialog.Root>\n );\n}\n"],"mappings":";;;;;;;;;;;;;AAiBA,SAAgB,YAAY,EAAE,WAAwD;CACpF,MAAM,aAAa,UAAU,YAAY;CACzC,MAAM,YAAY,OAAO,YAAY,MAAM;AAC3C,KAAI,YAAY,MAAO,WAAU,UAAU,WAAW;AAEtD,KAAI,CAAC,WAAY,QAAO;AAExB,QACE,oBAACA;EACC,MAAM,CAAC,CAAC,WAAW;EACnB,eAAe,SAAS;AACtB,OAAI,CAAC,KAAM,YAAW,cAAc;;YAGtC,oBAACC;GAAkB,WAAW,SAAS;aACrC,qBAAC;IAAI,WAAW,SAAS;eACvB,qBAAC;KAAI,WAAW,SAAS;gBACvB,oBAACC;MAAkB,WAAW,SAAS;gBAAO;OAAyC,EACvF,oBAACC;MAAwB,WAAW,SAAS;gBAC1C,UAAU,SAAS,WAAW;OACP;MACtB,EACN,oBAAC;KAAI,WAAW,SAAS;eACvB,oBAACC;MAAkB,WAAW,SAAS;gBAAO;OAAsB;MAChE;KACF;IACY;GACH"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"icon-state.js","names":[],"sources":["../../../../../../../../../skins/dist/default/default/tailwind/components/icon-state.js"],"sourcesContent":["//#region src/default/tailwind/components/icon-state.ts\nconst iconState = {\n\tplay: {\n\t\tbutton: \"group\",\n\t\trestart: \"hidden opacity-0 group-data-ended:block group-data-ended:opacity-100\",\n\t\tplay: \"hidden opacity-0 group-not-data-ended:group-data-paused:block group-not-data-ended:group-data-paused:opacity-100\",\n\t\tpause: \"hidden opacity-0 group-not-data-paused:group-not-data-ended:block group-not-data-paused:group-not-data-ended:opacity-100\"\n\t},\n\tmute: {\n\t\tbutton: \"group\",\n\t\tvolumeOff: \"hidden opacity-0 group-data-muted:block group-data-muted:opacity-100\",\n\t\tvolumeLow: \"hidden opacity-0 group-not-data-muted:group-data-[volume-level=low]:block group-not-data-muted:group-data-[volume-level=low]:opacity-100\",\n\t\tvolumeHigh: \"hidden opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:block group-not-data-muted:group-not-data-[volume-level=low]:opacity-100\"\n\t},\n\tfullscreen: {\n\t\tbutton: \"group\",\n\t\tenter: \"hidden opacity-0 group-not-data-fullscreen:block group-not-data-fullscreen:opacity-100\",\n\t\texit: \"hidden opacity-0 group-data-fullscreen:block group-data-fullscreen:opacity-100\"\n\t},\n\tcaptions: {\n\t\tbutton: \"group\",\n\t\toff: \"hidden opacity-0 group-not-data-active:block group-not-data-active:opacity-100\",\n\t\ton: \"hidden opacity-0 group-data-active:block group-data-active:opacity-100\"\n\t}\n};\n\n//#endregion\nexport { iconState };\n//# sourceMappingURL=icon-state.js.map"],"mappings":";AACA,MAAM,YAAY;CACjB,MAAM;EACL,QAAQ;EACR,SAAS;EACT,MAAM;EACN,OAAO;EACP;CACD,MAAM;EACL,QAAQ;EACR,WAAW;EACX,WAAW;EACX,YAAY;EACZ;CACD,YAAY;EACX,QAAQ;EACR,OAAO;EACP,MAAM;EACN;CACD,UAAU;EACT,QAAQ;EACR,KAAK;EACL,IAAI;EACJ;CACD"}
@@ -1,29 +0,0 @@
1
- //#region ../skins/dist/default/minimal/tailwind/components/icon-state.js
2
- const iconState = {
3
- play: {
4
- button: "group",
5
- restart: "hidden opacity-0 group-data-ended:block group-data-ended:opacity-100",
6
- play: "hidden opacity-0 group-not-data-ended:group-data-paused:block group-not-data-ended:group-data-paused:opacity-100",
7
- pause: "hidden opacity-0 group-not-data-paused:group-not-data-ended:block group-not-data-paused:group-not-data-ended:opacity-100"
8
- },
9
- mute: {
10
- button: "group",
11
- volumeOff: "hidden opacity-0 group-data-muted:block group-data-muted:opacity-100",
12
- volumeLow: "hidden opacity-0 group-not-data-muted:group-data-[volume-level=low]:block group-not-data-muted:group-data-[volume-level=low]:opacity-100",
13
- volumeHigh: "hidden opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:block group-not-data-muted:group-not-data-[volume-level=low]:opacity-100"
14
- },
15
- fullscreen: {
16
- button: "group",
17
- enter: "hidden opacity-0 group-not-data-fullscreen:block group-not-data-fullscreen:opacity-100",
18
- exit: "hidden opacity-0 group-data-fullscreen:block group-data-fullscreen:opacity-100"
19
- },
20
- captions: {
21
- button: "group",
22
- off: "hidden opacity-0 group-not-data-active:block group-not-data-active:opacity-100",
23
- on: "hidden opacity-0 group-data-active:block group-data-active:opacity-100"
24
- }
25
- };
26
-
27
- //#endregion
28
- export { iconState };
29
- //# sourceMappingURL=icon-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"icon-state.js","names":[],"sources":["../../../../../../../../../skins/dist/default/minimal/tailwind/components/icon-state.js"],"sourcesContent":["//#region src/minimal/tailwind/components/icon-state.ts\nconst iconState = {\n\tplay: {\n\t\tbutton: \"group\",\n\t\trestart: \"hidden opacity-0 group-data-ended:block group-data-ended:opacity-100\",\n\t\tplay: \"hidden opacity-0 group-not-data-ended:group-data-paused:block group-not-data-ended:group-data-paused:opacity-100\",\n\t\tpause: \"hidden opacity-0 group-not-data-paused:group-not-data-ended:block group-not-data-paused:group-not-data-ended:opacity-100\"\n\t},\n\tmute: {\n\t\tbutton: \"group\",\n\t\tvolumeOff: \"hidden opacity-0 group-data-muted:block group-data-muted:opacity-100\",\n\t\tvolumeLow: \"hidden opacity-0 group-not-data-muted:group-data-[volume-level=low]:block group-not-data-muted:group-data-[volume-level=low]:opacity-100\",\n\t\tvolumeHigh: \"hidden opacity-0 group-not-data-muted:group-not-data-[volume-level=low]:block group-not-data-muted:group-not-data-[volume-level=low]:opacity-100\"\n\t},\n\tfullscreen: {\n\t\tbutton: \"group\",\n\t\tenter: \"hidden opacity-0 group-not-data-fullscreen:block group-not-data-fullscreen:opacity-100\",\n\t\texit: \"hidden opacity-0 group-data-fullscreen:block group-data-fullscreen:opacity-100\"\n\t},\n\tcaptions: {\n\t\tbutton: \"group\",\n\t\toff: \"hidden opacity-0 group-not-data-active:block group-not-data-active:opacity-100\",\n\t\ton: \"hidden opacity-0 group-data-active:block group-data-active:opacity-100\"\n\t}\n};\n\n//#endregion\nexport { iconState };\n//# sourceMappingURL=icon-state.js.map"],"mappings":";AACA,MAAM,YAAY;CACjB,MAAM;EACL,QAAQ;EACR,SAAS;EACT,MAAM;EACN,OAAO;EACP;CACD,MAAM;EACL,QAAQ;EACR,WAAW;EACX,WAAW;EACX,YAAY;EACZ;CACD,YAAY;EACX,QAAQ;EACR,OAAO;EACP,MAAM;EACN;CACD,UAAU;EACT,QAAQ;EACR,KAAK;EACL,IAAI;EACJ;CACD"}