@therealtinhtute/baroiplayer 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (597) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.js +1 -7
  3. package/dist/index.mjs +1 -2
  4. package/dist/package.json +1 -1
  5. package/package.json +1 -1
  6. package/dist/context/media.js +0 -2
  7. package/dist/context/media.js.map +0 -1
  8. package/dist/context/media.mjs +0 -15
  9. package/dist/context/media.mjs.map +0 -1
  10. package/dist/context/store.js +0 -2
  11. package/dist/context/store.js.map +0 -1
  12. package/dist/context/store.mjs +0 -5
  13. package/dist/context/store.mjs.map +0 -1
  14. package/dist/context-Af84FynT.js +0 -1179
  15. package/dist/context-Af84FynT.js.map +0 -1
  16. package/dist/context-CwZnPdz0.cjs +0 -23
  17. package/dist/context-CwZnPdz0.cjs.map +0 -1
  18. package/dist/core-events-B5W_j8yU.js +0 -480
  19. package/dist/core-events-B5W_j8yU.js.map +0 -1
  20. package/dist/core-events-CN0-Vhhq.cjs +0 -2
  21. package/dist/core-events-CN0-Vhhq.cjs.map +0 -1
  22. package/dist/core-plugins-Bq9KLany.js +0 -696
  23. package/dist/core-plugins-Bq9KLany.js.map +0 -1
  24. package/dist/core-plugins-CPDSHMiQ.cjs +0 -2
  25. package/dist/core-plugins-CPDSHMiQ.cjs.map +0 -1
  26. package/dist/core.js +0 -37
  27. package/dist/core.js.map +0 -1
  28. package/dist/core.mjs +0 -1217
  29. package/dist/core.mjs.map +0 -1
  30. package/dist/enhanced-components-CXnYiOt6.cjs +0 -2
  31. package/dist/enhanced-components-CXnYiOt6.cjs.map +0 -1
  32. package/dist/enhanced-components-Da0TSvKe.js +0 -1073
  33. package/dist/enhanced-components-Da0TSvKe.js.map +0 -1
  34. package/dist/hooks-BCMilGRf.cjs +0 -4
  35. package/dist/hooks-BCMilGRf.cjs.map +0 -1
  36. package/dist/hooks-BPtHV1ZT.js +0 -2042
  37. package/dist/hooks-BPtHV1ZT.js.map +0 -1
  38. package/dist/index.js.map +0 -1
  39. package/dist/index.mjs.map +0 -1
  40. package/dist/minimal-components-BHJMuaL7.cjs +0 -2
  41. package/dist/minimal-components-BHJMuaL7.cjs.map +0 -1
  42. package/dist/minimal-components-BmqRefl1.js +0 -2002
  43. package/dist/minimal-components-BmqRefl1.js.map +0 -1
  44. package/dist/mona-loading.gif +0 -0
  45. package/dist/performance-monitor--rzKTlbj.js +0 -302
  46. package/dist/performance-monitor--rzKTlbj.js.map +0 -1
  47. package/dist/performance-monitor-cjIvZE2D.cjs +0 -2
  48. package/dist/performance-monitor-cjIvZE2D.cjs.map +0 -1
  49. package/dist/src/adapters/videojs-adapter.d.ts.map +0 -1
  50. package/dist/src/adapters/videojs-adapter.js +0 -350
  51. package/dist/src/assets/mona-loading.gif +0 -0
  52. package/dist/src/components/AnimateLoading.d.ts.map +0 -1
  53. package/dist/src/components/AnimateLoading.js +0 -41
  54. package/dist/src/components/LoadingState.d.ts.map +0 -1
  55. package/dist/src/components/LoadingState.js +0 -111
  56. package/dist/src/components/accessibility/keyboard-help-overlay.d.ts.map +0 -1
  57. package/dist/src/components/accessibility/keyboard-help-overlay.js +0 -90
  58. package/dist/src/components/audio-player.d.ts.map +0 -1
  59. package/dist/src/components/audio-player.js +0 -31
  60. package/dist/src/components/basic/index.d.ts.map +0 -1
  61. package/dist/src/components/basic/index.js +0 -29
  62. package/dist/src/components/enhanced/advanced-features.d.ts.map +0 -1
  63. package/dist/src/components/enhanced/advanced-features.js +0 -64
  64. package/dist/src/components/enhanced/debug-panel.d.ts.map +0 -1
  65. package/dist/src/components/enhanced/debug-panel.js +0 -94
  66. package/dist/src/components/enhanced/enhanced-controls.d.ts.map +0 -1
  67. package/dist/src/components/enhanced/enhanced-controls.js +0 -233
  68. package/dist/src/components/enhanced/enhanced-media-player.d.ts.map +0 -1
  69. package/dist/src/components/enhanced/enhanced-media-player.js +0 -316
  70. package/dist/src/components/enhanced/error-handling.d.ts.map +0 -1
  71. package/dist/src/components/enhanced/error-handling.js +0 -153
  72. package/dist/src/components/enhanced/index.d.ts.map +0 -1
  73. package/dist/src/components/enhanced/index.js +0 -10
  74. package/dist/src/components/enhanced/media-player-enhanced.d.ts.map +0 -1
  75. package/dist/src/components/enhanced/media-player-enhanced.js +0 -250
  76. package/dist/src/components/examples/basic-video-player.d.ts.map +0 -1
  77. package/dist/src/components/examples/basic-video-player.js +0 -16
  78. package/dist/src/components/examples/custom-controls-example.d.ts.map +0 -1
  79. package/dist/src/components/examples/custom-controls-example.js +0 -12
  80. package/dist/src/components/examples/enhanced-controls-example.d.ts.map +0 -1
  81. package/dist/src/components/examples/enhanced-controls-example.js +0 -18
  82. package/dist/src/components/examples/enhanced-media-player-example.d.ts.map +0 -1
  83. package/dist/src/components/examples/enhanced-media-player-example.js +0 -13
  84. package/dist/src/components/examples/loading-states-demo.d.ts.map +0 -1
  85. package/dist/src/components/examples/loading-states-demo.js +0 -41
  86. package/dist/src/components/examples/react-19-demo.d.ts.map +0 -1
  87. package/dist/src/components/examples/react-19-demo.js +0 -104
  88. package/dist/src/components/examples/volume-orientation-demo.d.ts.map +0 -1
  89. package/dist/src/components/examples/volume-orientation-demo.js +0 -31
  90. package/dist/src/components/icon-demo.d.ts.map +0 -1
  91. package/dist/src/components/icon-demo.js +0 -16
  92. package/dist/src/components/icons/index.d.ts.map +0 -1
  93. package/dist/src/components/icons/index.js +0 -59
  94. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.d.ts.map +0 -1
  95. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  96. package/dist/src/components/icons/svg-icons/ArrowRightIcon.d.ts.map +0 -1
  97. package/dist/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  98. package/dist/src/components/icons/svg-icons/AudioIcon.d.ts.map +0 -1
  99. package/dist/src/components/icons/svg-icons/AudioIcon.js +0 -4
  100. package/dist/src/components/icons/svg-icons/BackwardIcon.d.ts.map +0 -1
  101. package/dist/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  102. package/dist/src/components/icons/svg-icons/CameraIcon.d.ts.map +0 -1
  103. package/dist/src/components/icons/svg-icons/CameraIcon.js +0 -4
  104. package/dist/src/components/icons/svg-icons/CheckIcon.d.ts.map +0 -1
  105. package/dist/src/components/icons/svg-icons/CheckIcon.js +0 -4
  106. package/dist/src/components/icons/svg-icons/EnablePiPIcon.d.ts.map +0 -1
  107. package/dist/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  108. package/dist/src/components/icons/svg-icons/ForwardIcon.d.ts.map +0 -1
  109. package/dist/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  110. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts.map +0 -1
  111. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  112. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.d.ts.map +0 -1
  113. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  114. package/dist/src/components/icons/svg-icons/LoadingIcon.d.ts.map +0 -1
  115. package/dist/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  116. package/dist/src/components/icons/svg-icons/PauseIcon.d.ts.map +0 -1
  117. package/dist/src/components/icons/svg-icons/PauseIcon.js +0 -3
  118. package/dist/src/components/icons/svg-icons/PlayIcon.d.ts.map +0 -1
  119. package/dist/src/components/icons/svg-icons/PlayIcon.js +0 -3
  120. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts.map +0 -1
  121. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  122. package/dist/src/components/icons/svg-icons/QualityIcon.d.ts.map +0 -1
  123. package/dist/src/components/icons/svg-icons/QualityIcon.js +0 -3
  124. package/dist/src/components/icons/svg-icons/SettingsIcon.d.ts.map +0 -1
  125. package/dist/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  126. package/dist/src/components/icons/svg-icons/SliderIcon.d.ts.map +0 -1
  127. package/dist/src/components/icons/svg-icons/SliderIcon.js +0 -3
  128. package/dist/src/components/icons/svg-icons/SubtitleIcon.d.ts.map +0 -1
  129. package/dist/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  130. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.d.ts.map +0 -1
  131. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  132. package/dist/src/components/icons/svg-icons/UnPiPIcon.d.ts.map +0 -1
  133. package/dist/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  134. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.d.ts.map +0 -1
  135. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  136. package/dist/src/components/icons/svg-icons/VolumeOneIcon.d.ts.map +0 -1
  137. package/dist/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  138. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.d.ts.map +0 -1
  139. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  140. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.d.ts.map +0 -1
  141. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  142. package/dist/src/components/legacy.d.ts.map +0 -1
  143. package/dist/src/components/legacy.js +0 -52
  144. package/dist/src/components/media-metadata-display.d.ts.map +0 -1
  145. package/dist/src/components/media-metadata-display.js +0 -20
  146. package/dist/src/components/media-player-audio.d.ts.map +0 -1
  147. package/dist/src/components/media-player-audio.js +0 -18
  148. package/dist/src/components/media-player-controls.d.ts.map +0 -1
  149. package/dist/src/components/media-player-controls.js +0 -150
  150. package/dist/src/components/media-player-error.d.ts.map +0 -1
  151. package/dist/src/components/media-player-error.js +0 -85
  152. package/dist/src/components/media-player-fullscreen.d.ts.map +0 -1
  153. package/dist/src/components/media-player-fullscreen.js +0 -68
  154. package/dist/src/components/media-player-hls.d.ts.map +0 -1
  155. package/dist/src/components/media-player-hls.js +0 -20
  156. package/dist/src/components/media-player-loading.d.ts.map +0 -1
  157. package/dist/src/components/media-player-loading.js +0 -53
  158. package/dist/src/components/media-player-play.d.ts.map +0 -1
  159. package/dist/src/components/media-player-play.js +0 -44
  160. package/dist/src/components/media-player-root.d.ts.map +0 -1
  161. package/dist/src/components/media-player-root.js +0 -243
  162. package/dist/src/components/media-player-seek.d.ts.map +0 -1
  163. package/dist/src/components/media-player-seek.js +0 -92
  164. package/dist/src/components/media-player-time.d.ts.map +0 -1
  165. package/dist/src/components/media-player-time.js +0 -57
  166. package/dist/src/components/media-player-tooltip.d.ts.map +0 -1
  167. package/dist/src/components/media-player-tooltip.js +0 -14
  168. package/dist/src/components/media-player-video.d.ts.map +0 -1
  169. package/dist/src/components/media-player-video.js +0 -18
  170. package/dist/src/components/media-player-volume.d.ts.map +0 -1
  171. package/dist/src/components/media-player-volume.js +0 -88
  172. package/dist/src/components/media-player.d.ts.map +0 -1
  173. package/dist/src/components/media-player.js +0 -67
  174. package/dist/src/components/media-suspense.d.ts.map +0 -1
  175. package/dist/src/components/media-suspense.js +0 -173
  176. package/dist/src/components/player-settings-form.d.ts.map +0 -1
  177. package/dist/src/components/player-settings-form.js +0 -46
  178. package/dist/src/components/react-player-wrapper.d.ts.map +0 -1
  179. package/dist/src/components/react-player-wrapper.js +0 -163
  180. package/dist/src/components/simple-video-player.d.ts.map +0 -1
  181. package/dist/src/components/simple-video-player.js +0 -41
  182. package/dist/src/components/ui/enhanced-seek-bar.d.ts.map +0 -1
  183. package/dist/src/components/ui/enhanced-seek-bar.js +0 -112
  184. package/dist/src/components/ui/fullscreen-button.d.ts.map +0 -1
  185. package/dist/src/components/ui/fullscreen-button.js +0 -21
  186. package/dist/src/components/ui/media-resource-preloader.d.ts.map +0 -1
  187. package/dist/src/components/ui/media-resource-preloader.js +0 -295
  188. package/dist/src/components/ui/play-button.d.ts.map +0 -1
  189. package/dist/src/components/ui/play-button.js +0 -26
  190. package/dist/src/components/ui/seek-bar.d.ts.map +0 -1
  191. package/dist/src/components/ui/seek-bar.js +0 -54
  192. package/dist/src/components/ui/time-display.d.ts.map +0 -1
  193. package/dist/src/components/ui/time-display.js +0 -18
  194. package/dist/src/components/ui/volume-control.d.ts.map +0 -1
  195. package/dist/src/components/ui/volume-control.js +0 -71
  196. package/dist/src/components/unified/base-media-player.d.ts.map +0 -1
  197. package/dist/src/components/unified/base-media-player.js +0 -104
  198. package/dist/src/components/unified/media-player.d.ts.map +0 -1
  199. package/dist/src/components/unified/media-player.js +0 -41
  200. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts.map +0 -1
  201. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  202. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts.map +0 -1
  203. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  204. package/dist/src/components/variants/minimal/MinimalControls.d.ts.map +0 -1
  205. package/dist/src/components/variants/minimal/MinimalControls.js +0 -19
  206. package/dist/src/components/variants/minimal/MinimalLoading.d.ts.map +0 -1
  207. package/dist/src/components/variants/minimal/MinimalLoading.js +0 -6
  208. package/dist/src/components/variants/minimal/MinimalMediaPlayer.d.ts.map +0 -1
  209. package/dist/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  210. package/dist/src/components/variants/minimal/MinimalOverlay.d.ts.map +0 -1
  211. package/dist/src/components/variants/minimal/MinimalOverlay.js +0 -15
  212. package/dist/src/components/variants/minimal/MinimalPlayButton.d.ts.map +0 -1
  213. package/dist/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  214. package/dist/src/components/variants/minimal/MinimalSeekBar.d.ts.map +0 -1
  215. package/dist/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  216. package/dist/src/components/variants/minimal/MinimalVolumeControl.d.ts.map +0 -1
  217. package/dist/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  218. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.d.ts.map +0 -1
  219. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  220. package/dist/src/components/variants/minimal/components/CenterPlayButton.d.ts.map +0 -1
  221. package/dist/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  222. package/dist/src/components/variants/minimal/components/ControlBar.d.ts.map +0 -1
  223. package/dist/src/components/variants/minimal/components/ControlBar.js +0 -10
  224. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts.map +0 -1
  225. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  226. package/dist/src/components/variants/minimal/components/PlaybackControls.d.ts.map +0 -1
  227. package/dist/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  228. package/dist/src/components/variants/minimal/components/RightControls.d.ts.map +0 -1
  229. package/dist/src/components/variants/minimal/components/RightControls.js +0 -40
  230. package/dist/src/components/variants/minimal/components/SeekBar.d.ts.map +0 -1
  231. package/dist/src/components/variants/minimal/components/SeekBar.js +0 -43
  232. package/dist/src/components/variants/minimal/components/SettingsDropdown.d.ts.map +0 -1
  233. package/dist/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  234. package/dist/src/components/variants/minimal/components/SubtitleDisplay.d.ts.map +0 -1
  235. package/dist/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  236. package/dist/src/components/variants/minimal/components/TimeDisplay.d.ts.map +0 -1
  237. package/dist/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  238. package/dist/src/components/variants/minimal/components/VideoElement.d.ts.map +0 -1
  239. package/dist/src/components/variants/minimal/components/VideoElement.js +0 -4
  240. package/dist/src/components/variants/minimal/components/VolumeControl.d.ts.map +0 -1
  241. package/dist/src/components/variants/minimal/components/VolumeControl.js +0 -99
  242. package/dist/src/components/variants/minimal/index.d.ts.map +0 -1
  243. package/dist/src/components/variants/minimal/index.js +0 -8
  244. package/dist/src/components/video-player.d.ts.map +0 -1
  245. package/dist/src/components/video-player.js +0 -38
  246. package/dist/src/context/error-handling.d.ts.map +0 -1
  247. package/dist/src/context/error-handling.js +0 -300
  248. package/dist/src/context/media-context.d.ts.map +0 -1
  249. package/dist/src/context/media-context.js +0 -121
  250. package/dist/src/context/media-provider.d.ts.map +0 -1
  251. package/dist/src/context/media-provider.js +0 -164
  252. package/dist/src/context/media-store.d.ts.map +0 -1
  253. package/dist/src/context/media-store.js +0 -273
  254. package/dist/src/context/persistence.d.ts.map +0 -1
  255. package/dist/src/context/persistence.js +0 -356
  256. package/dist/src/core/events/event-system.d.ts.map +0 -1
  257. package/dist/src/core/events/event-system.js +0 -288
  258. package/dist/src/core/events/hooks.d.ts.map +0 -1
  259. package/dist/src/core/events/hooks.js +0 -198
  260. package/dist/src/core/events/index.d.ts.map +0 -1
  261. package/dist/src/core/events/index.js +0 -7
  262. package/dist/src/core/events/middleware.d.ts.map +0 -1
  263. package/dist/src/core/events/middleware.js +0 -219
  264. package/dist/src/core/index.d.ts.map +0 -1
  265. package/dist/src/core/index.js +0 -15
  266. package/dist/src/core/optimization/bundle-optimizer.d.ts.map +0 -1
  267. package/dist/src/core/optimization/bundle-optimizer.js +0 -217
  268. package/dist/src/core/performance/cicd.d.ts.map +0 -1
  269. package/dist/src/core/performance/cicd.js +0 -83
  270. package/dist/src/core/performance/index.d.ts.map +0 -1
  271. package/dist/src/core/performance/index.js +0 -14
  272. package/dist/src/core/performance/media-loading-optimizer.d.ts.map +0 -1
  273. package/dist/src/core/performance/media-loading-optimizer.js +0 -404
  274. package/dist/src/core/performance/performance-budgets.d.ts.map +0 -1
  275. package/dist/src/core/performance/performance-budgets.js +0 -326
  276. package/dist/src/core/performance/performance-monitor.d.ts.map +0 -1
  277. package/dist/src/core/performance/performance-monitor.js +0 -297
  278. package/dist/src/core/performance/performance-testing.d.ts.map +0 -1
  279. package/dist/src/core/performance/performance-testing.js +0 -314
  280. package/dist/src/core/plugins/base-plugin.d.ts.map +0 -1
  281. package/dist/src/core/plugins/base-plugin.js +0 -151
  282. package/dist/src/core/plugins/enhanced-plugin-system.d.ts.map +0 -1
  283. package/dist/src/core/plugins/enhanced-plugin-system.js +0 -305
  284. package/dist/src/core/plugins/examples/analytics-plugin.d.ts.map +0 -1
  285. package/dist/src/core/plugins/examples/analytics-plugin.js +0 -191
  286. package/dist/src/core/plugins/index.d.ts.map +0 -1
  287. package/dist/src/core/plugins/index.js +0 -9
  288. package/dist/src/core/plugins/registry.d.ts.map +0 -1
  289. package/dist/src/core/plugins/registry.js +0 -261
  290. package/dist/src/core/plugins/types.d.ts.map +0 -1
  291. package/dist/src/core/plugins/types.js +0 -31
  292. package/dist/src/core/plugins/utils.d.ts.map +0 -1
  293. package/dist/src/core/plugins/utils.js +0 -274
  294. package/dist/src/core/progressive-loading.d.ts.map +0 -1
  295. package/dist/src/core/progressive-loading.js +0 -239
  296. package/dist/src/core/providers/enhanced-hls-provider.d.ts.map +0 -1
  297. package/dist/src/core/providers/enhanced-hls-provider.js +0 -273
  298. package/dist/src/core/providers/service-provider.d.ts.map +0 -1
  299. package/dist/src/core/providers/service-provider.js +0 -105
  300. package/dist/src/core/utils.d.ts.map +0 -1
  301. package/dist/src/core/utils.js +0 -21
  302. package/dist/src/features/media-session/media-session-manager.d.ts.map +0 -1
  303. package/dist/src/features/media-session/media-session-manager.js +0 -331
  304. package/dist/src/features/picture-in-picture/pip-manager.d.ts.map +0 -1
  305. package/dist/src/features/picture-in-picture/pip-manager.js +0 -353
  306. package/dist/src/features/playlist/playlist-manager.d.ts.map +0 -1
  307. package/dist/src/features/playlist/playlist-manager.js +0 -475
  308. package/dist/src/features/subtitles/subtitle-manager.d.ts.map +0 -1
  309. package/dist/src/features/subtitles/subtitle-manager.js +0 -335
  310. package/dist/src/features/subtitles/subtitle-parser.d.ts.map +0 -1
  311. package/dist/src/features/subtitles/subtitle-parser.js +0 -217
  312. package/dist/src/features/thumbnails/thumbnail-generator.d.ts.map +0 -1
  313. package/dist/src/features/thumbnails/thumbnail-generator.js +0 -388
  314. package/dist/src/hooks/accessibility/index.d.ts.map +0 -1
  315. package/dist/src/hooks/accessibility/index.js +0 -4
  316. package/dist/src/hooks/accessibility/use-accessibility-preferences.d.ts.map +0 -1
  317. package/dist/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  318. package/dist/src/hooks/accessibility/use-focus-management.d.ts.map +0 -1
  319. package/dist/src/hooks/accessibility/use-focus-management.js +0 -142
  320. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.d.ts.map +0 -1
  321. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  322. package/dist/src/hooks/accessibility/use-screen-reader.d.ts.map +0 -1
  323. package/dist/src/hooks/accessibility/use-screen-reader.js +0 -148
  324. package/dist/src/hooks/core/index.d.ts.map +0 -1
  325. package/dist/src/hooks/core/index.js +0 -19
  326. package/dist/src/hooks/legacy.d.ts.map +0 -1
  327. package/dist/src/hooks/legacy.js +0 -17
  328. package/dist/src/hooks/use-enhanced-media-player.d.ts.map +0 -1
  329. package/dist/src/hooks/use-enhanced-media-player.js +0 -395
  330. package/dist/src/hooks/use-intelligent-preloading.d.ts.map +0 -1
  331. package/dist/src/hooks/use-intelligent-preloading.js +0 -258
  332. package/dist/src/hooks/use-keyboard-controls.d.ts.map +0 -1
  333. package/dist/src/hooks/use-keyboard-controls.js +0 -83
  334. package/dist/src/hooks/use-media-actions.d.ts.map +0 -1
  335. package/dist/src/hooks/use-media-actions.js +0 -121
  336. package/dist/src/hooks/use-media-metadata.d.ts.map +0 -1
  337. package/dist/src/hooks/use-media-metadata.js +0 -74
  338. package/dist/src/hooks/use-media-optimistic.d.ts.map +0 -1
  339. package/dist/src/hooks/use-media-optimistic.js +0 -205
  340. package/dist/src/hooks/use-media-player.d.ts.map +0 -1
  341. package/dist/src/hooks/use-media-player.js +0 -251
  342. package/dist/src/hooks/use-media-state.d.ts.map +0 -1
  343. package/dist/src/hooks/use-media-state.js +0 -162
  344. package/dist/src/hooks/use-memory-optimization.d.ts.map +0 -1
  345. package/dist/src/hooks/use-memory-optimization.js +0 -288
  346. package/dist/src/hooks/use-optimistic-controls.d.ts.map +0 -1
  347. package/dist/src/hooks/use-optimistic-controls.js +0 -60
  348. package/dist/src/hooks/use-optimized-media.d.ts.map +0 -1
  349. package/dist/src/hooks/use-optimized-media.js +0 -211
  350. package/dist/src/hooks/use-touch-gestures.d.ts.map +0 -1
  351. package/dist/src/hooks/use-touch-gestures.js +0 -289
  352. package/dist/src/hooks/useEnhancedSubtitles.d.ts.map +0 -1
  353. package/dist/src/hooks/useEnhancedSubtitles.js +0 -205
  354. package/dist/src/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  355. package/dist/src/hooks/useKeyboardShortcuts.js +0 -59
  356. package/dist/src/hooks/useMediaControls.d.ts.map +0 -1
  357. package/dist/src/hooks/useMediaControls.js +0 -44
  358. package/dist/src/hooks/useScreenshot.d.ts.map +0 -1
  359. package/dist/src/hooks/useScreenshot.js +0 -56
  360. package/dist/src/hooks/useSubtitles.d.ts.map +0 -1
  361. package/dist/src/hooks/useSubtitles.js +0 -73
  362. package/dist/src/hooks/useVideoPlayer.d.ts.map +0 -1
  363. package/dist/src/hooks/useVideoPlayer.js +0 -184
  364. package/dist/src/icons/components/FullscreenIcon.d.ts.map +0 -1
  365. package/dist/src/icons/components/FullscreenIcon.js +0 -11
  366. package/dist/src/icons/components/SettingsIcon.d.ts.map +0 -1
  367. package/dist/src/icons/components/SettingsIcon.js +0 -11
  368. package/dist/src/icons/components/animated/LoadingIcon.d.ts.map +0 -1
  369. package/dist/src/icons/components/animated/LoadingIcon.js +0 -11
  370. package/dist/src/icons/components/animated/PlayPauseIcon.d.ts.map +0 -1
  371. package/dist/src/icons/components/animated/PlayPauseIcon.js +0 -9
  372. package/dist/src/icons/components/media/PauseIcon.d.ts.map +0 -1
  373. package/dist/src/icons/components/media/PauseIcon.js +0 -12
  374. package/dist/src/icons/components/media/PlayIcon.d.ts.map +0 -1
  375. package/dist/src/icons/components/media/PlayIcon.js +0 -12
  376. package/dist/src/icons/components/volume/VolumeIcon.d.ts.map +0 -1
  377. package/dist/src/icons/components/volume/VolumeIcon.js +0 -11
  378. package/dist/src/icons/components/volume/VolumeOffIcon.d.ts.map +0 -1
  379. package/dist/src/icons/components/volume/VolumeOffIcon.js +0 -11
  380. package/dist/src/icons/index.d.ts.map +0 -1
  381. package/dist/src/icons/index.js +0 -45
  382. package/dist/src/icons/provider.d.ts.map +0 -1
  383. package/dist/src/icons/provider.js +0 -37
  384. package/dist/src/icons/types.d.ts.map +0 -1
  385. package/dist/src/icons/types.js +0 -1
  386. package/dist/src/index-enhanced.d.ts.map +0 -1
  387. package/dist/src/index-enhanced.js +0 -16
  388. package/dist/src/index-legacy.d.ts.map +0 -1
  389. package/dist/src/index-legacy.js +0 -97
  390. package/dist/src/index.d.ts.map +0 -1
  391. package/dist/src/index.js +0 -90
  392. package/dist/src/index.minimal.d.ts.map +0 -1
  393. package/dist/src/index.minimal.js +0 -3
  394. package/dist/src/lib/deprecation.d.ts.map +0 -1
  395. package/dist/src/lib/deprecation.js +0 -31
  396. package/dist/src/lib/format-time.d.ts.map +0 -1
  397. package/dist/src/lib/format-time.js +0 -32
  398. package/dist/src/lib/index.d.ts.map +0 -1
  399. package/dist/src/lib/index.js +0 -3
  400. package/dist/src/lib/utils.d.ts.map +0 -1
  401. package/dist/src/lib/utils.js +0 -5
  402. package/dist/src/test/setup.d.ts.map +0 -1
  403. package/dist/src/test/setup.js +0 -65
  404. package/dist/src/types/events.d.ts.map +0 -1
  405. package/dist/src/types/events.js +0 -2
  406. package/dist/src/types/formats.d.ts.map +0 -1
  407. package/dist/src/types/formats.js +0 -63
  408. package/dist/src/types/index.d.ts.map +0 -1
  409. package/dist/src/types/index.js +0 -4
  410. package/dist/utils-Db13763z.cjs +0 -9
  411. package/dist/utils-Db13763z.cjs.map +0 -1
  412. package/dist/utils-nTO4AnHo.js +0 -2809
  413. package/dist/utils-nTO4AnHo.js.map +0 -1
  414. package/dist/utils.js +0 -2
  415. package/dist/utils.js.map +0 -1
  416. package/dist/utils.mjs +0 -7
  417. package/dist/utils.mjs.map +0 -1
  418. package/src/adapters/videojs-adapter.js +0 -350
  419. package/src/components/AnimateLoading.js +0 -41
  420. package/src/components/LoadingState.js +0 -111
  421. package/src/components/accessibility/keyboard-help-overlay.js +0 -90
  422. package/src/components/audio-player.js +0 -31
  423. package/src/components/basic/index.js +0 -29
  424. package/src/components/enhanced/advanced-features.js +0 -64
  425. package/src/components/enhanced/debug-panel.js +0 -94
  426. package/src/components/enhanced/enhanced-controls.js +0 -233
  427. package/src/components/enhanced/enhanced-media-player.js +0 -316
  428. package/src/components/enhanced/error-handling.js +0 -153
  429. package/src/components/enhanced/index.js +0 -10
  430. package/src/components/enhanced/media-player-enhanced.js +0 -250
  431. package/src/components/examples/basic-video-player.js +0 -16
  432. package/src/components/examples/custom-controls-example.js +0 -12
  433. package/src/components/examples/enhanced-controls-example.js +0 -18
  434. package/src/components/examples/enhanced-media-player-example.js +0 -13
  435. package/src/components/examples/loading-states-demo.js +0 -41
  436. package/src/components/examples/react-19-demo.js +0 -104
  437. package/src/components/examples/volume-orientation-demo.js +0 -31
  438. package/src/components/icon-demo.js +0 -16
  439. package/src/components/icons/index.js +0 -59
  440. package/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  441. package/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  442. package/src/components/icons/svg-icons/AudioIcon.js +0 -4
  443. package/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  444. package/src/components/icons/svg-icons/CameraIcon.js +0 -4
  445. package/src/components/icons/svg-icons/CheckIcon.js +0 -4
  446. package/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  447. package/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  448. package/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  449. package/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  450. package/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  451. package/src/components/icons/svg-icons/PauseIcon.js +0 -3
  452. package/src/components/icons/svg-icons/PlayIcon.js +0 -3
  453. package/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  454. package/src/components/icons/svg-icons/QualityIcon.js +0 -3
  455. package/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  456. package/src/components/icons/svg-icons/SliderIcon.js +0 -3
  457. package/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  458. package/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  459. package/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  460. package/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  461. package/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  462. package/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  463. package/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  464. package/src/components/legacy.js +0 -52
  465. package/src/components/media-metadata-display.js +0 -20
  466. package/src/components/media-player-audio.js +0 -18
  467. package/src/components/media-player-controls.js +0 -150
  468. package/src/components/media-player-error.js +0 -85
  469. package/src/components/media-player-fullscreen.js +0 -68
  470. package/src/components/media-player-hls.js +0 -20
  471. package/src/components/media-player-loading.js +0 -53
  472. package/src/components/media-player-play.js +0 -44
  473. package/src/components/media-player-root.js +0 -243
  474. package/src/components/media-player-seek.js +0 -92
  475. package/src/components/media-player-time.js +0 -57
  476. package/src/components/media-player-tooltip.js +0 -14
  477. package/src/components/media-player-video.js +0 -18
  478. package/src/components/media-player-volume.js +0 -88
  479. package/src/components/media-player.js +0 -67
  480. package/src/components/media-suspense.js +0 -173
  481. package/src/components/player-settings-form.js +0 -46
  482. package/src/components/react-player-wrapper.js +0 -163
  483. package/src/components/simple-video-player.js +0 -41
  484. package/src/components/ui/enhanced-seek-bar.js +0 -112
  485. package/src/components/ui/fullscreen-button.js +0 -21
  486. package/src/components/ui/media-resource-preloader.js +0 -295
  487. package/src/components/ui/play-button.js +0 -26
  488. package/src/components/ui/seek-bar.js +0 -54
  489. package/src/components/ui/time-display.js +0 -18
  490. package/src/components/ui/volume-control.js +0 -71
  491. package/src/components/unified/base-media-player.js +0 -104
  492. package/src/components/unified/media-player.js +0 -41
  493. package/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  494. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  495. package/src/components/variants/minimal/MinimalControls.js +0 -19
  496. package/src/components/variants/minimal/MinimalLoading.js +0 -6
  497. package/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  498. package/src/components/variants/minimal/MinimalOverlay.js +0 -15
  499. package/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  500. package/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  501. package/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  502. package/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  503. package/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  504. package/src/components/variants/minimal/components/ControlBar.js +0 -10
  505. package/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  506. package/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  507. package/src/components/variants/minimal/components/RightControls.js +0 -40
  508. package/src/components/variants/minimal/components/SeekBar.js +0 -43
  509. package/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  510. package/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  511. package/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  512. package/src/components/variants/minimal/components/VideoElement.js +0 -4
  513. package/src/components/variants/minimal/components/VolumeControl.js +0 -99
  514. package/src/components/variants/minimal/index.js +0 -8
  515. package/src/components/video-player.js +0 -38
  516. package/src/context/error-handling.js +0 -300
  517. package/src/context/media-context.js +0 -121
  518. package/src/context/media-provider.js +0 -164
  519. package/src/context/media-store.js +0 -273
  520. package/src/context/persistence.js +0 -356
  521. package/src/core/events/event-system.js +0 -288
  522. package/src/core/events/hooks.js +0 -198
  523. package/src/core/events/index.js +0 -7
  524. package/src/core/events/middleware.js +0 -219
  525. package/src/core/index.js +0 -15
  526. package/src/core/optimization/bundle-optimizer.js +0 -217
  527. package/src/core/performance/cicd.js +0 -83
  528. package/src/core/performance/index.js +0 -14
  529. package/src/core/performance/media-loading-optimizer.js +0 -404
  530. package/src/core/performance/performance-budgets.js +0 -326
  531. package/src/core/performance/performance-monitor.js +0 -297
  532. package/src/core/performance/performance-testing.js +0 -314
  533. package/src/core/plugins/base-plugin.js +0 -151
  534. package/src/core/plugins/enhanced-plugin-system.js +0 -305
  535. package/src/core/plugins/examples/analytics-plugin.js +0 -191
  536. package/src/core/plugins/index.js +0 -9
  537. package/src/core/plugins/registry.js +0 -261
  538. package/src/core/plugins/types.js +0 -31
  539. package/src/core/plugins/utils.js +0 -274
  540. package/src/core/progressive-loading.js +0 -239
  541. package/src/core/providers/enhanced-hls-provider.js +0 -273
  542. package/src/core/providers/service-provider.js +0 -105
  543. package/src/core/utils.js +0 -21
  544. package/src/features/media-session/media-session-manager.js +0 -331
  545. package/src/features/picture-in-picture/pip-manager.js +0 -353
  546. package/src/features/playlist/playlist-manager.js +0 -475
  547. package/src/features/subtitles/subtitle-manager.js +0 -335
  548. package/src/features/subtitles/subtitle-parser.js +0 -217
  549. package/src/features/thumbnails/thumbnail-generator.js +0 -388
  550. package/src/hooks/accessibility/index.js +0 -4
  551. package/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  552. package/src/hooks/accessibility/use-focus-management.js +0 -142
  553. package/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  554. package/src/hooks/accessibility/use-screen-reader.js +0 -148
  555. package/src/hooks/core/index.js +0 -19
  556. package/src/hooks/legacy.js +0 -17
  557. package/src/hooks/use-enhanced-media-player.js +0 -395
  558. package/src/hooks/use-intelligent-preloading.js +0 -258
  559. package/src/hooks/use-keyboard-controls.js +0 -83
  560. package/src/hooks/use-media-actions.js +0 -121
  561. package/src/hooks/use-media-metadata.js +0 -74
  562. package/src/hooks/use-media-optimistic.js +0 -205
  563. package/src/hooks/use-media-player.js +0 -251
  564. package/src/hooks/use-media-state.js +0 -162
  565. package/src/hooks/use-memory-optimization.js +0 -288
  566. package/src/hooks/use-optimistic-controls.js +0 -60
  567. package/src/hooks/use-optimized-media.js +0 -211
  568. package/src/hooks/use-touch-gestures.js +0 -289
  569. package/src/hooks/useEnhancedSubtitles.js +0 -205
  570. package/src/hooks/useKeyboardShortcuts.js +0 -59
  571. package/src/hooks/useMediaControls.js +0 -44
  572. package/src/hooks/useScreenshot.js +0 -56
  573. package/src/hooks/useSubtitles.js +0 -73
  574. package/src/hooks/useVideoPlayer.js +0 -184
  575. package/src/icons/components/FullscreenIcon.js +0 -11
  576. package/src/icons/components/SettingsIcon.js +0 -11
  577. package/src/icons/components/animated/LoadingIcon.js +0 -11
  578. package/src/icons/components/animated/PlayPauseIcon.js +0 -9
  579. package/src/icons/components/media/PauseIcon.js +0 -12
  580. package/src/icons/components/media/PlayIcon.js +0 -12
  581. package/src/icons/components/volume/VolumeIcon.js +0 -11
  582. package/src/icons/components/volume/VolumeOffIcon.js +0 -11
  583. package/src/icons/index.js +0 -45
  584. package/src/icons/provider.js +0 -37
  585. package/src/icons/types.js +0 -1
  586. package/src/index-enhanced.js +0 -16
  587. package/src/index-legacy.js +0 -97
  588. package/src/index.js +0 -90
  589. package/src/index.minimal.js +0 -3
  590. package/src/lib/deprecation.js +0 -31
  591. package/src/lib/format-time.js +0 -32
  592. package/src/lib/index.js +0 -3
  593. package/src/lib/utils.js +0 -5
  594. package/src/test/setup.js +0 -65
  595. package/src/types/events.js +0 -2
  596. package/src/types/formats.js +0 -63
  597. package/src/types/index.js +0 -4
