Dialog

Modal and modeless windows for focused tasks, from confirm to full form.

7 sub-components · 1 deprecated · 86% covered

Sub-components

  • Dialogcanon✓✓✓✓✓✓Window for one focused task, in four variants: plain, form-less (creates or edits one record without form fields — see Form-less dialog), confirm (the one way to ask "are you sure?") and window states (expanded · compact · minimised to the dock).
  • Multi-step dialogcanon✓✓✓✓✓✓One window that walks through steps and reshapes itself between them (width and height, on the canonical spring) instead of closing and opening another window. First case: New deal — search for the person or company first (Attio "Choose record" anatomy, with a persistent footer), then the form-less detail.
  • Springcanon✓–✓✓✓✓Damped-oscillator physics (stiffness 190, damping 17, ~750ms, ~6% overshoot) sampled into WAAPI keyframes — the one physical motion for every reshape between states (dialog window, button/text width, list cursor). Replaces the earlier 0.29s cubic-bezier(0.32, 0.72, 0, 1) curve as canon (RULES.md §11).
  • MorphTextcanon✓✓✓✓✓✓A text layer whose width moves on the spring while the old and new text cross-fade in place — one element that reshapes, never two labels swapped. First shipped use: the New deal search step's primary action, "Select record" ↔ "Create person".
  • Form-less dialogcanon✓✓✓✓✓✓Creates or edits one record without form fields: an icon carries each row and the placeholder names it. Shape A writes text plus properties as chips in the body; shape B asks what · when · with whom · how · where.
  • Note dialogcanon✓✓✓✓✓✓The note detail: a document-class form-less dialog with autosave. One chip row under the title: Link (RecordLinksChip, avatars + „+N“) · Dictate (voice → text, audio discarded) · Magic (AI rewrite, undo) · Add audio (file or Plaud kept below the text with player and transcript; the AI summary becomes note text).
  • Record drawercanon✓✓✓✓✓✓The side panel that opens a record next to its listing without leaving it; the listing behind stays live. The only drawer in the canon.