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

Merge pull request #1015 from jellyfin/es6

Convert all config files to ES6 and remove unused controller
This commit is contained in:
dkanada 2020-04-09 00:43:30 +09:00 committed by GitHub
commit eb1a9d2c95
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 137 additions and 155 deletions

View file

@ -2,8 +2,7 @@ trigger:
batch: true
branches:
include:
- master
- release-*
- '*'
tags:
include:
- '*'
@ -13,12 +12,9 @@ pr:
- '*'
jobs:
- job: build
- job: Build
displayName: 'Build'
pool:
vmImage: 'ubuntu-latest'
strategy:
matrix:
Development:
@ -27,7 +23,9 @@ jobs:
BuildConfiguration: production
Standalone:
BuildConfiguration: standalone
maxParallel: 3
pool:
vmImage: 'ubuntu-latest'
steps:
- task: NodeTool@0
@ -63,16 +61,14 @@ jobs:
- script: 'mv dist jellyfin-web'
displayName: 'Rename Directory'
condition: succeeded()
- task: PublishPipelineArtifact@1
displayName: 'Publish Release'
condition: succeeded()
inputs:
targetPath: '$(Build.SourcesDirectory)/jellyfin-web'
artifactName: 'jellyfin-web-$(BuildConfiguration)'
- job: lint
- job: Lint
displayName: 'Lint'
pool:

View file

