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

Migration of songs to ES6 module

This commit is contained in:
Cameron 2020-07-19 10:59:03 +01:00
parent 4bf11489cd
commit b042e429d7
2 changed files with 31 additions and 23 deletions

View file

@ -121,6 +121,7 @@
"src/controllers/music/musicgenres.js", "src/controllers/music/musicgenres.js",
"src/controllers/music/musicplaylists.js", "src/controllers/music/musicplaylists.js",
"src/controllers/music/musicrecommended.js", "src/controllers/music/musicrecommended.js",
"src/controllers/music/songs.js",
"src/controllers/user/display.js", "src/controllers/user/display.js",
"src/controllers/user/home.js", "src/controllers/user/home.js",
"src/controllers/user/playback.js", "src/controllers/user/playback.js",

View file

@ -1,10 +1,18 @@
define(['events', 'libraryBrowser', 'imageLoader', 'listView', 'loading', 'userSettings', 'globalize', 'emby-itemscontainer'], function (events, libraryBrowser, imageLoader, listView, loading, userSettings, globalize) { import events from 'events';
'use strict'; import libraryBrowser from 'libraryBrowser';
import imageLoader from 'imageLoader';
import listView from 'listView';
import loading from 'loading';
import * as userSettings from 'userSettings';
import globalize from 'globalize';
import 'emby-itemscontainer';
return function (view, params, tabContent) { /* eslint-disable indent */
export default function (view, params, tabContent) {
function getPageData(context) { function getPageData(context) {
var key = getSavedQueryKey(context); const key = getSavedQueryKey(context);
var pageData = data[key]; let pageData = data[key];
if (!pageData) { if (!pageData) {
pageData = data[key] = { pageData = data[key] = {
@ -46,7 +54,7 @@ define(['events', 'libraryBrowser', 'imageLoader', 'listView', 'loading', 'userS
function reloadItems(page) { function reloadItems(page) {
loading.show(); loading.show();
isLoading = true; isLoading = true;
var query = getQuery(page); const query = getQuery(page);
ApiClient.getItems(Dashboard.getCurrentUserId(), query).then(function (result) { ApiClient.getItems(Dashboard.getCurrentUserId(), query).then(function (result) {
function onNextPageClick() { function onNextPageClick() {
if (isLoading) { if (isLoading) {
@ -71,9 +79,7 @@ define(['events', 'libraryBrowser', 'imageLoader', 'listView', 'loading', 'userS
} }
window.scrollTo(0, 0); window.scrollTo(0, 0);
var i; const pagingHtml = libraryBrowser.getQueryPagingHtml({
var length;
var pagingHtml = libraryBrowser.getQueryPagingHtml({
startIndex: query.StartIndex, startIndex: query.StartIndex,
limit: query.Limit, limit: query.Limit,
totalRecordCount: result.TotalRecordCount, totalRecordCount: result.TotalRecordCount,
@ -83,49 +89,49 @@ define(['events', 'libraryBrowser', 'imageLoader', 'listView', 'loading', 'userS
sortButton: false, sortButton: false,
filterButton: false filterButton: false
}); });
var html = listView.getListViewHtml({ const html = listView.getListViewHtml({
items: result.Items, items: result.Items,
action: 'playallfromhere', action: 'playallfromhere',
smallIcon: true, smallIcon: true,
artist: true, artist: true,
addToListButton: true addToListButton: true
}); });
var elems = tabContent.querySelectorAll('.paging'); let elems = tabContent.querySelectorAll('.paging');
for (i = 0, length = elems.length; i < length; i++) { for (let i = 0, length = elems.length; i < length; i++) {
elems[i].innerHTML = pagingHtml; elems[i].innerHTML = pagingHtml;
} }
elems = tabContent.querySelectorAll('.btnNextPage'); elems = tabContent.querySelectorAll('.btnNextPage');
for (i = 0, length = elems.length; i < length; i++) { for (let i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener('click', onNextPageClick); elems[i].addEventListener('click', onNextPageClick);
} }
elems = tabContent.querySelectorAll('.btnPreviousPage'); elems = tabContent.querySelectorAll('.btnPreviousPage');
for (i = 0, length = elems.length; i < length; i++) { for (let i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener('click', onPreviousPageClick); elems[i].addEventListener('click', onPreviousPageClick);
} }
var itemsContainer = tabContent.querySelector('.itemsContainer'); const itemsContainer = tabContent.querySelector('.itemsContainer');
itemsContainer.innerHTML = html; itemsContainer.innerHTML = html;
imageLoader.lazyChildren(itemsContainer); imageLoader.lazyChildren(itemsContainer);
libraryBrowser.saveQueryValues(getSavedQueryKey(page), query); libraryBrowser.saveQueryValues(getSavedQueryKey(page), query);
loading.hide(); loading.hide();
isLoading = false; isLoading = false;
require(['autoFocuser'], function (autoFocuser) { import('autoFocuser').then(({default: autoFocuser}) => {
autoFocuser.autoFocus(page); autoFocuser.autoFocus(page);
}); });
}); });
} }
var self = this; const self = this;
var data = {}; const data = {};
var isLoading = false; let isLoading = false;
self.showFilterMenu = function () { self.showFilterMenu = function () {
require(['components/filterdialog/filterdialog'], function ({default: filterDialogFactory}) { import('components/filterdialog/filterdialog').then(({default: filterDialogFactory}) => {
var filterDialog = new filterDialogFactory({ const filterDialog = new filterDialogFactory({
query: getQuery(tabContent), query: getQuery(tabContent),
mode: 'songs', mode: 'songs',
serverId: ApiClient.serverId() serverId: ApiClient.serverId()
@ -193,5 +199,6 @@ define(['events', 'libraryBrowser', 'imageLoader', 'listView', 'loading', 'userS
}; };
self.destroy = function () {}; self.destroy = function () {};
}; }
});
/* eslint-enable indent */