@therealtinhtute/baroiplayer 1.0.0 → 1.0.1

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 (1326) hide show
  1. package/dist/index.css +102 -1
  2. package/dist/index.d.ts +1388 -0
  3. package/dist/index.js +27 -112
  4. package/dist/index.mjs +17 -6126
  5. package/dist/package.json +28 -0
  6. package/dist/src/adapters/videojs-adapter.d.ts +38 -0
  7. package/dist/src/adapters/videojs-adapter.d.ts.map +1 -0
  8. package/dist/src/adapters/videojs-adapter.js +350 -0
  9. package/dist/src/adapters/videojs-adapter.tsx +470 -0
  10. package/dist/src/components/AnimateLoading.d.ts +9 -0
  11. package/dist/src/components/AnimateLoading.d.ts.map +1 -0
  12. package/dist/src/components/AnimateLoading.js +41 -0
  13. package/dist/src/components/AnimateLoading.tsx +115 -0
  14. package/dist/src/components/LoadingState.d.ts +33 -0
  15. package/dist/src/components/LoadingState.d.ts.map +1 -0
  16. package/dist/src/components/LoadingState.js +111 -0
  17. package/dist/src/components/LoadingState.tsx +248 -0
  18. package/dist/src/components/accessibility/keyboard-help-overlay.d.ts +17 -0
  19. package/dist/src/components/accessibility/keyboard-help-overlay.d.ts.map +1 -0
  20. package/dist/src/components/accessibility/keyboard-help-overlay.js +90 -0
  21. package/dist/src/components/accessibility/keyboard-help-overlay.tsx +213 -0
  22. package/dist/src/components/audio-player.d.ts +3 -0
  23. package/dist/src/components/audio-player.d.ts.map +1 -0
  24. package/dist/src/components/audio-player.js +31 -0
  25. package/dist/src/components/audio-player.tsx +85 -0
  26. package/dist/src/components/basic/index.d.ts +26 -0
  27. package/dist/src/components/basic/index.d.ts.map +1 -0
  28. package/dist/src/components/basic/index.js +29 -0
  29. package/dist/src/components/basic/index.ts +37 -0
  30. package/dist/src/components/enhanced/advanced-features.d.ts +45 -0
  31. package/dist/src/components/enhanced/advanced-features.d.ts.map +1 -0
  32. package/dist/src/components/enhanced/advanced-features.js +64 -0
  33. package/dist/src/components/enhanced/advanced-features.tsx +316 -0
  34. package/dist/src/components/enhanced/debug-panel.d.ts +70 -0
  35. package/dist/src/components/enhanced/debug-panel.d.ts.map +1 -0
  36. package/dist/src/components/enhanced/debug-panel.js +94 -0
  37. package/dist/src/components/enhanced/debug-panel.tsx +422 -0
  38. package/dist/src/components/enhanced/enhanced-controls.d.ts +50 -0
  39. package/dist/src/components/enhanced/enhanced-controls.d.ts.map +1 -0
  40. package/dist/src/components/enhanced/enhanced-controls.js +233 -0
  41. package/dist/src/components/enhanced/enhanced-controls.tsx +600 -0
  42. package/dist/src/components/enhanced/enhanced-media-player.d.ts +26 -0
  43. package/dist/src/components/enhanced/enhanced-media-player.d.ts.map +1 -0
  44. package/dist/src/components/enhanced/enhanced-media-player.js +316 -0
  45. package/dist/src/components/enhanced/enhanced-media-player.tsx +509 -0
  46. package/dist/src/components/enhanced/error-handling.d.ts +36 -0
  47. package/dist/src/components/enhanced/error-handling.d.ts.map +1 -0
  48. package/dist/src/components/enhanced/error-handling.js +153 -0
  49. package/dist/src/components/enhanced/error-handling.tsx +345 -0
  50. package/dist/src/components/enhanced/index.d.ts +7 -0
  51. package/dist/src/components/enhanced/index.d.ts.map +1 -0
  52. package/dist/src/components/enhanced/index.js +10 -0
  53. package/dist/src/components/enhanced/index.ts +39 -0
  54. package/dist/src/components/enhanced/media-player-enhanced.d.ts +21 -0
  55. package/dist/src/components/enhanced/media-player-enhanced.d.ts.map +1 -0
  56. package/dist/src/components/enhanced/media-player-enhanced.js +250 -0
  57. package/dist/src/components/enhanced/media-player-enhanced.tsx +349 -0
  58. package/dist/src/components/examples/basic-video-player.d.ts +10 -0
  59. package/dist/src/components/examples/basic-video-player.d.ts.map +1 -0
  60. package/dist/src/components/examples/basic-video-player.js +16 -0
  61. package/dist/src/components/examples/basic-video-player.tsx +55 -0
  62. package/dist/src/components/examples/custom-controls-example.d.ts +10 -0
  63. package/dist/src/components/examples/custom-controls-example.d.ts.map +1 -0
  64. package/dist/src/components/examples/custom-controls-example.js +12 -0
  65. package/dist/src/components/examples/custom-controls-example.tsx +63 -0
  66. package/dist/src/components/examples/enhanced-controls-example.d.ts +9 -0
  67. package/dist/src/components/examples/enhanced-controls-example.d.ts.map +1 -0
  68. package/dist/src/components/examples/enhanced-controls-example.js +18 -0
  69. package/dist/src/components/examples/enhanced-controls-example.tsx +114 -0
  70. package/dist/src/components/examples/enhanced-media-player-example.d.ts +9 -0
  71. package/dist/src/components/examples/enhanced-media-player-example.d.ts.map +1 -0
  72. package/dist/src/components/examples/enhanced-media-player-example.js +13 -0
  73. package/dist/src/components/examples/enhanced-media-player-example.tsx +293 -0
  74. package/dist/src/components/examples/loading-states-demo.d.ts +2 -0
  75. package/dist/src/components/examples/loading-states-demo.d.ts.map +1 -0
  76. package/dist/src/components/examples/loading-states-demo.js +41 -0
  77. package/dist/src/components/examples/loading-states-demo.tsx +142 -0
  78. package/dist/src/components/examples/react-19-demo.d.ts +10 -0
  79. package/dist/src/components/examples/react-19-demo.d.ts.map +1 -0
  80. package/dist/src/components/examples/react-19-demo.js +104 -0
  81. package/dist/src/components/examples/react-19-demo.tsx +381 -0
  82. package/dist/src/components/examples/volume-orientation-demo.d.ts +2 -0
  83. package/dist/src/components/examples/volume-orientation-demo.d.ts.map +1 -0
  84. package/dist/src/components/examples/volume-orientation-demo.js +31 -0
  85. package/dist/src/components/examples/volume-orientation-demo.tsx +114 -0
  86. package/dist/src/components/icon-demo.d.ts +2 -0
  87. package/dist/src/components/icon-demo.d.ts.map +1 -0
  88. package/dist/src/components/icon-demo.js +16 -0
  89. package/dist/src/components/icon-demo.tsx +209 -0
  90. package/dist/src/components/icons/index.d.ts +36 -0
  91. package/dist/src/components/icons/index.d.ts.map +1 -0
  92. package/dist/src/components/icons/index.js +59 -0
  93. package/dist/src/components/icons/index.tsx +166 -0
  94. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.d.ts +4 -0
  95. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.d.ts.map +1 -0
  96. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.js +3 -0
  97. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.tsx +18 -0
  98. package/dist/src/components/icons/svg-icons/ArrowRightIcon.d.ts +4 -0
  99. package/dist/src/components/icons/svg-icons/ArrowRightIcon.d.ts.map +1 -0
  100. package/dist/src/components/icons/svg-icons/ArrowRightIcon.js +3 -0
  101. package/dist/src/components/icons/svg-icons/ArrowRightIcon.tsx +18 -0
  102. package/dist/src/components/icons/svg-icons/AudioIcon.d.ts +4 -0
  103. package/dist/src/components/icons/svg-icons/AudioIcon.d.ts.map +1 -0
  104. package/dist/src/components/icons/svg-icons/AudioIcon.js +4 -0
  105. package/dist/src/components/icons/svg-icons/AudioIcon.tsx +22 -0
  106. package/dist/src/components/icons/svg-icons/BackwardIcon.d.ts +4 -0
  107. package/dist/src/components/icons/svg-icons/BackwardIcon.d.ts.map +1 -0
  108. package/dist/src/components/icons/svg-icons/BackwardIcon.js +3 -0
  109. package/dist/src/components/icons/svg-icons/BackwardIcon.tsx +12 -0
  110. package/dist/src/components/icons/svg-icons/CameraIcon.d.ts +4 -0
  111. package/dist/src/components/icons/svg-icons/CameraIcon.d.ts.map +1 -0
  112. package/dist/src/components/icons/svg-icons/CameraIcon.js +4 -0
  113. package/dist/src/components/icons/svg-icons/CameraIcon.tsx +19 -0
  114. package/dist/src/components/icons/svg-icons/CheckIcon.d.ts +4 -0
  115. package/dist/src/components/icons/svg-icons/CheckIcon.d.ts.map +1 -0
  116. package/dist/src/components/icons/svg-icons/CheckIcon.js +4 -0
  117. package/dist/src/components/icons/svg-icons/CheckIcon.tsx +19 -0
  118. package/dist/src/components/icons/svg-icons/EnablePiPIcon.d.ts +4 -0
  119. package/dist/src/components/icons/svg-icons/EnablePiPIcon.d.ts.map +1 -0
  120. package/dist/src/components/icons/svg-icons/EnablePiPIcon.js +5 -0
  121. package/dist/src/components/icons/svg-icons/EnablePiPIcon.tsx +17 -0
  122. package/dist/src/components/icons/svg-icons/ForwardIcon.d.ts +4 -0
  123. package/dist/src/components/icons/svg-icons/ForwardIcon.d.ts.map +1 -0
  124. package/dist/src/components/icons/svg-icons/ForwardIcon.js +3 -0
  125. package/dist/src/components/icons/svg-icons/ForwardIcon.tsx +12 -0
  126. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts +4 -0
  127. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts.map +1 -0
  128. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.js +3 -0
  129. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.tsx +23 -0
  130. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.d.ts +4 -0
  131. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.d.ts.map +1 -0
  132. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.js +3 -0
  133. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.tsx +23 -0
  134. package/dist/src/components/icons/svg-icons/LoadingIcon.d.ts +4 -0
  135. package/dist/src/components/icons/svg-icons/LoadingIcon.d.ts.map +1 -0
  136. package/dist/src/components/icons/svg-icons/LoadingIcon.js +3 -0
  137. package/dist/src/components/icons/svg-icons/LoadingIcon.tsx +32 -0
  138. package/dist/src/components/icons/svg-icons/PauseIcon.d.ts +4 -0
  139. package/dist/src/components/icons/svg-icons/PauseIcon.d.ts.map +1 -0
  140. package/dist/src/components/icons/svg-icons/PauseIcon.js +3 -0
  141. package/dist/src/components/icons/svg-icons/PauseIcon.tsx +23 -0
  142. package/dist/src/components/icons/svg-icons/PlayIcon.d.ts +4 -0
  143. package/dist/src/components/icons/svg-icons/PlayIcon.d.ts.map +1 -0
  144. package/dist/src/components/icons/svg-icons/PlayIcon.js +3 -0
  145. package/dist/src/components/icons/svg-icons/PlayIcon.tsx +21 -0
  146. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts +4 -0
  147. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts.map +1 -0
  148. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.js +3 -0
  149. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.tsx +23 -0
  150. package/dist/src/components/icons/svg-icons/QualityIcon.d.ts +4 -0
  151. package/dist/src/components/icons/svg-icons/QualityIcon.d.ts.map +1 -0
  152. package/dist/src/components/icons/svg-icons/QualityIcon.js +3 -0
  153. package/dist/src/components/icons/svg-icons/QualityIcon.tsx +21 -0
  154. package/dist/src/components/icons/svg-icons/SettingsIcon.d.ts +4 -0
  155. package/dist/src/components/icons/svg-icons/SettingsIcon.d.ts.map +1 -0
  156. package/dist/src/components/icons/svg-icons/SettingsIcon.js +3 -0
  157. package/dist/src/components/icons/svg-icons/SettingsIcon.tsx +12 -0
  158. package/dist/src/components/icons/svg-icons/SliderIcon.d.ts +4 -0
  159. package/dist/src/components/icons/svg-icons/SliderIcon.d.ts.map +1 -0
  160. package/dist/src/components/icons/svg-icons/SliderIcon.js +3 -0
  161. package/dist/src/components/icons/svg-icons/SliderIcon.tsx +21 -0
  162. package/dist/src/components/icons/svg-icons/SubtitleIcon.d.ts +4 -0
  163. package/dist/src/components/icons/svg-icons/SubtitleIcon.d.ts.map +1 -0
  164. package/dist/src/components/icons/svg-icons/SubtitleIcon.js +3 -0
  165. package/dist/src/components/icons/svg-icons/SubtitleIcon.tsx +21 -0
  166. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.d.ts +4 -0
  167. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.d.ts.map +1 -0
  168. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.js +3 -0
  169. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.tsx +25 -0
  170. package/dist/src/components/icons/svg-icons/UnPiPIcon.d.ts +4 -0
  171. package/dist/src/components/icons/svg-icons/UnPiPIcon.d.ts.map +1 -0
  172. package/dist/src/components/icons/svg-icons/UnPiPIcon.js +5 -0
  173. package/dist/src/components/icons/svg-icons/UnPiPIcon.tsx +17 -0
  174. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.d.ts +4 -0
  175. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.d.ts.map +1 -0
  176. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.js +3 -0
  177. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.tsx +16 -0
  178. package/dist/src/components/icons/svg-icons/VolumeOneIcon.d.ts +4 -0
  179. package/dist/src/components/icons/svg-icons/VolumeOneIcon.d.ts.map +1 -0
  180. package/dist/src/components/icons/svg-icons/VolumeOneIcon.js +3 -0
  181. package/dist/src/components/icons/svg-icons/VolumeOneIcon.tsx +22 -0
  182. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.d.ts +4 -0
  183. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.d.ts.map +1 -0
  184. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.js +3 -0
  185. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.tsx +16 -0
  186. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.d.ts +4 -0
  187. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.d.ts.map +1 -0
  188. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.js +3 -0
  189. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.tsx +16 -0
  190. package/dist/src/components/legacy.d.ts +13 -0
  191. package/dist/src/components/legacy.d.ts.map +1 -0
  192. package/dist/src/components/legacy.js +52 -0
  193. package/dist/src/components/legacy.tsx +93 -0
  194. package/dist/src/components/media-metadata-display.d.ts +11 -0
  195. package/dist/src/components/media-metadata-display.d.ts.map +1 -0
  196. package/dist/src/components/media-metadata-display.js +20 -0
  197. package/dist/src/components/media-metadata-display.tsx +100 -0
  198. package/dist/src/components/media-player-audio.d.ts +9 -0
  199. package/dist/src/components/media-player-audio.d.ts.map +1 -0
  200. package/dist/src/components/media-player-audio.js +18 -0
  201. package/dist/src/components/media-player-audio.tsx +39 -0
  202. package/dist/src/components/media-player-controls.d.ts +23 -0
  203. package/dist/src/components/media-player-controls.d.ts.map +1 -0
  204. package/dist/src/components/media-player-controls.js +150 -0
  205. package/dist/src/components/media-player-controls.tsx +226 -0
  206. package/dist/src/components/media-player-error.d.ts +16 -0
  207. package/dist/src/components/media-player-error.d.ts.map +1 -0
  208. package/dist/src/components/media-player-error.js +85 -0
  209. package/dist/src/components/media-player-error.tsx +163 -0
  210. package/dist/src/components/media-player-fullscreen.d.ts +12 -0
  211. package/dist/src/components/media-player-fullscreen.d.ts.map +1 -0
  212. package/dist/src/components/media-player-fullscreen.js +68 -0
  213. package/dist/src/components/media-player-fullscreen.tsx +109 -0
  214. package/dist/src/components/media-player-hls.d.ts +23 -0
  215. package/dist/src/components/media-player-hls.d.ts.map +1 -0
  216. package/dist/src/components/media-player-hls.js +20 -0
  217. package/dist/src/components/media-player-hls.tsx +111 -0
  218. package/dist/src/components/media-player-loading.d.ts +12 -0
  219. package/dist/src/components/media-player-loading.d.ts.map +1 -0
  220. package/dist/src/components/media-player-loading.js +53 -0
  221. package/dist/src/components/media-player-loading.tsx +76 -0
  222. package/dist/src/components/media-player-play.d.ts +11 -0
  223. package/dist/src/components/media-player-play.d.ts.map +1 -0
  224. package/dist/src/components/media-player-play.js +44 -0
  225. package/dist/src/components/media-player-play.tsx +75 -0
  226. package/dist/src/components/media-player-root.d.ts +28 -0
  227. package/dist/src/components/media-player-root.d.ts.map +1 -0
  228. package/dist/src/components/media-player-root.js +243 -0
  229. package/dist/src/components/media-player-root.tsx +340 -0
  230. package/dist/src/components/media-player-seek.d.ts +15 -0
  231. package/dist/src/components/media-player-seek.d.ts.map +1 -0
  232. package/dist/src/components/media-player-seek.js +92 -0
  233. package/dist/src/components/media-player-seek.tsx +168 -0
  234. package/dist/src/components/media-player-time.d.ts +12 -0
  235. package/dist/src/components/media-player-time.d.ts.map +1 -0
  236. package/dist/src/components/media-player-time.js +57 -0
  237. package/dist/src/components/media-player-time.tsx +99 -0
  238. package/dist/src/components/media-player-tooltip.d.ts +13 -0
  239. package/dist/src/components/media-player-tooltip.d.ts.map +1 -0
  240. package/dist/src/components/media-player-tooltip.js +14 -0
  241. package/dist/src/components/media-player-tooltip.tsx +58 -0
  242. package/dist/src/components/media-player-video.d.ts +9 -0
  243. package/dist/src/components/media-player-video.d.ts.map +1 -0
  244. package/dist/src/components/media-player-video.js +18 -0
  245. package/dist/src/components/media-player-video.tsx +39 -0
  246. package/dist/src/components/media-player-volume.d.ts +13 -0
  247. package/dist/src/components/media-player-volume.d.ts.map +1 -0
  248. package/dist/src/components/media-player-volume.js +88 -0
  249. package/dist/src/components/media-player-volume.tsx +155 -0
  250. package/dist/src/components/media-player.d.ts +3 -0
  251. package/dist/src/components/media-player.d.ts.map +1 -0
  252. package/dist/src/components/media-player.js +67 -0
  253. package/dist/src/components/media-player.tsx +257 -0
  254. package/dist/src/components/media-suspense.d.ts +78 -0
  255. package/dist/src/components/media-suspense.d.ts.map +1 -0
  256. package/dist/src/components/media-suspense.js +173 -0
  257. package/dist/src/components/media-suspense.tsx +362 -0
  258. package/dist/src/components/player-settings-form.d.ts +8 -0
  259. package/dist/src/components/player-settings-form.d.ts.map +1 -0
  260. package/dist/src/components/player-settings-form.js +46 -0
  261. package/dist/src/components/player-settings-form.tsx +163 -0
  262. package/dist/src/components/react-player-wrapper.d.ts +64 -0
  263. package/dist/src/components/react-player-wrapper.d.ts.map +1 -0
  264. package/dist/src/components/react-player-wrapper.js +163 -0
  265. package/dist/src/components/react-player-wrapper.tsx +651 -0
  266. package/dist/src/components/simple-video-player.d.ts +9 -0
  267. package/dist/src/components/simple-video-player.d.ts.map +1 -0
  268. package/dist/src/components/simple-video-player.js +41 -0
  269. package/dist/src/components/simple-video-player.tsx +60 -0
  270. package/dist/src/components/ui/enhanced-seek-bar.d.ts +3 -0
  271. package/dist/src/components/ui/enhanced-seek-bar.d.ts.map +1 -0
  272. package/dist/src/components/ui/enhanced-seek-bar.js +112 -0
  273. package/dist/src/components/ui/enhanced-seek-bar.tsx +235 -0
  274. package/dist/src/components/ui/fullscreen-button.d.ts +3 -0
  275. package/dist/src/components/ui/fullscreen-button.d.ts.map +1 -0
  276. package/dist/src/components/ui/fullscreen-button.js +21 -0
  277. package/dist/src/components/ui/fullscreen-button.tsx +60 -0
  278. package/dist/src/components/ui/media-resource-preloader.d.ts +21 -0
  279. package/dist/src/components/ui/media-resource-preloader.d.ts.map +1 -0
  280. package/dist/src/components/ui/media-resource-preloader.js +295 -0
  281. package/dist/src/components/ui/media-resource-preloader.tsx +395 -0
  282. package/dist/src/components/ui/play-button.d.ts +3 -0
  283. package/dist/src/components/ui/play-button.d.ts.map +1 -0
  284. package/dist/src/components/ui/play-button.js +26 -0
  285. package/dist/src/components/ui/play-button.tsx +107 -0
  286. package/dist/src/components/ui/seek-bar.d.ts +3 -0
  287. package/dist/src/components/ui/seek-bar.d.ts.map +1 -0
  288. package/dist/src/components/ui/seek-bar.js +54 -0
  289. package/dist/src/components/ui/seek-bar.tsx +161 -0
  290. package/dist/src/components/ui/time-display.d.ts +3 -0
  291. package/dist/src/components/ui/time-display.d.ts.map +1 -0
  292. package/dist/src/components/ui/time-display.js +18 -0
  293. package/dist/src/components/ui/time-display.tsx +40 -0
  294. package/dist/src/components/ui/volume-control.d.ts +3 -0
  295. package/dist/src/components/ui/volume-control.d.ts.map +1 -0
  296. package/dist/src/components/ui/volume-control.js +71 -0
  297. package/dist/src/components/ui/volume-control.tsx +143 -0
  298. package/dist/src/components/unified/base-media-player.d.ts +18 -0
  299. package/dist/src/components/unified/base-media-player.d.ts.map +1 -0
  300. package/dist/src/components/unified/base-media-player.js +104 -0
  301. package/dist/src/components/unified/base-media-player.tsx +246 -0
  302. package/dist/src/components/unified/media-player.d.ts +37 -0
  303. package/dist/src/components/unified/media-player.d.ts.map +1 -0
  304. package/dist/src/components/unified/media-player.js +41 -0
  305. package/dist/src/components/unified/media-player.tsx +75 -0
  306. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts +42 -0
  307. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts.map +1 -0
  308. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.js +322 -0
  309. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.tsx +561 -0
  310. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts +44 -0
  311. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts.map +1 -0
  312. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +280 -0
  313. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.tsx +552 -0
  314. package/dist/src/components/variants/minimal/MinimalControls.d.ts +19 -0
  315. package/dist/src/components/variants/minimal/MinimalControls.d.ts.map +1 -0
  316. package/dist/src/components/variants/minimal/MinimalControls.js +19 -0
  317. package/dist/src/components/variants/minimal/MinimalControls.tsx +142 -0
  318. package/dist/src/components/variants/minimal/MinimalLoading.d.ts +10 -0
  319. package/dist/src/components/variants/minimal/MinimalLoading.d.ts.map +1 -0
  320. package/dist/src/components/variants/minimal/MinimalLoading.js +6 -0
  321. package/dist/src/components/variants/minimal/MinimalLoading.tsx +32 -0
  322. package/dist/src/components/variants/minimal/MinimalMediaPlayer.d.ts +38 -0
  323. package/dist/src/components/variants/minimal/MinimalMediaPlayer.d.ts.map +1 -0
  324. package/dist/src/components/variants/minimal/MinimalMediaPlayer.js +135 -0
  325. package/dist/src/components/variants/minimal/MinimalMediaPlayer.tsx +315 -0
  326. package/dist/src/components/variants/minimal/MinimalOverlay.d.ts +11 -0
  327. package/dist/src/components/variants/minimal/MinimalOverlay.d.ts.map +1 -0
  328. package/dist/src/components/variants/minimal/MinimalOverlay.js +15 -0
  329. package/dist/src/components/variants/minimal/MinimalOverlay.tsx +64 -0
  330. package/dist/src/components/variants/minimal/MinimalPlayButton.d.ts +9 -0
  331. package/dist/src/components/variants/minimal/MinimalPlayButton.d.ts.map +1 -0
  332. package/dist/src/components/variants/minimal/MinimalPlayButton.js +29 -0
  333. package/dist/src/components/variants/minimal/MinimalPlayButton.tsx +65 -0
  334. package/dist/src/components/variants/minimal/MinimalSeekBar.d.ts +7 -0
  335. package/dist/src/components/variants/minimal/MinimalSeekBar.d.ts.map +1 -0
  336. package/dist/src/components/variants/minimal/MinimalSeekBar.js +73 -0
  337. package/dist/src/components/variants/minimal/MinimalSeekBar.tsx +150 -0
  338. package/dist/src/components/variants/minimal/MinimalVolumeControl.d.ts +7 -0
  339. package/dist/src/components/variants/minimal/MinimalVolumeControl.d.ts.map +1 -0
  340. package/dist/src/components/variants/minimal/MinimalVolumeControl.js +29 -0
  341. package/dist/src/components/variants/minimal/MinimalVolumeControl.tsx +80 -0
  342. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.d.ts +22 -0
  343. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.d.ts.map +1 -0
  344. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.js +51 -0
  345. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.tsx +209 -0
  346. package/dist/src/components/variants/minimal/components/CenterPlayButton.d.ts +7 -0
  347. package/dist/src/components/variants/minimal/components/CenterPlayButton.d.ts.map +1 -0
  348. package/dist/src/components/variants/minimal/components/CenterPlayButton.js +8 -0
  349. package/dist/src/components/variants/minimal/components/CenterPlayButton.tsx +22 -0
  350. package/dist/src/components/variants/minimal/components/ControlBar.d.ts +43 -0
  351. package/dist/src/components/variants/minimal/components/ControlBar.d.ts.map +1 -0
  352. package/dist/src/components/variants/minimal/components/ControlBar.js +10 -0
  353. package/dist/src/components/variants/minimal/components/ControlBar.tsx +146 -0
  354. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts +24 -0
  355. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts.map +1 -0
  356. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.js +68 -0
  357. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.tsx +361 -0
  358. package/dist/src/components/variants/minimal/components/PlaybackControls.d.ts +9 -0
  359. package/dist/src/components/variants/minimal/components/PlaybackControls.d.ts.map +1 -0
  360. package/dist/src/components/variants/minimal/components/PlaybackControls.js +9 -0
  361. package/dist/src/components/variants/minimal/components/PlaybackControls.tsx +51 -0
  362. package/dist/src/components/variants/minimal/components/RightControls.d.ts +25 -0
  363. package/dist/src/components/variants/minimal/components/RightControls.d.ts.map +1 -0
  364. package/dist/src/components/variants/minimal/components/RightControls.js +40 -0
  365. package/dist/src/components/variants/minimal/components/RightControls.tsx +173 -0
  366. package/dist/src/components/variants/minimal/components/SeekBar.d.ts +11 -0
  367. package/dist/src/components/variants/minimal/components/SeekBar.d.ts.map +1 -0
  368. package/dist/src/components/variants/minimal/components/SeekBar.js +43 -0
  369. package/dist/src/components/variants/minimal/components/SeekBar.tsx +131 -0
  370. package/dist/src/components/variants/minimal/components/SettingsDropdown.d.ts +9 -0
  371. package/dist/src/components/variants/minimal/components/SettingsDropdown.d.ts.map +1 -0
  372. package/dist/src/components/variants/minimal/components/SettingsDropdown.js +18 -0
  373. package/dist/src/components/variants/minimal/components/SettingsDropdown.tsx +70 -0
  374. package/dist/src/components/variants/minimal/components/SubtitleDisplay.d.ts +7 -0
  375. package/dist/src/components/variants/minimal/components/SubtitleDisplay.d.ts.map +1 -0
  376. package/dist/src/components/variants/minimal/components/SubtitleDisplay.js +6 -0
  377. package/dist/src/components/variants/minimal/components/SubtitleDisplay.tsx +21 -0
  378. package/dist/src/components/variants/minimal/components/TimeDisplay.d.ts +7 -0
  379. package/dist/src/components/variants/minimal/components/TimeDisplay.d.ts.map +1 -0
  380. package/dist/src/components/variants/minimal/components/TimeDisplay.js +5 -0
  381. package/dist/src/components/variants/minimal/components/TimeDisplay.tsx +18 -0
  382. package/dist/src/components/variants/minimal/components/VideoElement.d.ts +13 -0
  383. package/dist/src/components/variants/minimal/components/VideoElement.d.ts.map +1 -0
  384. package/dist/src/components/variants/minimal/components/VideoElement.js +4 -0
  385. package/dist/src/components/variants/minimal/components/VideoElement.tsx +40 -0
  386. package/dist/src/components/variants/minimal/components/VolumeControl.d.ts +13 -0
  387. package/dist/src/components/variants/minimal/components/VolumeControl.d.ts.map +1 -0
  388. package/dist/src/components/variants/minimal/components/VolumeControl.js +99 -0
  389. package/dist/src/components/variants/minimal/components/VolumeControl.tsx +217 -0
  390. package/dist/src/components/variants/minimal/index.d.ts +17 -0
  391. package/dist/src/components/variants/minimal/index.d.ts.map +1 -0
  392. package/dist/src/components/variants/minimal/index.js +8 -0
  393. package/dist/src/components/variants/minimal/index.ts +23 -0
  394. package/dist/src/components/video-player.d.ts +3 -0
  395. package/dist/src/components/video-player.d.ts.map +1 -0
  396. package/dist/src/components/video-player.js +38 -0
  397. package/dist/src/components/video-player.tsx +100 -0
  398. package/dist/src/context/error-handling.d.ts +72 -0
  399. package/dist/src/context/error-handling.d.ts.map +1 -0
  400. package/dist/src/context/error-handling.js +300 -0
  401. package/dist/src/context/error-handling.ts +394 -0
  402. package/dist/src/context/media-context.d.ts +104 -0
  403. package/dist/src/context/media-context.d.ts.map +1 -0
  404. package/dist/src/context/media-context.js +121 -0
  405. package/dist/src/context/media-context.tsx +208 -0
  406. package/dist/src/context/media-provider.d.ts +26 -0
  407. package/dist/src/context/media-provider.d.ts.map +1 -0
  408. package/dist/src/context/media-provider.js +164 -0
  409. package/dist/src/context/media-provider.tsx +265 -0
  410. package/dist/src/context/media-store.d.ts +33 -0
  411. package/dist/src/context/media-store.d.ts.map +1 -0
  412. package/dist/src/context/media-store.js +273 -0
  413. package/dist/src/context/media-store.ts +379 -0
  414. package/dist/src/context/persistence.d.ts +83 -0
  415. package/dist/src/context/persistence.d.ts.map +1 -0
  416. package/dist/src/context/persistence.js +356 -0
  417. package/dist/src/context/persistence.ts +453 -0
  418. package/dist/src/core/events/event-system.d.ts +170 -0
  419. package/dist/src/core/events/event-system.d.ts.map +1 -0
  420. package/dist/src/core/events/event-system.js +288 -0
  421. package/dist/src/core/events/event-system.ts +442 -0
  422. package/dist/src/core/events/hooks.d.ts +33 -0
  423. package/dist/src/core/events/hooks.d.ts.map +1 -0
  424. package/dist/src/core/events/hooks.js +198 -0
  425. package/dist/src/core/events/hooks.ts +302 -0
  426. package/dist/src/core/events/index.d.ts +6 -0
  427. package/dist/src/core/events/index.d.ts.map +1 -0
  428. package/dist/src/core/events/index.js +7 -0
  429. package/dist/src/core/events/index.ts +22 -0
  430. package/dist/src/core/events/middleware.d.ts +39 -0
  431. package/dist/src/core/events/middleware.d.ts.map +1 -0
  432. package/dist/src/core/events/middleware.js +219 -0
  433. package/dist/src/core/events/middleware.ts +269 -0
  434. package/dist/src/core/index.d.ts +8 -0
  435. package/dist/src/core/index.d.ts.map +1 -0
  436. package/dist/src/core/index.js +15 -0
  437. package/dist/src/core/index.ts +22 -0
  438. package/dist/src/core/optimization/bundle-optimizer.d.ts +44 -0
  439. package/dist/src/core/optimization/bundle-optimizer.d.ts.map +1 -0
  440. package/dist/src/core/optimization/bundle-optimizer.js +217 -0
  441. package/dist/src/core/optimization/bundle-optimizer.tsx +308 -0
  442. package/dist/src/core/performance/cicd.d.ts +8 -0
  443. package/dist/src/core/performance/cicd.d.ts.map +1 -0
  444. package/dist/src/core/performance/cicd.js +83 -0
  445. package/dist/src/core/performance/cicd.ts +96 -0
  446. package/dist/src/core/performance/index.d.ts +10 -0
  447. package/dist/src/core/performance/index.d.ts.map +1 -0
  448. package/dist/src/core/performance/index.js +14 -0
  449. package/dist/src/core/performance/index.ts +38 -0
  450. package/dist/src/core/performance/media-loading-optimizer.d.ts +105 -0
  451. package/dist/src/core/performance/media-loading-optimizer.d.ts.map +1 -0
  452. package/dist/src/core/performance/media-loading-optimizer.js +404 -0
  453. package/dist/src/core/performance/media-loading-optimizer.ts +538 -0
  454. package/dist/src/core/performance/performance-budgets.d.ts +68 -0
  455. package/dist/src/core/performance/performance-budgets.d.ts.map +1 -0
  456. package/dist/src/core/performance/performance-budgets.js +326 -0
  457. package/dist/src/core/performance/performance-budgets.ts +432 -0
  458. package/dist/src/core/performance/performance-monitor.d.ts +95 -0
  459. package/dist/src/core/performance/performance-monitor.d.ts.map +1 -0
  460. package/dist/src/core/performance/performance-monitor.js +297 -0
  461. package/dist/src/core/performance/performance-monitor.tsx +476 -0
  462. package/dist/src/core/performance/performance-testing.d.ts +69 -0
  463. package/dist/src/core/performance/performance-testing.d.ts.map +1 -0
  464. package/dist/src/core/performance/performance-testing.js +314 -0
  465. package/dist/src/core/performance/performance-testing.ts +459 -0
  466. package/dist/src/core/plugins/base-plugin.d.ts +52 -0
  467. package/dist/src/core/plugins/base-plugin.d.ts.map +1 -0
  468. package/dist/src/core/plugins/base-plugin.js +151 -0
  469. package/dist/src/core/plugins/base-plugin.ts +224 -0
  470. package/dist/src/core/plugins/enhanced-plugin-system.d.ts +160 -0
  471. package/dist/src/core/plugins/enhanced-plugin-system.d.ts.map +1 -0
  472. package/dist/src/core/plugins/enhanced-plugin-system.js +305 -0
  473. package/dist/src/core/plugins/enhanced-plugin-system.ts +411 -0
  474. package/dist/src/core/plugins/examples/analytics-plugin.d.ts +30 -0
  475. package/dist/src/core/plugins/examples/analytics-plugin.d.ts.map +1 -0
  476. package/dist/src/core/plugins/examples/analytics-plugin.js +191 -0
  477. package/dist/src/core/plugins/examples/analytics-plugin.ts +242 -0
  478. package/dist/src/core/plugins/index.d.ts +8 -0
  479. package/dist/src/core/plugins/index.d.ts.map +1 -0
  480. package/dist/src/core/plugins/index.js +9 -0
  481. package/dist/src/core/plugins/index.ts +39 -0
  482. package/dist/src/core/plugins/registry.d.ts +31 -0
  483. package/dist/src/core/plugins/registry.d.ts.map +1 -0
  484. package/dist/src/core/plugins/registry.js +261 -0
  485. package/dist/src/core/plugins/registry.ts +327 -0
  486. package/dist/src/core/plugins/types.d.ts +101 -0
  487. package/dist/src/core/plugins/types.d.ts.map +1 -0
  488. package/dist/src/core/plugins/types.js +31 -0
  489. package/dist/src/core/plugins/types.ts +159 -0
  490. package/dist/src/core/plugins/utils.d.ts +38 -0
  491. package/dist/src/core/plugins/utils.d.ts.map +1 -0
  492. package/dist/src/core/plugins/utils.js +274 -0
  493. package/dist/src/core/plugins/utils.ts +316 -0
  494. package/dist/src/core/progressive-loading.d.ts +88 -0
  495. package/dist/src/core/progressive-loading.d.ts.map +1 -0
  496. package/dist/src/core/progressive-loading.js +239 -0
  497. package/dist/src/core/progressive-loading.tsx +322 -0
  498. package/dist/src/core/providers/enhanced-hls-provider.d.ts +50 -0
  499. package/dist/src/core/providers/enhanced-hls-provider.d.ts.map +1 -0
  500. package/dist/src/core/providers/enhanced-hls-provider.js +273 -0
  501. package/dist/src/core/providers/enhanced-hls-provider.ts +339 -0
  502. package/dist/src/core/providers/service-provider.d.ts +49 -0
  503. package/dist/src/core/providers/service-provider.d.ts.map +1 -0
  504. package/dist/src/core/providers/service-provider.js +105 -0
  505. package/dist/src/core/providers/service-provider.tsx +168 -0
  506. package/dist/src/core/utils.d.ts +25 -0
  507. package/dist/src/core/utils.d.ts.map +1 -0
  508. package/dist/src/core/utils.js +21 -0
  509. package/dist/src/core/utils.tsx +38 -0
  510. package/dist/src/features/media-session/media-session-manager.d.ts +132 -0
  511. package/dist/src/features/media-session/media-session-manager.d.ts.map +1 -0
  512. package/dist/src/features/media-session/media-session-manager.js +331 -0
  513. package/dist/src/features/media-session/media-session-manager.ts +429 -0
  514. package/dist/src/features/picture-in-picture/pip-manager.d.ts +94 -0
  515. package/dist/src/features/picture-in-picture/pip-manager.d.ts.map +1 -0
  516. package/dist/src/features/picture-in-picture/pip-manager.js +353 -0
  517. package/dist/src/features/picture-in-picture/pip-manager.ts +429 -0
  518. package/dist/src/features/playlist/playlist-manager.d.ts +208 -0
  519. package/dist/src/features/playlist/playlist-manager.d.ts.map +1 -0
  520. package/dist/src/features/playlist/playlist-manager.js +475 -0
  521. package/dist/src/features/playlist/playlist-manager.ts +606 -0
  522. package/dist/src/features/subtitles/subtitle-manager.d.ts +136 -0
  523. package/dist/src/features/subtitles/subtitle-manager.d.ts.map +1 -0
  524. package/dist/src/features/subtitles/subtitle-manager.js +335 -0
  525. package/dist/src/features/subtitles/subtitle-manager.ts +441 -0
  526. package/dist/src/features/subtitles/subtitle-parser.d.ts +60 -0
  527. package/dist/src/features/subtitles/subtitle-parser.d.ts.map +1 -0
  528. package/dist/src/features/subtitles/subtitle-parser.js +217 -0
  529. package/dist/src/features/subtitles/subtitle-parser.ts +280 -0
  530. package/dist/src/features/thumbnails/thumbnail-generator.d.ts +136 -0
  531. package/dist/src/features/thumbnails/thumbnail-generator.d.ts.map +1 -0
  532. package/dist/src/features/thumbnails/thumbnail-generator.js +388 -0
  533. package/dist/src/features/thumbnails/thumbnail-generator.ts +519 -0
  534. package/dist/src/hooks/accessibility/index.d.ts +5 -0
  535. package/dist/src/hooks/accessibility/index.d.ts.map +1 -0
  536. package/dist/src/hooks/accessibility/index.js +4 -0
  537. package/dist/src/hooks/accessibility/index.ts +27 -0
  538. package/dist/src/hooks/accessibility/use-accessibility-preferences.d.ts +14 -0
  539. package/dist/src/hooks/accessibility/use-accessibility-preferences.d.ts.map +1 -0
  540. package/dist/src/hooks/accessibility/use-accessibility-preferences.js +156 -0
  541. package/dist/src/hooks/accessibility/use-accessibility-preferences.ts +188 -0
  542. package/dist/src/hooks/accessibility/use-focus-management.d.ts +31 -0
  543. package/dist/src/hooks/accessibility/use-focus-management.d.ts.map +1 -0
  544. package/dist/src/hooks/accessibility/use-focus-management.js +142 -0
  545. package/dist/src/hooks/accessibility/use-focus-management.ts +176 -0
  546. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.d.ts +38 -0
  547. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.d.ts.map +1 -0
  548. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.js +101 -0
  549. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.ts +144 -0
  550. package/dist/src/hooks/accessibility/use-screen-reader.d.ts +22 -0
  551. package/dist/src/hooks/accessibility/use-screen-reader.d.ts.map +1 -0
  552. package/dist/src/hooks/accessibility/use-screen-reader.js +148 -0
  553. package/dist/src/hooks/accessibility/use-screen-reader.ts +182 -0
  554. package/dist/src/hooks/core/index.d.ts +18 -0
  555. package/dist/src/hooks/core/index.d.ts.map +1 -0
  556. package/dist/src/hooks/core/index.js +19 -0
  557. package/dist/src/hooks/core/index.ts +47 -0
  558. package/dist/src/hooks/legacy.d.ts +18 -0
  559. package/dist/src/hooks/legacy.d.ts.map +1 -0
  560. package/dist/src/hooks/legacy.js +17 -0
  561. package/dist/src/hooks/legacy.ts +27 -0
  562. package/dist/src/hooks/use-enhanced-media-player.d.ts +88 -0
  563. package/dist/src/hooks/use-enhanced-media-player.d.ts.map +1 -0
  564. package/dist/src/hooks/use-enhanced-media-player.js +395 -0
  565. package/dist/src/hooks/use-enhanced-media-player.ts +468 -0
  566. package/dist/src/hooks/use-intelligent-preloading.d.ts +66 -0
  567. package/dist/src/hooks/use-intelligent-preloading.d.ts.map +1 -0
  568. package/dist/src/hooks/use-intelligent-preloading.js +258 -0
  569. package/dist/src/hooks/use-intelligent-preloading.ts +358 -0
  570. package/dist/src/hooks/use-keyboard-controls.d.ts +13 -0
  571. package/dist/src/hooks/use-keyboard-controls.d.ts.map +1 -0
  572. package/dist/src/hooks/use-keyboard-controls.js +83 -0
  573. package/dist/src/hooks/use-keyboard-controls.ts +115 -0
  574. package/dist/src/hooks/use-media-actions.d.ts +62 -0
  575. package/dist/src/hooks/use-media-actions.d.ts.map +1 -0
  576. package/dist/src/hooks/use-media-actions.js +121 -0
  577. package/dist/src/hooks/use-media-actions.ts +175 -0
  578. package/dist/src/hooks/use-media-metadata.d.ts +11 -0
  579. package/dist/src/hooks/use-media-metadata.d.ts.map +1 -0
  580. package/dist/src/hooks/use-media-metadata.js +74 -0
  581. package/dist/src/hooks/use-media-metadata.ts +89 -0
  582. package/dist/src/hooks/use-media-optimistic.d.ts +36 -0
  583. package/dist/src/hooks/use-media-optimistic.d.ts.map +1 -0
  584. package/dist/src/hooks/use-media-optimistic.js +205 -0
  585. package/dist/src/hooks/use-media-optimistic.ts +270 -0
  586. package/dist/src/hooks/use-media-player.d.ts +31 -0
  587. package/dist/src/hooks/use-media-player.d.ts.map +1 -0
  588. package/dist/src/hooks/use-media-player.js +251 -0
  589. package/dist/src/hooks/use-media-player.ts +312 -0
  590. package/dist/src/hooks/use-media-state.d.ts +17 -0
  591. package/dist/src/hooks/use-media-state.d.ts.map +1 -0
  592. package/dist/src/hooks/use-media-state.js +162 -0
  593. package/dist/src/hooks/use-media-state.ts +190 -0
  594. package/dist/src/hooks/use-memory-optimization.d.ts +40 -0
  595. package/dist/src/hooks/use-memory-optimization.d.ts.map +1 -0
  596. package/dist/src/hooks/use-memory-optimization.js +288 -0
  597. package/dist/src/hooks/use-memory-optimization.ts +358 -0
  598. package/dist/src/hooks/use-optimistic-controls.d.ts +22 -0
  599. package/dist/src/hooks/use-optimistic-controls.d.ts.map +1 -0
  600. package/dist/src/hooks/use-optimistic-controls.js +60 -0
  601. package/dist/src/hooks/use-optimistic-controls.ts +92 -0
  602. package/dist/src/hooks/use-optimized-media.d.ts +46 -0
  603. package/dist/src/hooks/use-optimized-media.d.ts.map +1 -0
  604. package/dist/src/hooks/use-optimized-media.js +211 -0
  605. package/dist/src/hooks/use-optimized-media.ts +263 -0
  606. package/dist/src/hooks/use-touch-gestures.d.ts +47 -0
  607. package/dist/src/hooks/use-touch-gestures.d.ts.map +1 -0
  608. package/dist/src/hooks/use-touch-gestures.js +289 -0
  609. package/dist/src/hooks/use-touch-gestures.ts +417 -0
  610. package/dist/src/hooks/useEnhancedSubtitles.d.ts +39 -0
  611. package/dist/src/hooks/useEnhancedSubtitles.d.ts.map +1 -0
  612. package/dist/src/hooks/useEnhancedSubtitles.js +205 -0
  613. package/dist/src/hooks/useEnhancedSubtitles.ts +258 -0
  614. package/dist/src/hooks/useKeyboardShortcuts.d.ts +10 -0
  615. package/dist/src/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  616. package/dist/src/hooks/useKeyboardShortcuts.js +59 -0
  617. package/dist/src/hooks/useKeyboardShortcuts.ts +74 -0
  618. package/dist/src/hooks/useMediaControls.d.ts +9 -0
  619. package/dist/src/hooks/useMediaControls.d.ts.map +1 -0
  620. package/dist/src/hooks/useMediaControls.js +44 -0
  621. package/dist/src/hooks/useMediaControls.ts +52 -0
  622. package/dist/src/hooks/useScreenshot.d.ts +4 -0
  623. package/dist/src/hooks/useScreenshot.d.ts.map +1 -0
  624. package/dist/src/hooks/useScreenshot.js +56 -0
  625. package/dist/src/hooks/useScreenshot.ts +57 -0
  626. package/dist/src/hooks/useSubtitles.d.ts +8 -0
  627. package/dist/src/hooks/useSubtitles.d.ts.map +1 -0
  628. package/dist/src/hooks/useSubtitles.js +73 -0
  629. package/dist/src/hooks/useSubtitles.ts +91 -0
  630. package/dist/src/hooks/useVideoPlayer.d.ts +32 -0
  631. package/dist/src/hooks/useVideoPlayer.d.ts.map +1 -0
  632. package/dist/src/hooks/useVideoPlayer.js +184 -0
  633. package/dist/src/hooks/useVideoPlayer.ts +232 -0
  634. package/dist/src/icons/components/FullscreenIcon.d.ts +3 -0
  635. package/dist/src/icons/components/FullscreenIcon.d.ts.map +1 -0
  636. package/dist/src/icons/components/FullscreenIcon.js +11 -0
  637. package/dist/src/icons/components/FullscreenIcon.tsx +37 -0
  638. package/dist/src/icons/components/SettingsIcon.d.ts +3 -0
  639. package/dist/src/icons/components/SettingsIcon.d.ts.map +1 -0
  640. package/dist/src/icons/components/SettingsIcon.js +11 -0
  641. package/dist/src/icons/components/SettingsIcon.tsx +38 -0
  642. package/dist/src/icons/components/animated/LoadingIcon.d.ts +3 -0
  643. package/dist/src/icons/components/animated/LoadingIcon.d.ts.map +1 -0
  644. package/dist/src/icons/components/animated/LoadingIcon.js +11 -0
  645. package/dist/src/icons/components/animated/LoadingIcon.tsx +43 -0
  646. package/dist/src/icons/components/animated/PlayPauseIcon.d.ts +7 -0
  647. package/dist/src/icons/components/animated/PlayPauseIcon.d.ts.map +1 -0
  648. package/dist/src/icons/components/animated/PlayPauseIcon.js +9 -0
  649. package/dist/src/icons/components/animated/PlayPauseIcon.tsx +50 -0
  650. package/dist/src/icons/components/media/PauseIcon.d.ts +3 -0
  651. package/dist/src/icons/components/media/PauseIcon.d.ts.map +1 -0
  652. package/dist/src/icons/components/media/PauseIcon.js +12 -0
  653. package/dist/src/icons/components/media/PauseIcon.tsx +39 -0
  654. package/dist/src/icons/components/media/PlayIcon.d.ts +3 -0
  655. package/dist/src/icons/components/media/PlayIcon.d.ts.map +1 -0
  656. package/dist/src/icons/components/media/PlayIcon.js +12 -0
  657. package/dist/src/icons/components/media/PlayIcon.tsx +38 -0
  658. package/dist/src/icons/components/volume/VolumeIcon.d.ts +3 -0
  659. package/dist/src/icons/components/volume/VolumeIcon.d.ts.map +1 -0
  660. package/dist/src/icons/components/volume/VolumeIcon.js +11 -0
  661. package/dist/src/icons/components/volume/VolumeIcon.tsx +39 -0
  662. package/dist/src/icons/components/volume/VolumeOffIcon.d.ts +3 -0
  663. package/dist/src/icons/components/volume/VolumeOffIcon.d.ts.map +1 -0
  664. package/dist/src/icons/components/volume/VolumeOffIcon.js +11 -0
  665. package/dist/src/icons/components/volume/VolumeOffIcon.tsx +39 -0
  666. package/dist/src/icons/index.d.ts +28 -0
  667. package/dist/src/icons/index.d.ts.map +1 -0
  668. package/dist/src/icons/index.js +45 -0
  669. package/dist/src/icons/index.ts +56 -0
  670. package/dist/src/icons/provider.d.ts +13 -0
  671. package/dist/src/icons/provider.d.ts.map +1 -0
  672. package/dist/src/icons/provider.js +37 -0
  673. package/dist/src/icons/provider.tsx +64 -0
  674. package/dist/src/icons/types.d.ts +18 -0
  675. package/dist/src/icons/types.d.ts.map +1 -0
  676. package/dist/src/icons/types.js +1 -0
  677. package/dist/src/icons/types.ts +40 -0
  678. package/dist/src/index-enhanced.d.ts +13 -0
  679. package/dist/src/index-enhanced.d.ts.map +1 -0
  680. package/dist/src/index-enhanced.js +16 -0
  681. package/dist/src/index-enhanced.ts +35 -0
  682. package/dist/src/index-legacy.d.ts +81 -0
  683. package/dist/src/index-legacy.d.ts.map +1 -0
  684. package/dist/src/index-legacy.js +97 -0
  685. package/dist/src/index-legacy.ts +326 -0
  686. package/dist/src/index.css +102 -0
  687. package/dist/src/index.d.ts +38 -0
  688. package/dist/src/index.d.ts.map +1 -0
  689. package/dist/src/index.js +90 -0
  690. package/dist/src/index.minimal.d.ts +2 -0
  691. package/dist/src/index.minimal.d.ts.map +1 -0
  692. package/dist/src/index.minimal.js +3 -0
  693. package/dist/src/index.minimal.ts +4 -0
  694. package/dist/src/index.ts +216 -0
  695. package/dist/src/lib/deprecation.d.ts +7 -0
  696. package/dist/src/lib/deprecation.d.ts.map +1 -0
  697. package/dist/src/lib/deprecation.js +31 -0
  698. package/dist/src/lib/deprecation.ts +51 -0
  699. package/dist/src/lib/format-time.d.ts +9 -0
  700. package/dist/src/lib/format-time.d.ts.map +1 -0
  701. package/dist/src/lib/format-time.js +32 -0
  702. package/dist/src/lib/format-time.ts +37 -0
  703. package/dist/src/lib/index.d.ts +3 -0
  704. package/dist/src/lib/index.d.ts.map +1 -0
  705. package/dist/src/lib/index.js +3 -0
  706. package/dist/src/lib/index.ts +3 -0
  707. package/dist/src/lib/utils.d.ts +3 -0
  708. package/dist/src/lib/utils.d.ts.map +1 -0
  709. package/dist/src/lib/utils.js +5 -0
  710. package/dist/src/lib/utils.ts +6 -0
  711. package/dist/src/styles/globals.css +462 -0
  712. package/dist/src/styles/minimal-player.css +589 -0
  713. package/dist/src/styles/pixel-art.css +46 -0
  714. package/dist/src/styles/videojs.css +100 -0
  715. package/dist/src/test/setup.d.ts +2 -0
  716. package/dist/src/test/setup.d.ts.map +1 -0
  717. package/dist/src/test/setup.js +65 -0
  718. package/dist/src/test/setup.ts +79 -0
  719. package/dist/src/types/events.d.ts +41 -0
  720. package/dist/src/types/events.d.ts.map +1 -0
  721. package/dist/src/types/events.js +2 -0
  722. package/dist/src/types/events.ts +47 -0
  723. package/dist/src/types/formats.d.ts +45 -0
  724. package/dist/src/types/formats.d.ts.map +1 -0
  725. package/dist/src/types/formats.js +63 -0
  726. package/dist/src/types/formats.ts +95 -0
  727. package/dist/src/types/index.d.ts +128 -0
  728. package/dist/src/types/index.d.ts.map +1 -0
  729. package/dist/src/types/index.js +4 -0
  730. package/dist/src/types/index.ts +190 -0
  731. package/dist/src/types/videojs-plugins.d.ts +14 -0
  732. package/package.json +7 -4
  733. package/src/adapters/videojs-adapter.d.ts +38 -0
  734. package/src/adapters/videojs-adapter.d.ts.map +1 -0
  735. package/src/adapters/videojs-adapter.js +350 -0
  736. package/src/components/AnimateLoading.d.ts +9 -0
  737. package/src/components/AnimateLoading.d.ts.map +1 -0
  738. package/src/components/AnimateLoading.js +41 -0
  739. package/src/components/LoadingState.d.ts +33 -0
  740. package/src/components/LoadingState.d.ts.map +1 -0
  741. package/src/components/LoadingState.js +111 -0
  742. package/src/components/accessibility/keyboard-help-overlay.d.ts +17 -0
  743. package/src/components/accessibility/keyboard-help-overlay.d.ts.map +1 -0
  744. package/src/components/accessibility/keyboard-help-overlay.js +90 -0
  745. package/src/components/audio-player.d.ts +3 -0
  746. package/src/components/audio-player.d.ts.map +1 -0
  747. package/src/components/audio-player.js +31 -0
  748. package/src/components/basic/index.d.ts +26 -0
  749. package/src/components/basic/index.d.ts.map +1 -0
  750. package/src/components/basic/index.js +29 -0
  751. package/src/components/enhanced/advanced-features.d.ts +45 -0
  752. package/src/components/enhanced/advanced-features.d.ts.map +1 -0
  753. package/src/components/enhanced/advanced-features.js +64 -0
  754. package/src/components/enhanced/debug-panel.d.ts +70 -0
  755. package/src/components/enhanced/debug-panel.d.ts.map +1 -0
  756. package/src/components/enhanced/debug-panel.js +94 -0
  757. package/src/components/enhanced/enhanced-controls.d.ts +50 -0
  758. package/src/components/enhanced/enhanced-controls.d.ts.map +1 -0
  759. package/src/components/enhanced/enhanced-controls.js +233 -0
  760. package/src/components/enhanced/enhanced-media-player.d.ts +26 -0
  761. package/src/components/enhanced/enhanced-media-player.d.ts.map +1 -0
  762. package/src/components/enhanced/enhanced-media-player.js +316 -0
  763. package/src/components/enhanced/error-handling.d.ts +36 -0
  764. package/src/components/enhanced/error-handling.d.ts.map +1 -0
  765. package/src/components/enhanced/error-handling.js +153 -0
  766. package/src/components/enhanced/index.d.ts +7 -0
  767. package/src/components/enhanced/index.d.ts.map +1 -0
  768. package/src/components/enhanced/index.js +10 -0
  769. package/src/components/enhanced/media-player-enhanced.d.ts +21 -0
  770. package/src/components/enhanced/media-player-enhanced.d.ts.map +1 -0
  771. package/src/components/enhanced/media-player-enhanced.js +250 -0
  772. package/src/components/examples/basic-video-player.d.ts +10 -0
  773. package/src/components/examples/basic-video-player.d.ts.map +1 -0
  774. package/src/components/examples/basic-video-player.js +16 -0
  775. package/src/components/examples/custom-controls-example.d.ts +10 -0
  776. package/src/components/examples/custom-controls-example.d.ts.map +1 -0
  777. package/src/components/examples/custom-controls-example.js +12 -0
  778. package/src/components/examples/enhanced-controls-example.d.ts +9 -0
  779. package/src/components/examples/enhanced-controls-example.d.ts.map +1 -0
  780. package/src/components/examples/enhanced-controls-example.js +18 -0
  781. package/src/components/examples/enhanced-media-player-example.d.ts +9 -0
  782. package/src/components/examples/enhanced-media-player-example.d.ts.map +1 -0
  783. package/src/components/examples/enhanced-media-player-example.js +13 -0
  784. package/src/components/examples/loading-states-demo.d.ts +2 -0
  785. package/src/components/examples/loading-states-demo.d.ts.map +1 -0
  786. package/src/components/examples/loading-states-demo.js +41 -0
  787. package/src/components/examples/react-19-demo.d.ts +10 -0
  788. package/src/components/examples/react-19-demo.d.ts.map +1 -0
  789. package/src/components/examples/react-19-demo.js +104 -0
  790. package/src/components/examples/volume-orientation-demo.d.ts +2 -0
  791. package/src/components/examples/volume-orientation-demo.d.ts.map +1 -0
  792. package/src/components/examples/volume-orientation-demo.js +31 -0
  793. package/src/components/icon-demo.d.ts +2 -0
  794. package/src/components/icon-demo.d.ts.map +1 -0
  795. package/src/components/icon-demo.js +16 -0
  796. package/src/components/icons/index.d.ts +36 -0
  797. package/src/components/icons/index.d.ts.map +1 -0
  798. package/src/components/icons/index.js +59 -0
  799. package/src/components/icons/svg-icons/ArrowLeftIcon.d.ts +4 -0
  800. package/src/components/icons/svg-icons/ArrowLeftIcon.d.ts.map +1 -0
  801. package/src/components/icons/svg-icons/ArrowLeftIcon.js +3 -0
  802. package/src/components/icons/svg-icons/ArrowRightIcon.d.ts +4 -0
  803. package/src/components/icons/svg-icons/ArrowRightIcon.d.ts.map +1 -0
  804. package/src/components/icons/svg-icons/ArrowRightIcon.js +3 -0
  805. package/src/components/icons/svg-icons/AudioIcon.d.ts +4 -0
  806. package/src/components/icons/svg-icons/AudioIcon.d.ts.map +1 -0
  807. package/src/components/icons/svg-icons/AudioIcon.js +4 -0
  808. package/src/components/icons/svg-icons/BackwardIcon.d.ts +4 -0
  809. package/src/components/icons/svg-icons/BackwardIcon.d.ts.map +1 -0
  810. package/src/components/icons/svg-icons/BackwardIcon.js +3 -0
  811. package/src/components/icons/svg-icons/CameraIcon.d.ts +4 -0
  812. package/src/components/icons/svg-icons/CameraIcon.d.ts.map +1 -0
  813. package/src/components/icons/svg-icons/CameraIcon.js +4 -0
  814. package/src/components/icons/svg-icons/CheckIcon.d.ts +4 -0
  815. package/src/components/icons/svg-icons/CheckIcon.d.ts.map +1 -0
  816. package/src/components/icons/svg-icons/CheckIcon.js +4 -0
  817. package/src/components/icons/svg-icons/EnablePiPIcon.d.ts +4 -0
  818. package/src/components/icons/svg-icons/EnablePiPIcon.d.ts.map +1 -0
  819. package/src/components/icons/svg-icons/EnablePiPIcon.js +5 -0
  820. package/src/components/icons/svg-icons/ForwardIcon.d.ts +4 -0
  821. package/src/components/icons/svg-icons/ForwardIcon.d.ts.map +1 -0
  822. package/src/components/icons/svg-icons/ForwardIcon.js +3 -0
  823. package/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts +4 -0
  824. package/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts.map +1 -0
  825. package/src/components/icons/svg-icons/FullscreenEnterIcon.js +3 -0
  826. package/src/components/icons/svg-icons/FullscreenExitIcon.d.ts +4 -0
  827. package/src/components/icons/svg-icons/FullscreenExitIcon.d.ts.map +1 -0
  828. package/src/components/icons/svg-icons/FullscreenExitIcon.js +3 -0
  829. package/src/components/icons/svg-icons/LoadingIcon.d.ts +4 -0
  830. package/src/components/icons/svg-icons/LoadingIcon.d.ts.map +1 -0
  831. package/src/components/icons/svg-icons/LoadingIcon.js +3 -0
  832. package/src/components/icons/svg-icons/PauseIcon.d.ts +4 -0
  833. package/src/components/icons/svg-icons/PauseIcon.d.ts.map +1 -0
  834. package/src/components/icons/svg-icons/PauseIcon.js +3 -0
  835. package/src/components/icons/svg-icons/PlayIcon.d.ts +4 -0
  836. package/src/components/icons/svg-icons/PlayIcon.d.ts.map +1 -0
  837. package/src/components/icons/svg-icons/PlayIcon.js +3 -0
  838. package/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts +4 -0
  839. package/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts.map +1 -0
  840. package/src/components/icons/svg-icons/PlaybackSpeedIcon.js +3 -0
  841. package/src/components/icons/svg-icons/QualityIcon.d.ts +4 -0
  842. package/src/components/icons/svg-icons/QualityIcon.d.ts.map +1 -0
  843. package/src/components/icons/svg-icons/QualityIcon.js +3 -0
  844. package/src/components/icons/svg-icons/SettingsIcon.d.ts +4 -0
  845. package/src/components/icons/svg-icons/SettingsIcon.d.ts.map +1 -0
  846. package/src/components/icons/svg-icons/SettingsIcon.js +3 -0
  847. package/src/components/icons/svg-icons/SliderIcon.d.ts +4 -0
  848. package/src/components/icons/svg-icons/SliderIcon.d.ts.map +1 -0
  849. package/src/components/icons/svg-icons/SliderIcon.js +3 -0
  850. package/src/components/icons/svg-icons/SubtitleIcon.d.ts +4 -0
  851. package/src/components/icons/svg-icons/SubtitleIcon.d.ts.map +1 -0
  852. package/src/components/icons/svg-icons/SubtitleIcon.js +3 -0
  853. package/src/components/icons/svg-icons/SubtitleOffIcon.d.ts +4 -0
  854. package/src/components/icons/svg-icons/SubtitleOffIcon.d.ts.map +1 -0
  855. package/src/components/icons/svg-icons/SubtitleOffIcon.js +3 -0
  856. package/src/components/icons/svg-icons/UnPiPIcon.d.ts +4 -0
  857. package/src/components/icons/svg-icons/UnPiPIcon.d.ts.map +1 -0
  858. package/src/components/icons/svg-icons/UnPiPIcon.js +5 -0
  859. package/src/components/icons/svg-icons/VolumeMutedIcon.d.ts +4 -0
  860. package/src/components/icons/svg-icons/VolumeMutedIcon.d.ts.map +1 -0
  861. package/src/components/icons/svg-icons/VolumeMutedIcon.js +3 -0
  862. package/src/components/icons/svg-icons/VolumeOneIcon.d.ts +4 -0
  863. package/src/components/icons/svg-icons/VolumeOneIcon.d.ts.map +1 -0
  864. package/src/components/icons/svg-icons/VolumeOneIcon.js +3 -0
  865. package/src/components/icons/svg-icons/VolumeThreeIcon.d.ts +4 -0
  866. package/src/components/icons/svg-icons/VolumeThreeIcon.d.ts.map +1 -0
  867. package/src/components/icons/svg-icons/VolumeThreeIcon.js +3 -0
  868. package/src/components/icons/svg-icons/VolumeTwoIcon.d.ts +4 -0
  869. package/src/components/icons/svg-icons/VolumeTwoIcon.d.ts.map +1 -0
  870. package/src/components/icons/svg-icons/VolumeTwoIcon.js +3 -0
  871. package/src/components/legacy.d.ts +13 -0
  872. package/src/components/legacy.d.ts.map +1 -0
  873. package/src/components/legacy.js +52 -0
  874. package/src/components/media-metadata-display.d.ts +11 -0
  875. package/src/components/media-metadata-display.d.ts.map +1 -0
  876. package/src/components/media-metadata-display.js +20 -0
  877. package/src/components/media-player-audio.d.ts +9 -0
  878. package/src/components/media-player-audio.d.ts.map +1 -0
  879. package/src/components/media-player-audio.js +18 -0
  880. package/src/components/media-player-controls.d.ts +23 -0
  881. package/src/components/media-player-controls.d.ts.map +1 -0
  882. package/src/components/media-player-controls.js +150 -0
  883. package/src/components/media-player-error.d.ts +16 -0
  884. package/src/components/media-player-error.d.ts.map +1 -0
  885. package/src/components/media-player-error.js +85 -0
  886. package/src/components/media-player-fullscreen.d.ts +12 -0
  887. package/src/components/media-player-fullscreen.d.ts.map +1 -0
  888. package/src/components/media-player-fullscreen.js +68 -0
  889. package/src/components/media-player-hls.d.ts +23 -0
  890. package/src/components/media-player-hls.d.ts.map +1 -0
  891. package/src/components/media-player-hls.js +20 -0
  892. package/src/components/media-player-loading.d.ts +12 -0
  893. package/src/components/media-player-loading.d.ts.map +1 -0
  894. package/src/components/media-player-loading.js +53 -0
  895. package/src/components/media-player-play.d.ts +11 -0
  896. package/src/components/media-player-play.d.ts.map +1 -0
  897. package/src/components/media-player-play.js +44 -0
  898. package/src/components/media-player-root.d.ts +28 -0
  899. package/src/components/media-player-root.d.ts.map +1 -0
  900. package/src/components/media-player-root.js +243 -0
  901. package/src/components/media-player-seek.d.ts +15 -0
  902. package/src/components/media-player-seek.d.ts.map +1 -0
  903. package/src/components/media-player-seek.js +92 -0
  904. package/src/components/media-player-time.d.ts +12 -0
  905. package/src/components/media-player-time.d.ts.map +1 -0
  906. package/src/components/media-player-time.js +57 -0
  907. package/src/components/media-player-tooltip.d.ts +13 -0
  908. package/src/components/media-player-tooltip.d.ts.map +1 -0
  909. package/src/components/media-player-tooltip.js +14 -0
  910. package/src/components/media-player-video.d.ts +9 -0
  911. package/src/components/media-player-video.d.ts.map +1 -0
  912. package/src/components/media-player-video.js +18 -0
  913. package/src/components/media-player-volume.d.ts +13 -0
  914. package/src/components/media-player-volume.d.ts.map +1 -0
  915. package/src/components/media-player-volume.js +88 -0
  916. package/src/components/media-player.d.ts +3 -0
  917. package/src/components/media-player.d.ts.map +1 -0
  918. package/src/components/media-player.js +67 -0
  919. package/src/components/media-suspense.d.ts +78 -0
  920. package/src/components/media-suspense.d.ts.map +1 -0
  921. package/src/components/media-suspense.js +173 -0
  922. package/src/components/player-settings-form.d.ts +8 -0
  923. package/src/components/player-settings-form.d.ts.map +1 -0
  924. package/src/components/player-settings-form.js +46 -0
  925. package/src/components/react-player-wrapper.d.ts +64 -0
  926. package/src/components/react-player-wrapper.d.ts.map +1 -0
  927. package/src/components/react-player-wrapper.js +163 -0
  928. package/src/components/simple-video-player.d.ts +9 -0
  929. package/src/components/simple-video-player.d.ts.map +1 -0
  930. package/src/components/simple-video-player.js +41 -0
  931. package/src/components/ui/enhanced-seek-bar.d.ts +3 -0
  932. package/src/components/ui/enhanced-seek-bar.d.ts.map +1 -0
  933. package/src/components/ui/enhanced-seek-bar.js +112 -0
  934. package/src/components/ui/fullscreen-button.d.ts +3 -0
  935. package/src/components/ui/fullscreen-button.d.ts.map +1 -0
  936. package/src/components/ui/fullscreen-button.js +21 -0
  937. package/src/components/ui/media-resource-preloader.d.ts +21 -0
  938. package/src/components/ui/media-resource-preloader.d.ts.map +1 -0
  939. package/src/components/ui/media-resource-preloader.js +295 -0
  940. package/src/components/ui/play-button.d.ts +3 -0
  941. package/src/components/ui/play-button.d.ts.map +1 -0
  942. package/src/components/ui/play-button.js +26 -0
  943. package/src/components/ui/seek-bar.d.ts +3 -0
  944. package/src/components/ui/seek-bar.d.ts.map +1 -0
  945. package/src/components/ui/seek-bar.js +54 -0
  946. package/src/components/ui/time-display.d.ts +3 -0
  947. package/src/components/ui/time-display.d.ts.map +1 -0
  948. package/src/components/ui/time-display.js +18 -0
  949. package/src/components/ui/volume-control.d.ts +3 -0
  950. package/src/components/ui/volume-control.d.ts.map +1 -0
  951. package/src/components/ui/volume-control.js +71 -0
  952. package/src/components/unified/base-media-player.d.ts +18 -0
  953. package/src/components/unified/base-media-player.d.ts.map +1 -0
  954. package/src/components/unified/base-media-player.js +104 -0
  955. package/src/components/unified/media-player.d.ts +37 -0
  956. package/src/components/unified/media-player.d.ts.map +1 -0
  957. package/src/components/unified/media-player.js +41 -0
  958. package/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts +42 -0
  959. package/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts.map +1 -0
  960. package/src/components/variants/minimal/AccessibleMinimalPlayer.js +322 -0
  961. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts +44 -0
  962. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts.map +1 -0
  963. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +280 -0
  964. package/src/components/variants/minimal/MinimalControls.d.ts +19 -0
  965. package/src/components/variants/minimal/MinimalControls.d.ts.map +1 -0
  966. package/src/components/variants/minimal/MinimalControls.js +19 -0
  967. package/src/components/variants/minimal/MinimalLoading.d.ts +10 -0
  968. package/src/components/variants/minimal/MinimalLoading.d.ts.map +1 -0
  969. package/src/components/variants/minimal/MinimalLoading.js +6 -0
  970. package/src/components/variants/minimal/MinimalMediaPlayer.d.ts +38 -0
  971. package/src/components/variants/minimal/MinimalMediaPlayer.d.ts.map +1 -0
  972. package/src/components/variants/minimal/MinimalMediaPlayer.js +135 -0
  973. package/src/components/variants/minimal/MinimalOverlay.d.ts +11 -0
  974. package/src/components/variants/minimal/MinimalOverlay.d.ts.map +1 -0
  975. package/src/components/variants/minimal/MinimalOverlay.js +15 -0
  976. package/src/components/variants/minimal/MinimalPlayButton.d.ts +9 -0
  977. package/src/components/variants/minimal/MinimalPlayButton.d.ts.map +1 -0
  978. package/src/components/variants/minimal/MinimalPlayButton.js +29 -0
  979. package/src/components/variants/minimal/MinimalSeekBar.d.ts +7 -0
  980. package/src/components/variants/minimal/MinimalSeekBar.d.ts.map +1 -0
  981. package/src/components/variants/minimal/MinimalSeekBar.js +73 -0
  982. package/src/components/variants/minimal/MinimalVolumeControl.d.ts +7 -0
  983. package/src/components/variants/minimal/MinimalVolumeControl.d.ts.map +1 -0
  984. package/src/components/variants/minimal/MinimalVolumeControl.js +29 -0
  985. package/src/components/variants/minimal/SimpleMinimalPlayer.d.ts +22 -0
  986. package/src/components/variants/minimal/SimpleMinimalPlayer.d.ts.map +1 -0
  987. package/src/components/variants/minimal/SimpleMinimalPlayer.js +51 -0
  988. package/src/components/variants/minimal/SimpleMinimalPlayer.tsx +0 -1
  989. package/src/components/variants/minimal/components/CenterPlayButton.d.ts +7 -0
  990. package/src/components/variants/minimal/components/CenterPlayButton.d.ts.map +1 -0
  991. package/src/components/variants/minimal/components/CenterPlayButton.js +8 -0
  992. package/src/components/variants/minimal/components/ControlBar.d.ts +43 -0
  993. package/src/components/variants/minimal/components/ControlBar.d.ts.map +1 -0
  994. package/src/components/variants/minimal/components/ControlBar.js +10 -0
  995. package/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts +24 -0
  996. package/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts.map +1 -0
  997. package/src/components/variants/minimal/components/EnhancedSettingsMenu.js +68 -0
  998. package/src/components/variants/minimal/components/PlaybackControls.d.ts +9 -0
  999. package/src/components/variants/minimal/components/PlaybackControls.d.ts.map +1 -0
  1000. package/src/components/variants/minimal/components/PlaybackControls.js +9 -0
  1001. package/src/components/variants/minimal/components/RightControls.d.ts +25 -0
  1002. package/src/components/variants/minimal/components/RightControls.d.ts.map +1 -0
  1003. package/src/components/variants/minimal/components/RightControls.js +40 -0
  1004. package/src/components/variants/minimal/components/SeekBar.d.ts +11 -0
  1005. package/src/components/variants/minimal/components/SeekBar.d.ts.map +1 -0
  1006. package/src/components/variants/minimal/components/SeekBar.js +43 -0
  1007. package/src/components/variants/minimal/components/SettingsDropdown.d.ts +9 -0
  1008. package/src/components/variants/minimal/components/SettingsDropdown.d.ts.map +1 -0
  1009. package/src/components/variants/minimal/components/SettingsDropdown.js +18 -0
  1010. package/src/components/variants/minimal/components/SubtitleDisplay.d.ts +7 -0
  1011. package/src/components/variants/minimal/components/SubtitleDisplay.d.ts.map +1 -0
  1012. package/src/components/variants/minimal/components/SubtitleDisplay.js +6 -0
  1013. package/src/components/variants/minimal/components/TimeDisplay.d.ts +7 -0
  1014. package/src/components/variants/minimal/components/TimeDisplay.d.ts.map +1 -0
  1015. package/src/components/variants/minimal/components/TimeDisplay.js +5 -0
  1016. package/src/components/variants/minimal/components/VideoElement.d.ts +13 -0
  1017. package/src/components/variants/minimal/components/VideoElement.d.ts.map +1 -0
  1018. package/src/components/variants/minimal/components/VideoElement.js +4 -0
  1019. package/src/components/variants/minimal/components/VolumeControl.d.ts +13 -0
  1020. package/src/components/variants/minimal/components/VolumeControl.d.ts.map +1 -0
  1021. package/src/components/variants/minimal/components/VolumeControl.js +99 -0
  1022. package/src/components/variants/minimal/index.d.ts +17 -0
  1023. package/src/components/variants/minimal/index.d.ts.map +1 -0
  1024. package/src/components/variants/minimal/index.js +8 -0
  1025. package/src/components/video-player.d.ts +3 -0
  1026. package/src/components/video-player.d.ts.map +1 -0
  1027. package/src/components/video-player.js +38 -0
  1028. package/src/context/error-handling.d.ts +72 -0
  1029. package/src/context/error-handling.d.ts.map +1 -0
  1030. package/src/context/error-handling.js +300 -0
  1031. package/src/context/media-context.d.ts +104 -0
  1032. package/src/context/media-context.d.ts.map +1 -0
  1033. package/src/context/media-context.js +121 -0
  1034. package/src/context/media-provider.d.ts +26 -0
  1035. package/src/context/media-provider.d.ts.map +1 -0
  1036. package/src/context/media-provider.js +164 -0
  1037. package/src/context/media-store.d.ts +33 -0
  1038. package/src/context/media-store.d.ts.map +1 -0
  1039. package/src/context/media-store.js +273 -0
  1040. package/src/context/persistence.d.ts +83 -0
  1041. package/src/context/persistence.d.ts.map +1 -0
  1042. package/src/context/persistence.js +356 -0
  1043. package/src/core/events/event-system.d.ts +170 -0
  1044. package/src/core/events/event-system.d.ts.map +1 -0
  1045. package/src/core/events/event-system.js +288 -0
  1046. package/src/core/events/hooks.d.ts +33 -0
  1047. package/src/core/events/hooks.d.ts.map +1 -0
  1048. package/src/core/events/hooks.js +198 -0
  1049. package/src/core/events/index.d.ts +6 -0
  1050. package/src/core/events/index.d.ts.map +1 -0
  1051. package/src/core/events/index.js +7 -0
  1052. package/src/core/events/middleware.d.ts +39 -0
  1053. package/src/core/events/middleware.d.ts.map +1 -0
  1054. package/src/core/events/middleware.js +219 -0
  1055. package/src/core/index.d.ts +8 -0
  1056. package/src/core/index.d.ts.map +1 -0
  1057. package/src/core/index.js +15 -0
  1058. package/src/core/optimization/bundle-optimizer.d.ts +44 -0
  1059. package/src/core/optimization/bundle-optimizer.d.ts.map +1 -0
  1060. package/src/core/optimization/bundle-optimizer.js +217 -0
  1061. package/src/core/performance/cicd.d.ts +8 -0
  1062. package/src/core/performance/cicd.d.ts.map +1 -0
  1063. package/src/core/performance/cicd.js +83 -0
  1064. package/src/core/performance/index.d.ts +10 -0
  1065. package/src/core/performance/index.d.ts.map +1 -0
  1066. package/src/core/performance/index.js +14 -0
  1067. package/src/core/performance/media-loading-optimizer.d.ts +105 -0
  1068. package/src/core/performance/media-loading-optimizer.d.ts.map +1 -0
  1069. package/src/core/performance/media-loading-optimizer.js +404 -0
  1070. package/src/core/performance/performance-budgets.d.ts +68 -0
  1071. package/src/core/performance/performance-budgets.d.ts.map +1 -0
  1072. package/src/core/performance/performance-budgets.js +326 -0
  1073. package/src/core/performance/performance-monitor.d.ts +95 -0
  1074. package/src/core/performance/performance-monitor.d.ts.map +1 -0
  1075. package/src/core/performance/performance-monitor.js +297 -0
  1076. package/src/core/performance/performance-testing.d.ts +69 -0
  1077. package/src/core/performance/performance-testing.d.ts.map +1 -0
  1078. package/src/core/performance/performance-testing.js +314 -0
  1079. package/src/core/plugins/base-plugin.d.ts +52 -0
  1080. package/src/core/plugins/base-plugin.d.ts.map +1 -0
  1081. package/src/core/plugins/base-plugin.js +151 -0
  1082. package/src/core/plugins/enhanced-plugin-system.d.ts +160 -0
  1083. package/src/core/plugins/enhanced-plugin-system.d.ts.map +1 -0
  1084. package/src/core/plugins/enhanced-plugin-system.js +305 -0
  1085. package/src/core/plugins/examples/analytics-plugin.d.ts +30 -0
  1086. package/src/core/plugins/examples/analytics-plugin.d.ts.map +1 -0
  1087. package/src/core/plugins/examples/analytics-plugin.js +191 -0
  1088. package/src/core/plugins/index.d.ts +8 -0
  1089. package/src/core/plugins/index.d.ts.map +1 -0
  1090. package/src/core/plugins/index.js +9 -0
  1091. package/src/core/plugins/registry.d.ts +31 -0
  1092. package/src/core/plugins/registry.d.ts.map +1 -0
  1093. package/src/core/plugins/registry.js +261 -0
  1094. package/src/core/plugins/types.d.ts +101 -0
  1095. package/src/core/plugins/types.d.ts.map +1 -0
  1096. package/src/core/plugins/types.js +31 -0
  1097. package/src/core/plugins/utils.d.ts +38 -0
  1098. package/src/core/plugins/utils.d.ts.map +1 -0
  1099. package/src/core/plugins/utils.js +274 -0
  1100. package/src/core/progressive-loading.d.ts +88 -0
  1101. package/src/core/progressive-loading.d.ts.map +1 -0
  1102. package/src/core/progressive-loading.js +239 -0
  1103. package/src/core/providers/enhanced-hls-provider.d.ts +50 -0
  1104. package/src/core/providers/enhanced-hls-provider.d.ts.map +1 -0
  1105. package/src/core/providers/enhanced-hls-provider.js +273 -0
  1106. package/src/core/providers/service-provider.d.ts +49 -0
  1107. package/src/core/providers/service-provider.d.ts.map +1 -0
  1108. package/src/core/providers/service-provider.js +105 -0
  1109. package/src/core/utils.d.ts +25 -0
  1110. package/src/core/utils.d.ts.map +1 -0
  1111. package/src/core/utils.js +21 -0
  1112. package/src/features/media-session/media-session-manager.d.ts +132 -0
  1113. package/src/features/media-session/media-session-manager.d.ts.map +1 -0
  1114. package/src/features/media-session/media-session-manager.js +331 -0
  1115. package/src/features/picture-in-picture/pip-manager.d.ts +94 -0
  1116. package/src/features/picture-in-picture/pip-manager.d.ts.map +1 -0
  1117. package/src/features/picture-in-picture/pip-manager.js +353 -0
  1118. package/src/features/playlist/playlist-manager.d.ts +208 -0
  1119. package/src/features/playlist/playlist-manager.d.ts.map +1 -0
  1120. package/src/features/playlist/playlist-manager.js +475 -0
  1121. package/src/features/subtitles/subtitle-manager.d.ts +136 -0
  1122. package/src/features/subtitles/subtitle-manager.d.ts.map +1 -0
  1123. package/src/features/subtitles/subtitle-manager.js +335 -0
  1124. package/src/features/subtitles/subtitle-parser.d.ts +60 -0
  1125. package/src/features/subtitles/subtitle-parser.d.ts.map +1 -0
  1126. package/src/features/subtitles/subtitle-parser.js +217 -0
  1127. package/src/features/thumbnails/thumbnail-generator.d.ts +136 -0
  1128. package/src/features/thumbnails/thumbnail-generator.d.ts.map +1 -0
  1129. package/src/features/thumbnails/thumbnail-generator.js +388 -0
  1130. package/src/hooks/accessibility/index.d.ts +5 -0
  1131. package/src/hooks/accessibility/index.d.ts.map +1 -0
  1132. package/src/hooks/accessibility/index.js +4 -0
  1133. package/src/hooks/accessibility/use-accessibility-preferences.d.ts +14 -0
  1134. package/src/hooks/accessibility/use-accessibility-preferences.d.ts.map +1 -0
  1135. package/src/hooks/accessibility/use-accessibility-preferences.js +156 -0
  1136. package/src/hooks/accessibility/use-focus-management.d.ts +31 -0
  1137. package/src/hooks/accessibility/use-focus-management.d.ts.map +1 -0
  1138. package/src/hooks/accessibility/use-focus-management.js +142 -0
  1139. package/src/hooks/accessibility/use-keyboard-shortcuts.d.ts +38 -0
  1140. package/src/hooks/accessibility/use-keyboard-shortcuts.d.ts.map +1 -0
  1141. package/src/hooks/accessibility/use-keyboard-shortcuts.js +101 -0
  1142. package/src/hooks/accessibility/use-screen-reader.d.ts +22 -0
  1143. package/src/hooks/accessibility/use-screen-reader.d.ts.map +1 -0
  1144. package/src/hooks/accessibility/use-screen-reader.js +148 -0
  1145. package/src/hooks/core/index.d.ts +18 -0
  1146. package/src/hooks/core/index.d.ts.map +1 -0
  1147. package/src/hooks/core/index.js +19 -0
  1148. package/src/hooks/legacy.d.ts +18 -0
  1149. package/src/hooks/legacy.d.ts.map +1 -0
  1150. package/src/hooks/legacy.js +17 -0
  1151. package/src/hooks/use-enhanced-media-player.d.ts +88 -0
  1152. package/src/hooks/use-enhanced-media-player.d.ts.map +1 -0
  1153. package/src/hooks/use-enhanced-media-player.js +395 -0
  1154. package/src/hooks/use-intelligent-preloading.d.ts +66 -0
  1155. package/src/hooks/use-intelligent-preloading.d.ts.map +1 -0
  1156. package/src/hooks/use-intelligent-preloading.js +258 -0
  1157. package/src/hooks/use-keyboard-controls.d.ts +13 -0
  1158. package/src/hooks/use-keyboard-controls.d.ts.map +1 -0
  1159. package/src/hooks/use-keyboard-controls.js +83 -0
  1160. package/src/hooks/use-media-actions.d.ts +62 -0
  1161. package/src/hooks/use-media-actions.d.ts.map +1 -0
  1162. package/src/hooks/use-media-actions.js +121 -0
  1163. package/src/hooks/use-media-metadata.d.ts +11 -0
  1164. package/src/hooks/use-media-metadata.d.ts.map +1 -0
  1165. package/src/hooks/use-media-metadata.js +74 -0
  1166. package/src/hooks/use-media-optimistic.d.ts +36 -0
  1167. package/src/hooks/use-media-optimistic.d.ts.map +1 -0
  1168. package/src/hooks/use-media-optimistic.js +205 -0
  1169. package/src/hooks/use-media-player.d.ts +31 -0
  1170. package/src/hooks/use-media-player.d.ts.map +1 -0
  1171. package/src/hooks/use-media-player.js +251 -0
  1172. package/src/hooks/use-media-state.d.ts +17 -0
  1173. package/src/hooks/use-media-state.d.ts.map +1 -0
  1174. package/src/hooks/use-media-state.js +162 -0
  1175. package/src/hooks/use-memory-optimization.d.ts +40 -0
  1176. package/src/hooks/use-memory-optimization.d.ts.map +1 -0
  1177. package/src/hooks/use-memory-optimization.js +288 -0
  1178. package/src/hooks/use-optimistic-controls.d.ts +22 -0
  1179. package/src/hooks/use-optimistic-controls.d.ts.map +1 -0
  1180. package/src/hooks/use-optimistic-controls.js +60 -0
  1181. package/src/hooks/use-optimized-media.d.ts +46 -0
  1182. package/src/hooks/use-optimized-media.d.ts.map +1 -0
  1183. package/src/hooks/use-optimized-media.js +211 -0
  1184. package/src/hooks/use-touch-gestures.d.ts +47 -0
  1185. package/src/hooks/use-touch-gestures.d.ts.map +1 -0
  1186. package/src/hooks/use-touch-gestures.js +289 -0
  1187. package/src/hooks/useEnhancedSubtitles.d.ts +39 -0
  1188. package/src/hooks/useEnhancedSubtitles.d.ts.map +1 -0
  1189. package/src/hooks/useEnhancedSubtitles.js +205 -0
  1190. package/src/hooks/useKeyboardShortcuts.d.ts +10 -0
  1191. package/src/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  1192. package/src/hooks/useKeyboardShortcuts.js +59 -0
  1193. package/src/hooks/useMediaControls.d.ts +9 -0
  1194. package/src/hooks/useMediaControls.d.ts.map +1 -0
  1195. package/src/hooks/useMediaControls.js +44 -0
  1196. package/src/hooks/useScreenshot.d.ts +4 -0
  1197. package/src/hooks/useScreenshot.d.ts.map +1 -0
  1198. package/src/hooks/useScreenshot.js +56 -0
  1199. package/src/hooks/useSubtitles.d.ts +8 -0
  1200. package/src/hooks/useSubtitles.d.ts.map +1 -0
  1201. package/src/hooks/useSubtitles.js +73 -0
  1202. package/src/hooks/useVideoPlayer.d.ts +32 -0
  1203. package/src/hooks/useVideoPlayer.d.ts.map +1 -0
  1204. package/src/hooks/useVideoPlayer.js +184 -0
  1205. package/src/icons/components/FullscreenIcon.d.ts +3 -0
  1206. package/src/icons/components/FullscreenIcon.d.ts.map +1 -0
  1207. package/src/icons/components/FullscreenIcon.js +11 -0
  1208. package/src/icons/components/SettingsIcon.d.ts +3 -0
  1209. package/src/icons/components/SettingsIcon.d.ts.map +1 -0
  1210. package/src/icons/components/SettingsIcon.js +11 -0
  1211. package/src/icons/components/animated/LoadingIcon.d.ts +3 -0
  1212. package/src/icons/components/animated/LoadingIcon.d.ts.map +1 -0
  1213. package/src/icons/components/animated/LoadingIcon.js +11 -0
  1214. package/src/icons/components/animated/PlayPauseIcon.d.ts +7 -0
  1215. package/src/icons/components/animated/PlayPauseIcon.d.ts.map +1 -0
  1216. package/src/icons/components/animated/PlayPauseIcon.js +9 -0
  1217. package/src/icons/components/media/PauseIcon.d.ts +3 -0
  1218. package/src/icons/components/media/PauseIcon.d.ts.map +1 -0
  1219. package/src/icons/components/media/PauseIcon.js +12 -0
  1220. package/src/icons/components/media/PlayIcon.d.ts +3 -0
  1221. package/src/icons/components/media/PlayIcon.d.ts.map +1 -0
  1222. package/src/icons/components/media/PlayIcon.js +12 -0
  1223. package/src/icons/components/volume/VolumeIcon.d.ts +3 -0
  1224. package/src/icons/components/volume/VolumeIcon.d.ts.map +1 -0
  1225. package/src/icons/components/volume/VolumeIcon.js +11 -0
  1226. package/src/icons/components/volume/VolumeOffIcon.d.ts +3 -0
  1227. package/src/icons/components/volume/VolumeOffIcon.d.ts.map +1 -0
  1228. package/src/icons/components/volume/VolumeOffIcon.js +11 -0
  1229. package/src/icons/index.d.ts +28 -0
  1230. package/src/icons/index.d.ts.map +1 -0
  1231. package/src/icons/index.js +45 -0
  1232. package/src/icons/provider.d.ts +13 -0
  1233. package/src/icons/provider.d.ts.map +1 -0
  1234. package/src/icons/provider.js +37 -0
  1235. package/src/icons/types.d.ts +18 -0
  1236. package/src/icons/types.d.ts.map +1 -0
  1237. package/src/icons/types.js +1 -0
  1238. package/src/index-enhanced.d.ts +13 -0
  1239. package/src/index-enhanced.d.ts.map +1 -0
  1240. package/src/index-enhanced.js +16 -0
  1241. package/src/index-legacy.d.ts +81 -0
  1242. package/src/index-legacy.d.ts.map +1 -0
  1243. package/src/index-legacy.js +97 -0
  1244. package/src/index.d.ts +38 -0
  1245. package/src/index.d.ts.map +1 -0
  1246. package/src/index.js +90 -0
  1247. package/src/index.minimal.d.ts +2 -0
  1248. package/src/index.minimal.d.ts.map +1 -0
  1249. package/src/index.minimal.js +3 -0
  1250. package/src/index.minimal.ts +4 -0
  1251. package/src/lib/deprecation.d.ts +7 -0
  1252. package/src/lib/deprecation.d.ts.map +1 -0
  1253. package/src/lib/deprecation.js +31 -0
  1254. package/src/lib/format-time.d.ts +9 -0
  1255. package/src/lib/format-time.d.ts.map +1 -0
  1256. package/src/lib/format-time.js +32 -0
  1257. package/src/lib/index.d.ts +3 -0
  1258. package/src/lib/index.d.ts.map +1 -0
  1259. package/src/lib/index.js +3 -0
  1260. package/src/lib/utils.d.ts +3 -0
  1261. package/src/lib/utils.d.ts.map +1 -0
  1262. package/src/lib/utils.js +5 -0
  1263. package/src/test/setup.d.ts +2 -0
  1264. package/src/test/setup.d.ts.map +1 -0
  1265. package/src/test/setup.js +65 -0
  1266. package/src/types/events.d.ts +41 -0
  1267. package/src/types/events.d.ts.map +1 -0
  1268. package/src/types/events.js +2 -0
  1269. package/src/types/formats.d.ts +45 -0
  1270. package/src/types/formats.d.ts.map +1 -0
  1271. package/src/types/formats.js +63 -0
  1272. package/src/types/index.d.ts +128 -0
  1273. package/src/types/index.d.ts.map +1 -0
  1274. package/src/types/index.js +4 -0
  1275. package/dist/context/media.js +0 -2
  1276. package/dist/context/media.js.map +0 -1
  1277. package/dist/context/media.mjs +0 -15
  1278. package/dist/context/media.mjs.map +0 -1
  1279. package/dist/context/store.js +0 -2
  1280. package/dist/context/store.js.map +0 -1
  1281. package/dist/context/store.mjs +0 -5
  1282. package/dist/context/store.mjs.map +0 -1
  1283. package/dist/context-BMteAJDN.js +0 -1140
  1284. package/dist/context-BMteAJDN.js.map +0 -1
  1285. package/dist/context-DCJ_scmO.cjs +0 -23
  1286. package/dist/context-DCJ_scmO.cjs.map +0 -1
  1287. package/dist/core-events-B5W_j8yU.js +0 -480
  1288. package/dist/core-events-B5W_j8yU.js.map +0 -1
  1289. package/dist/core-events-CN0-Vhhq.cjs +0 -2
  1290. package/dist/core-events-CN0-Vhhq.cjs.map +0 -1
  1291. package/dist/core-plugins-Bq9KLany.js +0 -696
  1292. package/dist/core-plugins-Bq9KLany.js.map +0 -1
  1293. package/dist/core-plugins-CPDSHMiQ.cjs +0 -2
  1294. package/dist/core-plugins-CPDSHMiQ.cjs.map +0 -1
  1295. package/dist/core.js +0 -37
  1296. package/dist/core.js.map +0 -1
  1297. package/dist/core.mjs +0 -1217
  1298. package/dist/core.mjs.map +0 -1
  1299. package/dist/enhanced-components-DHv0MFvG.js +0 -1073
  1300. package/dist/enhanced-components-DHv0MFvG.js.map +0 -1
  1301. package/dist/enhanced-components-DTIObgB7.cjs +0 -2
  1302. package/dist/enhanced-components-DTIObgB7.cjs.map +0 -1
  1303. package/dist/hooks-C_r8wexn.cjs +0 -4
  1304. package/dist/hooks-C_r8wexn.cjs.map +0 -1
  1305. package/dist/hooks-Da2wVXlF.js +0 -1630
  1306. package/dist/hooks-Da2wVXlF.js.map +0 -1
  1307. package/dist/index.js.map +0 -1
  1308. package/dist/index.mjs.map +0 -1
  1309. package/dist/minimal-components-DSq5sQpy.js +0 -2002
  1310. package/dist/minimal-components-DSq5sQpy.js.map +0 -1
  1311. package/dist/minimal-components-DflWiihN.cjs +0 -2
  1312. package/dist/minimal-components-DflWiihN.cjs.map +0 -1
  1313. package/dist/minimal-components.css +0 -1
  1314. package/dist/performance-monitor-CUW6f5ll.cjs +0 -2
  1315. package/dist/performance-monitor-CUW6f5ll.cjs.map +0 -1
  1316. package/dist/performance-monitor-rMW1RgV3.js +0 -302
  1317. package/dist/performance-monitor-rMW1RgV3.js.map +0 -1
  1318. package/dist/utils-BnscpYYd.js +0 -2798
  1319. package/dist/utils-BnscpYYd.js.map +0 -1
  1320. package/dist/utils-D_czS_0K.cjs +0 -9
  1321. package/dist/utils-D_czS_0K.cjs.map +0 -1
  1322. package/dist/utils.js +0 -2
  1323. package/dist/utils.js.map +0 -1
  1324. package/dist/utils.mjs +0 -7
  1325. package/dist/utils.mjs.map +0 -1
  1326. /package/dist/{mona-loading.gif → src/assets/mona-loading.gif} +0 -0
