2.5d-ui
GitHub
Web Component

<iso-kpi>

지표 하나를 반투명 상자 안의 채움 높이로 보여 줍니다. data 대신 value, max, label, suffix 속성을 씁니다.

예시

예시 데이터. 상자 높이가 max, 안쪽 채움이 value입니다.

속성

속성형식의미
value숫자지표 값. 없으면 빈 상태, 유한한 수가 아니거나(Infinity 포함) 음수면 console.error 후 오류 상태
max숫자상자를 가득 채우는 값. 없으면 value와 같아 가득 찬다 — 단 value="0"이면 채움 높이 0. 넘는 값은 가득으로 잘린다
label문자열상자 아래 이름 라벨이자 접근 가능한 이름의 앞부분
suffix문자열값 바로 뒤에 붙는 단위. 띄어 쓰려면 앞에 공백을 넣는다(예: " GB")
unit숫자(px)--iso-u 값. 기본 24
height-units숫자상자 높이(블록 단위). 기본 5
renderercss | svg | auto그리는 방식. 기본 auto(그 밖의 값도 같음): 블록 200개 이하면 CSS 면, 넘으면 SVG. css·svg는 블록 수와 무관하게 고정. 렌더링 방식

이벤트

상자를 누르거나 Enter·Space를 누르면 iso-select가 버블링됩니다. detail은 { index: 0, item: { value, max } }입니다. 지표 상세 화면으로 넘어가는 데 쓰세요.

document.querySelector("iso-kpi").addEventListener("iso-select", (e) => {
  const { value, max } = e.detail.item;
  console.log(value, "/", max);
});

접근성