dashboard-ui/tv/tv.js

102 lines
3.2 KiB
JavaScript

define([
"exports",
"./../modules/tabbedview/tabbedview.js",
"./../modules/common/globalize.js",
"./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js",
"./../modules/emby-elements/emby-button/emby-button.js",
"./../modules/emby-elements/emby-scroller/emby-scroller.js",
], function (
_exports,
_tabbedview,
_globalize,
_embyItemscontainer,
_embyButton,
_embyScroller,
) {
function TVView(view, params) {
_tabbedview.default.call(this, view, params);
}
Object.defineProperty(_exports, "__esModule", { value: !0 }),
(_exports.default = void 0),
Object.assign(TVView.prototype, _tabbedview.default.prototype),
(TVView.prototype.getTabs = function () {
var subviews = this.item.Subviews || [
"series",
"suggestions",
"upcoming",
"favorites",
"genres",
"studios",
];
return [
{
name: _globalize.default.translate("Shows"),
id: "series",
enabled: subviews.includes("series"),
},
{
name: _globalize.default.translate("Suggestions"),
id: "suggestions",
},
{ name: _globalize.default.translate("Upcoming"), id: "upcoming" },
{ name: _globalize.default.translate("Favorites"), id: "favorites" },
{
name: _globalize.default.translate("Collections"),
id: "collections",
enabled: subviews.includes("collections"),
},
{
name: _globalize.default.translate("Genres"),
id: "genres",
enabled: subviews.includes("genres"),
},
{
name: _globalize.default.translate("Tags"),
id: "tags",
enabled: subviews.includes("tags"),
},
{
name: _globalize.default.translate("Networks"),
id: "studios",
enabled: subviews.includes("studios"),
},
];
}),
(TVView.prototype.loadTabController = function (id) {
switch (id) {
case "series":
return Emby.importModule("./modules/tabbedview/seriestab.js");
case "suggestions":
return Emby.importModule("./tv/suggestions.js");
case "upcoming":
return Emby.importModule("./tv/upcoming.js");
case "favorites":
return Emby.importModule("./tv/favorites.js");
case "collections":
return Emby.importModule("./modules/tabbedview/collectionstab.js");
case "genres":
return Emby.importModule("./modules/tabbedview/genrestab.js");
case "studios":
return Emby.importModule("./tv/studios.js");
case "tags":
return Emby.importModule("./modules/tabbedview/tagstab.js");
default:
throw new Error("tab not found: " + id);
}
}),
(TVView.prototype.getTabControllerOptions = function (id) {
var options = _tabbedview.default.prototype.getTabControllerOptions.apply(
this,
arguments,
);
return (
"genres" === id
? (options.queryIncludeItemTypes = ["Series"])
: "episodes" === id &&
((options.itemType = "Episode"), (options.enableAlphaPicker = !1)),
options
);
}),
(_exports.default = TVView);
});