sh-ui-cli 0.52.0 → 0.52.1
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.
|
@@ -2,6 +2,17 @@
|
|
|
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.52.1",
|
|
7
|
+
"date": "2026-05-04",
|
|
8
|
+
"title": "zod v4 호환 + MCP describe 텍스트 최신화",
|
|
9
|
+
"type": "patch",
|
|
10
|
+
"highlights": [
|
|
11
|
+
"**zod 3 → 4 호환** — `packages/cli/src/create/plugins/pluginSchema.js` 의 `z.function().args().returns()` 패턴이 zod v4 에서 제거됨. 함수 시그니처는 런타임에 의미 있게 검증할 수 없으므로 `z.custom((val) => typeof val === 'function')` 으로 단순화. 사용자 영향 없음 — plugin manifest 의 `wrapExport` 가 함수인지만 확인하던 동작 그대로.",
|
|
12
|
+
"**MCP describe 텍스트 최신화** — `mcp.mjs` 의 `cssFramework` 옵션 안내가 `(향후 tailwind 등 추가 예정)` 으로 outdated 였음. 4 변종 모두 SUPPORTED 된 현재 상태로 갱신 — 각 옵션별 한 줄 설명 (plain/tailwind/css-modules/vanilla-extract) + fallback 안내."
|
|
13
|
+
],
|
|
14
|
+
"url": "https://github.com/sanghyeonKim0201/sh-ui/releases/tag/v0.52.1"
|
|
15
|
+
},
|
|
5
16
|
{
|
|
6
17
|
"version": "0.52.0",
|
|
7
18
|
"date": "2026-05-04",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sh-ui-cli",
|
|
3
|
-
"version": "0.52.
|
|
3
|
+
"version": "0.52.1",
|
|
4
4
|
"description": "sh-ui CLI — 프로젝트 스캐폴드(create) + 컴포넌트 추가(add/list/remove) + IDE-내 AI용 MCP 서버",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"@inquirer/prompts": "^7.0.0",
|
|
29
29
|
"@modelcontextprotocol/sdk": "^1.0.0",
|
|
30
30
|
"fs-extra": "^11.2.0",
|
|
31
|
-
"zod": "^3.
|
|
31
|
+
"zod": "^4.3.6"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"vitest": "^3.2.4"
|
|
@@ -23,10 +23,12 @@ const filePath = z
|
|
|
23
23
|
"Use 'middleware.ts' instead of 'src/middleware.ts'.",
|
|
24
24
|
});
|
|
25
25
|
|
|
26
|
+
// zod 4 에서 z.function 의 .args/.returns 체이닝 API 가 제거됨.
|
|
27
|
+
// 함수 시그니처는 런타임에 의미 있게 검증할 수 없으므로 custom 으로 type 만 확인.
|
|
26
28
|
const wrapperFn = z
|
|
27
|
-
.
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
.custom((val) => typeof val === "function", {
|
|
30
|
+
message: "wrapExport must be a function (expr: string) => string",
|
|
31
|
+
})
|
|
30
32
|
.optional();
|
|
31
33
|
|
|
32
34
|
export const PluginSchema = z.object({
|
package/src/mcp.mjs
CHANGED
|
@@ -74,7 +74,9 @@ const INIT_DESCRIPTIONS = {
|
|
|
74
74
|
},
|
|
75
75
|
cssFramework: {
|
|
76
76
|
plain: "플레인 CSS — CSS custom properties + 일반 .css 파일 (모든 컴포넌트 지원)",
|
|
77
|
-
tailwind: "Tailwind v4 utility class — class-variance-authority
|
|
77
|
+
tailwind: "Tailwind v4 utility class — class-variance-authority 기반",
|
|
78
|
+
"css-modules": "CSS Modules — .module.css + styles.X 참조, 빌드 타임 hash 격리",
|
|
79
|
+
"vanilla-extract": "vanilla-extract — TS 안에서 CSS 작성 (.css.ts), 빌드 타임 정적 컴파일 (bundler 플러그인 셋업 필요)",
|
|
78
80
|
},
|
|
79
81
|
};
|
|
80
82
|
|
|
@@ -205,7 +207,7 @@ export async function startMcpServer() {
|
|
|
205
207
|
theme: z.string().optional()
|
|
206
208
|
.describe(`프리셋 이름 (${THEME_PRESETS_LIST}) 또는 playground 에서 생성한 base64 (선택)`),
|
|
207
209
|
cssFramework: z.enum(CSS_FRAMEWORKS).optional()
|
|
208
|
-
.describe(`CSS 프레임워크. 기본 plain. 현재 ${CSS_FRAMEWORKS.join('/')} 지원
|
|
210
|
+
.describe(`CSS 프레임워크. 기본 plain. 현재 ${CSS_FRAMEWORKS.join('/')} 지원 — 변종 미보유 컴포넌트는 add 시 plain 으로 자동 fallback`),
|
|
209
211
|
cwd: z.string().optional()
|
|
210
212
|
.describe("부모 디렉토리. 기본 process.cwd()"),
|
|
211
213
|
force: z.boolean().optional()
|
|
@@ -276,7 +278,7 @@ export async function startMcpServer() {
|
|
|
276
278
|
mode: z.enum(MODES).optional()
|
|
277
279
|
.describe("색 모드. 기본 light-dark"),
|
|
278
280
|
cssFramework: z.enum(CSS_FRAMEWORKS).optional()
|
|
279
|
-
.describe(`CSS 프레임워크. 기본 plain. 현재 ${CSS_FRAMEWORKS.join('/')} 지원
|
|
281
|
+
.describe(`CSS 프레임워크. 기본 plain. 현재 ${CSS_FRAMEWORKS.join('/')} 지원 — 변종 미보유 컴포넌트는 add 시 plain 으로 자동 fallback`),
|
|
280
282
|
cwd: z.string().optional()
|
|
281
283
|
.describe("작업 디렉토리. 기본 process.cwd()"),
|
|
282
284
|
force: z.boolean().optional()
|