Methods
(static) getPlaceholderImagePath(itemType) → {string}
Returns the local placeholder image URI for a given Jellyfin item type. Used by JRPlaceholder when an item has no image URL or its image fails to load. The returned URI uses Roku's $$RES$$ autosub token (see manifest's uri_resolution_autosub declaration) so the OS rewrites it to the correct per-device asset (_fhd.png / _hd.png) at load time.
| Name | Type | Description |
|---|---|---|
itemType | string | Jellyfin item type string (e.g., "Movie", "Person") |
pkg:/ URI to the appropriate placeholder image
- Type:
- string
(static) resolveItemPlaceholderType(item) → {string}
Resolves the Jellyfin item type string to use as JRPlaceholder.itemType for a given content node. For most types this is just item.type. For library-tile container types (CollectionFolder / UserView / Folder) it consults DeterminePresenterType() in libraryViewFactory.bs so that, e.g., a Movies library with no custom art surfaces the Movie glyph instead of a generic folder, a Music library surfaces the album glyph, and so on. Unresolved library tiles fall back to "Folder" so every cell surfaces a placeholder rather than rendering as an empty backdrop.
ChannelFolderItem is intentionally NOT treated as a library-tile here — it passes through unchanged so getPlaceholderImagePath maps it to the livetv glyph (matching its parent channel's visual treatment).
NOTE: The library-tile set here (CollectionFolder / UserView / Folder) is intentionally narrower than what might initially seem natural and is distinct from JRRowItem.bs's isLibraryTile check at line 112 (CollectionFolder / UserView / Channel). JRRowItem renders library tiles in a dedicated branch with its own backdropText + itemIcon overlay (not via JRPlaceholder), so its set reflects what naturally appears in horizontal rows on Home. This routing is grid-side and serves a different purpose (typed-glyph fallback for empty-art tiles).
Returns "" only when the item itself is invalid or has no type at all — valid items always resolve to a typed glyph or the "Folder" catch-all.
or "" only when item is invalid / typeless
| Name | Type | Description |
|---|---|---|
item | object | Jellyfin content node |
Title-cased Jellyfin type string compatible with getPlaceholderImagePath,
- Type:
- string