@therealtinhtute/baroiplayer 1.0.6 → 1.0.8

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 (597) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.js +1 -7
  3. package/dist/index.mjs +1 -2
  4. package/dist/package.json +1 -1
  5. package/package.json +1 -1
  6. package/dist/context/media.js +0 -2
  7. package/dist/context/media.js.map +0 -1
  8. package/dist/context/media.mjs +0 -15
  9. package/dist/context/media.mjs.map +0 -1
  10. package/dist/context/store.js +0 -2
  11. package/dist/context/store.js.map +0 -1
  12. package/dist/context/store.mjs +0 -5
  13. package/dist/context/store.mjs.map +0 -1
  14. package/dist/context-Af84FynT.js +0 -1179
  15. package/dist/context-Af84FynT.js.map +0 -1
  16. package/dist/context-CwZnPdz0.cjs +0 -23
  17. package/dist/context-CwZnPdz0.cjs.map +0 -1
  18. package/dist/core-events-B5W_j8yU.js +0 -480
  19. package/dist/core-events-B5W_j8yU.js.map +0 -1
  20. package/dist/core-events-CN0-Vhhq.cjs +0 -2
  21. package/dist/core-events-CN0-Vhhq.cjs.map +0 -1
  22. package/dist/core-plugins-Bq9KLany.js +0 -696
  23. package/dist/core-plugins-Bq9KLany.js.map +0 -1
  24. package/dist/core-plugins-CPDSHMiQ.cjs +0 -2
  25. package/dist/core-plugins-CPDSHMiQ.cjs.map +0 -1
  26. package/dist/core.js +0 -37
  27. package/dist/core.js.map +0 -1
  28. package/dist/core.mjs +0 -1217
  29. package/dist/core.mjs.map +0 -1
  30. package/dist/enhanced-components-CXnYiOt6.cjs +0 -2
  31. package/dist/enhanced-components-CXnYiOt6.cjs.map +0 -1
  32. package/dist/enhanced-components-Da0TSvKe.js +0 -1073
  33. package/dist/enhanced-components-Da0TSvKe.js.map +0 -1
  34. package/dist/hooks-BCMilGRf.cjs +0 -4
  35. package/dist/hooks-BCMilGRf.cjs.map +0 -1
  36. package/dist/hooks-BPtHV1ZT.js +0 -2042
  37. package/dist/hooks-BPtHV1ZT.js.map +0 -1
  38. package/dist/index.js.map +0 -1
  39. package/dist/index.mjs.map +0 -1
  40. package/dist/minimal-components-BHJMuaL7.cjs +0 -2
  41. package/dist/minimal-components-BHJMuaL7.cjs.map +0 -1
  42. package/dist/minimal-components-BmqRefl1.js +0 -2002
  43. package/dist/minimal-components-BmqRefl1.js.map +0 -1
  44. package/dist/mona-loading.gif +0 -0
  45. package/dist/performance-monitor--rzKTlbj.js +0 -302
  46. package/dist/performance-monitor--rzKTlbj.js.map +0 -1
  47. package/dist/performance-monitor-cjIvZE2D.cjs +0 -2
  48. package/dist/performance-monitor-cjIvZE2D.cjs.map +0 -1
  49. package/dist/src/adapters/videojs-adapter.d.ts.map +0 -1
  50. package/dist/src/adapters/videojs-adapter.js +0 -350
  51. package/dist/src/assets/mona-loading.gif +0 -0
  52. package/dist/src/components/AnimateLoading.d.ts.map +0 -1
  53. package/dist/src/components/AnimateLoading.js +0 -41
  54. package/dist/src/components/LoadingState.d.ts.map +0 -1
  55. package/dist/src/components/LoadingState.js +0 -111
  56. package/dist/src/components/accessibility/keyboard-help-overlay.d.ts.map +0 -1
  57. package/dist/src/components/accessibility/keyboard-help-overlay.js +0 -90
  58. package/dist/src/components/audio-player.d.ts.map +0 -1
  59. package/dist/src/components/audio-player.js +0 -31
  60. package/dist/src/components/basic/index.d.ts.map +0 -1
  61. package/dist/src/components/basic/index.js +0 -29
  62. package/dist/src/components/enhanced/advanced-features.d.ts.map +0 -1
  63. package/dist/src/components/enhanced/advanced-features.js +0 -64
  64. package/dist/src/components/enhanced/debug-panel.d.ts.map +0 -1
  65. package/dist/src/components/enhanced/debug-panel.js +0 -94
  66. package/dist/src/components/enhanced/enhanced-controls.d.ts.map +0 -1
  67. package/dist/src/components/enhanced/enhanced-controls.js +0 -233
  68. package/dist/src/components/enhanced/enhanced-media-player.d.ts.map +0 -1
  69. package/dist/src/components/enhanced/enhanced-media-player.js +0 -316
  70. package/dist/src/components/enhanced/error-handling.d.ts.map +0 -1
  71. package/dist/src/components/enhanced/error-handling.js +0 -153
  72. package/dist/src/components/enhanced/index.d.ts.map +0 -1
  73. package/dist/src/components/enhanced/index.js +0 -10
  74. package/dist/src/components/enhanced/media-player-enhanced.d.ts.map +0 -1
  75. package/dist/src/components/enhanced/media-player-enhanced.js +0 -250
  76. package/dist/src/components/examples/basic-video-player.d.ts.map +0 -1
  77. package/dist/src/components/examples/basic-video-player.js +0 -16
  78. package/dist/src/components/examples/custom-controls-example.d.ts.map +0 -1
  79. package/dist/src/components/examples/custom-controls-example.js +0 -12
  80. package/dist/src/components/examples/enhanced-controls-example.d.ts.map +0 -1
  81. package/dist/src/components/examples/enhanced-controls-example.js +0 -18
  82. package/dist/src/components/examples/enhanced-media-player-example.d.ts.map +0 -1
  83. package/dist/src/components/examples/enhanced-media-player-example.js +0 -13
  84. package/dist/src/components/examples/loading-states-demo.d.ts.map +0 -1
  85. package/dist/src/components/examples/loading-states-demo.js +0 -41
  86. package/dist/src/components/examples/react-19-demo.d.ts.map +0 -1
  87. package/dist/src/components/examples/react-19-demo.js +0 -104
  88. package/dist/src/components/examples/volume-orientation-demo.d.ts.map +0 -1
  89. package/dist/src/components/examples/volume-orientation-demo.js +0 -31
  90. package/dist/src/components/icon-demo.d.ts.map +0 -1
  91. package/dist/src/components/icon-demo.js +0 -16
  92. package/dist/src/components/icons/index.d.ts.map +0 -1
  93. package/dist/src/components/icons/index.js +0 -59
  94. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.d.ts.map +0 -1
  95. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  96. package/dist/src/components/icons/svg-icons/ArrowRightIcon.d.ts.map +0 -1
  97. package/dist/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  98. package/dist/src/components/icons/svg-icons/AudioIcon.d.ts.map +0 -1
  99. package/dist/src/components/icons/svg-icons/AudioIcon.js +0 -4
  100. package/dist/src/components/icons/svg-icons/BackwardIcon.d.ts.map +0 -1
  101. package/dist/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  102. package/dist/src/components/icons/svg-icons/CameraIcon.d.ts.map +0 -1
  103. package/dist/src/components/icons/svg-icons/CameraIcon.js +0 -4
  104. package/dist/src/components/icons/svg-icons/CheckIcon.d.ts.map +0 -1
  105. package/dist/src/components/icons/svg-icons/CheckIcon.js +0 -4
  106. package/dist/src/components/icons/svg-icons/EnablePiPIcon.d.ts.map +0 -1
  107. package/dist/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  108. package/dist/src/components/icons/svg-icons/ForwardIcon.d.ts.map +0 -1
  109. package/dist/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  110. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts.map +0 -1
  111. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  112. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.d.ts.map +0 -1
  113. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  114. package/dist/src/components/icons/svg-icons/LoadingIcon.d.ts.map +0 -1
  115. package/dist/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  116. package/dist/src/components/icons/svg-icons/PauseIcon.d.ts.map +0 -1
  117. package/dist/src/components/icons/svg-icons/PauseIcon.js +0 -3
  118. package/dist/src/components/icons/svg-icons/PlayIcon.d.ts.map +0 -1
  119. package/dist/src/components/icons/svg-icons/PlayIcon.js +0 -3
  120. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts.map +0 -1
  121. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  122. package/dist/src/components/icons/svg-icons/QualityIcon.d.ts.map +0 -1
  123. package/dist/src/components/icons/svg-icons/QualityIcon.js +0 -3
  124. package/dist/src/components/icons/svg-icons/SettingsIcon.d.ts.map +0 -1
  125. package/dist/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  126. package/dist/src/components/icons/svg-icons/SliderIcon.d.ts.map +0 -1
  127. package/dist/src/components/icons/svg-icons/SliderIcon.js +0 -3
  128. package/dist/src/components/icons/svg-icons/SubtitleIcon.d.ts.map +0 -1
  129. package/dist/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  130. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.d.ts.map +0 -1
  131. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  132. package/dist/src/components/icons/svg-icons/UnPiPIcon.d.ts.map +0 -1
  133. package/dist/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  134. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.d.ts.map +0 -1
  135. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  136. package/dist/src/components/icons/svg-icons/VolumeOneIcon.d.ts.map +0 -1
  137. package/dist/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  138. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.d.ts.map +0 -1
  139. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  140. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.d.ts.map +0 -1
  141. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  142. package/dist/src/components/legacy.d.ts.map +0 -1
  143. package/dist/src/components/legacy.js +0 -52
  144. package/dist/src/components/media-metadata-display.d.ts.map +0 -1
  145. package/dist/src/components/media-metadata-display.js +0 -20
  146. package/dist/src/components/media-player-audio.d.ts.map +0 -1
  147. package/dist/src/components/media-player-audio.js +0 -18
  148. package/dist/src/components/media-player-controls.d.ts.map +0 -1
  149. package/dist/src/components/media-player-controls.js +0 -150
  150. package/dist/src/components/media-player-error.d.ts.map +0 -1
  151. package/dist/src/components/media-player-error.js +0 -85
  152. package/dist/src/components/media-player-fullscreen.d.ts.map +0 -1
  153. package/dist/src/components/media-player-fullscreen.js +0 -68
  154. package/dist/src/components/media-player-hls.d.ts.map +0 -1
  155. package/dist/src/components/media-player-hls.js +0 -20
  156. package/dist/src/components/media-player-loading.d.ts.map +0 -1
  157. package/dist/src/components/media-player-loading.js +0 -53
  158. package/dist/src/components/media-player-play.d.ts.map +0 -1
  159. package/dist/src/components/media-player-play.js +0 -44
  160. package/dist/src/components/media-player-root.d.ts.map +0 -1
  161. package/dist/src/components/media-player-root.js +0 -243
  162. package/dist/src/components/media-player-seek.d.ts.map +0 -1
  163. package/dist/src/components/media-player-seek.js +0 -92
  164. package/dist/src/components/media-player-time.d.ts.map +0 -1
  165. package/dist/src/components/media-player-time.js +0 -57
  166. package/dist/src/components/media-player-tooltip.d.ts.map +0 -1
  167. package/dist/src/components/media-player-tooltip.js +0 -14
  168. package/dist/src/components/media-player-video.d.ts.map +0 -1
  169. package/dist/src/components/media-player-video.js +0 -18
  170. package/dist/src/components/media-player-volume.d.ts.map +0 -1
  171. package/dist/src/components/media-player-volume.js +0 -88
  172. package/dist/src/components/media-player.d.ts.map +0 -1
  173. package/dist/src/components/media-player.js +0 -67
  174. package/dist/src/components/media-suspense.d.ts.map +0 -1
  175. package/dist/src/components/media-suspense.js +0 -173
  176. package/dist/src/components/player-settings-form.d.ts.map +0 -1
  177. package/dist/src/components/player-settings-form.js +0 -46
  178. package/dist/src/components/react-player-wrapper.d.ts.map +0 -1
  179. package/dist/src/components/react-player-wrapper.js +0 -163
  180. package/dist/src/components/simple-video-player.d.ts.map +0 -1
  181. package/dist/src/components/simple-video-player.js +0 -41
  182. package/dist/src/components/ui/enhanced-seek-bar.d.ts.map +0 -1
  183. package/dist/src/components/ui/enhanced-seek-bar.js +0 -112
  184. package/dist/src/components/ui/fullscreen-button.d.ts.map +0 -1
  185. package/dist/src/components/ui/fullscreen-button.js +0 -21
  186. package/dist/src/components/ui/media-resource-preloader.d.ts.map +0 -1
  187. package/dist/src/components/ui/media-resource-preloader.js +0 -295
  188. package/dist/src/components/ui/play-button.d.ts.map +0 -1
  189. package/dist/src/components/ui/play-button.js +0 -26
  190. package/dist/src/components/ui/seek-bar.d.ts.map +0 -1
  191. package/dist/src/components/ui/seek-bar.js +0 -54
  192. package/dist/src/components/ui/time-display.d.ts.map +0 -1
  193. package/dist/src/components/ui/time-display.js +0 -18
  194. package/dist/src/components/ui/volume-control.d.ts.map +0 -1
  195. package/dist/src/components/ui/volume-control.js +0 -71
  196. package/dist/src/components/unified/base-media-player.d.ts.map +0 -1
  197. package/dist/src/components/unified/base-media-player.js +0 -104
  198. package/dist/src/components/unified/media-player.d.ts.map +0 -1
  199. package/dist/src/components/unified/media-player.js +0 -41
  200. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts.map +0 -1
  201. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  202. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts.map +0 -1
  203. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  204. package/dist/src/components/variants/minimal/MinimalControls.d.ts.map +0 -1
  205. package/dist/src/components/variants/minimal/MinimalControls.js +0 -19
  206. package/dist/src/components/variants/minimal/MinimalLoading.d.ts.map +0 -1
  207. package/dist/src/components/variants/minimal/MinimalLoading.js +0 -6
  208. package/dist/src/components/variants/minimal/MinimalMediaPlayer.d.ts.map +0 -1
  209. package/dist/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  210. package/dist/src/components/variants/minimal/MinimalOverlay.d.ts.map +0 -1
  211. package/dist/src/components/variants/minimal/MinimalOverlay.js +0 -15
  212. package/dist/src/components/variants/minimal/MinimalPlayButton.d.ts.map +0 -1
  213. package/dist/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  214. package/dist/src/components/variants/minimal/MinimalSeekBar.d.ts.map +0 -1
  215. package/dist/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  216. package/dist/src/components/variants/minimal/MinimalVolumeControl.d.ts.map +0 -1
  217. package/dist/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  218. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.d.ts.map +0 -1
  219. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  220. package/dist/src/components/variants/minimal/components/CenterPlayButton.d.ts.map +0 -1
  221. package/dist/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  222. package/dist/src/components/variants/minimal/components/ControlBar.d.ts.map +0 -1
  223. package/dist/src/components/variants/minimal/components/ControlBar.js +0 -10
  224. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts.map +0 -1
  225. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  226. package/dist/src/components/variants/minimal/components/PlaybackControls.d.ts.map +0 -1
  227. package/dist/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  228. package/dist/src/components/variants/minimal/components/RightControls.d.ts.map +0 -1
  229. package/dist/src/components/variants/minimal/components/RightControls.js +0 -40
  230. package/dist/src/components/variants/minimal/components/SeekBar.d.ts.map +0 -1
  231. package/dist/src/components/variants/minimal/components/SeekBar.js +0 -43
  232. package/dist/src/components/variants/minimal/components/SettingsDropdown.d.ts.map +0 -1
  233. package/dist/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  234. package/dist/src/components/variants/minimal/components/SubtitleDisplay.d.ts.map +0 -1
  235. package/dist/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  236. package/dist/src/components/variants/minimal/components/TimeDisplay.d.ts.map +0 -1
  237. package/dist/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  238. package/dist/src/components/variants/minimal/components/VideoElement.d.ts.map +0 -1
  239. package/dist/src/components/variants/minimal/components/VideoElement.js +0 -4
  240. package/dist/src/components/variants/minimal/components/VolumeControl.d.ts.map +0 -1
  241. package/dist/src/components/variants/minimal/components/VolumeControl.js +0 -99
  242. package/dist/src/components/variants/minimal/index.d.ts.map +0 -1
  243. package/dist/src/components/variants/minimal/index.js +0 -8
  244. package/dist/src/components/video-player.d.ts.map +0 -1
  245. package/dist/src/components/video-player.js +0 -38
  246. package/dist/src/context/error-handling.d.ts.map +0 -1
  247. package/dist/src/context/error-handling.js +0 -300
  248. package/dist/src/context/media-context.d.ts.map +0 -1
  249. package/dist/src/context/media-context.js +0 -121
  250. package/dist/src/context/media-provider.d.ts.map +0 -1
  251. package/dist/src/context/media-provider.js +0 -164
  252. package/dist/src/context/media-store.d.ts.map +0 -1
  253. package/dist/src/context/media-store.js +0 -273
  254. package/dist/src/context/persistence.d.ts.map +0 -1
  255. package/dist/src/context/persistence.js +0 -356
  256. package/dist/src/core/events/event-system.d.ts.map +0 -1
  257. package/dist/src/core/events/event-system.js +0 -288
  258. package/dist/src/core/events/hooks.d.ts.map +0 -1
  259. package/dist/src/core/events/hooks.js +0 -198
  260. package/dist/src/core/events/index.d.ts.map +0 -1
  261. package/dist/src/core/events/index.js +0 -7
  262. package/dist/src/core/events/middleware.d.ts.map +0 -1
  263. package/dist/src/core/events/middleware.js +0 -219
  264. package/dist/src/core/index.d.ts.map +0 -1
  265. package/dist/src/core/index.js +0 -15
  266. package/dist/src/core/optimization/bundle-optimizer.d.ts.map +0 -1
  267. package/dist/src/core/optimization/bundle-optimizer.js +0 -217
  268. package/dist/src/core/performance/cicd.d.ts.map +0 -1
  269. package/dist/src/core/performance/cicd.js +0 -83
  270. package/dist/src/core/performance/index.d.ts.map +0 -1
  271. package/dist/src/core/performance/index.js +0 -14
  272. package/dist/src/core/performance/media-loading-optimizer.d.ts.map +0 -1
  273. package/dist/src/core/performance/media-loading-optimizer.js +0 -404
  274. package/dist/src/core/performance/performance-budgets.d.ts.map +0 -1
  275. package/dist/src/core/performance/performance-budgets.js +0 -326
  276. package/dist/src/core/performance/performance-monitor.d.ts.map +0 -1
  277. package/dist/src/core/performance/performance-monitor.js +0 -297
  278. package/dist/src/core/performance/performance-testing.d.ts.map +0 -1
  279. package/dist/src/core/performance/performance-testing.js +0 -314
  280. package/dist/src/core/plugins/base-plugin.d.ts.map +0 -1
  281. package/dist/src/core/plugins/base-plugin.js +0 -151
  282. package/dist/src/core/plugins/enhanced-plugin-system.d.ts.map +0 -1
  283. package/dist/src/core/plugins/enhanced-plugin-system.js +0 -305
  284. package/dist/src/core/plugins/examples/analytics-plugin.d.ts.map +0 -1
  285. package/dist/src/core/plugins/examples/analytics-plugin.js +0 -191
  286. package/dist/src/core/plugins/index.d.ts.map +0 -1
  287. package/dist/src/core/plugins/index.js +0 -9
  288. package/dist/src/core/plugins/registry.d.ts.map +0 -1
  289. package/dist/src/core/plugins/registry.js +0 -261
  290. package/dist/src/core/plugins/types.d.ts.map +0 -1
  291. package/dist/src/core/plugins/types.js +0 -31
  292. package/dist/src/core/plugins/utils.d.ts.map +0 -1
  293. package/dist/src/core/plugins/utils.js +0 -274
  294. package/dist/src/core/progressive-loading.d.ts.map +0 -1
  295. package/dist/src/core/progressive-loading.js +0 -239
  296. package/dist/src/core/providers/enhanced-hls-provider.d.ts.map +0 -1
  297. package/dist/src/core/providers/enhanced-hls-provider.js +0 -273
  298. package/dist/src/core/providers/service-provider.d.ts.map +0 -1
  299. package/dist/src/core/providers/service-provider.js +0 -105
  300. package/dist/src/core/utils.d.ts.map +0 -1
  301. package/dist/src/core/utils.js +0 -21
  302. package/dist/src/features/media-session/media-session-manager.d.ts.map +0 -1
  303. package/dist/src/features/media-session/media-session-manager.js +0 -331
  304. package/dist/src/features/picture-in-picture/pip-manager.d.ts.map +0 -1
  305. package/dist/src/features/picture-in-picture/pip-manager.js +0 -353
  306. package/dist/src/features/playlist/playlist-manager.d.ts.map +0 -1
  307. package/dist/src/features/playlist/playlist-manager.js +0 -475
  308. package/dist/src/features/subtitles/subtitle-manager.d.ts.map +0 -1
  309. package/dist/src/features/subtitles/subtitle-manager.js +0 -335
  310. package/dist/src/features/subtitles/subtitle-parser.d.ts.map +0 -1
  311. package/dist/src/features/subtitles/subtitle-parser.js +0 -217
  312. package/dist/src/features/thumbnails/thumbnail-generator.d.ts.map +0 -1
  313. package/dist/src/features/thumbnails/thumbnail-generator.js +0 -388
  314. package/dist/src/hooks/accessibility/index.d.ts.map +0 -1
  315. package/dist/src/hooks/accessibility/index.js +0 -4
  316. package/dist/src/hooks/accessibility/use-accessibility-preferences.d.ts.map +0 -1
  317. package/dist/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  318. package/dist/src/hooks/accessibility/use-focus-management.d.ts.map +0 -1
  319. package/dist/src/hooks/accessibility/use-focus-management.js +0 -142
  320. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.d.ts.map +0 -1
  321. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  322. package/dist/src/hooks/accessibility/use-screen-reader.d.ts.map +0 -1
  323. package/dist/src/hooks/accessibility/use-screen-reader.js +0 -148
  324. package/dist/src/hooks/core/index.d.ts.map +0 -1
  325. package/dist/src/hooks/core/index.js +0 -19
  326. package/dist/src/hooks/legacy.d.ts.map +0 -1
  327. package/dist/src/hooks/legacy.js +0 -17
  328. package/dist/src/hooks/use-enhanced-media-player.d.ts.map +0 -1
  329. package/dist/src/hooks/use-enhanced-media-player.js +0 -395
  330. package/dist/src/hooks/use-intelligent-preloading.d.ts.map +0 -1
  331. package/dist/src/hooks/use-intelligent-preloading.js +0 -258
  332. package/dist/src/hooks/use-keyboard-controls.d.ts.map +0 -1
  333. package/dist/src/hooks/use-keyboard-controls.js +0 -83
  334. package/dist/src/hooks/use-media-actions.d.ts.map +0 -1
  335. package/dist/src/hooks/use-media-actions.js +0 -121
  336. package/dist/src/hooks/use-media-metadata.d.ts.map +0 -1
  337. package/dist/src/hooks/use-media-metadata.js +0 -74
  338. package/dist/src/hooks/use-media-optimistic.d.ts.map +0 -1
  339. package/dist/src/hooks/use-media-optimistic.js +0 -205
  340. package/dist/src/hooks/use-media-player.d.ts.map +0 -1
  341. package/dist/src/hooks/use-media-player.js +0 -251
  342. package/dist/src/hooks/use-media-state.d.ts.map +0 -1
  343. package/dist/src/hooks/use-media-state.js +0 -162
  344. package/dist/src/hooks/use-memory-optimization.d.ts.map +0 -1
  345. package/dist/src/hooks/use-memory-optimization.js +0 -288
  346. package/dist/src/hooks/use-optimistic-controls.d.ts.map +0 -1
  347. package/dist/src/hooks/use-optimistic-controls.js +0 -60
  348. package/dist/src/hooks/use-optimized-media.d.ts.map +0 -1
  349. package/dist/src/hooks/use-optimized-media.js +0 -211
  350. package/dist/src/hooks/use-touch-gestures.d.ts.map +0 -1
  351. package/dist/src/hooks/use-touch-gestures.js +0 -289
  352. package/dist/src/hooks/useEnhancedSubtitles.d.ts.map +0 -1
  353. package/dist/src/hooks/useEnhancedSubtitles.js +0 -205
  354. package/dist/src/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  355. package/dist/src/hooks/useKeyboardShortcuts.js +0 -59
  356. package/dist/src/hooks/useMediaControls.d.ts.map +0 -1
  357. package/dist/src/hooks/useMediaControls.js +0 -44
  358. package/dist/src/hooks/useScreenshot.d.ts.map +0 -1
  359. package/dist/src/hooks/useScreenshot.js +0 -56
  360. package/dist/src/hooks/useSubtitles.d.ts.map +0 -1
  361. package/dist/src/hooks/useSubtitles.js +0 -73
  362. package/dist/src/hooks/useVideoPlayer.d.ts.map +0 -1
  363. package/dist/src/hooks/useVideoPlayer.js +0 -184
  364. package/dist/src/icons/components/FullscreenIcon.d.ts.map +0 -1
  365. package/dist/src/icons/components/FullscreenIcon.js +0 -11
  366. package/dist/src/icons/components/SettingsIcon.d.ts.map +0 -1
  367. package/dist/src/icons/components/SettingsIcon.js +0 -11
  368. package/dist/src/icons/components/animated/LoadingIcon.d.ts.map +0 -1
  369. package/dist/src/icons/components/animated/LoadingIcon.js +0 -11
  370. package/dist/src/icons/components/animated/PlayPauseIcon.d.ts.map +0 -1
  371. package/dist/src/icons/components/animated/PlayPauseIcon.js +0 -9
  372. package/dist/src/icons/components/media/PauseIcon.d.ts.map +0 -1
  373. package/dist/src/icons/components/media/PauseIcon.js +0 -12
  374. package/dist/src/icons/components/media/PlayIcon.d.ts.map +0 -1
  375. package/dist/src/icons/components/media/PlayIcon.js +0 -12
  376. package/dist/src/icons/components/volume/VolumeIcon.d.ts.map +0 -1
  377. package/dist/src/icons/components/volume/VolumeIcon.js +0 -11
  378. package/dist/src/icons/components/volume/VolumeOffIcon.d.ts.map +0 -1
  379. package/dist/src/icons/components/volume/VolumeOffIcon.js +0 -11
  380. package/dist/src/icons/index.d.ts.map +0 -1
  381. package/dist/src/icons/index.js +0 -45
  382. package/dist/src/icons/provider.d.ts.map +0 -1
  383. package/dist/src/icons/provider.js +0 -37
  384. package/dist/src/icons/types.d.ts.map +0 -1
  385. package/dist/src/icons/types.js +0 -1
  386. package/dist/src/index-enhanced.d.ts.map +0 -1
  387. package/dist/src/index-enhanced.js +0 -16
  388. package/dist/src/index-legacy.d.ts.map +0 -1
  389. package/dist/src/index-legacy.js +0 -97
  390. package/dist/src/index.d.ts.map +0 -1
  391. package/dist/src/index.js +0 -90
  392. package/dist/src/index.minimal.d.ts.map +0 -1
  393. package/dist/src/index.minimal.js +0 -3
  394. package/dist/src/lib/deprecation.d.ts.map +0 -1
  395. package/dist/src/lib/deprecation.js +0 -31
  396. package/dist/src/lib/format-time.d.ts.map +0 -1
  397. package/dist/src/lib/format-time.js +0 -32
  398. package/dist/src/lib/index.d.ts.map +0 -1
  399. package/dist/src/lib/index.js +0 -3
  400. package/dist/src/lib/utils.d.ts.map +0 -1
  401. package/dist/src/lib/utils.js +0 -5
  402. package/dist/src/test/setup.d.ts.map +0 -1
  403. package/dist/src/test/setup.js +0 -65
  404. package/dist/src/types/events.d.ts.map +0 -1
  405. package/dist/src/types/events.js +0 -2
  406. package/dist/src/types/formats.d.ts.map +0 -1
  407. package/dist/src/types/formats.js +0 -63
  408. package/dist/src/types/index.d.ts.map +0 -1
  409. package/dist/src/types/index.js +0 -4
  410. package/dist/utils-Db13763z.cjs +0 -9
  411. package/dist/utils-Db13763z.cjs.map +0 -1
  412. package/dist/utils-nTO4AnHo.js +0 -2809
  413. package/dist/utils-nTO4AnHo.js.map +0 -1
  414. package/dist/utils.js +0 -2
  415. package/dist/utils.js.map +0 -1
  416. package/dist/utils.mjs +0 -7
  417. package/dist/utils.mjs.map +0 -1
  418. package/src/adapters/videojs-adapter.js +0 -350
  419. package/src/components/AnimateLoading.js +0 -41
  420. package/src/components/LoadingState.js +0 -111
  421. package/src/components/accessibility/keyboard-help-overlay.js +0 -90
  422. package/src/components/audio-player.js +0 -31
  423. package/src/components/basic/index.js +0 -29
  424. package/src/components/enhanced/advanced-features.js +0 -64
  425. package/src/components/enhanced/debug-panel.js +0 -94
  426. package/src/components/enhanced/enhanced-controls.js +0 -233
  427. package/src/components/enhanced/enhanced-media-player.js +0 -316
  428. package/src/components/enhanced/error-handling.js +0 -153
  429. package/src/components/enhanced/index.js +0 -10
  430. package/src/components/enhanced/media-player-enhanced.js +0 -250
  431. package/src/components/examples/basic-video-player.js +0 -16
  432. package/src/components/examples/custom-controls-example.js +0 -12
  433. package/src/components/examples/enhanced-controls-example.js +0 -18
  434. package/src/components/examples/enhanced-media-player-example.js +0 -13
  435. package/src/components/examples/loading-states-demo.js +0 -41
  436. package/src/components/examples/react-19-demo.js +0 -104
  437. package/src/components/examples/volume-orientation-demo.js +0 -31
  438. package/src/components/icon-demo.js +0 -16
  439. package/src/components/icons/index.js +0 -59
  440. package/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  441. package/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  442. package/src/components/icons/svg-icons/AudioIcon.js +0 -4
  443. package/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  444. package/src/components/icons/svg-icons/CameraIcon.js +0 -4
  445. package/src/components/icons/svg-icons/CheckIcon.js +0 -4
  446. package/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  447. package/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  448. package/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  449. package/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  450. package/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  451. package/src/components/icons/svg-icons/PauseIcon.js +0 -3
  452. package/src/components/icons/svg-icons/PlayIcon.js +0 -3
  453. package/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  454. package/src/components/icons/svg-icons/QualityIcon.js +0 -3
  455. package/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  456. package/src/components/icons/svg-icons/SliderIcon.js +0 -3
  457. package/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  458. package/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  459. package/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  460. package/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  461. package/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  462. package/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  463. package/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  464. package/src/components/legacy.js +0 -52
  465. package/src/components/media-metadata-display.js +0 -20
  466. package/src/components/media-player-audio.js +0 -18
  467. package/src/components/media-player-controls.js +0 -150
  468. package/src/components/media-player-error.js +0 -85
  469. package/src/components/media-player-fullscreen.js +0 -68
  470. package/src/components/media-player-hls.js +0 -20
  471. package/src/components/media-player-loading.js +0 -53
  472. package/src/components/media-player-play.js +0 -44
  473. package/src/components/media-player-root.js +0 -243
  474. package/src/components/media-player-seek.js +0 -92
  475. package/src/components/media-player-time.js +0 -57
  476. package/src/components/media-player-tooltip.js +0 -14
  477. package/src/components/media-player-video.js +0 -18
  478. package/src/components/media-player-volume.js +0 -88
  479. package/src/components/media-player.js +0 -67
  480. package/src/components/media-suspense.js +0 -173
  481. package/src/components/player-settings-form.js +0 -46
  482. package/src/components/react-player-wrapper.js +0 -163
  483. package/src/components/simple-video-player.js +0 -41
  484. package/src/components/ui/enhanced-seek-bar.js +0 -112
  485. package/src/components/ui/fullscreen-button.js +0 -21
  486. package/src/components/ui/media-resource-preloader.js +0 -295
  487. package/src/components/ui/play-button.js +0 -26
  488. package/src/components/ui/seek-bar.js +0 -54
  489. package/src/components/ui/time-display.js +0 -18
  490. package/src/components/ui/volume-control.js +0 -71
  491. package/src/components/unified/base-media-player.js +0 -104
  492. package/src/components/unified/media-player.js +0 -41
  493. package/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  494. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  495. package/src/components/variants/minimal/MinimalControls.js +0 -19
  496. package/src/components/variants/minimal/MinimalLoading.js +0 -6
  497. package/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  498. package/src/components/variants/minimal/MinimalOverlay.js +0 -15
  499. package/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  500. package/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  501. package/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  502. package/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  503. package/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  504. package/src/components/variants/minimal/components/ControlBar.js +0 -10
  505. package/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  506. package/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  507. package/src/components/variants/minimal/components/RightControls.js +0 -40
  508. package/src/components/variants/minimal/components/SeekBar.js +0 -43
  509. package/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  510. package/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  511. package/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  512. package/src/components/variants/minimal/components/VideoElement.js +0 -4
  513. package/src/components/variants/minimal/components/VolumeControl.js +0 -99
  514. package/src/components/variants/minimal/index.js +0 -8
  515. package/src/components/video-player.js +0 -38
  516. package/src/context/error-handling.js +0 -300
  517. package/src/context/media-context.js +0 -121
  518. package/src/context/media-provider.js +0 -164
  519. package/src/context/media-store.js +0 -273
  520. package/src/context/persistence.js +0 -356
  521. package/src/core/events/event-system.js +0 -288
  522. package/src/core/events/hooks.js +0 -198
  523. package/src/core/events/index.js +0 -7
  524. package/src/core/events/middleware.js +0 -219
  525. package/src/core/index.js +0 -15
  526. package/src/core/optimization/bundle-optimizer.js +0 -217
  527. package/src/core/performance/cicd.js +0 -83
  528. package/src/core/performance/index.js +0 -14
  529. package/src/core/performance/media-loading-optimizer.js +0 -404
  530. package/src/core/performance/performance-budgets.js +0 -326
  531. package/src/core/performance/performance-monitor.js +0 -297
  532. package/src/core/performance/performance-testing.js +0 -314
  533. package/src/core/plugins/base-plugin.js +0 -151
  534. package/src/core/plugins/enhanced-plugin-system.js +0 -305
  535. package/src/core/plugins/examples/analytics-plugin.js +0 -191
  536. package/src/core/plugins/index.js +0 -9
  537. package/src/core/plugins/registry.js +0 -261
  538. package/src/core/plugins/types.js +0 -31
  539. package/src/core/plugins/utils.js +0 -274
  540. package/src/core/progressive-loading.js +0 -239
  541. package/src/core/providers/enhanced-hls-provider.js +0 -273
  542. package/src/core/providers/service-provider.js +0 -105
  543. package/src/core/utils.js +0 -21
  544. package/src/features/media-session/media-session-manager.js +0 -331
  545. package/src/features/picture-in-picture/pip-manager.js +0 -353
  546. package/src/features/playlist/playlist-manager.js +0 -475
  547. package/src/features/subtitles/subtitle-manager.js +0 -335
  548. package/src/features/subtitles/subtitle-parser.js +0 -217
  549. package/src/features/thumbnails/thumbnail-generator.js +0 -388
  550. package/src/hooks/accessibility/index.js +0 -4
  551. package/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  552. package/src/hooks/accessibility/use-focus-management.js +0 -142
  553. package/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  554. package/src/hooks/accessibility/use-screen-reader.js +0 -148
  555. package/src/hooks/core/index.js +0 -19
  556. package/src/hooks/legacy.js +0 -17
  557. package/src/hooks/use-enhanced-media-player.js +0 -395
  558. package/src/hooks/use-intelligent-preloading.js +0 -258
  559. package/src/hooks/use-keyboard-controls.js +0 -83
  560. package/src/hooks/use-media-actions.js +0 -121
  561. package/src/hooks/use-media-metadata.js +0 -74
  562. package/src/hooks/use-media-optimistic.js +0 -205
  563. package/src/hooks/use-media-player.js +0 -251
  564. package/src/hooks/use-media-state.js +0 -162
  565. package/src/hooks/use-memory-optimization.js +0 -288
  566. package/src/hooks/use-optimistic-controls.js +0 -60
  567. package/src/hooks/use-optimized-media.js +0 -211
  568. package/src/hooks/use-touch-gestures.js +0 -289
  569. package/src/hooks/useEnhancedSubtitles.js +0 -205
  570. package/src/hooks/useKeyboardShortcuts.js +0 -59
  571. package/src/hooks/useMediaControls.js +0 -44
  572. package/src/hooks/useScreenshot.js +0 -56
  573. package/src/hooks/useSubtitles.js +0 -73
  574. package/src/hooks/useVideoPlayer.js +0 -184
  575. package/src/icons/components/FullscreenIcon.js +0 -11
  576. package/src/icons/components/SettingsIcon.js +0 -11
  577. package/src/icons/components/animated/LoadingIcon.js +0 -11
  578. package/src/icons/components/animated/PlayPauseIcon.js +0 -9
  579. package/src/icons/components/media/PauseIcon.js +0 -12
  580. package/src/icons/components/media/PlayIcon.js +0 -12
  581. package/src/icons/components/volume/VolumeIcon.js +0 -11
  582. package/src/icons/components/volume/VolumeOffIcon.js +0 -11
  583. package/src/icons/index.js +0 -45
  584. package/src/icons/provider.js +0 -37
  585. package/src/icons/types.js +0 -1
  586. package/src/index-enhanced.js +0 -16
  587. package/src/index-legacy.js +0 -97
  588. package/src/index.js +0 -90
  589. package/src/index.minimal.js +0 -3
  590. package/src/lib/deprecation.js +0 -31
  591. package/src/lib/format-time.js +0 -32
  592. package/src/lib/index.js +0 -3
  593. package/src/lib/utils.js +0 -5
  594. package/src/test/setup.js +0 -65
  595. package/src/types/events.js +0 -2
  596. package/src/types/formats.js +0 -63
  597. package/src/types/index.js +0 -4
