@therealtinhtute/baroiplayer 1.0.8 → 1.1.0

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 (1003) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +15 -15
  3. package/dist/context/media.js +2 -0
  4. package/dist/context/media.js.map +1 -0
  5. package/dist/context/media.mjs +15 -0
  6. package/dist/context/media.mjs.map +1 -0
  7. package/dist/context/store.js +2 -0
  8. package/dist/context/store.js.map +1 -0
  9. package/dist/context/store.mjs +5 -0
  10. package/dist/context/store.mjs.map +1 -0
  11. package/dist/context-BYwDoSRX.js +1172 -0
  12. package/dist/context-BYwDoSRX.js.map +1 -0
  13. package/dist/context-eNS62_ac.cjs +23 -0
  14. package/dist/context-eNS62_ac.cjs.map +1 -0
  15. package/dist/core-events-B1iM2F46.cjs +2 -0
  16. package/dist/core-events-B1iM2F46.cjs.map +1 -0
  17. package/dist/core-events-DunPHKRE.js +484 -0
  18. package/dist/core-events-DunPHKRE.js.map +1 -0
  19. package/dist/core-plugins-CROGvQUy.js +686 -0
  20. package/dist/core-plugins-CROGvQUy.js.map +1 -0
  21. package/dist/core-plugins-DtsHBOtF.cjs +2 -0
  22. package/dist/core-plugins-DtsHBOtF.cjs.map +1 -0
  23. package/dist/core.js +37 -0
  24. package/dist/core.js.map +1 -0
  25. package/dist/core.mjs +1233 -0
  26. package/dist/core.mjs.map +1 -0
  27. package/dist/enhanced-components-DUw2KrmQ.js +1142 -0
  28. package/dist/enhanced-components-DUw2KrmQ.js.map +1 -0
  29. package/dist/enhanced-components-DXBCHU0v.cjs +2 -0
  30. package/dist/enhanced-components-DXBCHU0v.cjs.map +1 -0
  31. package/dist/hooks-BW-JjVgP.cjs +4 -0
  32. package/dist/hooks-BW-JjVgP.cjs.map +1 -0
  33. package/dist/hooks-CyX6De5M.js +1693 -0
  34. package/dist/hooks-CyX6De5M.js.map +1 -0
  35. package/dist/index.css +1 -102
  36. package/dist/index.js +112 -21
  37. package/dist/index.js.map +1 -0
  38. package/dist/index.mjs +6275 -16
  39. package/dist/index.mjs.map +1 -0
  40. package/dist/minimal-components-Bdcpxav5.cjs +2 -0
  41. package/dist/minimal-components-Bdcpxav5.cjs.map +1 -0
  42. package/dist/minimal-components-DlRK7Qu_.js +1927 -0
  43. package/dist/minimal-components-DlRK7Qu_.js.map +1 -0
  44. package/dist/minimal-components.css +1 -589
  45. package/dist/mona-loading.gif +0 -0
  46. package/dist/performance-monitor-C5k6FDXw.js +301 -0
  47. package/dist/performance-monitor-C5k6FDXw.js.map +1 -0
  48. package/dist/performance-monitor-lJmuUjQQ.cjs +2 -0
  49. package/dist/performance-monitor-lJmuUjQQ.cjs.map +1 -0
  50. package/dist/utils-CFOue_9K.cjs +9 -0
  51. package/dist/utils-CFOue_9K.cjs.map +1 -0
  52. package/dist/utils-Dzpl2ArK.js +2844 -0
  53. package/dist/utils-Dzpl2ArK.js.map +1 -0
  54. package/dist/utils.js +2 -0
  55. package/dist/utils.js.map +1 -0
  56. package/dist/utils.mjs +11 -0
  57. package/dist/utils.mjs.map +1 -0
  58. package/package.json +11 -40
  59. package/src/adapters/videojs-adapter.tsx +441 -441
  60. package/src/components/AnimateLoading.tsx +85 -93
  61. package/src/components/LoadingState.tsx +199 -208
  62. package/src/components/__tests__/media-player-accessibility.test.tsx +510 -0
  63. package/src/components/__tests__/media-player-react19.test.tsx +457 -0
  64. package/src/components/accessibility/keyboard-help-overlay.tsx +199 -207
  65. package/src/components/basic/index.ts +28 -28
  66. package/src/components/enhanced/advanced-features.tsx +49 -54
  67. package/src/components/enhanced/debug-panel.tsx +148 -122
  68. package/src/components/enhanced/enhanced-controls.tsx +117 -120
  69. package/src/components/enhanced/enhanced-media-player.tsx +228 -214
  70. package/src/components/enhanced/error-handling.tsx +50 -57
  71. package/src/components/enhanced/index.ts +27 -27
  72. package/src/components/enhanced/media-player-enhanced.tsx +117 -83
  73. package/src/components/examples/basic-video-player.tsx +35 -40
  74. package/src/components/examples/enhanced-controls-example.tsx +16 -30
  75. package/src/components/examples/enhanced-media-player-example.tsx +196 -187
  76. package/src/components/examples/loading-states-demo.tsx +113 -113
  77. package/src/components/examples/react-19-demo.tsx +88 -116
  78. package/src/components/examples/volume-orientation-demo.tsx +77 -85
  79. package/src/components/icon-demo.tsx +189 -202
  80. package/src/components/icons/svg-icons/ArrowLeftIcon.tsx +13 -13
  81. package/src/components/icons/svg-icons/ArrowRightIcon.tsx +13 -13
  82. package/src/components/icons/svg-icons/AudioIcon.tsx +16 -16
  83. package/src/components/icons/svg-icons/BackwardIcon.tsx +7 -7
  84. package/src/components/icons/svg-icons/CameraIcon.tsx +13 -13
  85. package/src/components/icons/svg-icons/CheckIcon.tsx +13 -13
  86. package/src/components/icons/svg-icons/EnablePiPIcon.tsx +13 -13
  87. package/src/components/icons/svg-icons/ForwardIcon.tsx +7 -7
  88. package/src/components/icons/svg-icons/FullscreenEnterIcon.tsx +18 -18
  89. package/src/components/icons/svg-icons/FullscreenExitIcon.tsx +18 -18
  90. package/src/components/icons/svg-icons/LoadingIcon.tsx +27 -27
  91. package/src/components/icons/svg-icons/PauseIcon.tsx +18 -18
  92. package/src/components/icons/svg-icons/PlayIcon.tsx +16 -16
  93. package/src/components/icons/svg-icons/PlaybackSpeedIcon.tsx +18 -18
  94. package/src/components/icons/svg-icons/QualityIcon.tsx +16 -16
  95. package/src/components/icons/svg-icons/SettingsIcon.tsx +7 -7
  96. package/src/components/icons/svg-icons/SliderIcon.tsx +16 -16
  97. package/src/components/icons/svg-icons/SubtitleIcon.tsx +16 -16
  98. package/src/components/icons/svg-icons/SubtitleOffIcon.tsx +20 -20
  99. package/src/components/icons/svg-icons/UnPiPIcon.tsx +13 -13
  100. package/src/components/icons/svg-icons/VolumeMutedIcon.tsx +11 -11
  101. package/src/components/icons/svg-icons/VolumeOneIcon.tsx +17 -17
  102. package/src/components/icons/svg-icons/VolumeThreeIcon.tsx +11 -11
  103. package/src/components/icons/svg-icons/VolumeTwoIcon.tsx +11 -11
  104. package/src/components/legacy.tsx +8 -14
  105. package/src/components/media-metadata-display.tsx +78 -79
  106. package/src/components/media-player-controls.tsx +37 -40
  107. package/src/components/media-player-error.tsx +2 -2
  108. package/src/components/media-player-fullscreen.tsx +2 -2
  109. package/src/components/media-player-hls.tsx +89 -89
  110. package/src/components/media-player-play.tsx +2 -2
  111. package/src/components/media-player-root.tsx +20 -22
  112. package/src/components/media-player-seek.tsx +1 -1
  113. package/src/components/media-player-tooltip.tsx +1 -1
  114. package/src/components/media-player-video.tsx +28 -6
  115. package/src/components/media-player-volume.tsx +3 -3
  116. package/src/components/media-player.tsx +209 -174
  117. package/src/components/media-suspense.tsx +71 -89
  118. package/src/components/player-settings-form.tsx +143 -148
  119. package/src/components/react-player-wrapper.tsx +23 -23
  120. package/src/components/simple-video-player.tsx +53 -51
  121. package/src/components/ui/blur-poster.tsx +93 -0
  122. package/src/components/ui/empty-state.tsx +91 -0
  123. package/src/components/ui/enhanced-seek-bar.tsx +75 -56
  124. package/src/components/ui/error-state.tsx +124 -0
  125. package/src/components/ui/fullscreen-button.tsx +71 -50
  126. package/src/components/ui/loading-skeleton.tsx +107 -0
  127. package/src/components/ui/media-resource-preloader.tsx +265 -198
  128. package/src/components/ui/offline-message.tsx +98 -0
  129. package/src/components/ui/play-button.tsx +79 -87
  130. package/src/components/ui/seek-bar.tsx +170 -140
  131. package/src/components/ui/time-display.tsx +33 -12
  132. package/src/components/ui/volume-control.tsx +91 -44
  133. package/src/components/unified/base-media-player.tsx +45 -51
  134. package/src/components/unified/media-player.tsx +3 -3
  135. package/src/components/variants/minimal/AccessibleMinimalPlayer.tsx +508 -502
  136. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.tsx +108 -87
  137. package/src/components/variants/minimal/MinimalControls.tsx +100 -118
  138. package/src/components/variants/minimal/MinimalLoading.tsx +19 -23
  139. package/src/components/variants/minimal/MinimalMediaPlayer.tsx +283 -280
  140. package/src/components/variants/minimal/MinimalOverlay.tsx +43 -49
  141. package/src/components/variants/minimal/MinimalPlayButton.tsx +44 -53
  142. package/src/components/variants/minimal/MinimalSeekBar.tsx +130 -140
  143. package/src/components/variants/minimal/MinimalVolumeControl.tsx +59 -64
  144. package/src/components/variants/minimal/SimpleMinimalPlayer.tsx +29 -32
  145. package/src/components/variants/minimal/components/CenterPlayButton.tsx +1 -1
  146. package/src/components/variants/minimal/components/ControlBar.tsx +7 -11
  147. package/src/components/variants/minimal/components/EnhancedSettingsMenu.tsx +381 -330
  148. package/src/components/variants/minimal/components/PlaybackControls.tsx +6 -11
  149. package/src/components/variants/minimal/components/RightControls.tsx +8 -17
  150. package/src/components/variants/minimal/components/SeekBar.tsx +16 -20
  151. package/src/components/variants/minimal/components/SettingsDropdown.tsx +12 -14
  152. package/src/components/variants/minimal/components/SubtitleDisplay.tsx +1 -1
  153. package/src/components/variants/minimal/components/TimeDisplay.tsx +2 -5
  154. package/src/components/variants/minimal/components/VideoElement.tsx +3 -10
  155. package/src/components/variants/minimal/components/VolumeControl.tsx +42 -39
  156. package/src/components/video-player.tsx +10 -10
  157. package/src/context/__tests__/media-store.test.ts +509 -0
  158. package/src/context/error-handling.ts +106 -102
  159. package/src/context/media-context.tsx +56 -10
  160. package/src/context/media-provider.tsx +16 -17
  161. package/src/context/media-store.ts +68 -60
  162. package/src/context/persistence.ts +74 -65
  163. package/src/core/events/event-system.ts +422 -416
  164. package/src/core/events/hooks.ts +275 -252
  165. package/src/core/events/index.ts +14 -14
  166. package/src/core/events/middleware.ts +269 -252
  167. package/src/core/index.ts +8 -8
  168. package/src/core/optimization/bundle-optimizer.tsx +65 -60
  169. package/src/core/performance/cicd.ts +91 -89
  170. package/src/core/performance/index.ts +22 -22
  171. package/src/core/performance/media-loading-optimizer.ts +518 -512
  172. package/src/core/performance/performance-budgets.ts +414 -409
  173. package/src/core/performance/performance-monitor.tsx +451 -439
  174. package/src/core/performance/performance-testing.ts +439 -437
  175. package/src/core/plugins/__tests__/registry.test.ts +595 -0
  176. package/src/core/plugins/base-plugin.ts +197 -196
  177. package/src/core/plugins/enhanced-plugin-system.ts +136 -136
  178. package/src/core/plugins/examples/analytics-plugin.ts +229 -230
  179. package/src/core/plugins/index.ts +26 -26
  180. package/src/core/plugins/registry.ts +315 -323
  181. package/src/core/plugins/types.ts +97 -105
  182. package/src/core/plugins/utils.ts +292 -291
  183. package/src/core/progressive-loading.tsx +297 -288
  184. package/src/core/providers/enhanced-hls-provider.ts +118 -90
  185. package/src/core/providers/lazy-provider.tsx +51 -0
  186. package/src/core/providers/service-provider.tsx +104 -108
  187. package/src/core/utils.tsx +22 -26
  188. package/src/features/media-session/media-session-manager.ts +406 -402
  189. package/src/features/picture-in-picture/pip-manager.ts +364 -365
  190. package/src/features/playlist/playlist-manager.ts +597 -585
  191. package/src/features/subtitles/subtitle-manager.ts +424 -430
  192. package/src/features/subtitles/subtitle-parser.ts +274 -273
  193. package/src/features/thumbnails/thumbnail-generator.ts +504 -502
  194. package/src/hooks/__tests__/use-media-player.test.ts +712 -0
  195. package/src/hooks/__tests__/use-media-state.test.tsx +316 -0
  196. package/src/hooks/accessibility/index.ts +20 -20
  197. package/src/hooks/accessibility/use-accessibility-preferences.ts +177 -175
  198. package/src/hooks/accessibility/use-focus-management.ts +170 -163
  199. package/src/hooks/accessibility/use-keyboard-shortcuts.ts +132 -124
  200. package/src/hooks/accessibility/use-screen-reader.ts +191 -161
  201. package/src/hooks/core/index.ts +30 -30
  202. package/src/hooks/legacy.ts +3 -9
  203. package/src/hooks/use-buffer-health.ts +218 -0
  204. package/src/hooks/use-enhanced-media-player.ts +74 -82
  205. package/src/hooks/use-focus-trap.tsx +162 -0
  206. package/src/hooks/use-intelligent-preloading.ts +236 -232
  207. package/src/hooks/use-keyboard-controls.ts +80 -80
  208. package/src/hooks/use-keyboard-shortcuts.ts +255 -0
  209. package/src/hooks/use-media-actions.ts +81 -72
  210. package/src/hooks/use-media-metadata.ts +75 -73
  211. package/src/hooks/use-media-optimistic.ts +145 -151
  212. package/src/hooks/use-media-player.ts +109 -107
  213. package/src/hooks/use-media-state.ts +63 -59
  214. package/src/hooks/use-memory-optimization.ts +119 -117
  215. package/src/hooks/use-network-status.ts +124 -0
  216. package/src/hooks/use-optimistic-controls.ts +91 -88
  217. package/src/hooks/use-optimized-media.ts +76 -56
  218. package/src/hooks/use-smart-preload.ts +230 -0
  219. package/src/hooks/use-touch-gestures.ts +427 -383
  220. package/src/hooks/useEnhancedSubtitles.ts +245 -245
  221. package/src/hooks/useKeyboardShortcuts.ts +52 -52
  222. package/src/hooks/useMediaControls.ts +22 -22
  223. package/src/hooks/useScreenshot.ts +51 -47
  224. package/src/hooks/useSubtitles.ts +53 -53
  225. package/src/hooks/useVideoPlayer.ts +61 -61
  226. package/src/icons/components/FullscreenIcon.tsx +34 -35
  227. package/src/icons/components/SettingsIcon.tsx +35 -36
  228. package/src/icons/components/animated/LoadingIcon.tsx +25 -41
  229. package/src/icons/components/animated/PlayPauseIcon.tsx +38 -46
  230. package/src/icons/components/media/PauseIcon.tsx +36 -37
  231. package/src/icons/components/media/PlayIcon.tsx +35 -36
  232. package/src/icons/components/volume/VolumeIcon.tsx +36 -37
  233. package/src/icons/components/volume/VolumeOffIcon.tsx +36 -37
  234. package/src/icons/index.ts +38 -38
  235. package/src/icons/provider.tsx +40 -46
  236. package/src/icons/types.ts +51 -31
  237. package/src/index-enhanced.ts +10 -10
  238. package/src/index-legacy.ts +3 -4
  239. package/src/index.css +80 -80
  240. package/src/index.ts +8 -23
  241. package/src/lib/__tests__/async-utils.test.ts +291 -0
  242. package/src/lib/async-utils.ts +194 -0
  243. package/src/lib/deprecation.ts +4 -4
  244. package/src/lib/index.ts +3 -2
  245. package/src/lib/utils.ts +3 -3
  246. package/src/styles/globals.css +3 -3
  247. package/src/styles/minimal-player.css +606 -574
  248. package/src/styles/pixel-art.css +23 -28
  249. package/src/styles/videojs.css +43 -43
  250. package/src/test/accessibility-utils.ts +208 -0
  251. package/src/test/browser-simulation.ts +235 -0
  252. package/src/test/media-mocks.ts +156 -0
  253. package/src/test/performance-utils.ts +192 -0
  254. package/src/test/setup.ts +241 -44
  255. package/src/types/events.ts +30 -30
  256. package/src/types/formats.ts +56 -72
  257. package/src/types/index.ts +5 -40
  258. package/src/types/videojs-plugins.d.ts +6 -6
  259. package/dist/index.d.ts +0 -1425
  260. package/dist/package.json +0 -62
  261. package/dist/src/adapters/videojs-adapter.d.ts +0 -38
  262. package/dist/src/adapters/videojs-adapter.tsx +0 -470
  263. package/dist/src/components/AnimateLoading.d.ts +0 -9
  264. package/dist/src/components/AnimateLoading.tsx +0 -115
  265. package/dist/src/components/LoadingState.d.ts +0 -33
  266. package/dist/src/components/LoadingState.tsx +0 -248
  267. package/dist/src/components/accessibility/keyboard-help-overlay.d.ts +0 -17
  268. package/dist/src/components/accessibility/keyboard-help-overlay.tsx +0 -213
  269. package/dist/src/components/audio-player.d.ts +0 -3
  270. package/dist/src/components/audio-player.tsx +0 -85
  271. package/dist/src/components/basic/index.d.ts +0 -26
  272. package/dist/src/components/basic/index.ts +0 -37
  273. package/dist/src/components/enhanced/advanced-features.d.ts +0 -45
  274. package/dist/src/components/enhanced/advanced-features.tsx +0 -316
  275. package/dist/src/components/enhanced/debug-panel.d.ts +0 -70
  276. package/dist/src/components/enhanced/debug-panel.tsx +0 -422
  277. package/dist/src/components/enhanced/enhanced-controls.d.ts +0 -50
  278. package/dist/src/components/enhanced/enhanced-controls.tsx +0 -600
  279. package/dist/src/components/enhanced/enhanced-media-player.d.ts +0 -26
  280. package/dist/src/components/enhanced/enhanced-media-player.tsx +0 -509
  281. package/dist/src/components/enhanced/error-handling.d.ts +0 -36
  282. package/dist/src/components/enhanced/error-handling.tsx +0 -345
  283. package/dist/src/components/enhanced/index.d.ts +0 -7
  284. package/dist/src/components/enhanced/index.ts +0 -39
  285. package/dist/src/components/enhanced/media-player-enhanced.d.ts +0 -21
  286. package/dist/src/components/enhanced/media-player-enhanced.tsx +0 -349
  287. package/dist/src/components/examples/basic-video-player.d.ts +0 -10
  288. package/dist/src/components/examples/basic-video-player.tsx +0 -55
  289. package/dist/src/components/examples/custom-controls-example.d.ts +0 -10
  290. package/dist/src/components/examples/custom-controls-example.tsx +0 -63
  291. package/dist/src/components/examples/enhanced-controls-example.d.ts +0 -9
  292. package/dist/src/components/examples/enhanced-controls-example.tsx +0 -114
  293. package/dist/src/components/examples/enhanced-media-player-example.d.ts +0 -9
  294. package/dist/src/components/examples/enhanced-media-player-example.tsx +0 -293
  295. package/dist/src/components/examples/loading-states-demo.d.ts +0 -2
  296. package/dist/src/components/examples/loading-states-demo.tsx +0 -142
  297. package/dist/src/components/examples/react-19-demo.d.ts +0 -10
  298. package/dist/src/components/examples/react-19-demo.tsx +0 -381
  299. package/dist/src/components/examples/volume-orientation-demo.d.ts +0 -2
  300. package/dist/src/components/examples/volume-orientation-demo.tsx +0 -114
  301. package/dist/src/components/icon-demo.d.ts +0 -2
  302. package/dist/src/components/icon-demo.tsx +0 -209
  303. package/dist/src/components/icons/index.d.ts +0 -36
  304. package/dist/src/components/icons/index.tsx +0 -166
  305. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.d.ts +0 -4
  306. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.tsx +0 -18
  307. package/dist/src/components/icons/svg-icons/ArrowRightIcon.d.ts +0 -4
  308. package/dist/src/components/icons/svg-icons/ArrowRightIcon.tsx +0 -18
  309. package/dist/src/components/icons/svg-icons/AudioIcon.d.ts +0 -4
  310. package/dist/src/components/icons/svg-icons/AudioIcon.tsx +0 -22
  311. package/dist/src/components/icons/svg-icons/BackwardIcon.d.ts +0 -4
  312. package/dist/src/components/icons/svg-icons/BackwardIcon.tsx +0 -12
  313. package/dist/src/components/icons/svg-icons/CameraIcon.d.ts +0 -4
  314. package/dist/src/components/icons/svg-icons/CameraIcon.tsx +0 -19
  315. package/dist/src/components/icons/svg-icons/CheckIcon.d.ts +0 -4
  316. package/dist/src/components/icons/svg-icons/CheckIcon.tsx +0 -19
  317. package/dist/src/components/icons/svg-icons/EnablePiPIcon.d.ts +0 -4
  318. package/dist/src/components/icons/svg-icons/EnablePiPIcon.tsx +0 -17
  319. package/dist/src/components/icons/svg-icons/ForwardIcon.d.ts +0 -4
  320. package/dist/src/components/icons/svg-icons/ForwardIcon.tsx +0 -12
  321. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts +0 -4
  322. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.tsx +0 -23
  323. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.d.ts +0 -4
  324. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.tsx +0 -23
  325. package/dist/src/components/icons/svg-icons/LoadingIcon.d.ts +0 -4
  326. package/dist/src/components/icons/svg-icons/LoadingIcon.tsx +0 -32
  327. package/dist/src/components/icons/svg-icons/PauseIcon.d.ts +0 -4
  328. package/dist/src/components/icons/svg-icons/PauseIcon.tsx +0 -23
  329. package/dist/src/components/icons/svg-icons/PlayIcon.d.ts +0 -4
  330. package/dist/src/components/icons/svg-icons/PlayIcon.tsx +0 -21
  331. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts +0 -4
  332. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.tsx +0 -23
  333. package/dist/src/components/icons/svg-icons/QualityIcon.d.ts +0 -4
  334. package/dist/src/components/icons/svg-icons/QualityIcon.tsx +0 -21
  335. package/dist/src/components/icons/svg-icons/SettingsIcon.d.ts +0 -4
  336. package/dist/src/components/icons/svg-icons/SettingsIcon.tsx +0 -12
  337. package/dist/src/components/icons/svg-icons/SliderIcon.d.ts +0 -4
  338. package/dist/src/components/icons/svg-icons/SliderIcon.tsx +0 -21
  339. package/dist/src/components/icons/svg-icons/SubtitleIcon.d.ts +0 -4
  340. package/dist/src/components/icons/svg-icons/SubtitleIcon.tsx +0 -21
  341. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.d.ts +0 -4
  342. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.tsx +0 -25
  343. package/dist/src/components/icons/svg-icons/UnPiPIcon.d.ts +0 -4
  344. package/dist/src/components/icons/svg-icons/UnPiPIcon.tsx +0 -17
  345. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.d.ts +0 -4
  346. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.tsx +0 -16
  347. package/dist/src/components/icons/svg-icons/VolumeOneIcon.d.ts +0 -4
  348. package/dist/src/components/icons/svg-icons/VolumeOneIcon.tsx +0 -22
  349. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.d.ts +0 -4
  350. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.tsx +0 -16
  351. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.d.ts +0 -4
  352. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.tsx +0 -16
  353. package/dist/src/components/legacy.d.ts +0 -13
  354. package/dist/src/components/legacy.tsx +0 -93
  355. package/dist/src/components/media-metadata-display.d.ts +0 -11
  356. package/dist/src/components/media-metadata-display.tsx +0 -100
  357. package/dist/src/components/media-player-audio.d.ts +0 -9
  358. package/dist/src/components/media-player-audio.tsx +0 -39
  359. package/dist/src/components/media-player-controls.d.ts +0 -23
  360. package/dist/src/components/media-player-controls.tsx +0 -226
  361. package/dist/src/components/media-player-error.d.ts +0 -16
  362. package/dist/src/components/media-player-error.tsx +0 -163
  363. package/dist/src/components/media-player-fullscreen.d.ts +0 -12
  364. package/dist/src/components/media-player-fullscreen.tsx +0 -109
  365. package/dist/src/components/media-player-hls.d.ts +0 -23
  366. package/dist/src/components/media-player-hls.tsx +0 -111
  367. package/dist/src/components/media-player-loading.d.ts +0 -12
  368. package/dist/src/components/media-player-loading.tsx +0 -76
  369. package/dist/src/components/media-player-play.d.ts +0 -11
  370. package/dist/src/components/media-player-play.tsx +0 -75
  371. package/dist/src/components/media-player-root.d.ts +0 -28
  372. package/dist/src/components/media-player-root.tsx +0 -340
  373. package/dist/src/components/media-player-seek.d.ts +0 -15
  374. package/dist/src/components/media-player-seek.tsx +0 -168
  375. package/dist/src/components/media-player-time.d.ts +0 -12
  376. package/dist/src/components/media-player-time.tsx +0 -99
  377. package/dist/src/components/media-player-tooltip.d.ts +0 -13
  378. package/dist/src/components/media-player-tooltip.tsx +0 -58
  379. package/dist/src/components/media-player-video.d.ts +0 -9
  380. package/dist/src/components/media-player-video.tsx +0 -39
  381. package/dist/src/components/media-player-volume.d.ts +0 -13
  382. package/dist/src/components/media-player-volume.tsx +0 -155
  383. package/dist/src/components/media-player.d.ts +0 -3
  384. package/dist/src/components/media-player.tsx +0 -257
  385. package/dist/src/components/media-suspense.d.ts +0 -78
  386. package/dist/src/components/media-suspense.tsx +0 -362
  387. package/dist/src/components/player-settings-form.d.ts +0 -8
  388. package/dist/src/components/player-settings-form.tsx +0 -163
  389. package/dist/src/components/react-player-wrapper.d.ts +0 -64
  390. package/dist/src/components/react-player-wrapper.tsx +0 -651
  391. package/dist/src/components/simple-video-player.d.ts +0 -9
  392. package/dist/src/components/simple-video-player.tsx +0 -60
  393. package/dist/src/components/ui/button.tsx +0 -49
  394. package/dist/src/components/ui/dropdown-menu.tsx +0 -137
  395. package/dist/src/components/ui/enhanced-seek-bar.d.ts +0 -3
  396. package/dist/src/components/ui/enhanced-seek-bar.tsx +0 -235
  397. package/dist/src/components/ui/fullscreen-button.d.ts +0 -3
  398. package/dist/src/components/ui/fullscreen-button.tsx +0 -60
  399. package/dist/src/components/ui/icons.tsx +0 -174
  400. package/dist/src/components/ui/media-resource-preloader.d.ts +0 -21
  401. package/dist/src/components/ui/media-resource-preloader.tsx +0 -393
  402. package/dist/src/components/ui/play-button.d.ts +0 -3
  403. package/dist/src/components/ui/play-button.tsx +0 -107
  404. package/dist/src/components/ui/seek-bar.d.ts +0 -3
  405. package/dist/src/components/ui/seek-bar.tsx +0 -161
  406. package/dist/src/components/ui/slider.tsx +0 -55
  407. package/dist/src/components/ui/time-display.d.ts +0 -3
  408. package/dist/src/components/ui/time-display.tsx +0 -40
  409. package/dist/src/components/ui/tooltip.tsx +0 -131
  410. package/dist/src/components/ui/volume-control.d.ts +0 -3
  411. package/dist/src/components/ui/volume-control.tsx +0 -143
  412. package/dist/src/components/unified/base-media-player.d.ts +0 -18
  413. package/dist/src/components/unified/base-media-player.tsx +0 -246
  414. package/dist/src/components/unified/media-player.d.ts +0 -37
  415. package/dist/src/components/unified/media-player.tsx +0 -75
  416. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts +0 -42
  417. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.tsx +0 -561
  418. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts +0 -44
  419. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.tsx +0 -552
  420. package/dist/src/components/variants/minimal/MinimalControls.d.ts +0 -19
  421. package/dist/src/components/variants/minimal/MinimalControls.tsx +0 -142
  422. package/dist/src/components/variants/minimal/MinimalLoading.d.ts +0 -10
  423. package/dist/src/components/variants/minimal/MinimalLoading.tsx +0 -32
  424. package/dist/src/components/variants/minimal/MinimalMediaPlayer.d.ts +0 -38
  425. package/dist/src/components/variants/minimal/MinimalMediaPlayer.tsx +0 -315
  426. package/dist/src/components/variants/minimal/MinimalOverlay.d.ts +0 -11
  427. package/dist/src/components/variants/minimal/MinimalOverlay.tsx +0 -64
  428. package/dist/src/components/variants/minimal/MinimalPlayButton.d.ts +0 -9
  429. package/dist/src/components/variants/minimal/MinimalPlayButton.tsx +0 -65
  430. package/dist/src/components/variants/minimal/MinimalSeekBar.d.ts +0 -7
  431. package/dist/src/components/variants/minimal/MinimalSeekBar.tsx +0 -150
  432. package/dist/src/components/variants/minimal/MinimalVolumeControl.d.ts +0 -7
  433. package/dist/src/components/variants/minimal/MinimalVolumeControl.tsx +0 -80
  434. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.d.ts +0 -22
  435. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.tsx +0 -209
  436. package/dist/src/components/variants/minimal/components/CenterPlayButton.d.ts +0 -7
  437. package/dist/src/components/variants/minimal/components/CenterPlayButton.tsx +0 -22
  438. package/dist/src/components/variants/minimal/components/ControlBar.d.ts +0 -43
  439. package/dist/src/components/variants/minimal/components/ControlBar.tsx +0 -146
  440. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts +0 -24
  441. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.tsx +0 -361
  442. package/dist/src/components/variants/minimal/components/PlaybackControls.d.ts +0 -9
  443. package/dist/src/components/variants/minimal/components/PlaybackControls.tsx +0 -51
  444. package/dist/src/components/variants/minimal/components/RightControls.d.ts +0 -25
  445. package/dist/src/components/variants/minimal/components/RightControls.tsx +0 -173
  446. package/dist/src/components/variants/minimal/components/SeekBar.d.ts +0 -11
  447. package/dist/src/components/variants/minimal/components/SeekBar.tsx +0 -131
  448. package/dist/src/components/variants/minimal/components/SettingsDropdown.d.ts +0 -9
  449. package/dist/src/components/variants/minimal/components/SettingsDropdown.tsx +0 -70
  450. package/dist/src/components/variants/minimal/components/SubtitleDisplay.d.ts +0 -7
  451. package/dist/src/components/variants/minimal/components/SubtitleDisplay.tsx +0 -21
  452. package/dist/src/components/variants/minimal/components/TimeDisplay.d.ts +0 -7
  453. package/dist/src/components/variants/minimal/components/TimeDisplay.tsx +0 -18
  454. package/dist/src/components/variants/minimal/components/VideoElement.d.ts +0 -13
  455. package/dist/src/components/variants/minimal/components/VideoElement.tsx +0 -40
  456. package/dist/src/components/variants/minimal/components/VolumeControl.d.ts +0 -13
  457. package/dist/src/components/variants/minimal/components/VolumeControl.tsx +0 -217
  458. package/dist/src/components/variants/minimal/index.d.ts +0 -17
  459. package/dist/src/components/variants/minimal/index.ts +0 -23
  460. package/dist/src/components/video-player.d.ts +0 -3
  461. package/dist/src/components/video-player.tsx +0 -100
  462. package/dist/src/context/error-handling.d.ts +0 -72
  463. package/dist/src/context/error-handling.ts +0 -394
  464. package/dist/src/context/media-context.d.ts +0 -104
  465. package/dist/src/context/media-context.tsx +0 -208
  466. package/dist/src/context/media-provider.d.ts +0 -26
  467. package/dist/src/context/media-provider.tsx +0 -265
  468. package/dist/src/context/media-store.d.ts +0 -33
  469. package/dist/src/context/media-store.ts +0 -379
  470. package/dist/src/context/persistence.d.ts +0 -83
  471. package/dist/src/context/persistence.ts +0 -453
  472. package/dist/src/core/events/event-system.d.ts +0 -170
  473. package/dist/src/core/events/event-system.ts +0 -442
  474. package/dist/src/core/events/hooks.d.ts +0 -33
  475. package/dist/src/core/events/hooks.ts +0 -302
  476. package/dist/src/core/events/index.d.ts +0 -6
  477. package/dist/src/core/events/index.ts +0 -22
  478. package/dist/src/core/events/middleware.d.ts +0 -39
  479. package/dist/src/core/events/middleware.ts +0 -269
  480. package/dist/src/core/index.d.ts +0 -8
  481. package/dist/src/core/index.ts +0 -22
  482. package/dist/src/core/optimization/bundle-optimizer.d.ts +0 -44
  483. package/dist/src/core/optimization/bundle-optimizer.tsx +0 -308
  484. package/dist/src/core/performance/cicd.d.ts +0 -8
  485. package/dist/src/core/performance/cicd.ts +0 -96
  486. package/dist/src/core/performance/index.d.ts +0 -10
  487. package/dist/src/core/performance/index.ts +0 -38
  488. package/dist/src/core/performance/media-loading-optimizer.d.ts +0 -105
  489. package/dist/src/core/performance/media-loading-optimizer.ts +0 -538
  490. package/dist/src/core/performance/performance-budgets.d.ts +0 -68
  491. package/dist/src/core/performance/performance-budgets.ts +0 -432
  492. package/dist/src/core/performance/performance-monitor.d.ts +0 -95
  493. package/dist/src/core/performance/performance-monitor.tsx +0 -476
  494. package/dist/src/core/performance/performance-testing.d.ts +0 -69
  495. package/dist/src/core/performance/performance-testing.ts +0 -459
  496. package/dist/src/core/plugins/base-plugin.d.ts +0 -52
  497. package/dist/src/core/plugins/base-plugin.ts +0 -224
  498. package/dist/src/core/plugins/enhanced-plugin-system.d.ts +0 -160
  499. package/dist/src/core/plugins/enhanced-plugin-system.ts +0 -417
  500. package/dist/src/core/plugins/examples/analytics-plugin.d.ts +0 -30
  501. package/dist/src/core/plugins/examples/analytics-plugin.ts +0 -242
  502. package/dist/src/core/plugins/index.d.ts +0 -8
  503. package/dist/src/core/plugins/index.ts +0 -39
  504. package/dist/src/core/plugins/registry.d.ts +0 -31
  505. package/dist/src/core/plugins/registry.ts +0 -327
  506. package/dist/src/core/plugins/types.d.ts +0 -101
  507. package/dist/src/core/plugins/types.ts +0 -159
  508. package/dist/src/core/plugins/utils.d.ts +0 -38
  509. package/dist/src/core/plugins/utils.ts +0 -316
  510. package/dist/src/core/progressive-loading.d.ts +0 -88
  511. package/dist/src/core/progressive-loading.tsx +0 -322
  512. package/dist/src/core/providers/enhanced-hls-provider.d.ts +0 -50
  513. package/dist/src/core/providers/enhanced-hls-provider.ts +0 -308
  514. package/dist/src/core/providers/service-provider.d.ts +0 -49
  515. package/dist/src/core/providers/service-provider.tsx +0 -168
  516. package/dist/src/core/utils.d.ts +0 -25
  517. package/dist/src/core/utils.tsx +0 -38
  518. package/dist/src/features/media-session/media-session-manager.d.ts +0 -132
  519. package/dist/src/features/media-session/media-session-manager.ts +0 -429
  520. package/dist/src/features/picture-in-picture/pip-manager.d.ts +0 -94
  521. package/dist/src/features/picture-in-picture/pip-manager.ts +0 -429
  522. package/dist/src/features/playlist/playlist-manager.d.ts +0 -208
  523. package/dist/src/features/playlist/playlist-manager.ts +0 -606
  524. package/dist/src/features/subtitles/subtitle-manager.d.ts +0 -136
  525. package/dist/src/features/subtitles/subtitle-manager.ts +0 -441
  526. package/dist/src/features/subtitles/subtitle-parser.d.ts +0 -60
  527. package/dist/src/features/subtitles/subtitle-parser.ts +0 -280
  528. package/dist/src/features/thumbnails/thumbnail-generator.d.ts +0 -136
  529. package/dist/src/features/thumbnails/thumbnail-generator.ts +0 -519
  530. package/dist/src/hooks/accessibility/index.d.ts +0 -5
  531. package/dist/src/hooks/accessibility/index.ts +0 -27
  532. package/dist/src/hooks/accessibility/use-accessibility-preferences.d.ts +0 -14
  533. package/dist/src/hooks/accessibility/use-accessibility-preferences.ts +0 -188
  534. package/dist/src/hooks/accessibility/use-focus-management.d.ts +0 -31
  535. package/dist/src/hooks/accessibility/use-focus-management.ts +0 -176
  536. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.d.ts +0 -38
  537. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.ts +0 -144
  538. package/dist/src/hooks/accessibility/use-screen-reader.d.ts +0 -22
  539. package/dist/src/hooks/accessibility/use-screen-reader.ts +0 -182
  540. package/dist/src/hooks/core/index.d.ts +0 -18
  541. package/dist/src/hooks/core/index.ts +0 -47
  542. package/dist/src/hooks/legacy.d.ts +0 -18
  543. package/dist/src/hooks/legacy.ts +0 -27
  544. package/dist/src/hooks/use-enhanced-media-player.d.ts +0 -88
  545. package/dist/src/hooks/use-enhanced-media-player.ts +0 -485
  546. package/dist/src/hooks/use-intelligent-preloading.d.ts +0 -66
  547. package/dist/src/hooks/use-intelligent-preloading.ts +0 -363
  548. package/dist/src/hooks/use-keyboard-controls.d.ts +0 -13
  549. package/dist/src/hooks/use-keyboard-controls.ts +0 -115
  550. package/dist/src/hooks/use-media-actions.d.ts +0 -62
  551. package/dist/src/hooks/use-media-actions.ts +0 -175
  552. package/dist/src/hooks/use-media-metadata.d.ts +0 -11
  553. package/dist/src/hooks/use-media-metadata.ts +0 -89
  554. package/dist/src/hooks/use-media-optimistic.d.ts +0 -36
  555. package/dist/src/hooks/use-media-optimistic.ts +0 -270
  556. package/dist/src/hooks/use-media-player.d.ts +0 -31
  557. package/dist/src/hooks/use-media-player.ts +0 -310
  558. package/dist/src/hooks/use-media-state.d.ts +0 -17
  559. package/dist/src/hooks/use-media-state.ts +0 -190
  560. package/dist/src/hooks/use-memory-optimization.d.ts +0 -40
  561. package/dist/src/hooks/use-memory-optimization.ts +0 -358
  562. package/dist/src/hooks/use-mobile.ts +0 -125
  563. package/dist/src/hooks/use-optimistic-controls.d.ts +0 -22
  564. package/dist/src/hooks/use-optimistic-controls.ts +0 -92
  565. package/dist/src/hooks/use-optimized-media.d.ts +0 -46
  566. package/dist/src/hooks/use-optimized-media.ts +0 -263
  567. package/dist/src/hooks/use-touch-gestures.d.ts +0 -47
  568. package/dist/src/hooks/use-touch-gestures.ts +0 -417
  569. package/dist/src/hooks/useEnhancedSubtitles.d.ts +0 -39
  570. package/dist/src/hooks/useEnhancedSubtitles.ts +0 -258
  571. package/dist/src/hooks/useKeyboardShortcuts.d.ts +0 -10
  572. package/dist/src/hooks/useKeyboardShortcuts.ts +0 -74
  573. package/dist/src/hooks/useMediaControls.d.ts +0 -9
  574. package/dist/src/hooks/useMediaControls.ts +0 -52
  575. package/dist/src/hooks/useScreenshot.d.ts +0 -4
  576. package/dist/src/hooks/useScreenshot.ts +0 -57
  577. package/dist/src/hooks/useSubtitles.d.ts +0 -8
  578. package/dist/src/hooks/useSubtitles.ts +0 -91
  579. package/dist/src/hooks/useVideoPlayer.d.ts +0 -32
  580. package/dist/src/hooks/useVideoPlayer.ts +0 -232
  581. package/dist/src/icons/components/FullscreenIcon.d.ts +0 -3
  582. package/dist/src/icons/components/FullscreenIcon.tsx +0 -37
  583. package/dist/src/icons/components/SettingsIcon.d.ts +0 -3
  584. package/dist/src/icons/components/SettingsIcon.tsx +0 -38
  585. package/dist/src/icons/components/animated/LoadingIcon.d.ts +0 -3
  586. package/dist/src/icons/components/animated/LoadingIcon.tsx +0 -43
  587. package/dist/src/icons/components/animated/PlayPauseIcon.d.ts +0 -7
  588. package/dist/src/icons/components/animated/PlayPauseIcon.tsx +0 -50
  589. package/dist/src/icons/components/media/PauseIcon.d.ts +0 -3
  590. package/dist/src/icons/components/media/PauseIcon.tsx +0 -39
  591. package/dist/src/icons/components/media/PlayIcon.d.ts +0 -3
  592. package/dist/src/icons/components/media/PlayIcon.tsx +0 -38
  593. package/dist/src/icons/components/volume/VolumeIcon.d.ts +0 -3
  594. package/dist/src/icons/components/volume/VolumeIcon.tsx +0 -39
  595. package/dist/src/icons/components/volume/VolumeOffIcon.d.ts +0 -3
  596. package/dist/src/icons/components/volume/VolumeOffIcon.tsx +0 -39
  597. package/dist/src/icons/index.d.ts +0 -28
  598. package/dist/src/icons/index.ts +0 -56
  599. package/dist/src/icons/provider.d.ts +0 -13
  600. package/dist/src/icons/provider.tsx +0 -64
  601. package/dist/src/icons/types.d.ts +0 -18
  602. package/dist/src/icons/types.ts +0 -40
  603. package/dist/src/index-enhanced.d.ts +0 -13
  604. package/dist/src/index-enhanced.ts +0 -35
  605. package/dist/src/index-legacy.d.ts +0 -81
  606. package/dist/src/index-legacy.ts +0 -327
  607. package/dist/src/index.css +0 -102
  608. package/dist/src/index.d.ts +0 -38
  609. package/dist/src/index.minimal.d.ts +0 -2
  610. package/dist/src/index.minimal.ts +0 -4
  611. package/dist/src/index.ts +0 -216
  612. package/dist/src/lib/deprecation.d.ts +0 -7
  613. package/dist/src/lib/deprecation.ts +0 -51
  614. package/dist/src/lib/format-time.d.ts +0 -9
  615. package/dist/src/lib/format-time.ts +0 -37
  616. package/dist/src/lib/index.d.ts +0 -3
  617. package/dist/src/lib/index.ts +0 -3
  618. package/dist/src/lib/utils.d.ts +0 -3
  619. package/dist/src/lib/utils.ts +0 -6
  620. package/dist/src/styles/globals.css +0 -462
  621. package/dist/src/styles/minimal-player.css +0 -589
  622. package/dist/src/styles/pixel-art.css +0 -46
  623. package/dist/src/styles/videojs.css +0 -100
  624. package/dist/src/test/setup.d.ts +0 -2
  625. package/dist/src/test/setup.ts +0 -79
  626. package/dist/src/types/events.d.ts +0 -41
  627. package/dist/src/types/events.ts +0 -47
  628. package/dist/src/types/formats.d.ts +0 -45
  629. package/dist/src/types/formats.ts +0 -95
  630. package/dist/src/types/index.d.ts +0 -128
  631. package/dist/src/types/index.ts +0 -225
  632. package/dist/src/types/videojs-plugins.d.ts +0 -14
  633. package/dist/styles/globals.css +0 -462
  634. package/dist/styles/minimal-player.css +0 -589
  635. package/dist/styles/pixel-art.css +0 -46
  636. package/dist/styles/videojs.css +0 -100
  637. package/src/adapters/videojs-adapter.d.ts +0 -38
  638. package/src/adapters/videojs-adapter.d.ts.map +0 -1
  639. package/src/components/AnimateLoading.d.ts +0 -9
  640. package/src/components/AnimateLoading.d.ts.map +0 -1
  641. package/src/components/LoadingState.d.ts +0 -33
  642. package/src/components/LoadingState.d.ts.map +0 -1
  643. package/src/components/accessibility/keyboard-help-overlay.d.ts +0 -17
  644. package/src/components/accessibility/keyboard-help-overlay.d.ts.map +0 -1
  645. package/src/components/audio-player.d.ts +0 -3
  646. package/src/components/audio-player.d.ts.map +0 -1
  647. package/src/components/basic/index.d.ts +0 -26
  648. package/src/components/basic/index.d.ts.map +0 -1
  649. package/src/components/enhanced/advanced-features.d.ts +0 -45
  650. package/src/components/enhanced/advanced-features.d.ts.map +0 -1
  651. package/src/components/enhanced/debug-panel.d.ts +0 -70
  652. package/src/components/enhanced/debug-panel.d.ts.map +0 -1
  653. package/src/components/enhanced/enhanced-controls.d.ts +0 -50
  654. package/src/components/enhanced/enhanced-controls.d.ts.map +0 -1
  655. package/src/components/enhanced/enhanced-media-player.d.ts +0 -26
  656. package/src/components/enhanced/enhanced-media-player.d.ts.map +0 -1
  657. package/src/components/enhanced/error-handling.d.ts +0 -36
  658. package/src/components/enhanced/error-handling.d.ts.map +0 -1
  659. package/src/components/enhanced/index.d.ts +0 -7
  660. package/src/components/enhanced/index.d.ts.map +0 -1
  661. package/src/components/enhanced/media-player-enhanced.d.ts +0 -21
  662. package/src/components/enhanced/media-player-enhanced.d.ts.map +0 -1
  663. package/src/components/examples/basic-video-player.d.ts +0 -10
  664. package/src/components/examples/basic-video-player.d.ts.map +0 -1
  665. package/src/components/examples/custom-controls-example.d.ts +0 -10
  666. package/src/components/examples/custom-controls-example.d.ts.map +0 -1
  667. package/src/components/examples/enhanced-controls-example.d.ts +0 -9
  668. package/src/components/examples/enhanced-controls-example.d.ts.map +0 -1
  669. package/src/components/examples/enhanced-media-player-example.d.ts +0 -9
  670. package/src/components/examples/enhanced-media-player-example.d.ts.map +0 -1
  671. package/src/components/examples/loading-states-demo.d.ts +0 -2
  672. package/src/components/examples/loading-states-demo.d.ts.map +0 -1
  673. package/src/components/examples/react-19-demo.d.ts +0 -10
  674. package/src/components/examples/react-19-demo.d.ts.map +0 -1
  675. package/src/components/examples/volume-orientation-demo.d.ts +0 -2
  676. package/src/components/examples/volume-orientation-demo.d.ts.map +0 -1
  677. package/src/components/icon-demo.d.ts +0 -2
  678. package/src/components/icon-demo.d.ts.map +0 -1
  679. package/src/components/icons/index.d.ts +0 -36
  680. package/src/components/icons/index.d.ts.map +0 -1
  681. package/src/components/icons/svg-icons/ArrowLeftIcon.d.ts +0 -4
  682. package/src/components/icons/svg-icons/ArrowLeftIcon.d.ts.map +0 -1
  683. package/src/components/icons/svg-icons/ArrowRightIcon.d.ts +0 -4
  684. package/src/components/icons/svg-icons/ArrowRightIcon.d.ts.map +0 -1
  685. package/src/components/icons/svg-icons/AudioIcon.d.ts +0 -4
  686. package/src/components/icons/svg-icons/AudioIcon.d.ts.map +0 -1
  687. package/src/components/icons/svg-icons/BackwardIcon.d.ts +0 -4
  688. package/src/components/icons/svg-icons/BackwardIcon.d.ts.map +0 -1
  689. package/src/components/icons/svg-icons/CameraIcon.d.ts +0 -4
  690. package/src/components/icons/svg-icons/CameraIcon.d.ts.map +0 -1
  691. package/src/components/icons/svg-icons/CheckIcon.d.ts +0 -4
  692. package/src/components/icons/svg-icons/CheckIcon.d.ts.map +0 -1
  693. package/src/components/icons/svg-icons/EnablePiPIcon.d.ts +0 -4
  694. package/src/components/icons/svg-icons/EnablePiPIcon.d.ts.map +0 -1
  695. package/src/components/icons/svg-icons/ForwardIcon.d.ts +0 -4
  696. package/src/components/icons/svg-icons/ForwardIcon.d.ts.map +0 -1
  697. package/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts +0 -4
  698. package/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts.map +0 -1
  699. package/src/components/icons/svg-icons/FullscreenExitIcon.d.ts +0 -4
  700. package/src/components/icons/svg-icons/FullscreenExitIcon.d.ts.map +0 -1
  701. package/src/components/icons/svg-icons/LoadingIcon.d.ts +0 -4
  702. package/src/components/icons/svg-icons/LoadingIcon.d.ts.map +0 -1
  703. package/src/components/icons/svg-icons/PauseIcon.d.ts +0 -4
  704. package/src/components/icons/svg-icons/PauseIcon.d.ts.map +0 -1
  705. package/src/components/icons/svg-icons/PlayIcon.d.ts +0 -4
  706. package/src/components/icons/svg-icons/PlayIcon.d.ts.map +0 -1
  707. package/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts +0 -4
  708. package/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts.map +0 -1
  709. package/src/components/icons/svg-icons/QualityIcon.d.ts +0 -4
  710. package/src/components/icons/svg-icons/QualityIcon.d.ts.map +0 -1
  711. package/src/components/icons/svg-icons/SettingsIcon.d.ts +0 -4
  712. package/src/components/icons/svg-icons/SettingsIcon.d.ts.map +0 -1
  713. package/src/components/icons/svg-icons/SliderIcon.d.ts +0 -4
  714. package/src/components/icons/svg-icons/SliderIcon.d.ts.map +0 -1
  715. package/src/components/icons/svg-icons/SubtitleIcon.d.ts +0 -4
  716. package/src/components/icons/svg-icons/SubtitleIcon.d.ts.map +0 -1
  717. package/src/components/icons/svg-icons/SubtitleOffIcon.d.ts +0 -4
  718. package/src/components/icons/svg-icons/SubtitleOffIcon.d.ts.map +0 -1
  719. package/src/components/icons/svg-icons/UnPiPIcon.d.ts +0 -4
  720. package/src/components/icons/svg-icons/UnPiPIcon.d.ts.map +0 -1
  721. package/src/components/icons/svg-icons/VolumeMutedIcon.d.ts +0 -4
  722. package/src/components/icons/svg-icons/VolumeMutedIcon.d.ts.map +0 -1
  723. package/src/components/icons/svg-icons/VolumeOneIcon.d.ts +0 -4
  724. package/src/components/icons/svg-icons/VolumeOneIcon.d.ts.map +0 -1
  725. package/src/components/icons/svg-icons/VolumeThreeIcon.d.ts +0 -4
  726. package/src/components/icons/svg-icons/VolumeThreeIcon.d.ts.map +0 -1
  727. package/src/components/icons/svg-icons/VolumeTwoIcon.d.ts +0 -4
  728. package/src/components/icons/svg-icons/VolumeTwoIcon.d.ts.map +0 -1
  729. package/src/components/legacy.d.ts +0 -13
  730. package/src/components/legacy.d.ts.map +0 -1
  731. package/src/components/media-metadata-display.d.ts +0 -11
  732. package/src/components/media-metadata-display.d.ts.map +0 -1
  733. package/src/components/media-player-audio.d.ts +0 -9
  734. package/src/components/media-player-audio.d.ts.map +0 -1
  735. package/src/components/media-player-controls.d.ts +0 -23
  736. package/src/components/media-player-controls.d.ts.map +0 -1
  737. package/src/components/media-player-error.d.ts +0 -16
  738. package/src/components/media-player-error.d.ts.map +0 -1
  739. package/src/components/media-player-fullscreen.d.ts +0 -12
  740. package/src/components/media-player-fullscreen.d.ts.map +0 -1
  741. package/src/components/media-player-hls.d.ts +0 -23
  742. package/src/components/media-player-hls.d.ts.map +0 -1
  743. package/src/components/media-player-loading.d.ts +0 -12
  744. package/src/components/media-player-loading.d.ts.map +0 -1
  745. package/src/components/media-player-play.d.ts +0 -11
  746. package/src/components/media-player-play.d.ts.map +0 -1
  747. package/src/components/media-player-root.d.ts +0 -28
  748. package/src/components/media-player-root.d.ts.map +0 -1
  749. package/src/components/media-player-seek.d.ts +0 -15
  750. package/src/components/media-player-seek.d.ts.map +0 -1
  751. package/src/components/media-player-time.d.ts +0 -12
  752. package/src/components/media-player-time.d.ts.map +0 -1
  753. package/src/components/media-player-tooltip.d.ts +0 -13
  754. package/src/components/media-player-tooltip.d.ts.map +0 -1
  755. package/src/components/media-player-video.d.ts +0 -9
  756. package/src/components/media-player-video.d.ts.map +0 -1
  757. package/src/components/media-player-volume.d.ts +0 -13
  758. package/src/components/media-player-volume.d.ts.map +0 -1
  759. package/src/components/media-player.d.ts +0 -3
  760. package/src/components/media-player.d.ts.map +0 -1
  761. package/src/components/media-suspense.d.ts +0 -78
  762. package/src/components/media-suspense.d.ts.map +0 -1
  763. package/src/components/player-settings-form.d.ts +0 -8
  764. package/src/components/player-settings-form.d.ts.map +0 -1
  765. package/src/components/react-player-wrapper.d.ts +0 -64
  766. package/src/components/react-player-wrapper.d.ts.map +0 -1
  767. package/src/components/simple-video-player.d.ts +0 -9
  768. package/src/components/simple-video-player.d.ts.map +0 -1
  769. package/src/components/ui/button.tsx +0 -49
  770. package/src/components/ui/dropdown-menu.tsx +0 -137
  771. package/src/components/ui/enhanced-seek-bar.d.ts +0 -3
  772. package/src/components/ui/enhanced-seek-bar.d.ts.map +0 -1
  773. package/src/components/ui/fullscreen-button.d.ts +0 -3
  774. package/src/components/ui/fullscreen-button.d.ts.map +0 -1
  775. package/src/components/ui/icons.tsx +0 -174
  776. package/src/components/ui/media-resource-preloader.d.ts +0 -21
  777. package/src/components/ui/media-resource-preloader.d.ts.map +0 -1
  778. package/src/components/ui/play-button.d.ts +0 -3
  779. package/src/components/ui/play-button.d.ts.map +0 -1
  780. package/src/components/ui/seek-bar.d.ts +0 -3
  781. package/src/components/ui/seek-bar.d.ts.map +0 -1
  782. package/src/components/ui/slider.tsx +0 -55
  783. package/src/components/ui/time-display.d.ts +0 -3
  784. package/src/components/ui/time-display.d.ts.map +0 -1
  785. package/src/components/ui/tooltip.tsx +0 -131
  786. package/src/components/ui/volume-control.d.ts +0 -3
  787. package/src/components/ui/volume-control.d.ts.map +0 -1
  788. package/src/components/unified/base-media-player.d.ts +0 -18
  789. package/src/components/unified/base-media-player.d.ts.map +0 -1
  790. package/src/components/unified/media-player.d.ts +0 -37
  791. package/src/components/unified/media-player.d.ts.map +0 -1
  792. package/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts +0 -42
  793. package/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts.map +0 -1
  794. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts +0 -44
  795. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts.map +0 -1
  796. package/src/components/variants/minimal/MinimalControls.d.ts +0 -19
  797. package/src/components/variants/minimal/MinimalControls.d.ts.map +0 -1
  798. package/src/components/variants/minimal/MinimalLoading.d.ts +0 -10
  799. package/src/components/variants/minimal/MinimalLoading.d.ts.map +0 -1
  800. package/src/components/variants/minimal/MinimalMediaPlayer.d.ts +0 -38
  801. package/src/components/variants/minimal/MinimalMediaPlayer.d.ts.map +0 -1
  802. package/src/components/variants/minimal/MinimalOverlay.d.ts +0 -11
  803. package/src/components/variants/minimal/MinimalOverlay.d.ts.map +0 -1
  804. package/src/components/variants/minimal/MinimalPlayButton.d.ts +0 -9
  805. package/src/components/variants/minimal/MinimalPlayButton.d.ts.map +0 -1
  806. package/src/components/variants/minimal/MinimalSeekBar.d.ts +0 -7
  807. package/src/components/variants/minimal/MinimalSeekBar.d.ts.map +0 -1
  808. package/src/components/variants/minimal/MinimalVolumeControl.d.ts +0 -7
  809. package/src/components/variants/minimal/MinimalVolumeControl.d.ts.map +0 -1
  810. package/src/components/variants/minimal/SimpleMinimalPlayer.d.ts +0 -22
  811. package/src/components/variants/minimal/SimpleMinimalPlayer.d.ts.map +0 -1
  812. package/src/components/variants/minimal/components/CenterPlayButton.d.ts +0 -7
  813. package/src/components/variants/minimal/components/CenterPlayButton.d.ts.map +0 -1
  814. package/src/components/variants/minimal/components/ControlBar.d.ts +0 -43
  815. package/src/components/variants/minimal/components/ControlBar.d.ts.map +0 -1
  816. package/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts +0 -24
  817. package/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts.map +0 -1
  818. package/src/components/variants/minimal/components/PlaybackControls.d.ts +0 -9
  819. package/src/components/variants/minimal/components/PlaybackControls.d.ts.map +0 -1
  820. package/src/components/variants/minimal/components/RightControls.d.ts +0 -25
  821. package/src/components/variants/minimal/components/RightControls.d.ts.map +0 -1
  822. package/src/components/variants/minimal/components/SeekBar.d.ts +0 -11
  823. package/src/components/variants/minimal/components/SeekBar.d.ts.map +0 -1
  824. package/src/components/variants/minimal/components/SettingsDropdown.d.ts +0 -9
  825. package/src/components/variants/minimal/components/SettingsDropdown.d.ts.map +0 -1
  826. package/src/components/variants/minimal/components/SubtitleDisplay.d.ts +0 -7
  827. package/src/components/variants/minimal/components/SubtitleDisplay.d.ts.map +0 -1
  828. package/src/components/variants/minimal/components/TimeDisplay.d.ts +0 -7
  829. package/src/components/variants/minimal/components/TimeDisplay.d.ts.map +0 -1
  830. package/src/components/variants/minimal/components/VideoElement.d.ts +0 -13
  831. package/src/components/variants/minimal/components/VideoElement.d.ts.map +0 -1
  832. package/src/components/variants/minimal/components/VolumeControl.d.ts +0 -13
  833. package/src/components/variants/minimal/components/VolumeControl.d.ts.map +0 -1
  834. package/src/components/variants/minimal/index.d.ts +0 -17
  835. package/src/components/variants/minimal/index.d.ts.map +0 -1
  836. package/src/components/video-player.d.ts +0 -3
  837. package/src/components/video-player.d.ts.map +0 -1
  838. package/src/context/error-handling.d.ts +0 -72
  839. package/src/context/error-handling.d.ts.map +0 -1
  840. package/src/context/media-context.d.ts +0 -104
  841. package/src/context/media-context.d.ts.map +0 -1
  842. package/src/context/media-provider.d.ts +0 -26
  843. package/src/context/media-provider.d.ts.map +0 -1
  844. package/src/context/media-store.d.ts +0 -33
  845. package/src/context/media-store.d.ts.map +0 -1
  846. package/src/context/persistence.d.ts +0 -83
  847. package/src/context/persistence.d.ts.map +0 -1
  848. package/src/core/events/event-system.d.ts +0 -170
  849. package/src/core/events/event-system.d.ts.map +0 -1
  850. package/src/core/events/hooks.d.ts +0 -33
  851. package/src/core/events/hooks.d.ts.map +0 -1
  852. package/src/core/events/index.d.ts +0 -6
  853. package/src/core/events/index.d.ts.map +0 -1
  854. package/src/core/events/middleware.d.ts +0 -39
  855. package/src/core/events/middleware.d.ts.map +0 -1
  856. package/src/core/index.d.ts +0 -8
  857. package/src/core/index.d.ts.map +0 -1
  858. package/src/core/optimization/bundle-optimizer.d.ts +0 -44
  859. package/src/core/optimization/bundle-optimizer.d.ts.map +0 -1
  860. package/src/core/performance/cicd.d.ts +0 -8
  861. package/src/core/performance/cicd.d.ts.map +0 -1
  862. package/src/core/performance/index.d.ts +0 -10
  863. package/src/core/performance/index.d.ts.map +0 -1
  864. package/src/core/performance/media-loading-optimizer.d.ts +0 -105
  865. package/src/core/performance/media-loading-optimizer.d.ts.map +0 -1
  866. package/src/core/performance/performance-budgets.d.ts +0 -68
  867. package/src/core/performance/performance-budgets.d.ts.map +0 -1
  868. package/src/core/performance/performance-monitor.d.ts +0 -95
  869. package/src/core/performance/performance-monitor.d.ts.map +0 -1
  870. package/src/core/performance/performance-testing.d.ts +0 -69
  871. package/src/core/performance/performance-testing.d.ts.map +0 -1
  872. package/src/core/plugins/base-plugin.d.ts +0 -52
  873. package/src/core/plugins/base-plugin.d.ts.map +0 -1
  874. package/src/core/plugins/enhanced-plugin-system.d.ts +0 -160
  875. package/src/core/plugins/enhanced-plugin-system.d.ts.map +0 -1
  876. package/src/core/plugins/examples/analytics-plugin.d.ts +0 -30
  877. package/src/core/plugins/examples/analytics-plugin.d.ts.map +0 -1
  878. package/src/core/plugins/index.d.ts +0 -8
  879. package/src/core/plugins/index.d.ts.map +0 -1
  880. package/src/core/plugins/registry.d.ts +0 -31
  881. package/src/core/plugins/registry.d.ts.map +0 -1
  882. package/src/core/plugins/types.d.ts +0 -101
  883. package/src/core/plugins/types.d.ts.map +0 -1
  884. package/src/core/plugins/utils.d.ts +0 -38
  885. package/src/core/plugins/utils.d.ts.map +0 -1
  886. package/src/core/progressive-loading.d.ts +0 -88
  887. package/src/core/progressive-loading.d.ts.map +0 -1
  888. package/src/core/providers/enhanced-hls-provider.d.ts +0 -50
  889. package/src/core/providers/enhanced-hls-provider.d.ts.map +0 -1
  890. package/src/core/providers/service-provider.d.ts +0 -49
  891. package/src/core/providers/service-provider.d.ts.map +0 -1
  892. package/src/core/utils.d.ts +0 -25
  893. package/src/core/utils.d.ts.map +0 -1
  894. package/src/features/media-session/media-session-manager.d.ts +0 -132
  895. package/src/features/media-session/media-session-manager.d.ts.map +0 -1
  896. package/src/features/picture-in-picture/pip-manager.d.ts +0 -94
  897. package/src/features/picture-in-picture/pip-manager.d.ts.map +0 -1
  898. package/src/features/playlist/playlist-manager.d.ts +0 -208
  899. package/src/features/playlist/playlist-manager.d.ts.map +0 -1
  900. package/src/features/subtitles/subtitle-manager.d.ts +0 -136
  901. package/src/features/subtitles/subtitle-manager.d.ts.map +0 -1
  902. package/src/features/subtitles/subtitle-parser.d.ts +0 -60
  903. package/src/features/subtitles/subtitle-parser.d.ts.map +0 -1
  904. package/src/features/thumbnails/thumbnail-generator.d.ts +0 -136
  905. package/src/features/thumbnails/thumbnail-generator.d.ts.map +0 -1
  906. package/src/hooks/accessibility/index.d.ts +0 -5
  907. package/src/hooks/accessibility/index.d.ts.map +0 -1
  908. package/src/hooks/accessibility/use-accessibility-preferences.d.ts +0 -14
  909. package/src/hooks/accessibility/use-accessibility-preferences.d.ts.map +0 -1
  910. package/src/hooks/accessibility/use-focus-management.d.ts +0 -31
  911. package/src/hooks/accessibility/use-focus-management.d.ts.map +0 -1
  912. package/src/hooks/accessibility/use-keyboard-shortcuts.d.ts +0 -38
  913. package/src/hooks/accessibility/use-keyboard-shortcuts.d.ts.map +0 -1
  914. package/src/hooks/accessibility/use-screen-reader.d.ts +0 -22
  915. package/src/hooks/accessibility/use-screen-reader.d.ts.map +0 -1
  916. package/src/hooks/core/index.d.ts +0 -18
  917. package/src/hooks/core/index.d.ts.map +0 -1
  918. package/src/hooks/legacy.d.ts +0 -18
  919. package/src/hooks/legacy.d.ts.map +0 -1
  920. package/src/hooks/use-enhanced-media-player.d.ts +0 -88
  921. package/src/hooks/use-enhanced-media-player.d.ts.map +0 -1
  922. package/src/hooks/use-intelligent-preloading.d.ts +0 -66
  923. package/src/hooks/use-intelligent-preloading.d.ts.map +0 -1
  924. package/src/hooks/use-keyboard-controls.d.ts +0 -13
  925. package/src/hooks/use-keyboard-controls.d.ts.map +0 -1
  926. package/src/hooks/use-media-actions.d.ts +0 -62
  927. package/src/hooks/use-media-actions.d.ts.map +0 -1
  928. package/src/hooks/use-media-metadata.d.ts +0 -11
  929. package/src/hooks/use-media-metadata.d.ts.map +0 -1
  930. package/src/hooks/use-media-optimistic.d.ts +0 -36
  931. package/src/hooks/use-media-optimistic.d.ts.map +0 -1
  932. package/src/hooks/use-media-player.d.ts +0 -31
  933. package/src/hooks/use-media-player.d.ts.map +0 -1
  934. package/src/hooks/use-media-state.d.ts +0 -17
  935. package/src/hooks/use-media-state.d.ts.map +0 -1
  936. package/src/hooks/use-memory-optimization.d.ts +0 -40
  937. package/src/hooks/use-memory-optimization.d.ts.map +0 -1
  938. package/src/hooks/use-mobile.ts +0 -125
  939. package/src/hooks/use-optimistic-controls.d.ts +0 -22
  940. package/src/hooks/use-optimistic-controls.d.ts.map +0 -1
  941. package/src/hooks/use-optimized-media.d.ts +0 -46
  942. package/src/hooks/use-optimized-media.d.ts.map +0 -1
  943. package/src/hooks/use-touch-gestures.d.ts +0 -47
  944. package/src/hooks/use-touch-gestures.d.ts.map +0 -1
  945. package/src/hooks/useEnhancedSubtitles.d.ts +0 -39
  946. package/src/hooks/useEnhancedSubtitles.d.ts.map +0 -1
  947. package/src/hooks/useKeyboardShortcuts.d.ts +0 -10
  948. package/src/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  949. package/src/hooks/useMediaControls.d.ts +0 -9
  950. package/src/hooks/useMediaControls.d.ts.map +0 -1
  951. package/src/hooks/useScreenshot.d.ts +0 -4
  952. package/src/hooks/useScreenshot.d.ts.map +0 -1
  953. package/src/hooks/useSubtitles.d.ts +0 -8
  954. package/src/hooks/useSubtitles.d.ts.map +0 -1
  955. package/src/hooks/useVideoPlayer.d.ts +0 -32
  956. package/src/hooks/useVideoPlayer.d.ts.map +0 -1
  957. package/src/icons/components/FullscreenIcon.d.ts +0 -3
  958. package/src/icons/components/FullscreenIcon.d.ts.map +0 -1
  959. package/src/icons/components/SettingsIcon.d.ts +0 -3
  960. package/src/icons/components/SettingsIcon.d.ts.map +0 -1
  961. package/src/icons/components/animated/LoadingIcon.d.ts +0 -3
  962. package/src/icons/components/animated/LoadingIcon.d.ts.map +0 -1
  963. package/src/icons/components/animated/PlayPauseIcon.d.ts +0 -7
  964. package/src/icons/components/animated/PlayPauseIcon.d.ts.map +0 -1
  965. package/src/icons/components/media/PauseIcon.d.ts +0 -3
  966. package/src/icons/components/media/PauseIcon.d.ts.map +0 -1
  967. package/src/icons/components/media/PlayIcon.d.ts +0 -3
  968. package/src/icons/components/media/PlayIcon.d.ts.map +0 -1
  969. package/src/icons/components/volume/VolumeIcon.d.ts +0 -3
  970. package/src/icons/components/volume/VolumeIcon.d.ts.map +0 -1
  971. package/src/icons/components/volume/VolumeOffIcon.d.ts +0 -3
  972. package/src/icons/components/volume/VolumeOffIcon.d.ts.map +0 -1
  973. package/src/icons/index.d.ts +0 -28
  974. package/src/icons/index.d.ts.map +0 -1
  975. package/src/icons/provider.d.ts +0 -13
  976. package/src/icons/provider.d.ts.map +0 -1
  977. package/src/icons/types.d.ts +0 -18
  978. package/src/icons/types.d.ts.map +0 -1
  979. package/src/index-enhanced.d.ts +0 -13
  980. package/src/index-enhanced.d.ts.map +0 -1
  981. package/src/index-legacy.d.ts +0 -81
  982. package/src/index-legacy.d.ts.map +0 -1
  983. package/src/index.d.ts +0 -38
  984. package/src/index.d.ts.map +0 -1
  985. package/src/index.minimal.d.ts +0 -2
  986. package/src/index.minimal.d.ts.map +0 -1
  987. package/src/index.minimal.ts +0 -4
  988. package/src/lib/deprecation.d.ts +0 -7
  989. package/src/lib/deprecation.d.ts.map +0 -1
  990. package/src/lib/format-time.d.ts +0 -9
  991. package/src/lib/format-time.d.ts.map +0 -1
  992. package/src/lib/index.d.ts +0 -3
  993. package/src/lib/index.d.ts.map +0 -1
  994. package/src/lib/utils.d.ts +0 -3
  995. package/src/lib/utils.d.ts.map +0 -1
  996. package/src/test/setup.d.ts +0 -2
  997. package/src/test/setup.d.ts.map +0 -1
  998. package/src/types/events.d.ts +0 -41
  999. package/src/types/events.d.ts.map +0 -1
  1000. package/src/types/formats.d.ts +0 -45
  1001. package/src/types/formats.d.ts.map +0 -1
  1002. package/src/types/index.d.ts +0 -128
  1003. package/src/types/index.d.ts.map +0 -1
