Lynx

Checkbox

사용자가 하나 이상의 옵션을 선택할 수 있게 해주는 컴포넌트입니다. 목록에서 여러 항목을 선택하거나 약관 동의와 같은 선택적 작업에 사용됩니다.

Engine ≥ 3.6
사용 가능 버전@seed-design/[email protected], @seed-design/[email protected]
Lynx 예제를 불러오는 중입니다.

Installation

npx @seed-design/cli@latest add ui:checkbox

Props

CheckboxGroup

Prop

Type

label?React.ReactNode
indicator?React.ReactNode
showRequiredIndicator?boolean | undefined
description?React.ReactNode
errorMessage?React.ReactNode

Checkbox

Prop

Type

label?React.ReactNode
onCheckedChange?((checked: boolean) => void) | undefined

Checkmark

Prop

Type

접근성 이름

Checkbox에서 직접 작성한 <text>를 쓰거나 Checkmark로 직접 구성할 때는 상태를 가진 Root에 accessibility-label을 지정하세요. 컴포넌트 children의 문자열과 숫자는 접근성 이름으로 사용되지만, raw <text>의 정적 텍스트는 이름을 만들 수 없습니다. indeterminate 상태는 mixed로 전달됩니다.

Examples

Sizes

Lynx 예제를 불러오는 중입니다.

Tones and Variants

Brand

Lynx 예제를 불러오는 중입니다.

Neutral

Lynx 예제를 불러오는 중입니다.

Indeterminate

Lynx 예제를 불러오는 중입니다.

Weights

Lynx 예제를 불러오는 중입니다.

Long Label

Lynx 예제를 불러오는 중입니다.

Disabled

Lynx 예제를 불러오는 중입니다.

Listening to Value Changes

onCheckedChange로 체크박스의 선택 상태 변경을 감지할 수 있습니다.

Lynx 예제를 불러오는 중입니다.

Use Cases

Using Checkmark

Checkmark는 상위 Checkbox.Root의 상태를 표시하는 체크 마크입니다. 커스텀 레이아웃이 필요하면 @seed-design/lynx-react의 Checkbox.Root 안에 Checkmark와 문구를 배치하고, Root에 accessibility-label을 지정하세요.

Lynx 예제를 불러오는 중입니다.

Fieldset Integration

CheckboxGroup을 사용하여 여러 체크박스를 그룹화하고 label, description, errorMessage 등의 Fieldset 관련 prop을 사용할 수 있습니다.

Lynx 예제를 불러오는 중입니다.

웹 버전과의 차이

  • 값 변경은 onChange가 아닌 onCheckedChange로 받습니다.
  • invalid 상태에서는 description을 제외하고 errorMessage만 화면과 접근성 트리에 표시합니다.
  • Registry가 Lynx용 check와 minus 아이콘을 넣습니다. raw <svg> 아이콘은 지원하지 않습니다.
  • 직접 만든 Scale Feedback에서 축소를 끄는 React의 --seed-checkmark-feedback-scale CSS 변수는 제공하지 않습니다.

Lynx 미지원 기능

현재 Lynx 플랫폼 제약으로 다음 기능이 지원되지 않습니다.

런타임 모델 차이로 제외

기능웹 대응설명
CheckboxHiddenInput<input type="checkbox">Lynx에 HTML form 제출 모델 없음
inputPropshidden input propsLynx snippet은 hidden input을 렌더링하지 않음
개별 Checkbox의 name / value / required / invalidform field propsLynx에 native form 제출 모델 없음
React Hook Form 예제HTML form과 hidden input 연동앱 상태와 checked / onCheckedChange를 직접 연결해야 함
focus / focusVisible키보드 포커스Lynx에 키보드 포커스 개념 없음
onChange (raw DOM event)React.ChangeEvent의미 없음. onCheckedChange로 대체
weight="default" / "stronger"deprecated 호환 매핑Lynx는 "regular" / "bold"만 노출

Last updated on

목차