strings update UX
This commit is contained in:
parent
a0aca73295
commit
7b737a6bfc
@ -38,6 +38,7 @@
|
||||
}
|
||||
.detailImageContainerCard:not(.imageWidthTest) {
|
||||
width: 100% !important;
|
||||
padding: 10em
|
||||
}
|
||||
.detailImageContainerCard .cardBox {
|
||||
-webkit-margin-end: 0 !important;
|
||||
@ -355,7 +356,7 @@
|
||||
}
|
||||
.detailTextContainer {
|
||||
margin: 0 -1em;
|
||||
padding: 0 1em;
|
||||
padding: 10em 1em;
|
||||
}
|
||||
.detailTextContainer-extrapadding {
|
||||
padding: 0 1.6em;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -333,7 +333,7 @@
|
||||
"HeaderVideoPlayback": "Video Playback",
|
||||
"TV": "TV",
|
||||
"HeaderEmbyConnect": "Emby Connect",
|
||||
"Seasons": "Seasons",
|
||||
"Seasons": "Seasons ⇩",
|
||||
"OneTrack": "1 Track",
|
||||
"OneSeason": "1 Season",
|
||||
"Libraries": "Libraries",
|
||||
@ -676,7 +676,7 @@
|
||||
"Movies": "Movies",
|
||||
"Music": "Music",
|
||||
"Kids": "Kids",
|
||||
"MoreFromValue": "More from {0}",
|
||||
"MoreFromValue": "More from {0} ⇩",
|
||||
"DiedValue": "Died: {0}",
|
||||
"BornValue": "Born: {0}",
|
||||
"BornValueWithPlace": "Born: {0} in {1}",
|
||||
@ -739,9 +739,9 @@
|
||||
"Accept": "Accept",
|
||||
"Reject": "Reject",
|
||||
"Connect": "Connect",
|
||||
"HeaderMyMedia": "My Media",
|
||||
"HeaderMyMedia": "Anime Library",
|
||||
"HeaderMyMediaSmall": "My Media (small)",
|
||||
"LatestFromLibrary": "Latest {0}",
|
||||
"LatestFromLibrary": "Latest Anime {0}",
|
||||
"HeaderLatestEpisodes": "Latest Episodes",
|
||||
"ContinuePlaying": "Continue playing",
|
||||
"ContinueWatching": "Continue watching",
|
||||
@ -1193,4 +1193,4 @@
|
||||
"PasswordForFolderHelp": "The password required to access this folder on your network (if applicable).",
|
||||
"ShowMediaInfoOnDetailScreens": "Show full media info on audio and video detail screens",
|
||||
"ForgotPasswordNoUserFound": "No users were found with the entered name. Please try again, or leave the name blank to reset the password for all users on this server."
|
||||
}
|
||||
}
|
||||
|
||||
@ -1 +1,69 @@
|
||||
define(["exports","./../modules/emby-elements/emby-scroller/emby-scroller.js","./../modules/viewmanager/baseview.js","./../modules/focusmanager.js","./../modules/emby-apiclient/connectionmanager.js","./searchfields.js","./searchresults.js","./../modules/emby-apiclient/events.js"],function(_exports,_embyScroller,_baseview,_focusmanager,_connectionmanager,_searchfields,_searchresults,_events){function SearchView(view,params){_baseview.default.apply(this,arguments);var self=this;self.searchFields=new _searchfields.default({serverId:params.serverId||_connectionmanager.default.currentApiClient().serverId(),element:view.querySelector(".searchFields")}),self.searchResults=new _searchresults.default({element:view.querySelector(".searchResults"),serverId:params.serverId||_connectionmanager.default.currentApiClient().serverId(),parentId:params.parentId,collectionType:params.collectionType,requestedItemFields:this.getRequestedItemFields()}),_events.default.on(self.searchFields,"search",function(e,value){self.searchResults.search(value)})}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,Object.assign(SearchView.prototype,_baseview.default.prototype),SearchView.prototype.onPause=function(){_baseview.default.prototype.onPause.apply(this,arguments),this.searchFields&&this.searchFields.pause()},SearchView.prototype.onInputCommand=function(e){"search"===e.detail.command?(_focusmanager.default.focus(this.view.querySelector(".searchfields-txtSearch")),e.preventDefault()):_baseview.default.prototype.onInputCommand.apply(this,arguments)},SearchView.prototype.onResume=function(options){_baseview.default.prototype.onResume.apply(this,arguments),this.searchFields&&this.searchFields.resume(options)},SearchView.prototype.destroy=function(){_baseview.default.prototype.destroy.apply(this,arguments),this.searchFields&&(this.searchFields.destroy(),this.searchFields=null),this.searchResults&&(this.searchResults.destroy(),this.searchResults=null)},_exports.default=SearchView});
|
||||
define([
|
||||
"exports",
|
||||
"./../modules/emby-elements/emby-scroller/emby-scroller.js",
|
||||
"./../modules/viewmanager/baseview.js",
|
||||
"./../modules/focusmanager.js",
|
||||
"./../modules/emby-apiclient/connectionmanager.js",
|
||||
"./searchfields.js",
|
||||
"./searchresults.js",
|
||||
"./../modules/emby-apiclient/events.js",
|
||||
], function (
|
||||
_exports,
|
||||
_embyScroller,
|
||||
_baseview,
|
||||
_focusmanager,
|
||||
_connectionmanager,
|
||||
_searchfields,
|
||||
_searchresults,
|
||||
_events,
|
||||
) {
|
||||
function SearchView(view, params) {
|
||||
_baseview.default.apply(this, arguments);
|
||||
var self = this;
|
||||
(self.searchFields = new _searchfields.default({
|
||||
serverId:
|
||||
params.serverId ||
|
||||
_connectionmanager.default.currentApiClient().serverId(),
|
||||
element: view.querySelector(".searchFields"),
|
||||
})),
|
||||
(self.searchResults = new _searchresults.default({
|
||||
element: view.querySelector(".searchResults"),
|
||||
serverId:
|
||||
params.serverId ||
|
||||
_connectionmanager.default.currentApiClient().serverId(),
|
||||
parentId: params.parentId,
|
||||
collectionType: params.collectionType,
|
||||
requestedItemFields: this.getRequestedItemFields(),
|
||||
})),
|
||||
_events.default.on(self.searchFields, "search", function (e, value) {
|
||||
self.searchResults.search(value);
|
||||
});
|
||||
}
|
||||
Object.defineProperty(_exports, "__esModule", { value: !0 }),
|
||||
(_exports.default = void 0),
|
||||
Object.assign(SearchView.prototype, _baseview.default.prototype),
|
||||
(SearchView.prototype.onPause = function () {
|
||||
_baseview.default.prototype.onPause.apply(this, arguments),
|
||||
this.searchFields && this.searchFields.pause();
|
||||
}),
|
||||
(SearchView.prototype.onInputCommand = function (e) {
|
||||
"search" === e.detail.command
|
||||
? (_focusmanager.default.focus(
|
||||
this.view.querySelector(".searchfields-txtSearch"),
|
||||
),
|
||||
e.preventDefault())
|
||||
: _baseview.default.prototype.onInputCommand.apply(this, arguments);
|
||||
}),
|
||||
(SearchView.prototype.onResume = function (options) {
|
||||
_baseview.default.prototype.onResume.apply(this, arguments),
|
||||
this.searchFields && this.searchFields.resume(options);
|
||||
}),
|
||||
(SearchView.prototype.destroy = function () {
|
||||
_baseview.default.prototype.destroy.apply(this, arguments),
|
||||
this.searchFields &&
|
||||
(this.searchFields.destroy(), (this.searchFields = null)),
|
||||
this.searchResults &&
|
||||
(this.searchResults.destroy(), (this.searchResults = null));
|
||||
}),
|
||||
(_exports.default = SearchView);
|
||||
});
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1,178 @@
|
||||
define(["exports","./../modules/emby-apiclient/connectionmanager.js","./../modules/layoutmanager.js","./../modules/cardbuilder/cardbuilder.js","./../modules/tabbedview/basetab.js","./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js","./../modules/emby-elements/emby-scroller/emby-scroller.js"],function(_exports,_connectionmanager,_layoutmanager,_cardbuilder,_basetab,_embyItemscontainer,_embyScroller){function enableScrollX(section){return"resume"===section||_layoutmanager.default.tv}function TvSuggestionsTab(view,params){_basetab.default.apply(this,arguments),this.view=view,this.params=params,this.apiClient=_connectionmanager.default.getApiClient(params.serverId),function(view){for(var containers=view.querySelectorAll(".autoScrollSection"),i=0,length=containers.length;i<length;i++){var section=containers[i],html=void 0,sectionType=section.getAttribute("data-section"),commands="resume"===sectionType?' data-commands="removefromresume"':"";html=enableScrollX(sectionType)?'<div is="emby-scroller" class="padded-top-focusscale padded-bottom-focusscale padded-left padded-left-page padded-right" data-mousewheel="false" data-focusscroll="true"><div is="emby-itemscontainer"'+commands+' class="itemsContainer scrollSlider focuscontainer-x" data-monitor="videoplayback,markplayed" data-virtualscrolllayout="horizontal-grid"></div></div>':'<div is="emby-itemscontainer"'+commands+' class="itemsContainer padded-left padded-left-page padded-right vertical-wrap focuscontainer-x" data-monitor="videoplayback,markplayed"></div>',section.insertAdjacentHTML("beforeend",html)}}(view),this.resumeItemsContainer=view.querySelector(".resumeSection .itemsContainer"),this.resumeItemsContainer.fetchData=function(query){var apiClient=this.apiClient,parentId=this.params.parentId;return apiClient.getResumableItems(apiClient.getCurrentUserId(),Object.assign({IncludeItemTypes:"Episode",Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio",ParentId:parentId,ImageTypeLimit:1,EnableImageTypes:this.getRequestedImageTypes()},query))}.bind(this),this.resumeItemsContainer.getListOptions=function(){return{renderer:_cardbuilder.default,options:{preferThumb:!0,shape:"backdrop",scalable:!0,fields:this.enableFocusPreview()?[]:["ParentName","Name"],centerText:!0,overlayPlayButton:!0,cardLayout:!1,focusTransformTitleAdjust:!0,animateProgressBar:!0},virtualScrollLayout:"horizontal-grid"}}.bind(this),this.resumeItemsContainer.parentContainer=view.querySelector(".resumeSection"),this.addFocusBehavior(this.resumeItemsContainer),this.latestItemsContainer=view.querySelector(".latestSection .itemsContainer"),this.latestItemsContainer.fetchData=function(query){var parentId=this.params.parentId;return this.apiClient.getLatestItems(Object.assign({IncludeItemTypes:"Episode",Limit:30,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio",ParentId:parentId,ImageTypeLimit:1,EnableImageTypes:this.getRequestedImageTypes(),GroupItems:!1}),query)}.bind(this),this.latestItemsContainer.getListOptions=function(){return{renderer:_cardbuilder.default,options:{preferThumb:!0,shape:"backdrop",scalable:!0,fields:this.enableFocusPreview()?[]:["ParentName","Name"],centerText:!0,overlayPlayButton:!0,cardLayout:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:enableScrollX("latest")?"horizontal-grid":"vertical-grid"}}.bind(this),this.latestItemsContainer.parentContainer=view.querySelector(".latestSection"),this.addFocusBehavior(this.latestItemsContainer),params.parentId&&(this.resumeItemsContainer.setAttribute("data-parentid",params.parentId),this.latestItemsContainer.setAttribute("data-parentid",params.parentId))}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,Object.assign(TvSuggestionsTab.prototype,_basetab.default.prototype),TvSuggestionsTab.prototype.supportsFocusPreview=function(){return!0},TvSuggestionsTab.prototype.enableFocusPreview=function(){return _layoutmanager.default.tv&&this.supportsFocusPreview()},TvSuggestionsTab.prototype.onResume=function(options){_basetab.default.prototype.onResume.apply(this,arguments);var promises=[],instance=(promises.push(this.resumeItemsContainer.resume(options)),promises.push(this.latestItemsContainer.resume(options)),this);Promise.all(promises).then(function(){options.autoFocus&&instance.autoFocus(),instance.fillFocusPreviewIfNeeded()})},TvSuggestionsTab.prototype.onPause=function(){_basetab.default.prototype.onPause.apply(this,arguments),this.resumeItemsContainer.pause(),this.latestItemsContainer.pause()},TvSuggestionsTab.prototype.destroy=function(){_basetab.default.prototype.destroy.apply(this,arguments),this.view=null,this.params=null,this.apiClient=null,this.resumeItemsContainer=null,this.latestItemsContainer=null},_exports.default=TvSuggestionsTab});
|
||||
define([
|
||||
"exports",
|
||||
"./../modules/emby-apiclient/connectionmanager.js",
|
||||
"./../modules/layoutmanager.js",
|
||||
"./../modules/cardbuilder/cardbuilder.js",
|
||||
"./../modules/tabbedview/basetab.js",
|
||||
"./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js",
|
||||
"./../modules/emby-elements/emby-scroller/emby-scroller.js",
|
||||
], function (
|
||||
_exports,
|
||||
_connectionmanager,
|
||||
_layoutmanager,
|
||||
_cardbuilder,
|
||||
_basetab,
|
||||
_embyItemscontainer,
|
||||
_embyScroller,
|
||||
) {
|
||||
function enableScrollX(section) {
|
||||
return "resume" === section || _layoutmanager.default.tv;
|
||||
}
|
||||
function TvSuggestionsTab(view, params) {
|
||||
_basetab.default.apply(this, arguments),
|
||||
(this.view = view),
|
||||
(this.params = params),
|
||||
(this.apiClient = _connectionmanager.default.getApiClient(
|
||||
params.serverId,
|
||||
)),
|
||||
(function (view) {
|
||||
for (
|
||||
var containers = view.querySelectorAll(".autoScrollSection"),
|
||||
i = 0,
|
||||
length = containers.length;
|
||||
i < length;
|
||||
i++
|
||||
) {
|
||||
var section = containers[i],
|
||||
html = void 0,
|
||||
sectionType = section.getAttribute("data-section"),
|
||||
commands =
|
||||
"resume" === sectionType
|
||||
? ' data-commands="removefromresume"'
|
||||
: "";
|
||||
(html = enableScrollX(sectionType)
|
||||
? '<div is="emby-scroller" class="padded-top-focusscale padded-bottom-focusscale padded-left padded-left-page padded-right" data-mousewheel="false" data-focusscroll="true"><div is="emby-itemscontainer"' +
|
||||
commands +
|
||||
' class="itemsContainer scrollSlider focuscontainer-x" data-monitor="videoplayback,markplayed" data-virtualscrolllayout="horizontal-grid"></div></div>'
|
||||
: '<div is="emby-itemscontainer"' +
|
||||
commands +
|
||||
' class="itemsContainer padded-left padded-left-page padded-right vertical-wrap focuscontainer-x" data-monitor="videoplayback,markplayed"></div>'),
|
||||
section.insertAdjacentHTML("beforeend", html);
|
||||
}
|
||||
})(view),
|
||||
(this.resumeItemsContainer = view.querySelector(
|
||||
".resumeSection .itemsContainer",
|
||||
)),
|
||||
(this.resumeItemsContainer.fetchData = function (query) {
|
||||
var apiClient = this.apiClient,
|
||||
parentId = this.params.parentId;
|
||||
return apiClient.getResumableItems(
|
||||
apiClient.getCurrentUserId(),
|
||||
Object.assign(
|
||||
{
|
||||
IncludeItemTypes: "Episode",
|
||||
Fields:
|
||||
this.getRequestedItemFields() + ",PrimaryImageAspectRatio",
|
||||
ParentId: parentId,
|
||||
ImageTypeLimit: 1,
|
||||
EnableImageTypes: this.getRequestedImageTypes(),
|
||||
},
|
||||
query,
|
||||
),
|
||||
);
|
||||
}.bind(this)),
|
||||
(this.resumeItemsContainer.getListOptions = function () {
|
||||
return {
|
||||
renderer: _cardbuilder.default,
|
||||
options: {
|
||||
preferThumb: !0,
|
||||
shape: "backdrop",
|
||||
scalable: !0,
|
||||
fields: this.enableFocusPreview() ? [] : ["ParentName", "Name"],
|
||||
centerText: !0,
|
||||
overlayPlayButton: !0,
|
||||
cardLayout: !1,
|
||||
focusTransformTitleAdjust: !0,
|
||||
animateProgressBar: !0,
|
||||
},
|
||||
virtualScrollLayout: "horizontal-grid",
|
||||
};
|
||||
}.bind(this)),
|
||||
(this.resumeItemsContainer.parentContainer =
|
||||
view.querySelector(".resumeSection")),
|
||||
this.addFocusBehavior(this.resumeItemsContainer),
|
||||
(this.latestItemsContainer = view.querySelector(
|
||||
".latestSection .itemsContainer",
|
||||
)),
|
||||
(this.latestItemsContainer.fetchData = function (query) {
|
||||
var parentId = this.params.parentId;
|
||||
return this.apiClient.getLatestItems(
|
||||
Object.assign({
|
||||
IncludeItemTypes: "Episode",
|
||||
Limit: 30,
|
||||
Fields: this.getRequestedItemFields() + ",PrimaryImageAspectRatio",
|
||||
ParentId: parentId,
|
||||
ImageTypeLimit: 1,
|
||||
EnableImageTypes: this.getRequestedImageTypes(),
|
||||
GroupItems: !1,
|
||||
}),
|
||||
query,
|
||||
);
|
||||
}.bind(this)),
|
||||
(this.latestItemsContainer.getListOptions = function () {
|
||||
return {
|
||||
renderer: _cardbuilder.default,
|
||||
options: {
|
||||
preferThumb: !0,
|
||||
shape: "backdrop",
|
||||
scalable: !0,
|
||||
fields: this.enableFocusPreview() ? [] : ["ParentName", "Name"],
|
||||
centerText: !0,
|
||||
overlayPlayButton: !0,
|
||||
cardLayout: !1,
|
||||
focusTransformTitleAdjust: !0,
|
||||
},
|
||||
virtualScrollLayout: enableScrollX("latest")
|
||||
? "horizontal-grid"
|
||||
: "vertical-grid",
|
||||
};
|
||||
}.bind(this)),
|
||||
(this.latestItemsContainer.parentContainer =
|
||||
view.querySelector(".latestSection")),
|
||||
this.addFocusBehavior(this.latestItemsContainer),
|
||||
params.parentId &&
|
||||
(this.resumeItemsContainer.setAttribute(
|
||||
"data-parentid",
|
||||
params.parentId,
|
||||
),
|
||||
this.latestItemsContainer.setAttribute(
|
||||
"data-parentid",
|
||||
params.parentId,
|
||||
));
|
||||
}
|
||||
Object.defineProperty(_exports, "__esModule", { value: !0 }),
|
||||
(_exports.default = void 0),
|
||||
Object.assign(TvSuggestionsTab.prototype, _basetab.default.prototype),
|
||||
(TvSuggestionsTab.prototype.supportsFocusPreview = function () {
|
||||
return !0;
|
||||
}),
|
||||
(TvSuggestionsTab.prototype.enableFocusPreview = function () {
|
||||
return _layoutmanager.default.tv && this.supportsFocusPreview();
|
||||
}),
|
||||
(TvSuggestionsTab.prototype.onResume = function (options) {
|
||||
_basetab.default.prototype.onResume.apply(this, arguments);
|
||||
var promises = [],
|
||||
instance =
|
||||
(promises.push(this.resumeItemsContainer.resume(options)),
|
||||
promises.push(this.latestItemsContainer.resume(options)),
|
||||
this);
|
||||
Promise.all(promises).then(function () {
|
||||
options.autoFocus && instance.autoFocus(),
|
||||
instance.fillFocusPreviewIfNeeded();
|
||||
});
|
||||
}),
|
||||
(TvSuggestionsTab.prototype.onPause = function () {
|
||||
_basetab.default.prototype.onPause.apply(this, arguments),
|
||||
this.resumeItemsContainer.pause(),
|
||||
this.latestItemsContainer.pause();
|
||||
}),
|
||||
(TvSuggestionsTab.prototype.destroy = function () {
|
||||
_basetab.default.prototype.destroy.apply(this, arguments),
|
||||
(this.view = null),
|
||||
(this.params = null),
|
||||
(this.apiClient = null),
|
||||
(this.resumeItemsContainer = null),
|
||||
(this.latestItemsContainer = null);
|
||||
}),
|
||||
(_exports.default = TvSuggestionsTab);
|
||||
});
|
||||
|
||||
132
tv/upcoming.js
132
tv/upcoming.js
@ -1 +1,131 @@
|
||||
define(["exports","./../modules/emby-apiclient/connectionmanager.js","./../modules/cardbuilder/cardbuilder.js","./../modules/tabbedview/basetab.js","./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js","./../modules/emby-elements/emby-scroller/emby-scroller.js","./../modules/common/globalize.js","./../modules/common/datetime.js"],function(_exports,_connectionmanager,_cardbuilder,_basetab,_embyItemscontainer,_embyScroller,_globalize,_datetime){function UpcomingTab(view,params){_basetab.default.apply(this,arguments),this.view=view,this.params=params,this.apiClient=_connectionmanager.default.getApiClient(params.serverId)}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,Object.assign(UpcomingTab.prototype,_basetab.default.prototype),UpcomingTab.prototype.onResume=function(options){_basetab.default.prototype.onResume.apply(this,arguments);var promises,parentId,view,instance,apiClient=this.apiClient;options.refresh&&(parentId=this.params.parentId,(promises=[]).push(apiClient.getUpcomingEpisodes({Limit:60,UserId:apiClient.getCurrentUserId(),ImageTypeLimit:1,EnableImageTypes:"Primary,Backdrop,Thumb",EnableTotalRecordCount:!1,parentId:parentId})),view=this.view,instance=this,Promise.all(promises).then(function(responses){return function(view,items){for(var groups=[],currentGroupName="",currentGroup=[],i=0,length=items.length;i<length;i++){var item=items[i],dateText="";if(item.PremiereDate)try{var premiereDate=new Date(Date.parse(item.PremiereDate)),dateText=_datetime.default.isRelativeDay(premiereDate,-1)?_globalize.default.translate("Yesterday"):_datetime.default.toLocaleDateString(premiereDate,{weekday:"long",month:"short",day:"numeric"})}catch(err){dateText=item.PremiereDate}dateText!==currentGroupName?(currentGroup.length&&groups.push({name:currentGroupName,items:currentGroup}),currentGroupName=dateText,currentGroup=[item]):currentGroup.push(item)}var html="";for(i=0,length=groups.length;i<length;i++)html=(html+='<div class="verticalSection verticalSection-cards focusable" data-focusabletype="nearest">')+'<h2 class="sectionTitle sectionTitle-cards padded-left padded-left-page">'+groups[i].name+'</h2><div is="emby-scroller" class="padded-top-focusscale padded-bottom-focusscale" data-framesize="matchgrandparent" data-focusscroll="true" data-mousewheel="false"><div is="emby-itemscontainer" class="itemsContainer scrollSlider focuscontainer-x padded-left padded-left-page padded-right"></div></div></div>';(view=view.classList.contains("upcomingContainer")?view:view.querySelector(".upcomingContainer")).innerHTML=html;var itemContainers=view.querySelectorAll(".itemsContainer");for(i=0,length=groups.length;i<length;i++)_cardbuilder.default.buildCards(groups[i].items,{showLocationTypeIndicator:!1,shape:"backdrop",preferThumb:!0,showDetailsMenu:!0,fields:["ParentName","Name"],missingIndicator:!1,multiSelect:!1,itemsContainer:itemContainers[i]})}(view,responses[0].Items),options.autoFocus&&instance.autoFocus(),Promise.resolve()}))},UpcomingTab.prototype.onPause=function(){_basetab.default.prototype.onPause.apply(this,arguments)},UpcomingTab.prototype.destroy=function(){_basetab.default.prototype.destroy.apply(this,arguments),this.view=null,this.params=null,this.apiClient=null},_exports.default=UpcomingTab});
|
||||
define([
|
||||
"exports",
|
||||
"./../modules/emby-apiclient/connectionmanager.js",
|
||||
"./../modules/cardbuilder/cardbuilder.js",
|
||||
"./../modules/tabbedview/basetab.js",
|
||||
"./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js",
|
||||
"./../modules/emby-elements/emby-scroller/emby-scroller.js",
|
||||
"./../modules/common/globalize.js",
|
||||
"./../modules/common/datetime.js",
|
||||
], function (
|
||||
_exports,
|
||||
_connectionmanager,
|
||||
_cardbuilder,
|
||||
_basetab,
|
||||
_embyItemscontainer,
|
||||
_embyScroller,
|
||||
_globalize,
|
||||
_datetime,
|
||||
) {
|
||||
function UpcomingTab(view, params) {
|
||||
_basetab.default.apply(this, arguments),
|
||||
(this.view = view),
|
||||
(this.params = params),
|
||||
(this.apiClient = _connectionmanager.default.getApiClient(
|
||||
params.serverId,
|
||||
));
|
||||
}
|
||||
Object.defineProperty(_exports, "__esModule", { value: !0 }),
|
||||
(_exports.default = void 0),
|
||||
Object.assign(UpcomingTab.prototype, _basetab.default.prototype),
|
||||
(UpcomingTab.prototype.onResume = function (options) {
|
||||
_basetab.default.prototype.onResume.apply(this, arguments);
|
||||
var promises,
|
||||
parentId,
|
||||
view,
|
||||
instance,
|
||||
apiClient = this.apiClient;
|
||||
options.refresh &&
|
||||
((parentId = this.params.parentId),
|
||||
(promises = []).push(
|
||||
apiClient.getUpcomingEpisodes({
|
||||
Limit: 60,
|
||||
UserId: apiClient.getCurrentUserId(),
|
||||
ImageTypeLimit: 1,
|
||||
EnableImageTypes: "Primary,Backdrop,Thumb",
|
||||
EnableTotalRecordCount: !1,
|
||||
parentId: parentId,
|
||||
}),
|
||||
),
|
||||
(view = this.view),
|
||||
(instance = this),
|
||||
Promise.all(promises).then(function (responses) {
|
||||
return (
|
||||
(function (view, items) {
|
||||
for (
|
||||
var groups = [],
|
||||
currentGroupName = "",
|
||||
currentGroup = [],
|
||||
i = 0,
|
||||
length = items.length;
|
||||
i < length;
|
||||
i++
|
||||
) {
|
||||
var item = items[i],
|
||||
dateText = "";
|
||||
if (item.PremiereDate)
|
||||
try {
|
||||
var premiereDate = new Date(Date.parse(item.PremiereDate)),
|
||||
dateText = _datetime.default.isRelativeDay(
|
||||
premiereDate,
|
||||
-1,
|
||||
)
|
||||
? _globalize.default.translate("Yesterday")
|
||||
: _datetime.default.toLocaleDateString(premiereDate, {
|
||||
weekday: "long",
|
||||
month: "short",
|
||||
day: "numeric",
|
||||
});
|
||||
} catch (err) {
|
||||
dateText = item.PremiereDate;
|
||||
}
|
||||
dateText !== currentGroupName
|
||||
? (currentGroup.length &&
|
||||
groups.push({
|
||||
name: currentGroupName,
|
||||
items: currentGroup,
|
||||
}),
|
||||
(currentGroupName = dateText),
|
||||
(currentGroup = [item]))
|
||||
: currentGroup.push(item);
|
||||
}
|
||||
var html = "";
|
||||
for (i = 0, length = groups.length; i < length; i++)
|
||||
html =
|
||||
(html +=
|
||||
'<div class="verticalSection verticalSection-cards focusable" data-focusabletype="nearest">') +
|
||||
'<h2 class="sectionTitle sectionTitle-cards padded-left padded-left-page">' +
|
||||
groups[i].name +
|
||||
'</h2><div is="emby-scroller" class="padded-top-focusscale padded-bottom-focusscale" data-framesize="matchgrandparent" data-focusscroll="true" data-mousewheel="false"><div is="emby-itemscontainer" class="itemsContainer scrollSlider focuscontainer-x padded-left padded-left-page padded-right"></div></div></div>';
|
||||
(view = view.classList.contains("upcomingContainer")
|
||||
? view
|
||||
: view.querySelector(".upcomingContainer")).innerHTML = html;
|
||||
var itemContainers = view.querySelectorAll(".itemsContainer");
|
||||
for (i = 0, length = groups.length; i < length; i++)
|
||||
_cardbuilder.default.buildCards(groups[i].items, {
|
||||
showLocationTypeIndicator: !1,
|
||||
shape: "backdrop",
|
||||
preferThumb: !0,
|
||||
showDetailsMenu: !0,
|
||||
fields: ["ParentName", "Name"],
|
||||
missingIndicator: !1,
|
||||
multiSelect: !1,
|
||||
itemsContainer: itemContainers[i],
|
||||
});
|
||||
})(view, responses[0].Items),
|
||||
options.autoFocus && instance.autoFocus(),
|
||||
Promise.resolve()
|
||||
);
|
||||
}));
|
||||
}),
|
||||
(UpcomingTab.prototype.onPause = function () {
|
||||
_basetab.default.prototype.onPause.apply(this, arguments);
|
||||
}),
|
||||
(UpcomingTab.prototype.destroy = function () {
|
||||
_basetab.default.prototype.destroy.apply(this, arguments),
|
||||
(this.view = null),
|
||||
(this.params = null),
|
||||
(this.apiClient = null);
|
||||
}),
|
||||
(_exports.default = UpcomingTab);
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user