@@ -0,0 +1,1927 @@
1
+ import { j as e, d as Me, u as ie, a as Q, b as Z, M as y } from "./context-BYwDoSRX.js";
2
+ import K, { useState as A, useRef as D, useEffect as B, useCallback as V } from "react";
3
+ import { c as f, f as W } from "./utils-Dzpl2ArK.js";
4
+ import { u as Ne, a as Le, b as ze, c as Ee, d as ke, e as Ce, f as Ae, g as Se } from "./hooks-CyX6De5M.js";
5
+ function Oe(...t) {
6
+ return (s) => {
7
+ t.forEach((n) => {
8
+ typeof n == "function" ? n(s) : n && typeof n == "object" && (n.current = s);
9
+ });
10
+ };
11
+ }
12
+ function Pe({
13
+ children: t,
14
+ className: s,
15
+ dir: n = "ltr",
16
+ disabled: a = !1,
17
+ asChild: l = !1,
18
+ autoHide: r = !0,
19
+ enableGestures: c = !0,
20
+ enableMobileOptimizations: o = !0,
21
+ onPlay: d,
22
+ onPause: p,
23
+ onEnded: v,
24
+ onTimeUpdate: b,
25
+ onVolumeChange: N,
26
+ onMuted: M,
27
+ onMediaError: z,
28
+ onPipError: T,
29
+ onFullscreenChange: k,
30
+ ...g
31
+ }) {
32
+ const x = ie(), u = Q(), { isTouchDevice: w } = Ne(), h = Z((i) => i.isPlaying), m = Z((i) => i.currentTime), L = Z((i) => i.volume);
33
+ Z((i) => i.isMuted), Z((i) => i.error);
34
+ const j = Z((i) => i.isFullscreen);
35
+ Z((i) => i.isPictureInPicture), Le();
36
+ const C = {
37
+ onPlayPause: () => {
38
+ a || u({
39
+ type: h ? y.PAUSE : y.PLAY
40
+ });
41
+ },
42
+ onSeek: (i, E) => {
43
+ if (a || !x.isVideo) return;
44
+ const Y = x.mediaRef.current;
45
+ if (!Y) return;
46
+ const I = i === "forward" ? Math.min(Y.duration || 0, m + E) : Math.max(0, m - E);
47
+ u({
48
+ type: y.SEEK,
49
+ detail: I
50
+ });
51
+ },
52
+ onVolumeChange: (i, E) => {
53
+ if (a) return;
54
+ const Y = i === "up" ? Math.min(1, L + E) : Math.max(0, L - E);
55
+ u({
56
+ type: y.SET_VOLUME,
57
+ detail: Y
58
+ });
59
+ },
60
+ onToggleFullscreen: () => {
61
+ a || !x.isVideo || u({
62
+ type: j ? y.EXIT_FULLSCREEN : y.ENTER_FULLSCREEN
63
+ });
64
+ },
65
+ onZoom: (i) => {
66
+ console.log("Zoom gesture detected:", i);
67
+ }
68
+ };
69
+ ze(
70
+ x.rootRef,
71
+ c ? C : {}
72
+ );
73
+ const S = (i) => {
74
+ if (a) return;
75
+ const E = i.target;
76
+ if (E.tagName === "INPUT" || E.tagName === "TEXTAREA" || E.isContentEditable) return;
77
+ const I = x.mediaRef.current;
78
+ if (I)
79
+ switch (i.code) {
80
+ case "Space":
81
+ case "KeyK":
82
+ i.preventDefault(), u({
83
+ type: h ? y.PAUSE : y.PLAY
84
+ });
85
+ break;
86
+ case "KeyF":
87
+ i.preventDefault(), u({
88
+ type: j ? y.EXIT_FULLSCREEN : y.ENTER_FULLSCREEN
89
+ });
90
+ break;
91
+ case "KeyM":
92
+ i.preventDefault(), u({
93
+ type: y.TOGGLE_MUTE
94
+ });
95
+ break;
96
+ case "ArrowLeft":
97
+ i.preventDefault(), x.isVideo && I instanceof HTMLVideoElement && u({
98
+ type: y.SEEK,
99
+ detail: Math.max(0, m - 10)
100
+ });
101
+ break;
102
+ case "ArrowRight":
103
+ i.preventDefault(), x.isVideo && I instanceof HTMLVideoElement && u({
104
+ type: y.SEEK,
105
+ detail: Math.min(I.duration || 0, m + 10)
106
+ });
107
+ break;
108
+ case "ArrowUp":
109
+ i.preventDefault(), u({
110
+ type: y.SET_VOLUME,
111
+ detail: Math.min(1, L + 0.1)
112
+ });
113
+ break;
114
+ case "ArrowDown":
115
+ i.preventDefault(), u({
116
+ type: y.SET_VOLUME,
117
+ detail: Math.max(0, L - 0.1)
118
+ });
119
+ break;
120
+ }
121
+ };
122
+ K.useEffect(() => {
123
+ const i = x.mediaRef.current;
124
+ if (!i) return;
125
+ const E = () => {
126
+ u({ type: y.PLAY }), d?.();
127
+ }, Y = () => {
128
+ u({ type: y.PAUSE }), p?.();
129
+ }, I = () => {
130
+ u({ type: y.PAUSE }), v?.();
131
+ }, O = () => {
132
+ const P = i.currentTime;
133
+ u({ type: y.SET_CURRENT_TIME, detail: P }), b?.(P);
134
+ }, J = () => {
135
+ const P = i.volume, X = i.muted;
136
+ u({ type: y.SET_VOLUME, detail: P }), u({ type: X ? y.MUTE : y.UNMUTE }), N?.(P), M?.(X);
137
+ }, F = () => {
138
+ u({ type: y.SET_DURATION, detail: i.duration }), u({ type: y.SET_LOADING, detail: !1 });
139
+ }, H = () => {
140
+ const P = "An error occurred while loading the media";
141
+ u({ type: y.SET_ERROR, detail: P }), z?.(P);
142
+ }, U = () => {
143
+ u({ type: y.SET_LOADING, detail: !0 });
144
+ };
145
+ return i.addEventListener("play", E), i.addEventListener("pause", Y), i.addEventListener("ended", I), i.addEventListener("timeupdate", O), i.addEventListener("volumechange", J), i.addEventListener("loadedmetadata", F), i.addEventListener("error", H), i.addEventListener("loadstart", U), () => {
146
+ i.removeEventListener("play", E), i.removeEventListener("pause", Y), i.removeEventListener("ended", I), i.removeEventListener("timeupdate", O), i.removeEventListener("volumechange", J), i.removeEventListener("loadedmetadata", F), i.removeEventListener("error", H), i.removeEventListener("loadstart", U);
147
+ };
148
+ }, [u, d, p, v, b, N, M, z]);
149
+ const G = {
150
+ "aria-labelledby": x.labelId,
151
+ "aria-describedby": x.descriptionId,
152
+ "aria-disabled": a,
153
+ "data-disabled": a ? "" : void 0,
154
+ "data-slot": "media-player",
155
+ "data-state": j ? "fullscreen" : "inline",
156
+ dir: n,
157
+ tabIndex: a ? -1 : 0,
158
+ className: f(
159
+ "dark relative isolate flex flex-col overflow-hidden rounded-lg bg-background outline-none",
160
+ "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
161
+ "data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
162
+ "[&_video]:relative [&_video]:object-contain",
163
+ "data-[state=fullscreen]:[&_video]:size-full",
164
+ "[:fullscreen_&]:flex [:fullscreen_&]:h-full [:fullscreen_&]:max-h-screen [:fullscreen_&]:flex-col [:fullscreen_&]:justify-between",
165
+ // Mobile-first optimizations
166
+ w && [
167
+ "touch-manipulation",
168
+ // Improves touch responsiveness
169
+ "select-none",
170
+ // Prevents text selection during gestures
171
+ "overscroll-contain"
172
+ // Prevents scroll chaining
173
+ ],
174
+ // Enable hardware acceleration for smooth animations
175
+ "will-change-transform",
176
+ "transform-gpu",
177
+ s
178
+ ),
179
+ onKeyDown: S,
180
+ ...g
181
+ };
182
+ return /* @__PURE__ */ e.jsx("div", { ref: Oe(x.rootRef), ...G, children: t });
183
+ }
184
+ function ce(t) {
185
+ return /* @__PURE__ */ e.jsx(Me, { children: /* @__PURE__ */ e.jsx(Pe, { ...t }) });
186
+ }
187
+ ce.displayName = "MediaPlayerRoot";
188
+ const ue = (t) => /* @__PURE__ */ e.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...t, children: /* @__PURE__ */ e.jsx(
189
+ "path",
190
+ {
191
+ fill: "currentColor",
192
+ d: "M3 2.25a1 1 0 0 0-1 1V9a1 1 0 0 0 1 1h5.25a1 1 0 0 0 0-2H4.863c.985-1.179 2.208-2.113 3.682-2.57a9.435 9.435 0 0 1 6.106.16c1.981.738 3.81 2.232 4.722 3.894a1 1 0 1 0 1.754-.961c-1.175-2.143-3.415-3.927-5.778-4.807a11.435 11.435 0 0 0-7.395-.196C6.378 4.008 5.068 4.9 4 5.979V3.25a1 1 0 0 0-1-1ZM9.75 12a1 1 0 0 0-1.762-.647l-.222.265c-.515.623-1.078 1.303-2.28 2.024a1 1 0 1 0 1.029 1.716c.483-.29.889-.582 1.235-.865V20a1 1 0 0 0 2 0v-8Zm6.5-1c-1.386 0-2.4.635-3.008 1.661c-.564.95-.742 2.161-.742 3.339s.178 2.39.742 3.339C13.85 20.365 14.864 21 16.25 21s2.4-.635 3.008-1.661c.564-.95.742-2.161.742-3.339s-.178-2.39-.742-3.339C18.65 11.635 17.636 11 16.25 11Zm-1.75 5c0-1.031.166-1.82.461-2.318c.251-.422.613-.682 1.289-.682c.676 0 1.038.26 1.288.682c.296.498.462 1.287.462 2.318c0 1.031-.166 1.82-.462 2.318c-.25.422-.612.682-1.288.682s-1.038-.26-1.289-.682c-.295-.498-.461-1.287-.461-2.318Z"
193
+ }
194
+ ) }), Te = (t) => /* @__PURE__ */ e.jsx(
195
+ "svg",
196
+ {
197
+ width: 32,
198
+ height: 32,
199
+ viewBox: "0 0 24 24",
200
+ style: { width: "100%", height: "100%" },
201
+ ...t,
202
+ children: /* @__PURE__ */ e.jsx(
203
+ "path",
204
+ {
205
+ fill: "currentColor",
206
+ d: "M12 18q2.075 0 3.538-1.462Q17 15.075 17 13q0-2.075-1.462-3.538Q14.075 8 12 8 9.925 8 8.463 9.462 7 10.925 7 13q0 2.075 1.463 3.538Q9.925 18 12 18Zm0-2q-1.25 0-2.125-.875T9 13q0-1.25.875-2.125T12 10q1.25 0 2.125.875T15 13q0 1.25-.875 2.125T12 16Zm6-6q.425 0 .712-.288Q19 9.425 19 9t-.288-.713Q18.425 8 18 8t-.712.287Q17 8.575 17 9t.288.712Q17.575 10 18 10ZM4 21q-.825 0-1.412-.587Q2 19.825 2 19V7q0-.825.588-1.412Q3.175 5 4 5h3.15L8.7 3.325q.15-.15.337-.238Q9.225 3 9.425 3h5.15q.2 0 .388.087.187.088.337.238L16.85 5H20q.825 0 1.413.588Q22 6.175 22 7v12q0 .825-.587 1.413Q20.825 21 20 21Zm16-2V7h-4.05l-1.825-2h-4.25L8.05 7H4v12Zm-8-6Z"
207
+ }
208
+ )
209
+ }
210
+ ), Ie = Te, de = (t) => /* @__PURE__ */ e.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...t, children: /* @__PURE__ */ e.jsx(
211
+ "path",
212
+ {
213
+ fill: "currentColor",
214
+ d: "M21 2.25a1 1 0 0 1 1 1V9a1 1 0 0 1-1 1h-5.25a1 1 0 0 1 0-2h3.387c-.985-1.179-2.208-2.113-3.682-2.57a9.435 9.435 0 0 0-6.106.16c-1.981.738-3.81 2.232-4.722 3.894a1 1 0 0 1-1.754-.961C4.048 6.38 6.288 4.596 8.652 3.716a11.435 11.435 0 0 1 7.394-.196c1.576.488 2.886 1.38 3.954 2.459V3.25a1 1 0 0 1 1-1ZM9.095 11.061A1 1 0 0 1 9.75 12v8a1 1 0 0 1-2 0v-5.507c-.346.283-.752.575-1.235.864a1 1 0 1 1-1.03-1.715c1.203-.721 1.766-1.4 2.281-2.024c.074-.09.148-.178.222-.265a1 1 0 0 1 1.107-.292Zm4.147 1.6C13.85 11.635 14.864 11 16.25 11s2.4.635 3.008 1.661c.564.95.742 2.161.742 3.339s-.178 2.39-.742 3.339C18.65 20.365 17.636 21 16.25 21s-2.4-.636-3.008-1.661c-.564-.95-.742-2.161-.742-3.339s.178-2.39.742-3.339Zm1.72 1.021c-.296.498-.462 1.287-.462 2.318c0 1.031.166 1.82.461 2.318c.251.422.613.682 1.289.682c.676 0 1.038-.26 1.288-.682c.296-.498.462-1.287.462-2.318c0-1.031-.166-1.82-.462-2.318c-.25-.422-.612-.682-1.288-.682s-1.038.26-1.289.682Z"
215
+ }
216
+ ) }), qe = (t) => /* @__PURE__ */ e.jsx(
217
+ "svg",
218
+ {
219
+ width: "24",
220
+ height: "24",
221
+ viewBox: "0 0 24 24",
222
+ fill: "none",
223
+ xmlns: "http://www.w3.org/2000/svg",
224
+ "data-uia": "control-fullscreen-enter",
225
+ style: { width: "100%", height: "100%" },
226
+ ...t,
227
+ children: /* @__PURE__ */ e.jsx(
228
+ "path",
229
+ {
230
+ fillRule: "evenodd",
231
+ clipRule: "evenodd",
232
+ d: "M0 5a2 2 0 0 1 2-2h7v2H2v4H0V5Zm22 0h-7V3h7a2 2 0 0 1 2 2v4h-2V5ZM2 15v4h7v2H2a2 2 0 0 1-2-2v-4h2Zm20 4v-4h2v4a2 2 0 0 1-2 2h-7v-2h7Z",
233
+ fill: "currentColor"
234
+ }
235
+ )
236
+ }
237
+ ), Ge = (t) => /* @__PURE__ */ e.jsx(
238
+ "svg",
239
+ {
240
+ width: "24",
241
+ height: "24",
242
+ viewBox: "0 0 24 24",
243
+ fill: "none",
244
+ xmlns: "http://www.w3.org/2000/svg",
245
+ "data-uia": "control-fullscreen-exit",
246
+ style: { width: "100%", height: "100%" },
247
+ ...t,
248
+ children: /* @__PURE__ */ e.jsx(
249
+ "path",
250
+ {
251
+ fillRule: "evenodd",
252
+ clipRule: "evenodd",
253
+ d: "M24 8h-5V3h-2v7h7V8ZM0 16h5v5h2v-7H0v2Zm7-6H0V8h5V3h2v7Zm12 11v-5h5v-2h-7v7h2Z",
254
+ fill: "currentColor"
255
+ }
256
+ )
257
+ }
258
+ ), Ye = (t) => /* @__PURE__ */ e.jsxs(
259
+ "svg",
260
+ {
261
+ width: "24",
262
+ height: "24",
263
+ viewBox: "0 0 24 24",
264
+ fill: "none",
265
+ xmlns: "http://www.w3.org/2000/svg",
266
+ className: "svg-icon-nfplayerPlay",
267
+ style: { width: "100%", height: "100%" },
268
+ ...t,
269
+ children: [
270
+ /* @__PURE__ */ e.jsx(
271
+ "path",
272
+ {
273
+ fill: "currentColor",
274
+ d: "M12 2A10 10 0 1 0 22 12A10 10 0 0 0 12 2Zm0 18a8 8 0 1 1 8-8A8 8 0 0 1 12 20Z",
275
+ opacity: ".5"
276
+ }
277
+ ),
278
+ /* @__PURE__ */ e.jsx("path", { fill: "currentColor", d: "M20 12h2A10 10 0 0 0 12 2V4A8 8 0 0 1 20 12Z", children: /* @__PURE__ */ e.jsx(
279
+ "animateTransform",
280
+ {
281
+ attributeName: "transform",
282
+ dur: "1s",
283
+ from: "0 12 12",
284
+ repeatCount: "indefinite",
285
+ to: "360 12 12",
286
+ type: "rotate"
287
+ }
288
+ ) })
289
+ ]
290
+ }
291
+ ), Ze = (t) => /* @__PURE__ */ e.jsx(
292
+ "svg",
293
+ {
294
+ width: "24",
295
+ height: "24",
296
+ viewBox: "0 0 24 24",
297
+ fill: "none",
298
+ xmlns: "http://www.w3.org/2000/svg",
299
+ className: "svg-icon-nfplayerPause",
300
+ style: { width: "100%", height: "100%" },
301
+ ...t,
302
+ children: /* @__PURE__ */ e.jsx(
303
+ "path",
304
+ {
305
+ fillRule: "evenodd",
306
+ clipRule: "evenodd",
307
+ d: "M4.5 3a.5.5 0 0 0-.5.5v17a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-17a.5.5 0 0 0-.5-.5h-5Zm10 0a.5.5 0 0 0-.5.5v17a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-17a.5.5 0 0 0-.5-.5h-5Z",
308
+ fill: "currentColor"
309
+ }
310
+ )
311
+ }
312
+ ), Ke = (t) => /* @__PURE__ */ e.jsx(
313
+ "svg",
314
+ {
315
+ width: "24",
316
+ height: "24",
317
+ viewBox: "0 0 24 24",
318
+ fill: "none",
319
+ xmlns: "http://www.w3.org/2000/svg",
320
+ className: "svg-icon-nfplayerPlay",
321
+ style: { width: "100%", height: "100%" },
322
+ ...t,
323
+ children: /* @__PURE__ */ e.jsx(
324
+ "path",
325
+ {
326
+ d: "M4 2.691a1 1 0 0 1 1.482-.876l16.925 9.309a1 1 0 0 1 0 1.752L5.482 22.185A1 1 0 0 1 4 21.309V2.69Z",
327
+ fill: "currentColor"
328
+ }
329
+ )
330
+ }
331
+ ), De = (t) => /* @__PURE__ */ e.jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", ...t, children: /* @__PURE__ */ e.jsx(
332
+ "path",
333
+ {
334
+ fill: "currentColor",
335
+ d: "M2 12c0-.865.11-1.703.316-2.504A3 3 0 0 0 4.99 4.867a9.99 9.99 0 0 1 4.335-2.505a3 3 0 0 0 5.348 0a9.99 9.99 0 0 1 4.335 2.505a3 3 0 0 0 2.675 4.63a10.036 10.036 0 0 1 0 5.007a3 3 0 0 0-2.675 4.629a9.99 9.99 0 0 1-4.335 2.505a3 3 0 0 0-5.348 0a9.99 9.99 0 0 1-4.335-2.505a3 3 0 0 0-2.675-4.63A10.056 10.056 0 0 1 2 12zm4.804 3c.63 1.091.81 2.346.564 3.524c.408.29.842.541 1.297.75A4.993 4.993 0 0 1 12 18c1.26 0 2.438.471 3.335 1.274c.455-.209.889-.46 1.297-.75A4.993 4.993 0 0 1 17.196 15a4.993 4.993 0 0 1 2.77-2.25a8.126 8.126 0 0 0 0-1.5A4.993 4.993 0 0 1 17.195 9a4.993 4.993 0 0 1-.564-3.524a7.989 7.989 0 0 0-1.297-.75A4.993 4.993 0 0 1 12 6a4.993 4.993 0 0 1-3.335-1.274a7.99 7.99 0 0 0-1.297.75A4.993 4.993 0 0 1 6.804 9a4.993 4.993 0 0 1-2.77 2.25a8.126 8.126 0 0 0 0 1.5A4.993 4.993 0 0 1 6.805 15zM12 15a3 3 0 1 1 0-6a3 3 0 0 1 0 6zm0-2a1 1 0 1 0 0-2a1 1 0 0 0 0 2z"
336
+ }
337
+ ) }), Re = (t) => /* @__PURE__ */ e.jsx(
338
+ "svg",
339
+ {
340
+ width: "24",
341
+ height: "24",
342
+ viewBox: "0 0 24 24",
343
+ fill: "none",
344
+ xmlns: "http://www.w3.org/2000/svg",
345
+ className: "Hawkins-Icon Hawkins-Icon-Standard",
346
+ style: { width: "100%", height: "100%" },
347
+ ...t,
348
+ children: /* @__PURE__ */ e.jsx(
349
+ "path",
350
+ {
351
+ fill: "currentColor",
352
+ d: "M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H4V6h16v12zM6 10h2v2H6zm0 4h8v2H6zm10 0h2v2h-2zm-6-4h8v2h-8z"
353
+ }
354
+ )
355
+ }
356
+ ), We = (t) => /* @__PURE__ */ e.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...t, children: /* @__PURE__ */ e.jsxs("g", { fill: "currentColor", children: [
357
+ /* @__PURE__ */ e.jsx(
358
+ "path",
359
+ {
360
+ fillRule: "evenodd",
361
+ d: "M20.515 6.316a.75.75 0 0 1 .991.376c.468 1.035.994 2.768.994 5.308c0 2.192-.392 3.783-.8 4.844a7.72 7.72 0 0 1-.572 1.195a4.73 4.73 0 0 1-.289.425l-.007.01l-.003.003l-.002.002L20.25 18l.576.48a.75.75 0 0 1-1.156-.956l.003-.004l.031-.041a3.27 3.27 0 0 0 .137-.212c.12-.199.288-.516.459-.961c.342-.889.7-2.298.7-4.306c0-2.326-.48-3.849-.86-4.692a.75.75 0 0 1 .375-.992Zm-2.101 2.95a.75.75 0 0 1 .887.582c.11.53.199 1.24.199 2.152c0 1.11-.132 1.923-.273 2.474a5.172 5.172 0 0 1-.203.631a2.977 2.977 0 0 1-.102.228l-.01.018l-.003.007l-.002.003v.002s-.001.001-.657-.363l.656.364a.75.75 0 0 1-1.317-.719l.005-.01a1.85 1.85 0 0 0 .038-.087a3.66 3.66 0 0 0 .141-.447c.11-.424.227-1.111.227-2.101a9.17 9.17 0 0 0-.168-1.848a.75.75 0 0 1 .582-.886Z",
362
+ clipRule: "evenodd"
363
+ }
364
+ ),
365
+ /* @__PURE__ */ e.jsx("path", { d: "M21.78 3.53a.75.75 0 0 0-1.06-1.06l-4.45 4.449a11.265 11.265 0 0 0-.193-1.39c-.172-.788-.477-1.473-1.116-1.923a3.066 3.066 0 0 0-.769-.39c-.818-.28-1.631-.057-2.457.345c-.814.395-1.8 1.046-3.032 1.857l-.267.176c-.447.295-.602.394-.76.464a2.17 2.17 0 0 1-.535.16c-.171.03-.354.032-.89.032h-.162c-1.217 0-2.062-.001-2.814.347A3.962 3.962 0 0 0 1.548 8.22c-.392.729-.438 1.491-.504 2.575l-.008.13C1.014 11.294 1 11.658 1 12c0 .342.014.706.036 1.074l.008.13c.066 1.084.112 1.846.504 2.575a3.962 3.962 0 0 0 1.727 1.624c.61.283 1.283.336 2.166.345L2.72 20.47a.75.75 0 1 0 1.06 1.06l18-18ZM16.5 12a.75.75 0 0 0-1.255-.554l-.071.074l-6 6.274A.778.778 0 0 0 9.34 19c1.039.68 1.899 1.225 2.631 1.549c.743.328 1.48.489 2.222.236a3.08 3.08 0 0 0 .769-.391c.706-.497 1.005-1.28 1.167-2.18c.159-.884.213-2.056.281-3.516l.003-.058a68.23 68.23 0 0 0 .088-2.64Z" })
366
+ ] }) }), Je = (t) => /* @__PURE__ */ e.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...t, children: /* @__PURE__ */ e.jsxs("g", { fill: "currentColor", children: [
367
+ /* @__PURE__ */ e.jsx("path", { d: "M2.003 11.716c.037-1.843.056-2.764.668-3.552a3.18 3.18 0 0 1 .413-.431c.752-.636 1.746-.636 3.733-.636c.71 0 1.065 0 1.403-.092c.07-.02.14-.042.209-.067c.33-.121.627-.33 1.22-.746c2.338-1.645 3.508-2.467 4.489-2.11c.188.069.37.168.533.29c.848.635.913 2.115 1.042 5.073a70.58 70.58 0 0 1 .08 2.555c0 .521-.032 1.46-.08 2.555c-.13 2.958-.194 4.438-1.042 5.073a2.109 2.109 0 0 1-.533.29c-.982.357-2.15-.465-4.49-2.11c-.592-.416-.889-.625-1.22-.746a2.61 2.61 0 0 0-.208-.067c-.338-.092-.693-.092-1.403-.092c-1.987 0-2.98 0-3.733-.636a3.145 3.145 0 0 1-.413-.43c-.612-.79-.63-1.71-.668-3.553a14.06 14.06 0 0 1 0-.569Z" }),
368
+ /* @__PURE__ */ e.jsx(
369
+ "path",
370
+ {
371
+ fillRule: "evenodd",
372
+ d: "M19.49 5.552a.66.66 0 0 1 .97.094l-.529.471l.53-.47l.002.002l.003.004l.007.009a2.572 2.572 0 0 1 .079.112c.047.071.111.173.186.305c.149.264.339.652.526 1.171C21.64 8.291 22 9.851 22 12c0 2.15-.36 3.71-.736 4.75c-.187.52-.377.907-.526 1.172a4.655 4.655 0 0 1-.265.417l-.007.009l-.003.003l-.001.002s-.001.001-.531-.47l.53.471a.66.66 0 0 1-.971.094a.77.77 0 0 1-.09-1.035l.03-.041c.026-.04.07-.11.125-.207a6.28 6.28 0 0 0 .422-.943c.314-.871.644-2.253.644-4.222c0-1.97-.33-3.35-.644-4.222a6.28 6.28 0 0 0-.422-.942a3.152 3.152 0 0 0-.157-.253m-1.641 1.833c.333-.197.753-.07.938.286l-.603.357l.603-.357l.001.002l.002.003l.003.007l.01.018l.024.053c.018.042.042.099.07.17c.053.145.12.35.185.62c.13.54.252 1.337.252 2.425c0 1.089-.122 1.886-.252 2.426c-.065.27-.132.475-.186.619a3.04 3.04 0 0 1-.094.223l-.009.018l-.003.007l-.002.003v.002s-.001.001-.604-.356l.603.357c-.185.355-.605.483-.938.286c-.33-.196-.45-.638-.272-.991l.004-.01l.035-.085c.032-.086.08-.23.13-.438c.1-.416.208-1.09.208-2.06c0-.971-.108-1.645-.208-2.06a3.757 3.757 0 0 0-.165-.524l-.004-.01a.76.76 0 0 1 .272-.991Z",
373
+ clipRule: "evenodd"
374
+ }
375
+ )
376
+ ] }) }), He = ({
377
+ size: t = 24,
378
+ className: s = "",
379
+ color: n = "currentColor"
380
+ }) => /* @__PURE__ */ e.jsx(Ke, { width: t, height: t, className: s, style: { color: n } }), Ue = ({
381
+ size: t = 24,
382
+ className: s = "",
383
+ color: n = "currentColor"
384
+ }) => /* @__PURE__ */ e.jsx(Ze, { width: t, height: t, className: s, style: { color: n } }), Ve = ({
385
+ size: t = 24,
386
+ className: s = "",
387
+ color: n = "currentColor"
388
+ }) => /* @__PURE__ */ e.jsx(Je, { width: t, height: t, className: s, style: { color: n } }), Fe = ({
389
+ size: t = 24,
390
+ className: s = "",
391
+ color: n = "currentColor"
392
+ }) => /* @__PURE__ */ e.jsx(We, { width: t, height: t, className: s, style: { color: n } }), Xe = ({
393
+ size: t = 24,
394
+ className: s = "",
395
+ color: n = "currentColor"
396
+ }) => /* @__PURE__ */ e.jsx(qe, { width: t, height: t, className: s, style: { color: n } }), Be = ({
397
+ size: t = 24,
398
+ className: s = "",
399
+ color: n = "currentColor"
400
+ }) => /* @__PURE__ */ e.jsx(Ge, { width: t, height: t, className: s, style: { color: n } }), Qe = ({
401
+ size: t = 24,
402
+ className: s = "",
403
+ color: n = "currentColor"
404
+ }) => /* @__PURE__ */ e.jsx(De, { width: t, height: t, className: s, style: { color: n } }), _e = ({
405
+ size: t = 24,
406
+ className: s = "",
407
+ color: n = "currentColor"
408
+ }) => /* @__PURE__ */ e.jsx(
409
+ Ye,
410
+ {
411
+ width: t,
412
+ height: t,
413
+ className: `animate-spin ${s}`,
414
+ style: { color: n }
415
+ }
416
+ ), $e = ({
417
+ size: t = 24,
418
+ className: s = "",
419
+ color: n = "currentColor"
420
+ }) => /* @__PURE__ */ e.jsx(ue, { width: t, height: t, className: s, style: { color: n } }), et = ({
421
+ size: t = 24,
422
+ className: s = "",
423
+ color: n = "currentColor"
424
+ }) => /* @__PURE__ */ e.jsx(de, { width: t, height: t, className: s, style: { color: n } }), tt = ({
425
+ size: t = 24,
426
+ className: s = "",
427
+ color: n = "currentColor"
428
+ }) => /* @__PURE__ */ e.jsx(de, { width: t, height: t, className: s, style: { color: n } }), nt = ({
429
+ size: t = 24,
430
+ className: s = "",
431
+ color: n = "currentColor"
432
+ }) => /* @__PURE__ */ e.jsx(ue, { width: t, height: t, className: s, style: { color: n } }), me = ({
433
+ size: t = 24,
434
+ className: s = "",
435
+ color: n = "currentColor"
436
+ }) => /* @__PURE__ */ e.jsx(Re, { width: t, height: t, className: s, style: { color: n } }), st = ({
437
+ size: t = 24,
438
+ className: s = "",
439
+ color: n = "currentColor"
440
+ }) => /* @__PURE__ */ e.jsx(Ie, { width: t, height: t, className: s, style: { color: n } }), R = {
441
+ play: He,
442
+ pause: Ue,
443
+ volume: Ve,
444
+ volumeMuted: Fe,
445
+ fullscreen: Xe,
446
+ exitFullscreen: Be,
447
+ settings: Qe,
448
+ forward: $e,
449
+ backward: et,
450
+ spinner: _e,
451
+ subtitle: me
452
+ };
453
+ function oe(...t) {
454
+ return (s) => {
455
+ t.forEach((n) => {
456
+ typeof n == "function" ? n(s) : n && (n.current = s);
457
+ });
458
+ };
459
+ }
460
+ function he({
461
+ asChild: t = !1,
462
+ className: s,
463
+ children: n,
464
+ ...a
465
+ }) {
466
+ const l = ie(), [r, c] = K.useState(
467
+ () => oe(l.mediaRef)
468
+ );
469
+ if (K.useEffect(() => {
470
+ c(() => oe(l.mediaRef));
471
+ }, [l.mediaRef]), t) {
472
+ const o = K.Children.only(n);
473
+ return K.cloneElement(o, {
474
+ ...a,
475
+ ref: r,
476
+ "data-slot": "media-player-video"
477
+ });
478
+ }
479
+ return /* @__PURE__ */ e.jsx("video", { ref: r, "data-slot": "media-player-video", className: s, ...a, children: n });
480
+ }
481
+ he.displayName = "MediaPlayerVideo";
482
+ function se({
483
+ variant: t = "current-duration",
484
+ className: s,
485
+ asChild: n = !1,
486
+ children: a,
487
+ ...l
488
+ }) {
489
+ const r = ie(), c = Z((b) => b.currentTime), o = Z((b) => b.duration), d = K.useMemo(() => t === "remaining" ? {
490
+ remaining: W(Math.max(0, o - c))
491
+ } : t === "duration" ? {
492
+ duration: W(o)
493
+ } : t === "current" ? {
494
+ current: W(c)
495
+ } : {
496
+ current: W(c),
497
+ duration: W(o)
498
+ }, [t, c, o]), p = {
499
+ "data-slot": "media-player-time",
500
+ "data-variant": t,
501
+ dir: r.dir,
502
+ className: f("text-sm text-foreground/80 tabular-nums", s),
503
+ ...l
504
+ };
505
+ if (t !== "current-duration") {
506
+ const b = d[t];
507
+ if (n) {
508
+ const N = K.Children.only(a);
509
+ return K.cloneElement(N, p, b);
510
+ }
511
+ return /* @__PURE__ */ e.jsx("time", { ...p, children: b });
512
+ }
513
+ const v = /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
514
+ /* @__PURE__ */ e.jsx("time", { children: d.current }),
515
+ /* @__PURE__ */ e.jsx("span", { className: "text-foreground/60", children: "/" }),
516
+ /* @__PURE__ */ e.jsx("time", { children: d.duration })
517
+ ] });
518
+ if (n) {
519
+ const b = K.Children.only(a);
520
+ return K.cloneElement(
521
+ b,
522
+ {
523
+ ...p,
524
+ className: f("flex items-center gap-1 text-foreground/80 text-sm", s)
525
+ },
526
+ v
527
+ );
528
+ }
529
+ return /* @__PURE__ */ e.jsx(
530
+ "div",
531
+ {
532
+ ...p,
533
+ className: f("flex items-center gap-1 text-foreground/80 text-sm", s),
534
+ children: v
535
+ }
536
+ );
537
+ }
538
+ se.displayName = "MediaPlayerTime";
539
+ function at({
540
+ isPlaying: t,
541
+ icons: s,
542
+ size: n = "md",
543
+ className: a
544
+ }) {
545
+ const l = Q(), r = () => {
546
+ l({
547
+ type: t ? y.PAUSE : y.PLAY
548
+ });
549
+ }, c = {
550
+ sm: "h-10 w-10",
551
+ md: "h-12 w-12 minimal-btn",
552
+ lg: "h-16 w-16 minimal-btn-lg",
553
+ xl: "h-20 w-20 minimal-btn-lg"
554
+ }, o = {
555
+ sm: 27,
556
+ md: 30,
557
+ lg: 36,
558
+ xl: 42
559
+ }, d = s.play, p = s.pause;
560
+ return !d || !p ? null : /* @__PURE__ */ e.jsx(
561
+ "button",
562
+ {
563
+ className: f("minimal-btn", c[n], a),
564
+ onClick: r,
565
+ "aria-label": t ? "Pause" : "Play",
566
+ children: t ? /* @__PURE__ */ e.jsx(p, { size: o[n] }) : /* @__PURE__ */ e.jsx(d, { size: o[n] })
567
+ }
568
+ );
569
+ }
570
+ function it({ thumbnails: t, onSeek: s, className: n }) {
571
+ const a = Q(), l = Z((h) => h.currentTime), r = Z((h) => h.duration), c = Z((h) => h.buffered), [o, d] = A(!1), [p, v] = A(0), [b, N] = A(0), M = D(null), z = r > 0 ? l / r * 100 : 0, T = c && c.length > 0 && r > 0 ? c.end(c.length - 1) / r * 100 : 0, k = (h) => {
572
+ if (!M.current || r === 0) return;
573
+ const m = M.current.getBoundingClientRect(), j = Math.max(0, Math.min(1, (h - m.left) / m.width)) * r;
574
+ a({
575
+ type: y.SEEK,
576
+ detail: j
577
+ }), s?.(j);
578
+ }, g = (h) => {
579
+ h.preventDefault(), d(!0), k(h.clientX);
580
+ }, x = (h) => {
581
+ if (!M.current || r === 0) return;
582
+ const m = M.current.getBoundingClientRect(), j = Math.max(0, Math.min(1, (h.clientX - m.left) / m.width)) * r;
583
+ v(j), N(h.clientX - m.left), o && k(h.clientX);
584
+ }, u = () => {
585
+ d(!1);
586
+ }, w = () => {
587
+ d(!1), v(0);
588
+ };
589
+ return K.useEffect(() => {
590
+ if (o) {
591
+ const h = (L) => {
592
+ k(L.clientX);
593
+ }, m = () => {
594
+ d(!1);
595
+ };
596
+ return document.addEventListener("mousemove", h), document.addEventListener("mouseup", m), () => {
597
+ document.removeEventListener("mousemove", h), document.removeEventListener("mouseup", m);
598
+ };
599
+ }
600
+ }, [o]), /* @__PURE__ */ e.jsxs("div", { className: f("group relative", n), children: [
601
+ p > 0 && /* @__PURE__ */ e.jsxs(
602
+ "div",
603
+ {
604
+ className: "pointer-events-none absolute bottom-full z-50 mb-2",
605
+ style: { left: `${b}px`, transform: "translateX(-50%)" },
606
+ children: [
607
+ t && /* @__PURE__ */ e.jsx("div", { className: "mb-1 rounded bg-black/90 p-1", children: /* @__PURE__ */ e.jsx("div", { className: "h-18 w-32 rounded bg-gray-800" }) }),
608
+ /* @__PURE__ */ e.jsx("div", { className: "whitespace-nowrap rounded bg-black/90 px-2 py-1 text-white text-xs", children: W(p) })
609
+ ]
610
+ }
611
+ ),
612
+ /* @__PURE__ */ e.jsxs(
613
+ "div",
614
+ {
615
+ ref: M,
616
+ className: "minimal-seekbar",
617
+ onMouseDown: g,
618
+ onMouseMove: x,
619
+ onMouseUp: u,
620
+ onMouseLeave: w,
621
+ children: [
622
+ /* @__PURE__ */ e.jsx("div", { className: "minimal-seekbar-buffered", style: { width: `${T}%` } }),
623
+ /* @__PURE__ */ e.jsx("div", { className: "minimal-seekbar-progress", style: { width: `${z}%` } }),
624
+ /* @__PURE__ */ e.jsx(
625
+ "div",
626
+ {
627
+ className: f("minimal-seekbar-thumb", o && "active"),
628
+ style: { left: `${z}%` }
629
+ }
630
+ )
631
+ ]
632
+ }
633
+ )
634
+ ] });
635
+ }
636
+ function rt({ icons: t, className: s }) {
637
+ const n = Q(), a = Z((v) => v.volume), l = Z((v) => v.isMuted), [r, c] = A(!1), o = (v) => {
638
+ const b = parseFloat(v.target.value);
639
+ n({
640
+ type: y.SET_VOLUME,
641
+ detail: b
642
+ });
643
+ }, d = () => {
644
+ n({
645
+ type: y.TOGGLE_MUTE
646
+ });
647
+ }, p = l || a === 0 ? t.volumeMuted : t.volume;
648
+ return p ? /* @__PURE__ */ e.jsxs(
649
+ "div",
650
+ {
651
+ className: f("minimal-volume-group flex items-center gap-2", s),
652
+ onMouseEnter: () => c(!0),
653
+ onMouseLeave: () => c(!1),
654
+ children: [
655
+ /* @__PURE__ */ e.jsx(
656
+ "button",
657
+ {
658
+ className: "minimal-btn inline-flex h-8 w-8 items-center justify-center rounded-full border border-white/20 bg-white/10 text-white transition-all duration-150 hover:border-white/30 hover:bg-white/20",
659
+ onClick: d,
660
+ "aria-label": l ? "Unmute" : "Mute",
661
+ children: /* @__PURE__ */ e.jsx(p, { size: 18 })
662
+ }
663
+ ),
664
+ /* @__PURE__ */ e.jsx(
665
+ "div",
666
+ {
667
+ className: f(
668
+ "overflow-hidden transition-all duration-250",
669
+ r ? "w-20 opacity-100" : "w-0 opacity-0"
670
+ ),
671
+ children: /* @__PURE__ */ e.jsx(
672
+ "input",
673
+ {
674
+ type: "range",
675
+ min: "0",
676
+ max: "1",
677
+ step: "0.01",
678
+ value: l ? 0 : a,
679
+ onChange: o,
680
+ className: "minimal-volume-slider h-1 w-full cursor-pointer appearance-none rounded-full bg-white/20",
681
+ style: {
682
+ background: `linear-gradient(to right, rgb(59 130 246) 0%, rgb(59 130 246) ${(l ? 0 : a) * 100}%, rgba(255,255,255,0.2) ${(l ? 0 : a) * 100}%, rgba(255,255,255,0.2) 100%)`
683
+ }
684
+ }
685
+ )
686
+ }
687
+ )
688
+ ]
689
+ }
690
+ ) : null;
691
+ }
692
+ function lt({
693
+ visible: t,
694
+ icons: s,
695
+ isPlaying: n,
696
+ showQualitySelector: a,
697
+ showSpeedControl: l,
698
+ qualities: r,
699
+ thumbnails: c,
700
+ onUserInteractionStart: o,
701
+ onUserInteractionEnd: d,
702
+ onSeek: p
703
+ }) {
704
+ return /* @__PURE__ */ e.jsxs(
705
+ "div",
706
+ {
707
+ className: f(
708
+ "minimal-control-bar",
709
+ "absolute right-0 bottom-0 left-0 z-40",
710
+ "px-6 py-3 transition-all duration-200",
711
+ t ? "minimal-controls-visible" : "minimal-controls-hidden"
712
+ ),
713
+ "data-hidden": !t,
714
+ onMouseDown: o,
715
+ onMouseUp: d,
716
+ onTouchStart: o,
717
+ onTouchEnd: d,
718
+ children: [
719
+ /* @__PURE__ */ e.jsx("div", { className: "mb-2", children: /* @__PURE__ */ e.jsx(it, { thumbnails: c, onSeek: p }) }),
720
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center justify-between gap-3", children: [
721
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-3", children: [
722
+ /* @__PURE__ */ e.jsx(at, { isPlaying: n, icons: s }),
723
+ /* @__PURE__ */ e.jsx(rt, { icons: s }),
724
+ /* @__PURE__ */ e.jsxs("div", { className: "minimal-time select-none font-mono text-sm text-white/90", children: [
725
+ /* @__PURE__ */ e.jsx(se, { variant: "current" }),
726
+ /* @__PURE__ */ e.jsx("span", { className: "mx-1 text-white/60", children: "/" }),
727
+ /* @__PURE__ */ e.jsx(se, { variant: "duration" })
728
+ ] })
729
+ ] }),
730
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2", children: [
731
+ a && r && r.length > 1 && /* @__PURE__ */ e.jsx("button", { className: "minimal-btn w-auto px-3 font-medium text-xs", title: "Quality", children: r.find((v) => v.default)?.quality || r[0]?.quality || "Auto" }),
732
+ l && /* @__PURE__ */ e.jsx("button", { className: "minimal-btn w-auto px-3 font-medium text-xs", title: "Playback Speed", children: "1x" }),
733
+ s.settings && (a || l) && /* @__PURE__ */ e.jsx("button", { className: "minimal-btn", title: "Settings", children: /* @__PURE__ */ e.jsx(s.settings, { size: 18 }) }),
734
+ /* @__PURE__ */ e.jsx(
735
+ "button",
736
+ {
737
+ className: "minimal-btn",
738
+ title: "Toggle Fullscreen",
739
+ onClick: () => {
740
+ const v = document.documentElement;
741
+ document.fullscreenElement ? document.exitFullscreen?.() : v.requestFullscreen?.();
742
+ },
743
+ children: document.fullscreenElement ? s.exitFullscreen && /* @__PURE__ */ e.jsx(s.exitFullscreen, { size: 18 }) : s.fullscreen && /* @__PURE__ */ e.jsx(s.fullscreen, { size: 18 })
744
+ }
745
+ )
746
+ ] })
747
+ ] })
748
+ ]
749
+ }
750
+ );
751
+ }
752
+ function ot({ icon: t, className: s }) {
753
+ return /* @__PURE__ */ e.jsx(
754
+ "div",
755
+ {
756
+ className: f(
757
+ "absolute inset-0 z-40 flex items-center justify-center",
758
+ "bg-black/60 backdrop-blur-sm",
759
+ s
760
+ ),
761
+ children: /* @__PURE__ */ e.jsx("div", { className: "text-white", children: t ? /* @__PURE__ */ e.jsx(t, { size: 48, className: "animate-spin" }) : /* @__PURE__ */ e.jsx("div", { className: "minimal-spinner h-12 w-12 animate-spin rounded-full border-3 border-white/20 border-t-white" }) })
762
+ }
763
+ );
764
+ }
765
+ function ct({
766
+ visible: t,
767
+ showCenterButton: s = !1,
768
+ isPlaying: n = !1,
769
+ icons: a,
770
+ onPlayPause: l,
771
+ className: r
772
+ }) {
773
+ if (!t || !s) return null;
774
+ const c = a.play, o = a.pause;
775
+ return !c || !o ? null : /* @__PURE__ */ e.jsx(
776
+ "div",
777
+ {
778
+ className: f(
779
+ "absolute inset-0 z-30 flex items-center justify-center",
780
+ "bg-black/20 transition-opacity duration-200",
781
+ r
782
+ ),
783
+ onClick: l,
784
+ children: /* @__PURE__ */ e.jsx(
785
+ "button",
786
+ {
787
+ className: f(
788
+ "minimal-center-play",
789
+ "h-20 w-20 rounded-full",
790
+ "flex items-center justify-center",
791
+ "text-white",
792
+ "transition-all duration-200",
793
+ "hover:scale-110",
794
+ "active:scale-95"
795
+ ),
796
+ onClick: (d) => {
797
+ d.stopPropagation(), l?.();
798
+ },
799
+ "aria-label": n ? "Pause" : "Play",
800
+ children: n ? /* @__PURE__ */ e.jsx(o, { size: 48 }) : /* @__PURE__ */ e.jsx(c, { size: 48, className: "ml-1" })
801
+ }
802
+ )
803
+ }
804
+ );
805
+ }
806
+ function kt({
807
+ src: t,
808
+ poster: s,
809
+ autoPlay: n = !1,
810
+ muted: a = !1,
811
+ loop: l = !1,
812
+ autoHideControls: r = !0,
813
+ hideDelay: c = 2500,
814
+ theme: o = "dark",
815
+ customIcons: d,
816
+ showCenterPlayButton: p = !0,
817
+ showLoadingSpinner: v = !0,
818
+ className: b,
819
+ onPlay: N,
820
+ onPause: M,
821
+ onEnded: z,
822
+ onTimeUpdate: T,
823
+ onVolumeChange: k,
824
+ onSeek: g,
825
+ onError: x,
826
+ watermark: u,
827
+ qualities: w,
828
+ showQualitySelector: h = !1,
829
+ showSpeedControl: m = !1,
830
+ thumbnails: L
831
+ }) {
832
+ const [j, C] = A(!0), [S, G] = A(!1), [i, E] = A(!1), [Y, I] = A(null), O = D(null), J = D(null), [F, H] = A(!1), [U, P] = A(!1), X = { ...R, ...d }, _ = () => {
833
+ r && (O.current && clearTimeout(O.current), C(!0), !U && S && (O.current = setTimeout(() => {
834
+ C(!1);
835
+ }, c)));
836
+ }, fe = () => {
837
+ _();
838
+ }, ve = () => {
839
+ H(!0), C(!0), O.current && clearTimeout(O.current);
840
+ }, xe = () => {
841
+ H(!1), S && r && !U && (O.current = setTimeout(() => {
842
+ C(!1);
843
+ }, 500));
844
+ }, pe = () => {
845
+ P(!0), C(!0), O.current && clearTimeout(O.current);
846
+ }, ge = () => {
847
+ P(!1), _();
848
+ }, le = (q) => {
849
+ G(q), q ? (N?.(), _()) : (M?.(), C(!0), O.current && clearTimeout(O.current));
850
+ }, be = () => {
851
+ E(!0), I(null);
852
+ }, je = () => {
853
+ E(!1);
854
+ }, ye = (q) => {
855
+ E(!1), I(q.message || "An error occurred"), x?.(q);
856
+ };
857
+ B(() => () => {
858
+ O.current && clearTimeout(O.current);
859
+ }, []);
860
+ const we = w && w.length > 0 && (w.find((q) => q.default)?.src || w[0]?.src) || (typeof t == "string" ? t : t[0]);
861
+ return /* @__PURE__ */ e.jsx(
862
+ "div",
863
+ {
864
+ ref: J,
865
+ className: f(
866
+ "minimal-player theme-minimal relative overflow-hidden rounded-lg bg-black",
867
+ `theme-minimal-${o}`,
868
+ b
869
+ ),
870
+ "data-theme": o,
871
+ onMouseMove: fe,
872
+ onMouseEnter: ve,
873
+ onMouseLeave: xe,
874
+ children: /* @__PURE__ */ e.jsxs(
875
+ ce,
876
+ {
877
+ className: "relative h-full w-full",
878
+ autoHide: !1,
879
+ enableGestures: !0,
880
+ enableMobileOptimizations: !0,
881
+ children: [
882
+ /* @__PURE__ */ e.jsx(
883
+ he,
884
+ {
885
+ src: we,
886
+ poster: s,
887
+ autoPlay: n,
888
+ muted: a,
889
+ loop: l,
890
+ playsInline: !0,
891
+ crossOrigin: "anonymous",
892
+ onPlay: () => le(!0),
893
+ onPause: () => le(!1),
894
+ onEnded: z,
895
+ onTimeUpdate: (q) => {
896
+ const $ = q.currentTarget;
897
+ T?.($.currentTime);
898
+ },
899
+ onVolumeChange: (q) => {
900
+ const $ = q.currentTarget;
901
+ k?.($.volume);
902
+ },
903
+ onLoadStart: be,
904
+ onLoadedData: je,
905
+ onError: (q) => ye(new Error("Failed to load video"))
906
+ }
907
+ ),
908
+ v && i && /* @__PURE__ */ e.jsx(ot, { icon: X.spinner }),
909
+ Y && /* @__PURE__ */ e.jsx("div", { className: "absolute inset-0 z-50 flex items-center justify-center bg-black/80", children: /* @__PURE__ */ e.jsxs("div", { className: "text-center", children: [
910
+ /* @__PURE__ */ e.jsx("div", { className: "mb-4 text-red-500", children: /* @__PURE__ */ e.jsx(
911
+ "svg",
912
+ {
913
+ className: "mx-auto h-12 w-12",
914
+ fill: "none",
915
+ viewBox: "0 0 24 24",
916
+ stroke: "currentColor",
917
+ children: /* @__PURE__ */ e.jsx(
918
+ "path",
919
+ {
920
+ strokeLinecap: "round",
921
+ strokeLinejoin: "round",
922
+ strokeWidth: 2,
923
+ d: "M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
924
+ }
925
+ )
926
+ }
927
+ ) }),
928
+ /* @__PURE__ */ e.jsx("p", { className: "mb-2 text-lg text-white", children: "Playback Error" }),
929
+ /* @__PURE__ */ e.jsx("p", { className: "text-gray-400 text-sm", children: Y })
930
+ ] }) }),
931
+ u && /* @__PURE__ */ e.jsx(
932
+ "div",
933
+ {
934
+ className: f("pointer-events-none absolute z-20", {
935
+ "top-4 left-4": u.position === "top-left",
936
+ "top-4 right-4": u.position === "top-right",
937
+ "bottom-16 left-4": u.position === "bottom-left",
938
+ "right-4 bottom-16": u.position === "bottom-right"
939
+ }),
940
+ style: { opacity: u.opacity || 0.7 },
941
+ children: /* @__PURE__ */ e.jsx(
942
+ "img",
943
+ {
944
+ src: u.src,
945
+ alt: "",
946
+ className: f("object-contain", {
947
+ "h-8": u.size === "small",
948
+ "h-12": u.size === "medium" || !u.size,
949
+ "h-16": u.size === "large"
950
+ })
951
+ }
952
+ )
953
+ }
954
+ ),
955
+ p && !S && !i && /* @__PURE__ */ e.jsx(
956
+ ct,
957
+ {
958
+ visible: !0,
959
+ showCenterButton: !0,
960
+ isPlaying: S,
961
+ icons: X,
962
+ onPlayPause: () => {
963
+ const q = J.current?.querySelector("video");
964
+ q && (S ? q.pause() : q.play());
965
+ }
966
+ }
967
+ ),
968
+ /* @__PURE__ */ e.jsx(
969
+ lt,
970
+ {
971
+ visible: j || !S || F,
972
+ icons: X,
973
+ isPlaying: S,
974
+ showQualitySelector: h,
975
+ showSpeedControl: m,
976
+ qualities: w,
977
+ thumbnails: L,
978
+ onUserInteractionStart: pe,
979
+ onUserInteractionEnd: ge,
980
+ onSeek: g
981
+ }
982
+ )
983
+ ]
984
+ }
985
+ )
986
+ }
987
+ );
988
+ }
989
+ const ut = "data:image/gif;base64,R0lGODlhgAGAAZECAPr7/ERNVv///wAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo5OTk5ODkxZS0wMWE2LTRlMTItYWM1Mi00YTIzMzI1MTViYjQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkU2QTk5NkYxM0UzMTFFQzg5RkRCRTMwRTcyQUZCRjIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkU2QTk5NkUxM0UzMTFFQzg5RkRCRTMwRTcyQUZCRjIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxOTQyMDFlMi00OGRjLTQ3OTgtOTFlNi05ZjkyNzhjNTJlZTUiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDplMjk3YTUwZC00MTM4LWVmNDYtYTY3Ni1kZTkzNDU1ZjNmOTkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRm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";
990
+ let ae;
991
+ try {
992
+ ae = ut;
993
+ } catch {
994
+ ae = void 0;
995
+ }
996
+ function dt({
997
+ loadingText: t = "Loading...",
998
+ gifSrc: s,
999
+ showFallback: n = !0,
1000
+ className: a,
1001
+ ...l
1002
+ }) {
1003
+ const [r, c] = A(!1), [o, d] = A(!1), p = [
1004
+ s,
1005
+ ae,
1006
+ "/mona-loading.gif",
1007
+ "./mona-loading.gif",
1008
+ "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
1009
+ // 1x1 transparent gif as last resort
1010
+ ].filter(Boolean), [v, b] = A(0), N = p[v], M = () => {
1011
+ v < p.length - 1 ? b(v + 1) : c(!0);
1012
+ }, z = () => /* @__PURE__ */ e.jsxs("div", { className: "relative h-12 w-12", children: [
1013
+ /* @__PURE__ */ e.jsx("div", { className: "absolute inset-0 animate-spin rounded-full bg-gradient-to-r from-cyan-400 via-blue-500 to-cyan-400 opacity-75" }),
1014
+ /* @__PURE__ */ e.jsx("div", { className: "absolute inset-1 rounded-full bg-black/90" }),
1015
+ /* @__PURE__ */ e.jsx("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ e.jsxs("div", { className: "relative", children: [
1016
+ /* @__PURE__ */ e.jsx("div", { className: "h-8 w-8 rounded-full border-2 border-white/20" }),
1017
+ /* @__PURE__ */ e.jsx("div", { className: "absolute inset-0 h-8 w-8 animate-spin rounded-full border-2 border-transparent border-t-cyan-400" }),
1018
+ /* @__PURE__ */ e.jsx("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ e.jsx("div", { className: "h-2 w-2 animate-pulse rounded-full bg-cyan-400" }) })
1019
+ ] }) })
1020
+ ] });
1021
+ return /* @__PURE__ */ e.jsxs(
1022
+ "div",
1023
+ {
1024
+ className: f(
1025
+ "flex flex-col items-center justify-center space-y-2 rounded py-2 text-white",
1026
+ a
1027
+ ),
1028
+ ...l,
1029
+ children: [
1030
+ (!o || r) && n && /* @__PURE__ */ e.jsx(z, {}),
1031
+ !r && N && /* @__PURE__ */ e.jsx(
1032
+ "img",
1033
+ {
1034
+ alt: "loading",
1035
+ height: 50,
1036
+ width: 50,
1037
+ src: N,
1038
+ onError: M,
1039
+ onLoad: () => d(!0),
1040
+ className: f("object-contain", !o && "hidden"),
1041
+ style: { display: o ? "block" : "none" }
1042
+ }
1043
+ ),
1044
+ /* @__PURE__ */ e.jsx("span", { className: "mt-2 text-sm tracking-wider", children: t })
1045
+ ]
1046
+ }
1047
+ );
1048
+ }
1049
+ const mt = {
1050
+ sm: {
1051
+ container: "h-8 w-8",
1052
+ spinner: "h-6 w-6 border-2",
1053
+ dots: "h-1.5 w-1.5"
1054
+ },
1055
+ md: {
1056
+ container: "h-12 w-12",
1057
+ spinner: "h-10 w-10 border-3",
1058
+ dots: "h-2 w-2"
1059
+ },
1060
+ lg: {
1061
+ container: "h-16 w-16",
1062
+ spinner: "h-14 w-14 border-4",
1063
+ dots: "h-2.5 w-2.5"
1064
+ },
1065
+ xl: {
1066
+ container: "h-20 w-20",
1067
+ spinner: "h-18 w-18 border-4",
1068
+ dots: "h-3 w-3"
1069
+ }
1070
+ }, re = {
1071
+ initial: {
1072
+ wrapper: "absolute inset-0 z-50 flex items-center justify-center",
1073
+ background: "bg-black/80"
1074
+ },
1075
+ seeking: {
1076
+ wrapper: "absolute inset-0 z-40 flex items-center justify-center",
1077
+ background: "bg-black/40"
1078
+ },
1079
+ buffering: {
1080
+ wrapper: "absolute inset-0 z-45 flex items-center justify-center",
1081
+ background: "bg-black/60"
1082
+ }
1083
+ }, ht = function({
1084
+ context: s = "initial",
1085
+ message: n,
1086
+ className: a,
1087
+ textSize: l = "text-sm"
1088
+ }) {
1089
+ const r = re[s], c = () => {
1090
+ if (n) return n;
1091
+ switch (s) {
1092
+ case "initial":
1093
+ return "Loading video...";
1094
+ case "seeking":
1095
+ return "Seeking...";
1096
+ case "buffering":
1097
+ return "Buffering...";
1098
+ default:
1099
+ return "Loading...";
1100
+ }
1101
+ };
1102
+ return /* @__PURE__ */ e.jsx("div", { className: f(r.wrapper, r.background, a), children: /* @__PURE__ */ e.jsx(dt, { loadingText: c(), className: f("text-white", l) }) });
1103
+ }, ee = function({
1104
+ variant: s = "animate",
1105
+ context: n = "initial",
1106
+ size: a = "md",
1107
+ color: l,
1108
+ message: r,
1109
+ showMessage: c = !0,
1110
+ className: o,
1111
+ style: d
1112
+ }) {
1113
+ const p = mt[a], v = re[n];
1114
+ if (s === "animate")
1115
+ return /* @__PURE__ */ e.jsx(
1116
+ ht,
1117
+ {
1118
+ context: n,
1119
+ message: r,
1120
+ className: o,
1121
+ textSize: a === "sm" ? "text-xs" : a === "lg" ? "text-base" : "text-sm"
1122
+ }
1123
+ );
1124
+ const b = () => {
1125
+ switch (s) {
1126
+ case "spinner":
1127
+ return /* @__PURE__ */ e.jsx(
1128
+ "div",
1129
+ {
1130
+ className: f(
1131
+ "minimal-loading-spinner animate-spin rounded-full",
1132
+ "border-white/20 border-t-cyan-500",
1133
+ p.spinner,
1134
+ o
1135
+ ),
1136
+ style: {
1137
+ borderTopColor: l || void 0,
1138
+ ...d
1139
+ }
1140
+ }
1141
+ );
1142
+ case "dots":
1143
+ return /* @__PURE__ */ e.jsx("div", { className: "flex items-center gap-1", children: [0, 1, 2].map((M) => /* @__PURE__ */ e.jsx(
1144
+ "div",
1145
+ {
1146
+ className: f(
1147
+ "minimal-loading-dot rounded-full bg-cyan-500",
1148
+ p.dots,
1149
+ o
1150
+ ),
1151
+ style: {
1152
+ backgroundColor: l || void 0,
1153
+ animationDelay: `${M * 150}ms`,
1154
+ ...d
1155
+ }
1156
+ },
1157
+ M
1158
+ )) });
1159
+ case "skeleton":
1160
+ return /* @__PURE__ */ e.jsxs("div", { className: f("space-y-3", o), children: [
1161
+ /* @__PURE__ */ e.jsx("div", { className: "minimal-loading-skeleton h-4 w-32 rounded bg-white/10" }),
1162
+ /* @__PURE__ */ e.jsx("div", { className: "minimal-loading-skeleton h-3 w-24 rounded bg-white/10" }),
1163
+ /* @__PURE__ */ e.jsx("div", { className: "minimal-loading-skeleton h-3 w-28 rounded bg-white/10" })
1164
+ ] });
1165
+ default:
1166
+ return null;
1167
+ }
1168
+ }, N = () => {
1169
+ if (r) return r;
1170
+ switch (n) {
1171
+ case "initial":
1172
+ return "Loading video...";
1173
+ case "seeking":
1174
+ return "Seeking...";
1175
+ case "buffering":
1176
+ return "Buffering...";
1177
+ default:
1178
+ return "Loading...";
1179
+ }
1180
+ };
1181
+ return /* @__PURE__ */ e.jsx("div", { className: f(v.wrapper, v.background), children: /* @__PURE__ */ e.jsxs("div", { className: "flex flex-col items-center gap-4", children: [
1182
+ /* @__PURE__ */ e.jsx("div", { className: f(p.container, "flex items-center justify-center"), children: b() }),
1183
+ c && /* @__PURE__ */ e.jsxs("div", { className: "text-center", children: [
1184
+ /* @__PURE__ */ e.jsx("p", { className: "font-medium text-sm text-white/90", children: N() }),
1185
+ n === "buffering" && /* @__PURE__ */ e.jsx("p", { className: "mt-1 text-white/60 text-xs", children: "Please wait..." })
1186
+ ] })
1187
+ ] }) });
1188
+ }, te = function({
1189
+ children: s,
1190
+ context: n = "initial",
1191
+ className: a
1192
+ }) {
1193
+ const l = re[n];
1194
+ return /* @__PURE__ */ e.jsx("div", { className: f(l.wrapper, l.background, a), children: s });
1195
+ }, ne = {
1196
+ Initial: (t) => /* @__PURE__ */ e.jsx(ee, { variant: "animate", context: "initial", size: "md", ...t }),
1197
+ Seeking: (t) => /* @__PURE__ */ e.jsx(ee, { variant: "animate", context: "seeking", size: "sm", ...t }),
1198
+ Buffering: (t) => /* @__PURE__ */ e.jsx(ee, { variant: "animate", context: "buffering", size: "sm", ...t })
1199
+ }, ft = function({
1200
+ isPlaying: s,
1201
+ onTogglePlay: n
1202
+ }) {
1203
+ if (s) return null;
1204
+ const a = R.play;
1205
+ return /* @__PURE__ */ e.jsx("div", { className: "minimal-center-play cursor-pointer", onClick: n, children: a && /* @__PURE__ */ e.jsx(a, { size: 60 }) });
1206
+ }, vt = function({
1207
+ isPlaying: s,
1208
+ onTogglePlay: n,
1209
+ onSeekBackward: a,
1210
+ onSeekForward: l
1211
+ }) {
1212
+ const r = R.play, c = R.pause;
1213
+ return /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2", children: [
1214
+ /* @__PURE__ */ e.jsx(
1215
+ "button",
1216
+ {
1217
+ className: "minimal-btn size-15",
1218
+ onClick: n,
1219
+ "aria-label": s ? "Pause" : "Play",
1220
+ children: s ? c && /* @__PURE__ */ e.jsx(c, { size: 32 }) : r && /* @__PURE__ */ e.jsx(r, { size: 32 })
1221
+ }
1222
+ ),
1223
+ /* @__PURE__ */ e.jsx(
1224
+ "button",
1225
+ {
1226
+ className: "minimal-btn h-9 w-9",
1227
+ onClick: a,
1228
+ "aria-label": "Backward 10 seconds",
1229
+ title: "Backward 10s (J)",
1230
+ children: /* @__PURE__ */ e.jsx(nt, { size: 18 })
1231
+ }
1232
+ ),
1233
+ /* @__PURE__ */ e.jsx(
1234
+ "button",
1235
+ {
1236
+ className: "minimal-btn h-9 w-9",
1237
+ onClick: l,
1238
+ "aria-label": "Forward 10 seconds",
1239
+ title: "Forward 10s (L)",
1240
+ children: /* @__PURE__ */ e.jsx(tt, { size: 18 })
1241
+ }
1242
+ )
1243
+ ] });
1244
+ }, xt = function({
1245
+ showSettings: s,
1246
+ playbackRate: n,
1247
+ onToggleSettings: a,
1248
+ onChangePlaybackRate: l
1249
+ }) {
1250
+ const r = [0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], c = V(
1251
+ (d) => {
1252
+ d.stopPropagation(), a();
1253
+ },
1254
+ [a]
1255
+ ), o = V((d) => {
1256
+ d.stopPropagation();
1257
+ }, []);
1258
+ return /* @__PURE__ */ e.jsxs("div", { className: "relative", style: { zIndex: s ? 60 : "auto" }, children: [
1259
+ /* @__PURE__ */ e.jsx(
1260
+ "button",
1261
+ {
1262
+ className: f("minimal-btn h-9 w-9", s && "text-cyan-500"),
1263
+ onClick: c,
1264
+ "aria-label": "Settings",
1265
+ children: R.settings && /* @__PURE__ */ e.jsx(R.settings, { size: 18 })
1266
+ }
1267
+ ),
1268
+ s && /* @__PURE__ */ e.jsxs(
1269
+ "div",
1270
+ {
1271
+ className: "absolute right-0 mb-2 min-w-[200px] rounded-lg border border-gray-700 bg-gray-900 py-2 shadow-xl",
1272
+ style: {
1273
+ bottom: "100%",
1274
+ zIndex: 1e3
1275
+ },
1276
+ onClick: o,
1277
+ children: [
1278
+ /* @__PURE__ */ e.jsx("div", { className: "px-3 py-1 text-gray-400 text-xs uppercase tracking-wider", children: "Speed" }),
1279
+ /* @__PURE__ */ e.jsx("div", { className: "px-1", children: r.map((d) => /* @__PURE__ */ e.jsx(
1280
+ "button",
1281
+ {
1282
+ className: f(
1283
+ "w-full rounded px-3 py-1.5 text-left text-sm transition-colors hover:bg-gray-800",
1284
+ "text-white",
1285
+ n === d && "bg-cyan-700/20 text-cyan-400"
1286
+ ),
1287
+ onClick: () => l(d),
1288
+ children: d === 1 ? "Normal" : `${d}x`
1289
+ },
1290
+ d
1291
+ )) })
1292
+ ]
1293
+ }
1294
+ )
1295
+ ] });
1296
+ }, pt = function({
1297
+ subtitleSrc: s,
1298
+ subtitlesEnabled: n,
1299
+ subtitleTracks: a,
1300
+ currentTrackId: l,
1301
+ hasSubtitles: r,
1302
+ subtitleLoadError: c,
1303
+ isFullscreen: o,
1304
+ showSettings: d,
1305
+ playbackRate: p,
1306
+ onToggleSubtitles: v,
1307
+ onSelectSubtitleTrack: b,
1308
+ onTakeScreenshot: N,
1309
+ onToggleFullscreen: M,
1310
+ onToggleSettings: z,
1311
+ onChangePlaybackRate: T
1312
+ }) {
1313
+ const [k, g] = A(!1), x = D(null), u = R.fullscreen, w = R.exitFullscreen;
1314
+ B(() => {
1315
+ const m = (L) => {
1316
+ x.current && !x.current.contains(L.target) && g(!1);
1317
+ };
1318
+ if (k)
1319
+ return document.addEventListener("mousedown", m), () => document.removeEventListener("mousedown", m);
1320
+ }, [k]);
1321
+ const h = () => {
1322
+ a && a.length > 0 ? g(!k) : v();
1323
+ };
1324
+ return /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2", children: [
1325
+ r && /* @__PURE__ */ e.jsxs("div", { className: "relative", ref: x, children: [
1326
+ /* @__PURE__ */ e.jsx(
1327
+ "button",
1328
+ {
1329
+ className: f(
1330
+ "minimal-btn h-9 w-9",
1331
+ n && "text-cyan-500",
1332
+ c && "text-red-500"
1333
+ ),
1334
+ onClick: h,
1335
+ "aria-label": "Subtitles",
1336
+ title: c ? "Subtitle Error" : "Subtitles (C)",
1337
+ children: /* @__PURE__ */ e.jsx(me, { size: 18 })
1338
+ }
1339
+ ),
1340
+ k && a && a.length > 0 && /* @__PURE__ */ e.jsxs("div", { className: "absolute right-0 bottom-full mb-2 w-48 rounded-md bg-gray-900/95 py-2 shadow-lg backdrop-blur-sm", children: [
1341
+ /* @__PURE__ */ e.jsx("div", { className: "px-3 py-1 font-semibold text-gray-400 text-xs", children: "Subtitles" }),
1342
+ /* @__PURE__ */ e.jsx(
1343
+ "button",
1344
+ {
1345
+ className: f(
1346
+ "flex w-full items-center px-3 py-1.5 text-gray-300 text-sm hover:bg-gray-800",
1347
+ !n && "bg-gray-800 text-cyan-500"
1348
+ ),
1349
+ onClick: () => {
1350
+ b?.(null), g(!1);
1351
+ },
1352
+ children: "Off"
1353
+ }
1354
+ ),
1355
+ a.map((m) => /* @__PURE__ */ e.jsxs(
1356
+ "button",
1357
+ {
1358
+ className: f(
1359
+ "flex w-full items-center px-3 py-1.5 text-gray-300 text-sm hover:bg-gray-800",
1360
+ l === m.id && "bg-gray-800 text-cyan-500"
1361
+ ),
1362
+ onClick: () => {
1363
+ b?.(m.id), g(!1);
1364
+ },
1365
+ children: [
1366
+ /* @__PURE__ */ e.jsx("span", { children: m.label }),
1367
+ m.language && /* @__PURE__ */ e.jsxs("span", { className: "ml-2 text-gray-500 text-xs", children: [
1368
+ "(",
1369
+ m.language,
1370
+ ")"
1371
+ ] })
1372
+ ]
1373
+ },
1374
+ m.id
1375
+ )),
1376
+ c && /* @__PURE__ */ e.jsx("div", { className: "mt-2 border-gray-800 border-t px-3 py-2", children: /* @__PURE__ */ e.jsx("p", { className: "text-red-400 text-xs", children: "Failed to load subtitles" }) })
1377
+ ] })
1378
+ ] }),
1379
+ /* @__PURE__ */ e.jsx(
1380
+ "button",
1381
+ {
1382
+ className: "minimal-btn h-9 w-9",
1383
+ onClick: (m) => N(m.ctrlKey || m.metaKey),
1384
+ "aria-label": "Take Screenshot",
1385
+ title: "Screenshot (S) - Ctrl+Click to copy",
1386
+ children: /* @__PURE__ */ e.jsx(st, { size: 18 })
1387
+ }
1388
+ ),
1389
+ /* @__PURE__ */ e.jsx(
1390
+ xt,
1391
+ {
1392
+ showSettings: d,
1393
+ playbackRate: p,
1394
+ onToggleSettings: z,
1395
+ onChangePlaybackRate: T
1396
+ }
1397
+ ),
1398
+ /* @__PURE__ */ e.jsx(
1399
+ "button",
1400
+ {
1401
+ className: "minimal-btn h-9 w-9",
1402
+ onClick: M,
1403
+ "aria-label": o ? "Exit Fullscreen" : "Enter Fullscreen",
1404
+ title: "Fullscreen (F)",
1405
+ children: o ? w && /* @__PURE__ */ e.jsx(w, { size: 18 }) : u && /* @__PURE__ */ e.jsx(u, { size: 18 })
1406
+ }
1407
+ )
1408
+ ] });
1409
+ }, gt = function({
1410
+ currentTime: s,
1411
+ duration: n,
1412
+ bufferedRanges: a = [],
1413
+ isSeeking: l = !1,
1414
+ onSeek: r
1415
+ }) {
1416
+ const [c, o] = A(!1), [d, p] = A(0), [v, b] = A(!1), [N, M] = A({ x: 0, y: 0 }), z = D(null), T = n > 0 ? s / n * 100 : 0, k = (w) => {
1417
+ if (n === 0) return;
1418
+ const h = w.currentTarget.getBoundingClientRect(), m = (w.clientX - h.left) / h.width, L = Math.max(0, Math.min(n, m * n));
1419
+ M({ x: w.clientX - h.left, y: w.clientY - h.top }), b(!0), setTimeout(() => b(!1), 600), r(L);
1420
+ }, g = (w) => {
1421
+ if (!z.current) return;
1422
+ const h = z.current.getBoundingClientRect(), m = (w.clientX - h.left) / h.width * 100;
1423
+ p(Math.max(0, Math.min(100, m)));
1424
+ }, x = () => o(!0), u = () => o(!1);
1425
+ return /* @__PURE__ */ e.jsxs("div", { className: "relative mb-3", children: [
1426
+ /* @__PURE__ */ e.jsxs(
1427
+ "div",
1428
+ {
1429
+ ref: z,
1430
+ className: f(
1431
+ "minimal-seekbar group relative cursor-pointer",
1432
+ l && "minimal-seekbar-seeking"
1433
+ ),
1434
+ onClick: k,
1435
+ onMouseMove: g,
1436
+ onMouseEnter: x,
1437
+ onMouseLeave: u,
1438
+ children: [
1439
+ a.map((w, h) => {
1440
+ const m = n > 0 ? w.start / n * 100 : 0, L = n > 0 ? (w.end - w.start) / n * 100 : 0;
1441
+ return /* @__PURE__ */ e.jsx(
1442
+ "div",
1443
+ {
1444
+ className: "minimal-seekbar-buffered",
1445
+ style: {
1446
+ left: `${m}%`,
1447
+ width: `${L}%`
1448
+ }
1449
+ },
1450
+ h
1451
+ );
1452
+ }),
1453
+ /* @__PURE__ */ e.jsx(
1454
+ "div",
1455
+ {
1456
+ className: f(
1457
+ "minimal-seekbar-progress",
1458
+ l && "minimal-seekbar-progress-seeking"
1459
+ ),
1460
+ style: { width: `${T}%` }
1461
+ }
1462
+ ),
1463
+ c && !l && /* @__PURE__ */ e.jsx("div", { className: "minimal-seekbar-hover-indicator", style: { left: `${d}%` } }),
1464
+ /* @__PURE__ */ e.jsx(
1465
+ "div",
1466
+ {
1467
+ className: f(
1468
+ "minimal-seekbar-thumb",
1469
+ (c || l) && "opacity-100",
1470
+ l && "minimal-seekbar-thumb-seeking"
1471
+ ),
1472
+ style: { left: `${T}%` }
1473
+ }
1474
+ ),
1475
+ v && /* @__PURE__ */ e.jsx(
1476
+ "div",
1477
+ {
1478
+ className: "minimal-seekbar-ripple",
1479
+ style: {
1480
+ left: N.x,
1481
+ top: N.y
1482
+ }
1483
+ }
1484
+ )
1485
+ ]
1486
+ }
1487
+ ),
1488
+ l && /* @__PURE__ */ e.jsx("div", { className: "-top-6 -translate-x-1/2 absolute left-1/2 transform", children: /* @__PURE__ */ e.jsx("div", { className: "rounded bg-black/80 px-2 py-1 text-white text-xs backdrop-blur-sm", children: "Seeking..." }) })
1489
+ ] });
1490
+ }, bt = function({ currentTime: s, duration: n }) {
1491
+ return /* @__PURE__ */ e.jsxs("div", { className: "font-mono text-sm text-white", children: [
1492
+ W(s),
1493
+ " / ",
1494
+ W(n)
1495
+ ] });
1496
+ }, jt = function({
1497
+ volume: s,
1498
+ isMuted: n,
1499
+ showVolumeSlider: a,
1500
+ onToggleMute: l,
1501
+ onVolumeChange: r,
1502
+ onShowVolumeSlider: c,
1503
+ orientation: o = "horizontal",
1504
+ className: d
1505
+ }) {
1506
+ const p = R.volume, v = R.volumeMuted, b = D(null), N = D(null), M = D(!1), [z, T] = K.useState(!1), [k, g] = K.useState(!1), x = D(null);
1507
+ V(
1508
+ (j) => {
1509
+ const C = parseFloat(j.target.value);
1510
+ r(C);
1511
+ },
1512
+ [r]
1513
+ );
1514
+ const u = V(
1515
+ (j, C) => {
1516
+ const S = C ? N : b;
1517
+ if (!S.current) return;
1518
+ const G = S.current.getBoundingClientRect();
1519
+ let i;
1520
+ C ? i = Math.max(0, Math.min(1, 1 - (j.clientY - G.top) / G.height)) : i = Math.max(0, Math.min(1, (j.clientX - G.left) / G.width)), r(i);
1521
+ },
1522
+ [r]
1523
+ ), w = V(
1524
+ (j, C) => {
1525
+ j.preventDefault(), j.stopPropagation(), M.current = !0, T(!0), u(j, C);
1526
+ },
1527
+ [u]
1528
+ );
1529
+ B(() => {
1530
+ const j = (S) => {
1531
+ if (!M.current) return;
1532
+ const G = o === "vertical" ? N : b;
1533
+ if (!G.current) return;
1534
+ const i = G.current.getBoundingClientRect();
1535
+ let E;
1536
+ o === "horizontal" ? E = Math.max(0, Math.min(1, (S.clientX - i.left) / i.width)) : E = Math.max(0, Math.min(1, 1 - (S.clientY - i.top) / i.height)), r(E);
1537
+ }, C = () => {
1538
+ M.current = !1, T(!1);
1539
+ };
1540
+ if (z)
1541
+ return document.addEventListener("mousemove", j), document.addEventListener("mouseup", C), () => {
1542
+ document.removeEventListener("mousemove", j), document.removeEventListener("mouseup", C);
1543
+ };
1544
+ }, [z, o, r]);
1545
+ const h = V(() => {
1546
+ x.current && clearTimeout(x.current), g(!0), c(!0);
1547
+ }, [c]), m = V(() => {
1548
+ x.current = setTimeout(() => {
1549
+ M.current || (g(!1), c(!1));
1550
+ }, 200);
1551
+ }, [c]);
1552
+ B(() => () => {
1553
+ x.current && clearTimeout(x.current);
1554
+ }, []);
1555
+ const L = (n ? 0 : s) * 100;
1556
+ return /* @__PURE__ */ e.jsxs(
1557
+ "div",
1558
+ {
1559
+ className: f(
1560
+ "volume-control-wrapper",
1561
+ o === "vertical" ? "relative" : "flex items-center gap-2",
1562
+ d
1563
+ ),
1564
+ onMouseEnter: h,
1565
+ onMouseLeave: m,
1566
+ children: [
1567
+ o === "vertical" && /* @__PURE__ */ e.jsx(
1568
+ "div",
1569
+ {
1570
+ className: f(
1571
+ "volume-slider-vertical",
1572
+ "-translate-x-1/2 absolute bottom-full left-1/2 mb-2",
1573
+ "transition-all duration-300 ease-out",
1574
+ a || k || z ? "pointer-events-auto translate-y-0 opacity-100" : "pointer-events-none translate-y-2 opacity-0"
1575
+ ),
1576
+ children: /* @__PURE__ */ e.jsxs("div", { className: "rounded-lg bg-black/80 p-3 backdrop-blur-sm", children: [
1577
+ /* @__PURE__ */ e.jsxs(
1578
+ "div",
1579
+ {
1580
+ ref: N,
1581
+ className: "volume-slider-track-vertical group",
1582
+ onMouseDown: (j) => w(j, !0),
1583
+ onClick: (j) => u(j, !0),
1584
+ children: [
1585
+ /* @__PURE__ */ e.jsx(
1586
+ "div",
1587
+ {
1588
+ className: "volume-slider-fill-vertical pointer-events-none",
1589
+ style: { height: `${L}%` }
1590
+ }
1591
+ ),
1592
+ /* @__PURE__ */ e.jsx(
1593
+ "div",
1594
+ {
1595
+ className: f(
1596
+ "volume-slider-thumb-vertical pointer-events-none",
1597
+ z && "active"
1598
+ ),
1599
+ style: { bottom: `${L}%` }
1600
+ }
1601
+ )
1602
+ ]
1603
+ }
1604
+ ),
1605
+ /* @__PURE__ */ e.jsxs("div", { className: "mt-2 text-center text-white/70 text-xs", children: [
1606
+ Math.round(L),
1607
+ "%"
1608
+ ] })
1609
+ ] })
1610
+ }
1611
+ ),
1612
+ /* @__PURE__ */ e.jsx(
1613
+ "button",
1614
+ {
1615
+ className: "minimal-btn h-10 w-10",
1616
+ onClick: l,
1617
+ "aria-label": n ? "Unmute" : "Mute",
1618
+ children: n || s === 0 ? v && /* @__PURE__ */ e.jsx(v, { size: 20 }) : p && /* @__PURE__ */ e.jsx(p, { size: 20 })
1619
+ }
1620
+ ),
1621
+ o === "horizontal" && /* @__PURE__ */ e.jsx(
1622
+ "div",
1623
+ {
1624
+ className: f(
1625
+ "volume-slider-horizontal-wrapper",
1626
+ "overflow-hidden transition-all duration-300 ease-out",
1627
+ a || k || z ? "w-24 opacity-100" : "w-0 opacity-0"
1628
+ ),
1629
+ children: /* @__PURE__ */ e.jsxs(
1630
+ "div",
1631
+ {
1632
+ ref: b,
1633
+ className: "volume-slider-track-horizontal group",
1634
+ onMouseDown: (j) => w(j, !1),
1635
+ onClick: (j) => u(j, !1),
1636
+ children: [
1637
+ /* @__PURE__ */ e.jsx(
1638
+ "div",
1639
+ {
1640
+ className: "volume-slider-fill-horizontal pointer-events-none",
1641
+ style: { width: `${L}%` }
1642
+ }
1643
+ ),
1644
+ /* @__PURE__ */ e.jsx(
1645
+ "div",
1646
+ {
1647
+ className: f(
1648
+ "volume-slider-thumb-horizontal pointer-events-none",
1649
+ z && "active"
1650
+ ),
1651
+ style: { left: `${L}%` }
1652
+ }
1653
+ )
1654
+ ]
1655
+ }
1656
+ )
1657
+ }
1658
+ )
1659
+ ]
1660
+ }
1661
+ );
1662
+ }, yt = function({
1663
+ controlsVisible: s,
1664
+ currentTime: n,
1665
+ duration: a,
1666
+ isPlaying: l,
1667
+ volume: r,
1668
+ isMuted: c,
1669
+ showVolumeSlider: o,
1670
+ isFullscreen: d,
1671
+ showSettings: p,
1672
+ playbackRate: v,
1673
+ subtitleSrc: b,
1674
+ subtitlesEnabled: N,
1675
+ subtitleTracks: M,
1676
+ currentTrackId: z,
1677
+ hasSubtitles: T,
1678
+ subtitleLoadError: k,
1679
+ volumeOrientation: g = "horizontal",
1680
+ bufferedRanges: x,
1681
+ isSeeking: u,
1682
+ onSeek: w,
1683
+ onTogglePlay: h,
1684
+ onSeekBackward: m,
1685
+ onSeekForward: L,
1686
+ onToggleMute: j,
1687
+ onVolumeChange: C,
1688
+ onShowVolumeSlider: S,
1689
+ onToggleSubtitles: G,
1690
+ onSelectSubtitleTrack: i,
1691
+ onTakeScreenshot: E,
1692
+ onToggleFullscreen: Y,
1693
+ onToggleSettings: I,
1694
+ onChangePlaybackRate: O
1695
+ }) {
1696
+ return /* @__PURE__ */ e.jsxs(
1697
+ "div",
1698
+ {
1699
+ className: f(
1700
+ "minimal-control-bar",
1701
+ "absolute right-0 bottom-0 left-0 z-40",
1702
+ "px-6 py-3 transition-all duration-200",
1703
+ s ? "minimal-controls-visible" : "minimal-controls-hidden"
1704
+ ),
1705
+ children: [
1706
+ /* @__PURE__ */ e.jsx(
1707
+ gt,
1708
+ {
1709
+ currentTime: n,
1710
+ duration: a,
1711
+ bufferedRanges: x,
1712
+ isSeeking: u,
1713
+ onSeek: w
1714
+ }
1715
+ ),
1716
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center justify-between", children: [
1717
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2", children: [
1718
+ /* @__PURE__ */ e.jsx(
1719
+ vt,
1720
+ {
1721
+ isPlaying: l,
1722
+ onTogglePlay: h,
1723
+ onSeekBackward: m,
1724
+ onSeekForward: L
1725
+ }
1726
+ ),
1727
+ /* @__PURE__ */ e.jsx(
1728
+ jt,
1729
+ {
1730
+ volume: r,
1731
+ isMuted: c,
1732
+ showVolumeSlider: o,
1733
+ onToggleMute: j,
1734
+ onVolumeChange: C,
1735
+ onShowVolumeSlider: S,
1736
+ orientation: g
1737
+ }
1738
+ ),
1739
+ /* @__PURE__ */ e.jsx(bt, { currentTime: n, duration: a })
1740
+ ] }),
1741
+ /* @__PURE__ */ e.jsx(
1742
+ pt,
1743
+ {
1744
+ subtitleSrc: b,
1745
+ subtitlesEnabled: N,
1746
+ subtitleTracks: M,
1747
+ currentTrackId: z,
1748
+ hasSubtitles: T,
1749
+ subtitleLoadError: k,
1750
+ isFullscreen: d,
1751
+ showSettings: p,
1752
+ playbackRate: v,
1753
+ onToggleSubtitles: G,
1754
+ onSelectSubtitleTrack: i,
1755
+ onTakeScreenshot: E,
1756
+ onToggleFullscreen: Y,
1757
+ onToggleSettings: I,
1758
+ onChangePlaybackRate: O
1759
+ }
1760
+ )
1761
+ ] })
1762
+ ]
1763
+ }
1764
+ );
1765
+ }, wt = function({
1766
+ subtitlesEnabled: s,
1767
+ subtitleText: n
1768
+ }) {
1769
+ return !s || !n ? null : /* @__PURE__ */ e.jsx("div", { className: "pointer-events-none absolute right-0 bottom-20 left-0 px-4 text-center", children: /* @__PURE__ */ e.jsx("div", { className: "inline-block rounded bg-black/75 px-4 py-2 font-medium text-lg text-white", children: n }) });
1770
+ }, Mt = function({
1771
+ videoRef: s,
1772
+ src: n,
1773
+ poster: a,
1774
+ subtitleSrc: l,
1775
+ subtitlesEnabled: r,
1776
+ crossOrigin: c,
1777
+ onTogglePlay: o
1778
+ }) {
1779
+ return /* @__PURE__ */ e.jsx(
1780
+ "video",
1781
+ {
1782
+ ref: s,
1783
+ src: n,
1784
+ poster: a,
1785
+ crossOrigin: c,
1786
+ className: "h-full w-full object-contain",
1787
+ onClick: o,
1788
+ children: l && /* @__PURE__ */ e.jsx("track", { kind: "subtitles", src: l, default: r })
1789
+ }
1790
+ );
1791
+ };
1792
+ function Ct(t) {
1793
+ const {
1794
+ src: s,
1795
+ poster: n,
1796
+ className: a,
1797
+ subtitleSrc: l,
1798
+ subtitleTracks: r,
1799
+ crossOrigin: c,
1800
+ volumeOrientation: o = "horizontal",
1801
+ loadingComponent: d = void 0,
1802
+ showLoadingState: p = !0,
1803
+ loadingProps: v = {}
1804
+ } = t, b = D(null), [N, M] = A(!1), [z, T] = A(1), { videoRef: k, state: g, controls: x } = Ee(b), {
1805
+ subtitlesEnabled: u,
1806
+ currentSubtitle: w,
1807
+ toggleSubtitles: h,
1808
+ getCurrentSubtitle: m,
1809
+ setCurrentSubtitle: L,
1810
+ selectSubtitleTrack: j,
1811
+ availableTracks: C,
1812
+ currentTrackId: S,
1813
+ loadError: G,
1814
+ hasSubtitles: i
1815
+ } = ke({
1816
+ subtitleSrc: l,
1817
+ subtitleTracks: r,
1818
+ onLoadError: (P) => console.error("Subtitle load error:", P)
1819
+ }), { takeScreenshot: E } = Se(k), {
1820
+ controlsVisible: Y,
1821
+ showVolumeSlider: I,
1822
+ setShowVolumeSlider: O,
1823
+ handleMouseMove: J,
1824
+ handleMouseEnter: F,
1825
+ handleMouseLeave: H
1826
+ } = Ce(g.isPlaying, N);
1827
+ B(() => {
1828
+ if (u) {
1829
+ const P = m(g.currentTime);
1830
+ L(P);
1831
+ }
1832
+ }, [g.currentTime, u, m, L]);
1833
+ const U = (P) => {
1834
+ k.current && (k.current.playbackRate = P, T(P), M(!1));
1835
+ };
1836
+ return Ae({
1837
+ videoControls: x,
1838
+ toggleSubtitles: h,
1839
+ takeScreenshot: E,
1840
+ duration: g.duration
1841
+ }), /* @__PURE__ */ e.jsxs(
1842
+ "div",
1843
+ {
1844
+ ref: b,
1845
+ className: f("minimal-player relative rounded-lg bg-black", a),
1846
+ style: { overflow: "hidden" },
1847
+ onMouseMove: J,
1848
+ onMouseEnter: F,
1849
+ onMouseLeave: H,
1850
+ children: [
1851
+ /* @__PURE__ */ e.jsx(
1852
+ Mt,
1853
+ {
1854
+ videoRef: k,
1855
+ src: s,
1856
+ poster: n,
1857
+ subtitleSrc: l,
1858
+ subtitlesEnabled: u,
1859
+ crossOrigin: c,
1860
+ onTogglePlay: x.togglePlay
1861
+ }
1862
+ ),
1863
+ /* @__PURE__ */ e.jsx(wt, { subtitlesEnabled: u, subtitleText: w }),
1864
+ !g.isLoading && /* @__PURE__ */ e.jsx(
1865
+ ft,
1866
+ {
1867
+ isPlaying: g.isPlaying,
1868
+ onTogglePlay: x.togglePlay
1869
+ }
1870
+ ),
1871
+ /* @__PURE__ */ e.jsx(
1872
+ yt,
1873
+ {
1874
+ controlsVisible: Y,
1875
+ currentTime: g.currentTime,
1876
+ duration: g.duration,
1877
+ isPlaying: g.isPlaying,
1878
+ volume: g.volume,
1879
+ isMuted: g.isMuted,
1880
+ showVolumeSlider: I,
1881
+ isFullscreen: g.isFullscreen,
1882
+ showSettings: N,
1883
+ playbackRate: z,
1884
+ subtitleSrc: l,
1885
+ subtitlesEnabled: u,
1886
+ subtitleTracks: C,
1887
+ currentTrackId: S,
1888
+ hasSubtitles: i,
1889
+ subtitleLoadError: G,
1890
+ volumeOrientation: o,
1891
+ bufferedRanges: g.bufferedRanges,
1892
+ isSeeking: g.isSeeking,
1893
+ onSeek: x.seekTo,
1894
+ onTogglePlay: x.togglePlay,
1895
+ onSeekBackward: x.seekBackward,
1896
+ onSeekForward: x.seekForward,
1897
+ onToggleMute: x.toggleMute,
1898
+ onVolumeChange: x.setVolume,
1899
+ onShowVolumeSlider: O,
1900
+ onToggleSubtitles: h,
1901
+ onSelectSubtitleTrack: j,
1902
+ onTakeScreenshot: E,
1903
+ onToggleFullscreen: x.toggleFullscreen,
1904
+ onToggleSettings: () => M(!N),
1905
+ onChangePlaybackRate: U
1906
+ }
1907
+ ),
1908
+ p && /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
1909
+ g.isLoading && !g.isSeeking && !g.isBuffering && (d ? /* @__PURE__ */ e.jsx(te, { context: "initial", children: /* @__PURE__ */ e.jsx(d, { context: "initial" }) }) : /* @__PURE__ */ e.jsx(ne.Initial, { ...v })),
1910
+ g.isSeeking && (d ? /* @__PURE__ */ e.jsx(te, { context: "seeking", children: /* @__PURE__ */ e.jsx(d, { context: "seeking" }) }) : /* @__PURE__ */ e.jsx(ne.Seeking, { ...v })),
1911
+ g.isBuffering && !g.isSeeking && (d ? /* @__PURE__ */ e.jsx(te, { context: "buffering", children: /* @__PURE__ */ e.jsx(d, { context: "buffering" }) }) : /* @__PURE__ */ e.jsx(ne.Buffering, { ...v }))
1912
+ ] })
1913
+ ]
1914
+ }
1915
+ );
1916
+ }
1917
+ export {
1918
+ ce as M,
1919
+ Ct as S,
1920
+ kt as a,
1921
+ He as b,
1922
+ Ue as c,
1923
+ R as d,
1924
+ Ve as e,
1925
+ Xe as f
1926
+ };
1927
+ //# sourceMappingURL=minimal-components-DlRK7Qu_.js.map