Changes
This commit is contained in:
@@ -15,6 +15,21 @@ interface FineTuning {
|
||||
|
||||
type AnchorMode = 'tracking' | 'manual' | 'fine-tuning';
|
||||
type InspectionResult = 'pending' | 'approved' | 'rejected';
|
||||
type RenderMode = 'solid' | 'wireframe';
|
||||
|
||||
export interface ChecklistItem {
|
||||
id: string;
|
||||
label: string;
|
||||
status: 'pending' | 'approved' | 'rejected';
|
||||
note: string;
|
||||
}
|
||||
|
||||
const defaultChecklist: ChecklistItem[] = [
|
||||
{ id: 'dimensions', label: 'Dimensões Gerais', status: 'pending', note: '' },
|
||||
{ id: 'plates', label: 'Posição das Placas', status: 'pending', note: '' },
|
||||
{ id: 'holes', label: 'Diâmetro dos Furos', status: 'pending', note: '' },
|
||||
{ id: 'weld', label: 'Especificação da Solda', status: 'pending', note: '' },
|
||||
];
|
||||
|
||||
interface ModelStore {
|
||||
model: ModelInfo | null;
|
||||
@@ -32,6 +47,17 @@ interface ModelStore {
|
||||
|
||||
xrSupported: boolean | null;
|
||||
setXrSupported: (supported: boolean | null) => void;
|
||||
|
||||
opacity: number;
|
||||
setOpacity: (opacity: number) => void;
|
||||
|
||||
renderMode: RenderMode;
|
||||
setRenderMode: (mode: RenderMode) => void;
|
||||
|
||||
checklist: ChecklistItem[];
|
||||
setChecklistItemStatus: (id: string, status: 'approved' | 'rejected') => void;
|
||||
setChecklistItemNote: (id: string, note: string) => void;
|
||||
resetChecklist: () => void;
|
||||
}
|
||||
|
||||
const defaultFineTuning: FineTuning = { posX: 0, posY: 0, posZ: 0, rotY: 0 };
|
||||
@@ -52,4 +78,23 @@ export const useModelStore = create<ModelStore>((set) => ({
|
||||
|
||||
xrSupported: null,
|
||||
setXrSupported: (xrSupported) => set({ xrSupported }),
|
||||
|
||||
opacity: 1,
|
||||
setOpacity: (opacity) => set({ opacity }),
|
||||
|
||||
renderMode: 'solid',
|
||||
setRenderMode: (renderMode) => set({ renderMode }),
|
||||
|
||||
checklist: defaultChecklist.map(i => ({ ...i })),
|
||||
setChecklistItemStatus: (id, status) => set((state) => ({
|
||||
checklist: state.checklist.map(item =>
|
||||
item.id === id ? { ...item, status } : item
|
||||
),
|
||||
})),
|
||||
setChecklistItemNote: (id, note) => set((state) => ({
|
||||
checklist: state.checklist.map(item =>
|
||||
item.id === id ? { ...item, note } : item
|
||||
),
|
||||
})),
|
||||
resetChecklist: () => set({ checklist: defaultChecklist.map(i => ({ ...i })) }),
|
||||
}));
|
||||
|
||||
Reference in New Issue
Block a user