Skip to content

Conversation

marklearst
Copy link
Owner

@marklearst marklearst commented Aug 10, 2025

Summary

Adds internationalization (EN/ES), a theme selector (light/dark/system), and a token-based theming system applied across the widget UI.
Also includes a small UX toggle to hide completed items.

Changes

  • i18n: EN/ES messages, language dropdown in property menu; localized progress text and title fallback
  • Theme: theme dropdown (light/dark/system) persisted via useSyncedState
  • Theme tokens: light/dark palettes and resolver; applied to panel bg/stroke/header/text
  • Primitives: ProgressBar themed via tokens; ProgressTracker/Checkbox accept optional color overrides
  • Checklist UI: Section/Item/Badge receive and use theme colors; WCAG badge supports color prop
  • Feature: property menu toggle to hide completed items

QA

  • Typecheck: PASS (npm run tsc)
  • Build: PASS (npm run build)
  • Lint: PASS (npm run lint)

Notes

  • System theme currently falls back to the provided isDarkMode flag.
  • Optional enhancement: wire system dark detection via ui.html postMessage.

Screenshots

N/A — widget visuals updated to reflect theme.

…and apply to panel background

- extend settings hook with theme synced state and dropdown
- apply theme to panel fill with system fallback to isDarkMode flag
- typecheck and build pass
…eader, text)

- add theme tokens module (light/dark) and resolver
- wire tokens in ChecklistPanel for bg/stroke/header/text colors
- prep components for theming (no behavior change yet)
- typecheck and build pass
…kens in ProgressBar

- extend Checkbox, ProgressBar, ProgressTracker props with optional colors
- use provided colors in primitives; fallback to existing colors
- apply tokens from panel to ProgressBar (track/fill)
- typecheck and build pass
- thread theme colors into ChecklistSection and ChecklistItem
- add optional color prop to WcagBadge and wire from theme
- pass checkbox/progress/badge colors from panel to sections
- fix ChecklistItem JSX and integrate optional color overrides
- typecheck and build pass
@marklearst marklearst changed the title feat/theme selector feat: i18n (EN/ES) + theme selector (light/dark/system), tokens, and panel theming Aug 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant