@ncds/ui-admin-mcp 1.0.0-alpha.14 → 1.0.0-alpha.16

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 (44) hide show
  1. package/bin/components.bundle.js +1 -1
  2. package/bin/definitions/external/editor.d.ts +50 -0
  3. package/bin/definitions/external/editor.js +53 -0
  4. package/bin/definitions/js-api.json +68 -15
  5. package/bin/tools/renderToHtml.d.ts +15 -0
  6. package/bin/tools/renderToHtml.js +16 -7
  7. package/data/badge-group.json +1 -1
  8. package/data/badge.json +1 -1
  9. package/data/bread-crumb.json +1 -1
  10. package/data/carousel-arrow.json +1 -1
  11. package/data/carousel-number-group.json +1 -1
  12. package/data/checkbox.json +1 -1
  13. package/data/combo-box.json +1 -1
  14. package/data/date-picker.json +1 -1
  15. package/data/divider.json +1 -1
  16. package/data/dot.json +1 -1
  17. package/data/dropdown.json +38 -18
  18. package/data/editor.json +85 -0
  19. package/data/empty-state.json +2 -2
  20. package/data/featured-icon.json +1 -1
  21. package/data/file-input.json +1 -1
  22. package/data/horizontal-tab.json +1 -1
  23. package/data/image-file-input.json +1 -1
  24. package/data/input-base.json +1 -1
  25. package/data/modal.json +2 -2
  26. package/data/notification.json +2 -2
  27. package/data/number-input.json +1 -1
  28. package/data/password-input.json +1 -1
  29. package/data/progress-bar.json +2 -2
  30. package/data/progress-circle.json +1 -1
  31. package/data/radio.json +1 -1
  32. package/data/range-date-picker-with-buttons.json +3 -3
  33. package/data/range-date-picker.json +3 -3
  34. package/data/select-box.json +1 -1
  35. package/data/select.json +1 -1
  36. package/data/slider.json +1 -1
  37. package/data/spinner.json +1 -1
  38. package/data/switch.json +1 -1
  39. package/data/tag.json +1 -1
  40. package/data/textarea.json +1 -1
  41. package/data/toggle.json +1 -1
  42. package/data/tooltip.json +1 -1
  43. package/data/vertical-tab.json +1 -1
  44. package/package.json +6 -2
