Commit graph

7 commits

Author SHA1 Message Date
eb30a325db fix(guides): fix hard reload empty state and frame rendering bugs
- Split GuideForm into outer/inner components to gate rendering on
  guide context loading, fixing empty edit form on hard reload
- Add loading state to GuideContext
- Replace URL.createObjectURL in render with useMemo + useEffect cleanup
  to fix memory leak and empty src warning
- Fix frame reorder bug by keying Frame on frame.id instead of index
2026-06-17 20:21:46 +02:00
7cdeb98161 feat(guides): integrate GuideContext and persist new guides to IndexedDB
- Wrap application root with IDBProvider and GuideProvider
    - Replace mock data in App component with real guides from useGuides hook
    - Update useNewGuide hook to save compiled guides to IndexedDB and update global state
2026-06-17 11:12:25 +02:00
0f70457d29 Fix: Form submission refresh bug and resolve TypeScript type errors
- Add explicit type=button to frame and step buttons to prevent unwanted form submission
- Move e.preventDefault() form submission logic into useNewGuide hook
- Fix TypeScript assignment error by adding 'title' to initial frame objects
- Export CompiledGuideType and update schema type references
2026-06-14 20:14:08 +02:00
1bb6ddf403 refactor(guides): colocate steps within frames state
- Remove standalone steps state; steps now live inside each Frame object
- Initialize each frame with one default empty step on file upload
- Update handleAddSteps, handleUpdateStep, handleRemoveStep to operate
  on frames array via nested map/filter
- Rename handleUpdateStepText -> handleUpdateStep
- Rename schema types to StepType, FrameType, GuideType
- Add steps and title fields to FrameSchema
- Wire FileUpload onChange and render Frame components in NewGuide
- Add NewGuide.css and basic input/textarea border styles
2026-06-12 11:10:02 +02:00
8a8d495432 feat(guides): scaffold new guide form, hook, and update schemas
- Add useNewGuide hook with state and handlers for guide, frames, and steps
- Add title, description, and file upload inputs to NewGuide
- Add FileUpload component and supporting hooks
- Add guideId to FrameSchema, remove steps and order
- Remove content field and frames array from GuideSchema
- Remove order field from StepsSchema
2026-06-10 20:46:06 +02:00
0176a59865 refactor: refactor data schemas 2026-06-10 19:37:22 +02:00
efa9789a2a refactor: bootstrap app shell with routing and layout 2026-06-09 21:08:12 +02:00