diff --git a/package.json b/package.json
index a6367e26f0..8f175920d3 100644
--- a/package.json
+++ b/package.json
@@ -146,6 +146,7 @@
"src/components/playlisteditor/playlisteditor.js",
"src/components/playmenu.js",
"src/components/prompt/prompt.js",
+ "src/components/refreshdialog/refreshdialog.js",
"src/components/sanatizefilename.js",
"src/components/scrollManager.js",
"src/plugins/htmlVideoPlayer/plugin.js",
diff --git a/src/components/refreshdialog/refreshdialog.js b/src/components/refreshdialog/refreshdialog.js
index 40e1183502..1ec0517448 100644
--- a/src/components/refreshdialog/refreshdialog.js
+++ b/src/components/refreshdialog/refreshdialog.js
@@ -1,94 +1,108 @@
-define(['dom', 'shell', 'dialogHelper', 'loading', 'layoutManager', 'connectionManager', 'appRouter', 'globalize', 'emby-input', 'emby-checkbox', 'paper-icon-button-light', 'emby-select', 'material-icons', 'css!./../formdialog', 'emby-button'], function (dom, shell, dialogHelper, loading, layoutManager, connectionManager, appRouter, globalize) {
- 'use strict';
+import dom from 'dom';
+import dialogHelper from 'dialogHelper';
+import loading from 'loading';
+import layoutManager from 'layoutManager';
+import connectionManager from 'connectionManager';
+import globalize from 'globalize';
+import 'emby-input';
+import 'emby-checkbox';
+import 'paper-icon-button-light';
+import 'emby-select';
+import 'material-icons';
+import 'css!./../formdialog';
+import 'emby-button';
- function getEditorHtml() {
- var html = '';
+/*eslint prefer-const: "error"*/
- html += '
';
- html += '
';
- html += '
';
+ html += '
';
+ html += '
';
- function centerFocus(elem, horiz, on) {
- require(['scrollHelper'], function (scrollHelper) {
- var fn = on ? 'on' : 'off';
- scrollHelper.centerFocus[fn](elem, horiz);
+ return html;
+}
+
+function centerFocus(elem, horiz, on) {
+ import('scrollHelper').then(({default: scrollHelper}) => {
+ const fn = on ? 'on' : 'off';
+ scrollHelper.centerFocus[fn](elem, horiz);
+ });
+}
+
+function onSubmit(e) {
+ loading.show();
+
+ const instance = this;
+ const dlg = dom.parentWithClass(e.target, 'dialog');
+ const options = instance.options;
+
+ const apiClient = connectionManager.getApiClient(options.serverId);
+
+ const replaceAllMetadata = dlg.querySelector('#selectMetadataRefreshMode').value === 'all';
+
+ const mode = dlg.querySelector('#selectMetadataRefreshMode').value === 'scan' ? 'Default' : 'FullRefresh';
+ const replaceAllImages = mode === 'FullRefresh' && dlg.querySelector('.chkReplaceImages').checked;
+
+ options.itemIds.forEach(function (itemId) {
+ apiClient.refreshItem(itemId, {
+
+ Recursive: true,
+ ImageRefreshMode: mode,
+ MetadataRefreshMode: mode,
+ ReplaceAllImages: replaceAllImages,
+ ReplaceAllMetadata: replaceAllMetadata
});
- }
+ });
- function onSubmit(e) {
- loading.show();
+ dialogHelper.close(dlg);
- var instance = this;
- var dlg = dom.parentWithClass(e.target, 'dialog');
- var options = instance.options;
+ import('toast').then(({default: toast}) => {
+ toast(globalize.translate('RefreshQueued'));
+ });
- var apiClient = connectionManager.getApiClient(options.serverId);
+ loading.hide();
- var replaceAllMetadata = dlg.querySelector('#selectMetadataRefreshMode').value === 'all';
+ e.preventDefault();
+ return false;
+}
- var mode = dlg.querySelector('#selectMetadataRefreshMode').value === 'scan' ? 'Default' : 'FullRefresh';
- var replaceAllImages = mode === 'FullRefresh' && dlg.querySelector('.chkReplaceImages').checked;
-
- options.itemIds.forEach(function (itemId) {
- apiClient.refreshItem(itemId, {
-
- Recursive: true,
- ImageRefreshMode: mode,
- MetadataRefreshMode: mode,
- ReplaceAllImages: replaceAllImages,
- ReplaceAllMetadata: replaceAllMetadata
- });
- });
-
- dialogHelper.close(dlg);
-
- require(['toast'], function (toast) {
- toast(globalize.translate('RefreshQueued'));
- });
-
- loading.hide();
-
- e.preventDefault();
- return false;
- }
-
- function RefreshDialog(options) {
+class RefreshDialog {
+ constructor(options) {
this.options = options;
}
- RefreshDialog.prototype.show = function () {
- var dialogOptions = {
+ show() {
+ const dialogOptions = {
removeOnClose: true,
scrollY: false
};
@@ -99,12 +113,12 @@ define(['dom', 'shell', 'dialogHelper', 'loading', 'layoutManager', 'connectionM
dialogOptions.size = 'small';
}
- var dlg = dialogHelper.createDialog(dialogOptions);
+ const dlg = dialogHelper.createDialog(dialogOptions);
dlg.classList.add('formDialog');
- var html = '';
- var title = globalize.translate('RefreshMetadata');
+ let html = '';
+ const title = globalize.translate('RefreshMetadata');
html += '