@timbal-ai/timbal-react 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/README.md +13 -7
  3. package/dist/app.cjs +1234 -867
  4. package/dist/app.d.cts +2 -2
  5. package/dist/app.d.ts +2 -2
  6. package/dist/app.esm.js +14 -6
  7. package/dist/{chart-artifact-CX-rh9nq.d.cts → chart-artifact-E58ve76I.d.cts} +29 -3
  8. package/dist/{chart-artifact-BZp7nmaf.d.ts → chart-artifact-_PEJgCpQ.d.ts} +29 -3
  9. package/dist/{chat-DCms8pJ_.d.cts → chat-ClmzWzCX.d.cts} +2 -0
  10. package/dist/{chat-DCms8pJ_.d.ts → chat-ClmzWzCX.d.ts} +2 -0
  11. package/dist/chat.cjs +868 -511
  12. package/dist/chat.d.cts +1 -1
  13. package/dist/chat.d.ts +1 -1
  14. package/dist/chat.esm.js +3 -3
  15. package/dist/{chunk-6HWMJNZT.esm.js → chunk-4VULP3CJ.esm.js} +1 -1
  16. package/dist/{chunk-XCM3V6RK.esm.js → chunk-AGJKK6R7.esm.js} +2 -2
  17. package/dist/{chunk-4AKJ6FKE.esm.js → chunk-BMXFXLVV.esm.js} +120 -22
  18. package/dist/{chunk-JEAUF54A.esm.js → chunk-FEYZUVBM.esm.js} +1 -1
  19. package/dist/{chunk-FRZOEYBO.esm.js → chunk-MTYXREHK.esm.js} +4 -4
  20. package/dist/{chunk-P3KDAYX6.esm.js → chunk-NAMKO2MU.esm.js} +1 -1
  21. package/dist/{chunk-YXZ22OJN.esm.js → chunk-UY7AKWJL.esm.js} +670 -402
  22. package/dist/{chunk-TK2AGIME.esm.js → chunk-XDIY2WSL.esm.js} +15 -13
  23. package/dist/index.cjs +1871 -1497
  24. package/dist/index.d.cts +5 -5
  25. package/dist/index.d.ts +5 -5
  26. package/dist/index.esm.js +21 -9
  27. package/dist/{pill-segmented-tabs-Ba5q0feL.d.cts → pill-segmented-tabs-BsIOW1Lo.d.cts} +32 -4
  28. package/dist/{pill-segmented-tabs-Ba5q0feL.d.ts → pill-segmented-tabs-BsIOW1Lo.d.ts} +32 -4
  29. package/dist/studio.cjs +1089 -732
  30. package/dist/studio.d.cts +2 -2
  31. package/dist/studio.d.ts +2 -2
  32. package/dist/studio.esm.js +5 -5
  33. package/dist/styles.css +14 -16
  34. package/dist/ui.cjs +122 -22
  35. package/dist/ui.d.cts +1 -1
  36. package/dist/ui.d.ts +1 -1
  37. package/dist/ui.esm.js +8 -4
  38. package/dist/{welcome-CRqOPKMp.d.cts → welcome-BFGRoNfK.d.cts} +1 -1
  39. package/dist/{welcome-DlHUa3OL.d.ts → welcome-DXqsGTwH.d.ts} +1 -1
  40. package/package.json +1 -1
  41. package/vite/local-dev.d.ts +5 -1
  42. package/vite/local-dev.mjs +17 -13
package/CHANGELOG.md CHANGED
@@ -4,14 +4,21 @@ All notable changes to `@timbal-ai/timbal-react` are documented here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [1.2.0] — 2026-06-03
8
+
7
9
  ### Changed
8
10
 
