sellmate-design-system-react 2.2.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. package/AGENTS.md +661 -0
  2. package/README.md +85 -0
  3. package/dist/components/SActionModal/README.md +41 -0
  4. package/dist/components/SBadge/README.md +25 -0
  5. package/dist/components/SBarcodeInput/README.md +64 -0
  6. package/dist/components/SButton/README.md +49 -0
  7. package/dist/components/SCalendar/README.md +42 -0
  8. package/dist/components/SCallout/README.md +29 -0
  9. package/dist/components/SCallout/SCallout.cjs +76 -1
  10. package/dist/components/SCallout/SCallout.cjs.map +1 -1
  11. package/dist/components/SCallout/SCallout.d.ts +6 -2
  12. package/dist/components/SCallout/SCallout.js +76 -1
  13. package/dist/components/SCallout/SCallout.js.map +1 -1
  14. package/dist/components/SCard/README.md +12 -0
  15. package/dist/components/SCheckbox/README.md +44 -0
  16. package/dist/components/SChip/README.md +57 -0
  17. package/dist/components/SChipInput/README.md +77 -0
  18. package/dist/components/SCircleProgress/README.md +35 -0
  19. package/dist/components/SConfirmModal/README.md +61 -0
  20. package/dist/components/SDatePicker/README.md +62 -0
  21. package/dist/components/SDateRangePicker/README.md +64 -0
  22. package/dist/components/SDivider/README.md +25 -0
  23. package/dist/components/SDraggableItem/README.md +40 -0
  24. package/dist/components/SDraggableItem/SDraggableItem.cjs +3079 -0
  25. package/dist/components/SDraggableItem/SDraggableItem.cjs.map +1 -0
  26. package/dist/components/SDraggableItem/SDraggableItem.d.ts +33 -0
  27. package/dist/components/SDraggableItem/SDraggableItem.js +3077 -0
  28. package/dist/components/SDraggableItem/SDraggableItem.js.map +1 -0
  29. package/dist/components/SDraggableItem/index.d.ts +1 -0
  30. package/dist/components/SDropdownButton/README.md +50 -0
  31. package/dist/components/SExpansionItem/README.md +40 -0
  32. package/dist/components/SExpansionItem/SExpansionItem.cjs +6 -15
  33. package/dist/components/SExpansionItem/SExpansionItem.cjs.map +1 -1
  34. package/dist/components/SExpansionItem/SExpansionItem.js +6 -15
  35. package/dist/components/SExpansionItem/SExpansionItem.js.map +1 -1
  36. package/dist/components/SField/README.md +91 -0
  37. package/dist/components/SFilePicker/README.md +72 -0
  38. package/dist/components/SForm/README.md +31 -0
  39. package/dist/components/SGhostButton/README.md +76 -0
  40. package/dist/components/SGnb/README.md +56 -0
  41. package/dist/components/SGuide/README.md +34 -0
  42. package/dist/components/SIcon/README.md +91 -0
  43. package/dist/components/SInput/README.md +66 -0
  44. package/dist/components/SKeyValueTable/README.md +59 -0
  45. package/dist/components/SLayout/README.md +42 -0
  46. package/dist/components/SLinearProgress/README.md +17 -0
  47. package/dist/components/SList/README.md +14 -0
  48. package/dist/components/SList/SList.cjs +38 -0
  49. package/dist/components/SList/SList.cjs.map +1 -0
  50. package/dist/components/SList/SList.d.ts +10 -0
  51. package/dist/components/SList/SList.js +36 -0
  52. package/dist/components/SList/SList.js.map +1 -0
  53. package/dist/components/SList/index.d.ts +1 -0
  54. package/dist/components/SListItem/README.md +19 -0
  55. package/dist/components/SListItem/SListItem.cjs +83 -0
  56. package/dist/components/SListItem/SListItem.cjs.map +1 -0
  57. package/dist/components/SListItem/SListItem.d.ts +26 -0
  58. package/dist/components/SListItem/SListItem.js +81 -0
  59. package/dist/components/SListItem/SListItem.js.map +1 -0
  60. package/dist/components/SListItem/index.d.ts +1 -0
  61. package/dist/components/SLoadingContainer/README.md +29 -0
  62. package/dist/components/SLoadingModal/README.md +52 -0
  63. package/dist/components/SModal/README.md +192 -0
  64. package/dist/components/SModalContainer/README.md +49 -0
  65. package/dist/components/SNumberInput/README.md +74 -0
  66. package/dist/components/SPage/README.md +25 -0
  67. package/dist/components/SPagination/README.md +40 -0
  68. package/dist/components/SPopover/README.md +54 -0
  69. package/dist/components/SPopup/README.md +38 -0
  70. package/dist/components/SPortal/README.md +51 -0
  71. package/dist/components/SRadio/README.md +57 -0
  72. package/dist/components/SRadioButton/README.md +24 -0
  73. package/dist/components/SScrollArea/README.md +16 -0
  74. package/dist/components/SSectionHeaderCard/README.md +51 -0
  75. package/dist/components/SSectionHeaderCard/SSectionHeaderCard.cjs +3414 -0
  76. package/dist/components/SSectionHeaderCard/SSectionHeaderCard.cjs.map +1 -0
  77. package/dist/components/SSectionHeaderCard/SSectionHeaderCard.d.ts +32 -0
  78. package/dist/components/SSectionHeaderCard/SSectionHeaderCard.js +3392 -0
  79. package/dist/components/SSectionHeaderCard/SSectionHeaderCard.js.map +1 -0
  80. package/dist/components/SSectionHeaderCard/index.d.ts +1 -0
  81. package/dist/components/SSelect/README.md +79 -0
  82. package/dist/components/SStepper/README.md +30 -0
  83. package/dist/components/SSwitch/README.md +24 -0
  84. package/dist/components/STable/README.md +82 -0
  85. package/dist/components/STableBar/README.md +28 -0
  86. package/dist/components/STabs/README.md +37 -0
  87. package/dist/components/STag/README.md +44 -0
  88. package/dist/components/STextLink/README.md +48 -0
  89. package/dist/components/STextarea/README.md +60 -0
  90. package/dist/components/STimePicker/README.md +65 -0
  91. package/dist/components/STimeRangePicker/README.md +63 -0
  92. package/dist/components/SToast/README.md +70 -0
  93. package/dist/components/SToggle/README.md +22 -0
  94. package/dist/components/STooltip/README.md +57 -0
  95. package/dist/index.cjs +815 -419
  96. package/dist/index.cjs.map +1 -1
  97. package/dist/index.d.ts +4 -0
  98. package/dist/index.js +815 -423
  99. package/dist/index.js.map +1 -1
  100. package/dist/llms.txt +3496 -0
  101. package/dist/styles.css +545 -19
  102. package/dist/theme.css +22 -0
  103. package/eslint/index.mjs +66 -0
  104. package/eslint/lib/class-names.mjs +119 -0
  105. package/eslint/lib/table-column.mjs +53 -0
  106. package/eslint/rules/no-arbitrary-class.mjs +91 -0
  107. package/eslint/rules/no-off-scale-spacing.mjs +67 -0
  108. package/eslint/rules/no-raw-html-control.mjs +117 -0
  109. package/eslint/rules/prefer-typo-preset.mjs +73 -0
  110. package/eslint/rules/require-locale-number.mjs +78 -0
  111. package/eslint/rules/table-numeric-align.mjs +93 -0
  112. package/eslint/scale.gen.mjs +16 -0
  113. package/package.json +9 -4
