@codercms/web-player 0.0.27 → 0.0.29

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.
@@ -166,6 +166,7 @@ export class HLSLoader {
166
166
  this.hls.destroy();
167
167
  }
168
168
  catch (e) { }
169
+ // Reset current time to ensure video playback will start from needed position
169
170
  this.hls = null;
170
171
  }
171
172
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HLSLoader.js","sourceRoot":"","sources":["HLSLoader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAIxE,OAAO,GAAG,EAAE,EAA8B,MAAM,QAAQ,CAAC;AAGzD,MAAM,kBAAkB,GAAG,CAAC,CAAC,CAAC;AAI9B,MAAM,OAAO,SAAS;IAKZ;IACA;IALC,GAAG,GAAe,IAAI,CAAC;IACvB,SAAS,CAAkB;IAErC,YACS,OAAsC,EACtC,EAAoB,EAC5B,SAA2B;QAFnB,YAAO,GAAP,OAAO,CAA+B;QACtC,OAAE,GAAF,EAAE,CAAkB;QAG5B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACxB,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAC;SACvC;QAED,IAAI,SAAS,EAAE;YACd,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;SAClC;aAAM;YACN,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;SACpB;IACF,CAAC;IAED,IAAI,CAAC,MAAkB;QACtB,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE;YAC/B,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC;SAC3E;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEhD,6BAA6B;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,IAAI,EAAE,CAAC;SACZ;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;QAE3B,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE;YACpC,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;SACzC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QAEf,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEzB,OAAO,IAAI,OAAO,CAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAClD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;YAErC,sBAAsB;YACtB,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBACjD,IAAI,CAAC,IAAI,EAAE,CAAC;gBAEZ,MAAM,CAAC,IAAI,YAAY,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAEpB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACpD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC/C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnC,OAAO,EAAE,CAAC;YACX,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACzF,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACjD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACxF,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACjD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACxD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvD,MAAM,MAAM,GAAiB,EAAE,CAAC;gBAEhC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE;oBACrC,MAAM,CAAC,IAAI,CAAC;wBACX,EAAE,EAAE,KAAK,CAAC,EAAE;wBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;wBACtB,UAAU,EAAE,KAAK;qBACjB,CAAC,CAAC;iBACH;gBAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACxC,IAAI,IAAI,CAAC,KAAK,EAAE;oBACf,QAAQ,IAAI,CAAC,IAAI,EAAE;wBAClB,KAAK,GAAG,CAAC,UAAU,CAAC,WAAW;4BAC9B,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;4BAC7D,GAAG,CAAC,iBAAiB,EAAE,CAAC;4BACxB,MAAM;wBAEP,KAAK,GAAG,CAAC,UAAU,CAAC,aAAa;4BAChC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,IAAI,CAAC,CAAC;4BAEvD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE;gCACrC,OAAO,EAAE,wBAAwB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;gCACrD,IAAI;6BACJ,CAAC,CAAC;4BACH,qDAAqD;4BACrD,kEAAkE;4BAClE,yEAAyE;4BACzE,uEAAuE;4BACvE,MAAM;wBACP;4BACC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,IAAI,CAAC,CAAC;4BAEvD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE;gCACrC,OAAO,EAAE,wBAAwB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;gCACrD,IAAI;6BACJ,CAAC,CAAC;4BAEH,iBAAiB;4BACjB,GAAG,CAAC,OAAO,EAAE,CAAC;4BACd,MAAM;qBACP;iBACD;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,MAAe;QACvC,MAAM,SAAS,GAAmB,EAAE,CAAC;QAErC,IAAI,GAAG,GAAG,CAAC,CAAC;QAEZ,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC3B,MAAM,MAAM,GAAiB;gBAC5B,EAAE,EAAE,GAAG;gBACP,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,KAAK;aACjB,CAAC;YAEF,GAAG,EAAE,CAAC;YAEN,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACvB;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;IACjE,CAAC;IAED,gBAAgB,CAAC,EAAU,EAAE,QAAiB;QAC7C,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,OAAO;SACP;QAED,iCAAiC;QACjC,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,QAAQ,EAAE;YACd,0CAA0C;YAC1C,IAAI,CAAC,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;YAC1C,4BAA4B;YAC5B,4BAA4B;SAC5B;IACF,CAAC;IAED,kBAAkB,CAAC,EAAU,EAAE,QAAiB;QAC/C,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,OAAO;SACP;QAED,IAAI,QAAQ,EAAE;YACb,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;YACxB,OAAO;SACP;QAED,oGAAoG;QACpG,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,EAAE,EAAE;YACjC,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACrF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACpF,OAAO;SACP;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,qBAAqB;QACpB,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,IAAI;QACH,IAAI,IAAI,CAAC,GAAG,EAAE;YACb,IAAI;gBACH,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACpB;YAAC,OAAO,CAAC,EAAE,GAAE;YAEd,IAAI;gBACH,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;aACnB;YAAC,OAAO,CAAC,EAAE,GAAE;YAEd,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;SAChB;IACF,CAAC;IAED,WAAW;QACV,OAAO,gBAAgB,EAAE,CAAC;IAC3B,CAAC;CACD;AAED,MAAM,UAAU,gBAAgB;IAC/B,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"HLSLoader.js","sourceRoot":"","sources":["HLSLoader.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,11 @@ export declare enum PlayerEvents {
21
21
  FullScreenExit = "player.fullscreenExit",
22
22
  FullScreenToggle = "player.fullscreenToggle",
23
23
  LoadingStarted = "player.loadingStarted",
24
+ LoadingMetadataEnded = "player.loadingMetadataEnded",
25
+ LoadingMetadataFailed = "player.loadingMedataFailed",
24
26
  LoadingEnded = "player.loadingEnded",
27
+ BufferingStarted = "player.bufferingStarted",
28
+ BufferingEnded = "player.bufferingEnded",
25
29
  PlaybackBufferingProgress = "player.bufferingProgress",
26
30
  PlaybackDurationChange = "player.durationChange",
27
31
  PlaybackTimeUpdate = "player.timeUpdate",
@@ -52,7 +56,11 @@ export type VideoPlayerEventsMap = {
52
56
  [PlayerEvents.FullScreenExit]: () => void;
53
57
  [PlayerEvents.FullScreenToggle]: (isFullScreen: boolean) => void;
54
58
  [PlayerEvents.LoadingStarted]: (params: PlayerLoadParams) => void;
59
+ [PlayerEvents.LoadingMetadataEnded]: () => void;
60
+ [PlayerEvents.LoadingMetadataFailed]: (err: Error) => void;
55
61
  [PlayerEvents.LoadingEnded]: () => void;
62
+ [PlayerEvents.BufferingStarted]: () => void;
63
+ [PlayerEvents.BufferingEnded]: () => void;
56
64
  [PlayerEvents.PlaybackBufferingProgress]: (buffered: Array<BufferedPart>) => void;
57
65
  [PlayerEvents.PlaybackDurationChange]: (duration: number) => void;
58
66
  [PlayerEvents.PlaybackTimeUpdate]: (currentTime: number) => void;
@@ -87,6 +95,12 @@ export type BufferedPart = {
87
95
  type PlayerConfig = {
88
96
  hlsConfig?: HLSLoaderConfig;
89
97
  };
98
+ declare enum VideoLoadingState {
99
+ LoadingMetadata = 0,
100
+ LoadingData = 1,
101
+ LoadingDone = 2,
102
+ LoadingFailed = 3
103
+ }
90
104
  export declare class VideoPlayer {
91
105
  protected _el?: HTMLMediaElement;
92
106
  protected _containerEl?: HTMLElement;
@@ -96,6 +110,8 @@ export declare class VideoPlayer {
96
110
  protected loadAbortController: AbortController | null;
97
111
  protected currentLoader: LoaderInterface | null;
98
112
  protected hlsLoader: HLSLoader | null;
113
+ protected _loadingState: VideoLoadingState;
114
+ protected _isBuffering: boolean;
99
115
  protected _isLoading: boolean;
100
116
  protected _isFullScreen: boolean;
101
117
  protected _paused: boolean;
@@ -127,10 +143,11 @@ export declare class VideoPlayer {
127
143
  constructor(el?: HTMLMediaElement, cfg?: PlayerConfig);
128
144
  private _registerVideoEvents;
129
145
  private _unregisterVideoElementEvents;
146
+ private _onBufferingStarted;
147
+ private _onBufferingEnded;
148
+ private _calcIsLoadingState;
130
149
  private _onProgress;
131
- private _onLoaded;
132
150
  private _resetState;
133
- private _onLoaderLoading;
134
151
  private _onLoaderQualityLevelsUpdated;
135
152
  private _onLoaderQualityLevelSwitching;
136
153
  private _onLoaderQualityLevelSwitched;
@@ -139,7 +156,6 @@ export declare class VideoPlayer {
139
156
  private _onLoaderAudioTrackSwitched;
140
157
  private _onFullScreenChange;
141
158
  private _updateIsFullScreen;
142
- private _updateIsLoading;
143
159
  private _updateBufferedParts;
144
160
  private _updateDuration;
145
161
  private _updateCurrentTime;
@@ -179,6 +195,8 @@ export declare class VideoPlayer {
179
195
  get containerEl(): HTMLElement;
180
196
  get loader(): LoaderInterface | null;
181
197
  get isFullScreen(): boolean;
198
+ get loadingState(): VideoLoadingState;
199
+ get isBuffering(): boolean;
182
200
  get isLoading(): boolean;
183
201
  get qualityLevels(): QualityLevel[];
184
202
  get isAutoQuality(): boolean;
@@ -22,8 +22,16 @@ export var PlayerEvents;
22
22
  PlayerEvents["FullScreenEnter"] = "player.fullscreenEnter";
23
23
  PlayerEvents["FullScreenExit"] = "player.fullscreenExit";
24
24
  PlayerEvents["FullScreenToggle"] = "player.fullscreenToggle";
25
+ // LoadingStarted happens when player's load method called
25
26
  PlayerEvents["LoadingStarted"] = "player.loadingStarted";
27
+ // LoadingMetadataEnded happens when loader process has been completed
28
+ PlayerEvents["LoadingMetadataEnded"] = "player.loadingMetadataEnded";
29
+ // LoadingMetadataFailed happens when loader fails to load video
30
+ PlayerEvents["LoadingMetadataFailed"] = "player.loadingMedataFailed";
31
+ // LoadingEnded happens when metadata loading is done and there's also initial video content fetched
26
32
  PlayerEvents["LoadingEnded"] = "player.loadingEnded";
33
+ PlayerEvents["BufferingStarted"] = "player.bufferingStarted";
34
+ PlayerEvents["BufferingEnded"] = "player.bufferingEnded";
27
35
  PlayerEvents["PlaybackBufferingProgress"] = "player.bufferingProgress";
28
36
  PlayerEvents["PlaybackDurationChange"] = "player.durationChange";
29
37
  PlayerEvents["PlaybackTimeUpdate"] = "player.timeUpdate";
@@ -44,6 +52,13 @@ export var Loader;
44
52
  Loader[Loader["HLS"] = 1] = "HLS";
45
53
  Loader[Loader["DASH"] = 2] = "DASH";
46
54
  })(Loader || (Loader = {}));
55
+ var VideoLoadingState;
56
+ (function (VideoLoadingState) {
57
+ VideoLoadingState[VideoLoadingState["LoadingMetadata"] = 0] = "LoadingMetadata";
58
+ VideoLoadingState[VideoLoadingState["LoadingData"] = 1] = "LoadingData";
59
+ VideoLoadingState[VideoLoadingState["LoadingDone"] = 2] = "LoadingDone";
60
+ VideoLoadingState[VideoLoadingState["LoadingFailed"] = 3] = "LoadingFailed";
61
+ })(VideoLoadingState || (VideoLoadingState = {}));
47
62
  export class VideoPlayer {
48
63
  _el;
49
64
  _containerEl;
@@ -53,6 +68,10 @@ export class VideoPlayer {
53
68
  loadAbortController = null;
54
69
  currentLoader = null;
55
70
  hlsLoader = null;
71
+ _loadingState = VideoLoadingState.LoadingDone;
72
+ // _isBuffering indicates is there and buffering process which block playback
73
+ _isBuffering = false;
74
+ // _isLoading flag indicates combined state of buffering + video loading progress
56
75
  _isLoading = false;
57
76
  _isFullScreen = false;
58
77
  _paused = true;
@@ -91,8 +110,6 @@ export class VideoPlayer {
91
110
  this.attachEl(el);
92
111
  }
93
112
  screenfull.on('change', this._onFullScreenChange.bind(this));
94
- // Reset state
95
- this.emitter.on(LoaderEvents.Loading, this._onLoaderLoading.bind(this));
96
113
  this.emitter.on(LoaderEvents.QualityLevelsUpdated, this._onLoaderQualityLevelsUpdated.bind(this));
97
114
  this.emitter.on(LoaderEvents.QualityLevelSwitching, this._onLoaderQualityLevelSwitching.bind(this));
98
115
  this.emitter.on(LoaderEvents.QualityLevelSwitched, this._onLoaderQualityLevelSwitched.bind(this));
@@ -110,8 +127,7 @@ export class VideoPlayer {
110
127
  this._updatePaused(el.paused);
111
128
  });
112
129
  this.elEventsRegistry.subscribe('playing', () => {
113
- // Playing event can occur before canplaythrough event, so send loaded event there too
114
- this._onLoaded();
130
+ this._onBufferingEnded();
115
131
  this.emitter.emit(PlayerEvents.Playing);
116
132
  });
117
133
  this.elEventsRegistry.subscribe('seeking', () => {
@@ -121,20 +137,17 @@ export class VideoPlayer {
121
137
  this.emitter.emit(PlayerEvents.Seeked);
122
138
  });
123
139
  this.elEventsRegistry.subscribe('waiting', () => {
124
- // Loading event is already sent
125
- if (this._isLoading) {
126
- return;
127
- }
128
- this._updateIsLoading(true);
140
+ this._onBufferingStarted();
129
141
  });
130
142
  this.elEventsRegistry.subscribe('ended', () => {
143
+ this._onBufferingEnded();
131
144
  this.emitter.emit(PlayerEvents.Ended);
132
145
  });
133
146
  this.elEventsRegistry.subscribe('progress', () => {
134
147
  this._onProgress(el);
135
148
  });
136
149
  this.elEventsRegistry.subscribe('canplaythrough', () => {
137
- this._onLoaded();
150
+ this._onBufferingEnded();
138
151
  });
139
152
  this.elEventsRegistry.subscribe('durationchange', () => {
140
153
  let newDur = el.duration;
@@ -185,6 +198,30 @@ export class VideoPlayer {
185
198
  _unregisterVideoElementEvents() {
186
199
  this.elEventsRegistry?.unsubscribeAll();
187
200
  }
201
+ _onBufferingStarted() {
202
+ if (!this._isBuffering) {
203
+ this._isBuffering = true;
204
+ this._calcIsLoadingState();
205
+ this.emitter.emit(PlayerEvents.BufferingStarted);
206
+ }
207
+ }
208
+ _onBufferingEnded() {
209
+ if (this._isBuffering) {
210
+ this._isBuffering = false;
211
+ if (this._loadingState === VideoLoadingState.LoadingData) {
212
+ this._loadingState = VideoLoadingState.LoadingDone;
213
+ this.emitter.emit(PlayerEvents.LoadingEnded);
214
+ }
215
+ this._calcIsLoadingState();
216
+ this.emitter.emit(PlayerEvents.BufferingEnded);
217
+ }
218
+ }
219
+ _calcIsLoadingState() {
220
+ const isFinishedVideoLoading = this._loadingState === VideoLoadingState.LoadingDone ||
221
+ this._loadingState === VideoLoadingState.LoadingFailed;
222
+ this._isLoading = !isFinishedVideoLoading || this._isBuffering;
223
+ this._isLoadingStore.set(this._isLoading);
224
+ }
188
225
  _onProgress(el) {
189
226
  const newBuf = el.buffered;
190
227
  const parts = [];
@@ -207,12 +244,7 @@ export class VideoPlayer {
207
244
  }
208
245
  this._updateBufferedParts(parts);
209
246
  }
210
- _onLoaded() {
211
- if (this._isLoading) {
212
- this._updateIsLoading(false);
213
- }
214
- }
215
- _resetState() {
247
+ _resetState(newLoadingState) {
216
248
  this._updateAudioTracks([]);
217
249
  this._updateQualityLevels([]);
218
250
  this._updateDuration(0);
@@ -222,10 +254,15 @@ export class VideoPlayer {
222
254
  this._currentQualityLevelStore.set(null);
223
255
  this._currentAudioTrack = null;
224
256
  this._currentAudioTrackStore.set(null);
225
- }
226
- _onLoaderLoading() {
227
- this._updateIsLoading(true);
228
- this._resetState();
257
+ if (newLoadingState !== undefined) {
258
+ this._loadingState = newLoadingState;
259
+ }
260
+ else if (this._loadingState !== VideoLoadingState.LoadingDone &&
261
+ this._loadingState !== VideoLoadingState.LoadingFailed) {
262
+ this._loadingState = VideoLoadingState.LoadingDone;
263
+ }
264
+ this._onBufferingEnded();
265
+ this._calcIsLoadingState();
229
266
  }
230
267
  _onLoaderQualityLevelsUpdated(newLevels) {
231
268
  // console.log('Quality levels updated', newLevels);
@@ -298,16 +335,6 @@ export class VideoPlayer {
298
335
  }
299
336
  this.emitter.emit(PlayerEvents.FullScreenToggle, isFullScreen);
300
337
  }
301
- _updateIsLoading(isLoading) {
302
- this._isLoading = isLoading;
303
- this._isLoadingStore.set(isLoading);
304
- if (isLoading) {
305
- this.emitter.emit(PlayerEvents.LoadingStarted);
306
- }
307
- else {
308
- this.emitter.emit(PlayerEvents.LoadingEnded);
309
- }
310
- }
311
338
  _updateBufferedParts(buffered) {
312
339
  this._buffered = buffered;
313
340
  this._bufferedStore.set(buffered);
@@ -423,7 +450,6 @@ export class VideoPlayer {
423
450
  destroy() {
424
451
  this.detachEl();
425
452
  this.detachContainerEl();
426
- this.emitter.off(LoaderEvents.Loading, this._onLoaderLoading.bind(this));
427
453
  this.emitter.off(LoaderEvents.QualityLevelsUpdated, this._onLoaderQualityLevelsUpdated.bind(this));
428
454
  this.emitter.off(LoaderEvents.QualityLevelSwitching, this._onLoaderQualityLevelSwitching.bind(this));
429
455
  this.emitter.off(LoaderEvents.QualityLevelSwitched, this._onLoaderQualityLevelSwitched.bind(this));
@@ -443,11 +469,19 @@ export class VideoPlayer {
443
469
  this.loadAbortController.abort('Player stop called');
444
470
  this.loadAbortController = null;
445
471
  }
446
- this.currentLoader.stop();
472
+ if (!this.el.paused) {
473
+ this.el.pause();
474
+ this._paused = true;
475
+ this._pausedStore.set(true);
476
+ }
477
+ try {
478
+ this.currentLoader.stop();
479
+ }
480
+ catch (e) {
481
+ // Ignore any loader stopping error
482
+ console.log('loader error during stop', e);
483
+ }
447
484
  this._resetState();
448
- this._paused = true;
449
- this._pausedStore.set(true);
450
- this._updateIsLoading(false);
451
485
  }
452
486
  }
453
487
  async load(params) {
@@ -477,16 +511,30 @@ export class VideoPlayer {
477
511
  this.currentLoader.stop();
478
512
  this.currentLoader = neededLoader;
479
513
  }
480
- // Send video loading event
481
- this._isLoading = true;
514
+ this._resetState(VideoLoadingState.LoadingMetadata);
515
+ this._calcIsLoadingState();
482
516
  this.emitter.emit(PlayerEvents.LoadingStarted, params);
483
- await neededLoader.load({
484
- abortSignal: this.loadAbortController.signal,
485
- url: params.url,
486
- startLevel: params.startLevel,
487
- startPosition: params.startPosition,
488
- audioTrack: params.audioTrack
489
- });
517
+ try {
518
+ await neededLoader.load({
519
+ abortSignal: this.loadAbortController.signal,
520
+ url: params.url,
521
+ startLevel: params.startLevel,
522
+ startPosition: params.startPosition,
523
+ audioTrack: params.audioTrack
524
+ });
525
+ }
526
+ catch (e) {
527
+ this.loadAbortController = null;
528
+ this._loadingState = VideoLoadingState.LoadingFailed;
529
+ this._calcIsLoadingState();
530
+ this.emitter.emit(PlayerEvents.LoadingMetadataFailed, e);
531
+ throw e;
532
+ }
533
+ this.loadAbortController = null;
534
+ this._loadingState = VideoLoadingState.LoadingData;
535
+ this._onBufferingStarted();
536
+ this._calcIsLoadingState();
537
+ this.emitter.emit(PlayerEvents.LoadingMetadataEnded);
490
538
  if (params.playAfterLoad) {
491
539
  await this.play();
492
540
  }
@@ -630,6 +678,13 @@ export class VideoPlayer {
630
678
  get isFullScreen() {
631
679
  return this._isFullScreen;
632
680
  }
681
+ get loadingState() {
682
+ return this._loadingState;
683
+ }
684
+ get isBuffering() {
685
+ return this._isBuffering;
686
+ }
687
+ // isLoading indicates is there any buffering process or metadata loading
633
688
  get isLoading() {
634
689
  return this._isLoading;
635
690
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VideoPlayer.js","sourceRoot":"","sources":["VideoPlayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAiB,QAAQ,EAAE,QAAQ,EAAiB,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,SAAS,EAAwB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,CAAN,IAAY,YAuCX;AAvCD,WAAY,YAAY;IACvB,oCAAoB,CAAA;IACpB,sCAAsB,CAAA;IACtB,sCAAsB,CAAA;IACtB,sCAAsB,CAAA;IACtB,0CAA0B,CAAA;IAC1B,0CAA0B,CAAA;IAC1B,wCAAwB,CAAA;IAExB,oEAAoD,CAAA;IACpD,oEAAoD,CAAA;IAEpD,4EAA4D,CAAA;IAC5D,4EAA4D,CAAA;IAE5D,0DAA0C,CAAA;IAC1C,wDAAwC,CAAA;IACxC,4DAA4C,CAAA;IAE5C,wDAAwC,CAAA;IACxC,oDAAoC,CAAA;IAEpC,sEAAsD,CAAA;IACtD,gEAAgD,CAAA;IAChD,wDAAwC,CAAA;IACxC,gEAAgD,CAAA;IAEhD,oDAAoC,CAAA;IACpC,gDAAgC,CAAA;IAEhC,8DAA8C,CAAA;IAE9C,oEAAoD,CAAA;IACpD,sEAAsD,CAAA;IACtD,oEAAoD,CAAA;IAEpD,gEAAgD,CAAA;IAChD,kEAAkD,CAAA;IAClD,gEAAgD,CAAA;AACjD,CAAC,EAvCW,YAAY,KAAZ,YAAY,QAuCvB;AAyCD,MAAM,CAAN,IAAY,MAIX;AAJD,WAAY,MAAM;IACjB,uCAAM,CAAA;IACN,iCAAG,CAAA;IACH,mCAAI,CAAA;AACL,CAAC,EAJW,MAAM,KAAN,MAAM,QAIjB;AAmBD,MAAM,OAAO,WAAW;IACb,GAAG,CAAoB;IACvB,YAAY,CAAe;IAC3B,gBAAgB,CAAsC;IAEtD,IAAI,CAAe;IAEnB,OAAO,GAAuC,IAAI,YAAY,EAAwB,CAAC;IAEvF,mBAAmB,GAA2B,IAAI,CAAC;IAEnD,aAAa,GAA2B,IAAI,CAAC;IAC7C,SAAS,GAAqB,IAAI,CAAC;IAEnC,UAAU,GAAG,KAAK,CAAC;IACnB,aAAa,GAAG,KAAK,CAAC;IAEtB,OAAO,GAAG,IAAI,CAAC;IACf,SAAS,GAAG,CAAC,CAAC;IACd,YAAY,GAAG,CAAC,CAAC;IACjB,aAAa,GAAG,CAAC,CAAC;IAClB,MAAM,GAAG,KAAK,CAAC;IACf,OAAO,GAAG,CAAC,CAAC;IACZ,SAAS,GAAwB,EAAE,CAAC;IAEpC,cAAc,GAAG,IAAI,CAAC;IACtB,oBAAoB,GAAwB,IAAI,CAAC;IACjD,cAAc,GAAwB,EAAE,CAAC;IAEzC,kBAAkB,GAAsB,IAAI,CAAC;IAC7C,YAAY,GAAiB,EAAE,CAAC;IAEhC,kBAAkB,GAAsB,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACrE,eAAe,GAAsB,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE/D,YAAY,GAAsB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzD,cAAc,GAAqB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5D,iBAAiB,GAAqB,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClE,kBAAkB,GAAqB,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpE,WAAW,GAAsB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,YAAY,GAAqB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,cAAc,GAAkC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEzE,mBAAmB,GAAsB,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACvE,yBAAyB,GAAkC,QAAQ,CAC5E,IAAI,CAAC,oBAAoB,CACzB,CAAC;IACQ,mBAAmB,GAA6B,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAE9E,uBAAuB,GAAgC,QAAQ,CACxE,IAAI,CAAC,kBAAkB,CACvB,CAAC;IACQ,iBAAiB,GAA2B,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAElF,YAAY,EAAqB,EAAE,GAAkB;QACpD,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,EAAE,CAAC;QAEtB,gCAAgC;QAChC,IAAI,CAAC,OAAO,EAAE;YACb,OAAO;SACP;QAED,IAAI,EAAE,EAAE;YACP,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;SAClB;QAED,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7D,cAAc;QACd,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAExE,IAAI,CAAC,OAAO,CAAC,EAAE,CACd,YAAY,CAAC,oBAAoB,EACjC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,EAAE,CACd,YAAY,CAAC,qBAAqB,EAClC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9C,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,EAAE,CACd,YAAY,CAAC,oBAAoB,EACjC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9F,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,mBAAmB,EAAE,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/F,CAAC;IAEO,oBAAoB,CAAC,EAAoB;QAChD,IAAI,CAAC,gBAAgB,EAAE,cAAc,EAAE,CAAC;QACxC,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAmB,EAAE,CAAC,CAAC;QAEnE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;YAC5C,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE;YAC7C,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,EAAE;YAC/C,sFAAsF;YACtF,IAAI,CAAC,SAAS,EAAE,CAAC;YAEjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,EAAE;YAC/C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE;YAC9C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,EAAE;YAC/C,gCAAgC;YAChC,IAAI,IAAI,CAAC,UAAU,EAAE;gBACpB,OAAO;aACP;YAED,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE;YAC7C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,EAAE;YAChD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE;YACtD,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE;YACtD,IAAI,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE;gBACvC,MAAM,GAAG,CAAC,CAAC;aACX;YAED,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,EAAE;gBAC9B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;aAC7B;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,EAAE;YAClD,IAAI,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE;gBACzC,OAAO,GAAG,CAAC,CAAC;aACZ;YAED,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,EAAE;gBAClC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aACjC;YAED,4DAA4D;YAC5D,yDAAyD;YACzD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,EAAE;YAClD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC;YAEhC,IAAI,IAAI,CAAC,aAAa,KAAK,OAAO,EAAE;gBACnC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;aAClC;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;YACzB,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,CAAC;YAE1B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC;YAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC;YAE/C,IAAI,YAAY,EAAE;gBACjB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;aAC3B;YAED,IAAI,aAAa,EAAE;gBAClB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;aAC5B;YAED,IAAI,YAAY,IAAI,aAAa,EAAE;gBAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;aACpE;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAc,EAAE,EAAE;YAC3D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,6BAA6B;QACpC,IAAI,CAAC,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACzC,CAAC;IAEO,WAAW,CAAC,EAAoB;QACvC,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC;QAE3B,MAAM,KAAK,GAAmB,EAAE,CAAC;QAEjC,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aAC3D;YAED,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAEjC,OAAO;SACP;QAED,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAE1B,SAAS,GAAG,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAE/E,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAC3B;QAED,IAAI,CAAC,SAAS,EAAE;YACf,OAAO;SACP;QAED,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAEO,SAAS;QAChB,IAAI,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SAC7B;IACF,CAAC;IAEO,WAAW;QAClB,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAE9B,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAE9B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEO,gBAAgB;QACvB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAE5B,IAAI,CAAC,WAAW,EAAE,CAAC;IACpB,CAAC;IAEO,6BAA6B,CAAC,SAAyB;QAC9D,oDAAoD;QAEpD,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAEO,8BAA8B,CAAC,UAAkB,EAAE,WAAoB;QAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE;gBACtD,UAAU;gBACV,MAAM,EAAE,IAAI,CAAC,cAAc;aAC3B,CAAC,CAAC;YACH,OAAO;SACP;QAED,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC;QAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC9E,CAAC;IAEO,6BAA6B,CAAC,UAAkB,EAAE,WAAoB;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE;gBACtD,UAAU;gBACV,MAAM,EAAE,IAAI,CAAC,cAAc;aAC3B,CAAC,CAAC;YACH,OAAO;SACP;QAED,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACjD,CAAC;IAEO,2BAA2B,CAAC,SAAuB;QAC1D,kDAAkD;QAElD,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAEO,4BAA4B,CAAC,UAAkB;QACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,QAAQ,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBACpD,UAAU;gBACV,MAAM,EAAE,IAAI,CAAC,YAAY;aACzB,CAAC,CAAC;YACH,OAAO;SACP;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAEO,2BAA2B,CAAC,UAAkB;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,QAAQ,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBACpD,UAAU;gBACV,MAAM,EAAE,IAAI,CAAC,YAAY;aACzB,CAAC,CAAC;YACH,OAAO;SACP;QAED,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QAExC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAEO,mBAAmB,GAAG,GAAG,EAAE;QAClC,MAAM,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC;QAC9C,IAAI,aAAa,KAAK,IAAI,CAAC,aAAa,EAAE;YACzC,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;SACxC;IACF,CAAC,CAAC;IAEM,mBAAmB,CAAC,YAAqB;QAChD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAE1C,IAAI,YAAY,EAAE;YACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;SAChD;aAAM;YACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;SAC/C;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAChE,CAAC;IAEO,gBAAgB,CAAC,SAAkB;QAC1C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEpC,IAAI,SAAS,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;SAC/C;aAAM;YACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;SAC7C;IACF,CAAC;IAEO,oBAAoB,CAAC,QAAwB;QACpD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;IAEO,eAAe,CAAC,QAAgB;QACvC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAClE,CAAC;IAEO,kBAAkB,CAAC,WAAmB;QAC7C,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAExC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAEO,aAAa,CAAC,MAAc;QACnC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAEO,YAAY,CAAC,KAAc;QAClC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAE5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAEO,aAAa,CAAC,MAAe;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE9B,IAAI,CAAC,MAAM,EAAE;YACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;SACrC;aAAM;YACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SACtC;IACF,CAAC;IAEO,oBAAoB,CAAC,MAAsB;QAClD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAErC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAEO,mBAAmB,CAAC,KAAmB,EAAE,aAAsB;QACtE,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAClC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAE5C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IAC5E,CAAC;IAEO,kBAAkB,CAAC,WAAyB;QACnD,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAExC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;IAEO,wBAAwB,CAAC,UAAsB;QACtD,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC;QACrC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;IAED,QAAQ,CAAC,EAAoB;QAC5B,IAAI,IAAI,CAAC,GAAG,KAAK,EAAE,EAAE;YACpB,OAAO;SACP;QAED,IAAI,IAAI,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,QAAQ,EAAE,CAAC;SAChB;QAED,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QAEd,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAE1C,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAE9B,sBAAsB;QACtB,IAAI,gBAAgB,EAAE,EAAE;YACvB,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAC7B,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI;gBACtB,WAAW,EAAE,IAAI;aACjB,CACD,CAAC;SACF;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,iBAAiB,CAAC,EAAe;QAChC,IAAI,IAAI,CAAC,YAAY,KAAK,EAAE,EAAE;YAC7B,OAAO;SACP;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;YACtB,IAAI,CAAC,iBAAiB,EAAE,CAAC;SACzB;QAED,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,QAAQ;QACP,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,OAAO;SACP;QAED,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAErC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAEpB,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;QAErB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACvB,OAAO;SACP;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAE9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO;QACN,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,oBAAoB,EACjC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,qBAAqB,EAClC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9C,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,oBAAoB,EACjC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,mBAAmB,EAChC,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5C,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/F,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACtB;QAED,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI;QACH,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC7B,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;gBACrD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;aAChC;YAED,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SAC7B;IACF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAwB;QAClC,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC/E,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;SAChC;QAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,eAAe,EAAE,CAAC;QAEjD,IAAI,YAAY,GAA2B,IAAI,CAAC;QAEhD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE;YAChC,QAAQ,MAAM,CAAC,MAAM,EAAE;gBACtB,KAAK,MAAM,CAAC,GAAG;oBACd,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC9B,MAAM;gBACP;oBACC,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAC;aACxC;SACD;aAAM;YACN,sBAAsB;YACtB,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;SAC9B;QAED,IAAI,YAAY,KAAK,IAAI,EAAE;YAC1B,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAC3C;QAED,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,KAAK,YAAY,EAAE;YAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;SAClC;QAED,2BAA2B;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAEvD,MAAM,YAAY,CAAC,IAAI,CAAC;YACvB,WAAW,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM;YAC5C,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,UAAU,EAAE,MAAM,CAAC,UAAU;SAC7B,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,aAAa,EAAE;YACzB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;SAClB;IACF,CAAC;IAED,KAAK,CAAC,UAAU;QACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;YACpB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;SACnB;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAEjB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,IAAI;QACT,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,GAAW;QACjB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,IAAI,GAAG,GAAG,CAAC,EAAE;YACZ,GAAG,GAAG,CAAC,CAAC;SACR;aAAM,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE;YAChC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;SACrB;QAED,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC;IAC5B,CAAC;IAED,WAAW,CAAC,IAAY;QACvB,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEhD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IAED,YAAY,CAAC,IAAY;QACxB,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEhD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IAED,SAAS,CAAC,GAAW;QACpB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE;YACvB,OAAO;SACP;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;IACvB,CAAC;IAED,QAAQ,CAAC,KAAc;QACtB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,eAAe,CAAC,IAAY;QAC3B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC;IAC9B,CAAC;IAED,UAAU;QACT,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,gBAAgB;QACrB,2CAA2C;QAC3C,IAAI,MAAM,IAAI,CAAC,WAAW,EAAE;YAC3B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;aACvD;YAED,OAAO,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACzC;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;YACtB,OAAO,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SAClD;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,OAAO,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED,eAAe,CAAC,EAAU,EAAE,QAAiB;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,EAAE;YACX,MAAM,KAAK,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;SAC9C;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACxB,MAAM,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACjC;QAED,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,mBAAmB,CAAC,QAAiB;QACpC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACxB,MAAM,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACjC;QAED,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC7F,CAAC;IAED,aAAa,CAAC,OAAe,EAAE,QAAiB;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,EAAE;YACX,MAAM,KAAK,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAC;SACjD;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACxB,MAAM,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACjC;QAED,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED,SAAS,CAAuC,EAAK,EAAE,EAA2B;QACjF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,EAAgB,CAAC,CAAC;IACvC,CAAC;IAED,aAAa,CAAuC,EAAK,EAAE,EAA2B;QACrF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAgB,CAAC,CAAC;IACzC,CAAC;IAED,WAAW,CAAuC,EAAK,EAAE,EAA2B;QACnF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAgB,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,EAAE;QACL,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;SACvD;QAED,OAAO,IAAI,CAAC,GAAG,CAAC;IACjB,CAAC;IAED,IAAI,WAAW;QACd,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACvB,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;SAC3D;QAED,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,oBAAoB,CAAC;IAClC,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,kBAAkB,CAAC;IAChC,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,IAAI,WAAW;QACd,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,WAAW;QACd,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,UAAU;QACb,OAAO,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;CACD"}
1
+ {"version":3,"file":"VideoPlayer.js","sourceRoot":"","sources":["VideoPlayer.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,15 @@ const setLoaded = () => {
21
21
  };
22
22
  onMount(() => {
23
23
  player.subscribe(PlayerEvents.LoadingStarted, setLoading);
24
+ player.subscribe(PlayerEvents.BufferingStarted, setLoading);
24
25
  player.subscribe(PlayerEvents.LoadingEnded, setLoaded);
26
+ player.subscribe(PlayerEvents.BufferingEnded, setLoaded);
27
+ return () => {
28
+ player.unsubscribe(PlayerEvents.LoadingStarted, setLoading);
29
+ player.unsubscribe(PlayerEvents.BufferingStarted, setLoading);
30
+ player.unsubscribe(PlayerEvents.LoadingEnded, setLoaded);
31
+ player.unsubscribe(PlayerEvents.BufferingEnded, setLoaded);
32
+ };
25
33
  });
26
34
  </script>
27
35
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codercms/web-player",
3
- "version": "0.0.27",
3
+ "version": "0.0.29",
4
4
  "scripts": {
5
5
  "dev": "vite dev --port=5174",
6
6
  "build": "vite build && npm run package",