playron 1.0.30 → 1.0.32

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 (265) hide show
  1. package/dist/index.d.ts +1934 -107
  2. package/package.json +2 -4
  3. package/dist/Docs.d.ts +0 -2
  4. package/dist/Docs.d.ts.map +0 -1
  5. package/dist/Why.d.ts +0 -2
  6. package/dist/Why.d.ts.map +0 -1
  7. package/dist/components/PlayerConfig.d.ts +0 -34
  8. package/dist/components/PlayerConfig.d.ts.map +0 -1
  9. package/dist/components/PlayronControls.d.ts +0 -26
  10. package/dist/components/PlayronControls.d.ts.map +0 -1
  11. package/dist/components/PlayronPlayer.d.ts +0 -37
  12. package/dist/components/PlayronPlayer.d.ts.map +0 -1
  13. package/dist/components/SiteHeader.d.ts +0 -6
  14. package/dist/components/SiteHeader.d.ts.map +0 -1
  15. package/dist/constants/sample-intro-outro.d.ts +0 -3
  16. package/dist/constants/sample-intro-outro.d.ts.map +0 -1
  17. package/dist/constants/source.d.ts +0 -2
  18. package/dist/constants/source.d.ts.map +0 -1
  19. package/dist/constants/sports-events.d.ts +0 -58
  20. package/dist/constants/sports-events.d.ts.map +0 -1
  21. package/dist/context/PlayerContext.d.ts +0 -3
  22. package/dist/context/PlayerContext.d.ts.map +0 -1
  23. package/dist/context/PlayerMethodsContext.d.ts +0 -63
  24. package/dist/context/PlayerMethodsContext.d.ts.map +0 -1
  25. package/dist/context/PlayerProvider.d.ts +0 -9
  26. package/dist/context/PlayerProvider.d.ts.map +0 -1
  27. package/dist/context/PlayerStateContext.d.ts +0 -4
  28. package/dist/context/PlayerStateContext.d.ts.map +0 -1
  29. package/dist/context/PlayronContext.d.ts +0 -100
  30. package/dist/context/PlayronContext.d.ts.map +0 -1
  31. package/dist/context/SubtitleStyleContext.d.ts +0 -22
  32. package/dist/context/SubtitleStyleContext.d.ts.map +0 -1
  33. package/dist/core/ConfigManager.d.ts +0 -78
  34. package/dist/core/ConfigManager.d.ts.map +0 -1
  35. package/dist/core/ErrorManager.d.ts +0 -22
  36. package/dist/core/ErrorManager.d.ts.map +0 -1
  37. package/dist/core/EventBus.d.ts +0 -32
  38. package/dist/core/EventBus.d.ts.map +0 -1
  39. package/dist/core/PlayerCore.d.ts +0 -188
  40. package/dist/core/PlayerCore.d.ts.map +0 -1
  41. package/dist/core/PlayronEventEmitter.d.ts +0 -168
  42. package/dist/core/PlayronEventEmitter.d.ts.map +0 -1
  43. package/dist/core/PluginSystem.d.ts +0 -111
  44. package/dist/core/PluginSystem.d.ts.map +0 -1
  45. package/dist/core/StallDetector.d.ts +0 -27
  46. package/dist/core/StallDetector.d.ts.map +0 -1
  47. package/dist/core/StateManager.d.ts +0 -90
  48. package/dist/core/StateManager.d.ts.map +0 -1
  49. package/dist/core/VideoEngine.d.ts +0 -92
  50. package/dist/core/VideoEngine.d.ts.map +0 -1
  51. package/dist/core/adaptive/StreamDetector.d.ts +0 -73
  52. package/dist/core/adaptive/StreamDetector.d.ts.map +0 -1
  53. package/dist/core/cast/ChromecastManager.d.ts +0 -192
  54. package/dist/core/cast/ChromecastManager.d.ts.map +0 -1
  55. package/dist/core/drm/DrmCapabilityProbe.d.ts +0 -13
  56. package/dist/core/drm/DrmCapabilityProbe.d.ts.map +0 -1
  57. package/dist/core/drm/DrmManager.d.ts +0 -29
  58. package/dist/core/drm/DrmManager.d.ts.map +0 -1
  59. package/dist/core/drm/LicenseManager.d.ts +0 -28
  60. package/dist/core/drm/LicenseManager.d.ts.map +0 -1
  61. package/dist/core/drm/adapters/BaseDrmAdapter.d.ts +0 -33
  62. package/dist/core/drm/adapters/BaseDrmAdapter.d.ts.map +0 -1
  63. package/dist/core/drm/adapters/FairPlayAdapter.d.ts +0 -23
  64. package/dist/core/drm/adapters/FairPlayAdapter.d.ts.map +0 -1
  65. package/dist/core/drm/adapters/PlayReadyAdapter.d.ts +0 -20
  66. package/dist/core/drm/adapters/PlayReadyAdapter.d.ts.map +0 -1
  67. package/dist/core/drm/adapters/WidevineAdapter.d.ts +0 -18
  68. package/dist/core/drm/adapters/WidevineAdapter.d.ts.map +0 -1
  69. package/dist/core/license/LicenseValidator.d.ts +0 -30
  70. package/dist/core/license/LicenseValidator.d.ts.map +0 -1
  71. package/dist/core/network/index.d.ts +0 -6
  72. package/dist/core/network/index.d.ts.map +0 -1
  73. package/dist/core/streaming/DashEngine.d.ts +0 -149
  74. package/dist/core/streaming/DashEngine.d.ts.map +0 -1
  75. package/dist/core/streaming/HlsEngine.d.ts +0 -168
  76. package/dist/core/streaming/HlsEngine.d.ts.map +0 -1
  77. package/dist/core/streaming/SubtitleManager.d.ts +0 -92
  78. package/dist/core/streaming/SubtitleManager.d.ts.map +0 -1
  79. package/dist/core/streaming/ThumbnailManager.d.ts +0 -44
  80. package/dist/core/streaming/ThumbnailManager.d.ts.map +0 -1
  81. package/dist/core/streaming/index.d.ts +0 -11
  82. package/dist/core/streaming/index.d.ts.map +0 -1
  83. package/dist/core/streaming/parsers/TtmlParser.d.ts +0 -46
  84. package/dist/core/streaming/parsers/TtmlParser.d.ts.map +0 -1
  85. package/dist/core/streaming/parsers/WebVttParser.d.ts +0 -56
  86. package/dist/core/streaming/parsers/WebVttParser.d.ts.map +0 -1
  87. package/dist/hooks/useClickOutside.d.ts +0 -4
  88. package/dist/hooks/useClickOutside.d.ts.map +0 -1
  89. package/dist/hooks/useKeyboardControls.d.ts +0 -20
  90. package/dist/hooks/useKeyboardControls.d.ts.map +0 -1
  91. package/dist/hooks/useMobileGestures.d.ts +0 -17
  92. package/dist/hooks/useMobileGestures.d.ts.map +0 -1
  93. package/dist/hooks/useMouseActivity.d.ts +0 -10
  94. package/dist/hooks/useMouseActivity.d.ts.map +0 -1
  95. package/dist/hooks/usePlayer.d.ts +0 -6
  96. package/dist/hooks/usePlayer.d.ts.map +0 -1
  97. package/dist/hooks/usePlayerMethods.d.ts +0 -6
  98. package/dist/hooks/usePlayerMethods.d.ts.map +0 -1
  99. package/dist/hooks/usePlayerState.d.ts +0 -11
  100. package/dist/hooks/usePlayerState.d.ts.map +0 -1
  101. package/dist/index.d.ts.map +0 -1
  102. package/dist/layout/ControlsContainer.d.ts +0 -9
  103. package/dist/layout/ControlsContainer.d.ts.map +0 -1
  104. package/dist/layout/ControlsContainer.responsive.d.ts +0 -8
  105. package/dist/layout/ControlsContainer.responsive.d.ts.map +0 -1
  106. package/dist/layout/SeekBarContainer.d.ts +0 -16
  107. package/dist/layout/SeekBarContainer.d.ts.map +0 -1
  108. package/dist/plugins/AdPlugin.d.ts +0 -8
  109. package/dist/plugins/AdPlugin.d.ts.map +0 -1
  110. package/dist/plugins/AnalyticsPlugin.d.ts +0 -50
  111. package/dist/plugins/AnalyticsPlugin.d.ts.map +0 -1
  112. package/dist/plugins/PluginManager.d.ts +0 -2
  113. package/dist/plugins/PluginManager.d.ts.map +0 -1
  114. package/dist/plugins/SocialPlugin.d.ts +0 -2
  115. package/dist/plugins/SocialPlugin.d.ts.map +0 -1
  116. package/dist/plugins/ads/AdManager.d.ts +0 -79
  117. package/dist/plugins/ads/AdManager.d.ts.map +0 -1
  118. package/dist/plugins/ads/AdPlayer.d.ts +0 -33
  119. package/dist/plugins/ads/AdPlayer.d.ts.map +0 -1
  120. package/dist/plugins/ads/AdTracker.d.ts +0 -34
  121. package/dist/plugins/ads/AdTracker.d.ts.map +0 -1
  122. package/dist/plugins/ads/VASTParser.d.ts +0 -52
  123. package/dist/plugins/ads/VASTParser.d.ts.map +0 -1
  124. package/dist/plugins/ads/VMAPParser.d.ts +0 -31
  125. package/dist/plugins/ads/VMAPParser.d.ts.map +0 -1
  126. package/dist/plugins/ads/types.d.ts +0 -108
  127. package/dist/plugins/ads/types.d.ts.map +0 -1
  128. package/dist/poster.png +0 -0
  129. package/dist/test-ad.xml +0 -37
  130. package/dist/test-vmap.xml +0 -30
  131. package/dist/types/analytics.d.ts +0 -86
  132. package/dist/types/analytics.d.ts.map +0 -1
  133. package/dist/types/chapters.types.d.ts +0 -17
  134. package/dist/types/chapters.types.d.ts.map +0 -1
  135. package/dist/types/config.d.ts +0 -23
  136. package/dist/types/config.d.ts.map +0 -1
  137. package/dist/types/config.types.d.ts +0 -277
  138. package/dist/types/config.types.d.ts.map +0 -1
  139. package/dist/types/controlbar.types.d.ts +0 -5
  140. package/dist/types/controlbar.types.d.ts.map +0 -1
  141. package/dist/types/drm.types.d.ts +0 -163
  142. package/dist/types/drm.types.d.ts.map +0 -1
  143. package/dist/types/events.d.ts +0 -36
  144. package/dist/types/events.d.ts.map +0 -1
  145. package/dist/types/extended.types.d.ts +0 -85
  146. package/dist/types/extended.types.d.ts.map +0 -1
  147. package/dist/types/manifest.types.d.ts +0 -297
  148. package/dist/types/manifest.types.d.ts.map +0 -1
  149. package/dist/types/playbutton.types.d.ts +0 -2
  150. package/dist/types/playbutton.types.d.ts.map +0 -1
  151. package/dist/types/player.types.d.ts +0 -21
  152. package/dist/types/player.types.d.ts.map +0 -1
  153. package/dist/types/seekbar.types.d.ts +0 -5
  154. package/dist/types/seekbar.types.d.ts.map +0 -1
  155. package/dist/types/streaming.types.d.ts +0 -168
  156. package/dist/types/streaming.types.d.ts.map +0 -1
  157. package/dist/types/timeline.types.d.ts +0 -46
  158. package/dist/types/timeline.types.d.ts.map +0 -1
  159. package/dist/types/video-events.d.ts +0 -51
  160. package/dist/types/video-events.d.ts.map +0 -1
  161. package/dist/ui/Common/BufferingIndicator.d.ts +0 -2
  162. package/dist/ui/Common/BufferingIndicator.d.ts.map +0 -1
  163. package/dist/ui/Common/ControlBar.d.ts +0 -3
  164. package/dist/ui/Common/ControlBar.d.ts.map +0 -1
  165. package/dist/ui/Common/ControlBar.responsive.d.ts +0 -3
  166. package/dist/ui/Common/ControlBar.responsive.d.ts.map +0 -1
  167. package/dist/ui/Common/Dropdown/Dropdown.d.ts +0 -14
  168. package/dist/ui/Common/Dropdown/Dropdown.d.ts.map +0 -1
  169. package/dist/ui/Common/Dropdown/DropdownItem.d.ts +0 -11
  170. package/dist/ui/Common/Dropdown/DropdownItem.d.ts.map +0 -1
  171. package/dist/ui/Common/Dropdown/DropdownPanel.d.ts +0 -9
  172. package/dist/ui/Common/Dropdown/DropdownPanel.d.ts.map +0 -1
  173. package/dist/ui/Common/Dropdown/DropdownTrigger.d.ts +0 -7
  174. package/dist/ui/Common/Dropdown/DropdownTrigger.d.ts.map +0 -1
  175. package/dist/ui/Common/LoadingSpinner.d.ts +0 -6
  176. package/dist/ui/Common/LoadingSpinner.d.ts.map +0 -1
  177. package/dist/ui/Common/Overlay.d.ts +0 -11
  178. package/dist/ui/Common/Overlay.d.ts.map +0 -1
  179. package/dist/ui/Common/SeekBar.d.ts +0 -41
  180. package/dist/ui/Common/SeekBar.d.ts.map +0 -1
  181. package/dist/ui/Common/SeekBar.responsive.d.ts +0 -10
  182. package/dist/ui/Common/SeekBar.responsive.d.ts.map +0 -1
  183. package/dist/ui/Common/TimeDisplay.d.ts +0 -2
  184. package/dist/ui/Common/TimeDisplay.d.ts.map +0 -1
  185. package/dist/ui/Common/TimelineMarker.d.ts +0 -11
  186. package/dist/ui/Common/TimelineMarker.d.ts.map +0 -1
  187. package/dist/ui/Common/Tooltip.d.ts +0 -2
  188. package/dist/ui/Common/Tooltip.d.ts.map +0 -1
  189. package/dist/ui/Common/VolumePanel.d.ts +0 -2
  190. package/dist/ui/Common/VolumePanel.d.ts.map +0 -1
  191. package/dist/ui/Controls/AudioTrackSelector.d.ts +0 -2
  192. package/dist/ui/Controls/AudioTrackSelector.d.ts.map +0 -1
  193. package/dist/ui/Controls/CaptionsButton.d.ts +0 -2
  194. package/dist/ui/Controls/CaptionsButton.d.ts.map +0 -1
  195. package/dist/ui/Controls/CastButton.d.ts +0 -17
  196. package/dist/ui/Controls/CastButton.d.ts.map +0 -1
  197. package/dist/ui/Controls/ChromecastButton.d.ts +0 -18
  198. package/dist/ui/Controls/ChromecastButton.d.ts.map +0 -1
  199. package/dist/ui/Controls/DownloadButton.d.ts +0 -2
  200. package/dist/ui/Controls/DownloadButton.d.ts.map +0 -1
  201. package/dist/ui/Controls/EpisodeSelector.d.ts +0 -2
  202. package/dist/ui/Controls/EpisodeSelector.d.ts.map +0 -1
  203. package/dist/ui/Controls/FullscreenButton.d.ts +0 -13
  204. package/dist/ui/Controls/FullscreenButton.d.ts.map +0 -1
  205. package/dist/ui/Controls/JumpToLiveButton.d.ts +0 -2
  206. package/dist/ui/Controls/JumpToLiveButton.d.ts.map +0 -1
  207. package/dist/ui/Controls/LiveLatencyDisplay.d.ts +0 -2
  208. package/dist/ui/Controls/LiveLatencyDisplay.d.ts.map +0 -1
  209. package/dist/ui/Controls/MuteButton.d.ts +0 -5
  210. package/dist/ui/Controls/MuteButton.d.ts.map +0 -1
  211. package/dist/ui/Controls/NextEpisodeButton.d.ts +0 -7
  212. package/dist/ui/Controls/NextEpisodeButton.d.ts.map +0 -1
  213. package/dist/ui/Controls/PipButton.d.ts +0 -5
  214. package/dist/ui/Controls/PipButton.d.ts.map +0 -1
  215. package/dist/ui/Controls/PlayButton.d.ts +0 -13
  216. package/dist/ui/Controls/PlayButton.d.ts.map +0 -1
  217. package/dist/ui/Controls/PlaybackSpeedSelector.d.ts +0 -2
  218. package/dist/ui/Controls/PlaybackSpeedSelector.d.ts.map +0 -1
  219. package/dist/ui/Controls/PlaylistButton.d.ts +0 -2
  220. package/dist/ui/Controls/PlaylistButton.d.ts.map +0 -1
  221. package/dist/ui/Controls/QualitySelector.d.ts +0 -2
  222. package/dist/ui/Controls/QualitySelector.d.ts.map +0 -1
  223. package/dist/ui/Controls/SeekBar.d.ts +0 -2
  224. package/dist/ui/Controls/SeekBar.d.ts.map +0 -1
  225. package/dist/ui/Controls/SeekBarProgress.d.ts +0 -2
  226. package/dist/ui/Controls/SeekBarProgress.d.ts.map +0 -1
  227. package/dist/ui/Controls/SettingsButton.d.ts +0 -2
  228. package/dist/ui/Controls/SettingsButton.d.ts.map +0 -1
  229. package/dist/ui/Controls/SettingsPanel.d.ts +0 -49
  230. package/dist/ui/Controls/SettingsPanel.d.ts.map +0 -1
  231. package/dist/ui/Controls/SkipBackwardButton.d.ts +0 -12
  232. package/dist/ui/Controls/SkipBackwardButton.d.ts.map +0 -1
  233. package/dist/ui/Controls/SkipForwardButton.d.ts +0 -12
  234. package/dist/ui/Controls/SkipForwardButton.d.ts.map +0 -1
  235. package/dist/ui/Controls/SkipIntroButton.d.ts +0 -7
  236. package/dist/ui/Controls/SkipIntroButton.d.ts.map +0 -1
  237. package/dist/ui/Controls/SubtitleOverlay.d.ts +0 -6
  238. package/dist/ui/Controls/SubtitleOverlay.d.ts.map +0 -1
  239. package/dist/ui/Controls/SubtitlesMenu.d.ts +0 -2
  240. package/dist/ui/Controls/SubtitlesMenu.d.ts.map +0 -1
  241. package/dist/ui/Controls/TheaterModeButton.d.ts +0 -2
  242. package/dist/ui/Controls/TheaterModeButton.d.ts.map +0 -1
  243. package/dist/ui/Controls/TimeDisplay.d.ts +0 -5
  244. package/dist/ui/Controls/TimeDisplay.d.ts.map +0 -1
  245. package/dist/ui/Controls/VolumeControl.d.ts +0 -33
  246. package/dist/ui/Controls/VolumeControl.d.ts.map +0 -1
  247. package/dist/ui/Controls/VolumeSlider.d.ts +0 -2
  248. package/dist/ui/Controls/VolumeSlider.d.ts.map +0 -1
  249. package/dist/ui/Overlay/ContextMenu.d.ts +0 -35
  250. package/dist/ui/Overlay/ContextMenu.d.ts.map +0 -1
  251. package/dist/ui/Overlay/EndCard.d.ts +0 -11
  252. package/dist/ui/Overlay/EndCard.d.ts.map +0 -1
  253. package/dist/ui/Overlay/ErrorOverlay.d.ts +0 -13
  254. package/dist/ui/Overlay/ErrorOverlay.d.ts.map +0 -1
  255. package/dist/ui/Overlay/GestureHintOverlay.d.ts +0 -13
  256. package/dist/ui/Overlay/GestureHintOverlay.d.ts.map +0 -1
  257. package/dist/ui/Overlay/KeyboardShortcutsOverlay.d.ts +0 -7
  258. package/dist/ui/Overlay/KeyboardShortcutsOverlay.d.ts.map +0 -1
  259. package/dist/ui/Overlay/LicenseOverlay.d.ts +0 -12
  260. package/dist/ui/Overlay/LicenseOverlay.d.ts.map +0 -1
  261. package/dist/ui/Overlay/VideoOverlay.d.ts +0 -9
  262. package/dist/ui/Overlay/VideoOverlay.d.ts.map +0 -1
  263. package/dist/ui/Player.d.ts +0 -19
  264. package/dist/ui/Player.d.ts.map +0 -1
  265. package/dist/vite.svg +0 -1
