5d438bb70c
## Summary - **New Getting Started section** with quickstart guide and restructured navigation - **Halftone-style illustrations** for User Guide and Developer introduction cards using a Canvas 2D filter script - **Removed hero images** (`image:` frontmatter + `<Frame><img>` blocks) from all user-guide article pages - **Cleaned up translations** (13 languages): removed hero images and updated introduction cards to use halftone style - **Cleaned up twenty-ui pages**: removed outdated hero images from component docs - **Deleted orphaned images**: `table.png`, `kanban.png` - **Developer page**: fixed duplicate icon, switched to 3-column layout ## Test plan - [ ] Verify docs site builds without errors - [ ] Check User Guide introduction page renders halftone card images in both light and dark mode - [ ] Check Developer introduction page renders 3-column layout with distinct icons - [ ] Confirm article pages no longer show hero images at the top - [ ] Spot-check a few translated pages to ensure hero images are removed 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: github-actions <github-actions@twenty.com>
97 lines
3.9 KiB
Plaintext
97 lines
3.9 KiB
Plaintext
---
|
|
title: 라디오
|
|
---
|
|
|
|
<Frame>
|
|
<img src="/images/user-guide/create-workspace/workspace-cover.png" alt="헤더" />
|
|
</Frame>
|
|
|
|
사용자가 여러 옵션 중에서 하나만 선택할 수 있을 때 사용됩니다.
|
|
|
|
<Tabs>
|
|
<Tab title="사용법">
|
|
```jsx
|
|
import { Radio } from "twenty-ui/display";
|
|
|
|
export const MyComponent = () => {
|
|
|
|
const handleRadioChange = (event) => {
|
|
console.log("Radio button changed:", event.target.checked);
|
|
};
|
|
|
|
const handleCheckedChange = (checked) => {
|
|
console.log("Checked state changed:", checked);
|
|
};
|
|
|
|
|
|
return (
|
|
<Radio
|
|
checked={true}
|
|
value="Option 1"
|
|
onChange={handleRadioChange}
|
|
onCheckedChange={handleCheckedChange}
|
|
size="large"
|
|
disabled={false}
|
|
labelPosition="right"
|
|
/>
|
|
);
|
|
};
|
|
|
|
```
|
|
</Tab>
|
|
|
|
<Tab title="프로퍼티">
|
|
| 프로퍼티 | 유형 | 설명 |
|
|
| --------------- | -------------- | ----------------------------------------------------- |
|
|
| 스타일 | `React.CSS` 속성 | 컴포넌트의 추가 인라인 스타일 |
|
|
| 클래스 네임 | 문자열 | 추가 스타일링을 위한 선택적 CSS 클래스 |
|
|
| 체크됨 | 부울 | 라디오 버튼이 체크되었는지 여부를 나타냅니다 |
|
|
| 값 | 문자열 | 라디오 버튼과 연결된 라벨 또는 텍스트 |
|
|
| onChange | 함수 | 선택된 라디오 버튼이 변경될 때 호출되는 기능 |
|
|
| onCheckedChange | 함수 | 라디오 버튼의 `체크` 상태가 변경될 때 호출되는 기능 |
|
|
| 크기 | 문자열 | 라디오 버튼의 크기입니다. 옵션에는 `large`와 `small`이 포함됩니다 |
|
|
| 비활성화됨 | 부울 | `참`이면 라디오 버튼이 비활성화되어 클릭할 수 없습니다 |
|
|
| 라벨 위치 | 문자열 | 라벨 텍스트의 라디오 버튼에 대한 상대 위치입니다. 두 가지 옵션: `left`와 `right` |
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
## 라디오 그룹
|
|
|
|
관련된 라디오 버튼들을 그룹화합니다.
|
|
|
|
<Tabs>
|
|
<Tab title="사용법">
|
|
```jsx
|
|
import React, { useState } from "react";
|
|
import { Radio, RadioGroup } from "twenty-ui/display";
|
|
|
|
export const MyComponent = () => {
|
|
|
|
const [selectedValue, setSelectedValue] = useState("Option 1");
|
|
|
|
const handleChange = (event) => {
|
|
setSelectedValue(event.target.value);
|
|
};
|
|
|
|
return (
|
|
<RadioGroup value={selectedValue} onChange={handleChange}>
|
|
<Radio value="Option 1" />
|
|
<Radio value="Option 2" />
|
|
<Radio value="Option 3" />
|
|
</RadioGroup>
|
|
);
|
|
};
|
|
|
|
```
|
|
</Tab>
|
|
|
|
<Tab title="프로퍼티">
|
|
| 프로퍼티 | 유형 | 설명 |
|
|
| ------------- | ----------------- | -------------------------------------------------- |
|
|
| 값 | 문자열 | 현재 선택된 라디오 버튼의 값 |
|
|
| onChange | 기능 | 라디오 버튼이 변경될 때 트리거되는 콜백 기능 |
|
|
| onValueChange | 기능 | 그룹에서 선택된 값이 변경될 때 트리거되는 콜백 기능. |
|
|
| 자식 | `React.ReactNode` | Radio와 같은 React 컴포넌트를 자식으로 Radio Group에 전달할 수 있습니다 |
|
|
</Tab>
|
|
</Tabs>
|