|
Server : Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 System : Windows NT SERVER-PC 10.0 build 26200 (Windows 11) AMD64 User : ServerPC ( 0) PHP Version : 8.2.12 Disable Function : NONE Directory : C:/Users/ServerPC/AppData/Roaming/Emby-Server/system/dashboard-ui/settings/ |
Upload File : |
define(["exports","./../list/list.js","./../modules/common/globalize.js","./../modules/emby-elements/emby-button/emby-button.js","./../modules/emby-elements/emby-button/paper-icon-button-light.js","./../modules/emby-elements/emby-scroller/emby-scroller.js","./../modules/approuter.js","./../modules/layoutmanager.js","./../modules/common/servicelocator.js","./notificationeditor.js","./../modules/common/pluginmanager.js","./usernotificationcontroller.js"],function(_exports,_list,_globalize,_embyButton,_paperIconButtonLight,_embyScroller,_approuter,_layoutmanager,_servicelocator,_notificationeditor,_pluginmanager,_usernotificationcontroller){function getEventTypes(instance){return instance.getApiClient().getNotificationTypes({userId:instance.getUserId()})}function mapService(service){return service.Icon||(service.Icon="notifications"),service}function addEntryWithService(instance,service){getEventTypes(instance).then(function(allEventTypes){!function(instance,service){var apiClient=instance.getApiClient();return apiClient.getJSON(apiClient.getUrl("Notifications/Services/Defaults",{UserId:instance.getUserId(),NotifierKey:service.Id}))}(instance,service).then(function(entry){var url,apiClient=instance.getApiClient();require([(url=entry.SetupModuleUrl,_pluginmanager.default.getConfigurationResourceUrl(url))],function(EntryFormEditor){EntryFormEditor=EntryFormEditor.setFormValues?EntryFormEditor:new EntryFormEditor({apiClient:apiClient});(new _notificationeditor.default).show({entry:entry,apiClient:apiClient,eventTypes:allEventTypes,entryFormEditor:EntryFormEditor,userId:instance.getUserId()})})})})}function showNewItemDialog(e){var instance=this,apiClient=instance.getApiClient();return apiClient.getJSON(apiClient.getUrl("Notifications/Services",{UserId:instance.getUserId()})).then(function(services){return apiClient.getCurrentUser().then(function(currentUser){var options,currentUser=currentUser.Policy.IsAdministrator&&_servicelocator.appHost.supports("serversetup")?_globalize.default.translate("ForAdditionalNotificationOptions",'<a href="'+_approuter.default.getRouteUrl("PluginCatalog")+'" is="emby-linkbutton" class="button-link">',"</a>"):_globalize.default.translate("ForAdditionalNotificationOptions","","");return options={positionTo:e.target.closest("button"),positionY:"bottom",items:services.map(mapService),title:_globalize.default.translate("AddNotification"),bottomText:currentUser,hasItemIcon:!0},Emby.importModule("./modules/actionsheet/actionsheet.js").then(function(ActionSheet){return ActionSheet.show(options)}).then(function(id){id=function(services,id){return services.filter(function(i){return i.Id===id})[0]}(services,id);addEntryWithService(instance,id)})})})}function UserNotificationsView(view,params){this.enableAlphaNumericShortcuts=!1,this.enableTotalRecordCountDisplay=!1,this.hasOtherViewButtons=!0,this.supportsViewSettings=!1,_list.default.apply(this,arguments),function(instance,view){view.querySelector(".itemsViewSettingsContainer").classList.add("itemsViewSettingsContainer-align-start","readOnlyContent"),view.querySelector(".listTotalRecordCount").insertAdjacentHTML("afterend",'<div><p style="margin-top:0;">'+_globalize.default.translate("NotificationsDescription")+'</p><button is="emby-button" type="button" class="itemsViewSettingsContainer-button raised raised-mini btnAddItem submit" title="'+_globalize.default.translate("AddNotification")+'" aria-label="'+_globalize.default.translate("AddNotification")+'"><i class="md-icon button-icon button-icon-left"></i><span class="emby-button-text">'+_globalize.default.translate("AddNotification")+"</span></button></div>"),instance.itemsContainer.classList.add("readOnlyContent")}(this,view),view.querySelector(".btnAddItem").addEventListener("click",showNewItemDialog.bind(this)),this.itemsContainer.setAttribute("data-monitor","UserNotifications")}function normalizeItems(instance,items,allEventTypes){for(var i=0,length=items.length;i<length;i++)!function(instance,item,allEventTypes){item.Type="UserNotification",item.ServerId=instance.getApiClient().serverId();var eventIds=item.EventIds||[],instance=allEventTypes.filter(function(eventInfo){return!!eventInfo.Events.filter(function(subEvent){return eventIds.includes(subEvent.Id)}).length});item.EventNames=instance.map(function(eventInfo){return eventInfo.Name}).join(", ")}(instance,items[i],allEventTypes)}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["flexStyles"]),Object.assign(UserNotificationsView.prototype,_list.default.prototype),UserNotificationsView.prototype.supportsAlphaPicker=function(){return!1},UserNotificationsView.prototype.getEmptyListMessage=function(){return Promise.resolve("")},UserNotificationsView.prototype.setTitle=function(){},UserNotificationsView.prototype.getItemTypes=function(){return["UserNotification"]},UserNotificationsView.prototype.getItems=function(query){var instance=this;return function(instance){var apiClient=instance.getApiClient();return apiClient.getJSON(apiClient.getUrl("Notifications/Services/Configured",{UserId:instance.getUserId()}))}(instance).then(function(notifications){return getEventTypes(instance).then(function(allEventTypes){return normalizeItems(instance,notifications,allEventTypes),Promise.resolve({Items:notifications,TotalRecordCount:notifications.length})})})},UserNotificationsView.prototype.getSettingsKey=function(){return"usernotifications"},UserNotificationsView.prototype.getBaseListRendererOptions=function(){var options=_list.default.prototype.getBaseListRendererOptions.apply(this,arguments);return options.draggable=!1,options.draggableXActions=!0,options.action=_layoutmanager.default.tv?"menu":"edit",options},UserNotificationsView.prototype.getCardOptions=function(items,settings){var options=_list.default.prototype.getCardOptions.apply(this,arguments);return options.fields.push("Name","EventNames"),options},UserNotificationsView.prototype.getListViewOptions=function(items,settings){var options=_list.default.prototype.getListViewOptions.apply(this,arguments),index=(options.enableDefaultIcon=!0,options.defaultBackground=!1,options.deleteButton=!0,options.moreButton=!1,options.largeHeading=!0,options.buttonCommands=["edit","delete"],options.fields.push("ServiceName","FriendlyName","EventNames"),options.fields.indexOf("Name"));return-1<index&&options.fields.splice(index,1),options},UserNotificationsView.prototype.getUserId=function(){return this.params.userId||this.getApiClient().getCurrentUserId()},UserNotificationsView.prototype.getViewSettingDefaults=function(){var viewSettings=_list.default.prototype.getViewSettingDefaults.apply(this,arguments);return viewSettings.imageType="list",viewSettings};_exports.default=UserNotificationsView});