Radarist project

Radarist / Design system

Documentation v0.1 · Product in progress

Design system contents

Components

Block editor and validation

Choose the activity, project, start/end time, and supporting detail with explicit range validation.

On this page

Purpose and usage

Choose the activity, project, start/end time, and supporting detail with explicit range validation.

Use for adding a daily block; reuse ProjectEventModal for project resource events.

Anatomy

Anatomy
PartContract
Activity optionsType choice changes the editor context.
Project choiceUses active project options when needed.
Time rangeNative time inputs for start and end.
FeedbackPolite validation message near the save action.

Variants and configuration

Variants and configuration
ConfigurationBehavior
choiceProject, event, lunch or time-away entry point.
start/endFractional hour values initialize native time inputs.
onSaveReturns a message or null.
onCloseProvided by the parent.

State coverage

State coverage
StateImplemented behavior
Valid draftSave sends a trimmed draft to the parent.
Invalid rangeThe block must end after it starts.
Placement rejectedParent’s error message is shown.

Interaction and responsive behavior

  • Validate end after start before attempting placement.
  • The parent must check bounds, overlap, availability and persistence.
  • Keep editable times available as a non-drag path for creating entries.

Accessibility contract

  • Inspect field labels and native time controls.
  • The live error message communicates rejection.
  • This specific editor must be reviewed for dialog semantics, focus trapping and restoration; other dialog components cannot confer those behaviors on it.

Known gaps and readiness

There is no claim of full modal accessibility for AgendaBlockModal. The screenshot demonstrates real range validation, not a successful server save.

Composition example

<AgendaBlockModal choice="project" start={8} end={9.5}
  projects={projectOptions} onSave={validateAndSave}
  onClose={closeEditor} />

Source references

Source references
FileResponsibility
app/components/agenda-block-modal.tsxTime-entry form
app/components/radar-calendar.tsxPlacement callback and persistence

Examples from the app

Actual Radarist components with fictional data. Captured at 2× resolution or higher. Select an image to inspect it full size.

Block Editor · Dialog detail · Light · Desktop · 1240 × 1252 px
Block Editor · Dialog detail · Light · Desktop · Error · 1240 × 1396 px

Source audit: 2026-10-07 · Revision 0103e2549959 · Documentation v0.1