FPSMS-frontend
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 

35 Zeilen
769 B

  1. import { serverFetchJson } from "@/app/utils/fetchUtil";
  2. import { BASE_API_URL } from "@/config/api";
  3. import { cache } from "react";
  4. import "server-only";
  5. export interface Records {
  6. records: UserGroupResult[]
  7. }
  8. export interface UserGroupResult {
  9. id: number;
  10. action: () => void;
  11. name: string;
  12. description: string;
  13. }
  14. export type IndivUserGroup = {
  15. authIds: number[];
  16. data: any;
  17. userIds: number[];
  18. }
  19. export const fetchGroup = cache(async () => {
  20. return serverFetchJson<Records>(`${BASE_API_URL}/group`, {
  21. next: { tags: ["group"] },
  22. });
  23. });
  24. export const fetchIndivGroup = cache(async (id: number) => {
  25. return serverFetchJson<IndivUserGroup>(`${BASE_API_URL}/group/${id}`, {
  26. next: { tags: ["group"] },
  27. });
  28. });