# Changelog

All notable changes to this project will be documented in this file.

---

## [Unreleased]

### Changed

- **Visual refresh — default palette and radius aligned with semaphor-app.** The shipped `--semaphor-*` CSS variable *values* in `src/components/index.css` now mirror the zinc-based design tokens used by the main Semaphor app. Variable names, selector prefixing (`.semaphor-scope`), and the public API are unchanged — only the default values differ.

  Light mode:
  - `--semaphor-foreground`, `--semaphor-card-foreground`, `--semaphor-popover-foreground`: shifted from `240 10% 3.9%` to `240 5.9% 10%` (zinc-900 warm neutral).
  - `--semaphor-muted`: `240 4.8% 95.9%` → `0 0% 98%` (raised surface now lighter than canvas on hover-states).
  - `--semaphor-destructive`: `0 84.2% 60.2%` → `0 72.2% 50.6%` (red-500, less saturated).
  - `--semaphor-radius`: `0.5rem` (8px) → `0.3125rem` (5px). Cards, controls, tables become denser.
  - Added `--semaphor-brand: 217 91% 53%` as a default (falls back to `--semaphor-foreground` when unset, per Tailwind config — now has an explicit default).

  Dark mode:
  - Canvas darkened from zinc-900 (`240 10% 10%`) to zinc-950 (`240 10% 3.9%`). No longer pure black — keeps depth without being harsh.
  - Body foreground shifted from `0 0% 80%` to `0 0% 93%` (calm off-white — Linear / Vercel / Notion style). Primary and primary-foreground keep crisp 98% contrast for white-on-dark buttons.
  - Muted swapped so raised surfaces lift *lighter* from canvas (`240 3.7% 15.9%` → `240 5.9% 10%`). Elevation in dark mode now adds light, not darkness.
  - Ring color crisp (`240 4.9% 83.9%` → `0 0% 98%`) for focus visibility.

  **Customer impact**: customers overriding `--semaphor-*` vars on the host see no change — their overrides still win via cascade. Customers relying on the shipped defaults will see a palette shift (warmer zinc, calmer dark) and tighter radii. No API changes.

  **Known issue not addressed in this pass**: `theme-provider.tsx` still mutates `document.documentElement.classList` for light/dark, which leaks into the host app. Tracked separately under the `brand-studio` appearance runtime.

- Dashboard assistant visibility now resolves with token precedence: `config.showDashboardAssistant` overrides `showAssistant`, and falls back to `false` when both are unset.

## [0.0.96] - 2025-04-26

## Fixed

- Table header layout shift and scroll overlay
- Grouped Range Chart bug
- KPI color indicator
- Text (Title) editor

## Changed

- Chart Setting Location for Legend and Format Number

## Added

- Funnel Chart
- Default Dashboard Filters
- ClickHouse support
- Python support for Dashboard Assistant

## [0.0.95] - 2025-03-26

### Fixed

- useTextFilter hook

### Changed

- Default Styles

## [0.0.92] - 2025-03-24

### Added

- Security Enhancements
- Dashboard customization options
- Scheduled Reports
- Enhanced Assistant

### Changed

- Table layout
- Frame Tabs
- Assistant location

### Fixed

- Custom Config for visuals