@@ -1,85 +0,0 @@
1
- /**
2
- * Extended types for type-safe operations
3
- * Eliminates 'any' usage in the codebase
4
- */
5
- /**
6
- * Extended HTMLVideoElement with custom properties
7
- */
8
- export interface ExtendedHTMLVideoElement extends HTMLVideoElement {
9
- /** Current quality setting */
10
- currentQuality?: string;
11
- /** Current audio track ID */
12
- currentAudioTrack?: string;
13
- /** Playron ID */
14
- playronId?: string;
15
- }
16
- /**
17
- * Extended HTMLElement for container
18
- */
19
- export interface ExtendedHTMLElement extends HTMLElement {
20
- /** Theater mode state */
21
- isTheaterMode?: boolean;
22
- /** Playron container marker */
23
- playronContainer?: boolean;
24
- }
25
- /**
26
- * Video quality level
27
- */
28
- export interface QualityLevel {
29
- id: string;
30
- label: string;
31
- height: number;
32
- width: number;
33
- bitrate: number;
34
- codec?: string;
35
- }
36
- /**
37
- * Audio track information
38
- */
39
- export interface AudioTrack {
40
- id: string;
41
- label: string;
42
- language: string;
43
- codec?: string;
44
- channels?: string;
45
- }
46
- /**
47
- * Subtitle track information
48
- */
49
- export interface SubtitleTrack {
50
- id: string;
51
- label: string;
52
- language: string;
53
- url?: string;
54
- default?: boolean;
55
- }
56
- /**
57
- * Player capabilities
58
- */
59
- export interface PlayerCapabilities {
60
- pip: boolean;
61
- fullscreen: boolean;
62
- mediaSession: boolean;
63
- drm: {
64
- widevine: boolean;
65
- playready: boolean;
66
- fairplay: boolean;
67
- };
68
- }
69
- /**
70
- * Network information
71
- */
72
- export interface NetworkInfo {
73
- bandwidth: number;
74
- latency: number;
75
- quality: 'poor' | 'medium' | 'good' | 'excellent';
76
- }
77
- /**
78
- * Buffer information
79
- */
80
- export interface BufferInfo {
81
- start: number;
82
- end: number;
83
- length: number;
84
- }
85
- //# sourceMappingURL=extended.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"extended.types.d.ts","sourceRoot":"","sources":["../../src/types/extended.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAChE,8BAA8B;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6BAA6B;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,yBAAyB;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+BAA+B;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,GAAG,EAAE;QACH,QAAQ,EAAE,OAAO,CAAC;QAClB,SAAS,EAAE,OAAO,CAAC;QACnB,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -1,297 +0,0 @@
1
- /**
2
- * HLS & DASH Manifest Types
3
- * Pure custom implementation - no external libraries
4
- */
5
- /**
6
- * HLS Master Playlist (multi-bitrate streams)
7
- * Example: https://example.com/master.m3u8
8
- */
9
- export interface HlsMasterPlaylist {
10
- variants: HlsVariant[];
11
- audioTracks: HlsAudioTrack[];
12
- subtitles: HlsSubtitle[];
13
- version: number;
14
- independentSegments: boolean;
15
- }
16
- /**
17
- * HLS Variant Stream (quality level)
18
- * #EXT-X-STREAM-INF:BANDWIDTH=2000000,RESOLUTION=1280x720,CODECS="avc1.64001f,mp4a.40.2"
19
- */
20
- export interface HlsVariant {
21
- uri: string;
22
- bandwidth: number;
23
- resolution?: {
24
- width: number;
25
- height: number;
26
- };
27
- codecs?: string;
28
- frameRate?: number;
29
- audio?: string;
30
- subtitles?: string;
31
- averageBandwidth?: number;
32
- programId?: number;
33
- }
34
- /**
35
- * HLS Audio Track
36
- * #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",NAME="English",LANGUAGE="en",URI="audio_en.m3u8"
37
- */
38
- export interface HlsAudioTrack {
39
- groupId: string;
40
- name: string;
41
- language: string;
42
- uri?: string;
43
- default: boolean;
44
- autoselect: boolean;
45
- channels?: string;
46
- }
47
- /**
48
- * HLS Subtitle Track
49
- * #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",LANGUAGE="en",URI="subs_en.m3u8"
50
- */
51
- export interface HlsSubtitle {
52
- groupId: string;
53
- name: string;
54
- language: string;
55
- uri: string;
56
- default: boolean;
57
- autoselect: boolean;
58
- forced: boolean;
59
- }
60
- /**
61
- * HLS Media Playlist (segment list)
62
- * Example: https://example.com/720p.m3u8
63
- */
64
- export interface HlsMediaPlaylist {
65
- segments: HlsSegment[];
66
- targetDuration: number;
67
- version: number;
68
- mediaSequence: number;
69
- discontinuitySequence: number;
70
- endlist: boolean;
71
- playlistType?: 'VOD' | 'EVENT';
72
- keys: HlsKey[];
73
- duration: number;
74
- /** LL-HLS: server control capabilities */
75
- serverControl?: HlsServerControl;
76
- /** LL-HLS: partial segment target duration (from #EXT-X-PART-INF) */
77
- partTargetDuration?: number;
78
- /** LL-HLS: next part to prefetch (from #EXT-X-PRELOAD-HINT) */
79
- preloadHint?: HlsPreloadHint;
80
- /** LL-HLS: number of segments skipped in a delta playlist (#EXT-X-SKIP) */
81
- skippedSegments?: number;
82
- }
83
- /**
84
- * HLS Segment (video/audio chunk)
85
- * #EXTINF:10.0,
86
- * segment_001.ts
87
- */
88
- export interface HlsSegment {
89
- uri: string;
90
- duration: number;
91
- sequence: number;
92
- title?: string;
93
- byteRange?: {
94
- offset: number;
95
- length: number;
96
- };
97
- discontinuity: boolean;
98
- key?: HlsKey;
99
- map?: HlsSegmentMap;
100
- programDateTime?: Date;
101
- /** LL-HLS partial segments that compose this full segment */
102
- parts?: LlHlsPart[];
103
- /** #EXT-X-GAP — segment data is unavailable (live DVR) */
104
- gap?: boolean;
105
- }
106
- /**
107
- * HLS Encryption Key (DRM info)
108
- * #EXT-X-KEY:METHOD=AES-128,URI="https://license.example.com/key",IV=0x12345678
109
- */
110
- export interface HlsKey {
111
- method: 'AES-128' | 'SAMPLE-AES' | 'NONE';
112
- uri?: string;
113
- iv?: string;
114
- keyFormat?: string;
115
- keyFormatVersions?: string;
116
- }
117
- /**
118
- * HLS Segment Map (initialization segment for fMP4)
119
- * #EXT-X-MAP:URI="init.mp4"
120
- */
121
- export interface HlsSegmentMap {
122
- uri: string;
123
- byteRange?: {
124
- offset: number;
125
- length: number;
126
- };
127
- }
128
- /**
129
- * LL-HLS Partial Segment
130
- * #EXT-X-PART:DURATION=0.33334,URI="seg001.part0.m4s"
131
- */
132
- export interface LlHlsPart {
133
- uri: string;
134
- duration: number;
135
- /** Independent=YES means the part can be decoded without previous parts */
136
- independent?: boolean;
137
- byteRange?: {
138
- offset: number;
139
- length: number;
140
- };
141
- /** Gap=YES means the part data is missing (live DVR gap) */
142
- gap?: boolean;
143
- }
144
- /**
145
- * LL-HLS Preload Hint
146
- * #EXT-X-PRELOAD-HINT:TYPE=PART,URI="seg002.part0.m4s"
147
- */
148
- export interface HlsPreloadHint {
149
- type: 'PART' | 'MAP';
150
- uri: string;
151
- byteRangeStart?: number;
152
- byteRangeLength?: number;
153
- }
154
- /**
155
- * LL-HLS Server Control
156
- * #EXT-X-SERVER-CONTROL:CAN-BLOCK-RELOAD=YES,PART-HOLD-BACK=0.9
157
- */
158
- export interface HlsServerControl {
159
- /** Server supports blocking playlist requests (_HLS_msn, _HLS_part) */
160
- canBlockReload: boolean;
161
- /** Minimum buffer (seconds) before switching to next partial segment */
162
- partHoldBack?: number;
163
- /** Seconds after which the server can skip segments in delta updates */
164
- canSkipUntil?: number;
165
- canSkipDateranges?: boolean;
166
- }
167
- /**
168
- * DASH MPD (Media Presentation Description)
169
- * https://dashif.org/docs/DASH-IF-IOP-v4.3.pdf
170
- */
171
- export interface DashManifest {
172
- /** 'static' = VOD, 'dynamic' = LIVE */
173
- type: 'static' | 'dynamic';
174
- isLive: boolean;
175
- /** Total content duration in seconds (VOD only) */
176
- duration: number;
177
- /** How often the MPD should be refreshed (live, seconds) */
178
- minimumUpdatePeriod: number;
179
- /** DVR window depth (live, seconds) */
180
- timeShiftBufferDepth: number;
181
- periods: DashPeriod[];
182
- baseUrl: string;
183
- /** LL-DASH: target playback latency from ServiceDescription (seconds) */
184
- targetLatency?: number;
185
- /** LL-DASH: availability time offset at MPD level (seconds) */
186
- availabilityTimeOffset?: number;
187
- }
188
- export interface DashPeriod {
189
- id: string;
190
- /** Start time offset in seconds */
191
- start: number;
192
- /** Period duration in seconds (optional for last period) */
193
- duration?: number;
194
- adaptationSets: DashAdaptationSet[];
195
- }
196
- export interface DashAdaptationSet {
197
- id: string;
198
- /** 'video' | 'audio' | 'text' */
199
- contentType: string;
200
- mimeType: string;
201
- /** Codec(s) at AdaptationSet level (may be overridden per Representation) */
202
- codecs: string;
203
- lang: string;
204
- maxWidth?: number;
205
- maxHeight?: number;
206
- representations: DashRepresentation[];
207
- }
208
- export interface DashRepresentation {
209
- id: string;
210
- bandwidth: number;
211
- width?: number;
212
- height?: number;
213
- /** Codec string, e.g. "avc1.64001F" or "mp4a.40.2" */
214
- codecs: string;
215
- mimeType: string;
216
- /** e.g. "25" or "30000/1001" */
217
- frameRate?: string;
218
- audioSamplingRate?: string;
219
- segmentTemplate?: DashSegmentTemplate;
220
- /** SegmentBase — byte-range based single-file access */
221
- segmentBase?: DashSegmentBase;
222
- baseUrl: string;
223
- }
224
- /**
225
- * SegmentBase — used when all media is in a single file (e.g. a plain MP4).
226
- * Initialization data and the segment index (sidx box) are fetched via byte ranges.
227
- *
228
- * MPD example:
229
- * <SegmentBase indexRange="723-2176" timescale="30000">
230
- * <Initialization range="0-722"/>
231
- * </SegmentBase>
232
- */
233
- export interface DashSegmentBase {
234
- /** Timescale ticks-per-second (default 1) */
235
- timescale: number;
236
- /** Byte range of the initialization data, e.g. "0-722" */
237
- initRange?: string;
238
- /** Byte range of the segment index (sidx box), e.g. "723-2176" */
239
- indexRange?: string;
240
- }
241
- export interface DashSegmentTemplate {
242
- timescale: number;
243
- /** Segment duration in seconds (pre-divided by timescale) */
244
- duration: number;
245
- startNumber: number;
246
- /** Fully resolved initialization URL (with $RepresentationID$ etc. substituted) */
247
- initializationUrl: string;
248
- /** Raw media URL template (e.g. "seg-$RepresentationID$-$Number$.m4s") */
249
- mediaTemplate: string;
250
- /** Parsed SegmentTimeline entries (optional) */
251
- timeline?: DashTimelineEntry[];
252
- /**
253
- * LL-DASH: seconds before a segment's nominal availability time at which
254
- * the segment (or its chunks) becomes available. When < segmentDuration,
255
- * the segment is published incrementally (chunked transfer).
256
- */
257
- availabilityTimeOffset?: number;
258
- /** LL-DASH: if false, segments can be appended before they are complete */
259
- availabilityTimeComplete?: boolean;
260
- }
261
- /** One <S> element inside <SegmentTimeline> */
262
- export interface DashTimelineEntry {
263
- /** Absolute start time on the timeline (optional — if absent, continues from previous) */
264
- t?: number;
265
- /** Duration of this entry in timescale units */
266
- d: number;
267
- /** Repeat count — entry repeats (r+1) times total */
268
- r?: number;
269
- }
270
- /** A resolved segment ready for download */
271
- export interface DashSegmentInfo {
272
- url: string;
273
- number: number;
274
- /** Start time in timescale units */
275
- time: number;
276
- /** Duration in seconds */
277
- duration: number;
278
- /** Byte range for HTTP Range request (SegmentBase only) */
279
- byteRange?: {
280
- start: number;
281
- end: number;
282
- };
283
- }
284
- export type ManifestType = 'hls' | 'dash' | 'progressive';
285
- export interface ParsedManifest {
286
- type: ManifestType;
287
- hls?: HlsMasterPlaylist | HlsMediaPlaylist;
288
- dash?: DashManifest;
289
- }
290
- export interface ManifestLoaderOptions {
291
- url: string;
292
- timeout?: number;
293
- maxRetries?: number;
294
- headers?: Record<string, string>;
295
- withCredentials?: boolean;
296
- }
297
- //# sourceMappingURL=manifest.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifest.types.d.ts","sourceRoot":"","sources":["../../src/types/manifest.types.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=playbutton.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"playbutton.types.d.ts","sourceRoot":"","sources":["../../src/types/playbutton.types.ts"],"names":[],"mappings":""}
@@ -1,21 +0,0 @@
1
- export type PlayerMode = 'vod' | 'live';
2
- export interface PlayerProps {
3
- src?: string;
4
- width?: string | number;
5
- height?: string | number;
6
- defaultControls?: boolean;
7
- autoplay?: boolean;
8
- muted?: boolean;
9
- poster?: string;
10
- className?: string;
11
- onAdLoading?: (isLoading: boolean) => void;
12
- /**
13
- * Sets the crossOrigin attribute on the underlying <video> element.
14
- * Default: undefined (no crossOrigin attribute).
15
- * Set to 'anonymous' only if your video CDN sends proper CORS headers
16
- * AND you need canvas/screenshot access. On iOS, setting this without
17
- * proper CORS headers will break playback.
18
- */
19
- crossOrigin?: 'anonymous' | 'use-credentials';
20
- }
21
- //# sourceMappingURL=player.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"player.types.d.ts","sourceRoot":"","sources":["../../src/types/player.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,CAAC;AAExC,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,WAAW,GAAG,iBAAiB,CAAC;CAC/C"}
@@ -1,5 +0,0 @@
1
- import { ReactNode } from 'react';
2
- export interface SeekBarProps {
3
- children?: ReactNode;
4
- }
5
- //# sourceMappingURL=seekbar.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"seekbar.types.d.ts","sourceRoot":"","sources":["../../src/types/seekbar.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB"}
@@ -1,168 +0,0 @@
1
- /**
2
- * Media Source Extensions (MSE) & Adaptive Bitrate (ABR) Types
3
- * Pure custom implementation
4
- */
5
- /**
6
- * SourceBuffer configuration
7
- */
8
- export interface SourceBufferConfig {
9
- type: 'video' | 'audio';
10
- mimeType: string;
11
- codecs: string;
12
- }
13
- /**
14
- * Buffer range
15
- */
16
- export interface BufferRange {
17
- start: number;
18
- end: number;
19
- }
20
- /**
21
- * Buffer state
22
- */
23
- export interface BufferState {
24
- video: BufferRange[];
25
- audio: BufferRange[];
26
- buffered: number;
27
- }
28
- /**
29
- * Segment to be loaded/appended
30
- */
31
- export interface SegmentData {
32
- type: 'video' | 'audio';
33
- data: ArrayBuffer;
34
- sequence: number;
35
- duration: number;
36
- timestamp: number;
37
- encrypted: boolean;
38
- keyUri?: string;
39
- iv?: Uint8Array;
40
- }
41
- /**
42
- * Quality level (bitrate/resolution)
43
- */
44
- export interface QualityLevel {
45
- id: string;
46
- label: string;
47
- width: number;
48
- height: number;
49
- bandwidth: number;
50
- codecs: string;
51
- frameRate?: number;
52
- uri: string;
53
- }
54
- /**
55
- * ABR algorithm configuration
56
- */
57
- export interface AbrConfig {
58
- enabled: boolean;
59
- minAutoBitrate?: number;
60
- maxAutoBitrate?: number;
61
- startBitrate?: number;
62
- fastSwitching?: boolean;
63
- bufferTarget?: number;
64
- }
65
- /**
66
- * Network statistics
67
- */
68
- export interface NetworkStats {
69
- bandwidth: number;
70
- latency: number;
71
- downloadTime: number;
72
- bytesLoaded: number;
73
- estimatedBandwidth: number;
74
- }
75
- /**
76
- * Bandwidth estimation sample
77
- */
78
- export interface BandwidthSample {
79
- timestamp: number;
80
- bytesLoaded: number;
81
- duration: number;
82
- bandwidth: number;
83
- }
84
- /**
85
- * Streaming engine state
86
- */
87
- export type StreamingState = 'idle' | 'loading' | 'buffering' | 'playing' | 'paused' | 'seeking' | 'stalled' | 'ended' | 'error';
88
- /**
89
- * Streaming error
90
- */
91
- export interface StreamingError {
92
- code: StreamingErrorCode;
93
- message: string;
94
- fatal: boolean;
95
- details?: any;
96
- }
97
- export declare const StreamingErrorCode: {
98
- readonly MANIFEST_LOAD_ERROR: "MANIFEST_LOAD_ERROR";
99
- readonly MANIFEST_PARSE_ERROR: "MANIFEST_PARSE_ERROR";
100
- readonly SEGMENT_LOAD_ERROR: "SEGMENT_LOAD_ERROR";
101
- readonly SEGMENT_APPEND_ERROR: "SEGMENT_APPEND_ERROR";
102
- readonly FRAG_LOAD_ERROR: "FRAG_LOAD_ERROR";
103
- readonly BUFFER_FULL_ERROR: "BUFFER_FULL_ERROR";
104
- readonly BUFFER_APPEND_ERROR: "BUFFER_APPEND_ERROR";
105
- readonly BUFFER_STALLED_ERROR: "BUFFER_STALLED_ERROR";
106
- readonly MEDIA_SOURCE_ERROR: "MEDIA_SOURCE_ERROR";
107
- readonly CODEC_NOT_SUPPORTED: "CODEC_NOT_SUPPORTED";
108
- readonly NETWORK_ERROR: "NETWORK_ERROR";
109
- readonly TIMEOUT_ERROR: "TIMEOUT_ERROR";
110
- readonly CORS_ERROR: "CORS_ERROR";
111
- readonly DRM_MISSING_CONFIG: "DRM_MISSING_CONFIG";
112
- readonly UNKNOWN_ERROR: "UNKNOWN_ERROR";
113
- };
114
- export type StreamingErrorCode = typeof StreamingErrorCode[keyof typeof StreamingErrorCode];
115
- /**
116
- * Segment loader configuration
117
- */
118
- export interface SegmentLoaderConfig {
119
- maxRetries: number;
120
- retryDelay: number;
121
- timeout: number;
122
- headers?: Record<string, string>;
123
- withCredentials?: boolean;
124
- }
125
- /**
126
- * Segment load request
127
- */
128
- export interface SegmentLoadRequest {
129
- url: string;
130
- sequence: number;
131
- type: 'video' | 'audio';
132
- byteRange?: {
133
- start: number;
134
- end: number;
135
- };
136
- onProgress?: (loaded: number, total: number) => void;
137
- withCredentials?: boolean;
138
- }
139
- /**
140
- * Segment load response
141
- */
142
- export interface SegmentLoadResponse {
143
- data: ArrayBuffer;
144
- url: string;
145
- sequence: number;
146
- duration: number;
147
- stats: {
148
- startTime: number;
149
- endTime: number;
150
- bytesLoaded: number;
151
- bandwidth: number;
152
- };
153
- }
154
- /**
155
- * Current playback info
156
- */
157
- export interface PlaybackInfo {
158
- state: StreamingState;
159
- currentTime: number;
160
- duration: number;
161
- buffered: BufferState;
162
- currentQuality: QualityLevel | null;
163
- availableQualities: QualityLevel[];
164
- bandwidth: NetworkStats;
165
- isLive: boolean;
166
- latency?: number;
167
- }
168
- //# sourceMappingURL=streaming.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"streaming.types.d.ts","sourceRoot":"","sources":["../../src/types/streaming.types.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- /**
2
- * Timeline Marker Types
3
- * For rich video players with interactive event markers (sports, live events, etc.)
4
- */
5
- export interface TimelineEvent {
6
- /** Event timestamp in seconds */
7
- time: number;
8
- /** Event type (goal, yellow, red, substitution, kickoff, etc.) */
9
- type: string;
10
- /** Optional custom icon (emoji or SVG) */
11
- icon?: string;
12
- /** Optional custom color */
13
- color?: string;
14
- /** Label for tooltip */
15
- label?: string;
16
- /** Any additional metadata */
17
- metadata?: Record<string, any>;
18
- }
19
- /**
20
- * Timeline Marker Configuration
21
- */
22
- export interface TimelineConfig {
23
- /** Enable timeline markers */
24
- enabled?: boolean;
25
- /** Timeline events */
26
- events?: TimelineEvent[];
27
- /** Marker size in px */
28
- markerSize?: number;
29
- /** Show tooltip on hover */
30
- showTooltip?: boolean;
31
- /** Auto-parse from raw event data (e.g., sports API) */
32
- parser?: (rawEvents: any[]) => TimelineEvent[];
33
- }
34
- /**
35
- * Default event type styling
36
- */
37
- export declare const DEFAULT_EVENT_STYLES: Record<string, {
38
- icon: string;
39
- color: string;
40
- }>;
41
- /**
42
- * Helper to parse sports API events to timeline events
43
- * Example for football/soccer data structure
44
- */
45
- export declare function parseSportsEvents(rawEvents: any[]): TimelineEvent[];
46
- //# sourceMappingURL=timeline.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"timeline.types.d.ts","sourceRoot":"","sources":["../../src/types/timeline.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,IAAI,EAAE,MAAM,CAAC;IAEb,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IAEb,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,sBAAsB;IACtB,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IAEzB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,wDAAwD;IACxD,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,aAAa,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAahF,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,aAAa,EAAE,CAgDnE"}