···11-import dayjs, { Dayjs, type ManipulateType } from "dayjs";
11+import dayjs, { type Dayjs, type ManipulateType } from "dayjs";
22import { type PlayObject, type PlayObjectMinimal, type BrainzMeta, type MBID, type ScrobbleActionResult, type UnixTimestamp } from "../../../../core/Atomic.ts";
33import { getRoot } from "../../../ioc.ts";
44import { removeUndefinedKeys } from '../../../../core/DataUtils.ts';
+21-30
src/backend/sources/JellyfinApiSource.ts
···11-import { type Logger } from "@foxxmd/logging";
21import { WS } from "iso-websocket";
32// @ts-expect-error weird typings?
43import { Api, Jellyfin } from "@jellyfin/sdk";
54import {
65 // @ts-expect-error weird typings?
77- AuthenticationResult,
66+ type BaseItemDto,
87 // @ts-expect-error weird typings?
99- BaseItemDto,
88+ type CollectionType,
109 // @ts-expect-error weird typings?
1111- BaseItemKind,
1212- // @ts-expect-error weird typings?
1313- ItemSortBy,
1010+ type ImageUrlsApi,
1411 // @ts-expect-error weird typings?
1512 MediaType,
1613 // @ts-expect-error weird typings?
1717- SessionInfo,
1414+ type SessionInfo,
1815 // @ts-expect-error weird typings?
1919- SortOrder, UserDto, VirtualFolderInfo, CollectionType, CollectionTypeOptions, ImageUrlsApi
1616+ type UserDto,
1717+ // @ts-expect-error weird typings?
1818+ type VirtualFolderInfo
2019} from "@jellyfin/sdk/lib/generated-client/index.js";
2120import {
2221 // @ts-expect-error weird typings?
2323- getItemsApi,
2222+ SystemInfoIssue
2323+} from "@jellyfin/sdk/lib/index.js";
2424+import {
2525+ // @ts-expect-error weird typings?
2626+ getImageApi,
2727+ // @ts-expect-error weird typings?
2828+ getLibraryStructureApi,
2429 // @ts-expect-error weird typings?
2530 getSessionApi,
2631 // @ts-expect-error weird typings?
2732 getSystemApi,
2833 // @ts-expect-error weird typings?
2929- getUserApi,
3030- // @ts-expect-error weird typings?
3131- getApiKeyApi,
3232- // @ts-expect-error weird typings?
3333- getLibraryStructureApi,
3434- // @ts-expect-error weird typings?
3535- getImageApi,
3636-3434+ getUserApi
3735} from "@jellyfin/sdk/lib/utils/api/index.js";
3838-import {
3939- // @ts-expect-error weird typings?
4040- SystemInfoIssue
4141-}
4242-from "@jellyfin/sdk/lib/index.js";
4336import dayjs from "dayjs";
4437import EventEmitter from "events";
3838+import { FixedSizeList } from "fixed-size-list";
4539import { type ArtistCredit, type BrainzMeta, type PlayObject, type PlayObjectMinimal } from "../../core/Atomic.ts";
4646-import { artistNamesToCredits, artistNameToCredit, buildTrackString, combinePartsToString, truncateStringToLength } from "../../core/StringUtils.ts";
4040+import { genGroupIdStr } from '../../core/PlayUtils.ts';
4141+import { artistNameToCredit, buildTrackString, combinePartsToString, truncateStringToLength } from "../../core/StringUtils.ts";
4742import {
4843 type FormatPlayObjectOptions,
4944 type InternalConfig,
5050- type PlayerStateData,
5145 type PlayerStateDataMaybePlay,
5246 REPORTED_PLAYER_STATUSES
5347} from "../common/infrastructure/Atomic.ts";
5454-import { type PlayPlatformId } from '../../core/Atomic.ts';
5548import { type JellyApiSourceConfig } from "../common/infrastructure/config/source/jellyfin.ts";
5656-import { getPlatformIdFromData, isDebugMode, parseBool, } from "../utils.ts";
5757-import { genGroupIdStr } from '../../core/PlayUtils.ts';
4949+import { getPlatformIdFromData, isDebugMode } from "../utils.ts";
5050+import { noCasePropObj } from "../utils/DataUtils.ts";
5851import { joinedUrl } from "../utils/NetworkUtils.ts";
5252+import { baseFormatPlayObj } from "../utils/PlayTransformUtils.ts";
5953import { hashObject, parseArrayFromMaybeString } from "../utils/StringUtils.ts";
6054import { MemoryPositionalSource } from "./MemoryPositionalSource.ts";
6161-import { FixedSizeList } from "fixed-size-list";
6262-import { baseFormatPlayObj } from "../utils/PlayTransformUtils.ts";
6363-import { noCasePropObj } from "../utils/DataUtils.ts";
64556556const shortDeviceId = truncateStringToLength(10, '');
6657
+1-1
src/backend/sources/MopidySource.ts
···11import { loggerTest } from "@foxxmd/logging";
22import dayjs from "dayjs";
33import { EventEmitter } from "events";
44-import Mopidy, { models } from "mopidy";
44+import Mopidy, { type models } from "mopidy";
55import normalizeUrl from 'normalize-url';
66import pEvent from 'p-event';
77import { URL } from "url";
+2-2
src/backend/tests/jellyfin/jellyfin.test.ts
···22import { assert, expect } from 'chai';
33import EventEmitter from "events";
44import { describe, it } from 'mocha';
55-import { type JsonPlayObject, type PlayMeta, type PlayObject } from "../../../core/Atomic.ts";
55+import { type JsonPlayObject, type PlayMeta } from "../../../core/Atomic.ts";
6677import JellyfinApiSource from "../../sources/JellyfinApiSource.ts";
88import validSession from './validSession.json' with { type: "json" };
99import { type JellyApiData } from "../../common/infrastructure/config/source/jellyfin.ts";
1010import { generatePlay } from "../../../core/PlayTestUtils.ts";
1111import { faker, fakerJA } from "@faker-js/faker";
1212-import {
1212+import type {
1313 // @ts-expect-error weird typings?
1414 SessionInfo,
1515 // @ts-expect-error weird typings?