s-m-r-t
Open the s-m-r-t source on GitHub Switch to dark color scheme
← All packages
Domain models v0.57.40

@happyvertical/smrt-events

Deeply nested events, series, participants, placements, and meeting presentation.

Source ↗

What it gives you

Deeply nested events, series, participants, placements, and meeting presentation.

This package is one focused part of the s-m-r-t stack. Its decorated models participate in the same manifest, tenancy, persistence, and generated-interface conventions as the rest of the framework.

Events can nest without a depth ceiling

SmrtHierarchical supplies getParent, getChildren, getAncestors, getDescendants, getHierarchy, and moveTo. Load the needed tree shape rather than recursively resolving every relation. EventSeries defines daily, weekly, monthly, or yearly recurrence, and expandRecurrence or EventSeries.getOccurrences expand it into instants that keep the start wall-clock time in its zone. Event.allDay marks a whole-day event whose endDate is the exclusive midnight after its last day. Event.timeZone is an IANA zone, and an empty value inherits. EventType carries a custom-field JSON schema.

Participants and assets carry presentation detail

EventParticipant records role, placement, grouping, and conflictColumns; numeric placement can serve both layout and ordering. EventAsset is the owned-asset join with getAssets, addAsset, and removeAsset.