User Interface medium complexity mobile
2
Dependencies
0
Dependents
3
Entities
0
Integrations

Description

Flutter form screen for creating and editing free-text notes linked to a contact. Provides a TextEditingController-backed text field with autosave, a contact selector that reuses the Contact Search Widget, a date/time picker defaulting to now, and action buttons for save-as-draft, submit, and delete with confirmation dialog.

Feature: Note Editor

note-editor-screen

Responsibilities

  • Render the note text input field with accessibility labels and 200% font scaling
  • Display the linked contact selector using the shared Contact Search Widget
  • Provide save-as-draft, submit, and delete actions with confirmation prompts
  • Inject speech-to-text transcribed text at the current cursor position
  • Show optimistic UI updates with rollback indicators on API error

Interfaces

buildNoteForm(contactId?: String)
onTextChanged(String text)
onContactSelected(String contactId)
onDateTimeChanged(DateTime dateTime)
onSaveDraft()
onSubmitNote()
onDeleteNote()
showDeleteConfirmation()
insertTextAtCursor(String text)
showErrorSnackbar(String message)
showSavingIndicator()
dispose()

Relationships

Dependencies (2)

Components this component depends on

Related Data Entities (3)

Data entities managed by this component