File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -943,10 +943,10 @@ export type ResolvedShow = {
943943 description : string | null
944944 thumbnailUrl : string | null
945945 bannerImageUrl : string | null
946- tags : string [ ] | null
946+ tags : ReadonlyArray < string > | null
947947 createdAt : string
948948 compiledContent : string | null
949- hosts : Array < { id : string ; name : string ; username : string | null } >
949+ hosts : ReadonlyArray < { id : string ; name : string ; username : string | null } >
950950 }
951951}
952952
@@ -956,7 +956,14 @@ export function useResolveSlug(slug: string) {
956956 const { data, error, isPending } = useQuery < ResolveResult , Error > ( {
957957 queryKey : [ 'resolve' , slug ] ,
958958 queryFn : async ( ) => {
959- return fetcher < ResolveResult > ( apiUrl ( `/resolve/${ slug } ` ) )
959+ const client = await getApiClient ( )
960+ return Effect . runPromise (
961+ client . resolve
962+ . resolveSlug ( { params : { slug } } )
963+ . pipe (
964+ Effect . tapError ( ( error ) => captureException ( error , { endpoint : 'resolve.resolveSlug' } ) )
965+ )
966+ )
960967 } ,
961968 enabled : Boolean ( slug ) ,
962969 retry : false
Original file line number Diff line number Diff line change @@ -224,7 +224,7 @@ export type ResolvedShowData = {
224224 description : string | null
225225 thumbnailUrl : string | null
226226 compiledContent : string | null
227- hosts : Array < { id : string ; name : string } >
227+ hosts : ReadonlyArray < { id : string ; name : string } >
228228}
229229
230230export function generateResolvedShowSEO ( show : ResolvedShowData , slug : string ) : SEOHeadData {
Original file line number Diff line number Diff line change 11import { createFileRoute , Link , Navigate } from '@tanstack/react-router'
2+ import { Effect } from 'effect'
23import { PublicProfilePage } from '@/components/profile/PublicProfilePage'
3- import { apiUrl , fetcher , type ResolveResult } from '@/lib/http '
4+ import { getApiClient } from '@/lib/api-client '
45import { generateProfileSEO , generateResolvedShowSEO , generateSEOMeta } from '@/lib/seo'
56
67export const Route = createFileRoute ( '/$slug' ) ( {
78 component : SlugPage ,
89 loader : async ( { params } ) => {
910 try {
10- const resolved = await fetcher < ResolveResult > ( apiUrl ( `/resolve/${ params . slug } ` ) )
11+ const client = await getApiClient ( )
12+ const resolved = await Effect . runPromise (
13+ client . resolve . resolveSlug ( { params : { slug : params . slug } } )
14+ )
1115 return { resolved }
1216 } catch {
1317 return { resolved : null }
You can’t perform that action at this time.
0 commit comments