Skip to content

Timeline

<!-- generated:meta -->

Grupui
Planeresource
Spec structTimelineSpec

<!-- /generated:meta -->

Kapan Memakai

kind: Timeline adalah feed kronologis vertikal, dikelompokkan per tanggal — untuk audit trail append-only, activity log, rekam medis (ditulis sekali, tidak pernah diubah).

Kapan memakai Timeline:

  • Urutan waktu sebagai narasi utama (rekam medis, audit log, activity feed) — cerita read-only

Kapan TIDAK pakai Timeline:

  • User perlu sort/filter/operate baris → kind: Table (permukaan operasional)

Sumber kontrak: docs/spec/frontend/06-page-kinds.md §9.

Contoh Manifest

yaml
apiVersion: formspec.dev/v1
kind: Timeline
metadata:
  name: patient-medical-history
  module: clinic
spec:
  entity: clinic.medical_record
  bind_param: patient_id
  bind_value: ":patient_id"
  display:
    title_field: visit_date
    subtitle_field: doctor.name
    content_field: diagnosis_and_notes
  group_by: date                          # date | month | year | none
  sort: desc
  page_size: 20

Atribut

<!-- generated:attributes -->

AtributTipeWajibContohDeskripsi
publicbooleantrueIf true (default), a route /module/timeline/<name> is auto-generated.
entitystringclinic.medical_record
event_fieldstring
date_fieldstring
bind_paramstring
bind_valuestring
displayTimelineDisplay
group_bystringdate | month | year | none
sortstringasc | desc (default desc)
page_sizeinteger
empty_statestring

<!-- /generated:attributes -->

Gotchas

  • Renderer tidak menampilkan tombol create/edit/delete untuk entity Timeline — entity SEBAIKNYA disable update/delete, kind ini sendiri yang jadi guard.
  • Infinite scroll cursor-based pakai created_at; realtime subscribe created.
  • Cross-ref: docs/spec/frontend/06-page-kinds.md §9 · ai_skills/formspec-kinds

Standar terbuka (CC0) dengan implementasi referensi.