@therealtinhtute/baroiplayer 1.0.5 → 1.0.7

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 (611) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/package.json +1 -1
  3. package/dist/src/components/media-player-error.tsx +2 -2
  4. package/dist/src/components/media-player-fullscreen.tsx +2 -2
  5. package/dist/src/components/media-player-play.tsx +2 -2
  6. package/dist/src/components/media-player-seek.tsx +1 -1
  7. package/dist/src/components/media-player-tooltip.tsx +1 -1
  8. package/dist/src/components/media-player-volume.tsx +3 -3
  9. package/dist/src/components/react-player-wrapper.tsx +5 -5
  10. package/dist/src/hooks/use-touch-gestures.ts +1 -1
  11. package/package.json +1 -1
  12. package/src/components/media-player-error.tsx +2 -2
  13. package/src/components/media-player-fullscreen.tsx +2 -2
  14. package/src/components/media-player-play.tsx +2 -2
  15. package/src/components/media-player-seek.tsx +1 -1
  16. package/src/components/media-player-tooltip.tsx +1 -1
  17. package/src/components/media-player-volume.tsx +3 -3
  18. package/src/components/react-player-wrapper.tsx +5 -5
  19. package/src/hooks/use-touch-gestures.ts +1 -1
  20. package/dist/context/media.js +0 -2
  21. package/dist/context/media.js.map +0 -1
  22. package/dist/context/media.mjs +0 -15
  23. package/dist/context/media.mjs.map +0 -1
  24. package/dist/context/store.js +0 -2
  25. package/dist/context/store.js.map +0 -1
  26. package/dist/context/store.mjs +0 -5
  27. package/dist/context/store.mjs.map +0 -1
  28. package/dist/context-Af84FynT.js +0 -1179
  29. package/dist/context-Af84FynT.js.map +0 -1
  30. package/dist/context-CwZnPdz0.cjs +0 -23
  31. package/dist/context-CwZnPdz0.cjs.map +0 -1
  32. package/dist/core-events-B5W_j8yU.js +0 -480
  33. package/dist/core-events-B5W_j8yU.js.map +0 -1
  34. package/dist/core-events-CN0-Vhhq.cjs +0 -2
  35. package/dist/core-events-CN0-Vhhq.cjs.map +0 -1
  36. package/dist/core-plugins-Bq9KLany.js +0 -696
  37. package/dist/core-plugins-Bq9KLany.js.map +0 -1
  38. package/dist/core-plugins-CPDSHMiQ.cjs +0 -2
  39. package/dist/core-plugins-CPDSHMiQ.cjs.map +0 -1
  40. package/dist/core.js +0 -37
  41. package/dist/core.js.map +0 -1
  42. package/dist/core.mjs +0 -1217
  43. package/dist/core.mjs.map +0 -1
  44. package/dist/enhanced-components-CXnYiOt6.cjs +0 -2
  45. package/dist/enhanced-components-CXnYiOt6.cjs.map +0 -1
  46. package/dist/enhanced-components-Da0TSvKe.js +0 -1073
  47. package/dist/enhanced-components-Da0TSvKe.js.map +0 -1
  48. package/dist/hooks-BCMilGRf.cjs +0 -4
  49. package/dist/hooks-BCMilGRf.cjs.map +0 -1
  50. package/dist/hooks-BPtHV1ZT.js +0 -2042
  51. package/dist/hooks-BPtHV1ZT.js.map +0 -1
  52. package/dist/index.js.map +0 -1
  53. package/dist/index.mjs.map +0 -1
  54. package/dist/minimal-components-BHJMuaL7.cjs +0 -2
  55. package/dist/minimal-components-BHJMuaL7.cjs.map +0 -1
  56. package/dist/minimal-components-BmqRefl1.js +0 -2002
  57. package/dist/minimal-components-BmqRefl1.js.map +0 -1
  58. package/dist/mona-loading.gif +0 -0
  59. package/dist/performance-monitor--rzKTlbj.js +0 -302
  60. package/dist/performance-monitor--rzKTlbj.js.map +0 -1
  61. package/dist/performance-monitor-cjIvZE2D.cjs +0 -2
  62. package/dist/performance-monitor-cjIvZE2D.cjs.map +0 -1
  63. package/dist/src/adapters/videojs-adapter.d.ts.map +0 -1
  64. package/dist/src/adapters/videojs-adapter.js +0 -350
  65. package/dist/src/assets/mona-loading.gif +0 -0
  66. package/dist/src/components/AnimateLoading.d.ts.map +0 -1
  67. package/dist/src/components/AnimateLoading.js +0 -41
  68. package/dist/src/components/LoadingState.d.ts.map +0 -1
  69. package/dist/src/components/LoadingState.js +0 -111
  70. package/dist/src/components/accessibility/keyboard-help-overlay.d.ts.map +0 -1
  71. package/dist/src/components/accessibility/keyboard-help-overlay.js +0 -90
  72. package/dist/src/components/audio-player.d.ts.map +0 -1
  73. package/dist/src/components/audio-player.js +0 -31
  74. package/dist/src/components/basic/index.d.ts.map +0 -1
  75. package/dist/src/components/basic/index.js +0 -29
  76. package/dist/src/components/enhanced/advanced-features.d.ts.map +0 -1
  77. package/dist/src/components/enhanced/advanced-features.js +0 -64
  78. package/dist/src/components/enhanced/debug-panel.d.ts.map +0 -1
  79. package/dist/src/components/enhanced/debug-panel.js +0 -94
  80. package/dist/src/components/enhanced/enhanced-controls.d.ts.map +0 -1
  81. package/dist/src/components/enhanced/enhanced-controls.js +0 -233
  82. package/dist/src/components/enhanced/enhanced-media-player.d.ts.map +0 -1
  83. package/dist/src/components/enhanced/enhanced-media-player.js +0 -316
  84. package/dist/src/components/enhanced/error-handling.d.ts.map +0 -1
  85. package/dist/src/components/enhanced/error-handling.js +0 -153
  86. package/dist/src/components/enhanced/index.d.ts.map +0 -1
  87. package/dist/src/components/enhanced/index.js +0 -10
  88. package/dist/src/components/enhanced/media-player-enhanced.d.ts.map +0 -1
  89. package/dist/src/components/enhanced/media-player-enhanced.js +0 -250
  90. package/dist/src/components/examples/basic-video-player.d.ts.map +0 -1
  91. package/dist/src/components/examples/basic-video-player.js +0 -16
  92. package/dist/src/components/examples/custom-controls-example.d.ts.map +0 -1
  93. package/dist/src/components/examples/custom-controls-example.js +0 -12
  94. package/dist/src/components/examples/enhanced-controls-example.d.ts.map +0 -1
  95. package/dist/src/components/examples/enhanced-controls-example.js +0 -18
  96. package/dist/src/components/examples/enhanced-media-player-example.d.ts.map +0 -1
  97. package/dist/src/components/examples/enhanced-media-player-example.js +0 -13
  98. package/dist/src/components/examples/loading-states-demo.d.ts.map +0 -1
  99. package/dist/src/components/examples/loading-states-demo.js +0 -41
  100. package/dist/src/components/examples/react-19-demo.d.ts.map +0 -1
  101. package/dist/src/components/examples/react-19-demo.js +0 -104
  102. package/dist/src/components/examples/volume-orientation-demo.d.ts.map +0 -1
  103. package/dist/src/components/examples/volume-orientation-demo.js +0 -31
  104. package/dist/src/components/icon-demo.d.ts.map +0 -1
  105. package/dist/src/components/icon-demo.js +0 -16
  106. package/dist/src/components/icons/index.d.ts.map +0 -1
  107. package/dist/src/components/icons/index.js +0 -59
  108. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.d.ts.map +0 -1
  109. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  110. package/dist/src/components/icons/svg-icons/ArrowRightIcon.d.ts.map +0 -1
  111. package/dist/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  112. package/dist/src/components/icons/svg-icons/AudioIcon.d.ts.map +0 -1
  113. package/dist/src/components/icons/svg-icons/AudioIcon.js +0 -4
  114. package/dist/src/components/icons/svg-icons/BackwardIcon.d.ts.map +0 -1
  115. package/dist/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  116. package/dist/src/components/icons/svg-icons/CameraIcon.d.ts.map +0 -1
  117. package/dist/src/components/icons/svg-icons/CameraIcon.js +0 -4
  118. package/dist/src/components/icons/svg-icons/CheckIcon.d.ts.map +0 -1
  119. package/dist/src/components/icons/svg-icons/CheckIcon.js +0 -4
  120. package/dist/src/components/icons/svg-icons/EnablePiPIcon.d.ts.map +0 -1
  121. package/dist/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  122. package/dist/src/components/icons/svg-icons/ForwardIcon.d.ts.map +0 -1
  123. package/dist/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  124. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts.map +0 -1
  125. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  126. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.d.ts.map +0 -1
  127. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  128. package/dist/src/components/icons/svg-icons/LoadingIcon.d.ts.map +0 -1
  129. package/dist/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  130. package/dist/src/components/icons/svg-icons/PauseIcon.d.ts.map +0 -1
  131. package/dist/src/components/icons/svg-icons/PauseIcon.js +0 -3
  132. package/dist/src/components/icons/svg-icons/PlayIcon.d.ts.map +0 -1
  133. package/dist/src/components/icons/svg-icons/PlayIcon.js +0 -3
  134. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts.map +0 -1
  135. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  136. package/dist/src/components/icons/svg-icons/QualityIcon.d.ts.map +0 -1
  137. package/dist/src/components/icons/svg-icons/QualityIcon.js +0 -3
  138. package/dist/src/components/icons/svg-icons/SettingsIcon.d.ts.map +0 -1
  139. package/dist/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  140. package/dist/src/components/icons/svg-icons/SliderIcon.d.ts.map +0 -1
  141. package/dist/src/components/icons/svg-icons/SliderIcon.js +0 -3
  142. package/dist/src/components/icons/svg-icons/SubtitleIcon.d.ts.map +0 -1
  143. package/dist/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  144. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.d.ts.map +0 -1
  145. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  146. package/dist/src/components/icons/svg-icons/UnPiPIcon.d.ts.map +0 -1
  147. package/dist/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  148. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.d.ts.map +0 -1
  149. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  150. package/dist/src/components/icons/svg-icons/VolumeOneIcon.d.ts.map +0 -1
  151. package/dist/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  152. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.d.ts.map +0 -1
  153. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  154. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.d.ts.map +0 -1
  155. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  156. package/dist/src/components/legacy.d.ts.map +0 -1
  157. package/dist/src/components/legacy.js +0 -52
  158. package/dist/src/components/media-metadata-display.d.ts.map +0 -1
  159. package/dist/src/components/media-metadata-display.js +0 -20
  160. package/dist/src/components/media-player-audio.d.ts.map +0 -1
  161. package/dist/src/components/media-player-audio.js +0 -18
  162. package/dist/src/components/media-player-controls.d.ts.map +0 -1
  163. package/dist/src/components/media-player-controls.js +0 -150
  164. package/dist/src/components/media-player-error.d.ts.map +0 -1
  165. package/dist/src/components/media-player-error.js +0 -85
  166. package/dist/src/components/media-player-fullscreen.d.ts.map +0 -1
  167. package/dist/src/components/media-player-fullscreen.js +0 -68
  168. package/dist/src/components/media-player-hls.d.ts.map +0 -1
  169. package/dist/src/components/media-player-hls.js +0 -20
  170. package/dist/src/components/media-player-loading.d.ts.map +0 -1
  171. package/dist/src/components/media-player-loading.js +0 -53
  172. package/dist/src/components/media-player-play.d.ts.map +0 -1
  173. package/dist/src/components/media-player-play.js +0 -44
  174. package/dist/src/components/media-player-root.d.ts.map +0 -1
  175. package/dist/src/components/media-player-root.js +0 -243
  176. package/dist/src/components/media-player-seek.d.ts.map +0 -1
  177. package/dist/src/components/media-player-seek.js +0 -92
  178. package/dist/src/components/media-player-time.d.ts.map +0 -1
  179. package/dist/src/components/media-player-time.js +0 -57
  180. package/dist/src/components/media-player-tooltip.d.ts.map +0 -1
  181. package/dist/src/components/media-player-tooltip.js +0 -14
  182. package/dist/src/components/media-player-video.d.ts.map +0 -1
  183. package/dist/src/components/media-player-video.js +0 -18
  184. package/dist/src/components/media-player-volume.d.ts.map +0 -1
  185. package/dist/src/components/media-player-volume.js +0 -88
  186. package/dist/src/components/media-player.d.ts.map +0 -1
  187. package/dist/src/components/media-player.js +0 -67
  188. package/dist/src/components/media-suspense.d.ts.map +0 -1
  189. package/dist/src/components/media-suspense.js +0 -173
  190. package/dist/src/components/player-settings-form.d.ts.map +0 -1
  191. package/dist/src/components/player-settings-form.js +0 -46
  192. package/dist/src/components/react-player-wrapper.d.ts.map +0 -1
  193. package/dist/src/components/react-player-wrapper.js +0 -163
  194. package/dist/src/components/simple-video-player.d.ts.map +0 -1
  195. package/dist/src/components/simple-video-player.js +0 -41
  196. package/dist/src/components/ui/enhanced-seek-bar.d.ts.map +0 -1
  197. package/dist/src/components/ui/enhanced-seek-bar.js +0 -112
  198. package/dist/src/components/ui/fullscreen-button.d.ts.map +0 -1
  199. package/dist/src/components/ui/fullscreen-button.js +0 -21
  200. package/dist/src/components/ui/media-resource-preloader.d.ts.map +0 -1
  201. package/dist/src/components/ui/media-resource-preloader.js +0 -295
  202. package/dist/src/components/ui/play-button.d.ts.map +0 -1
  203. package/dist/src/components/ui/play-button.js +0 -26
  204. package/dist/src/components/ui/seek-bar.d.ts.map +0 -1
  205. package/dist/src/components/ui/seek-bar.js +0 -54
  206. package/dist/src/components/ui/time-display.d.ts.map +0 -1
  207. package/dist/src/components/ui/time-display.js +0 -18
  208. package/dist/src/components/ui/volume-control.d.ts.map +0 -1
  209. package/dist/src/components/ui/volume-control.js +0 -71
  210. package/dist/src/components/unified/base-media-player.d.ts.map +0 -1
  211. package/dist/src/components/unified/base-media-player.js +0 -104
  212. package/dist/src/components/unified/media-player.d.ts.map +0 -1
  213. package/dist/src/components/unified/media-player.js +0 -41
  214. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts.map +0 -1
  215. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  216. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts.map +0 -1
  217. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  218. package/dist/src/components/variants/minimal/MinimalControls.d.ts.map +0 -1
  219. package/dist/src/components/variants/minimal/MinimalControls.js +0 -19
  220. package/dist/src/components/variants/minimal/MinimalLoading.d.ts.map +0 -1
  221. package/dist/src/components/variants/minimal/MinimalLoading.js +0 -6
  222. package/dist/src/components/variants/minimal/MinimalMediaPlayer.d.ts.map +0 -1
  223. package/dist/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  224. package/dist/src/components/variants/minimal/MinimalOverlay.d.ts.map +0 -1
  225. package/dist/src/components/variants/minimal/MinimalOverlay.js +0 -15
  226. package/dist/src/components/variants/minimal/MinimalPlayButton.d.ts.map +0 -1
  227. package/dist/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  228. package/dist/src/components/variants/minimal/MinimalSeekBar.d.ts.map +0 -1
  229. package/dist/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  230. package/dist/src/components/variants/minimal/MinimalVolumeControl.d.ts.map +0 -1
  231. package/dist/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  232. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.d.ts.map +0 -1
  233. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  234. package/dist/src/components/variants/minimal/components/CenterPlayButton.d.ts.map +0 -1
  235. package/dist/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  236. package/dist/src/components/variants/minimal/components/ControlBar.d.ts.map +0 -1
  237. package/dist/src/components/variants/minimal/components/ControlBar.js +0 -10
  238. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts.map +0 -1
  239. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  240. package/dist/src/components/variants/minimal/components/PlaybackControls.d.ts.map +0 -1
  241. package/dist/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  242. package/dist/src/components/variants/minimal/components/RightControls.d.ts.map +0 -1
  243. package/dist/src/components/variants/minimal/components/RightControls.js +0 -40
  244. package/dist/src/components/variants/minimal/components/SeekBar.d.ts.map +0 -1
  245. package/dist/src/components/variants/minimal/components/SeekBar.js +0 -43
  246. package/dist/src/components/variants/minimal/components/SettingsDropdown.d.ts.map +0 -1
  247. package/dist/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  248. package/dist/src/components/variants/minimal/components/SubtitleDisplay.d.ts.map +0 -1
  249. package/dist/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  250. package/dist/src/components/variants/minimal/components/TimeDisplay.d.ts.map +0 -1
  251. package/dist/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  252. package/dist/src/components/variants/minimal/components/VideoElement.d.ts.map +0 -1
  253. package/dist/src/components/variants/minimal/components/VideoElement.js +0 -4
  254. package/dist/src/components/variants/minimal/components/VolumeControl.d.ts.map +0 -1
  255. package/dist/src/components/variants/minimal/components/VolumeControl.js +0 -99
  256. package/dist/src/components/variants/minimal/index.d.ts.map +0 -1
  257. package/dist/src/components/variants/minimal/index.js +0 -8
  258. package/dist/src/components/video-player.d.ts.map +0 -1
  259. package/dist/src/components/video-player.js +0 -38
  260. package/dist/src/context/error-handling.d.ts.map +0 -1
  261. package/dist/src/context/error-handling.js +0 -300
  262. package/dist/src/context/media-context.d.ts.map +0 -1
  263. package/dist/src/context/media-context.js +0 -121
  264. package/dist/src/context/media-provider.d.ts.map +0 -1
  265. package/dist/src/context/media-provider.js +0 -164
  266. package/dist/src/context/media-store.d.ts.map +0 -1
  267. package/dist/src/context/media-store.js +0 -273
  268. package/dist/src/context/persistence.d.ts.map +0 -1
  269. package/dist/src/context/persistence.js +0 -356
  270. package/dist/src/core/events/event-system.d.ts.map +0 -1
  271. package/dist/src/core/events/event-system.js +0 -288
  272. package/dist/src/core/events/hooks.d.ts.map +0 -1
  273. package/dist/src/core/events/hooks.js +0 -198
  274. package/dist/src/core/events/index.d.ts.map +0 -1
  275. package/dist/src/core/events/index.js +0 -7
  276. package/dist/src/core/events/middleware.d.ts.map +0 -1
  277. package/dist/src/core/events/middleware.js +0 -219
  278. package/dist/src/core/index.d.ts.map +0 -1
  279. package/dist/src/core/index.js +0 -15
  280. package/dist/src/core/optimization/bundle-optimizer.d.ts.map +0 -1
  281. package/dist/src/core/optimization/bundle-optimizer.js +0 -217
  282. package/dist/src/core/performance/cicd.d.ts.map +0 -1
  283. package/dist/src/core/performance/cicd.js +0 -83
  284. package/dist/src/core/performance/index.d.ts.map +0 -1
  285. package/dist/src/core/performance/index.js +0 -14
  286. package/dist/src/core/performance/media-loading-optimizer.d.ts.map +0 -1
  287. package/dist/src/core/performance/media-loading-optimizer.js +0 -404
  288. package/dist/src/core/performance/performance-budgets.d.ts.map +0 -1
  289. package/dist/src/core/performance/performance-budgets.js +0 -326
  290. package/dist/src/core/performance/performance-monitor.d.ts.map +0 -1
  291. package/dist/src/core/performance/performance-monitor.js +0 -297
  292. package/dist/src/core/performance/performance-testing.d.ts.map +0 -1
  293. package/dist/src/core/performance/performance-testing.js +0 -314
  294. package/dist/src/core/plugins/base-plugin.d.ts.map +0 -1
  295. package/dist/src/core/plugins/base-plugin.js +0 -151
  296. package/dist/src/core/plugins/enhanced-plugin-system.d.ts.map +0 -1
  297. package/dist/src/core/plugins/enhanced-plugin-system.js +0 -305
  298. package/dist/src/core/plugins/examples/analytics-plugin.d.ts.map +0 -1
  299. package/dist/src/core/plugins/examples/analytics-plugin.js +0 -191
  300. package/dist/src/core/plugins/index.d.ts.map +0 -1
  301. package/dist/src/core/plugins/index.js +0 -9
  302. package/dist/src/core/plugins/registry.d.ts.map +0 -1
  303. package/dist/src/core/plugins/registry.js +0 -261
  304. package/dist/src/core/plugins/types.d.ts.map +0 -1
  305. package/dist/src/core/plugins/types.js +0 -31
  306. package/dist/src/core/plugins/utils.d.ts.map +0 -1
  307. package/dist/src/core/plugins/utils.js +0 -274
  308. package/dist/src/core/progressive-loading.d.ts.map +0 -1
  309. package/dist/src/core/progressive-loading.js +0 -239
  310. package/dist/src/core/providers/enhanced-hls-provider.d.ts.map +0 -1
  311. package/dist/src/core/providers/enhanced-hls-provider.js +0 -273
  312. package/dist/src/core/providers/service-provider.d.ts.map +0 -1
  313. package/dist/src/core/providers/service-provider.js +0 -105
  314. package/dist/src/core/utils.d.ts.map +0 -1
  315. package/dist/src/core/utils.js +0 -21
  316. package/dist/src/features/media-session/media-session-manager.d.ts.map +0 -1
  317. package/dist/src/features/media-session/media-session-manager.js +0 -331
  318. package/dist/src/features/picture-in-picture/pip-manager.d.ts.map +0 -1
  319. package/dist/src/features/picture-in-picture/pip-manager.js +0 -353
  320. package/dist/src/features/playlist/playlist-manager.d.ts.map +0 -1
  321. package/dist/src/features/playlist/playlist-manager.js +0 -475
  322. package/dist/src/features/subtitles/subtitle-manager.d.ts.map +0 -1
  323. package/dist/src/features/subtitles/subtitle-manager.js +0 -335
  324. package/dist/src/features/subtitles/subtitle-parser.d.ts.map +0 -1
  325. package/dist/src/features/subtitles/subtitle-parser.js +0 -217
  326. package/dist/src/features/thumbnails/thumbnail-generator.d.ts.map +0 -1
  327. package/dist/src/features/thumbnails/thumbnail-generator.js +0 -388
  328. package/dist/src/hooks/accessibility/index.d.ts.map +0 -1
  329. package/dist/src/hooks/accessibility/index.js +0 -4
  330. package/dist/src/hooks/accessibility/use-accessibility-preferences.d.ts.map +0 -1
  331. package/dist/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  332. package/dist/src/hooks/accessibility/use-focus-management.d.ts.map +0 -1
  333. package/dist/src/hooks/accessibility/use-focus-management.js +0 -142
  334. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.d.ts.map +0 -1
  335. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  336. package/dist/src/hooks/accessibility/use-screen-reader.d.ts.map +0 -1
  337. package/dist/src/hooks/accessibility/use-screen-reader.js +0 -148
  338. package/dist/src/hooks/core/index.d.ts.map +0 -1
  339. package/dist/src/hooks/core/index.js +0 -19
  340. package/dist/src/hooks/legacy.d.ts.map +0 -1
  341. package/dist/src/hooks/legacy.js +0 -17
  342. package/dist/src/hooks/use-enhanced-media-player.d.ts.map +0 -1
  343. package/dist/src/hooks/use-enhanced-media-player.js +0 -395
  344. package/dist/src/hooks/use-intelligent-preloading.d.ts.map +0 -1
  345. package/dist/src/hooks/use-intelligent-preloading.js +0 -258
  346. package/dist/src/hooks/use-keyboard-controls.d.ts.map +0 -1
  347. package/dist/src/hooks/use-keyboard-controls.js +0 -83
  348. package/dist/src/hooks/use-media-actions.d.ts.map +0 -1
  349. package/dist/src/hooks/use-media-actions.js +0 -121
  350. package/dist/src/hooks/use-media-metadata.d.ts.map +0 -1
  351. package/dist/src/hooks/use-media-metadata.js +0 -74
  352. package/dist/src/hooks/use-media-optimistic.d.ts.map +0 -1
  353. package/dist/src/hooks/use-media-optimistic.js +0 -205
  354. package/dist/src/hooks/use-media-player.d.ts.map +0 -1
  355. package/dist/src/hooks/use-media-player.js +0 -251
  356. package/dist/src/hooks/use-media-state.d.ts.map +0 -1
  357. package/dist/src/hooks/use-media-state.js +0 -162
  358. package/dist/src/hooks/use-memory-optimization.d.ts.map +0 -1
  359. package/dist/src/hooks/use-memory-optimization.js +0 -288
  360. package/dist/src/hooks/use-optimistic-controls.d.ts.map +0 -1
  361. package/dist/src/hooks/use-optimistic-controls.js +0 -60
  362. package/dist/src/hooks/use-optimized-media.d.ts.map +0 -1
  363. package/dist/src/hooks/use-optimized-media.js +0 -211
  364. package/dist/src/hooks/use-touch-gestures.d.ts.map +0 -1
  365. package/dist/src/hooks/use-touch-gestures.js +0 -289
  366. package/dist/src/hooks/useEnhancedSubtitles.d.ts.map +0 -1
  367. package/dist/src/hooks/useEnhancedSubtitles.js +0 -205
  368. package/dist/src/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  369. package/dist/src/hooks/useKeyboardShortcuts.js +0 -59
  370. package/dist/src/hooks/useMediaControls.d.ts.map +0 -1
  371. package/dist/src/hooks/useMediaControls.js +0 -44
  372. package/dist/src/hooks/useScreenshot.d.ts.map +0 -1
  373. package/dist/src/hooks/useScreenshot.js +0 -56
  374. package/dist/src/hooks/useSubtitles.d.ts.map +0 -1
  375. package/dist/src/hooks/useSubtitles.js +0 -73
  376. package/dist/src/hooks/useVideoPlayer.d.ts.map +0 -1
  377. package/dist/src/hooks/useVideoPlayer.js +0 -184
  378. package/dist/src/icons/components/FullscreenIcon.d.ts.map +0 -1
  379. package/dist/src/icons/components/FullscreenIcon.js +0 -11
  380. package/dist/src/icons/components/SettingsIcon.d.ts.map +0 -1
  381. package/dist/src/icons/components/SettingsIcon.js +0 -11
  382. package/dist/src/icons/components/animated/LoadingIcon.d.ts.map +0 -1
  383. package/dist/src/icons/components/animated/LoadingIcon.js +0 -11
  384. package/dist/src/icons/components/animated/PlayPauseIcon.d.ts.map +0 -1
  385. package/dist/src/icons/components/animated/PlayPauseIcon.js +0 -9
  386. package/dist/src/icons/components/media/PauseIcon.d.ts.map +0 -1
  387. package/dist/src/icons/components/media/PauseIcon.js +0 -12
  388. package/dist/src/icons/components/media/PlayIcon.d.ts.map +0 -1
  389. package/dist/src/icons/components/media/PlayIcon.js +0 -12
  390. package/dist/src/icons/components/volume/VolumeIcon.d.ts.map +0 -1
  391. package/dist/src/icons/components/volume/VolumeIcon.js +0 -11
  392. package/dist/src/icons/components/volume/VolumeOffIcon.d.ts.map +0 -1
  393. package/dist/src/icons/components/volume/VolumeOffIcon.js +0 -11
  394. package/dist/src/icons/index.d.ts.map +0 -1
  395. package/dist/src/icons/index.js +0 -45
  396. package/dist/src/icons/provider.d.ts.map +0 -1
  397. package/dist/src/icons/provider.js +0 -37
  398. package/dist/src/icons/types.d.ts.map +0 -1
  399. package/dist/src/icons/types.js +0 -1
  400. package/dist/src/index-enhanced.d.ts.map +0 -1
  401. package/dist/src/index-enhanced.js +0 -16
  402. package/dist/src/index-legacy.d.ts.map +0 -1
  403. package/dist/src/index-legacy.js +0 -97
  404. package/dist/src/index.d.ts.map +0 -1
  405. package/dist/src/index.js +0 -90
  406. package/dist/src/index.minimal.d.ts.map +0 -1
  407. package/dist/src/index.minimal.js +0 -3
  408. package/dist/src/lib/deprecation.d.ts.map +0 -1
  409. package/dist/src/lib/deprecation.js +0 -31
  410. package/dist/src/lib/format-time.d.ts.map +0 -1
  411. package/dist/src/lib/format-time.js +0 -32
  412. package/dist/src/lib/index.d.ts.map +0 -1
  413. package/dist/src/lib/index.js +0 -3
  414. package/dist/src/lib/utils.d.ts.map +0 -1
  415. package/dist/src/lib/utils.js +0 -5
  416. package/dist/src/test/setup.d.ts.map +0 -1
  417. package/dist/src/test/setup.js +0 -65
  418. package/dist/src/types/events.d.ts.map +0 -1
  419. package/dist/src/types/events.js +0 -2
  420. package/dist/src/types/formats.d.ts.map +0 -1
  421. package/dist/src/types/formats.js +0 -63
  422. package/dist/src/types/index.d.ts.map +0 -1
  423. package/dist/src/types/index.js +0 -4
  424. package/dist/utils-Db13763z.cjs +0 -9
  425. package/dist/utils-Db13763z.cjs.map +0 -1
  426. package/dist/utils-nTO4AnHo.js +0 -2809
  427. package/dist/utils-nTO4AnHo.js.map +0 -1
  428. package/dist/utils.js +0 -2
  429. package/dist/utils.js.map +0 -1
  430. package/dist/utils.mjs +0 -7
  431. package/dist/utils.mjs.map +0 -1
  432. package/src/adapters/videojs-adapter.js +0 -350
  433. package/src/components/AnimateLoading.js +0 -41
  434. package/src/components/LoadingState.js +0 -111
  435. package/src/components/accessibility/keyboard-help-overlay.js +0 -90
  436. package/src/components/audio-player.js +0 -31
  437. package/src/components/basic/index.js +0 -29
  438. package/src/components/enhanced/advanced-features.js +0 -64
  439. package/src/components/enhanced/debug-panel.js +0 -94
  440. package/src/components/enhanced/enhanced-controls.js +0 -233
  441. package/src/components/enhanced/enhanced-media-player.js +0 -316
  442. package/src/components/enhanced/error-handling.js +0 -153
  443. package/src/components/enhanced/index.js +0 -10
  444. package/src/components/enhanced/media-player-enhanced.js +0 -250
  445. package/src/components/examples/basic-video-player.js +0 -16
  446. package/src/components/examples/custom-controls-example.js +0 -12
  447. package/src/components/examples/enhanced-controls-example.js +0 -18
  448. package/src/components/examples/enhanced-media-player-example.js +0 -13
  449. package/src/components/examples/loading-states-demo.js +0 -41
  450. package/src/components/examples/react-19-demo.js +0 -104
  451. package/src/components/examples/volume-orientation-demo.js +0 -31
  452. package/src/components/icon-demo.js +0 -16
  453. package/src/components/icons/index.js +0 -59
  454. package/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  455. package/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  456. package/src/components/icons/svg-icons/AudioIcon.js +0 -4
  457. package/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  458. package/src/components/icons/svg-icons/CameraIcon.js +0 -4
  459. package/src/components/icons/svg-icons/CheckIcon.js +0 -4
  460. package/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  461. package/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  462. package/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  463. package/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  464. package/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  465. package/src/components/icons/svg-icons/PauseIcon.js +0 -3
  466. package/src/components/icons/svg-icons/PlayIcon.js +0 -3
  467. package/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  468. package/src/components/icons/svg-icons/QualityIcon.js +0 -3
  469. package/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  470. package/src/components/icons/svg-icons/SliderIcon.js +0 -3
  471. package/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  472. package/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  473. package/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  474. package/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  475. package/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  476. package/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  477. package/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  478. package/src/components/legacy.js +0 -52
  479. package/src/components/media-metadata-display.js +0 -20
  480. package/src/components/media-player-audio.js +0 -18
  481. package/src/components/media-player-controls.js +0 -150
  482. package/src/components/media-player-error.js +0 -85
  483. package/src/components/media-player-fullscreen.js +0 -68
  484. package/src/components/media-player-hls.js +0 -20
  485. package/src/components/media-player-loading.js +0 -53
  486. package/src/components/media-player-play.js +0 -44
  487. package/src/components/media-player-root.js +0 -243
  488. package/src/components/media-player-seek.js +0 -92
  489. package/src/components/media-player-time.js +0 -57
  490. package/src/components/media-player-tooltip.js +0 -14
  491. package/src/components/media-player-video.js +0 -18
  492. package/src/components/media-player-volume.js +0 -88
  493. package/src/components/media-player.js +0 -67
  494. package/src/components/media-suspense.js +0 -173
  495. package/src/components/player-settings-form.js +0 -46
  496. package/src/components/react-player-wrapper.js +0 -163
  497. package/src/components/simple-video-player.js +0 -41
  498. package/src/components/ui/enhanced-seek-bar.js +0 -112
  499. package/src/components/ui/fullscreen-button.js +0 -21
  500. package/src/components/ui/media-resource-preloader.js +0 -295
  501. package/src/components/ui/play-button.js +0 -26
  502. package/src/components/ui/seek-bar.js +0 -54
  503. package/src/components/ui/time-display.js +0 -18
  504. package/src/components/ui/volume-control.js +0 -71
  505. package/src/components/unified/base-media-player.js +0 -104
  506. package/src/components/unified/media-player.js +0 -41
  507. package/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  508. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  509. package/src/components/variants/minimal/MinimalControls.js +0 -19
  510. package/src/components/variants/minimal/MinimalLoading.js +0 -6
  511. package/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  512. package/src/components/variants/minimal/MinimalOverlay.js +0 -15
  513. package/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  514. package/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  515. package/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  516. package/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  517. package/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  518. package/src/components/variants/minimal/components/ControlBar.js +0 -10
  519. package/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  520. package/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  521. package/src/components/variants/minimal/components/RightControls.js +0 -40
  522. package/src/components/variants/minimal/components/SeekBar.js +0 -43
  523. package/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  524. package/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  525. package/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  526. package/src/components/variants/minimal/components/VideoElement.js +0 -4
  527. package/src/components/variants/minimal/components/VolumeControl.js +0 -99
  528. package/src/components/variants/minimal/index.js +0 -8
  529. package/src/components/video-player.js +0 -38
  530. package/src/context/error-handling.js +0 -300
  531. package/src/context/media-context.js +0 -121
  532. package/src/context/media-provider.js +0 -164
  533. package/src/context/media-store.js +0 -273
  534. package/src/context/persistence.js +0 -356
  535. package/src/core/events/event-system.js +0 -288
  536. package/src/core/events/hooks.js +0 -198
  537. package/src/core/events/index.js +0 -7
  538. package/src/core/events/middleware.js +0 -219
  539. package/src/core/index.js +0 -15
  540. package/src/core/optimization/bundle-optimizer.js +0 -217
  541. package/src/core/performance/cicd.js +0 -83
  542. package/src/core/performance/index.js +0 -14
  543. package/src/core/performance/media-loading-optimizer.js +0 -404
  544. package/src/core/performance/performance-budgets.js +0 -326
  545. package/src/core/performance/performance-monitor.js +0 -297
  546. package/src/core/performance/performance-testing.js +0 -314
  547. package/src/core/plugins/base-plugin.js +0 -151
  548. package/src/core/plugins/enhanced-plugin-system.js +0 -305
  549. package/src/core/plugins/examples/analytics-plugin.js +0 -191
  550. package/src/core/plugins/index.js +0 -9
  551. package/src/core/plugins/registry.js +0 -261
  552. package/src/core/plugins/types.js +0 -31
  553. package/src/core/plugins/utils.js +0 -274
  554. package/src/core/progressive-loading.js +0 -239
  555. package/src/core/providers/enhanced-hls-provider.js +0 -273
  556. package/src/core/providers/service-provider.js +0 -105
  557. package/src/core/utils.js +0 -21
  558. package/src/features/media-session/media-session-manager.js +0 -331
  559. package/src/features/picture-in-picture/pip-manager.js +0 -353
  560. package/src/features/playlist/playlist-manager.js +0 -475
  561. package/src/features/subtitles/subtitle-manager.js +0 -335
  562. package/src/features/subtitles/subtitle-parser.js +0 -217
  563. package/src/features/thumbnails/thumbnail-generator.js +0 -388
  564. package/src/hooks/accessibility/index.js +0 -4
  565. package/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  566. package/src/hooks/accessibility/use-focus-management.js +0 -142
  567. package/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  568. package/src/hooks/accessibility/use-screen-reader.js +0 -148
  569. package/src/hooks/core/index.js +0 -19
  570. package/src/hooks/legacy.js +0 -17
  571. package/src/hooks/use-enhanced-media-player.js +0 -395
  572. package/src/hooks/use-intelligent-preloading.js +0 -258
  573. package/src/hooks/use-keyboard-controls.js +0 -83
  574. package/src/hooks/use-media-actions.js +0 -121
  575. package/src/hooks/use-media-metadata.js +0 -74
  576. package/src/hooks/use-media-optimistic.js +0 -205
  577. package/src/hooks/use-media-player.js +0 -251
  578. package/src/hooks/use-media-state.js +0 -162
  579. package/src/hooks/use-memory-optimization.js +0 -288
  580. package/src/hooks/use-optimistic-controls.js +0 -60
  581. package/src/hooks/use-optimized-media.js +0 -211
  582. package/src/hooks/use-touch-gestures.js +0 -289
  583. package/src/hooks/useEnhancedSubtitles.js +0 -205
  584. package/src/hooks/useKeyboardShortcuts.js +0 -59
  585. package/src/hooks/useMediaControls.js +0 -44
  586. package/src/hooks/useScreenshot.js +0 -56
  587. package/src/hooks/useSubtitles.js +0 -73
  588. package/src/hooks/useVideoPlayer.js +0 -184
  589. package/src/icons/components/FullscreenIcon.js +0 -11
  590. package/src/icons/components/SettingsIcon.js +0 -11
  591. package/src/icons/components/animated/LoadingIcon.js +0 -11
  592. package/src/icons/components/animated/PlayPauseIcon.js +0 -9
  593. package/src/icons/components/media/PauseIcon.js +0 -12
  594. package/src/icons/components/media/PlayIcon.js +0 -12
  595. package/src/icons/components/volume/VolumeIcon.js +0 -11
  596. package/src/icons/components/volume/VolumeOffIcon.js +0 -11
  597. package/src/icons/index.js +0 -45
  598. package/src/icons/provider.js +0 -37
  599. package/src/icons/types.js +0 -1
  600. package/src/index-enhanced.js +0 -16
  601. package/src/index-legacy.js +0 -97
  602. package/src/index.js +0 -90
  603. package/src/index.minimal.js +0 -3
  604. package/src/lib/deprecation.js +0 -31
  605. package/src/lib/format-time.js +0 -32
  606. package/src/lib/index.js +0 -3
  607. package/src/lib/utils.js +0 -5
  608. package/src/test/setup.js +0 -65
  609. package/src/types/events.js +0 -2
  610. package/src/types/formats.js +0 -63
  611. package/src/types/index.js +0 -4
