v1.1.0
June 25, 2026LatestProvider patterns + DX polish based on feedback from real consumer projects. Toast and Confirm gain global imperative APIs; Card and Table gain shadcn-compatible composition; the package finally declares sideEffects so bundlers stop dragging the whole tree on `import { Button }`.
Added
- ·`<ToastProvider>` + `toast.success/error/warning/info` on `/toast` subpath — single global queue, sonner-style call from anywhere, no boilerplate.
- ·`<ConfirmProvider>` + `confirm.danger/warning/info` on `/confirm` subpath — Promise-based, `const ok = await confirm.danger({...})`.
- ·Card composition: `<CardHeader>`, `<CardTitle>`, `<CardDescription>`, `<CardContent>`, `<CardFooter>` (shadcn pattern). Shorthand `<Card title actions>` still works.
- ·Headless Table primitives: `Table`, `TableHeader`, `TableBody`, `TableFooter`, `TableHead`, `TableRow`, `TableCell`, `TableCaption` — no `@tanstack/react-table` dependency.
- ·`Progress` primitive — determinate bar with 4 variants (default / success / warning / destructive).
- ·`Label` exported as alias of `FormLabel` — drop-in for shadcn migrations.
- ·`Select.onValueChange` — first-class prop (Radix/shadcn idiom). `onChange` kept as deprecated alias.
- ·`SelectProps<T extends string>` / `SelectOption<T extends string>` — TypeScript infers union literals from `options`, no more `(v) => set(v as MyKind)` casts.
- ·`useConfirm()` hook — same shape as the module helper, attached to the nearest `<ConfirmProvider>`, throws if used outside.
Changed
- ·`"sideEffects": ["**/*.css"]` declared in package.json — bundlers now tree-shake the barrel properly. Importing `{ Button }` stops pulling charts / colorpicker / emoji-picker.
- ·`@tanstack/react-table` is now an **optional** peer dependency — only ManagedDataTable / InfiniteDataTable need it. Apps without tables skip the ~50 KB peer.
- ·ToastContainer gains a `position` prop with 6 anchors (4 corners + top/bottom center). Mobile collapses to a full-width strip. Default unchanged (`top-right`).
- ·Docs site: new `/theming` page covering tokens, override cascade and ThemeProvider. `/installation` shows a yellow warning under the `@source` line (silent purge trap on Tailwind 4) and a worked example with react-hook-form + Zod.