sellmate-design-system-react 9.0.0-beta.92 → 9.0.0-beta.94
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.
- package/AGENTS.md +21 -2
- package/dist/components/SBarChart/README.md +1 -0
- package/dist/components/SBarChart/SBarChart.d.ts +7 -0
- package/dist/components/SBarcodeInput/README.md +2 -0
- package/dist/components/SButton/button.config.d.ts +2 -1
- package/dist/components/SChatAttachedFile/chatAttachedFile.config.d.ts +2 -2
- package/dist/components/SChatFile/chatFile.config.d.ts +2 -2
- package/dist/components/SCheckbox/README.md +2 -0
- package/dist/components/SChipFilter/README.md +2 -0
- package/dist/components/SGhostButton/README.md +4 -0
- package/dist/components/SGnb/gnb.config.d.ts +6 -0
- package/dist/components/SIcon/README.md +5 -1
- package/dist/components/SIcon/SIcon.d.ts +1 -1
- package/dist/components/SInput/README.md +2 -0
- package/dist/components/SLauncherListBox/launcherListBox.config.d.ts +2 -7
- package/dist/components/SLineChart/README.md +1 -0
- package/dist/components/SLineChart/SLineChart.d.ts +5 -0
- package/dist/components/SLineChart/lineChart.config.d.ts +1 -2
- package/dist/components/SLoadingModal/README.md +2 -2
- package/dist/components/SMeatballButton/README.md +2 -0
- package/dist/components/SNumberInput/README.md +2 -0
- package/dist/components/SRadioCard/README.md +3 -0
- package/dist/components/SRadioCard/SRadioCard.d.ts +7 -2
- package/dist/components/SRadioCard/SRadioCardGroup.d.ts +3 -1
- package/dist/components/SSelect/README.md +9 -4
- package/dist/components/SSelect/SSelect.d.ts +18 -4
- package/dist/components/SSelect/select.config.d.ts +34 -4
- package/dist/components/SStepper/stepper.config.d.ts +9 -3
- package/dist/components/STable/README.md +1 -1
- package/dist/components/STable/STable.d.ts +3 -0
- package/dist/components/STabs/tabs.config.d.ts +3 -8
- package/dist/components/STag/README.md +8 -0
- package/dist/components/STag/tag.config.d.ts +10 -9
- package/dist/components/STimePicker/timepicker.config.d.ts +3 -0
- package/dist/components/STree/README.md +2 -0
- package/dist/components/STreeTable/STreeTable.examples.d.ts +7 -0
- package/dist/index.cjs +1885 -1273
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1885 -1273
- package/dist/index.js.map +1 -1
- package/dist/lib/chart/cartesian.d.ts +1 -3
- package/dist/lib/chart/category-labels.d.ts +37 -0
- package/dist/lib/chart/use-element-size.d.ts +4 -1
- package/dist/lib/list-box-item.d.ts +16 -0
- package/dist/lib/tree-row.d.ts +92 -0
- package/dist/llms-full.txt +52 -10
- package/dist/llms.txt +21 -2
- package/dist/styles.css +237 -88
- package/package.json +1 -1
|
@@ -9,10 +9,14 @@ export type SStepperItem = {
|
|
|
9
9
|
};
|
|
10
10
|
export declare const STEPPER_SIZE_CONFIG: Record<SStepperSize, {
|
|
11
11
|
sequenceSize: string;
|
|
12
|
+
/** 루트에 거는 글자 크기 — 시퀀스 배지와 typoActive 가 없는 진행 중 타이틀이 상속한다 */
|
|
12
13
|
fontSize: string;
|
|
13
14
|
lineHeight: string;
|
|
15
|
+
/** 기본·완료 타이틀 타이포 (stepper.<size>.typography.default) */
|
|
16
|
+
typoDefault: string;
|
|
17
|
+
/** 진행 중 타이틀 타이포 (stepper.<size>.typography.active). null 이면 fontWeightActive 로 그린다 */
|
|
18
|
+
typoActive: string | null;
|
|
14
19
|
fontWeightActive: number;
|
|
15
|
-
fontWeightDefault: number;
|
|
16
20
|
}>;
|
|
17
21
|
export declare const STEPPER_LAYOUT: {
|
|
18
22
|
containerGap: string;
|
|
@@ -52,14 +56,15 @@ export declare const STEPPER_HORIZONTAL_COMPLETED_COLORS: {
|
|
|
52
56
|
text: string;
|
|
53
57
|
};
|
|
54
58
|
export declare const STEPPER_VERTICAL_LAYOUT: {
|
|
59
|
+
/** 세로형 폭. 대응 토큰이 없어 디자인 값을 그대로 쓴다(stepper.vertical 에 width 가 없음). */
|
|
55
60
|
width: string;
|
|
56
61
|
itemGap: string;
|
|
57
62
|
itemPaddingX: string;
|
|
58
63
|
itemPaddingY: string;
|
|
59
64
|
titlePaddingTop: string;
|
|
60
65
|
titlePaddingBottom: string;
|
|
61
|
-
|
|
62
|
-
|
|
66
|
+
/** 구간 제목 타이포 — stepper.vertical.title.typography (= heading.xxs) */
|
|
67
|
+
titleTypo: string;
|
|
63
68
|
accentStripeWidth: string;
|
|
64
69
|
accentStripeColor: string;
|
|
65
70
|
};
|
|
@@ -69,6 +74,7 @@ export declare const STEPPER_VERTICAL_COLORS: {
|
|
|
69
74
|
hover: string;
|
|
70
75
|
selected: string;
|
|
71
76
|
};
|
|
77
|
+
titleBg: string;
|
|
72
78
|
titleText: string;
|
|
73
79
|
textDefault: string;
|
|
74
80
|
textCompleted: string;
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
| `getIsAllChecked` | `(rows: TRow[]) => boolean \| null` | 주어진 행들의 전체 선택 상태 (true/false/null=indeterminate) |
|
|
68
68
|
| `getPaginationInfo` | `<union 2종>` | 내부 페이지네이션 정보 (internalPagination 아니면 null) |
|
|
69
69
|
| `getStickyStyle` | `(colIdx: number) => CSSProperties` | 컬럼 sticky 스타일 (CSS 변수 + 고정폭) |
|
|
70
|
-
| `getScrollElement` | `() => HTMLDivElement \| null` | 본문의 세로 스크롤 컨테이너. 본문이 슬롯으로 대체됐거나 아직 안 그려졌으면 `null`. 스크롤 위치를 읽고 되돌리거나, 표 안에서 스크롤 여지를 재야 할 때 쓴다 — **DOM 을 뒤져 컨테이너를 찾지 않는다.** 내부 구조는 예고 없이 바뀐다. ⚠️ `virtualScroll` 에서 **위치를 픽셀로 저장했다 되돌리는 것은 미덥지 않다.** 다시 그릴 때 아직 안 그려진 행은 추정 높이로 잡히므로, 실측이 쌓이기 전의 같은 `scrollTop` 이 다른 행을 가리킨다. 그 경우엔 위치가 아니라 **보고 있던 행**을 기억해 두는 편이 맞다. |
|
|
70
|
+
| `getScrollElement` | `() => HTMLDivElement \| null` | 본문의 세로 스크롤 컨테이너. 본문이 슬롯으로 대체됐거나 아직 안 그려졌으면 `null`. 스크롤 위치를 읽고 되돌리거나, 표 안에서 스크롤 여지를 재야 할 때 쓴다 — **DOM 을 뒤져 컨테이너를 찾지 않는다.** 내부 구조는 예고 없이 바뀐다. 헤더도 이 안에 위로 붙어(sticky) 있다 — `clientHeight` 에는 헤더 높이가 들어 있다. `scrollTop` 은 본문 기준이라 `scrollTop` 이 y 이면 본문의 y 자리가 헤더 바로 아래에 온다. ⚠️ `virtualScroll` 에서 **위치를 픽셀로 저장했다 되돌리는 것은 미덥지 않다.** 다시 그릴 때 아직 안 그려진 행은 추정 높이로 잡히므로, 실측이 쌓이기 전의 같은 `scrollTop` 이 다른 행을 가리킨다. 그 경우엔 위치가 아니라 **보고 있던 행**을 기억해 두는 편이 맞다. |
|
|
71
71
|
| `getFirstVisibleRow` | `() => number` | 지금 본문 맨 위에 걸린 행의 인덱스 (`rows` 기준). 행이 없으면 `0`. **스크롤 위치를 저장할 때는 픽셀이 아니라 이 값을 저장한다** — `virtualScroll` 에서 픽셀은 좌표계가 실측으로 움직이는 값이라, 되돌릴 때 다른 행을 가리킨다. |
|
|
72
72
|
| `scrollToRow` | `(index: number) => void` | 그 행이 본문 맨 위에 오도록 스크롤한다 (`rows` 기준 인덱스, 범위를 벗어나면 잘린다). `virtualScroll` 에서는 **실측이 정착할 때까지 그 행을 계속 다시 겨냥한다** — 옮기는 시점의 좌표는 아직 추정치라 한 번만 옮기면 몇 행씩 밀린다. 사용자가 직접 스크롤하면 겨냥을 놓는다. 페이지네이션을 쓰는 표에서는 **지금 페이지에 그려진 행만** 닿는다 — 다른 페이지의 행이라면 페이지를 먼저 옮긴다. |
|
|
73
73
|
| `setRowCount` | `(count: number) => void` | 가상 스크롤 총 행 수 설정 |
|
|
@@ -208,6 +208,9 @@ export interface STableHandle<TRow extends SRow = SRow> {
|
|
|
208
208
|
* 스크롤 위치를 읽고 되돌리거나, 표 안에서 스크롤 여지를 재야 할 때 쓴다 —
|
|
209
209
|
* **DOM 을 뒤져 컨테이너를 찾지 않는다.** 내부 구조는 예고 없이 바뀐다.
|
|
210
210
|
*
|
|
211
|
+
* 헤더도 이 안에 위로 붙어(sticky) 있다 — `clientHeight` 에는 헤더 높이가 들어 있다.
|
|
212
|
+
* `scrollTop` 은 본문 기준이라 `scrollTop` 이 y 이면 본문의 y 자리가 헤더 바로 아래에 온다.
|
|
213
|
+
*
|
|
211
214
|
* ⚠️ `virtualScroll` 에서 **위치를 픽셀로 저장했다 되돌리는 것은 미덥지 않다.** 다시 그릴 때
|
|
212
215
|
* 아직 안 그려진 행은 추정 높이로 잡히므로, 실측이 쌓이기 전의 같은 `scrollTop` 이 다른 행을
|
|
213
216
|
* 가리킨다. 그 경우엔 위치가 아니라 **보고 있던 행**을 기억해 두는 편이 맞다.
|
|
@@ -3,15 +3,10 @@ export interface STabOption {
|
|
|
3
3
|
value: string;
|
|
4
4
|
badge?: string | number;
|
|
5
5
|
}
|
|
6
|
-
/** main(분절형) 레이아웃 */
|
|
6
|
+
/** main(분절형) 레이아웃 (토큰) */
|
|
7
7
|
export declare const TAB_MAIN_SIZE: {
|
|
8
|
-
height:
|
|
9
|
-
paddingX:
|
|
10
|
-
};
|
|
11
|
-
/** 탭 타이포 (main/sub 공통, token: typography.navigation.sm) */
|
|
12
|
-
export declare const TAB_TYPOGRAPHY: {
|
|
13
|
-
fontSize: number;
|
|
14
|
-
lineHeight: number;
|
|
8
|
+
height: string;
|
|
9
|
+
paddingX: string;
|
|
15
10
|
};
|
|
16
11
|
export declare const TAB_MAIN_COLORS: {
|
|
17
12
|
selected: {
|
|
@@ -69,11 +69,15 @@ export const TAG_COLORS = [
|
|
|
69
69
|
|
|
70
70
|
### Used by
|
|
71
71
|
|
|
72
|
+
- [SBarcodeInput](../SBarcodeInput)
|
|
72
73
|
- [SChipFilter](../SChipFilter)
|
|
73
74
|
- [SConfirmModal](../SConfirmModal)
|
|
74
75
|
- [SGhostButton](../SGhostButton)
|
|
75
76
|
- [SGnb](../SGnb)
|
|
77
|
+
- [SGnbSystem](../SGnbSystem)
|
|
78
|
+
- [SInput](../SInput)
|
|
76
79
|
- [SLauncherListBox](../SLauncherListBox)
|
|
80
|
+
- [SNumberInput](../SNumberInput)
|
|
77
81
|
- [SRadioCard](../SRadioCard)
|
|
78
82
|
- [SSystemActionButton](../SSystemActionButton)
|
|
79
83
|
- [STabs](../STabs)
|
|
@@ -88,11 +92,15 @@ export const TAG_COLORS = [
|
|
|
88
92
|
```mermaid
|
|
89
93
|
graph TD;
|
|
90
94
|
STag --> SIcon
|
|
95
|
+
SBarcodeInput --> STag
|
|
91
96
|
SChipFilter --> STag
|
|
92
97
|
SConfirmModal --> STag
|
|
93
98
|
SGhostButton --> STag
|
|
94
99
|
SGnb --> STag
|
|
100
|
+
SGnbSystem --> STag
|
|
101
|
+
SInput --> STag
|
|
95
102
|
SLauncherListBox --> STag
|
|
103
|
+
SNumberInput --> STag
|
|
96
104
|
SRadioCard --> STag
|
|
97
105
|
SSystemActionButton --> STag
|
|
98
106
|
STabs --> STag
|
|
@@ -4,14 +4,15 @@ export declare const TAG_COLORS: readonly ["grey", "red", "orange", "yellow", "g
|
|
|
4
4
|
export type STagShape = (typeof TAG_SHAPES)[number];
|
|
5
5
|
export type STagSize = (typeof TAG_SIZES)[number];
|
|
6
6
|
export type STagColor = (typeof TAG_COLORS)[number];
|
|
7
|
-
/**
|
|
7
|
+
/**
|
|
8
|
+
* 사이즈별 레이아웃/타이포 — `--cmp-tag-<size>-*` 토큰.
|
|
9
|
+
* typography 는 `tag.<size>.typography` 가 가리키는 typo 클래스.
|
|
10
|
+
*/
|
|
8
11
|
export declare const TAG_SIZE_CONFIG: Record<STagSize, {
|
|
9
|
-
height:
|
|
10
|
-
paddingX:
|
|
11
|
-
gap:
|
|
12
|
-
radius:
|
|
13
|
-
iconSize:
|
|
14
|
-
|
|
15
|
-
fontWeight: number;
|
|
16
|
-
lineHeight: number;
|
|
12
|
+
height: string;
|
|
13
|
+
paddingX: string;
|
|
14
|
+
gap: string;
|
|
15
|
+
radius: string;
|
|
16
|
+
iconSize: string;
|
|
17
|
+
typography: string;
|
|
17
18
|
}>;
|
|
@@ -9,6 +9,9 @@ export declare const TIMEPICKER_SIZE_CONFIG: Record<STimePickerSize, {
|
|
|
9
9
|
gap: string;
|
|
10
10
|
icon: string;
|
|
11
11
|
radius: string;
|
|
12
|
+
/** 입력값 타이포 클래스 (`timepicker.<size>.typography`). 렌더는 이 클래스로 한다 */
|
|
13
|
+
typography: string;
|
|
14
|
+
/** 공개 export 라 남겨 둔 같은 값 — 렌더에는 쓰지 않는다 */
|
|
12
15
|
fontSize: number;
|
|
13
16
|
lineHeight: number;
|
|
14
17
|
minWidth: number;
|
|
@@ -99,6 +99,7 @@ export interface STreeItemRenderState {
|
|
|
99
99
|
|
|
100
100
|
- [SCheckbox](../SCheckbox)
|
|
101
101
|
- [SGhostButton](../SGhostButton)
|
|
102
|
+
- [SIcon](../SIcon)
|
|
102
103
|
|
|
103
104
|
### Graph
|
|
104
105
|
|
|
@@ -106,5 +107,6 @@ export interface STreeItemRenderState {
|
|
|
106
107
|
graph TD;
|
|
107
108
|
STree --> SCheckbox
|
|
108
109
|
STree --> SGhostButton
|
|
110
|
+
STree --> SIcon
|
|
109
111
|
style STree fill:#f9f,stroke:#333,stroke-width:4px
|
|
110
112
|
```
|
|
@@ -20,6 +20,13 @@ export declare const treeTableColumns: STableColumn<TreeTableExampleRow>[];
|
|
|
20
20
|
export declare const treeTableWideColumns: STableColumn<TreeTableExampleRow>[];
|
|
21
21
|
/** 하위 행을 가진 모든 행의 키 — "모두 펼치기" 예시에 쓴다 */
|
|
22
22
|
export declare const treeTableParentKeys: string[];
|
|
23
|
+
/** 많은 행 예시에서 카테고리 하나가 차지하는 행 수 — 자기 + 상품 10 + 옵션 50 */
|
|
24
|
+
export declare const TREE_TABLE_ROWS_PER_CATEGORY = 61;
|
|
25
|
+
/** 많은 행 예시 — 카테고리 `categoryCount`개 × 상품 10개 × 옵션 5개 */
|
|
26
|
+
export declare const createManyTreeTableRows: (categoryCount: number) => TreeTableExampleRow[];
|
|
27
|
+
/** 가상 스크롤 예시 — 6,100행 */
|
|
28
|
+
export declare const treeTableManyRows: TreeTableExampleRow[];
|
|
29
|
+
export declare const treeTableManyParentKeys: string[];
|
|
23
30
|
/** 깊은 트리 예시 — 창고 > 구역 > 랙 > 단 > 칸, 5단계 로케이션 */
|
|
24
31
|
export interface TreeTableLocationRow {
|
|
25
32
|
id: string;
|