@videojs/react 0.1.0-preview.9 → 10.0.0-alpha.4

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 (413) hide show
  1. package/README.md +1 -1
  2. package/dist/default/_virtual/_rolldown/runtime.js +36 -0
  3. package/dist/default/icons/dist/react/default/captions-off.js +66 -0
  4. package/dist/default/icons/dist/react/default/captions-off.js.map +1 -0
  5. package/dist/default/icons/dist/react/default/captions-on.js +19 -0
  6. package/dist/default/icons/dist/react/default/captions-on.js.map +1 -0
  7. package/dist/default/icons/dist/react/default/fullscreen-enter.js +19 -0
  8. package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -0
  9. package/dist/default/icons/dist/react/default/fullscreen-exit.js +19 -0
  10. package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -0
  11. package/dist/default/icons/dist/react/default/pause.js +30 -0
  12. package/dist/default/icons/dist/react/default/pause.js.map +1 -0
  13. package/dist/default/icons/dist/react/default/pip.js +26 -0
  14. package/dist/default/icons/dist/react/default/pip.js.map +1 -0
  15. package/dist/default/icons/dist/react/default/play.js +19 -0
  16. package/dist/default/icons/dist/react/default/play.js.map +1 -0
  17. package/dist/default/icons/dist/react/default/restart.js +22 -0
  18. package/dist/default/icons/dist/react/default/restart.js.map +1 -0
  19. package/dist/default/icons/dist/react/default/seek.js +19 -0
  20. package/dist/default/icons/dist/react/default/seek.js.map +1 -0
  21. package/dist/default/icons/dist/react/default/spinner.js +149 -0
  22. package/dist/default/icons/dist/react/default/spinner.js.map +1 -0
  23. package/dist/default/icons/dist/react/default/volume-high.js +22 -0
  24. package/dist/default/icons/dist/react/default/volume-high.js.map +1 -0
  25. package/dist/default/icons/dist/react/default/volume-low.js +19 -0
  26. package/dist/default/icons/dist/react/default/volume-low.js.map +1 -0
  27. package/dist/default/icons/dist/react/default/volume-off.js +19 -0
  28. package/dist/default/icons/dist/react/default/volume-off.js.map +1 -0
  29. package/dist/default/icons/dist/react/minimal/captions-off.js +66 -0
  30. package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -0
  31. package/dist/default/icons/dist/react/minimal/captions-on.js +19 -0
  32. package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -0
  33. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js +29 -0
  34. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -0
  35. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js +29 -0
  36. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -0
  37. package/dist/default/icons/dist/react/minimal/pause.js +30 -0
  38. package/dist/default/icons/dist/react/minimal/pause.js.map +1 -0
  39. package/dist/default/icons/dist/react/minimal/pip.js +26 -0
  40. package/dist/default/icons/dist/react/minimal/pip.js.map +1 -0
  41. package/dist/default/icons/dist/react/minimal/play.js +19 -0
  42. package/dist/default/icons/dist/react/minimal/play.js.map +1 -0
  43. package/dist/default/icons/dist/react/minimal/restart.js +22 -0
  44. package/dist/default/icons/dist/react/minimal/restart.js.map +1 -0
  45. package/dist/default/icons/dist/react/minimal/seek.js +19 -0
  46. package/dist/default/icons/dist/react/minimal/seek.js.map +1 -0
  47. package/dist/default/icons/dist/react/minimal/spinner.js +149 -0
  48. package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -0
  49. package/dist/default/icons/dist/react/minimal/volume-high.js +22 -0
  50. package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -0
  51. package/dist/default/icons/dist/react/minimal/volume-low.js +19 -0
  52. package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -0
  53. package/dist/default/icons/dist/react/minimal/volume-off.js +19 -0
  54. package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -0
  55. package/dist/default/index.js +53 -0
  56. package/dist/default/index.js.map +1 -0
  57. package/dist/default/media/audio.js +22 -0
  58. package/dist/default/media/audio.js.map +1 -0
  59. package/dist/default/media/background-video/index.js +28 -0
  60. package/dist/default/media/background-video/index.js.map +1 -0
  61. package/dist/default/media/hls-video/index.js +25 -0
  62. package/dist/default/media/hls-video/index.js.map +1 -0
  63. package/dist/default/media/video.js +22 -0
  64. package/dist/default/media/video.js.map +1 -0
  65. package/dist/default/player/context.js +55 -0
  66. package/dist/default/player/context.js.map +1 -0
  67. package/dist/default/player/create-player.js +38 -0
  68. package/dist/default/player/create-player.js.map +1 -0
  69. package/dist/default/presets/audio/index.js +12 -0
  70. package/dist/default/presets/audio/index.js.map +1 -0
  71. package/dist/default/presets/audio/minimal-skin.css +3 -0
  72. package/dist/default/presets/audio/minimal-skin.js +11 -0
  73. package/dist/default/presets/audio/minimal-skin.js.map +1 -0
  74. package/dist/default/presets/audio/skin.css +3 -0
  75. package/dist/default/presets/audio/skin.js +11 -0
  76. package/dist/default/presets/audio/skin.js.map +1 -0
  77. package/dist/default/presets/background/index.js +11 -0
  78. package/dist/default/presets/background/index.js.map +1 -0
  79. package/dist/default/presets/background/skin.css +21 -0
  80. package/dist/default/presets/background/skin.js +16 -0
  81. package/dist/default/presets/background/skin.js.map +1 -0
  82. package/dist/default/presets/video/index.js +14 -0
  83. package/dist/default/presets/video/index.js.map +1 -0
  84. package/dist/default/presets/video/minimal-skin.css +637 -0
  85. package/dist/default/presets/video/minimal-skin.js +246 -0
  86. package/dist/default/presets/video/minimal-skin.js.map +1 -0
  87. package/dist/default/presets/video/minimal-skin.tailwind.js +243 -0
  88. package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -0
  89. package/dist/default/presets/video/skin.css +638 -0
  90. package/dist/default/presets/video/skin.js +235 -0
  91. package/dist/default/presets/video/skin.js.map +1 -0
  92. package/dist/default/presets/video/skin.tailwind.js +234 -0
  93. package/dist/default/presets/video/skin.tailwind.js.map +1 -0
  94. package/dist/default/ui/buffering-indicator/buffering-indicator.js +50 -0
  95. package/dist/default/ui/buffering-indicator/buffering-indicator.js.map +1 -0
  96. package/dist/default/ui/buffering-indicator/index.js +3 -0
  97. package/dist/default/ui/captions-button/captions-button.js +51 -0
  98. package/dist/default/ui/captions-button/captions-button.js.map +1 -0
  99. package/dist/default/ui/captions-button/index.js +3 -0
  100. package/dist/default/ui/controls/controls-group.js +27 -0
  101. package/dist/default/ui/controls/controls-group.js.map +1 -0
  102. package/dist/default/ui/controls/controls-root.js +31 -0
  103. package/dist/default/ui/controls/controls-root.js.map +1 -0
  104. package/dist/default/ui/controls/index.js +3 -0
  105. package/dist/default/ui/controls/index.parts.js +13 -0
  106. package/dist/default/ui/controls/index.parts.js.map +1 -0
  107. package/dist/default/ui/error-dialog/error-dialog.js +54 -0
  108. package/dist/default/ui/error-dialog/error-dialog.js.map +1 -0
  109. package/dist/default/ui/error-dialog/index.js +3 -0
  110. package/dist/default/ui/fullscreen-button/fullscreen-button.js +44 -0
  111. package/dist/default/ui/fullscreen-button/fullscreen-button.js.map +1 -0
  112. package/dist/default/ui/fullscreen-button/index.js +3 -0
  113. package/dist/default/ui/hooks/use-button.js +44 -0
  114. package/dist/default/ui/hooks/use-button.js.map +1 -0
  115. package/dist/default/ui/mute-button/index.js +3 -0
  116. package/dist/default/ui/mute-button/mute-button.js +47 -0
  117. package/dist/default/ui/mute-button/mute-button.js.map +1 -0
  118. package/dist/default/ui/pip-button/index.js +3 -0
  119. package/dist/default/ui/pip-button/pip-button.js +44 -0
  120. package/dist/default/ui/pip-button/pip-button.js.map +1 -0
  121. package/dist/default/ui/play-button/index.js +3 -0
  122. package/dist/default/ui/play-button/play-button.js +60 -0
  123. package/dist/default/ui/play-button/play-button.js.map +1 -0
  124. package/dist/default/ui/poster/index.js +3 -0
  125. package/dist/default/ui/poster/poster.js +43 -0
  126. package/dist/default/ui/poster/poster.js.map +1 -0
  127. package/dist/default/ui/seek-button/index.js +3 -0
  128. package/dist/default/ui/seek-button/seek-button.js +62 -0
  129. package/dist/default/ui/seek-button/seek-button.js.map +1 -0
  130. package/dist/default/ui/time/index.js +3 -0
  131. package/dist/default/ui/time/index.parts.js +15 -0
  132. package/dist/default/ui/time/index.parts.js.map +1 -0
  133. package/dist/default/ui/time/time-group.js +34 -0
  134. package/dist/default/ui/time/time-group.js.map +1 -0
  135. package/dist/default/ui/time/time-separator.js +34 -0
  136. package/dist/default/ui/time/time-separator.js.map +1 -0
  137. package/dist/default/ui/time/time-value.js +54 -0
  138. package/dist/default/ui/time/time-value.js.map +1 -0
  139. package/dist/default/utils/attach-media-element.js +12 -0
  140. package/dist/default/utils/attach-media-element.js.map +1 -0
  141. package/dist/default/utils/media-props.js +11 -0
  142. package/dist/default/utils/media-props.js.map +1 -0
  143. package/dist/default/utils/merge-props.js +85 -0
  144. package/dist/default/utils/merge-props.js.map +1 -0
  145. package/dist/default/utils/use-composed-refs.js +57 -0
  146. package/dist/default/utils/use-composed-refs.js.map +1 -0
  147. package/dist/default/utils/use-render.js +71 -0
  148. package/dist/default/utils/use-render.js.map +1 -0
  149. package/dist/dev/_virtual/_rolldown/runtime.js +36 -0
  150. package/dist/dev/icons/dist/react/default/captions-off.js +66 -0
  151. package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -0
  152. package/dist/dev/icons/dist/react/default/captions-on.js +19 -0
  153. package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -0
  154. package/dist/dev/icons/dist/react/default/fullscreen-enter.js +19 -0
  155. package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -0
  156. package/dist/dev/icons/dist/react/default/fullscreen-exit.js +19 -0
  157. package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -0
  158. package/dist/dev/icons/dist/react/default/pause.js +30 -0
  159. package/dist/dev/icons/dist/react/default/pause.js.map +1 -0
  160. package/dist/dev/icons/dist/react/default/pip.js +26 -0
  161. package/dist/dev/icons/dist/react/default/pip.js.map +1 -0
  162. package/dist/dev/icons/dist/react/default/play.js +19 -0
  163. package/dist/dev/icons/dist/react/default/play.js.map +1 -0
  164. package/dist/dev/icons/dist/react/default/restart.js +22 -0
  165. package/dist/dev/icons/dist/react/default/restart.js.map +1 -0
  166. package/dist/dev/icons/dist/react/default/seek.js +19 -0
  167. package/dist/dev/icons/dist/react/default/seek.js.map +1 -0
  168. package/dist/dev/icons/dist/react/default/spinner.js +149 -0
  169. package/dist/dev/icons/dist/react/default/spinner.js.map +1 -0
  170. package/dist/dev/icons/dist/react/default/volume-high.js +22 -0
  171. package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -0
  172. package/dist/dev/icons/dist/react/default/volume-low.js +19 -0
  173. package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -0
  174. package/dist/dev/icons/dist/react/default/volume-off.js +19 -0
  175. package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -0
  176. package/dist/dev/icons/dist/react/minimal/captions-off.js +66 -0
  177. package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -0
  178. package/dist/dev/icons/dist/react/minimal/captions-on.js +19 -0
  179. package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -0
  180. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js +29 -0
  181. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -0
  182. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js +29 -0
  183. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -0
  184. package/dist/dev/icons/dist/react/minimal/pause.js +30 -0
  185. package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -0
  186. package/dist/dev/icons/dist/react/minimal/pip.js +26 -0
  187. package/dist/dev/icons/dist/react/minimal/pip.js.map +1 -0
  188. package/dist/dev/icons/dist/react/minimal/play.js +19 -0
  189. package/dist/dev/icons/dist/react/minimal/play.js.map +1 -0
  190. package/dist/dev/icons/dist/react/minimal/restart.js +22 -0
  191. package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -0
  192. package/dist/dev/icons/dist/react/minimal/seek.js +19 -0
  193. package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -0
  194. package/dist/dev/icons/dist/react/minimal/spinner.js +149 -0
  195. package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -0
  196. package/dist/dev/icons/dist/react/minimal/volume-high.js +22 -0
  197. package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -0
  198. package/dist/dev/icons/dist/react/minimal/volume-low.js +19 -0
  199. package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -0
  200. package/dist/dev/icons/dist/react/minimal/volume-off.js +19 -0
  201. package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -0
  202. package/dist/dev/index.d.ts +23 -0
  203. package/dist/dev/index.js +53 -0
  204. package/dist/dev/index.js.map +1 -0
  205. package/dist/dev/media/audio.d.ts +12 -0
  206. package/dist/dev/media/audio.d.ts.map +1 -0
  207. package/dist/dev/media/audio.js +22 -0
  208. package/dist/dev/media/audio.js.map +1 -0
  209. package/dist/dev/media/background-video/index.d.ts +12 -0
  210. package/dist/dev/media/background-video/index.d.ts.map +1 -0
  211. package/dist/dev/media/background-video/index.js +28 -0
  212. package/dist/dev/media/background-video/index.js.map +1 -0
  213. package/dist/dev/media/hls-video/index.d.ts +11 -0
  214. package/dist/dev/media/hls-video/index.d.ts.map +1 -0
  215. package/dist/dev/media/hls-video/index.js +25 -0
  216. package/dist/dev/media/hls-video/index.js.map +1 -0
  217. package/dist/dev/media/video.d.ts +12 -0
  218. package/dist/dev/media/video.d.ts.map +1 -0
  219. package/dist/dev/media/video.js +22 -0
  220. package/dist/dev/media/video.js.map +1 -0
  221. package/dist/dev/player/context.d.ts +40 -0
  222. package/dist/dev/player/context.d.ts.map +1 -0
  223. package/dist/dev/player/context.js +55 -0
  224. package/dist/dev/player/context.js.map +1 -0
  225. package/dist/dev/player/create-player.d.ts +47 -0
  226. package/dist/dev/player/create-player.d.ts.map +1 -0
  227. package/dist/dev/player/create-player.js +39 -0
  228. package/dist/dev/player/create-player.js.map +1 -0
  229. package/dist/dev/presets/audio/index.d.ts +12 -0
  230. package/dist/dev/presets/audio/index.d.ts.map +1 -0
  231. package/dist/dev/presets/audio/index.js +12 -0
  232. package/dist/dev/presets/audio/index.js.map +1 -0
  233. package/dist/dev/presets/audio/minimal-skin.css +3 -0
  234. package/dist/dev/presets/audio/minimal-skin.d.ts +9 -0
  235. package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -0
  236. package/dist/dev/presets/audio/minimal-skin.js +11 -0
  237. package/dist/dev/presets/audio/minimal-skin.js.map +1 -0
  238. package/dist/dev/presets/audio/skin.css +3 -0
  239. package/dist/dev/presets/audio/skin.d.ts +9 -0
  240. package/dist/dev/presets/audio/skin.d.ts.map +1 -0
  241. package/dist/dev/presets/audio/skin.js +11 -0
  242. package/dist/dev/presets/audio/skin.js.map +1 -0
  243. package/dist/dev/presets/background/index.d.ts +11 -0
  244. package/dist/dev/presets/background/index.d.ts.map +1 -0
  245. package/dist/dev/presets/background/index.js +11 -0
  246. package/dist/dev/presets/background/index.js.map +1 -0
  247. package/dist/dev/presets/background/skin.css +21 -0
  248. package/dist/dev/presets/background/skin.d.ts +9 -0
  249. package/dist/dev/presets/background/skin.d.ts.map +1 -0
  250. package/dist/dev/presets/background/skin.js +16 -0
  251. package/dist/dev/presets/background/skin.js.map +1 -0
  252. package/dist/dev/presets/types.d.ts +10 -0
  253. package/dist/dev/presets/types.d.ts.map +1 -0
  254. package/dist/dev/presets/video/index.d.ts +14 -0
  255. package/dist/dev/presets/video/index.d.ts.map +1 -0
  256. package/dist/dev/presets/video/index.js +14 -0
  257. package/dist/dev/presets/video/index.js.map +1 -0
  258. package/dist/dev/presets/video/minimal-skin.css +637 -0
  259. package/dist/dev/presets/video/minimal-skin.d.ts +9 -0
  260. package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -0
  261. package/dist/dev/presets/video/minimal-skin.js +246 -0
  262. package/dist/dev/presets/video/minimal-skin.js.map +1 -0
  263. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts +8 -0
  264. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -0
  265. package/dist/dev/presets/video/minimal-skin.tailwind.js +243 -0
  266. package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -0
  267. package/dist/dev/presets/video/skin.css +638 -0
  268. package/dist/dev/presets/video/skin.d.ts +9 -0
  269. package/dist/dev/presets/video/skin.d.ts.map +1 -0
  270. package/dist/dev/presets/video/skin.js +235 -0
  271. package/dist/dev/presets/video/skin.js.map +1 -0
  272. package/dist/dev/presets/video/skin.tailwind.d.ts +8 -0
  273. package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -0
  274. package/dist/dev/presets/video/skin.tailwind.js +234 -0
  275. package/dist/dev/presets/video/skin.tailwind.js.map +1 -0
  276. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts +32 -0
  277. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts.map +1 -0
  278. package/dist/dev/ui/buffering-indicator/buffering-indicator.js +53 -0
  279. package/dist/dev/ui/buffering-indicator/buffering-indicator.js.map +1 -0
  280. package/dist/dev/ui/buffering-indicator/index.d.ts +2 -0
  281. package/dist/dev/ui/buffering-indicator/index.js +3 -0
  282. package/dist/dev/ui/captions-button/captions-button.d.ts +36 -0
  283. package/dist/dev/ui/captions-button/captions-button.d.ts.map +1 -0
  284. package/dist/dev/ui/captions-button/captions-button.js +51 -0
  285. package/dist/dev/ui/captions-button/captions-button.js.map +1 -0
  286. package/dist/dev/ui/captions-button/index.d.ts +2 -0
  287. package/dist/dev/ui/captions-button/index.js +3 -0
  288. package/dist/dev/ui/controls/controls-group.d.ts +17 -0
  289. package/dist/dev/ui/controls/controls-group.d.ts.map +1 -0
  290. package/dist/dev/ui/controls/controls-group.js +27 -0
  291. package/dist/dev/ui/controls/controls-group.js.map +1 -0
  292. package/dist/dev/ui/controls/controls-root.d.ts +18 -0
  293. package/dist/dev/ui/controls/controls-root.d.ts.map +1 -0
  294. package/dist/dev/ui/controls/controls-root.js +34 -0
  295. package/dist/dev/ui/controls/controls-root.js.map +1 -0
  296. package/dist/dev/ui/controls/index.d.ts +2 -0
  297. package/dist/dev/ui/controls/index.js +3 -0
  298. package/dist/dev/ui/controls/index.parts.d.ts +10 -0
  299. package/dist/dev/ui/controls/index.parts.d.ts.map +1 -0
  300. package/dist/dev/ui/controls/index.parts.js +13 -0
  301. package/dist/dev/ui/controls/index.parts.js.map +1 -0
  302. package/dist/dev/ui/error-dialog/error-dialog.d.ts +35 -0
  303. package/dist/dev/ui/error-dialog/error-dialog.d.ts.map +1 -0
  304. package/dist/dev/ui/error-dialog/error-dialog.js +54 -0
  305. package/dist/dev/ui/error-dialog/error-dialog.js.map +1 -0
  306. package/dist/dev/ui/error-dialog/index.d.ts +2 -0
  307. package/dist/dev/ui/error-dialog/index.js +3 -0
  308. package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts +14 -0
  309. package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts.map +1 -0
  310. package/dist/dev/ui/fullscreen-button/fullscreen-button.js +47 -0
  311. package/dist/dev/ui/fullscreen-button/fullscreen-button.js.map +1 -0
  312. package/dist/dev/ui/fullscreen-button/index.d.ts +2 -0
  313. package/dist/dev/ui/fullscreen-button/index.js +3 -0
  314. package/dist/dev/ui/hooks/use-button.d.ts +40 -0
  315. package/dist/dev/ui/hooks/use-button.d.ts.map +1 -0
  316. package/dist/dev/ui/hooks/use-button.js +46 -0
  317. package/dist/dev/ui/hooks/use-button.js.map +1 -0
  318. package/dist/dev/ui/mute-button/index.d.ts +2 -0
  319. package/dist/dev/ui/mute-button/index.js +3 -0
  320. package/dist/dev/ui/mute-button/mute-button.d.ts +17 -0
  321. package/dist/dev/ui/mute-button/mute-button.d.ts.map +1 -0
  322. package/dist/dev/ui/mute-button/mute-button.js +50 -0
  323. package/dist/dev/ui/mute-button/mute-button.js.map +1 -0
  324. package/dist/dev/ui/pip-button/index.d.ts +2 -0
  325. package/dist/dev/ui/pip-button/index.js +3 -0
  326. package/dist/dev/ui/pip-button/pip-button.d.ts +14 -0
  327. package/dist/dev/ui/pip-button/pip-button.d.ts.map +1 -0
  328. package/dist/dev/ui/pip-button/pip-button.js +47 -0
  329. package/dist/dev/ui/pip-button/pip-button.js.map +1 -0
  330. package/dist/dev/ui/play-button/index.d.ts +2 -0
  331. package/dist/dev/ui/play-button/index.js +3 -0
  332. package/dist/dev/ui/play-button/play-button.d.ts +30 -0
  333. package/dist/dev/ui/play-button/play-button.d.ts.map +1 -0
  334. package/dist/dev/ui/play-button/play-button.js +63 -0
  335. package/dist/dev/ui/play-button/play-button.js.map +1 -0
  336. package/dist/dev/ui/poster/index.d.ts +2 -0
  337. package/dist/dev/ui/poster/index.js +3 -0
  338. package/dist/dev/ui/poster/poster.d.ts +28 -0
  339. package/dist/dev/ui/poster/poster.d.ts.map +1 -0
  340. package/dist/dev/ui/poster/poster.js +46 -0
  341. package/dist/dev/ui/poster/poster.js.map +1 -0
  342. package/dist/dev/ui/seek-button/index.d.ts +2 -0
  343. package/dist/dev/ui/seek-button/index.js +3 -0
  344. package/dist/dev/ui/seek-button/seek-button.d.ts +31 -0
  345. package/dist/dev/ui/seek-button/seek-button.d.ts.map +1 -0
  346. package/dist/dev/ui/seek-button/seek-button.js +65 -0
  347. package/dist/dev/ui/seek-button/seek-button.js.map +1 -0
  348. package/dist/dev/ui/time/index.d.ts +2 -0
  349. package/dist/dev/ui/time/index.js +3 -0
  350. package/dist/dev/ui/time/index.parts.d.ts +11 -0
  351. package/dist/dev/ui/time/index.parts.d.ts.map +1 -0
  352. package/dist/dev/ui/time/index.parts.js +15 -0
  353. package/dist/dev/ui/time/index.parts.js.map +1 -0
  354. package/dist/dev/ui/time/time-group.d.ts +29 -0
  355. package/dist/dev/ui/time/time-group.d.ts.map +1 -0
  356. package/dist/dev/ui/time/time-group.js +34 -0
  357. package/dist/dev/ui/time/time-group.js.map +1 -0
  358. package/dist/dev/ui/time/time-separator.d.ts +26 -0
  359. package/dist/dev/ui/time/time-separator.d.ts.map +1 -0
  360. package/dist/dev/ui/time/time-separator.js +34 -0
  361. package/dist/dev/ui/time/time-separator.js.map +1 -0
  362. package/dist/dev/ui/time/time-value.d.ts +24 -0
  363. package/dist/dev/ui/time/time-value.d.ts.map +1 -0
  364. package/dist/dev/ui/time/time-value.js +57 -0
  365. package/dist/dev/ui/time/time-value.js.map +1 -0
  366. package/dist/dev/utils/attach-media-element.js +12 -0
  367. package/dist/dev/utils/attach-media-element.js.map +1 -0
  368. package/dist/dev/utils/media-props.js +11 -0
  369. package/dist/dev/utils/media-props.js.map +1 -0
  370. package/dist/dev/utils/merge-props.d.ts +26 -0
  371. package/dist/dev/utils/merge-props.d.ts.map +1 -0
  372. package/dist/dev/utils/merge-props.js +85 -0
  373. package/dist/dev/utils/merge-props.js.map +1 -0
  374. package/dist/dev/utils/types.d.ts +27 -0
  375. package/dist/dev/utils/types.d.ts.map +1 -0
  376. package/dist/dev/utils/use-composed-refs.js +57 -0
  377. package/dist/dev/utils/use-composed-refs.js.map +1 -0
  378. package/dist/dev/utils/use-render.d.ts +45 -0
  379. package/dist/dev/utils/use-render.d.ts.map +1 -0
  380. package/dist/dev/utils/use-render.js +71 -0
  381. package/dist/dev/utils/use-render.js.map +1 -0
  382. package/package.json +50 -55
  383. package/dist/FrostedSkin-t8edr5LV.d.ts +0 -13
  384. package/dist/FrostedSkin-t8edr5LV.d.ts.map +0 -1
  385. package/dist/MinimalSkin-DzHkJgW-.d.ts +0 -13
  386. package/dist/MinimalSkin-DzHkJgW-.d.ts.map +0 -1
  387. package/dist/VolumeSlider-DBvAU2X3.js +0 -1025
  388. package/dist/VolumeSlider-DBvAU2X3.js.map +0 -1
  389. package/dist/frosted-D2OXDJRV.js +0 -156
  390. package/dist/frosted-D2OXDJRV.js.map +0 -1
  391. package/dist/icons-BqfV81R8.js +0 -316
  392. package/dist/icons-BqfV81R8.js.map +0 -1
  393. package/dist/icons.d.ts +0 -71
  394. package/dist/icons.d.ts.map +0 -1
  395. package/dist/icons.js +0 -3
  396. package/dist/index-CM70WSkA.d.ts +0 -36
  397. package/dist/index-CM70WSkA.d.ts.map +0 -1
  398. package/dist/index.d.ts +0 -331
  399. package/dist/index.d.ts.map +0 -1
  400. package/dist/index.js +0 -89
  401. package/dist/index.js.map +0 -1
  402. package/dist/minimal-CDaU4avz.js +0 -162
  403. package/dist/minimal-CDaU4avz.js.map +0 -1
  404. package/dist/skins/frosted.css +0 -4
  405. package/dist/skins/frosted.d.ts +0 -2
  406. package/dist/skins/frosted.js +0 -9
  407. package/dist/skins/minimal.css +0 -4
  408. package/dist/skins/minimal.d.ts +0 -2
  409. package/dist/skins/minimal.js +0 -9
  410. package/dist/store-hGO5HE2A.js +0 -124
  411. package/dist/store-hGO5HE2A.js.map +0 -1
  412. package/dist/store.d.ts +0 -2
  413. package/dist/store.js +0 -6
