sh-ui-cli 0.64.3 → 0.64.4
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/data/changelog/versions.json +12 -0
- package/data/summaries/flutter.json +15 -15
- package/package.json +1 -1
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$description": "sh-ui 릴리즈 노트 단일 소스. docs(React)와 showcase(Flutter)가 함께 읽는다. 새 릴리즈마다 맨 앞에 추가.",
|
|
4
4
|
"versions": [
|
|
5
|
+
{
|
|
6
|
+
"version": "0.64.4",
|
|
7
|
+
"date": "2026-05-08",
|
|
8
|
+
"title": "patch — Flutter summary 16건 정확성 audit",
|
|
9
|
+
"type": "patch",
|
|
10
|
+
"highlights": [
|
|
11
|
+
"**사실관계 정정 6건** — `card`/`dialog` 의 'header/body/footer named slot' (실제는 separate widget, Body 가 아니라 Content), `dialog` 의 'showDialog 로 호출' (실제는 `ShUiDialog.show<T>()` static, Flutter 빌트인 `showDialog` 와 다름), `checkbox` 의 'tristate' (실제 prop 은 `indeterminate`), `toast` 의 'ShUiToastOverlay' (실재 X — `ShUiToaster` + `ShUiToast.show()`), `tabs` 의 'ShUiTabsController' (실재 X — `ShUiTabs` + `ShUiTab` 데이터).",
|
|
12
|
+
"**exports 명시 보강 10건** — select/combobox 의 Multi 변종 (`ShUiMultiSelect<T>`, `ShUiMultiCombobox<T>`), date-picker 의 `ShUiDateRangePicker`, dropdown-menu 의 sealed `ShUiDropdownMenuEntry<T>` 자식들 (Item / CheckboxItem / RadioItem / Divider / Label), menubar 의 `ShUiMenubarMenu`, sidebar 의 Provider/Trigger/Header/Footer/Inset + `.of(ctx)` 패턴, app-shell 의 `ShUiAppShellGroup`/`Item`, header 의 `ShUiHeaderItem`, breadcrumb 의 `ShUiBreadcrumbItem`, popover 의 Title/Description, checkbox 의 `ShUiCheckboxGroup`. v0.64.1·v0.64.2 의 React audit 과 동일 톤으로 통일.",
|
|
13
|
+
"**MCP 양 플랫폼 정보 일관성 마무리** — React (v0.64.1·v0.64.2·v0.64.3) + Flutter (이번) 모두 source-of-truth 정확도 확보. AI 가 sh-ui MCP 로 컴포넌트 요청 시 환각으로 잘못된 위젯명·prop·호출 패턴을 만들어 내던 실패 모드 해소."
|
|
14
|
+
],
|
|
15
|
+
"url": "https://github.com/sanghyeonKim0201/sh-ui/releases/tag/v0.64.4"
|
|
16
|
+
},
|
|
5
17
|
{
|
|
6
18
|
"version": "0.64.3",
|
|
7
19
|
"date": "2026-05-08",
|
|
@@ -3,34 +3,34 @@
|
|
|
3
3
|
"summaries": {
|
|
4
4
|
"tokens": "ShUiTheme (ThemeExtension) — 색상/간격/타이포/반경/지속시간 토큰. Theme.of(ctx).extension<ShUiTheme>()로 접근.",
|
|
5
5
|
"button": "ShUiButton — variant(primary/secondary/ghost/danger/link) + size(sm/md/lg).",
|
|
6
|
-
"card": "ShUiCard —
|
|
6
|
+
"card": "ShUiCard — separate widgets: ShUiCard / ShUiCardHeader / ShUiCardTitle / ShUiCardDescription / ShUiCardContent / ShUiCardFooter (named slot 아님, Body 가 아니라 Content).",
|
|
7
7
|
"input": "ShUiInput — TextField 래퍼 + sh-ui 토큰 스타일.",
|
|
8
8
|
"textarea": "ShUiTextarea — 다중 행 입력.",
|
|
9
9
|
"label": "ShUiLabel — 폼 레이블.",
|
|
10
|
-
"checkbox": "ShUiCheckbox — tristate
|
|
10
|
+
"checkbox": "ShUiCheckbox / ShUiCheckboxGroup — `indeterminate` prop 으로 중간 상태 (Material 의 `tristate` 아님).",
|
|
11
11
|
"radio": "ShUiRadio / ShUiRadioGroup — 단일 선택.",
|
|
12
12
|
"switch": "ShUiSwitch — 토글 스위치.",
|
|
13
13
|
"toggle": "ShUiToggle — 프레스 상태 유지 버튼.",
|
|
14
14
|
"slider": "ShUiSlider — 단일 값, step.",
|
|
15
|
-
"select": "ShUiSelect
|
|
16
|
-
"combobox": "ShUiCombobox — 검색 가능 셀렉트.",
|
|
17
|
-
"date-picker": "ShUiDatePicker — 캘린더 팝업.",
|
|
15
|
+
"select": "ShUiSelect<T> + ShUiSelectItem<T> / ShUiSelectGroup / ShUiSelectSeparator (모두 ShUiSelectElement). 다중 선택은 ShUiMultiSelect<T>.",
|
|
16
|
+
"combobox": "ShUiCombobox<T> + ShUiComboboxItem<T> — 검색 가능 셀렉트. 다중 선택은 ShUiMultiCombobox<T>.",
|
|
17
|
+
"date-picker": "ShUiDatePicker (단일) + ShUiDateRangePicker (범위) — 캘린더 팝업.",
|
|
18
18
|
"color-picker": "ShUiColorPicker — 색상 선택.",
|
|
19
19
|
"file-upload": "ShUiFileUpload — 파일 선택/드롭.",
|
|
20
|
-
"dialog": "ShUiDialog
|
|
21
|
-
"popover": "ShUiPopover — 트리거 기준 오버레이.",
|
|
20
|
+
"dialog": "ShUiDialog + ShUiDialogTrigger / ShUiDialogContent / ShUiDialogHeader 분리 위젯. 명령형 호출은 `ShUiDialog.show<T>(...)` static (Flutter 빌트인 `showDialog` 아님).",
|
|
21
|
+
"popover": "ShUiPopover + ShUiPopoverTitle / ShUiPopoverDescription — 트리거 기준 오버레이.",
|
|
22
22
|
"tooltip": "ShUiTooltip — long-press / hover 힌트.",
|
|
23
|
-
"toast": "
|
|
24
|
-
"dropdown-menu": "ShUiDropdownMenu
|
|
23
|
+
"toast": "임시 알림 — `ShUiToast.show(ctx, ...)` static (또는 `.success` / `.danger` / `.warning`) + `ShUiToaster` 위젯 (앱 루트에 배치, 스택 관리). `ShUiToastOverlay` 클래스 아님.",
|
|
24
|
+
"dropdown-menu": "ShUiDropdownMenu<T> + ShUiDropdownMenuItem<T> / ShUiDropdownMenuCheckboxItem<T> / ShUiDropdownMenuRadioItem<T> / ShUiDropdownMenuDivider<T> / ShUiDropdownMenuLabel<T> (모두 ShUiDropdownMenuEntry<T> 의 sealed 자식).",
|
|
25
25
|
"context-menu": "ShUiContextMenu — 길게 누르기/우클릭 메뉴.",
|
|
26
|
-
"menubar": "ShUiMenubar — 수평
|
|
27
|
-
"tabs": "ShUiTabs
|
|
26
|
+
"menubar": "ShUiMenubar + ShUiMenubarMenu — 수평 메뉴바, 각 ShUiMenubarMenu 가 하나의 드롭다운.",
|
|
27
|
+
"tabs": "ShUiTabs + ShUiTab (data class) — 탭 내비. `ShUiTabsController` 클래스 아님.",
|
|
28
28
|
"accordion": "ShUiAccordion — 펼침/접힘. single/multiple.",
|
|
29
29
|
"carousel": "ShUiCarousel — PageView 기반, autoplay/dots.",
|
|
30
|
-
"sidebar": "ShUiSidebar
|
|
31
|
-
"app-shell": "ShUiAppShell — 사이드바 + 상단 바 + 본문 레이아웃.",
|
|
32
|
-
"header": "ShUiHeader — 로고/네비/액션 영역.",
|
|
33
|
-
"breadcrumb": "ShUiBreadcrumb(items: [...]) — items 기반 경로 내비.",
|
|
30
|
+
"sidebar": "ShUiSidebar + ShUiSidebarProvider (앱 루트, 접힘 상태 보유) / ShUiSidebarTrigger / ShUiSidebarHeader / ShUiSidebarFooter / ShUiSidebarInset (본문 영역). 자식에서 상태 접근은 `ShUiSidebar.of(context)`.",
|
|
31
|
+
"app-shell": "ShUiAppShell — 사이드바 + 상단 바 + 본문 레이아웃. nav 항목은 `ShUiAppShellItem` (label/icon/route 등) 을 `ShUiAppShellGroup` 에 묶어 전달.",
|
|
32
|
+
"header": "ShUiHeader — 로고/네비/액션 영역. nav 항목은 `ShUiHeaderItem` (label/route/onTap 등) 을 items 에 전달.",
|
|
33
|
+
"breadcrumb": "ShUiBreadcrumb(items: [...]) — items 기반 경로 내비. items 원소는 `ShUiBreadcrumbItem` 위젯.",
|
|
34
34
|
"pagination": "ShUiPagination(page:, pageCount:, siblingCount:, onPageChanged:) — 페이지 범위 계산 내장.",
|
|
35
35
|
"avatar": "ShUiAvatar — 이미지/initials fallback.",
|
|
36
36
|
"badge": "ShUiBadge — 상태 뱃지.",
|