1 line
9.7 KiB
JavaScript
1 line
9.7 KiB
JavaScript
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[9446],{9446:function(e,t,i){i.r(t),i.d(t,{default:function(){return F}}),i(29305),i(32733),i(84701),i(81678),i(84734),i(44962),i(86584),i(4754),i(94),i(77575),i(36947),i(78557),i(90076),i(83994),i(23630),i(82367);var a=i(22696),n=i.n(a),l=i(36300),s=i(9164),c=i(79754),r=i(38490),o=i(46782),u=i(5898),b=i(67430),d=i(82885);function p(e){return p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},p(e)}function h(e,t){for(var i=0;i<t.length;i++){var a=t[i];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,f(a.key),a)}}function f(e){var t=function(e){if("object"!=p(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var i=t.call(e,"string");if("object"!=p(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==p(t)?t:t+""}function m(e){return e.preventDefault(),!1}function v(e,t,i){!function(e,t,a,l){var s=e.querySelector(".genreFilters");l.length?s.classList.remove("hide"):s.classList.add("hide");var c="";c+=l.map((function(e){var t,a,l="";return l+="<label>",l+='<input is="emby-checkbox" type="checkbox"'+(t=e,(-1!==((a=-1===(i.settings.GenreIds||"").indexOf("|")?",":"|")+(i.settings.GenreIds||"")+a).indexOf(a+t.Id+a)?" checked":"")+' data-filter="')+e.Id+'" class="chkGenreFilter"/>',(l+="<span>"+n()(e.Name)+"</span>")+"</label>"})).join(""),s.querySelector(".filterOptions").innerHTML=c}(e,0,0,t.Genres)}function y(e,t,i){var a=i.checked;a=a||null,d.setFilter(t,a)}function k(e,t){for(var i=l.Ay.parentWithClass(e,"checkboxList-verticalwrap"),a=s.A.getFocusableElements(i),n=-1,c=0,r=a.length;c<r;c++)if(a[c]===e){n=c;break}n+=t,n=Math.min(a.length-1,n);var o=a[n=Math.max(0,n)];o&&s.A.focus(o)}function g(e,t,a){Promise.resolve().then(i.bind(i,10838)).then((function(i){var n=a?"on":"off";i.centerFocus[n](e,t)}))}function S(e){switch(e.detail.command){case"left":k(e.target,-1),e.preventDefault();break;case"right":k(e.target,1),e.preventDefault()}}function x(e,t){for(var i=e.querySelectorAll(".checkboxList-verticalwrap"),a=0,n=i.length;a<n;a++)t?r.default.on(i[a],S):r.default.off(i[a],S)}i(77157),i(98959),i(10353),i(15453),i(63001);var F=function(){return e=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)},(t=[{key:"show",value:function(e){return new Promise((function(t){var i={removeOnClose:!0,scrollY:!1};o.A.tv?i.size="fullscreen":i.size="small";var a=c.default.createDialog(i);a.classList.add("formDialog");var n="";n+='<div class="formDialogHeader">',n+='<button is="paper-icon-button-light" class="btnCancel hide-mouse-idle-tv" tabindex="-1" title="'.concat(u.Ay.translate("ButtonBack"),'"><span class="material-icons arrow_back" aria-hidden="true"></span></button>'),n+='<h3 class="formDialogHeaderTitle">${Filters}</h3>',n+="</div>",n+='<div class="formDialogContent smoothScrollY"> <div class="dialogContentInner dialog-content-centered"> <form style="margin:auto"> <div class="verticalSection verticalSection-extrabottompadding basicFilterSection focuscontainer-x" style="margin-top:2em"> <div class="checkboxList checkboxList-verticalwrap"> <label class="viewSetting simpleFilter" data-settingname="IsUnplayed"> <input type="checkbox" is="emby-checkbox" class="chkUnplayed"/> <span>${Unplayed}</span> </label> <label class="viewSetting simpleFilter" data-settingname="IsPlayed"> <input type="checkbox" is="emby-checkbox" class="chkPlayed"/> <span>${Played}</span> </label> <label class="viewSetting simpleFilter" data-settingname="IsFavorite"> <input type="checkbox" is="emby-checkbox" class="chkFavorite"/> <span>${Favorite}</span> </label> <label class="viewSetting simpleFilter" data-settingname="IsResumable"> <input type="checkbox" is="emby-checkbox" class="chkResumable"/> <span>${ContinueWatching}</span> </label> </div> </div> <div class="verticalSection verticalSection-extrabottompadding viewSetting focuscontainer-x" data-settingname="SeriesStatus"> <h2 class="checkboxListLabel">${HeaderSeriesStatus}</h2> <div class="checkboxList checkboxList-verticalwrap"> <label> <input type="checkbox" is="emby-checkbox" class="chkSeriesStatus" data-filter="Continuing"/> <span>${Continuing}</span> </label> <label> <input type="checkbox" is="emby-checkbox" class="chkSeriesStatus" data-filter="Ended"/> <span>${Ended}</span> </label> <label> <input type="checkbox" is="emby-checkbox" class="chkSeriesStatus" data-filter="Unreleased"/> <span>${Unreleased}</span> </label> </div> </div> <div class="verticalSection verticalSection-extrabottompadding hide genreFilters focuscontainer-x"> <h2 class="checkboxListLabel">${Genres}</h2> <div class="checkboxList checkboxList-verticalwrap filterOptions"> </div> </div> <div class="verticalSection verticalSection-extrabottompadding viewSetting focuscontainer-x" data-settingname="VideoType"> <h2 class="checkboxListLabel">${HeaderVideoType}</h2> <div class="checkboxList checkboxList-verticalwrap"> <label> <input type="checkbox" is="emby-checkbox" class="simpleFilter chkHDFilter" data-settingname="IsHD"/> <span>HD</span> </label> <label> <input type="checkbox" is="emby-checkbox" class="simpleFilter chk4KFilter" data-settingname="Is4K"/> <span>4K</span> </label> <label> <input type="checkbox" is="emby-checkbox" class="simpleFilter chkSDFilter" data-settingname="IsSD"/> <span>SD</span> </label> <label> <input type="checkbox" is="emby-checkbox" class="simpleFilter chk3DFilter" data-settingname="Is3D"/> <span>3D</span> </label> <label> <input type="checkbox" is="emby-checkbox" class="chkVideoTypeFilter" data-filter="Bluray"/> <span>Blu-ray</span> </label> <label> <input type="checkbox" is="emby-checkbox" class="chkVideoTypeFilter" data-filter="Dvd"/> <span>DVD</span> </label> </div> </div> <div class="verticalSection verticalSection-extrabottompadding featureSection hide focuscontainer-x"> <h2 class="checkboxListLabel">${Features}</h2> <div class="checkboxList checkboxList-verticalwrap"> <label class="viewSetting simpleFilter" data-settingname="HasSubtitles"> <input type="checkbox" is="emby-checkbox" class="chkFeatureFilter chkSubtitle"/> <span>${Subtitles}</span> </label> <label class="viewSetting simpleFilter" data-settingname="HasTrailer"> <input type="checkbox" is="emby-checkbox" class="chkFeatureFilter chkTrailer"/> <span>${Trailers}</span> </label> <label class="viewSetting simpleFilter" data-settingname="HasSpecialFeature"> <input type="checkbox" is="emby-checkbox" class="chkFeatureFilter chkSpecialFeature"/> <span>${Extras}</span> </label> <label class="viewSetting simpleFilter" data-settingname="HasThemeSong"> <input type="checkbox" is="emby-checkbox" class="chkFeatureFilter chkThemeSong"/> <span>${ThemeSongs}</span> </label> <label class="viewSetting simpleFilter" data-settingname="HasThemeVideo"> <input type="checkbox" is="emby-checkbox" class="chkFeatureFilter chkThemeVideo"/> <span>${ThemeVideos}</span> </label> </div> </div> </form> </div> </div> ',a.innerHTML=u.Ay.translateHtml(n,"core");for(var l,s=a.querySelectorAll(".viewSetting"),r=0,p=s.length;r<p;r++)-1===e.visibleSettings.indexOf(s[r].getAttribute("data-settingname"))?s[r].classList.add("hide"):s[r].classList.remove("hide");!function(e,t){e.querySelector("form").addEventListener("submit",m);var i,a,n=e.querySelectorAll(".simpleFilter");for(i=0,a=n.length;i<a;i++)"INPUT"===n[i].tagName?n[i].checked=t[n[i].getAttribute("data-settingname")]||!1:n[i].querySelector("input").checked=t[n[i].getAttribute("data-settingname")]||!1;var l=t.VideoTypes?t.VideoTypes.split(","):[];for(i=0,a=(n=e.querySelectorAll(".chkVideoTypeFilter")).length;i<a;i++)n[i].checked=-1!==l.indexOf(n[i].getAttribute("data-filter"));var s=t.SeriesStatus?t.SeriesStatus.split(","):[];for(i=0,a=(n=e.querySelectorAll(".chkSeriesStatus")).length;i<a;i++)n[i].checked=-1!==s.indexOf(n[i].getAttribute("data-filter"));e.querySelector(".basicFilterSection .viewSetting:not(.hide)")?e.querySelector(".basicFilterSection").classList.remove("hide"):e.querySelector(".basicFilterSection").classList.add("hide"),e.querySelector(".featureSection .viewSetting:not(.hide)")?e.querySelector(".featureSection").classList.remove("hide"):e.querySelector(".featureSection").classList.add("hide")}(a,e.settings),function(e,t){var i=b.tF.getApiClient(t.serverId),a=Object.assign(t.filterMenuOptions,{UserId:i.getCurrentUserId(),ParentId:t.parentId,IncludeItemTypes:t.itemTypes.join(",")});i.getFilters(a).then((function(i){v(e,i,t)}))}(a,e),x(a,!0),a.querySelector(".btnCancel").addEventListener("click",(function(){c.default.close(a)})),o.A.tv&&g(a.querySelector(".formDialogContent"),!1,!0),a.querySelector("form").addEventListener("change",(function(){l=!0}),!0),c.default.open(a).then((function(){return x(a,!1),o.A.tv&&g(a.querySelector(".formDialogContent"),!1,!1),l?(function(e,t,i){e.querySelectorAll(".simpleFilter").forEach((function(e){"INPUT"===e.tagName?y(0,i+"-filter-"+e.getAttribute("data-settingname"),e):y(0,i+"-filter-"+e.getAttribute("data-settingname"),e.querySelector("input"))}));var a=[];e.querySelectorAll(".chkVideoTypeFilter").forEach((function(e){e.checked&&a.push(e.getAttribute("data-filter"))})),d.setFilter(i+"-filter-VideoTypes",a.join(","));var n=[];e.querySelectorAll(".chkSeriesStatus").forEach((function(e){e.checked&&n.push(e.getAttribute("data-filter"))})),d.setFilter("".concat(i,"-filter-SeriesStatus"),n.join(","));var l=[];e.querySelectorAll(".chkGenreFilter").forEach((function(e){e.checked&&l.push(e.getAttribute("data-filter"))})),d.setFilter(i+"-filter-GenreIds",l.join(","))}(a,e.settings,e.settingsKey),t()):t()}))}))}}])&&h(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}()}}]); |