diff --git a/src-web/components/GlobalHooks.tsx b/src-web/components/GlobalHooks.tsx index 2273c78a..1c916d02 100644 --- a/src-web/components/GlobalHooks.tsx +++ b/src-web/components/GlobalHooks.tsx @@ -69,6 +69,10 @@ export function GlobalHooks() { ? cookieJarsQueryKey(payload) : null; + const pushToFront = (['http_response', 'grpc_connection'] as Model['model'][]).includes( + payload.model, + ); + if (queryKey === null) { console.log('Unrecognized created model:', payload); return; @@ -76,7 +80,9 @@ export function GlobalHooks() { if (!shouldIgnoreModel(payload)) { // Order newest first - queryClient.setQueryData(queryKey, (values) => [payload, ...(values ?? [])]); + queryClient.setQueryData(queryKey, (values) => + pushToFront ? [payload, ...(values ?? [])] : [...(values ?? []), payload], + ); } }); diff --git a/src-web/hooks/useGrpc.ts b/src-web/hooks/useGrpc.ts index 2741315c..f599e84f 100644 --- a/src-web/hooks/useGrpc.ts +++ b/src-web/hooks/useGrpc.ts @@ -1,8 +1,7 @@ import { useMutation, useQuery } from '@tanstack/react-query'; import { invoke } from '@tauri-apps/api'; -import type { UnlistenFn } from '@tauri-apps/api/event'; -import { emit, listen } from '@tauri-apps/api/event'; -import { useEffect, useRef, useState } from 'react'; +import { emit } from '@tauri-apps/api/event'; +import { useEffect, useState } from 'react'; import type { GrpcConnection, GrpcMessage, GrpcRequest } from '../lib/models'; import { useKeyValue } from './useKeyValue';