diff --git a/.eslintrc.js b/.eslintrc.js index 5339d377f7..7b94a83ed3 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -65,6 +65,7 @@ module.exports = { 'no-trailing-spaces': ['error'], 'no-unused-expressions': ['off'], '@typescript-eslint/no-unused-expressions': ['error', { 'allowShortCircuit': true, 'allowTernary': true, 'allowTaggedTemplates': true }], + 'no-unused-private-class-members': ['error'], 'no-useless-constructor': ['off'], '@typescript-eslint/no-useless-constructor': ['error'], 'no-var': ['error'], diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index 948912cbd8..847e2bc579 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -129,22 +129,6 @@ class PluginManager { .sort((p1, p2) => (p1.priority || 0) - (p2.priority || 0))[0]; } - #mapRoute(plugin, route) { - if (typeof plugin === 'string') { - plugin = this.pluginsList.filter((p) => { - return (p.id || p.packageName) === plugin; - })[0]; - } - - route = route.path || route; - - if (route.toLowerCase().startsWith('http')) { - return route; - } - - return '/plugins/' + plugin.id + '/' + route; - } - mapPath(plugin, path, addCacheParam) { if (typeof plugin === 'string') { plugin = this.pluginsList.filter((p) => { diff --git a/src/plugins/htmlVideoPlayer/plugin.js b/src/plugins/htmlVideoPlayer/plugin.js index de9a51202a..194678b7ea 100644 --- a/src/plugins/htmlVideoPlayer/plugin.js +++ b/src/plugins/htmlVideoPlayer/plugin.js @@ -169,137 +169,140 @@ const SECONDARY_TEXT_TRACK_INDEX = 1; export class HtmlVideoPlayer { /** - * @type {string} - */ + * @type {string} + */ name; /** - * @type {string} - */ + * @type {string} + */ type = PluginType.MediaPlayer; /** - * @type {string} - */ + * @type {string} + */ id = 'htmlvideoplayer'; /** - * Let any players created by plugins take priority - * - * @type {number} - */ + * Let any players created by plugins take priority + * + * @type {number} + */ priority = 1; /** - * @type {boolean} - */ + * @type {boolean} + */ isFetching = false; /** - * @type {HTMLDivElement | null | undefined} - */ + * @type {HTMLDivElement | null | undefined} + */ #videoDialog; /** - * @type {number | undefined} - */ + * @type {number | undefined} + */ #subtitleTrackIndexToSetOnPlaying; /** - * @type {number | undefined} - */ + * @type {number | undefined} + */ #secondarySubtitleTrackIndexToSetOnPlaying; /** - * @type {number | null} - */ + * @type {number | null} + */ #audioTrackIndexToSetOnPlaying; /** - * @type {null | undefined} - */ + * @type {null | undefined} + */ #currentClock; /** - * @type {any | null | undefined} - */ + * @type {any | null | undefined} + */ #currentAssRenderer; /** - * @type {null | undefined} - */ + * @type {null | undefined} + */ #customTrackIndex; /** - * @type {number | undefined} - */ + * @type {number | undefined} + */ #customSecondaryTrackIndex; /** - * @type {boolean | undefined} - */ + * @type {boolean | undefined} + */ #showTrackOffset; /** - * @type {number | undefined} - */ + * @type {number | undefined} + */ #currentTrackOffset; /** - * @type {HTMLElement | null | undefined} - */ + * @type {HTMLElement | null | undefined} + */ #secondaryTrackOffset; /** - * @type {HTMLElement | null | undefined} - */ + * @type {HTMLElement | null | undefined} + */ #videoSubtitlesElem; /** - * @type {HTMLElement | null | undefined} - */ + * @type {HTMLElement | null | undefined} + */ #videoSecondarySubtitlesElem; /** - * @type {any | null | undefined} - */ + * @type {any | null | undefined} + */ #currentTrackEvents; /** - * @type {any | null | undefined} - */ + * @type {any | null | undefined} + */ #currentSecondaryTrackEvents; /** - * @type {string[] | undefined} - */ + * @type {string[] | undefined} + */ #supportedFeatures; /** - * @type {HTMLVideoElement | null | undefined} - */ + * @type {HTMLVideoElement | null | undefined} + */ #mediaElement; /** - * @type {number} - */ + * @type {number} + */ #fetchQueue = 0; /** - * @type {string | undefined} - */ + * @type {string | undefined} + */ #currentSrc; /** - * @type {boolean | undefined} - */ + * @type {boolean | undefined} + */ #started; /** - * @type {boolean | undefined} - */ + * @type {boolean | undefined} + */ #timeUpdated; /** - * @type {number | null | undefined} - */ + * @type {number | null | undefined} + */ #currentTime; + /** - * @type {any | undefined} - */ - #flvPlayer; + * @private (used in other files) + * @type {any | undefined} + */ + _flvPlayer; + /** - * @private (used in other files) - * @type {any | undefined} - */ + * @private (used in other files) + * @type {any | undefined} + */ _hlsPlayer; /** - * @private (used in other files) - * @type {any | null | undefined} - */ + * @private (used in other files) + * @type {any | null | undefined} + */ _castPlayer; /** - * @private (used in other files) - * @type {any | undefined} - */ + * @private (used in other files) + * @type {any | undefined} + */ _currentPlayOptions; /** - * @type {any | undefined} - */ + * @type {any | undefined} + */ #lastProfile; constructor() { @@ -407,7 +410,7 @@ export class HtmlVideoPlayer { flvPlayer.attachMediaElement(elem); flvPlayer.load(); - this.#flvPlayer = flvPlayer; + this._flvPlayer = flvPlayer; // This is needed in setCurrentTrackElement this.#currentSrc = url;