@@ -7,6 +7,16 @@ import { ReplySchema } from '@/api/reply';
7
7
import { fetchTicketReplies , fetchTicketOpsLogs , OpsLog } from '@/api/ticket' ;
8
8
import { useCurrentRef } from '@/utils/useCurrentRef' ;
9
9
10
+ function patchQueryDecoder ( query : any ) {
11
+ const decoder = query . _decoder ;
12
+ query . _decoder = ( app : any , data : any , className : string ) => {
13
+ if ( ! data . objectId ) {
14
+ data . objectId = '__objectId__' ;
15
+ }
16
+ return decoder ( app , data , className ) ;
17
+ } ;
18
+ }
19
+
10
20
export function useTicketReplies ( ticketId ?: string ) {
11
21
const { data, fetchNextPage, refetch } = useInfiniteQuery ( {
12
22
queryKey : [ 'TicketReplies' , ticketId ] ,
@@ -49,8 +59,9 @@ export function useTicketReplies(ticketId?: string) {
49
59
return ;
50
60
}
51
61
let mounted = true ;
52
- const subscription = db
53
- . query ( 'Reply' )
62
+ const query = db . query ( 'Reply' ) ;
63
+ patchQueryDecoder ( query ) ;
64
+ const subscription = query
54
65
. where ( 'ticket' , '==' , db . class ( 'Ticket' ) . object ( ticketId ) )
55
66
. subscribe ( ) ;
56
67
subscription . then ( ( s ) => {
@@ -109,8 +120,9 @@ export function useTicketOpsLogs(ticketId?: string) {
109
120
return ;
110
121
}
111
122
let mounted = true ;
112
- const subscription = db
113
- . query ( 'OpsLog' )
123
+ const query = db . query ( 'OpsLog' ) ;
124
+ patchQueryDecoder ( query ) ;
125
+ const subscription = query
114
126
. where ( 'ticket' , '==' , db . class ( 'Ticket' ) . object ( ticketId ) )
115
127
. subscribe ( ) ;
116
128
subscription . then ( ( s ) => {
0 commit comments