1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Fix apiclient imports

This commit is contained in:
Bill Thornton 2020-09-08 02:05:02 -04:00 committed by vitorsemeano
parent 7d9208e951
commit a71b0314d4
71 changed files with 424 additions and 425 deletions

View file

@ -1,4 +1,4 @@
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import globalize from '../scripts/globalize';
import dom from '../scripts/dom';
import * as datefns from 'date-fns';
@ -144,7 +144,7 @@ class ActivityLog {
reloadData(this, element, apiClient);
const onUpdate = onActivityLogUpdate.bind(this);
this.updateFn = onUpdate;
events.on(serverNotifications, 'ActivityLogEntry', onUpdate);
Events.on(serverNotifications, 'ActivityLogEntry', onUpdate);
apiClient.sendMessage('ActivityLogEntryStart', '0,1500');
}
destroy() {
@ -158,7 +158,7 @@ class ActivityLog {
const onUpdate = this.updateFn;
if (onUpdate) {
events.off(serverNotifications, 'ActivityLogEntry', onUpdate);
Events.off(serverNotifications, 'ActivityLogEntry', onUpdate);
}
this.items = null;

View file

@ -2,7 +2,7 @@ import { appHost } from './apphost';
import appSettings from '../scripts/settings/appSettings';
import backdrop from './backdrop/backdrop';
import browser from '../scripts/browser';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import globalize from '../scripts/globalize';
import itemHelper from './itemHelper';
import loading from './loading/loading';
@ -150,8 +150,8 @@ class AppRouter {
loading.show();
this.initApiClients();
events.on(appHost, 'beforeexit', this.onBeforeExit);
events.on(appHost, 'resume', this.onAppResume);
Events.on(appHost, 'beforeexit', this.onBeforeExit);
Events.on(appHost, 'resume', this.onAppResume);
window.ConnectionManager.connect({
enableAutoLogin: appSettings.enableAutoLogin()
@ -484,8 +484,8 @@ class AppRouter {
newApiClient.getMaxBandwidth = this.getMaxBandwidth;
}
events.off(newApiClient, 'requestfail', this.onRequestFail);
events.on(newApiClient, 'requestfail', this.onRequestFail);
Events.off(newApiClient, 'requestfail', this.onRequestFail);
Events.on(newApiClient, 'requestfail', this.onRequestFail);
}
initApiClient(apiClient, instance) {
@ -497,7 +497,7 @@ class AppRouter {
this.initApiClient(apiClient, this);
});
events.on(window.ConnectionManager, 'apiclientcreated', this.onApiClientCreated);
Events.on(window.ConnectionManager, 'apiclientcreated', this.onApiClientCreated);
}
onAppResume() {

View file

@ -1,7 +1,7 @@
import appSettings from '../scripts/settings/appSettings';
import browser from '../scripts/browser';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import * as htmlMediaHelper from '../components/htmlMediaHelper';
import * as webSettings from '../scripts/settings/webSettings';
import globalize from '../scripts/globalize';
@ -173,7 +173,7 @@ function supportsCue() {
function onAppVisible() {
if (isHidden) {
isHidden = false;
events.trigger(appHost, 'resume');
Events.trigger(appHost, 'resume');
}
}

View file

@ -7,7 +7,7 @@ import datetime from '../../scripts/datetime';
import globalize from '../../scripts/globalize';
import loading from '../loading/loading';
import skinManager from '../../scripts/themeManager';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import '../../elements/emby-select/emby-select';
import '../../elements/emby-checkbox/emby-checkbox';
import '../../elements/emby-button/emby-button';
@ -172,7 +172,7 @@ import '../../elements/emby-button/emby-button';
toast(globalize.translate('SettingsSaved'));
});
}
events.trigger(instance, 'saved');
Events.trigger(instance, 'saved');
}, () => {
loading.hide();
});

View file

