22 lines
662 B
TypeScript
22 lines
662 B
TypeScript
import type * as GQL from '@repo/graphql/types';
|
|
import { type StateCreator } from 'zustand';
|
|
|
|
export type ContactsStore = {
|
|
clients: Clients | null;
|
|
masters: Masters | null;
|
|
setClients: (clients: Clients) => void;
|
|
setMasters: (masters: Masters) => void;
|
|
};
|
|
|
|
type Clients = NonNullable<GQL.GetCustomerClientsQuery['customers'][0]>['clients'];
|
|
type Masters = NonNullable<GQL.GetCustomerMastersQuery['customers'][0]>['masters'];
|
|
|
|
export const createContactsSlice: StateCreator<ContactsStore> = (set) => {
|
|
return {
|
|
clients: null,
|
|
masters: null,
|
|
setClients: (clients) => set({ clients }),
|
|
setMasters: (masters) => set({ masters }),
|
|
};
|
|
};
|