@@ -1,68 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { Button } from "../components/ui/button";
4
- import { Maximize2Icon, Minimize2Icon } from "../components/ui/icons";
5
- import React from "react";
6
- import { MediaActionTypes, useMediaContext, useMediaDispatch, useMediaSelector } from "../context/media-context";
7
- import { MediaPlayerTooltip } from "./media-player-tooltip";
8
- export function MediaPlayerFullscreen({ className, disabled = false, asChild = false, children, ...props }) {
9
- const context = useMediaContext();
10
- const dispatch = useMediaDispatch();
11
- const isFullscreen = useMediaSelector((state) => state.isFullscreen);
12
- const isDisabled = disabled || useMediaSelector((state) => state.error !== null);
13
- const handleClick = React.useCallback((event) => {
14
- event.preventDefault();
15
- if (isDisabled)
16
- return;
17
- dispatch({
18
- type: isFullscreen ? MediaActionTypes.EXIT_FULLSCREEN : MediaActionTypes.ENTER_FULLSCREEN
19
- });
20
- }, [dispatch, isFullscreen, isDisabled]);
21
- // Set up fullscreen API event listeners
22
- React.useEffect(() => {
23
- const handleFullscreenChange = () => {
24
- const isCurrentlyFullscreen = !!document.fullscreenElement;
25
- dispatch({
26
- type: isCurrentlyFullscreen
27
- ? MediaActionTypes.ENTER_FULLSCREEN
28
- : MediaActionTypes.EXIT_FULLSCREEN
29
- });
30
- };
31
- document.addEventListener("fullscreenchange", handleFullscreenChange);
32
- return () => {
33
- document.removeEventListener("fullscreenchange", handleFullscreenChange);
34
- };
35
- }, [dispatch]);
36
- // Handle actual fullscreen API calls
37
- React.useEffect(() => {
38
- const rootElement = context.rootRef.current;
39
- if (!rootElement)
40
- return;
41
- if (isFullscreen && !document.fullscreenElement) {
42
- rootElement.requestFullscreen?.().catch(console.error);
43
- }
44
- else if (!isFullscreen && document.fullscreenElement) {
45
- document.exitFullscreen?.().catch(console.error);
46
- }
47
- }, [isFullscreen, context.rootRef]);
48
- const buttonProps = {
49
- type: "button",
50
- "aria-label": isFullscreen ? "Exit fullscreen" : "Enter fullscreen",
51
- "data-disabled": isDisabled ? "" : undefined,
52
- "data-slot": "media-player-fullscreen",
53
- "data-state": isFullscreen ? "fullscreen" : "inline",
54
- disabled: isDisabled,
55
- variant: "ghost",
56
- size: "icon",
57
- className: "size-8",
58
- onClick: handleClick,
59
- ...props
60
- };
61
- const content = isFullscreen ? (_jsx(Minimize2Icon, { className: "size-4" })) : (_jsx(Maximize2Icon, { className: "size-4" }));
62
- if (asChild) {
63
- const child = React.Children.only(children);
64
- return React.cloneElement(child, buttonProps, content);
65
- }
66
- return (_jsx(MediaPlayerTooltip, { tooltip: isFullscreen ? "Exit fullscreen" : "Enter fullscreen", shortcut: "F", children: _jsx(Button, { ...buttonProps, children: content }) }));
67
- }
68
- MediaPlayerFullscreen.displayName = "MediaPlayerFullscreen";
@@ -1,20 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { MediaPlayerRoot } from "./media-player-root";
4
- import { VideoJSAdapter } from "../adapters/videojs-adapter";
5
- import { MediaPlayerLoading } from "./media-player-loading";
6
- import { MediaPlayerError } from "./media-player-error";
7
- import { useMediaSelector } from "../context/media-context";
8
- import { cn } from "../lib/utils";
9
- import "../styles/videojs.css"; // Import Video.js styles
10
- function MediaPlayerHLSContent({ sources, poster, textTracks = [], showControls = true, customControls, hlsConfig, enableQualitySelector = true, enableSubtitles = true, containerClassName, videoClassName, onPlayerReady, onPlayerError }) {
11
- const isLoading = useMediaSelector(state => state.isLoading);
12
- const isBuffering = useMediaSelector(state => state.isBuffering);
13
- const error = useMediaSelector(state => state.error);
14
- return (_jsxs("div", { className: cn("relative h-full w-full", containerClassName), children: [_jsx(VideoJSAdapter, { sources: sources, poster: poster, textTracks: textTracks, controls: true, autoplay: false, muted: true, preload: "auto", className: videoClassName, hlsConfig: hlsConfig, enableQualitySelector: enableQualitySelector, enableSubtitles: enableSubtitles, onReady: onPlayerReady, onError: onPlayerError }), (isLoading || isBuffering) && _jsx(MediaPlayerLoading, {}), error && _jsx(MediaPlayerError, { children: error })] }));
15
- }
16
- export function MediaPlayerHLS(props) {
17
- const { sources, poster, textTracks, showControls, customControls, hlsConfig, enableQualitySelector, enableSubtitles, containerClassName, videoClassName, onPlayerReady, onPlayerError, ...rootProps } = props;
18
- return (_jsx(MediaPlayerRoot, { ...rootProps, children: _jsx(MediaPlayerHLSContent, { sources: sources, poster: poster, textTracks: textTracks, showControls: showControls, customControls: customControls, hlsConfig: hlsConfig, enableQualitySelector: enableQualitySelector, enableSubtitles: enableSubtitles, containerClassName: containerClassName, videoClassName: videoClassName, onPlayerReady: onPlayerReady, onPlayerError: onPlayerError }) }));
19
- }
20
- MediaPlayerHLS.displayName = "MediaPlayerHLS";
@@ -1,53 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { Loader2Icon } from "lucide-react";
4
- import React from "react";
5
- import { useMediaSelector } from "../context/media-context";
6
- import { cn } from "../lib/utils";
7
- export function MediaPlayerLoading({ className, delayMs = 300, asChild = false, children, ...props }) {
8
- const isLoading = useMediaSelector((state) => state.isLoading);
9
- const [shouldRender, setShouldRender] = React.useState(false);
10
- const timeoutRef = React.useRef(undefined);
11
- React.useEffect(() => {
12
- if (timeoutRef.current) {
13
- clearTimeout(timeoutRef.current);
14
- timeoutRef.current = undefined;
15
- }
16
- if (isLoading) {
17
- if (delayMs > 0) {
18
- timeoutRef.current = setTimeout(() => {
19
- setShouldRender(true);
20
- timeoutRef.current = undefined;
21
- }, delayMs);
22
- }
23
- else {
24
- setShouldRender(true);
25
- }
26
- }
27
- else {
28
- setShouldRender(false);
29
- }
30
- return () => {
31
- if (timeoutRef.current) {
32
- clearTimeout(timeoutRef.current);
33
- timeoutRef.current = undefined;
34
- }
35
- };
36
- }, [isLoading, delayMs]);
37
- if (!shouldRender)
38
- return null;
39
- const loadingProps = {
40
- role: "status",
41
- "aria-live": "polite",
42
- "data-slot": "media-player-loading",
43
- className: cn("fade-in-0 zoom-in-95 pointer-events-none absolute inset-0 z-50 flex animate-in items-center justify-center duration-200", className),
44
- ...props
45
- };
46
- const content = _jsx(Loader2Icon, { className: "size-8 animate-spin text-white" });
47
- if (asChild) {
48
- const child = React.Children.only(children);
49
- return React.cloneElement(child, loadingProps, content);
50
- }
51
- return _jsx("div", { ...loadingProps, children: content });
52
- }
53
- MediaPlayerLoading.displayName = "MediaPlayerLoading";
@@ -1,44 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { Button } from "../components/ui/button";
4
- import { PauseIcon, PlayIcon } from "../components/ui/icons";
5
- import React from "react";
6
- import { MediaActionTypes, useMediaContext, useMediaDispatch, useMediaSelector } from "../context/media-context";
7
- import { MediaPlayerTooltip } from "./media-player-tooltip";
8
- export function MediaPlayerPlay({ className, asChild = false, children, ...props }) {
9
- const context = useMediaContext();
10
- const dispatch = useMediaDispatch();
11
- const isPlaying = useMediaSelector((state) => state.isPlaying);
12
- const disabled = useMediaSelector((state) => state.error !== null);
13
- const handleClick = React.useCallback((event) => {
14
- event.preventDefault();
15
- const mediaElement = context.mediaRef.current;
16
- if (!mediaElement || disabled)
17
- return;
18
- dispatch({
19
- type: isPlaying ? MediaActionTypes.PAUSE : MediaActionTypes.PLAY
20
- });
21
- }, [dispatch, context.mediaRef, isPlaying, disabled]);
22
- const buttonProps = {
23
- type: "button",
24
- "aria-controls": context.mediaId,
25
- "aria-label": isPlaying ? "Pause" : "Play",
26
- "aria-pressed": isPlaying,
27
- "data-disabled": disabled ? "" : undefined,
28
- "data-slot": "media-player-play",
29
- "data-state": isPlaying ? "playing" : "paused",
30
- disabled,
31
- variant: "ghost",
32
- size: "icon",
33
- className: "size-8 [&_svg:not([class*='fill-'])]:fill-current",
34
- onClick: handleClick,
35
- ...props
36
- };
37
- const content = isPlaying ? _jsx(PauseIcon, { className: "size-4" }) : _jsx(PlayIcon, { className: "size-4" });
38
- if (asChild) {
39
- const child = React.Children.only(children);
40
- return React.cloneElement(child, buttonProps, content);
41
- }
42
- return (_jsx(MediaPlayerTooltip, { tooltip: isPlaying ? "Pause" : "Play", shortcut: "Space", children: _jsx(Button, { ...buttonProps, children: content }) }));
43
- }
44
- MediaPlayerPlay.displayName = "MediaPlayerPlay";
@@ -1,243 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import React from "react";
4
- import { MediaActionTypes, useMediaContext, useMediaDispatch, useMediaSelector } from "../context/media-context";
5
- import { MediaProvider } from "../context/media-provider";
6
- import { useMediaGestures } from "../hooks/use-touch-gestures";
7
- import { useMobileOptimizations, useDeviceInfo } from "../hooks/use-mobile";
8
- import { cn } from "../lib/utils";
9
- // Utility function to compose refs
10
- function composeRefs(...refs) {
11
- return (node) => {
12
- refs.forEach((ref) => {
13
- if (typeof ref === "function") {
14
- ref(node);
15
- }
16
- else if (ref && typeof ref === "object") {
17
- ;
18
- ref.current = node;
19
- }
20
- });
21
- };
22
- }
23
- // Internal MediaPlayer implementation
24
- function MediaPlayerImpl({ children, className, dir = "ltr", disabled = false, asChild = false, autoHide = true, enableGestures = true, enableMobileOptimizations = true, onPlay, onPause, onEnded, onTimeUpdate, onVolumeChange, onMuted, onMediaError, onPipError, onFullscreenChange, ...props }) {
25
- const context = useMediaContext();
26
- const dispatch = useMediaDispatch();
27
- const { isTouchDevice } = useDeviceInfo();
28
- // Get state values
29
- const isPlaying = useMediaSelector((state) => state.isPlaying);
30
- const currentTime = useMediaSelector((state) => state.currentTime);
31
- const volume = useMediaSelector((state) => state.volume);
32
- const isMuted = useMediaSelector((state) => state.isMuted);
33
- const error = useMediaSelector((state) => state.error);
34
- const isFullscreen = useMediaSelector((state) => state.isFullscreen);
35
- const isPictureInPicture = useMediaSelector((state) => state.isPictureInPicture);
36
- // Enable mobile optimizations
37
- useMobileOptimizations();
38
- // Gesture handling actions - React 19 compiler will optimize this
39
- const gestureActions = {
40
- onPlayPause: () => {
41
- if (disabled)
42
- return;
43
- dispatch({
44
- type: isPlaying ? MediaActionTypes.PAUSE : MediaActionTypes.PLAY
45
- });
46
- },
47
- onSeek: (direction, amount) => {
48
- if (disabled || !context.isVideo)
49
- return;
50
- const mediaElement = context.mediaRef.current;
51
- if (!mediaElement)
52
- return;
53
- const newTime = direction === 'forward'
54
- ? Math.min(mediaElement.duration || 0, currentTime + amount)
55
- : Math.max(0, currentTime - amount);
56
- dispatch({
57
- type: MediaActionTypes.SEEK,
58
- detail: newTime
59
- });
60
- },
61
- onVolumeChange: (direction, amount) => {
62
- if (disabled)
63
- return;
64
- const newVolume = direction === 'up'
65
- ? Math.min(1, volume + amount)
66
- : Math.max(0, volume - amount);
67
- dispatch({
68
- type: MediaActionTypes.SET_VOLUME,
69
- detail: newVolume
70
- });
71
- },
72
- onToggleFullscreen: () => {
73
- if (disabled || !context.isVideo)
74
- return;
75
- dispatch({
76
- type: isFullscreen ? MediaActionTypes.EXIT_FULLSCREEN : MediaActionTypes.ENTER_FULLSCREEN
77
- });
78
- },
79
- onZoom: (scale) => {
80
- // Handle video zoom - this could be implemented with CSS transforms
81
- // For now, we'll just log it as a placeholder
82
- console.log('Zoom gesture detected:', scale);
83
- }
84
- };
85
- // Set up touch gestures for mobile devices
86
- const { isGestureEnabled } = useMediaGestures(context.rootRef, enableGestures ? gestureActions : {});
87
- // Keyboard event handler - React 19 compiler will optimize this
88
- const handleKeyDown = (event) => {
89
- if (disabled)
90
- return;
91
- const target = event.target;
92
- const isInputElement = target.tagName === "INPUT" || target.tagName === "TEXTAREA" || target.isContentEditable;
93
- if (isInputElement)
94
- return;
95
- const mediaElement = context.mediaRef.current;
96
- if (!mediaElement)
97
- return;
98
- switch (event.code) {
99
- case "Space":
100
- case "KeyK":
101
- event.preventDefault();
102
- dispatch({
103
- type: isPlaying ? MediaActionTypes.PAUSE : MediaActionTypes.PLAY
104
- });
105
- break;
106
- case "KeyF":
107
- event.preventDefault();
108
- dispatch({
109
- type: isFullscreen
110
- ? MediaActionTypes.EXIT_FULLSCREEN
111
- : MediaActionTypes.ENTER_FULLSCREEN
112
- });
113
- break;
114
- case "KeyM":
115
- event.preventDefault();
116
- dispatch({
117
- type: MediaActionTypes.TOGGLE_MUTE
118
- });
119
- break;
120
- case "ArrowLeft":
121
- event.preventDefault();
122
- if (context.isVideo && mediaElement instanceof HTMLVideoElement) {
123
- dispatch({
124
- type: MediaActionTypes.SEEK,
125
- detail: Math.max(0, currentTime - 10)
126
- });
127
- }
128
- break;
129
- case "ArrowRight":
130
- event.preventDefault();
131
- if (context.isVideo && mediaElement instanceof HTMLVideoElement) {
132
- dispatch({
133
- type: MediaActionTypes.SEEK,
134
- detail: Math.min(mediaElement.duration || 0, currentTime + 10)
135
- });
136
- }
137
- break;
138
- case "ArrowUp":
139
- event.preventDefault();
140
- dispatch({
141
- type: MediaActionTypes.SET_VOLUME,
142
- detail: Math.min(1, volume + 0.1)
143
- });
144
- break;
145
- case "ArrowDown":
146
- event.preventDefault();
147
- dispatch({
148
- type: MediaActionTypes.SET_VOLUME,
149
- detail: Math.max(0, volume - 0.1)
150
- });
151
- break;
152
- }
153
- };
154
- // Set up media element event listeners
155
- React.useEffect(() => {
156
- const mediaElement = context.mediaRef.current;
157
- if (!mediaElement)
158
- return;
159
- const handlePlay = () => {
160
- dispatch({ type: MediaActionTypes.PLAY });
161
- onPlay?.();
162
- };
163
- const handlePause = () => {
164
- dispatch({ type: MediaActionTypes.PAUSE });
165
- onPause?.();
166
- };
167
- const handleEnded = () => {
168
- dispatch({ type: MediaActionTypes.PAUSE });
169
- onEnded?.();
170
- };
171
- const handleTimeUpdate = () => {
172
- const time = mediaElement.currentTime;
173
- dispatch({ type: MediaActionTypes.SET_CURRENT_TIME, detail: time });
174
- onTimeUpdate?.(time);
175
- };
176
- const handleVolumeChange = () => {
177
- const vol = mediaElement.volume;
178
- const muted = mediaElement.muted;
179
- dispatch({ type: MediaActionTypes.SET_VOLUME, detail: vol });
180
- dispatch({ type: muted ? MediaActionTypes.MUTE : MediaActionTypes.UNMUTE });
181
- onVolumeChange?.(vol);
182
- onMuted?.(muted);
183
- };
184
- const handleLoadedMetadata = () => {
185
- dispatch({ type: MediaActionTypes.SET_DURATION, detail: mediaElement.duration });
186
- dispatch({ type: MediaActionTypes.SET_LOADING, detail: false });
187
- };
188
- const handleError = () => {
189
- const errorMessage = "An error occurred while loading the media";
190
- dispatch({ type: MediaActionTypes.SET_ERROR, detail: errorMessage });
191
- onMediaError?.(errorMessage);
192
- };
193
- const handleLoadStart = () => {
194
- dispatch({ type: MediaActionTypes.SET_LOADING, detail: true });
195
- };
196
- // Add event listeners
197
- mediaElement.addEventListener("play", handlePlay);
198
- mediaElement.addEventListener("pause", handlePause);
199
- mediaElement.addEventListener("ended", handleEnded);
200
- mediaElement.addEventListener("timeupdate", handleTimeUpdate);
201
- mediaElement.addEventListener("volumechange", handleVolumeChange);
202
- mediaElement.addEventListener("loadedmetadata", handleLoadedMetadata);
203
- mediaElement.addEventListener("error", handleError);
204
- mediaElement.addEventListener("loadstart", handleLoadStart);
205
- return () => {
206
- mediaElement.removeEventListener("play", handlePlay);
207
- mediaElement.removeEventListener("pause", handlePause);
208
- mediaElement.removeEventListener("ended", handleEnded);
209
- mediaElement.removeEventListener("timeupdate", handleTimeUpdate);
210
- mediaElement.removeEventListener("volumechange", handleVolumeChange);
211
- mediaElement.removeEventListener("loadedmetadata", handleLoadedMetadata);
212
- mediaElement.removeEventListener("error", handleError);
213
- mediaElement.removeEventListener("loadstart", handleLoadStart);
214
- };
215
- }, [dispatch, onPlay, onPause, onEnded, onTimeUpdate, onVolumeChange, onMuted, onMediaError]);
216
- const rootProps = {
217
- "aria-labelledby": context.labelId,
218
- "aria-describedby": context.descriptionId,
219
- "aria-disabled": disabled,
220
- "data-disabled": disabled ? "" : undefined,
221
- "data-slot": "media-player",
222
- "data-state": isFullscreen ? "fullscreen" : "inline",
223
- dir,
224
- tabIndex: disabled ? -1 : 0,
225
- className: cn("dark relative isolate flex flex-col overflow-hidden rounded-lg bg-background outline-none", "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50", "data-[disabled]:pointer-events-none data-[disabled]:opacity-50", "[&_video]:relative [&_video]:object-contain", "data-[state=fullscreen]:[&_video]:size-full", "[:fullscreen_&]:flex [:fullscreen_&]:h-full [:fullscreen_&]:max-h-screen [:fullscreen_&]:flex-col [:fullscreen_&]:justify-between",
226
- // Mobile-first optimizations
227
- isTouchDevice && [
228
- "touch-manipulation", // Improves touch responsiveness
229
- "select-none", // Prevents text selection during gestures
230
- "overscroll-contain", // Prevents scroll chaining
231
- ],
232
- // Enable hardware acceleration for smooth animations
233
- "will-change-transform", "transform-gpu", className),
234
- onKeyDown: handleKeyDown,
235
- ...props
236
- };
237
- return (_jsx("div", { ref: composeRefs(context.rootRef), ...rootProps, children: children }));
238
- }
239
- // Main MediaPlayer component with provider
240
- export function MediaPlayerRoot(props) {
241
- return (_jsx(MediaProvider, { children: _jsx(MediaPlayerImpl, { ...props }) }));
242
- }
243
- MediaPlayerRoot.displayName = "MediaPlayerRoot";
@@ -1,92 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
- import { Slider } from "../components/ui/slider";
4
- import React from "react";
5
- import { MediaActionTypes, useMediaContext, useMediaDispatch, useMediaSelector } from "../context/media-context";
6
- import { formatTime } from "../lib/format-time";
7
- import { cn } from "../lib/utils";
8
- export function MediaPlayerSeek({ className, disabled = false, withTime = true, withoutTooltip = false, tooltipTimeVariant = "current", asChild = false, children, ...props }) {
9
- const context = useMediaContext();
10
- const dispatch = useMediaDispatch();
11
- const currentTime = useMediaSelector((state) => state.currentTime);
12
- const duration = useMediaSelector((state) => state.duration);
13
- const buffered = useMediaSelector((state) => state.buffered);
14
- const isDisabled = disabled || useMediaSelector((state) => state.error !== null);
15
- const [isDragging, setIsDragging] = React.useState(false);
16
- const [previewTime, setPreviewTime] = React.useState(null);
17
- const seekableStart = 0;
18
- const seekableEnd = duration || 0;
19
- const progress = seekableEnd > 0 ? (currentTime / seekableEnd) * 100 : 0;
20
- // Calculate buffered ranges
21
- const bufferedRanges = React.useMemo(() => {
22
- if (!buffered || !seekableEnd)
23
- return [];
24
- const ranges = [];
25
- for (let i = 0; i < buffered.length; i++) {
26
- const start = (buffered.start(i) / seekableEnd) * 100;
27
- const end = (buffered.end(i) / seekableEnd) * 100;
28
- ranges.push({ start, end });
29
- }
30
- return ranges;
31
- }, [buffered, seekableEnd]);
32
- const handleValueChange = React.useCallback((values) => {
33
- const time = values[0] || 0;
34
- setPreviewTime(time);
35
- if (isDragging) {
36
- dispatch({
37
- type: MediaActionTypes.SEEK,
38
- detail: time
39
- });
40
- }
41
- }, [dispatch, isDragging]);
42
- const handleValueCommit = React.useCallback((values) => {
43
- const time = values[0];
44
- setIsDragging(false);
45
- setPreviewTime(null);
46
- dispatch({
47
- type: MediaActionTypes.SEEK,
48
- detail: time
49
- });
50
- }, [dispatch]);
51
- const handlePointerDown = React.useCallback(() => {
52
- setIsDragging(true);
53
- }, []);
54
- const getTooltipTime = React.useCallback((time) => {
55
- switch (tooltipTimeVariant) {
56
- case "remaining":
57
- return formatTime(Math.max(0, seekableEnd - time));
58
- case "duration":
59
- return formatTime(seekableEnd);
60
- default:
61
- return formatTime(time);
62
- }
63
- }, [tooltipTimeVariant, seekableEnd]);
64
- const sliderProps = {
65
- "aria-controls": context.mediaId,
66
- "aria-valuetext": `${formatTime(currentTime)} of ${formatTime(duration)}`,
67
- "data-slot": "media-player-seek",
68
- disabled: isDisabled,
69
- min: seekableStart,
70
- max: seekableEnd,
71
- step: 0.1,
72
- value: [previewTime ?? currentTime],
73
- onValueChange: handleValueChange,
74
- onValueCommit: handleValueCommit,
75
- onPointerDown: handlePointerDown,
76
- className: cn("relative flex w-full touch-none select-none items-center", "data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
77
- ...props
78
- };
79
- const sliderContent = (_jsxs(_Fragment, { children: [_jsxs("div", { className: "relative h-2 w-full grow overflow-hidden rounded-full bg-secondary", children: [bufferedRanges.map((range, index) => (_jsx("div", { className: "absolute h-full bg-secondary/60", style: {
80
- left: `${range.start}%`,
81
- width: `${range.end - range.start}%`
82
- } }, index))), _jsx("div", { className: "h-full bg-primary transition-all", style: { width: `${progress}%` } })] }), _jsx("div", { className: "block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", style: {
83
- transform: `translateX(-50%)`,
84
- left: `${progress}%`
85
- } })] }));
86
- if (asChild) {
87
- const child = React.Children.only(children);
88
- return React.cloneElement(child, sliderProps, sliderContent);
89
- }
90
- return _jsx(Slider, { ...sliderProps, children: sliderContent });
91
- }
92
- MediaPlayerSeek.displayName = "MediaPlayerSeek";
@@ -1,57 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
- import React from "react";
4
- import { useMediaContext, useMediaSelector } from "../context/media-context";
5
- import { formatTime } from "../lib/format-time";
6
- import { cn } from "../lib/utils";
7
- export function MediaPlayerTime({ variant = "current-duration", className, asChild = false, children, ...props }) {
8
- const context = useMediaContext();
9
- const currentTime = useMediaSelector((state) => state.currentTime);
10
- const duration = useMediaSelector((state) => state.duration);
11
- const times = React.useMemo(() => {
12
- if (variant === "remaining") {
13
- return {
14
- remaining: formatTime(Math.max(0, duration - currentTime))
15
- };
16
- }
17
- if (variant === "duration") {
18
- return {
19
- duration: formatTime(duration)
20
- };
21
- }
22
- if (variant === "current") {
23
- return {
24
- current: formatTime(currentTime)
25
- };
26
- }
27
- return {
28
- current: formatTime(currentTime),
29
- duration: formatTime(duration)
30
- };
31
- }, [variant, currentTime, duration]);
32
- const timeProps = {
33
- "data-slot": "media-player-time",
34
- "data-variant": variant,
35
- dir: context.dir,
36
- className: cn("text-sm text-foreground/80 tabular-nums", className),
37
- ...props
38
- };
39
- if (variant !== "current-duration") {
40
- const content = times[variant];
41
- if (asChild) {
42
- const child = React.Children.only(children);
43
- return React.cloneElement(child, timeProps, content);
44
- }
45
- return _jsx("time", { ...timeProps, children: content });
46
- }
47
- const content = (_jsxs(_Fragment, { children: [_jsx("time", { children: times.current }), _jsx("span", { className: "text-foreground/60", children: "/" }), _jsx("time", { children: times.duration })] }));
48
- if (asChild) {
49
- const child = React.Children.only(children);
50
- return React.cloneElement(child, {
51
- ...timeProps,
52
- className: cn("flex items-center gap-1 text-foreground/80 text-sm", className)
53
- }, content);
54
- }
55
- return (_jsx("div", { ...timeProps, className: cn("flex items-center gap-1 text-foreground/80 text-sm", className), children: content }));
56
- }
57
- MediaPlayerTime.displayName = "MediaPlayerTime";
@@ -1,14 +0,0 @@
1
- "use client";
2
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { Tooltip, TooltipContent, TooltipTrigger } from "../components/ui/tooltip";
4
- import { useMediaContext } from "../context/media-context";
5
- export function MediaPlayerTooltip({ children, tooltip, shortcut, delayDuration, sideOffset }) {
6
- const context = useMediaContext();
7
- if (context.withoutTooltip || !tooltip) {
8
- return _jsx(_Fragment, { children: children });
9
- }
10
- const tooltipDelayDuration = delayDuration ?? context.tooltipDelayDuration;
11
- const tooltipSideOffset = sideOffset ?? context.tooltipSideOffset;
12
- return (_jsxs(Tooltip, { delayDuration: tooltipDelayDuration, children: [_jsx(TooltipTrigger, { asChild: true, children: children }), _jsxs(TooltipContent, { sideOffset: tooltipSideOffset, className: "flex items-center gap-2 text-sm", children: [_jsx("span", { children: tooltip }), shortcut && (_jsx("div", { className: "flex items-center gap-1", children: Array.isArray(shortcut) ? (shortcut.map((key, index) => (_jsx("kbd", { className: "pointer-events-none inline-flex h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-medium font-mono text-[10px] text-muted-foreground opacity-100", children: key }, index)))) : (_jsx("kbd", { className: "pointer-events-none inline-flex h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-medium font-mono text-[10px] text-muted-foreground opacity-100", children: shortcut })) }))] })] }));
13
- }
14
- MediaPlayerTooltip.displayName = "MediaPlayerTooltip";
@@ -1,18 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import React from "react";
4
- import { useMediaContext } from "../context/media-context";
5
- export function MediaPlayerVideo({ asChild = false, className, children, ...props }) {
6
- const context = useMediaContext();
7
- if (asChild) {
8
- // When asChild is true, clone the child element and add our props
9
- const child = React.Children.only(children);
10
- return React.cloneElement(child, {
11
- ...props,
12
- ref: context.mediaRef,
13
- "data-slot": "media-player-video"
14
- });
15
- }
16
- return (_jsx("video", { ref: context.mediaRef, "data-slot": "media-player-video", className: className, ...props, children: children }));
17
- }
18
- MediaPlayerVideo.displayName = "MediaPlayerVideo";