@@ -0,0 +1,85 @@
1
+ {
2
+ "name": "editor",
3
+ "exportName": "NcdsEditor",
4
+ "importPath": "@ncds/editor-html",
5
+ "jsRequired": true,
6
+ "category": "form",
7
+ "description": "froala 기반 WYSIWYG 에디터. textarea 를 in-place 변환. 외부 패키지(@ncds/editor-html) — render_to_html 호출 시 외부 분기 모듈에서 응답 직접 조립.",
8
+ "aliases": [
9
+ "Editor",
10
+ "에디터",
11
+ "WYSIWYG",
12
+ "위지윅",
13
+ "Froala",
14
+ "GodoEditor",
15
+ "NcdsEditor",
16
+ "리치 텍스트",
17
+ "rich text",
18
+ "ncds-editor",
19
+ "editor-html"
20
+ ],
21
+ "hasChildren": false,
22
+ "whenToUse": [
23
+ "장문/리치 텍스트 입력이 필요한 경우 (게시글 본문·상품 설명·뉴스레터 작성 등)",
24
+ "이미지·표·링크 등 인라인 컨텐츠 삽입이 필요한 경우",
25
+ "한국어 폰트 다양성이 중요한 경우 (나눔고딕·바탕 등 9종 지원)"
26
+ ],
27
+ "forbiddenRules": [
28
+ "단순 한 줄 텍스트 입력에 사용 금지 (Input 컴포넌트 사용)",
29
+ "컴포넌트 자식(children)으로 직접 마크업 주입 금지 — setHTML(html) API 사용",
30
+ "동적 삽입(모달 안에 textarea 추가) 시 mcp 출력 그대로 사용 금지 — window.ncdsEditor.initAll() 수동 호출 필요 (현재 mcp 미지원, 후속 스토리)"
31
+ ],
32
+ "seeAlso": ["input", "textarea"],
33
+ "usageExamples": {
34
+ "default": {
35
+ "heightMin": 300,
36
+ "heightMax": 600,
37
+ "placeholderText": "내용을 입력하세요."
38
+ },
39
+ "resizable": {
40
+ "heightMin": 150,
41
+ "heightMax": 400,
42
+ "heightResize": true,
43
+ "placeholderText": "높이를 조정할 수 있습니다."
44
+ },
45
+ "withCustomImageUpload": {
46
+ "heightMin": 200,
47
+ "heightMax": 400,
48
+ "placeholderText": "이미지 업로드가 가능합니다.",
49
+ "imageUploadCallback": "customImageUploadHandler"
50
+ }
51
+ },
52
+ "props": {
53
+ "heightMin": {
54
+ "type": "number",
55
+ "required": false,
56
+ "default": 300
57
+ },
58
+ "heightMax": {
59
+ "type": "number",
60
+ "required": false,
61
+ "default": 600
62
+ },
63
+ "heightResize": {
64
+ "type": "boolean",
65
+ "required": false,
66
+ "default": false
67
+ },
68
+ "placeholderText": {
69
+ "type": "string",
70
+ "required": false,
71
+ "default": "내용을 입력하세요."
72
+ },
73
+ "imageUploadCallback": {
74
+ "type": "string",
75
+ "required": false,
76
+ "description": "전역 이미지 업로드 콜백 함수명. 마크업의 data-image-upload-callback 속성으로 직렬화."
77
+ }
78
+ },
79
+ "html": {},
80
+ "bemClasses": ["ncds-editor-container", "fr-toolbar", "fr-element", "fr-box", "fr-resize-handle"],
81
+ "usage": {
82
+ "import": "// CDN 로드 (npm import 미지원, vanilla JS only)\n<script src=\"https://fe-sdk.cdn-nhncommerce.com/@ncds/editor/0.0/ncds-editor.js\"></script>",
83
+ "react": {}
84
+ }
85
+ }
@@ -3,7 +3,7 @@
3
3
  "exportName": "EmptyState",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "feedback",
6
+ "category": "feedback-and-status",
7
7
  "description": "EmptyState는 앱에서 사용자에게 표시할 데이터가 없거나 검색어가 0개의 결과를 반환하는 순간을 표시하는 컴포넌트입니다.",
8
8
  "aliases": [
9
9
  "EmptyState",
@@ -37,7 +37,7 @@
37
37
  "buttons": {
38
38
  "type": "object",
39
39
  "required": false,
40
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/empty-state/EmptyState\").ButtonOptions | import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/empty-state/EmptyState\").ButtonOptions[] | undefined",
40
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/feedback-and-status/empty-state/EmptyState\").ButtonOptions | import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/feedback-and-status/empty-state/EmptyState\").ButtonOptions[] | undefined",
41
41
  "properties": {
42
42
  "label": {
43
43
  "type": "string",
@@ -3,7 +3,7 @@
3
3
  "exportName": "FeaturedIcon",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "icon",
6
+ "category": "image-and-icons",
7
7
  "description": "FeaturedIcon은 상태(Status), 결과(Result), 중요 액션(Action)을 시각적으로 강조하기 위한 아이콘 강조 컴포넌트입니다.",
8
8
  "aliases": [
9
9
  "FeaturedIcon",
@@ -3,7 +3,7 @@
3
3
  "exportName": "FileInput",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "File Upload가 필요한 영역에서 공통 UI/UX를 적용하는 입력 컴포넌트입니다",
8
8
  "aliases": [
9
9
  "파일인풋",
@@ -97,7 +97,7 @@
97
97
  "badgeInfo": {
98
98
  "type": "object",
99
99
  "required": false,
100
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/badge/Badge\").BadgeProps | undefined",
100
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/feedback-and-status/badge/Badge\").BadgeProps | undefined",
101
101
  "properties": {
102
102
  "label": {
103
103
  "type": "string",
@@ -3,7 +3,7 @@
3
3
  "exportName": "ImageFileInput",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "상품 이미지 등 시각적으로 참조되어야 하는 이미지 업로드 영역에 사용되는 컴포넌트입니다",
8
8
  "aliases": [
9
9
  "이미지파일인풋",
@@ -3,7 +3,7 @@
3
3
  "exportName": "InputBase",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "Input은 사용자에게 텍스트 데이터를 입력받는 UI 요소로, 다양한 사이즈와 상태를 지원하며 입력 필드 앞뒤로 아이콘, 텍스트, 버튼 등의 요소를 배치할 수 있습니다.",
8
8
  "aliases": [
9
9
  "인풋",
package/data/modal.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Modal",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "overlay",
6
+ "category": "overlays",
7
7
  "description": "Modal은 사용자가 현재 페이지를 이탈하지 않고도 집중이 필요한 중요 정보 제공 또는 복잡한 입력/처리 작업을 수행하도록 하기 위한 오버레이 UI 컴포넌트입니다.",
8
8
  "aliases": [
9
9
  "Modal",
@@ -208,7 +208,7 @@
208
208
  "featuredIcon": {
209
209
  "type": "object",
210
210
  "required": false,
211
- "rawType": "{ icon: import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/types/side-slot\").SlotIconComponent; color: import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/featured-icon/FeaturedIcon\").FeaturedIconColor; theme: import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/featured-icon/FeaturedIcon\").FeaturedIconTheme; } | undefined",
211
+ "rawType": "{ icon: import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/types/side-slot\").SlotIconComponent; color: import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/image-and-icons/featured-icon/FeaturedIcon\").FeaturedIconColor; theme: import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/image-and-icons/featured-icon/FeaturedIcon\").FeaturedIconTheme; } | undefined",
212
212
  "properties": {
213
213
  "icon": {
214
214
  "type": "function",
@@ -3,7 +3,7 @@
3
3
  "exportName": "Notification",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "overlay",
6
+ "category": "overlays",
7
7
  "description": "Notification 컴포넌트는 현재 작업과 관련된 상태 정보, 경고, 처리 결과를 비차단 방식으로 사용자에게 전달하는 UI입니다.",
8
8
  "aliases": [
9
9
  "Notification",
@@ -41,7 +41,7 @@
41
41
  "actions": {
42
42
  "type": "object",
43
43
  "required": false,
44
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/notification/Notification\").NotificationAction[] | undefined",
44
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/overlays/notification/Notification\").NotificationAction[] | undefined",
45
45
  "properties": {
46
46
  "label": {
47
47
  "type": "string",
@@ -3,7 +3,7 @@
3
3
  "exportName": "NumberInput",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "NumberInput은 숫자만 입력 가능한 전용 입력 컨트롤로, 직접 입력과 Spin Button(▲/▼) 조작을 모두 지원하며 Step 기능을 통해 값을 증감할 수 있습니다.",
8
8
  "aliases": [
9
9
  "숫자입력",
@@ -3,7 +3,7 @@
3
3
  "exportName": "PasswordInput",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "비밀번호 전용 입력 필드로 마스킹 토글을 내장합니다",
8
8
  "aliases": [
9
9
  "비밀번호",
@@ -3,7 +3,7 @@
3
3
  "exportName": "ProgressBar",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "feedback",
6
+ "category": "feedback-and-status",
7
7
  "description": "ProgressBar는 작업 진행률, 로딩 프로세스, 완료율 등을 시각적으로 표시하여 사용자에게 진행 중인 작업의 정도를 퍼센트(%)로 보여주는 컴포넌트입니다.",
8
8
  "aliases": [
9
9
  "ProgressBar",
@@ -51,7 +51,7 @@
51
51
  "segments": {
52
52
  "type": "object",
53
53
  "required": false,
54
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/progress-bar/types\").ProgressSegment[] | undefined",
54
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/feedback-and-status/progress-bar/types\").ProgressSegment[] | undefined",
55
55
  "properties": {
56
56
  "value": {
57
57
  "type": "number",
@@ -3,7 +3,7 @@
3
3
  "exportName": "ProgressCircle",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "feedback",
6
+ "category": "feedback-and-status",
7
7
  "description": "ProgressCircle은 작업 진행 상태를 원형의 수치(%)로 시각화하여 사용자에게 현재 진행 정도를 명확하게 전달하는 컴포넌트입니다.",
8
8
  "aliases": [
9
9
  "ProgressCircle",
package/data/radio.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Radio",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "Radio는 여러 옵션 중 하나만 선택할 수 있는 단일 선택(Single Selection) 컨트롤로, 텍스트 라벨과 보조 설명을 함께 제공할 수 있습니다.",
8
8
  "aliases": [
9
9
  "라디오",
@@ -3,7 +3,7 @@
3
3
  "exportName": "RangeDatePickerWithButtons",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "기간 옵션 버튼이 내장된 RangeDatePicker 확장 컴포넌트로 빠른 기간 설정을 지원합니다",
8
8
  "aliases": [
9
9
  "기간 선택 버튼",
@@ -61,7 +61,7 @@
61
61
  "endDateOptions": {
62
62
  "type": "object",
63
63
  "required": true,
64
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/date-picker/DatePicker\").DatePickerProps",
64
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/forms-and-input/date-picker/DatePicker\").DatePickerProps",
65
65
  "properties": {
66
66
  "size": {
67
67
  "type": "enum",
@@ -144,7 +144,7 @@
144
144
  "startDateOptions": {
145
145
  "type": "object",
146
146
  "required": true,
147
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/date-picker/DatePicker\").DatePickerProps",
147
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/forms-and-input/date-picker/DatePicker\").DatePickerProps",
148
148
  "properties": {
149
149
  "size": {
150
150
  "type": "enum",
@@ -3,7 +3,7 @@
3
3
  "exportName": "RangeDatePicker",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "RangeDatePicker는 시작일~종료일 기간 범위를 선택해야 하는 경우 사용하는 복합 선택 위젯입니다. 검색 기간 설정, 노출 기간 설정, 이벤트 기간 설정 등 두 날짜의 쌍(Pair)이 필요한 모든 상황에서 사용합니다.",
8
8
  "aliases": [
9
9
  "범위날짜선택",
@@ -66,7 +66,7 @@
66
66
  "endDateOptions": {
67
67
  "type": "object",
68
68
  "required": true,
69
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/date-picker/DatePicker\").DatePickerProps",
69
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/forms-and-input/date-picker/DatePicker\").DatePickerProps",
70
70
  "properties": {
71
71
  "size": {
72
72
  "type": "enum",
@@ -135,7 +135,7 @@
135
135
  "startDateOptions": {
136
136
  "type": "object",
137
137
  "required": true,
138
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/date-picker/DatePicker\").DatePickerProps",
138
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/forms-and-input/date-picker/DatePicker\").DatePickerProps",
139
139
  "properties": {
140
140
  "size": {
141
141
  "type": "enum",
@@ -3,7 +3,7 @@
3
3
  "exportName": "SelectBox",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "Selectbox는 목록(레이어) 중에서 하나 이상의 항목을 선택하는 입력 컴포넌트로, 선택 가능한 옵션이 3~30개 정도이며 공간 효율이 중요한 경우 사용합니다.",
8
8
  "aliases": [
9
9
  "셀렉트박스",
package/data/select.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Select",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "네이티브 HTML select 래퍼입니다. 대부분의 경우 select-box를 사용하세요. 네이티브 select가 명시적으로 필요한 경우에만 사용합니다.",
8
8
  "aliases": [
9
9
  "네이티브 셀렉트",
package/data/slider.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Slider",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "Slider는 연속적 또는 구간 기반 수치를 직관적으로 조절하는 입력 컴포넌트로, 텍스트 입력보다 범위가 명확하고 빠른 조정이 필요하며 시각적 비율이 중요한 경우 사용합니다.",
8
8
  "aliases": [
9
9
  "슬라이더",
package/data/spinner.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Spinner",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "feedback",
6
+ "category": "feedback-and-status",
7
7
  "description": "Spinner는 데이터 조회, 검색, 업로드, 파일 생성 등 3초 이상 소요되는 처리 과정에서 사용자 불안감을 줄이기 위해 제공되는 피드백 UI입니다.",
8
8
  "aliases": [
9
9
  "Spinner",
package/data/switch.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Switch",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "Switch는 하나의 기능 또는 상태에 대해 180도 다른 두 개의 선택지를 제공하는 토글형 컴포넌트로, 라디오 버튼 방식의 좌/우 영역 선택을 통해 즉각적인 상태 전환을 수행합니다.",
8
8
  "aliases": [
9
9
  "스위치",
package/data/tag.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Tag",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "feedback",
6
+ "category": "feedback-and-status",
7
7
  "description": "Tag 컴포넌트는 정보를 분류하고 필터링하기 위한 시각적 표시를 제공합니다. 레이블, 카테고리, 필터 등을 나타내는 데 사용되며, 아이콘, 닫기 버튼, 체크박스, 카운트 등의 기능을 포함할 수 있습니다.",
8
8
  "aliases": [
9
9
  "Tag",
@@ -3,7 +3,7 @@
3
3
  "exportName": "Textarea",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "Textarea(멀티라인 인풋)는 여러 줄의 사용형 텍스트 입력을 위한 컴포넌트입니다.",
8
8
  "aliases": [
9
9
  "Textarea",
package/data/toggle.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Toggle",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": false,
6
- "category": "input",
6
+ "category": "forms-and-input",
7
7
  "description": "Toggle은 단일 기능의 활성/비활성 상태를 즉시 전환하는 컨트롤입니다. 설정 값의 ON/OFF, 수신 여부, 사용 여부 등 즉각 반영되는 상태 전환 UI에 사용합니다.",
8
8
  "aliases": [
9
9
  "Toggle",
package/data/tooltip.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "exportName": "Tooltip",
4
4
  "importPath": "@ncds/ui-admin",
5
5
  "jsRequired": true,
6
- "category": "overlay",
6
+ "category": "overlays",
7
7
  "description": "Tooltip은 항목, 데이터, 기능 등에 대해 추가 설명이 필요한 경우 보조 정보를 제공하는 말풍선 내 UI 컴포넌트입니다.",
8
8
  "aliases": [
9
9
  "Tooltip",
@@ -96,7 +96,7 @@
96
96
  "badgeInfo": {
97
97
  "type": "object",
98
98
  "required": false,
99
- "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/badge/Badge\").BadgeProps | undefined",
99
+ "rawType": "import(\"/Users/nhncommerce/Desktop/project/ncds/packages/ui-admin/src/components/feedback-and-status/badge/Badge\").BadgeProps | undefined",
100
100
  "properties": {
101
101
  "label": {
102
102
  "type": "string",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ncds/ui-admin-mcp",
3
- "version": "1.0.0-alpha.14",
3
+ "version": "1.0.0-alpha.16",
4
4
  "description": "NCDS UI Admin MCP 서버 — AI 에이전트가 NCUA 컴포넌트를 조회하고 HTML을 검증할 수 있는 MCP 서버",
5
5
  "bin": {
6
6
  "ncua-mcp": "./bin/server.mjs"
@@ -20,7 +20,7 @@
20
20
  "extract:tokens": "tsx scripts/extract-design-tokens.ts",
21
21
  "generate:cdn-meta": "tsx scripts/generate-cdn-meta.ts",
22
22
  "build:bundle": "tsx scripts/build-bundle.ts",
23
- "build:server": "tsc --project tsconfig.json && rm -rf bin/definitions && cp -r src/definitions bin/definitions",
23
+ "build:server": "mkdir -p bin && rm -rf bin/definitions && cp -r src/definitions bin/definitions && find bin/definitions -name '*.ts' -delete && tsc --project tsconfig.json",
24
24
  "build": "pnpm extract && pnpm extract:icons && pnpm extract:tokens && pnpm generate:cdn-meta && pnpm build:bundle && pnpm build:server",
25
25
  "check-meta": "tsx scripts/check-meta-coherence.ts",
26
26
  "test": "vitest run --config vitest.config.ts",
@@ -38,6 +38,10 @@
38
38
  "license": "SEE LICENSE IN LICENSE",
39
39
  "private": false,
40
40
  "dependencies": {
41
+ "@atlaskit/pragmatic-drag-and-drop": "1.8.1",
42
+ "@atlaskit/pragmatic-drag-and-drop-auto-scroll": "2.1.0",
43
+ "@atlaskit/pragmatic-drag-and-drop-hitbox": "1.1.0",
44
+ "@atlaskit/pragmatic-drag-and-drop-react-accessibility": "1.1.4",
41
45
  "@modelcontextprotocol/sdk": "^1.27.1",
42
46
  "@ncds/types-common": "^1.0.0",
43
47
  "@ncds/types-layout": "^1.0.0",