- Added MIME type mappings for .otf, .woff, and .woff2 font formats - Fixed missing break statement after .wav case (was falling through to .mp4) - Fonts now load correctly in editor preview without 404 errors - Resolves OTS parsing error messages in console The web server was already serving project directory files correctly, but browsers were rejecting font files due to missing/incorrect MIME types. Related to TASK-006
3.4 KiB
TASK-006 Changelog
Overview
This file tracks all changes made during TASK-006: Fix Custom Font Loading in Editor Preview.
Problem: Custom fonts don't load in editor preview due to dev server not serving project directory assets.
Solution: (To be documented as implementation progresses)
Changes
[December 15, 2024] - Cline AI Assistant
Summary: Fixed custom font loading in editor preview by adding missing MIME types to web server configuration. The issue was simpler than expected - the server was already serving project files, but was missing MIME type mappings for modern font formats.
Files Modified:
packages/noodl-editor/src/main/src/web-server.js- Added MIME type mappings for all font formats and fixed audio fallthrough bug- Added
.otf→font/otf - Added
.woff→font/woff - Added
.woff2→font/woff2 - Fixed
.wavcase missingbreak;statement (was falling through to.mp4)
- Added
Files Created:
- None
Files Deleted:
- None
Configuration Changes:
- MIME types configured in
getContentType()function - Font formats now properly recognized:
.ttf,.otf,.woff,.woff2
Breaking Changes:
- None - this fix only affects development preview server
Testing Notes:
- Manual testing required: Create project with custom fonts and verify they load in preview
- Test all font formats: TTF, OTF, WOFF, WOFF2
- Verify no 404 errors in console
- Verify no "OTS parsing error" messages
Known Issues:
- None expected - changes are minimal and isolated to MIME type configuration
Next Steps:
- Build and test editor with changes
- Create test project with multiple font formats
- Verify fonts load correctly in preview
- Test project switching behavior
[Date] - [Developer Name]
Summary: Brief description of what was accomplished in this session
Files Modified:
path/to/file.ts- Description of changes and reasoningpath/to/file2.tsx- Description of changes and reasoning
Files Created:
path/to/newfile.ts- Purpose and description
Files Deleted:
path/to/oldfile.ts- Reason for removal
Configuration Changes:
- webpack.config.js: Added middleware for project asset serving
- MIME types configured for font formats
Breaking Changes:
- None expected (dev server only)
Testing Notes:
- Manual testing performed: [list scenarios]
- Edge cases discovered: [list any issues]
- Performance impact: [measurements if relevant]
Known Issues:
- [Any remaining issues to address]
Next Steps:
- [What needs to be done next]
Implementation Notes
(Document key decisions and discoveries here as work progresses)
Architecture Decision
- Chose Option [A/B/C] because...
- Dev server implementation details...
Security Considerations
- Path sanitization approach: ...
- Directory traversal prevention: ...
Performance Impact
- Asset serving overhead: ...
- Caching strategy: ...
Testing Summary
(To be completed after implementation)
Tests Passed
- Custom fonts load in preview
- Multiple font formats work
- Project switching works correctly
- No 404 errors in console
- Security tests pass
Tests Failed
- (Document any failures and solutions)
Final Status
Status: 📋 Not Started
Outcome: (To be documented upon completion)
Follow-up Tasks: (List any follow-up work needed)