Constructor
new JellyfinDataTransformer() → {JellyfinDataTransformer}
- Type:
- JellyfinDataTransformer
Methods
populateLyrics(item, response) → {void}
Populate lyrics from a separate API call result.
| Name | Type | Description |
|---|---|---|
item | object | JellyfinBaseItem node (already transformed) |
response | object | LyricDto response from GET /Audio/{itemId}/Lyrics |
- Type:
- void
populateMediaSegments(item, segmentsResponse) → {void}
Populate media segments from a separate API call result. This is a sanctioned post-transformation mutation: data arrives via a separate API call.
| Name | Type | Description |
|---|---|---|
item | object | JellyfinBaseItem node (already transformed) |
segmentsResponse | object | Response body from GET /MediaSegments/{itemId} |
- Type:
- void
populateThemeSongs(item, response) → {void}
Populate theme songs from a separate API call result.
| Name | Type | Description |
|---|---|---|
item | object | JellyfinBaseItem node (already transformed) |
response | object | Response from GET /Items/{id}/ThemeSongs |
- Type:
- void
populateThemeVideos(item, response) → {void}
Populate theme videos from a separate API call result.
| Name | Type | Description |
|---|---|---|
item | object | JellyfinBaseItem node (already transformed) |
response | object | Response from GET /Items/{id}/ThemeVideos |
- Type:
- void
transformBaseItem(apiData, serverVersionopt, preferredSubtitleLanguageopt) → {object}
Transform a BaseItemDto to a JellyfinBaseItem content node.
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
apiData | object | Raw BaseItemDto assocarray from the Jellyfin API | ||
serverVersion | string | <optional> | "" | Server version string (auto-detected from global session if omitted) |
preferredSubtitleLanguage | string | <optional> | "" | BCP-47 language code for subtitle sort priority (e.g. "eng") |
JellyfinBaseItem node, or invalid if apiData is invalid
- Type:
- object
transformBaseItemArray(apiArray, serverVersionopt, preferredSubtitleLanguageopt) → {object}
Transform an array of BaseItemDto objects. Skips invalid entries silently.
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
apiArray | object | Array of BaseItemDto assocArrays | ||
serverVersion | string | <optional> | "" | Server version (auto-detected if omitted) |
preferredSubtitleLanguage | string | <optional> | "" | Language code for subtitle sort preference |
Array of JellyfinBaseItem nodes (may be shorter than input if entries were invalid)
- Type:
- object
transformPerson(person) → {object}
Transform a BaseItemPerson (from a parent item's People array) to a JellyfinBaseItem node. BaseItemPerson has {Id, Name, Type: "Actor"/"Director"/etc, Role, PrimaryImageTag}. Note: PrimaryImageTag is set directly (NOT nested under ImageTags like a BaseItemDto). Subtitle is pre-computed: "as {Role}" for actors, "{Type}" for others.
| Name | Type | Description |
|---|---|---|
person | object | Raw BaseItemPerson assocarray from a parent item's People array |
JellyfinBaseItem node, or invalid if person is invalid
- Type:
- object