EmbyCrackedClient/web/plugins/installedpluginstab.js
2025-06-25 11:46:04 +08:00

1 line
No EOL
2.5 KiB
JavaScript

import ItemsTab from"./../modules/tabbedview/itemstab.js";import"./../modules/emby-elements/emby-button/emby-button.js";import"./../modules/emby-elements/emby-scroller/emby-scroller.js";import pluginManager from"./../modules/common/pluginmanager.js";import layoutManager from"./../modules/layoutmanager.js";function sortPlugins(plugin1,plugin2){return plugin1.Name>plugin2.Name?1:-1}function setPluginProperies(plugin,serverId,pluginConfigurationPages){plugin.ServerId=serverId,plugin.Type="Plugin",plugin.PrimaryImageAspectRatio=16/9;serverId=pluginConfigurationPages.filter(function(pluginConfigurationPage){return pluginConfigurationPage.PluginId===plugin.Id})[0];plugin.ConfigPageUrl=serverId?serverId.Href||pluginManager.getConfigurationPageUrl(serverId.Name):null}function InstalledPluginsTab(view,params){this.supportsViewSettings=!1,this.enableTotalRecordCountDisplay=!1,this.enableAlphaNumericShortcuts=!1,ItemsTab.apply(this,arguments)}Object.assign(InstalledPluginsTab.prototype,ItemsTab.prototype),InstalledPluginsTab.prototype.onTemplateLoaded=function(){ItemsTab.prototype.onTemplateLoaded.apply(this,arguments),this.itemsContainer.setAttribute("data-monitor","Plugins")},InstalledPluginsTab.prototype.onResume=function(options){ItemsTab.prototype.onResume.apply(this,arguments)},InstalledPluginsTab.prototype.loadTemplate=function(){return this.loadItemsTemplate()},InstalledPluginsTab.prototype.getItems=function(query){let apiClient=this.getApiClient();return apiClient.getInstalledPlugins().then(function(plugins){return apiClient.getConfigurationPages({EnableInUserMenu:!1}).then(function(configPages){var serverId=apiClient.serverId();for(let i=0,length=plugins.length;i<length;i++)setPluginProperies(plugins[i],serverId,configPages);var totalRecordCount=(plugins=plugins.sort(sortPlugins)).length;return query&&(query.StartIndex&&(plugins=plugins.slice(query.StartIndex)),null!=query.Limit)&&query.Limit<plugins.length&&(plugins.length=query.Limit),{Items:plugins,TotalRecordCount:totalRecordCount}})})},InstalledPluginsTab.prototype.getSettingsKey=function(){return"plugins"},InstalledPluginsTab.prototype.setTitle=function(){},InstalledPluginsTab.prototype.getBaseListRendererOptions=function(){var options=ItemsTab.prototype.getBaseListRendererOptions.apply(this,arguments);return options.draggable=!1,options.draggableXActions=!0,layoutManager.tv&&(options.action="menu"),options},InstalledPluginsTab.prototype.getItemTypes=function(){return["Plugin"]};export default InstalledPluginsTab;