@therealtinhtute/baroiplayer 1.0.6 → 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 (595) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/package.json +1 -1
  3. package/package.json +1 -1
  4. package/dist/context/media.js +0 -2
  5. package/dist/context/media.js.map +0 -1
  6. package/dist/context/media.mjs +0 -15
  7. package/dist/context/media.mjs.map +0 -1
  8. package/dist/context/store.js +0 -2
  9. package/dist/context/store.js.map +0 -1
  10. package/dist/context/store.mjs +0 -5
  11. package/dist/context/store.mjs.map +0 -1
  12. package/dist/context-Af84FynT.js +0 -1179
  13. package/dist/context-Af84FynT.js.map +0 -1
  14. package/dist/context-CwZnPdz0.cjs +0 -23
  15. package/dist/context-CwZnPdz0.cjs.map +0 -1
  16. package/dist/core-events-B5W_j8yU.js +0 -480
  17. package/dist/core-events-B5W_j8yU.js.map +0 -1
  18. package/dist/core-events-CN0-Vhhq.cjs +0 -2
  19. package/dist/core-events-CN0-Vhhq.cjs.map +0 -1
  20. package/dist/core-plugins-Bq9KLany.js +0 -696
  21. package/dist/core-plugins-Bq9KLany.js.map +0 -1
  22. package/dist/core-plugins-CPDSHMiQ.cjs +0 -2
  23. package/dist/core-plugins-CPDSHMiQ.cjs.map +0 -1
  24. package/dist/core.js +0 -37
  25. package/dist/core.js.map +0 -1
  26. package/dist/core.mjs +0 -1217
  27. package/dist/core.mjs.map +0 -1
  28. package/dist/enhanced-components-CXnYiOt6.cjs +0 -2
  29. package/dist/enhanced-components-CXnYiOt6.cjs.map +0 -1
  30. package/dist/enhanced-components-Da0TSvKe.js +0 -1073
  31. package/dist/enhanced-components-Da0TSvKe.js.map +0 -1
  32. package/dist/hooks-BCMilGRf.cjs +0 -4
  33. package/dist/hooks-BCMilGRf.cjs.map +0 -1
  34. package/dist/hooks-BPtHV1ZT.js +0 -2042
  35. package/dist/hooks-BPtHV1ZT.js.map +0 -1
  36. package/dist/index.js.map +0 -1
  37. package/dist/index.mjs.map +0 -1
  38. package/dist/minimal-components-BHJMuaL7.cjs +0 -2
  39. package/dist/minimal-components-BHJMuaL7.cjs.map +0 -1
  40. package/dist/minimal-components-BmqRefl1.js +0 -2002
  41. package/dist/minimal-components-BmqRefl1.js.map +0 -1
  42. package/dist/mona-loading.gif +0 -0
  43. package/dist/performance-monitor--rzKTlbj.js +0 -302
  44. package/dist/performance-monitor--rzKTlbj.js.map +0 -1
  45. package/dist/performance-monitor-cjIvZE2D.cjs +0 -2
  46. package/dist/performance-monitor-cjIvZE2D.cjs.map +0 -1
  47. package/dist/src/adapters/videojs-adapter.d.ts.map +0 -1
  48. package/dist/src/adapters/videojs-adapter.js +0 -350
  49. package/dist/src/assets/mona-loading.gif +0 -0
  50. package/dist/src/components/AnimateLoading.d.ts.map +0 -1
  51. package/dist/src/components/AnimateLoading.js +0 -41
  52. package/dist/src/components/LoadingState.d.ts.map +0 -1
  53. package/dist/src/components/LoadingState.js +0 -111
  54. package/dist/src/components/accessibility/keyboard-help-overlay.d.ts.map +0 -1
  55. package/dist/src/components/accessibility/keyboard-help-overlay.js +0 -90
  56. package/dist/src/components/audio-player.d.ts.map +0 -1
  57. package/dist/src/components/audio-player.js +0 -31
  58. package/dist/src/components/basic/index.d.ts.map +0 -1
  59. package/dist/src/components/basic/index.js +0 -29
  60. package/dist/src/components/enhanced/advanced-features.d.ts.map +0 -1
  61. package/dist/src/components/enhanced/advanced-features.js +0 -64
  62. package/dist/src/components/enhanced/debug-panel.d.ts.map +0 -1
  63. package/dist/src/components/enhanced/debug-panel.js +0 -94
  64. package/dist/src/components/enhanced/enhanced-controls.d.ts.map +0 -1
  65. package/dist/src/components/enhanced/enhanced-controls.js +0 -233
  66. package/dist/src/components/enhanced/enhanced-media-player.d.ts.map +0 -1
  67. package/dist/src/components/enhanced/enhanced-media-player.js +0 -316
  68. package/dist/src/components/enhanced/error-handling.d.ts.map +0 -1
  69. package/dist/src/components/enhanced/error-handling.js +0 -153
  70. package/dist/src/components/enhanced/index.d.ts.map +0 -1
  71. package/dist/src/components/enhanced/index.js +0 -10
  72. package/dist/src/components/enhanced/media-player-enhanced.d.ts.map +0 -1
  73. package/dist/src/components/enhanced/media-player-enhanced.js +0 -250
  74. package/dist/src/components/examples/basic-video-player.d.ts.map +0 -1
  75. package/dist/src/components/examples/basic-video-player.js +0 -16
  76. package/dist/src/components/examples/custom-controls-example.d.ts.map +0 -1
  77. package/dist/src/components/examples/custom-controls-example.js +0 -12
  78. package/dist/src/components/examples/enhanced-controls-example.d.ts.map +0 -1
  79. package/dist/src/components/examples/enhanced-controls-example.js +0 -18
  80. package/dist/src/components/examples/enhanced-media-player-example.d.ts.map +0 -1
  81. package/dist/src/components/examples/enhanced-media-player-example.js +0 -13
  82. package/dist/src/components/examples/loading-states-demo.d.ts.map +0 -1
  83. package/dist/src/components/examples/loading-states-demo.js +0 -41
  84. package/dist/src/components/examples/react-19-demo.d.ts.map +0 -1
  85. package/dist/src/components/examples/react-19-demo.js +0 -104
  86. package/dist/src/components/examples/volume-orientation-demo.d.ts.map +0 -1
  87. package/dist/src/components/examples/volume-orientation-demo.js +0 -31
  88. package/dist/src/components/icon-demo.d.ts.map +0 -1
  89. package/dist/src/components/icon-demo.js +0 -16
  90. package/dist/src/components/icons/index.d.ts.map +0 -1
  91. package/dist/src/components/icons/index.js +0 -59
  92. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.d.ts.map +0 -1
  93. package/dist/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  94. package/dist/src/components/icons/svg-icons/ArrowRightIcon.d.ts.map +0 -1
  95. package/dist/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  96. package/dist/src/components/icons/svg-icons/AudioIcon.d.ts.map +0 -1
  97. package/dist/src/components/icons/svg-icons/AudioIcon.js +0 -4
  98. package/dist/src/components/icons/svg-icons/BackwardIcon.d.ts.map +0 -1
  99. package/dist/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  100. package/dist/src/components/icons/svg-icons/CameraIcon.d.ts.map +0 -1
  101. package/dist/src/components/icons/svg-icons/CameraIcon.js +0 -4
  102. package/dist/src/components/icons/svg-icons/CheckIcon.d.ts.map +0 -1
  103. package/dist/src/components/icons/svg-icons/CheckIcon.js +0 -4
  104. package/dist/src/components/icons/svg-icons/EnablePiPIcon.d.ts.map +0 -1
  105. package/dist/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  106. package/dist/src/components/icons/svg-icons/ForwardIcon.d.ts.map +0 -1
  107. package/dist/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  108. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.d.ts.map +0 -1
  109. package/dist/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  110. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.d.ts.map +0 -1
  111. package/dist/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  112. package/dist/src/components/icons/svg-icons/LoadingIcon.d.ts.map +0 -1
  113. package/dist/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  114. package/dist/src/components/icons/svg-icons/PauseIcon.d.ts.map +0 -1
  115. package/dist/src/components/icons/svg-icons/PauseIcon.js +0 -3
  116. package/dist/src/components/icons/svg-icons/PlayIcon.d.ts.map +0 -1
  117. package/dist/src/components/icons/svg-icons/PlayIcon.js +0 -3
  118. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.d.ts.map +0 -1
  119. package/dist/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  120. package/dist/src/components/icons/svg-icons/QualityIcon.d.ts.map +0 -1
  121. package/dist/src/components/icons/svg-icons/QualityIcon.js +0 -3
  122. package/dist/src/components/icons/svg-icons/SettingsIcon.d.ts.map +0 -1
  123. package/dist/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  124. package/dist/src/components/icons/svg-icons/SliderIcon.d.ts.map +0 -1
  125. package/dist/src/components/icons/svg-icons/SliderIcon.js +0 -3
  126. package/dist/src/components/icons/svg-icons/SubtitleIcon.d.ts.map +0 -1
  127. package/dist/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  128. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.d.ts.map +0 -1
  129. package/dist/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  130. package/dist/src/components/icons/svg-icons/UnPiPIcon.d.ts.map +0 -1
  131. package/dist/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  132. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.d.ts.map +0 -1
  133. package/dist/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  134. package/dist/src/components/icons/svg-icons/VolumeOneIcon.d.ts.map +0 -1
  135. package/dist/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  136. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.d.ts.map +0 -1
  137. package/dist/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  138. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.d.ts.map +0 -1
  139. package/dist/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  140. package/dist/src/components/legacy.d.ts.map +0 -1
  141. package/dist/src/components/legacy.js +0 -52
  142. package/dist/src/components/media-metadata-display.d.ts.map +0 -1
  143. package/dist/src/components/media-metadata-display.js +0 -20
  144. package/dist/src/components/media-player-audio.d.ts.map +0 -1
  145. package/dist/src/components/media-player-audio.js +0 -18
  146. package/dist/src/components/media-player-controls.d.ts.map +0 -1
  147. package/dist/src/components/media-player-controls.js +0 -150
  148. package/dist/src/components/media-player-error.d.ts.map +0 -1
  149. package/dist/src/components/media-player-error.js +0 -85
  150. package/dist/src/components/media-player-fullscreen.d.ts.map +0 -1
  151. package/dist/src/components/media-player-fullscreen.js +0 -68
  152. package/dist/src/components/media-player-hls.d.ts.map +0 -1
  153. package/dist/src/components/media-player-hls.js +0 -20
  154. package/dist/src/components/media-player-loading.d.ts.map +0 -1
  155. package/dist/src/components/media-player-loading.js +0 -53
  156. package/dist/src/components/media-player-play.d.ts.map +0 -1
  157. package/dist/src/components/media-player-play.js +0 -44
  158. package/dist/src/components/media-player-root.d.ts.map +0 -1
  159. package/dist/src/components/media-player-root.js +0 -243
  160. package/dist/src/components/media-player-seek.d.ts.map +0 -1
  161. package/dist/src/components/media-player-seek.js +0 -92
  162. package/dist/src/components/media-player-time.d.ts.map +0 -1
  163. package/dist/src/components/media-player-time.js +0 -57
  164. package/dist/src/components/media-player-tooltip.d.ts.map +0 -1
  165. package/dist/src/components/media-player-tooltip.js +0 -14
  166. package/dist/src/components/media-player-video.d.ts.map +0 -1
  167. package/dist/src/components/media-player-video.js +0 -18
  168. package/dist/src/components/media-player-volume.d.ts.map +0 -1
  169. package/dist/src/components/media-player-volume.js +0 -88
  170. package/dist/src/components/media-player.d.ts.map +0 -1
  171. package/dist/src/components/media-player.js +0 -67
  172. package/dist/src/components/media-suspense.d.ts.map +0 -1
  173. package/dist/src/components/media-suspense.js +0 -173
  174. package/dist/src/components/player-settings-form.d.ts.map +0 -1
  175. package/dist/src/components/player-settings-form.js +0 -46
  176. package/dist/src/components/react-player-wrapper.d.ts.map +0 -1
  177. package/dist/src/components/react-player-wrapper.js +0 -163
  178. package/dist/src/components/simple-video-player.d.ts.map +0 -1
  179. package/dist/src/components/simple-video-player.js +0 -41
  180. package/dist/src/components/ui/enhanced-seek-bar.d.ts.map +0 -1
  181. package/dist/src/components/ui/enhanced-seek-bar.js +0 -112
  182. package/dist/src/components/ui/fullscreen-button.d.ts.map +0 -1
  183. package/dist/src/components/ui/fullscreen-button.js +0 -21
  184. package/dist/src/components/ui/media-resource-preloader.d.ts.map +0 -1
  185. package/dist/src/components/ui/media-resource-preloader.js +0 -295
  186. package/dist/src/components/ui/play-button.d.ts.map +0 -1
  187. package/dist/src/components/ui/play-button.js +0 -26
  188. package/dist/src/components/ui/seek-bar.d.ts.map +0 -1
  189. package/dist/src/components/ui/seek-bar.js +0 -54
  190. package/dist/src/components/ui/time-display.d.ts.map +0 -1
  191. package/dist/src/components/ui/time-display.js +0 -18
  192. package/dist/src/components/ui/volume-control.d.ts.map +0 -1
  193. package/dist/src/components/ui/volume-control.js +0 -71
  194. package/dist/src/components/unified/base-media-player.d.ts.map +0 -1
  195. package/dist/src/components/unified/base-media-player.js +0 -104
  196. package/dist/src/components/unified/media-player.d.ts.map +0 -1
  197. package/dist/src/components/unified/media-player.js +0 -41
  198. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.d.ts.map +0 -1
  199. package/dist/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  200. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.d.ts.map +0 -1
  201. package/dist/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  202. package/dist/src/components/variants/minimal/MinimalControls.d.ts.map +0 -1
  203. package/dist/src/components/variants/minimal/MinimalControls.js +0 -19
  204. package/dist/src/components/variants/minimal/MinimalLoading.d.ts.map +0 -1
  205. package/dist/src/components/variants/minimal/MinimalLoading.js +0 -6
  206. package/dist/src/components/variants/minimal/MinimalMediaPlayer.d.ts.map +0 -1
  207. package/dist/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  208. package/dist/src/components/variants/minimal/MinimalOverlay.d.ts.map +0 -1
  209. package/dist/src/components/variants/minimal/MinimalOverlay.js +0 -15
  210. package/dist/src/components/variants/minimal/MinimalPlayButton.d.ts.map +0 -1
  211. package/dist/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  212. package/dist/src/components/variants/minimal/MinimalSeekBar.d.ts.map +0 -1
  213. package/dist/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  214. package/dist/src/components/variants/minimal/MinimalVolumeControl.d.ts.map +0 -1
  215. package/dist/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  216. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.d.ts.map +0 -1
  217. package/dist/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  218. package/dist/src/components/variants/minimal/components/CenterPlayButton.d.ts.map +0 -1
  219. package/dist/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  220. package/dist/src/components/variants/minimal/components/ControlBar.d.ts.map +0 -1
  221. package/dist/src/components/variants/minimal/components/ControlBar.js +0 -10
  222. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.d.ts.map +0 -1
  223. package/dist/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  224. package/dist/src/components/variants/minimal/components/PlaybackControls.d.ts.map +0 -1
  225. package/dist/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  226. package/dist/src/components/variants/minimal/components/RightControls.d.ts.map +0 -1
  227. package/dist/src/components/variants/minimal/components/RightControls.js +0 -40
  228. package/dist/src/components/variants/minimal/components/SeekBar.d.ts.map +0 -1
  229. package/dist/src/components/variants/minimal/components/SeekBar.js +0 -43
  230. package/dist/src/components/variants/minimal/components/SettingsDropdown.d.ts.map +0 -1
  231. package/dist/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  232. package/dist/src/components/variants/minimal/components/SubtitleDisplay.d.ts.map +0 -1
  233. package/dist/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  234. package/dist/src/components/variants/minimal/components/TimeDisplay.d.ts.map +0 -1
  235. package/dist/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  236. package/dist/src/components/variants/minimal/components/VideoElement.d.ts.map +0 -1
  237. package/dist/src/components/variants/minimal/components/VideoElement.js +0 -4
  238. package/dist/src/components/variants/minimal/components/VolumeControl.d.ts.map +0 -1
  239. package/dist/src/components/variants/minimal/components/VolumeControl.js +0 -99
  240. package/dist/src/components/variants/minimal/index.d.ts.map +0 -1
  241. package/dist/src/components/variants/minimal/index.js +0 -8
  242. package/dist/src/components/video-player.d.ts.map +0 -1
  243. package/dist/src/components/video-player.js +0 -38
  244. package/dist/src/context/error-handling.d.ts.map +0 -1
  245. package/dist/src/context/error-handling.js +0 -300
  246. package/dist/src/context/media-context.d.ts.map +0 -1
  247. package/dist/src/context/media-context.js +0 -121
  248. package/dist/src/context/media-provider.d.ts.map +0 -1
  249. package/dist/src/context/media-provider.js +0 -164
  250. package/dist/src/context/media-store.d.ts.map +0 -1
  251. package/dist/src/context/media-store.js +0 -273
  252. package/dist/src/context/persistence.d.ts.map +0 -1
  253. package/dist/src/context/persistence.js +0 -356
  254. package/dist/src/core/events/event-system.d.ts.map +0 -1
  255. package/dist/src/core/events/event-system.js +0 -288
  256. package/dist/src/core/events/hooks.d.ts.map +0 -1
  257. package/dist/src/core/events/hooks.js +0 -198
  258. package/dist/src/core/events/index.d.ts.map +0 -1
  259. package/dist/src/core/events/index.js +0 -7
  260. package/dist/src/core/events/middleware.d.ts.map +0 -1
  261. package/dist/src/core/events/middleware.js +0 -219
  262. package/dist/src/core/index.d.ts.map +0 -1
  263. package/dist/src/core/index.js +0 -15
  264. package/dist/src/core/optimization/bundle-optimizer.d.ts.map +0 -1
  265. package/dist/src/core/optimization/bundle-optimizer.js +0 -217
  266. package/dist/src/core/performance/cicd.d.ts.map +0 -1
  267. package/dist/src/core/performance/cicd.js +0 -83
  268. package/dist/src/core/performance/index.d.ts.map +0 -1
  269. package/dist/src/core/performance/index.js +0 -14
  270. package/dist/src/core/performance/media-loading-optimizer.d.ts.map +0 -1
  271. package/dist/src/core/performance/media-loading-optimizer.js +0 -404
  272. package/dist/src/core/performance/performance-budgets.d.ts.map +0 -1
  273. package/dist/src/core/performance/performance-budgets.js +0 -326
  274. package/dist/src/core/performance/performance-monitor.d.ts.map +0 -1
  275. package/dist/src/core/performance/performance-monitor.js +0 -297
  276. package/dist/src/core/performance/performance-testing.d.ts.map +0 -1
  277. package/dist/src/core/performance/performance-testing.js +0 -314
  278. package/dist/src/core/plugins/base-plugin.d.ts.map +0 -1
  279. package/dist/src/core/plugins/base-plugin.js +0 -151
  280. package/dist/src/core/plugins/enhanced-plugin-system.d.ts.map +0 -1
  281. package/dist/src/core/plugins/enhanced-plugin-system.js +0 -305
  282. package/dist/src/core/plugins/examples/analytics-plugin.d.ts.map +0 -1
  283. package/dist/src/core/plugins/examples/analytics-plugin.js +0 -191
  284. package/dist/src/core/plugins/index.d.ts.map +0 -1
  285. package/dist/src/core/plugins/index.js +0 -9
  286. package/dist/src/core/plugins/registry.d.ts.map +0 -1
  287. package/dist/src/core/plugins/registry.js +0 -261
  288. package/dist/src/core/plugins/types.d.ts.map +0 -1
  289. package/dist/src/core/plugins/types.js +0 -31
  290. package/dist/src/core/plugins/utils.d.ts.map +0 -1
  291. package/dist/src/core/plugins/utils.js +0 -274
  292. package/dist/src/core/progressive-loading.d.ts.map +0 -1
  293. package/dist/src/core/progressive-loading.js +0 -239
  294. package/dist/src/core/providers/enhanced-hls-provider.d.ts.map +0 -1
  295. package/dist/src/core/providers/enhanced-hls-provider.js +0 -273
  296. package/dist/src/core/providers/service-provider.d.ts.map +0 -1
  297. package/dist/src/core/providers/service-provider.js +0 -105
  298. package/dist/src/core/utils.d.ts.map +0 -1
  299. package/dist/src/core/utils.js +0 -21
  300. package/dist/src/features/media-session/media-session-manager.d.ts.map +0 -1
  301. package/dist/src/features/media-session/media-session-manager.js +0 -331
  302. package/dist/src/features/picture-in-picture/pip-manager.d.ts.map +0 -1
  303. package/dist/src/features/picture-in-picture/pip-manager.js +0 -353
  304. package/dist/src/features/playlist/playlist-manager.d.ts.map +0 -1
  305. package/dist/src/features/playlist/playlist-manager.js +0 -475
  306. package/dist/src/features/subtitles/subtitle-manager.d.ts.map +0 -1
  307. package/dist/src/features/subtitles/subtitle-manager.js +0 -335
  308. package/dist/src/features/subtitles/subtitle-parser.d.ts.map +0 -1
  309. package/dist/src/features/subtitles/subtitle-parser.js +0 -217
  310. package/dist/src/features/thumbnails/thumbnail-generator.d.ts.map +0 -1
  311. package/dist/src/features/thumbnails/thumbnail-generator.js +0 -388
  312. package/dist/src/hooks/accessibility/index.d.ts.map +0 -1
  313. package/dist/src/hooks/accessibility/index.js +0 -4
  314. package/dist/src/hooks/accessibility/use-accessibility-preferences.d.ts.map +0 -1
  315. package/dist/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  316. package/dist/src/hooks/accessibility/use-focus-management.d.ts.map +0 -1
  317. package/dist/src/hooks/accessibility/use-focus-management.js +0 -142
  318. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.d.ts.map +0 -1
  319. package/dist/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  320. package/dist/src/hooks/accessibility/use-screen-reader.d.ts.map +0 -1
  321. package/dist/src/hooks/accessibility/use-screen-reader.js +0 -148
  322. package/dist/src/hooks/core/index.d.ts.map +0 -1
  323. package/dist/src/hooks/core/index.js +0 -19
  324. package/dist/src/hooks/legacy.d.ts.map +0 -1
  325. package/dist/src/hooks/legacy.js +0 -17
  326. package/dist/src/hooks/use-enhanced-media-player.d.ts.map +0 -1
  327. package/dist/src/hooks/use-enhanced-media-player.js +0 -395
  328. package/dist/src/hooks/use-intelligent-preloading.d.ts.map +0 -1
  329. package/dist/src/hooks/use-intelligent-preloading.js +0 -258
  330. package/dist/src/hooks/use-keyboard-controls.d.ts.map +0 -1
  331. package/dist/src/hooks/use-keyboard-controls.js +0 -83
  332. package/dist/src/hooks/use-media-actions.d.ts.map +0 -1
  333. package/dist/src/hooks/use-media-actions.js +0 -121
  334. package/dist/src/hooks/use-media-metadata.d.ts.map +0 -1
  335. package/dist/src/hooks/use-media-metadata.js +0 -74
  336. package/dist/src/hooks/use-media-optimistic.d.ts.map +0 -1
  337. package/dist/src/hooks/use-media-optimistic.js +0 -205
  338. package/dist/src/hooks/use-media-player.d.ts.map +0 -1
  339. package/dist/src/hooks/use-media-player.js +0 -251
  340. package/dist/src/hooks/use-media-state.d.ts.map +0 -1
  341. package/dist/src/hooks/use-media-state.js +0 -162
  342. package/dist/src/hooks/use-memory-optimization.d.ts.map +0 -1
  343. package/dist/src/hooks/use-memory-optimization.js +0 -288
  344. package/dist/src/hooks/use-optimistic-controls.d.ts.map +0 -1
  345. package/dist/src/hooks/use-optimistic-controls.js +0 -60
  346. package/dist/src/hooks/use-optimized-media.d.ts.map +0 -1
  347. package/dist/src/hooks/use-optimized-media.js +0 -211
  348. package/dist/src/hooks/use-touch-gestures.d.ts.map +0 -1
  349. package/dist/src/hooks/use-touch-gestures.js +0 -289
  350. package/dist/src/hooks/useEnhancedSubtitles.d.ts.map +0 -1
  351. package/dist/src/hooks/useEnhancedSubtitles.js +0 -205
  352. package/dist/src/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  353. package/dist/src/hooks/useKeyboardShortcuts.js +0 -59
  354. package/dist/src/hooks/useMediaControls.d.ts.map +0 -1
  355. package/dist/src/hooks/useMediaControls.js +0 -44
  356. package/dist/src/hooks/useScreenshot.d.ts.map +0 -1
  357. package/dist/src/hooks/useScreenshot.js +0 -56
  358. package/dist/src/hooks/useSubtitles.d.ts.map +0 -1
  359. package/dist/src/hooks/useSubtitles.js +0 -73
  360. package/dist/src/hooks/useVideoPlayer.d.ts.map +0 -1
  361. package/dist/src/hooks/useVideoPlayer.js +0 -184
  362. package/dist/src/icons/components/FullscreenIcon.d.ts.map +0 -1
  363. package/dist/src/icons/components/FullscreenIcon.js +0 -11
  364. package/dist/src/icons/components/SettingsIcon.d.ts.map +0 -1
  365. package/dist/src/icons/components/SettingsIcon.js +0 -11
  366. package/dist/src/icons/components/animated/LoadingIcon.d.ts.map +0 -1
  367. package/dist/src/icons/components/animated/LoadingIcon.js +0 -11
  368. package/dist/src/icons/components/animated/PlayPauseIcon.d.ts.map +0 -1
  369. package/dist/src/icons/components/animated/PlayPauseIcon.js +0 -9
  370. package/dist/src/icons/components/media/PauseIcon.d.ts.map +0 -1
  371. package/dist/src/icons/components/media/PauseIcon.js +0 -12
  372. package/dist/src/icons/components/media/PlayIcon.d.ts.map +0 -1
  373. package/dist/src/icons/components/media/PlayIcon.js +0 -12
  374. package/dist/src/icons/components/volume/VolumeIcon.d.ts.map +0 -1
  375. package/dist/src/icons/components/volume/VolumeIcon.js +0 -11
  376. package/dist/src/icons/components/volume/VolumeOffIcon.d.ts.map +0 -1
  377. package/dist/src/icons/components/volume/VolumeOffIcon.js +0 -11
  378. package/dist/src/icons/index.d.ts.map +0 -1
  379. package/dist/src/icons/index.js +0 -45
  380. package/dist/src/icons/provider.d.ts.map +0 -1
  381. package/dist/src/icons/provider.js +0 -37
  382. package/dist/src/icons/types.d.ts.map +0 -1
  383. package/dist/src/icons/types.js +0 -1
  384. package/dist/src/index-enhanced.d.ts.map +0 -1
  385. package/dist/src/index-enhanced.js +0 -16
  386. package/dist/src/index-legacy.d.ts.map +0 -1
  387. package/dist/src/index-legacy.js +0 -97
  388. package/dist/src/index.d.ts.map +0 -1
  389. package/dist/src/index.js +0 -90
  390. package/dist/src/index.minimal.d.ts.map +0 -1
  391. package/dist/src/index.minimal.js +0 -3
  392. package/dist/src/lib/deprecation.d.ts.map +0 -1
  393. package/dist/src/lib/deprecation.js +0 -31
  394. package/dist/src/lib/format-time.d.ts.map +0 -1
  395. package/dist/src/lib/format-time.js +0 -32
  396. package/dist/src/lib/index.d.ts.map +0 -1
  397. package/dist/src/lib/index.js +0 -3
  398. package/dist/src/lib/utils.d.ts.map +0 -1
  399. package/dist/src/lib/utils.js +0 -5
  400. package/dist/src/test/setup.d.ts.map +0 -1
  401. package/dist/src/test/setup.js +0 -65
  402. package/dist/src/types/events.d.ts.map +0 -1
  403. package/dist/src/types/events.js +0 -2
  404. package/dist/src/types/formats.d.ts.map +0 -1
  405. package/dist/src/types/formats.js +0 -63
  406. package/dist/src/types/index.d.ts.map +0 -1
  407. package/dist/src/types/index.js +0 -4
  408. package/dist/utils-Db13763z.cjs +0 -9
  409. package/dist/utils-Db13763z.cjs.map +0 -1
  410. package/dist/utils-nTO4AnHo.js +0 -2809
  411. package/dist/utils-nTO4AnHo.js.map +0 -1
  412. package/dist/utils.js +0 -2
  413. package/dist/utils.js.map +0 -1
  414. package/dist/utils.mjs +0 -7
  415. package/dist/utils.mjs.map +0 -1
  416. package/src/adapters/videojs-adapter.js +0 -350
  417. package/src/components/AnimateLoading.js +0 -41
  418. package/src/components/LoadingState.js +0 -111
  419. package/src/components/accessibility/keyboard-help-overlay.js +0 -90
  420. package/src/components/audio-player.js +0 -31
  421. package/src/components/basic/index.js +0 -29
  422. package/src/components/enhanced/advanced-features.js +0 -64
  423. package/src/components/enhanced/debug-panel.js +0 -94
  424. package/src/components/enhanced/enhanced-controls.js +0 -233
  425. package/src/components/enhanced/enhanced-media-player.js +0 -316
  426. package/src/components/enhanced/error-handling.js +0 -153
  427. package/src/components/enhanced/index.js +0 -10
  428. package/src/components/enhanced/media-player-enhanced.js +0 -250
  429. package/src/components/examples/basic-video-player.js +0 -16
  430. package/src/components/examples/custom-controls-example.js +0 -12
  431. package/src/components/examples/enhanced-controls-example.js +0 -18
  432. package/src/components/examples/enhanced-media-player-example.js +0 -13
  433. package/src/components/examples/loading-states-demo.js +0 -41
  434. package/src/components/examples/react-19-demo.js +0 -104
  435. package/src/components/examples/volume-orientation-demo.js +0 -31
  436. package/src/components/icon-demo.js +0 -16
  437. package/src/components/icons/index.js +0 -59
  438. package/src/components/icons/svg-icons/ArrowLeftIcon.js +0 -3
  439. package/src/components/icons/svg-icons/ArrowRightIcon.js +0 -3
  440. package/src/components/icons/svg-icons/AudioIcon.js +0 -4
  441. package/src/components/icons/svg-icons/BackwardIcon.js +0 -3
  442. package/src/components/icons/svg-icons/CameraIcon.js +0 -4
  443. package/src/components/icons/svg-icons/CheckIcon.js +0 -4
  444. package/src/components/icons/svg-icons/EnablePiPIcon.js +0 -5
  445. package/src/components/icons/svg-icons/ForwardIcon.js +0 -3
  446. package/src/components/icons/svg-icons/FullscreenEnterIcon.js +0 -3
  447. package/src/components/icons/svg-icons/FullscreenExitIcon.js +0 -3
  448. package/src/components/icons/svg-icons/LoadingIcon.js +0 -3
  449. package/src/components/icons/svg-icons/PauseIcon.js +0 -3
  450. package/src/components/icons/svg-icons/PlayIcon.js +0 -3
  451. package/src/components/icons/svg-icons/PlaybackSpeedIcon.js +0 -3
  452. package/src/components/icons/svg-icons/QualityIcon.js +0 -3
  453. package/src/components/icons/svg-icons/SettingsIcon.js +0 -3
  454. package/src/components/icons/svg-icons/SliderIcon.js +0 -3
  455. package/src/components/icons/svg-icons/SubtitleIcon.js +0 -3
  456. package/src/components/icons/svg-icons/SubtitleOffIcon.js +0 -3
  457. package/src/components/icons/svg-icons/UnPiPIcon.js +0 -5
  458. package/src/components/icons/svg-icons/VolumeMutedIcon.js +0 -3
  459. package/src/components/icons/svg-icons/VolumeOneIcon.js +0 -3
  460. package/src/components/icons/svg-icons/VolumeThreeIcon.js +0 -3
  461. package/src/components/icons/svg-icons/VolumeTwoIcon.js +0 -3
  462. package/src/components/legacy.js +0 -52
  463. package/src/components/media-metadata-display.js +0 -20
  464. package/src/components/media-player-audio.js +0 -18
  465. package/src/components/media-player-controls.js +0 -150
  466. package/src/components/media-player-error.js +0 -85
  467. package/src/components/media-player-fullscreen.js +0 -68
  468. package/src/components/media-player-hls.js +0 -20
  469. package/src/components/media-player-loading.js +0 -53
  470. package/src/components/media-player-play.js +0 -44
  471. package/src/components/media-player-root.js +0 -243
  472. package/src/components/media-player-seek.js +0 -92
  473. package/src/components/media-player-time.js +0 -57
  474. package/src/components/media-player-tooltip.js +0 -14
  475. package/src/components/media-player-video.js +0 -18
  476. package/src/components/media-player-volume.js +0 -88
  477. package/src/components/media-player.js +0 -67
  478. package/src/components/media-suspense.js +0 -173
  479. package/src/components/player-settings-form.js +0 -46
  480. package/src/components/react-player-wrapper.js +0 -163
  481. package/src/components/simple-video-player.js +0 -41
  482. package/src/components/ui/enhanced-seek-bar.js +0 -112
  483. package/src/components/ui/fullscreen-button.js +0 -21
  484. package/src/components/ui/media-resource-preloader.js +0 -295
  485. package/src/components/ui/play-button.js +0 -26
  486. package/src/components/ui/seek-bar.js +0 -54
  487. package/src/components/ui/time-display.js +0 -18
  488. package/src/components/ui/volume-control.js +0 -71
  489. package/src/components/unified/base-media-player.js +0 -104
  490. package/src/components/unified/media-player.js +0 -41
  491. package/src/components/variants/minimal/AccessibleMinimalPlayer.js +0 -322
  492. package/src/components/variants/minimal/EnhancedMinimalMediaPlayer.js +0 -280
  493. package/src/components/variants/minimal/MinimalControls.js +0 -19
  494. package/src/components/variants/minimal/MinimalLoading.js +0 -6
  495. package/src/components/variants/minimal/MinimalMediaPlayer.js +0 -135
  496. package/src/components/variants/minimal/MinimalOverlay.js +0 -15
  497. package/src/components/variants/minimal/MinimalPlayButton.js +0 -29
  498. package/src/components/variants/minimal/MinimalSeekBar.js +0 -73
  499. package/src/components/variants/minimal/MinimalVolumeControl.js +0 -29
  500. package/src/components/variants/minimal/SimpleMinimalPlayer.js +0 -51
  501. package/src/components/variants/minimal/components/CenterPlayButton.js +0 -8
  502. package/src/components/variants/minimal/components/ControlBar.js +0 -10
  503. package/src/components/variants/minimal/components/EnhancedSettingsMenu.js +0 -68
  504. package/src/components/variants/minimal/components/PlaybackControls.js +0 -9
  505. package/src/components/variants/minimal/components/RightControls.js +0 -40
  506. package/src/components/variants/minimal/components/SeekBar.js +0 -43
  507. package/src/components/variants/minimal/components/SettingsDropdown.js +0 -18
  508. package/src/components/variants/minimal/components/SubtitleDisplay.js +0 -6
  509. package/src/components/variants/minimal/components/TimeDisplay.js +0 -5
  510. package/src/components/variants/minimal/components/VideoElement.js +0 -4
  511. package/src/components/variants/minimal/components/VolumeControl.js +0 -99
  512. package/src/components/variants/minimal/index.js +0 -8
  513. package/src/components/video-player.js +0 -38
  514. package/src/context/error-handling.js +0 -300
  515. package/src/context/media-context.js +0 -121
  516. package/src/context/media-provider.js +0 -164
  517. package/src/context/media-store.js +0 -273
  518. package/src/context/persistence.js +0 -356
  519. package/src/core/events/event-system.js +0 -288
  520. package/src/core/events/hooks.js +0 -198
  521. package/src/core/events/index.js +0 -7
  522. package/src/core/events/middleware.js +0 -219
  523. package/src/core/index.js +0 -15
  524. package/src/core/optimization/bundle-optimizer.js +0 -217
  525. package/src/core/performance/cicd.js +0 -83
  526. package/src/core/performance/index.js +0 -14
  527. package/src/core/performance/media-loading-optimizer.js +0 -404
  528. package/src/core/performance/performance-budgets.js +0 -326
  529. package/src/core/performance/performance-monitor.js +0 -297
  530. package/src/core/performance/performance-testing.js +0 -314
  531. package/src/core/plugins/base-plugin.js +0 -151
  532. package/src/core/plugins/enhanced-plugin-system.js +0 -305
  533. package/src/core/plugins/examples/analytics-plugin.js +0 -191
  534. package/src/core/plugins/index.js +0 -9
  535. package/src/core/plugins/registry.js +0 -261
  536. package/src/core/plugins/types.js +0 -31
  537. package/src/core/plugins/utils.js +0 -274
  538. package/src/core/progressive-loading.js +0 -239
  539. package/src/core/providers/enhanced-hls-provider.js +0 -273
  540. package/src/core/providers/service-provider.js +0 -105
  541. package/src/core/utils.js +0 -21
  542. package/src/features/media-session/media-session-manager.js +0 -331
  543. package/src/features/picture-in-picture/pip-manager.js +0 -353
  544. package/src/features/playlist/playlist-manager.js +0 -475
  545. package/src/features/subtitles/subtitle-manager.js +0 -335
  546. package/src/features/subtitles/subtitle-parser.js +0 -217
  547. package/src/features/thumbnails/thumbnail-generator.js +0 -388
  548. package/src/hooks/accessibility/index.js +0 -4
  549. package/src/hooks/accessibility/use-accessibility-preferences.js +0 -156
  550. package/src/hooks/accessibility/use-focus-management.js +0 -142
  551. package/src/hooks/accessibility/use-keyboard-shortcuts.js +0 -101
  552. package/src/hooks/accessibility/use-screen-reader.js +0 -148
  553. package/src/hooks/core/index.js +0 -19
  554. package/src/hooks/legacy.js +0 -17
  555. package/src/hooks/use-enhanced-media-player.js +0 -395
  556. package/src/hooks/use-intelligent-preloading.js +0 -258
  557. package/src/hooks/use-keyboard-controls.js +0 -83
  558. package/src/hooks/use-media-actions.js +0 -121
  559. package/src/hooks/use-media-metadata.js +0 -74
  560. package/src/hooks/use-media-optimistic.js +0 -205
  561. package/src/hooks/use-media-player.js +0 -251
  562. package/src/hooks/use-media-state.js +0 -162
  563. package/src/hooks/use-memory-optimization.js +0 -288
  564. package/src/hooks/use-optimistic-controls.js +0 -60
  565. package/src/hooks/use-optimized-media.js +0 -211
  566. package/src/hooks/use-touch-gestures.js +0 -289
  567. package/src/hooks/useEnhancedSubtitles.js +0 -205
  568. package/src/hooks/useKeyboardShortcuts.js +0 -59
  569. package/src/hooks/useMediaControls.js +0 -44
  570. package/src/hooks/useScreenshot.js +0 -56
  571. package/src/hooks/useSubtitles.js +0 -73
  572. package/src/hooks/useVideoPlayer.js +0 -184
  573. package/src/icons/components/FullscreenIcon.js +0 -11
  574. package/src/icons/components/SettingsIcon.js +0 -11
  575. package/src/icons/components/animated/LoadingIcon.js +0 -11
  576. package/src/icons/components/animated/PlayPauseIcon.js +0 -9
  577. package/src/icons/components/media/PauseIcon.js +0 -12
  578. package/src/icons/components/media/PlayIcon.js +0 -12
  579. package/src/icons/components/volume/VolumeIcon.js +0 -11
  580. package/src/icons/components/volume/VolumeOffIcon.js +0 -11
  581. package/src/icons/index.js +0 -45
  582. package/src/icons/provider.js +0 -37
  583. package/src/icons/types.js +0 -1
  584. package/src/index-enhanced.js +0 -16
  585. package/src/index-legacy.js +0 -97
  586. package/src/index.js +0 -90
  587. package/src/index.minimal.js +0 -3
  588. package/src/lib/deprecation.js +0 -31
  589. package/src/lib/format-time.js +0 -32
  590. package/src/lib/index.js +0 -3
  591. package/src/lib/utils.js +0 -5
  592. package/src/test/setup.js +0 -65
  593. package/src/types/events.js +0 -2
  594. package/src/types/formats.js +0 -63
  595. package/src/types/index.js +0 -4
