Skip to content

TP-08 — Build QueryaTheme from custom manifest #103

Description

@ZhuchkaTriplesix

Epic: A
Depends on: TP-05, TP-06, TP-07

Source: docs/theme-parser-github-issues.md

Goal

Provide one factory that converts QueryaThemeManifest into the existing app-level QueryaTheme.

Files

  • lib/core/theme/parser/querya_theme_from_manifest.dart
  • test/core/theme/parser/querya_theme_from_manifest_test.dart

Implementation

Add:

QueryaTheme queryaThemeFromManifest(QueryaThemeManifest manifest)

Algorithm:

  1. Pick fallback:
    • dark -> QueryaTheme.darkDefault
    • light -> QueryaTheme.lightDefault
  2. Build ColorScheme from shadcn_colors.
  3. Build QueryaEditorTheme from editor_colors.
  4. Build QueryaWorkbenchTheme from editor_colors.
  5. Return fallback.copyWith(...).
  6. Preserve tokenColors.

Acceptance Criteria

  • Full dark fixture creates dark QueryaTheme.
  • Full light fixture creates light QueryaTheme.
  • tokenColors are preserved.
  • No ThemeData is created.

Tests

  • dark brightness;
  • light brightness;
  • shadcn color mapping;
  • editor/workbench mapping;
  • token colors preserved;
  • minimal fixture fallback.

Metadata

Metadata

Assignees

No one assigned

    Labels

    parserTheme parser epic label: parserthemeTheming, colors, VS Code themes

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions