Lompat ke isi
CirccaHIG

Komponen / Grafik & jadwal

ChartCard

Wadah kartu grafik di Monitoring: judul (pertanyaan kartu), keterangan, tautan ke daftar sumber, grafik, dan footnote penjelas — lengkap dengan keadaan kosong dan memuat. KpiCard untuk angka "x dari y" dengan ring kecil.
React · BetaFigma · siapFigmaSumber

Import

tsx
import { ChartCard, ChartCardLink, KpiCard, DonutChart } from '@divistant/circca-react';

Props · ChartCard

Dirender sebagai <section aria-labelledby> (judul) dan aria-describedby (keterangan). Juga menerima atribut <section>.
PropTipeDefaultKeterangan
titleReactNode—Judul kartu = pertanyaan yang dijawab grafik: "Status orang di PE". Headline/Default.
descriptionReactNode—Keterangan Footnote/Default di bawah judul: cara membaca angka, satuan, atau sumber.
link{ label: ReactNode; href: string }—Tautan kanan header ke daftar sumber ("Payroll Entry ›"). Tanda › otomatis.
actionReactNode—Slot kanan header (menimpa link): ChartCardLink asChild untuk router, filter periode, atau IconButton.
footnoteReactNode—Catatan penjelas arti angka di bawah grafik. Tetap tampil saat kosong.
emptybooleanfalseData semua-nol → grafik diganti pesan kosong.
emptyTitleReactNode"Belum ada data periode ini."Pesan kosong satu kalimat (Body/Default fg/muted).
emptyDescriptionReactNode—Bila diisi, pesan kosong tampil sebagai kotak neutral/subtle: emptyTitle (Body Medium) + keterangan.
loadingbooleanfalseSkeleton setinggi grafik + aria-busy.
loadingHeightnumber150Tinggi Skeleton saat memuat (px).
headingLevel2 | 3 | 4 | 5 | 63Tingkat heading judul sesuai struktur halaman.
childrenReactNode—Isi grafik: DonutChart, ActivityRings, ColumnChart, BarList, dsb.
classNamestring—Kelas tambahan (digabung aman dengan tailwind-merge).
Tautan bergaya kartu (Footnote/Default accent/fg) dengan › otomatis. Menerima atribut <a>.
PropTipeDefaultKeterangan
asChildbooleanfalseRender sebagai anak tunggal, mis. <Link> Next.js, dengan gaya tautan kartu.
hrefstring—Tujuan tautan (bila tidak asChild).

Props · KpiCard

Dirender sebagai <div role="group"> berlabel `label`. Juga menerima atribut <div>.
PropTipeDefaultKeterangan
labelReactNode—Nama angka, Footnote/Medium fg/muted: "Slip draf".
valueReactNode—Angka utama, Display/Page title: 5.
noteReactNode—Populasi/pembanding: "dari 6 orang di PE".
progress{ value: number; max: number; tone?: ChartTone }—Cakupan → ProgressRing 40 px di kanan (bawaan accent). Dekoratif bagi pembaca layar karena angka sudah di teks.
loadingbooleanfalseSkeleton angka + aria-busy.

Sumber

Kode komponen ada di packages/react/src/components/chart-card. Gaya hanya memakai kelas token Circca HIG — tidak ada warna, spasi, atau radius mentah.

Esc
↑↓ pilih↵ buka12 hasil