@@ -1,1630 +0,0 @@
1
- import * as Y from "react";
2
- import z, { useEffect as $, useOptimistic as se, useRef as G, useTransition as ue, useCallback as B, useMemo as ae, useState as K } from "react";
3
- import { M as U, c as pe, b as q } from "./context-BMteAJDN.js";
4
- import { s as he } from "./utils-BnscpYYd.js";
5
- function ge({
6
- enabled: e = !0,
7
- state: t,
8
- controls: r,
9
- seekStep: s = 10,
10
- volumeStep: d = 0.1
11
- }) {
12
- const u = (a) => {
13
- if (!e) return;
14
- const l = a.target;
15
- if (!(l.tagName === "INPUT" || l.tagName === "TEXTAREA" || l.contentEditable === "true"))
16
- switch (a.code) {
17
- case "Space":
18
- case "KeyK":
19
- a.preventDefault(), r.toggle();
20
- break;
21
- case "KeyM":
22
- a.preventDefault(), r.toggleMute();
23
- break;
24
- case "KeyF":
25
- a.preventDefault(), r.toggleFullscreen();
26
- break;
27
- case "ArrowLeft":
28
- a.preventDefault(), r.seek(Math.max(0, t.currentTime - s));
29
- break;
30
- case "ArrowRight":
31
- a.preventDefault(), r.seek(Math.min(t.duration, t.currentTime + s));
32
- break;
33
- case "ArrowUp":
34
- a.preventDefault(), r.setVolume(Math.min(1, t.volume + d));
35
- break;
36
- case "ArrowDown":
37
- a.preventDefault(), r.setVolume(Math.max(0, t.volume - d));
38
- break;
39
- case "Digit0":
40
- case "Digit1":
41
- case "Digit2":
42
- case "Digit3":
43
- case "Digit4":
44
- case "Digit5":
45
- case "Digit6":
46
- case "Digit7":
47
- case "Digit8":
48
- case "Digit9":
49
- a.preventDefault();
50
- const D = parseInt(a.code.replace("Digit", ""), 10) / 10;
51
- r.seek(t.duration * D);
52
- break;
53
- case "Home":
54
- a.preventDefault(), r.seek(0);
55
- break;
56
- case "End":
57
- a.preventDefault(), r.seek(t.duration);
58
- break;
59
- }
60
- };
61
- return $(() => {
62
- if (e)
63
- return document.addEventListener("keydown", u), () => {
64
- document.removeEventListener("keydown", u);
65
- };
66
- }, [e, u]), {
67
- handleKeyDown: u
68
- };
69
- }
70
- const Ce = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
71
- __proto__: null,
72
- useKeyboardControls: ge
73
- }, Symbol.toStringTag, { value: "Module" }));
74
- function ve(e, t) {
75
- if (!t.optimistic) return e;
76
- switch (t.type) {
77
- case "PLAY":
78
- return { ...e, isPlaying: !0, error: null };
79
- case "PAUSE":
80
- return { ...e, isPlaying: !1 };
81
- case "SEEK":
82
- return { ...e, currentTime: t.detail };
83
- case "SET_VOLUME":
84
- return { ...e, volume: Math.max(0, Math.min(1, t.detail)) };
85
- case "MUTE":
86
- return { ...e, isMuted: !0 };
87
- case "UNMUTE":
88
- return { ...e, isMuted: !1 };
89
- case "TOGGLE_MUTE":
90
- return { ...e, isMuted: !e.isMuted };
91
- case "ENTER_FULLSCREEN":
92
- return { ...e, isFullscreen: !0 };
93
- case "EXIT_FULLSCREEN":
94
- return { ...e, isFullscreen: !1 };
95
- case "SET_PLAYBACK_RATE":
96
- return { ...e, playbackRate: t.detail };
97
- case "TOGGLE_SUBTITLES":
98
- return { ...e, subtitlesShowing: !e.subtitlesShowing };
99
- case "PREVIEW_TIME":
100
- return { ...e, previewTime: t.detail };
101
- case "CLEAR_PREVIEW":
102
- return {
103
- ...e,
104
- previewTime: null,
105
- previewImage: null,
106
- previewCoords: null
107
- };
108
- default:
109
- return e;
110
- }
111
- }
112
- function we(e) {
113
- const t = z.useSyncExternalStore(
114
- e.subscribe,
115
- e.getState,
116
- e.getState
117
- ), [r, s] = se(
118
- t,
119
- ve
120
- ), d = z.useCallback(async (l) => {
121
- l.optimistic && s(l), await e.dispatchOptimistic(l);
122
- }, [e, s]), u = z.useMemo(() => ({
123
- // Play/Pause with immediate feedback
124
- togglePlayPause: async () => {
125
- const l = {
126
- type: r.isPlaying ? "PAUSE" : "PLAY",
127
- optimistic: !0,
128
- timestamp: Date.now()
129
- };
130
- await d(l);
131
- },
132
- // Volume control with immediate slider feedback
133
- setVolumeOptimistic: async (l) => {
134
- const b = {
135
- type: "SET_VOLUME",
136
- detail: Math.max(0, Math.min(1, l)),
137
- optimistic: !0,
138
- timestamp: Date.now()
139
- };
140
- await d(b);
141
- },
142
- // Seek with immediate scrub feedback
143
- seekOptimistic: async (l) => {
144
- const b = {
145
- type: "SEEK",
146
- detail: l,
147
- optimistic: !0,
148
- timestamp: Date.now()
149
- };
150
- await d(b);
151
- },
152
- // Mute toggle with immediate icon change
153
- toggleMuteOptimistic: async () => {
154
- const l = {
155
- type: "TOGGLE_MUTE",
156
- optimistic: !0,
157
- timestamp: Date.now()
158
- };
159
- await d(l);
160
- },
161
- // Fullscreen toggle with immediate layout change
162
- toggleFullscreenOptimistic: async () => {
163
- const l = {
164
- type: r.isFullscreen ? "EXIT_FULLSCREEN" : "ENTER_FULLSCREEN",
165
- optimistic: !0,
166
- timestamp: Date.now()
167
- };
168
- await d(l);
169
- },
170
- // Playback rate with immediate feedback
171
- setPlaybackRateOptimistic: async (l) => {
172
- const b = {
173
- type: "SET_PLAYBACK_RATE",
174
- detail: l,
175
- optimistic: !0,
176
- timestamp: Date.now()
177
- };
178
- await d(b);
179
- },
180
- // Subtitle toggle with immediate visibility change
181
- toggleSubtitlesOptimistic: async () => {
182
- const l = {
183
- type: "TOGGLE_SUBTITLES",
184
- optimistic: !0,
185
- timestamp: Date.now()
186
- };
187
- await d(l);
188
- }
189
- }), [r, d]), a = z.useMemo(() => ({
190
- isPlaying: r.isPlaying,
191
- currentTime: r.currentTime,
192
- volume: r.volume,
193
- isMuted: r.isMuted,
194
- isFullscreen: r.isFullscreen,
195
- playbackRate: r.playbackRate,
196
- subtitlesShowing: r.subtitlesShowing,
197
- previewTime: r.previewTime,
198
- // Computed values
199
- progress: r.duration > 0 ? r.currentTime / r.duration : 0,
200
- formattedTime: le(r.currentTime),
201
- formattedDuration: le(r.duration),
202
- // State checks
203
- canPlay: !r.isLoading && !r.error,
204
- hasError: !!r.error,
205
- isBuffering: r.isLoading
206
- }), [r]);
207
- return {
208
- state: r,
209
- actualState: t,
210
- ...a,
211
- ...u,
212
- dispatchOptimistic: d
213
- };
214
- }
215
- function le(e) {
216
- if (!e || !isFinite(e)) return "0:00";
217
- const t = Math.floor(e / 60), r = Math.floor(e % 60), s = Math.floor(t / 60);
218
- return s > 0 ? `${s}:${String(t % 60).padStart(2, "0")}:${String(r).padStart(2, "0")}` : `${t}:${String(r).padStart(2, "0")}`;
219
- }
220
- function _(e, t) {
221
- return ((r, s = !1) => {
222
- const d = {
223
- type: e,
224
- detail: r,
225
- optimistic: s,
226
- timestamp: Date.now()
227
- };
228
- return s ? t.dispatchOptimistic(d) : (t.dispatch(d), Promise.resolve());
229
- });
230
- }
231
- function Ee(e) {
232
- const [t, r] = z.useState(e.getActionState());
233
- return z.useEffect(() => e.subscribe(() => {
234
- const d = e.getActionState();
235
- r(
236
- (u) => JSON.stringify(u) !== JSON.stringify(d) ? d : u
237
- );
238
- }), [e]), t;
239
- }
240
- function ye(e) {
241
- const t = z.useMemo(() => ({
242
- // Playback actions
243
- play: _(U.PLAY, e),
244
- pause: _(U.PAUSE, e),
245
- seek: _(U.SEEK, e),
246
- // Volume actions
247
- setVolume: _(U.SET_VOLUME, e),
248
- mute: _(U.MUTE, e),
249
- unmute: _(U.UNMUTE, e),
250
- toggleMute: _(U.TOGGLE_MUTE, e),
251
- // Media state actions
252
- setDuration: _(U.SET_DURATION, e),
253
- setCurrentTime: _(U.SET_CURRENT_TIME, e),
254
- setBuffered: _(U.SET_BUFFERED, e),
255
- setLoading: _(U.SET_LOADING, e),
256
- setError: _(U.SET_ERROR, e),
257
- // Display actions
258
- enterFullscreen: _(U.ENTER_FULLSCREEN, e),
259
- exitFullscreen: _(U.EXIT_FULLSCREEN, e),
260
- enterPiP: _(U.ENTER_PIP, e),
261
- exitPiP: _(U.EXIT_PIP, e),
262
- // Advanced actions
263
- setPlaybackRate: _(U.SET_PLAYBACK_RATE, e),
264
- setSubtitleTrack: _(U.SET_SUBTITLE_TRACK, e),
265
- setRendition: _(U.SET_RENDITION, e),
266
- toggleSubtitles: _(U.TOGGLE_SUBTITLES, e),
267
- // Preview actions
268
- previewTime: _(U.PREVIEW_TIME, e),
269
- clearPreview: _(U.CLEAR_PREVIEW, e)
270
- }), [e]), r = Ee(e), s = z.useMemo(() => ({
271
- // These actions benefit from immediate UI feedback
272
- togglePlayPause: async (u) => {
273
- u ? await t.pause(!0) : await t.play(!0);
274
- },
275
- seekWithPreview: async (u) => {
276
- await t.previewTime(u, !0), await t.seek(u, !0);
277
- },
278
- adjustVolume: async (u, a) => {
279
- const l = Math.max(0, Math.min(1, a + u));
280
- await t.setVolume(l, !0);
281
- },
282
- toggleFullscreenOptimistic: async (u) => {
283
- u ? await t.exitFullscreen(!0) : await t.enterFullscreen(!0);
284
- }
285
- }), [t]), d = z.useCallback(async () => {
286
- const { lastAction: u } = r;
287
- u && r.error && await e.dispatchOptimistic({
288
- ...u,
289
- retryCount: (u.retryCount || 0) + 1
290
- });
291
- }, [e, r]);
292
- return {
293
- ...t,
294
- ...s,
295
- actionState: r,
296
- retryLastAction: d,
297
- isLoading: r.pending,
298
- hasError: !!r.error,
299
- errorMessage: r.error,
300
- retryCount: r.retryCount
301
- };
302
- }
303
- function Re(e) {
304
- const t = G(null), r = G(null), [s, d] = ue(), [u, a] = ue();
305
- z.useRef(0);
306
- const l = z.useRef(0), b = z.useRef(0);
307
- G();
308
- const D = G(0), F = pe(), y = "getOptimisticState" in F, n = q((v) => v.isPlaying), w = q((v) => v.currentTime), g = q((v) => v.duration), o = q((v) => v.volume), f = q((v) => v.isMuted), M = q((v) => v.isLoading), m = q((v) => v.isBuffering), i = q((v) => v.error), p = q((v) => v.buffered), h = q((v) => v.isFullscreen), T = F, S = y ? we(T) : null, E = y ? ye(T) : null, [H, P] = z.useState({
309
- frameRate: 0,
310
- averageRenderTime: 0,
311
- droppedFrames: 0,
312
- bufferHealth: 0
313
- }), [R, k] = se(o, (v, I) => Math.max(0, Math.min(1, I)));
314
- se(w, (v, I) => Math.max(0, Math.min(g || 0, I))), $(() => {
315
- const v = t.current;
316
- if (!v) return;
317
- const I = {
318
- volume: e.volume,
319
- muted: e.muted,
320
- autoplay: e.autoPlay,
321
- loop: e.loop,
322
- preload: e.preload,
323
- crossOrigin: e.crossOrigin
324
- };
325
- Object.entries(I).forEach(([W, X]) => {
326
- X !== void 0 && (v[W] = X);
327
- }), v.setAttribute("preload", e.preloadStrategy === "eager" ? "auto" : "metadata"), e.bufferingStrategy === "aggressive" && v.setAttribute("buffered", "auto"), v instanceof HTMLVideoElement && (v.style.willChange = "transform", v.style.transform = "translateZ(0)");
328
- }, [
329
- e.volume,
330
- e.muted,
331
- e.autoPlay,
332
- e.loop,
333
- e.preload,
334
- e.crossOrigin,
335
- e.preloadStrategy,
336
- e.bufferingStrategy
337
- ]);
338
- const L = B(() => {
339
- const v = t.current;
340
- if (!v) return;
341
- const I = performance.now();
342
- if (e.enableTimeUpdateThrottling !== !1) {
343
- if (I - D.current < (e.timeUpdateThrottleMs || 100))
344
- return;
345
- D.current = I;
346
- }
347
- d(() => {
348
- y && E && E.setCurrentTime(v.currentTime);
349
- });
350
- }, [e.enableTimeUpdateThrottling, e.timeUpdateThrottleMs, y, E]), C = B(() => {
351
- d(() => {
352
- y && E && E.play(!0);
353
- }), e.onPlay?.();
354
- }, [y, E, e.onPlay]), A = B(() => {
355
- d(() => {
356
- y && E && E.pause(!0);
357
- }), e.onPause?.();
358
- }, [y, E, e.onPause]), O = B(() => {
359
- const v = t.current;
360
- v && d(() => {
361
- y && E && (E.setVolume(v.volume, !0), v.muted ? E.mute(!0) : E.unmute(!0));
362
- });
363
- }, [y, E]), x = B(() => {
364
- a(() => {
365
- });
366
- }, []), Z = B(() => {
367
- }, []), c = B(() => {
368
- const v = t.current;
369
- v && d(() => {
370
- y && E && E.setBuffered(v.buffered);
371
- });
372
- }, [y, E]), V = B(() => {
373
- const v = performance.now();
374
- if (v - b.current > 0 && (l.current++, l.current >= 60)) {
375
- const W = Math.round(l.current * 1e3 / (v - b.current));
376
- P((X) => ({
377
- ...X,
378
- frameRate: W,
379
- droppedFrames: Math.max(0, 60 - W)
380
- })), l.current = 0, b.current = v;
381
- }
382
- }, []);
383
- $(() => {
384
- const v = t.current;
385
- if (!v) return;
386
- const I = [
387
- { event: "timeupdate", handler: L, passive: !0 },
388
- { event: "play", handler: C },
389
- { event: "pause", handler: A },
390
- { event: "volumechange", handler: O },
391
- { event: "seeking", handler: x },
392
- { event: "seeked", handler: Z },
393
- { event: "progress", handler: c, passive: !0 },
394
- { event: "loadedmetadata", handler: () => V() },
395
- { event: "loadeddata", handler: () => V() }
396
- ];
397
- I.forEach(({ event: ne, handler: re, passive: oe }) => {
398
- const ce = oe ? { passive: !0 } : {};
399
- v.addEventListener(ne, re, ce);
400
- });
401
- let W;
402
- const X = () => {
403
- V(), W = requestAnimationFrame(X);
404
- };
405
- return e.enablePerformanceMonitoring && X(), () => {
406
- I.forEach(({ event: ne, handler: re }) => {
407
- v.removeEventListener(ne, re);
408
- }), W && cancelAnimationFrame(W);
409
- };
410
- }, [
411
- L,
412
- C,
413
- A,
414
- O,
415
- x,
416
- Z,
417
- c,
418
- V,
419
- e.enablePerformanceMonitoring
420
- ]);
421
- const J = ae(() => {
422
- const v = async () => {
423
- const N = t.current;
424
- if (N)
425
- if (y && E)
426
- await E.play(!0);
427
- else
428
- try {
429
- await N.play();
430
- } catch (Q) {
431
- console.error("Failed to play media:", Q);
432
- }
433
- }, I = () => {
434
- const N = t.current;
435
- N && (y && E ? E.pause(!0) : N.pause());
436
- };
437
- return {
438
- play: v,
439
- pause: I,
440
- toggle: () => {
441
- n ? I() : v();
442
- },
443
- seek: (N) => {
444
- const Q = t.current;
445
- if (!Q) return;
446
- const ee = Math.max(0, Math.min(N, g || 0));
447
- y && E ? a(() => {
448
- E.seek(ee, !0);
449
- }) : Q.currentTime = ee;
450
- },
451
- setVolume: (N) => {
452
- const Q = t.current;
453
- if (!Q) return;
454
- const ee = Math.max(0, Math.min(1, N));
455
- y && E ? (k(ee), d(() => {
456
- E.setVolume(ee, !0);
457
- })) : Q.volume = ee;
458
- },
459
- toggleMute: () => {
460
- const N = t.current;
461
- N && (y && E ? E.toggleMute(!0) : N.muted = !N.muted);
462
- },
463
- enterFullscreen: async () => {
464
- const N = r.current;
465
- if (!(!N || !document.fullscreenEnabled))
466
- try {
467
- await N.requestFullscreen(), y && E && E.enterFullscreen(!0);
468
- } catch (Q) {
469
- console.error("Failed to enter fullscreen:", Q);
470
- }
471
- },
472
- exitFullscreen: async () => {
473
- if (document.fullscreenElement)
474
- try {
475
- await document.exitFullscreen(), y && E && E.exitFullscreen(!0);
476
- } catch (N) {
477
- console.error("Failed to exit fullscreen:", N);
478
- }
479
- }
480
- };
481
- }, [
482
- n,
483
- g,
484
- y,
485
- E,
486
- d,
487
- a,
488
- k
489
- ]), te = ae(() => ({
490
- isPlaying: S?.isPlaying ?? n,
491
- currentTime: S?.currentTime ?? w,
492
- duration: S?.duration ?? g,
493
- volume: S?.volume ?? R,
494
- isMuted: S?.isMuted ?? f,
495
- isLoading: S?.isBuffering ?? M,
496
- isBuffering: S?.isBuffering ?? m,
497
- error: S?.error ?? i,
498
- buffered: S?.buffered ?? p,
499
- isFullscreen: S?.isFullscreen ?? h,
500
- progress: g > 0 ? w / g : 0,
501
- isTransitioning: s || u,
502
- canPlay: !M && !m && !i
503
- }), [
504
- S,
505
- n,
506
- w,
507
- g,
508
- R,
509
- f,
510
- M,
511
- m,
512
- i,
513
- p,
514
- h,
515
- s,
516
- u
517
- ]);
518
- return {
519
- // Refs
520
- mediaRef: t,
521
- containerRef: r,
522
- // State
523
- state: te,
524
- actualState: S?.actualState,
525
- // Controls
526
- controls: J,
527
- // Performance metrics
528
- performanceMetrics: H,
529
- isTransitioning: s || u,
530
- // Enhanced features
531
- actions: S?.actions,
532
- actionState: S?.actionState,
533
- // Optimistic features
534
- optimisticState: S,
535
- isEnhanced: y
536
- };
537
- }
538
- function Ie(e = {}) {
539
- const {
540
- maxMemoryUsage: t = 100,
541
- // 100MB default
542
- cleanupInterval: r = 3e4,
543
- // 30 seconds default
544
- enableGC: s = !0,
545
- monitorMemory: d = !0
546
- } = e;
547
- G();
548
- const u = G(/* @__PURE__ */ new Set()), a = G(/* @__PURE__ */ new Map()), l = G(/* @__PURE__ */ new Set()), b = G(/* @__PURE__ */ new Set()), D = B(() => {
549
- if (typeof window > "u" || !("memory" in performance))
550
- return { used: 0, total: 0, limit: 0 };
551
- const m = performance.memory;
552
- return {
553
- used: m.usedJSHeapSize,
554
- total: m.totalJSHeapSize,
555
- limit: m.jsHeapSizeLimit
556
- };
557
- }, []), [F, y] = z.useState({
558
- used: 0,
559
- total: 0,
560
- limit: 0,
561
- usage: 0,
562
- isHighUsage: !1
563
- });
564
- $(() => {
565
- if (!d) return;
566
- const m = () => {
567
- const p = D(), h = p.used / 1024 / 1024, T = h > t;
568
- y({
569
- ...p,
570
- usage: h,
571
- isHighUsage: T
572
- }), T && s && n();
573
- };
574
- m();
575
- const i = g(m, r);
576
- return l.current.add(i), () => {
577
- clearInterval(i), l.current.delete(i);
578
- };
579
- }, [d, D, t, s, r]);
580
- const n = B(() => {
581
- l.current.forEach((m) => {
582
- clearTimeout(m);
583
- }), l.current.clear(), b.current.forEach((m) => {
584
- cancelAnimationFrame(m);
585
- }), b.current.clear(), u.current.forEach((m) => {
586
- m.disconnect();
587
- }), u.current.clear(), a.current.forEach((m, i) => {
588
- m.forEach(({ event: p, handler: h }) => {
589
- i.removeEventListener(p, h);
590
- });
591
- }), a.current.clear(), s && "gc" in window && window.gc();
592
- }, [s]), w = B((m, i, p, h) => (m.addEventListener(i, p, h), a.current.has(m) || a.current.set(m, []), a.current.get(m).push({ event: i, handler: p }), () => {
593
- m.removeEventListener(i, p);
594
- const T = a.current.get(m);
595
- if (T) {
596
- const S = T.findIndex((E) => E.event === i && E.handler === p);
597
- S > -1 && T.splice(S, 1), T.length === 0 && a.current.delete(m);
598
- }
599
- }), []), g = B((m, i) => {
600
- const p = g(m, i);
601
- return l.current.add(p), () => {
602
- clearInterval(p), l.current.delete(p);
603
- };
604
- }, []), o = B((m, i) => {
605
- const p = o(m, i);
606
- return l.current.add(p), () => {
607
- clearTimeout(p), l.current.delete(p);
608
- };
609
- }, []), f = B((m) => {
610
- const i = f(m);
611
- return b.current.add(i), () => {
612
- cancelAnimationFrame(i), b.current.delete(i);
613
- };
614
- }, []), M = B((m) => (u.current.add(m), () => {
615
- m.disconnect(), u.current.delete(m);
616
- }), []);
617
- return $(() => () => {
618
- n();
619
- }, [n]), {
620
- // Memory stats
621
- memoryStats: F,
622
- getMemoryUsage: D,
623
- // Cleanup functions
624
- performCleanup: n,
625
- // Safe API functions
626
- addEventListener: w,
627
- setInterval: g,
628
- setTimeout: o,
629
- requestAnimationFrame: f,
630
- addObserver: M,
631
- // Utilities
632
- formatBytes: (m) => {
633
- if (m === 0) return "0 Bytes";
634
- const i = 1024, p = ["Bytes", "KB", "MB", "GB"], h = Math.floor(Math.log(m) / Math.log(i));
635
- return parseFloat((m / Math.pow(i, h)).toFixed(2)) + " " + p[h];
636
- }
637
- };
638
- }
639
- function Te() {
640
- const [e, t] = K({
641
- isPlaying: !1,
642
- currentTime: 0,
643
- duration: 0,
644
- volume: 1,
645
- isMuted: !1,
646
- isLoading: !1,
647
- isFullscreen: !1,
648
- error: null,
649
- buffered: null
650
- }), r = (n) => {
651
- t((w) => ({ ...w, ...n }));
652
- };
653
- return {
654
- state: e,
655
- updateState: r,
656
- setPlaying: (n) => {
657
- r({ isPlaying: n });
658
- },
659
- setCurrentTime: (n) => {
660
- r({ currentTime: n });
661
- },
662
- setDuration: (n) => {
663
- r({ duration: n });
664
- },
665
- setVolume: (n) => {
666
- r({ volume: Math.max(0, Math.min(1, n)) });
667
- },
668
- setMuted: (n) => {
669
- r({ isMuted: n });
670
- },
671
- setLoading: (n) => {
672
- r({ isLoading: n });
673
- },
674
- setFullscreen: (n) => {
675
- r({ isFullscreen: n });
676
- },
677
- setError: (n) => {
678
- r({ error: n });
679
- },
680
- setBuffered: (n) => {
681
- r({ buffered: n });
682
- }
683
- };
684
- }
685
- function be(e) {
686
- const t = G(null), r = G(null), {
687
- state: s,
688
- setPlaying: d,
689
- setCurrentTime: u,
690
- setDuration: a,
691
- setVolume: l,
692
- setMuted: b,
693
- setLoading: D,
694
- setFullscreen: F,
695
- setError: y,
696
- setBuffered: n
697
- } = Te();
698
- $(() => {
699
- const c = t.current;
700
- c && (e.volume !== void 0 && (c.volume = e.volume, l(e.volume)), e.muted !== void 0 && (c.muted = e.muted, b(e.muted)), e.autoPlay !== void 0 && (c.autoplay = e.autoPlay), e.loop !== void 0 && (c.loop = e.loop), e.preload !== void 0 && (c.preload = e.preload), e.crossOrigin !== void 0 && (c.crossOrigin = e.crossOrigin));
701
- }, [e, l, b]);
702
- const w = () => {
703
- d(!0), e.onPlay?.();
704
- }, g = () => {
705
- d(!1), e.onPause?.();
706
- }, o = () => {
707
- const c = t.current;
708
- c && (u(c.currentTime), e.onTimeUpdate?.(c.currentTime));
709
- }, f = () => {
710
- const c = t.current;
711
- c && (a(c.duration), e.onDurationChange?.(c.duration));
712
- }, M = () => {
713
- const c = t.current;
714
- c && (l(c.volume), b(c.muted), e.onVolumeChange?.(c.volume));
715
- }, m = () => {
716
- D(!0), y(null), e.onLoadStart?.();
717
- }, i = () => {
718
- D(!1), e.onLoadedData?.();
719
- }, p = () => {
720
- const c = t.current;
721
- if (!c) return;
722
- const V = c.error?.message || "An error occurred while loading the media";
723
- y(V), D(!1), e.onError?.(V);
724
- }, h = () => {
725
- d(!1), e.onEnded?.();
726
- }, T = () => {
727
- const c = t.current;
728
- c && n(c.buffered);
729
- };
730
- $(() => {
731
- const c = t.current;
732
- if (c)
733
- return c.addEventListener("play", w), c.addEventListener("pause", g), c.addEventListener("timeupdate", o), c.addEventListener("durationchange", f), c.addEventListener("volumechange", M), c.addEventListener("loadstart", m), c.addEventListener("loadeddata", i), c.addEventListener("error", p), c.addEventListener("ended", h), c.addEventListener("progress", T), () => {
734
- c.removeEventListener("play", w), c.removeEventListener("pause", g), c.removeEventListener("timeupdate", o), c.removeEventListener("durationchange", f), c.removeEventListener("volumechange", M), c.removeEventListener("loadstart", m), c.removeEventListener("loadeddata", i), c.removeEventListener("error", p), c.removeEventListener("ended", h), c.removeEventListener("progress", T);
735
- };
736
- }, [
737
- w,
738
- g,
739
- o,
740
- f,
741
- M,
742
- m,
743
- i,
744
- p,
745
- h,
746
- T
747
- ]);
748
- const S = async () => {
749
- const c = t.current;
750
- if (c)
751
- try {
752
- await c.play();
753
- } catch (V) {
754
- console.error("Failed to play media:", V), y("Failed to play media");
755
- }
756
- }, E = () => {
757
- const c = t.current;
758
- c && c.pause();
759
- }, H = () => {
760
- s.isPlaying ? E() : S();
761
- }, P = (c) => {
762
- const V = t.current;
763
- V && (V.currentTime = Math.max(0, Math.min(c, V.duration || 0)));
764
- }, R = (c) => {
765
- const V = t.current;
766
- if (!V) return;
767
- const J = Math.max(0, Math.min(1, c));
768
- V.volume = J;
769
- }, k = () => {
770
- const c = t.current;
771
- c && (c.muted = !0);
772
- }, L = () => {
773
- const c = t.current;
774
- c && (c.muted = !1);
775
- }, C = () => {
776
- const c = t.current;
777
- c && (c.muted = !c.muted);
778
- }, A = async () => {
779
- const c = r.current;
780
- if (!(!c || !document.fullscreenEnabled))
781
- try {
782
- await c.requestFullscreen(), F(!0);
783
- } catch (V) {
784
- console.error("Failed to enter fullscreen:", V);
785
- }
786
- }, O = async () => {
787
- if (document.fullscreenElement)
788
- try {
789
- await document.exitFullscreen(), F(!1);
790
- } catch (c) {
791
- console.error("Failed to exit fullscreen:", c);
792
- }
793
- }, x = () => {
794
- document.fullscreenElement ? O() : A();
795
- };
796
- return $(() => {
797
- const c = () => {
798
- F(!!document.fullscreenElement);
799
- };
800
- return document.addEventListener("fullscreenchange", c), () => {
801
- document.removeEventListener("fullscreenchange", c);
802
- };
803
- }, [F]), {
804
- state: s,
805
- controls: {
806
- play: S,
807
- pause: E,
808
- toggle: H,
809
- seek: P,
810
- setVolume: R,
811
- mute: k,
812
- unmute: L,
813
- toggleMute: C,
814
- enterFullscreen: A,
815
- exitFullscreen: O,
816
- toggleFullscreen: x
817
- },
818
- mediaRef: t,
819
- containerRef: r
820
- };
821
- }
822
- const j = {
823
- mobile: 768,
824
- desktop: 1280
825
- };
826
- function de() {
827
- if (typeof window > "u") return "unknown";
828
- const e = window.navigator.userAgent.toLowerCase();
829
- return /iphone|ipad|ipod/.test(e) ? "ios" : /android/.test(e) ? "android" : /windows|mac|linux/.test(e) ? "desktop" : "unknown";
830
- }
831
- function me() {
832
- return typeof window > "u" ? !1 : "ontouchstart" in window || navigator.maxTouchPoints > 0 || // @ts-ignore - for older browsers
833
- navigator.msMaxTouchPoints > 0;
834
- }
835
- function fe() {
836
- return typeof window > "u" ? !1 : "vibrate" in navigator || // @ts-ignore - for newer Vibration API
837
- "vibration" in navigator || // @ts-ignore - for iOS haptic feedback
838
- "ondevicemotion" in window;
839
- }
840
- function ie() {
841
- const [e, t] = Y.useState(() => {
842
- if (typeof window > "u")
843
- return {
844
- isMobile: !1,
845
- isTablet: !1,
846
- isDesktop: !0,
847
- isTouchDevice: !1,
848
- platform: "unknown",
849
- supportsHaptics: !1,
850
- screenSize: { width: 1920, height: 1080 },
851
- orientation: "landscape"
852
- };
853
- const r = window.innerWidth, s = window.innerHeight;
854
- return {
855
- isMobile: r < j.mobile,
856
- isTablet: r >= j.mobile && r < j.desktop,
857
- isDesktop: r >= j.desktop,
858
- isTouchDevice: me(),
859
- platform: de(),
860
- supportsHaptics: fe(),
861
- screenSize: { width: r, height: s },
862
- orientation: r > s ? "landscape" : "portrait"
863
- };
864
- });
865
- return Y.useEffect(() => {
866
- const r = () => {
867
- const a = window.innerWidth, l = window.innerHeight;
868
- t({
869
- isMobile: a < j.mobile,
870
- isTablet: a >= j.mobile && a < j.desktop,
871
- isDesktop: a >= j.desktop,
872
- isTouchDevice: me(),
873
- platform: de(),
874
- supportsHaptics: fe(),
875
- screenSize: { width: a, height: l },
876
- orientation: a > l ? "landscape" : "portrait"
877
- });
878
- };
879
- window.addEventListener("resize", r), window.addEventListener("orientationchange", r);
880
- const s = window.matchMedia(`(max-width: ${j.mobile - 1}px)`), d = window.matchMedia(`(min-width: ${j.mobile}px) and (max-width: ${j.desktop - 1}px)`), u = window.matchMedia(`(min-width: ${j.desktop}px)`);
881
- return s.addEventListener("change", r), d.addEventListener("change", r), u.addEventListener("change", r), () => {
882
- window.removeEventListener("resize", r), window.removeEventListener("orientationchange", r), s.removeEventListener("change", r), d.removeEventListener("change", r), u.removeEventListener("change", r);
883
- };
884
- }, []), e;
885
- }
886
- function Ae() {
887
- const { platform: e, isMobile: t } = ie();
888
- Y.useEffect(() => {
889
- if (t) {
890
- if (e === "ios") {
891
- const r = (s) => {
892
- s.touches.length > 1 && s.preventDefault();
893
- };
894
- return document.addEventListener("touchstart", r, { passive: !1 }), document.body.style.webkitOverflowScrolling = "touch", () => {
895
- document.removeEventListener("touchstart", r);
896
- };
897
- }
898
- e === "android" && (document.body.style.touchAction = "manipulation"), document.documentElement.style.setProperty("--webkit-transform", "translateZ(0)"), document.documentElement.style.setProperty("--transform", "translateZ(0)");
899
- }
900
- }, [e, t]);
901
- }
902
- function Se() {
903
- const { supportsHaptics: e } = ie();
904
- return { triggerHaptic: Y.useCallback((r = "light") => {
905
- if (!e) return;
906
- const d = {
907
- light: [10],
908
- medium: [20],
909
- heavy: [30],
910
- success: [10, 10, 10],
911
- warning: [20, 20],
912
- error: [50, 20, 50]
913
- }[r];
914
- "vibrate" in navigator && navigator.vibrate(d);
915
- }, [e]), supportsHaptics: e };
916
- }
917
- const Le = {
918
- enabledGestures: ["tap", "double-tap", "long-press", "swipe-left", "swipe-right", "swipe-up", "swipe-down", "pinch-in", "pinch-out"],
919
- tapThreshold: 200,
920
- doubleTapThreshold: 300,
921
- longPressThreshold: 500,
922
- swipeThreshold: 50,
923
- swipeVelocityThreshold: 0.5,
924
- pinchThreshold: 0.1,
925
- rotationThreshold: 15,
926
- enableHapticFeedback: !0
927
- };
928
- function Me(e, t, r = {}) {
929
- const s = { ...Le, ...r }, { isTouchDevice: d } = ie(), { triggerHaptic: u } = Se(), a = Y.useRef({
930
- isTracking: !1,
931
- touches: [],
932
- startTouches: []
933
- }), l = (g) => ({
934
- id: g.identifier,
935
- x: g.clientX,
936
- y: g.clientY,
937
- timestamp: Date.now()
938
- }), b = (g, o) => Math.sqrt(Math.pow(o.x - g.x, 2) + Math.pow(o.y - g.y, 2)), D = (g, o) => {
939
- const f = Math.max(o.timestamp - g.timestamp, 1);
940
- return {
941
- x: (o.x - g.x) / f,
942
- y: (o.y - g.y) / f
943
- };
944
- }, F = (g, o, f, M = {}) => ({
945
- type: g,
946
- startPoint: { x: o.x, y: o.y },
947
- currentPoint: { x: f.x, y: f.y },
948
- duration: f.timestamp - o.timestamp,
949
- target: e.current,
950
- preventDefault: () => {
951
- },
952
- ...M
953
- }), y = Y.useCallback((g) => {
954
- if (!s.enabledGestures.length) return;
955
- const o = Array.from(g.touches).map(l), f = a.current;
956
- f.isTracking = !0, f.touches = o, f.startTouches = [...o], f.longPressTimer && clearTimeout(f.longPressTimer), o.length === 1 && s.enabledGestures.includes("long-press") && (f.longPressTimer = setTimeout(() => {
957
- if (f.touches.length === 1 && o[0]) {
958
- const M = F("long-press", o[0], o[0]);
959
- t(M), s.enableHapticFeedback && u("heavy");
960
- }
961
- }, s.longPressThreshold)), o.length === 2 && o[0] && o[1] && (f.initialDistance = b(o[0], o[1]), f.initialScale = 1, f.lastScale = 1);
962
- }, [s, t, u]), n = Y.useCallback((g) => {
963
- const o = a.current;
964
- if (!o.isTracking) return;
965
- const f = Array.from(g.touches).map(l);
966
- if (o.touches = f, f.length === 2 && o.initialDistance && f[0] && f[1]) {
967
- const M = b(f[0], f[1]), m = M / o.initialDistance;
968
- if (Math.abs(m - (o.lastScale || 1)) > s.pinchThreshold) {
969
- const p = m > (o.lastScale || 1) ? "pinch-out" : "pinch-in";
970
- if (s.enabledGestures.includes(p)) {
971
- const h = {
972
- x: (f[0].x + f[1].x) / 2,
973
- y: (f[0].y + f[1].y) / 2,
974
- timestamp: Date.now()
975
- }, T = {
976
- x: ((o.startTouches[0]?.x ?? 0) + (o.startTouches[1]?.x ?? 0)) / 2,
977
- y: ((o.startTouches[0]?.y ?? 0) + (o.startTouches[1]?.y ?? 0)) / 2,
978
- timestamp: o.startTouches[0]?.timestamp ?? Date.now()
979
- }, S = F(p, T, h, {
980
- scale: m,
981
- distance: M
982
- });
983
- t(S), o.lastScale = m;
984
- }
985
- }
986
- }
987
- if (o.longPressTimer && f.length === 1 && o.startTouches[0] && f[0]) {
988
- const M = o.startTouches[0], m = f[0];
989
- b(M, m) > s.swipeThreshold && (clearTimeout(o.longPressTimer), o.longPressTimer = void 0);
990
- }
991
- }, [s, t]), w = Y.useCallback((g) => {
992
- const o = a.current;
993
- if (!o.isTracking) return;
994
- const f = Array.from(g.changedTouches).map(l), M = Date.now();
995
- if (o.longPressTimer && (clearTimeout(o.longPressTimer), o.longPressTimer = void 0), o.startTouches.length === 1 && f.length === 1 && o.startTouches[0] && f[0]) {
996
- const m = o.startTouches[0], i = f[0], p = b(m, i), h = i.timestamp - m.timestamp;
997
- if (p > s.swipeThreshold) {
998
- const T = D(m, i), S = Math.abs(T.x), E = Math.abs(T.y);
999
- if (S > s.swipeVelocityThreshold || E > s.swipeVelocityThreshold) {
1000
- let H;
1001
- if (S > E ? H = T.x > 0 ? "swipe-right" : "swipe-left" : H = T.y > 0 ? "swipe-down" : "swipe-up", s.enabledGestures.includes(H)) {
1002
- const P = F(H, m, i, {
1003
- velocity: T,
1004
- distance: p
1005
- });
1006
- t(P), s.enableHapticFeedback && u("light");
1007
- }
1008
- }
1009
- } else if (h < s.tapThreshold && p < s.swipeThreshold)
1010
- if (o.lastTap && M - o.lastTap.timestamp < s.doubleTapThreshold && b({ ...o.lastTap.point }, i) < s.swipeThreshold) {
1011
- if (s.enabledGestures.includes("double-tap")) {
1012
- const T = F("double-tap", m, i);
1013
- t(T), s.enableHapticFeedback && u("medium");
1014
- }
1015
- o.lastTap = void 0;
1016
- } else {
1017
- if (s.enabledGestures.includes("tap")) {
1018
- const T = F("tap", m, i);
1019
- t(T), s.enableHapticFeedback && u("light");
1020
- }
1021
- o.lastTap = {
1022
- timestamp: M,
1023
- point: { x: i.x, y: i.y }
1024
- };
1025
- }
1026
- }
1027
- g.touches.length === 0 && (o.isTracking = !1, o.touches = [], o.startTouches = [], o.initialDistance = void 0, o.initialScale = void 0, o.lastScale = void 0);
1028
- }, [s, t, u]);
1029
- return Y.useEffect(() => {
1030
- const g = e.current;
1031
- if (!(!g || !d))
1032
- return g.addEventListener("touchstart", y, { passive: !1 }), g.addEventListener("touchmove", n, { passive: !1 }), g.addEventListener("touchend", w, { passive: !1 }), g.addEventListener("touchcancel", w, { passive: !1 }), () => {
1033
- g.removeEventListener("touchstart", y), g.removeEventListener("touchmove", n), g.removeEventListener("touchend", w), g.removeEventListener("touchcancel", w);
1034
- };
1035
- }, [y, n, w, d]), {
1036
- isGestureEnabled: d && s.enabledGestures.length > 0
1037
- };
1038
- }
1039
- function Oe(e, t) {
1040
- const r = Y.useCallback((d) => {
1041
- const { type: u, distance: a, scale: l } = d;
1042
- switch (u) {
1043
- case "double-tap":
1044
- t.onPlayPause?.();
1045
- break;
1046
- case "swipe-left":
1047
- const b = Math.min((a || 0) / 10, 30);
1048
- t.onSeek?.("backward", b);
1049
- break;
1050
- case "swipe-right":
1051
- const D = Math.min((a || 0) / 10, 30);
1052
- t.onSeek?.("forward", D);
1053
- break;
1054
- case "swipe-up":
1055
- if (d.startPoint.x > (e.current?.clientWidth || 0) / 2) {
1056
- const F = Math.min((a || 0) / 100, 0.2);
1057
- t.onVolumeChange?.("up", F);
1058
- }
1059
- break;
1060
- case "swipe-down":
1061
- if (d.startPoint.x > (e.current?.clientWidth || 0) / 2) {
1062
- const F = Math.min((a || 0) / 100, 0.2);
1063
- t.onVolumeChange?.("down", F);
1064
- }
1065
- break;
1066
- case "pinch-out":
1067
- t.onZoom?.(l || 1);
1068
- break;
1069
- case "pinch-in":
1070
- t.onZoom?.(l || 1);
1071
- break;
1072
- case "long-press":
1073
- t.onToggleFullscreen?.();
1074
- break;
1075
- }
1076
- }, [t, e]);
1077
- return Me(e, r, {
1078
- enabledGestures: ["tap", "double-tap", "long-press", "swipe-left", "swipe-right", "swipe-up", "swipe-down", "pinch-in", "pinch-out"],
1079
- enableHapticFeedback: !0,
1080
- swipeThreshold: 30,
1081
- swipeVelocityThreshold: 0.3
1082
- });
1083
- }
1084
- function Ve(e) {
1085
- const t = G(null), [r, s] = K({
1086
- isPlaying: !1,
1087
- currentTime: 0,
1088
- duration: 0,
1089
- volume: 1,
1090
- isMuted: !1,
1091
- isFullscreen: !1,
1092
- isLoading: !0,
1093
- isSeeking: !1,
1094
- isBuffering: !1,
1095
- bufferedRanges: []
1096
- });
1097
- return $(() => {
1098
- const n = t.current;
1099
- if (!n) return;
1100
- const w = () => {
1101
- s((P) => ({ ...P, currentTime: n.currentTime }));
1102
- }, g = () => {
1103
- s((P) => ({ ...P, duration: n.duration }));
1104
- }, o = () => {
1105
- s((P) => ({ ...P, isPlaying: !0, isBuffering: !1 }));
1106
- }, f = () => {
1107
- s((P) => ({ ...P, isPlaying: !1 }));
1108
- }, M = () => {
1109
- s((P) => ({
1110
- ...P,
1111
- volume: n.volume,
1112
- isMuted: n.muted
1113
- }));
1114
- }, m = () => {
1115
- s((P) => ({ ...P, isLoading: !0 }));
1116
- }, i = () => {
1117
- s((P) => ({ ...P, isLoading: !1 }));
1118
- }, p = () => {
1119
- s((P) => ({ ...P, isSeeking: !0 }));
1120
- }, h = () => {
1121
- s((P) => ({ ...P, isSeeking: !1 }));
1122
- }, T = () => {
1123
- s((P) => ({ ...P, isBuffering: !0 }));
1124
- }, S = () => {
1125
- s((P) => ({ ...P, isBuffering: !1, isLoading: !1 }));
1126
- }, E = () => {
1127
- s((P) => ({ ...P, isLoading: !1, isBuffering: !1 }));
1128
- }, H = () => {
1129
- if (!n.buffered || n.buffered.length === 0 || n.duration === 0) {
1130
- s((R) => ({ ...R, bufferedRanges: [] }));
1131
- return;
1132
- }
1133
- const P = [];
1134
- for (let R = 0; R < n.buffered.length; R++) {
1135
- const k = n.buffered.start(R), L = n.buffered.end(R);
1136
- P.push({
1137
- start: k,
1138
- end: L,
1139
- percentage: (L - k) / n.duration * 100
1140
- });
1141
- }
1142
- s((R) => ({ ...R, bufferedRanges: P }));
1143
- };
1144
- return n.addEventListener("timeupdate", w), n.addEventListener("loadedmetadata", g), n.addEventListener("play", o), n.addEventListener("pause", f), n.addEventListener("volumechange", M), n.addEventListener("loadstart", m), n.addEventListener("loadeddata", i), n.addEventListener("seeking", p), n.addEventListener("seeked", h), n.addEventListener("waiting", T), n.addEventListener("playing", S), n.addEventListener("canplay", E), n.addEventListener("progress", H), () => {
1145
- n.removeEventListener("timeupdate", w), n.removeEventListener("loadedmetadata", g), n.removeEventListener("play", o), n.removeEventListener("pause", f), n.removeEventListener("volumechange", M), n.removeEventListener("loadstart", m), n.removeEventListener("loadeddata", i), n.removeEventListener("seeking", p), n.removeEventListener("seeked", h), n.removeEventListener("waiting", T), n.removeEventListener("playing", S), n.removeEventListener("canplay", E), n.removeEventListener("progress", H);
1146
- };
1147
- }, []), {
1148
- videoRef: t,
1149
- state: r,
1150
- controls: {
1151
- togglePlay: () => {
1152
- const n = t.current;
1153
- n && (r.isPlaying ? n.pause() : n.play());
1154
- },
1155
- seekForward: (n = 10) => {
1156
- const w = t.current;
1157
- w && (w.currentTime = Math.min(r.duration, w.currentTime + n));
1158
- },
1159
- seekBackward: (n = 10) => {
1160
- const w = t.current;
1161
- w && (w.currentTime = Math.max(0, w.currentTime - n));
1162
- },
1163
- toggleMute: () => {
1164
- const n = t.current;
1165
- n && (n.muted = !r.isMuted);
1166
- },
1167
- setVolume: (n) => {
1168
- const w = t.current;
1169
- w && (w.volume = n, n > 0 && r.isMuted && (w.muted = !1));
1170
- },
1171
- toggleFullscreen: () => {
1172
- const n = e.current;
1173
- n && (r.isFullscreen ? document.exitFullscreen && document.exitFullscreen() : n.requestFullscreen && n.requestFullscreen(), s((w) => ({ ...w, isFullscreen: !w.isFullscreen })));
1174
- },
1175
- seekTo: (n) => {
1176
- const w = t.current;
1177
- !w || r.duration === 0 || (w.currentTime = Math.max(0, Math.min(r.duration, n)));
1178
- }
1179
- }
1180
- };
1181
- }
1182
- function ke({
1183
- subtitleSrc: e,
1184
- subtitleTracks: t = [],
1185
- defaultFontSize: r = "medium",
1186
- onLoadError: s
1187
- } = {}) {
1188
- const [d, u] = K(!1), [a, l] = K([]), [b, D] = K(""), [F, y] = K(null), [n, w] = K(r), [g, o] = K(null), [f, M] = K(!1), m = {
1189
- small: "text-sm",
1190
- medium: "text-base",
1191
- large: "text-lg"
1192
- }, i = !!(e || t && t.length > 0), p = (k) => {
1193
- const L = k.split(":"), C = L[2] ? parseFloat(L[2]) : 0, A = L[1] ? parseInt(L[1], 10) * 60 : 0;
1194
- return (L[0] ? parseInt(L[0], 10) * 3600 : 0) + A + C;
1195
- }, h = (k) => {
1196
- const [L, C] = k.split(","), A = (L || "").split(":"), O = C ? parseInt(C, 10) / 1e3 : 0, x = A[2] ? parseInt(A[2], 10) : 0, Z = A[1] ? parseInt(A[1], 10) * 60 : 0;
1197
- return (A[0] ? parseInt(A[0], 10) * 3600 : 0) + Z + x + O;
1198
- }, T = async (k) => {
1199
- M(!0), o(null);
1200
- try {
1201
- const L = await fetch(k);
1202
- if (!L.ok)
1203
- throw new Error(`Failed to load subtitles: ${L.status} ${L.statusText}`);
1204
- const C = await L.text(), A = [], O = C.split(`
1205
- `);
1206
- let x = 0;
1207
- const Z = C.includes("WEBVTT") || k.endsWith(".vtt"), c = k.endsWith(".srt") || /^\d+$/.test(O[0]?.trim() || "");
1208
- if (Z)
1209
- for (; x < O.length; ) {
1210
- if (O[x]?.includes("-->")) {
1211
- const [V, J] = (O[x] || "").split("-->").map((W) => W.trim()), te = p(V || ""), v = p(J || "");
1212
- x++;
1213
- let I = "";
1214
- for (; x < O.length && O[x]?.trim() !== ""; )
1215
- I += (I ? " " : "") + O[x]?.trim(), x++;
1216
- I && A.push({ start: te, end: v, text: I });
1217
- }
1218
- x++;
1219
- }
1220
- else if (c)
1221
- for (; x < O.length; ) {
1222
- if (/^\d+$/.test(O[x]?.trim() || "") && (x++, O[x]?.includes("-->"))) {
1223
- const [V, J] = (O[x] || "").split("-->").map((W) => W.trim()), te = h(V || ""), v = h(J || "");
1224
- x++;
1225
- let I = "";
1226
- for (; x < O.length && O[x]?.trim() !== ""; )
1227
- I += (I ? " " : "") + O[x]?.trim(), x++;
1228
- I && A.push({ start: te, end: v, text: I });
1229
- }
1230
- x++;
1231
- }
1232
- else
1233
- throw new Error("Unsupported subtitle format. Only VTT and SRT are supported.");
1234
- if (A.length === 0)
1235
- throw new Error("No subtitle cues found in file");
1236
- l(A), M(!1);
1237
- } catch (L) {
1238
- const C = L instanceof Error ? L : new Error("Failed to load subtitles");
1239
- console.error("Failed to load subtitles:", C), o(C), M(!1), l([]), s?.(C);
1240
- }
1241
- }, S = (k) => !d || a.length === 0 ? "" : a.find(
1242
- (C) => k >= C.start && k <= C.end
1243
- )?.text || "", E = () => {
1244
- u((k) => {
1245
- const L = !k;
1246
- if (L && !g) {
1247
- if (a.length === 0 && !f) {
1248
- const C = e || t[0]?.src;
1249
- C && (T(C), t[0] && y(t[0].id));
1250
- }
1251
- } else L || D("");
1252
- return L;
1253
- });
1254
- }, H = (k) => {
1255
- if (!k) {
1256
- u(!1), y(null), D("");
1257
- return;
1258
- }
1259
- const L = t.find((C) => C.id === k);
1260
- L?.src && (y(k), T(L.src), u(!0));
1261
- }, P = (k) => {
1262
- w(k);
1263
- }, R = {
1264
- fontSize: m[n],
1265
- className: `${m[n]} font-medium`
1266
- };
1267
- return $(() => {
1268
- d || D("");
1269
- }, [d]), $(() => {
1270
- }, []), {
1271
- // State
1272
- subtitlesEnabled: d,
1273
- currentSubtitle: b,
1274
- subtitleCues: a,
1275
- currentTrackId: F,
1276
- fontSize: n,
1277
- loadError: g,
1278
- isLoading: f,
1279
- hasSubtitles: i,
1280
- // Actions
1281
- toggleSubtitles: E,
1282
- selectSubtitleTrack: H,
1283
- changeSubtitleFontSize: P,
1284
- setCurrentSubtitle: D,
1285
- // Utilities
1286
- getCurrentSubtitle: S,
1287
- getSubtitleStyles: R,
1288
- // Track info
1289
- availableTracks: t
1290
- };
1291
- }
1292
- const Ue = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1293
- __proto__: null,
1294
- useEnhancedSubtitles: ke
1295
- }, Symbol.toStringTag, { value: "Module" }));
1296
- function _e(e, t) {
1297
- const [r, s] = K(!0), [d, u] = K(!1), a = G(null), l = () => {
1298
- s(!0), a.current && clearTimeout(a.current), e && !t && (a.current = setTimeout(() => {
1299
- s(!1);
1300
- }, 3e3));
1301
- }, b = () => {
1302
- l();
1303
- }, D = () => {
1304
- s(!0);
1305
- }, F = () => {
1306
- e && s(!1);
1307
- };
1308
- return $(() => (l(), () => {
1309
- a.current && clearTimeout(a.current);
1310
- }), [l]), {
1311
- controlsVisible: r,
1312
- showVolumeSlider: d,
1313
- setShowVolumeSlider: u,
1314
- handleMouseMove: b,
1315
- handleMouseEnter: D,
1316
- handleMouseLeave: F
1317
- };
1318
- }
1319
- function Be({
1320
- videoControls: e,
1321
- toggleSubtitles: t,
1322
- takeScreenshot: r,
1323
- duration: s
1324
- }) {
1325
- const d = (u) => {
1326
- const a = document.querySelector("video");
1327
- if (a)
1328
- switch (u.key.toLowerCase()) {
1329
- case " ":
1330
- case "k":
1331
- u.preventDefault(), e.togglePlay();
1332
- break;
1333
- case "j":
1334
- u.preventDefault(), e.seekBackward();
1335
- break;
1336
- case "l":
1337
- u.preventDefault(), e.seekForward();
1338
- break;
1339
- case "arrowleft":
1340
- u.preventDefault(), a.currentTime = Math.max(0, a.currentTime - 5);
1341
- break;
1342
- case "arrowright":
1343
- u.preventDefault(), a.currentTime = Math.min(s, a.currentTime + 5);
1344
- break;
1345
- case "arrowup":
1346
- u.preventDefault(), a.volume = Math.min(1, a.volume + 0.1);
1347
- break;
1348
- case "arrowdown":
1349
- u.preventDefault(), a.volume = Math.max(0, a.volume - 0.1);
1350
- break;
1351
- case "m":
1352
- u.preventDefault(), e.toggleMute();
1353
- break;
1354
- case "f":
1355
- u.preventDefault(), e.toggleFullscreen();
1356
- break;
1357
- case "c":
1358
- u.preventDefault(), t();
1359
- break;
1360
- case "s":
1361
- u.preventDefault(), r(u.ctrlKey || u.metaKey);
1362
- break;
1363
- }
1364
- };
1365
- $(() => (document.addEventListener("keydown", d), () => document.removeEventListener("keydown", d)), [d]);
1366
- }
1367
- function He(e) {
1368
- return { takeScreenshot: (r = !1) => {
1369
- if (!e.current) return;
1370
- const s = e.current, d = document.createElement("canvas");
1371
- d.width = s.videoWidth, d.height = s.videoHeight;
1372
- const u = d.getContext("2d");
1373
- if (u)
1374
- try {
1375
- u.drawImage(s, 0, 0), d.toBlob((a) => {
1376
- if (!a) {
1377
- console.error("Failed to create blob from canvas");
1378
- return;
1379
- }
1380
- if (r)
1381
- if (navigator.clipboard && window.ClipboardItem) {
1382
- const l = new ClipboardItem({ "image/png": a });
1383
- navigator.clipboard.write([l]).catch((b) => {
1384
- console.error("Failed to copy to clipboard:", b);
1385
- });
1386
- } else
1387
- console.warn("Clipboard API not supported");
1388
- else {
1389
- const l = URL.createObjectURL(a), b = document.createElement("a");
1390
- b.href = l, b.download = `screenshot-${Date.now()}.png`, b.click(), URL.revokeObjectURL(l);
1391
- }
1392
- }, "image/png");
1393
- } catch (a) {
1394
- a instanceof Error && a.message.includes("tainted") ? (console.error("Canvas is tainted - video source may not have proper CORS headers. Try setting crossOrigin='anonymous' on the video element."), alert("Screenshot failed: The video source doesn't allow screenshots due to CORS policy. Please ensure the video server includes proper CORS headers or set crossOrigin='anonymous' on the video player.")) : (console.error("Screenshot failed:", a), alert("Screenshot failed: " + (a instanceof Error ? a.message : "Unknown error")));
1395
- }
1396
- } };
1397
- }
1398
- const Ne = (e, t = {}) => {
1399
- const {
1400
- trackUserBehavior: r = !0,
1401
- adaptToNetwork: s = !0,
1402
- strategy: d = "balanced",
1403
- maxPreloadItems: u = 3,
1404
- preloadRadius: a = 2
1405
- } = t, l = G({
1406
- mouseMovements: 0,
1407
- scrollEvents: 0,
1408
- keyPresses: 0,
1409
- focusEvents: 0,
1410
- timeOnPage: 0,
1411
- engagementScore: 0,
1412
- lastInteraction: Date.now()
1413
- }), b = G(null), D = G(/* @__PURE__ */ new Set()), F = G([]), y = B(() => {
1414
- const i = l.current, p = Math.min(i.timeOnPage / 6e4, 1), h = Math.min(
1415
- (i.mouseMovements + i.scrollEvents + i.keyPresses) / 100,
1416
- 1
1417
- );
1418
- return (p * 0.4 + h * 0.6) * 100;
1419
- }, []), n = B((i, p = 1) => {
1420
- const h = l.current;
1421
- h[i] = typeof h[i] == "number" ? h[i] + p : Date.now(), h.engagementScore = y(), h.lastInteraction = Date.now();
1422
- }, [y]), w = B(() => {
1423
- if (!b.current || !s)
1424
- return { type: "unknown", downlink: 10, effectiveType: "4g", saveData: !1 };
1425
- const i = b.current;
1426
- return {
1427
- type: i.type,
1428
- downlink: i.downlink || 10,
1429
- effectiveType: i.effectiveType || "4g",
1430
- saveData: i.saveData || !1,
1431
- rtt: i.rtt || 100
1432
- };
1433
- }, [s]), g = B((i, p, h = 0) => {
1434
- if (D.current.has(i.src))
1435
- return { shouldPreload: !1, priority: "low", reason: "Already preloaded" };
1436
- const T = Math.abs(p - h);
1437
- if (T > a)
1438
- return { shouldPreload: !1, priority: "low", reason: "Outside preload radius" };
1439
- const S = l.current, E = w(), H = S.engagementScore, P = Date.now() - S.lastInteraction;
1440
- if (E.saveData)
1441
- return { shouldPreload: !1, priority: "low", reason: "Data saver mode" };
1442
- let R = !1, k = "medium", L = "";
1443
- switch (d) {
1444
- case "conservative":
1445
- R = H > 70 && E.effectiveType !== "2g" && T === 1, k = R ? "medium" : "low", L = R ? "High engagement and optimal network" : "Conservative strategy";
1446
- break;
1447
- case "aggressive":
1448
- R = H > 30 && E.effectiveType !== "slow-2g", k = H > 70 ? "high" : H > 50 ? "medium" : "low", L = R ? "Aggressive preloading" : "Low engagement";
1449
- break;
1450
- case "balanced":
1451
- default:
1452
- const C = E.effectiveType === "4g" ? 1 : E.effectiveType === "3g" ? 0.7 : 0.3, A = H * C;
1453
- R = A > 40 && T <= 2, k = A > 70 ? "high" : A > 55 ? "medium" : "low", L = R ? `Balanced: score ${A.toFixed(1)}` : "Low adjusted score";
1454
- break;
1455
- }
1456
- return R && ((i.type === "hls" || i.type === "m3u8") && (k = k === "low" ? "medium" : "high"), P < 5e3 && (k = "high", L += " + Recent interaction"), (i.type === "mp4" || i.type === "webm") && (k = k === "low" ? "medium" : k)), { shouldPreload: R, priority: k, reason: L };
1457
- }, [d, a, w, y]), o = B(async (i, p) => {
1458
- try {
1459
- const h = document.createElement("link");
1460
- switch (h.rel = "preload", h.href = i.src, i.type) {
1461
- case "hls":
1462
- case "m3u8":
1463
- h.as = "fetch";
1464
- break;
1465
- case "mp4":
1466
- case "webm":
1467
- h.as = "video";
1468
- break;
1469
- case "mp3":
1470
- case "wav":
1471
- case "ogg":
1472
- h.as = "audio";
1473
- break;
1474
- default:
1475
- h.as = "fetch";
1476
- }
1477
- h.crossOrigin = "anonymous", document.head.appendChild(h), D.current.add(i.src), console.debug(`Preloaded: ${i.src} (${p})`), setTimeout(() => {
1478
- document.head.contains(h) && document.head.removeChild(h);
1479
- }, 3e4);
1480
- } catch (h) {
1481
- console.warn("Failed to preload source:", i.src, h);
1482
- }
1483
- }, []), f = B(() => {
1484
- if (F.current.length === 0) return;
1485
- const p = [...F.current].sort((h, T) => T.priority - h.priority).slice(0, u);
1486
- F.current = [], p.forEach(({ source: h, priority: T }) => {
1487
- o(h, T);
1488
- });
1489
- }, [u, o]), M = B((i = 0) => {
1490
- F.current = [], e.forEach((p, h) => {
1491
- const T = g(p, h, i);
1492
- if (T.shouldPreload) {
1493
- const S = T.priority === "high" ? 3 : T.priority === "medium" ? 2 : 1;
1494
- F.current.push({ source: p, priority: S });
1495
- }
1496
- }), f();
1497
- }, [e, g, f]);
1498
- return $(() => {
1499
- if (!r) return;
1500
- const i = () => n("mouseMovements"), p = () => n("scrollEvents"), h = () => n("keyPresses"), T = () => n("focusEvents");
1501
- document.addEventListener("mousemove", i, { passive: !0 }), document.addEventListener("scroll", p, { passive: !0 }), document.addEventListener("keydown", h, { passive: !0 }), document.addEventListener("focusin", T, { passive: !0 });
1502
- const S = setInterval(() => {
1503
- n("timeOnPage", 1);
1504
- }, 1e3);
1505
- return () => {
1506
- document.removeEventListener("mousemove", i), document.removeEventListener("scroll", p), document.removeEventListener("keydown", h), document.removeEventListener("focusin", T), clearInterval(S);
1507
- };
1508
- }, [r, n]), $(() => {
1509
- if (!s || !("connection" in navigator)) return;
1510
- const i = navigator.connection;
1511
- b.current = i;
1512
- const p = () => {
1513
- M();
1514
- };
1515
- return i.addEventListener("change", p), () => {
1516
- i.removeEventListener("change", p);
1517
- };
1518
- }, [s, M]), $(() => {
1519
- M();
1520
- }, [M]), ae(() => ({
1521
- /**
1522
- * Manually trigger preloading for specific index
1523
- */
1524
- preloadAtIndex: (i) => {
1525
- M(i);
1526
- },
1527
- /**
1528
- * Get current user behavior data
1529
- */
1530
- getUserBehavior: () => ({ ...l.current }),
1531
- /**
1532
- * Get current network conditions
1533
- */
1534
- getNetworkConditions: w,
1535
- /**
1536
- * Clear preloaded items cache
1537
- */
1538
- clearCache: () => {
1539
- D.current.clear();
1540
- },
1541
- /**
1542
- * Get preloading statistics
1543
- */
1544
- getStats: () => ({
1545
- preloadedItems: D.current.size,
1546
- engagementScore: l.current.engagementScore,
1547
- queueLength: F.current.length,
1548
- maxPreloadItems: u
1549
- })
1550
- }), [M, w, u]);
1551
- };
1552
- function Pe(e) {
1553
- const [t, r] = K(!1), [s, d] = K([]), [u, a] = K(""), l = (y) => {
1554
- const n = y.split(":"), w = n[2] ? parseFloat(n[2]) : 0, g = n[1] ? parseInt(n[1], 10) * 60 : 0;
1555
- return (n[0] ? parseInt(n[0], 10) * 3600 : 0) + g + w;
1556
- }, b = async (y) => {
1557
- try {
1558
- const w = await (await fetch(y)).text(), g = [], o = w.split(`
1559
- `);
1560
- let f = 0;
1561
- for (; f < o.length; ) {
1562
- if (o[f]?.includes("-->")) {
1563
- const [M, m] = (o[f] || "").split("-->").map((T) => T.trim()), i = l(M || ""), p = l(m || "");
1564
- f++;
1565
- let h = "";
1566
- for (; f < o.length && o[f]?.trim() !== ""; )
1567
- h += (h ? " " : "") + o[f]?.trim(), f++;
1568
- h && g.push({ start: i, end: p, text: h });
1569
- }
1570
- f++;
1571
- }
1572
- d(g);
1573
- } catch (n) {
1574
- console.error("Failed to load subtitles:", n);
1575
- }
1576
- }, D = (y) => !t || s.length === 0 ? "" : s.find(
1577
- (w) => y >= w.start && y <= w.end
1578
- )?.text || "", F = () => {
1579
- r((y) => {
1580
- const n = !y;
1581
- return n && e && s.length === 0 ? b(e) : n || a(""), n;
1582
- });
1583
- };
1584
- return $(() => {
1585
- t || a("");
1586
- }, [t]), {
1587
- subtitlesEnabled: t,
1588
- currentSubtitle: u,
1589
- toggleSubtitles: F,
1590
- getCurrentSubtitle: D,
1591
- setCurrentSubtitle: a
1592
- };
1593
- }
1594
- function Ge(e) {
1595
- return he(
1596
- "useVideoPlayer",
1597
- "useMediaPlayer (the primary media player hook)"
1598
- ), be(e);
1599
- }
1600
- function $e(e) {
1601
- return he(
1602
- "useEnhancedSubtitles",
1603
- "useSubtitles (the current subtitle hook)"
1604
- ), Pe(e);
1605
- }
1606
- export {
1607
- Ae as a,
1608
- Oe as b,
1609
- Ve as c,
1610
- ke as d,
1611
- _e as e,
1612
- Be as f,
1613
- He as g,
1614
- Re as h,
1615
- Ie as i,
1616
- ge as j,
1617
- be as k,
1618
- Te as l,
1619
- ye as m,
1620
- Ee as n,
1621
- Ne as o,
1622
- Me as p,
1623
- Pe as q,
1624
- Ge as r,
1625
- $e as s,
1626
- Ce as t,
1627
- ie as u,
1628
- Ue as v
1629
- };
1630
- //# sourceMappingURL=hooks-Da2wVXlF.js.map