Epic: B
Depends on: TP-12, TP-09
Source: docs/theme-parser-github-issues.md
Goal
Given a ThemeDefinition, parse the full theme and return ThemeLoadResult.
Files
lib/core/theme/theme_registry_service.dart
test/core/theme/theme_registry_service_test.dart
Implementation
Add:
Future<ThemeLoadResult> loadTheme(ThemeDefinition definition)
Behavior:
ThemeFormat.queryaCustom -> QueryaThemeManifest.fromJsonString -> queryaThemeFromManifest.
ThemeFormat.vscode -> existing VsCodeThemeManifest -> existing queryaThemeFromVsCode.
- failure ->
ThemeLoadFailure.
- missing file ->
ThemeLoadFailure.
Acceptance Criteria
- Custom definition loads to
QueryaTheme.
- VS Code definition still loads.
- Missing/deleted file returns failure.
- No app crash on parse failure.
Tests
- custom success;
- VS Code success using existing fixture;
- deleted file failure;
- invalid file failure.
Epic: B
Depends on: TP-12, TP-09
Source:
docs/theme-parser-github-issues.mdGoal
Given a
ThemeDefinition, parse the full theme and returnThemeLoadResult.Files
lib/core/theme/theme_registry_service.darttest/core/theme/theme_registry_service_test.dartImplementation
Add:
Behavior:
ThemeFormat.queryaCustom->QueryaThemeManifest.fromJsonString->queryaThemeFromManifest.ThemeFormat.vscode-> existingVsCodeThemeManifest-> existingqueryaThemeFromVsCode.ThemeLoadFailure.ThemeLoadFailure.Acceptance Criteria
QueryaTheme.Tests