React adapter: update useCalendar for kernel + module API

Offen
#36 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Ruhig
Tech-Stack
react, typescript
Bereich
frontend

Rechercherichtung

Start by reading the parent issue #25 and the blocking issues #29–#34 to understand the kernel and module API this adapter depends on. Then inspect the @tanstack/react-time hook and tests, along with the @tanstack/solid-time adapter for the expected reactive shape. Done means the React hook exposes the specified API reactively, the Solid adapter mirrors its shape, and all existing React adapter tests pass.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

enhancement

Parent

https://github.com/TanStack/time/issues/25

What to build

Update `@tanstack/react-time`'s `useCalendar` hook to consume the new kernel + module API. The hook remains a thin reactive binding — no domain logic lives here. It instantiates the kernel, subscribes to the store via `@tanstack/react-store`, and exposes reactive selectors so components re-render only when the data they consume changes.

Acceptance criteria

  • `useCalendar({ modules, strategy, events, resources })` instantiates a kernel and returns its full API reactively
  • Components subscribed to `days` re-render when the projection changes; components subscribed only to `viewMode` do not re-render on unrelated event changes
  • `strategy: 'client' | 'server'` is accepted and forwarded to the kernel
  • The hook re-exports all Calendar product actions (`addEvent`, `editEvent`, `removeEvent`, `navigate`, `undo`, `redo`, etc.) as stable references
  • `getEventProps(event)` and `getUnavailableRanges(date)` are accessible from the hook return value
  • The Solid adapter (`@tanstack/solid-time`) mirrors the hook shape using Solid's reactive primitives, confirming the core is framework-agnostic
  • All existing `@tanstack/react-time` tests are updated and passing

Blocked by

https://github.com/TanStack/time/issues/29
https://github.com/TanStack/time/issues/30
https://github.com/TanStack/time/issues/31
https://github.com/TanStack/time/issues/32
https://github.com/TanStack/time/issues/33
https://github.com/TanStack/time/issues/34

Vorherrschende Sprache
TypeScript
Sterne
620
Forks
6
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus TanStack/time

Alle Issues in TanStack/time

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.