Merge pull request #618 from cewert/update-dependencies

Update npm dependencies, add bslint config, and fix CI errors
This commit is contained in:
Charles Ewert 2022-05-31 14:21:48 -04:00 committed by GitHub
commit 315f1f616b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
42 changed files with 601 additions and 277 deletions

5
bslint.json Normal file
View File

@ -0,0 +1,5 @@
{
"rules": {
"unused-variable": "error"
}
}

View File

@ -18,4 +18,4 @@ sub getTextSize()
m.top.width = res
end sub
end sub

View File

@ -25,4 +25,4 @@ function onKeyEvent(key as string, press as boolean) as boolean
return true
end if
return false
end function
end function

View File

@ -12,4 +12,4 @@ sub setFavoriteStatus()
UnmarkItemFavorite(m.top.itemId)
end if
end sub
end sub

View File

@ -39,7 +39,6 @@
<field id="quickPlayNode" type="node" alwaysNotify="true" />
<field id="imageDisplayMode" type="string" value="scaleToZoom" />
<field id="AlphaSelected" type="string" alias="AlphaMenu.itemAlphaSelected" alwaysNotify="true" onChange="onItemAlphaSelected" />
<field id="imageDisplayMode" type="string" value="scaleToFit" />
</interface>
<script type="text/brightscript" uri="pkg:/source/utils/misc.brs" />
<script type="text/brightscript" uri="pkg:/source/utils/config.brs" />

View File

@ -147,18 +147,15 @@ sub toggleFavorite()
end sub
sub setHeartColor(color as string)
error = []
try
for i = 0 to 6
node = m.favoriteMenu.getChild(i)
if node <> invalid
if node.uri <> invalid and node.uri = "pkg:/images/icons/favorite_selected.png"
m.favoriteMenu.getChild(i).blendColor = color
end if
if node <> invalid and node.uri <> invalid and node.uri = "pkg:/images/icons/favorite_selected.png"
m.favoriteMenu.getChild(i).blendColor = color
end if
end for
catch error
print error
catch e
print e.number, e.message
end try
end sub
@ -254,4 +251,4 @@ function onKeyEvent(key as string, press as boolean) as boolean
return false
end function
end function

View File

@ -92,4 +92,4 @@ sub loadItems()
m.top.content = results
end sub
end sub

View File

@ -123,4 +123,4 @@ sub updateOptions()
optionText.visible = false
optionStar.visible = false
end if
end sub
end sub

View File

@ -13,4 +13,4 @@ end sub
' It is expected that screens override this function if required,
' to handle focus any actions required on the screen being hidden
sub OnScreenHidden()
end sub
end sub

View File

