@gcorevideo/player 2.20.4 → 2.20.5
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.
- package/assets/error-screen/error_screen.ejs +3 -1
- package/dist/core.js +407 -205
- package/dist/index.css +1238 -1238
- package/dist/index.js +542 -383
- package/dist/plugins/index.css +993 -993
- package/dist/plugins/index.js +113 -159
- package/lib/Player.d.ts.map +1 -1
- package/lib/Player.js +2 -2
- package/lib/playback/BasePlayback.d.ts +11 -0
- package/lib/playback/BasePlayback.d.ts.map +1 -0
- package/lib/playback/BasePlayback.js +33 -0
- package/lib/playback/dash-playback/DashPlayback.d.ts +3 -2
- package/lib/playback/dash-playback/DashPlayback.d.ts.map +1 -1
- package/lib/playback/dash-playback/DashPlayback.js +7 -7
- package/lib/playback/hls-playback/HlsPlayback.d.ts +2 -2
- package/lib/playback/hls-playback/HlsPlayback.d.ts.map +1 -1
- package/lib/playback/hls-playback/HlsPlayback.js +8 -5
- package/lib/playback/utils.d.ts +2 -0
- package/lib/playback/utils.d.ts.map +1 -0
- package/lib/playback/utils.js +1 -0
- package/lib/playback.types.d.ts +10 -3
- package/lib/playback.types.d.ts.map +1 -1
- package/lib/playback.types.js +3 -3
- package/lib/plugins/context-menu/ContextMenu.d.ts.map +1 -1
- package/lib/plugins/context-menu/ContextMenu.js +1 -2
- package/lib/plugins/error-screen/ErrorScreen.d.ts +39 -24
- package/lib/plugins/error-screen/ErrorScreen.d.ts.map +1 -1
- package/lib/plugins/error-screen/ErrorScreen.js +70 -136
- package/lib/plugins/media-control/MediaControl.d.ts +1 -1
- package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
- package/lib/plugins/media-control/MediaControl.js +7 -5
- package/lib/plugins/multi-camera/MultiCamera.d.ts.map +1 -1
- package/lib/plugins/multi-camera/MultiCamera.js +2 -3
- package/lib/plugins/poster/Poster.js +1 -1
- package/lib/plugins/source-controller/SourceController.d.ts +2 -1
- package/lib/plugins/source-controller/SourceController.d.ts.map +1 -1
- package/lib/plugins/source-controller/SourceController.js +12 -6
- package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.d.ts +2 -1
- package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.d.ts.map +1 -1
- package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.js +19 -3
- package/lib/testUtils.d.ts +66 -2
- package/lib/testUtils.d.ts.map +1 -1
- package/lib/testUtils.js +95 -2
- package/package.json +2 -2
- package/src/Player.ts +2 -2
- package/src/__tests__/Player.test.ts +2 -3
- package/src/playback/BasePlayback.ts +41 -0
- package/src/playback/dash-playback/DashPlayback.ts +11 -15
- package/src/playback/hls-playback/HlsPlayback.ts +7 -5
- package/src/playback/utils.ts +2 -0
- package/src/playback.types.ts +11 -3
- package/src/plugins/context-menu/ContextMenu.ts +1 -2
- package/src/plugins/error-screen/ErrorScreen.ts +121 -195
- package/src/plugins/error-screen/__tests__/ErrorScreen.test.ts +113 -0
- package/src/plugins/error-screen/__tests__/__snapshots__/ErrorScreen.test.ts.snap +20 -0
- package/src/plugins/level-selector/__tests__/LevelSelector.test.ts +32 -57
- package/src/plugins/media-control/MediaControl.ts +8 -5
- package/src/plugins/multi-camera/MultiCamera.ts +2 -3
- package/src/plugins/poster/Poster.ts +1 -1
- package/src/plugins/source-controller/SourceController.ts +20 -14
- package/src/plugins/source-controller/__tests__/SourceController.test.ts +29 -46
- package/src/plugins/spinner-three-bounce/SpinnerThreeBounce.ts +20 -3
- package/src/testUtils.ts +100 -3
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
// Copyright 2014 Globo.com Player authors. All rights reserved.
|
|
2
2
|
// Use of this source code is governed by a BSD-style
|
|
3
|
-
// license that can be found
|
|
4
|
-
import { Events,
|
|
3
|
+
// license that can be found on https://github.com/clappr/hlsjs-playback/blob/main/LICENSE
|
|
4
|
+
import { Events, Log, Playback, PlayerError, Utils, $, } from '@clappr/core';
|
|
5
5
|
import { trace } from '@gcorevideo/utils';
|
|
6
6
|
import assert from 'assert';
|
|
7
7
|
import HLSJS from 'hls.js';
|
|
8
8
|
import { PlaybackErrorCode, } from '../../playback.types.js';
|
|
9
9
|
import { isHlsSource } from '../../utils/mediaSources.js';
|
|
10
|
+
import { BasePlayback } from '../BasePlayback.js';
|
|
10
11
|
import { CLAPPR_VERSION } from '../../build.js';
|
|
11
|
-
const { now
|
|
12
|
+
const { now } = Utils;
|
|
12
13
|
const AUTO = -1;
|
|
13
14
|
const DEFAULT_RECOVER_ATTEMPTS = 16;
|
|
14
15
|
Events.register('PLAYBACK_FRAGMENT_CHANGED');
|
|
15
16
|
Events.register('PLAYBACK_FRAGMENT_PARSING_METADATA');
|
|
16
17
|
const T = 'playback.hls';
|
|
17
18
|
// @ts-expect-error
|
|
18
|
-
export default class HlsPlayback extends
|
|
19
|
+
export default class HlsPlayback extends BasePlayback {
|
|
19
20
|
_ccIsSetup = false;
|
|
20
21
|
_ccTracksUpdated = false;
|
|
21
22
|
_currentFragment = null;
|
|
@@ -821,7 +822,9 @@ export default class HlsPlayback extends HTML5Video {
|
|
|
821
822
|
return this._playbackType === Playback.VOD || this.dvrEnabled;
|
|
822
823
|
}
|
|
823
824
|
triggerError(error) {
|
|
824
|
-
this.trigger(Events.PLAYBACK_ERROR, error
|
|
825
|
+
this.trigger(Events.PLAYBACK_ERROR, this.createError(error, {
|
|
826
|
+
useCodePrefix: false,
|
|
827
|
+
}));
|
|
825
828
|
this.stop();
|
|
826
829
|
}
|
|
827
830
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/playback/utils.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/lib/playback.types.d.ts
CHANGED
|
@@ -61,15 +61,15 @@ export declare enum PlaybackErrorCode {
|
|
|
61
61
|
/**
|
|
62
62
|
* An unknown or uncategorised error.
|
|
63
63
|
*/
|
|
64
|
-
Generic =
|
|
64
|
+
Generic = "GENERIC_ERROR",
|
|
65
65
|
/**
|
|
66
66
|
* The media source is not available. Typically a network error.
|
|
67
67
|
*/
|
|
68
|
-
MediaSourceUnavailable =
|
|
68
|
+
MediaSourceUnavailable = "MEDIA_SOURCE_UNAVAILABLE",
|
|
69
69
|
/**
|
|
70
70
|
* The media source is not accessible due to some protection policy.
|
|
71
71
|
*/
|
|
72
|
-
MediaSourceAccessDenied =
|
|
72
|
+
MediaSourceAccessDenied = "MEDIA_SOURCE_ACCESS_DENIED"
|
|
73
73
|
}
|
|
74
74
|
/**
|
|
75
75
|
* Levels of severity of errors. Non-fatal errors usually can be ignored.
|
|
@@ -114,5 +114,12 @@ export interface PlaybackError {
|
|
|
114
114
|
* Component subsystem of the error origin
|
|
115
115
|
*/
|
|
116
116
|
scope: PlayerComponentType;
|
|
117
|
+
/**
|
|
118
|
+
* UI description of the error.
|
|
119
|
+
*/
|
|
120
|
+
UI?: {
|
|
121
|
+
title: string;
|
|
122
|
+
message: string;
|
|
123
|
+
};
|
|
117
124
|
}
|
|
118
125
|
//# sourceMappingURL=playback.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playback.types.d.ts","sourceRoot":"","sources":["../src/playback.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAE9B;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,OAAO,EAAE,SAAS,CAAA;IAClB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAA;CACjB;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE3D;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG;IACtC,iBAAiB,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IAC3B;;OAEG;IACH,OAAO,
|
|
1
|
+
{"version":3,"file":"playback.types.d.ts","sourceRoot":"","sources":["../src/playback.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAE9B;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,OAAO,EAAE,SAAS,CAAA;IAClB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAA;CACjB;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE3D;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG;IACtC,iBAAiB,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IAC3B;;OAEG;IACH,OAAO,kBAAkB;IACzB;;OAEG;IACH,sBAAsB,6BAA6B;IACnD;;OAEG;IACH,uBAAuB,+BAA+B;CACvD;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;AAElD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,CAAA;AAEnE;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,IAAI,EAAE,iBAAiB,CAAA;IACvB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,KAAK,EAAE,UAAU,CAAA;IACjB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;;;;;OAMG;IACH,MAAM,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,KAAK,EAAE,mBAAmB,CAAA;IAE1B;;OAEG;IACH,EAAE,CAAC,EAAE;QACH,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF"}
|
package/lib/playback.types.js
CHANGED
|
@@ -7,13 +7,13 @@ export var PlaybackErrorCode;
|
|
|
7
7
|
/**
|
|
8
8
|
* An unknown or uncategorised error.
|
|
9
9
|
*/
|
|
10
|
-
PlaybackErrorCode[
|
|
10
|
+
PlaybackErrorCode["Generic"] = "GENERIC_ERROR";
|
|
11
11
|
/**
|
|
12
12
|
* The media source is not available. Typically a network error.
|
|
13
13
|
*/
|
|
14
|
-
PlaybackErrorCode[
|
|
14
|
+
PlaybackErrorCode["MediaSourceUnavailable"] = "MEDIA_SOURCE_UNAVAILABLE";
|
|
15
15
|
/**
|
|
16
16
|
* The media source is not accessible due to some protection policy.
|
|
17
17
|
*/
|
|
18
|
-
PlaybackErrorCode[
|
|
18
|
+
PlaybackErrorCode["MediaSourceAccessDenied"] = "MEDIA_SOURCE_ACCESS_DENIED";
|
|
19
19
|
})(PlaybackErrorCode || (PlaybackErrorCode = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenu.d.ts","sourceRoot":"","sources":["../../../src/plugins/context-menu/ContextMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,SAAS,EACT,iBAAiB,EAClB,MAAM,cAAc,CAAA;AAIrB,OAAO,gDAAgD,CAAA;AASvD;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC;AAED;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,iBAAiB;IAChD,OAAO,CAAC,MAAM,CAAa;IAE3B,OAAO,CAAC,IAAI,CAAa;IAEzB,OAAO,CAAC,WAAW,CAAmB;IAEtC;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,IAAa,UAAU;;MAEtB;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAEzD,OAAO,KAAK,KAAK,GAEhB;IAED,OAAO,KAAK,GAAG,GAEd;IAED,OAAO,KAAK,aAAa,GAKxB;IAED;;OAEG;IACH,IAAa,MAAM;;MAIlB;gBAEW,SAAS,EAAE,SAAS;IAYhC;;OAEG;IACM,UAAU;
|
|
1
|
+
{"version":3,"file":"ContextMenu.d.ts","sourceRoot":"","sources":["../../../src/plugins/context-menu/ContextMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,SAAS,EACT,iBAAiB,EAClB,MAAM,cAAc,CAAA;AAIrB,OAAO,gDAAgD,CAAA;AASvD;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC;AAED;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,iBAAiB;IAChD,OAAO,CAAC,MAAM,CAAa;IAE3B,OAAO,CAAC,IAAI,CAAa;IAEzB,OAAO,CAAC,WAAW,CAAmB;IAEtC;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,IAAa,UAAU;;MAEtB;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAEzD,OAAO,KAAK,KAAK,GAEhB;IAED,OAAO,KAAK,GAAG,GAEd;IAED,OAAO,KAAK,aAAa,GAKxB;IAED;;OAEG;IACH,IAAa,MAAM;;MAIlB;gBAEW,SAAS,EAAE,SAAS;IAYhC;;OAEG;IACM,UAAU;IASnB;;OAEG;IACM,OAAO;IAKhB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,IAAI;IAYZ,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,cAAc;IAItB;;OAEG;IACM,MAAM;IASf,OAAO,CAAC,eAAe,CAEtB;CACF"}
|
|
@@ -61,7 +61,7 @@ export class ContextMenu extends UIContainerPlugin {
|
|
|
61
61
|
this._url = this.options.contextMenu.url;
|
|
62
62
|
}
|
|
63
63
|
this.render();
|
|
64
|
-
this.
|
|
64
|
+
$('body').on('click', this.hideOnBodyClick);
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
67
67
|
* @internal
|
|
@@ -69,7 +69,6 @@ export class ContextMenu extends UIContainerPlugin {
|
|
|
69
69
|
bindEvents() {
|
|
70
70
|
this.listenTo(this.container, Events.CONTAINER_CONTEXTMENU, this.toggleContextMenu);
|
|
71
71
|
this.listenTo(this.container, Events.CONTAINER_CLICK, this.hide);
|
|
72
|
-
$('body').on('click', this.hideOnBodyClick);
|
|
73
72
|
}
|
|
74
73
|
/**
|
|
75
74
|
* @internal
|
|
@@ -1,48 +1,63 @@
|
|
|
1
1
|
import { UICorePlugin } from '@clappr/core';
|
|
2
2
|
import '../../../assets/error-screen/error_screen.scss';
|
|
3
|
-
type
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
export type ErrorDesc = {
|
|
4
|
+
description: string;
|
|
5
|
+
level: string;
|
|
6
6
|
code: string;
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
origin: string;
|
|
8
|
+
scope: string;
|
|
9
|
+
raw?: string;
|
|
10
|
+
UI?: {
|
|
11
|
+
icon?: string;
|
|
12
|
+
title: string;
|
|
13
|
+
message: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export type ErrorScreenPluginSettings = {
|
|
17
|
+
noReload?: boolean;
|
|
9
18
|
};
|
|
10
19
|
/**
|
|
11
|
-
* Displays
|
|
20
|
+
* Displays an error nicely in the overlay on top of the player.
|
|
12
21
|
* @beta
|
|
13
22
|
*/
|
|
14
23
|
export declare class ErrorScreen extends UICorePlugin {
|
|
15
|
-
private _retry;
|
|
16
24
|
private err;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
25
|
+
/**
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
20
28
|
get name(): string;
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
21
32
|
get supportedVersion(): {
|
|
22
33
|
min: string;
|
|
23
34
|
};
|
|
24
|
-
|
|
25
|
-
|
|
35
|
+
private static readonly template;
|
|
36
|
+
/**
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
26
39
|
get attributes(): {
|
|
27
40
|
class: string;
|
|
28
41
|
'data-error-screen': string;
|
|
29
42
|
};
|
|
43
|
+
/**
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
30
46
|
bindEvents(): void;
|
|
31
|
-
private onCoreReady;
|
|
32
47
|
private onPlay;
|
|
33
|
-
private
|
|
34
|
-
|
|
35
|
-
|
|
48
|
+
private unmount;
|
|
49
|
+
/**
|
|
50
|
+
* @internal
|
|
51
|
+
*/
|
|
52
|
+
get events(): {
|
|
53
|
+
'click .player-error-screen__reload': string;
|
|
54
|
+
};
|
|
36
55
|
private reload;
|
|
37
|
-
private
|
|
38
|
-
private onContainerChanged;
|
|
39
|
-
private onStartAd;
|
|
40
|
-
private onFinishAd;
|
|
56
|
+
private onActiveContainerChanged;
|
|
41
57
|
private onError;
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
58
|
+
/**
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
45
61
|
render(): this;
|
|
46
62
|
}
|
|
47
|
-
export {};
|
|
48
63
|
//# sourceMappingURL=ErrorScreen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorScreen.d.ts","sourceRoot":"","sources":["../../../src/plugins/error-screen/ErrorScreen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"ErrorScreen.d.ts","sourceRoot":"","sources":["../../../src/plugins/error-screen/ErrorScreen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAoB,MAAM,cAAc,CAAA;AAO7D,OAAO,gDAAgD,CAAA;AAGvD,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,EAAE,CAAC,EAAE;QACH,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,CAAA;AASD,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAID;;;GAGG;AACH,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,GAAG,CAA+B;IAE1C;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAEzD;;OAEG;IACH,IAAa,UAAU;;;MAKtB;IAED;;OAEG;IACM,UAAU;IASnB,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,OAAO;IAOf;;OAEG;IACH,IAAa,MAAM;;MAIlB;IAED,OAAO,CAAC,MAAM;IAUd,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,OAAO;IAgBf;;OAEG;IACM,MAAM;CAkBhB"}
|
|
@@ -1,184 +1,118 @@
|
|
|
1
|
-
import { UICorePlugin, Events, template
|
|
1
|
+
import { UICorePlugin, Events, template } from '@clappr/core';
|
|
2
2
|
import { trace } from '@gcorevideo/utils';
|
|
3
3
|
import { CLAPPR_VERSION } from '../../build.js';
|
|
4
4
|
import reloadIcon from '../../../assets/icons/old/reload.svg';
|
|
5
5
|
import templateHtml from '../../../assets/error-screen/error_screen.ejs';
|
|
6
6
|
import '../../../assets/error-screen/error_screen.scss';
|
|
7
|
-
const TIME_FOR_UPDATE = 10000;
|
|
8
|
-
const MAX_RETRY = 10;
|
|
9
7
|
const T = 'plugins.error_screen';
|
|
10
8
|
/**
|
|
11
|
-
* Displays
|
|
9
|
+
* Displays an error nicely in the overlay on top of the player.
|
|
12
10
|
* @beta
|
|
13
11
|
*/
|
|
14
12
|
export class ErrorScreen extends UICorePlugin {
|
|
15
|
-
_retry = 0;
|
|
16
13
|
err = null;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
/**
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
20
17
|
get name() {
|
|
21
|
-
return '
|
|
18
|
+
return 'error_screen';
|
|
22
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
23
|
get supportedVersion() {
|
|
24
24
|
return { min: CLAPPR_VERSION };
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return this.core.activeContainer;
|
|
31
|
-
}
|
|
26
|
+
static template = template(templateHtml);
|
|
27
|
+
/**
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
32
30
|
get attributes() {
|
|
33
31
|
return {
|
|
34
|
-
|
|
32
|
+
class: 'player-error-screen',
|
|
35
33
|
'data-error-screen': '',
|
|
36
34
|
};
|
|
37
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
38
39
|
bindEvents() {
|
|
39
40
|
this.listenTo(this.core, Events.ERROR, this.onError);
|
|
40
|
-
this.listenTo(this.core, Events.
|
|
41
|
-
this.listenTo(this.core, 'core:advertisement:start', this.onStartAd);
|
|
42
|
-
this.listenTo(this.core, 'core:advertisement:finish', this.onFinishAd);
|
|
43
|
-
this.listenTo(this.core.mediaControl, Events.MEDIACONTROL_CONTAINERCHANGED, this.onContainerChanged);
|
|
44
|
-
}
|
|
45
|
-
onCoreReady() {
|
|
46
|
-
trace(`${T} onCoreReady`);
|
|
47
|
-
if (this.core.activePlayback) {
|
|
48
|
-
this.listenTo(this.core.activePlayback, Events.PLAYBACK_PLAY, this.onPlay);
|
|
49
|
-
}
|
|
41
|
+
this.listenTo(this.core, Events.CORE_ACTIVE_CONTAINER_CHANGED, this.onActiveContainerChanged);
|
|
50
42
|
}
|
|
51
43
|
onPlay() {
|
|
52
44
|
trace(`${T} onPlay`);
|
|
53
|
-
this.
|
|
45
|
+
this.unmount();
|
|
54
46
|
}
|
|
55
|
-
|
|
56
|
-
trace(`${T}
|
|
57
|
-
this._retry = 0;
|
|
47
|
+
unmount() {
|
|
48
|
+
trace(`${T} unmount`);
|
|
58
49
|
this.err = null;
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
this.timeout = null;
|
|
62
|
-
}
|
|
63
|
-
this.$el.hide();
|
|
64
|
-
}
|
|
65
|
-
unBindEvents() {
|
|
66
|
-
// @ts-ignore
|
|
67
|
-
this.stopListening(this.core, 'core:advertisement:start');
|
|
68
|
-
// @ts-ignore
|
|
69
|
-
this.stopListening(this.core, 'core:advertisement:finish');
|
|
70
|
-
// @ts-ignore
|
|
71
|
-
this.stopListening(this.core, Events.ERROR);
|
|
50
|
+
this.$el.empty();
|
|
51
|
+
// this.$el.hide();
|
|
72
52
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
53
|
+
/**
|
|
54
|
+
* @internal
|
|
55
|
+
*/
|
|
56
|
+
get events() {
|
|
57
|
+
return {
|
|
58
|
+
'click .player-error-screen__reload': 'reload',
|
|
59
|
+
};
|
|
76
60
|
}
|
|
77
61
|
reload() {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
62
|
+
setTimeout(() => {
|
|
63
|
+
this.core.configure({
|
|
64
|
+
reloading: true,
|
|
65
|
+
source: this.core.options.source,
|
|
66
|
+
sources: this.core.options.sources,
|
|
67
|
+
});
|
|
68
|
+
}, 0);
|
|
69
|
+
}
|
|
70
|
+
onActiveContainerChanged() {
|
|
71
|
+
trace(`${T} onActiveContainerChanged`, {
|
|
72
|
+
reloading: this.core.options.reloading,
|
|
82
73
|
});
|
|
83
|
-
this.core.activeContainer.mediaControlDisabled = false;
|
|
84
|
-
this.unbindReload();
|
|
85
|
-
}
|
|
86
|
-
unbindReload() {
|
|
87
|
-
this.reloadButton && this.reloadButton.off('click');
|
|
88
|
-
}
|
|
89
|
-
onContainerChanged() {
|
|
90
74
|
this.err = null;
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
this.hide();
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
onFinishAd() {
|
|
104
|
-
this.hideValue = false;
|
|
105
|
-
if (this.err) {
|
|
106
|
-
this.container.disableMediaControl();
|
|
107
|
-
this.container.stop();
|
|
108
|
-
this.show();
|
|
75
|
+
this.listenTo(this.core.activeContainer.playback, Events.PLAYBACK_PLAY, this.onPlay);
|
|
76
|
+
if (this.core.options.reloading) {
|
|
77
|
+
setTimeout(() => {
|
|
78
|
+
this.core.options.reloading = false;
|
|
79
|
+
this.unmount();
|
|
80
|
+
this.core.activeContainer.play({
|
|
81
|
+
reloading: true,
|
|
82
|
+
});
|
|
83
|
+
}, 0);
|
|
109
84
|
}
|
|
110
85
|
}
|
|
111
86
|
onError(err) {
|
|
112
87
|
trace(`${T} onError`, { err });
|
|
113
|
-
if (err.
|
|
114
|
-
err
|
|
115
|
-
|
|
88
|
+
if (err.UI) {
|
|
89
|
+
if (this.err) {
|
|
90
|
+
this.unmount();
|
|
91
|
+
}
|
|
116
92
|
this.err = {
|
|
117
|
-
title:
|
|
118
|
-
message:
|
|
119
|
-
code:
|
|
120
|
-
|
|
121
|
-
icon: '',
|
|
122
|
-
reloadIcon,
|
|
93
|
+
title: err.UI.title,
|
|
94
|
+
message: err.UI.message,
|
|
95
|
+
code: err.code,
|
|
96
|
+
icon: err.UI.icon,
|
|
123
97
|
};
|
|
124
|
-
|
|
125
|
-
return;
|
|
126
|
-
}
|
|
127
|
-
if (this.options.errorScreen?.neverStopToRetry) {
|
|
128
|
-
this._retry = 0;
|
|
129
|
-
}
|
|
130
|
-
if (this._retry >= MAX_RETRY) {
|
|
131
|
-
this.drying();
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
const ctp = this.container.getPlugin('click_to_pause_custom');
|
|
135
|
-
const toggleCTP = !!ctp?.enabled;
|
|
136
|
-
if (toggleCTP) {
|
|
137
|
-
// clickToPausePlugin.afterEnabled = true;
|
|
138
|
-
ctp.disable();
|
|
139
|
-
}
|
|
140
|
-
this.timeout = setTimeout(() => {
|
|
141
|
-
if (toggleCTP) {
|
|
142
|
-
ctp.enable();
|
|
143
|
-
}
|
|
144
|
-
this.reload();
|
|
145
|
-
}, TIME_FOR_UPDATE);
|
|
146
|
-
const spinnerPlugin = this.container.getPlugin('spinner');
|
|
147
|
-
if (spinnerPlugin) {
|
|
148
|
-
spinnerPlugin.show(); // TODO remove?
|
|
149
|
-
setTimeout(() => spinnerPlugin.show(), 0);
|
|
150
|
-
}
|
|
98
|
+
this.render();
|
|
151
99
|
}
|
|
152
100
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
this._retry = 0;
|
|
157
|
-
if (!this.hideValue) {
|
|
158
|
-
this.container.disableMediaControl();
|
|
159
|
-
this.container.stop();
|
|
160
|
-
this.show();
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
show(err) {
|
|
164
|
-
if (err) {
|
|
165
|
-
this.err = err;
|
|
166
|
-
}
|
|
167
|
-
// TODO use container.disableMediaControl() instead
|
|
168
|
-
this.core.mediaControl.disable();
|
|
169
|
-
this.render();
|
|
170
|
-
this.$el.show();
|
|
171
|
-
}
|
|
172
|
-
hide() {
|
|
173
|
-
this.$el.hide();
|
|
174
|
-
}
|
|
101
|
+
/**
|
|
102
|
+
* @internal
|
|
103
|
+
*/
|
|
175
104
|
render() {
|
|
176
105
|
if (!this.err) {
|
|
177
106
|
return this;
|
|
178
107
|
}
|
|
179
|
-
this.$el.html(
|
|
180
|
-
|
|
181
|
-
|
|
108
|
+
this.$el.html(ErrorScreen.template({
|
|
109
|
+
...this.err,
|
|
110
|
+
reloadIcon: this.options.errorScreen?.noReload ? null : reloadIcon,
|
|
111
|
+
}));
|
|
112
|
+
// TODO append to container instead of core?
|
|
113
|
+
if (!this.el.parentElement) {
|
|
114
|
+
this.core.$el.append(this.el);
|
|
115
|
+
}
|
|
182
116
|
return this;
|
|
183
117
|
}
|
|
184
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaControl.d.ts","sourceRoot":"","sources":["../../../src/plugins/media-control/MediaControl.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,YAAY,EAMZ,IAAI,EACL,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"MediaControl.d.ts","sourceRoot":"","sources":["../../../src/plugins/media-control/MediaControl.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,YAAY,EAMZ,IAAI,EACL,MAAM,cAAc,CAAA;AAQrB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAGlD,OAAO,kDAAkD,CAAA;AACzD,OAAO,4CAA4C,CAAA;AAWnD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,qBAAqB,GACrB,YAAY,GACZ,UAAU,GACV,MAAM,GACN,KAAK,GACL,cAAc,GACd,kBAAkB,GAClB,mBAAmB,CAAA;AA6BvB;;;;;;;;;;;;GAYG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,OAAO,CAAC,oBAAoB,CAAQ;IAEpC,OAAO,CAAC,YAAY,CAAsB;IAE1C,OAAO,CAAC,oBAAoB,CAAY;IACxC,OAAO,CAAC,oBAAoB,CAAY;IACxC,OAAO,CAAC,wBAAwB,CAAsB;IAEtD,OAAO,CAAC,qBAAqB,CAA0B;IACvD,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,0BAA0B,CAAsB;IAExD,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,iBAAiB,CAAQ;IAEjC,OAAO,CAAC,6BAA6B,CAAuB;IAE5D,OAAO,CAAC,MAAM,CAA6C;IAC3D,OAAO,CAAC,YAAY,CAA6C;IAEjE,OAAO,CAAC,cAAc,CAAM;IAE5B,OAAO,CAAC,IAAI,CAAQ;IAEpB,OAAO,CAAC,WAAW,CAAQ;IAE3B,OAAO,CAAC,IAAI,CAAM;IAElB,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,UAAU,CAAI;IAEtB,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,QAAQ,CAAQ;IAExB,OAAO,CAAC,QAAQ,CAA8B;IAE9C,OAAO,CAAC,YAAY,CAAQ;IAE5B,OAAO,CAAC,eAAe,CAAQ;IAE/B,OAAO,CAAC,cAAc,CAAQ;IAE9B,OAAO,CAAC,oBAAoB,CAA2B;IAEvD,OAAO,CAAC,WAAW,CAA2B;IAE9C,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,kBAAkB,CAA2B;IAErD,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,iBAAiB,CAA2B;IAEpD,OAAO,CAAC,oBAAoB,CAA2B;IAEvD,OAAO,CAAC,IAAI,CAA2B;IAEvC,OAAO,CAAC,gBAAgB,CAA2B;IAEnD,OAAO,CAAC,eAAe,CAA2B;IAElD,OAAO,CAAC,aAAa,CAA2B;IAEhD,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,iBAAiB,CAA2B;IAEpD,OAAO,CAAC,aAAa,CAA2B;IAEhD,OAAO,CAAC,cAAc,CAA2B;IAEjD,OAAO,CAAC,gBAAgB,CAA2B;IAEnD,OAAO,CAAC,gBAAgB,CAA2B;IAEnD,OAAO,CAAC,kBAAkB,CAA2B;IAErD,OAAO,CAAC,mBAAmB,CAA2B;IAEtD,OAAO,CAAC,oBAAoB,CAA2B;IAEvD,OAAO,CAAC,cAAc,CAA2B;IAEjD,OAAO,CAAC,kBAAkB,CAA2B;IAErD,OAAO,CAAC,gBAAgB,CAA2B;IAEnD,OAAO,CAAC,WAAW,CAA2B;IAE9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA6B;IAE7D;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED,OAAO,KAAK,QAAQ,GAKnB;IAED;;;OAGG;IACH,IAAI,SAAS,QAEZ;IAED;;;OAGG;IACH,IAAI,QAAQ,QAEX;IAED;;OAEG;IACH,IAAa,UAAU;;;MAKtB;IAED;;OAEG;IACH,IAAa,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;MA4BlB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAInB;IAED;;OAEG;IACH,IAAI,KAAK,YAER;gBAEW,IAAI,EAAE,IAAI;IAsBtB;;OAEG;IACM,oBAAoB;2BAoYZ,MAAM;;;IA7XvB;;OAEG;IACM,UAAU;IAyCnB,OAAO,CAAC,mBAAmB;IA6D3B;;OAEG;IACM,OAAO;IAQhB;;OAEG;IACM,MAAM;IAUf;;OAEG;IACH,gBAAgB;IAOhB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,cAAc;IA0DtB,OAAO,CAAC,gBAAgB;IAsBxB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,YAAY;IA6BpB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,QAAQ,CAQf;IAED,OAAO,CAAC,UAAU,CAgBjB;IAED,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,CAAC,UAAU;IAIlB;;;;;;OAMG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,UAAQ;IA0BhD,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,wBAAwB;IAmChC,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,uBAAuB;IAc/B,OAAO,CAAC,IAAI;IAkBZ,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,IAAI;IAgCZ,OAAO,CAAC,IAAI;IAmCZ,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,cAAc;IAkDtB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,oBAAoB;IAgD5B;;;;;;;;;;;;;;;;;OAiBG;IACH,UAAU,CAAC,IAAI,EAAE,mBAAmB,GAAG,WAAW,GAAG,IAAI;IAoBzD;;;OAGG;IACH,aAAa;IAIb,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,aAAa;IA8CrB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,WAAW;IAiCnB,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACM,OAAO;IAShB,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACM,MAAM;IAoEf,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAIvB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAcvB;;OAEG;IACH,mBAAmB;IAMnB;;OAEG;IACH,qBAAqB;IAMrB,OAAO,CAAC,6BAA6B;CAOtC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// license that can be found in the LICENSE file.
|
|
4
4
|
import assert from 'assert';
|
|
5
5
|
import { Events, UICorePlugin, Browser, Playback, Utils, template, $, } from '@clappr/core';
|
|
6
|
-
import { reportError } from '@gcorevideo/utils';
|
|
6
|
+
import { reportError, trace } from '@gcorevideo/utils';
|
|
7
7
|
import { Kibo } from '../kibo/index.js';
|
|
8
8
|
import { CLAPPR_VERSION } from '../../build.js';
|
|
9
9
|
import { getPageX, isFullscreen } from '../utils.js';
|
|
@@ -262,9 +262,10 @@ export class MediaControl extends UICorePlugin {
|
|
|
262
262
|
}
|
|
263
263
|
}
|
|
264
264
|
/**
|
|
265
|
-
*
|
|
265
|
+
* Hides the media control UI
|
|
266
266
|
*/
|
|
267
267
|
disable() {
|
|
268
|
+
trace(`${T} disable`);
|
|
268
269
|
this.userDisabled = true;
|
|
269
270
|
this.hide();
|
|
270
271
|
this.unbindKeyEvents();
|
|
@@ -274,6 +275,7 @@ export class MediaControl extends UICorePlugin {
|
|
|
274
275
|
* Reenables the plugin disabled earlier with the {@link MediaControl.disable} method
|
|
275
276
|
*/
|
|
276
277
|
enable() {
|
|
278
|
+
trace(`${T} enable`);
|
|
277
279
|
if (this.options.chromeless) {
|
|
278
280
|
return;
|
|
279
281
|
}
|
|
@@ -951,13 +953,13 @@ export class MediaControl extends UICorePlugin {
|
|
|
951
953
|
destroy() {
|
|
952
954
|
$(document).unbind('mouseup', this.stopDrag);
|
|
953
955
|
$(document).unbind('mousemove', this.updateDrag);
|
|
956
|
+
$(document).unbind('touchend', this.stopDrag);
|
|
957
|
+
$(document).unbind('touchmove', this.updateDrag);
|
|
954
958
|
this.unbindKeyEvents();
|
|
955
|
-
// @ts-ignore
|
|
956
|
-
this.stopListening();
|
|
957
959
|
return super.destroy();
|
|
958
960
|
}
|
|
959
961
|
configure() {
|
|
960
|
-
this.advertisementPlaying ? this.disable() : this.enable()
|
|
962
|
+
// this.advertisementPlaying ? this.disable() : this.enable()
|
|
961
963
|
this.trigger(Events.MEDIACONTROL_OPTIONS_CHANGE);
|
|
962
964
|
}
|
|
963
965
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiCamera.d.ts","sourceRoot":"","sources":["../../../src/plugins/multi-camera/MultiCamera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,IAAI,EAA8B,YAAY,EAAE,MAAM,cAAc,CAAC;AAMvF,OAAO,yCAAyC,CAAC;AASjD,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAA;AAMD;;;GAGG;AACH,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,aAAa,CAAgC;IAErD,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,WAAW,CAAyB;IAE5C,OAAO,CAAC,eAAe,CAAS;IAEhC,IAAI,IAAI,WAEP;IAED,IAAI,gBAAgB;;MAEnB;IAED,MAAM,KAAK,OAAO,WAEjB;IAED,IAAI,QAAQ,QAEX;IAED,IAAa,UAAU;;;MAKtB;IAED,IAAa,MAAM;;;MAKlB;gBAEW,IAAI,EAAE,IAAI;IAYb,UAAU;IAOnB,YAAY;IAaZ,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,YAAY;IAYX,MAAM;IAwEf,OAAO,CAAC,cAAc;IAUtB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IA8BtC,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"MultiCamera.d.ts","sourceRoot":"","sources":["../../../src/plugins/multi-camera/MultiCamera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,IAAI,EAA8B,YAAY,EAAE,MAAM,cAAc,CAAC;AAMvF,OAAO,yCAAyC,CAAC;AASjD,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAA;AAMD;;;GAGG;AACH,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,aAAa,CAAgC;IAErD,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,WAAW,CAAyB;IAE5C,OAAO,CAAC,eAAe,CAAS;IAEhC,IAAI,IAAI,WAEP;IAED,IAAI,gBAAgB;;MAEnB;IAED,MAAM,KAAK,OAAO,WAEjB;IAED,IAAI,QAAQ,QAEX;IAED,IAAa,UAAU;;;MAKtB;IAED,IAAa,MAAM;;;MAKlB;gBAEW,IAAI,EAAE,IAAI;IAYb,UAAU;IAOnB,YAAY;IAaZ,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,YAAY;IAYX,MAAM;IAwEf,OAAO,CAAC,cAAc;IAUtB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IA8BtC,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,SAAS;IAmBjB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,UAAU;IA4ClB,cAAc;IAId,gBAAgB;IAIhB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;CAK9B"}
|
|
@@ -262,13 +262,12 @@ export class MultiCamera extends UICorePlugin {
|
|
|
262
262
|
catch (error) {
|
|
263
263
|
reportError(error);
|
|
264
264
|
}
|
|
265
|
-
// TODO
|
|
266
|
-
this.core.getPlugin('
|
|
265
|
+
// TODO trigger error instead
|
|
266
|
+
this.core.getPlugin('error_screen')?.show({
|
|
267
267
|
title: this.core.i18n.t('source_offline'),
|
|
268
268
|
message: '',
|
|
269
269
|
code: '',
|
|
270
270
|
icon: '',
|
|
271
|
-
reloadIcon: '',
|
|
272
271
|
});
|
|
273
272
|
}
|
|
274
273
|
hideError() {
|
|
@@ -55,7 +55,7 @@ export class Poster extends UIContainerPlugin {
|
|
|
55
55
|
}
|
|
56
56
|
static template = template(posterHTML);
|
|
57
57
|
get shouldRender() {
|
|
58
|
-
if (!this.enabled) {
|
|
58
|
+
if (!this.enabled || this.options.reloading) {
|
|
59
59
|
return false;
|
|
60
60
|
}
|
|
61
61
|
const showForNoOp = !!this.options.poster?.showForNoOp;
|
|
@@ -37,7 +37,8 @@ export declare class SourceController extends CorePlugin {
|
|
|
37
37
|
* @internal
|
|
38
38
|
*/
|
|
39
39
|
bindEvents(): void;
|
|
40
|
-
private
|
|
40
|
+
private onCoreReady;
|
|
41
|
+
private onActiveContainerChanged;
|
|
41
42
|
private bindContainerEventListeners;
|
|
42
43
|
private reset;
|
|
43
44
|
private retryPlayback;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SourceController.d.ts","sourceRoot":"","sources":["../../../src/plugins/source-controller/SourceController.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,IAAI,IAAI,UAAU,EACxB,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"SourceController.d.ts","sourceRoot":"","sources":["../../../src/plugins/source-controller/SourceController.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,IAAI,IAAI,UAAU,EACxB,MAAM,cAAc,CAAA;AAwBrB;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IAuC9C,OAAO,CAAC,WAAW,CAA8B;IAEjD,OAAO,CAAC,kBAAkB,CAAI;IAE9B,OAAO,CAAC,YAAY,CAA6B;IAEjD,OAAO,CAAC,MAAM,CAAQ;IAEtB,OAAO,CAAC,IAAI,CAAiB;IAE7B;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;gBAEW,IAAI,EAAE,UAAU;IAW5B;;OAEG;IACM,UAAU;IAWnB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,2BAA2B;IAsCnC,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,aAAa;IA2BrB,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;CACF"}
|