Mats Bosson
0116447bf2
Rewrite to vanilla Web Components
...
Complete rewrite from SolidJS to browser-native Custom Elements.
8 components: Dialog, Select, Tabs, Accordion, Form, Toast, DropdownMenu, Popover
Infrastructure: signals (~30 lines), router (Navigation API + View Transitions)
Theme: optional default CSS with custom properties
Zero framework deps. No Shadow DOM. Built on Popover API, <dialog>,
Invoker Commands, Navigation API, View Transitions.
2026-03-30 14:41:25 +07:00
Mats Bosson
17fe357837
Wire up all Phase 2 exports
...
VirtualList, Calendar, DatePicker, CommandPalette, Form, Wizard,
DataTable + createVirtualizer primitive. 445 tests passing, build clean.
2026-03-29 21:21:16 +07:00
Mats Bosson
5f425f445e
Wire up Card, Avatar, NavigationMenu
...
Phase 1 complete — 32 component exports + 6 utility exports, 353 tests
passing, build clean.
2026-03-29 20:55:25 +07:00
Mats Bosson
01286d8b07
Trim unused exports
...
Fix systemic index.ts re-export bugs (accordion, alert-dialog, breadcrumbs, tabs)
where types were claimed from wrong source files, causing DTS build failures.
2026-03-29 20:49:28 +07:00
Mats Bosson
f197c58296
Add Zod v4 and ComponentMeta type
2026-03-29 20:32:18 +07:00
Mats Bosson
8f075f1792
feat: add 12 components — Tooltip, Popover, HoverCard, Alert, Badge,
...
Skeleton, Breadcrumbs, Link, Button, Image, Meter, NumberField
Floating components: Tooltip (hover/focus), Popover (click, with focus
trap and dismiss), HoverCard (hover with safe area).
Simple components: Alert (role=alert), Badge (role=status), Skeleton
(loading placeholder with data attributes).
Navigation: Breadcrumbs (nav>ol>li with separators), Link (accessible
anchor with disabled), Button (with disabled click suppression).
Data/Form: Image (Img+Fallback with loading status), Meter (like
Progress for known ranges), NumberField (spinbutton with inc/dec).
302 tests across 46 files, typecheck clean, build produces 176 files.
2026-03-29 19:34:13 +07:00
Mats Bosson
2a07d9ceaa
Wire up Wave 2 exports
...
Adds listbox, select, combobox, dropdown-menu, context-menu, and toast
to package.json exports and tsdown build config.
2026-03-29 19:24:43 +07:00
Mats Bosson
295dd1388c
Switch to sub-path exports
...
Consumers use sub-path imports (e.g. "pettyui/slider") for tree-shaking.
Adds Drawer component + 15 sub-path entries to package.json exports.
2026-03-29 09:15:53 +07:00
Mats Bosson
db906fd85a
Fix linting config and package fields
...
- Replace .eslintrc.cjs with eslint.config.mjs (ESLint 9 flat config)
using direct eslint-plugin-solid + @typescript-eslint/parser approach
- Add @typescript-eslint/parser to root devDependencies
- Add main/module/types top-level fields to packages/core/package.json
- Add resolve.conditions to packages/core/vite.config.ts
- Create packages/core/tsconfig.test.json for test type-checking
- Remove empty paths:{} from packages/core/tsconfig.json
2026-03-29 02:35:57 +07:00
Mats Bosson
405ce15933
Initial monorepo setup
2026-03-29 02:30:05 +07:00