b51eb6471f
Co-authored-by: Cursor <cursoragent@cursor.com>
30 lines
646 B
TypeScript
30 lines
646 B
TypeScript
import { createFamilyStateV2 } from '@/ui/utilities/state/jotai/utils/createFamilyStateV2';
|
|
|
|
export type MetadataLoadStatus = 'empty' | 'draft_pending' | 'loaded';
|
|
|
|
export type MetadataKey =
|
|
| 'objects'
|
|
| 'views'
|
|
| 'pageLayouts'
|
|
| 'logicFunctions';
|
|
|
|
export type MetadataLoadEntry = {
|
|
current: object[];
|
|
draft: object[];
|
|
status: MetadataLoadStatus;
|
|
};
|
|
|
|
const METADATA_LOAD_ENTRY_DEFAULT: MetadataLoadEntry = {
|
|
current: [],
|
|
draft: [],
|
|
status: 'empty',
|
|
};
|
|
|
|
export const metadataStoreState = createFamilyStateV2<
|
|
MetadataLoadEntry,
|
|
MetadataKey
|
|
>({
|
|
key: 'metadataStoreState',
|
|
defaultValue: METADATA_LOAD_ENTRY_DEFAULT,
|
|
});
|