Files
sgw-owner-app/state/use-ship-groups.ts
2025-12-10 19:49:54 +07:00

25 lines
682 B
TypeScript

import { queryShipGroups } from "@/controller/DeviceController";
import { create } from "zustand";
type ShipGroups = {
shipGroups: Model.ShipGroup[] | null;
getShipGroups: () => Promise<void>;
error: string | null;
loading?: boolean;
};
export const useShipGroups = create<ShipGroups>((set) => ({
shipGroups: null,
getShipGroups: async () => {
try {
const response = await queryShipGroups();
set({ shipGroups: response.data, loading: false });
} catch (error) {
console.error("Error when fetch Port: ", error);
set({ error: "Failed to fetch Port data", loading: false });
set({ shipGroups: null });
}
},
error: null,
}));