Epic: B
Depends on: TP-10
Source: docs/theme-parser-github-issues.md
Goal
Centralize app theme directories and avoid path logic scattered across services.
Files
lib/core/theme/theme_paths.dart
test/core/theme/theme_paths_test.dart if path provider can be faked easily.
Implementation
Add:
abstract final class ThemePaths {
static Future<Directory> userThemesDirectory();
static Future<Directory> importedThemesDirectory();
}
Rules:
- Primary user dir: app support directory +
themes.
- Imported dir: app support directory +
themes/imported.
- Optionally expose
legacyDotQueryaThemesDirectory() for later ~/.querya/themes.
Acceptance Criteria
- Directories are not created by path getter unless method name says
ensure.
- Separate
ensureUserThemesDirectory() can create it.
Tests
- If existing test support fakes path provider, assert paths.
- Otherwise cover through registry tests.
Epic: B
Depends on: TP-10
Source:
docs/theme-parser-github-issues.mdGoal
Centralize app theme directories and avoid path logic scattered across services.
Files
lib/core/theme/theme_paths.darttest/core/theme/theme_paths_test.dartif path provider can be faked easily.Implementation
Add:
Rules:
themes.themes/imported.legacyDotQueryaThemesDirectory()for later~/.querya/themes.Acceptance Criteria
ensure.ensureUserThemesDirectory()can create it.Tests