@@ -1 +0,0 @@
1
- {"version":3,"file":"core-events-CN0-Vhhq.cjs","sources":["../src/core/events/event-system.ts","../src/core/events/middleware.ts","../src/core/events/hooks.ts","../src/core/events/index.ts"],"sourcesContent":["// Event system types\nexport interface MediaPlayerEvent {\n type: string\n timestamp: number\n target?: string\n detail?: any\n bubbles?: boolean\n cancelable?: boolean\n defaultPrevented?: boolean\n}\n\nexport type EventHandler<T = any> = (event: MediaPlayerEvent & { detail: T }) => void\nexport type EventUnsubscriber = () => void\n\nexport interface EventOptions {\n once?: boolean\n passive?: boolean\n priority?: 'high' | 'normal' | 'low'\n filter?: (event: MediaPlayerEvent) => boolean\n}\n\n// Event categories for organization\nexport type EventCategory = \n | 'media' // Media playback events\n | 'user' // User interaction events \n | 'system' // System/internal events\n | 'plugin' // Plugin events\n | 'error' // Error events\n | 'performance' // Performance events\n\n// Standard media events\nexport interface MediaEvents {\n // Playback events\n 'media:loadstart': { src: string }\n 'media:loadeddata': { duration: number }\n 'media:canplay': {}\n 'media:canplaythrough': {}\n 'media:play': { currentTime: number }\n 'media:pause': { currentTime: number }\n 'media:ended': { duration: number }\n 'media:seeking': { currentTime: number, targetTime: number }\n 'media:seeked': { currentTime: number, previousTime: number }\n 'media:timeupdate': { currentTime: number, duration: number }\n 'media:durationchange': { duration: number }\n 'media:volumechange': { volume: number, muted: boolean }\n 'media:ratechange': { playbackRate: number }\n \n // Loading events\n 'media:loadedmetadata': { src: string }\n 'media:progress': { buffered: TimeRanges }\n 'media:suspend': {}\n 'media:abort': {}\n 'media:error': { error: Error }\n 'media:stalled': {}\n 'media:waiting': {}\n \n // User interaction events \n 'user:click': { x: number, y: number, element: string }\n 'user:hover': { element: string }\n 'user:focus': { element: string }\n 'user:keyboard': { key: string, code: string, altKey: boolean, ctrlKey: boolean, shiftKey: boolean }\n 'user:gesture': { type: string, data: any }\n \n // System events\n 'system:ready': {}\n 'system:resize': { width: number, height: number }\n 'system:fullscreen': { isFullscreen: boolean }\n 'system:pip': { isPictureInPicture: boolean }\n 'system:visibility': { isVisible: boolean }\n \n // Plugin events\n 'plugin:loaded': { name: string }\n 'plugin:enabled': { name: string }\n 'plugin:disabled': { name: string }\n 'plugin:error': { name: string, error: Error }\n \n // Performance events\n 'performance:fps': { fps: number }\n 'performance:memory': { used: number, total: number }\n 'performance:load': { loadTime: number }\n}\n\n// Event bus implementation\nexport class EventBus {\n private listeners = new Map<string, Array<{\n handler: EventHandler\n options: EventOptions\n id: string\n }>>()\n \n private eventQueue: MediaPlayerEvent[] = []\n private isProcessing = false\n private middlewares: Array<(event: MediaPlayerEvent) => MediaPlayerEvent | null> = []\n private eventHistory: MediaPlayerEvent[] = []\n private maxHistorySize = 1000\n\n // Subscribe to events\n on<K extends keyof MediaEvents>(\n type: K,\n handler: EventHandler<MediaEvents[K]>,\n options: EventOptions = {}\n ): EventUnsubscriber {\n return this.addEventListener(type, handler as EventHandler, options)\n }\n\n // Subscribe to events (one-time)\n once<K extends keyof MediaEvents>(\n type: K,\n handler: EventHandler<MediaEvents[K]>,\n options: EventOptions = {}\n ): EventUnsubscriber {\n return this.addEventListener(type, handler as EventHandler, { ...options, once: true })\n }\n\n // Subscribe to events with wildcard support\n addEventListener(\n type: string,\n handler: EventHandler,\n options: EventOptions = {}\n ): EventUnsubscriber {\n const id = this.generateId()\n const listener = { handler, options, id }\n\n if (!this.listeners.has(type)) {\n this.listeners.set(type, [])\n }\n\n const listeners = this.listeners.get(type)!\n \n // Insert based on priority\n const priority = options.priority || 'normal'\n const priorityValue = { high: 2, normal: 1, low: 0 }[priority]\n \n let insertIndex = listeners.length\n for (let i = 0; i < listeners.length; i++) {\n const listener = listeners[i]\n if (!listener) continue\n const listenerPriority = listener.options.priority || 'normal'\n if (priorityValue > { high: 2, normal: 1, low: 0 }[listenerPriority]) {\n insertIndex = i\n break\n }\n }\n \n listeners.splice(insertIndex, 0, listener)\n\n // Return unsubscriber\n return () => {\n const index = listeners.findIndex(l => l.id === id)\n if (index !== -1) {\n listeners.splice(index, 1)\n }\n if (listeners.length === 0) {\n this.listeners.delete(type)\n }\n }\n }\n\n // Remove event listener\n removeEventListener(type: string, handler?: EventHandler): void {\n const listeners = this.listeners.get(type)\n if (!listeners) return\n\n if (handler) {\n const index = listeners.findIndex(l => l.handler === handler)\n if (index !== -1) {\n listeners.splice(index, 1)\n }\n } else {\n this.listeners.delete(type)\n }\n\n if (listeners && listeners.length === 0) {\n this.listeners.delete(type)\n }\n }\n\n // Emit events\n emit<K extends keyof MediaEvents>(\n type: K,\n detail?: MediaEvents[K],\n options?: Partial<MediaPlayerEvent>\n ): boolean {\n const event: MediaPlayerEvent = {\n type,\n timestamp: Date.now(),\n detail,\n bubbles: true,\n cancelable: true,\n defaultPrevented: false,\n ...options\n }\n\n return this.dispatchEvent(event)\n }\n\n // Dispatch event\n dispatchEvent(event: MediaPlayerEvent): boolean {\n // Apply middlewares\n let processedEvent: MediaPlayerEvent | null = event\n for (const middleware of this.middlewares) {\n processedEvent = middleware(processedEvent)\n if (!processedEvent) {\n return false // Event was cancelled by middleware\n }\n }\n\n // Add to history\n this.addToHistory(processedEvent)\n\n // Queue event for processing\n this.eventQueue.push(processedEvent)\n \n if (!this.isProcessing) {\n this.processEventQueue()\n }\n\n return !processedEvent.defaultPrevented\n }\n\n // Process event queue with React 19 concurrent scheduling\n private processEventQueue(): void {\n if (this.isProcessing) return\n\n this.isProcessing = true\n\n // Use scheduler for non-blocking event processing\n const schedule = (typeof window !== 'undefined' && 'scheduler' in window)\n ? (window as any).scheduler.postTask\n : (cb: () => void) => setTimeout(cb, 0)\n\n const processNext = () => {\n if (this.eventQueue.length === 0) {\n this.isProcessing = false\n return\n }\n\n const batchSize = Math.min(this.eventQueue.length, 5) // Process max 5 events per frame\n const events = this.eventQueue.splice(0, batchSize)\n\n // Process events in parallel using Promise.all\n Promise.all(events.map(event => this.processEvent(event).catch(console.error)))\n .then(() => {\n // Schedule next batch in next frame\n schedule(processNext)\n })\n .catch(() => {\n this.isProcessing = false\n })\n }\n\n schedule(processNext)\n }\n\n // Process individual event\n private async processEvent(event: MediaPlayerEvent): Promise<void> {\n const { type } = event\n\n // Get exact matches\n const exactListeners = this.listeners.get(type) || []\n \n // Get wildcard matches\n const wildcardListeners: typeof exactListeners = []\n for (const [pattern, listeners] of this.listeners.entries()) {\n if (pattern.includes('*') && this.matchPattern(type, pattern)) {\n wildcardListeners.push(...listeners)\n }\n }\n\n // Combine and sort by priority\n const allListeners = [...exactListeners, ...wildcardListeners]\n .sort((a, b) => {\n const priorityA = { high: 2, normal: 1, low: 0 }[a.options.priority || 'normal']\n const priorityB = { high: 2, normal: 1, low: 0 }[b.options.priority || 'normal']\n return priorityB - priorityA\n })\n\n // Execute listeners\n const listenersToRemove: string[] = []\n\n for (const listener of allListeners) {\n // Apply filter if present\n if (listener.options.filter && !listener.options.filter(event)) {\n continue\n }\n\n try {\n // Execute handler\n await Promise.resolve(listener.handler(event as any))\n\n // Mark for removal if once\n if (listener.options.once) {\n listenersToRemove.push(listener.id)\n }\n\n // Stop propagation if event was cancelled\n if (event.defaultPrevented && !event.bubbles) {\n break\n }\n } catch (error) {\n console.error(`Error in event handler for ${type}:`, error)\n \n // Log error instead\n console.error(`Event handler error for ${type}:`, error)\n }\n }\n\n // Remove one-time listeners\n for (const id of listenersToRemove) {\n for (const [eventType, listeners] of this.listeners.entries()) {\n const index = listeners.findIndex(l => l.id === id)\n if (index !== -1) {\n listeners.splice(index, 1)\n if (listeners.length === 0) {\n this.listeners.delete(eventType)\n }\n break\n }\n }\n }\n }\n\n // Add middleware\n use(middleware: (event: MediaPlayerEvent) => MediaPlayerEvent | null): () => void {\n this.middlewares.push(middleware)\n return () => {\n const index = this.middlewares.indexOf(middleware)\n if (index !== -1) {\n this.middlewares.splice(index, 1)\n }\n }\n }\n\n // Event history management\n private addToHistory(event: MediaPlayerEvent): void {\n this.eventHistory.push(event)\n if (this.eventHistory.length > this.maxHistorySize) {\n this.eventHistory.shift()\n }\n }\n\n // Get event history\n getHistory(filter?: (event: MediaPlayerEvent) => boolean): MediaPlayerEvent[] {\n return filter ? this.eventHistory.filter(filter) : [...this.eventHistory]\n }\n\n // Clear event history\n clearHistory(): void {\n this.eventHistory = []\n }\n\n // Pattern matching for wildcards\n private matchPattern(eventType: string, pattern: string): boolean {\n const regex = new RegExp(\n '^' + pattern.replace(/\\*/g, '.*').replace(/\\?/g, '.') + '$'\n )\n return regex.test(eventType)\n }\n\n // Generate unique ID\n private generateId(): string {\n return `event_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`\n }\n\n // Get listener count\n getListenerCount(type?: string): number {\n if (type) {\n return this.listeners.get(type)?.length || 0\n }\n return Array.from(this.listeners.values()).reduce((sum, listeners) => sum + listeners.length, 0)\n }\n\n // Get all event types\n getEventTypes(): string[] {\n return Array.from(this.listeners.keys())\n }\n\n // Clear all listeners\n removeAllListeners(type?: string): void {\n if (type) {\n this.listeners.delete(type)\n } else {\n this.listeners.clear()\n }\n }\n\n // Destroy event bus\n destroy(): void {\n this.listeners.clear()\n this.eventQueue = []\n this.middlewares = []\n this.eventHistory = []\n this.isProcessing = false\n }\n}\n\n// Default event bus instance\nexport const defaultEventBus = new EventBus()\n\n// Event delegation helper\nexport class EventDelegator {\n private eventBus: EventBus\n private element: HTMLElement\n private delegatedEvents = new Set<string>()\n\n constructor(eventBus: EventBus, element: HTMLElement) {\n this.eventBus = eventBus\n this.element = element\n }\n\n // Delegate DOM events to event bus\n delegate(domEvent: string, mediaEvent?: string): void {\n if (this.delegatedEvents.has(domEvent)) return\n\n const handler = (e: Event) => {\n this.eventBus.emit(mediaEvent || `dom:${domEvent}` as any, {\n originalEvent: e,\n target: (e.target as HTMLElement)?.tagName.toLowerCase(),\n currentTarget: (e.currentTarget as HTMLElement)?.tagName.toLowerCase()\n })\n }\n\n this.element.addEventListener(domEvent, handler, { passive: true })\n this.delegatedEvents.add(domEvent)\n }\n\n // Setup common delegations\n setupCommonDelegations(): void {\n this.delegate('click', 'user:click')\n this.delegate('mouseenter', 'user:hover')\n this.delegate('mouseleave', 'user:hover')\n this.delegate('focus', 'user:focus')\n this.delegate('blur', 'user:focus')\n this.delegate('keydown', 'user:keyboard')\n this.delegate('keyup', 'user:keyboard')\n }\n\n destroy(): void {\n this.delegatedEvents.clear()\n }\n}\n\n","import type { MediaPlayerEvent } from './event-system'\n\n// Middleware function type\nexport type EventMiddleware = (event: MediaPlayerEvent) => MediaPlayerEvent | null\n\n// Common middleware implementations\nexport const eventMiddlewares = {\n // Logging middleware\n logger: (prefix = '[Event]'): EventMiddleware => (event) => {\n if (process.env.NODE_ENV === 'development') {\n console.log(`${prefix} ${event.type}`, event.detail)\n }\n return event\n },\n\n // Throttling middleware\n throttle: (eventTypes: string[], delay = 100): EventMiddleware => {\n const lastTimes = new Map<string, number>()\n \n return (event) => {\n if (eventTypes.includes(event.type)) {\n const lastTime = lastTimes.get(event.type) || 0\n const now = event.timestamp\n \n if (now - lastTime < delay) {\n return null // Throttle this event\n }\n \n lastTimes.set(event.type, now)\n }\n \n return event\n }\n },\n\n // Debouncing middleware\n debounce: (eventTypes: string[], delay = 100): EventMiddleware => {\n const timeouts = new Map<string, NodeJS.Timeout>()\n const eventQueue = new Map<string, MediaPlayerEvent>()\n \n return (event) => {\n if (eventTypes.includes(event.type)) {\n // Clear existing timeout\n const existingTimeout = timeouts.get(event.type)\n if (existingTimeout) {\n clearTimeout(existingTimeout)\n }\n \n // Store the latest event\n eventQueue.set(event.type, event)\n \n // Set new timeout\n const timeout = setTimeout(() => {\n const queuedEvent = eventQueue.get(event.type)\n if (queuedEvent) {\n // Process the debounced event\n // Note: This is a simplified approach - in a real implementation,\n // you'd need to re-inject the event into the processing pipeline\n eventQueue.delete(event.type)\n timeouts.delete(event.type)\n }\n }, delay)\n \n timeouts.set(event.type, timeout)\n \n return null // Don't process immediately\n }\n \n return event\n }\n },\n\n // Filtering middleware\n filter: (predicate: (event: MediaPlayerEvent) => boolean): EventMiddleware => (event) => {\n return predicate(event) ? event : null\n },\n\n // Event transformation middleware\n transform: (transformer: (event: MediaPlayerEvent) => MediaPlayerEvent): EventMiddleware => (event) => {\n try {\n return transformer(event)\n } catch (error) {\n console.error('Error in event transformer:', error)\n return event\n }\n },\n\n // Performance monitoring middleware\n performance: (): EventMiddleware => {\n const metrics = new Map<string, { count: number; totalTime: number }>()\n \n return (event) => {\n const startTime = performance.now()\n \n // Update metrics\n const existing = metrics.get(event.type) || { count: 0, totalTime: 0 }\n existing.count++\n existing.totalTime += performance.now() - startTime\n metrics.set(event.type, existing)\n \n // Log metrics periodically (every 100 events)\n if (existing.count % 100 === 0) {\n const avgTime = existing.totalTime / existing.count\n console.log(`Event ${event.type}: ${existing.count} calls, avg ${avgTime.toFixed(2)}ms`)\n }\n \n return event\n }\n },\n\n // Error handling middleware\n errorHandler: (onError?: (error: Error, event: MediaPlayerEvent) => void): EventMiddleware => (event) => {\n try {\n // Validate event structure\n if (!event.type || typeof event.type !== 'string') {\n throw new Error('Invalid event: missing or invalid type')\n }\n \n if (!event.timestamp || typeof event.timestamp !== 'number') {\n throw new Error('Invalid event: missing or invalid timestamp')\n }\n \n return event\n } catch (error) {\n if (onError) {\n onError(error as Error, event)\n } else {\n console.error('Event validation error:', error)\n }\n return null\n }\n },\n\n // Security middleware (prevent certain events or sanitize data)\n security: (options: {\n blockedEventTypes?: string[]\n sanitizeDetail?: boolean\n maxDetailSize?: number\n } = {}): EventMiddleware => (event) => {\n const { blockedEventTypes = [], sanitizeDetail = true, maxDetailSize = 10000 } = options\n \n // Block certain event types\n if (blockedEventTypes.includes(event.type)) {\n console.warn(`Blocked event type: ${event.type}`)\n return null\n }\n \n // Sanitize detail if needed\n if (sanitizeDetail && event.detail) {\n try {\n const detailStr = JSON.stringify(event.detail)\n if (detailStr.length > maxDetailSize) {\n console.warn(`Event detail too large, truncating: ${event.type}`)\n event.detail = { ...event.detail, _truncated: true }\n }\n } catch (error) {\n console.warn(`Failed to serialize event detail: ${event.type}`)\n event.detail = { _serializationError: true }\n }\n }\n \n return event\n },\n\n // Conditional middleware\n when: (condition: (event: MediaPlayerEvent) => boolean, middleware: EventMiddleware): EventMiddleware => (event) => {\n return condition(event) ? middleware(event) : event\n },\n\n // Chain multiple middleware\n chain: (...middlewares: EventMiddleware[]): EventMiddleware => (event) => {\n let currentEvent: MediaPlayerEvent | null = event\n \n for (const middleware of middlewares) {\n if (currentEvent === null) break\n currentEvent = middleware(currentEvent)\n }\n \n return currentEvent\n }\n}\n\n// Middleware builder class\nexport class MiddlewareBuilder {\n private middlewares: EventMiddleware[] = []\n\n // Add middleware\n use(middleware: EventMiddleware): this {\n this.middlewares.push(middleware)\n return this\n }\n\n // Add logging\n log(prefix?: string): this {\n return this.use(eventMiddlewares.logger(prefix))\n }\n\n // Add throttling\n throttle(eventTypes: string[], delay?: number): this {\n return this.use(eventMiddlewares.throttle(eventTypes, delay))\n }\n\n // Add debouncing\n debounce(eventTypes: string[], delay?: number): this {\n return this.use(eventMiddlewares.debounce(eventTypes, delay))\n }\n\n // Add filtering\n filter(predicate: (event: MediaPlayerEvent) => boolean): this {\n return this.use(eventMiddlewares.filter(predicate))\n }\n\n // Add transformation\n transform(transformer: (event: MediaPlayerEvent) => MediaPlayerEvent): this {\n return this.use(eventMiddlewares.transform(transformer))\n }\n\n // Add performance monitoring\n performance(): this {\n return this.use(eventMiddlewares.performance())\n }\n\n // Add error handling\n errorHandler(onError?: (error: Error, event: MediaPlayerEvent) => void): this {\n return this.use(eventMiddlewares.errorHandler(onError))\n }\n\n // Add security\n security(options?: Parameters<typeof eventMiddlewares.security>[0]): this {\n return this.use(eventMiddlewares.security(options))\n }\n\n // Add conditional middleware\n when(condition: (event: MediaPlayerEvent) => boolean, middleware: EventMiddleware): this {\n return this.use(eventMiddlewares.when(condition, middleware))\n }\n\n // Build the final middleware\n build(): EventMiddleware {\n return eventMiddlewares.chain(...this.middlewares)\n }\n}\n\n// Helper to create middleware builder\nexport const createMiddleware = () => new MiddlewareBuilder()\n\n// Export commonly used middleware combinations\nexport const commonMiddlewares = {\n // Development middleware stack\n development: () => createMiddleware()\n .log('[Dev Event]')\n .performance()\n .errorHandler()\n .build(),\n\n // Production middleware stack\n production: () => createMiddleware()\n .security()\n .errorHandler()\n .throttle(['media:timeupdate', 'user:mousemove'], 16) // ~60fps\n .build(),\n\n // Testing middleware stack\n testing: () => createMiddleware()\n .errorHandler((error, event) => {\n throw new Error(`Event error in test: ${error.message} for event ${event.type}`)\n })\n .build()\n}","import React, { useEffect, useRef, useCallback, useMemo, useState } from 'react'\nimport { EventBus, type EventHandler, type EventUnsubscriber, type EventOptions, type MediaEvents } from './event-system'\n\n// Hook to use event bus with React\nexport function useEventBus(eventBus?: EventBus): EventBus {\n const eventBusRef = useRef<EventBus | null>(null)\n \n if (!eventBusRef.current) {\n eventBusRef.current = eventBus || new EventBus()\n }\n \n useEffect(() => {\n const currentEventBus = eventBusRef.current!\n \n return () => {\n // Cleanup on unmount\n currentEventBus.destroy()\n }\n }, [])\n \n return eventBusRef.current\n}\n\n// Hook to listen to events\nexport function useEventListener<K extends keyof MediaEvents>(\n eventBus: EventBus,\n type: K,\n handler: EventHandler<MediaEvents[K]>,\n options?: EventOptions,\n deps?: React.DependencyList\n): void {\n const handlerRef = useRef(handler)\n const optionsRef = useRef(options)\n \n // Update refs when dependencies change\n useEffect(() => {\n handlerRef.current = handler\n optionsRef.current = options\n })\n \n useEffect(() => {\n const unsubscribe = eventBus.on(type, handlerRef.current, optionsRef.current)\n return unsubscribe\n }, [eventBus, type, ...(deps || [])])\n}\n\n// Hook to emit events\nexport function useEventEmitter(eventBus: EventBus) {\n return useCallback(<K extends keyof MediaEvents>(\n type: K,\n detail?: MediaEvents[K],\n options?: Partial<MediaEvents[K]>\n ) => {\n return eventBus.emit(type, detail, options)\n }, [eventBus])\n}\n\n// Hook for one-time event listeners\nexport function useEventOnce<K extends keyof MediaEvents>(\n eventBus: EventBus,\n type: K,\n handler: EventHandler<MediaEvents[K]>,\n deps?: React.DependencyList\n): void {\n useEventListener(eventBus, type, handler, { once: true }, deps)\n}\n\n// Hook to create event handlers with automatic cleanup\nexport function useEventHandlers(eventBus: EventBus) {\n const handlersRef = useRef<EventUnsubscriber[]>([])\n \n const addHandler = useCallback(<K extends keyof MediaEvents>(\n type: K,\n handler: EventHandler<MediaEvents[K]>,\n options?: EventOptions\n ) => {\n const unsubscribe = eventBus.on(type, handler, options)\n handlersRef.current.push(unsubscribe)\n return unsubscribe\n }, [eventBus])\n \n const removeAllHandlers = useCallback(() => {\n handlersRef.current.forEach(unsubscribe => unsubscribe())\n handlersRef.current = []\n }, [])\n \n useEffect(() => {\n return removeAllHandlers\n }, [removeAllHandlers])\n \n return {\n on: addHandler,\n removeAll: removeAllHandlers\n }\n}\n\n// Hook for event history\nexport function useEventHistory(\n eventBus: EventBus,\n filter?: (event: any) => boolean,\n maxSize = 100\n) {\n const historyRef = useRef<any[]>([])\n \n useEffect(() => {\n const unsubscribe = eventBus.addEventListener('*', (event) => {\n if (!filter || filter(event)) {\n historyRef.current.push(event)\n \n // Limit history size\n if (historyRef.current.length > maxSize) {\n historyRef.current.shift()\n }\n }\n })\n \n return unsubscribe\n }, [eventBus, filter, maxSize])\n \n const clearHistory = useCallback(() => {\n historyRef.current = []\n }, [])\n \n return {\n history: historyRef.current,\n clearHistory\n }\n}\n\n// Hook for event metrics/analytics\nexport function useEventMetrics(eventBus: EventBus) {\n const metricsRef = useRef<Map<string, {\n count: number\n lastTimestamp: number\n frequency: number // events per second\n }>>(new Map())\n \n useEffect(() => {\n const updateMetrics = (event: any) => {\n const existing = metricsRef.current.get(event.type) || {\n count: 0,\n lastTimestamp: 0,\n frequency: 0\n }\n \n existing.count++\n \n if (existing.lastTimestamp > 0) {\n const timeDiff = (event.timestamp - existing.lastTimestamp) / 1000 // seconds\n existing.frequency = timeDiff > 0 ? 1 / timeDiff : 0\n }\n \n existing.lastTimestamp = event.timestamp\n metricsRef.current.set(event.type, existing)\n }\n \n const unsubscribe = eventBus.addEventListener('*', updateMetrics)\n return unsubscribe\n }, [eventBus])\n \n const getMetrics = useCallback(() => {\n return Object.fromEntries(metricsRef.current.entries())\n }, [])\n \n const resetMetrics = useCallback(() => {\n metricsRef.current.clear()\n }, [])\n \n return {\n getMetrics,\n resetMetrics\n }\n}\n\n// Hook for event debugging\nexport function useEventDebugger(\n eventBus: EventBus, \n options: {\n logEvents?: boolean\n logMetrics?: boolean\n filterEventTypes?: string[]\n } = {}\n) {\n const { logEvents = true, logMetrics = false, filterEventTypes } = options\n \n useEffect(() => {\n if (!logEvents) return\n \n const unsubscribe = eventBus.addEventListener('*', (event) => {\n if (filterEventTypes && !filterEventTypes.includes(event.type)) {\n return\n }\n \n console.group(`🎯 Event: ${event.type}`)\n console.log('Timestamp:', new Date(event.timestamp).toISOString())\n console.log('Detail:', event.detail)\n console.log('Bubbles:', event.bubbles)\n console.log('Cancelable:', event.cancelable)\n console.groupEnd()\n })\n \n return unsubscribe\n }, [eventBus, logEvents, filterEventTypes])\n \n useEffect(() => {\n if (!logMetrics) return\n \n const interval = setInterval(() => {\n const listenerCount = eventBus.getListenerCount()\n const eventTypes = eventBus.getEventTypes()\n \n console.group('📊 Event Metrics')\n console.log('Total Listeners:', listenerCount)\n console.log('Event Types:', eventTypes.length)\n console.log('Active Types:', eventTypes)\n console.groupEnd()\n }, 5000)\n \n return () => clearInterval(interval)\n }, [eventBus, logMetrics])\n}\n\n// Hook for conditional event handling\nexport function useConditionalEventListener<K extends keyof MediaEvents>(\n eventBus: EventBus,\n type: K,\n handler: EventHandler<MediaEvents[K]>,\n condition: boolean | (() => boolean),\n options?: EventOptions,\n deps?: React.DependencyList\n): void {\n const shouldListen = useMemo(() => {\n return typeof condition === 'function' ? condition() : condition\n }, [condition, ...(deps || [])])\n \n useEffect(() => {\n if (!shouldListen) return\n \n const unsubscribe = eventBus.on(type, handler, options)\n return unsubscribe\n }, [eventBus, type, shouldListen, ...(deps || [])])\n}\n\n// Hook for event state synchronization\nexport function useEventState<T>(\n eventBus: EventBus,\n initialValue: T,\n eventMapping: Record<string, (detail: any, currentValue: T) => T>\n) {\n const [state, setState] = useState<T>(initialValue)\n \n useEffect(() => {\n const unsubscribers: EventUnsubscriber[] = []\n \n Object.entries(eventMapping).forEach(([eventType, updater]) => {\n const unsubscribe = eventBus.addEventListener(eventType, (event) => {\n setState(current => updater(event.detail, current))\n })\n unsubscribers.push(unsubscribe)\n })\n \n return () => {\n unsubscribers.forEach(unsubscribe => unsubscribe())\n }\n }, [eventBus, eventMapping])\n \n return state\n}\n\n// Hook for creating event-driven effects\nexport function useEventEffect<K extends keyof MediaEvents>(\n eventBus: EventBus,\n type: K,\n effect: (detail: MediaEvents[K]) => void | (() => void),\n deps?: React.DependencyList\n): void {\n const cleanupRef = useRef<(() => void) | void>(undefined)\n \n useEventListener(\n eventBus,\n type,\n useCallback((event) => {\n // Clean up previous effect\n if (typeof cleanupRef.current === 'function') {\n cleanupRef.current()\n }\n \n // Run new effect\n cleanupRef.current = effect(event.detail)\n }, deps || []),\n undefined,\n deps\n )\n \n useEffect(() => {\n return () => {\n if (typeof cleanupRef.current === 'function') {\n cleanupRef.current()\n }\n }\n }, [])\n}","// Event system exports\nexport {\n EventBus,\n EventDelegator,\n defaultEventBus\n} from './event-system'\n\nexport type {\n MediaPlayerEvent,\n EventHandler,\n EventUnsubscriber,\n EventOptions,\n EventCategory,\n MediaEvents\n} from './event-system'\n\n// Event utilities\nexport * from './middleware'\nexport * from './hooks'\n\n// Version\nexport const EVENT_SYSTEM_VERSION = '1.0.0'"],"names":["EventBus","__publicField","type","handler","options","id","listener","listeners","priority","priorityValue","insertIndex","i","listenerPriority","index","l","detail","event","processedEvent","middleware","schedule","cb","processNext","batchSize","events","exactListeners","wildcardListeners","pattern","allListeners","a","b","priorityA","listenersToRemove","error","eventType","filter","sum","defaultEventBus","EventDelegator","eventBus","element","domEvent","mediaEvent","e","eventMiddlewares","prefix","eventTypes","delay","lastTimes","lastTime","now","timeouts","eventQueue","existingTimeout","timeout","predicate","transformer","metrics","startTime","existing","avgTime","onError","blockedEventTypes","sanitizeDetail","maxDetailSize","condition","middlewares","currentEvent","MiddlewareBuilder","createMiddleware","commonMiddlewares","useEventBus","eventBusRef","useRef","useEffect","currentEventBus","useEventListener","deps","handlerRef","optionsRef","useEventEmitter","useCallback","useEventOnce","useEventHandlers","handlersRef","addHandler","unsubscribe","removeAllHandlers","useEventHistory","maxSize","historyRef","clearHistory","useEventMetrics","metricsRef","updateMetrics","timeDiff","getMetrics","resetMetrics","useEventDebugger","logEvents","logMetrics","filterEventTypes","interval","listenerCount","useConditionalEventListener","shouldListen","useMemo","useEventState","initialValue","eventMapping","state","setState","useState","unsubscribers","updater","current","useEventEffect","effect","cleanupRef","EVENT_SYSTEM_VERSION"],"mappings":"0MAmFO,MAAMA,CAAS,CAAf,cACGC,EAAA,qBAAgB,KAMhBA,EAAA,kBAAiC,CAAA,GACjCA,EAAA,oBAAe,IACfA,EAAA,mBAA2E,CAAA,GAC3EA,EAAA,oBAAmC,CAAA,GACnCA,EAAA,sBAAiB,KAGzB,GACEC,EACAC,EACAC,EAAwB,CAAA,EACL,CACnB,OAAO,KAAK,iBAAiBF,EAAMC,EAAyBC,CAAO,CACrE,CAGA,KACEF,EACAC,EACAC,EAAwB,CAAA,EACL,CACnB,OAAO,KAAK,iBAAiBF,EAAMC,EAAyB,CAAE,GAAGC,EAAS,KAAM,GAAM,CACxF,CAGA,iBACEF,EACAC,EACAC,EAAwB,CAAA,EACL,CACnB,MAAMC,EAAK,KAAK,WAAA,EACVC,EAAW,CAAE,QAAAH,EAAS,QAAAC,EAAS,GAAAC,CAAA,EAEhC,KAAK,UAAU,IAAIH,CAAI,GAC1B,KAAK,UAAU,IAAIA,EAAM,CAAA,CAAE,EAG7B,MAAMK,EAAY,KAAK,UAAU,IAAIL,CAAI,EAGnCM,EAAWJ,EAAQ,UAAY,SAC/BK,EAAgB,CAAE,KAAM,EAAG,OAAQ,EAAG,IAAK,CAAA,EAAID,CAAQ,EAE7D,IAAIE,EAAcH,EAAU,OAC5B,QAASI,EAAI,EAAGA,EAAIJ,EAAU,OAAQI,IAAK,CACzC,MAAML,EAAWC,EAAUI,CAAC,EAC5B,GAAI,CAACL,EAAU,SACf,MAAMM,EAAmBN,EAAS,QAAQ,UAAY,SACtD,GAAIG,EAAgB,CAAE,KAAM,EAAG,OAAQ,EAAG,IAAK,GAAIG,CAAgB,EAAG,CACpEF,EAAcC,EACd,KACF,CACF,CAEA,OAAAJ,EAAU,OAAOG,EAAa,EAAGJ,CAAQ,EAGlC,IAAM,CACX,MAAMO,EAAQN,EAAU,UAAUO,GAAKA,EAAE,KAAOT,CAAE,EAC9CQ,IAAU,IACZN,EAAU,OAAOM,EAAO,CAAC,EAEvBN,EAAU,SAAW,GACvB,KAAK,UAAU,OAAOL,CAAI,CAE9B,CACF,CAGA,oBAAoBA,EAAcC,EAA8B,CAC9D,MAAMI,EAAY,KAAK,UAAU,IAAIL,CAAI,EACzC,GAAKK,EAEL,IAAIJ,EAAS,CACX,MAAMU,EAAQN,EAAU,UAAUO,GAAKA,EAAE,UAAYX,CAAO,EACxDU,IAAU,IACZN,EAAU,OAAOM,EAAO,CAAC,CAE7B,MACE,KAAK,UAAU,OAAOX,CAAI,EAGxBK,GAAaA,EAAU,SAAW,GACpC,KAAK,UAAU,OAAOL,CAAI,EAE9B,CAGA,KACEA,EACAa,EACAX,EACS,CACT,MAAMY,EAA0B,CAC9B,KAAAd,EACA,UAAW,KAAK,IAAA,EAChB,OAAAa,EACA,QAAS,GACT,WAAY,GACZ,iBAAkB,GAClB,GAAGX,CAAA,EAGL,OAAO,KAAK,cAAcY,CAAK,CACjC,CAGA,cAAcA,EAAkC,CAE9C,IAAIC,EAA0CD,EAC9C,UAAWE,KAAc,KAAK,YAE5B,GADAD,EAAiBC,EAAWD,CAAc,EACtC,CAACA,EACH,MAAO,GAKX,YAAK,aAAaA,CAAc,EAGhC,KAAK,WAAW,KAAKA,CAAc,EAE9B,KAAK,cACR,KAAK,kBAAA,EAGA,CAACA,EAAe,gBACzB,CAGQ,mBAA0B,CAChC,GAAI,KAAK,aAAc,OAEvB,KAAK,aAAe,GAGpB,MAAME,EAAY,OAAO,OAAW,KAAe,cAAe,OAC7D,OAAe,UAAU,SACzBC,GAAmB,WAAWA,EAAI,CAAC,EAElCC,EAAc,IAAM,CACxB,GAAI,KAAK,WAAW,SAAW,EAAG,CAChC,KAAK,aAAe,GACpB,MACF,CAEA,MAAMC,EAAY,KAAK,IAAI,KAAK,WAAW,OAAQ,CAAC,EAC9CC,EAAS,KAAK,WAAW,OAAO,EAAGD,CAAS,EAGlD,QAAQ,IAAIC,EAAO,IAAIP,GAAS,KAAK,aAAaA,CAAK,EAAE,MAAM,QAAQ,KAAK,CAAC,CAAC,EAC3E,KAAK,IAAM,CAEVG,EAASE,CAAW,CACtB,CAAC,EACA,MAAM,IAAM,CACX,KAAK,aAAe,EACtB,CAAC,CACL,EAEAF,EAASE,CAAW,CACtB,CAGA,MAAc,aAAaL,EAAwC,CACjE,KAAM,CAAE,KAAAd,GAASc,EAGXQ,EAAiB,KAAK,UAAU,IAAItB,CAAI,GAAK,CAAA,EAG7CuB,EAA2C,CAAA,EACjD,SAAW,CAACC,EAASnB,CAAS,IAAK,KAAK,UAAU,UAC5CmB,EAAQ,SAAS,GAAG,GAAK,KAAK,aAAaxB,EAAMwB,CAAO,GAC1DD,EAAkB,KAAK,GAAGlB,CAAS,EAKvC,MAAMoB,EAAe,CAAC,GAAGH,EAAgB,GAAGC,CAAiB,EAC1D,KAAK,CAACG,EAAGC,IAAM,CACd,MAAMC,EAAY,CAAE,KAAM,EAAG,OAAQ,EAAG,IAAK,CAAA,EAAIF,EAAE,QAAQ,UAAY,QAAQ,EAE/E,MADkB,CAAE,KAAM,EAAG,OAAQ,EAAG,IAAK,CAAA,EAAIC,EAAE,QAAQ,UAAY,QAAQ,EAC5DC,CACrB,CAAC,EAGGC,EAA8B,CAAA,EAEpC,UAAWzB,KAAYqB,EAErB,GAAI,EAAArB,EAAS,QAAQ,QAAU,CAACA,EAAS,QAAQ,OAAOU,CAAK,GAI7D,GAAI,CAUF,GARA,MAAM,QAAQ,QAAQV,EAAS,QAAQU,CAAY,CAAC,EAGhDV,EAAS,QAAQ,MACnByB,EAAkB,KAAKzB,EAAS,EAAE,EAIhCU,EAAM,kBAAoB,CAACA,EAAM,QACnC,KAEJ,OAASgB,EAAO,CACd,QAAQ,MAAM,8BAA8B9B,CAAI,IAAK8B,CAAK,EAG1D,QAAQ,MAAM,2BAA2B9B,CAAI,IAAK8B,CAAK,CACzD,CAIF,UAAW3B,KAAM0B,EACf,SAAW,CAACE,EAAW1B,CAAS,IAAK,KAAK,UAAU,UAAW,CAC7D,MAAMM,EAAQN,EAAU,UAAUO,GAAKA,EAAE,KAAOT,CAAE,EAClD,GAAIQ,IAAU,GAAI,CAChBN,EAAU,OAAOM,EAAO,CAAC,EACrBN,EAAU,SAAW,GACvB,KAAK,UAAU,OAAO0B,CAAS,EAEjC,KACF,CACF,CAEJ,CAGA,IAAIf,EAA8E,CAChF,YAAK,YAAY,KAAKA,CAAU,EACzB,IAAM,CACX,MAAML,EAAQ,KAAK,YAAY,QAAQK,CAAU,EAC7CL,IAAU,IACZ,KAAK,YAAY,OAAOA,EAAO,CAAC,CAEpC,CACF,CAGQ,aAAaG,EAA+B,CAClD,KAAK,aAAa,KAAKA,CAAK,EACxB,KAAK,aAAa,OAAS,KAAK,gBAClC,KAAK,aAAa,MAAA,CAEtB,CAGA,WAAWkB,EAAmE,CAC5E,OAAOA,EAAS,KAAK,aAAa,OAAOA,CAAM,EAAI,CAAC,GAAG,KAAK,YAAY,CAC1E,CAGA,cAAqB,CACnB,KAAK,aAAe,CAAA,CACtB,CAGQ,aAAaD,EAAmBP,EAA0B,CAIhE,OAHc,IAAI,OAChB,IAAMA,EAAQ,QAAQ,MAAO,IAAI,EAAE,QAAQ,MAAO,GAAG,EAAI,GAAA,EAE9C,KAAKO,CAAS,CAC7B,CAGQ,YAAqB,CAC3B,MAAO,SAAS,KAAK,IAAA,CAAK,IAAI,KAAK,OAAA,EAAS,SAAS,EAAE,EAAE,OAAO,EAAG,CAAC,CAAC,EACvE,CAGA,iBAAiB/B,EAAuB,CACtC,OAAIA,EACK,KAAK,UAAU,IAAIA,CAAI,GAAG,QAAU,EAEtC,MAAM,KAAK,KAAK,UAAU,QAAQ,EAAE,OAAO,CAACiC,EAAK5B,IAAc4B,EAAM5B,EAAU,OAAQ,CAAC,CACjG,CAGA,eAA0B,CACxB,OAAO,MAAM,KAAK,KAAK,UAAU,MAAM,CACzC,CAGA,mBAAmBL,EAAqB,CAClCA,EACF,KAAK,UAAU,OAAOA,CAAI,EAE1B,KAAK,UAAU,MAAA,CAEnB,CAGA,SAAgB,CACd,KAAK,UAAU,MAAA,EACf,KAAK,WAAa,CAAA,EAClB,KAAK,YAAc,CAAA,EACnB,KAAK,aAAe,CAAA,EACpB,KAAK,aAAe,EACtB,CACF,CAGO,MAAMkC,EAAkB,IAAIpC,EAG5B,MAAMqC,CAAe,CAK1B,YAAYC,EAAoBC,EAAsB,CAJ9CtC,EAAA,iBACAA,EAAA,gBACAA,EAAA,2BAAsB,KAG5B,KAAK,SAAWqC,EAChB,KAAK,QAAUC,CACjB,CAGA,SAASC,EAAkBC,EAA2B,CACpD,GAAI,KAAK,gBAAgB,IAAID,CAAQ,EAAG,OAExC,MAAMrC,EAAWuC,GAAa,CAC5B,KAAK,SAAS,KAAKD,GAAc,OAAOD,CAAQ,GAAW,CACzD,cAAeE,EACf,OAASA,EAAE,QAAwB,QAAQ,YAAA,EAC3C,cAAgBA,EAAE,eAA+B,QAAQ,YAAA,CAAY,CACtE,CACH,EAEA,KAAK,QAAQ,iBAAiBF,EAAUrC,EAAS,CAAE,QAAS,GAAM,EAClE,KAAK,gBAAgB,IAAIqC,CAAQ,CACnC,CAGA,wBAA+B,CAC7B,KAAK,SAAS,QAAS,YAAY,EACnC,KAAK,SAAS,aAAc,YAAY,EACxC,KAAK,SAAS,aAAc,YAAY,EACxC,KAAK,SAAS,QAAS,YAAY,EACnC,KAAK,SAAS,OAAQ,YAAY,EAClC,KAAK,SAAS,UAAW,eAAe,EACxC,KAAK,SAAS,QAAS,eAAe,CACxC,CAEA,SAAgB,CACd,KAAK,gBAAgB,MAAA,CACvB,CACF,CClbO,MAAMG,EAAmB,CAE9B,OAAQ,CAACC,EAAS,YAAgC5B,IAC5C,QAAQ,IAAI,WAAa,eAC3B,QAAQ,IAAI,GAAG4B,CAAM,IAAI5B,EAAM,IAAI,GAAIA,EAAM,MAAM,EAE9CA,GAIT,SAAU,CAAC6B,EAAsBC,EAAQ,MAAyB,CAChE,MAAMC,MAAgB,IAEtB,OAAQ/B,GAAU,CAChB,GAAI6B,EAAW,SAAS7B,EAAM,IAAI,EAAG,CACnC,MAAMgC,EAAWD,EAAU,IAAI/B,EAAM,IAAI,GAAK,EACxCiC,EAAMjC,EAAM,UAElB,GAAIiC,EAAMD,EAAWF,EACnB,OAAO,KAGTC,EAAU,IAAI/B,EAAM,KAAMiC,CAAG,CAC/B,CAEA,OAAOjC,CACT,CACF,EAGA,SAAU,CAAC6B,EAAsBC,EAAQ,MAAyB,CAChE,MAAMI,MAAe,IACfC,MAAiB,IAEvB,OAAQnC,GAAU,CAChB,GAAI6B,EAAW,SAAS7B,EAAM,IAAI,EAAG,CAEnC,MAAMoC,EAAkBF,EAAS,IAAIlC,EAAM,IAAI,EAC3CoC,GACF,aAAaA,CAAe,EAI9BD,EAAW,IAAInC,EAAM,KAAMA,CAAK,EAGhC,MAAMqC,EAAU,WAAW,IAAM,CACXF,EAAW,IAAInC,EAAM,IAAI,IAK3CmC,EAAW,OAAOnC,EAAM,IAAI,EAC5BkC,EAAS,OAAOlC,EAAM,IAAI,EAE9B,EAAG8B,CAAK,EAER,OAAAI,EAAS,IAAIlC,EAAM,KAAMqC,CAAO,EAEzB,IACT,CAEA,OAAOrC,CACT,CACF,EAGA,OAASsC,GAAsEtC,GACtEsC,EAAUtC,CAAK,EAAIA,EAAQ,KAIpC,UAAYuC,GAAiFvC,GAAU,CACrG,GAAI,CACF,OAAOuC,EAAYvC,CAAK,CAC1B,OAASgB,EAAO,CACd,eAAQ,MAAM,8BAA+BA,CAAK,EAC3ChB,CACT,CACF,EAGA,YAAa,IAAuB,CAClC,MAAMwC,MAAc,IAEpB,OAAQxC,GAAU,CAChB,MAAMyC,EAAY,YAAY,IAAA,EAGxBC,EAAWF,EAAQ,IAAIxC,EAAM,IAAI,GAAK,CAAE,MAAO,EAAG,UAAW,CAAA,EAMnE,GALA0C,EAAS,QACTA,EAAS,WAAa,YAAY,IAAA,EAAQD,EAC1CD,EAAQ,IAAIxC,EAAM,KAAM0C,CAAQ,EAG5BA,EAAS,MAAQ,MAAQ,EAAG,CAC9B,MAAMC,EAAUD,EAAS,UAAYA,EAAS,MAC9C,QAAQ,IAAI,SAAS1C,EAAM,IAAI,KAAK0C,EAAS,KAAK,eAAeC,EAAQ,QAAQ,CAAC,CAAC,IAAI,CACzF,CAEA,OAAO3C,CACT,CACF,EAGA,aAAe4C,GAAgF5C,GAAU,CACvG,GAAI,CAEF,GAAI,CAACA,EAAM,MAAQ,OAAOA,EAAM,MAAS,SACvC,MAAM,IAAI,MAAM,wCAAwC,EAG1D,GAAI,CAACA,EAAM,WAAa,OAAOA,EAAM,WAAc,SACjD,MAAM,IAAI,MAAM,6CAA6C,EAG/D,OAAOA,CACT,OAASgB,EAAO,CACd,OAAI4B,EACFA,EAAQ5B,EAAgBhB,CAAK,EAE7B,QAAQ,MAAM,0BAA2BgB,CAAK,EAEzC,IACT,CACF,EAGA,SAAU,CAAC5B,EAIP,CAAA,IAAyBY,GAAU,CACrC,KAAM,CAAE,kBAAA6C,EAAoB,GAAI,eAAAC,EAAiB,GAAM,cAAAC,EAAgB,KAAU3D,EAGjF,GAAIyD,EAAkB,SAAS7C,EAAM,IAAI,EACvC,eAAQ,KAAK,uBAAuBA,EAAM,IAAI,EAAE,EACzC,KAIT,GAAI8C,GAAkB9C,EAAM,OAC1B,GAAI,CACgB,KAAK,UAAUA,EAAM,MAAM,EAC/B,OAAS+C,IACrB,QAAQ,KAAK,uCAAuC/C,EAAM,IAAI,EAAE,EAChEA,EAAM,OAAS,CAAE,GAAGA,EAAM,OAAQ,WAAY,EAAA,EAElD,MAAgB,CACd,QAAQ,KAAK,qCAAqCA,EAAM,IAAI,EAAE,EAC9DA,EAAM,OAAS,CAAE,oBAAqB,EAAA,CACxC,CAGF,OAAOA,CACT,EAGA,KAAM,CAACgD,EAAiD9C,IAAkDF,GACjGgD,EAAUhD,CAAK,EAAIE,EAAWF,CAAK,EAAIA,EAIhD,MAAO,IAAIiD,IAAqDjD,GAAU,CACxE,IAAIkD,EAAwClD,EAE5C,UAAWE,KAAc+C,EAAa,CACpC,GAAIC,IAAiB,KAAM,MAC3BA,EAAehD,EAAWgD,CAAY,CACxC,CAEA,OAAOA,CACT,CACF,EAGO,MAAMC,CAAkB,CAAxB,cACGlE,EAAA,mBAAiC,CAAA,GAGzC,IAAIiB,EAAmC,CACrC,YAAK,YAAY,KAAKA,CAAU,EACzB,IACT,CAGA,IAAI0B,EAAuB,CACzB,OAAO,KAAK,IAAID,EAAiB,OAAOC,CAAM,CAAC,CACjD,CAGA,SAASC,EAAsBC,EAAsB,CACnD,OAAO,KAAK,IAAIH,EAAiB,SAASE,EAAYC,CAAK,CAAC,CAC9D,CAGA,SAASD,EAAsBC,EAAsB,CACnD,OAAO,KAAK,IAAIH,EAAiB,SAASE,EAAYC,CAAK,CAAC,CAC9D,CAGA,OAAOQ,EAAuD,CAC5D,OAAO,KAAK,IAAIX,EAAiB,OAAOW,CAAS,CAAC,CACpD,CAGA,UAAUC,EAAkE,CAC1E,OAAO,KAAK,IAAIZ,EAAiB,UAAUY,CAAW,CAAC,CACzD,CAGA,aAAoB,CAClB,OAAO,KAAK,IAAIZ,EAAiB,YAAA,CAAa,CAChD,CAGA,aAAaiB,EAAiE,CAC5E,OAAO,KAAK,IAAIjB,EAAiB,aAAaiB,CAAO,CAAC,CACxD,CAGA,SAASxD,EAAiE,CACxE,OAAO,KAAK,IAAIuC,EAAiB,SAASvC,CAAO,CAAC,CACpD,CAGA,KAAK4D,EAAiD9C,EAAmC,CACvF,OAAO,KAAK,IAAIyB,EAAiB,KAAKqB,EAAW9C,CAAU,CAAC,CAC9D,CAGA,OAAyB,CACvB,OAAOyB,EAAiB,MAAM,GAAG,KAAK,WAAW,CACnD,CACF,CAGO,MAAMyB,EAAmB,IAAM,IAAID,EAG7BE,EAAoB,CAE/B,YAAa,IAAMD,EAAA,EAChB,IAAI,aAAa,EACjB,YAAA,EACA,aAAA,EACA,MAAA,EAGH,WAAY,IAAMA,EAAA,EACf,WACA,aAAA,EACA,SAAS,CAAC,mBAAoB,gBAAgB,EAAG,EAAE,EACnD,MAAA,EAGH,QAAS,IAAMA,EAAA,EACZ,aAAa,CAACpC,EAAOhB,IAAU,CAC9B,MAAM,IAAI,MAAM,wBAAwBgB,EAAM,OAAO,cAAchB,EAAM,IAAI,EAAE,CACjF,CAAC,EACA,MAAA,CACL,ECxQO,SAASsD,EAAYhC,EAA+B,CACzD,MAAMiC,EAAcC,EAAAA,OAAwB,IAAI,EAEhD,OAAKD,EAAY,UACfA,EAAY,QAAUjC,GAAY,IAAItC,GAGxCyE,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAkBH,EAAY,QAEpC,MAAO,IAAM,CAEXG,EAAgB,QAAA,CAClB,CACF,EAAG,CAAA,CAAE,EAEEH,EAAY,OACrB,CAGO,SAASI,EACdrC,EACApC,EACAC,EACAC,EACAwE,EACM,CACN,MAAMC,EAAaL,EAAAA,OAAOrE,CAAO,EAC3B2E,EAAaN,EAAAA,OAAOpE,CAAO,EAGjCqE,EAAAA,UAAU,IAAM,CACdI,EAAW,QAAU1E,EACrB2E,EAAW,QAAU1E,CACvB,CAAC,EAEDqE,EAAAA,UAAU,IACYnC,EAAS,GAAGpC,EAAM2E,EAAW,QAASC,EAAW,OAAO,EAE3E,CAACxC,EAAUpC,EAAM,GAAI0E,GAAQ,CAAA,CAAG,CAAC,CACtC,CAGO,SAASG,EAAgBzC,EAAoB,CAClD,OAAO0C,cAAY,CACjB9E,EACAa,EACAX,IAEOkC,EAAS,KAAKpC,EAAMa,EAAQX,CAAO,EACzC,CAACkC,CAAQ,CAAC,CACf,CAGO,SAAS2C,EACd3C,EACApC,EACAC,EACAyE,EACM,CACND,EAAiBrC,EAAUpC,EAAMC,EAAS,CAAE,KAAM,EAAA,EAAQyE,CAAI,CAChE,CAGO,SAASM,EAAiB5C,EAAoB,CACnD,MAAM6C,EAAcX,EAAAA,OAA4B,EAAE,EAE5CY,EAAaJ,EAAAA,YAAY,CAC7B9E,EACAC,EACAC,IACG,CACH,MAAMiF,EAAc/C,EAAS,GAAGpC,EAAMC,EAASC,CAAO,EACtD,OAAA+E,EAAY,QAAQ,KAAKE,CAAW,EAC7BA,CACT,EAAG,CAAC/C,CAAQ,CAAC,EAEPgD,EAAoBN,EAAAA,YAAY,IAAM,CAC1CG,EAAY,QAAQ,QAAQE,GAAeA,EAAA,CAAa,EACxDF,EAAY,QAAU,CAAA,CACxB,EAAG,CAAA,CAAE,EAELV,OAAAA,EAAAA,UAAU,IACDa,EACN,CAACA,CAAiB,CAAC,EAEf,CACL,GAAIF,EACJ,UAAWE,CAAA,CAEf,CAGO,SAASC,EACdjD,EACAJ,EACAsD,EAAU,IACV,CACA,MAAMC,EAAajB,EAAAA,OAAc,EAAE,EAEnCC,EAAAA,UAAU,IACYnC,EAAS,iBAAiB,IAAMtB,GAAU,EACxD,CAACkB,GAAUA,EAAOlB,CAAK,KACzByE,EAAW,QAAQ,KAAKzE,CAAK,EAGzByE,EAAW,QAAQ,OAASD,GAC9BC,EAAW,QAAQ,MAAA,EAGzB,CAAC,EAGA,CAACnD,EAAUJ,EAAQsD,CAAO,CAAC,EAE9B,MAAME,EAAeV,EAAAA,YAAY,IAAM,CACrCS,EAAW,QAAU,CAAA,CACvB,EAAG,CAAA,CAAE,EAEL,MAAO,CACL,QAASA,EAAW,QACpB,aAAAC,CAAA,CAEJ,CAGO,SAASC,EAAgBrD,EAAoB,CAClD,MAAMsD,EAAapB,EAAAA,OAIf,IAAI,GAAK,EAEbC,EAAAA,UAAU,IAAM,CACd,MAAMoB,EAAiB7E,GAAe,CACpC,MAAM0C,EAAWkC,EAAW,QAAQ,IAAI5E,EAAM,IAAI,GAAK,CACrD,MAAO,EACP,cAAe,EACf,UAAW,CAAA,EAKb,GAFA0C,EAAS,QAELA,EAAS,cAAgB,EAAG,CAC9B,MAAMoC,GAAY9E,EAAM,UAAY0C,EAAS,eAAiB,IAC9DA,EAAS,UAAYoC,EAAW,EAAI,EAAIA,EAAW,CACrD,CAEApC,EAAS,cAAgB1C,EAAM,UAC/B4E,EAAW,QAAQ,IAAI5E,EAAM,KAAM0C,CAAQ,CAC7C,EAGA,OADoBpB,EAAS,iBAAiB,IAAKuD,CAAa,CAElE,EAAG,CAACvD,CAAQ,CAAC,EAEb,MAAMyD,EAAaf,EAAAA,YAAY,IACtB,OAAO,YAAYY,EAAW,QAAQ,SAAS,EACrD,CAAA,CAAE,EAECI,EAAehB,EAAAA,YAAY,IAAM,CACrCY,EAAW,QAAQ,MAAA,CACrB,EAAG,CAAA,CAAE,EAEL,MAAO,CACL,WAAAG,EACA,aAAAC,CAAA,CAEJ,CAGO,SAASC,EACd3D,EACAlC,EAII,GACJ,CACA,KAAM,CAAE,UAAA8F,EAAY,GAAM,WAAAC,EAAa,GAAO,iBAAAC,GAAqBhG,EAEnEqE,EAAAA,UAAU,IACHyB,EAEe5D,EAAS,iBAAiB,IAAMtB,GAAU,CACxDoF,GAAoB,CAACA,EAAiB,SAASpF,EAAM,IAAI,IAI7D,QAAQ,MAAM,aAAaA,EAAM,IAAI,EAAE,EACvC,QAAQ,IAAI,aAAc,IAAI,KAAKA,EAAM,SAAS,EAAE,aAAa,EACjE,QAAQ,IAAI,UAAWA,EAAM,MAAM,EACnC,QAAQ,IAAI,WAAYA,EAAM,OAAO,EACrC,QAAQ,IAAI,cAAeA,EAAM,UAAU,EAC3C,QAAQ,SAAA,EACV,CAAC,EAbe,OAgBf,CAACsB,EAAU4D,EAAWE,CAAgB,CAAC,EAE1C3B,EAAAA,UAAU,IAAM,CACd,GAAI,CAAC0B,EAAY,OAEjB,MAAME,EAAW,YAAY,IAAM,CACjC,MAAMC,EAAgBhE,EAAS,iBAAA,EACzBO,EAAaP,EAAS,cAAA,EAE5B,QAAQ,MAAM,kBAAkB,EAChC,QAAQ,IAAI,mBAAoBgE,CAAa,EAC7C,QAAQ,IAAI,eAAgBzD,EAAW,MAAM,EAC7C,QAAQ,IAAI,gBAAiBA,CAAU,EACvC,QAAQ,SAAA,CACV,EAAG,GAAI,EAEP,MAAO,IAAM,cAAcwD,CAAQ,CACrC,EAAG,CAAC/D,EAAU6D,CAAU,CAAC,CAC3B,CAGO,SAASI,EACdjE,EACApC,EACAC,EACA6D,EACA5D,EACAwE,EACM,CACN,MAAM4B,EAAeC,EAAAA,QAAQ,IACpB,OAAOzC,GAAc,WAAaA,EAAA,EAAcA,EACtD,CAACA,EAAW,GAAIY,GAAQ,CAAA,CAAG,CAAC,EAE/BH,EAAAA,UAAU,IACH+B,EAEelE,EAAS,GAAGpC,EAAMC,EAASC,CAAO,EAFnC,OAIlB,CAACkC,EAAUpC,EAAMsG,EAAc,GAAI5B,GAAQ,CAAA,CAAG,CAAC,CACpD,CAGO,SAAS8B,EACdpE,EACAqE,EACAC,EACA,CACA,KAAM,CAACC,EAAOC,CAAQ,EAAIC,EAAAA,SAAYJ,CAAY,EAElDlC,OAAAA,EAAAA,UAAU,IAAM,CACd,MAAMuC,EAAqC,CAAA,EAE3C,cAAO,QAAQJ,CAAY,EAAE,QAAQ,CAAC,CAAC3E,EAAWgF,CAAO,IAAM,CAC7D,MAAM5B,EAAc/C,EAAS,iBAAiBL,EAAYjB,GAAU,CAClE8F,EAASI,GAAWD,EAAQjG,EAAM,OAAQkG,CAAO,CAAC,CACpD,CAAC,EACDF,EAAc,KAAK3B,CAAW,CAChC,CAAC,EAEM,IAAM,CACX2B,EAAc,QAAQ3B,GAAeA,EAAA,CAAa,CACpD,CACF,EAAG,CAAC/C,EAAUsE,CAAY,CAAC,EAEpBC,CACT,CAGO,SAASM,EACd7E,EACApC,EACAkH,EACAxC,EACM,CACN,MAAMyC,EAAa7C,EAAAA,OAA4B,MAAS,EAExDG,EACErC,EACApC,EACA8E,EAAAA,YAAahE,GAAU,CAEjB,OAAOqG,EAAW,SAAY,YAChCA,EAAW,QAAA,EAIbA,EAAW,QAAUD,EAAOpG,EAAM,MAAM,CAC1C,EAAG4D,GAAQ,EAAE,EACb,OACAA,CAAA,EAGFH,EAAAA,UAAU,IACD,IAAM,CACP,OAAO4C,EAAW,SAAY,YAChCA,EAAW,QAAA,CAEf,EACC,CAAA,CAAE,CACP,CCxRO,MAAMC,EAAuB"}