@ -89,9 +89,12 @@
"src/components/filedownloader.js",
"src/components/filesystem.js",
"src/components/input/keyboardnavigation.js",
"src/components/scrollManager.js",
"src/components/sanatizefilename.js",
"src/scripts/settings/webSettings.js",
"src/components/scrollManager.js",
"src/scripts/settings/appSettings.js",
"src/scripts/settings/userSettings.js",
"src/scripts/imagehelper.js",
"src/scripts/dfnshelper.js"
],
"plugins": [

View file

@ -1,4 +1,4 @@
define(["displaySettings", "userSettingsBuilder", "userSettings", "autoFocuser"], function (DisplaySettings, userSettingsBuilder, currentUserSettings, autoFocuser) {
define(["displaySettings", "userSettings", "autoFocuser"], function (DisplaySettings, userSettings, autoFocuser) {
"use strict";
return function (view, params) {
@ -11,7 +11,7 @@ define(["displaySettings", "userSettingsBuilder", "userSettings", "autoFocuser"]
var settingsInstance;
var hasChanges;
var userId = params.userId || ApiClient.getCurrentUserId();
var userSettings = userId === ApiClient.getCurrentUserId() ? currentUserSettings : new userSettingsBuilder();
var currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new userSettings();
view.addEventListener("viewshow", function () {
window.addEventListener("beforeunload", onBeforeUnload);
@ -22,7 +22,7 @@ define(["displaySettings", "userSettingsBuilder", "userSettings", "autoFocuser"]
serverId: ApiClient.serverId(),
userId: userId,
element: view.querySelector(".settingsContainer"),
userSettings: userSettings,
userSettings: currentSettings,
enableSaveButton: false,
enableSaveConfirmation: false,
autoFocus: autoFocuser.isEnabled()

View file

@ -1,4 +1,4 @@
define(["homescreenSettings", "userSettingsBuilder", "dom", "globalize", "loading", "userSettings", "autoFocuser", "listViewStyle"], function (HomescreenSettings, userSettingsBuilder, dom, globalize, loading, currentUserSettings, autoFocuser) {
define(["homescreenSettings", "dom", "globalize", "loading", "userSettings", "autoFocuser", "listViewStyle"], function (HomescreenSettings, dom, globalize, loading, userSettings, autoFocuser) {
"use strict";
return function (view, params) {
@ -11,7 +11,7 @@ define(["homescreenSettings", "userSettingsBuilder", "dom", "globalize", "loadin
var homescreenSettingsInstance;
var hasChanges;
var userId = params.userId || ApiClient.getCurrentUserId();
var userSettings = userId === ApiClient.getCurrentUserId() ? currentUserSettings : new userSettingsBuilder();
var currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new userSettings();
view.addEventListener("viewshow", function () {
window.addEventListener("beforeunload", onBeforeUnload);
@ -22,7 +22,7 @@ define(["homescreenSettings", "userSettingsBuilder", "dom", "globalize", "loadin
serverId: ApiClient.serverId(),
userId: userId,
element: view.querySelector(".homeScreenSettingsContainer"),
userSettings: userSettings,
userSettings: currentSettings,
enableSaveButton: false,
enableSaveConfirmation: false,
autoFocus: autoFocuser.isEnabled()

View file

@ -1,4 +1,4 @@
define(["playbackSettings", "userSettingsBuilder", "dom", "globalize", "loading", "userSettings", "autoFocuser", "listViewStyle"], function (PlaybackSettings, userSettingsBuilder, dom, globalize, loading, currentUserSettings, autoFocuser) {
define(["playbackSettings", "dom", "globalize", "loading", "userSettings", "autoFocuser", "listViewStyle"], function (PlaybackSettings, dom, globalize, loading, userSettings, autoFocuser) {
"use strict";
return function (view, params) {
@ -11,7 +11,7 @@ define(["playbackSettings", "userSettingsBuilder", "dom", "globalize", "loading"
var settingsInstance;
var hasChanges;
var userId = params.userId || ApiClient.getCurrentUserId();
var userSettings = userId === ApiClient.getCurrentUserId() ? currentUserSettings : new userSettingsBuilder();
var currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new userSettings();
view.addEventListener("viewshow", function () {
window.addEventListener("beforeunload", onBeforeUnload);
@ -22,7 +22,7 @@ define(["playbackSettings", "userSettingsBuilder", "dom", "globalize", "loading"
serverId: ApiClient.serverId(),
userId: userId,
element: view.querySelector(".settingsContainer"),
userSettings: userSettings,
userSettings: currentSettings,
enableSaveButton: false,
enableSaveConfirmation: false,
autoFocus: autoFocuser.isEnabled()

View file

@ -1,4 +1,4 @@
define(["subtitleSettings", "userSettingsBuilder", "userSettings", "autoFocuser"], function (SubtitleSettings, userSettingsBuilder, currentUserSettings, autoFocuser) {
define(["subtitleSettings", "userSettings", "autoFocuser"], function (SubtitleSettings, userSettings, autoFocuser) {
"use strict";
return function (view, params) {
@ -11,7 +11,7 @@ define(["subtitleSettings", "userSettingsBuilder", "userSettings", "autoFocuser"
var subtitleSettingsInstance;
var hasChanges;
var userId = params.userId || ApiClient.getCurrentUserId();
var userSettings = userId === ApiClient.getCurrentUserId() ? currentUserSettings : new userSettingsBuilder();
var currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new userSettings();
view.addEventListener("viewshow", function () {
window.addEventListener("beforeunload", onBeforeUnload);
@ -22,7 +22,7 @@ define(["subtitleSettings", "userSettingsBuilder", "userSettings", "autoFocuser"
serverId: ApiClient.serverId(),
userId: userId,
element: view.querySelector(".settingsContainer"),
userSettings: userSettings,
userSettings: currentSettings,
enableSaveButton: false,
enableSaveConfirmation: false,
autoFocus: autoFocuser.isEnabled()

View file

@ -1,7 +1,8 @@
define(["browser"], function (browser) {
"use strict";
/* eslint-disable indent */
function getDeviceIcon(device) {
import browser from 'browser';
export function getDeviceIcon(device) {
var baseUrl = "assets/img/devices/";
switch (device.AppName || device.Client) {
case "Samsung Smart TV":
@ -42,7 +43,7 @@ define(["browser"], function (browser) {
}
}
function getLibraryIcon(library) {
export function getLibraryIcon(library) {
switch (library) {
case "movies":
return "video_library";
@ -71,8 +72,9 @@ define(["browser"], function (browser) {
}
}
return {
/* eslint-enable indent */
export default {
getDeviceIcon: getDeviceIcon,
getLibraryIcon: getLibraryIcon
};
});
};

View file

@ -1,5 +1,7 @@
define(['appStorage', 'events'], function (appStorage, events) {
'use strict';
/* eslint-disable indent */
import appStorage from 'appStorage';
import events from 'events';
function getKey(name, userId) {
if (userId) {
@ -9,26 +11,23 @@ define(['appStorage', 'events'], function (appStorage, events) {
return name;
}
function AppSettings() {
}
AppSettings.prototype.enableAutoLogin = function (val) {
export function enableAutoLogin(val) {
if (val != null) {
this.set('enableAutoLogin', val.toString());
}
return this.get('enableAutoLogin') !== 'false';
};
}
AppSettings.prototype.enableSystemExternalPlayers = function (val) {
export function enableSystemExternalPlayers(val) {
if (val !== null) {
this.set('enableSystemExternalPlayers', val.toString());
}
return this.get('enableSystemExternalPlayers') === 'true';
};
}
AppSettings.prototype.enableAutomaticBitrateDetection = function (isInNetwork, mediaType, val) {
export function enableAutomaticBitrateDetection(isInNetwork, mediaType, val) {
var key = 'enableautobitratebitrate-' + mediaType + '-' + isInNetwork;
if (val != null) {
if (isInNetwork && mediaType === 'Audio') {
@ -43,9 +42,9 @@ define(['appStorage', 'events'], function (appStorage, events) {
} else {
return this.get(key) !== 'false';
}
};
}
AppSettings.prototype.maxStreamingBitrate = function (isInNetwork, mediaType, val) {
export function maxStreamingBitrate(isInNetwork, mediaType, val) {
var key = 'maxbitrate-' + mediaType + '-' + isInNetwork;
if (val != null) {
if (isInNetwork && mediaType === 'Audio') {
@ -61,43 +60,43 @@ define(['appStorage', 'events'], function (appStorage, events) {
} else {
return parseInt(this.get(key) || '0') || 1500000;
}
};
}
AppSettings.prototype.maxStaticMusicBitrate = function (val) {
export function maxStaticMusicBitrate(val) {
if (val !== undefined) {
this.set('maxStaticMusicBitrate', val);
}
var defaultValue = 320000;
return parseInt(this.get('maxStaticMusicBitrate') || defaultValue.toString()) || defaultValue;
};
}
AppSettings.prototype.maxChromecastBitrate = function (val) {
export function maxChromecastBitrate(val) {
if (val != null) {
this.set('chromecastBitrate1', val);
}
val = this.get('chromecastBitrate1');
return val ? parseInt(val) : null;
};
}
AppSettings.prototype.syncOnlyOnWifi = function (val) {
export function syncOnlyOnWifi(val) {
if (val != null) {
this.set('syncOnlyOnWifi', val.toString());
}
return this.get('syncOnlyOnWifi') !== 'false';
};
}
AppSettings.prototype.syncPath = function (val) {
export function syncPath(val) {
if (val != null) {
this.set('syncPath', val);
}
return this.get('syncPath');
};
}
AppSettings.prototype.cameraUploadServers = function (val) {
export function cameraUploadServers(val) {
if (val != null) {
this.set('cameraUploadServers', val.join(','));
}
@ -108,28 +107,42 @@ define(['appStorage', 'events'], function (appStorage, events) {
}
return [];
};
}
AppSettings.prototype.runAtStartup = function (val) {
export function runAtStartup(val) {
if (val != null) {
this.set('runatstartup', val.toString());
}
return this.get('runatstartup') === 'true';
};
}
AppSettings.prototype.set = function (name, value, userId) {
export function set(name, value, userId) {
var currentValue = this.get(name, userId);
appStorage.setItem(getKey(name, userId), value);
if (currentValue !== value) {
events.trigger(this, 'change', [name]);
}
};
}
AppSettings.prototype.get = function (name, userId) {
export function get(name, userId) {
return appStorage.getItem(getKey(name, userId));
};
}
return new AppSettings();
});
/* eslint-enable indent */
export default {
enableAutoLogin: enableAutoLogin,
enableSystemExternalPlayers: enableSystemExternalPlayers,
enableAutomaticBitrateDetection: enableAutomaticBitrateDetection,
maxStreamingBitrate: maxStreamingBitrate,
maxStaticMusicBitrate: maxStaticMusicBitrate,
maxChromecastBitrate: maxChromecastBitrate,
syncOnlyOnWifi: syncOnlyOnWifi,
syncPath: syncPath,
cameraUploadServers: cameraUploadServers,
runAtStartup: runAtStartup,
set: set,
get: get
};

View file

@ -1,5 +1,7 @@
define(['appSettings', 'events'], function (appSettings, events) {
'use strict';
/* eslint-disable indent */
import appSettings from 'appSettings';
import events from 'events';
function onSaveTimeout() {
var self = this;
@ -15,10 +17,7 @@ define(['appSettings', 'events'], function (appSettings, events) {
instance.saveTimeout = setTimeout(onSaveTimeout.bind(instance), 50);
}
function UserSettings() {
}
UserSettings.prototype.setUserInfo = function (userId, apiClient) {
export function setUserInfo(userId, apiClient) {
if (this.saveTimeout) {
clearTimeout(this.saveTimeout);
}
@ -37,17 +36,17 @@ define(['appSettings', 'events'], function (appSettings, events) {
result.CustomPrefs = result.CustomPrefs || {};
self.displayPrefs = result;
});
};
}
UserSettings.prototype.getData = function () {
export function getData() {
return this.displayPrefs;
};
}
UserSettings.prototype.importFrom = function (instance) {
export function importFrom(instance) {
this.displayPrefs = instance.getData();
};
}
UserSettings.prototype.set = function (name, value, enableOnServer) {
export function set(name, value, enableOnServer) {
var userId = this.currentUserId;
var currentValue = this.get(name, enableOnServer);
var result = appSettings.set(name, value, userId);
@ -62,18 +61,18 @@ define(['appSettings', 'events'], function (appSettings, events) {
}
return result;
};
}
UserSettings.prototype.get = function (name, enableOnServer) {
export function get(name, enableOnServer) {
var userId = this.currentUserId;
if (enableOnServer !== false && this.displayPrefs) {
return this.displayPrefs.CustomPrefs[name];
}
return appSettings.get(name, userId);
};
}
UserSettings.prototype.serverConfig = function (config) {
export function serverConfig(config) {
var apiClient = this.currentApiClient;
if (config) {
return apiClient.updateUserConfiguration(this.currentUserId, config);
@ -82,135 +81,135 @@ define(['appSettings', 'events'], function (appSettings, events) {
return apiClient.getUser(this.currentUserId).then(function (user) {
return user.Configuration;
});
};
}
UserSettings.prototype.enableCinemaMode = function (val) {
export function enableCinemaMode(val) {
if (val != null) {
return this.set('enableCinemaMode', val.toString(), false);
}
val = this.get('enableCinemaMode', false);
return val !== 'false';
};
}
UserSettings.prototype.enableNextVideoInfoOverlay = function (val) {
export function enableNextVideoInfoOverlay(val) {
if (val != null) {
return this.set('enableNextVideoInfoOverlay', val.toString());
}
val = this.get('enableNextVideoInfoOverlay', false);
return val !== 'false';
};
}
UserSettings.prototype.enableThemeSongs = function (val) {
export function enableThemeSongs(val) {
if (val != null) {
return this.set('enableThemeSongs', val.toString(), false);
}
val = this.get('enableThemeSongs', false);
return val !== 'false';
};
}
UserSettings.prototype.enableThemeVideos = function (val) {
export function enableThemeVideos(val) {
if (val != null) {
return this.set('enableThemeVideos', val.toString(), false);
}
val = this.get('enableThemeVideos', false);
return val !== 'false';
};
}
UserSettings.prototype.enableFastFadein = function (val) {
export function enableFastFadein(val) {
if (val != null) {
return this.set('fastFadein', val.toString(), false);
}
val = this.get('fastFadein', false);
return val !== 'false';
};
}
UserSettings.prototype.enableBackdrops = function (val) {
export function enableBackdrops(val) {
if (val != null) {
return this.set('enableBackdrops', val.toString(), false);
}
val = this.get('enableBackdrops', false);
return val !== 'false';
};
}
UserSettings.prototype.language = function (val) {
export function language(val) {
if (val != null) {
return this.set('language', val.toString(), false);
}
return this.get('language', false);
};
}
UserSettings.prototype.dateTimeLocale = function (val) {
export function dateTimeLocale(val) {
if (val != null) {
return this.set('datetimelocale', val.toString(), false);
}
return this.get('datetimelocale', false);
};
}
UserSettings.prototype.skipBackLength = function (val) {
export function skipBackLength(val) {
if (val != null) {
return this.set('skipBackLength', val.toString());
}
return parseInt(this.get('skipBackLength') || '10000');
};
}
UserSettings.prototype.skipForwardLength = function (val) {
export function skipForwardLength(val) {
if (val != null) {
return this.set('skipForwardLength', val.toString());
}
return parseInt(this.get('skipForwardLength') || '30000');
};
}
UserSettings.prototype.dashboardTheme = function (val) {
export function dashboardTheme(val) {
if (val != null) {
return this.set('dashboardTheme', val);
}
return this.get('dashboardTheme');
};
}
UserSettings.prototype.skin = function (val) {
export function skin(val) {
if (val != null) {
return this.set('skin', val, false);
}
return this.get('skin', false);
};
}
UserSettings.prototype.theme = function (val) {
export function theme(val) {
if (val != null) {
return this.set('appTheme', val, false);
}
return this.get('appTheme', false);
};
}
UserSettings.prototype.screensaver = function (val) {
export function screensaver(val) {
if (val != null) {
return this.set('screensaver', val, false);
}
return this.get('screensaver', false);
};
}
UserSettings.prototype.soundEffects = function (val) {
export function soundEffects(val) {
if (val != null) {
return this.set('soundeffects', val, false);
}
return this.get('soundeffects', false);
};
}
UserSettings.prototype.loadQuerySettings = function (key, query) {
export function loadQuerySettings(key, query) {
var values = this.get(key);
if (values) {
values = JSON.parse(values);
@ -218,9 +217,9 @@ define(['appSettings', 'events'], function (appSettings, events) {
}
return query;
};
}
UserSettings.prototype.saveQuerySettings = function (key, query) {
export function saveQuerySettings(key, query) {
var values = {};
if (query.SortBy) {
values.SortBy = query.SortBy;
@ -231,25 +230,24 @@ define(['appSettings', 'events'], function (appSettings, events) {
}
return this.set(key, JSON.stringify(values));
};
}
UserSettings.prototype.getSubtitleAppearanceSettings = function (key) {
export function getSubtitleAppearanceSettings(key) {
key = key || 'localplayersubtitleappearance3';
return JSON.parse(this.get(key, false) || '{}');
};
}
UserSettings.prototype.setSubtitleAppearanceSettings = function (value, key) {
export function setSubtitleAppearanceSettings(value, key) {
key = key || 'localplayersubtitleappearance3';
return this.set(key, JSON.stringify(value), false);
};
}
UserSettings.prototype.setFilter = function (key, value) {
export function setFilter(key, value) {
return this.set(key, value, true);
};
}
UserSettings.prototype.getFilter = function (key) {
export function getFilter(key) {
return this.get(key, true);
};
}
return UserSettings;
});
/* eslint-enable indent */

View file

@ -775,10 +775,7 @@ var AppInfo = {};
define("webSettings", [scriptsPath + "/settings/webSettings"], returnFirstDependency);
define("appSettings", [scriptsPath + "/settings/appSettings"], returnFirstDependency);
define("userSettingsBuilder", [scriptsPath + "/settings/userSettingsBuilder"], returnFirstDependency);
define("userSettings", ["userSettingsBuilder"], function(userSettingsBuilder) {
return new userSettingsBuilder();
});
define("userSettings", [scriptsPath + "/settings/userSettings"], returnFirstDependency);
define("chromecastHelper", [componentsPath + "/chromecast/chromecasthelpers"], returnFirstDependency);
define("mediaSession", [componentsPath + "/playback/mediasession"], returnFirstDependency);

View file

@ -1,27 +0,0 @@
define(["dom", "emby-button"], function (dom) {
"use strict";
function onSubmit(e) {
if (dom.parentWithClass(this, "page").querySelector(".chkAccept").checked) {
Dashboard.navigate("wizardfinish.html");
} else {
Dashboard.alert({
message: Globalize.translate("MessagePleaseAcceptTermsOfServiceBeforeContinuing"),
title: ""
});
}
e.preventDefault();
return false;
}
return function (view, params) {
view.querySelector(".wizardAgreementForm").addEventListener("submit", onSubmit);
view.addEventListener("viewshow", function () {
document.querySelector(".skinHeader").classList.add("noHomeButtonHeader");
});
view.addEventListener("viewhide", function () {
document.querySelector(".skinHeader").classList.remove("noHomeButtonHeader");
});
};
});