import events from"./../../emby-apiclient/events.js";import connectionManager from"./../../emby-apiclient/connectionmanager.js";import textEncoding from"./../textencoding.js";import playbackManager from"./../playback/playbackmanager.js";import{appHost}from"./../servicelocator.js";import appRouter from"./../../approuter.js";import inputManager from"./../inputmanager.js";import focusManager from"./../../focusmanager.js";function showAlert(options){return Emby.importModule("./modules/common/dialogs/alert.js").then(function(alert){return alert(options)})}function showToast(options){return Emby.importModule("./modules/toast/toast.js").then(function(toast){return toast(options)})}let serverNotifications={};function notifyApp(){inputManager.notify()}function encodeForDisplay(text){return textEncoding.htmlEncode(text)}function displayMessage(cmd){var cmd=cmd.Arguments,timeoutMs=(cmd.Header&&(cmd.Header=encodeForDisplay(cmd.Header)),cmd.Text&&(cmd.Text=encodeForDisplay(cmd.Text)),cmd.TimeoutMs?parseInt(cmd.TimeoutMs):0);timeoutMs?showToast({title:cmd.Header,text:cmd.Text,timeoutMs:timeoutMs}):showAlert({title:cmd.Header,text:cmd.Text})}function displayContent(cmd,apiClient){playbackManager.isPlayingLocally(["Video","Book","Game"])||appRouter.showItem(cmd.Arguments.ItemId,apiClient.serverId())}function playTrailers(apiClient,itemId){apiClient.getItem(apiClient.getCurrentUserId(),itemId,{ExcludeFields:"Chapters,MediaSources,MediaStreams,People,Overview"}).then(function(item){playbackManager.playTrailers(item)})}function processGeneralCommand(cmd,apiClient){switch(cmd.Name){case"Select":return void inputManager.trigger("select");case"Back":return void inputManager.trigger("back");case"MoveUp":return void inputManager.trigger("up");case"MoveDown":return void inputManager.trigger("down");case"MoveLeft":return void inputManager.trigger("left");case"MoveRight":return void inputManager.trigger("right");case"PageUp":return void inputManager.trigger("pageup");case"PageDown":return void inputManager.trigger("pagedown");case"PlayTrailers":playTrailers(apiClient,cmd.Arguments.ItemId);break;case"SetRepeatMode":playbackManager.setRepeatMode(cmd.Arguments.RepeatMode);break;case"SetShuffle":var shuffle=cmd.Arguments.Shuffle;playbackManager.setShuffle(!0===shuffle||"true"===(shuffle||"").toString().toLowerCase());break;case"SetSubtitleOffset":playbackManager.setSubtitleOffset(parseFloat(cmd.Arguments.SubtitleOffset));break;case"IncrementSubtitleOffset":playbackManager.incrementSubtitleOffset(parseFloat(cmd.Arguments.Increment));break;case"SetPlaybackRate":playbackManager.setPlaybackRate(parseFloat(cmd.Arguments.PlaybackRate));break;case"VolumeUp":return void inputManager.trigger("volumeup");case"VolumeDown":return void inputManager.trigger("volumedown");case"ChannelUp":return void inputManager.trigger("channelup");case"ChannelDown":return void inputManager.trigger("channeldown");case"Mute":return void inputManager.trigger("mute");case"Unmute":return void inputManager.trigger("unmute");case"ToggleMute":return void inputManager.trigger("togglemute");case"SetVolume":notifyApp(),playbackManager.setVolume(cmd.Arguments.Volume);break;case"SetAudioStreamIndex":notifyApp(),playbackManager.setAudioStreamIndex(parseInt(cmd.Arguments.Index));break;case"SetSubtitleStreamIndex":notifyApp(),playbackManager.setSubtitleStreamIndex(parseInt(cmd.Arguments.Index),null,"true"===cmd.Arguments.RefreshMediaSource);break;case"SetCurrentPlaylistItem":notifyApp(),playbackManager.setCurrentPlaylistItem(cmd.Arguments.PlaylistItemId);break;case"MovePlaylistItem":notifyApp(),playbackManager.movePlaylistItem(cmd.Arguments.PlaylistItemId,parseInt(cmd.Arguments.NewIndex));break;case"RemoveFromPlaylist":notifyApp(),playbackManager.removeFromPlaylist(cmd.Arguments.PlaylistItemIds.split(","));break;case"ToggleFullscreen":return void inputManager.trigger("togglefullscreen");case"GoHome":return void inputManager.trigger("home");case"GoToSettings":return void inputManager.trigger("settings");case"DisplayContent":displayContent(cmd,apiClient);break;case"GoToSearch":return void inputManager.trigger("search");case"DisplayMessage":displayMessage(cmd);break;case"ToggleOsd":case"ToggleContextMenu":case"TakeScreenShot":case"SendKey":break;case"SendString":focusManager.sendText(cmd.Arguments.String);break;default:console.log("processGeneralCommand does not recognize: "+cmd.Name)}notifyApp()}let appSupportsSync=appHost.supports("sync");function onMessageReceived(e,msg){var messageType=msg.MessageType;switch(messageType){case"Play":notifyApp();var serverId=this.serverId();"PlayNext"===msg.Data.PlayCommand?playbackManager.queueNext({ids:msg.Data.ItemIds,serverId:serverId}):"PlayLast"===msg.Data.PlayCommand?playbackManager.queue({ids:msg.Data.ItemIds,serverId:serverId}):playbackManager.play({ids:msg.Data.ItemIds,startPositionTicks:msg.Data.StartPositionTicks,mediaSourceId:msg.Data.MediaSourceId,audioStreamIndex:msg.Data.AudioStreamIndex,subtitleStreamIndex:msg.Data.SubtitleStreamIndex,startIndex:msg.Data.StartIndex,serverId:serverId,shuffle:"PlayShuffle"===msg.Data.PlayCommand});break;case"Playstate":"Stop"===msg.Data.Command?inputManager.trigger("stop"):"Pause"===msg.Data.Command?inputManager.trigger("pause"):"Unpause"===msg.Data.Command?inputManager.trigger("play"):"PlayPause"===msg.Data.Command?inputManager.trigger("playpause"):"Seek"===msg.Data.Command?playbackManager.seek(msg.Data.SeekPositionTicks):"SeekRelative"===msg.Data.Command?playbackManager.seekRelative(msg.Data.SeekPositionTicks):"NextTrack"===msg.Data.Command?inputManager.trigger("next"):"PreviousTrack"===msg.Data.Command?inputManager.trigger("previous"):notifyApp();break;case"GeneralCommand":processGeneralCommand(msg.Data,this);break;case"UserDataChanged":if(msg.Data.UserId===this.getCurrentUserId()){var userDataList=msg.Data.UserDataList;for(let i=0,length=userDataList.length;i