107 Commits

Author SHA1 Message Date
Mats Bosson
b291ceab50 ID registration primitive 2026-03-29 02:46:51 +07:00
Mats Bosson
bedfa33117 Fix disclosure state toggle behavior 2026-03-29 02:43:19 +07:00
Mats Bosson
ed13193430 Disclosure state primitive
Implements controlled/uncontrolled open-close state for disclosure components (Dialog, Popover, Tooltip, Collapsible, etc.) wrapping createControllableSignal with open/close/toggle convenience methods.
2026-03-29 02:41:54 +07:00
Mats Bosson
512eba474a Fix null handling in controllable signal 2026-03-29 02:40:38 +07:00
Mats Bosson
8f2e6042ea Controllable signal primitive
Implements the controlled/uncontrolled state primitive with full TDD coverage (5 tests passing). Delegates to an internal signal when uncontrolled, defers to the external value accessor when controlled.
2026-03-29 02:38:40 +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