@@ -1,356 +0,0 @@
1
- "use client";
2
- // Storage keys
3
- export const STORAGE_KEYS = {
4
- USER_PREFERENCES: "baroi-player-preferences",
5
- SESSION_STATE: "baroi-player-session",
6
- PLAYBACK_HISTORY: "baroi-player-history",
7
- CACHE_TIMESTAMP: "baroi-player-cache-ts"
8
- };
9
- // Default localStorage adapter
10
- class LocalStorageAdapter {
11
- async getItem(key) {
12
- if (typeof window === 'undefined')
13
- return null;
14
- try {
15
- return localStorage.getItem(key);
16
- }
17
- catch (error) {
18
- console.warn('Failed to read from localStorage:', error);
19
- return null;
20
- }
21
- }
22
- async setItem(key, value) {
23
- if (typeof window === 'undefined')
24
- return;
25
- try {
26
- localStorage.setItem(key, value);
27
- }
28
- catch (error) {
29
- console.warn('Failed to write to localStorage:', error);
30
- }
31
- }
32
- async removeItem(key) {
33
- if (typeof window === 'undefined')
34
- return;
35
- try {
36
- localStorage.removeItem(key);
37
- }
38
- catch (error) {
39
- console.warn('Failed to remove from localStorage:', error);
40
- }
41
- }
42
- async clear() {
43
- if (typeof window === 'undefined')
44
- return;
45
- try {
46
- // Only clear baroi-player keys
47
- Object.values(STORAGE_KEYS).forEach(key => {
48
- localStorage.removeItem(key);
49
- });
50
- }
51
- catch (error) {
52
- console.warn('Failed to clear localStorage:', error);
53
- }
54
- }
55
- }
56
- // Default persistence configuration
57
- const DEFAULT_CONFIG = {
58
- userPreferences: true,
59
- sessionState: true,
60
- playbackHistory: true,
61
- maxHistoryItems: 50,
62
- maxCacheAge: 7 * 24 * 60 * 60 * 1000, // 7 days
63
- debounceMs: 1000,
64
- storage: new LocalStorageAdapter()
65
- };
66
- // Persistence manager class
67
- export class MediaPersistenceManager {
68
- config;
69
- storage;
70
- debounceTimeouts = new Map();
71
- constructor(config = {}) {
72
- this.config = { ...DEFAULT_CONFIG, ...config };
73
- this.storage = this.config.storage;
74
- }
75
- // User preferences methods
76
- async getUserPreferences() {
77
- if (!this.config.userPreferences)
78
- return null;
79
- try {
80
- const data = await this.storage.getItem(STORAGE_KEYS.USER_PREFERENCES);
81
- if (!data)
82
- return null;
83
- const parsed = JSON.parse(data);
84
- // Validate cache age
85
- if (this.isCacheExpired(parsed.timestamp)) {
86
- await this.clearUserPreferences();
87
- return null;
88
- }
89
- return parsed.preferences;
90
- }
91
- catch (error) {
92
- console.warn('Failed to get user preferences:', error);
93
- return null;
94
- }
95
- }
96
- async saveUserPreferences(preferences) {
97
- if (!this.config.userPreferences)
98
- return;
99
- this.debounce(STORAGE_KEYS.USER_PREFERENCES, async () => {
100
- try {
101
- const existing = await this.getUserPreferences() || {};
102
- const updated = { ...existing, ...preferences };
103
- await this.storage.setItem(STORAGE_KEYS.USER_PREFERENCES, JSON.stringify({
104
- preferences: updated,
105
- timestamp: Date.now()
106
- }));
107
- }
108
- catch (error) {
109
- console.warn('Failed to save user preferences:', error);
110
- }
111
- });
112
- }
113
- async clearUserPreferences() {
114
- try {
115
- await this.storage.removeItem(STORAGE_KEYS.USER_PREFERENCES);
116
- }
117
- catch (error) {
118
- console.warn('Failed to clear user preferences:', error);
119
- }
120
- }
121
- // Session state methods
122
- async getSessionState() {
123
- if (!this.config.sessionState)
124
- return null;
125
- try {
126
- const data = await this.storage.getItem(STORAGE_KEYS.SESSION_STATE);
127
- if (!data)
128
- return null;
129
- const parsed = JSON.parse(data);
130
- return parsed.state;
131
- }
132
- catch (error) {
133
- console.warn('Failed to get session state:', error);
134
- return null;
135
- }
136
- }
137
- async saveSessionState(state) {
138
- if (!this.config.sessionState)
139
- return;
140
- this.debounce(STORAGE_KEYS.SESSION_STATE, async () => {
141
- try {
142
- const existing = await this.getSessionState() || {
143
- currentTime: 0,
144
- playbackPosition: {}
145
- };
146
- const updated = { ...existing, ...state };
147
- await this.storage.setItem(STORAGE_KEYS.SESSION_STATE, JSON.stringify({
148
- state: updated,
149
- timestamp: Date.now()
150
- }));
151
- }
152
- catch (error) {
153
- console.warn('Failed to save session state:', error);
154
- }
155
- });
156
- }
157
- async clearSessionState() {
158
- try {
159
- await this.storage.removeItem(STORAGE_KEYS.SESSION_STATE);
160
- }
161
- catch (error) {
162
- console.warn('Failed to clear session state:', error);
163
- }
164
- }
165
- // Playback history methods
166
- async getPlaybackHistory() {
167
- if (!this.config.playbackHistory)
168
- return [];
169
- try {
170
- const data = await this.storage.getItem(STORAGE_KEYS.PLAYBACK_HISTORY);
171
- if (!data)
172
- return [];
173
- const parsed = JSON.parse(data);
174
- // Validate cache age
175
- if (this.isCacheExpired(parsed.timestamp)) {
176
- await this.clearPlaybackHistory();
177
- return [];
178
- }
179
- return parsed.history || [];
180
- }
181
- catch (error) {
182
- console.warn('Failed to get playback history:', error);
183
- return [];
184
- }
185
- }
186
- async addToPlaybackHistory(item) {
187
- if (!this.config.playbackHistory)
188
- return;
189
- try {
190
- const history = await this.getPlaybackHistory();
191
- const newItem = {
192
- ...item,
193
- timestamp: Date.now()
194
- };
195
- // Remove existing entry for the same media
196
- const filteredHistory = history.filter(h => h.mediaId !== item.mediaId);
197
- // Add new item at the beginning
198
- const updatedHistory = [newItem, ...filteredHistory]
199
- .slice(0, this.config.maxHistoryItems);
200
- await this.storage.setItem(STORAGE_KEYS.PLAYBACK_HISTORY, JSON.stringify({
201
- history: updatedHistory,
202
- timestamp: Date.now()
203
- }));
204
- }
205
- catch (error) {
206
- console.warn('Failed to add to playback history:', error);
207
- }
208
- }
209
- async clearPlaybackHistory() {
210
- try {
211
- await this.storage.removeItem(STORAGE_KEYS.PLAYBACK_HISTORY);
212
- }
213
- catch (error) {
214
- console.warn('Failed to clear playback history:', error);
215
- }
216
- }
217
- // Utility methods
218
- async savePlaybackPosition(mediaId, position) {
219
- const session = await this.getSessionState();
220
- const playbackPosition = session?.playbackPosition || {};
221
- await this.saveSessionState({
222
- playbackPosition: {
223
- ...playbackPosition,
224
- [mediaId]: position
225
- }
226
- });
227
- }
228
- async getPlaybackPosition(mediaId) {
229
- const session = await this.getSessionState();
230
- return session?.playbackPosition?.[mediaId] || 0;
231
- }
232
- // Extract preferences from MediaState
233
- extractUserPreferences(state) {
234
- return {
235
- volume: state.volume,
236
- isMuted: state.isMuted,
237
- playbackRate: state.playbackRate,
238
- subtitlesShowing: state.subtitlesShowing,
239
- selectedSubtitleTrack: state.selectedSubtitleTrack?.id || null,
240
- preferredRendition: state.selectedRendition,
241
- autoplay: false, // This would come from config
242
- keyboardShortcuts: true // This would come from config
243
- };
244
- }
245
- // Extract session state from MediaState
246
- extractSessionState(state, mediaId) {
247
- return {
248
- currentTime: state.currentTime,
249
- mediaId,
250
- playbackPosition: {}
251
- };
252
- }
253
- // Clear all persisted data
254
- async clearAll() {
255
- await this.storage.clear();
256
- this.debounceTimeouts.clear();
257
- }
258
- // Private helper methods
259
- isCacheExpired(timestamp) {
260
- if (!timestamp)
261
- return true;
262
- return Date.now() - timestamp > this.config.maxCacheAge;
263
- }
264
- debounce(key, fn) {
265
- const existingTimeout = this.debounceTimeouts.get(key);
266
- if (existingTimeout) {
267
- clearTimeout(existingTimeout);
268
- }
269
- const timeout = setTimeout(async () => {
270
- await fn();
271
- this.debounceTimeouts.delete(key);
272
- }, this.config.debounceMs);
273
- this.debounceTimeouts.set(key, timeout);
274
- }
275
- }
276
- // Hook for using persistence in components
277
- export function useMediaPersistence(config) {
278
- const [manager] = React.useState(() => new MediaPersistenceManager(config));
279
- React.useEffect(() => {
280
- return () => {
281
- // Clear any pending debounced operations
282
- manager.clearAll();
283
- };
284
- }, [manager]);
285
- return manager;
286
- }
287
- // React 19 integration for automatic persistence
288
- export function useAutoMediaPersistence(state, mediaId, config) {
289
- const manager = useMediaPersistence(config);
290
- const [isRehydrated, setIsRehydrated] = React.useState(false);
291
- // Rehydrate on mount
292
- React.useEffect(() => {
293
- let isMounted = true;
294
- const rehydrate = async () => {
295
- try {
296
- const [preferences, session] = await Promise.all([
297
- manager.getUserPreferences(),
298
- manager.getSessionState()
299
- ]);
300
- if (!isMounted)
301
- return;
302
- // Return the rehydrated state for the store to apply
303
- const rehydratedState = {
304
- ...(preferences && {
305
- volume: preferences.volume,
306
- isMuted: preferences.isMuted,
307
- playbackRate: preferences.playbackRate,
308
- subtitlesShowing: preferences.subtitlesShowing
309
- }),
310
- ...(session && mediaId === session.mediaId && {
311
- currentTime: session.currentTime
312
- })
313
- };
314
- // Apply rehydrated state via callback if provided
315
- if (Object.keys(rehydratedState).length > 0) {
316
- // This would be handled by the store
317
- console.log('Rehydrated state:', rehydratedState);
318
- }
319
- setIsRehydrated(true);
320
- }
321
- catch (error) {
322
- console.warn('Failed to rehydrate state:', error);
323
- setIsRehydrated(true);
324
- }
325
- };
326
- rehydrate();
327
- return () => {
328
- isMounted = false;
329
- };
330
- }, [manager, mediaId]);
331
- // Auto-persist changes
332
- React.useEffect(() => {
333
- if (!isRehydrated)
334
- return;
335
- // Save user preferences
336
- const preferences = manager.extractUserPreferences(state);
337
- manager.saveUserPreferences(preferences);
338
- // Save session state
339
- if (mediaId) {
340
- const session = manager.extractSessionState(state, mediaId);
341
- manager.saveSessionState(session);
342
- // Save playback position
343
- if (state.currentTime > 0 && state.duration > 0) {
344
- manager.savePlaybackPosition(mediaId, state.currentTime);
345
- }
346
- }
347
- }, [manager, state, mediaId, isRehydrated]);
348
- return {
349
- manager,
350
- isRehydrated
351
- };
352
- }
353
- // Export default storage adapter
354
- export const defaultStorageAdapter = new LocalStorageAdapter();
355
- // Import React for hooks
356
- import React from "react";
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-system.d.ts","sourceRoot":"","sources":["event-system.ts"],"names":[],"mappings":"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"}
@@ -1,288 +0,0 @@
1
- // Event bus implementation
2
- export class EventBus {
3
- listeners = new Map();
4
- eventQueue = [];
5
- isProcessing = false;
6
- middlewares = [];
7
- eventHistory = [];
8
- maxHistorySize = 1000;
9
- // Subscribe to events
10
- on(type, handler, options = {}) {
11
- return this.addEventListener(type, handler, options);
12
- }
13
- // Subscribe to events (one-time)
14
- once(type, handler, options = {}) {
15
- return this.addEventListener(type, handler, { ...options, once: true });
16
- }
17
- // Subscribe to events with wildcard support
18
- addEventListener(type, handler, options = {}) {
19
- const id = this.generateId();
20
- const listener = { handler, options, id };
21
- if (!this.listeners.has(type)) {
22
- this.listeners.set(type, []);
23
- }
24
- const listeners = this.listeners.get(type);
25
- // Insert based on priority
26
- const priority = options.priority || 'normal';
27
- const priorityValue = { high: 2, normal: 1, low: 0 }[priority];
28
- let insertIndex = listeners.length;
29
- for (let i = 0; i < listeners.length; i++) {
30
- const listener = listeners[i];
31
- if (!listener)
32
- continue;
33
- const listenerPriority = listener.options.priority || 'normal';
34
- if (priorityValue > { high: 2, normal: 1, low: 0 }[listenerPriority]) {
35
- insertIndex = i;
36
- break;
37
- }
38
- }
39
- listeners.splice(insertIndex, 0, listener);
40
- // Return unsubscriber
41
- return () => {
42
- const index = listeners.findIndex(l => l.id === id);
43
- if (index !== -1) {
44
- listeners.splice(index, 1);
45
- }
46
- if (listeners.length === 0) {
47
- this.listeners.delete(type);
48
- }
49
- };
50
- }
51
- // Remove event listener
52
- removeEventListener(type, handler) {
53
- const listeners = this.listeners.get(type);
54
- if (!listeners)
55
- return;
56
- if (handler) {
57
- const index = listeners.findIndex(l => l.handler === handler);
58
- if (index !== -1) {
59
- listeners.splice(index, 1);
60
- }
61
- }
62
- else {
63
- this.listeners.delete(type);
64
- }
65
- if (listeners && listeners.length === 0) {
66
- this.listeners.delete(type);
67
- }
68
- }
69
- // Emit events
70
- emit(type, detail, options) {
71
- const event = {
72
- type,
73
- timestamp: Date.now(),
74
- detail,
75
- bubbles: true,
76
- cancelable: true,
77
- defaultPrevented: false,
78
- ...options
79
- };
80
- return this.dispatchEvent(event);
81
- }
82
- // Dispatch event
83
- dispatchEvent(event) {
84
- // Apply middlewares
85
- let processedEvent = event;
86
- for (const middleware of this.middlewares) {
87
- processedEvent = middleware(processedEvent);
88
- if (!processedEvent) {
89
- return false; // Event was cancelled by middleware
90
- }
91
- }
92
- // Add to history
93
- this.addToHistory(processedEvent);
94
- // Queue event for processing
95
- this.eventQueue.push(processedEvent);
96
- if (!this.isProcessing) {
97
- this.processEventQueue();
98
- }
99
- return !processedEvent.defaultPrevented;
100
- }
101
- // Process event queue with React 19 concurrent scheduling
102
- processEventQueue() {
103
- if (this.isProcessing)
104
- return;
105
- this.isProcessing = true;
106
- // Use scheduler for non-blocking event processing
107
- const schedule = (typeof window !== 'undefined' && 'scheduler' in window)
108
- ? window.scheduler.postTask
109
- : (cb) => setTimeout(cb, 0);
110
- const processNext = () => {
111
- if (this.eventQueue.length === 0) {
112
- this.isProcessing = false;
113
- return;
114
- }
115
- const batchSize = Math.min(this.eventQueue.length, 5); // Process max 5 events per frame
116
- const events = this.eventQueue.splice(0, batchSize);
117
- // Process events in parallel using Promise.all
118
- Promise.all(events.map(event => this.processEvent(event).catch(console.error)))
119
- .then(() => {
120
- // Schedule next batch in next frame
121
- schedule(processNext);
122
- })
123
- .catch(() => {
124
- this.isProcessing = false;
125
- });
126
- };
127
- schedule(processNext);
128
- }
129
- // Process individual event
130
- async processEvent(event) {
131
- const { type } = event;
132
- // Get exact matches
133
- const exactListeners = this.listeners.get(type) || [];
134
- // Get wildcard matches
135
- const wildcardListeners = [];
136
- for (const [pattern, listeners] of this.listeners.entries()) {
137
- if (pattern.includes('*') && this.matchPattern(type, pattern)) {
138
- wildcardListeners.push(...listeners);
139
- }
140
- }
141
- // Combine and sort by priority
142
- const allListeners = [...exactListeners, ...wildcardListeners]
143
- .sort((a, b) => {
144
- const priorityA = { high: 2, normal: 1, low: 0 }[a.options.priority || 'normal'];
145
- const priorityB = { high: 2, normal: 1, low: 0 }[b.options.priority || 'normal'];
146
- return priorityB - priorityA;
147
- });
148
- // Execute listeners
149
- const listenersToRemove = [];
150
- for (const listener of allListeners) {
151
- // Apply filter if present
152
- if (listener.options.filter && !listener.options.filter(event)) {
153
- continue;
154
- }
155
- try {
156
- // Execute handler
157
- await Promise.resolve(listener.handler(event));
158
- // Mark for removal if once
159
- if (listener.options.once) {
160
- listenersToRemove.push(listener.id);
161
- }
162
- // Stop propagation if event was cancelled
163
- if (event.defaultPrevented && !event.bubbles) {
164
- break;
165
- }
166
- }
167
- catch (error) {
168
- console.error(`Error in event handler for ${type}:`, error);
169
- // Log error instead
170
- console.error(`Event handler error for ${type}:`, error);
171
- }
172
- }
173
- // Remove one-time listeners
174
- for (const id of listenersToRemove) {
175
- for (const [eventType, listeners] of this.listeners.entries()) {
176
- const index = listeners.findIndex(l => l.id === id);
177
- if (index !== -1) {
178
- listeners.splice(index, 1);
179
- if (listeners.length === 0) {
180
- this.listeners.delete(eventType);
181
- }
182
- break;
183
- }
184
- }
185
- }
186
- }
187
- // Add middleware
188
- use(middleware) {
189
- this.middlewares.push(middleware);
190
- return () => {
191
- const index = this.middlewares.indexOf(middleware);
192
- if (index !== -1) {
193
- this.middlewares.splice(index, 1);
194
- }
195
- };
196
- }
197
- // Event history management
198
- addToHistory(event) {
199
- this.eventHistory.push(event);
200
- if (this.eventHistory.length > this.maxHistorySize) {
201
- this.eventHistory.shift();
202
- }
203
- }
204
- // Get event history
205
- getHistory(filter) {
206
- return filter ? this.eventHistory.filter(filter) : [...this.eventHistory];
207
- }
208
- // Clear event history
209
- clearHistory() {
210
- this.eventHistory = [];
211
- }
212
- // Pattern matching for wildcards
213
- matchPattern(eventType, pattern) {
214
- const regex = new RegExp('^' + pattern.replace(/\*/g, '.*').replace(/\?/g, '.') + '$');
215
- return regex.test(eventType);
216
- }
217
- // Generate unique ID
218
- generateId() {
219
- return `event_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
220
- }
221
- // Get listener count
222
- getListenerCount(type) {
223
- if (type) {
224
- return this.listeners.get(type)?.length || 0;
225
- }
226
- return Array.from(this.listeners.values()).reduce((sum, listeners) => sum + listeners.length, 0);
227
- }
228
- // Get all event types
229
- getEventTypes() {
230
- return Array.from(this.listeners.keys());
231
- }
232
- // Clear all listeners
233
- removeAllListeners(type) {
234
- if (type) {
235
- this.listeners.delete(type);
236
- }
237
- else {
238
- this.listeners.clear();
239
- }
240
- }
241
- // Destroy event bus
242
- destroy() {
243
- this.listeners.clear();
244
- this.eventQueue = [];
245
- this.middlewares = [];
246
- this.eventHistory = [];
247
- this.isProcessing = false;
248
- }
249
- }
250
- // Default event bus instance
251
- export const defaultEventBus = new EventBus();
252
- // Event delegation helper
253
- export class EventDelegator {
254
- eventBus;
255
- element;
256
- delegatedEvents = new Set();
257
- constructor(eventBus, element) {
258
- this.eventBus = eventBus;
259
- this.element = element;
260
- }
261
- // Delegate DOM events to event bus
262
- delegate(domEvent, mediaEvent) {
263
- if (this.delegatedEvents.has(domEvent))
264
- return;
265
- const handler = (e) => {
266
- this.eventBus.emit(mediaEvent || `dom:${domEvent}`, {
267
- originalEvent: e,
268
- target: e.target?.tagName.toLowerCase(),
269
- currentTarget: e.currentTarget?.tagName.toLowerCase()
270
- });
271
- };
272
- this.element.addEventListener(domEvent, handler, { passive: true });
273
- this.delegatedEvents.add(domEvent);
274
- }
275
- // Setup common delegations
276
- setupCommonDelegations() {
277
- this.delegate('click', 'user:click');
278
- this.delegate('mouseenter', 'user:hover');
279
- this.delegate('mouseleave', 'user:hover');
280
- this.delegate('focus', 'user:focus');
281
- this.delegate('blur', 'user:focus');
282
- this.delegate('keydown', 'user:keyboard');
283
- this.delegate('keyup', 'user:keyboard');
284
- }
285
- destroy() {
286
- this.delegatedEvents.clear();
287
- }
288
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGzH,wBAAgB,WAAW,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAiBzD;AAGD,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,WAAW,EAC1D,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EACrC,OAAO,CAAC,EAAE,YAAY,EACtB,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,GAC1B,IAAI,CAcN;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,IAC5B,CAAC,SAAS,MAAM,WAAW,QACvC,CAAC,WACE,WAAW,CAAC,CAAC,CAAC,YACb,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAIpC;AAGD,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,WAAW,EACtD,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EACrC,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,GAC1B,IAAI,CAEN;AAGD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ;SAGjB,CAAC,SAAS,MAAM,WAAW,QACnD,CAAC,WACE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAC3B,YAAY;;EAoBzB;AAGD,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,EAChC,OAAO,SAAM;;;EA2Bd;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ;;;mBAEvC,MAAM;2BACE,MAAM;uBACV,MAAM;;;;EAsCpB;AAGD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,QAAQ,EAClB,OAAO,GAAE;IACP,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CACvB,QAuCP;AAGD,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,MAAM,WAAW,EACrE,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EACrC,SAAS,EAAE,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,EACpC,OAAO,CAAC,EAAE,YAAY,EACtB,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,GAC1B,IAAI,CAWN;AAGD,wBAAgB,aAAa,CAAC,CAAC,EAC7B,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,CAAC,EACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,KAoBlE;AAGD,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,WAAW,EACxD,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,EACvD,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,GAC1B,IAAI,CA0BN"}