File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 8181 "@tanstack/query-core" : " 5.101.2" ,
8282 "@tanstack/query-devtools" : " 5.101.2" ,
8383 "@tanstack/query-persist-client-core" : " 5.101.2" ,
84- "@trakt/api" : " npm:@jsr/trakt__api@0.4.23 " ,
84+ "@trakt/api" : " npm:@jsr/trakt__api@0.4.25 " ,
8585 "@ts-rest/core" : " 3.52.1" ,
8686 "@use-gesture/vanilla" : " 10.3.1" ,
8787 "bits-ui" : " 2.18.1" ,
Original file line number Diff line number Diff line change 1- import type { EpisodeResponse , MovieResponse } from '@trakt/api' ;
21import type { PostCredits } from '../models/PostCreditsSchema.ts' ;
32
43export function mapToPostCredits (
5- response : EpisodeResponse | MovieResponse | Nil ,
4+ response :
5+ | { during_credits ?: boolean | null ; after_credits ?: boolean | null }
6+ | Nil ,
67) : PostCredits [ ] {
78 const postCredits : PostCredits [ ] = [ ] ;
89
Original file line number Diff line number Diff line change @@ -9,5 +9,10 @@ export function mapToUpcomingEpisodeEntry(
99 return {
1010 show : mapToShowEntry ( item . show ) ,
1111 ...mapToEpisodeEntry ( item . episode ) ,
12+ // `group=day` collapses multi-episode days into one card; the server sends
13+ // the grouped episodes on `episode.episodes` (absent for single entries).
14+ ...( item . episode . episodes
15+ ? { episodes : item . episode . episodes . map ( mapToEpisodeEntry ) }
16+ : { } ) ,
1217 } ;
1318}
Original file line number Diff line number Diff line change 11import type { DiscoverMode } from '$lib/features/filters/models/DiscoverMode.ts' ;
22import { defineQuery } from '$lib/features/query/defineQuery.ts' ;
3- import { coalesceEpisodes } from '$lib/requests/_internal/coalesceEpisodes.ts' ;
43import { getGlobalFilterDependencies } from '$lib/requests/_internal/getGlobalFilterDependencies.ts' ;
54import { mapToMovieEntry } from '$lib/requests/_internal/mapToMovieEntry.ts' ;
65import { mapToUpcomingEpisodeEntry } from '$lib/requests/_internal/mapToUpcomingEpisodeEntry.ts' ;
@@ -53,6 +52,7 @@ const releasesCalendarRequest = (
5352 . releasesHot ( {
5453 query : {
5554 extended : 'full,images' ,
55+ group : 'day' ,
5656 ...filter ,
5757 ...( type === 'media' ? { } : { type } ) ,
5858 } ,
@@ -87,11 +87,9 @@ export const releasesCalendarQuery = defineQuery({
8787 . filter ( isCalendarMovie )
8888 . map ( ( entry ) => mapToMovieEntry ( entry . movie ) ) ;
8989
90- const episodes = coalesceEpisodes (
91- response . body
92- . filter ( isCalendarShow )
93- . map ( mapToUpcomingEpisodeEntry ) ,
94- ) ;
90+ const episodes = response . body
91+ . filter ( isCalendarShow )
92+ . map ( mapToUpcomingEpisodeEntry ) ;
9593
9694 return [ ...episodes , ...movies ]
9795 . toSorted ( ( a , b ) =>
Original file line number Diff line number Diff line change 11import { defineQuery } from '$lib/features/query/defineQuery.ts' ;
2- import { coalesceEpisodes } from '$lib/requests/_internal/coalesceEpisodes.ts' ;
32import { mapToUpcomingEpisodeEntry } from '$lib/requests/_internal/mapToUpcomingEpisodeEntry.ts' ;
43import { api , type ApiParams } from '$lib/requests/api.ts' ;
54import { InvalidateAction } from '$lib/requests/models/InvalidateAction.ts' ;
@@ -35,6 +34,7 @@ export const upcomingEpisodesRequest = (
3534 . shows ( {
3635 query : {
3736 extended : 'full,images' ,
37+ group : 'day' ,
3838 ...filterParams ,
3939 } ,
4040 params : {
@@ -64,8 +64,7 @@ export const upcomingEpisodesQuery = defineQuery({
6464 ) ,
6565 ] ,
6666 request : upcomingEpisodesRequest ,
67- mapper : ( response ) =>
68- coalesceEpisodes ( response . body . map ( mapToUpcomingEpisodeEntry ) ) ,
67+ mapper : ( response ) => response . body . map ( mapToUpcomingEpisodeEntry ) ,
6968 schema : UpcomingEpisodeEntrySchema . array ( ) ,
7069 ttl : time . minutes ( 30 ) ,
7170 refetchOnWindowFocus : true ,
Original file line number Diff line number Diff line change 11import { defineQuery } from '$lib/features/query/defineQuery.ts' ;
2- import { coalesceEpisodes } from '$lib/requests/_internal/coalesceEpisodes.ts' ;
32import { mapToUpcomingEpisodeEntry } from '$lib/requests/_internal/mapToUpcomingEpisodeEntry.ts' ;
43import { api , type ApiParams } from '$lib/requests/api.ts' ;
54import { InvalidateAction } from '$lib/requests/models/InvalidateAction.ts' ;
@@ -66,6 +65,7 @@ export const upcomingMediaQuery = defineQuery({
6665 . media ( {
6766 query : {
6867 extended : 'full,images' ,
68+ group : 'day' ,
6969 ...filter ,
7070 } ,
7171 params : {
@@ -75,11 +75,9 @@ export const upcomingMediaQuery = defineQuery({
7575 } ,
7676 } ) ,
7777 mapper : ( response ) => {
78- const episodes = coalesceEpisodes (
79- response . body
80- . filter ( isCalendarShow )
81- . map ( mapToUpcomingEpisodeEntry ) ,
82- ) ;
78+ const episodes = response . body
79+ . filter ( isCalendarShow )
80+ . map ( mapToUpcomingEpisodeEntry ) ;
8381
8482 const movies = response . body
8583 . filter ( isCalendarMovie )
You can’t perform that action at this time.
0 commit comments