@ -1,7 +1,7 @@
import dom from '../../scripts/dom';
import dialogHelper from '../dialogHelper/dialogHelper';
import globalize from '../../scripts/globalize';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import '../../elements/emby-checkbox/emby-checkbox';
import '../../elements/emby-collapse/emby-collapse';
import './style.css';
@ -108,7 +108,7 @@ import './style.css';
* @param instance {FilterDialog} An instance of FilterDialog
*/
function triggerChange(instance) {
events.trigger(instance, 'filterchange');
Events.trigger(instance, 'filterchange');
}
function setVisibility(context, options) {

View file

@ -1,7 +1,7 @@
import inputManager from '../../scripts/inputManager';
import browser from '../../scripts/browser';
import globalize from '../../scripts/globalize';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import scrollHelper from '../../scripts/scrollHelper';
import serverNotifications from '../../scripts/serverNotifications';
import loading from '../loading/loading';
@ -164,10 +164,10 @@ function Guide(options) {
self.destroy = function () {
stopAutoRefresh();
events.off(serverNotifications, 'TimerCreated', onTimerCreated);
events.off(serverNotifications, 'SeriesTimerCreated', onSeriesTimerCreated);
events.off(serverNotifications, 'TimerCancelled', onTimerCancelled);
events.off(serverNotifications, 'SeriesTimerCancelled', onSeriesTimerCancelled);
Events.off(serverNotifications, 'TimerCreated', onTimerCreated);
Events.off(serverNotifications, 'SeriesTimerCreated', onSeriesTimerCreated);
Events.off(serverNotifications, 'TimerCancelled', onTimerCancelled);
Events.off(serverNotifications, 'SeriesTimerCancelled', onSeriesTimerCancelled);
setScrollEvents(options.element, false);
itemShortcuts.off(options.element);
@ -1001,7 +1001,7 @@ function Guide(options) {
const item = items[id];
if (item) {
events.trigger(self, 'focus', [
Events.trigger(self, 'focus', [
{
item: item
}]);
@ -1183,12 +1183,12 @@ function Guide(options) {
setScrollEvents(context, true);
itemShortcuts.on(context);
events.trigger(self, 'load');
Events.trigger(self, 'load');
events.on(serverNotifications, 'TimerCreated', onTimerCreated);
events.on(serverNotifications, 'SeriesTimerCreated', onSeriesTimerCreated);
events.on(serverNotifications, 'TimerCancelled', onTimerCancelled);
events.on(serverNotifications, 'SeriesTimerCancelled', onSeriesTimerCancelled);
Events.on(serverNotifications, 'TimerCreated', onTimerCreated);
Events.on(serverNotifications, 'SeriesTimerCreated', onSeriesTimerCreated);
Events.on(serverNotifications, 'TimerCancelled', onTimerCancelled);
Events.on(serverNotifications, 'SeriesTimerCancelled', onSeriesTimerCancelled);
self.refresh();
});

View file

@ -3,7 +3,7 @@ import layoutManager from '../layoutManager';
import focusManager from '../focusManager';
import globalize from '../../scripts/globalize';
import loading from '../loading/loading';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import homeSections from '../homesections/homesections';
import dom from '../../scripts/dom';
import '../listview/listview.css';
@ -375,7 +375,7 @@ import '../../elements/emby-checkbox/emby-checkbox';
});
}
events.trigger(instance, 'saved');
Events.trigger(instance, 'saved');
}, () => {
loading.hide();
});

View file

@ -3,7 +3,7 @@
import appSettings from '../scripts/settings/appSettings' ;
import browser from '../scripts/browser';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
export function getSavedVolume() {
return appSettings.get('volume') || 1;
@ -115,7 +115,7 @@ import { events } from 'jellyfin-apiclient';
instance.destroyCustomTrack(instance._mediaElement);
}
events.trigger(instance, 'error', [
Events.trigger(instance, 'error', [
{
type: type
}
@ -360,7 +360,7 @@ import { events } from 'jellyfin-apiclient';
src: instance._currentSrc
};
events.trigger(instance, 'stopped', [stopInfo]);
Events.trigger(instance, 'stopped', [stopInfo]);
instance._currentTime = null;
instance._currentSrc = null;

View file

@ -1,6 +1,6 @@
import { playbackManager } from './playback/playbackmanager';
import serverNotifications from '../scripts/serverNotifications';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
function onUserDataChanged(e, apiClient, userData) {
const instance = this;
@ -110,7 +110,7 @@ function onPlaybackStopped(e, stopInfo) {
function addNotificationEvent(instance, name, handler, owner) {
const localHandler = handler.bind(instance);
owner = owner || serverNotifications;
events.on(owner, name, localHandler);
Events.on(owner, name, localHandler);
instance['event_' + name] = localHandler;
}
@ -118,7 +118,7 @@ function removeNotificationEvent(instance, name, owner) {
const handler = instance['event_' + name];
if (handler) {
owner = owner || serverNotifications;
events.off(owner, name, handler);
Events.off(owner, name, handler);
instance['event_' + name] = null;
}
}

View file

@ -2,7 +2,7 @@
import { appHost } from './apphost';
import browser from '../scripts/browser';
import { set, get } from '../scripts/settings/appSettings';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
function setLayout(instance, layout, selectedLayout) {
if (layout === selectedLayout) {
@ -32,7 +32,7 @@ class LayoutManager {
}
}
events.trigger(this, 'modechange');
Events.trigger(this, 'modechange');
}
getSavedLayout() {

View file

@ -1,6 +1,6 @@
import dom from '../scripts/dom';
import browser from '../scripts/browser';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import '../elements/emby-tabs/emby-tabs';
import '../elements/emby-button/emby-button';
@ -68,8 +68,8 @@ import '../elements/emby-button/emby-button';
import('../scripts/touchHelper').then((TouchHelper) => {
const touchHelper = new TouchHelper(view.parentNode.parentNode);
events.on(touchHelper, 'swipeleft', onSwipeLeft);
events.on(touchHelper, 'swiperight', onSwipeRight);
Events.on(touchHelper, 'swipeleft', onSwipeLeft);
Events.on(touchHelper, 'swiperight', onSwipeRight);
view.addEventListener('viewdestroy', function () {
touchHelper.destroy();

View file

@ -1,6 +1,6 @@
import serverNotifications from '../../scripts/serverNotifications';
import { playbackManager } from '../playback/playbackmanager';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import globalize from '../../scripts/globalize';
function onOneDocumentClick() {
@ -199,27 +199,27 @@ function showPackageInstallNotification(apiClient, installation, status) {
});
}
events.on(serverNotifications, 'LibraryChanged', function (e, apiClient, data) {
Events.on(serverNotifications, 'LibraryChanged', function (e, apiClient, data) {
onLibraryChanged(data, apiClient);
});
events.on(serverNotifications, 'PackageInstallationCompleted', function (e, apiClient, data) {
Events.on(serverNotifications, 'PackageInstallationCompleted', function (e, apiClient, data) {
showPackageInstallNotification(apiClient, data, 'completed');
});
events.on(serverNotifications, 'PackageInstallationFailed', function (e, apiClient, data) {
Events.on(serverNotifications, 'PackageInstallationFailed', function (e, apiClient, data) {
showPackageInstallNotification(apiClient, data, 'failed');
});
events.on(serverNotifications, 'PackageInstallationCancelled', function (e, apiClient, data) {
Events.on(serverNotifications, 'PackageInstallationCancelled', function (e, apiClient, data) {
showPackageInstallNotification(apiClient, data, 'cancelled');
});
events.on(serverNotifications, 'PackageInstalling', function (e, apiClient, data) {
Events.on(serverNotifications, 'PackageInstalling', function (e, apiClient, data) {
showPackageInstallNotification(apiClient, data, 'progress');
});
events.on(serverNotifications, 'ServerShuttingDown', function (e, apiClient, data) {
Events.on(serverNotifications, 'ServerShuttingDown', function (e, apiClient, data) {
const serverId = apiClient.serverInfo().Id;
const notification = {
tag: 'restart' + serverId,
@ -228,7 +228,7 @@ events.on(serverNotifications, 'ServerShuttingDown', function (e, apiClient, dat
showNotification(notification, 0, apiClient);
});
events.on(serverNotifications, 'ServerRestarting', function (e, apiClient, data) {
Events.on(serverNotifications, 'ServerRestarting', function (e, apiClient, data) {
const serverId = apiClient.serverInfo().Id;
const notification = {
tag: 'restart' + serverId,
@ -237,7 +237,7 @@ events.on(serverNotifications, 'ServerRestarting', function (e, apiClient, data)
showNotification(notification, 0, apiClient);
});
events.on(serverNotifications, 'RestartRequired', function (e, apiClient) {
Events.on(serverNotifications, 'RestartRequired', function (e, apiClient) {
const serverId = apiClient.serverInfo().Id;
const notification = {
tag: 'restart' + serverId,

View file

@ -1,5 +1,5 @@
import datetime from '../../scripts/datetime';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import browser from '../../scripts/browser';
import imageLoader from '../../scripts/imagehelper';
import layoutManager from '../layoutManager';
@ -707,15 +707,15 @@ import '../../elements/emby-ratingbutton/emby-ratingbutton';
const player = currentPlayer;
if (player) {
events.off(player, 'playbackstart', onPlaybackStart);
events.off(player, 'statechange', onPlaybackStart);
events.off(player, 'repeatmodechange', onRepeatModeChange);
events.off(player, 'shufflequeuemodechange', onQueueShuffleModeChange);
events.off(player, 'playbackstop', onPlaybackStopped);
events.off(player, 'volumechange', onVolumeChanged);
events.off(player, 'pause', onPlayPauseStateChanged);
events.off(player, 'unpause', onPlayPauseStateChanged);
events.off(player, 'timeupdate', onTimeUpdate);
Events.off(player, 'playbackstart', onPlaybackStart);
Events.off(player, 'statechange', onPlaybackStart);
Events.off(player, 'repeatmodechange', onRepeatModeChange);
Events.off(player, 'shufflequeuemodechange', onQueueShuffleModeChange);
Events.off(player, 'playbackstop', onPlaybackStopped);
Events.off(player, 'volumechange', onVolumeChanged);
Events.off(player, 'pause', onPlayPauseStateChanged);
Events.off(player, 'unpause', onPlayPauseStateChanged);
Events.off(player, 'timeupdate', onTimeUpdate);
currentPlayer = null;
hideNowPlayingBar();
@ -753,18 +753,18 @@ import '../../elements/emby-ratingbutton/emby-ratingbutton';
refreshFromPlayer(player);
events.on(player, 'playbackstart', onPlaybackStart);
events.on(player, 'statechange', onPlaybackStart);
events.on(player, 'repeatmodechange', onRepeatModeChange);
events.on(player, 'shufflequeuemodechange', onQueueShuffleModeChange);
events.on(player, 'playbackstop', onPlaybackStopped);
events.on(player, 'volumechange', onVolumeChanged);
events.on(player, 'pause', onPlayPauseStateChanged);
events.on(player, 'unpause', onPlayPauseStateChanged);
events.on(player, 'timeupdate', onTimeUpdate);
Events.on(player, 'playbackstart', onPlaybackStart);
Events.on(player, 'statechange', onPlaybackStart);
Events.on(player, 'repeatmodechange', onRepeatModeChange);
Events.on(player, 'shufflequeuemodechange', onQueueShuffleModeChange);
Events.on(player, 'playbackstop', onPlaybackStopped);
Events.on(player, 'volumechange', onVolumeChanged);
Events.on(player, 'pause', onPlayPauseStateChanged);
Events.on(player, 'unpause', onPlayPauseStateChanged);
Events.on(player, 'timeupdate', onTimeUpdate);
}
events.on(playbackManager, 'playerchange', function () {
Events.on(playbackManager, 'playerchange', function () {
bindToPlayer(playbackManager.getCurrentPlayer());
});

View file

@ -1,4 +1,4 @@
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import { playbackManager } from './playbackmanager';
import dom from '../../scripts/dom';
import browser from '../../scripts/browser';
@ -121,8 +121,8 @@ function releaseCurrentPlayer() {
const player = currentPlayer;
if (player) {
events.off(player, 'brightnesschange', onBrightnessChanged);
events.off(player, 'playbackstop', hideOsd);
Events.off(player, 'brightnesschange', onBrightnessChanged);
Events.off(player, 'playbackstop', hideOsd);
currentPlayer = null;
}
}
@ -151,11 +151,11 @@ function bindToPlayer(player) {
}
hideOsd();
events.on(player, 'brightnesschange', onBrightnessChanged);
events.on(player, 'playbackstop', hideOsd);
Events.on(player, 'brightnesschange', onBrightnessChanged);
Events.on(player, 'playbackstop', hideOsd);
}
events.on(playbackManager, 'playerchange', function () {
Events.on(playbackManager, 'playerchange', function () {
bindToPlayer(playbackManager.getCurrentPlayer());
});

View file

@ -1,6 +1,6 @@
import { playbackManager } from '../playback/playbackmanager';
import nowPlayingHelper from '../playback/nowplayinghelper';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
/* eslint-disable indent */
// Reports media playback to the device for lock screen control
@ -163,12 +163,12 @@ import { ConnectionManager, events } from 'jellyfin-apiclient';
function releaseCurrentPlayer() {
if (currentPlayer) {
events.off(currentPlayer, 'playbackstart', onPlaybackStart);
events.off(currentPlayer, 'playbackstop', onPlaybackStopped);
events.off(currentPlayer, 'unpause', onGeneralEvent);
events.off(currentPlayer, 'pause', onGeneralEvent);
events.off(currentPlayer, 'statechange', onStateChanged);
events.off(currentPlayer, 'timeupdate', onGeneralEvent);
Events.off(currentPlayer, 'playbackstart', onPlaybackStart);
Events.off(currentPlayer, 'playbackstop', onPlaybackStopped);
Events.off(currentPlayer, 'unpause', onGeneralEvent);
Events.off(currentPlayer, 'pause', onGeneralEvent);
Events.off(currentPlayer, 'statechange', onStateChanged);
Events.off(currentPlayer, 'timeupdate', onGeneralEvent);
currentPlayer = null;
@ -197,12 +197,12 @@ import { ConnectionManager, events } from 'jellyfin-apiclient';
const state = playbackManager.getPlayerState(player);
updatePlayerState(player, state, 'init');
events.on(currentPlayer, 'playbackstart', onPlaybackStart);
events.on(currentPlayer, 'playbackstop', onPlaybackStopped);
events.on(currentPlayer, 'unpause', onGeneralEvent);
events.on(currentPlayer, 'pause', onGeneralEvent);
events.on(currentPlayer, 'statechange', onStateChanged);
events.on(currentPlayer, 'timeupdate', onGeneralEvent);
Events.on(currentPlayer, 'playbackstart', onPlaybackStart);
Events.on(currentPlayer, 'playbackstop', onPlaybackStopped);
Events.on(currentPlayer, 'unpause', onGeneralEvent);
Events.on(currentPlayer, 'pause', onGeneralEvent);
Events.on(currentPlayer, 'statechange', onStateChanged);
Events.on(currentPlayer, 'timeupdate', onGeneralEvent);
}
function execute(name) {
@ -250,7 +250,7 @@ import { ConnectionManager, events } from 'jellyfin-apiclient';
});
}
events.on(playbackManager, 'playerchange', function () {
Events.on(playbackManager, 'playerchange', function () {
bindToPlayer(playbackManager.getCurrentPlayer());
});

View file

@ -1,4 +1,4 @@
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import datetime from '../../scripts/datetime';
import appSettings from '../../scripts/settings/appSettings';
import itemHelper from '../itemHelper';
@ -25,12 +25,12 @@ function enableLocalPlaylistManagement(player) {
function bindToFullscreenChange(player) {
if (Screenfull.isEnabled) {
Screenfull.on('change', function () {
events.trigger(player, 'fullscreenchange');
Events.trigger(player, 'fullscreenchange');
});
} else {
// iOS Safari
document.addEventListener('webkitfullscreenchange', function () {
events.trigger(player, 'fullscreenchange');
Events.trigger(player, 'fullscreenchange');
}, false);
}
}
@ -46,14 +46,14 @@ function triggerPlayerChange(playbackManagerInstance, newPlayer, newTarget, prev
}
}
events.trigger(playbackManagerInstance, 'playerchange', [newPlayer, newTarget, previousPlayer]);
Events.trigger(playbackManagerInstance, 'playerchange', [newPlayer, newTarget, previousPlayer]);
}
function reportPlayback(playbackManagerInstance, state, player, reportPlaylist, serverId, method, progressEventName) {
if (!serverId) {
// Not a server item
// We can expand on this later and possibly report them
events.trigger(playbackManagerInstance, 'reportplayback', [false]);
Events.trigger(playbackManagerInstance, 'reportplayback', [false]);
return;
}
@ -72,7 +72,7 @@ function reportPlayback(playbackManagerInstance, state, player, reportPlaylist,
const reportPlaybackPromise = apiClient[method](info);
// Notify that report has been sent
reportPlaybackPromise.then(() => {
events.trigger(playbackManagerInstance, 'reportplayback', [true]);
Events.trigger(playbackManagerInstance, 'reportplayback', [true]);
});
}
@ -852,13 +852,13 @@ class PlaybackManager {
player.tryPair(targetInfo) :
Promise.resolve();
events.trigger(self, 'pairing');
Events.trigger(self, 'pairing');
promise.then(function () {
events.trigger(self, 'paired');
Events.trigger(self, 'paired');
setCurrentPlayerInternal(player, targetInfo);
}, function () {
events.trigger(self, 'pairerror');
Events.trigger(self, 'pairerror');
if (currentPairingId === targetInfo.id) {
currentPairingId = null;
}
@ -2158,7 +2158,7 @@ class PlaybackManager {
removeCurrentPlayer(player);
}
events.trigger(self, 'playbackcancelled');
Events.trigger(self, 'playbackcancelled');
return Promise.reject();
}
@ -2548,7 +2548,7 @@ class PlaybackManager {
const isCurrentIndex = removeResult.isCurrentIndex;
events.trigger(player, 'playlistitemremove', [
Events.trigger(player, 'playlistitemremove', [
{
playlistItemIds: playlistItemIds
}
@ -2573,7 +2573,7 @@ class PlaybackManager {
return;
}
events.trigger(player, 'playlistitemmove', [
Events.trigger(player, 'playlistitemmove', [
{
playlistItemId: moveResult.playlistItemId,
newIndex: moveResult.newIndex
@ -2727,7 +2727,7 @@ class PlaybackManager {
} else {
self._playQueueManager.queue(items);
}
events.trigger(player, 'playlistitemadd');
Events.trigger(player, 'playlistitemadd');
}
function onPlayerProgressInterval() {
@ -2779,8 +2779,8 @@ class PlaybackManager {
state.IsFirstItem = isFirstItem;
state.IsFullscreen = fullscreen;
events.trigger(player, 'playbackstart', [state]);
events.trigger(self, 'playbackstart', [player, state]);
Events.trigger(player, 'playbackstart', [state]);
Events.trigger(self, 'playbackstart', [player, state]);
// only used internally as a safeguard to avoid reporting other events to the server before playback start
streamInfo.started = true;
@ -2810,8 +2810,8 @@ class PlaybackManager {
state.IsFirstItem = isFirstItem;
state.IsFullscreen = fullscreen;
events.trigger(player, 'playbackstart', [state]);
events.trigger(self, 'playbackstart', [player, state]);
Events.trigger(player, 'playbackstart', [state]);
Events.trigger(self, 'playbackstart', [player, state]);
// only used internally as a safeguard to avoid reporting other events to the server before playback start
streamInfo.started = true;
@ -2850,8 +2850,8 @@ class PlaybackManager {
state.NextItem = playbackStopInfo.nextItem;
events.trigger(player, 'playbackstop', [state]);
events.trigger(self, 'playbackstop', [playbackStopInfo]);
Events.trigger(player, 'playbackstop', [state]);
Events.trigger(self, 'playbackstop', [playbackStopInfo]);
const nextItemPlayOptions = nextItem ? (nextItem.item.playOptions || getDefaultPlayOptions()) : getDefaultPlayOptions();
const newPlayer = nextItem ? getPlayer(nextItem.item, nextItemPlayOptions) : null;
@ -2952,8 +2952,8 @@ class PlaybackManager {
self._playQueueManager.reset();
}
events.trigger(player, 'playbackstop', [state]);
events.trigger(self, 'playbackstop', [playbackStopInfo]);
Events.trigger(player, 'playbackstop', [state]);
Events.trigger(self, 'playbackstop', [playbackStopInfo]);
const nextItemPlayOptions = nextItem ? (nextItem.item.playOptions || getDefaultPlayOptions()) : getDefaultPlayOptions();
const newPlayer = nextItem ? getPlayer(nextItem.item, nextItemPlayOptions) : null;
@ -2999,7 +2999,7 @@ class PlaybackManager {
reportPlayback(self, state, activePlayer, true, serverId, 'reportPlaybackStopped');
}
events.trigger(self, 'playbackstop', [{
Events.trigger(self, 'playbackstop', [{
player: activePlayer,
state: state,
nextItem: newItem,
@ -3010,8 +3010,8 @@ class PlaybackManager {
function bindStopped(player) {
if (enableLocalPlaylistManagement(player)) {
events.off(player, 'stopped', onPlaybackStopped);
events.on(player, 'stopped', onPlaybackStopped);
Events.off(player, 'stopped', onPlaybackStopped);
Events.on(player, 'stopped', onPlaybackStopped);
}
}
@ -3061,7 +3061,7 @@ class PlaybackManager {
}
function unbindStopped(player) {
events.off(player, 'stopped', onPlaybackStopped);
Events.off(player, 'stopped', onPlaybackStopped);
}
function initLegacyVolumeMethods(player) {
@ -3090,28 +3090,28 @@ class PlaybackManager {
}
if (enableLocalPlaylistManagement(player)) {
events.on(player, 'error', onPlaybackError);
events.on(player, 'timeupdate', onPlaybackTimeUpdate);
events.on(player, 'pause', onPlaybackPause);
events.on(player, 'unpause', onPlaybackUnpause);
events.on(player, 'volumechange', onPlaybackVolumeChange);
events.on(player, 'repeatmodechange', onRepeatModeChange);
events.on(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
events.on(player, 'playlistitemmove', onPlaylistItemMove);
events.on(player, 'playlistitemremove', onPlaylistItemRemove);
events.on(player, 'playlistitemadd', onPlaylistItemAdd);
Events.on(player, 'error', onPlaybackError);
Events.on(player, 'timeupdate', onPlaybackTimeUpdate);
Events.on(player, 'pause', onPlaybackPause);
Events.on(player, 'unpause', onPlaybackUnpause);
Events.on(player, 'volumechange', onPlaybackVolumeChange);
Events.on(player, 'repeatmodechange', onRepeatModeChange);
Events.on(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
Events.on(player, 'playlistitemmove', onPlaylistItemMove);
Events.on(player, 'playlistitemremove', onPlaylistItemRemove);
Events.on(player, 'playlistitemadd', onPlaylistItemAdd);
} else if (player.isLocalPlayer) {
events.on(player, 'itemstarted', onPlaybackStartedFromSelfManagingPlayer);
events.on(player, 'itemstopped', onPlaybackStoppedFromSelfManagingPlayer);
events.on(player, 'timeupdate', onPlaybackTimeUpdate);
events.on(player, 'pause', onPlaybackPause);
events.on(player, 'unpause', onPlaybackUnpause);
events.on(player, 'volumechange', onPlaybackVolumeChange);
events.on(player, 'repeatmodechange', onRepeatModeChange);
events.on(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
events.on(player, 'playlistitemmove', onPlaylistItemMove);
events.on(player, 'playlistitemremove', onPlaylistItemRemove);
events.on(player, 'playlistitemadd', onPlaylistItemAdd);
Events.on(player, 'itemstarted', onPlaybackStartedFromSelfManagingPlayer);
Events.on(player, 'itemstopped', onPlaybackStoppedFromSelfManagingPlayer);
Events.on(player, 'timeupdate', onPlaybackTimeUpdate);
Events.on(player, 'pause', onPlaybackPause);
Events.on(player, 'unpause', onPlaybackUnpause);
Events.on(player, 'volumechange', onPlaybackVolumeChange);
Events.on(player, 'repeatmodechange', onRepeatModeChange);
Events.on(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
Events.on(player, 'playlistitemmove', onPlaylistItemMove);
Events.on(player, 'playlistitemremove', onPlaylistItemRemove);
Events.on(player, 'playlistitemadd', onPlaylistItemAdd);
}
if (player.isLocalPlayer) {
@ -3120,7 +3120,7 @@ class PlaybackManager {
bindStopped(player);
}
events.on(pluginManager, 'registered', function (e, plugin) {
Events.on(pluginManager, 'registered', function (e, plugin) {
if (plugin.type === 'mediaplayer') {
initMediaPlayer(plugin);
}
@ -3165,7 +3165,7 @@ class PlaybackManager {
ConnectionManager.getApiClient(serverId).getLiveStreamMediaInfo(liveStreamId).then(function (info) {
mediaSource.MediaStreams = info.MediaStreams;
events.trigger(player, 'mediastreamschange');
Events.trigger(player, 'mediastreamschange');
}, function () {
});
}
@ -3191,8 +3191,8 @@ class PlaybackManager {
if (appHost.supports('remotecontrol')) {
import('../../scripts/serverNotifications').then((serverNotifications) => {
events.on(serverNotifications, 'ServerShuttingDown', self.setDefaultPlayerActive.bind(self));
events.on(serverNotifications, 'ServerRestarting', self.setDefaultPlayerActive.bind(self));
Events.on(serverNotifications, 'ServerShuttingDown', self.setDefaultPlayerActive.bind(self));
Events.on(serverNotifications, 'ServerRestarting', self.setDefaultPlayerActive.bind(self));
});
}
}
@ -3588,7 +3588,7 @@ class PlaybackManager {
}
this._playQueueManager.setRepeatMode(value);
events.trigger(player, 'repeatmodechange');
Events.trigger(player, 'repeatmodechange');
}
getRepeatMode(player = this._currentPlayer) {
@ -3605,7 +3605,7 @@ class PlaybackManager {
}
this._playQueueManager.setShuffleMode(value);
events.trigger(player, 'shufflequeuemodechange');
Events.trigger(player, 'shufflequeuemodechange');
}
getQueueShuffleMode(player = this._currentPlayer) {
@ -3633,7 +3633,7 @@ class PlaybackManager {
} else {
this._playQueueManager.toggleShuffleMode();
}
events.trigger(player, 'shufflequeuemodechange');
Events.trigger(player, 'shufflequeuemodechange');
}
clearQueue(clearCurrentItem = false, player = this._currentPlayer) {
@ -3642,7 +3642,7 @@ class PlaybackManager {
}
this._playQueueManager.clearPlaylist(clearCurrentItem);
events.trigger(player, 'playlistitemremove');
Events.trigger(player, 'playlistitemremove');
}
trySetActiveDeviceName(name) {

View file

@ -1,7 +1,7 @@
import { playbackManager } from './playbackmanager';
import layoutManager from '../layoutManager';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
let orientationLocked;
@ -14,7 +14,7 @@ function onOrientationChangeError(err) {
console.error('error locking orientation: ' + err);
}
events.on(playbackManager, 'playbackstart', function (e, player, state) {
Events.on(playbackManager, 'playbackstart', function (e, player, state) {
const isLocalVideo = player.isLocalPlayer && !player.isExternalPlayer && playbackManager.isPlayingVideo(player);
if (isLocalVideo && layoutManager.mobile) {
@ -37,7 +37,7 @@ events.on(playbackManager, 'playbackstart', function (e, player, state) {
}
});
events.on(playbackManager, 'playbackstop', function (e, playbackStopInfo) {
Events.on(playbackManager, 'playbackstop', function (e, playbackStopInfo) {
if (orientationLocked && !playbackStopInfo.nextMediaType) {
/* eslint-disable-next-line compat/compat */
const unlockOrientation = window.screen.unlockOrientation || window.screen.mozUnlockOrientation || window.screen.msUnlockOrientation || (window.screen.orientation && window.screen.orientation.unlock);

View file

@ -1,5 +1,5 @@
import appSettings from '../../scripts/settings/appSettings';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import browser from '../../scripts/browser';
import loading from '../loading/loading';
import { playbackManager } from '../playback/playbackmanager';
@ -300,21 +300,21 @@ document.addEventListener('viewshow', function (e) {
}
});
events.on(appSettings, 'change', function (e, name) {
Events.on(appSettings, 'change', function (e, name) {
if (name === 'displaymirror') {
mirrorIfEnabled();
}
});
events.on(playbackManager, 'pairing', function (e) {
Events.on(playbackManager, 'pairing', function (e) {
loading.show();
});
events.on(playbackManager, 'paired', function (e) {
Events.on(playbackManager, 'paired', function (e) {
loading.hide();
});
events.on(playbackManager, 'pairerror', function (e) {
Events.on(playbackManager, 'pairerror', function (e) {
loading.hide();
});

View file

@ -1,4 +1,4 @@
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import { playbackManager } from '../playback/playbackmanager';
function transferPlayback(oldPlayer, newPlayer) {
@ -26,7 +26,7 @@ function transferPlayback(oldPlayer, newPlayer) {
});
}
events.on(playbackManager, 'playerchange', (e, newPlayer, newTarget, oldPlayer) => {
Events.on(playbackManager, 'playerchange', (e, newPlayer, newTarget, oldPlayer) => {
if (!oldPlayer || !newPlayer) {
return;
}

View file

@ -1,5 +1,5 @@
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import { playbackManager } from './playbackmanager';
import dom from '../../scripts/dom';
import browser from '../../scripts/browser';
@ -112,8 +112,8 @@ function releaseCurrentPlayer() {
const player = currentPlayer;
if (player) {
events.off(player, 'volumechange', onVolumeChanged);
events.off(player, 'playbackstop', hideOsd);
Events.off(player, 'volumechange', onVolumeChanged);
Events.off(player, 'playbackstop', hideOsd);
currentPlayer = null;
}
}
@ -142,11 +142,11 @@ function bindToPlayer(player) {
}
hideOsd();
events.on(player, 'volumechange', onVolumeChanged);
events.on(player, 'playbackstop', hideOsd);
Events.on(player, 'volumechange', onVolumeChanged);
Events.on(player, 'playbackstop', hideOsd);
}
events.on(playbackManager, 'playerchange', function () {
Events.on(playbackManager, 'playerchange', function () {
bindToPlayer(playbackManager.getCurrentPlayer());
});

View file

@ -5,7 +5,7 @@ import focusManager from '../focusManager';
import qualityoptions from '../qualityOptions';
import globalize from '../../scripts/globalize';
import loading from '../loading/loading';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import '../../elements/emby-select/emby-select';
import '../../elements/emby-checkbox/emby-checkbox';
@ -248,7 +248,7 @@ import '../../elements/emby-checkbox/emby-checkbox';
});
}
events.trigger(instance, 'saved');
Events.trigger(instance, 'saved');
}, () => {
loading.hide();
});

View file

@ -1,4 +1,4 @@
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import '../../elements/emby-button/paper-icon-button-light';
import globalize from '../../scripts/globalize';
import layoutManager from '../layoutManager';
@ -450,14 +450,14 @@ import './playerstats.css';
};
instance.onTimeUpdate = localOnTimeUpdate;
events.on(player, 'timeupdate', localOnTimeUpdate);
Events.on(player, 'timeupdate', localOnTimeUpdate);
}
function unbindEvents(instance, player) {
const localOnTimeUpdate = instance.onTimeUpdate;
if (localOnTimeUpdate) {
events.off(player, 'timeupdate', localOnTimeUpdate);
Events.off(player, 'timeupdate', localOnTimeUpdate);
}
}

View file

@ -1,4 +1,4 @@
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import globalize from '../scripts/globalize';
/* eslint-disable indent */
@ -99,7 +99,7 @@ import globalize from '../scripts/globalize';
// type (skin, screensaver, etc)
#register(obj) {
this.pluginsList.push(obj);
events.trigger(this, 'registered', [obj]);
Events.trigger(this, 'registered', [obj]);
}
ofType(type) {

View file

@ -7,7 +7,7 @@ import scrollHelper from '../../scripts/scrollHelper';
import datetime from '../../scripts/datetime';
import imageLoader from '../images/imageLoader';
import recordingFields from './recordingfields';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import '../../elements/emby-button/emby-button';
import '../../elements/emby-button/paper-icon-button-light';
import '../../elements/emby-checkbox/emby-checkbox';
@ -166,7 +166,7 @@ function showEditor(itemId, serverId) {
}
dlg.addEventListener('close', function () {
events.off(currentRecordingFields, 'recordingchanged', onRecordingChanged);
Events.off(currentRecordingFields, 'recordingchanged', onRecordingChanged);
executeCloseAction(closeAction, itemId, serverId);
if (currentRecordingFields && currentRecordingFields.hasChanged()) {
@ -190,7 +190,7 @@ function showEditor(itemId, serverId) {
serverId: serverId
});
events.on(currentRecordingFields, 'recordingchanged', onRecordingChanged);
Events.on(currentRecordingFields, 'recordingchanged', onRecordingChanged);
dialogHelper.open(dlg);
});

View file

@ -1,5 +1,5 @@
import globalize from '../../scripts/globalize';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import serverNotifications from '../../scripts/serverNotifications';
import loading from '../loading/loading';
import dom from '../../scripts/dom';
@ -104,14 +104,14 @@ class RecordingEditor {
const timerChangedHandler = onTimerChangedExternally.bind(this);
this.timerChangedHandler = timerChangedHandler;
events.on(serverNotifications, 'TimerCreated', timerChangedHandler);
events.on(serverNotifications, 'TimerCancelled', timerChangedHandler);
Events.on(serverNotifications, 'TimerCreated', timerChangedHandler);
Events.on(serverNotifications, 'TimerCancelled', timerChangedHandler);
const seriesTimerChangedHandler = onSeriesTimerChangedExternally.bind(this);
this.seriesTimerChangedHandler = seriesTimerChangedHandler;
events.on(serverNotifications, 'SeriesTimerCreated', seriesTimerChangedHandler);
events.on(serverNotifications, 'SeriesTimerCancelled', seriesTimerChangedHandler);
Events.on(serverNotifications, 'SeriesTimerCreated', seriesTimerChangedHandler);
Events.on(serverNotifications, 'SeriesTimerCancelled', seriesTimerChangedHandler);
}
embed() {
@ -144,14 +144,14 @@ class RecordingEditor {
const timerChangedHandler = this.timerChangedHandler;
this.timerChangedHandler = null;
events.off(serverNotifications, 'TimerCreated', timerChangedHandler);
events.off(serverNotifications, 'TimerCancelled', timerChangedHandler);
Events.off(serverNotifications, 'TimerCreated', timerChangedHandler);
Events.off(serverNotifications, 'TimerCancelled', timerChangedHandler);
const seriesTimerChangedHandler = this.seriesTimerChangedHandler;
this.seriesTimerChangedHandler = null;
events.off(serverNotifications, 'SeriesTimerCreated', seriesTimerChangedHandler);
events.off(serverNotifications, 'SeriesTimerCancelled', seriesTimerChangedHandler);
Events.off(serverNotifications, 'SeriesTimerCreated', seriesTimerChangedHandler);
Events.off(serverNotifications, 'SeriesTimerCancelled', seriesTimerChangedHandler);
}
}
@ -207,7 +207,7 @@ function onRecordChange(e) {
if (!hasEnabledTimer) {
loading.show();
recordingHelper.createRecording(apiClient, options.programId, false).then(function () {
events.trigger(self, 'recordingchanged');
Events.trigger(self, 'recordingchanged');
fetchData(self);
loading.hide();
});
@ -216,7 +216,7 @@ function onRecordChange(e) {
if (hasEnabledTimer) {
loading.show();
recordingHelper.cancelTimer(apiClient, this.TimerId, true).then(function () {
events.trigger(self, 'recordingchanged');
Events.trigger(self, 'recordingchanged');
fetchData(self);
loading.hide();
});

View file

@ -4,7 +4,7 @@ import listView from '../listview/listview';
import imageLoader from '../images/imageLoader';
import { playbackManager } from '../playback/playbackmanager';
import nowPlayingHelper from '../playback/nowplayinghelper';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import { appHost } from '../apphost';
import globalize from '../../scripts/globalize';
import layoutManager from '../layoutManager';
@ -631,18 +631,18 @@ export default function () {
const player = currentPlayer;
if (player) {
events.off(player, 'playbackstart', onPlaybackStart);
events.off(player, 'statechange', onStateChanged);
events.off(player, 'repeatmodechange', onRepeatModeChange);
events.off(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
events.off(player, 'playlistitemremove', onPlaylistItemRemoved);
events.off(player, 'playlistitemmove', onPlaylistUpdate);
events.off(player, 'playlistitemadd', onPlaylistUpdate);
events.off(player, 'playbackstop', onPlaybackStopped);
events.off(player, 'volumechange', onVolumeChanged);
events.off(player, 'pause', onPlayPauseStateChanged);
events.off(player, 'unpause', onPlayPauseStateChanged);
events.off(player, 'timeupdate', onTimeUpdate);
Events.off(player, 'playbackstart', onPlaybackStart);
Events.off(player, 'statechange', onStateChanged);
Events.off(player, 'repeatmodechange', onRepeatModeChange);
Events.off(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
Events.off(player, 'playlistitemremove', onPlaylistItemRemoved);
Events.off(player, 'playlistitemmove', onPlaylistUpdate);
Events.off(player, 'playlistitemadd', onPlaylistUpdate);
Events.off(player, 'playbackstop', onPlaybackStopped);
Events.off(player, 'volumechange', onVolumeChanged);
Events.off(player, 'pause', onPlayPauseStateChanged);
Events.off(player, 'unpause', onPlayPauseStateChanged);
Events.off(player, 'timeupdate', onTimeUpdate);
currentPlayer = null;
}
}
@ -653,18 +653,18 @@ export default function () {
onStateChanged.call(player, {
type: 'init'
}, state);
events.on(player, 'playbackstart', onPlaybackStart);
events.on(player, 'statechange', onStateChanged);
events.on(player, 'repeatmodechange', onRepeatModeChange);
events.on(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
events.on(player, 'playlistitemremove', onPlaylistItemRemoved);
events.on(player, 'playlistitemmove', onPlaylistUpdate);
events.on(player, 'playlistitemadd', onPlaylistUpdate);
events.on(player, 'playbackstop', onPlaybackStopped);
events.on(player, 'volumechange', onVolumeChanged);
events.on(player, 'pause', onPlayPauseStateChanged);
events.on(player, 'unpause', onPlayPauseStateChanged);
events.on(player, 'timeupdate', onTimeUpdate);
Events.on(player, 'playbackstart', onPlaybackStart);
Events.on(player, 'statechange', onStateChanged);
Events.on(player, 'repeatmodechange', onRepeatModeChange);
Events.on(player, 'shufflequeuemodechange', onShuffleQueueModeChange);
Events.on(player, 'playlistitemremove', onPlaylistItemRemoved);
Events.on(player, 'playlistitemmove', onPlaylistUpdate);
Events.on(player, 'playlistitemadd', onPlaylistUpdate);
Events.on(player, 'playbackstop', onPlaybackStopped);
Events.on(player, 'volumechange', onVolumeChanged);
Events.on(player, 'pause', onPlayPauseStateChanged);
Events.on(player, 'unpause', onPlayPauseStateChanged);
Events.on(player, 'timeupdate', onTimeUpdate);
const playerInfo = playbackManager.getPlayerInfo();
const supportedCommands = playerInfo.supportedCommands;
currentPlayerSupportedCommands = supportedCommands;
@ -915,7 +915,7 @@ export default function () {
bindEvents(context);
context.querySelector('.sendMessageForm').addEventListener('submit', onMessageSubmit);
context.querySelector('.typeTextForm').addEventListener('submit', onSendStringSubmit);
events.on(playbackManager, 'playerchange', onPlayerChange);
Events.on(playbackManager, 'playerchange', onPlayerChange);
if (layoutManager.tv) {
const positionSlider = context.querySelector('.nowPlayingPositionSlider');
@ -926,7 +926,7 @@ export default function () {
function onDialogClosed(e) {
releaseCurrentPlayer();
events.off(playbackManager, 'playerchange', onPlayerChange);
Events.off(playbackManager, 'playerchange', onPlayerChange);
lastPlayerState = null;
}

View file

@ -1,6 +1,6 @@
import layoutManager from '../layoutManager';
import globalize from '../../scripts/globalize';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import browser from '../../scripts/browser';
import AlphaPicker from '../alphaPicker/alphaPicker';
import '../../elements/emby-input/emby-input';
@ -15,7 +15,7 @@ import './searchfields.css';
let value = instance.nextSearchValue;
value = (value || '').trim();
events.trigger(instance, 'search', [value]);
Events.trigger(instance, 'search', [value]);
}
function triggerSearch(instance, value) {

View file

@ -7,7 +7,7 @@ import loading from '../loading/loading';
import subtitleAppearanceHelper from './subtitleappearancehelper';
import settingsHelper from '../settingshelper';
import dom from '../../scripts/dom';
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import '../listview/listview.css';
import '../../elements/emby-select/emby-select';
import '../../elements/emby-slider/emby-slider';
@ -92,7 +92,7 @@ function save(instance, context, userId, userSettings, apiClient, enableSaveConf
});
}
events.trigger(instance, 'saved');
Events.trigger(instance, 'saved');
}, function () {
loading.hide();
});

View file

@ -1,4 +1,4 @@
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import { playbackManager } from '../playback/playbackmanager';
import syncPlayManager from './syncPlayManager';
import loading from '../loading/loading';
@ -150,7 +150,7 @@ function showLeaveGroupSelection (button, user, apiClient) {
// Register to SyncPlay events
let syncPlayEnabled = false;
events.on(syncPlayManager, 'enabled', function (e, enabled) {
Events.on(syncPlayManager, 'enabled', function (e, enabled) {
syncPlayEnabled = enabled;
});

View file

@ -3,7 +3,7 @@
* @module components/syncPlay/syncPlayManager
*/
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
import { playbackManager } from '../playback/playbackmanager';
import timeSyncManager from './timeSyncManager';
import toast from '../toast/toast';
@ -25,13 +25,13 @@ function waitForEventOnce(emitter, eventType, timeout) {
}, timeout);
}
const callback = () => {
events.off(emitter, eventType, callback);
Events.off(emitter, eventType, callback);
if (rejectTimeout) {
clearTimeout(rejectTimeout);
}
resolve(arguments);
};
events.on(emitter, eventType, callback);
Events.on(emitter, eventType, callback);
});
}
@ -92,25 +92,25 @@ class SyncPlayManager {
this.roundTripDuration = 0;
this.notifySyncPlayReady = false;
events.on(playbackManager, 'playbackstart', (player, state) => {
Events.on(playbackManager, 'playbackstart', (player, state) => {
this.onPlaybackStart(player, state);
});
events.on(playbackManager, 'playbackstop', (stopInfo) => {
Events.on(playbackManager, 'playbackstop', (stopInfo) => {
this.onPlaybackStop(stopInfo);
});
events.on(playbackManager, 'playerchange', () => {
Events.on(playbackManager, 'playerchange', () => {
this.onPlayerChange();
});
this.bindToPlayer(playbackManager.getCurrentPlayer());
events.on(this, 'timeupdate', (event) => {
Events.on(this, 'timeupdate', (event) => {
this.syncPlaybackTime();
});
events.on(timeSyncManager, 'update', (event, error, timeOffset, ping) => {
Events.on(timeSyncManager, 'update', (event, error, timeOffset, ping) => {
if (error) {
console.debug('SyncPlay, time update issue', error);
return;
@ -121,7 +121,7 @@ class SyncPlayManager {
if (this.notifySyncPlayReady) {
this.syncPlayReady = true;
events.trigger(this, 'ready');
Events.trigger(this, 'ready');
this.notifySyncPlayReady = false;
}
@ -149,14 +149,14 @@ class SyncPlayManager {
* Called when playback starts.
*/
onPlaybackStart (player, state) {
events.trigger(this, 'playbackstart', [player, state]);
Events.trigger(this, 'playbackstart', [player, state]);
}
/**
* Called when playback stops.
*/
onPlaybackStop (stopInfo) {
events.trigger(this, 'playbackstop', [stopInfo]);
Events.trigger(this, 'playbackstop', [stopInfo]);
if (this.isSyncPlayEnabled()) {
this.disableSyncPlay(false);
}
@ -167,21 +167,21 @@ class SyncPlayManager {
*/
onPlayerChange () {
this.bindToPlayer(playbackManager.getCurrentPlayer());
events.trigger(this, 'playerchange', [this.currentPlayer]);
Events.trigger(this, 'playerchange', [this.currentPlayer]);
}
/**
* Called when playback unpauses.
*/
onPlayerUnpause () {
events.trigger(this, 'unpause', [this.currentPlayer]);
Events.trigger(this, 'unpause', [this.currentPlayer]);
}
/**
* Called when playback pauses.
*/
onPlayerPause() {
events.trigger(this, 'pause', [this.currentPlayer]);
Events.trigger(this, 'pause', [this.currentPlayer]);
}
/**
@ -191,7 +191,7 @@ class SyncPlayManager {
onTimeUpdate (e) {
// NOTICE: this event is unreliable, at least in Safari
// which just stops firing the event after a while.
events.trigger(this, 'timeupdate', [e]);
Events.trigger(this, 'timeupdate', [e]);
}
/**
@ -200,7 +200,7 @@ class SyncPlayManager {
onPlaying () {
// TODO: implement group wait
this.lastPlaybackWaiting = null;
events.trigger(this, 'playing');
Events.trigger(this, 'playing');
}
/**
@ -212,7 +212,7 @@ class SyncPlayManager {
this.lastPlaybackWaiting = new Date();
}
events.trigger(this, 'waiting');
Events.trigger(this, 'waiting');
}
/**
@ -260,11 +260,11 @@ class SyncPlayManager {
self.onWaiting();
};
events.on(player, 'unpause', this._onPlayerUnpause);
events.on(player, 'pause', this._onPlayerPause);
events.on(player, 'timeupdate', this._onTimeUpdate);
events.on(player, 'playing', this._onPlaying);
events.on(player, 'waiting', this._onWaiting);
Events.on(player, 'unpause', this._onPlayerUnpause);
Events.on(player, 'pause', this._onPlayerPause);
Events.on(player, 'timeupdate', this._onTimeUpdate);
Events.on(player, 'playing', this._onPlaying);
Events.on(player, 'waiting', this._onWaiting);
// Save player current PlaybackRate value
if (player.supports && player.supports('PlaybackRate')) {
@ -278,11 +278,11 @@ class SyncPlayManager {
releaseCurrentPlayer () {
const player = this.currentPlayer;
if (player) {
events.off(player, 'unpause', this._onPlayerUnpause);
events.off(player, 'pause', this._onPlayerPause);
events.off(player, 'timeupdate', this._onTimeUpdate);
events.off(player, 'playing', this._onPlaying);
events.off(player, 'waiting', this._onWaiting);
Events.off(player, 'unpause', this._onPlayerUnpause);
Events.off(player, 'pause', this._onPlayerPause);
Events.off(player, 'timeupdate', this._onTimeUpdate);
Events.off(player, 'playing', this._onPlaying);
Events.off(player, 'waiting', this._onWaiting);
// Restore player original PlaybackRate value
if (this.playbackRateSupported) {
player.setPlaybackRate(this.localPlayerPlaybackRate);
@ -486,7 +486,7 @@ class SyncPlayManager {
enableSyncPlay (apiClient, enabledAt, showMessage = false) {
this.syncPlayEnabledAt = enabledAt;
this.injectPlaybackManager();
events.trigger(this, 'enabled', [true]);
Events.trigger(this, 'enabled', [true]);
waitForEventOnce(this, 'ready').then(() => {
this.processCommand(this.queuedCommand, apiClient);
@ -515,7 +515,7 @@ class SyncPlayManager {
this.lastCommand = null;
this.queuedCommand = null;
this.syncEnabled = false;
events.trigger(this, 'enabled', [false]);
Events.trigger(this, 'enabled', [false]);
this.restorePlaybackManager();
if (showMessage) {
@ -814,7 +814,7 @@ class SyncPlayManager {
*/
showSyncIcon (syncMethod) {
this.syncMethod = syncMethod;
events.trigger(this, 'syncing', [true, this.syncMethod]);
Events.trigger(this, 'syncing', [true, this.syncMethod]);
}
/**
@ -822,7 +822,7 @@ class SyncPlayManager {
*/
clearSyncIcon () {
this.syncMethod = 'None';
events.trigger(this, 'syncing', [false, this.syncMethod]);
Events.trigger(this, 'syncing', [false, this.syncMethod]);
}
/**

View file

@ -3,7 +3,7 @@
* @module components/syncPlay/timeSyncManager
*/
import { ConnectionManager, events } from 'jellyfin-apiclient';
import { ConnectionManager, Events } from 'jellyfin-apiclient';
/**
* Time estimation
@ -131,11 +131,11 @@ class TimeSyncManager {
this.pings++;
}
events.trigger(this, 'update', [null, this.getTimeOffset(), this.getPing()]);
Events.trigger(this, 'update', [null, this.getTimeOffset(), this.getPing()]);
});
}).catch((error) => {
console.error(error);
events.trigger(this, 'update', [error, null, null]);
Events.trigger(this, 'update', [error, null, null]);
}).finally(() => {
this.requestPing();
});

View file

@ -1,6 +1,6 @@
import dom from '../../scripts/dom';
import { playbackManager } from '../playback/playbackmanager';
import { events } from 'jellyfin-apiclient';
import { Events } from 'jellyfin-apiclient';
import mediaInfo from '../mediainfo/mediainfo';
import layoutManager from '../layoutManager';
import focusManager from '../focusManager';
@ -136,7 +136,7 @@ import '../../assets/css/flexstyles.css';
elem.classList.add('hide');
clearHideAnimationEventListeners(instance, elem);
events.trigger(instance, 'hide');
Events.trigger(instance, 'hide');
}
function hideComingUpNext() {