@@ -0,0 +1,12 @@
1
+ # SCard
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SCard
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `bordered?` | `boolean` | `false` | 테두리 표시 여부 |
12
+
@@ -0,0 +1,44 @@
1
+ # SCheckbox
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SCheckbox
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `value?` | `SCheckboxValue` | `false` | 선택 상태. boolean(단일) / 배열(그룹) / null(indeterminate) |
12
+ | `val?` | `unknown` | — | 배열(그룹) 모드에서 이 체크박스의 값 |
13
+ | `label?` | `string` | `''` | 라벨 |
14
+ | `disabled?` | `boolean` | `false` | 비활성 |
15
+ | `inverse?` | `boolean` | `false` | 어두운 배경용 흰색 스타일 |
16
+ | `className?` | `string` | — | |
17
+ | `style?` | `CSSProperties` | — | |
18
+
19
+ #### Events
20
+
21
+ | Event | Type | Description |
22
+ |-------|------|-------------|
23
+ | `onValueChange` | `(value: boolean \| unknown[]) => void` | 값 변경 (sdUpdate) |
24
+
25
+ ## Dependencies
26
+
27
+ ### Used by
28
+
29
+ - [SKeyValueTable](../SKeyValueTable)
30
+ - [STable](../STable)
31
+
32
+ ### Depends on
33
+
34
+ - [SIcon](../SIcon)
35
+
36
+ ### Graph
37
+
38
+ ```mermaid
39
+ graph TD;
40
+ SCheckbox --> SIcon
41
+ SKeyValueTable --> SCheckbox
42
+ STable --> SCheckbox
43
+ style SCheckbox fill:#f9f,stroke:#333,stroke-width:4px
44
+ ```
@@ -0,0 +1,57 @@
1
+ # SChip
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SChip
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `name?` | `string` | — | 폼 연동용 name |
12
+ | `value?` | `string` | `''` | 칩 텍스트 값 |
13
+ | `error?` | `boolean` | — | 에러 상태 |
14
+ | `disabled?` | `boolean` | `false` | 비활성 |
15
+ | `editable?` | `boolean` | `false` | 인라인 편집 가능 (기본값 false) |
16
+ | `showRemove?` | `boolean` | `true` | 닫기 버튼 표시 |
17
+ | `placeholder?` | `string` | `''` | 편집 중 placeholder |
18
+ | `rules?` | `Rule[]` | — | 유효성 규칙 |
19
+ | `className?` | `string` | — | |
20
+ | `style?` | `CSSProperties` | — | |
21
+
22
+ #### Events
23
+
24
+ | Event | Type | Description |
25
+ |-------|------|-------------|
26
+ | `onValueChange` | `(value: string) => void` | 편집 완료 (sdUpdate) |
27
+ | `onRemove` | `() => void` | 삭제 (sdRemove) |
28
+ | `onFocus` | `() => void` | 편집 진입 (sdFocus) |
29
+ | `onBlur` | `() => void` | 편집 이탈 (sdBlur) |
30
+
31
+ #### Methods (ref)
32
+
33
+ | Method | Type | Description |
34
+ |--------|------|-------------|
35
+ | `focus` | `() => void` | 편집 input에 포커스합니다. |
36
+ | `getNativeElement` | `() => HTMLElement \| null` | 네이티브 편집 엘리먼트를 반환합니다. |
37
+
38
+ ## Dependencies
39
+
40
+ ### Used by
41
+
42
+ - [SChipInput](../SChipInput)
43
+ - [SFilePicker](../SFilePicker)
44
+
45
+ ### Depends on
46
+
47
+ - [SGhostButton](../SGhostButton)
48
+
49
+ ### Graph
50
+
51
+ ```mermaid
52
+ graph TD;
53
+ SChip --> SGhostButton
54
+ SChipInput --> SChip
55
+ SFilePicker --> SChip
56
+ style SChip fill:#f9f,stroke:#333,stroke-width:4px
57
+ ```
@@ -0,0 +1,77 @@
1
+ # SChipInput
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SChipInput
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `values?` | `string[]` | `[]` | 칩 값 목록 |
12
+ | `errors?` | `boolean[] \| ((value: string) => boolean)` | `[]` | 칩별 에러 (배열 또는 판별 함수) |
13
+ | `disabledChips?` | `boolean[] \| ((value: string) => boolean)` | `[]` | 칩별 비활성 (배열 또는 판별 함수) |
14
+ | `size?` | `SChipInputSize` | `'sm'` | |
15
+ | `disabled?` | `boolean` | `false` | |
16
+ | `placeholder?` | `string` | `'태그 입력 (Enter로 등록 / 콤마로 구분 / 띄어쓰기 불가)'` | |
17
+ | `name?` | `string` | — | |
18
+ | `rules?` | `Rule[]` | — | |
19
+ | `error?` | `boolean` | — | |
20
+ | `useReset?` | `boolean` | `false` | 입력 초기화 버튼 표시 |
21
+ | `maxCount?` | `number` | — | 최대 칩 개수 |
22
+ | `metaPlacement?` | `SChipInputMetaPlacement` | `'end'` | 최대 개수·초기화 meta 위치 |
23
+ | `duplicateLabel?` | `string` | — | 중복 에러 메시지 항목명 |
24
+ | `suggestions?` | `string[]` | `[]` | 자동완성 후보 |
25
+ | `loadingSuggestions?` | `boolean` | `false` | |
26
+ | `recommendedItems?` | `string[]` | `[]` | 추천 항목 (입력값 없을 때) |
27
+ | `loadingRecommendedItems?` | `boolean` | `false` | |
28
+ | `dropdownMinWidth?` | `number \| string` | `200` | 드롭다운 최소 너비 (숫자=px) |
29
+ | `label?` | `string` | — | |
30
+ | `labelWidth?` | `number \| string` | — | |
31
+ | `hint?` | `string` | — | |
32
+ | `errorMessage?` | `string` | — | |
33
+ | `width?` | `number \| string` | — | |
34
+ | `status?` | `SFieldStatus` | — | |
35
+ | `icon?` | `SIconName` | — | |
36
+ | `iconColor?` | `SColor` | — | |
37
+ | `labelTooltip?` | `string` | — | |
38
+ | `labelTooltipProps?` | `Partial<STooltipProps>` | — | |
39
+ | `className?` | `string` | — | |
40
+ | `style?` | `CSSProperties` | — | |
41
+
42
+ #### Events
43
+
44
+ | Event | Type | Description |
45
+ |-------|------|-------------|
46
+ | `onValueChange` | `(values: string[]) => void` | 값 변경 (sdUpdate) — 전체 배열 |
47
+ | `onInput` | `(value: string) => void` | 입력 중 문자열 변경 (sdInput) |
48
+ | `onFocus` | `() => void` | |
49
+ | `onBlur` | `() => void` | |
50
+
51
+ #### Methods (ref)
52
+
53
+ | Method | Type | Description |
54
+ |--------|------|-------------|
55
+ | `focus` | `() => void` | 입력 필드에 포커스를 이동합니다. |
56
+
57
+ ## Dependencies
58
+
59
+ ### Depends on
60
+
61
+ - [SChip](../SChip)
62
+ - [SField](../SField)
63
+ - [SIcon](../SIcon)
64
+ - [SPortal](../SPortal)
65
+ - [STextLink](../STextLink)
66
+
67
+ ### Graph
68
+
69
+ ```mermaid
70
+ graph TD;
71
+ SChipInput --> SChip
72
+ SChipInput --> SField
73
+ SChipInput --> SIcon
74
+ SChipInput --> SPortal
75
+ SChipInput --> STextLink
76
+ style SChipInput fill:#f9f,stroke:#333,stroke-width:4px
77
+ ```
@@ -0,0 +1,35 @@
1
+ # SCircleProgress
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SCircleProgress
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `value?` | `number` | `0` | 진행률 (0–100) |
12
+ | `type?` | `SCircleProgressType` | `'primary'` | 색상 테마 |
13
+ | `indeterminate?` | `boolean` | `false` | 불확정(스피너) 모드 — value 무시 |
14
+ | `label?` | `string` | — | 하단 레이블 |
15
+ | `innerValue?` | `boolean` | `false` | true면 퍼센트를 원 아래가 아닌 원 가운데에 표시 |
16
+ | `className?` | `string` | — | |
17
+ | `style?` | `CSSProperties` | — | |
18
+
19
+ ## Dependencies
20
+
21
+ ### Used by
22
+
23
+ - [SLoadingContainer](../SLoadingContainer)
24
+ - [SLoadingModal](../SLoadingModal)
25
+ - [STable](../STable)
26
+
27
+ ### Graph
28
+
29
+ ```mermaid
30
+ graph TD;
31
+ SLoadingContainer --> SCircleProgress
32
+ SLoadingModal --> SCircleProgress
33
+ STable --> SCircleProgress
34
+ style SCircleProgress fill:#f9f,stroke:#333,stroke-width:4px
35
+ ```
@@ -0,0 +1,61 @@
1
+ # SConfirmModal
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SConfirmModal
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `open?` | `boolean` | — | |
12
+ | `persistent?` | `boolean` | — | true면 백드롭·ESC로 안 닫히고 흔들림 (sd-modal-container persistent) |
13
+ | `type?` | `SConfirmModalType` | `'positive'` | 타입 (아이콘·메인버튼 색 결정) |
14
+ | `modalTitle?` | `string` | `''` | |
15
+ | `titleClass?` | `string` | — | 제목 엘리먼트에 추가할 클래스 (sd-confirm-modal titleClass) |
16
+ | `topMessage?` | `string[]` | `[]` | 콘텐츠 박스 상단 메시지 목록 (각 항목이 한 줄, HTML 문자열 허용 — innerHTML 렌더링) |
17
+ | `bottomMessage?` | `string[]` | `[]` | 콘텐츠 박스 하단 메시지 목록 (각 항목이 한 줄, HTML 문자열 허용 — innerHTML 렌더링) |
18
+ | `tagLabel?` | `string` | — | tag 슬롯 기본 태그 레이블 (tagSlot 미지정 시) |
19
+ | `tagShape?` | `STagShape` | `'square'` | 태그 프리셋 (shape/size/color) — sd-confirm-modal tagPreset 대응 |
20
+ | `tagSize?` | `STagSize` | `'sm'` | |
21
+ | `tagColor?` | `STagColor` | `'grey'` | |
22
+ | `slotLabel?` | `string` | — | 콘텐츠 박스에서 태그 오른쪽에 오는 텍스트 (optionSlot 미지정 시) |
23
+ | `tagSlot?` | `ReactNode` | — | 콘텐츠 박스 tag 위치 커스텀 콘텐츠 (미지정 시 tagLabel 기반 STag) |
24
+ | `optionSlot?` | `ReactNode` | — | 콘텐츠 박스에서 태그 오른쪽 커스텀 콘텐츠 (미지정 시 slotLabel 텍스트) |
25
+ | `mainButtonLabel?` | `string` | `'확인'` | 메인 버튼 |
26
+ | `mainButtonName?` | `ConfirmModalMainButton` | — | 확인 버튼 프리셋 (없으면 type에 따라 자동 결정) |
27
+ | `subButtonLabel?` | `string` | — | 서브(취소) 버튼 |
28
+
29
+ #### Events
30
+
31
+ | Event | Type | Description |
32
+ |-------|------|-------------|
33
+ | `onOpenChange` | `(open: boolean) => void` | |
34
+ | `onOk` | `() => void` | 확인 버튼 클릭 (sdOk) |
35
+ | `onCancel` | `() => void` | |
36
+ | `onClose` | `() => void` | 닫기(X) 버튼 클릭 (sdClose) |
37
+
38
+ ## Dependencies
39
+
40
+ ### Used by
41
+
42
+ - [SModal](../SModal)
43
+
44
+ ### Depends on
45
+
46
+ - [SButton](../SButton)
47
+ - [SIcon](../SIcon)
48
+ - [SModalContainer](../SModalContainer)
49
+ - [STag](../STag)
50
+
51
+ ### Graph
52
+
53
+ ```mermaid
54
+ graph TD;
55
+ SConfirmModal --> SButton
56
+ SConfirmModal --> SIcon
57
+ SConfirmModal --> SModalContainer
58
+ SConfirmModal --> STag
59
+ SModal --> SConfirmModal
60
+ style SConfirmModal fill:#f9f,stroke:#333,stroke-width:4px
61
+ ```
@@ -0,0 +1,62 @@
1
+ # SDatePicker
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SDatePicker
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `value?` | `string \| null` | — | 선택 날짜 (YYYY-MM-DD) |
12
+ | `size?` | `SDatePickerSize` | `'sm'` | |
13
+ | `placeholder?` | `string` | `'YYYY-MM-DD'` | |
14
+ | `selectable?` | `[string, string]` | — | 선택 가능 범위 [시작, 종료] |
15
+ | `disabled?` | `boolean` | `false` | |
16
+ | `width?` | `number \| string` | — | |
17
+ | `name?` | `string` | — | |
18
+ | `rules?` | `Rule[]` | — | |
19
+ | `status?` | `SFieldStatus` | — | |
20
+ | `label?` | `string` | — | |
21
+ | `labelWidth?` | `number \| string` | — | |
22
+ | `icon?` | `SIconName` | — | |
23
+ | `iconColor?` | `SColor` | — | |
24
+ | `labelTooltip?` | `string` | — | |
25
+ | `labelTooltipProps?` | `Partial<STooltipProps>` | — | |
26
+ | `addonLabel?` | `string` | — | |
27
+ | `addonAlign?` | `SFieldAddonAlign` | — | |
28
+ | `hint?` | `string` | — | |
29
+ | `error?` | `boolean` | — | |
30
+ | `errorMessage?` | `string` | — | |
31
+ | `className?` | `string` | — | |
32
+ | `style?` | `CSSProperties` | — | |
33
+
34
+ #### Events
35
+
36
+ | Event | Type | Description |
37
+ |-------|------|-------------|
38
+ | `onValueChange` | `(date: string) => void` | 선택 변경 (sdUpdate) |
39
+ | `onViewChange` | `(view: { year: number; month: number }) => void` | 보이는 연·월 변경 (sdViewChange) |
40
+
41
+ ## Dependencies
42
+
43
+ ### Used by
44
+
45
+ - [SKeyValueTable](../SKeyValueTable)
46
+
47
+ ### Depends on
48
+
49
+ - [SCalendar](../SCalendar)
50
+ - [SField](../SField)
51
+ - [SIcon](../SIcon)
52
+
53
+ ### Graph
54
+
55
+ ```mermaid
56
+ graph TD;
57
+ SDatePicker --> SCalendar
58
+ SDatePicker --> SField
59
+ SDatePicker --> SIcon
60
+ SKeyValueTable --> SDatePicker
61
+ style SDatePicker fill:#f9f,stroke:#333,stroke-width:4px
62
+ ```
@@ -0,0 +1,64 @@
1
+ # SDateRangePicker
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SDateRangePicker
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `value?` | `SDateRangeValue` | — | |
12
+ | `size?` | `SDateRangePickerSize` | `'sm'` | |
13
+ | `placeholder?` | `string` | `'YYYY-MM-DD ~ YYYY-MM-DD'` | |
14
+ | `selectable?` | `[string, string]` | — | |
15
+ | `maxRange?` | `number` | — | 최대 선택 일수 |
16
+ | `useTimePicker?` | `boolean` | `false` | 시간(시:분) 선택 푸터 사용 여부. true이면 value는 "YYYY-MM-DD HH:mm" 형식이 되고, 캘린더 하단에 시작·종료 시간 입력이 표시된다. |
17
+ | `disabled?` | `boolean` | `false` | |
18
+ | `width?` | `number \| string` | — | |
19
+ | `name?` | `string` | — | |
20
+ | `rules?` | `Rule[]` | — | |
21
+ | `status?` | `SFieldStatus` | — | |
22
+ | `label?` | `string` | — | |
23
+ | `labelWidth?` | `number \| string` | — | |
24
+ | `icon?` | `SIconName` | — | |
25
+ | `iconColor?` | `SColor` | — | |
26
+ | `labelTooltip?` | `string` | — | |
27
+ | `labelTooltipProps?` | `Partial<STooltipProps>` | — | |
28
+ | `addonLabel?` | `string` | — | |
29
+ | `addonAlign?` | `SFieldAddonAlign` | — | |
30
+ | `hint?` | `string` | — | |
31
+ | `error?` | `boolean` | — | |
32
+ | `errorMessage?` | `string` | — | |
33
+ | `className?` | `string` | — | |
34
+ | `style?` | `CSSProperties` | — | |
35
+
36
+ #### Events
37
+
38
+ | Event | Type | Description |
39
+ |-------|------|-------------|
40
+ | `onValueChange` | `(range: SDateRangeValue) => void` | 선택 변경 (sdUpdate) — [start, end] |
41
+ | `onViewChange` | `(view: { year: number; month: number }) => void` | 보이는 연·월 변경 (sdViewChange) |
42
+
43
+ ## Dependencies
44
+
45
+ ### Used by
46
+
47
+ - [SKeyValueTable](../SKeyValueTable)
48
+
49
+ ### Depends on
50
+
51
+ - [SField](../SField)
52
+ - [SGhostButton](../SGhostButton)
53
+ - [SIcon](../SIcon)
54
+
55
+ ### Graph
56
+
57
+ ```mermaid
58
+ graph TD;
59
+ SDateRangePicker --> SField
60
+ SDateRangePicker --> SGhostButton
61
+ SDateRangePicker --> SIcon
62
+ SKeyValueTable --> SDateRangePicker
63
+ style SDateRangePicker fill:#f9f,stroke:#333,stroke-width:4px
64
+ ```
@@ -0,0 +1,25 @@
1
+ # SDivider
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SDivider
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `vertical?` | `boolean` | `false` | true면 수직 분할선, false면 수평 분할선 |
12
+
13
+ ## Dependencies
14
+
15
+ ### Used by
16
+
17
+ - [STableBar](../STableBar)
18
+
19
+ ### Graph
20
+
21
+ ```mermaid
22
+ graph TD;
23
+ STableBar --> SDivider
24
+ style SDivider fill:#f9f,stroke:#333,stroke-width:4px
25
+ ```
@@ -0,0 +1,40 @@
1
+ # SDraggableItem
2
+
3
+ > 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
4
+
5
+ ### SDraggableItem
6
+
7
+ #### Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `title` | `SDraggableItemSlot` | — | 드래그 아이템 제목 |
12
+ | `trailing?` | `SDraggableItemSlot` | — | 타이틀 뒤에 표시할 태그/콘텐츠 |
13
+ | `accentStripe?` | `boolean` | `false` | 아이템 왼쪽 accent stripe 표시 여부 |
14
+ | `bordered?` | `boolean` | `false` | 외곽 테두리 사용 여부 |
15
+ | `selected?` | `boolean` | `false` | 선택 상태 여부 |
16
+ | `dense?` | `boolean` | `false` | 조밀한 높이 사용 여부 |
17
+ | `disabled?` | `boolean` | `false` | 비활성 상태 여부 |
18
+ | `dragOverlay?` | `boolean` | `true` | 드래그 시 마우스를 따라가는 overlay 표시 여부 |
19
+ | `dragOverlayOpacity?` | `number` | `0.75` | 드래그 overlay 투명도 |
20
+ | `dragHandleProps?` | `HTMLAttributes<HTMLDivElement>` | — | 드래그 핸들에 전달할 속성 |
21
+
22
+ #### Events
23
+
24
+ | Event | Type | Description |
25
+ |-------|------|-------------|
26
+ | `onDragHandleMouseDown` | `(event: MouseEvent<HTMLDivElement>) => void` | 드래그 핸들 mouse down 이벤트 |
27
+
28
+ ## Dependencies
29
+
30
+ ### Depends on
31
+
32
+ - [SIcon](../SIcon)
33
+
34
+ ### Graph
35
+
36
+ ```mermaid
37
+ graph TD;
38
+ SDraggableItem --> SIcon
39
+ style SDraggableItem fill:#f9f,stroke:#333,stroke-width:4px
40
+ ```