9
11
  - **App-kit charts now run on [recharts](https://recharts.org)** (native shadcn chart layer). `LineAreaChart`, `PieChart`, `RadialChart`, and `RadarChart` keep the same public props but render via recharts under the shadcn `ChartContainer` / `ChartTooltipContent` / `ChartLegendContent` chrome — so tooltips, hover states, and animation match shadcn exactly across every chart kind. Series colors still flow from the theme `--chart-1..6` tokens.
10
- - Fixes from feedback: in-card legends no longer clip outside the card; line/area charts use a thin crosshair cursor (not a wide band); tooltips animate in; and radial/radar charts now have hover tooltips.
12
+ - **Flush dashboard charts are tooltip-first** `ChartPanel`, `MetricChartCard`, and cartesian `ChartArtifact` views use `layout="flush"` with **axes hidden by default**; category labels and formatted values appear in shadcn tooltips on hover. Fixes clipped axis ticks and edge-cropped bars/lines in card shells.
13
+ - **`LineAreaChart` margins and scales** — symmetric plot inset when axes are off; `no-gap` / zero bar gap only when category axes are explicitly shown; horizontal bars use band category scale (no misaligned Y ticks).
14
+ - **Linked Vite dev** — `timbalReactLocalDev()` always aliases `file:../timbal-react` installs to `src/` so gallery apps pick up source edits without rebuilding `dist/` first.
15
+ - Polish: in-card legends no longer clip outside the card; line/area charts use a thin crosshair cursor; tooltips animate in; radial/radar charts have hover tooltips.
11
16
 
12
17
  ### Added
13
18
 
14
19
  - **shadcn chart primitives exported from `/ui`**: `ChartContainer`, `ChartTooltip`, `ChartTooltipContent`, `ChartLegend`, `ChartLegendContent`, `ChartStyle`, `useChart`, and the `ChartConfig` type.
20
+ - **`ChartArtifact.showAxes`** — opt-in axis ticks on flush cartesian charts (default off).
21
+ - **`resolveChartMargin`**, **`resolveTooltipCategory`**, and related helpers exported from the charts entry for tests and custom wrappers.
15
22
 
16
23
  ### Dependencies
17
24
 
package/README.md CHANGED
@@ -88,9 +88,11 @@ Dashboard and in-chat charts use the **native shadcn/recharts layer** — animat
88
88
 
89
89
  **Dependencies:** `recharts` ships with the package. Install **`react-is`** alongside React (same major version) — it is a recharts peer and must match your React version.
90
90
 
91
+ **Flush dashboards (`ChartPanel`, `MetricChartCard`, cartesian artifacts):** charts default to **`layout="flush"`** — no axis tick labels; **hover tooltips** show the category (`xKey`) and formatted value(s). Opt back in with `showXAxis` / `showYAxis` on `LineAreaChart`, or `showAxes: true` on a `ChartArtifact`. Use `layout="default"` when you want visible axes without passing extra props.
92
+
91
93
  **Rebrand:** override `--chart-1` … `--chart-6` in `:root` / `.dark` (series 1 defaults to `--primary`). Per-series overrides: `series[].color` on `LineAreaChart` or `colors` on pie/radial artifacts.
92
94
 
93
- **`ChartArtifact` kinds:** `bar`, `horizontalBar`, `line`, `area`, `pie`, `donut`, `radial`, `radar` — see `ChartPanel` + the app-kit **Chart catalog** recipe.
95
+ **`ChartArtifact` kinds:** `bar`, `horizontalBar`, `line`, `area`, `pie`, `donut`, `radial`, `radar` — see `ChartPanel` + the app-kit **Chart catalog** recipe (`examples/app-kit/src/recipes/chart-catalog.tsx`).
94
96
 
95
97
  **Custom charts** (same pattern as shadcn docs):
96
98
 
@@ -1063,13 +1065,13 @@ The shell renders a rounded floating panel (bottom-right) and a **text-only** pi
1063
1065
  | `AppCopilotProvider` | Page context via `useAppCopilotContext` (not shown in UI) |
1064
1066
  | `AppChatPanel` | Full-height floating thread; dismiss via **X** in the corner |
1065
1067
  | `AppShell` `chat` | Floating overlay — `chatWidth`; optional `chatHeight` (default: stretch top–bottom) |
1066
- | `LineAreaChart` | Cartesian engine on **recharts** — area/line/bar, stacked, horizontal bars, `monotone`/`linear`/`step` curves, dots, shadcn-style hover tooltip (`dot`/`line`/`dashed` indicators), responsive |
1068
+ | `LineAreaChart` | Cartesian engine on **recharts** — area/line/bar, stacked, horizontal bars, `layout` (`flush` hides axes; tooltips carry category + values), `showXAxis` / `showYAxis`, `monotone`/`linear`/`step`, shadcn tooltips (`dot`/`line`/`dashed`) |
1067
1069
  | `PieChart` / `RadialChart` / `RadarChart` | Pie & donut (center KPI), concentric progress rings, and spider charts — native shadcn/recharts charts |
1068
1070
  | `ChartContainer` / `ChartTooltip` / `ChartTooltipContent` / `ChartLegend` / `ChartLegendContent` (`/ui`) | shadcn chart primitives (recharts wrappers); colors flow from `ChartConfig` → `--color-*` |
1069
1071
  | `Sparkline` | Tiny inline trend for table cells and tiles |
1070
1072
  | `MetricRow` | Platform KPI strip in one card (overview metrics, no chart) |
1071
- | `MetricChartCard` | `MetricRow` + selectable flush chart (Analytics / Infrastructure) |
1072
- | `ChartPanel` `artifact` | Chrome around a `ChartArtifact` (`chartType`: `bar`/`horizontalBar`/`line`/`area`/`pie`/`donut`/`radial`/`radar`) or any chart |
1073
+ | `MetricChartCard` | `MetricRow` + selectable **flush** chart (no axis ticks; hover for category + value) |
1074
+ | `ChartPanel` `artifact` | Title row + flush plot around a `ChartArtifact` (`chartType`: `bar`/`horizontalBar`/`line`/`area`/`pie`/`donut`/`radial`/`radar`; optional `showAxes`) |
1073
1075
  | `SettingsSection` / `FieldRow` / `DangerZone` / `FloatingUnsavedChangesBar` | Two-column settings page building blocks |
1074
1076
  | `IntegrationCard` / `ConnectionRow` / `PlanBadge` / `IntegrationsEmptyState` | Integration catalog + connected list |
1075
1077
  | `InfoCard` / `DescriptionList` / `ExpandableSection` / `ResourceCard` / `StatusDot` | Surfaces & detail views |
@@ -1168,7 +1170,7 @@ bun run build:watch # rebuild on every change
1168
1170
 
1169
1171
  ### Vite apps linked with `file:../timbal-react`
1170
1172
 
1171
- Without extra config, Vite pre-bundles a **cached** copy under `node_modules/.vite/deps` and your UI will look stuck on an old build.
1173
+ Without extra config, Vite pre-bundles a **cached** copy under `node_modules/.vite/deps` and your UI can look stuck on an old build.
1172
1174
 
1173
1175
  1. Add the local-dev plugin in `vite.config.ts`:
1174
1176
 
@@ -1180,12 +1182,16 @@ export default defineConfig({
1180
1182
  });
1181
1183
  ```
1182
1184
 
1183
- 2. Run dev with a watch build (from your app):
1185
+ For **`file:` / symlink** installs the plugin **aliases package entrypoints to `src/`** and watches both `src/` and `dist/`, so app-kit / blueprint dev reflects timbal-react edits without rebuilding `dist/` on every change.
1186
+
1187
+ 2. Run dev (from your app or repo root):
1184
1188
 
1185
1189
  ```bash
1190
+ bun run example:app # timbal-react root — builds dist in watch mode + Vite
1191
+ # or
1186
1192
  node ../timbal-react/scripts/dev-linked.mjs vite
1187
1193
  ```
1188
1194
 
1189
- Or use the `dev` script in `blueprint-ui-dashboard` / examples (already wired).
1195
+ Run `bun run build` in timbal-react before publishing or to verify the production bundle.
1190
1196
 
1191
1197
  One-time if you still see stale UI: `rm -rf node_modules/.vite` then restart dev.