@@ -0,0 +1,62 @@
1
+ 'use client';
2
+
3
+ import { usePlayer } from "../../player/context.js";
4
+ import { renderElement } from "../../utils/use-render.js";
5
+ import { useButton } from "../hooks/use-button.js";
6
+ import { selectTime } from "@videojs/core/dom";
7
+ import { forwardRef, useState } from "react";
8
+ import { SeekButtonCore, SeekButtonDataAttrs } from "@videojs/core";
9
+
10
+ //#region src/ui/seek-button/seek-button.tsx
11
+ /**
12
+ * A button that seeks forward or backward by a configurable number of seconds.
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * <SeekButton seconds={-10} />
17
+ *
18
+ * <SeekButton
19
+ * seconds={30}
20
+ * render={(props, state) => (
21
+ * <button {...props}>
22
+ * {state.direction === 'backward' ? <RewindIcon /> : <FastForwardIcon />}
23
+ * </button>
24
+ * )}
25
+ * />
26
+ * ```
27
+ */
28
+ const SeekButton = forwardRef(function SeekButton(componentProps, forwardedRef) {
29
+ const { render, className, style, seconds, label, disabled, ...elementProps } = componentProps;
30
+ const time = usePlayer(selectTime);
31
+ const [core] = useState(() => new SeekButtonCore());
32
+ core.setProps({
33
+ seconds,
34
+ label,
35
+ disabled
36
+ });
37
+ const { getButtonProps, buttonRef } = useButton({
38
+ displayName: "SeekButton",
39
+ onActivate: () => core.seek(time),
40
+ isDisabled: () => disabled || !time
41
+ });
42
+ if (!time) return null;
43
+ const state = core.getState(time);
44
+ return renderElement("button", {
45
+ render,
46
+ className,
47
+ style
48
+ }, {
49
+ state,
50
+ stateAttrMap: SeekButtonDataAttrs,
51
+ ref: [forwardedRef, buttonRef],
52
+ props: [
53
+ core.getAttrs(state),
54
+ elementProps,
55
+ getButtonProps()
56
+ ]
57
+ });
58
+ });
59
+
60
+ //#endregion
61
+ export { SeekButton };
62
+ //# sourceMappingURL=seek-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seek-button.js","names":[],"sources":["../../../../src/ui/seek-button/seek-button.tsx"],"sourcesContent":["'use client';\n\nimport { SeekButtonCore, SeekButtonDataAttrs } from '@videojs/core';\nimport { logMissingFeature, selectTime } from '@videojs/core/dom';\nimport type { ForwardedRef } from 'react';\nimport { forwardRef, useState } from 'react';\n\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useButton } from '../hooks/use-button';\n\nexport interface SeekButtonProps extends UIComponentProps<'button', SeekButtonCore.State>, SeekButtonCore.Props {}\n\n/**\n * A button that seeks forward or backward by a configurable number of seconds.\n *\n * @example\n * ```tsx\n * <SeekButton seconds={-10} />\n *\n * <SeekButton\n * seconds={30}\n * render={(props, state) => (\n * <button {...props}>\n * {state.direction === 'backward' ? <RewindIcon /> : <FastForwardIcon />}\n * </button>\n * )}\n * />\n * ```\n */\nexport const SeekButton = forwardRef(function SeekButton(\n componentProps: SeekButtonProps,\n forwardedRef: ForwardedRef<HTMLButtonElement>\n) {\n const { render, className, style, seconds, label, disabled, ...elementProps } = componentProps;\n\n const time = usePlayer(selectTime);\n\n const [core] = useState(() => new SeekButtonCore());\n core.setProps({ seconds, label, disabled });\n\n const { getButtonProps, buttonRef } = useButton({\n displayName: 'SeekButton',\n onActivate: () => core.seek(time!),\n isDisabled: () => disabled || !time,\n });\n\n if (!time) {\n if (__DEV__) logMissingFeature('SeekButton', 'time');\n return null;\n }\n\n const state = core.getState(time);\n\n return renderElement(\n 'button',\n { render, className, style },\n {\n state,\n stateAttrMap: SeekButtonDataAttrs,\n ref: [forwardedRef, buttonRef],\n props: [core.getAttrs(state), elementProps, getButtonProps()],\n }\n );\n});\n\nexport namespace SeekButton {\n export type Props = SeekButtonProps;\n export type State = SeekButtonCore.State;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,MAAa,aAAa,WAAW,SAAS,WAC5C,gBACA,cACA;CACA,MAAM,EAAE,QAAQ,WAAW,OAAO,SAAS,OAAO,UAAU,GAAG,iBAAiB;CAEhF,MAAM,OAAO,UAAU,WAAW;CAElC,MAAM,CAAC,QAAQ,eAAe,IAAI,gBAAgB,CAAC;AACnD,MAAK,SAAS;EAAE;EAAS;EAAO;EAAU,CAAC;CAE3C,MAAM,EAAE,gBAAgB,cAAc,UAAU;EAC9C,aAAa;EACb,kBAAkB,KAAK,KAAK,KAAM;EAClC,kBAAkB,YAAY,CAAC;EAChC,CAAC;AAEF,KAAI,CAAC,KAEH,QAAO;CAGT,MAAM,QAAQ,KAAK,SAAS,KAAK;AAEjC,QAAO,cACL,UACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE;EACA,cAAc;EACd,KAAK,CAAC,cAAc,UAAU;EAC9B,OAAO;GAAC,KAAK,SAAS,MAAM;GAAE;GAAc,gBAAgB;GAAC;EAC9D,CACF;EACD"}
@@ -0,0 +1,3 @@
1
+ import { index_parts_exports } from "./index.parts.js";
2
+
3
+ export { index_parts_exports as Time };
@@ -0,0 +1,15 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
2
+ import { Group } from "./time-group.js";
3
+ import { Separator } from "./time-separator.js";
4
+ import { Value } from "./time-value.js";
5
+
6
+ //#region src/ui/time/index.parts.ts
7
+ var index_parts_exports = /* @__PURE__ */ __exportAll({
8
+ Group: () => Group,
9
+ Separator: () => Separator,
10
+ Value: () => Value
11
+ });
12
+
13
+ //#endregion
14
+ export { index_parts_exports };
15
+ //# sourceMappingURL=index.parts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.parts.js","names":[],"sources":["../../../../src/ui/time/index.parts.ts"],"sourcesContent":["export { Group, type GroupProps } from './time-group';\nexport { Separator, type SeparatorProps } from './time-separator';\nexport { Value, type ValueProps } from './time-value';\n"],"mappings":""}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+
3
+ import { renderElement } from "../../utils/use-render.js";
4
+ import { forwardRef } from "react";
5
+
6
+ //#region src/ui/time/time-group.tsx
7
+ /**
8
+ * Container for composed time displays. Renders a `<span>` element.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <Time.Group>
13
+ * <Time.Value type="current" />
14
+ * <Time.Separator />
15
+ * <Time.Value type="duration" />
16
+ * </Time.Group>
17
+ * ```
18
+ */
19
+ const Group = forwardRef(function Group(componentProps, forwardedRef) {
20
+ const { render, className, style, children, ...elementProps } = componentProps;
21
+ return renderElement("span", {
22
+ render,
23
+ className,
24
+ style
25
+ }, {
26
+ state: {},
27
+ ref: [forwardedRef],
28
+ props: [{ children }, elementProps]
29
+ });
30
+ });
31
+
32
+ //#endregion
33
+ export { Group };
34
+ //# sourceMappingURL=time-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time-group.js","names":[],"sources":["../../../../src/ui/time/time-group.tsx"],"sourcesContent":["'use client';\n\nimport type { ForwardedRef, ReactNode } from 'react';\nimport { forwardRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\n\n// Empty state for Group (no dynamic state)\ntype GroupState = Record<string, never>;\n\nexport interface GroupProps extends UIComponentProps<'span', GroupState> {\n /** Time value components to render inside the group. */\n children?: ReactNode | undefined;\n}\n\n/**\n * Container for composed time displays. Renders a `<span>` element.\n *\n * @example\n * ```tsx\n * <Time.Group>\n * <Time.Value type=\"current\" />\n * <Time.Separator />\n * <Time.Value type=\"duration\" />\n * </Time.Group>\n * ```\n */\nexport const Group = forwardRef(function Group(\n componentProps: GroupProps,\n forwardedRef: ForwardedRef<HTMLSpanElement>\n) {\n const { render, className, style, children, ...elementProps } = componentProps;\n\n const state: GroupState = {};\n\n return renderElement(\n 'span',\n { render, className, style },\n {\n state,\n ref: [forwardedRef],\n props: [{ children }, elementProps],\n }\n );\n});\n\nexport namespace Group {\n export type Props = GroupProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AA4BA,MAAa,QAAQ,WAAW,SAAS,MACvC,gBACA,cACA;CACA,MAAM,EAAE,QAAQ,WAAW,OAAO,UAAU,GAAG,iBAAiB;AAIhE,QAAO,cACL,QACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE,OANsB,EAAE;EAOxB,KAAK,CAAC,aAAa;EACnB,OAAO,CAAC,EAAE,UAAU,EAAE,aAAa;EACpC,CACF;EACD"}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+
3
+ import { renderElement } from "../../utils/use-render.js";
4
+ import { forwardRef } from "react";
5
+
6
+ //#region src/ui/time/time-separator.tsx
7
+ /**
8
+ * Divider between time values. Hidden from screen readers.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <Time.Separator />
13
+ * <Time.Separator> of </Time.Separator>
14
+ * ```
15
+ */
16
+ const Separator = forwardRef(function Separator(componentProps, forwardedRef) {
17
+ const { render, className, style, children = "/", ...elementProps } = componentProps;
18
+ return renderElement("span", {
19
+ render,
20
+ className,
21
+ style
22
+ }, {
23
+ state: {},
24
+ ref: [forwardedRef],
25
+ props: [{
26
+ "aria-hidden": "true",
27
+ children
28
+ }, elementProps]
29
+ });
30
+ });
31
+
32
+ //#endregion
33
+ export { Separator };
34
+ //# sourceMappingURL=time-separator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time-separator.js","names":[],"sources":["../../../../src/ui/time/time-separator.tsx"],"sourcesContent":["'use client';\n\nimport type { ForwardedRef, ReactNode } from 'react';\nimport { forwardRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\n\n// Empty state for Separator (no dynamic state)\ntype SeparatorState = Record<string, never>;\n\nexport interface SeparatorProps extends UIComponentProps<'span', SeparatorState> {\n /** Separator content. Defaults to \"/\". */\n children?: ReactNode | undefined;\n}\n\n/**\n * Divider between time values. Hidden from screen readers.\n *\n * @example\n * ```tsx\n * <Time.Separator />\n * <Time.Separator> of </Time.Separator>\n * ```\n */\nexport const Separator = forwardRef(function Separator(\n componentProps: SeparatorProps,\n forwardedRef: ForwardedRef<HTMLSpanElement>\n) {\n const { render, className, style, children = '/', ...elementProps } = componentProps;\n\n const state: SeparatorState = {};\n\n return renderElement(\n 'span',\n { render, className, style },\n {\n state,\n ref: [forwardedRef],\n props: [{ 'aria-hidden': 'true', children }, elementProps],\n }\n );\n});\n\nexport namespace Separator {\n export type Props = SeparatorProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;AAyBA,MAAa,YAAY,WAAW,SAAS,UAC3C,gBACA,cACA;CACA,MAAM,EAAE,QAAQ,WAAW,OAAO,WAAW,KAAK,GAAG,iBAAiB;AAItE,QAAO,cACL,QACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE,OAN0B,EAAE;EAO5B,KAAK,CAAC,aAAa;EACnB,OAAO,CAAC;GAAE,eAAe;GAAQ;GAAU,EAAE,aAAa;EAC3D,CACF;EACD"}
@@ -0,0 +1,54 @@
1
+ 'use client';
2
+
3
+ import { usePlayer } from "../../player/context.js";
4
+ import { renderElement } from "../../utils/use-render.js";
5
+ import { selectTime } from "@videojs/core/dom";
6
+ import { forwardRef, useState } from "react";
7
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
+ import { TimeCore, TimeDataAttrs } from "@videojs/core";
9
+
10
+ //#region src/ui/time/time-value.tsx
11
+ /**
12
+ * Displays a formatted time value (current, duration, or remaining).
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * <Time.Value />
17
+ * <Time.Value type="duration" />
18
+ * <Time.Value type="remaining" negativeSign="−" />
19
+ * ```
20
+ */
21
+ const Value = forwardRef(function Value(componentProps, forwardedRef) {
22
+ const { render, className, style, type, negativeSign, label, ...elementProps } = componentProps;
23
+ const time = usePlayer(selectTime);
24
+ const [core] = useState(() => new TimeCore());
25
+ core.setProps({
26
+ type,
27
+ negativeSign,
28
+ label
29
+ });
30
+ if (!time) return null;
31
+ const state = core.getState(time);
32
+ const content = state.negative ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("span", {
33
+ "aria-hidden": "true",
34
+ children: negativeSign ?? TimeCore.defaultProps.negativeSign
35
+ }), state.text] }) : state.text;
36
+ return renderElement("time", {
37
+ render,
38
+ className,
39
+ style
40
+ }, {
41
+ state,
42
+ stateAttrMap: TimeDataAttrs,
43
+ ref: [forwardedRef],
44
+ props: [{
45
+ dateTime: state.datetime,
46
+ children: content,
47
+ ...core.getAttrs(state)
48
+ }, elementProps]
49
+ });
50
+ });
51
+
52
+ //#endregion
53
+ export { Value };
54
+ //# sourceMappingURL=time-value.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time-value.js","names":[],"sources":["../../../../src/ui/time/time-value.tsx"],"sourcesContent":["'use client';\n\nimport { TimeCore, TimeDataAttrs } from '@videojs/core';\nimport { logMissingFeature, selectTime } from '@videojs/core/dom';\nimport type { ForwardedRef } from 'react';\nimport { forwardRef, useState } from 'react';\n\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\n\nexport interface ValueProps extends Omit<UIComponentProps<'time', TimeCore.State>, 'children'>, TimeCore.Props {}\n\n/**\n * Displays a formatted time value (current, duration, or remaining).\n *\n * @example\n * ```tsx\n * <Time.Value />\n * <Time.Value type=\"duration\" />\n * <Time.Value type=\"remaining\" negativeSign=\"−\" />\n * ```\n */\nexport const Value = forwardRef(function Value(\n componentProps: ValueProps,\n forwardedRef: ForwardedRef<HTMLTimeElement>\n) {\n const { render, className, style, type, negativeSign, label, ...elementProps } = componentProps;\n\n const time = usePlayer(selectTime);\n\n const [core] = useState(() => new TimeCore());\n core.setProps({ type, negativeSign, label });\n\n if (!time) {\n if (__DEV__) logMissingFeature('Time.Value', 'time');\n return null;\n }\n\n const state = core.getState(time);\n\n const content = state.negative ? (\n <>\n <span aria-hidden=\"true\">{negativeSign ?? TimeCore.defaultProps.negativeSign}</span>\n {state.text}\n </>\n ) : (\n state.text\n );\n\n return renderElement(\n 'time',\n { render, className, style },\n {\n state,\n stateAttrMap: TimeDataAttrs,\n ref: [forwardedRef],\n props: [\n {\n dateTime: state.datetime,\n children: content,\n ...core.getAttrs(state),\n },\n elementProps,\n ],\n }\n );\n});\n\nexport namespace Value {\n export type Props = ValueProps;\n export type State = TimeCore.State;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAuBA,MAAa,QAAQ,WAAW,SAAS,MACvC,gBACA,cACA;CACA,MAAM,EAAE,QAAQ,WAAW,OAAO,MAAM,cAAc,OAAO,GAAG,iBAAiB;CAEjF,MAAM,OAAO,UAAU,WAAW;CAElC,MAAM,CAAC,QAAQ,eAAe,IAAI,UAAU,CAAC;AAC7C,MAAK,SAAS;EAAE;EAAM;EAAc;EAAO,CAAC;AAE5C,KAAI,CAAC,KAEH,QAAO;CAGT,MAAM,QAAQ,KAAK,SAAS,KAAK;CAEjC,MAAM,UAAU,MAAM,WACpB,4CACE,oBAAC;EAAK,eAAY;YAAQ,gBAAgB,SAAS,aAAa;GAAoB,EACnF,MAAM,QACN,GAEH,MAAM;AAGR,QAAO,cACL,QACA;EAAE;EAAQ;EAAW;EAAO,EAC5B;EACE;EACA,cAAc;EACd,KAAK,CAAC,aAAa;EACnB,OAAO,CACL;GACE,UAAU,MAAM;GAChB,UAAU;GACV,GAAG,KAAK,SAAS,MAAM;GACxB,EACD,aACD;EACF,CACF;EACD"}
@@ -0,0 +1,12 @@
1
+ //#region src/utils/attach-media-element.ts
2
+ function attachMediaElement(media) {
3
+ return (element) => {
4
+ if (element) media.attach(element);
5
+ else media.detach();
6
+ return () => media.detach();
7
+ };
8
+ }
9
+
10
+ //#endregion
11
+ export { attachMediaElement };
12
+ //# sourceMappingURL=attach-media-element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attach-media-element.js","names":[],"sources":["../../../src/utils/attach-media-element.ts"],"sourcesContent":["interface Attachable {\n attach(target: EventTarget): void;\n detach(): void;\n}\n\nexport function attachMediaElement<T extends HTMLVideoElement>(media: Attachable): (element: T | null) => void {\n return (element: T | null) => {\n if (element) {\n media.attach(element);\n } else {\n media.detach();\n }\n // React 19+ accepts a cleanup function as the return value\n return () => media.detach();\n };\n}\n"],"mappings":";AAKA,SAAgB,mBAA+C,OAAgD;AAC7G,SAAQ,YAAsB;AAC5B,MAAI,QACF,OAAM,OAAO,QAAQ;MAErB,OAAM,QAAQ;AAGhB,eAAa,MAAM,QAAQ"}
@@ -0,0 +1,11 @@
1
+ //#region src/utils/media-props.ts
2
+ function mediaProps(media, props) {
3
+ const { src, ...remainingProps } = props;
4
+ if (props.preload && media.preload !== props.preload) media.preload = props.preload;
5
+ if (media.src !== src) media.src = src ?? "";
6
+ return remainingProps;
7
+ }
8
+
9
+ //#endregion
10
+ export { mediaProps };
11
+ //# sourceMappingURL=media-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media-props.js","names":[],"sources":["../../../src/utils/media-props.ts"],"sourcesContent":["import type { MediaApi } from '@videojs/core/dom';\nimport type { VideoHTMLAttributes } from 'react';\n\ninterface VideoProps extends VideoHTMLAttributes<HTMLVideoElement> {}\n\nexport function mediaProps(media: MediaApi, props: VideoProps) {\n const { src, ...remainingProps } = props;\n\n // Preload can still be passed as a prop to the native media element\n if (props.preload && media.preload !== props.preload) {\n media.preload = props.preload as '' | 'none' | 'metadata' | 'auto';\n }\n\n if (media.src !== src) {\n media.src = src ?? '';\n }\n\n // The remaining props are passed to the native media element\n return remainingProps;\n}\n"],"mappings":";AAKA,SAAgB,WAAW,OAAiB,OAAmB;CAC7D,MAAM,EAAE,KAAK,GAAG,mBAAmB;AAGnC,KAAI,MAAM,WAAW,MAAM,YAAY,MAAM,QAC3C,OAAM,UAAU,MAAM;AAGxB,KAAI,MAAM,QAAQ,IAChB,OAAM,MAAM,OAAO;AAIrB,QAAO"}
@@ -0,0 +1,85 @@
1
+ 'use client';
2
+
3
+ //#region src/utils/merge-props.ts
4
+ /**
5
+ * Check if a key is an event handler key (on* with capital letter).
6
+ */
7
+ function isEventHandlerKey(key) {
8
+ return key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && key.charCodeAt(2) >= 65 && key.charCodeAt(2) <= 90;
9
+ }
10
+ /**
11
+ * Check if a key/value pair is an event handler (includes undefined values).
12
+ */
13
+ function isEventHandler(key, value) {
14
+ return isEventHandlerKey(key) && (typeof value === "function" || typeof value === "undefined");
15
+ }
16
+ /**
17
+ * Merge two event handlers - external runs first, ours runs second.
18
+ */
19
+ function mergeEventHandlers(ours, theirs) {
20
+ if (!theirs) return ours;
21
+ if (!ours) return theirs;
22
+ return (event) => {
23
+ theirs(event);
24
+ ours(event);
25
+ };
26
+ }
27
+ /**
28
+ * Merge two className values - concatenate strings.
29
+ */
30
+ function mergeClassNames(ours, theirs) {
31
+ if (theirs && ours) return `${theirs} ${ours}`;
32
+ return theirs || ours;
33
+ }
34
+ /**
35
+ * Merge two style objects - theirs overwrites conflicts.
36
+ */
37
+ function mergeStyles(ours, theirs) {
38
+ if (!theirs) return ours;
39
+ if (!ours) return theirs;
40
+ return {
41
+ ...ours,
42
+ ...theirs
43
+ };
44
+ }
45
+ /**
46
+ * Merge a single props object into accumulated result.
47
+ */
48
+ function mergeOne(merged, props) {
49
+ if (!props) return merged;
50
+ for (const key in props) {
51
+ const value = props[key];
52
+ if (key === "className") merged.className = mergeClassNames(merged.className, value);
53
+ else if (key === "style") merged.style = mergeStyles(merged.style, value);
54
+ else if (isEventHandler(key, value)) merged[key] = mergeEventHandlers(merged[key], value);
55
+ else merged[key] = value;
56
+ }
57
+ return merged;
58
+ }
59
+ /**
60
+ * Merge multiple props objects.
61
+ *
62
+ * - Event handlers (on*): chained - external first, ours second
63
+ * - className: concatenated
64
+ * - style: merged objects (external wins conflicts)
65
+ * - other: last one wins
66
+ *
67
+ * @public
68
+ * @example
69
+ * ```ts
70
+ * const merged = mergeProps(
71
+ * { onClick: ourHandler, className: 'base' },
72
+ * { onClick: theirHandler, className: 'custom' }
73
+ * );
74
+ * // { onClick: chainedHandler, className: 'custom base' }
75
+ * ```
76
+ */
77
+ function mergeProps(...propSets) {
78
+ let merged = {};
79
+ for (const props of propSets) merged = mergeOne(merged, props);
80
+ return merged;
81
+ }
82
+
83
+ //#endregion
84
+ export { mergeProps };
85
+ //# sourceMappingURL=merge-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-props.js","names":[],"sources":["../../../src/utils/merge-props.ts"],"sourcesContent":["'use client';\n\nimport type { ComponentPropsWithRef, CSSProperties, ElementType, SyntheticEvent } from 'react';\n\ntype Props<T extends ElementType = ElementType> = ComponentPropsWithRef<T>;\n\n/**\n * Check if a key is an event handler key (on* with capital letter).\n */\nfunction isEventHandlerKey(key: string): boolean {\n return (\n key.charCodeAt(0) === 111 /* o */ &&\n key.charCodeAt(1) === 110 /* n */ &&\n key.charCodeAt(2) >= 65 /* A */ &&\n key.charCodeAt(2) <= 90 /* Z */\n );\n}\n\n/**\n * Check if a key/value pair is an event handler (includes undefined values).\n */\nfunction isEventHandler(key: string, value: unknown): boolean {\n return isEventHandlerKey(key) && (typeof value === 'function' || typeof value === 'undefined');\n}\n\n/**\n * Merge two event handlers - external runs first, ours runs second.\n */\nfunction mergeEventHandlers(\n ours: ((event: SyntheticEvent) => void) | undefined,\n theirs: ((event: SyntheticEvent) => void) | undefined\n): ((event: SyntheticEvent) => void) | undefined {\n if (!theirs) return ours;\n if (!ours) return theirs;\n\n return (event: SyntheticEvent) => {\n theirs(event);\n ours(event);\n };\n}\n\n/**\n * Merge two className values - concatenate strings.\n */\nfunction mergeClassNames(ours: string | undefined, theirs: string | undefined): string | undefined {\n if (theirs && ours) return `${theirs} ${ours}`;\n return theirs || ours;\n}\n\n/**\n * Merge two style objects - theirs overwrites conflicts.\n */\nfunction mergeStyles(ours: CSSProperties | undefined, theirs: CSSProperties | undefined): CSSProperties | undefined {\n if (!theirs) return ours;\n if (!ours) return theirs;\n return { ...ours, ...theirs };\n}\n\n/**\n * Merge a single props object into accumulated result.\n */\nfunction mergeOne<T extends ElementType>(\n merged: Record<string, unknown>,\n props: Props<T> | undefined\n): Record<string, unknown> {\n if (!props) return merged;\n\n for (const key in props) {\n const value = props[key as keyof typeof props];\n\n if (key === 'className') {\n merged.className = mergeClassNames(merged.className as string | undefined, value as string);\n } else if (key === 'style') {\n merged.style = mergeStyles(merged.style as CSSProperties | undefined, value as CSSProperties);\n } else if (isEventHandler(key, value)) {\n merged[key] = mergeEventHandlers(\n merged[key] as ((event: SyntheticEvent) => void) | undefined,\n value as (event: SyntheticEvent) => void\n );\n } else {\n merged[key] = value;\n }\n }\n\n return merged;\n}\n\n/**\n * Merge multiple props objects.\n *\n * - Event handlers (on*): chained - external first, ours second\n * - className: concatenated\n * - style: merged objects (external wins conflicts)\n * - other: last one wins\n *\n * @public\n * @example\n * ```ts\n * const merged = mergeProps(\n * { onClick: ourHandler, className: 'base' },\n * { onClick: theirHandler, className: 'custom' }\n * );\n * // { onClick: chainedHandler, className: 'custom base' }\n * ```\n */\nexport function mergeProps<T extends ElementType>(...propSets: (Props<T> | undefined)[]): Props<T> {\n let merged: Record<string, unknown> = {};\n\n for (const props of propSets) {\n merged = mergeOne(merged, props);\n }\n\n return merged as Props<T>;\n}\n"],"mappings":";;;;;;AASA,SAAS,kBAAkB,KAAsB;AAC/C,QACE,IAAI,WAAW,EAAE,KAAK,OACtB,IAAI,WAAW,EAAE,KAAK,OACtB,IAAI,WAAW,EAAE,IAAI,MACrB,IAAI,WAAW,EAAE,IAAI;;;;;AAOzB,SAAS,eAAe,KAAa,OAAyB;AAC5D,QAAO,kBAAkB,IAAI,KAAK,OAAO,UAAU,cAAc,OAAO,UAAU;;;;;AAMpF,SAAS,mBACP,MACA,QAC+C;AAC/C,KAAI,CAAC,OAAQ,QAAO;AACpB,KAAI,CAAC,KAAM,QAAO;AAElB,SAAQ,UAA0B;AAChC,SAAO,MAAM;AACb,OAAK,MAAM;;;;;;AAOf,SAAS,gBAAgB,MAA0B,QAAgD;AACjG,KAAI,UAAU,KAAM,QAAO,GAAG,OAAO,GAAG;AACxC,QAAO,UAAU;;;;;AAMnB,SAAS,YAAY,MAAiC,QAA8D;AAClH,KAAI,CAAC,OAAQ,QAAO;AACpB,KAAI,CAAC,KAAM,QAAO;AAClB,QAAO;EAAE,GAAG;EAAM,GAAG;EAAQ;;;;;AAM/B,SAAS,SACP,QACA,OACyB;AACzB,KAAI,CAAC,MAAO,QAAO;AAEnB,MAAK,MAAM,OAAO,OAAO;EACvB,MAAM,QAAQ,MAAM;AAEpB,MAAI,QAAQ,YACV,QAAO,YAAY,gBAAgB,OAAO,WAAiC,MAAgB;WAClF,QAAQ,QACjB,QAAO,QAAQ,YAAY,OAAO,OAAoC,MAAuB;WACpF,eAAe,KAAK,MAAM,CACnC,QAAO,OAAO,mBACZ,OAAO,MACP,MACD;MAED,QAAO,OAAO;;AAIlB,QAAO;;;;;;;;;;;;;;;;;;;;AAqBT,SAAgB,WAAkC,GAAG,UAA8C;CACjG,IAAI,SAAkC,EAAE;AAExC,MAAK,MAAM,SAAS,SAClB,UAAS,SAAS,QAAQ,MAAM;AAGlC,QAAO"}
@@ -0,0 +1,57 @@
1
+ 'use client';
2
+
3
+ import { useCallback } from "react";
4
+ import { isFunction } from "@videojs/utils/predicate";
5
+
6
+ //#region src/utils/use-composed-refs.ts
7
+ /**
8
+ * Set a given ref to a given value.
9
+ *
10
+ * Handles both callback refs and RefObject(s).
11
+ *
12
+ * @returns Cleanup function if the ref callback returned one (React 19+)
13
+ */
14
+ function setRef(ref, value) {
15
+ if (isFunction(ref)) return ref(value);
16
+ else if (ref !== null && ref !== void 0) ref.current = value;
17
+ }
18
+ /**
19
+ * Compose multiple refs into a single callback ref.
20
+ *
21
+ * @example
22
+ * ```tsx
23
+ * const composedRef = composeRefs(ref1, ref2, ref3);
24
+ * return <div ref={composedRef} />;
25
+ * ```
26
+ */
27
+ function composeRefs(...refs) {
28
+ const flatRefs = refs.flat();
29
+ return (node) => {
30
+ const cleanups = flatRefs.map((ref) => setRef(ref, node));
31
+ if (cleanups.some(isFunction)) return () => {
32
+ for (let i = 0; i < cleanups.length; i++) {
33
+ const cleanup = cleanups[i];
34
+ if (isFunction(cleanup)) cleanup();
35
+ else setRef(flatRefs[i], null);
36
+ }
37
+ };
38
+ };
39
+ }
40
+ /**
41
+ * Hook that composes multiple refs into a single callback ref.
42
+ *
43
+ * Memoized for stable reference.
44
+ *
45
+ * @example
46
+ * ```tsx
47
+ * const composedRef = useComposedRefs(forwardedRef, localRef);
48
+ * return <div ref={composedRef} />;
49
+ * ```
50
+ */
51
+ function useComposedRefs(...refs) {
52
+ return useCallback(composeRefs(...refs), [...refs]);
53
+ }
54
+
55
+ //#endregion
56
+ export { composeRefs, useComposedRefs };
57
+ //# sourceMappingURL=use-composed-refs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-composed-refs.js","names":[],"sources":["../../../src/utils/use-composed-refs.ts"],"sourcesContent":["'use client';\n\nimport { isFunction } from '@videojs/utils/predicate';\nimport type { Ref, RefCallback } from 'react';\n\nimport { useCallback } from 'react';\n\ntype OptionalRef<T> = Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value.\n *\n * Handles both callback refs and RefObject(s).\n *\n * @returns Cleanup function if the ref callback returned one (React 19+)\n */\nfunction setRef<T>(ref: OptionalRef<T>, value: T): (() => void) | void | undefined {\n if (isFunction(ref)) {\n return ref(value);\n } else if (ref !== null && ref !== undefined) {\n ref.current = value;\n }\n}\n\n/**\n * Compose multiple refs into a single callback ref.\n *\n * @example\n * ```tsx\n * const composedRef = composeRefs(ref1, ref2, ref3);\n * return <div ref={composedRef} />;\n * ```\n */\nexport function composeRefs<T>(...refs: (OptionalRef<T> | OptionalRef<T>[])[]): RefCallback<T> {\n const flatRefs = refs.flat();\n\n return (node): (() => void) | void => {\n const cleanups = flatRefs.map((ref) => setRef(ref, node));\n\n // Only return cleanup if any refs returned one (React 19+).\n // React 18 handles cleanup by calling the ref callback with null.\n if (cleanups.some(isFunction)) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (isFunction(cleanup)) {\n cleanup();\n } else {\n setRef(flatRefs[i], null);\n }\n }\n };\n }\n };\n}\n\n/**\n * Hook that composes multiple refs into a single callback ref.\n *\n * Memoized for stable reference.\n *\n * @example\n * ```tsx\n * const composedRef = useComposedRefs(forwardedRef, localRef);\n * return <div ref={composedRef} />;\n * ```\n */\nexport function useComposedRefs<T>(...refs: OptionalRef<T>[]): RefCallback<T> {\n return useCallback(composeRefs(...refs), [...refs]);\n}\n"],"mappings":";;;;;;;;;;;;;AAgBA,SAAS,OAAU,KAAqB,OAA2C;AACjF,KAAI,WAAW,IAAI,CACjB,QAAO,IAAI,MAAM;UACR,QAAQ,QAAQ,QAAQ,OACjC,KAAI,UAAU;;;;;;;;;;;AAalB,SAAgB,YAAe,GAAG,MAA6D;CAC7F,MAAM,WAAW,KAAK,MAAM;AAE5B,SAAQ,SAA8B;EACpC,MAAM,WAAW,SAAS,KAAK,QAAQ,OAAO,KAAK,KAAK,CAAC;AAIzD,MAAI,SAAS,KAAK,WAAW,CAC3B,cAAa;AACX,QAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;IACxC,MAAM,UAAU,SAAS;AACzB,QAAI,WAAW,QAAQ,CACrB,UAAS;QAET,QAAO,SAAS,IAAI,KAAK;;;;;;;;;;;;;;;;AAmBrC,SAAgB,gBAAmB,GAAG,MAAwC;AAC5E,QAAO,YAAY,YAAY,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC"}
@@ -0,0 +1,71 @@
1
+ 'use client';
2
+
3
+ import { composeRefs } from "./use-composed-refs.js";
4
+ import { mergeProps } from "./merge-props.js";
5
+ import { getStateDataAttrs } from "@videojs/core/dom";
6
+ import { cloneElement, createElement, isValidElement } from "react";
7
+ import { isFunction } from "@videojs/utils/predicate";
8
+
9
+ //#region src/utils/use-render.tsx
10
+ function resolveClassName(className, state) {
11
+ return isFunction(className) ? className(state) : className;
12
+ }
13
+ function resolveStyle(style, state) {
14
+ return isFunction(style) ? style(state) : style;
15
+ }
16
+ function getElementRef(element) {
17
+ const elementAny = element;
18
+ return elementAny.ref ?? elementAny.props?.ref;
19
+ }
20
+ /**
21
+ * Render a UI component element.
22
+ *
23
+ * Handles:
24
+ * - Default tag rendering
25
+ * - Render prop (element or function)
26
+ * - Props merging (event handlers chained, className concatenated, style merged)
27
+ * - Ref composition
28
+ * - className/style as functions of state
29
+ *
30
+ * @public
31
+ * @example
32
+ * ```tsx
33
+ * return renderElement('button', componentProps, {
34
+ * state,
35
+ * ref: [forwardedRef, buttonRef],
36
+ * props: [{ type: 'button' }, elementProps, getButtonProps],
37
+ * });
38
+ * ```
39
+ */
40
+ function renderElement(element, componentProps, params) {
41
+ const { className: classNameProp, style: styleProp, render } = componentProps;
42
+ const { state, ref, props, stateAttrMap } = params;
43
+ const className = resolveClassName(classNameProp, state);
44
+ const style = resolveStyle(styleProp, state);
45
+ const mergedProps = mergeProps(getStateDataAttrs(state, stateAttrMap), ...Array.isArray(props) ? props : props ? [props] : []);
46
+ if (className !== void 0) mergedProps.className = mergedProps.className ? `${mergedProps.className} ${className}` : className;
47
+ if (style !== void 0) mergedProps.style = mergedProps.style ? {
48
+ ...mergedProps.style,
49
+ ...style
50
+ } : style;
51
+ if (isFunction(render)) {
52
+ const mergedRef = composeRefs(ref, mergedProps.ref);
53
+ return render({
54
+ ...mergedProps,
55
+ ref: mergedRef
56
+ }, state);
57
+ }
58
+ if (isValidElement(render)) {
59
+ const elementRef = getElementRef(render);
60
+ const mergedRef = composeRefs(ref, mergedProps.ref, elementRef);
61
+ const elementProps = mergeProps(mergedProps, render.props);
62
+ elementProps.ref = mergedRef;
63
+ return cloneElement(render, elementProps);
64
+ }
65
+ mergedProps.ref = composeRefs(ref, mergedProps.ref);
66
+ return createElement(element, mergedProps);
67
+ }
68
+
69
+ //#endregion
70
+ export { renderElement };
71
+ //# sourceMappingURL=use-render.js.map
@@ -0,0 +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"}
@@ -0,0 +1,36 @@
1
+ //#region \0rolldown/runtime.js
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __exportAll = (all, no_symbols) => {
7
+ let target = {};
8
+ for (var name in all) {
9
+ __defProp(target, name, {
10
+ get: all[name],
11
+ enumerable: true
12
+ });
13
+ }
14
+ if (!no_symbols) {
15
+ __defProp(target, Symbol.toStringTag, { value: "Module" });
16
+ }
17
+ return target;
18
+ };
19
+ var __copyProps = (to, from, except, desc) => {
20
+ if (from && typeof from === "object" || typeof from === "function") {
21
+ for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
22
+ key = keys[i];
23
+ if (!__hasOwnProp.call(to, key) && key !== except) {
24
+ __defProp(to, key, {
25
+ get: ((k) => from[k]).bind(null, key),
26
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
27
+ });
28
+ }
29
+ }
30
+ }
31
+ return to;
32
+ };
33
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
34
+
35
+ //#endregion
36
+ export { __exportAll, __reExport };
@@ -0,0 +1,66 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+
3
+ //#region ../icons/dist/react/default/captions-off.js
4
+ const CaptionsOffIcon = (props) => /* @__PURE__ */ jsxs("svg", {
5
+ xmlns: "http://www.w3.org/2000/svg",
6
+ width: 18,
7
+ height: 18,
8
+ fill: "none",
9
+ viewBox: "0 0 18 18",
10
+ ...props,
11
+ children: [
12
+ /* @__PURE__ */ jsx("rect", {
13
+ width: 16,
14
+ height: 12,
15
+ x: 1,
16
+ y: 3,
17
+ stroke: "currentColor",
18
+ strokeWidth: 2,
19
+ rx: 3
20
+ }),
21
+ /* @__PURE__ */ jsx("rect", {
22
+ width: 3,
23
+ height: 2,
24
+ x: 3,
25
+ y: 8,
26
+ fill: "currentColor",
27
+ rx: 1
28
+ }),
29
+ /* @__PURE__ */ jsx("rect", {
30
+ width: 2,
31
+ height: 2,
32
+ x: 13,
33
+ y: 8,
34
+ fill: "currentColor",
35
+ rx: 1
36
+ }),
37
+ /* @__PURE__ */ jsx("rect", {
38
+ width: 4,
39
+ height: 2,
40
+ x: 11,
41
+ y: 11,
42
+ fill: "currentColor",
43
+ rx: 1
44
+ }),
45
+ /* @__PURE__ */ jsx("rect", {
46
+ width: 5,
47
+ height: 2,
48
+ x: 7,
49
+ y: 8,
50
+ fill: "currentColor",
51
+ rx: 1
52
+ }),
53
+ /* @__PURE__ */ jsx("rect", {
54
+ width: 7,
55
+ height: 2,
56
+ x: 3,
57
+ y: 11,
58
+ fill: "currentColor",
59
+ rx: 1
60
+ })
61
+ ]
62
+ });
63
+
64
+ //#endregion
65
+ export { CaptionsOffIcon as default };
66
+ //# sourceMappingURL=captions-off.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"captions-off.js","names":[],"sources":["../../../../../../../icons/dist/react/default/captions-off.js"],"sourcesContent":["import { jsx, jsxs } from \"react/jsx-runtime\";\nconst CaptionsOffIcon = (props) => /* @__PURE__ */ jsxs(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 18, height: 18, fill: \"none\", viewBox: \"0 0 18 18\", ...props, children: [\n /* @__PURE__ */ jsx(\"rect\", { width: 16, height: 12, x: 1, y: 3, stroke: \"currentColor\", strokeWidth: 2, rx: 3 }),\n /* @__PURE__ */ jsx(\"rect\", { width: 3, height: 2, x: 3, y: 8, fill: \"currentColor\", rx: 1 }),\n /* @__PURE__ */ jsx(\"rect\", { width: 2, height: 2, x: 13, y: 8, fill: \"currentColor\", rx: 1 }),\n /* @__PURE__ */ jsx(\"rect\", { width: 4, height: 2, x: 11, y: 11, fill: \"currentColor\", rx: 1 }),\n /* @__PURE__ */ jsx(\"rect\", { width: 5, height: 2, x: 7, y: 8, fill: \"currentColor\", rx: 1 }),\n /* @__PURE__ */ jsx(\"rect\", { width: 7, height: 2, x: 3, y: 11, fill: \"currentColor\", rx: 1 })\n] });\nexport default CaptionsOffIcon;\n"],"mappings":";;;AACA,MAAM,mBAAmB,UAA0B,qBAAK,OAAO;CAAE,OAAO;CAA8B,OAAO;CAAI,QAAQ;CAAI,MAAM;CAAQ,SAAS;CAAa,GAAG;CAAO,UAAU;EACnK,oBAAI,QAAQ;GAAE,OAAO;GAAI,QAAQ;GAAI,GAAG;GAAG,GAAG;GAAG,QAAQ;GAAgB,aAAa;GAAG,IAAI;GAAG,CAAC;EACjG,oBAAI,QAAQ;GAAE,OAAO;GAAG,QAAQ;GAAG,GAAG;GAAG,GAAG;GAAG,MAAM;GAAgB,IAAI;GAAG,CAAC;EAC7E,oBAAI,QAAQ;GAAE,OAAO;GAAG,QAAQ;GAAG,GAAG;GAAI,GAAG;GAAG,MAAM;GAAgB,IAAI;GAAG,CAAC;EAC9E,oBAAI,QAAQ;GAAE,OAAO;GAAG,QAAQ;GAAG,GAAG;GAAI,GAAG;GAAI,MAAM;GAAgB,IAAI;GAAG,CAAC;EAC/E,oBAAI,QAAQ;GAAE,OAAO;GAAG,QAAQ;GAAG,GAAG;GAAG,GAAG;GAAG,MAAM;GAAgB,IAAI;GAAG,CAAC;EAC7E,oBAAI,QAAQ;GAAE,OAAO;GAAG,QAAQ;GAAG,GAAG;GAAG,GAAG;GAAI,MAAM;GAAgB,IAAI;GAAG,CAAC;EAC/F;CAAE,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+
3
+ //#region ../icons/dist/react/default/captions-on.js
4
+ const CaptionsOnIcon = (props) => /* @__PURE__ */ jsx("svg", {
5
+ xmlns: "http://www.w3.org/2000/svg",
6
+ width: 18,
7
+ height: 18,
8
+ fill: "none",
9
+ viewBox: "0 0 18 18",
10
+ ...props,
11
+ children: /* @__PURE__ */ jsx("path", {
12
+ fill: "currentColor",
13
+ d: "M15 2a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3zM4 11a1 1 0 1 0 0 2h5a1 1 0 1 0 0-2zm8 0a1 1 0 1 0 0 2h2a1 1 0 1 0 0-2zM4 8a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2zm4 0a1 1 0 0 0 0 2h3a1 1 0 1 0 0-2zm6 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2"
14
+ })
15
+ });
16
+
17
+ //#endregion
18
+ export { CaptionsOnIcon as default };
19
+ //# sourceMappingURL=captions-on.js.map