support mbz album detail view

This commit is contained in:
jeffvli
2026-02-06 20:13:58 -08:00
parent 0bb30ab0da
commit 40ec16e191
11 changed files with 652 additions and 361 deletions
+10 -1
View File
@@ -1,16 +1,25 @@
import { queryOptions } from '@tanstack/react-query';
import { getMbzReleaseIdFromAlbumId } from '../../musicbrainz/utils';
import { api } from '/@/renderer/api';
import { controller } from '/@/renderer/api/controller';
import { queryKeys } from '/@/renderer/api/query-keys';
import { getOptimizedListCount } from '/@/renderer/api/utils-list-count';
import { fetchMbzReleaseAsAlbum } from '/@/renderer/features/musicbrainz/api/musicbrainz-api';
import { QueryHookArgs } from '/@/renderer/lib/react-query';
import { AlbumDetailQuery, AlbumListQuery, ListCountQuery } from '/@/shared/types/domain-types';
export const albumQueries = {
detail: (args: QueryHookArgs<AlbumDetailQuery>) => {
return queryOptions({
queryFn: ({ signal }) => {
queryFn: async ({ signal }) => {
const mbzReleaseId = getMbzReleaseIdFromAlbumId(args.query.id);
if (mbzReleaseId !== null) {
return fetchMbzReleaseAsAlbum(mbzReleaseId);
}
return api.controller.getAlbumDetail({
apiClientProps: { serverId: args.serverId, signal },
query: args.query,