File size: 597 Bytes
5da4770
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { createQueryHook } from "@/hooks/use-query";
import { AvailableModelsResponse, getAvailableModels } from "@/lib/api";
import { modelKeys } from "./keys";

export const useAvailableModels = createQueryHook<AvailableModelsResponse, Error>(
    modelKeys.available,
    getAvailableModels,
    {
      staleTime: 5 * 60 * 1000,
      refetchOnWindowFocus: false,
      retry: 2,
      select: (data) => {
        return {
          ...data,
          models: [...data.models].sort((a, b) => 
            a.display_name.localeCompare(b.display_name)
          ),
        };
      },
    }
  );