@ -58,10 +58,10 @@ sub ReportPlayback(state = "update" as string)
if m.top.position = invalid then return
params = {
"ItemId": m.top.id
"ItemId": m.top.id,
"PlaySessionId": m.top.PlaySessionId,
"PositionTicks": int(m.top.position) * 10000000&, 'Ensure a LongInteger is used
"IsPaused": (m.top.state = "paused"),
"IsPaused": (m.top.state = "paused")
}
if m.top.content.live
params.append({

View File

@ -31,7 +31,7 @@ function PlaystateDefaults(params = {} as object)
'"SubtitleStreamIndex": 0,
"IsPaused": false,
'"IsMuted": false,
"PositionTicks": 0,
"PositionTicks": 0
'"PlaybackStartTimeTicks": 0,
'"VolumeLevel": 100,
'"Brightness": 100,

View File

@ -1,2 +1,2 @@
sub init()
end sub
end sub

View File

@ -33,4 +33,4 @@ sub setPoster()
end if
end sub
end sub

View File

@ -119,4 +119,4 @@ sub setData()
m.top.iconUrl = "pkg:/images/media_type_icons/live_tv_white.png"
end if
end sub
end sub

View File

@ -4,4 +4,4 @@ sub setFields()
m.top.size = json.size
m.top.height = json.height
m.top.width = json.width
end sub
end sub

View File

@ -70,4 +70,4 @@ sub setContainer()
if m.top.container = "m4v" or m.top.container = "mov"
m.top.container = "mp4"
end if
end sub
end sub

View File

@ -2,4 +2,4 @@ sub init()
end sub
sub press()
end sub
end sub

View File

@ -35,4 +35,4 @@ sub press()
else
set_user_setting(m.top.config_key, m.top.value)
end if
end sub
end sub

View File

@ -229,4 +229,4 @@ end sub
sub dismiss_dialog()
print "Button Pressed"
m.scene.dialog.close = true
end sub
end sub

View File

@ -12,4 +12,4 @@ sub setPoster()
else
m.top.posterURL = ""
end if
end sub
end sub

View File

@ -15,4 +15,4 @@ sub setPoster()
m.top.posterURL = ""
end if
end sub
end sub

View File

@ -30,7 +30,7 @@ sub saveToRegistry()
users.push({
id: m.top.id,
username: m.top.username,
server: get_setting("server"),
server: get_setting("server")
})
set_setting("available_users", formatJson(users))
end if
@ -60,4 +60,4 @@ end sub
sub setServer(hostname as string)
m.top.server = hostname
end sub
end sub

View File

@ -18,4 +18,4 @@ sub setPoster()
imgParams = { "maxHeight": 440, "maxWidth": 295 }
m.top.posterURL = ImageURL(m.top.json.id, "Primary", imgParams)
end if
end sub
end sub

View File

@ -9,4 +9,4 @@ end sub
sub loadLibraries()
m.top.findNode("homeRows").callFunc("loadLibraries")
end sub
end sub

View File

@ -224,4 +224,4 @@ sub onPosterLoadStatusChanged()
m.itemIcon.visible = true
end if
end if
end sub
end sub

View File

@ -912,4 +912,4 @@ function filterNodeArray(nodeArray as object, nodeKey as string, excludeArray as
end if
end for
return newNodeArray
end function
end function

View File

@ -7,7 +7,7 @@ sub loadChannels()
results = []
params = {
UserId: get_setting("active_user"),
UserId: get_setting("active_user")
}
if m.top.filter = "Favorites"

View File

@ -9,7 +9,7 @@ sub loadProgramDetails()
programIndex = m.top.ProgramIndex
params = {
UserId: get_setting("active_user"),
UserId: get_setting("active_user")
}
url = Substitute("LiveTv/Programs/{0}", m.top.programId)
@ -38,4 +38,4 @@ sub loadProgramDetails()
end if
m.top.programDetails = program
end sub
end sub

View File

@ -9,10 +9,10 @@ sub loadSchedule()
params = {
UserId: get_setting("active_user"),
SortBy: "startDate",
EnableImages: false
EnableImages: false,
EnableTotalRecordCount: false,
EnableUserData: false
channelIds: m.top.channelIds
EnableUserData: false,
channelIds: m.top.channelIds,
MaxStartDate: m.top.endTime,
MinEndDate: m.top.startTime
}

View File

@ -30,4 +30,4 @@ sub focusChanged()
m.description.repeatCount = 0
end if
end sub
end sub

View File

@ -30,4 +30,4 @@ sub focusChanged()
m.description.repeatCount = 0
end if
end sub
end sub

View File

@ -6,7 +6,7 @@ sub loadItems()
item = m.top.itemContent
if item <> invalid
params = {
maxHeight: 1080
maxHeight: 1080,
maxWidth: 1920
}
m.top.results = ImageURL(item.Id, "Primary", params)

View File

@ -8,4 +8,4 @@ sub init()
m.BounceAnimation = m.top.findNode("BounceAnimation")
m.BounceAnimation.control = "start" 'Start BounceAnimation
end sub
end sub

View File

@ -1,3 +1,3 @@
sub init()
m.top.optionsAvailable = false
end sub
end sub

View File

@ -138,4 +138,4 @@ function onKeyEvent(key as string, press as boolean) as boolean
end if
return false
end function
end function

753
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -7,9 +7,9 @@
"test": "tests"
},
"devDependencies": {
"@rokucommunity/bslint": "^0.4.0",
"brighterscript": "^0.39.4",
"rooibos-cli": "^1.0.1"
"@rokucommunity/bslint": "^0.7.1",
"brighterscript": "^0.51.2",
"rooibos-cli": "^1.4.0"
},
"scripts": {
"validate": "npx bsc --copy-to-staging=false --create-package=false",

View File

@ -80,7 +80,7 @@ sub AddVideoContent(video, mediaSourceId, audio_stream_idx = 1, subtitle_idx = -
m.tmp = item
end for
'Create Series Scene
group = CreateSeriesDetailsGroup(m.tmp)
CreateSeriesDetailsGroup(m.tmp)
video.content = invalid
return
@ -117,7 +117,7 @@ sub AddVideoContent(video, mediaSourceId, audio_stream_idx = 1, subtitle_idx = -
m.Series_tmp = item
end for
'Create Season Scene
group = CreateSeasonDetailsGroup(m.Series_tmp, m.Season_tmp)
CreateSeasonDetailsGroup(m.Series_tmp, m.Season_tmp)
video.content = invalid
return
@ -133,7 +133,7 @@ sub AddVideoContent(video, mediaSourceId, audio_stream_idx = 1, subtitle_idx = -
m.episode_id = item
end for
'Create Episode Scene
group = CreateMovieDetailsGroup(m.episode_id)
CreateMovieDetailsGroup(m.episode_id)
video.content = invalid
return
end if

View File

@ -46,7 +46,7 @@ function SearchMedia(query as string)
"IncludeGenres": false,
"IncludeStudios": false,
"IncludeArtists": false,
"IncludeItemTypes": "TvChannel,Movie,BoxSet,Series,Episode,Video"
"IncludeItemTypes": "TvChannel,Movie,BoxSet,Series,Episode,Video",
"EnableTotalRecordCount": false,
"ImageTypeLimit": 1,
"Recursive": true

View File

@ -1,6 +1,5 @@
' Set global constants
sub setConstants()
globals = m.screen.getGlobalNode()
' Set Global Constants
@ -17,15 +16,10 @@ sub setConstants()
ascending_black: "pkg:/images/icons/up_black.png",
ascending_white: "pkg:/images/icons/up_white.png",
descending_black: "pkg:/images/icons/down_black.png",
descending_white: "pkg:/images/icons/down_white.png"
descending_white: "pkg:/images/icons/down_white.png",
check_black: "pkg:/images/icons/check_black.png",
check_white: "pkg:/images/icons/check_white.png"
}
}
})
end sub
end sub

View File

@ -199,7 +199,7 @@ function sortSubtitles(id as string, MediaStreams)
"Index": stream.index,
"IsDefault": stream.IsDefault,
"IsForced": stream.IsForced,
"IsExternal": stream.IsExternal
"IsExternal": stream.IsExternal,
"IsEncoded": stream.DeliveryMethod = "Encode"
}
if stream.isForced

View File

@ -89,7 +89,7 @@ function getDeviceProfile() as object
"VideoCodec": tsVideoCodecs,
"Context": "Streaming",
"Protocol": "hls",
"MaxAudioChannels": StrI(maxAudioChannels) ' Currently Jellyfin server expects this as a string
"MaxAudioChannels": StrI(maxAudioChannels), ' Currently Jellyfin server expects this as a string
"MinSegments": "1",
"BreakOnNonKeyFrames": true
},
@ -111,7 +111,7 @@ function getDeviceProfile() as object
{
"Condition": "LessThanEqual",
"Property": "AudioChannels",
"Value": StrI(maxAudioChannels) ' Currently Jellyfin server expects this as a string
"Value": StrI(maxAudioChannels), ' Currently Jellyfin server expects this as a string
"IsRequired": false
}
]
@ -250,7 +250,7 @@ function GetDirectPlayProfiles() as object
},
{
"Container": audio,
"Type": "Audio",
"Type": "Audio"
}
]