mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-15 18:08:17 -07:00
Merge pull request #4050 from thornbill/apiclient-events
Replace apiclient event bus with local version
This commit is contained in:
commit
1762e95740
@ -1,7 +1,8 @@
|
|||||||
import { ConnectionManager, Credentials, ApiClient, Events } from 'jellyfin-apiclient';
|
import { ConnectionManager, Credentials, ApiClient } from 'jellyfin-apiclient';
|
||||||
|
|
||||||
import { appHost } from './apphost';
|
import { appHost } from './apphost';
|
||||||
import Dashboard from '../utils/dashboard';
|
import Dashboard from '../utils/dashboard';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
import { setUserInfo } from '../scripts/settings/userSettings';
|
import { setUserInfo } from '../scripts/settings/userSettings';
|
||||||
import appSettings from '../scripts/settings/appSettings';
|
import appSettings from '../scripts/settings/appSettings';
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import escapeHtml from 'escape-html';
|
import escapeHtml from 'escape-html';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
import globalize from '../scripts/globalize';
|
import globalize from '../scripts/globalize';
|
||||||
import dom from '../scripts/dom';
|
import dom from '../scripts/dom';
|
||||||
import * as datefns from 'date-fns';
|
import * as datefns from 'date-fns';
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import { Action, createHashHistory } from 'history';
|
import { Action, createHashHistory } from 'history';
|
||||||
|
|
||||||
import { appHost } from './apphost';
|
import { appHost } from './apphost';
|
||||||
import { clearBackdrop, setBackdropTransparency } from './backdrop/backdrop';
|
import { clearBackdrop, setBackdropTransparency } from './backdrop/backdrop';
|
||||||
import globalize from '../scripts/globalize';
|
import globalize from '../scripts/globalize';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
import itemHelper from './itemHelper';
|
import itemHelper from './itemHelper';
|
||||||
import loading from './loading/loading';
|
import loading from './loading/loading';
|
||||||
import viewManager from './viewManager/viewManager';
|
import viewManager from './viewManager/viewManager';
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import Package from '../../package.json';
|
import Package from '../../package.json';
|
||||||
import appSettings from '../scripts/settings/appSettings';
|
import appSettings from '../scripts/settings/appSettings';
|
||||||
import browser from '../scripts/browser';
|
import browser from '../scripts/browser';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
import * as htmlMediaHelper from '../components/htmlMediaHelper';
|
import * as htmlMediaHelper from '../components/htmlMediaHelper';
|
||||||
import * as webSettings from '../scripts/settings/webSettings';
|
import * as webSettings from '../scripts/settings/webSettings';
|
||||||
import globalize from '../scripts/globalize';
|
import globalize from '../scripts/globalize';
|
||||||
|
@ -8,7 +8,7 @@ import datetime from '../../scripts/datetime';
|
|||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from '../loading/loading';
|
import loading from '../loading/loading';
|
||||||
import skinManager from '../../scripts/themeManager';
|
import skinManager from '../../scripts/themeManager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import '../../elements/emby-select/emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import '../../elements/emby-checkbox/emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import '../../elements/emby-button/emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import dialogHelper from '../dialogHelper/dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import '../../elements/emby-checkbox/emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import '../../elements/emby-collapse/emby-collapse';
|
import '../../elements/emby-collapse/emby-collapse';
|
||||||
import './style.scss';
|
import './style.scss';
|
||||||
|
@ -2,7 +2,7 @@ import escapeHtml from 'escape-html';
|
|||||||
import inputManager from '../../scripts/inputManager';
|
import inputManager from '../../scripts/inputManager';
|
||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import scrollHelper from '../../scripts/scrollHelper';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import loading from '../loading/loading';
|
import loading from '../loading/loading';
|
||||||
|
@ -4,7 +4,7 @@ import layoutManager from '../layoutManager';
|
|||||||
import focusManager from '../focusManager';
|
import focusManager from '../focusManager';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from '../loading/loading';
|
import loading from '../loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import homeSections from '../homesections/homesections';
|
import homeSections from '../homesections/homesections';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import '../listview/listview.scss';
|
import '../listview/listview.scss';
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
import appSettings from '../scripts/settings/appSettings' ;
|
import appSettings from '../scripts/settings/appSettings' ;
|
||||||
import browser from '../scripts/browser';
|
import browser from '../scripts/browser';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
export function getSavedVolume() {
|
export function getSavedVolume() {
|
||||||
return appSettings.get('volume') || 1;
|
return appSettings.get('volume') || 1;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { playbackManager } from './playback/playbackmanager';
|
import { playbackManager } from './playback/playbackmanager';
|
||||||
import serverNotifications from '../scripts/serverNotifications';
|
import serverNotifications from '../scripts/serverNotifications';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
function onUserDataChanged() {
|
function onUserDataChanged() {
|
||||||
const instance = this;
|
const instance = this;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
import { appHost } from './apphost';
|
import { appHost } from './apphost';
|
||||||
import browser from '../scripts/browser';
|
import browser from '../scripts/browser';
|
||||||
import appSettings from '../scripts/settings/appSettings';
|
import appSettings from '../scripts/settings/appSettings';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
function setLayout(instance, layout, selectedLayout) {
|
function setLayout(instance, layout, selectedLayout) {
|
||||||
if (layout === selectedLayout) {
|
if (layout === selectedLayout) {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import dom from '../scripts/dom';
|
import dom from '../scripts/dom';
|
||||||
import browser from '../scripts/browser';
|
import browser from '../scripts/browser';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
import '../elements/emby-tabs/emby-tabs';
|
import '../elements/emby-tabs/emby-tabs';
|
||||||
import '../elements/emby-button/emby-button';
|
import '../elements/emby-button/emby-button';
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import { playbackManager } from '../playback/playbackmanager';
|
import { playbackManager } from '../playback/playbackmanager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
|
||||||
import NotificationIcon from './notificationicon.png';
|
import NotificationIcon from './notificationicon.png';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import datetime from '../../scripts/datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
import imageLoader from '../images/imageLoader';
|
import imageLoader from '../images/imageLoader';
|
||||||
import layoutManager from '../layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import { playbackManager } from './playbackmanager';
|
import { playbackManager } from './playbackmanager';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import './iconosd.scss';
|
import './iconosd.scss';
|
||||||
import 'material-design-icons-iconfont';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { playbackManager } from '../playback/playbackmanager';
|
import { playbackManager } from '../playback/playbackmanager';
|
||||||
import nowPlayingHelper from '../playback/nowplayinghelper';
|
import nowPlayingHelper from '../playback/nowplayinghelper';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import ServerConnections from '../ServerConnections';
|
import ServerConnections from '../ServerConnections';
|
||||||
import shell from '../../scripts/shell';
|
import shell from '../../scripts/shell';
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import datetime from '../../scripts/datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import appSettings from '../../scripts/settings/appSettings';
|
import appSettings from '../../scripts/settings/appSettings';
|
||||||
import itemHelper from '../itemHelper';
|
import itemHelper from '../itemHelper';
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
import { playbackManager } from './playbackmanager';
|
import { playbackManager } from './playbackmanager';
|
||||||
import layoutManager from '../layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
let orientationLocked;
|
let orientationLocked;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import appSettings from '../../scripts/settings/appSettings';
|
import appSettings from '../../scripts/settings/appSettings';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
import loading from '../loading/loading';
|
import loading from '../loading/loading';
|
||||||
import { playbackManager } from '../playback/playbackmanager';
|
import { playbackManager } from '../playback/playbackmanager';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import { playbackManager } from '../playback/playbackmanager';
|
import { playbackManager } from '../playback/playbackmanager';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
function transferPlayback(oldPlayer, newPlayer) {
|
function transferPlayback(oldPlayer, newPlayer) {
|
||||||
const state = playbackManager.getPlayerState(oldPlayer);
|
const state = playbackManager.getPlayerState(oldPlayer);
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import { playbackManager } from './playbackmanager';
|
import { playbackManager } from './playbackmanager';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import './iconosd.scss';
|
import './iconosd.scss';
|
||||||
import 'material-design-icons-iconfont';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ import focusManager from '../focusManager';
|
|||||||
import qualityoptions from '../qualityOptions';
|
import qualityoptions from '../qualityOptions';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from '../loading/loading';
|
import loading from '../loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import '../../elements/emby-select/emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import '../../elements/emby-checkbox/emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import ServerConnections from '../ServerConnections';
|
import ServerConnections from '../ServerConnections';
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import '../../elements/emby-button/paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
import layoutManager from '../layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import { playbackManager } from '../playback/playbackmanager';
|
import { playbackManager } from '../playback/playbackmanager';
|
||||||
import playMethodHelper from '../playback/playmethodhelper';
|
import playMethodHelper from '../playback/playmethodhelper';
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
import globalize from '../scripts/globalize';
|
import globalize from '../scripts/globalize';
|
||||||
import loading from './loading/loading';
|
import loading from './loading/loading';
|
||||||
import appSettings from '../scripts/settings/appSettings';
|
import appSettings from '../scripts/settings/appSettings';
|
||||||
|
@ -7,7 +7,7 @@ import scrollHelper from '../../scripts/scrollHelper';
|
|||||||
import datetime from '../../scripts/datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import imageLoader from '../images/imageLoader';
|
import imageLoader from '../images/imageLoader';
|
||||||
import recordingFields from './recordingfields';
|
import recordingFields from './recordingfields';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import '../../elements/emby-button/emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import '../../elements/emby-button/paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import '../../elements/emby-checkbox/emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import loading from '../loading/loading';
|
import loading from '../loading/loading';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
|
@ -5,7 +5,7 @@ import listView from '../listview/listview';
|
|||||||
import imageLoader from '../images/imageLoader';
|
import imageLoader from '../images/imageLoader';
|
||||||
import { playbackManager } from '../playback/playbackmanager';
|
import { playbackManager } from '../playback/playbackmanager';
|
||||||
import nowPlayingHelper from '../playback/nowplayinghelper';
|
import nowPlayingHelper from '../playback/nowplayinghelper';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import { appHost } from '../apphost';
|
import { appHost } from '../apphost';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import layoutManager from '../layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import type { BaseItemDto } from '@jellyfin/sdk/lib/generated-client';
|
import type { BaseItemDto } from '@jellyfin/sdk/lib/generated-client';
|
||||||
|
import type { ApiClient } from 'jellyfin-apiclient';
|
||||||
import classNames from 'classnames';
|
import classNames from 'classnames';
|
||||||
import { ApiClient } from 'jellyfin-apiclient';
|
|
||||||
import React, { FunctionComponent, useEffect, useState } from 'react';
|
import React, { FunctionComponent, useEffect, useState } from 'react';
|
||||||
|
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import type { BaseItemDto } from '@jellyfin/sdk/lib/generated-client';
|
import type { BaseItemDto } from '@jellyfin/sdk/lib/generated-client';
|
||||||
|
import type { ApiClient } from 'jellyfin-apiclient';
|
||||||
import classNames from 'classnames';
|
import classNames from 'classnames';
|
||||||
import { ApiClient } from 'jellyfin-apiclient';
|
|
||||||
import React, { FunctionComponent, useEffect, useState } from 'react';
|
import React, { FunctionComponent, useEffect, useState } from 'react';
|
||||||
|
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
@ -7,7 +7,7 @@ import loading from '../loading/loading';
|
|||||||
import subtitleAppearanceHelper from './subtitleappearancehelper';
|
import subtitleAppearanceHelper from './subtitleappearancehelper';
|
||||||
import settingsHelper from '../settingshelper';
|
import settingsHelper from '../settingshelper';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import '../listview/listview.scss';
|
import '../listview/listview.scss';
|
||||||
import '../../elements/emby-select/emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import '../../elements/emby-slider/emby-slider';
|
import '../../elements/emby-slider/emby-slider';
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { playbackManager } from './playback/playbackmanager';
|
import { playbackManager } from './playback/playbackmanager';
|
||||||
import * as userSettings from '../scripts/settings/userSettings';
|
import * as userSettings from '../scripts/settings/userSettings';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
import ServerConnections from './ServerConnections';
|
import ServerConnections from './ServerConnections';
|
||||||
|
|
||||||
let currentOwnerId;
|
let currentOwnerId;
|
||||||
|
@ -9,7 +9,7 @@ import '../../elements/emby-select/emby-select';
|
|||||||
import '../../elements/emby-button/emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import '../../assets/css/flexstyles.scss';
|
import '../../assets/css/flexstyles.scss';
|
||||||
import Dashboard from '../../utils/dashboard';
|
import Dashboard from '../../utils/dashboard';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
export default function (page, providerId, options) {
|
export default function (page, providerId, options) {
|
||||||
function reload() {
|
function reload() {
|
||||||
|
@ -6,7 +6,7 @@ import '../../elements/emby-input/emby-input';
|
|||||||
import '../listview/listview.scss';
|
import '../listview/listview.scss';
|
||||||
import '../../elements/emby-button/paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import Dashboard from '../../utils/dashboard';
|
import Dashboard from '../../utils/dashboard';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
export default function (page, providerId, options) {
|
export default function (page, providerId, options) {
|
||||||
function getListingProvider(config, id) {
|
function getListingProvider(config, id) {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import { playbackManager } from '../playback/playbackmanager';
|
import { playbackManager } from '../playback/playbackmanager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import mediaInfo from '../mediainfo/mediainfo';
|
import mediaInfo from '../mediainfo/mediainfo';
|
||||||
import layoutManager from '../layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import focusManager from '../focusManager';
|
import focusManager from '../focusManager';
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import escapeHtml from 'escape-html';
|
import escapeHtml from 'escape-html';
|
||||||
import datetime from '../../scripts/datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import itemHelper from '../../components/itemHelper';
|
import itemHelper from '../../components/itemHelper';
|
||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
|
@ -1,10 +1,11 @@
|
|||||||
import 'jquery';
|
import 'jquery';
|
||||||
import loading from '../../../components/loading/loading';
|
import loading from '../../../components/loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import globalize from '../../../scripts/globalize';
|
import globalize from '../../../scripts/globalize';
|
||||||
import serverNotifications from '../../../scripts/serverNotifications';
|
import serverNotifications from '../../../scripts/serverNotifications';
|
||||||
import { formatDistance, formatDistanceToNow } from 'date-fns';
|
import { formatDistance, formatDistanceToNow } from 'date-fns';
|
||||||
import { getLocale, getLocaleWithSuffix } from '../../../scripts/dfnshelper';
|
import { getLocale, getLocaleWithSuffix } from '../../../scripts/dfnshelper';
|
||||||
|
import Events from '../../../utils/events.ts';
|
||||||
|
|
||||||
import '../../../components/listview/listview.scss';
|
import '../../../components/listview/listview.scss';
|
||||||
import '../../../elements/emby-button/emby-button';
|
import '../../../elements/emby-button/emby-button';
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ import { appHost } from '../../components/apphost';
|
|||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { appRouter } from '../../components/appRouter';
|
import { appRouter } from '../../components/appRouter';
|
||||||
import layoutManager from '../../components/layoutManager';
|
import layoutManager from '../../components/layoutManager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
||||||
import datetime from '../../scripts/datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
|
@ -2,8 +2,9 @@ import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
|||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
export default function (view, params, tabContent) {
|
export default function (view, params, tabContent) {
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import loading from '../components/loading/loading';
|
import loading from '../components/loading/loading';
|
||||||
import globalize from '../scripts/globalize';
|
import globalize from '../scripts/globalize';
|
||||||
import Dashboard, { pageIdOn } from '../utils/dashboard';
|
import Dashboard, { pageIdOn } from '../utils/dashboard';
|
||||||
import { getParameterByName } from '../utils/url.ts';
|
import { getParameterByName } from '../utils/url.ts';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
function onListingsSubmitted() {
|
function onListingsSubmitted() {
|
||||||
Dashboard.navigate('livetvstatus.html');
|
Dashboard.navigate('livetvstatus.html');
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import { AlphaPicker } from '../../components/alphaPicker/alphaPicker';
|
import { AlphaPicker } from '../../components/alphaPicker/alphaPicker';
|
||||||
import listView from '../../components/listview/listview';
|
import listView from '../../components/listview/listview';
|
||||||
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
import { playbackManager } from '../../components/playback/playbackmanager';
|
import { playbackManager } from '../../components/playback/playbackmanager';
|
||||||
|
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import escapeHtml from 'escape-html';
|
import escapeHtml from 'escape-html';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import layoutManager from '../../components/layoutManager';
|
import layoutManager from '../../components/layoutManager';
|
||||||
import inputManager from '../../scripts/inputManager';
|
import inputManager from '../../scripts/inputManager';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
@ -10,11 +9,13 @@ import dom from '../../scripts/dom';
|
|||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import { playbackManager } from '../../components/playback/playbackmanager';
|
import { playbackManager } from '../../components/playback/playbackmanager';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Dashboard from '../../utils/dashboard';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import '../../elements/emby-scroller/emby-scroller';
|
import '../../elements/emby-scroller/emby-scroller';
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
import '../../elements/emby-tabs/emby-tabs';
|
import '../../elements/emby-tabs/emby-tabs';
|
||||||
import '../../elements/emby-button/emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import Dashboard from '../../utils/dashboard';
|
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import { AlphaPicker } from '../../components/alphaPicker/alphaPicker';
|
import { AlphaPicker } from '../../components/alphaPicker/alphaPicker';
|
||||||
@ -7,6 +6,8 @@ import listView from '../../components/listview/listview';
|
|||||||
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
import { playbackManager } from '../../components/playback/playbackmanager';
|
import { playbackManager } from '../../components/playback/playbackmanager';
|
||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import AlphaPicker from '../../components/alphaPicker/alphaPicker';
|
import AlphaPicker from '../../components/alphaPicker/alphaPicker';
|
||||||
@ -8,6 +7,8 @@ import listView from '../../components/listview/listview';
|
|||||||
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
@ -1,11 +1,12 @@
|
|||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import { AlphaPicker } from '../../components/alphaPicker/alphaPicker';
|
import { AlphaPicker } from '../../components/alphaPicker/alphaPicker';
|
||||||
import listView from '../../components/listview/listview';
|
import listView from '../../components/listview/listview';
|
||||||
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
@ -1,14 +1,15 @@
|
|||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import listView from '../../components/listview/listview';
|
import listView from '../../components/listview/listview';
|
||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
|
import { playbackManager } from '../../components/playback/playbackmanager';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
|
||||||
import Dashboard from '../../utils/dashboard';
|
import Dashboard from '../../utils/dashboard';
|
||||||
import {playbackManager} from '../../components/playback/playbackmanager';
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
export default function (view, params, tabContent) {
|
export default function (view, params, tabContent) {
|
||||||
function getPageData(context) {
|
function getPageData(context) {
|
||||||
|
@ -9,7 +9,7 @@ import datetime from '../../../scripts/datetime';
|
|||||||
import itemHelper from '../../../components/itemHelper';
|
import itemHelper from '../../../components/itemHelper';
|
||||||
import mediaInfo from '../../../components/mediainfo/mediainfo';
|
import mediaInfo from '../../../components/mediainfo/mediainfo';
|
||||||
import focusManager from '../../../components/focusManager';
|
import focusManager from '../../../components/focusManager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../../utils/events.ts';
|
||||||
import globalize from '../../../scripts/globalize';
|
import globalize from '../../../scripts/globalize';
|
||||||
import { appHost } from '../../../components/apphost';
|
import { appHost } from '../../../components/apphost';
|
||||||
import layoutManager from '../../../components/layoutManager';
|
import layoutManager from '../../../components/layoutManager';
|
||||||
|
@ -1,13 +1,14 @@
|
|||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import listView from '../../components/listview/listview';
|
import listView from '../../components/listview/listview';
|
||||||
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
|
||||||
import Dashboard from '../../utils/dashboard';
|
import Dashboard from '../../utils/dashboard';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import inputManager from '../../scripts/inputManager';
|
import inputManager from '../../scripts/inputManager';
|
||||||
import libraryMenu from '../../scripts/libraryMenu';
|
import libraryMenu from '../../scripts/libraryMenu';
|
||||||
import layoutManager from '../../components/layoutManager';
|
import layoutManager from '../../components/layoutManager';
|
||||||
@ -14,6 +13,7 @@ import '../../assets/css/scrollstyles.scss';
|
|||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
import '../../elements/emby-button/emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import Dashboard from '../../utils/dashboard';
|
import Dashboard from '../../utils/dashboard';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
import autoFocuser from '../../components/autoFocuser';
|
import autoFocuser from '../../components/autoFocuser';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import libraryBrowser from '../../scripts/libraryBrowser';
|
import libraryBrowser from '../../scripts/libraryBrowser';
|
||||||
import imageLoader from '../../components/images/imageLoader';
|
import imageLoader from '../../components/images/imageLoader';
|
||||||
import listView from '../../components/listview/listview';
|
import listView from '../../components/listview/listview';
|
||||||
@ -7,6 +6,8 @@ import cardBuilder from '../../components/cardbuilder/cardBuilder';
|
|||||||
import AlphaPicker from '../../components/alphaPicker/alphaPicker';
|
import AlphaPicker from '../../components/alphaPicker/alphaPicker';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import toast from '../../../components/toast/toast';
|
import toast from '../../../components/toast/toast';
|
||||||
import globalize from '../../../scripts/globalize';
|
import globalize from '../../../scripts/globalize';
|
||||||
import appSettings from '../../../scripts/settings/appSettings';
|
import appSettings from '../../../scripts/settings/appSettings';
|
||||||
|
import Events from '../../../utils/events.ts';
|
||||||
|
|
||||||
export default function (view) {
|
export default function (view) {
|
||||||
function submit(e) {
|
function submit(e) {
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
import EmbyProgressRing from '../emby-progressring/emby-progressring';
|
import EmbyProgressRing from '../emby-progressring/emby-progressring';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import 'webcomponents.js/webcomponents-lite';
|
import 'webcomponents.js/webcomponents-lite';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
@ -8,7 +8,7 @@ import dom from '../../scripts/dom';
|
|||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import focusManager from '../../components/focusManager';
|
import focusManager from '../../components/focusManager';
|
||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import 'webcomponents.js/webcomponents-lite';
|
import 'webcomponents.js/webcomponents-lite';
|
||||||
import ServerConnections from '../../components/ServerConnections';
|
import ServerConnections from '../../components/ServerConnections';
|
||||||
import Sortable from 'sortablejs';
|
import Sortable from 'sortablejs';
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
import EmbyButtonPrototype from '../../elements/emby-button/emby-button';
|
import EmbyButtonPrototype from '../../elements/emby-button/emby-button';
|
||||||
import ServerConnections from '../../components/ServerConnections';
|
import ServerConnections from '../../components/ServerConnections';
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
import EmbyButtonPrototype from '../emby-button/emby-button';
|
import EmbyButtonPrototype from '../emby-button/emby-button';
|
||||||
import ServerConnections from '../../components/ServerConnections';
|
import ServerConnections from '../../components/ServerConnections';
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ import 'resize-observer-polyfill';
|
|||||||
import './assets/css/site.scss';
|
import './assets/css/site.scss';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import * as ReactDOM from 'react-dom';
|
import * as ReactDOM from 'react-dom';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from './utils/events.ts';
|
||||||
import ServerConnections from './components/ServerConnections';
|
import ServerConnections from './components/ServerConnections';
|
||||||
import globalize from './scripts/globalize';
|
import globalize from './scripts/globalize';
|
||||||
import browser from './scripts/browser';
|
import browser from './scripts/browser';
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import 'material-design-icons-iconfont';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
@ -10,6 +9,7 @@ import TableOfContents from './tableOfContents';
|
|||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import { translateHtml } from '../../scripts/globalize';
|
import { translateHtml } from '../../scripts/globalize';
|
||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import '../../elements/emby-button/paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
|
|
||||||
|
@ -2,10 +2,10 @@ import appSettings from '../../scripts/settings/appSettings';
|
|||||||
import * as userSettings from '../../scripts/settings/userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import { playbackManager } from '../../components/playback/playbackmanager';
|
import { playbackManager } from '../../components/playback/playbackmanager';
|
||||||
import globalize from '../../scripts/globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import castSenderApiLoader from '../../components/castSenderApi';
|
import castSenderApiLoader from '../../components/castSenderApi';
|
||||||
import ServerConnections from '../../components/ServerConnections';
|
import ServerConnections from '../../components/ServerConnections';
|
||||||
import alert from '../../components/alert';
|
import alert from '../../components/alert';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
// Based on https://github.com/googlecast/CastVideos-chrome/blob/master/CastVideos.js
|
// Based on https://github.com/googlecast/CastVideos-chrome/blob/master/CastVideos.js
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
import { appHost } from '../../components/apphost';
|
import { appHost } from '../../components/apphost';
|
||||||
import * as htmlMediaHelper from '../../components/htmlMediaHelper';
|
import * as htmlMediaHelper from '../../components/htmlMediaHelper';
|
||||||
import profileBuilder from '../../scripts/browserDeviceProfile';
|
import profileBuilder from '../../scripts/browserDeviceProfile';
|
||||||
import { getIncludeCorsCredentials } from '../../scripts/settings/webSettings';
|
import { getIncludeCorsCredentials } from '../../scripts/settings/webSettings';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
function getDefaultProfile() {
|
function getDefaultProfile() {
|
||||||
return profileBuilder({});
|
return profileBuilder({});
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import { appHost } from '../../components/apphost';
|
import { appHost } from '../../components/apphost';
|
||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
@ -31,6 +30,7 @@ import ServerConnections from '../../components/ServerConnections';
|
|||||||
import profileBuilder from '../../scripts/browserDeviceProfile';
|
import profileBuilder from '../../scripts/browserDeviceProfile';
|
||||||
import { getIncludeCorsCredentials } from '../../scripts/settings/webSettings';
|
import { getIncludeCorsCredentials } from '../../scripts/settings/webSettings';
|
||||||
import { setBackdropTransparency, TRANSPARENCY_LEVEL } from '../../components/backdrop/backdrop';
|
import { setBackdropTransparency, TRANSPARENCY_LEVEL } from '../../components/backdrop/backdrop';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns resolved URL.
|
* Returns resolved URL.
|
||||||
|
@ -4,9 +4,10 @@ import keyboardnavigation from '../../scripts/keyboardNavigation';
|
|||||||
import dialogHelper from '../../components/dialogHelper/dialogHelper';
|
import dialogHelper from '../../components/dialogHelper/dialogHelper';
|
||||||
import dom from '../../scripts/dom';
|
import dom from '../../scripts/dom';
|
||||||
import { appRouter } from '../../components/appRouter';
|
import { appRouter } from '../../components/appRouter';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
import './style.scss';
|
import './style.scss';
|
||||||
import '../../elements/emby-button/paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
|
|
||||||
export class PdfPlayer {
|
export class PdfPlayer {
|
||||||
constructor() {
|
constructor() {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { playbackManager } from '../../components/playback/playbackmanager';
|
import { playbackManager } from '../../components/playback/playbackmanager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import serverNotifications from '../../scripts/serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import ServerConnections from '../../components/ServerConnections';
|
import ServerConnections from '../../components/ServerConnections';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
function getActivePlayerId() {
|
function getActivePlayerId() {
|
||||||
const info = playbackManager.getPlayerInfo();
|
const info = playbackManager.getPlayerInfo();
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
* @module components/syncPlay/core/Helper
|
* @module components/syncPlay/core/Helper
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../../utils/events.ts';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constants
|
* Constants
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
* @module components/syncPlay/core/Manager
|
* @module components/syncPlay/core/Manager
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import * as Helper from './Helper';
|
import * as Helper from './Helper';
|
||||||
import TimeSyncCore from './timeSync/TimeSyncCore';
|
import TimeSyncCore from './timeSync/TimeSyncCore';
|
||||||
import PlaybackCore from './PlaybackCore';
|
import PlaybackCore from './PlaybackCore';
|
||||||
@ -11,6 +10,7 @@ import QueueCore from './QueueCore';
|
|||||||
import Controller from './Controller';
|
import Controller from './Controller';
|
||||||
import toast from '../../../components/toast/toast';
|
import toast from '../../../components/toast/toast';
|
||||||
import globalize from '../../../scripts/globalize';
|
import globalize from '../../../scripts/globalize';
|
||||||
|
import Events from '../../../utils/events.ts';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class that manages the SyncPlay feature.
|
* Class that manages the SyncPlay feature.
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
* Module that manages the playback of SyncPlay.
|
* Module that manages the playback of SyncPlay.
|
||||||
* @module components/syncPlay/core/PlaybackCore
|
* @module components/syncPlay/core/PlaybackCore
|
||||||
*/
|
*/
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
|
|
||||||
import browser from '../../../scripts/browser';
|
import browser from '../../../scripts/browser';
|
||||||
|
import Events from '../../../utils/events.ts';
|
||||||
import { toBoolean, toFloat } from '../../../utils/string.ts';
|
import { toBoolean, toFloat } from '../../../utils/string.ts';
|
||||||
import * as Helper from './Helper';
|
import * as Helper from './Helper';
|
||||||
import { getSetting } from './Settings';
|
import { getSetting } from './Settings';
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
* @module components/syncPlay/core/players/GenericPlayer
|
* @module components/syncPlay/core/players/GenericPlayer
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../../../utils/events.ts';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class that translates events from a player to SyncPlay events.
|
* Class that translates events from a player to SyncPlay events.
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
* @module components/syncPlay/core/timeSync/TimeSync
|
* @module components/syncPlay/core/timeSync/TimeSync
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../../../utils/events.ts';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Time estimation.
|
* Time estimation.
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
* @module components/syncPlay/core/timeSync/TimeSyncCore
|
* @module components/syncPlay/core/timeSync/TimeSyncCore
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import appSettings from '../../../../scripts/settings/appSettings';
|
import appSettings from '../../../../scripts/settings/appSettings';
|
||||||
|
import Events from '../../../../utils/events.ts';
|
||||||
import { toFloat } from '../../../../utils/string.ts';
|
import { toFloat } from '../../../../utils/string.ts';
|
||||||
import { getSetting } from '../Settings';
|
import { getSetting } from '../Settings';
|
||||||
import TimeSyncServer from './TimeSyncServer';
|
import TimeSyncServer from './TimeSyncServer';
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
|
|
||||||
import { playbackManager } from '../../components/playback/playbackmanager';
|
import { playbackManager } from '../../components/playback/playbackmanager';
|
||||||
import ServerConnections from '../../components/ServerConnections';
|
import ServerConnections from '../../components/ServerConnections';
|
||||||
|
import Events from '../../utils/events';
|
||||||
import SyncPlay from './core';
|
import SyncPlay from './core';
|
||||||
import SyncPlayNoActivePlayer from './ui/players/NoActivePlayer';
|
import SyncPlayNoActivePlayer from './ui/players/NoActivePlayer';
|
||||||
import SyncPlayHtmlVideoPlayer from './ui/players/HtmlVideoPlayer';
|
import SyncPlayHtmlVideoPlayer from './ui/players/HtmlVideoPlayer';
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import SyncPlay from '../core';
|
import SyncPlay from '../core';
|
||||||
import SyncPlaySettingsEditor from './settings/SettingsEditor';
|
import SyncPlaySettingsEditor from './settings/SettingsEditor';
|
||||||
import loading from '../../../components/loading/loading';
|
import loading from '../../../components/loading/loading';
|
||||||
@ -7,6 +6,8 @@ import actionsheet from '../../../components/actionSheet/actionSheet';
|
|||||||
import globalize from '../../../scripts/globalize';
|
import globalize from '../../../scripts/globalize';
|
||||||
import playbackPermissionManager from './playbackPermissionManager';
|
import playbackPermissionManager from './playbackPermissionManager';
|
||||||
import ServerConnections from '../../../components/ServerConnections';
|
import ServerConnections from '../../../components/ServerConnections';
|
||||||
|
import Events from '../../../utils/events.ts';
|
||||||
|
|
||||||
import './groupSelectionMenu.scss';
|
import './groupSelectionMenu.scss';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
* @module components/syncPlay/ui/players/HtmlVideoPlayer
|
* @module components/syncPlay/ui/players/HtmlVideoPlayer
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import NoActivePlayer from './NoActivePlayer';
|
import NoActivePlayer from './NoActivePlayer';
|
||||||
|
import Events from '../../../../utils/events.ts';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class that manages the HtmlVideoPlayer for SyncPlay.
|
* Class that manages the HtmlVideoPlayer for SyncPlay.
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
* @module components/syncPlay/settings/SettingsEditor
|
* @module components/syncPlay/settings/SettingsEditor
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import SyncPlay from '../../core';
|
import SyncPlay from '../../core';
|
||||||
import { setSetting } from '../../core/Settings';
|
import { setSetting } from '../../core/Settings';
|
||||||
import dialogHelper from '../../../../components/dialogHelper/dialogHelper';
|
import dialogHelper from '../../../../components/dialogHelper/dialogHelper';
|
||||||
@ -11,6 +10,7 @@ import layoutManager from '../../../../components/layoutManager';
|
|||||||
import loading from '../../../../components/loading/loading';
|
import loading from '../../../../components/loading/loading';
|
||||||
import toast from '../../../../components/toast/toast';
|
import toast from '../../../../components/toast/toast';
|
||||||
import globalize from '../../../../scripts/globalize';
|
import globalize from '../../../../scripts/globalize';
|
||||||
|
import Events from '../../../../utils/events.ts';
|
||||||
|
|
||||||
import 'material-design-icons-iconfont';
|
import 'material-design-icons-iconfont';
|
||||||
import '../../../../elements/emby-input/emby-input';
|
import '../../../../elements/emby-input/emby-input';
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import browser from '../../scripts/browser';
|
import browser from '../../scripts/browser';
|
||||||
import { appRouter } from '../../components/appRouter';
|
import { appRouter } from '../../components/appRouter';
|
||||||
import loading from '../../components/loading/loading';
|
import loading from '../../components/loading/loading';
|
||||||
import { setBackdropTransparency, TRANSPARENCY_LEVEL } from '../../components/backdrop/backdrop';
|
import { setBackdropTransparency, TRANSPARENCY_LEVEL } from '../../components/backdrop/backdrop';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
|
|
||||||
/* globals YT */
|
/* globals YT */
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import * as userSettings from './settings/userSettings';
|
import * as userSettings from './settings/userSettings';
|
||||||
import skinManager from './themeManager';
|
import skinManager from './themeManager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import ServerConnections from '../components/ServerConnections';
|
import ServerConnections from '../components/ServerConnections';
|
||||||
import { pageClassOn } from '../utils/dashboard';
|
import { pageClassOn } from '../utils/dashboard';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
// Set the default theme when loading
|
// Set the default theme when loading
|
||||||
skinManager.setTheme(userSettings.theme())
|
skinManager.setTheme(userSettings.theme())
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import { playbackManager } from '../components/playback/playbackmanager';
|
import { playbackManager } from '../components/playback/playbackmanager';
|
||||||
import ServerConnections from '../components/ServerConnections';
|
import ServerConnections from '../components/ServerConnections';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
export function supported() {
|
export function supported() {
|
||||||
return typeof(Storage) !== 'undefined';
|
return typeof(Storage) !== 'undefined';
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import isEmpty from 'lodash-es/isEmpty';
|
import isEmpty from 'lodash-es/isEmpty';
|
||||||
|
|
||||||
import { currentSettings as userSettings } from './settings/userSettings';
|
import { currentSettings as userSettings } from './settings/userSettings';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -4,7 +4,6 @@ import Headroom from 'headroom.js';
|
|||||||
import dom from './dom';
|
import dom from './dom';
|
||||||
import layoutManager from '../components/layoutManager';
|
import layoutManager from '../components/layoutManager';
|
||||||
import inputManager from './inputManager';
|
import inputManager from './inputManager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import viewManager from '../components/viewManager/viewManager';
|
import viewManager from '../components/viewManager/viewManager';
|
||||||
import { appRouter } from '../components/appRouter';
|
import { appRouter } from '../components/appRouter';
|
||||||
import { appHost } from '../components/apphost';
|
import { appHost } from '../components/apphost';
|
||||||
@ -17,6 +16,7 @@ import imageHelper from './imagehelper';
|
|||||||
import { getMenuLinks } from '../scripts/settings/webSettings';
|
import { getMenuLinks } from '../scripts/settings/webSettings';
|
||||||
import Dashboard, { pageClassOn } from '../utils/dashboard';
|
import Dashboard, { pageClassOn } from '../utils/dashboard';
|
||||||
import ServerConnections from '../components/ServerConnections';
|
import ServerConnections from '../components/ServerConnections';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
import { getParameterByName } from '../utils/url.ts';
|
import { getParameterByName } from '../utils/url.ts';
|
||||||
|
|
||||||
import '../elements/emby-button/paper-icon-button-light';
|
import '../elements/emby-button/paper-icon-button-light';
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import inputManager from './inputManager';
|
import inputManager from './inputManager';
|
||||||
import focusManager from '../components/focusManager';
|
import focusManager from '../components/focusManager';
|
||||||
import browser from '../scripts/browser';
|
import browser from './browser';
|
||||||
import layoutManager from '../components/layoutManager';
|
import layoutManager from '../components/layoutManager';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import dom from './dom';
|
||||||
import dom from '../scripts/dom';
|
import Events from '../utils/events.ts';
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
const self = {};
|
const self = {};
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import { playbackManager } from '../components/playback/playbackmanager';
|
import { playbackManager } from '../components/playback/playbackmanager';
|
||||||
import { pluginManager } from '../components/pluginManager';
|
import { pluginManager } from '../components/pluginManager';
|
||||||
import inputManager from './inputManager';
|
import inputManager from './inputManager';
|
||||||
import * as userSettings from './settings/userSettings';
|
import * as userSettings from './settings/userSettings';
|
||||||
import ServerConnections from '../components/ServerConnections';
|
import ServerConnections from '../components/ServerConnections';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
import './screensavermanager.scss';
|
import './screensavermanager.scss';
|
||||||
|
|
||||||
function getMinIdleTime() {
|
function getMinIdleTime() {
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
import { playbackManager } from '../components/playback/playbackmanager';
|
import { playbackManager } from '../components/playback/playbackmanager';
|
||||||
import SyncPlay from '../plugins/syncPlay/core';
|
import SyncPlay from '../plugins/syncPlay/core';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import inputManager from '../scripts/inputManager';
|
import inputManager from '../scripts/inputManager';
|
||||||
import focusManager from '../components/focusManager';
|
import focusManager from '../components/focusManager';
|
||||||
import { appRouter } from '../components/appRouter';
|
import { appRouter } from '../components/appRouter';
|
||||||
import ServerConnections from '../components/ServerConnections';
|
import ServerConnections from '../components/ServerConnections';
|
||||||
import toast from '../components/toast/toast';
|
import toast from '../components/toast/toast';
|
||||||
import alert from '../components/alert';
|
import alert from '../components/alert';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
const serverNotifications = {};
|
const serverNotifications = {};
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import { AppStorage, Events } from 'jellyfin-apiclient';
|
import { AppStorage } from 'jellyfin-apiclient';
|
||||||
|
import Events from '../../utils/events.ts';
|
||||||
import { toBoolean } from '../../utils/string.ts';
|
import { toBoolean } from '../../utils/string.ts';
|
||||||
|
|
||||||
class AppSettings {
|
class AppSettings {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import appSettings from './appSettings';
|
import appSettings from './appSettings';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../../utils/events.ts';
|
||||||
import { toBoolean } from '../../utils/string.ts';
|
import { toBoolean } from '../../utils/string.ts';
|
||||||
|
|
||||||
function onSaveTimeout() {
|
function onSaveTimeout() {
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
|
|
||||||
import { Events } from 'jellyfin-apiclient';
|
|
||||||
import serverNotifications from '../scripts/serverNotifications';
|
import serverNotifications from '../scripts/serverNotifications';
|
||||||
import globalize from '../scripts/globalize';
|
import globalize from '../scripts/globalize';
|
||||||
import '../elements/emby-button/emby-button';
|
|
||||||
import ServerConnections from '../components/ServerConnections';
|
import ServerConnections from '../components/ServerConnections';
|
||||||
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
|
import '../elements/emby-button/emby-button';
|
||||||
|
|
||||||
function taskbutton(options) {
|
function taskbutton(options) {
|
||||||
function pollTasks() {
|
function pollTasks() {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import dom from '../scripts/dom';
|
import dom from '../scripts/dom';
|
||||||
import { Events } from 'jellyfin-apiclient';
|
import Events from '../utils/events.ts';
|
||||||
|
|
||||||
function getTouches(e) {
|
function getTouches(e) {
|
||||||
return e.changedTouches || e.targetTouches || e.touches;
|
return e.changedTouches || e.targetTouches || e.touches;
|
||||||
|
50
src/utils/events.ts
Normal file
50
src/utils/events.ts
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
||||||
|
interface Event {
|
||||||
|
type: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
type callback = (e: Event, ...args: any[]) => void;
|
||||||
|
|
||||||
|
function getCallbacks(obj: any, type: string): callback[] {
|
||||||
|
if (!obj) {
|
||||||
|
throw new Error('obj cannot be null!');
|
||||||
|
}
|
||||||
|
|
||||||
|
obj._callbacks = obj._callbacks || {};
|
||||||
|
|
||||||
|
let callbacks = obj._callbacks[type];
|
||||||
|
|
||||||
|
if (!callbacks) {
|
||||||
|
obj._callbacks[type] = [];
|
||||||
|
callbacks = obj._callbacks[type];
|
||||||
|
}
|
||||||
|
|
||||||
|
return callbacks;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default {
|
||||||
|
on(obj: any, type: string, fn: callback): void {
|
||||||
|
const callbacks = getCallbacks(obj, type);
|
||||||
|
|
||||||
|
callbacks.push(fn);
|
||||||
|
},
|
||||||
|
|
||||||
|
off(obj: any, type: string, fn: callback): void {
|
||||||
|
const callbacks = getCallbacks(obj, type);
|
||||||
|
|
||||||
|
const i = callbacks.indexOf(fn);
|
||||||
|
if (i !== -1) {
|
||||||
|
callbacks.splice(i, 1);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
trigger(obj: any, type: string, args: any[] = []) {
|
||||||
|
const eventArgs: [Event, ...any] = [{ type }, ...args];
|
||||||
|
|
||||||
|
getCallbacks(obj, type).slice(0)
|
||||||
|
.forEach(callback => {
|
||||||
|
callback.apply(obj, eventArgs);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
/* eslint-enable @typescript-eslint/no-explicit-any */
|
Loading…
Reference in New Issue
Block a user