@@ -1,388 +0,0 @@
1
- export class ThumbnailGenerator {
2
- config;
3
- cache = new Map();
4
- videoElement = null;
5
- canvas;
6
- context;
7
- constructor(config) {
8
- this.config = {
9
- defaultWidth: 160,
10
- defaultHeight: 90,
11
- defaultQuality: 0.8,
12
- defaultFormat: 'jpeg',
13
- maxCacheSize: 50,
14
- enableCaching: true,
15
- ...config
16
- };
17
- this.canvas = document.createElement('canvas');
18
- const ctx = this.canvas.getContext('2d');
19
- if (!ctx) {
20
- throw new Error('Canvas 2D context not supported');
21
- }
22
- this.context = ctx;
23
- }
24
- /**
25
- * Set the video element to generate thumbnails from
26
- */
27
- setVideoElement(video) {
28
- this.videoElement = video;
29
- }
30
- /**
31
- * Generate thumbnail at specific time
32
- */
33
- async generateThumbnail(time, options = {}) {
34
- if (!this.videoElement) {
35
- throw new Error('Video element not set');
36
- }
37
- const cacheKey = this.getCacheKey(time, options);
38
- // Check cache first
39
- if (this.config.enableCaching && this.cache.has(cacheKey)) {
40
- const cached = this.cache.get(cacheKey);
41
- return { ...cached };
42
- }
43
- const width = options.width || this.config.defaultWidth;
44
- const height = options.height || this.config.defaultHeight;
45
- const quality = options.quality || this.config.defaultQuality;
46
- const format = options.format || this.config.defaultFormat;
47
- // Setup canvas
48
- this.canvas.width = width;
49
- this.canvas.height = height;
50
- // Set video time and wait for seek
51
- const originalTime = this.videoElement.currentTime;
52
- await this.seekToTime(time);
53
- // Draw video frame to canvas
54
- this.context.clearRect(0, 0, width, height);
55
- // Calculate aspect ratio preserving dimensions
56
- const videoAspect = this.videoElement.videoWidth / this.videoElement.videoHeight;
57
- const canvasAspect = width / height;
58
- let drawWidth = width;
59
- let drawHeight = height;
60
- let offsetX = 0;
61
- let offsetY = 0;
62
- if (videoAspect > canvasAspect) {
63
- // Video is wider, fit to height
64
- drawHeight = height;
65
- drawWidth = height * videoAspect;
66
- offsetX = (width - drawWidth) / 2;
67
- }
68
- else {
69
- // Video is taller, fit to width
70
- drawWidth = width;
71
- drawHeight = width / videoAspect;
72
- offsetY = (height - drawHeight) / 2;
73
- }
74
- this.context.drawImage(this.videoElement, offsetX, offsetY, drawWidth, drawHeight);
75
- // Convert to blob
76
- const blob = await this.canvasToBlob(format, quality);
77
- const dataUrl = this.canvas.toDataURL(`image/${format}`, quality);
78
- const objectUrl = URL.createObjectURL(blob);
79
- const thumbnail = {
80
- blob,
81
- dataUrl,
82
- objectUrl,
83
- width,
84
- height,
85
- timestamp: time
86
- };
87
- // Cache thumbnail
88
- if (this.config.enableCaching) {
89
- this.addToCache(cacheKey, thumbnail);
90
- }
91
- // Restore original time
92
- if (originalTime !== time) {
93
- await this.seekToTime(originalTime);
94
- }
95
- return thumbnail;
96
- }
97
- /**
98
- * Generate multiple thumbnails for scrub bar
99
- */
100
- async generateScrubThumbnails(count, options = {}) {
101
- if (!this.videoElement) {
102
- throw new Error('Video element not set');
103
- }
104
- const duration = this.videoElement.duration;
105
- if (!duration || duration === 0) {
106
- throw new Error('Video duration not available');
107
- }
108
- const thumbnails = [];
109
- const interval = duration / count;
110
- for (let i = 0; i < count; i++) {
111
- const time = i * interval;
112
- try {
113
- const thumbnail = await this.generateThumbnail(time, options);
114
- thumbnails.push(thumbnail);
115
- }
116
- catch (error) {
117
- console.warn(`Failed to generate thumbnail at ${time}s:`, error);
118
- }
119
- }
120
- return thumbnails;
121
- }
122
- /**
123
- * Generate thumbnail sprite sheet
124
- */
125
- async generateSprite(count, options = {}) {
126
- if (!this.videoElement) {
127
- throw new Error('Video element not set');
128
- }
129
- const duration = this.videoElement.duration;
130
- if (!duration || duration === 0) {
131
- throw new Error('Video duration not available');
132
- }
133
- const thumbnailWidth = options.width || this.config.defaultWidth;
134
- const thumbnailHeight = options.height || this.config.defaultHeight;
135
- const quality = options.quality || this.config.defaultQuality;
136
- const format = options.format || this.config.defaultFormat;
137
- // Calculate sprite dimensions
138
- const columns = options.columns || Math.ceil(Math.sqrt(count));
139
- const rows = Math.ceil(count / columns);
140
- const spriteWidth = columns * thumbnailWidth;
141
- const spriteHeight = rows * thumbnailHeight;
142
- // Create sprite canvas
143
- const spriteCanvas = document.createElement('canvas');
144
- spriteCanvas.width = spriteWidth;
145
- spriteCanvas.height = spriteHeight;
146
- const spriteContext = spriteCanvas.getContext('2d');
147
- if (!spriteContext) {
148
- throw new Error('Canvas 2D context not supported');
149
- }
150
- const thumbnails = [];
151
- const interval = duration / count;
152
- // Generate each thumbnail
153
- for (let i = 0; i < count; i++) {
154
- const time = i * interval;
155
- const col = i % columns;
156
- const row = Math.floor(i / columns);
157
- const x = col * thumbnailWidth;
158
- const y = row * thumbnailHeight;
159
- try {
160
- // Generate individual thumbnail
161
- const thumbnail = await this.generateThumbnail(time, {
162
- width: thumbnailWidth,
163
- height: thumbnailHeight,
164
- quality,
165
- format
166
- });
167
- // Draw thumbnail to sprite
168
- const img = new Image();
169
- img.src = thumbnail.dataUrl;
170
- await new Promise((resolve, reject) => {
171
- img.onload = () => {
172
- spriteContext.drawImage(img, x, y, thumbnailWidth, thumbnailHeight);
173
- resolve();
174
- };
175
- img.onerror = reject;
176
- });
177
- thumbnails.push({
178
- x,
179
- y,
180
- width: thumbnailWidth,
181
- height: thumbnailHeight,
182
- time
183
- });
184
- // Clean up individual thumbnail
185
- URL.revokeObjectURL(thumbnail.objectUrl);
186
- }
187
- catch (error) {
188
- console.warn(`Failed to add thumbnail at ${time}s to sprite:`, error);
189
- }
190
- }
191
- // Create final sprite image
192
- const spriteImage = new Image();
193
- spriteImage.src = spriteCanvas.toDataURL(`image/${format}`, quality);
194
- const sprite = {
195
- image: spriteImage,
196
- thumbnails,
197
- spriteWidth,
198
- spriteHeight,
199
- thumbnailWidth,
200
- thumbnailHeight
201
- };
202
- return sprite;
203
- }
204
- /**
205
- * Extract thumbnail from sprite at specific time
206
- */
207
- getThumbnailFromSprite(sprite, time) {
208
- // Find closest thumbnail
209
- const thumbnail = sprite.thumbnails.reduce((closest, current) => {
210
- return Math.abs(current.time - time) < Math.abs(closest.time - time)
211
- ? current
212
- : closest;
213
- });
214
- if (!thumbnail)
215
- return null;
216
- // Create canvas for extracted thumbnail
217
- const canvas = document.createElement('canvas');
218
- canvas.width = thumbnail.width;
219
- canvas.height = thumbnail.height;
220
- const context = canvas.getContext('2d');
221
- if (!context)
222
- return null;
223
- // Draw portion of sprite to canvas
224
- context.drawImage(sprite.image, thumbnail.x, thumbnail.y, thumbnail.width, thumbnail.height, 0, 0, thumbnail.width, thumbnail.height);
225
- return canvas;
226
- }
227
- /**
228
- * Clear cache
229
- */
230
- clearCache() {
231
- // Revoke object URLs to prevent memory leaks
232
- this.cache.forEach(thumbnail => {
233
- URL.revokeObjectURL(thumbnail.objectUrl);
234
- });
235
- this.cache.clear();
236
- }
237
- /**
238
- * Get cache size
239
- */
240
- getCacheSize() {
241
- return this.cache.size;
242
- }
243
- /**
244
- * Get cache info
245
- */
246
- getCacheInfo() {
247
- return Array.from(this.cache.entries()).map(([key, thumbnail]) => ({
248
- key,
249
- timestamp: thumbnail.timestamp,
250
- size: thumbnail.blob.size
251
- }));
252
- }
253
- /**
254
- * Set configuration
255
- */
256
- updateConfig(config) {
257
- this.config = { ...this.config, ...config };
258
- }
259
- /**
260
- * Seek video to specific time
261
- */
262
- async seekToTime(time) {
263
- if (!this.videoElement)
264
- return;
265
- return new Promise((resolve, reject) => {
266
- let timeoutId;
267
- const onSeeked = () => {
268
- this.videoElement.removeEventListener('seeked', onSeeked);
269
- clearTimeout(timeoutId);
270
- resolve();
271
- };
272
- const onError = () => {
273
- this.videoElement.removeEventListener('error', onError);
274
- this.videoElement.removeEventListener('seeked', onSeeked);
275
- clearTimeout(timeoutId);
276
- reject(new Error('Seek failed'));
277
- };
278
- // Set timeout to avoid hanging
279
- timeoutId = window.setTimeout(() => {
280
- this.videoElement.removeEventListener('seeked', onSeeked);
281
- this.videoElement.removeEventListener('error', onError);
282
- reject(new Error('Seek timeout'));
283
- }, 5000);
284
- this.videoElement.addEventListener('seeked', onSeeked);
285
- this.videoElement.addEventListener('error', onError);
286
- this.videoElement.currentTime = Math.max(0, Math.min(time, this.videoElement.duration));
287
- });
288
- }
289
- /**
290
- * Convert canvas to blob
291
- */
292
- canvasToBlob(format, quality) {
293
- return new Promise((resolve, reject) => {
294
- this.canvas.toBlob((blob) => {
295
- if (blob) {
296
- resolve(blob);
297
- }
298
- else {
299
- reject(new Error('Failed to create blob from canvas'));
300
- }
301
- }, `image/${format}`, quality);
302
- });
303
- }
304
- /**
305
- * Generate cache key
306
- */
307
- getCacheKey(time, options) {
308
- const width = options.width || this.config.defaultWidth;
309
- const height = options.height || this.config.defaultHeight;
310
- const quality = options.quality || this.config.defaultQuality;
311
- const format = options.format || this.config.defaultFormat;
312
- return `${time}-${width}x${height}-${quality}-${format}`;
313
- }
314
- /**
315
- * Add thumbnail to cache
316
- */
317
- addToCache(key, thumbnail) {
318
- // Remove oldest items if cache is full
319
- if (this.cache.size >= this.config.maxCacheSize) {
320
- const oldestKey = this.cache.keys().next().value;
321
- const oldThumbnail = this.cache.get(oldestKey);
322
- if (oldThumbnail) {
323
- URL.revokeObjectURL(oldThumbnail.objectUrl);
324
- }
325
- this.cache.delete(oldestKey);
326
- }
327
- this.cache.set(key, thumbnail);
328
- }
329
- /**
330
- * Cleanup resources
331
- */
332
- destroy() {
333
- this.clearCache();
334
- this.videoElement = null;
335
- this.context.clearRect(0, 0, this.canvas.width, this.canvas.height);
336
- }
337
- }
338
- // Utility functions for thumbnail operations
339
- export const thumbnailUtils = {
340
- /**
341
- * Calculate optimal thumbnail dimensions maintaining aspect ratio
342
- */
343
- calculateDimensions(sourceWidth, sourceHeight, targetWidth, targetHeight) {
344
- const sourceAspect = sourceWidth / sourceHeight;
345
- const targetAspect = targetWidth / targetHeight;
346
- let width = targetWidth;
347
- let height = targetHeight;
348
- let offsetX = 0;
349
- let offsetY = 0;
350
- if (sourceAspect > targetAspect) {
351
- height = targetHeight;
352
- width = targetHeight * sourceAspect;
353
- offsetX = (targetWidth - width) / 2;
354
- }
355
- else {
356
- width = targetWidth;
357
- height = targetWidth / sourceAspect;
358
- offsetY = (targetHeight - height) / 2;
359
- }
360
- return { width, height, offsetX, offsetY };
361
- },
362
- /**
363
- * Create thumbnail URL from blob
364
- */
365
- createThumbnailUrl(blob) {
366
- return URL.createObjectURL(blob);
367
- },
368
- /**
369
- * Revoke thumbnail URL
370
- */
371
- revokeThumbnailUrl(url) {
372
- URL.revokeObjectURL(url);
373
- },
374
- /**
375
- * Convert time to thumbnail index
376
- */
377
- timeToIndex(time, duration, count) {
378
- const normalizedTime = Math.max(0, Math.min(time, duration));
379
- const index = Math.floor((normalizedTime / duration) * count);
380
- return Math.min(index, count - 1);
381
- },
382
- /**
383
- * Convert index to time
384
- */
385
- indexToTime(index, duration, count) {
386
- return (index / count) * duration;
387
- }
388
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,KAAK,2BAA2B,EACjC,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,YAAY,EACjB,KAAK,yBAAyB,EAC/B,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC5B,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,eAAe,EACf,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAA"}
@@ -1,4 +0,0 @@
1
- export { useKeyboardShortcuts, createMediaKeyboardShortcuts } from './use-keyboard-shortcuts';
2
- export { useFocusManagement, useMediaPlayerFocus } from './use-focus-management';
3
- export { useScreenReader, useMediaScreenReader } from './use-screen-reader';
4
- export { useAccessibilityPreferences, useAccessibilityStyles, useFocusVisible } from './use-accessibility-preferences';
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-accessibility-preferences.d.ts","sourceRoot":"","sources":["use-accessibility-preferences.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,wBAAwB;IACvC,oBAAoB,EAAE,OAAO,CAAA;IAC7B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,kBAAkB,EAAE,OAAO,GAAG,MAAM,GAAG,eAAe,CAAA;IACtD,0BAA0B,EAAE,OAAO,CAAA;CACpC;AAED,wBAAgB,2BAA2B,IAAI,wBAAwB,CA2DtE;AAGD,wBAAgB,sBAAsB;;;;EA0DrC;AAGD,wBAAgB,eAAe,YAuD9B"}
@@ -1,156 +0,0 @@
1
- import { useState, useEffect, useCallback } from 'react';
2
- export function useAccessibilityPreferences() {
3
- const [preferences, setPreferences] = useState({
4
- prefersReducedMotion: false,
5
- prefersHighContrast: false,
6
- prefersColorScheme: 'no-preference',
7
- prefersReducedTransparency: false
8
- });
9
- const updatePreferences = useCallback(() => {
10
- if (typeof window === 'undefined')
11
- return;
12
- const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
13
- const prefersHighContrast = window.matchMedia('(prefers-contrast: high)').matches;
14
- const prefersReducedTransparency = window.matchMedia('(prefers-reduced-transparency: reduce)').matches;
15
- let prefersColorScheme = 'no-preference';
16
- if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
17
- prefersColorScheme = 'dark';
18
- }
19
- else if (window.matchMedia('(prefers-color-scheme: light)').matches) {
20
- prefersColorScheme = 'light';
21
- }
22
- setPreferences({
23
- prefersReducedMotion,
24
- prefersHighContrast,
25
- prefersColorScheme,
26
- prefersReducedTransparency
27
- });
28
- }, []);
29
- useEffect(() => {
30
- if (typeof window === 'undefined')
31
- return;
32
- // Initial check
33
- updatePreferences();
34
- // Set up media query listeners
35
- const mediaQueries = [
36
- window.matchMedia('(prefers-reduced-motion: reduce)'),
37
- window.matchMedia('(prefers-contrast: high)'),
38
- window.matchMedia('(prefers-color-scheme: dark)'),
39
- window.matchMedia('(prefers-color-scheme: light)'),
40
- window.matchMedia('(prefers-reduced-transparency: reduce)')
41
- ];
42
- // Add listeners
43
- mediaQueries.forEach(mq => {
44
- mq.addEventListener('change', updatePreferences);
45
- });
46
- // Cleanup
47
- return () => {
48
- mediaQueries.forEach(mq => {
49
- mq.removeEventListener('change', updatePreferences);
50
- });
51
- };
52
- }, [updatePreferences]);
53
- return preferences;
54
- }
55
- // Hook for applying accessibility styles
56
- export function useAccessibilityStyles() {
57
- const preferences = useAccessibilityPreferences();
58
- // Generate CSS custom properties based on preferences
59
- const cssVariables = useCallback(() => {
60
- const vars = {};
61
- if (preferences.prefersHighContrast) {
62
- vars['--media-contrast'] = 'high';
63
- vars['--media-bg-opacity'] = '1';
64
- vars['--media-border-width'] = '2px';
65
- vars['--media-focus-outline-width'] = '3px';
66
- }
67
- else {
68
- vars['--media-contrast'] = 'normal';
69
- vars['--media-bg-opacity'] = '0.8';
70
- vars['--media-border-width'] = '1px';
71
- vars['--media-focus-outline-width'] = '2px';
72
- }
73
- if (preferences.prefersReducedMotion) {
74
- vars['--media-transition-duration'] = '0ms';
75
- vars['--media-animation-duration'] = '0ms';
76
- vars['--media-motion'] = 'none';
77
- }
78
- else {
79
- vars['--media-transition-duration'] = '200ms';
80
- vars['--media-animation-duration'] = '300ms';
81
- vars['--media-motion'] = 'auto';
82
- }
83
- if (preferences.prefersReducedTransparency) {
84
- vars['--media-backdrop-blur'] = '0px';
85
- vars['--media-bg-opacity'] = '1';
86
- }
87
- else {
88
- vars['--media-backdrop-blur'] = '10px';
89
- }
90
- return vars;
91
- }, [preferences]);
92
- // Apply styles to document
93
- const applyStyles = useCallback(() => {
94
- if (typeof document === 'undefined')
95
- return;
96
- const vars = cssVariables();
97
- Object.entries(vars).forEach(([property, value]) => {
98
- document.documentElement.style.setProperty(property, value);
99
- });
100
- }, [cssVariables]);
101
- useEffect(() => {
102
- applyStyles();
103
- }, [applyStyles]);
104
- return {
105
- preferences,
106
- cssVariables: cssVariables(),
107
- applyStyles
108
- };
109
- }
110
- // Hook for managing focus visibility
111
- export function useFocusVisible() {
112
- const [isFocusVisible, setIsFocusVisible] = useState(false);
113
- useEffect(() => {
114
- if (typeof window === 'undefined')
115
- return;
116
- let hadKeyboardEvent = true;
117
- let keyboardThrottleTimeoutID;
118
- const handleKeyDown = (e) => {
119
- if (e.metaKey || e.altKey || e.ctrlKey) {
120
- return;
121
- }
122
- hadKeyboardEvent = true;
123
- setIsFocusVisible(true);
124
- };
125
- const handlePointerDown = () => {
126
- hadKeyboardEvent = false;
127
- setIsFocusVisible(false);
128
- };
129
- const handleFocus = (e) => {
130
- if (hadKeyboardEvent || e.target?.matches(':focus-visible')) {
131
- setIsFocusVisible(true);
132
- }
133
- };
134
- const handleBlur = () => {
135
- setIsFocusVisible(false);
136
- };
137
- document.addEventListener('keydown', handleKeyDown, true);
138
- document.addEventListener('mousedown', handlePointerDown, true);
139
- document.addEventListener('pointerdown', handlePointerDown, true);
140
- document.addEventListener('touchstart', handlePointerDown, true);
141
- document.addEventListener('focus', handleFocus, true);
142
- document.addEventListener('blur', handleBlur, true);
143
- return () => {
144
- document.removeEventListener('keydown', handleKeyDown, true);
145
- document.removeEventListener('mousedown', handlePointerDown, true);
146
- document.removeEventListener('pointerdown', handlePointerDown, true);
147
- document.removeEventListener('touchstart', handlePointerDown, true);
148
- document.removeEventListener('focus', handleFocus, true);
149
- document.removeEventListener('blur', handleBlur, true);
150
- if (keyboardThrottleTimeoutID) {
151
- clearTimeout(keyboardThrottleTimeoutID);
152
- }
153
- };
154
- }, []);
155
- return isFocusVisible;
156
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-focus-management.d.ts","sourceRoot":"","sources":["use-focus-management.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,yBAAyB;IACxC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,CAAA;CACjE;AAED,wBAAgB,kBAAkB,CAAC,EACjC,YAAmB,EACnB,YAAY,EACb,GAAE,yBAA8B;;;qCAUoB,YAAY;2BAWrD,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,YAChD,YAAY;uCAqB+B,WAAW,KAcC,WAAW,EAAE;;+BAkCjC,MAAM,GAAG,UAAU;EAiClE;AAGD,wBAAgB,mBAAmB;;;;;;;qCArHkB,YAAY;2BAWrD,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,YAChD,YAAY;uCAqB+B,WAAW,KAcC,WAAW,EAAE;;+BAkCjC,MAAM,GAAG,UAAU;EAqElE"}