diff --git a/.dependency-cruiser-known-violations.json b/.dependency-cruiser-known-violations.json new file mode 100644 index 00000000..6cdd8477 --- /dev/null +++ b/.dependency-cruiser-known-violations.json @@ -0,0 +1,55205 @@ +[ + { + "type": "dependency", + "from": "src/lib/api/library/internal.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/navidromeBrowse.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/navidromeSmart.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonic.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonic.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicArtists.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicClient.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicClient.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicLibrary.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicPlaylists.ts", + "to": "src/features/offline/index.ts", + "unresolvedTo": "@/features/offline", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicPlaylists.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicRadio.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStarRating.ts", + "to": "src/features/offline/index.ts", + "unresolvedTo": "@/features/offline", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStarRating.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStarRating.ts", + "to": "src/store/libraryIndexStore.ts", + "unresolvedTo": "@/store/libraryIndexStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStatistics.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStreamUrl.ts", + "to": "src/cover/resolveEntry.ts", + "unresolvedTo": "@/cover/resolveEntry", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStreamUrl.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "@/cover/storageKeys", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStreamUrl.ts", + "to": "src/cover/types.ts", + "unresolvedTo": "@/cover/types", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/api/subsonicStreamUrl.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/audio/autodjOverlapCap.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/cache/ephemeralTierReconcile.ts", + "to": "src/store/localPlaybackKeys.ts", + "unresolvedTo": "@/store/localPlaybackKeys", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/cache/ephemeralTierReconcile.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/format/formatClockTime.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/hooks/useLibraryAnalysisBackfill.ts", + "to": "src/store/analysisStrategyStore.ts", + "unresolvedTo": "@/store/analysisStrategyStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/hooks/useLibraryAnalysisBackfill.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/hooks/useLibraryIndexSync.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/hooks/useLibraryIndexSync.ts", + "to": "src/store/libraryIndexStore.ts", + "unresolvedTo": "@/store/libraryIndexStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/libraryCoverBackfillPolicy.ts", + "to": "src/cover/ensureQueue.ts", + "unresolvedTo": "@/cover/ensureQueue", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/libraryReady.ts", + "to": "src/store/libraryIndexStore.ts", + "unresolvedTo": "@/store/libraryIndexStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/librarySession.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/librarySession.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/librarySession.ts", + "to": "src/store/libraryIndexStore.ts", + "unresolvedTo": "@/store/libraryIndexStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/liveSearchDebug.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/library/patchOnUse.ts", + "to": "src/store/libraryIndexStore.ts", + "unresolvedTo": "@/store/libraryIndexStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/media/mediaDir.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/media/trackServerScope.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/navigation/advancedSearchScrollSnapshot.ts", + "to": "src/store/advancedSearchSessionStore.ts", + "unresolvedTo": "@/store/advancedSearchSessionStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/navigation/albumDetailNavigation.ts", + "to": "src/store/advancedSearchSessionStore.ts", + "unresolvedTo": "@/store/advancedSearchSessionStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/navigation/detailServerScope.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/network/activeServerReachability.ts", + "to": "src/store/devOfflineBrowseStore.ts", + "unresolvedTo": "@/store/devOfflineBrowseStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/network/subsonicNetworkGuard.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/network/subsonicNetworkGuard.ts", + "to": "src/store/devOfflineBrowseStore.ts", + "unresolvedTo": "@/store/devOfflineBrowseStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/network/subsonicNetworkGuard.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/perf/formatCoverPipelineQueueOverlay.ts", + "to": "src/cover/ensureQueue.ts", + "unresolvedTo": "@/cover/ensureQueue", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/perf/formatCoverPipelineQueueOverlay.ts", + "to": "src/cover/peekQueue.ts", + "unresolvedTo": "@/cover/peekQueue", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverBaseUrl.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverDisplayName.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverEndpoint.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverFingerprint.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverHttpHeaders.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverIndexKey.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverIndexKey.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverIndexMigration.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverLookup.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverLookup.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverMagicString.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/serverUrlRemigration.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/server/syncServerHttpContext.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/share/copyEntityShareLink.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/share/shareLink.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/share/shareServerOriginLabel.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/themes/installThemeFromRegistry.ts", + "to": "src/store/installedThemesStore.ts", + "unresolvedTo": "@/store/installedThemesStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/themes/themeInjection.ts", + "to": "src/store/installedThemesStore.ts", + "unresolvedTo": "@/store/installedThemesStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/themes/uninstallTheme.ts", + "to": "src/store/installedThemesStore.ts", + "unresolvedTo": "@/store/installedThemesStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "dependency", + "from": "src/lib/themes/uninstallTheme.ts", + "to": "src/store/themeStore.ts", + "unresolvedTo": "@/store/themeStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "lib-is-the-floor" + } + }, + { + "type": "cycle", + "from": "src/api/coverCache.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "../cover/storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/api/coverCache.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/api/coverCache.ts", + "to": "src/store/themeStore.ts", + "unresolvedTo": "../store/themeStore", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/themeStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/artistBackdrop.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/cover/useArtistFanart.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/AlbumCoverArtImage.tsx", + "to": "src/cover/useLibraryCoverRef.ts", + "unresolvedTo": "./useLibraryCoverRef", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useLibraryCoverRef.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/AlbumCoverArtImage.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/ArtistCoverArtImage.tsx", + "to": "src/cover/useLibraryCoverRef.ts", + "unresolvedTo": "./useLibraryCoverRef", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useLibraryCoverRef.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ArtistCoverArtImage.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/CoverArtImage.tsx", + "to": "src/cover/ensureQueue.ts", + "unresolvedTo": "./ensureQueue", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/CoverArtImage.tsx", + "to": "src/cover/prefetchRegistry.ts", + "unresolvedTo": "./prefetchRegistry", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/prefetchRegistry.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/CoverArtImage.tsx", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/CoverArtImage.tsx", + "to": "src/cover/useCoverArt.ts", + "unresolvedTo": "./useCoverArt", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/CoverArtImage.tsx", + "to": "src/ui/CachedImage.tsx", + "unresolvedTo": "@/ui/CachedImage", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/coverTraffic.ts", + "to": "src/api/coverCache.ts", + "unresolvedTo": "../api/coverCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/coverTraffic.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/coverTraffic.ts", + "to": "src/cover/ensureQueue.ts", + "unresolvedTo": "./ensureQueue", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/coverTraffic.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/coverTraffic.ts", + "to": "src/cover/peekQueue.ts", + "unresolvedTo": "./peekQueue", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/peekQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/coverTraffic.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/coverTraffic.ts", + "to": "src/cover/prefetchRegistry.ts", + "unresolvedTo": "./prefetchRegistry", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/prefetchRegistry.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/coverTraffic.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/diskSrcCache.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/themeStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/artistBackdrop.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/cover/useArtistFanart.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/diskSrcLookup.ts", + "to": "src/cover/diskSrcCache.ts", + "unresolvedTo": "./diskSrcCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/diskSrcLookup.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/diskSrcLookup.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/diskSrcLookup.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/ensureQueue.ts", + "to": "src/api/coverCache.ts", + "unresolvedTo": "../api/coverCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/ensureQueue.ts", + "to": "src/cover/diskSrcCache.ts", + "unresolvedTo": "./diskSrcCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/ensureQueue.ts", + "to": "src/cover/diskSrcLookup.ts", + "unresolvedTo": "./diskSrcLookup", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcLookup.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/ensureQueue.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ensureQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/fetchUrl.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/fetchUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/fetchUrl.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/fetchUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/AlbumCoverArtImage.tsx", + "unresolvedTo": "./AlbumCoverArtImage", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/AlbumCoverArtImage.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/ArtistCoverArtImage.tsx", + "unresolvedTo": "./ArtistCoverArtImage", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/ArtistCoverArtImage.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/diskSrcCache.ts", + "unresolvedTo": "./diskSrcCache", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/fetchUrl.ts", + "unresolvedTo": "./fetchUrl", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/fetchUrl.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/ref.ts", + "unresolvedTo": "./ref", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/resolveDisk.ts", + "unresolvedTo": "./resolveDisk", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/resolveDisk.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/resolveEntryLibrary.ts", + "unresolvedTo": "./resolveEntryLibrary", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/resolveEntryLibrary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/resolveJs.ts", + "unresolvedTo": "./resolveJs", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/resolveJs.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/fetchUrl.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/TrackCoverArtImage.tsx", + "unresolvedTo": "./TrackCoverArtImage", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/useCoverArt.ts", + "unresolvedTo": "./useCoverArt", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/useLibraryCoverPrefetch.ts", + "unresolvedTo": "./useLibraryCoverPrefetch", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useLibraryCoverPrefetch.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/prefetchRegistry.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/useLibraryCoverRef.ts", + "unresolvedTo": "./useLibraryCoverRef", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useLibraryCoverRef.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/index.ts", + "to": "src/cover/usePlaybackCoverArt.ts", + "unresolvedTo": "./usePlaybackCoverArt", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/usePlaybackCoverArt.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/peekQueue.ts", + "to": "src/api/coverCache.ts", + "unresolvedTo": "../api/coverCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/peekQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/peekQueue.ts", + "to": "src/cover/diskSrcCache.ts", + "unresolvedTo": "./diskSrcCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/peekQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/peekQueue.ts", + "to": "src/cover/diskSrcLookup.ts", + "unresolvedTo": "./diskSrcLookup", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcLookup.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/peekQueue.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/prefetchRegistry.ts", + "to": "src/api/coverCache.ts", + "unresolvedTo": "../api/coverCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/prefetchRegistry.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/prefetchRegistry.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/prefetchRegistry.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/ref.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/resolveDisk.ts", + "to": "src/cover/diskSrcCache.ts", + "unresolvedTo": "./diskSrcCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/resolveDisk.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/resolveDisk.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/resolveDisk.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/resolveEntryLibrary.ts", + "to": "src/api/coverCache.ts", + "unresolvedTo": "../api/coverCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/resolveEntryLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/resolveEntryLibrary.ts", + "to": "src/cover/ref.ts", + "unresolvedTo": "./ref", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/resolveEntryLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/resolveEntryLibrary.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/resolveEntryLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/resolveJs.ts", + "to": "src/cover/resolveDisk.ts", + "unresolvedTo": "./resolveDisk", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/resolveDisk.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/resolveJs.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/resolveJs.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/resolveJs.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/storageKeys.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/TrackCoverArtImage.tsx", + "to": "src/cover/useLibraryCoverRef.ts", + "unresolvedTo": "./useLibraryCoverRef", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useLibraryCoverRef.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/useArtistFanart.ts", + "to": "src/cover/ref.ts", + "unresolvedTo": "./ref", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/ref.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/themeStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/artistBackdrop.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/cover/useArtistFanart.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/useArtistFanart.ts", + "to": "src/store/themeStore.ts", + "unresolvedTo": "../store/themeStore", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/themeStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/artistBackdrop.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/cover/useArtistFanart.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/useCoverArt.ts", + "to": "src/cover/diskSrcCache.ts", + "unresolvedTo": "./diskSrcCache", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/useCoverArt.ts", + "to": "src/cover/storageKeys.ts", + "unresolvedTo": "./storageKeys", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/useLibraryCoverPrefetch.ts", + "to": "src/cover/resolveEntryLibrary.ts", + "unresolvedTo": "./resolveEntryLibrary", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/resolveEntryLibrary.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/useLibraryCoverPrefetch.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/useLibraryCoverRef.ts", + "to": "src/cover/resolveEntryLibrary.ts", + "unresolvedTo": "./resolveEntryLibrary", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/resolveEntryLibrary.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/useLibraryCoverRef.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/cover/usePlaybackCoverArt.ts", + "to": "src/cover/useCoverArt.ts", + "unresolvedTo": "./useCoverArt", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/useCoverArt.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/diskSrcCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/TrackCoverArtImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/CoverArtImage.tsx", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/ui/CachedImage.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/usePlaybackCoverArt.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/album/components/AlbumCard.tsx", + "to": "src/features/artist/index.ts", + "unresolvedTo": "@/features/artist", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/artist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/artist/components/ArtistDetailHero.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/album/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/album/components/AlbumCard.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/album/components/AlbumHeader.tsx", + "to": "src/features/artist/index.ts", + "unresolvedTo": "@/features/artist", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/artist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/artist/components/ArtistDetailHero.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/album/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/album/components/AlbumHeader.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/album/components/AlbumRow.tsx", + "to": "src/features/album/components/AlbumCard.tsx", + "unresolvedTo": "@/features/album/components/AlbumCard", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/album/components/AlbumCard.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/artist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/artist/components/ArtistDetailHero.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/album/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/album/components/AlbumRow.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/album/components/LosslessAlbumsRail.tsx", + "to": "src/features/album/components/AlbumRow.tsx", + "unresolvedTo": "@/features/album/components/AlbumRow", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/album/components/AlbumRow.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/album/components/AlbumCard.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/artist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/artist/components/ArtistDetailHero.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/album/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/album/components/LosslessAlbumsRail.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/artist/hooks/useArtistsBrowseFilters.ts", + "to": "src/features/album/index.ts", + "unresolvedTo": "@/features/album", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/album/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/album/components/AlbumCard.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/artist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/artist/hooks/useArtistsBrowseFilters.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/lyrics/hooks/useLyrics.ts", + "to": "src/features/lyrics/utils/lyricsPersistentCache.ts", + "unresolvedTo": "@/features/lyrics/utils/lyricsPersistentCache", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/lyrics/utils/lyricsPersistentCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/lyrics/hooks/useLyrics.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "to": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "unresolvedTo": "@/features/offline/utils/favoritesOfflineBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "to": "src/features/offline/utils/offlineBrowseContext.ts", + "unresolvedTo": "@/features/offline/utils/offlineBrowseContext", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/hooks/useOfflineLibraryFilterSuspend.ts", + "to": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "unresolvedTo": "@/features/offline/hooks/useOfflineBrowseContext", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineLibraryFilterSuspend.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/store/offlineStore.ts", + "unresolvedTo": "./store/offlineStore", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "unresolvedTo": "./utils/favoritesOfflineBrowse", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/favoritesOfflineSync.ts", + "unresolvedTo": "./utils/favoritesOfflineSync", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/legacyOfflineFileMigration.ts", + "unresolvedTo": "./utils/legacyOfflineFileMigration", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/legacyOfflineFileMigration.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/libraryTierReconcile.ts", + "unresolvedTo": "./utils/libraryTierReconcile", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/libraryTierReconcile.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlineAlbumBrowseCatalog.ts", + "unresolvedTo": "./utils/offlineAlbumBrowseCatalog", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineAlbumBrowseCatalog.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineLocalBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlineBrowseContext.ts", + "unresolvedTo": "./utils/offlineBrowseContext", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlineLibraryHelpers.ts", + "unresolvedTo": "./utils/offlineLibraryHelpers", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlineLibraryIndexLoad.ts", + "unresolvedTo": "./utils/offlineLibraryIndexLoad", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLibraryIndexLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlineLocalBrowse.ts", + "unresolvedTo": "./utils/offlineLocalBrowse", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLocalBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlineMediaResolve.ts", + "unresolvedTo": "./utils/offlineMediaResolve", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryIndexLoad.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlinePinQueue.ts", + "unresolvedTo": "./utils/offlinePinQueue", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlinePinQueue.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "unresolvedTo": "./utils/offlinePlaylistBrowse", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/offlineStarredLoad.ts", + "unresolvedTo": "./utils/offlineStarredLoad", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineStarredLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/pinnedOfflineSync.ts", + "unresolvedTo": "./utils/pinnedOfflineSync", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/index.ts", + "to": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "unresolvedTo": "./utils/resumeIncompleteOfflinePins", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/store/offlineStore.ts", + "to": "src/features/offline/utils/offlineLibraryHelpers.ts", + "unresolvedTo": "@/features/offline/utils/offlineLibraryHelpers", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/store/offlineStore.ts", + "to": "src/features/offline/utils/offlinePinQueue.ts", + "unresolvedTo": "@/features/offline/utils/offlinePinQueue", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlinePinQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/store/offlineStore.ts", + "to": "src/lib/api/subsonicArtists.ts", + "unresolvedTo": "@/lib/api/subsonicArtists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/store/offlineStore.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/store/offlineStore.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/store/offlineStore.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/store/offlineStore.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "to": "src/features/offline/utils/offlineLibraryHelpers.ts", + "unresolvedTo": "@/features/offline/utils/offlineLibraryHelpers", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "unresolvedTo": "@/features/offline/utils/favoritesOfflineBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/features/offline/utils/offlineLibraryIndexLoad.ts", + "unresolvedTo": "@/features/offline/utils/offlineLibraryIndexLoad", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLibraryIndexLoad.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/lib/api/subsonicArtists.ts", + "unresolvedTo": "@/lib/api/subsonicArtists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/lib/api/subsonicStarRating.ts", + "unresolvedTo": "@/lib/api/subsonicStarRating", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/favoritesOfflineSync.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/favoritesOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/legacyOfflineFileMigration.ts", + "to": "src/store/localPlaybackMigration.ts", + "unresolvedTo": "@/store/localPlaybackMigration", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/legacyOfflineFileMigration.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/legacyOfflineFileMigration.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/legacyOfflineFileMigration.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/libraryTierReconcile.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/libraryTierReconcile.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/libraryTierReconcile.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/libraryTierReconcile.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineBrowseContext.ts", + "to": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "unresolvedTo": "@/features/offline/utils/favoritesOfflineBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/favoritesOfflineBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineBrowseContext.ts", + "to": "src/features/offline/utils/offlineLibraryHelpers.ts", + "unresolvedTo": "@/features/offline/utils/offlineLibraryHelpers", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineBrowseContext.ts", + "to": "src/features/offline/utils/offlineLocalBrowse.ts", + "unresolvedTo": "@/features/offline/utils/offlineLocalBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLocalBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineBrowseContext.ts", + "to": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "unresolvedTo": "@/features/offline/utils/offlinePlaylistBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineLibraryHelpers.ts", + "to": "src/features/offline/utils/libraryTierReconcile.ts", + "unresolvedTo": "@/features/offline/utils/libraryTierReconcile", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/libraryTierReconcile.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineLibraryHelpers.ts", + "to": "src/lib/library/advancedSearchLocal.ts", + "unresolvedTo": "@/lib/library/advancedSearchLocal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineLibraryHelpers.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineLibraryHelpers.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineLocalBrowse.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLocalBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineLocalBrowse.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLocalBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineMediaResolve.ts", + "to": "src/features/offline/utils/offlineLocalBrowse.ts", + "unresolvedTo": "@/features/offline/utils/offlineLocalBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLocalBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineMediaResolve.ts", + "to": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "unresolvedTo": "@/features/offline/utils/offlinePlaylistBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineMediaResolve.ts", + "to": "src/lib/api/subsonicArtists.ts", + "unresolvedTo": "@/lib/api/subsonicArtists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineMediaResolve.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineMediaResolve.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineMediaResolve.ts", + "to": "src/lib/network/subsonicNetworkGuard.ts", + "unresolvedTo": "@/lib/network/subsonicNetworkGuard", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineMediaResolve.ts", + "to": "src/store/mediaResolver.ts", + "unresolvedTo": "@/store/mediaResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/mediaResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "to": "src/features/offline/utils/pinnedOfflineSync.ts", + "unresolvedTo": "@/features/offline/utils/pinnedOfflineSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "to": "src/lib/library/advancedSearchLocal.ts", + "unresolvedTo": "@/lib/library/advancedSearchLocal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineStarredLoad.ts", + "to": "src/features/offline/utils/offlineLocalBrowse.ts", + "unresolvedTo": "@/features/offline/utils/offlineLocalBrowse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLocalBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineStarredLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineStarredLoad.ts", + "to": "src/lib/api/subsonicStarRating.ts", + "unresolvedTo": "@/lib/api/subsonicStarRating", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/utils/offlineStarredLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/offlineStarredLoad.ts", + "to": "src/lib/library/advancedSearchLocal.ts", + "unresolvedTo": "@/lib/library/advancedSearchLocal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineStarredLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/pinnedOfflineSync.ts", + "to": "src/features/offline/utils/offlinePinQueue.ts", + "unresolvedTo": "@/features/offline/utils/offlinePinQueue", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlinePinQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/pinnedOfflineSync.ts", + "to": "src/features/playlist/index.ts", + "unresolvedTo": "@/features/playlist", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistCovers.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/cover/prefetchRegistry.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/pinnedOfflineSync.ts", + "to": "src/lib/api/subsonicArtists.ts", + "unresolvedTo": "@/lib/api/subsonicArtists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/pinnedOfflineSync.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/pinnedOfflineSync.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/pinnedOfflineSync.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/pinnedOfflineSync.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "to": "src/features/offline/utils/offlineLibraryHelpers.ts", + "unresolvedTo": "@/features/offline/utils/offlineLibraryHelpers", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineLibraryHelpers.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "to": "src/features/offline/utils/offlineMediaResolve.ts", + "unresolvedTo": "@/features/offline/utils/offlineMediaResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineLibraryIndexLoad.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "to": "src/lib/library/advancedSearchLocal.ts", + "unresolvedTo": "@/lib/library/advancedSearchLocal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "to": "src/lib/network/subsonicNetworkGuard.ts", + "unresolvedTo": "@/lib/network/subsonicNetworkGuard", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/resumeIncompleteOfflinePins.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitExitModal.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitExitModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitGuestQueue.tsx", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitGuestQueue.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitHelpModal.tsx", + "to": "src/features/settings/index.ts", + "unresolvedTo": "@/features/settings", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/settings/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/settings/components/audio/PlaybackRateBlock.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitHelpModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitJoinModal.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitJoinModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitJoinModal.tsx", + "to": "src/utils/server/switchActiveServer.ts", + "unresolvedTo": "@/utils/server/switchActiveServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/coverTraffic.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitJoinModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitParticipantsPopover.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitParticipantsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "unresolvedTo": "@/features/orbit/components/OrbitDiagnosticsPopover", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSessionBar.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/features/orbit/components/OrbitExitModal.tsx", + "unresolvedTo": "@/features/orbit/components/OrbitExitModal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/components/OrbitExitModal.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSessionBar.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/features/orbit/components/OrbitParticipantsPopover.tsx", + "unresolvedTo": "@/features/orbit/components/OrbitParticipantsPopover", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/components/OrbitParticipantsPopover.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSessionBar.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/features/orbit/components/OrbitSettingsPopover.tsx", + "unresolvedTo": "@/features/orbit/components/OrbitSettingsPopover", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/components/OrbitSettingsPopover.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSessionBar.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/features/orbit/components/OrbitSharePopover.tsx", + "unresolvedTo": "@/features/orbit/components/OrbitSharePopover", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/components/OrbitSharePopover.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSessionBar.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSessionBar.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSessionBar.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSettingsPopover.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSettingsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitSharePopover.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitSharePopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitStartModal.tsx", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitStartModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitStartTrigger.tsx", + "to": "src/features/orbit/components/OrbitJoinModal.tsx", + "unresolvedTo": "@/features/orbit/components/OrbitJoinModal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/components/OrbitJoinModal.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitStartTrigger.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/components/OrbitStartTrigger.tsx", + "to": "src/features/orbit/components/OrbitStartModal.tsx", + "unresolvedTo": "@/features/orbit/components/OrbitStartModal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/components/OrbitStartModal.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitStartTrigger.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitGuest.ts", + "to": "src/features/orbit/hooks/useOrbitOutboxHeartbeat.ts", + "unresolvedTo": "@/features/orbit/hooks/useOrbitOutboxHeartbeat", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/hooks/useOrbitOutboxHeartbeat.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitGuest.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitGuest.ts", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitGuest.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitGuest.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitGuest.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitHost.ts", + "to": "src/features/orbit/hooks/useOrbitOutboxHeartbeat.ts", + "unresolvedTo": "@/features/orbit/hooks/useOrbitOutboxHeartbeat", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/hooks/useOrbitOutboxHeartbeat.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitHost.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitHost.ts", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitHost.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitHost.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitHost.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitOutboxHeartbeat.ts", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitOutboxHeartbeat.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/useOrbitSongRowBehavior.ts", + "to": "src/features/orbit/utils/orbit.ts", + "unresolvedTo": "@/features/orbit/utils/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/useOrbitSongRowBehavior.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/hooks/usePlaybackRateOrbitSync.ts", + "to": "src/features/playback/store/playbackRateStore.ts", + "unresolvedTo": "@/features/playback/store/playbackRateStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/hooks/usePlaybackRateOrbitSync.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/index.ts", + "to": "src/features/orbit/utils/cleanup.ts", + "unresolvedTo": "./utils/cleanup", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/index.ts", + "to": "src/features/orbit/utils/guest.ts", + "unresolvedTo": "./utils/guest", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/guest.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/index.ts", + "to": "src/features/orbit/utils/host.ts", + "unresolvedTo": "./utils/host", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/host.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/index.ts", + "to": "src/features/orbit/utils/moderation.ts", + "unresolvedTo": "./utils/moderation", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/moderation.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/index.ts", + "to": "src/features/orbit/utils/orbitBulkGuard.ts", + "unresolvedTo": "./utils/orbitBulkGuard", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/orbitBulkGuard.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/index.ts", + "to": "src/features/orbit/utils/remote.ts", + "unresolvedTo": "./utils/remote", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/index.ts", + "to": "src/features/orbit/utils/sweep.ts", + "unresolvedTo": "./utils/sweep", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/sweep.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/guest.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/utils/guest.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/guest.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/utils/guest.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/host.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/utils/host.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/host.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/utils/host.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/moderation.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/utils/moderation.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/orbit.ts", + "to": "src/features/orbit/utils/guest.ts", + "unresolvedTo": "./guest", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/guest.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/orbit.ts", + "to": "src/features/orbit/utils/host.ts", + "unresolvedTo": "./host", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/host.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/orbit.ts", + "to": "src/features/orbit/utils/moderation.ts", + "unresolvedTo": "./moderation", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/moderation.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/orbit.ts", + "to": "src/features/orbit/utils/remote.ts", + "unresolvedTo": "./remote", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/remote.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/orbit/utils/orbit.ts", + "to": "src/features/orbit/utils/sweep.ts", + "unresolvedTo": "./sweep", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/utils/sweep.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/loudnessRefresh.ts", + "unresolvedTo": "@/features/playback/store/loudnessRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/normalizationSnapshot.ts", + "unresolvedTo": "@/features/playback/store/normalizationSnapshot", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/normalizationSnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/playbackReportSession.ts", + "unresolvedTo": "@/features/playback/store/playbackReportSession", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueUndo.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/queueUndoAudioRestore.ts", + "unresolvedTo": "@/features/playback/store/queueUndoAudioRestore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueUndoAudioRestore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/radioPlayer.ts", + "unresolvedTo": "@/features/playback/store/radioPlayer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/radioPlayer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/store/waveformRefresh.ts", + "unresolvedTo": "@/features/playback/store/waveformRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/waveformRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "to": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "unresolvedTo": "@/features/playback/utils/playback/resolvePlaybackUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyServerPlayQueue.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyServerPlayQueue.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyServerPlayQueue.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueUndo.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/applyServerPlayQueue.ts", + "to": "src/features/playback/store/waveformRefresh.ts", + "unresolvedTo": "@/features/playback/store/waveformRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/waveformRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/crossfadePreload.ts", + "to": "src/features/playback/store/loudnessRefresh.ts", + "unresolvedTo": "@/features/playback/store/loudnessRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/crossfadePreload.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/crossfadePreload.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/crossfadePreload.ts", + "to": "src/features/playback/store/waveformRefresh.ts", + "unresolvedTo": "@/features/playback/store/waveformRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/waveformRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/crossfadePreload.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/crossfadePreload.ts", + "to": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "unresolvedTo": "@/features/playback/utils/playback/resolvePlaybackUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/crossfadePreload.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "to": "src/features/playback/store/playbackUrlRouting.ts", + "unresolvedTo": "@/features/playback/store/playbackUrlRouting", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackUrlRouting.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyQueueHistorySnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueUndoAudioRestore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "to": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "unresolvedTo": "@/features/playback/utils/playback/resolvePlaybackUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/hotCacheStore.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/loudnessPrefetch.ts", + "to": "src/features/playback/store/loudnessRefresh.ts", + "unresolvedTo": "@/features/playback/store/loudnessRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessPrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/loudnessPrefetch.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessPrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/loudnessRefresh.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/loudnessRefresh.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessPrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/loudnessRefresh.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/loudnessReseed.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessReseed.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/loudnessReseed.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessReseed.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/playbackUrlRouting.ts", + "unresolvedTo": "@/features/playback/store/playbackUrlRouting", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackUrlRouting.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueUndo.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/radioPlayer.ts", + "unresolvedTo": "@/features/playback/store/radioPlayer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/radioPlayer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/miscActions.ts", + "to": "src/features/playback/store/seekFallbackState.ts", + "unresolvedTo": "@/features/playback/store/seekFallbackState", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekFallbackState.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/networkLoveActions.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/networkLoveActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/features/playback/store/skipStarRating.ts", + "unresolvedTo": "@/features/playback/store/skipStarRating", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/skipStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pendingStarSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "unresolvedTo": "@/features/playback/utils/playback/buildInfiniteQueueCandidates", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/mixRatingFilter.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/nextAction.ts", + "to": "src/lib/api/subsonicArtists.ts", + "unresolvedTo": "@/lib/api/subsonicArtists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/normalizationSnapshot.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/normalizationSnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/pausedRestorePrepare.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/pausedRestorePrepare.ts", + "to": "src/features/playback/store/promoteStreamCache.ts", + "unresolvedTo": "@/features/playback/store/promoteStreamCache", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/promoteStreamCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/pausedRestorePrepare.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/pausedRestorePrepare.ts", + "to": "src/features/playback/store/seekFallbackState.ts", + "unresolvedTo": "@/features/playback/store/seekFallbackState", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekFallbackState.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/pausedRestorePrepare.ts", + "to": "src/hotCachePrefetch.ts", + "unresolvedTo": "@/hotCachePrefetch", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/pendingStarSync.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistStarRating.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/pendingStarSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/pendingStarSync.ts", + "to": "src/lib/api/subsonicStarRating.ts", + "unresolvedTo": "@/lib/api/subsonicStarRating", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/skipStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pendingStarSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playbackRateStore.ts", + "to": "src/features/playback/utils/audio/playbackRateRestart.ts", + "unresolvedTo": "@/features/playback/utils/audio/playbackRateRestart", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitHelpModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/settings/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/settings/components/audio/PlaybackRateBlock.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playbackRateStore.ts", + "to": "src/store/orbitRuntime.ts", + "unresolvedTo": "@/store/orbitRuntime", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playbackReportSession.ts", + "to": "src/features/playback/store/playbackRateStore.ts", + "unresolvedTo": "@/features/playback/store/playbackRateStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playbackReportSession.ts", + "to": "src/lib/api/subsonicScrobble.ts", + "unresolvedTo": "@/lib/api/subsonicScrobble", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicScrobble.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playbackReportSession.ts", + "to": "src/store/orbitRuntime.ts", + "unresolvedTo": "@/store/orbitRuntime", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playbackUrlRouting.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackUrlRouting.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playerStore.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playerStore.ts", + "to": "src/features/playback/store/resumeAction.ts", + "unresolvedTo": "@/features/playback/store/resumeAction", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playerStore.ts", + "to": "src/features/playback/store/scheduleActions.ts", + "unresolvedTo": "@/features/playback/store/scheduleActions", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/scheduleActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playerStore.ts", + "to": "src/features/playback/store/seekAction.ts", + "unresolvedTo": "@/features/playback/store/seekAction", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playerStore.ts", + "to": "src/features/playback/store/transportLightActions.ts", + "unresolvedTo": "@/features/playback/store/transportLightActions", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/transportLightActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playerStore.ts", + "to": "src/features/playback/store/uiStateActions.ts", + "unresolvedTo": "@/features/playback/store/uiStateActions", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/uiStateActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playerStore.ts", + "to": "src/features/playback/store/updateReplayGainAction.ts", + "unresolvedTo": "@/features/playback/store/updateReplayGainAction", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/updateReplayGainAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/normalizationSnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playListenSession.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playListenSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playListenSession.ts", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playListenSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playListenSession.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playListenSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/hotCacheTouch.ts", + "unresolvedTo": "@/features/playback/store/hotCacheTouch", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/playbackUrlRouting.ts", + "unresolvedTo": "@/features/playback/store/playbackUrlRouting", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackUrlRouting.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/promoteStreamCache.ts", + "unresolvedTo": "@/features/playback/store/promoteStreamCache", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/promoteStreamCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueUndo.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/radioPlayer.ts", + "unresolvedTo": "@/features/playback/store/radioPlayer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/radioPlayer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/seekFallbackState.ts", + "unresolvedTo": "@/features/playback/store/seekFallbackState", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekFallbackState.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/timelineSessionHistory.ts", + "unresolvedTo": "@/features/playback/store/timelineSessionHistory", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/timelineSessionHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/store/waveformRefresh.ts", + "unresolvedTo": "@/features/playback/store/waveformRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/waveformRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/utils/playback/autodjInterruptPrep.ts", + "unresolvedTo": "@/features/playback/utils/playback/autodjInterruptPrep", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/autodjInterruptPrep.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "unresolvedTo": "@/features/playback/utils/playback/resolvePlaybackUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/playTrackAction.ts", + "to": "src/store/orbitRuntime.ts", + "unresolvedTo": "@/store/orbitRuntime", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/previewStore.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/timelineSessionHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/previewStore.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/previewStore.ts", + "to": "src/store/orbitRuntime.ts", + "unresolvedTo": "@/store/orbitRuntime", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playListenSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/promoteStreamCache.ts", + "to": "src/features/playback/store/hotCacheStore.ts", + "unresolvedTo": "@/features/playback/store/hotCacheStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/promoteStreamCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/promoteStreamCache.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/promoteStreamCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/promoteStreamCache.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/promoteStreamCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/store/playListenSession.ts", + "unresolvedTo": "@/features/playback/store/playListenSession", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playListenSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueUndo.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/store/seekFallbackState.ts", + "unresolvedTo": "@/features/playback/store/seekFallbackState", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekFallbackState.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/store/timelineSessionHistory.ts", + "unresolvedTo": "@/features/playback/store/timelineSessionHistory", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/timelineSessionHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueMutationActions.ts", + "to": "src/store/orbitRuntime.ts", + "unresolvedTo": "@/store/orbitRuntime", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueSync.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/networkLoveActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitJoinModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueSync.ts", + "to": "src/features/playback/utils/playback/trackServerScope.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackServerScope", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/trackServerScope.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueSync.ts", + "to": "src/lib/network/subsonicNetworkGuard.ts", + "unresolvedTo": "@/lib/network/subsonicNetworkGuard", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueTrackResolver.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/queueTrackResolver.ts", + "to": "src/lib/library/advancedSearchLocal.ts", + "unresolvedTo": "@/lib/library/advancedSearchLocal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/store/playbackReportSession.ts", + "unresolvedTo": "@/features/playback/store/playbackReportSession", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/store/playbackUrlRouting.ts", + "unresolvedTo": "@/features/playback/store/playbackUrlRouting", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackUrlRouting.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/store/promoteStreamCache.ts", + "unresolvedTo": "@/features/playback/store/promoteStreamCache", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/promoteStreamCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/store/radioPlayer.ts", + "unresolvedTo": "@/features/playback/store/radioPlayer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/radioPlayer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "unresolvedTo": "@/features/playback/utils/playback/resolvePlaybackUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/resumeAction.ts", + "to": "src/store/orbitRuntime.ts", + "unresolvedTo": "@/store/orbitRuntime", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/resumeAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/seekAction.ts", + "to": "src/features/playback/store/crossfadePreload.ts", + "unresolvedTo": "@/features/playback/store/crossfadePreload", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/crossfadePreload.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/loudnessRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/seekAction.ts", + "to": "src/features/playback/store/playbackReportSession.ts", + "unresolvedTo": "@/features/playback/store/playbackReportSession", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackReportSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/seekAction.ts", + "to": "src/features/playback/store/playbackUrlRouting.ts", + "unresolvedTo": "@/features/playback/store/playbackUrlRouting", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playbackUrlRouting.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/seekAction.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/seekAction.ts", + "to": "src/features/playback/store/seekFallbackState.ts", + "unresolvedTo": "@/features/playback/store/seekFallbackState", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekFallbackState.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/seekAction.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/seekAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/skipStarRating.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/skipStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/skipStarRating.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/skipStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/timelineSessionHistory.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueMutationActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/timelineSessionHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/transportLightActions.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/transportLightActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/transportLightActions.ts", + "to": "src/features/playback/store/playListenSession.ts", + "unresolvedTo": "@/features/playback/store/playListenSession", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playListenSession.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/transportLightActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/transportLightActions.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/transportLightActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/transportLightActions.ts", + "to": "src/features/playback/store/radioPlayer.ts", + "unresolvedTo": "@/features/playback/store/radioPlayer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/radioPlayer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/transportLightActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/transportLightActions.ts", + "to": "src/features/playback/store/seekFallbackState.ts", + "unresolvedTo": "@/features/playback/store/seekFallbackState", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekFallbackState.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/transportLightActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/transportLightActions.ts", + "to": "src/features/playback/store/waveformRefresh.ts", + "unresolvedTo": "@/features/playback/store/waveformRefresh", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/waveformRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/transportLightActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/uiStateActions.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/uiStateActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/undoRedoActions.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/undoRedoActions.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueUndo.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/undoRedoActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/updateReplayGainAction.ts", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/updateReplayGainAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/updateReplayGainAction.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/updateReplayGainAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/store/waveformRefresh.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playTrackAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/waveformRefresh.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/audio/playbackRateRestart.ts", + "to": "src/features/playback/store/seekFallbackState.ts", + "unresolvedTo": "@/features/playback/store/seekFallbackState", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/seekFallbackState.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitHelpModal.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/settings/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/settings/components/audio/PlaybackRateBlock.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/playbackRateStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/audio/playbackRateRestart.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/mixRatingFilter.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/mixRatingFilter.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/mixRatingFilter.ts", + "to": "src/lib/api/subsonicRatings.ts", + "unresolvedTo": "@/lib/api/subsonicRatings", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicRatings.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/mixRatingFilter.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "to": "src/lib/api/subsonicArtists.ts", + "unresolvedTo": "@/lib/api/subsonicArtists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/playbackServer.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/playbackServer.ts", + "to": "src/features/playback/utils/playback/trackServerScope.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackServerScope", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/utils/playback/trackServerScope.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/playbackServer.ts", + "to": "src/utils/server/switchActiveServer.ts", + "unresolvedTo": "@/utils/server/switchActiveServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/coverTraffic.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playback/utils/playback/trackServerScope.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/trackServerScope.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistDerived.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistDerived.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistPreview.ts", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/previewStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistPreview.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistRouteEffects.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistRouteEffects.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistsLibraryScopeCounts.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistsLibraryScopeCounts.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistsLibraryScopeCounts.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistsLibraryScopeCounts.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistStarRating.ts", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/pendingStarSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistStarRating.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistStarRating.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistStarRating.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/hooks/usePlaylistSuggestions.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/hooks/usePlaylistSuggestions.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/hooks/usePlaylistsLibraryScopeCounts.ts", + "unresolvedTo": "./hooks/usePlaylistsLibraryScopeCounts", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/hooks/usePlaylistsLibraryScopeCounts.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/store/playlistStore.ts", + "unresolvedTo": "./store/playlistStore", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/store/playlistStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/utils/playPlaylistById.ts", + "unresolvedTo": "./utils/playPlaylistById", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/utils/playPlaylistById.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/utils/runPlaylistLoad.ts", + "unresolvedTo": "./utils/runPlaylistLoad", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/utils/runPlaylistLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/utils/runPlaylistsActions.ts", + "unresolvedTo": "./utils/runPlaylistsActions", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/utils/runPlaylistsActions.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playlist/store/playlistStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/utils/runPlaylistSaveMeta.ts", + "unresolvedTo": "./utils/runPlaylistSaveMeta", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/utils/runPlaylistSaveMeta.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/utils/runPlaylistsSaveSmart.ts", + "unresolvedTo": "./utils/runPlaylistsSaveSmart", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/utils/runPlaylistsSaveSmart.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/playlist/store/playlistStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/index.ts", + "to": "src/features/playlist/utils/runPlaylistZipDownload.ts", + "unresolvedTo": "./utils/runPlaylistZipDownload", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/utils/runPlaylistZipDownload.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/store/playlistStore.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/store/playlistStore.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/utils/playPlaylistById.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/utils/playPlaylistById.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/utils/runPlaylistLoad.ts", + "to": "src/features/playlist/store/playlistStore.ts", + "unresolvedTo": "@/features/playlist/store/playlistStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playlist/store/playlistStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/utils/runPlaylistLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/utils/runPlaylistLoad.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/utils/runPlaylistLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/utils/runPlaylistLoad.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/utils/runPlaylistLoad.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/utils/runPlaylistsActions.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/utils/runPlaylistsActions.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/features/playlist/utils/runPlaylistZipDownload.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/utils/offlineBrowseContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlinePlaylistBrowse.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/utils/pinnedOfflineSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playlist/utils/runPlaylistZipDownload.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/features/playback/store/hotCacheStore.ts", + "unresolvedTo": "@/features/playback/store/hotCacheStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/hotCachePrefetch/analysisPrune.ts", + "unresolvedTo": "./hotCachePrefetch/analysisPrune", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/hotCachePrefetch/analysisPrune.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch/helpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/hotCachePrefetch/helpers.ts", + "unresolvedTo": "./hotCachePrefetch/helpers", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/hotCachePrefetch/helpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/lib/api/subsonicStreamUrl.ts", + "unresolvedTo": "@/lib/api/subsonicStreamUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicStreamUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/lib/cache/ephemeralTierReconcile.ts", + "unresolvedTo": "@/lib/cache/ephemeralTierReconcile", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/cache/ephemeralTierReconcile.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "./store/localPlaybackStore", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/hotCachePrefetch/analysisPrune.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/hotCachePrefetch/analysisPrune.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonic.ts", + "to": "src/lib/api/subsonicClient.ts", + "unresolvedTo": "@/lib/api/subsonicClient", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicClient.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonic.ts", + "to": "src/lib/api/subsonicOpenSubsonic.ts", + "unresolvedTo": "@/lib/api/subsonicOpenSubsonic", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicOpenSubsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicClient.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonic.ts", + "to": "src/lib/server/serverHttpHeaders.ts", + "unresolvedTo": "@/lib/server/serverHttpHeaders", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverHttpHeaders.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonic.ts", + "to": "src/lib/server/serverLookup.ts", + "unresolvedTo": "@/lib/server/serverLookup", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverLookup.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverIndexKey.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverBaseUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonic.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonic.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicArtists.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicClient.ts", + "to": "src/lib/server/serverHttpHeaders.ts", + "unresolvedTo": "@/lib/server/serverHttpHeaders", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverHttpHeaders.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicClient.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicClient.ts", + "to": "src/lib/server/serverLookup.ts", + "unresolvedTo": "@/lib/server/serverLookup", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverLookup.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverIndexKey.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverBaseUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicClient.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicClient.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicClient.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicLibrary.ts", + "to": "src/lib/network/subsonicNetworkGuard.ts", + "unresolvedTo": "@/lib/network/subsonicNetworkGuard", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicPlaylists.ts", + "to": "src/lib/network/subsonicNetworkGuard.ts", + "unresolvedTo": "@/lib/network/subsonicNetworkGuard", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/orbitRuntime.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicRatings.ts", + "to": "src/lib/api/subsonicArtists.ts", + "unresolvedTo": "@/lib/api/subsonicArtists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicArtists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/skipStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pendingStarSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicRatings.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicRatings.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/skipStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pendingStarSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicRatings.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicRatings.ts", + "to": "src/lib/network/subsonicNetworkGuard.ts", + "unresolvedTo": "@/lib/network/subsonicNetworkGuard", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/nextAction.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/skipStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pendingStarSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicRatings.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/api/subsonicStarRating.ts", + "to": "src/lib/library/starredAlbumIndexSync.ts", + "unresolvedTo": "@/lib/library/starredAlbumIndexSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/library/starredAlbumIndexSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicStarRating.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/audio/autodjOverlapCap.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authAudioSettingsActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/audio/autodjOverlapCap.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/cache/ephemeralTierReconcile.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/cache/ephemeralTierReconcile.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/library/advancedSearchLocal.ts", + "to": "src/lib/library/albumBrowseNetwork.ts", + "unresolvedTo": "./albumBrowseNetwork", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/library/albumBrowseNetwork.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/library/advancedSearchLocal.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/navigation/advancedSearchScrollSnapshot.ts", + "to": "src/store/advancedSearchSessionStore.ts", + "unresolvedTo": "@/store/advancedSearchSessionStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/advancedSearchSessionStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/navigation/advancedSearchScrollSnapshot.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/network/subsonicNetworkGuard.ts", + "to": "src/store/localPlaybackResolve.ts", + "unresolvedTo": "@/store/localPlaybackResolve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackView.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/queueTrackResolver.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/perf/formatLiveOverlayItems.ts", + "to": "src/lib/perf/perfLiveStore.ts", + "unresolvedTo": "@/lib/perf/perfLiveStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/perf/perfLiveStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/lib/perf/perfLiveHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/perf/formatLiveOverlayItems.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/perf/perfLiveHistory.ts", + "to": "src/lib/perf/perfLiveStore.ts", + "unresolvedTo": "@/lib/perf/perfLiveStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/perf/perfLiveStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/lib/perf/perfLiveHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/perf/perfLiveStore.ts", + "to": "src/lib/perf/perfOverlayPins.ts", + "unresolvedTo": "@/lib/perf/perfOverlayPins", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/perf/perfOverlayPins.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/perf/perfLiveHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/perf/perfLiveStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/perf/perfOverlayPins.ts", + "to": "src/lib/perf/perfLiveHistory.ts", + "unresolvedTo": "@/lib/perf/perfLiveHistory", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/perf/perfLiveHistory.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/perf/formatLiveOverlayItems.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/perf/perfLiveStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/lib/perf/perfOverlayPins.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverBaseUrl.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverBaseUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverEndpoint.ts", + "to": "src/lib/server/serverBaseUrl.ts", + "unresolvedTo": "@/lib/server/serverBaseUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverBaseUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverEndpoint.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverHttpHeaders.ts", + "to": "src/lib/server/serverIndexKey.ts", + "unresolvedTo": "@/lib/server/serverIndexKey", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverIndexKey.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverBaseUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverHttpHeaders.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverHttpHeaders.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverHttpHeaders.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverIndexKey.ts", + "to": "src/lib/server/serverBaseUrl.ts", + "unresolvedTo": "@/lib/server/serverBaseUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverBaseUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authServerProfileActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverLookup.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverIndexKey.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverIndexKey.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonicClient.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverHttpHeaders.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverIndexKey.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverIndexKey.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authServerProfileActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverLookup.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverIndexKey.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverLookup.ts", + "to": "src/store/authStore.ts", + "unresolvedTo": "@/store/authStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authServerProfileActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverLookup.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/serverLookup.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authServerProfileActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverLookup.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/syncServerHttpContext.ts", + "to": "src/lib/server/serverIndexKey.ts", + "unresolvedTo": "@/lib/server/serverIndexKey", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/serverIndexKey.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverBaseUrl.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/syncServerHttpContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/lib/server/syncServerHttpContext.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "@/store/authStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/lib/server/syncServerHttpContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/music-network/index.ts", + "to": "src/music-network/ui/MusicNetworkIndicator.tsx", + "unresolvedTo": "./ui/MusicNetworkIndicator", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/music-network/ui/MusicNetworkIndicator.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/music-network/index.ts", + "to": "src/music-network/ui/presetIcon.tsx", + "unresolvedTo": "./ui/presetIcon", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/music-network/ui/presetIcon.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/music-network/index.ts", + "to": "src/music-network/ui/useEnrichmentPrimary.ts", + "unresolvedTo": "./ui/useEnrichmentPrimary", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authAudioSettingsActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/music-network/index.ts", + "to": "src/music-network/ui/useEnrichmentPrimaryIcon.ts", + "unresolvedTo": "./ui/useEnrichmentPrimaryIcon", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/music-network/ui/useEnrichmentPrimaryIcon.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/music-network/index.ts", + "to": "src/music-network/ui/useEnrichmentPrimaryLabel.ts", + "unresolvedTo": "./ui/useEnrichmentPrimaryLabel", + "dependencyTypes": [ + "local", + "export" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/music-network/ui/useEnrichmentPrimaryLabel.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authAudioSettingsActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/music-network/ui/MusicNetworkIndicator.tsx", + "to": "src/music-network/ui/presetIcon.tsx", + "unresolvedTo": "@/music-network/ui/presetIcon", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/music-network/ui/presetIcon.tsx", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/MusicNetworkIndicator.tsx", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/music-network/ui/useEnrichmentPrimaryIcon.ts", + "to": "src/music-network/ui/useEnrichmentPrimary.ts", + "unresolvedTo": "./useEnrichmentPrimary", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authAudioSettingsActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimaryIcon.ts", + "dependencyTypes": [ + "local", + "export" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authAudioSettingsActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authAudioSettingsActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authCacheStorageActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authCacheStorageActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authDiscordSettingsActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authDiscordSettingsActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authDiscoveryActions.ts", + "to": "src/store/authStoreHelpers.ts", + "unresolvedTo": "./authStoreHelpers", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreHelpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authDiscoveryActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authDiscoveryActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authDiscoveryActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authLyricsSettingsActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authLyricsSettingsActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authMusicLibraryActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authMusicLibraryActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authMusicNetworkActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authMusicNetworkActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authPerServerCapabilityActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authPerServerCapabilityActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authPlumbingActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authPlumbingActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authServerProfileActions.ts", + "to": "src/store/authStoreHelpers.ts", + "unresolvedTo": "./authStoreHelpers", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreHelpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authServerProfileActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authServerProfileActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authServerProfileActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authSkipStarActions.ts", + "to": "src/store/authStoreHelpers.ts", + "unresolvedTo": "./authStoreHelpers", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreHelpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authSkipStarActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authSkipStarActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authSkipStarActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStore.ts", + "to": "src/lib/server/syncServerHttpContext.ts", + "unresolvedTo": "@/lib/server/syncServerHttpContext", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/server/syncServerHttpContext.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverHttpHeaders.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/server/serverEndpoint.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/api/subsonic.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStore.ts", + "to": "src/store/authMusicNetworkActions.ts", + "unresolvedTo": "./authMusicNetworkActions", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authMusicNetworkActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStore.ts", + "to": "src/store/authStoreDefaults.ts", + "unresolvedTo": "./authStoreDefaults", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStore.ts", + "to": "src/store/authStoreRehydrate.ts", + "unresolvedTo": "./authStoreRehydrate", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreRehydrate.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStore.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStore.ts", + "to": "src/store/authTrackPreviewActions.ts", + "unresolvedTo": "./authTrackPreviewActions", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authTrackPreviewActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStore.ts", + "to": "src/store/authUiAppearanceActions.ts", + "unresolvedTo": "./authUiAppearanceActions", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authUiAppearanceActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreHelpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStoreHelpers.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authDiscoveryActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreHelpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStoreRehydrate.ts", + "to": "src/lib/audio/autodjOverlapCap.ts", + "unresolvedTo": "@/lib/audio/autodjOverlapCap", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/audio/autodjOverlapCap.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreRehydrate.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStoreRehydrate.ts", + "to": "src/store/authStoreDefaults.ts", + "unresolvedTo": "./authStoreDefaults", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreRehydrate.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStoreRehydrate.ts", + "to": "src/store/authStoreHelpers.ts", + "unresolvedTo": "./authStoreHelpers", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreHelpers.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreDefaults.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreRehydrate.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authStoreRehydrate.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authStoreRehydrate.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/authUiAppearanceActions.ts", + "to": "src/store/authStoreTypes.ts", + "unresolvedTo": "./authStoreTypes", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/authStoreTypes.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/index.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/music-network/ui/useEnrichmentPrimary.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/authStore.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/store/authUiAppearanceActions.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/localPlaybackMigration.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "./localPlaybackStore", + "dependencyTypes": [ + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "local", + "type-only", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/localPlaybackResolve.ts", + "to": "src/store/localPlaybackStore.ts", + "unresolvedTo": "@/store/localPlaybackStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/mediaResolver.ts", + "to": "src/lib/api/subsonicLibrary.ts", + "unresolvedTo": "@/lib/api/subsonicLibrary", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicLibrary.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/lib/network/subsonicNetworkGuard.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/mediaResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/store/mediaResolver.ts", + "to": "src/lib/api/subsonicPlaylists.ts", + "unresolvedTo": "@/lib/api/subsonicPlaylists", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/utils/offlineMediaResolve.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/store/mediaResolver.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/utils/server/switchActiveServer.ts", + "to": "src/cover/coverTraffic.ts", + "unresolvedTo": "../../cover/coverTraffic", + "dependencyTypes": [ + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/cover/coverTraffic.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/utils/server/switchActiveServer.ts", + "to": "src/features/orbit/index.ts", + "unresolvedTo": "@/features/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/orbit/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/orbit/utils/orbit.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/orbit/utils/cleanup.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/lib/api/subsonicPlaylists.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "dynamic-import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "cycle", + "from": "src/utils/server/switchActiveServer.ts", + "to": "src/features/playback/store/queueSync.ts", + "unresolvedTo": "@/features/playback/store/queueSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-circular" + }, + "cycle": [ + { + "name": "src/features/playback/store/queueSync.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/playerStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/miscActions.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/applyServerPlayQueue.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/pausedRestorePrepare.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/engineLoadTrackAtPosition.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheTouch.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/features/playback/store/hotCacheStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackResolve.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/store/localPlaybackMigration.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/offline/index.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ] + }, + { + "name": "src/features/offline/hooks/useOfflineBrowseContext.ts", + "dependencyTypes": [ + "local", + "export" + ] + }, + { + "name": "src/features/offline/store/offlineStore.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/api/coverCache.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/cover/storageKeys.ts", + "dependencyTypes": [ + "local", + "import" + ] + }, + { + "name": "src/features/playback/utils/playback/playbackServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + }, + { + "name": "src/utils/server/switchActiveServer.ts", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ] + } + ] + }, + { + "type": "dependency", + "from": "src/store/localPlaybackMigration.ts", + "to": "src/features/offline/index.ts", + "unresolvedTo": "@/features/offline", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-core-to-feature" + } + }, + { + "type": "dependency", + "from": "src/store/localPlaybackMigration.ts", + "to": "src/features/playback/store/hotCacheStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/hotCacheStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-core-to-feature" + } + }, + { + "type": "dependency", + "from": "src/store/orbitRuntime.ts", + "to": "src/features/orbit/index.ts", + "unresolvedTo": "@/features/orbit", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-core-to-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/components/AlbumCard.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/components/AlbumCard.tsx", + "to": "src/features/playback/utils/playback/playAlbum.ts", + "unresolvedTo": "@/features/playback/utils/playback/playAlbum", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/components/AlbumDetailToolbar.tsx", + "to": "src/features/contextMenu/components/ContextMenu.tsx", + "unresolvedTo": "@/features/contextMenu/components/ContextMenu", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/components/AlbumTrackList.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/components/TrackRow.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/components/TrackRow.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/pages/AlbumDetail.tsx", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/pages/AlbumDetail.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/pages/Albums.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/pages/LosslessAlbums.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/pages/MostPlayed.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/pages/MostPlayed.tsx", + "to": "src/features/playback/utils/playback/playAlbum.ts", + "unresolvedTo": "@/features/playback/utils/playback/playAlbum", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/album/pages/RandomAlbums.tsx", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/components/ArtistDetailTopTracks.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/components/ArtistDetailTopTracks.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/components/ArtistsGridView.tsx", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/components/ArtistsListView.tsx", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/hooks/useArtistsFiltering.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/pages/ArtistDetail.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/pages/Artists.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/artist/utils/runArtistDetailPlay.ts", + "to": "src/features/playback/utils/playback/runBulkPlay.ts", + "unresolvedTo": "@/features/playback/utils/playback/runBulkPlay", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/composers/pages/ComposerDetail.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/composers/pages/Composers.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/components/ContextMenu.tsx", + "to": "src/features/playback/hooks/usePlaybackLibraryNavigate.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackLibraryNavigate", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/components/ContextMenu.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/components/QueueItemContextItems.tsx", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/components/SongContextItems.tsx", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/hooks/useContextMenuRating.ts", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/utils/contextMenuActions.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/utils/contextMenuActions.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/contextMenu/utils/contextMenuActions.ts", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/deviceSync/hooks/useDeviceSyncJobEvents.ts", + "to": "src/features/playback/utils/playback/fetchTracksForSource.ts", + "unresolvedTo": "@/features/playback/utils/playback/fetchTracksForSource", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/deviceSync/hooks/useDeviceSyncSourceStatuses.ts", + "to": "src/features/playback/utils/playback/fetchTracksForSource.ts", + "unresolvedTo": "@/features/playback/utils/playback/fetchTracksForSource", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/deviceSync/utils/runDeviceSyncExecution.ts", + "to": "src/features/playback/utils/playback/fetchTracksForSource.ts", + "unresolvedTo": "@/features/playback/utils/playback/fetchTracksForSource", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/deviceSync/utils/runDeviceSyncMigration.ts", + "to": "src/features/playback/utils/playback/fetchTracksForSource.ts", + "unresolvedTo": "@/features/playback/utils/playback/fetchTracksForSource", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/equalizer/components/Equalizer.tsx", + "to": "src/features/playback/utils/audio/eqCurve.ts", + "unresolvedTo": "@/features/playback/utils/audio/eqCurve", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/equalizer/hooks/useAutoEq.ts", + "to": "src/features/playback/utils/audio/autoEqParse.ts", + "unresolvedTo": "@/features/playback/utils/audio/autoEqParse", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/components/FavoriteSongRow.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/components/FavoritesSongsSectionHeader.tsx", + "to": "src/features/contextMenu/components/ContextMenu.tsx", + "unresolvedTo": "@/features/contextMenu/components/ContextMenu", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/components/FavoritesSongsSectionHeader.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/components/FavoritesSongsTracklist.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/components/FavoritesSongsTracklist.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/hooks/useFavoritesData.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/hooks/useFavoritesSongFiltering.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/pages/Favorites.tsx", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/pages/Favorites.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/favorites/pages/Favorites.tsx", + "to": "src/features/playlist/hooks/useBulkPlPickerOutsideClick.ts", + "unresolvedTo": "@/features/playlist/hooks/useBulkPlPickerOutsideClick", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/folderBrowser/hooks/useFolderBrowserKeyboardNav.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/folderBrowser/pages/FolderBrowser.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsLyricsApple.tsx", + "to": "src/features/playback/store/playbackProgress.ts", + "unresolvedTo": "@/features/playback/store/playbackProgress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsLyricsApple.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsPlayBtn.tsx", + "to": "src/features/playback/components/PlaybackDelayModal.tsx", + "unresolvedTo": "@/features/playback/components/PlaybackDelayModal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsPlayBtn.tsx", + "to": "src/features/playback/components/PlaybackScheduleBadge.tsx", + "unresolvedTo": "@/features/playback/components/PlaybackScheduleBadge", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsPlayBtn.tsx", + "to": "src/features/playback/hooks/usePlaybackDelayPress.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackDelayPress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsPlayBtn.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsPlayBtn.tsx", + "to": "src/features/playback/utils/playbackScheduleFormat.ts", + "unresolvedTo": "@/features/playback/utils/playbackScheduleFormat", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsQueueModal.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsQueueModal.tsx", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsQueueModal.tsx", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FsTimeReadout.tsx", + "to": "src/features/playback/store/playbackProgress.ts", + "unresolvedTo": "@/features/playback/store/playbackProgress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FullscreenPlayerStatic.tsx", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/fullscreenPlayer/components/FullscreenPlayerStatic.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/genre/pages/GenreDetail.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/genre/pages/GenreDetail.tsx", + "to": "src/features/playback/utils/playback/genreBrowsePlayback.ts", + "unresolvedTo": "@/features/playback/utils/playback/genreBrowsePlayback", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/genre/pages/GenreDetail.tsx", + "to": "src/features/playback/utils/playback/runBulkPlay.ts", + "unresolvedTo": "@/features/playback/utils/playback/runBulkPlay", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/genre/pages/Genres.tsx", + "to": "src/features/playback/utils/playback/genreBrowsePlayback.ts", + "unresolvedTo": "@/features/playback/utils/playback/genreBrowsePlayback", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/BecauseYouLikeRail.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/BecauseYouLikeRail.tsx", + "to": "src/features/playback/utils/playback/playAlbum.ts", + "unresolvedTo": "@/features/playback/utils/playback/playAlbum", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/Hero.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/Hero.tsx", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/Hero.tsx", + "to": "src/features/playback/utils/playback/playAlbum.ts", + "unresolvedTo": "@/features/playback/utils/playback/playAlbum", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/SongCard.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/SongCard.tsx", + "to": "src/features/playback/utils/playback/playSong.ts", + "unresolvedTo": "@/features/playback/utils/playback/playSong", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/components/SongCard.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/home/pages/Home.tsx", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/lyrics/components/LyricsPane.tsx", + "to": "src/features/playback/store/playbackProgress.ts", + "unresolvedTo": "@/features/playback/store/playbackProgress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/lyrics/components/LyricsPane.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/lyrics/hooks/useLyrics.ts", + "to": "src/features/playback/store/hotCacheStore.ts", + "unresolvedTo": "@/features/playback/store/hotCacheStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/lyrics/hooks/useWordLyricsSync.ts", + "to": "src/features/playback/store/playbackProgress.ts", + "unresolvedTo": "@/features/playback/store/playbackProgress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/components/MiniPlayer.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/components/MiniToolbar.tsx", + "to": "src/features/playback/utils/playback/playbackTransition.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackTransition", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/hooks/useMiniQueueDrag.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/utils/miniPlayerBridge.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/utils/miniPlayerBridge.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/utils/miniPlayerBridge.ts", + "to": "src/features/playback/utils/playback/playbackTransition.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackTransition", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/utils/miniPlayerHelpers.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/miniPlayer/utils/miniPlayerHelpers.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/components/PlaybackDelayModal.tsx", + "unresolvedTo": "@/features/playback/components/PlaybackDelayModal", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/components/PlaybackScheduleBadge.tsx", + "unresolvedTo": "@/features/playback/components/PlaybackScheduleBadge", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/hooks/usePlaybackDelayPress.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackDelayPress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/hooks/usePlaybackLibraryNavigate.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackLibraryNavigate", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/store/playbackProgress.ts", + "unresolvedTo": "@/features/playback/store/playbackProgress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/MobilePlayerView.tsx", + "to": "src/features/playback/utils/playbackScheduleFormat.ts", + "unresolvedTo": "@/features/playback/utils/playbackScheduleFormat", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/NowPlayingDropdown.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/NowPlayingInfo.tsx", + "to": "src/features/playback/hooks/usePlaybackServerId.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackServerId", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/NowPlayingInfo.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/NowPlayingInfo.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/components/RadioView.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/hooks/useNowPlayingPrewarm.ts", + "to": "src/features/playback/hooks/usePlaybackServerId.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackServerId", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/hooks/useNowPlayingPrewarm.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/hooks/useNowPlayingPrewarm.ts", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/hooks/useNowPlayingStarLove.ts", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/pages/NowPlaying.tsx", + "to": "src/features/playback/hooks/usePlaybackLibraryNavigate.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackLibraryNavigate", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/pages/NowPlaying.tsx", + "to": "src/features/playback/hooks/usePlaybackServerId.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackServerId", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/pages/NowPlaying.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/nowPlaying/pages/NowPlaying.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/offline/pages/OfflineLibrary.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/components/OrbitDiagnosticsPopover.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/components/OrbitSessionBar.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/components/OrbitStartModal.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/hooks/useOrbitGuest.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/hooks/useOrbitHost.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/hooks/usePlaybackRateOrbitSync.ts", + "to": "src/features/playback/store/playbackRateStore.ts", + "unresolvedTo": "@/features/playback/store/playbackRateStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/utils/guest.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/orbit/utils/host.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistArtistCell.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistCard.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistSongSearchPanel.tsx", + "to": "src/features/contextMenu/components/ContextMenu.tsx", + "unresolvedTo": "@/features/contextMenu/components/ContextMenu", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistSongSearchPanel.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistSuggestions.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistSuggestions.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistSuggestions.tsx", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistTracklist.tsx", + "to": "src/features/contextMenu/components/ContextMenu.tsx", + "unresolvedTo": "@/features/contextMenu/components/ContextMenu", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistTracklist.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/components/PlaylistTracklist.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/hooks/usePlaylistDerived.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/hooks/usePlaylistPreview.ts", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/hooks/usePlaylistRouteEffects.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/hooks/usePlaylistStarRating.ts", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/hooks/usePlaylistStarRating.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/pages/PlaylistDetail.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/pages/Playlists.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/playlist/utils/playPlaylistById.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueCurrentTrack.tsx", + "to": "src/features/playback/components/PlaybackBufferingOverlay.tsx", + "unresolvedTo": "@/features/playback/components/PlaybackBufferingOverlay", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueCurrentTrack.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueCurrentTrack.tsx", + "to": "src/features/playback/utils/audio/loudnessPlaceholder.ts", + "unresolvedTo": "@/features/playback/utils/audio/loudnessPlaceholder", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueCurrentTrack.tsx", + "to": "src/features/playback/utils/playback/resolvePlaybackUrl.ts", + "unresolvedTo": "@/features/playback/utils/playback/resolvePlaybackUrl", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueCurrentTrack.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueHeader.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueHeader.tsx", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueHeader.tsx", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueList.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueList.tsx", + "to": "src/features/playback/store/playerStoreTypes.ts", + "unresolvedTo": "@/features/playback/store/playerStoreTypes", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "type-only", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueList.tsx", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueList.tsx", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueList.tsx", + "to": "src/features/playback/utils/buildTimelineDisplayRows.ts", + "unresolvedTo": "@/features/playback/utils/buildTimelineDisplayRows", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueList.tsx", + "to": "src/features/playback/utils/playback/queueIdentity.ts", + "unresolvedTo": "@/features/playback/utils/playback/queueIdentity", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueList.tsx", + "to": "src/features/playback/utils/playTimelineHistoryTrack.ts", + "unresolvedTo": "@/features/playback/utils/playTimelineHistoryTrack", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueuePanel.tsx", + "to": "src/features/orbit/components/HostApprovalQueue.tsx", + "unresolvedTo": "@/features/orbit/components/HostApprovalQueue", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueuePanel.tsx", + "to": "src/features/playback/hooks/usePlaybackLibraryNavigate.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackLibraryNavigate", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueuePanel.tsx", + "to": "src/features/playback/hooks/useTimelinePlayHistory.ts", + "unresolvedTo": "@/features/playback/hooks/useTimelinePlayHistory", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueuePanel.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueuePanel.tsx", + "to": "src/features/playback/utils/buildTimelineDisplayRows.ts", + "unresolvedTo": "@/features/playback/utils/buildTimelineDisplayRows", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueuePanel.tsx", + "to": "src/features/playback/utils/playback/trackServerScope.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackServerScope", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/components/QueueToolbar.tsx", + "to": "src/features/playback/utils/playback/playbackTransition.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackTransition", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/hooks/useQueueAutoScroll.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/hooks/useQueuePanelDrag.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/hooks/useQueueTrackEnrichment.ts", + "to": "src/features/playback/hooks/usePlaybackServerId.ts", + "unresolvedTo": "@/features/playback/hooks/usePlaybackServerId", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/hooks/useQueueTrackEnrichment.ts", + "to": "src/features/playback/utils/playback/queueIdentity.ts", + "unresolvedTo": "@/features/playback/utils/playback/queueIdentity", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/hooks/useQueueTracks.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/hooks/useQueueTracks.ts", + "to": "src/features/playback/store/queueTrackResolver.ts", + "unresolvedTo": "@/features/playback/store/queueTrackResolver", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/queue/hooks/useQueueTracks.ts", + "to": "src/features/playback/store/queueTrackView.ts", + "unresolvedTo": "@/features/playback/store/queueTrackView", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/radio/pages/InternetRadio.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/radio/pages/InternetRadio.tsx", + "to": "src/features/playback/store/radioPlayer.ts", + "unresolvedTo": "@/features/playback/store/radioPlayer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/radio/pages/InternetRadio.tsx", + "to": "src/features/playback/utils/playback/fadeOut.ts", + "unresolvedTo": "@/features/playback/utils/playback/fadeOut", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/components/RandomMixTrackRow.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/pages/RandomMix.tsx", + "to": "src/features/playback/store/pendingStarSync.ts", + "unresolvedTo": "@/features/playback/store/pendingStarSync", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/pages/RandomMix.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/pages/RandomMix.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/pages/RandomMix.tsx", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/pages/RandomMix.tsx", + "to": "src/features/playback/utils/playback/genreBrowsePlayback.ts", + "unresolvedTo": "@/features/playback/utils/playback/genreBrowsePlayback", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/utils/luckyMix.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/utils/luckyMix.ts", + "to": "src/features/playback/store/queueUndo.ts", + "unresolvedTo": "@/features/playback/store/queueUndo", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/utils/luckyMix.ts", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/utils/luckyMix.ts", + "to": "src/features/playback/utils/playback/playbackServer.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackServer", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/utils/luckyMixHelpers.ts", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/randomMix/utils/randomMixHelpers.ts", + "to": "src/features/playback/utils/mixRatingFilter.ts", + "unresolvedTo": "@/features/playback/utils/mixRatingFilter", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/LiveSearch.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/LiveSearchDropdown.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/MobileSearchOverlay.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/ShareQueuePreviewModal.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/ShareSearchResults.tsx", + "to": "src/features/share/enqueueShareSearchPayload.ts", + "unresolvedTo": "@/features/share/enqueueShareSearchPayload", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/SongRow.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/SongRow.tsx", + "to": "src/features/playback/utils/playback/playSong.ts", + "unresolvedTo": "@/features/playback/utils/playback/playSong", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/SongRow.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/TracksPageChrome.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/TracksPageChrome.tsx", + "to": "src/features/playback/utils/playback/playSong.ts", + "unresolvedTo": "@/features/playback/utils/playback/playSong", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/components/TracksPageChrome.tsx", + "to": "src/features/playback/utils/playback/trackArtistRefs.ts", + "unresolvedTo": "@/features/playback/utils/playback/trackArtistRefs", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/hooks/useShareQueuePreview.ts", + "to": "src/features/share/enqueueShareSearchPayload.ts", + "unresolvedTo": "@/features/share/enqueueShareSearchPayload", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/hooks/useShareSearch.ts", + "to": "src/features/share/enqueueShareSearchPayload.ts", + "unresolvedTo": "@/features/share/enqueueShareSearchPayload", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/hooks/useShareSearchPreview.ts", + "to": "src/features/share/enqueueShareSearchPayload.ts", + "unresolvedTo": "@/features/share/enqueueShareSearchPayload", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/search/pages/SearchBrowsePage.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/audio/AudioOutputDeviceSection.tsx", + "to": "src/features/playback/utils/audio/audioDeviceLabels.ts", + "unresolvedTo": "@/features/playback/utils/audio/audioDeviceLabels", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/audio/PlaybackRateBlock.tsx", + "to": "src/features/playback/store/playbackRateStore.ts", + "unresolvedTo": "@/features/playback/store/playbackRateStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/audio/PlaybackRateBlock.tsx", + "to": "src/features/playback/utils/audio/playbackRateHelpers.ts", + "unresolvedTo": "@/features/playback/utils/audio/playbackRateHelpers", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/audio/TrackTransitionsBlock.tsx", + "to": "src/features/playback/utils/playback/playbackTransition.ts", + "unresolvedTo": "@/features/playback/utils/playback/playbackTransition", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/AudioTab.tsx", + "to": "src/features/playback/hooks/useAudioDevicesProbe.ts", + "unresolvedTo": "@/features/playback/hooks/useAudioDevicesProbe", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/PersonalisationTab.tsx", + "to": "src/features/playback/store/playerBarLayoutStore.ts", + "unresolvedTo": "@/features/playback/store/playerBarLayoutStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/PlayerBarLayoutCustomizer.tsx", + "to": "src/features/playback/store/playerBarLayoutStore.ts", + "unresolvedTo": "@/features/playback/store/playerBarLayoutStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/settings/components/StorageTab.tsx", + "to": "src/features/playback/store/hotCacheStore.ts", + "unresolvedTo": "@/features/playback/store/hotCacheStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/share/applySharePaste.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/share/enqueueShareSearchPayload.ts", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/sidebar/components/BottomNav.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/sidebar/components/perfProbe/SidebarPerfProbeConnectionsTab.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/sidebar/components/Sidebar.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/sidebar/components/SidebarNavBody.tsx", + "to": "src/features/settings/components/ThemeUpdateBanner.tsx", + "unresolvedTo": "@/features/settings/components/ThemeUpdateBanner", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/sidebar/components/SidebarNavBody.tsx", + "to": "src/features/whatsNew/components/WhatsNewBanner.tsx", + "unresolvedTo": "@/features/whatsNew/components/WhatsNewBanner", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/sidebar/components/SidebarPlaylistsSection.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/stats/hooks/usePlayerStatsLiveRefresh.ts", + "to": "src/features/playback/store/playSessionRecorded.ts", + "unresolvedTo": "@/features/playback/store/playSessionRecorded", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/waveform/components/WaveformSeek.tsx", + "to": "src/features/playback/store/playbackProgress.ts", + "unresolvedTo": "@/features/playback/store/playbackProgress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/waveform/components/WaveformSeek.tsx", + "to": "src/features/playback/store/playerStore.ts", + "unresolvedTo": "@/features/playback/store/playerStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/waveform/components/WaveformSeek.tsx", + "to": "src/features/playback/store/previewStore.ts", + "unresolvedTo": "@/features/playback/store/previewStore", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + }, + { + "type": "dependency", + "from": "src/features/waveform/hooks/useWaveformInterpolation.ts", + "to": "src/features/playback/store/playbackProgress.ts", + "unresolvedTo": "@/features/playback/store/playbackProgress", + "dependencyTypes": [ + "aliased", + "aliased-tsconfig", + "aliased-tsconfig-paths", + "local", + "import" + ], + "rule": { + "severity": "error", + "name": "no-deep-cross-feature" + } + } +] diff --git a/.dependency-cruiser.cjs b/.dependency-cruiser.cjs new file mode 100644 index 00000000..81230f6b --- /dev/null +++ b/.dependency-cruiser.cjs @@ -0,0 +1,91 @@ +// Architecture / layering guard for the feature-folder structure (PR #1225, group A1). +// +// Encodes the layering contract the restructure established: +// +// lib (feature-free infra: api clients, format, i18n, util, media, server, navigation) +// ▲ +// store / ui (cross-cutting global stores; domain-agnostic primitives) — may import lib +// ▲ +// cover / music-network (top-level domains — peers; may import lib, store, ui) +// ▲ +// features/ (may import lib, store, ui, cover, music-network, other features via barrel only) +// ▲ +// app (shell + bridges — may import anything) +// +// A lower layer may NOT import a higher one. Cross-feature access goes through the +// `@/features/` barrel only, never a deep path. No import cycles anywhere. +// +// Ratchet: current known violations (residual legacy dirs + documented inversions) are +// captured in `.dependency-cruiser-known-violations.json` and ignored via `--ignore-known` +// (see `npm run dep:check`). Any NEW violation fails CI. As the drain (group E) removes an +// exception, regenerate the baseline so the count ratchets toward zero. + +/** @type {import('dependency-cruiser').IConfiguration} */ +module.exports = { + forbidden: [ + { + name: 'no-circular', + severity: 'error', + comment: 'No import cycles anywhere under src/ — they make the module graph impossible to reason about.', + from: {}, + to: { circular: true }, + }, + { + name: 'lib-is-the-floor', + severity: 'error', + comment: + 'lib/** is feature-free infra and must not import a higher layer ' + + '(features, store, ui, app, cover, music-network).', + from: { path: '^src/lib/' }, + to: { path: '^src/(features|store|ui|app|cover|music-network)/' }, + }, + { + name: 'no-core-to-feature', + severity: 'error', + comment: + 'store/** and ui/** are cross-cutting core and must not import features or the app shell ' + + '(the inversions the seams removed — keep them out).', + from: { path: '^src/(store|ui)/' }, + to: { path: '^src/(features|app)/' }, + }, + { + name: 'no-deep-cross-feature', + severity: 'error', + comment: + 'A feature must reach another feature only through its `@/features/` barrel (index), ' + + 'never a deep path. Same-feature deep imports are fine.', + from: { path: '^src/features/([^/]+)/' }, + to: { + path: '^src/features/([^/]+)/[^/]+', + pathNot: [ + '^src/features/$1/', // same feature — allowed + '^src/features/[^/]+/index\\.(ts|tsx)$', // the barrel — allowed + ], + }, + }, + ], + options: { + doNotFollow: { path: 'node_modules' }, + // Type-only edges are tolerated by the iron rule (erased at runtime), but the ratchet + // records whatever exists today regardless of kind; new edges of any kind fail. + tsPreCompilationDeps: true, + tsConfig: { fileName: 'tsconfig.json' }, + enhancedResolveOptions: { + extensions: ['.ts', '.tsx', '.js', '.jsx', '.json'], + mainFields: ['module', 'main', 'types', 'typings'], + }, + // The layering contract is about the production module graph. Tests, test helpers, + // ambient declarations and non-src trees are not part of it. + exclude: { + path: [ + '\\.test\\.(ts|tsx)$', + '^src/test/', + '\\.d\\.ts$', + '^src/vite-env', + ], + }, + reporterOptions: { + text: { highlightFocused: true }, + }, + }, +}; diff --git a/.github/scripts/ci-ok-aggregate.mjs b/.github/scripts/ci-ok-aggregate.mjs index 49e11f75..e3c9519e 100644 --- a/.github/scripts/ci-ok-aggregate.mjs +++ b/.github/scripts/ci-ok-aggregate.mjs @@ -4,7 +4,7 @@ */ const FRONTEND_PATH_RE = - /^(src\/|package\.json$|package-lock\.json$|vitest\.config\.ts$|vite\.config\.ts$|tsconfig\.json$|eslint\.config\.mjs$|\.github\/workflows\/frontend-tests\.yml$|\.github\/workflows\/eslint\.yml$|\.github\/frontend-hot-path-files\.txt$|scripts\/check-frontend-hot-path-coverage\.sh$|scripts\/check-css-import-graph\.mjs$)/; + /^(src\/|package\.json$|package-lock\.json$|vitest\.config\.ts$|vite\.config\.ts$|tsconfig\.json$|eslint\.config\.mjs$|\.dependency-cruiser\.cjs$|\.dependency-cruiser-known-violations\.json$|\.github\/workflows\/frontend-tests\.yml$|\.github\/workflows\/eslint\.yml$|\.github\/frontend-hot-path-files\.txt$|scripts\/check-frontend-hot-path-coverage\.sh$|scripts\/check-css-import-graph\.mjs$)/; const RUST_PATH_RE = /^(src-tauri\/|\.github\/workflows\/rust-tests\.yml$)/; @@ -13,6 +13,7 @@ const FRONTEND_JOBS = [ 'tsc --noEmit', 'vitest --coverage (baseline + hot-path file gate)', 'eslint', + 'dependency-cruiser', ]; const RUST_JOBS = [ diff --git a/.github/workflows/eslint.yml b/.github/workflows/eslint.yml index f1c98b71..97636987 100644 --- a/.github/workflows/eslint.yml +++ b/.github/workflows/eslint.yml @@ -11,6 +11,8 @@ on: - 'vite.config.ts' - 'tsconfig.json' - 'eslint.config.mjs' + - '.dependency-cruiser.cjs' + - '.dependency-cruiser-known-violations.json' - '.github/workflows/eslint.yml' - '.github/frontend-hot-path-files.txt' - 'scripts/check-frontend-hot-path-coverage.sh' @@ -25,6 +27,8 @@ on: - 'vite.config.ts' - 'tsconfig.json' - 'eslint.config.mjs' + - '.dependency-cruiser.cjs' + - '.dependency-cruiser-known-violations.json' - '.github/workflows/eslint.yml' - '.github/frontend-hot-path-files.txt' - 'scripts/check-frontend-hot-path-coverage.sh' @@ -47,3 +51,16 @@ jobs: - run: npm ci - name: eslint run: npm run lint + + dependency-cruiser: + name: dependency-cruiser + runs-on: ubuntu-24.04 + steps: + - uses: actions/checkout@v5 + - uses: actions/setup-node@v6 + with: + node-version: 'lts/*' + cache: 'npm' + - run: npm ci + - name: layering + cycle guard + run: npm run dep:check diff --git a/package-lock.json b/package-lock.json index a63c9410..584a11c0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,6 +57,7 @@ "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", "@vitest/coverage-v8": "^4.1.8", + "dependency-cruiser": "^18.0.0", "esbuild": "^0.28.1", "eslint": "^10.5.0", "eslint-plugin-react-hooks": "^7.1.1", @@ -2686,6 +2687,39 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, + "node_modules/acorn-jsx-walk": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/acorn-jsx-walk/-/acorn-jsx-walk-2.0.0.tgz", + "integrity": "sha512-uuo6iJj4D4ygkdzd6jPtcxs8vZgDX9YFIkqczGImoypX2fQ4dVImmu3UzA4ynixCIMTrEOWW+95M2HuBaCEOVA==", + "dev": true, + "license": "MIT" + }, + "node_modules/acorn-loose": { + "version": "8.5.2", + "resolved": "https://registry.npmjs.org/acorn-loose/-/acorn-loose-8.5.2.tgz", + "integrity": "sha512-PPvV6g8UGMGgjrMu+n/f9E/tCSkNQ2Y97eFvuVdJfG11+xdIeDcLyNdC8SHcrHbRqkfwLASdplyR6B6sKM1U4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.15.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.5", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz", + "integrity": "sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/ajv": { "version": "6.15.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", @@ -2934,6 +2968,39 @@ "node": ">=18" } }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/charenc": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", @@ -2943,6 +3010,26 @@ "node": "*" } }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -2955,6 +3042,16 @@ "node": ">= 0.8" } }, + "node_modules/commander": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-15.0.0.tgz", + "integrity": "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=22.12.0" + } + }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -3081,6 +3178,54 @@ "node": ">=0.4.0" } }, + "node_modules/dependency-cruiser": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/dependency-cruiser/-/dependency-cruiser-18.0.0.tgz", + "integrity": "sha512-51Q7wbHoP3/GZrENpINnvKE/xfBsj41NVKarqu5Fff/kmqB/bg0GpiD5bOBwj0+CVunxPGzO80uTdYoy/d4Rsw==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "8.17.0", + "acorn-jsx": "5.3.2", + "acorn-jsx-walk": "2.0.0", + "acorn-loose": "8.5.2", + "acorn-walk": "8.3.5", + "commander": "15.0.0", + "enhanced-resolve": "5.24.1", + "ignore": "7.0.5", + "interpret": "3.1.1", + "is-installed-globally": "1.0.0", + "json5": "2.2.3", + "picomatch": "4.0.4", + "prompts": "2.4.2", + "rechoir": "0.8.0", + "safe-regex": "2.1.1", + "semver": "7.8.5", + "tsconfig-paths-webpack-plugin": "4.2.0", + "watskeburt": "6.0.0" + }, + "bin": { + "depcruise": "bin/dependency-cruise.mjs", + "depcruise-baseline": "bin/depcruise-baseline.mjs", + "depcruise-fmt": "bin/depcruise-fmt.mjs", + "depcruise-wrap-stream-in-html": "bin/wrap-stream-in-html.mjs", + "dependency-cruise": "bin/dependency-cruise.mjs", + "dependency-cruiser": "bin/dependency-cruise.mjs" + }, + "engines": { + "node": "^22||^24||>=26" + } + }, + "node_modules/dependency-cruiser/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, "node_modules/dequal": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", @@ -3130,6 +3275,20 @@ "dev": true, "license": "ISC" }, + "node_modules/enhanced-resolve": { + "version": "5.24.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.24.1.tgz", + "integrity": "sha512-7DdUaTjmNwMcH2gLr1qycesKII3BK4RLy/mdAb7x10Lq7bR4aNKHt1BR1ZALSv0rPM/hF5wYF0PhGop/rJm8vw==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.3.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/entities": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/entities/-/entities-8.0.0.tgz", @@ -3675,6 +3834,22 @@ "node": ">=10.13.0" } }, + "node_modules/global-directory": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", + "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ini": "4.1.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/globals": { "version": "17.7.0", "resolved": "https://registry.npmjs.org/globals/-/globals-17.7.0.tgz", @@ -3700,6 +3875,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -3853,12 +4035,48 @@ "node": ">=8" } }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/interpret": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", + "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "license": "MIT" }, + "node_modules/is-core-module": { + "version": "2.16.2", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.2.tgz", + "integrity": "sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -3882,6 +4100,36 @@ "node": ">=0.10.0" } }, + "node_modules/is-installed-globally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-1.0.0.tgz", + "integrity": "sha512-K55T22lfpQ63N4KEN57jZUAaAYqYHEe8veb/TycJRk9DdSCLLcovXz/mL6mOnhQaZsQGwPhuFopdQIlqGSEjiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "global-directory": "^4.0.1", + "is-path-inside": "^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-path-inside": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-potential-custom-element-name": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", @@ -4040,6 +4288,16 @@ "json-buffer": "3.0.1" } }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -4473,6 +4731,16 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -4618,6 +4886,13 @@ "node": ">=8" } }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, "node_modules/pathe": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", @@ -4700,6 +4975,20 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/proxy-from-env": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz", @@ -4813,6 +5102,19 @@ "react-dom": ">=18" } }, + "node_modules/rechoir": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", + "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve": "^1.20.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, "node_modules/redent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", @@ -4827,6 +5129,16 @@ "node": ">=8" } }, + "node_modules/regexp-tree": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", + "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", + "dev": true, + "license": "MIT", + "bin": { + "regexp-tree": "bin/regexp-tree" + } + }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -4837,6 +5149,28 @@ "node": ">=0.10.0" } }, + "node_modules/resolve": { + "version": "1.22.12", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", + "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/rolldown": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.3.tgz", @@ -4871,6 +5205,16 @@ "@rolldown/binding-win32-x64-msvc": "1.0.3" } }, + "node_modules/safe-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", + "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", + "dev": true, + "license": "MIT", + "dependencies": { + "regexp-tree": "~0.1.1" + } + }, "node_modules/saxes": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", @@ -4891,9 +5235,9 @@ "license": "MIT" }, "node_modules/semver": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.0.tgz", - "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", "dev": true, "license": "ISC", "bin": { @@ -4939,6 +5283,13 @@ "dev": true, "license": "ISC" }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, "node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", @@ -4963,6 +5314,16 @@ "dev": true, "license": "MIT" }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/strip-indent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", @@ -4989,6 +5350,19 @@ "node": ">=8" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", @@ -4996,6 +5370,20 @@ "dev": true, "license": "MIT" }, + "node_modules/tapable": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, "node_modules/tinybench": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", @@ -5099,6 +5487,37 @@ "typescript": ">=4.8.4" } }, + "node_modules/tsconfig-paths": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", + "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "json5": "^2.2.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tsconfig-paths-webpack-plugin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.2.0.tgz", + "integrity": "sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.7.0", + "tapable": "^2.2.1", + "tsconfig-paths": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", @@ -5415,6 +5834,19 @@ "node": ">=18" } }, + "node_modules/watskeburt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/watskeburt/-/watskeburt-6.0.0.tgz", + "integrity": "sha512-jfiuDABaxSkC71T6oZ3vCS99roYkSHm/+As+G0Dz8taAHQb+SJBvLEm5RlsgG71XdfAj3rv7eudUBTgwcQUPlQ==", + "dev": true, + "license": "MIT", + "bin": { + "watskeburt": "dist/run-cli.js" + }, + "engines": { + "node": "^22.13||^24||>=26" + } + }, "node_modules/webidl-conversions": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-8.0.1.tgz", diff --git a/package.json b/package.json index f1c90551..f9ee36ed 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "tauri:build": "npm run prebuild:release-notes && tauri build", "lint": "eslint -c eslint.config.mjs src", "lint:gradual": "eslint -c eslint.config.gradual.mjs src", + "dep:check": "depcruise src --config .dependency-cruiser.cjs --ignore-known", "test": "npm run prebuild:release-notes && vitest run && node --test scripts/extract-release-section.test.mjs && npm run check:css-imports", "test:watch": "vitest", "test:coverage": "npm run prebuild:release-notes && vitest run --coverage && npm run check:css-imports" @@ -67,6 +68,7 @@ "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", "@vitest/coverage-v8": "^4.1.8", + "dependency-cruiser": "^18.0.0", "esbuild": "^0.28.1", "eslint": "^10.5.0", "eslint-plugin-react-hooks": "^7.1.1",