Make import paths ES6-compatible
This commit is contained in:
parent
1a635e2f81
commit
bfb8c7c1f6
245 changed files with 2073 additions and 1995 deletions
|
@ -86,7 +86,7 @@ _define('JavascriptSubtitlesOctopus', function() {
|
||||||
|
|
||||||
// material-icons
|
// material-icons
|
||||||
const materialIcons = require('material-design-icons-iconfont/dist/material-design-icons.css');
|
const materialIcons = require('material-design-icons-iconfont/dist/material-design-icons.css');
|
||||||
_define('material-icons', function() {
|
_define('material-design-icons-iconfont', function() {
|
||||||
return materialIcons;
|
return materialIcons;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -5,12 +6,12 @@
|
||||||
* @module components/accessSchedule/accessSchedule
|
* @module components/accessSchedule/accessSchedule
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'formDialogStyle';
|
import '../formdialog.css';
|
||||||
|
|
||||||
function getDisplayTime(hours) {
|
function getDisplayTime(hours) {
|
||||||
let minutes = 0;
|
let minutes = 0;
|
||||||
|
@ -59,7 +60,7 @@ import 'formDialogStyle';
|
||||||
|
|
||||||
export function show(options) {
|
export function show(options) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
import('text!./accessSchedule.template.html').then(({default: template}) => {
|
import('./accessSchedule.template.html').then(({default: template}) => {
|
||||||
const dlg = dialogHelper.createDialog({
|
const dlg = dialogHelper.createDialog({
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
size: 'small'
|
size: 'small'
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'css!./actionSheet';
|
import './actionSheet.css';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
import 'scrollStyles';
|
import '../../assets/css/scrollstyles.css';
|
||||||
import 'listViewStyle';
|
import '../../components/listview/listview.css';
|
||||||
|
|
||||||
function getOffsets(elems) {
|
function getOffsets(elems) {
|
||||||
const results = [];
|
const results = [];
|
||||||
|
@ -71,7 +71,7 @@ function getPosition(options, dlg) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then(({default: scrollHelper}) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
import dom from 'dom';
|
import dom from '../scripts/dom';
|
||||||
import * as datefns from 'date-fns';
|
import * as datefns from 'date-fns';
|
||||||
import dfnshelper from 'dfnshelper';
|
import dfnshelper from '../scripts/dfnshelper';
|
||||||
import serverNotifications from 'serverNotifications';
|
import serverNotifications from '../scripts/serverNotifications';
|
||||||
import 'emby-button';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import 'listViewStyle';
|
import '../elements/emby-button/emby-button';
|
||||||
|
import './listview/listview.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -127,7 +128,7 @@ import 'listViewStyle';
|
||||||
}
|
}
|
||||||
|
|
||||||
function showItemOverview(item) {
|
function showItemOverview(item) {
|
||||||
import('alert').then(({default: alert}) => {
|
import('./alert').then((alert) => {
|
||||||
alert({
|
alert({
|
||||||
text: item.Overview
|
text: item.Overview
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import browser from 'browser';
|
|
||||||
import dialog from 'dialog';
|
import browser from '../scripts/browser';
|
||||||
import globalize from 'globalize';
|
import dialog from './dialog/dialog';
|
||||||
|
import globalize from '../scripts/globalize';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
* @module components/alphaPicker/alphaPicker
|
* @module components/alphaPicker/alphaPicker
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import focusManager from 'focusManager';
|
import focusManager from '../focusManager';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import 'css!./style.css';
|
import './style.css';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
const selectedButtonClass = 'alphaPickerButton-selected';
|
const selectedButtonClass = 'alphaPickerButton-selected';
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import 'css!./appFooter';
|
import './appFooter.css';
|
||||||
|
|
||||||
function render(options) {
|
function render(options) {
|
||||||
const elem = document.createElement('div');
|
const elem = document.createElement('div');
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
import appHost from 'apphost';
|
import appHost from './apphost';
|
||||||
import appSettings from 'appSettings';
|
import appSettings from '../scripts/settings/appSettings';
|
||||||
import backdrop from 'backdrop';
|
import backdrop from './backdrop/backdrop';
|
||||||
import browser from 'browser';
|
import browser from '../scripts/browser';
|
||||||
import events from 'events';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import events from 'jellyfin-apiclient';
|
||||||
import itemHelper from 'itemHelper';
|
import globalize from '../scripts/globalize';
|
||||||
import loading from 'loading';
|
import itemHelper from './itemHelper';
|
||||||
|
import loading from './loading/loading';
|
||||||
import page from 'page';
|
import page from 'page';
|
||||||
import viewManager from 'viewManager';
|
import viewManager from './viewManager/viewManager';
|
||||||
|
|
||||||
class AppRouter {
|
class AppRouter {
|
||||||
allRoutes = [];
|
allRoutes = [];
|
||||||
|
@ -286,7 +287,7 @@ class AppRouter {
|
||||||
this.showWelcome();
|
this.showWelcome();
|
||||||
break;
|
break;
|
||||||
case 'ServerUpdateNeeded':
|
case 'ServerUpdateNeeded':
|
||||||
import('alert').then(({default: alert}) =>{
|
import('./alert').then((alert) =>{
|
||||||
alert({
|
alert({
|
||||||
text: globalize.translate('ServerUpdateNeeded', 'https://github.com/jellyfin/jellyfin'),
|
text: globalize.translate('ServerUpdateNeeded', 'https://github.com/jellyfin/jellyfin'),
|
||||||
html: globalize.translate('ServerUpdateNeeded', '<a href="https://github.com/jellyfin/jellyfin">https://github.com/jellyfin/jellyfin</a>')
|
html: globalize.translate('ServerUpdateNeeded', '<a href="https://github.com/jellyfin/jellyfin">https://github.com/jellyfin/jellyfin</a>')
|
||||||
|
@ -323,7 +324,7 @@ class AppRouter {
|
||||||
url += '?' + ctx.querystring;
|
url += '?' + ctx.querystring;
|
||||||
}
|
}
|
||||||
|
|
||||||
import('text!' + url).then(({default: html}) => {
|
import('' + url).then(({default: html}) => {
|
||||||
this.loadContent(ctx, route, html, request);
|
this.loadContent(ctx, route, html, request);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -340,7 +341,7 @@ class AppRouter {
|
||||||
};
|
};
|
||||||
|
|
||||||
if (route.controller) {
|
if (route.controller) {
|
||||||
import('controllers/' + route.controller).then(onInitComplete);
|
import('../controllers/' + route.controller).then(onInitComplete);
|
||||||
} else {
|
} else {
|
||||||
onInitComplete();
|
onInitComplete();
|
||||||
}
|
}
|
||||||
|
@ -407,7 +408,7 @@ class AppRouter {
|
||||||
this.forcedLogoutMsg = null;
|
this.forcedLogoutMsg = null;
|
||||||
|
|
||||||
if (msg) {
|
if (msg) {
|
||||||
import('alert').then((alert) => {
|
import('./alert').then((alert) => {
|
||||||
alert(msg);
|
alert(msg);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
import appSettings from 'appSettings';
|
import appSettings from '../scripts/settings/appSettings';
|
||||||
import browser from 'browser';
|
import browser from '../scripts/browser';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import * as htmlMediaHelper from 'htmlMediaHelper';
|
import * as htmlMediaHelper from '../components/htmlMediaHelper';
|
||||||
import * as webSettings from 'webSettings';
|
import * as webSettings from '../scripts/settings/webSettings';
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
|
|
||||||
function getBaseProfileOptions(item) {
|
function getBaseProfileOptions(item) {
|
||||||
const disableHlsVideoAudioCodecs = [];
|
const disableHlsVideoAudioCodecs = [];
|
||||||
|
@ -26,7 +26,7 @@ function getBaseProfileOptions(item) {
|
||||||
|
|
||||||
function getDeviceProfile(item, options = {}) {
|
function getDeviceProfile(item, options = {}) {
|
||||||
return new Promise(function (resolve) {
|
return new Promise(function (resolve) {
|
||||||
import('browserdeviceprofile').then(({default: profileBuilder}) => {
|
import('../scripts/browserDeviceProfile').then((profileBuilder) => {
|
||||||
let profile;
|
let profile;
|
||||||
|
|
||||||
if (window.NativeShell) {
|
if (window.NativeShell) {
|
||||||
|
@ -296,7 +296,7 @@ function askForExit() {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
import('actionsheet').then(({default: actionsheet}) => {
|
import('../components/actionSheet/actionSheet').then((actionsheet) => {
|
||||||
exitPromise = actionsheet.show({
|
exitPromise = actionsheet.show({
|
||||||
title: globalize.translate('MessageConfirmAppExit'),
|
title: globalize.translate('MessageConfirmAppExit'),
|
||||||
items: [
|
items: [
|
||||||
|
|
|
@ -5,8 +5,8 @@
|
||||||
* @module components/autoFocuser
|
* @module components/autoFocuser
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import focusManager from 'focusManager';
|
import focusManager from './focusManager';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from './layoutManager';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Previously selected element.
|
* Previously selected element.
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import playbackManager from 'playbackManager';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import dom from 'dom';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import * as userSettings from 'userSettings';
|
import dom from '../../scripts/dom';
|
||||||
import 'css!./backdrop';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
|
import './backdrop.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
|
|
@ -5,21 +5,22 @@
|
||||||
* @module components/cardBuilder/cardBuilder
|
* @module components/cardBuilder/cardBuilder
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import imageLoader from 'imageLoader';
|
import imageLoader from '../images/imageLoader';
|
||||||
import itemHelper from 'itemHelper';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import focusManager from 'focusManager';
|
import itemHelper from '../itemHelper';
|
||||||
import indicators from 'indicators';
|
import focusManager from '../focusManager';
|
||||||
import globalize from 'globalize';
|
import indicators from '../indicators/indicators';
|
||||||
import layoutManager from 'layoutManager';
|
import globalize from '../../scripts/globalize';
|
||||||
import dom from 'dom';
|
import layoutManager from '../layoutManager';
|
||||||
import browser from 'browser';
|
import dom from '../../scripts/dom';
|
||||||
import playbackManager from 'playbackManager';
|
import browser from '../../scripts/browser';
|
||||||
import itemShortcuts from 'itemShortcuts';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import imageHelper from 'scripts/imagehelper';
|
import itemShortcuts from '../shortcuts';
|
||||||
import 'css!./card';
|
import imageHelper from '../../scripts/imagehelper';
|
||||||
import 'paper-icon-button-light';
|
import './card.css';
|
||||||
import 'programStyles';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
|
import '../guide/programs.css';
|
||||||
|
|
||||||
const enableFocusTransform = !browser.slow && !browser.edge;
|
const enableFocusTransform = !browser.slow && !browser.edge;
|
||||||
|
|
||||||
|
@ -1121,7 +1122,7 @@ import 'programStyles';
|
||||||
if (!refreshIndicatorLoaded) {
|
if (!refreshIndicatorLoaded) {
|
||||||
refreshIndicatorLoaded = true;
|
refreshIndicatorLoaded = true;
|
||||||
/* eslint-disable-next-line @babel/no-unused-expressions */
|
/* eslint-disable-next-line @babel/no-unused-expressions */
|
||||||
import('emby-itemrefreshindicator');
|
import('../../elements/emby-itemrefreshindicator/emby-itemrefreshindicator');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1453,7 +1454,7 @@ import 'programStyles';
|
||||||
|
|
||||||
if (itemHelper.canMarkPlayed(item)) {
|
if (itemHelper.canMarkPlayed(item)) {
|
||||||
/* eslint-disable-next-line @babel/no-unused-expressions */
|
/* eslint-disable-next-line @babel/no-unused-expressions */
|
||||||
import('emby-playstatebutton');
|
import('../../elements/emby-playstatebutton/emby-playstatebutton');
|
||||||
html += '<button is="emby-playstatebutton" type="button" data-action="none" class="' + btnCssClass + '" data-id="' + item.Id + '" data-serverid="' + item.ServerId + '" data-itemtype="' + item.Type + '" data-played="' + (userData.Played) + '"><span class="material-icons cardOverlayButtonIcon cardOverlayButtonIcon-hover check"></span></button>';
|
html += '<button is="emby-playstatebutton" type="button" data-action="none" class="' + btnCssClass + '" data-id="' + item.Id + '" data-serverid="' + item.ServerId + '" data-itemtype="' + item.Type + '" data-played="' + (userData.Played) + '"><span class="material-icons cardOverlayButtonIcon cardOverlayButtonIcon-hover check"></span></button>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1461,7 +1462,7 @@ import 'programStyles';
|
||||||
const likes = userData.Likes == null ? '' : userData.Likes;
|
const likes = userData.Likes == null ? '' : userData.Likes;
|
||||||
|
|
||||||
/* eslint-disable-next-line @babel/no-unused-expressions */
|
/* eslint-disable-next-line @babel/no-unused-expressions */
|
||||||
import('emby-ratingbutton');
|
import('../../elements/emby-ratingbutton/emby-ratingbutton');
|
||||||
html += '<button is="emby-ratingbutton" type="button" data-action="none" class="' + btnCssClass + '" data-id="' + item.Id + '" data-serverid="' + item.ServerId + '" data-itemtype="' + item.Type + '" data-likes="' + likes + '" data-isfavorite="' + (userData.IsFavorite) + '"><span class="material-icons cardOverlayButtonIcon cardOverlayButtonIcon-hover favorite"></span></button>';
|
html += '<button is="emby-ratingbutton" type="button" data-action="none" class="' + btnCssClass + '" data-id="' + item.Id + '" data-serverid="' + item.ServerId + '" data-itemtype="' + item.Type + '" data-likes="' + likes + '" data-isfavorite="' + (userData.IsFavorite) + '"><span class="material-icons cardOverlayButtonIcon cardOverlayButtonIcon-hover favorite"></span></button>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,10 +5,11 @@
|
||||||
* @module components/cardBuilder/chaptercardbuilder
|
* @module components/cardBuilder/chaptercardbuilder
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import imageLoader from 'imageLoader';
|
import imageLoader from '../images/imageLoader';
|
||||||
import layoutManager from 'layoutManager';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import browser from 'browser';
|
import layoutManager from '../layoutManager';
|
||||||
|
import browser from '../../scripts/browser';
|
||||||
|
|
||||||
const enableFocusTransform = !browser.slow && !browser.edge;
|
const enableFocusTransform = !browser.slow && !browser.edge;
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
* @module components/cardBuilder/peoplecardbuilder
|
* @module components/cardBuilder/peoplecardbuilder
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import cardBuilder from 'cardBuilder';
|
import cardBuilder from '../cardbuilder/cardBuilder';
|
||||||
|
|
||||||
export function buildPeopleCards(items, options) {
|
export function buildPeopleCards(items, options) {
|
||||||
options = Object.assign(options || {}, {
|
options = Object.assign(options || {}, {
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import globalize from 'globalize';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import actionsheet from 'actionsheet';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-input';
|
import actionsheet from '../actionSheet/actionSheet';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'listViewStyle';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'material-icons';
|
import '../listview/listview.css';
|
||||||
import 'formDialogStyle';
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../formdialog.css';
|
||||||
|
|
||||||
export default class channelMapper {
|
export default class channelMapper {
|
||||||
constructor(options) {
|
constructor(options) {
|
||||||
|
|
|
@ -1,17 +1,18 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import appRouter from 'appRouter';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import appRouter from '../appRouter';
|
||||||
import 'emby-checkbox';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-input';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-select';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'material-icons';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-button';
|
import 'material-design-icons-iconfont';
|
||||||
import 'flexStyles';
|
import '../formdialog.css';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -80,7 +81,7 @@ import 'flexStyles';
|
||||||
dlg.submitted = true;
|
dlg.submitted = true;
|
||||||
dialogHelper.close(dlg);
|
dialogHelper.close(dlg);
|
||||||
|
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('MessageItemsAdded'));
|
toast(globalize.translate('MessageItemsAdded'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -199,7 +200,7 @@ import 'flexStyles';
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then((scrollHelper) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import dialog from 'dialog';
|
import dialog from '../dialog/dialog';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
export default (() => {
|
export default (() => {
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import scrollHelper from 'scrollHelper';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'formDialogStyle';
|
import '../formdialog.css';
|
||||||
import 'flexStyles';
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -80,7 +80,8 @@ import 'flexStyles';
|
||||||
buttonClass += ' formDialogFooterItem-vertical formDialogFooterItem-nomarginbottom';
|
buttonClass += ' formDialogFooterItem-vertical formDialogFooterItem-nomarginbottom';
|
||||||
}
|
}
|
||||||
|
|
||||||
html += `<button is="emby-button" type="button" class="${buttonClass}" data-id="${item.id}"${autoFocus}>${item.name}</button>`;
|
html += `<button is="
|
||||||
|
" type="button" class="${buttonClass}" data-id="${item.id}"${autoFocus}>${item.name}</button>`;
|
||||||
|
|
||||||
if (item.description) {
|
if (item.description) {
|
||||||
html += `<div class="formDialogFooterItem formDialogFooterItem-autosize fieldDescription" style="margin-top:.25em!important;margin-bottom:1.25em!important;">${item.description}</div>`;
|
html += `<div class="formDialogFooterItem formDialogFooterItem-autosize fieldDescription" style="margin-top:.25em!important;margin-bottom:1.25em!important;">${item.description}</div>`;
|
||||||
|
@ -128,7 +129,7 @@ import 'flexStyles';
|
||||||
options = text;
|
options = text;
|
||||||
}
|
}
|
||||||
|
|
||||||
const { default: template } = await import('text!./dialog.template.html');
|
const { default: template } = await import('./dialog.template.html');
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
showDialog(options, template).then(resolve, reject);
|
showDialog(options, template).then(resolve, reject);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
import appRouter from 'appRouter';
|
import appRouter from '../appRouter';
|
||||||
import focusManager from 'focusManager';
|
import focusManager from '../focusManager';
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import inputManager from 'inputManager';
|
import inputManager from '../../scripts/inputManager';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import 'css!./dialoghelper.css';
|
import './dialoghelper.css';
|
||||||
import 'scrollStyles';
|
import '../../assets/css/scrollstyles.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -354,7 +354,7 @@ import 'scrollStyles';
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then((scrollHelper) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'listViewStyle';
|
import '../listview/listview.css';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'css!./directorybrowser';
|
import './directorybrowser.css';
|
||||||
import 'formDialogStyle';
|
import '../formdialog.css';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -157,7 +157,7 @@ import 'emby-button';
|
||||||
}
|
}
|
||||||
|
|
||||||
function alertTextWithOptions(options) {
|
function alertTextWithOptions(options) {
|
||||||
import('alert').then(({default: alert}) => {
|
import('../alert').then((alert) => {
|
||||||
alert(options);
|
alert(options);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,16 +1,17 @@
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import pluginManager from 'pluginManager';
|
import pluginManager from '../pluginManager';
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import focusManager from 'focusManager';
|
import focusManager from '../focusManager';
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import skinManager from 'skinManager';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import events from 'events';
|
import skinManager from '../../scripts/themeManager';
|
||||||
import 'emby-select';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-button';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
|
import '../../elements/emby-button/emby-button';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -168,7 +169,7 @@ import 'emby-button';
|
||||||
saveUser(context, user, userSettings, apiClient).then(() => {
|
saveUser(context, user, userSettings, apiClient).then(() => {
|
||||||
loading.hide();
|
loading.hide();
|
||||||
if (enableSaveConfirmation) {
|
if (enableSaveConfirmation) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('SettingsSaved'));
|
toast(globalize.translate('SettingsSaved'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -198,7 +199,7 @@ import 'emby-button';
|
||||||
}
|
}
|
||||||
|
|
||||||
async function embed(options, self) {
|
async function embed(options, self) {
|
||||||
const { default: template } = await import('text!./displaySettings.template.html');
|
const { default: template } = await import('./displaySettings.template.html');
|
||||||
options.element.innerHTML = globalize.translateHtml(template, 'core');
|
options.element.innerHTML = globalize.translateHtml(template, 'core');
|
||||||
options.element.querySelector('form').addEventListener('submit', onSubmit.bind(self));
|
options.element.querySelector('form').addEventListener('submit', onSubmit.bind(self));
|
||||||
if (options.enableSaveButton) {
|
if (options.enableSaveButton) {
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
import loading from 'loading';
|
import loading from './loading/loading';
|
||||||
import cardBuilder from 'cardBuilder';
|
import cardBuilder from './cardbuilder/cardBuilder';
|
||||||
import dom from 'dom';
|
import dom from '../scripts/dom';
|
||||||
import appHost from 'apphost';
|
import appHost from './apphost';
|
||||||
import imageLoader from 'imageLoader';
|
import imageLoader from './images/imageLoader';
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from './layoutManager';
|
||||||
import 'scrollStyles';
|
import '../assets/css/scrollstyles.css';
|
||||||
import 'emby-itemscontainer';
|
import '../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import events from 'events';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import 'emby-checkbox';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-collapse';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'css!./style.css';
|
import '../../elements/emby-collapse/emby-collapse';
|
||||||
|
import './style.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
function renderOptions(context, selector, cssClass, items, isCheckedFn) {
|
function renderOptions(context, selector, cssClass, items, isCheckedFn) {
|
||||||
|
@ -401,7 +402,7 @@ import 'css!./style.css';
|
||||||
}
|
}
|
||||||
|
|
||||||
show() {
|
show() {
|
||||||
return import('text!./filterdialog.template.html').then(({default: template}) => {
|
return import('./filterdialog.template.html').then(({default: template}) => {
|
||||||
return new Promise((resolve) => {
|
return new Promise((resolve) => {
|
||||||
const dlg = dialogHelper.createDialog({
|
const dlg = dialogHelper.createDialog({
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import focusManager from 'focusManager';
|
import focusManager from '../focusManager';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import inputManager from 'inputManager';
|
import inputManager from '../../scripts/inputManager';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import * as userSettings from 'userSettings';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-checkbox';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import 'emby-input';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'emby-select';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'material-icons';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-button';
|
import 'material-design-icons-iconfont';
|
||||||
import 'flexStyles';
|
import '../formdialog.css';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
function onSubmit(e) {
|
function onSubmit(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
@ -80,7 +81,7 @@ function moveCheckboxFocus(elem, offset) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then(({ default: scrollHelper }) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
@ -209,7 +210,7 @@ function loadDynamicFilters(context, options) {
|
||||||
class FilterMenu {
|
class FilterMenu {
|
||||||
show(options) {
|
show(options) {
|
||||||
return new Promise( (resolve, reject) => {
|
return new Promise( (resolve, reject) => {
|
||||||
import('text!./filtermenu.template.html').then(({ default: template }) => {
|
import('./filtermenu.template.html').then(({ default: template }) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
import dom from 'dom';
|
import dom from '../scripts/dom';
|
||||||
import scrollManager from 'scrollManager';
|
import scrollManager from './scrollManager';
|
||||||
|
|
||||||
const scopes = [];
|
const scopes = [];
|
||||||
function pushScope(elem) {
|
function pushScope(elem) {
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
import dom from 'dom';
|
import dom from '../scripts/dom';
|
||||||
import appRouter from 'appRouter';
|
import appRouter from './appRouter';
|
||||||
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
|
|
||||||
function onGroupedCardClick(e, card) {
|
function onGroupedCardClick(e, card) {
|
||||||
const itemId = card.getAttribute('data-id');
|
const itemId = card.getAttribute('data-id');
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import * as userSettings from 'userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import scrollHelper from 'scrollHelper';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-radio';
|
import '../../elements/emby-radio/emby-radio';
|
||||||
import 'css!./../formdialog';
|
import '../formdialog.css';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
function saveCategories(context, options) {
|
function saveCategories(context, options) {
|
||||||
const categories = [];
|
const categories = [];
|
||||||
|
@ -88,7 +88,7 @@ function showEditor(options) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
let settingsChanged = false;
|
let settingsChanged = false;
|
||||||
|
|
||||||
import('text!./guide-settings.template.html').then(({ default: template }) => {
|
import('./guide-settings.template.html').then(({ default: template }) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
|
|
@ -1,32 +1,33 @@
|
||||||
import inputManager from 'inputManager';
|
import inputManager from '../../scripts/inputManager';
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import scrollHelper from 'scrollHelper';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import serverNotifications from 'serverNotifications';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import loading from 'loading';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import datetime from 'datetime';
|
import loading from '../loading/loading';
|
||||||
import focusManager from 'focusManager';
|
import datetime from '../../scripts/datetime';
|
||||||
import playbackManager from 'playbackManager';
|
import focusManager from '../focusManager';
|
||||||
import * as userSettings from 'userSettings';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import imageLoader from 'imageLoader';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import events from 'events';
|
import imageLoader from '../images/imageLoader';
|
||||||
import layoutManager from 'layoutManager';
|
import events from 'jellyfin-apiclient';
|
||||||
import itemShortcuts from 'itemShortcuts';
|
import layoutManager from '../layoutManager';
|
||||||
import dom from 'dom';
|
import itemShortcuts from '../shortcuts';
|
||||||
import 'css!./guide.css';
|
import dom from '../../scripts/dom';
|
||||||
import 'programStyles';
|
import './guide.css';
|
||||||
import 'material-icons';
|
import './programs.css';
|
||||||
import 'scrollStyles';
|
import 'material-design-icons-iconfont';
|
||||||
import 'emby-programcell';
|
import '../../assets/css/scrollstyles.css';
|
||||||
import 'emby-button';
|
import '../../elements/emby-programcell/emby-programcell';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'emby-tabs';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-scroller';
|
import '../../elements/emby-tabs/emby-tabs';
|
||||||
import 'flexStyles';
|
import '../../elements/emby-scroller/emby-scroller';
|
||||||
import 'webcomponents';
|
import '../../assets/css/flexstyles.css';
|
||||||
|
import 'webcomponents.js';
|
||||||
|
|
||||||
function showViewSettings(instance) {
|
function showViewSettings(instance) {
|
||||||
import('guide-settings-dialog').then(({default: guideSettingsDialog}) => {
|
import('./guide-settings').then((guideSettingsDialog) => {
|
||||||
guideSettingsDialog.show(instance.categoryOptions).then(function () {
|
guideSettingsDialog.show(instance.categoryOptions).then(function () {
|
||||||
instance.refresh();
|
instance.refresh();
|
||||||
});
|
});
|
||||||
|
@ -1091,7 +1092,7 @@ function Guide(options) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
import('text!./tvguide.template.html').then(({default: template}) => {
|
import('./tvguide.template.html').then(({default: template}) => {
|
||||||
const context = options.element;
|
const context = options.element;
|
||||||
|
|
||||||
context.classList.add('tvguide');
|
context.classList.add('tvguide');
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
import layoutManager from 'layoutManager';
|
|
||||||
import focusManager from 'focusManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import focusManager from '../focusManager';
|
||||||
import loading from 'loading';
|
import globalize from '../../scripts/globalize';
|
||||||
import homeSections from 'homeSections';
|
import loading from '../loading/loading';
|
||||||
import dom from 'dom';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import events from 'events';
|
import homeSections from '../homesections/homesections';
|
||||||
import 'listViewStyle';
|
import dom from '../../scripts/dom';
|
||||||
import 'emby-select';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-checkbox';
|
import '../listview/listview.css';
|
||||||
|
import '../../elements/emby-select/emby-select';
|
||||||
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -369,7 +371,7 @@ import 'emby-checkbox';
|
||||||
saveUser(context, user, userSettings, apiClient).then(() => {
|
saveUser(context, user, userSettings, apiClient).then(() => {
|
||||||
loading.hide();
|
loading.hide();
|
||||||
if (enableSaveConfirmation) {
|
if (enableSaveConfirmation) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('SettingsSaved'));
|
toast(globalize.translate('SettingsSaved'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -417,7 +419,7 @@ import 'emby-checkbox';
|
||||||
}
|
}
|
||||||
|
|
||||||
function embed(options, self) {
|
function embed(options, self) {
|
||||||
return import('text!./homeScreenSettings.template.html').then(({default: template}) => {
|
return import('./homeScreenSettings.template.html').then(({default: template}) => {
|
||||||
for (let i = 1; i <= numConfigurableSections; i++) {
|
for (let i = 1; i <= numConfigurableSections; i++) {
|
||||||
template = template.replace(`{section${i}label}`, globalize.translate('LabelHomeScreenSectionValue', i));
|
template = template.replace(`{section${i}label}`, globalize.translate('LabelHomeScreenSectionValue', i));
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
import cardBuilder from 'cardBuilder';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import dom from 'dom';
|
import cardBuilder from '../cardbuilder/cardBuilder';
|
||||||
import layoutManager from 'layoutManager';
|
import dom from '../../scripts/dom';
|
||||||
import imageLoader from 'imageLoader';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import imageLoader from '../images/imageLoader';
|
||||||
import appRouter from 'appRouter';
|
import globalize from '../../scripts/globalize';
|
||||||
import imageHelper from 'scripts/imagehelper';
|
import appRouter from '../appRouter';
|
||||||
import 'paper-icon-button-light';
|
import imageHelper from '../../scripts/imagehelper';
|
||||||
import 'emby-itemscontainer';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-scroller';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
import 'emby-button';
|
import '../../elements/emby-scroller/emby-scroller';
|
||||||
import 'css!./homesections';
|
import '../../elements/emby-button/emby-button';
|
||||||
|
import './homesections';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
import appSettings from 'appSettings' ;
|
import appSettings from '../scripts/settings/appSettings' ;
|
||||||
import browser from 'browser';
|
import browser from '../scripts/browser';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
|
|
||||||
export function getSavedVolume() {
|
export function getSavedVolume() {
|
||||||
return appSettings.get('volume') || 1;
|
return appSettings.get('volume') || 1;
|
||||||
|
|
|
@ -1,17 +1,18 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import imageLoader from 'imageLoader';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import browser from 'browser';
|
import imageLoader from '../images/imageLoader';
|
||||||
import layoutManager from 'layoutManager';
|
import browser from '../../scripts/browser';
|
||||||
import scrollHelper from 'scrollHelper';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import 'emby-checkbox';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'formDialogStyle';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'cardStyle';
|
import '../formdialog.css';
|
||||||
|
import '../cardbuilder/card.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -315,7 +316,7 @@ import 'cardStyle';
|
||||||
function showEditor(itemId, serverId, itemType) {
|
function showEditor(itemId, serverId, itemType) {
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
import('text!./imageDownloader.template.html').then(({default: template}) => {
|
import('./imageDownloader.template.html').then(({default: template}) => {
|
||||||
const apiClient = window.connectionManager.getApiClient(serverId);
|
const apiClient = window.connectionManager.getApiClient(serverId);
|
||||||
|
|
||||||
currentItemId = itemId;
|
currentItemId = itemId;
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
* @module components/imageOptionsEditor/imageOptionsEditor
|
* @module components/imageOptionsEditor/imageOptionsEditor
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
|
|
||||||
function getDefaultImageConfig(itemType, type) {
|
function getDefaultImageConfig(itemType, type) {
|
||||||
return {
|
return {
|
||||||
|
|
|
@ -5,16 +5,17 @@
|
||||||
* @module components/imageUploader/imageUploader
|
* @module components/imageUploader/imageUploader
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import dom from 'dom';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import loading from 'loading';
|
import dom from '../../scripts/dom';
|
||||||
import scrollHelper from 'scrollHelper';
|
import loading from '../loading/loading';
|
||||||
import layoutManager from 'layoutManager';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import globalize from 'globalize';
|
import layoutManager from '../layoutManager';
|
||||||
import 'emby-button';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-select';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'formDialogStyle';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'css!./style';
|
import '../formdialog.css';
|
||||||
|
import './style.css';
|
||||||
|
|
||||||
let currentItemId;
|
let currentItemId;
|
||||||
let currentServerId;
|
let currentServerId;
|
||||||
|
@ -26,14 +27,14 @@ import 'css!./style';
|
||||||
|
|
||||||
switch (evt.target.error.code) {
|
switch (evt.target.error.code) {
|
||||||
case evt.target.error.NOT_FOUND_ERR:
|
case evt.target.error.NOT_FOUND_ERR:
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('MessageFileReadError'));
|
toast(globalize.translate('MessageFileReadError'));
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case evt.target.error.ABORT_ERR:
|
case evt.target.error.ABORT_ERR:
|
||||||
break; // noop
|
break; // noop
|
||||||
default:
|
default:
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('MessageFileReadError'));
|
toast(globalize.translate('MessageFileReadError'));
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
@ -87,7 +88,7 @@ import 'css!./style';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!file.type.startsWith('image/')) {
|
if (!file.type.startsWith('image/')) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('MessageImageFileTypeAllowed'));
|
toast(globalize.translate('MessageImageFileTypeAllowed'));
|
||||||
});
|
});
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
@ -100,7 +101,7 @@ import 'css!./style';
|
||||||
|
|
||||||
const imageType = dlg.querySelector('#selectImageType').value;
|
const imageType = dlg.querySelector('#selectImageType').value;
|
||||||
if (imageType === 'None') {
|
if (imageType === 'None') {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('MessageImageTypeNotSelected'));
|
toast(globalize.translate('MessageImageTypeNotSelected'));
|
||||||
});
|
});
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
@ -134,7 +135,7 @@ import 'css!./style';
|
||||||
function showEditor(options, resolve) {
|
function showEditor(options, resolve) {
|
||||||
options = options || {};
|
options = options || {};
|
||||||
|
|
||||||
return import('text!./imageUploader.template.html').then(({default: template}) => {
|
return import('./imageUploader.template.html').then(({default: template}) => {
|
||||||
currentItemId = options.itemId;
|
currentItemId = options.itemId;
|
||||||
currentServerId = options.serverId;
|
currentServerId = options.serverId;
|
||||||
|
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import loading from 'loading';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import dom from 'dom';
|
import loading from '../loading/loading';
|
||||||
import layoutManager from 'layoutManager';
|
import dom from '../../scripts/dom';
|
||||||
import focusManager from 'focusManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import focusManager from '../focusManager';
|
||||||
import scrollHelper from 'scrollHelper';
|
import globalize from '../../scripts/globalize';
|
||||||
import imageLoader from 'imageLoader';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import browser from 'browser';
|
import imageLoader from '../images/imageLoader';
|
||||||
import appHost from 'apphost';
|
import browser from '../../scripts/browser';
|
||||||
import 'cardStyle';
|
import appHost from '../apphost';
|
||||||
import 'formDialogStyle';
|
import '../cardbuilder/card.css';
|
||||||
import 'emby-button';
|
import '../formdialog.css';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'css!./imageeditor';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
|
import './imageeditor.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -199,7 +200,7 @@ import 'css!./imageeditor';
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
import('confirm').then(({default: confirm}) => {
|
import('../confirm/confirm').then(({default: confirm}) => {
|
||||||
confirm({
|
confirm({
|
||||||
|
|
||||||
text: globalize.translate('ConfirmDeleteImage'),
|
text: globalize.translate('ConfirmDeleteImage'),
|
||||||
|
@ -215,7 +216,7 @@ import 'css!./imageeditor';
|
||||||
hasChanges = true;
|
hasChanges = true;
|
||||||
reload(context, null, focusContext);
|
reload(context, null, focusContext);
|
||||||
}, function () {
|
}, function () {
|
||||||
import('alert').then(({default: alert}) => {
|
import('../alert').then((alert) => {
|
||||||
alert(globalize.translate('ErrorDefault'));
|
alert(globalize.translate('ErrorDefault'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -281,7 +282,7 @@ import 'css!./imageeditor';
|
||||||
}
|
}
|
||||||
|
|
||||||
function showImageDownloader(page, imageType) {
|
function showImageDownloader(page, imageType) {
|
||||||
import('imageDownloader').then(({default: ImageDownloader}) => {
|
import('../imageDownloader/imageDownloader').then((ImageDownloader) => {
|
||||||
ImageDownloader.show(currentItem.Id, currentItem.ServerId, currentItem.Type, imageType).then(function () {
|
ImageDownloader.show(currentItem.Id, currentItem.ServerId, currentItem.Type, imageType).then(function () {
|
||||||
hasChanges = true;
|
hasChanges = true;
|
||||||
reload(page);
|
reload(page);
|
||||||
|
@ -299,7 +300,7 @@ import 'css!./imageeditor';
|
||||||
const providerCount = parseInt(imageCard.getAttribute('data-providers'));
|
const providerCount = parseInt(imageCard.getAttribute('data-providers'));
|
||||||
const numImages = parseInt(imageCard.getAttribute('data-numimages'));
|
const numImages = parseInt(imageCard.getAttribute('data-numimages'));
|
||||||
|
|
||||||
import('actionsheet').then(({default: actionSheet}) => {
|
import('../actionSheet/actionSheet').then(({default: actionSheet}) => {
|
||||||
const commands = [];
|
const commands = [];
|
||||||
|
|
||||||
commands.push({
|
commands.push({
|
||||||
|
@ -370,7 +371,7 @@ import 'css!./imageeditor';
|
||||||
addListeners(context, 'btnOpenUploadMenu', 'click', function () {
|
addListeners(context, 'btnOpenUploadMenu', 'click', function () {
|
||||||
const imageType = this.getAttribute('data-imagetype');
|
const imageType = this.getAttribute('data-imagetype');
|
||||||
|
|
||||||
import('imageUploader').then(({default: imageUploader}) => {
|
import('../imageUploader/imageUploader').then(({default: imageUploader}) => {
|
||||||
imageUploader.show({
|
imageUploader.show({
|
||||||
|
|
||||||
theme: options.theme,
|
theme: options.theme,
|
||||||
|
@ -422,7 +423,7 @@ import 'css!./imageeditor';
|
||||||
|
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
import('text!./imageeditor.template.html').then(({default: template}) => {
|
import('./imageeditor.template.html').then(({default: template}) => {
|
||||||
const apiClient = window.connectionManager.getApiClient(serverId);
|
const apiClient = window.connectionManager.getApiClient(serverId);
|
||||||
apiClient.getItem(apiClient.getCurrentUserId(), itemId).then(function (item) {
|
apiClient.getItem(apiClient.getCurrentUserId(), itemId).then(function (item) {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import * as lazyLoader from 'lazyLoader';
|
import * as lazyLoader from '../lazyLoader/lazyLoaderIntersectionObserver';
|
||||||
import * as userSettings from 'userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import * as blurhash from 'blurhash';
|
import * as blurhash from 'blurhash';
|
||||||
import 'css!./style';
|
import './style.css';
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
export function lazyImage(elem, source = elem.getAttribute('data-src')) {
|
export function lazyImage(elem, source = elem.getAttribute('data-src')) {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import itemHelper from 'itemHelper';
|
import itemHelper from '../itemHelper';
|
||||||
import 'emby-progressbar';
|
import '../../elements/emby-progressbar/emby-progressbar';
|
||||||
import 'css!./indicators.css';
|
import './indicators.css';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
export function enableProgressIndicator(item) {
|
export function enableProgressIndicator(item) {
|
||||||
if (item.MediaType === 'Video' && item.Type !== 'TvChannel') {
|
if (item.MediaType === 'Video' && item.Type !== 'TvChannel') {
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import appHost from 'apphost';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import browser from '../scripts/browser';
|
||||||
import itemHelper from 'itemHelper';
|
import globalize from '../scripts/globalize';
|
||||||
import appRouter from 'appRouter';
|
import actionsheet from './actionSheet/actionSheet';
|
||||||
import playbackManager from 'playbackManager';
|
import appHost from './apphost';
|
||||||
import browser from 'browser';
|
import appRouter from './appRouter';
|
||||||
import actionsheet from 'actionsheet';
|
import itemHelper from './itemHelper';
|
||||||
|
import playbackManager from './playback/playbackmanager';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
export function getCommands(options) {
|
export function getCommands(options) {
|
||||||
|
@ -334,7 +335,7 @@ import actionsheet from 'actionsheet';
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
switch (id) {
|
switch (id) {
|
||||||
case 'addtocollection':
|
case 'addtocollection':
|
||||||
import('collectionEditor').then(({default: collectionEditor}) => {
|
import('./collectionEditor/collectionEditor').then((collectionEditor) => {
|
||||||
new collectionEditor({
|
new collectionEditor({
|
||||||
items: [itemId],
|
items: [itemId],
|
||||||
serverId: serverId
|
serverId: serverId
|
||||||
|
@ -342,7 +343,7 @@ import actionsheet from 'actionsheet';
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case 'addtoplaylist':
|
case 'addtoplaylist':
|
||||||
import('playlistEditor').then(({default: playlistEditor}) => {
|
import('./playlisteditor/playlisteditor').then((playlistEditor) => {
|
||||||
new playlistEditor({
|
new playlistEditor({
|
||||||
items: [itemId],
|
items: [itemId],
|
||||||
serverId: serverId
|
serverId: serverId
|
||||||
|
@ -350,7 +351,7 @@ import actionsheet from 'actionsheet';
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case 'download':
|
case 'download':
|
||||||
import('fileDownloader').then((fileDownloader) => {
|
import('../scripts/fileDownloader').then((fileDownloader) => {
|
||||||
const downloadHref = apiClient.getItemDownloadUrl(itemId);
|
const downloadHref = apiClient.getItemDownloadUrl(itemId);
|
||||||
fileDownloader.download([{
|
fileDownloader.download([{
|
||||||
url: downloadHref,
|
url: downloadHref,
|
||||||
|
@ -372,7 +373,7 @@ import actionsheet from 'actionsheet';
|
||||||
textArea.select();
|
textArea.select();
|
||||||
|
|
||||||
if (document.execCommand('copy')) {
|
if (document.execCommand('copy')) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('./toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('CopyStreamURLSuccess'));
|
toast(globalize.translate('CopyStreamURLSuccess'));
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
@ -387,7 +388,7 @@ import actionsheet from 'actionsheet';
|
||||||
} else {
|
} else {
|
||||||
/* eslint-disable-next-line compat/compat */
|
/* eslint-disable-next-line compat/compat */
|
||||||
navigator.clipboard.writeText(downloadHref).then(function () {
|
navigator.clipboard.writeText(downloadHref).then(function () {
|
||||||
import('toast').then(({default: toast}) => {
|
import('./toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('CopyStreamURLSuccess'));
|
toast(globalize.translate('CopyStreamURLSuccess'));
|
||||||
});
|
});
|
||||||
}).catch(function () {
|
}).catch(function () {
|
||||||
|
@ -398,7 +399,7 @@ import actionsheet from 'actionsheet';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 'editsubtitles':
|
case 'editsubtitles':
|
||||||
import('subtitleEditor').then(({default: subtitleEditor}) => {
|
import('./subtitleeditor/subtitleeditor').then((subtitleEditor) => {
|
||||||
subtitleEditor.show(itemId, serverId).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
subtitleEditor.show(itemId, serverId).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
@ -406,7 +407,7 @@ import actionsheet from 'actionsheet';
|
||||||
editItem(apiClient, item).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
editItem(apiClient, item).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
||||||
break;
|
break;
|
||||||
case 'editimages':
|
case 'editimages':
|
||||||
import('imageEditor').then(({default: imageEditor}) => {
|
import('./imageeditor/imageeditor').then((imageEditor) => {
|
||||||
imageEditor.show({
|
imageEditor.show({
|
||||||
itemId: itemId,
|
itemId: itemId,
|
||||||
serverId: serverId
|
serverId: serverId
|
||||||
|
@ -414,12 +415,12 @@ import actionsheet from 'actionsheet';
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case 'identify':
|
case 'identify':
|
||||||
import('itemIdentifier').then(({default: itemIdentifier}) => {
|
import('./itemidentifier/itemidentifier').then((itemIdentifier) => {
|
||||||
itemIdentifier.show(itemId, serverId).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
itemIdentifier.show(itemId, serverId).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case 'moremediainfo':
|
case 'moremediainfo':
|
||||||
import('itemMediaInfo').then(({default: itemMediaInfo}) => {
|
import('./itemMediaInfo/itemMediaInfo').then((itemMediaInfo) => {
|
||||||
itemMediaInfo.show(itemId, serverId).then(getResolveFunction(resolve, id), getResolveFunction(resolve, id));
|
itemMediaInfo.show(itemId, serverId).then(getResolveFunction(resolve, id), getResolveFunction(resolve, id));
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
@ -454,7 +455,7 @@ import actionsheet from 'actionsheet';
|
||||||
playbackManager.clearQueue();
|
playbackManager.clearQueue();
|
||||||
break;
|
break;
|
||||||
case 'record':
|
case 'record':
|
||||||
import('recordingCreator').then(({default: recordingCreator}) => {
|
import('./recordingcreator/recordingcreator').then((recordingCreator) => {
|
||||||
recordingCreator.show(itemId, serverId).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
recordingCreator.show(itemId, serverId).then(getResolveFunction(resolve, id, true), getResolveFunction(resolve, id));
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
@ -525,7 +526,7 @@ import actionsheet from 'actionsheet';
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteTimer(apiClient, item, resolve, command) {
|
function deleteTimer(apiClient, item, resolve, command) {
|
||||||
import('recordingHelper').then(({default: recordingHelper}) => {
|
import('./recordingcreator/recordinghelper').then((recordingHelper) => {
|
||||||
const timerId = item.TimerId || item.Id;
|
const timerId = item.TimerId || item.Id;
|
||||||
recordingHelper.cancelTimerWithConfirmation(timerId, item.ServerId).then(function () {
|
recordingHelper.cancelTimerWithConfirmation(timerId, item.ServerId).then(function () {
|
||||||
getResolveFunction(resolve, command, true)();
|
getResolveFunction(resolve, command, true)();
|
||||||
|
@ -534,7 +535,7 @@ import actionsheet from 'actionsheet';
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteSeriesTimer(apiClient, item, resolve, command) {
|
function deleteSeriesTimer(apiClient, item, resolve, command) {
|
||||||
import('recordingHelper').then(({default: recordingHelper}) => {
|
import('./recordingcreator/recordinghelper').then((recordingHelper) => {
|
||||||
recordingHelper.cancelSeriesTimerWithConfirmation(item.Id, item.ServerId).then(function () {
|
recordingHelper.cancelSeriesTimerWithConfirmation(item.Id, item.ServerId).then(function () {
|
||||||
getResolveFunction(resolve, command, true)();
|
getResolveFunction(resolve, command, true)();
|
||||||
});
|
});
|
||||||
|
@ -568,15 +569,15 @@ import actionsheet from 'actionsheet';
|
||||||
const serverId = apiClient.serverInfo().Id;
|
const serverId = apiClient.serverInfo().Id;
|
||||||
|
|
||||||
if (item.Type === 'Timer') {
|
if (item.Type === 'Timer') {
|
||||||
import('recordingEditor').then(({default: recordingEditor}) => {
|
import('./recordingcreator/recordingeditor').then((recordingEditor) => {
|
||||||
recordingEditor.show(item.Id, serverId).then(resolve, reject);
|
recordingEditor.show(item.Id, serverId).then(resolve, reject);
|
||||||
});
|
});
|
||||||
} else if (item.Type === 'SeriesTimer') {
|
} else if (item.Type === 'SeriesTimer') {
|
||||||
import('seriesRecordingEditor').then(({default: recordingEditor}) => {
|
import('./recordingcreator/seriesrecordingeditor').then((recordingEditor) => {
|
||||||
recordingEditor.show(item.Id, serverId).then(resolve, reject);
|
recordingEditor.show(item.Id, serverId).then(resolve, reject);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
import('metadataEditor').then(({default: metadataEditor}) => {
|
import('./metadataEditor/metadataEditor').then((metadataEditor) => {
|
||||||
metadataEditor.show(item.Id, serverId).then(resolve, reject);
|
metadataEditor.show(item.Id, serverId).then(resolve, reject);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -585,7 +586,7 @@ import actionsheet from 'actionsheet';
|
||||||
|
|
||||||
function deleteItem(apiClient, item) {
|
function deleteItem(apiClient, item) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('deleteHelper').then(({default: deleteHelper}) => {
|
import('../scripts/deleteHelper').then((deleteHelper) => {
|
||||||
deleteHelper.deleteItem({
|
deleteHelper.deleteItem({
|
||||||
item: item,
|
item: item,
|
||||||
navigate: false
|
navigate: false
|
||||||
|
@ -597,7 +598,7 @@ import actionsheet from 'actionsheet';
|
||||||
}
|
}
|
||||||
|
|
||||||
function refresh(apiClient, item) {
|
function refresh(apiClient, item) {
|
||||||
import('refreshDialog').then(({default: refreshDialog}) => {
|
import('./refreshdialog/refreshdialog').then((refreshDialog) => {
|
||||||
new refreshDialog({
|
new refreshDialog({
|
||||||
itemIds: [item.Id],
|
itemIds: [item.Id],
|
||||||
serverId: apiClient.serverInfo().Id,
|
serverId: apiClient.serverInfo().Id,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import appHost from 'apphost';
|
import appHost from './apphost';
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
|
|
||||||
export function getDisplayName(item, options = {}) {
|
export function getDisplayName(item, options = {}) {
|
||||||
if (!item) {
|
if (!item) {
|
||||||
|
|
|
@ -5,17 +5,18 @@
|
||||||
* @module components/itemMediaInfo/itemMediaInfo
|
* @module components/itemMediaInfo/itemMediaInfo
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from 'loading';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import 'emby-select';
|
import loading from '../loading/loading';
|
||||||
import 'listViewStyle';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'paper-icon-button-light';
|
import '../listview/listview.css';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'material-icons';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-button';
|
import '../formdialog.css';
|
||||||
import 'flexStyles';
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
function setMediaInfo(user, page, item) {
|
function setMediaInfo(user, page, item) {
|
||||||
let html = item.MediaSources.map(version => {
|
let html = item.MediaSources.map(version => {
|
||||||
|
@ -193,7 +194,7 @@ import 'flexStyles';
|
||||||
|
|
||||||
export function show(itemId, serverId) {
|
export function show(itemId, serverId) {
|
||||||
loading.show();
|
loading.show();
|
||||||
return import('text!./itemMediaInfo.template.html').then(({default: template}) => {
|
return import('./itemMediaInfo.template.html').then(({default: template}) => {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
loadMediaInfo(itemId, serverId, template).then(resolve, reject);
|
loadMediaInfo(itemId, serverId, template).then(resolve, reject);
|
||||||
});
|
});
|
||||||
|
|
|
@ -5,19 +5,20 @@
|
||||||
* @module components/itemidentifier/itemidentifier
|
* @module components/itemidentifier/itemidentifier
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import globalize from 'globalize';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import scrollHelper from 'scrollHelper';
|
import globalize from '../../scripts/globalize';
|
||||||
import layoutManager from 'layoutManager';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import focusManager from 'focusManager';
|
import layoutManager from '../layoutManager';
|
||||||
import browser from 'browser';
|
import focusManager from '../focusManager';
|
||||||
import 'emby-input';
|
import browser from '../../scripts/browser';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'material-icons';
|
import '../formdialog.css';
|
||||||
import 'cardStyle';
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../cardbuilder/card.css';
|
||||||
|
|
||||||
const enableFocusTransform = !browser.slow && !browser.edge;
|
const enableFocusTransform = !browser.slow && !browser.edge;
|
||||||
|
|
||||||
|
@ -67,7 +68,7 @@ import 'cardStyle';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hasId && !lookupInfo.Name) {
|
if (!hasId && !lookupInfo.Name) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('PleaseEnterNameOrId'));
|
toast(globalize.translate('PleaseEnterNameOrId'));
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
|
@ -334,7 +335,7 @@ import 'cardStyle';
|
||||||
function showEditor(itemId) {
|
function showEditor(itemId) {
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
return import('text!./itemidentifier.template.html').then(({default: template}) => {
|
return import('./itemidentifier.template.html').then(({default: template}) => {
|
||||||
const apiClient = getApiClient();
|
const apiClient = getApiClient();
|
||||||
|
|
||||||
apiClient.getItem(apiClient.getCurrentUserId(), itemId).then(item => {
|
apiClient.getItem(apiClient.getCurrentUserId(), itemId).then(item => {
|
||||||
|
@ -416,7 +417,7 @@ import 'cardStyle';
|
||||||
currentItem = null;
|
currentItem = null;
|
||||||
currentItemType = itemType;
|
currentItemType = itemType;
|
||||||
|
|
||||||
return import('text!./itemidentifier.template.html').then(({default: template}) => {
|
return import('./itemidentifier.template.html').then(({default: template}) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
size: 'small',
|
size: 'small',
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from './playback/playbackmanager';
|
||||||
import serverNotifications from 'serverNotifications';
|
import serverNotifications from '../scripts/serverNotifications';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
|
|
||||||
function onUserDataChanged(e, apiClient, userData) {
|
function onUserDataChanged(e, apiClient, userData) {
|
||||||
const instance = this;
|
const instance = this;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import appHost from './apphost';
|
import appHost from './apphost';
|
||||||
import browser from '../scripts/browser';
|
import browser from '../scripts/browser';
|
||||||
import { set, get } from '../scripts/settings/appSettings';
|
import { set, get } from '../scripts/settings/appSettings';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
|
|
||||||
function setLayout(instance, layout, selectedLayout) {
|
function setLayout(instance, layout, selectedLayout) {
|
||||||
if (layout === selectedLayout) {
|
if (layout === selectedLayout) {
|
||||||
|
|
|
@ -5,11 +5,11 @@
|
||||||
* @module components/libraryoptionseditor/libraryoptionseditor
|
* @module components/libraryoptionseditor/libraryoptionseditor
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
|
|
||||||
function populateLanguages(parent) {
|
function populateLanguages(parent) {
|
||||||
return ApiClient.getCultures().then(languages => {
|
return ApiClient.getCultures().then(languages => {
|
||||||
|
@ -306,7 +306,7 @@ import 'emby-input';
|
||||||
}
|
}
|
||||||
|
|
||||||
function showImageOptionsForType(type) {
|
function showImageOptionsForType(type) {
|
||||||
import('imageoptionseditor').then(({default: ImageOptionsEditor}) => {
|
import('../imageOptionsEditor/imageOptionsEditor').then(({default: ImageOptionsEditor}) => {
|
||||||
let typeOptions = getTypeOptions(currentLibraryOptions, type);
|
let typeOptions = getTypeOptions(currentLibraryOptions, type);
|
||||||
if (!typeOptions) {
|
if (!typeOptions) {
|
||||||
typeOptions = {
|
typeOptions = {
|
||||||
|
|
|
@ -5,16 +5,17 @@
|
||||||
* @module components/listview/listview
|
* @module components/listview/listview
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import itemHelper from 'itemHelper';
|
import itemHelper from '../itemHelper';
|
||||||
import mediaInfo from 'mediaInfo';
|
import mediaInfo from '../mediainfo/mediainfo';
|
||||||
import indicators from 'indicators';
|
import indicators from '../indicators/indicators';
|
||||||
import layoutManager from 'layoutManager';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import layoutManager from '../layoutManager';
|
||||||
import datetime from 'datetime';
|
import globalize from '../../scripts/globalize';
|
||||||
import cardBuilder from 'cardBuilder';
|
import datetime from '../../scripts/datetime';
|
||||||
import 'css!./listview';
|
import cardBuilder from '../cardbuilder/cardBuilder';
|
||||||
import 'emby-ratingbutton';
|
import './listview.css';
|
||||||
import 'emby-playstatebutton';
|
import '../../elements/emby-ratingbutton/emby-ratingbutton';
|
||||||
|
import '../../elements/emby-playstatebutton/emby-playstatebutton';
|
||||||
|
|
||||||
function getIndex(item, options) {
|
function getIndex(item, options) {
|
||||||
if (options.index === 'disc') {
|
if (options.index === 'disc') {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import 'css!./loading';
|
import './loading';
|
||||||
|
|
||||||
let loadingElem;
|
let loadingElem;
|
||||||
let layer1;
|
let layer1;
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
import dom from 'dom';
|
import dom from '../scripts/dom';
|
||||||
import browser from 'browser';
|
import browser from '../scripts/browser';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-tabs';
|
import '../elements/emby-tabs/emby-tabs';
|
||||||
import 'emby-button';
|
import '../elements/emby-button/emby-button';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ import 'emby-button';
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
import('touchHelper').then(({default: TouchHelper}) => {
|
import('../scripts/touchHelper').then((TouchHelper) => {
|
||||||
const touchHelper = new TouchHelper(view.parentNode.parentNode);
|
const touchHelper = new TouchHelper(view.parentNode.parentNode);
|
||||||
|
|
||||||
events.on(touchHelper, 'swipeleft', onSwipeLeft);
|
events.on(touchHelper, 'swipeleft', onSwipeLeft);
|
||||||
|
|
|
@ -5,20 +5,20 @@
|
||||||
* @module components/mediaLibraryCreator/mediaLibraryCreator
|
* @module components/mediaLibraryCreator/mediaLibraryCreator
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import $ from 'jQuery';
|
import 'jquery';
|
||||||
import libraryoptionseditor from 'components/libraryoptionseditor/libraryoptionseditor';
|
import libraryoptionseditor from '../libraryoptionseditor/libraryoptionseditor';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-toggle';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'emby-input';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-select';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'listViewStyle';
|
import '../../elements/emby-toggle/emby-toggle';
|
||||||
import 'formDialogStyle';
|
import '../listview/listview.css';
|
||||||
import 'emby-button';
|
import '../formdialog.css';
|
||||||
import 'flexStyles';
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
function onAddLibrary() {
|
function onAddLibrary() {
|
||||||
if (isCreating) {
|
if (isCreating) {
|
||||||
|
@ -26,7 +26,7 @@ import 'flexStyles';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pathInfos.length == 0) {
|
if (pathInfos.length == 0) {
|
||||||
import('alert').then(({default: alert}) => {
|
import('../alert').then((alert) => {
|
||||||
alert({
|
alert({
|
||||||
text: globalize.translate('PleaseAddAtLeastOneFolder'),
|
text: globalize.translate('PleaseAddAtLeastOneFolder'),
|
||||||
type: 'error'
|
type: 'error'
|
||||||
|
@ -54,7 +54,7 @@ import 'flexStyles';
|
||||||
loading.hide();
|
loading.hide();
|
||||||
dialogHelper.close(dlg);
|
dialogHelper.close(dlg);
|
||||||
}, () => {
|
}, () => {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('ErrorAddingMediaPathToVirtualFolder'));
|
toast(globalize.translate('ErrorAddingMediaPathToVirtualFolder'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -109,7 +109,7 @@ import 'flexStyles';
|
||||||
function onAddButtonClick() {
|
function onAddButtonClick() {
|
||||||
const page = dom.parentWithClass(this, 'dlg-librarycreator');
|
const page = dom.parentWithClass(this, 'dlg-librarycreator');
|
||||||
|
|
||||||
import('directorybrowser').then(({default: directoryBrowser}) => {
|
import('../directorybrowser/directorybrowser').then((directoryBrowser) => {
|
||||||
const picker = new directoryBrowser();
|
const picker = new directoryBrowser();
|
||||||
picker.show({
|
picker.show({
|
||||||
enableNetworkSharePath: true,
|
enableNetworkSharePath: true,
|
||||||
|
@ -200,7 +200,7 @@ export class showEditor {
|
||||||
currentOptions = options;
|
currentOptions = options;
|
||||||
currentResolve = resolve;
|
currentResolve = resolve;
|
||||||
hasChanges = false;
|
hasChanges = false;
|
||||||
import('text!./components/mediaLibraryCreator/mediaLibraryCreator.template.html').then(({default: template}) => {
|
import('./mediaLibraryCreator.template.html').then(({default: template}) => {
|
||||||
const dlg = dialogHelper.createDialog({
|
const dlg = dialogHelper.createDialog({
|
||||||
size: 'small',
|
size: 'small',
|
||||||
modal: false,
|
modal: false,
|
||||||
|
|
|
@ -5,18 +5,18 @@
|
||||||
* @module components/mediaLibraryEditor/mediaLibraryEditor
|
* @module components/mediaLibraryEditor/mediaLibraryEditor
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import jQuery from 'jQuery';
|
import 'jquery';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import libraryoptionseditor from 'components/libraryoptionseditor/libraryoptionseditor';
|
import libraryoptionseditor from '../libraryoptionseditor/libraryoptionseditor';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'listViewStyle';
|
import '../listview/listview.css';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'formDialogStyle';
|
import '../formdialog.css';
|
||||||
import 'emby-toggle';
|
import '../../elements/emby-toggle/emby-toggle';
|
||||||
import 'flexStyles';
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
function onEditLibrary() {
|
function onEditLibrary() {
|
||||||
if (isCreating) {
|
if (isCreating) {
|
||||||
|
@ -47,7 +47,7 @@ import 'flexStyles';
|
||||||
hasChanges = true;
|
hasChanges = true;
|
||||||
refreshLibraryFromServer(page);
|
refreshLibraryFromServer(page);
|
||||||
}, () => {
|
}, () => {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('ErrorAddingMediaPathToVirtualFolder'));
|
toast(globalize.translate('ErrorAddingMediaPathToVirtualFolder'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -62,7 +62,7 @@ import 'flexStyles';
|
||||||
hasChanges = true;
|
hasChanges = true;
|
||||||
refreshLibraryFromServer(page);
|
refreshLibraryFromServer(page);
|
||||||
}, () => {
|
}, () => {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('ErrorAddingMediaPathToVirtualFolder'));
|
toast(globalize.translate('ErrorAddingMediaPathToVirtualFolder'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -72,7 +72,7 @@ import 'flexStyles';
|
||||||
const button = btnRemovePath;
|
const button = btnRemovePath;
|
||||||
const virtualFolder = currentOptions.library;
|
const virtualFolder = currentOptions.library;
|
||||||
|
|
||||||
import('confirm').then(({default: confirm}) => {
|
import('../confirm/confirm').then(({default: confirm}) => {
|
||||||
confirm({
|
confirm({
|
||||||
title: globalize.translate('HeaderRemoveMediaLocation'),
|
title: globalize.translate('HeaderRemoveMediaLocation'),
|
||||||
text: globalize.translate('MessageConfirmRemoveMediaLocation'),
|
text: globalize.translate('MessageConfirmRemoveMediaLocation'),
|
||||||
|
@ -84,7 +84,7 @@ import 'flexStyles';
|
||||||
hasChanges = true;
|
hasChanges = true;
|
||||||
refreshLibraryFromServer(dom.parentWithClass(button, 'dlg-libraryeditor'));
|
refreshLibraryFromServer(dom.parentWithClass(button, 'dlg-libraryeditor'));
|
||||||
}, () => {
|
}, () => {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('ErrorDefault'));
|
toast(globalize.translate('ErrorDefault'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -167,7 +167,7 @@ import 'flexStyles';
|
||||||
}
|
}
|
||||||
|
|
||||||
function showDirectoryBrowser(context, originalPath, networkPath) {
|
function showDirectoryBrowser(context, originalPath, networkPath) {
|
||||||
import('directorybrowser').then(({default: directoryBrowser}) => {
|
import('../directorybrowser/directorybrowser').then((directoryBrowser) => {
|
||||||
const picker = new directoryBrowser();
|
const picker = new directoryBrowser();
|
||||||
picker.show({
|
picker.show({
|
||||||
enableNetworkSharePath: true,
|
enableNetworkSharePath: true,
|
||||||
|
@ -215,7 +215,7 @@ export class showEditor {
|
||||||
currentOptions = options;
|
currentOptions = options;
|
||||||
currentDeferred = deferred;
|
currentDeferred = deferred;
|
||||||
hasChanges = false;
|
hasChanges = false;
|
||||||
import('text!./components/mediaLibraryEditor/mediaLibraryEditor.template.html').then(({default: template}) => {
|
import('./mediaLibraryEditor.template.html').then((template) => {
|
||||||
const dlg = dialogHelper.createDialog({
|
const dlg = dialogHelper.createDialog({
|
||||||
size: 'small',
|
size: 'small',
|
||||||
modal: false,
|
modal: false,
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import appRouter from 'appRouter';
|
import appRouter from '../appRouter';
|
||||||
import itemHelper from 'itemHelper';
|
import itemHelper from '../itemHelper';
|
||||||
import indicators from 'indicators';
|
import indicators from '../indicators/indicators';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
import 'css!./mediainfo.css';
|
import './mediainfo.css';
|
||||||
import 'programStyles';
|
import '../guide/programs.css';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
function getTimerIndicator(item) {
|
function getTimerIndicator(item) {
|
||||||
|
|
|
@ -1,21 +1,22 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import focusManager from 'focusManager';
|
import focusManager from '../focusManager';
|
||||||
import globalize from 'globalize';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import shell from 'shell';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-checkbox';
|
import shell from '../../scripts/shell';
|
||||||
import 'emby-input';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-select';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'listViewStyle';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-textarea';
|
import '../listview/listview.css';
|
||||||
import 'emby-button';
|
import '../../elements/emby-textarea/emby-textarea';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'clearButtonStyle';
|
import '../formdialog.css';
|
||||||
import 'flexStyles';
|
import '../../assets/css/clearbutton.css';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -35,7 +36,7 @@ import 'flexStyles';
|
||||||
|
|
||||||
function submitUpdatedItem(form, item) {
|
function submitUpdatedItem(form, item) {
|
||||||
function afterContentTypeUpdated() {
|
function afterContentTypeUpdated() {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then(({default: toast}) => {
|
||||||
toast(globalize.translate('MessageItemSaved'));
|
toast(globalize.translate('MessageItemSaved'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -207,7 +208,7 @@ import 'flexStyles';
|
||||||
}
|
}
|
||||||
|
|
||||||
function addElementToList(source, sortCallback) {
|
function addElementToList(source, sortCallback) {
|
||||||
import('prompt').then(({default: prompt}) => {
|
import('../prompt/prompt').then(({default: prompt}) => {
|
||||||
prompt({
|
prompt({
|
||||||
label: 'Value:'
|
label: 'Value:'
|
||||||
}).then(function (text) {
|
}).then(function (text) {
|
||||||
|
@ -225,7 +226,7 @@ import 'flexStyles';
|
||||||
}
|
}
|
||||||
|
|
||||||
function editPerson(context, person, index) {
|
function editPerson(context, person, index) {
|
||||||
import('personEditor').then(({default: personEditor}) => {
|
import('./personEditor').then((personEditor) => {
|
||||||
personEditor.show(person).then(function (updatedPerson) {
|
personEditor.show(person).then(function (updatedPerson) {
|
||||||
const isNew = index === -1;
|
const isNew = index === -1;
|
||||||
|
|
||||||
|
@ -244,14 +245,14 @@ import 'flexStyles';
|
||||||
if (parentId) {
|
if (parentId) {
|
||||||
reload(context, parentId, item.ServerId);
|
reload(context, parentId, item.ServerId);
|
||||||
} else {
|
} else {
|
||||||
import('appRouter').then(({default: appRouter}) => {
|
import('../appRouter').then((appRouter) => {
|
||||||
appRouter.goHome();
|
appRouter.goHome();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function showMoreMenu(context, button, user) {
|
function showMoreMenu(context, button, user) {
|
||||||
import('itemContextMenu').then(({default: itemContextMenu}) => {
|
import('../itemContextMenu').then(({default: itemContextMenu}) => {
|
||||||
const item = currentItem;
|
const item = currentItem;
|
||||||
|
|
||||||
itemContextMenu.show({
|
itemContextMenu.show({
|
||||||
|
@ -1020,7 +1021,7 @@ import 'flexStyles';
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then(({default: scrollHelper}) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
@ -1029,7 +1030,7 @@ import 'flexStyles';
|
||||||
function show(itemId, serverId, resolve, reject) {
|
function show(itemId, serverId, resolve, reject) {
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
import('text!./metadataEditor.template.html').then(({default: template}) => {
|
import('./metadataEditor.template.html').then(({default: template}) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
@ -1084,7 +1085,7 @@ import 'flexStyles';
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
import('text!./metadataEditor.template.html').then(({default: template}) => {
|
import('./metadataEditor.template.html').then(({default: template}) => {
|
||||||
elem.innerHTML = globalize.translateHtml(template, 'core');
|
elem.innerHTML = globalize.translateHtml(template, 'core');
|
||||||
|
|
||||||
elem.querySelector('.formDialogFooter').classList.remove('formDialogFooter');
|
elem.querySelector('.formDialogFooter').classList.remove('formDialogFooter');
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
|
||||||
import layoutManager from 'layoutManager';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import globalize from 'globalize';
|
import layoutManager from '../layoutManager';
|
||||||
import 'paper-icon-button-light';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-input';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-select';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-select/emby-select';
|
||||||
|
import '../formdialog.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then(({default: scrollHelper}) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
@ -17,7 +18,7 @@ import 'css!./../formdialog';
|
||||||
|
|
||||||
function show(person) {
|
function show(person) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('text!./personEditor.template.html').then(({default: template}) => {
|
import('./personEditor.template.html').then(({default: template}) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
.itemSelectionPanel {
|
.itemSelectionPanel {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import globalize from 'globalize';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import dom from 'dom';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'css!./multiSelect';
|
import dom from '../../scripts/dom';
|
||||||
|
import './multiSelect.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -138,7 +139,7 @@ import 'css!./multiSelect';
|
||||||
|
|
||||||
function alertText(options) {
|
function alertText(options) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
import('alert').then(({default: alert}) => {
|
import('../alert').then((alert) => {
|
||||||
alert(options).then(resolve, resolve);
|
alert(options).then(resolve, resolve);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -154,7 +155,7 @@ import 'css!./multiSelect';
|
||||||
title = globalize.translate('HeaderDeleteItems');
|
title = globalize.translate('HeaderDeleteItems');
|
||||||
}
|
}
|
||||||
|
|
||||||
import('confirm').then(({default: confirm}) => {
|
import('../confirm/confirm').then((confirm) => {
|
||||||
confirm(msg, title).then(() => {
|
confirm(msg, title).then(() => {
|
||||||
const promises = itemIds.map(itemId => {
|
const promises = itemIds.map(itemId => {
|
||||||
apiClient.deleteItem(itemId);
|
apiClient.deleteItem(itemId);
|
||||||
|
@ -229,7 +230,7 @@ import 'css!./multiSelect';
|
||||||
icon: 'refresh'
|
icon: 'refresh'
|
||||||
});
|
});
|
||||||
|
|
||||||
import('actionsheet').then(({default: actionsheet}) => {
|
import('../actionSheet/actionSheet').then((actionsheet) => {
|
||||||
actionsheet.show({
|
actionsheet.show({
|
||||||
items: menuItems,
|
items: menuItems,
|
||||||
positionTo: e.target,
|
positionTo: e.target,
|
||||||
|
@ -239,7 +240,7 @@ import 'css!./multiSelect';
|
||||||
|
|
||||||
switch (id) {
|
switch (id) {
|
||||||
case 'addtocollection':
|
case 'addtocollection':
|
||||||
import('collectionEditor').then(({default: collectionEditor}) => {
|
import('../collectionEditor/collectionEditor').then((collectionEditor) => {
|
||||||
new collectionEditor({
|
new collectionEditor({
|
||||||
items: items,
|
items: items,
|
||||||
serverId: serverId
|
serverId: serverId
|
||||||
|
@ -249,7 +250,7 @@ import 'css!./multiSelect';
|
||||||
dispatchNeedsRefresh();
|
dispatchNeedsRefresh();
|
||||||
break;
|
break;
|
||||||
case 'playlist':
|
case 'playlist':
|
||||||
import('playlistEditor').then(({default: playlistEditor}) => {
|
import('../playlisteditor/playlisteditor').then((laylistEditor) => {
|
||||||
new playlistEditor({
|
new playlistEditor({
|
||||||
items: items,
|
items: items,
|
||||||
serverId: serverId
|
serverId: serverId
|
||||||
|
@ -281,7 +282,7 @@ import 'css!./multiSelect';
|
||||||
dispatchNeedsRefresh();
|
dispatchNeedsRefresh();
|
||||||
break;
|
break;
|
||||||
case 'refresh':
|
case 'refresh':
|
||||||
import('refreshDialog').then(({default: refreshDialog}) => {
|
import('../refreshdialog/refreshdialog').then((refreshDialog) => {
|
||||||
new refreshDialog({
|
new refreshDialog({
|
||||||
itemIds: items,
|
itemIds: items,
|
||||||
serverId: serverId
|
serverId: serverId
|
||||||
|
@ -317,7 +318,7 @@ import 'css!./multiSelect';
|
||||||
|
|
||||||
function combineVersions(apiClient, selection) {
|
function combineVersions(apiClient, selection) {
|
||||||
if (selection.length < 2) {
|
if (selection.length < 2) {
|
||||||
import('alert').then(({default: alert}) => {
|
import('../alert').then((alert) => {
|
||||||
alert({
|
alert({
|
||||||
|
|
||||||
text: globalize.translate('PleaseSelectTwoItems')
|
text: globalize.translate('PleaseSelectTwoItems')
|
||||||
|
@ -341,7 +342,7 @@ import 'css!./multiSelect';
|
||||||
}
|
}
|
||||||
|
|
||||||
function showSelections(initialCard) {
|
function showSelections(initialCard) {
|
||||||
import('emby-checkbox').then(() => {
|
import('../../elements/emby-checkbox/emby-checkbox').then(() => {
|
||||||
const cards = document.querySelectorAll('.card');
|
const cards = document.querySelectorAll('.card');
|
||||||
for (let i = 0, length = cards.length; i < length; i++) {
|
for (let i = 0, length = cards.length; i < length; i++) {
|
||||||
showSelection(cards[i], initialCard === cards[i]);
|
showSelection(cards[i], initialCard === cards[i]);
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import serverNotifications from 'serverNotifications';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
|
|
||||||
function onOneDocumentClick() {
|
function onOneDocumentClick() {
|
||||||
document.removeEventListener('click', onOneDocumentClick);
|
document.removeEventListener('click', onOneDocumentClick);
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import imageLoader from 'imageLoader';
|
import imageLoader from '../../scripts/imagehelper';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import nowPlayingHelper from 'nowPlayingHelper';
|
import nowPlayingHelper from '../playback/nowplayinghelper';
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import itemContextMenu from 'itemContextMenu';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import 'paper-icon-button-light';
|
import itemContextMenu from '../itemContextMenu';
|
||||||
import 'emby-ratingbutton';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
|
import '../../elements/emby-ratingbutton/emby-ratingbutton';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -243,7 +244,7 @@ import 'emby-ratingbutton';
|
||||||
}
|
}
|
||||||
|
|
||||||
function showRemoteControl() {
|
function showRemoteControl() {
|
||||||
import('appRouter').then(({default: appRouter}) => {
|
import('../appRouter').then(({default: appRouter}) => {
|
||||||
appRouter.showNowPlaying();
|
appRouter.showNowPlaying();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -256,10 +257,10 @@ import 'emby-ratingbutton';
|
||||||
|
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
Promise.all([
|
Promise.all([
|
||||||
import('appFooter'),
|
import('../appFooter/appFooter'),
|
||||||
import('itemShortcuts'),
|
import('../shortcuts'),
|
||||||
import('css!./nowPlayingBar.css'),
|
import('./nowPlayingBar.css'),
|
||||||
import('emby-slider')
|
import('../../elements/emby-slider/emby-slider')
|
||||||
])
|
])
|
||||||
.then(([appfooter, itemShortcuts]) => {
|
.then(([appfooter, itemShortcuts]) => {
|
||||||
const parentContainer = appfooter.element;
|
const parentContainer = appfooter.element;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import appSettings from 'appSettings';
|
import appSettings from '../scripts/settings/appSettings';
|
||||||
import pluginManager from 'pluginManager';
|
import pluginManager from './pluginManager';
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
class PackageManager {
|
class PackageManager {
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from './playbackmanager';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import 'css!./iconosd';
|
import './iconosd.css';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
let currentPlayer;
|
let currentPlayer;
|
||||||
let osdElement;
|
let osdElement;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import nowPlayingHelper from 'nowPlayingHelper';
|
import nowPlayingHelper from '../playback/nowplayinghelper';
|
||||||
import shell from 'shell';
|
import events from 'jellyfin-apiclient';
|
||||||
import events from 'events';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
// Reports media playback to the device for lock screen control
|
// Reports media playback to the device for lock screen control
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import appSettings from 'appSettings';
|
import appSettings from '../../scripts/settings/appSettings';
|
||||||
import itemHelper from 'itemHelper';
|
import itemHelper from '../itemHelper';
|
||||||
import pluginManager from 'pluginManager';
|
import pluginManager from '../pluginManager';
|
||||||
import PlayQueueManager from 'playQueueManager';
|
import PlayQueueManager from './playqueuemanager';
|
||||||
import * as userSettings from 'userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from 'loading';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import appHost from 'apphost';
|
import loading from '../loading/loading';
|
||||||
|
import appHost from '../apphost';
|
||||||
import screenfull from 'screenfull';
|
import screenfull from 'screenfull';
|
||||||
|
|
||||||
function enableLocalPlaylistManagement(player) {
|
function enableLocalPlaylistManagement(player) {
|
||||||
|
@ -619,7 +620,7 @@ function supportsDirectPlay(apiClient, item, mediaSource) {
|
||||||
} else if (mediaSource.Protocol === 'File') {
|
} else if (mediaSource.Protocol === 'File') {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
// Determine if the file can be accessed directly
|
// Determine if the file can be accessed directly
|
||||||
import('filesystem').then((filesystem) => {
|
import('../../scripts/filesystem').then((filesystem) => {
|
||||||
const method = isFolderRip ?
|
const method = isFolderRip ?
|
||||||
'directoryExists' :
|
'directoryExists' :
|
||||||
'fileExists';
|
'fileExists';
|
||||||
|
@ -647,7 +648,7 @@ function validatePlaybackInfoResult(instance, result) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function showPlaybackInfoErrorMessage(instance, errorCode) {
|
function showPlaybackInfoErrorMessage(instance, errorCode) {
|
||||||
import('alert').then(({ default: alert }) => {
|
import('../alert').then(({ default: alert }) => {
|
||||||
alert({
|
alert({
|
||||||
text: globalize.translate(errorCode),
|
text: globalize.translate(errorCode),
|
||||||
title: globalize.translate('HeaderPlaybackError')
|
title: globalize.translate('HeaderPlaybackError')
|
||||||
|
@ -1161,7 +1162,7 @@ class PlaybackManager {
|
||||||
if (!brightnessOsdLoaded) {
|
if (!brightnessOsdLoaded) {
|
||||||
brightnessOsdLoaded = true;
|
brightnessOsdLoaded = true;
|
||||||
// TODO: Have this trigger an event instead to get the osd out of here
|
// TODO: Have this trigger an event instead to get the osd out of here
|
||||||
import('brightnessOsd').then();
|
import('./brightnessosd').then();
|
||||||
}
|
}
|
||||||
player.setBrightness(val);
|
player.setBrightness(val);
|
||||||
}
|
}
|
||||||
|
@ -3190,7 +3191,7 @@ class PlaybackManager {
|
||||||
};
|
};
|
||||||
|
|
||||||
if (appHost.supports('remotecontrol')) {
|
if (appHost.supports('remotecontrol')) {
|
||||||
import('serverNotifications').then(({ default: serverNotifications }) => {
|
import('../../scripts/serverNotifications').then((serverNotifications) => {
|
||||||
events.on(serverNotifications, 'ServerShuttingDown', self.setDefaultPlayerActive.bind(self));
|
events.on(serverNotifications, 'ServerShuttingDown', self.setDefaultPlayerActive.bind(self));
|
||||||
events.on(serverNotifications, 'ServerRestarting', self.setDefaultPlayerActive.bind(self));
|
events.on(serverNotifications, 'ServerRestarting', self.setDefaultPlayerActive.bind(self));
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import playbackManager from 'playbackManager';
|
|
||||||
import layoutManager from 'layoutManager';
|
import playbackManager from './playbackmanager';
|
||||||
import events from 'events';
|
import layoutManager from '../layoutManager';
|
||||||
|
import events from 'jellyfin-apiclient';
|
||||||
|
|
||||||
let orientationLocked;
|
let orientationLocked;
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
import appSettings from 'appSettings';
|
import appSettings from '../../scripts/settings/appSettings';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import appRouter from 'appRouter';
|
import appRouter from '../appRouter';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import * as autocast from 'autocast';
|
import { enable, isEnabled, supported } from '../../scripts/autocast';
|
||||||
|
|
||||||
function mirrorItem(info, player) {
|
function mirrorItem(info, player) {
|
||||||
const item = info.item;
|
const item = info.item;
|
||||||
|
@ -108,7 +108,7 @@ export function show(button) {
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
import('actionsheet').then(({default: actionsheet}) => {
|
import('../actionSheet/actionSheet').then((actionsheet) => {
|
||||||
loading.hide();
|
loading.hide();
|
||||||
|
|
||||||
const menuOptions = {
|
const menuOptions = {
|
||||||
|
@ -141,10 +141,10 @@ export function show(button) {
|
||||||
|
|
||||||
function showActivePlayerMenu(playerInfo) {
|
function showActivePlayerMenu(playerInfo) {
|
||||||
Promise.all([
|
Promise.all([
|
||||||
import('dialogHelper'),
|
import('../dialogHelper/dialogHelper'),
|
||||||
import('dialog'),
|
import('../dialog/dialog'),
|
||||||
import('emby-checkbox'),
|
import('../../elements/emby-checkbox/emby-checkbox'),
|
||||||
import('emby-button')
|
import('../../elements/emby-button/emby-button')
|
||||||
]).then(([dialogHelper]) => {
|
]).then(([dialogHelper]) => {
|
||||||
showActivePlayerMenuInternal(dialogHelper, playerInfo);
|
showActivePlayerMenuInternal(dialogHelper, playerInfo);
|
||||||
});
|
});
|
||||||
|
@ -152,7 +152,7 @@ function showActivePlayerMenu(playerInfo) {
|
||||||
|
|
||||||
function disconnectFromPlayer(currentDeviceName) {
|
function disconnectFromPlayer(currentDeviceName) {
|
||||||
if (playbackManager.getSupportedCommands().indexOf('EndSession') !== -1) {
|
if (playbackManager.getSupportedCommands().indexOf('EndSession') !== -1) {
|
||||||
import('dialog').then(({default: dialog}) => {
|
import('../dialog/dialog').then(({default: dialog}) => {
|
||||||
const menuItems = [];
|
const menuItems = [];
|
||||||
|
|
||||||
menuItems.push({
|
menuItems.push({
|
||||||
|
@ -222,9 +222,9 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) {
|
||||||
|
|
||||||
html += '</div>';
|
html += '</div>';
|
||||||
|
|
||||||
if (autocast.supported()) {
|
if (supported()) {
|
||||||
html += '<div><label class="checkboxContainer">';
|
html += '<div><label class="checkboxContainer">';
|
||||||
const checkedHtmlAC = autocast.isEnabled() ? ' checked' : '';
|
const checkedHtmlAC = isEnabled() ? ' checked' : '';
|
||||||
html += '<input type="checkbox" is="emby-checkbox" class="chkAutoCast"' + checkedHtmlAC + '/>';
|
html += '<input type="checkbox" is="emby-checkbox" class="chkAutoCast"' + checkedHtmlAC + '/>';
|
||||||
html += '<span>' + globalize.translate('EnableAutoCast') + '</span>';
|
html += '<span>' + globalize.translate('EnableAutoCast') + '</span>';
|
||||||
html += '</label></div>';
|
html += '</label></div>';
|
||||||
|
@ -285,7 +285,7 @@ function onMirrorChange() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function onAutoCastChange() {
|
function onAutoCastChange() {
|
||||||
autocast.enable(this.checked);
|
enable(this.checked);
|
||||||
}
|
}
|
||||||
|
|
||||||
document.addEventListener('viewshow', function (e) {
|
document.addEventListener('viewshow', function (e) {
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import actionsheet from 'actionsheet';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import playbackManager from 'playbackManager';
|
import actionsheet from '../actionSheet/actionSheet';
|
||||||
import globalize from 'globalize';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import qualityoptions from 'qualityoptions';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import qualityoptions from '../qualityOptions';
|
||||||
|
|
||||||
function showQualityMenu(player, btn) {
|
function showQualityMenu(player, btn) {
|
||||||
const videoStream = playbackManager.currentMediaSource(player).MediaStreams.filter(function (stream) {
|
const videoStream = playbackManager.currentMediaSource(player).MediaStreams.filter(function (stream) {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
|
|
||||||
function transferPlayback(oldPlayer, newPlayer) {
|
function transferPlayback(oldPlayer, newPlayer) {
|
||||||
const state = playbackManager.getPlayerState(oldPlayer);
|
const state = playbackManager.getPlayerState(oldPlayer);
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import events from 'events';
|
|
||||||
import playbackManager from 'playbackManager';
|
import events from 'jellyfin-apiclient';
|
||||||
import dom from 'dom';
|
import playbackManager from './playbackmanager';
|
||||||
import browser from 'browser';
|
import dom from '../../scripts/dom';
|
||||||
import 'css!./iconosd';
|
import browser from '../../scripts/browser';
|
||||||
import 'material-icons';
|
import './iconosd.css';
|
||||||
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
let currentPlayer;
|
let currentPlayer;
|
||||||
let osdElement;
|
let osdElement;
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import appSettings from 'appSettings';
|
import appSettings from '../../scripts/settings/appSettings';
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import focusManager from 'focusManager';
|
import focusManager from '../focusManager';
|
||||||
import qualityoptions from 'qualityoptions';
|
import qualityoptions from '../qualityOptions';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import events from 'events';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import 'emby-select';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-select/emby-select';
|
||||||
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -243,7 +244,7 @@ import 'emby-checkbox';
|
||||||
saveUser(context, user, userSettings, apiClient).then(() => {
|
saveUser(context, user, userSettings, apiClient).then(() => {
|
||||||
loading.hide();
|
loading.hide();
|
||||||
if (enableSaveConfirmation) {
|
if (enableSaveConfirmation) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('SettingsSaved'));
|
toast(globalize.translate('SettingsSaved'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -274,7 +275,7 @@ import 'emby-checkbox';
|
||||||
}
|
}
|
||||||
|
|
||||||
function embed(options, self) {
|
function embed(options, self) {
|
||||||
return import('text!./playbackSettings.template.html').then(({default: template}) => {
|
return import('./playbackSettings.template.html').then(({default: template}) => {
|
||||||
options.element.innerHTML = globalize.translateHtml(template, 'core');
|
options.element.innerHTML = globalize.translateHtml(template, 'core');
|
||||||
|
|
||||||
options.element.querySelector('form').addEventListener('submit', onSubmit.bind(self));
|
options.element.querySelector('form').addEventListener('submit', onSubmit.bind(self));
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import events from 'events';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import events from 'jellyfin-apiclient';
|
||||||
import playbackManager from 'playbackManager';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import syncPlayManager from 'syncPlayManager';
|
import globalize from '../../scripts/globalize';
|
||||||
import playMethodHelper from 'playMethodHelper';
|
import layoutManager from '../layoutManager';
|
||||||
import layoutManager from 'layoutManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import 'paper-icon-button-light';
|
import playMethodHelper from '../playback/playmethodhelper';
|
||||||
import 'css!./playerstats';
|
import syncPlayManager from '../syncPlay/syncPlayManager';
|
||||||
|
import './playerstats.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,18 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import * as userSettings from 'userSettings';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import appRouter from 'appRouter';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import globalize from 'globalize';
|
import appRouter from '../appRouter';
|
||||||
import 'emby-input';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'emby-select';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'material-icons';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-button';
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../formdialog.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -209,7 +210,7 @@ import 'emby-button';
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then((scrollHelper) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import actionsheet from 'actionsheet';
|
import actionsheet from './actionSheet/actionSheet';
|
||||||
import datetime from 'datetime';
|
import datetime from '../scripts/datetime';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from './playback/playbackmanager';
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
|
|
||||||
export function show(options) {
|
export function show(options) {
|
||||||
const item = options.item;
|
const item = options.item;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
// TODO: replace with each plugin version
|
// TODO: replace with each plugin version
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import scrollHelper from 'scrollHelper';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'formDialogStyle';
|
import '../formdialog.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
export default (() => {
|
export default (() => {
|
||||||
|
@ -117,7 +117,7 @@ export default (() => {
|
||||||
} else {
|
} else {
|
||||||
return options => {
|
return options => {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
import('text!./prompt.template.html').then(({default: template}) => {
|
import('./prompt.template.html').then(({default: template}) => {
|
||||||
if (typeof options === 'string') {
|
if (typeof options === 'string') {
|
||||||
options = {
|
options = {
|
||||||
title: '',
|
title: '',
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
|
|
||||||
export function getVideoQualityOptions(options) {
|
export function getVideoQualityOptions(options) {
|
||||||
const maxStreamingBitrate = options.currentMaxBitrate;
|
const maxStreamingBitrate = options.currentMaxBitrate;
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
import dom from 'dom';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import recordingHelper from 'recordingHelper';
|
import dom from '../../scripts/dom';
|
||||||
import 'paper-icon-button-light';
|
import recordingHelper from './recordinghelper';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'css!./recordingfields';
|
import '../../elements/emby-button/emby-button';
|
||||||
|
import './recordingfields.css';
|
||||||
|
|
||||||
function onRecordingButtonClick(e) {
|
function onRecordingButtonClick(e) {
|
||||||
const item = this.item;
|
const item = this.item;
|
||||||
|
|
|
@ -1,22 +1,22 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import mediaInfo from 'mediaInfo';
|
import mediaInfo from '../mediainfo/mediainfo';
|
||||||
import require from 'require';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import scrollHelper from 'scrollHelper';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import imageLoader from 'imageLoader';
|
import imageLoader from '../images/imageLoader';
|
||||||
import recordingFields from 'recordingFields';
|
import recordingFields from './recordingfields';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-collapse';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-input';
|
import '../../elements/emby-collapse/emby-collapse';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'css!./../formdialog';
|
import '../formdialog.css';
|
||||||
import 'css!./recordingcreator';
|
import './recordingcreator.css';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
|
|
||||||
let currentDialog;
|
let currentDialog;
|
||||||
let closeAction;
|
let closeAction;
|
||||||
|
@ -68,7 +68,7 @@ function renderRecording(context, defaultTimer, program, apiClient, refreshRecor
|
||||||
const imageContainer = context.querySelector('.recordingDialog-imageContainer');
|
const imageContainer = context.querySelector('.recordingDialog-imageContainer');
|
||||||
|
|
||||||
if (imgUrl) {
|
if (imgUrl) {
|
||||||
imageContainer.innerHTML = '<img src="' + require.toUrl('.').split('?')[0] + '/empty.png" data-src="' + imgUrl + '" class="recordingDialog-img lazy" />';
|
imageContainer.innerHTML = '<img src="./empty.png" data-src="' + imgUrl + '" class="recordingDialog-img lazy" />';
|
||||||
imageContainer.classList.remove('hide');
|
imageContainer.classList.remove('hide');
|
||||||
|
|
||||||
imageLoader.lazyChildren(imageContainer);
|
imageLoader.lazyChildren(imageContainer);
|
||||||
|
@ -117,8 +117,8 @@ function reload(context, programId, serverId, refreshRecordingStateOnly) {
|
||||||
|
|
||||||
function executeCloseAction(action, programId, serverId) {
|
function executeCloseAction(action, programId, serverId) {
|
||||||
if (action === 'play') {
|
if (action === 'play') {
|
||||||
import('playbackManager').then(({ default: playbackManager }) => {
|
import('../playback/playbackmanager').then(({ default: playbackManager }) => {
|
||||||
const apiClient = window.connectionManager.getApiClient(serverId);
|
const apiClient = connectionManager.getApiClient(serverId);
|
||||||
|
|
||||||
apiClient.getLiveTvProgram(programId, apiClient.getCurrentUserId()).then(function (item) {
|
apiClient.getLiveTvProgram(programId, apiClient.getCurrentUserId()).then(function (item) {
|
||||||
playbackManager.play({
|
playbackManager.play({
|
||||||
|
@ -137,7 +137,7 @@ function showEditor(itemId, serverId) {
|
||||||
|
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
import('text!./recordingcreator.template.html').then(({ default: template }) => {
|
import('./recordingcreator.template.html').then(({ default: template }) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
|
|
@ -1,17 +1,19 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
|
||||||
import globalize from 'globalize';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import layoutManager from 'layoutManager';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from 'loading';
|
import layoutManager from '../layoutManager';
|
||||||
import scrollHelper from 'scrollHelper';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import 'scrollStyles';
|
import loading from '../loading/loading';
|
||||||
import 'emby-button';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import 'emby-collapse';
|
import '../../assets/css/scrollstyles.css';
|
||||||
import 'emby-input';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-collapse/emby-collapse';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'css!./recordingcreator';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'material-icons';
|
import '../formdialog.css';
|
||||||
import 'flexStyles';
|
import './recordingcreator.css';
|
||||||
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
let currentDialog;
|
let currentDialog;
|
||||||
let recordingDeleted = false;
|
let recordingDeleted = false;
|
||||||
|
@ -20,7 +22,7 @@ let currentServerId;
|
||||||
let currentResolve;
|
let currentResolve;
|
||||||
|
|
||||||
function deleteTimer(apiClient, timerId) {
|
function deleteTimer(apiClient, timerId) {
|
||||||
return import('recordingHelper').then(({ default: recordingHelper }) => {
|
return import('./recordinghelper').then((recordingHelper) => {
|
||||||
recordingHelper.cancelTimerWithConfirmation(timerId, apiClient.serverId());
|
recordingHelper.cancelTimerWithConfirmation(timerId, apiClient.serverId());
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -89,7 +91,7 @@ function showEditor(itemId, serverId, options) {
|
||||||
options = options || {};
|
options = options || {};
|
||||||
currentResolve = resolve;
|
currentResolve = resolve;
|
||||||
|
|
||||||
import('text!./recordingeditor.template.html').then(({default: template}) => {
|
import('./recordingeditor.template.html').then(({default: template}) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import serverNotifications from 'serverNotifications';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import loading from 'loading';
|
import serverNotifications from '../../scripts/serverNotifications';
|
||||||
import dom from 'dom';
|
import loading from '../loading/loading';
|
||||||
import recordingHelper from 'recordingHelper';
|
import dom from '../../scripts/dom';
|
||||||
import events from 'events';
|
import recordingHelper from './recordinghelper';
|
||||||
import 'paper-icon-button-light';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'css!./recordingfields';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'flexStyles';
|
import './recordingfields.css';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
/*eslint prefer-const: "error"*/
|
/*eslint prefer-const: "error"*/
|
||||||
|
|
||||||
|
@ -117,7 +118,7 @@ class RecordingEditor {
|
||||||
embed() {
|
embed() {
|
||||||
const self = this;
|
const self = this;
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('text!./recordingfields.template.html').then(({default: template}) => {
|
import('./recordingfields.template.html').then(({default: template}) => {
|
||||||
const options = self.options;
|
const options = self.options;
|
||||||
const context = options.parent;
|
const context = options.parent;
|
||||||
context.innerHTML = globalize.translateHtml(template, 'core');
|
context.innerHTML = globalize.translateHtml(template, 'core');
|
||||||
|
@ -162,7 +163,7 @@ function onManageRecordingClick(e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const self = this;
|
const self = this;
|
||||||
import('recordingEditor').then(({default: recordingEditor}) => {
|
import('./recordingeditor').then((recordingEditor) => {
|
||||||
recordingEditor.show(self.TimerId, options.serverId, {
|
recordingEditor.show(self.TimerId, options.serverId, {
|
||||||
enableCancel: false
|
enableCancel: false
|
||||||
}).then(function () {
|
}).then(function () {
|
||||||
|
@ -180,7 +181,7 @@ function onManageSeriesRecordingClick(e) {
|
||||||
|
|
||||||
const self = this;
|
const self = this;
|
||||||
|
|
||||||
import('seriesRecordingEditor').then(({default: seriesRecordingEditor}) => {
|
import('./seriesrecordingeditor').then((seriesRecordingEditor) => {
|
||||||
seriesRecordingEditor.show(self.SeriesTimerId, options.serverId, {
|
seriesRecordingEditor.show(self.SeriesTimerId, options.serverId, {
|
||||||
|
|
||||||
enableCancel: false
|
enableCancel: false
|
||||||
|
@ -225,7 +226,7 @@ function onRecordChange(e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function sendToast(msg) {
|
function sendToast(msg) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(msg);
|
toast(msg);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
|
|
||||||
/*eslint prefer-const: "error"*/
|
/*eslint prefer-const: "error"*/
|
||||||
|
|
||||||
|
@ -28,7 +29,7 @@ function changeRecordingToSeries(apiClient, timerId, programId, confirmTimerCanc
|
||||||
|
|
||||||
function cancelTimerWithConfirmation(timerId, serverId) {
|
function cancelTimerWithConfirmation(timerId, serverId) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('confirm').then(({ default: confirm }) => {
|
import('../confirm/confirm').then((confirm) => {
|
||||||
confirm.default({
|
confirm.default({
|
||||||
|
|
||||||
text: globalize.translate('MessageConfirmRecordingCancellation'),
|
text: globalize.translate('MessageConfirmRecordingCancellation'),
|
||||||
|
@ -48,7 +49,7 @@ function cancelTimerWithConfirmation(timerId, serverId) {
|
||||||
|
|
||||||
function cancelSeriesTimerWithConfirmation(timerId, serverId) {
|
function cancelSeriesTimerWithConfirmation(timerId, serverId) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('confirm').then(({ default: confirm }) => {
|
import('../confirm/confirm').then((confirm) => {
|
||||||
confirm.default({
|
confirm.default({
|
||||||
|
|
||||||
text: globalize.translate('MessageConfirmRecordingCancellation'),
|
text: globalize.translate('MessageConfirmRecordingCancellation'),
|
||||||
|
@ -61,7 +62,7 @@ function cancelSeriesTimerWithConfirmation(timerId, serverId) {
|
||||||
|
|
||||||
const apiClient = window.connectionManager.getApiClient(serverId);
|
const apiClient = window.connectionManager.getApiClient(serverId);
|
||||||
apiClient.cancelLiveTvSeriesTimer(timerId).then(function () {
|
apiClient.cancelLiveTvSeriesTimer(timerId).then(function () {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('SeriesCancelled'));
|
toast(globalize.translate('SeriesCancelled'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -98,14 +99,14 @@ function createRecording(apiClient, programId, isSeries) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function sendToast(msg) {
|
function sendToast(msg) {
|
||||||
import('toast').then(({ default: toast }) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(msg);
|
toast(msg);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function showMultiCancellationPrompt(serverId, programId, timerId, timerStatus, seriesTimerId) {
|
function showMultiCancellationPrompt(serverId, programId, timerId, timerStatus, seriesTimerId) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('dialog').then(({ default: dialog }) => {
|
import('../dialog/dialog').then((dialog) => {
|
||||||
const items = [];
|
const items = [];
|
||||||
|
|
||||||
items.push({
|
items.push({
|
||||||
|
@ -150,7 +151,7 @@ function showMultiCancellationPrompt(serverId, programId, timerId, timerStatus,
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
apiClient.cancelLiveTvSeriesTimer(seriesTimerId).then(function () {
|
apiClient.cancelLiveTvSeriesTimer(seriesTimerId).then(function () {
|
||||||
import('toast').then(({ default: toast }) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('SeriesCancelled'));
|
toast(globalize.translate('SeriesCancelled'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -1,19 +1,20 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import loading from 'loading';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import scrollHelper from 'scrollHelper';
|
import loading from '../loading/loading';
|
||||||
import datetime from 'datetime';
|
import scrollHelper from '../../scripts/scrollHelper';
|
||||||
import 'scrollStyles';
|
import datetime from '../../scripts/datetime';
|
||||||
import 'emby-button';
|
import '../../assets/css/scrollstyles.css';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'emby-input';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-select';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'css!./recordingcreator';
|
import '../formdialog.css';
|
||||||
import 'material-icons';
|
import './recordingcreator.css';
|
||||||
import 'flexStyles';
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
/*eslint prefer-const: "error"*/
|
/*eslint prefer-const: "error"*/
|
||||||
|
|
||||||
|
@ -25,7 +26,7 @@ let currentServerId;
|
||||||
|
|
||||||
function deleteTimer(apiClient, timerId) {
|
function deleteTimer(apiClient, timerId) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('recordingHelper').then(({ default: recordingHelper }) => {
|
import('./recordinghelper').then((recordingHelper) => {
|
||||||
recordingHelper.cancelSeriesTimerWithConfirmation(timerId, apiClient.serverId()).then(resolve, reject);
|
recordingHelper.cancelSeriesTimerWithConfirmation(timerId, apiClient.serverId()).then(resolve, reject);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -150,7 +151,7 @@ function embed(itemId, serverId, options) {
|
||||||
loading.show();
|
loading.show();
|
||||||
options = options || {};
|
options = options || {};
|
||||||
|
|
||||||
import('text!./seriesrecordingeditor.template.html').then(({ default: template }) => {
|
import('./seriesrecordingeditor.template.html').then(({ default: template }) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
@ -192,7 +193,7 @@ function showEditor(itemId, serverId, options) {
|
||||||
loading.show();
|
loading.show();
|
||||||
options = options || {};
|
options = options || {};
|
||||||
|
|
||||||
import('text!./seriesrecordingeditor.template.html').then(({ default: template }) => {
|
import('./seriesrecordingeditor.template.html').then(({ default: template }) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import 'emby-input';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'emby-select';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'material-icons';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-button';
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../formdialog.css';
|
||||||
|
|
||||||
/*eslint prefer-const: "error"*/
|
/*eslint prefer-const: "error"*/
|
||||||
|
|
||||||
|
@ -52,7 +53,7 @@ function getEditorHtml() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then(({default: scrollHelper}) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
@ -85,7 +86,7 @@ function onSubmit(e) {
|
||||||
|
|
||||||
dialogHelper.close(dlg);
|
dialogHelper.close(dlg);
|
||||||
|
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('RefreshQueued'));
|
toast(globalize.translate('RefreshQueued'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -1,20 +1,21 @@
|
||||||
import datetime from 'datetime';
|
import datetime from '../../scripts/datetime';
|
||||||
import backdrop from 'backdrop';
|
import backdrop from '../backdrop/backdrop';
|
||||||
import listView from 'listView';
|
import listView from '../listview/listview';
|
||||||
import imageLoader from 'imageLoader';
|
import imageLoader from '../images/imageLoader';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import nowPlayingHelper from 'nowPlayingHelper';
|
import nowPlayingHelper from '../playback/nowplayinghelper';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import appHost from 'apphost';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import appHost from '../apphost';
|
||||||
import layoutManager from 'layoutManager';
|
import globalize from '../../scripts/globalize';
|
||||||
import * as userSettings from 'userSettings';
|
import layoutManager from '../layoutManager';
|
||||||
import cardBuilder from 'cardBuilder';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import itemContextMenu from 'itemContextMenu';
|
import cardBuilder from '../cardbuilder/cardBuilder';
|
||||||
import 'cardStyle';
|
import itemContextMenu from '../itemContextMenu';
|
||||||
import 'emby-itemscontainer';
|
import '../cardbuilder/card.css';
|
||||||
import 'css!./remotecontrol.css';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
import 'emby-ratingbutton';
|
import './remotecontrol.css';
|
||||||
|
import '../../elements/emby-ratingbutton/emby-ratingbutton';
|
||||||
|
|
||||||
/*eslint prefer-const: "error"*/
|
/*eslint prefer-const: "error"*/
|
||||||
|
|
||||||
|
@ -37,7 +38,7 @@ function showAudioMenu(context, player, button, item) {
|
||||||
return menuItem;
|
return menuItem;
|
||||||
});
|
});
|
||||||
|
|
||||||
import('actionsheet').then(({ default: actionsheet }) => {
|
import('../actionSheet/actionSheet').then((actionsheet) => {
|
||||||
actionsheet.show({
|
actionsheet.show({
|
||||||
items: menuItems,
|
items: menuItems,
|
||||||
positionTo: button,
|
positionTo: button,
|
||||||
|
@ -69,7 +70,7 @@ function showSubtitleMenu(context, player, button, item) {
|
||||||
selected: currentIndex == null
|
selected: currentIndex == null
|
||||||
});
|
});
|
||||||
|
|
||||||
import('actionsheet').then(({ default: actionsheet }) => {
|
import('../actionSheet/actionSheet').then((actionsheet) => {
|
||||||
actionsheet.show({
|
actionsheet.show({
|
||||||
items: menuItems,
|
items: menuItems,
|
||||||
positionTo: button,
|
positionTo: button,
|
||||||
|
@ -693,7 +694,7 @@ export default function () {
|
||||||
}
|
}
|
||||||
|
|
||||||
function savePlaylist() {
|
function savePlaylist() {
|
||||||
import('playlistEditor').then(({ default: playlistEditor }) => {
|
import('../playlisteditor/playlisteditor').then((playlistEditor) => {
|
||||||
getSaveablePlaylistItems().then(function (items) {
|
getSaveablePlaylistItems().then(function (items) {
|
||||||
const serverId = items.length ? items[0].ServerId : ApiClient.serverId();
|
const serverId = items.length ? items[0].ServerId : ApiClient.serverId();
|
||||||
new playlistEditor({
|
new playlistEditor({
|
||||||
|
@ -863,7 +864,7 @@ export default function () {
|
||||||
}, currentPlayer);
|
}, currentPlayer);
|
||||||
form.querySelector('input').value = '';
|
form.querySelector('input').value = '';
|
||||||
|
|
||||||
import('toast').then(({ default: toast }) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast('Message sent.');
|
toast('Message sent.');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -882,7 +883,7 @@ export default function () {
|
||||||
}, currentPlayer);
|
}, currentPlayer);
|
||||||
form.querySelector('input').value = '';
|
form.querySelector('input').value = '';
|
||||||
|
|
||||||
import('toast').then(({ default: toast }) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast('Text sent.');
|
toast('Text sent.');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -5,9 +5,9 @@
|
||||||
* @module components/scrollManager
|
* @module components/scrollManager
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import dom from 'dom';
|
import dom from '../scripts/dom';
|
||||||
import browser from 'browser';
|
import browser from '../scripts/browser';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from './layoutManager';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Scroll time in ms.
|
* Scroll time in ms.
|
||||||
|
@ -223,7 +223,7 @@ import layoutManager from 'layoutManager';
|
||||||
let parent = element.parentElement;
|
let parent = element.parentElement;
|
||||||
|
|
||||||
while (parent) {
|
while (parent) {
|
||||||
// Skip 'emby-scroller' because it scrolls by itself
|
// Skip '../../elements/emby-scroller/emby-scroller' because it scrolls by itself
|
||||||
if (!parent.classList.contains('emby-scroller') &&
|
if (!parent.classList.contains('emby-scroller') &&
|
||||||
parent[nameScroll] > parent[nameClient] && parent.classList.contains(nameClass)) {
|
parent[nameScroll] > parent[nameClient] && parent.classList.contains(nameClass)) {
|
||||||
return parent;
|
return parent;
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import browser from 'browser';
|
import browser from '../../scripts/browser';
|
||||||
import AlphaPicker from 'alphaPicker';
|
import AlphaPicker from '../alphaPicker/alphaPicker';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'flexStyles';
|
import '../../assets/css/flexstyles.css';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
import 'css!./searchfields';
|
import './searchfields.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ import 'css!./searchfields';
|
||||||
}
|
}
|
||||||
|
|
||||||
function embed(elem, instance, options) {
|
function embed(elem, instance, options) {
|
||||||
import('text!./searchfields.template.html').then(({default: template}) => {
|
import('./searchfields.template.html').then(({default: template}) => {
|
||||||
let html = globalize.translateHtml(template, 'core');
|
let html = globalize.translateHtml(template, 'core');
|
||||||
|
|
||||||
if (browser.tizen || browser.orsay) {
|
if (browser.tizen || browser.orsay) {
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import cardBuilder from 'cardBuilder';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import appRouter from 'appRouter';
|
import cardBuilder from '../cardbuilder/cardBuilder';
|
||||||
import 'emby-scroller';
|
import appRouter from '../appRouter';
|
||||||
import 'emby-itemscontainer';
|
import '../../elements/emby-scroller/emby-scroller';
|
||||||
import 'emby-button';
|
import '../../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
import '../../elements/emby-button/emby-button';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
@ -584,7 +585,7 @@ import 'emby-button';
|
||||||
}
|
}
|
||||||
|
|
||||||
function embed(elem, instance, options) {
|
function embed(elem, instance, options) {
|
||||||
import('text!./searchresults.template.html').then(({default: template}) => {
|
import('./searchresults.template.html').then(({default: template}) => {
|
||||||
if (!enableScrollX()) {
|
if (!enableScrollX()) {
|
||||||
template = replaceAll(template, 'data-horizontal="true"', 'data-horizontal="false"');
|
template = replaceAll(template, 'data-horizontal="true"', 'data-horizontal="false"');
|
||||||
template = replaceAll(template, 'itemsContainer scrollSlider', 'itemsContainer scrollSlider vertical-wrap');
|
template = replaceAll(template, 'itemsContainer scrollSlider', 'itemsContainer scrollSlider vertical-wrap');
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import globalize from 'globalize';
|
import globalize from '../scripts/globalize';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper for handling settings.
|
* Helper for handling settings.
|
||||||
|
|
|
@ -5,12 +5,13 @@
|
||||||
* @module components/shortcuts
|
* @module components/shortcuts
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from './playback/playbackmanager';
|
||||||
import inputManager from 'inputManager';
|
import inputManager from '../scripts/inputManager';
|
||||||
import appRouter from 'appRouter';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import globalize from 'globalize';
|
import appRouter from './appRouter';
|
||||||
import dom from 'dom';
|
import globalize from '../scripts/globalize';
|
||||||
import recordingHelper from 'recordingHelper';
|
import dom from '../scripts/dom';
|
||||||
|
import recordingHelper from './recordingcreator/recordinghelper';
|
||||||
|
|
||||||
function playAllFromHere(card, serverId, queue) {
|
function playAllFromHere(card, serverId, queue) {
|
||||||
const parent = card.parentNode;
|
const parent = card.parentNode;
|
||||||
|
@ -69,7 +70,8 @@ import recordingHelper from 'recordingHelper';
|
||||||
}
|
}
|
||||||
|
|
||||||
function showProgramDialog(item) {
|
function showProgramDialog(item) {
|
||||||
import('recordingCreator').then(({default:recordingCreator}) => {
|
import('./recordingcreator/recordingcreator' +
|
||||||
|
'').then(({default:recordingCreator}) => {
|
||||||
recordingCreator.show(item.Id, item.ServerId);
|
recordingCreator.show(item.Id, item.ServerId);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -109,7 +111,7 @@ import recordingHelper from 'recordingHelper';
|
||||||
item.PlaylistItemId = elem ? elem.getAttribute('data-playlistitemid') : null;
|
item.PlaylistItemId = elem ? elem.getAttribute('data-playlistitemid') : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
import('itemContextMenu').then(({default: itemContextMenu}) => {
|
import('./itemContextMenu').then((itemContextMenu) => {
|
||||||
window.connectionManager.getApiClient(item.ServerId).getCurrentUser().then(user => {
|
window.connectionManager.getApiClient(item.ServerId).getCurrentUser().then(user => {
|
||||||
itemContextMenu.show(Object.assign({
|
itemContextMenu.show(Object.assign({
|
||||||
item: item,
|
item: item,
|
||||||
|
@ -153,7 +155,7 @@ import recordingHelper from 'recordingHelper';
|
||||||
function showPlayMenu(card, target) {
|
function showPlayMenu(card, target) {
|
||||||
const item = getItemInfoFromCard(card);
|
const item = getItemInfoFromCard(card);
|
||||||
|
|
||||||
import('playMenu').then(({default: playMenu}) => {
|
import('./playmenu').then((playMenu) => {
|
||||||
playMenu.show({
|
playMenu.show({
|
||||||
|
|
||||||
item: item,
|
item: item,
|
||||||
|
@ -163,7 +165,7 @@ import recordingHelper from 'recordingHelper';
|
||||||
}
|
}
|
||||||
|
|
||||||
function sendToast(text) {
|
function sendToast(text) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('./toast/toast').then((toast) => {
|
||||||
toast(text);
|
toast(text);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -269,7 +271,7 @@ import recordingHelper from 'recordingHelper';
|
||||||
}
|
}
|
||||||
|
|
||||||
function addToPlaylist(item) {
|
function addToPlaylist(item) {
|
||||||
import('playlistEditor').then(({default: playlistEditor}) => {
|
import('./playlisteditor/playlisteditor').then((playlistEditor) => {
|
||||||
new playlistEditor().show({
|
new playlistEditor().show({
|
||||||
items: [item.Id],
|
items: [item.Id],
|
||||||
serverId: item.ServerId
|
serverId: item.ServerId
|
||||||
|
@ -294,16 +296,16 @@ import recordingHelper from 'recordingHelper';
|
||||||
|
|
||||||
if (item.Type === 'Timer') {
|
if (item.Type === 'Timer') {
|
||||||
if (item.ProgramId) {
|
if (item.ProgramId) {
|
||||||
import('recordingCreator').then(({default: recordingCreator}) => {
|
import('./recordingcreator/recordingcreator').then((recordingCreator) => {
|
||||||
recordingCreator.show(item.ProgramId, serverId).then(resolve, reject);
|
recordingCreator.show(item.ProgramId, serverId).then(resolve, reject);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
import('recordingEditor').then(({default: recordingEditor}) => {
|
import('./recordingcreator/recordingeditor').then((recordingEditor) => {
|
||||||
recordingEditor.show(item.Id, serverId).then(resolve, reject);
|
recordingEditor.show(item.Id, serverId).then(resolve, reject);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
import('metadataEditor').then(({default: metadataEditor}) => {
|
import('./metadataEditor/metadataEditor').then((metadataEditor) => {
|
||||||
metadataEditor.show(item.Id, serverId).then(resolve, reject);
|
metadataEditor.show(item.Id, serverId).then(resolve, reject);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,16 +2,17 @@
|
||||||
* Image viewer component
|
* Image viewer component
|
||||||
* @module components/slideshow/slideshow
|
* @module components/slideshow/slideshow
|
||||||
*/
|
*/
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import inputManager from 'inputManager';
|
import inputManager from '../../scripts/inputManager';
|
||||||
import layoutManager from 'layoutManager';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import focusManager from 'focusManager';
|
import layoutManager from '../layoutManager';
|
||||||
import browser from 'browser';
|
import focusManager from '../focusManager';
|
||||||
import appHost from 'apphost';
|
import browser from '../../scripts/browser';
|
||||||
import dom from 'dom';
|
import appHost from '../apphost';
|
||||||
import 'css!./style';
|
import dom from '../../scripts/dom';
|
||||||
import 'material-icons';
|
import './style.css';
|
||||||
import 'paper-icon-button-light';
|
import 'material-design-icons-iconfont';
|
||||||
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Name of transition event.
|
* Name of transition event.
|
||||||
|
@ -431,7 +432,7 @@ export default function (options) {
|
||||||
function download() {
|
function download() {
|
||||||
const imageInfo = getCurrentImageInfo();
|
const imageInfo = getCurrentImageInfo();
|
||||||
|
|
||||||
import('fileDownloader').then(({default: fileDownloader}) => {
|
import('../../scripts/fileDownloader').then((fileDownloader) => {
|
||||||
fileDownloader.download([imageInfo]);
|
fileDownloader.download([imageInfo]);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import * as userSettings from 'userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import 'emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'material-icons';
|
import 'material-design-icons-iconfont';
|
||||||
import 'css!./../formdialog';
|
import '../formdialog.css';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'flexStyles';
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
function onSubmit(e) {
|
function onSubmit(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
@ -22,7 +22,7 @@ function initEditor(context, settings) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then(({default: scrollHelper}) => {
|
import('../../scripts/scrollHelper').then((scrollHelper) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
@ -44,7 +44,7 @@ function saveValues(context, settingsKey) {
|
||||||
class SortMenu {
|
class SortMenu {
|
||||||
show(options) {
|
show(options) {
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('text!./sortmenu.template.html').then(({default: template}) => {
|
import('./sortmenu.template.html').then(({default: template}) => {
|
||||||
const dialogOptions = {
|
const dialogOptions = {
|
||||||
removeOnClose: true,
|
removeOnClose: true,
|
||||||
scrollY: false
|
scrollY: false
|
||||||
|
|
|
@ -1,19 +1,20 @@
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from '../dialogHelper/dialogHelper';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import * as userSettings from 'userSettings';
|
import * as userSettings from '../../scripts/settings/userSettings';
|
||||||
import loading from 'loading';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import focusManager from 'focusManager';
|
import loading from '../loading/loading';
|
||||||
import dom from 'dom';
|
import focusManager from '../focusManager';
|
||||||
import 'emby-select';
|
import dom from '../../scripts/dom';
|
||||||
import 'listViewStyle';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'paper-icon-button-light';
|
import '../listview/listview.css';
|
||||||
import 'css!./../formdialog';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'material-icons';
|
import '../formdialog.css';
|
||||||
import 'css!./subtitleeditor';
|
import 'material-design-icons-iconfont';
|
||||||
import 'emby-button';
|
import './subtitleeditor.css';
|
||||||
import 'flexStyles';
|
import '../../elements/emby-button/emby-button';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
let currentItem;
|
let currentItem;
|
||||||
let hasChanges;
|
let hasChanges;
|
||||||
|
@ -30,7 +31,7 @@ function downloadRemoteSubtitles(context, id) {
|
||||||
}).then(function () {
|
}).then(function () {
|
||||||
hasChanges = true;
|
hasChanges = true;
|
||||||
|
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('MessageDownloadQueued'));
|
toast(globalize.translate('MessageDownloadQueued'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -41,7 +42,7 @@ function downloadRemoteSubtitles(context, id) {
|
||||||
function deleteLocalSubtitle(context, index) {
|
function deleteLocalSubtitle(context, index) {
|
||||||
const msg = globalize.translate('MessageAreYouSureDeleteSubtitles');
|
const msg = globalize.translate('MessageAreYouSureDeleteSubtitles');
|
||||||
|
|
||||||
import('confirm').then(({default: confirm}) => {
|
import('../confirm/confirm').then((confirm) => {
|
||||||
confirm({
|
confirm({
|
||||||
|
|
||||||
title: globalize.translate('ConfirmDeletion'),
|
title: globalize.translate('ConfirmDeletion'),
|
||||||
|
@ -329,7 +330,7 @@ function showDownloadOptions(button, context, subtitleId) {
|
||||||
id: 'download'
|
id: 'download'
|
||||||
});
|
});
|
||||||
|
|
||||||
import('actionsheet').then(({default: actionsheet}) => {
|
import('../actionSheet/actionSheet').then((actionsheet) => {
|
||||||
actionsheet.show({
|
actionsheet.show({
|
||||||
items: items,
|
items: items,
|
||||||
positionTo: button
|
positionTo: button
|
||||||
|
@ -347,7 +348,7 @@ function showDownloadOptions(button, context, subtitleId) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function centerFocus(elem, horiz, on) {
|
function centerFocus(elem, horiz, on) {
|
||||||
import('scrollHelper').then(({default: scrollHelper}) => {
|
import('../../scripts/scrollHelper').then(({default: scrollHelper}) => {
|
||||||
const fn = on ? 'on' : 'off';
|
const fn = on ? 'on' : 'off';
|
||||||
scrollHelper.centerFocus[fn](elem, horiz);
|
scrollHelper.centerFocus[fn](elem, horiz);
|
||||||
});
|
});
|
||||||
|
@ -431,7 +432,7 @@ function showEditor(itemId, serverId) {
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
import('text!./subtitleeditor.template.html').then(({default: template}) => {
|
import('./subtitleeditor.template.html').then(({default: template}) => {
|
||||||
showEditorInternal(itemId, serverId, template).then(resolve, reject);
|
showEditorInternal(itemId, serverId, template).then(resolve, reject);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,20 +1,21 @@
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import appHost from 'apphost';
|
import appHost from '../apphost';
|
||||||
import appSettings from 'appSettings';
|
import appSettings from '../../scripts/settings/appSettings';
|
||||||
import focusManager from 'focusManager';
|
import focusManager from '../focusManager';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import subtitleAppearanceHelper from 'subtitleAppearanceHelper';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import settingsHelper from 'settingsHelper';
|
import subtitleAppearanceHelper from './subtitleappearancehelper';
|
||||||
import dom from 'dom';
|
import settingsHelper from '../settingshelper';
|
||||||
import events from 'events';
|
import dom from '../../scripts/dom';
|
||||||
import 'listViewStyle';
|
import events from 'jellyfin-apiclient';
|
||||||
import 'emby-select';
|
import '../listview/listview.css';
|
||||||
import 'emby-slider';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-input';
|
import '../../elements/emby-slider/emby-slider';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'flexStyles';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'css!./subtitlesettings';
|
import '../../assets/css/flexstyles.css';
|
||||||
|
import './subtitlesettings.css';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Subtitle settings.
|
* Subtitle settings.
|
||||||
|
@ -87,7 +88,7 @@ function save(instance, context, userId, userSettings, apiClient, enableSaveConf
|
||||||
saveUser(context, user, userSettings, instance.appearanceKey, apiClient).then(function () {
|
saveUser(context, user, userSettings, instance.appearanceKey, apiClient).then(function () {
|
||||||
loading.hide();
|
loading.hide();
|
||||||
if (enableSaveConfirmation) {
|
if (enableSaveConfirmation) {
|
||||||
import('toast').then(({default: toast}) => {
|
import('../toast/toast').then((toast) => {
|
||||||
toast(globalize.translate('SettingsSaved'));
|
toast(globalize.translate('SettingsSaved'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -158,7 +159,7 @@ function hideSubtitlePreview(persistent) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function embed(options, self) {
|
function embed(options, self) {
|
||||||
import('text!./subtitlesettings.template.html').then(({default: template}) => {
|
import('./subtitlesettings.template.html').then(({default: template}) => {
|
||||||
options.element.classList.add('subtitlesettings');
|
options.element.classList.add('subtitlesettings');
|
||||||
options.element.innerHTML = globalize.translateHtml(template, 'core');
|
options.element.innerHTML = globalize.translateHtml(template, 'core');
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import playbackManager from 'playbackManager';
|
|
||||||
import layoutManager from 'layoutManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import template from 'text!./subtitlesync.template.html';
|
import layoutManager from '../layoutManager';
|
||||||
import 'css!./subtitlesync';
|
import template from './subtitlesync.template.html';
|
||||||
|
import './subtitlesync.css';
|
||||||
|
|
||||||
let player;
|
let player;
|
||||||
let subtitleSyncSlider;
|
let subtitleSyncSlider;
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import playbackManager from 'playbackManager';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import syncPlayManager from 'syncPlayManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import loading from 'loading';
|
import syncPlayManager from './syncPlayManager';
|
||||||
import toast from 'toast';
|
import loading from '../loading/loading';
|
||||||
import actionsheet from 'actionsheet';
|
import toast from '../toast/toast';
|
||||||
import globalize from 'globalize';
|
import actionsheet from '../actionSheet/actionSheet';
|
||||||
import playbackPermissionManager from 'playbackPermissionManager';
|
import globalize from '../../scripts/globalize';
|
||||||
|
import playbackPermissionManager from './playbackPermissionManager';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets active player id.
|
* Gets active player id.
|
||||||
|
@ -158,7 +159,7 @@ events.on(syncPlayManager, 'enabled', function (e, enabled) {
|
||||||
* Shows a menu to handle SyncPlay groups.
|
* Shows a menu to handle SyncPlay groups.
|
||||||
* @param {HTMLElement} button - Element where to place the menu.
|
* @param {HTMLElement} button - Element where to place the menu.
|
||||||
*/
|
*/
|
||||||
export function show (button) {
|
export default function show (button) {
|
||||||
loading.show();
|
loading.show();
|
||||||
|
|
||||||
// TODO: should feature be disabled if playback permission is missing?
|
// TODO: should feature be disabled if playback permission is missing?
|
||||||
|
|
|
@ -3,11 +3,12 @@
|
||||||
* @module components/syncPlay/syncPlayManager
|
* @module components/syncPlay/syncPlayManager
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
import playbackManager from 'playbackManager';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import timeSyncManager from 'timeSyncManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import toast from 'toast';
|
import timeSyncManager from './timeSyncManager';
|
||||||
import globalize from 'globalize';
|
import toast from '../toast/toast';
|
||||||
|
import globalize from '../../scripts//globalize';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Waits for an event to be triggered on an object. An optional timeout can specified after which the promise is rejected.
|
* Waits for an event to be triggered on an object. An optional timeout can specified after which the promise is rejected.
|
||||||
|
|
|
@ -3,7 +3,8 @@
|
||||||
* @module components/syncPlay/timeSyncManager
|
* @module components/syncPlay/timeSyncManager
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import events from 'events';
|
import events from 'jellyfin-apiclient';
|
||||||
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Time estimation
|
* Time estimation
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import backdrop from 'backdrop';
|
import backdrop from '../backdrop/backdrop';
|
||||||
import * as mainTabsManager from 'mainTabsManager';
|
import * as mainTabsManager from '../maintabsmanager';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from '../layoutManager';
|
||||||
import 'emby-tabs';
|
import '../../elements/emby-tabs/emby-tabs';
|
||||||
|
|
||||||
function onViewDestroy(e) {
|
function onViewDestroy(e) {
|
||||||
const tabControllers = this.tabControllers;
|
const tabControllers = this.tabControllers;
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from './playback/playbackmanager';
|
||||||
import * as userSettings from 'userSettings';
|
import * as userSettings from '../scripts/settings/userSettings';
|
||||||
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
|
|
||||||
let currentOwnerId;
|
let currentOwnerId;
|
||||||
let currentThemeIds = [];
|
let currentThemeIds = [];
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import 'css!./toast';
|
import './toast';
|
||||||
|
|
||||||
function remove(elem) {
|
function remove(elem) {
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
|
@ -21,7 +21,7 @@ export default function (options) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const elem = document.createElement('div');
|
const elem = document.createElement('div');
|
||||||
elem.classList.add('toast');
|
elem.classList.add('../toast/toast');
|
||||||
elem.innerHTML = options.text;
|
elem.innerHTML = options.text;
|
||||||
|
|
||||||
document.body.appendChild(elem);
|
document.body.appendChild(elem);
|
||||||
|
|
|
@ -1,16 +1,17 @@
|
||||||
import dialogHelper from 'dialogHelper';
|
import dialogHelper from './dialogHelper/dialogHelper';
|
||||||
import dom from 'dom';
|
import dom from '../scripts/dom';
|
||||||
import layoutManager from 'layoutManager';
|
import layoutManager from './layoutManager';
|
||||||
import globalize from 'globalize';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import loading from 'loading';
|
import globalize from '../scripts/globalize';
|
||||||
import browser from 'browser';
|
import loading from './loading/loading';
|
||||||
import focusManager from 'focusManager';
|
import browser from '../scripts/browser';
|
||||||
import scrollHelper from 'scrollHelper';
|
import focusManager from './focusManager';
|
||||||
import 'material-icons';
|
import scrollHelper from '../scripts/scrollHelper';
|
||||||
import 'formDialogStyle';
|
import 'material-design-icons-iconfont';
|
||||||
import 'emby-button';
|
import './formdialog.css';
|
||||||
import 'emby-itemscontainer';
|
import '../elements/emby-button/emby-button';
|
||||||
import 'cardStyle';
|
import '../elements/emby-itemscontainer/emby-itemscontainer';
|
||||||
|
import './cardbuilder/card.css';
|
||||||
|
|
||||||
const enableFocusTransform = !browser.slow && !browser.edge;
|
const enableFocusTransform = !browser.slow && !browser.edge;
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
import $ from 'jQuery';
|
import 'jquery';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'listViewStyle';
|
import '../listview/listview.css';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
import 'emby-select';
|
import '../../elements/emby-select/emby-select';
|
||||||
import 'emby-button';
|
import '../../elements/emby-button/emby-button';
|
||||||
import 'flexStyles';
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
export default function (page, providerId, options) {
|
export default function (page, providerId, options) {
|
||||||
function reload() {
|
function reload() {
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
import $ from 'jQuery';
|
import 'jquery';
|
||||||
import loading from 'loading';
|
import loading from '../loading/loading';
|
||||||
import globalize from 'globalize';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'emby-checkbox';
|
import '../../elements/emby-checkbox/emby-checkbox';
|
||||||
import 'emby-input';
|
import '../../elements/emby-input/emby-input';
|
||||||
import 'listViewStyle';
|
import '../listview/listview.css';
|
||||||
import 'paper-icon-button-light';
|
import '../../elements/emby-button/paper-icon-button-light';
|
||||||
|
|
||||||
export default function (page, providerId, options) {
|
export default function (page, providerId, options) {
|
||||||
function getListingProvider(config, id) {
|
function getListingProvider(config, id) {
|
||||||
|
@ -143,7 +143,7 @@ export default function (page, providerId, options) {
|
||||||
function onSelectPathClick(e) {
|
function onSelectPathClick(e) {
|
||||||
const page = $(e.target).parents('.xmltvForm')[0];
|
const page = $(e.target).parents('.xmltvForm')[0];
|
||||||
|
|
||||||
import('directorybrowser').then(({default: directoryBrowser}) => {
|
import('../directorybrowser/directorybrowser').then((directoryBrowser) => {
|
||||||
const picker = new directoryBrowser();
|
const picker = new directoryBrowser();
|
||||||
picker.show({
|
picker.show({
|
||||||
includeFiles: true,
|
includeFiles: true,
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
import dom from 'dom';
|
import dom from '../../scripts/dom';
|
||||||
import playbackManager from 'playbackManager';
|
import playbackManager from '../playback/playbackmanager';
|
||||||
import events from 'events';
|
import connectionManager from 'jellyfin-apiclient';
|
||||||
import mediaInfo from 'mediaInfo';
|
import events from 'jellyfin-apiclient';
|
||||||
import layoutManager from 'layoutManager';
|
import mediaInfo from '../mediainfo/mediainfo';
|
||||||
import focusManager from 'focusManager';
|
import layoutManager from '../layoutManager';
|
||||||
import globalize from 'globalize';
|
import focusManager from '../focusManager';
|
||||||
import itemHelper from 'itemHelper';
|
import globalize from '../../scripts/globalize';
|
||||||
import 'css!./upnextdialog';
|
import itemHelper from '../itemHelper';
|
||||||
import 'emby-button';
|
import './upnextdialog.css';
|
||||||
import 'flexStyles';
|
import '../../elements/emby-button/emby-button';
|
||||||
|
import '../../assets/css/flexstyles.css';
|
||||||
|
|
||||||
/* eslint-disable indent */
|
/* eslint-disable indent */
|
||||||
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue