Lompat ke isi
CirccaHIG

Komponen / Navigasi

NavList

Navigasi sidebar ala macOS untuk berpindah modul BizOps (Beranda, Sales & CRM, Order & pengadaan, Proyek, Finance). Gaya Symbol (ikon aksen) atau Tile (ubin berwarna ala System Settings) — sidebar produk memakai Tile.
React · BetaFigma · siapFigmaSumber

Import

tsx
import { NavList } from '@divistant/circca-react';

Props · NavList

Juga menerima atribut <nav>. Merender <nav aria-label> berisi <ul>.
PropTipeDefaultKeterangan
labelstring'Navigasi utama'Nama landmark navigasi (aria-label). Wajib unik bila ada lebih dari satu <nav> di halaman.
iconStyle'symbol' | 'tile''symbol'Properti Figma "Icon style". Tile = ubin 22 px berwarna berisi ikon fill — dipakai di sidebar produk.
childrenReactNode—NavList.Item dan NavList.Group.
classNamestring—Kelas tambahan (digabung aman dengan tailwind-merge).

Props · NavList.Group

Merender <li> berisi judul dan <ul aria-labelledby> sehingga pembaca layar menyebut nama grup.
PropTipeDefaultKeterangan
titleReactNode—Judul grup (properti Figma "Title"), mis. "Order & pengadaan".
tone'accent' | 'info' | 'success' | 'warning' | 'danger' | 'highlight' | 'neutral'—Warna ubin bawaan untuk item di grup (Icon style Tile).

Props · NavList.Item

Juga menerima atribut <a> (href, onClick, target, dll.).
PropTipeDefaultKeterangan
childrenReactNode—Label (properti Figma "Label"). Dengan asChild: satu elemen tautan berisi label.
iconVisual—Ikon depan (properti Figma "Leading icon"): `House` atau `<House />`. Pada Tile dirender versi fill.
currentbooleanfalseHalaman aktif (State Current) — aria-current="page" dan teks Nav/Current.
countnumber | string—Jumlah informatif (properti Figma "Counter" → "Count"), teks muted di kanan. Di atas countMax ditulis "99+".
countMaxnumber99Batas angka sebelum ditulis "<max>+".
badgeReactNode—Isi ujung kanan untuk jumlah yang menuntut tindakan, mis. <Badge count={3} />.
tone'accent' | 'info' | 'success' | 'warning' | 'danger' | 'highlight' | 'neutral'—Warna ubin (Tile). Bawaan mengikuti NavList.Group, lalu accent.
asChildbooleanfalseRender sebagai elemen anak (mis. Next <Link>) dengan gaya item.
subItemsReactNode—Item level 2 (properti Figma "Expandable" + Level 2). Item menjadi tombol buka/tutup dengan aria-expanded; href/asChild diabaikan.
defaultOpen / open / onOpenChangeboolean / boolean / (open) => void—Status buka sub-item (tidak terkendali / terkendali).

Sumber

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

Esc
↑↓ pilih↵ buka12 hasil