diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.css b/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.css
new file mode 100644
index 0000000000..8af19e9048
--- /dev/null
+++ b/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.css
@@ -0,0 +1,522 @@
+.mdl-spinner {
+ display: inline-block;
+ position: relative;
+ width: 28px;
+ height: 28px;
+}
+
+ .mdl-spinner.is-active {
+ -webkit-animation: mdl-spinner__container-rotate 1568.23529412ms linear infinite;
+ animation: mdl-spinner__container-rotate 1568.23529412ms linear infinite;
+ }
+
+@-webkit-keyframes mdl-spinner__container-rotate {
+ to {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
+
+@keyframes mdl-spinner__container-rotate {
+ to {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
+
+.mdl-spinner__layer {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ opacity: 0;
+}
+
+.mdl-spinner__layer-1 {
+ border-color: rgb(66,165,245);
+}
+
+.mdl-spinner--single-color .mdl-spinner__layer-1 {
+ border-color: rgb(63,81,181);
+}
+
+.mdl-spinner.is-active .mdl-spinner__layer-1 {
+ -webkit-animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-1-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+ animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-1-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+}
+
+.mdl-spinner__layer-2 {
+ border-color: rgb(244,67,54);
+}
+
+.mdl-spinner--single-color .mdl-spinner__layer-2 {
+ border-color: rgb(63,81,181);
+}
+
+.mdl-spinner.is-active .mdl-spinner__layer-2 {
+ -webkit-animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-2-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+ animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-2-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+}
+
+.mdl-spinner__layer-3 {
+ border-color: rgb(253,216,53);
+}
+
+.mdl-spinner--single-color .mdl-spinner__layer-3 {
+ border-color: rgb(63,81,181);
+}
+
+.mdl-spinner.is-active .mdl-spinner__layer-3 {
+ -webkit-animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-3-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+ animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-3-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+}
+
+.mdl-spinner__layer-4 {
+ border-color: rgb(76,175,80);
+}
+
+.mdl-spinner--single-color .mdl-spinner__layer-4 {
+ border-color: rgb(63,81,181);
+}
+
+.mdl-spinner.is-active .mdl-spinner__layer-4 {
+ -webkit-animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-4-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+ animation: mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, mdl-spinner__layer-4-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+}
+
+@-webkit-keyframes mdl-spinner__fill-unfill-rotate {
+ 12.5% {
+ -webkit-transform: rotate(135deg);
+ transform: rotate(135deg);
+ }
+
+ 25% {
+ -webkit-transform: rotate(270deg);
+ transform: rotate(270deg);
+ }
+
+ 37.5% {
+ -webkit-transform: rotate(405deg);
+ transform: rotate(405deg);
+ }
+
+ 50% {
+ -webkit-transform: rotate(540deg);
+ transform: rotate(540deg);
+ }
+
+ 62.5% {
+ -webkit-transform: rotate(675deg);
+ transform: rotate(675deg);
+ }
+
+ 75% {
+ -webkit-transform: rotate(810deg);
+ transform: rotate(810deg);
+ }
+
+ 87.5% {
+ -webkit-transform: rotate(945deg);
+ transform: rotate(945deg);
+ }
+
+ to {
+ -webkit-transform: rotate(1080deg);
+ transform: rotate(1080deg);
+ }
+}
+
+@keyframes mdl-spinner__fill-unfill-rotate {
+ 12.5% {
+ -webkit-transform: rotate(135deg);
+ transform: rotate(135deg);
+ }
+
+ 25% {
+ -webkit-transform: rotate(270deg);
+ transform: rotate(270deg);
+ }
+
+ 37.5% {
+ -webkit-transform: rotate(405deg);
+ transform: rotate(405deg);
+ }
+
+ 50% {
+ -webkit-transform: rotate(540deg);
+ transform: rotate(540deg);
+ }
+
+ 62.5% {
+ -webkit-transform: rotate(675deg);
+ transform: rotate(675deg);
+ }
+
+ 75% {
+ -webkit-transform: rotate(810deg);
+ transform: rotate(810deg);
+ }
+
+ 87.5% {
+ -webkit-transform: rotate(945deg);
+ transform: rotate(945deg);
+ }
+
+ to {
+ -webkit-transform: rotate(1080deg);
+ transform: rotate(1080deg);
+ }
+}
+
+/**
+* HACK: Even though the intention is to have the current .mdl-spinner__layer-N
+* at `opacity: 1`, we set it to `opacity: 0.99` instead since this forces Chrome
+* to do proper subpixel rendering for the elements being animated. This is
+* especially visible in Chrome 39 on Ubuntu 14.04. See:
+*
+* - https://github.com/Polymer/paper-spinner/issues/9
+* - https://code.google.com/p/chromium/issues/detail?id=436255
+*/
+@-webkit-keyframes mdl-spinner__layer-1-fade-in-out {
+ from {
+ opacity: 0.99;
+ }
+
+ 25% {
+ opacity: 0.99;
+ }
+
+ 26% {
+ opacity: 0;
+ }
+
+ 89% {
+ opacity: 0;
+ }
+
+ 90% {
+ opacity: 0.99;
+ }
+
+ 100% {
+ opacity: 0.99;
+ }
+}
+
+@keyframes mdl-spinner__layer-1-fade-in-out {
+ from {
+ opacity: 0.99;
+ }
+
+ 25% {
+ opacity: 0.99;
+ }
+
+ 26% {
+ opacity: 0;
+ }
+
+ 89% {
+ opacity: 0;
+ }
+
+ 90% {
+ opacity: 0.99;
+ }
+
+ 100% {
+ opacity: 0.99;
+ }
+}
+
+@-webkit-keyframes mdl-spinner__layer-2-fade-in-out {
+ from {
+ opacity: 0;
+ }
+
+ 15% {
+ opacity: 0;
+ }
+
+ 25% {
+ opacity: 0.99;
+ }
+
+ 50% {
+ opacity: 0.99;
+ }
+
+ 51% {
+ opacity: 0;
+ }
+}
+
+@keyframes mdl-spinner__layer-2-fade-in-out {
+ from {
+ opacity: 0;
+ }
+
+ 15% {
+ opacity: 0;
+ }
+
+ 25% {
+ opacity: 0.99;
+ }
+
+ 50% {
+ opacity: 0.99;
+ }
+
+ 51% {
+ opacity: 0;
+ }
+}
+
+@-webkit-keyframes mdl-spinner__layer-3-fade-in-out {
+ from {
+ opacity: 0;
+ }
+
+ 40% {
+ opacity: 0;
+ }
+
+ 50% {
+ opacity: 0.99;
+ }
+
+ 75% {
+ opacity: 0.99;
+ }
+
+ 76% {
+ opacity: 0;
+ }
+}
+
+@keyframes mdl-spinner__layer-3-fade-in-out {
+ from {
+ opacity: 0;
+ }
+
+ 40% {
+ opacity: 0;
+ }
+
+ 50% {
+ opacity: 0.99;
+ }
+
+ 75% {
+ opacity: 0.99;
+ }
+
+ 76% {
+ opacity: 0;
+ }
+}
+
+@-webkit-keyframes mdl-spinner__layer-4-fade-in-out {
+ from {
+ opacity: 0;
+ }
+
+ 65% {
+ opacity: 0;
+ }
+
+ 75% {
+ opacity: 0.99;
+ }
+
+ 90% {
+ opacity: 0.99;
+ }
+
+ 100% {
+ opacity: 0;
+ }
+}
+
+@keyframes mdl-spinner__layer-4-fade-in-out {
+ from {
+ opacity: 0;
+ }
+
+ 65% {
+ opacity: 0;
+ }
+
+ 75% {
+ opacity: 0.99;
+ }
+
+ 90% {
+ opacity: 0.99;
+ }
+
+ 100% {
+ opacity: 0;
+ }
+}
+
+/**
+* Patch the gap that appear between the two adjacent
+* div.mdl-spinner__circle-clipper while the spinner is rotating
+* (appears on Chrome 38, Safari 7.1, and IE 11).
+*
+* Update: the gap no longer appears on Chrome when .mdl-spinner__layer-N's
+* opacity is 0.99, but still does on Safari and IE.
+*/
+.mdl-spinner__gap-patch {
+ position: absolute;
+ box-sizing: border-box;
+ top: 0;
+ left: 45%;
+ width: 10%;
+ height: 100%;
+ overflow: hidden;
+ border-color: inherit;
+}
+
+ .mdl-spinner__gap-patch .mdl-spinner__circle {
+ width: 1000%;
+ left: -450%;
+ }
+
+.mdl-spinner__circle-clipper {
+ display: inline-block;
+ position: relative;
+ width: 50%;
+ height: 100%;
+ overflow: hidden;
+ border-color: inherit;
+}
+
+ .mdl-spinner__circle-clipper .mdl-spinner__circle {
+ width: 200%;
+ }
+
+.mdl-spinner__circle {
+ box-sizing: border-box;
+ height: 100%;
+ border-width: 3px;
+ border-style: solid;
+ border-color: inherit;
+ border-bottom-color: transparent !important;
+ border-radius: 50%;
+ -webkit-animation: none;
+ animation: none;
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+}
+
+.mdl-spinner__left .mdl-spinner__circle {
+ border-right-color: transparent !important;
+ -webkit-transform: rotate(129deg);
+ transform: rotate(129deg);
+}
+
+.mdl-spinner.is-active .mdl-spinner__left .mdl-spinner__circle {
+ -webkit-animation: mdl-spinner__left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+ animation: mdl-spinner__left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+}
+
+.mdl-spinner__right .mdl-spinner__circle {
+ left: -100%;
+ border-left-color: transparent !important;
+ -webkit-transform: rotate(-129deg);
+ transform: rotate(-129deg);
+}
+
+.mdl-spinner.is-active .mdl-spinner__right .mdl-spinner__circle {
+ -webkit-animation: mdl-spinner__right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+ animation: mdl-spinner__right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
+}
+
+@-webkit-keyframes mdl-spinner__left-spin {
+ from {
+ -webkit-transform: rotate(130deg);
+ transform: rotate(130deg);
+ }
+
+ 50% {
+ -webkit-transform: rotate(-5deg);
+ transform: rotate(-5deg);
+ }
+
+ to {
+ -webkit-transform: rotate(130deg);
+ transform: rotate(130deg);
+ }
+}
+
+@keyframes mdl-spinner__left-spin {
+ from {
+ -webkit-transform: rotate(130deg);
+ transform: rotate(130deg);
+ }
+
+ 50% {
+ -webkit-transform: rotate(-5deg);
+ transform: rotate(-5deg);
+ }
+
+ to {
+ -webkit-transform: rotate(130deg);
+ transform: rotate(130deg);
+ }
+}
+
+@-webkit-keyframes mdl-spinner__right-spin {
+ from {
+ -webkit-transform: rotate(-130deg);
+ transform: rotate(-130deg);
+ }
+
+ 50% {
+ -webkit-transform: rotate(5deg);
+ transform: rotate(5deg);
+ }
+
+ to {
+ -webkit-transform: rotate(-130deg);
+ transform: rotate(-130deg);
+ }
+}
+
+@keyframes mdl-spinner__right-spin {
+ from {
+ -webkit-transform: rotate(-130deg);
+ transform: rotate(-130deg);
+ }
+
+ 50% {
+ -webkit-transform: rotate(5deg);
+ transform: rotate(5deg);
+ }
+
+ to {
+ -webkit-transform: rotate(-130deg);
+ transform: rotate(-130deg);
+ }
+}
+
+.docspinner {
+ margin-top: -5vh;
+ margin-left: -5vh;
+ width: 10vh;
+ height: 10vh;
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ z-index: 9999999;
+ contain: layout style;
+}
+
+.loadingHide {
+ display: none !important;
+}
diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.js b/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.js
new file mode 100644
index 0000000000..51ffdee7cd
--- /dev/null
+++ b/dashboard-ui/bower_components/emby-webcomponents/loading/loading-legacy.js
@@ -0,0 +1,36 @@
+define(['css!./loading-legacy'], function () {
+
+ var loadingElem;
+
+ return {
+ show: function () {
+ var elem = loadingElem;
+
+ if (!elem) {
+
+ elem = document.createElement("div");
+ loadingElem = elem;
+
+ elem.classList.add('docspinner');
+ elem.classList.add('mdl-spinner');
+ elem.classList.add('mdl-js-spinner');
+
+ elem.innerHTML = '
';
+
+ document.body.appendChild(elem);
+ }
+
+ elem.classList.add('is-active');
+ elem.classList.remove('loadingHide');
+ },
+ hide: function () {
+ var elem = loadingElem;
+
+ if (elem) {
+
+ elem.classList.remove('is-active');
+ elem.classList.add('loadingHide');
+ }
+ }
+ };
+});
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-smarttv.js b/dashboard-ui/bower_components/emby-webcomponents/loading/loading-smarttv.js
deleted file mode 100644
index 64d594b38f..0000000000
--- a/dashboard-ui/bower_components/emby-webcomponents/loading/loading-smarttv.js
+++ /dev/null
@@ -1,9 +0,0 @@
-define([], function () {
-
- return {
- show: function () {
- },
- hide: function () {
- }
- };
-});
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/de.json b/dashboard-ui/bower_components/emby-webcomponents/strings/de.json
index 395a50e282..76eaeabd2a 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/de.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/de.json
@@ -129,7 +129,7 @@
"HeaderConfirmRecordingCancellation": "Best\u00e4tige Aufzeichnungsabbruch",
"MessageConfirmRecordingCancellation": "Bis du dir sicher, diese Aufzeichnung abzubrechen?",
"Error": "Fehler",
- "VoiceInput": "Voice Input",
+ "VoiceInput": "Spracheingabe",
"LabelContentType": "Typ des Inhalts:",
"LabelPath": "Pfad:",
"LabelTitle": "Titel:",
@@ -209,42 +209,42 @@
"Images": "Bilder",
"Keywords": "Stichworte",
"Runtime": "Laufzeit",
- "ProductionLocations": "Production locations",
- "BirthLocation": "Birth location",
+ "ProductionLocations": "Drehorte",
+ "BirthLocation": "Geburtsort",
"ParentalRating": "Altersfreigabe",
"Name": "Name",
"Overview": "\u00dcbersicht",
"LabelType": "Typ:",
"LabelPersonRole": "Rolle:",
- "LabelPersonRoleHelp": "Example: Ice cream truck driver",
+ "LabelPersonRoleHelp": "Beispiel: Eiswagenfahrer",
"Actor": "Schauspieler",
"Composer": "Komponist",
"Director": "Regisseur",
"GuestStar": "Gaststar",
"Producer": "Produzent",
"Writer": "Drehbuchautor",
- "InstallingPackage": "Installing {0}",
- "PackageInstallCompleted": "{0} installation completed.",
- "PackageInstallFailed": "{0} installation failed.",
- "PackageInstallCancelled": "{0} installation cancelled.",
- "SeriesYearToPresent": "{0}-Present",
- "ValueOneSong": "1 song",
- "ValueSongCount": "{0} songs",
- "ValueOneMovie": "1 movie",
- "ValueMovieCount": "{0} movies",
- "ValueOneSeries": "1 series",
- "ValueSeriesCount": "{0} series",
- "ValueOneEpisode": "1 episode",
- "ValueEpisodeCount": "{0} episodes",
- "ValueOneGame": "1 game",
- "ValueGameCount": "{0} games",
- "ValueOneAlbum": "1 album",
- "ValueAlbumCount": "{0} albums",
- "ValueOneMusicVideo": "1 music video",
- "ValueMusicVideoCount": "{0} music videos",
- "ValueMinutes": "{0} min",
- "HeaderIdentifyItemHelp": "Enter one or more search criteria. Remove criteria to increase search results.",
- "PleaseEnterNameOrId": "Please enter a name or an external Id.",
+ "InstallingPackage": "Installiere {0}",
+ "PackageInstallCompleted": "{0} Installation abgeschlossen",
+ "PackageInstallFailed": "{0} Installation fehlgeschlagen",
+ "PackageInstallCancelled": "{0} Installation abgebrochen",
+ "SeriesYearToPresent": "{0}-heute",
+ "ValueOneSong": "1 Lied",
+ "ValueSongCount": "{0} Lieder",
+ "ValueOneMovie": "1 Film",
+ "ValueMovieCount": "{0} Filme",
+ "ValueOneSeries": "1 Serie",
+ "ValueSeriesCount": "{0} Serien",
+ "ValueOneEpisode": "1 Episode",
+ "ValueEpisodeCount": "{0} Episoden",
+ "ValueOneGame": "1 Spiel",
+ "ValueGameCount": "{0} Spiele",
+ "ValueOneAlbum": "1 Album",
+ "ValueAlbumCount": "{0} Alben",
+ "ValueOneMusicVideo": "1 Musikvideo",
+ "ValueMusicVideoCount": "{0} Musikvideos",
+ "ValueMinutes": "{0} Minuten",
+ "HeaderIdentifyItemHelp": "Gib ein oder mehrere Suchkriterien ein. Entferne Kriterien um die Suchergebnisse zu erweitern.",
+ "PleaseEnterNameOrId": "Bitte gib einen Namen oder eine externe ID an.",
"MessageItemSaved": "Element gespeichert",
- "SearchResults": "Search Results"
+ "SearchResults": "Suchergebnisse"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json b/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json
index 13af089753..7d4f9822f1 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json
@@ -227,24 +227,24 @@
"PackageInstallCompleted": "{0} instalaci\u00f3n completada.",
"PackageInstallFailed": "{0} instalaci\u00f3n fallida.",
"PackageInstallCancelled": "{0} instalaci\u00f3n cancelada.",
- "SeriesYearToPresent": "{0}-Present",
- "ValueOneSong": "1 song",
- "ValueSongCount": "{0} songs",
- "ValueOneMovie": "1 movie",
- "ValueMovieCount": "{0} movies",
- "ValueOneSeries": "1 series",
+ "SeriesYearToPresent": "{0}-Actualidad",
+ "ValueOneSong": "1 canci\u00f3n",
+ "ValueSongCount": "{0} canciones",
+ "ValueOneMovie": "1 pel\u00edcula",
+ "ValueMovieCount": "{0} pel\u00edculas",
+ "ValueOneSeries": "1 serie",
"ValueSeriesCount": "{0} series",
- "ValueOneEpisode": "1 episode",
- "ValueEpisodeCount": "{0} episodes",
- "ValueOneGame": "1 game",
- "ValueGameCount": "{0} games",
- "ValueOneAlbum": "1 album",
- "ValueAlbumCount": "{0} albums",
- "ValueOneMusicVideo": "1 music video",
- "ValueMusicVideoCount": "{0} music videos",
- "ValueMinutes": "{0} min",
- "HeaderIdentifyItemHelp": "Enter one or more search criteria. Remove criteria to increase search results.",
- "PleaseEnterNameOrId": "Please enter a name or an external Id.",
+ "ValueOneEpisode": "1 episodio",
+ "ValueEpisodeCount": "{0} episodios",
+ "ValueOneGame": "1 juego",
+ "ValueGameCount": "{0} juegos",
+ "ValueOneAlbum": "1 \u00e1lbum",
+ "ValueAlbumCount": "{0} \u00e1lbumes",
+ "ValueOneMusicVideo": "1 video musical",
+ "ValueMusicVideoCount": "{0} videos musicales",
+ "ValueMinutes": "{0} min.",
+ "HeaderIdentifyItemHelp": "Introduzca uno o mas criterios de b\u00fasqueda. Elimine criterios para incrementar los resultados de la b\u00fasqueda.",
+ "PleaseEnterNameOrId": "Por favor introduzca un nombre o un Id. externo.",
"MessageItemSaved": "\u00cdtem guardado.",
- "SearchResults": "Search Results"
+ "SearchResults": "Resultados de la b\u00fasqueda"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json b/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json
index e96fcf2b2f..854fdbae4f 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json
@@ -246,5 +246,5 @@
"HeaderIdentifyItemHelp": "Entrez un ou plusieurs crit\u00e8res de recherche. Retirez des crit\u00e8res pour \u00e9largir les r\u00e9sultats de la recherche.",
"PleaseEnterNameOrId": "Veuillez saisir un nom ou un identifiant externe.",
"MessageItemSaved": "Item sauvegard\u00e9.",
- "SearchResults": "Search Results"
+ "SearchResults": "R\u00e9sultats de la recherche"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json b/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json
index 6dcda12dd5..da1a183dce 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json
@@ -246,5 +246,5 @@
"HeaderIdentifyItemHelp": "\u0406\u0437\u0434\u0435\u0443\u0434\u0456\u04a3 \u0431\u0456\u0440 \u043d\u0435 \u0431\u0456\u0440\u043d\u0435\u0448\u0435 \u0448\u0430\u0440\u0442\u044b\u043d \u0435\u043d\u0433\u0456\u0437\u0456\u04a3\u0456\u0437. \u0406\u0437\u0434\u0435\u0443 \u043d\u04d9\u0442\u0438\u0436\u0435\u043b\u0435\u0440\u0456\u043d \u043a\u04e9\u0431\u0435\u0439\u0442\u0443 \u04af\u0448\u0456\u043d \u0448\u0430\u0440\u0442\u0442\u044b \u0430\u043b\u0430\u0441\u0442\u0430\u04a3\u044b\u0437.",
"PleaseEnterNameOrId": "\u0410\u0442\u044b\u043d \u043d\u0435\u043c\u0435\u0441\u0435 \u0441\u044b\u0440\u0442\u049b\u044b ID \u0435\u043d\u0433\u0456\u0437\u0456\u04a3\u0456\u0437.",
"MessageItemSaved": "\u0422\u0430\u0440\u043c\u0430\u049b \u0441\u0430\u049b\u0442\u0430\u043b\u0434\u044b.",
- "SearchResults": "Search Results"
+ "SearchResults": "\u0406\u0437\u0434\u0435\u0443 \u043d\u04d9\u0442\u0438\u0436\u0435\u043b\u0435\u0440\u0456"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json b/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json
index 51119a9e16..9cf17aec67 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json
@@ -246,5 +246,5 @@
"HeaderIdentifyItemHelp": "Vul \u00e9\u00e9n of meer zoek criteria in. Verwijder criteria om zoekresultaten te vergroten.",
"PleaseEnterNameOrId": "Voer een naam of een externe Id in",
"MessageItemSaved": "Item opgeslagen.",
- "SearchResults": "Search Results"
+ "SearchResults": "Zoekresultaten"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json b/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json
index ee9d0617ec..6e43a47cf6 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json
@@ -227,24 +227,24 @@
"PackageInstallCompleted": "Instala\u00e7\u00e3o completa de {0}",
"PackageInstallFailed": "Falha na instala\u00e7\u00e3o de {0}.",
"PackageInstallCancelled": "Instala\u00e7\u00e3o cancelada de {0}.",
- "SeriesYearToPresent": "{0}-Present",
- "ValueOneSong": "1 song",
- "ValueSongCount": "{0} songs",
- "ValueOneMovie": "1 movie",
- "ValueMovieCount": "{0} movies",
- "ValueOneSeries": "1 series",
- "ValueSeriesCount": "{0} series",
- "ValueOneEpisode": "1 episode",
- "ValueEpisodeCount": "{0} episodes",
- "ValueOneGame": "1 game",
- "ValueGameCount": "{0} games",
- "ValueOneAlbum": "1 album",
- "ValueAlbumCount": "{0} albums",
- "ValueOneMusicVideo": "1 music video",
- "ValueMusicVideoCount": "{0} music videos",
+ "SeriesYearToPresent": "{0}-Presente",
+ "ValueOneSong": "1 m\u00fasica",
+ "ValueSongCount": "{0} m\u00fasicas",
+ "ValueOneMovie": "1 filme",
+ "ValueMovieCount": "{0} filmes",
+ "ValueOneSeries": "1 s\u00e9rie",
+ "ValueSeriesCount": "{0} s\u00e9ries",
+ "ValueOneEpisode": "1 epis\u00f3dio",
+ "ValueEpisodeCount": "{0} epis\u00f3dios",
+ "ValueOneGame": "1 jogo",
+ "ValueGameCount": "{0} jogos",
+ "ValueOneAlbum": "1 \u00e1lbum",
+ "ValueAlbumCount": "{0} \u00e1lbuns",
+ "ValueOneMusicVideo": "1 v\u00eddeoclipe",
+ "ValueMusicVideoCount": "{0} v\u00eddeoclipes",
"ValueMinutes": "{0} min",
- "HeaderIdentifyItemHelp": "Enter one or more search criteria. Remove criteria to increase search results.",
- "PleaseEnterNameOrId": "Please enter a name or an external Id.",
+ "HeaderIdentifyItemHelp": "Digite um ou mais crit\u00e9rios de busca. Remova um crit\u00e9rio para aumentar os resultados da busca.",
+ "PleaseEnterNameOrId": "Por favor, digite um nome ou um id externo.",
"MessageItemSaved": "Item salvo.",
- "SearchResults": "Search Results"
+ "SearchResults": "Resultados da Busca"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json b/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json
index 3cf4ea1184..d42262ca02 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json
@@ -246,5 +246,5 @@
"HeaderIdentifyItemHelp": "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043e\u0434\u043d\u043e \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u043f\u043e\u0438\u0441\u043a\u0430. \u0418\u0437\u044b\u043c\u0438\u0442\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u0440\u0430\u0441\u0442\u0438\u0442\u044c \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b.",
"PleaseEnterNameOrId": "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0438\u043b\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 ID.",
"MessageItemSaved": "\u042d\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d.",
- "SearchResults": "Search Results"
+ "SearchResults": "\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043f\u043e\u0438\u0441\u043a\u0430"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/paper-progress/.bower.json b/dashboard-ui/bower_components/paper-progress/.bower.json
index fdbf282c4a..528833b817 100644
--- a/dashboard-ui/bower_components/paper-progress/.bower.json
+++ b/dashboard-ui/bower_components/paper-progress/.bower.json
@@ -1,6 +1,6 @@
{
"name": "paper-progress",
- "version": "1.0.9",
+ "version": "1.0.10",
"license": "http://polymer.github.io/LICENSE.txt",
"description": "A material design progress bar",
"authors": "The Polymer Authors",
@@ -30,14 +30,13 @@
},
"ignore": [],
"homepage": "https://github.com/PolymerElements/paper-progress",
- "_release": "1.0.9",
+ "_release": "1.0.10",
"_resolution": {
"type": "version",
- "tag": "v1.0.9",
- "commit": "389e717d2e600bb44c6cb1537ee12b203b55fca1"
+ "tag": "v1.0.10",
+ "commit": "dfdde2b02947fb2dfd3f2d303ec17f7f4919348c"
},
"_source": "git://github.com/PolymerElements/paper-progress.git",
"_target": "^1.0.9",
- "_originalSource": "PolymerElements/paper-progress",
- "_direct": true
+ "_originalSource": "PolymerElements/paper-progress"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/paper-progress/.github/ISSUE_TEMPLATE.md b/dashboard-ui/bower_components/paper-progress/.github/ISSUE_TEMPLATE.md
new file mode 100644
index 0000000000..09b5a1e5db
--- /dev/null
+++ b/dashboard-ui/bower_components/paper-progress/.github/ISSUE_TEMPLATE.md
@@ -0,0 +1,33 @@
+
+### Description
+
+
+### Expected outcome
+
+
+
+### Actual outcome
+
+
+
+### Live Demo
+
+
+### Steps to reproduce
+
+
+
+### Browsers Affected
+
+- [ ] Chrome
+- [ ] Firefox
+- [ ] Safari 9
+- [ ] Safari 8
+- [ ] Safari 7
+- [ ] Edge
+- [ ] IE 11
+- [ ] IE 10
diff --git a/dashboard-ui/bower_components/paper-progress/.travis.yml b/dashboard-ui/bower_components/paper-progress/.travis.yml
index cfc1bd9351..f80bf47c97 100644
--- a/dashboard-ui/bower_components/paper-progress/.travis.yml
+++ b/dashboard-ui/bower_components/paper-progress/.travis.yml
@@ -1,25 +1,23 @@
language: node_js
-sudo: false
+sudo: required
before_script:
- - npm install -g bower polylint web-component-tester
- - bower install
- - polylint
+- npm install -g bower polylint web-component-tester
+- bower install
+- polylint
env:
global:
- - secure: fmp2kJysxTcVsouaQfEkPCJYPzbsuGCeq5RqvttDaYdue92n5912OR/WI476PPGpX2owvxq97saVX9CqXweVtgrmdhONsrGy31eULpW0vUonuhbjkKU87E0aAmHu478uuJnc4hU7oN7wuNEtqWmpFG+oqMqHKwUyAWLk+V4XY0nseuFYQLX52qfglD+CqipQsoe84nIM0JxQxpDw1njYZbKQzZVttyLQVv13Ahh+5v75EqqwggoD2mgU1xQIH1GarbnZpmE9BL4ETbaJwJ7Fon/Pxsrs1Zs9hEStJCwo5aTiyPJibRQBCk9Cj+PJY3TkqfE3zIwhbW1/aSCIuUg5egsh6Of6clqrDE2wWPyIURUBFcE3UXsqBEXh56K9WQh+KNIgJYoQ/tzhD2VlgQhM89geTKZc6ysSTWcukv9tw9h9gaG2gD1e+uRQ/rMyt6vlh2DNI/J8oAv1WifZwuUKRkwm7SUBP55sukFryJIQEXEMqjT0WVbjTWP+2VNiHFPo7wGdVZ8X7y4bwA7lmnlC4AnNd8L6BE0tStZUBAKv3LhzRvd+DrRvaiSPdFhGBbAiMzytKGgxfD7nhMntV7GREjfQCB/hch5anePK7Cuw58kF8PiZX9aVk8Se3VP0+rdUkzVgWTW5THhdpw2nnuIyK5QDtL4/L3l/oJhl9Jbmak4=
- - secure: WzzECDnm17AwL4VDbMJD0E1cdi11p2YLahJRPi/+GZ9BFNIV3I2WZFc5l0WEiGDMB4igx5DdXHzDFk7HF2z2qRpf2skhWDTd/Ie5+exZlY9/D/tED8dJepGtV40UTuWr+vHsDJeNkXteYNpNU7ZHfNbXl14/x25ccaLYSX5yRNLBRMn9KToRNBhXA0YH/Q9AnWNKGFWb0YBfjSRywSvVuVRQr/tL43JUCTEEwjdGHVTUlvWPE5XHDs6yqjJlTI70GVvQb5WPZdQJugiolG9Z66ZRWEEuawJgzTCdlaKwBQX0UAXLdfUsQKwrcxvLnDibMHVG6hNOBw4Un73YL0klD7nKoPlhCiDHtPWoNUCvpNGxPWozw2KC50YX4MZSFKAWCkIA4/oiIhMvSUOWcrOpfHZNpJNNBCFHvv6JS5PwEiNlqM2BjqfS4Vy/03Fy0h6CyNX8o5wDAjZvJKCyZQHGy4tFWNPpyZ6SbwsnzH+bjqXSDURI6hCUNiujlIRzUT95H8rIega1mWT8sffvb4qK72iXAqf7hoQbi1Ldhjq/b0iO0PRdpjX5vusLN797KxPNrxDZc9LoaIgVMAFD5AJmwF/DilvwsW6sI4o5cpAw58/g1wpB7iX0YFWXNzXv/hZh2o4gW81Y2afM//gIgCFSitRO10bOqw+pEcGCnLrz/BQ=
- - CXX=g++-4.8
+ - secure: H1BFM+lOHi3yosJV4VpeDHO/N33EeAeQqKbWMAiGfbjMmVUa2Y9gQzpIONMtO09KMTZMw0dlE3GYNLnc44JXlnSvmp34Fh8KpxOz4BxlbIj2aw/M99FWxRAJYpV+BWWKhwwuFq6DctATljcdfvYyHxpjCAFjTIMCCAHtdVrowlxMlivu/BSlBlZ4HR0OfHr7l8PAC1hSieWr5Rpk0PMcQ6B0nEhSTRgGdxEwADnkOL3Sx966vNv3qxwIML29UrZ3mFdfrgnfwdNZTivjDaRhY4tUu7bw5vP8c4PeVR7lalhVBse5J4xKo7Xw80To+bm/0Hyo4ZgZPzEbq0EAIszRnwRo/d4YiFGkyIgFHJ8a/v2h3BWxW+9W51nKsQcFijitu2pMhKC9ankRxL23TK0rtYff6hj/bCwtfy/965PzZgiAeBgcQUZ25+unOc11VAyIEGUZeLAqzulMOn2LAcvSrVEVGpb90whvVxfG3T8hkFbIrPtD3TWrtvt4ul/25pe+eLNET2DUTqrPFfizthyaGFfavykA6PPGI58AFD2EnFmaD9eJC/eCP34FAZec8G2yMbXOYxg6B40Z1ezHo8j7jzbekEJBsHVegpart9YSxQwx5b95SsqlPbyhdLLHIZIzT9dSfbS/l0YFUYbejeMM5koi1qdqXVCdCMpbwS61WA8=
+ - secure: KZek5eiBlb80rC3C0pgb39C4mWskrGJdxV0Xp9WBAnJQkXN4fvKgB5QOIGVV8yP/aM824zv/nj1Z61MWcjKw5kYJBon0Hw4Qemk7KJh7kde5bhg+3dWcdfv8Hhz9wuVGxqmZ01N8LWat+dRzEqY5ZawFQ+P2M/FXxxwKKsH3GKpjgjN2G8u7nadD2p4hDIBmVVGK0dqDZDOg+YZ+jEdGyWTbjeVOnktvb6dDfcKm52VIpcgAvqa8CCFFwTE3lFrHK4UdiqxFW2YcIB1lgJADJ1B2wAjL0cuf97uu8jaCpCGMeQXz5/XH5SxLA8ah/6GV7C37+WlEPeyallUUbSn05m/xYVFEMvrw/04bFQUyiwt9/rdqA8OLNOUwIEk9hMWC3LkooE2LTLs4l1OKN2x9OuTGPTU2f4LrH4z32zSChxjI/4fqCFwDJs6MBfQFIlpV1e6F1YOvPLPOtBLLTVK1n1KeXeY9HSvk+f5lxRwS4VFZ1oG6+a/l+MoB2HMUmhEn0Wa+KS2qk5Yfea/UIlvi8IuA7zsXoeYkBuwIT7VJVdU0Oebfkam4jWR6qYs/QQF/MchzungKchhwyhsSzQvCuaHJhdA6D1L0oqkXRpPouJwkcvGu9z+wf+zPfh3h065Trg7tC4DYHnXRSTF0ocO3H+EfImRSP5jsgPz0gMl4iI0=
node_js: stable
addons:
- firefox: latest
+ firefox: '46.0'
apt:
sources:
- - google-chrome
- - ubuntu-toolchain-r-test
+ - google-chrome
packages:
- - google-chrome-stable
- - g++-4.8
+ - google-chrome-stable
sauce_connect: true
script:
- - xvfb-run wct
- - "if [ \"${TRAVIS_PULL_REQUEST}\" = \"false\" ]; then wct -s 'default'; fi"
+- xvfb-run wct
+- if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then wct -s 'default'; fi
+dist: trusty
diff --git a/dashboard-ui/bower_components/paper-progress/CONTRIBUTING.md b/dashboard-ui/bower_components/paper-progress/CONTRIBUTING.md
index f147978a3e..093090d435 100644
--- a/dashboard-ui/bower_components/paper-progress/CONTRIBUTING.md
+++ b/dashboard-ui/bower_components/paper-progress/CONTRIBUTING.md
@@ -1,4 +1,3 @@
-
+
# Polymer Elements
## Guide for Contributors
diff --git a/dashboard-ui/bower_components/paper-progress/bower.json b/dashboard-ui/bower_components/paper-progress/bower.json
index 69a5c5ef22..017624b3c1 100644
--- a/dashboard-ui/bower_components/paper-progress/bower.json
+++ b/dashboard-ui/bower_components/paper-progress/bower.json
@@ -1,6 +1,6 @@
{
"name": "paper-progress",
- "version": "1.0.9",
+ "version": "1.0.10",
"license": "http://polymer.github.io/LICENSE.txt",
"description": "A material design progress bar",
"authors": "The Polymer Authors",
diff --git a/dashboard-ui/bower_components/paper-progress/demo/index.html b/dashboard-ui/bower_components/paper-progress/demo/index.html
index 88f4b76897..6f7b02b121 100644
--- a/dashboard-ui/bower_components/paper-progress/demo/index.html
+++ b/dashboard-ui/bower_components/paper-progress/demo/index.html
@@ -49,11 +49,16 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
- paper-progress can be indeterminate
+ paper-progress can be indeterminate with a custom duration
+
-
+
@@ -84,7 +89,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN