@sonamu-kit/react-components 0.1.0 → 0.1.2

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 (146) hide show
  1. package/dist/components/index.d.ts +65 -0
  2. package/dist/components/ui/accordion.d.ts +7 -0
  3. package/dist/components/ui/alert-dialog.d.ts +20 -0
  4. package/dist/components/ui/alert.d.ts +8 -0
  5. package/dist/components/ui/aspect-ratio.d.ts +3 -0
  6. package/dist/components/ui/async-select.d.ts +36 -0
  7. package/dist/components/ui/avatar.d.ts +6 -0
  8. package/dist/components/ui/badge.d.ts +9 -0
  9. package/dist/components/ui/breadcrumb.d.ts +19 -0
  10. package/dist/components/ui/button.d.ts +13 -0
  11. package/dist/components/ui/calendar.d.ts +5 -0
  12. package/dist/components/ui/card.d.ts +9 -0
  13. package/dist/components/ui/carousel.d.ts +18 -0
  14. package/dist/components/ui/checkbox.d.ts +8 -0
  15. package/dist/components/ui/collapsible.d.ts +5 -0
  16. package/dist/components/ui/combobox.d.ts +20 -0
  17. package/dist/components/ui/command.d.ts +80 -0
  18. package/dist/components/ui/common-modal.d.ts +28 -0
  19. package/dist/components/ui/context-menu.d.ts +27 -0
  20. package/dist/components/ui/date-input.d.ts +7 -0
  21. package/dist/components/ui/date-picker.d.ts +26 -0
  22. package/dist/components/ui/date-selector-multiple.d.ts +38 -0
  23. package/dist/components/ui/dialog.d.ts +19 -0
  24. package/dist/components/ui/drawer.d.ts +22 -0
  25. package/dist/components/ui/dropdown-menu.d.ts +27 -0
  26. package/dist/components/ui/form.d.ts +23 -0
  27. package/dist/components/ui/hover-card.d.ts +6 -0
  28. package/dist/components/ui/image-uploader.d.ts +14 -0
  29. package/dist/components/ui/input-otp.d.ts +34 -0
  30. package/dist/components/ui/input.d.ts +7 -0
  31. package/dist/components/ui/label.d.ts +5 -0
  32. package/dist/components/ui/menubar.d.ts +28 -0
  33. package/dist/components/ui/month-picker-multiple.d.ts +41 -0
  34. package/dist/components/ui/multi-image-uploader.d.ts +15 -0
  35. package/dist/components/ui/multi-select.d.ts +229 -0
  36. package/dist/components/ui/navigation-menu.d.ts +12 -0
  37. package/dist/components/ui/pagination.d.ts +10 -0
  38. package/dist/components/ui/popover.d.ts +7 -0
  39. package/dist/components/ui/progress.d.ts +4 -0
  40. package/dist/components/ui/radio-group.d.ts +5 -0
  41. package/dist/components/ui/resizable.d.ts +23 -0
  42. package/dist/components/ui/scroll-area.d.ts +5 -0
  43. package/dist/components/ui/select.d.ts +20 -0
  44. package/dist/components/ui/separator.d.ts +4 -0
  45. package/dist/components/ui/sheet.d.ts +25 -0
  46. package/dist/components/ui/sidebar.d.ts +69 -0
  47. package/dist/components/ui/skeleton.d.ts +2 -0
  48. package/dist/components/ui/slider.d.ts +8 -0
  49. package/dist/components/ui/sonner.d.ts +4 -0
  50. package/dist/components/ui/switch.d.ts +8 -0
  51. package/dist/components/ui/table.d.ts +24 -0
  52. package/dist/components/ui/tabs.d.ts +7 -0
  53. package/dist/components/ui/textarea.d.ts +7 -0
  54. package/dist/components/ui/toast.d.ts +15 -0
  55. package/dist/components/ui/toaster.d.ts +1 -0
  56. package/dist/components/ui/toggle-group.d.ts +12 -0
  57. package/dist/components/ui/toggle.d.ts +12 -0
  58. package/dist/components/ui/tooltip.d.ts +7 -0
  59. package/dist/hooks/index.d.ts +1 -0
  60. package/dist/hooks/use-toast.d.ts +44 -0
  61. package/dist/index.d.ts +3 -0
  62. package/dist/lib/caster.d.ts +3 -0
  63. package/dist/lib/helpers.d.ts +72 -0
  64. package/dist/lib/index.d.ts +6 -0
  65. package/{src/lib/lazy-upload.ts → dist/lib/lazy-upload.d.ts} +1 -12
  66. package/dist/lib/use-mobile.d.ts +1 -0
  67. package/dist/lib/utils.d.ts +2 -0
  68. package/dist/react-components.es.js +28375 -0
  69. package/package.json +105 -76
  70. package/COMPONENTS_LIST.md +0 -106
  71. package/COMPONENTS_STATUS.md +0 -114
  72. package/HELPERS_GUIDE.md +0 -489
  73. package/MIGRATION_PLAN.md +0 -404
  74. package/SETUP_GUIDE.md +0 -125
  75. package/components.json +0 -21
  76. package/postcss.config.js +0 -6
  77. package/src/components/index.ts +0 -315
  78. package/src/components/ui/accordion.tsx +0 -54
  79. package/src/components/ui/alert-dialog.tsx +0 -115
  80. package/src/components/ui/alert.tsx +0 -49
  81. package/src/components/ui/aspect-ratio.tsx +0 -5
  82. package/src/components/ui/async-select.tsx +0 -186
  83. package/src/components/ui/avatar.tsx +0 -45
  84. package/src/components/ui/badge.tsx +0 -38
  85. package/src/components/ui/breadcrumb.tsx +0 -102
  86. package/src/components/ui/button.tsx +0 -54
  87. package/src/components/ui/calendar.tsx +0 -193
  88. package/src/components/ui/card.tsx +0 -65
  89. package/src/components/ui/carousel.tsx +0 -243
  90. package/src/components/ui/checkbox.tsx +0 -67
  91. package/src/components/ui/collapsible.tsx +0 -9
  92. package/src/components/ui/combobox.tsx +0 -135
  93. package/src/components/ui/command.tsx +0 -143
  94. package/src/components/ui/common-modal.tsx +0 -95
  95. package/src/components/ui/context-menu.tsx +0 -189
  96. package/src/components/ui/date-picker.tsx +0 -112
  97. package/src/components/ui/date-selector-multiple.tsx +0 -197
  98. package/src/components/ui/dialog.tsx +0 -104
  99. package/src/components/ui/drawer.tsx +0 -100
  100. package/src/components/ui/dropdown-menu.tsx +0 -189
  101. package/src/components/ui/form.tsx +0 -171
  102. package/src/components/ui/hover-card.tsx +0 -27
  103. package/src/components/ui/image-uploader.tsx +0 -251
  104. package/src/components/ui/input-otp.tsx +0 -69
  105. package/src/components/ui/input.tsx +0 -38
  106. package/src/components/ui/label.tsx +0 -19
  107. package/src/components/ui/menubar.tsx +0 -231
  108. package/src/components/ui/month-picker-multiple.tsx +0 -351
  109. package/src/components/ui/multi-image-uploader.tsx +0 -283
  110. package/src/components/ui/multi-select.tsx +0 -1143
  111. package/src/components/ui/navigation-menu.tsx +0 -120
  112. package/src/components/ui/pagination.tsx +0 -72
  113. package/src/components/ui/popover.tsx +0 -42
  114. package/src/components/ui/progress.tsx +0 -25
  115. package/src/components/ui/radio-group.tsx +0 -38
  116. package/src/components/ui/resizable.tsx +0 -42
  117. package/src/components/ui/scroll-area.tsx +0 -46
  118. package/src/components/ui/select.tsx +0 -235
  119. package/src/components/ui/separator.tsx +0 -24
  120. package/src/components/ui/sheet.tsx +0 -119
  121. package/src/components/ui/sidebar.tsx +0 -683
  122. package/src/components/ui/skeleton.tsx +0 -7
  123. package/src/components/ui/slider.tsx +0 -57
  124. package/src/components/ui/sonner.tsx +0 -39
  125. package/src/components/ui/switch.tsx +0 -63
  126. package/src/components/ui/table.tsx +0 -94
  127. package/src/components/ui/tabs.tsx +0 -53
  128. package/src/components/ui/textarea.tsx +0 -34
  129. package/src/components/ui/toast.tsx +0 -122
  130. package/src/components/ui/toaster.tsx +0 -29
  131. package/src/components/ui/toggle-group.tsx +0 -55
  132. package/src/components/ui/toggle.tsx +0 -41
  133. package/src/components/ui/tooltip.tsx +0 -28
  134. package/src/hooks/index.ts +0 -2
  135. package/src/hooks/use-toast.ts +0 -189
  136. package/src/icons.d.ts +0 -1
  137. package/src/index.ts +0 -4
  138. package/src/lib/caster.ts +0 -66
  139. package/src/lib/helpers.ts +0 -394
  140. package/src/lib/index.ts +0 -31
  141. package/src/lib/use-mobile.ts +0 -19
  142. package/src/lib/utils.ts +0 -6
  143. package/src/styles/globals.css +0 -658
  144. package/tailwind.config.ts +0 -8
  145. package/tsconfig.json +0 -31
  146. package/tsconfig.node.json +0 -11
package/package.json CHANGED
@@ -1,88 +1,117 @@
1
1
  {
2
2
  "name": "@sonamu-kit/react-components",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "type": "module",
5
- "main": "./src/index.ts",
6
- "types": "./src/index.ts",
5
+ "author": "CartaNova <dev@cartanova.ai>",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/cartanova-ai/sonamu.git"
9
+ },
10
+ "license": "MIT",
11
+ "files": [
12
+ "dist"
13
+ ],
14
+ "main": "./dist/react-components.es.js",
15
+ "types": "./dist/index.d.ts",
7
16
  "exports": {
8
- ".": "./src/index.ts",
9
- "./components": "./src/components/index.ts",
10
- "./hooks": "./src/hooks/index.ts",
11
- "./lib": "./src/lib/index.ts",
12
- "./router": "./src/router/index.ts",
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "import": "./dist/react-components.es.js"
20
+ },
21
+ "./components": {
22
+ "types": "./dist/components/index.d.ts",
23
+ "import": "./dist/react-components.es.js"
24
+ },
25
+ "./hooks": {
26
+ "types": "./dist/hooks/index.d.ts",
27
+ "import": "./dist/react-components.es.js"
28
+ },
29
+ "./lib": {
30
+ "types": "./dist/lib/index.d.ts",
31
+ "import": "./dist/react-components.es.js"
32
+ },
33
+ "./router": {
34
+ "types": "./dist/router/index.d.ts",
35
+ "import": "./dist/react-components.es.js"
36
+ },
13
37
  "./styles": "./src/styles/globals.css"
14
38
  },
15
- "scripts": {
16
- "dev": "tsc --watch",
17
- "build": "tsc",
18
- "lint": "eslint src"
19
- },
20
39
  "dependencies": {
21
- "@hookform/resolvers": "catalog:",
22
- "@radix-ui/react-accordion": "catalog:",
23
- "@radix-ui/react-alert-dialog": "catalog:",
24
- "@radix-ui/react-aspect-ratio": "catalog:",
25
- "@radix-ui/react-avatar": "catalog:",
26
- "@radix-ui/react-checkbox": "catalog:",
27
- "@radix-ui/react-collapsible": "catalog:",
28
- "@radix-ui/react-context-menu": "catalog:",
29
- "@radix-ui/react-dialog": "catalog:",
30
- "@radix-ui/react-dropdown-menu": "catalog:",
31
- "@radix-ui/react-hover-card": "catalog:",
32
- "@radix-ui/react-label": "catalog:",
33
- "@radix-ui/react-menubar": "catalog:",
34
- "@radix-ui/react-navigation-menu": "catalog:",
35
- "@radix-ui/react-popover": "catalog:",
36
- "@radix-ui/react-progress": "catalog:",
37
- "@radix-ui/react-radio-group": "catalog:",
38
- "@radix-ui/react-scroll-area": "catalog:",
39
- "@radix-ui/react-select": "catalog:",
40
- "@radix-ui/react-separator": "catalog:",
41
- "@radix-ui/react-slider": "catalog:",
42
- "@radix-ui/react-slot": "catalog:",
43
- "@radix-ui/react-switch": "catalog:",
44
- "@radix-ui/react-tabs": "catalog:",
45
- "@radix-ui/react-toast": "catalog:",
46
- "@radix-ui/react-toggle": "catalog:",
47
- "@radix-ui/react-toggle-group": "catalog:",
48
- "@radix-ui/react-tooltip": "catalog:",
49
- "@types/qs": "catalog:",
50
- "class-variance-authority": "catalog:",
51
- "clsx": "catalog:",
52
- "cmdk": "catalog:",
53
- "date-fns": "catalog:",
54
- "embla-carousel-react": "catalog:",
55
- "fast-deep-equal": "catalog:",
56
- "inflection": "catalog:",
57
- "input-otp": "catalog:",
58
- "jotai": "catalog:",
59
- "next-themes": "catalog:",
60
- "qs": "catalog:",
61
- "radashi": "catalog:",
62
- "react-day-picker": "catalog:",
63
- "react-hook-form": "catalog:",
64
- "react-resizable-panels": "catalog:",
65
- "sonner": "catalog:",
66
- "tailwind-merge": "catalog:",
67
- "vaul": "catalog:",
68
- "zod": "catalog:"
40
+ "@hookform/resolvers": "^5.2.2",
41
+ "@radix-ui/react-accordion": "^1.2.12",
42
+ "@radix-ui/react-alert-dialog": "^1.1.15",
43
+ "@radix-ui/react-aspect-ratio": "^1.1.8",
44
+ "@radix-ui/react-avatar": "^1.1.11",
45
+ "@radix-ui/react-checkbox": "^1.3.3",
46
+ "@radix-ui/react-collapsible": "^1.1.12",
47
+ "@radix-ui/react-context-menu": "^2.2.16",
48
+ "@radix-ui/react-dialog": "^1.1.15",
49
+ "@radix-ui/react-dropdown-menu": "^2.1.16",
50
+ "@radix-ui/react-hover-card": "^1.1.15",
51
+ "@radix-ui/react-label": "^2.1.8",
52
+ "@radix-ui/react-menubar": "^1.1.16",
53
+ "@radix-ui/react-navigation-menu": "^1.2.14",
54
+ "@radix-ui/react-popover": "^1.1.15",
55
+ "@radix-ui/react-progress": "^1.1.8",
56
+ "@radix-ui/react-radio-group": "^1.3.8",
57
+ "@radix-ui/react-scroll-area": "^1.2.10",
58
+ "@radix-ui/react-select": "^2.2.6",
59
+ "@radix-ui/react-separator": "^1.1.8",
60
+ "@radix-ui/react-slider": "^1.3.6",
61
+ "@radix-ui/react-slot": "^1.1.1",
62
+ "@radix-ui/react-switch": "^1.2.6",
63
+ "@radix-ui/react-tabs": "^1.1.13",
64
+ "@radix-ui/react-toast": "^1.2.15",
65
+ "@radix-ui/react-toggle": "^1.1.10",
66
+ "@radix-ui/react-toggle-group": "^1.1.11",
67
+ "@radix-ui/react-tooltip": "^1.2.8",
68
+ "@types/qs": "^6.9.7",
69
+ "class-variance-authority": "^0.7.1",
70
+ "clsx": "^2.1.1",
71
+ "cmdk": "^1.1.1",
72
+ "date-fns": "^4.1.0",
73
+ "embla-carousel-react": "^8.6.0",
74
+ "fast-deep-equal": "^3.1.3",
75
+ "inflection": "^3.0.2",
76
+ "input-otp": "^1.4.2",
77
+ "jotai": "^2.14.0",
78
+ "next-themes": "^0.4.6",
79
+ "qs": "^6.11.0",
80
+ "radashi": "^12.2.0",
81
+ "react-day-picker": "^8.10.1",
82
+ "react-hook-form": "^7.66.1",
83
+ "react-resizable-panels": "^3.0.6",
84
+ "sonner": "^2.0.7",
85
+ "tailwind-merge": "^3.4.0",
86
+ "vaul": "^1.1.2",
87
+ "zod": "^4.1.12"
69
88
  },
70
89
  "peerDependencies": {
71
- "@tanstack/react-router": "catalog:",
72
- "react": "catalog:",
73
- "react-dom": "catalog:"
90
+ "@tanstack/react-router": "1.143.11",
91
+ "react": "^19.2.3",
92
+ "react-dom": "^19.2.3"
74
93
  },
75
94
  "devDependencies": {
76
- "@iconify/json": "catalog:",
77
- "@tailwindcss/vite": "catalog:",
78
- "@tanstack/react-router": "catalog:",
79
- "@types/inflection": "catalog:",
80
- "@types/react": "catalog:",
81
- "@types/react-dom": "catalog:",
82
- "autoprefixer": "catalog:",
83
- "postcss": "catalog:",
84
- "tailwindcss": "catalog:",
85
- "typescript": "catalog:",
86
- "unplugin-icons": "catalog:"
95
+ "@iconify/json": "^2.2.421",
96
+ "@tailwindcss/vite": "^4.1.17",
97
+ "@tanstack/react-router": "1.143.11",
98
+ "@types/inflection": "^2.0.0",
99
+ "@types/react": "^19.2.7",
100
+ "@types/react-dom": "^19.2.3",
101
+ "@vitejs/plugin-react": "4.7.0",
102
+ "autoprefixer": "^10.4.20",
103
+ "postcss": "^8.4.49",
104
+ "tailwindcss": "^4.0.0",
105
+ "typescript": "^5.9.3",
106
+ "unplugin-icons": "0.20.2",
107
+ "vite": "7.3.0",
108
+ "vite-plugin-dts": "4.5.4",
109
+ "vite-tsconfig-paths": "^5.1.4"
110
+ },
111
+ "scripts": {
112
+ "dev": "vite",
113
+ "build": "vite build",
114
+ "lint": "eslint src",
115
+ "preview": "vite preview"
87
116
  }
88
- }
117
+ }
@@ -1,106 +0,0 @@
1
- # shadcn/ui 컴포넌트 전체 리스트
2
-
3
- ## ✅ 현재 추가된 컴포넌트 (48개)
4
-
5
- ### Form & Input (12개)
6
-
7
- - ✅ Button
8
- - ✅ Form
9
- - ✅ Input
10
- - ✅ Textarea
11
- - ✅ Select
12
- - ✅ Checkbox
13
- - ✅ Radio Group
14
- - ✅ Label
15
- - ✅ Switch
16
- - ✅ Slider
17
- - ✅ Input OTP
18
- - ✅ Combobox
19
-
20
- ### Data Display (7개)
21
-
22
- - ✅ Table
23
- - ✅ Card
24
- - ✅ Badge
25
- - ✅ Avatar
26
- - ✅ Separator
27
- - ✅ Skeleton
28
- - ✅ Progress
29
-
30
- ### Feedback & Overlay (10개)
31
-
32
- - ✅ Dialog
33
- - ✅ Alert Dialog
34
- - ✅ Alert
35
- - ✅ Toast + Toaster
36
- - ✅ Tooltip
37
- - ✅ Popover
38
- - ✅ Sheet
39
- - ✅ Hover Card
40
- - ✅ Drawer
41
-
42
- ### Navigation (6개)
43
-
44
- - ✅ Tabs
45
- - ✅ Pagination
46
- - ✅ Navigation Menu
47
- - ✅ Menubar
48
- - ✅ Breadcrumb
49
- - ✅ Command
50
-
51
- ### Menus (2개)
52
-
53
- - ✅ Dropdown Menu
54
- - ✅ Context Menu
55
-
56
- ### Date & Time (2개)
57
-
58
- - ✅ Calendar
59
- - ✅ Date Picker
60
-
61
- ### Layout (5개)
62
-
63
- - ✅ Scroll Area
64
- - ✅ Accordion
65
- - ✅ Collapsible
66
- - ✅ Resizable
67
- - ✅ Aspect Ratio
68
-
69
- ### Other (4개)
70
-
71
- - ✅ Carousel
72
- - ✅ Toggle
73
- - ✅ Toggle Group
74
- - ✅ Sonner (미사용 - drawer, toast 사용 권장)
75
-
76
- ---
77
-
78
- ## 🎯 필요시 추가 가능한 컴포넌트
79
-
80
- **모든 필수 컴포넌트가 설치 완료되었습니다!** 🎉
81
-
82
- 추가로 필요한 컴포넌트가 있으면 [shadcn/ui 공식 문서](https://ui.shadcn.com/docs/components)를 참고하세요.
83
-
84
- ---
85
-
86
- ## 💡 새 컴포넌트 추가 시 주의사항
87
-
88
- 추가 컴포넌트를 설치할 때:
89
-
90
- ```bash
91
- cd packages/react-components
92
- npx shadcn@latest add [컴포넌트명] --yes
93
- ```
94
-
95
- **설치 후 필수 작업:**
96
-
97
- 1. 컴포넌트 파일에서 `@/lib/utils` → `../../lib/utils` 경로 수정
98
- 2. 다른 컴포넌트 import도 `@/components/ui/xxx` → `./xxx` 상대 경로로 수정
99
- 3. `src/components/index.ts`에 export 추가
100
-
101
- ## 📚 참고
102
-
103
- - 공식 문서: https://ui.shadcn.com/docs/components
104
- - 모든 컴포넌트는 소스 코드로 추가되어 자유롭게 커스터마이징 가능
105
- - TypeScript 완벽 지원
106
- - Radix UI 기반으로 접근성(a11y) 우수
@@ -1,114 +0,0 @@
1
- # shadcn/ui 컴포넌트 설치 현황
2
-
3
- ## ✅ 설치 완료 (28개 컴포넌트)
4
-
5
- ### Form & Input (9개)
6
-
7
- - ✅ Button
8
- - ✅ Form
9
- - ✅ Input
10
- - ✅ Textarea
11
- - ✅ Select
12
- - ✅ Checkbox
13
- - ✅ Radio Group
14
- - ✅ Label
15
- - ✅ Switch
16
-
17
- ### Data Display (7개)
18
-
19
- - ✅ Table
20
- - ✅ Card
21
- - ✅ Badge
22
- - ✅ Avatar
23
- - ✅ Separator
24
- - ✅ Skeleton
25
- - ✅ Progress
26
-
27
- ### Feedback & Overlay (7개)
28
-
29
- - ✅ Dialog
30
- - ✅ Alert Dialog
31
- - ✅ Toast + Toaster
32
- - ✅ Tooltip
33
- - ✅ Popover
34
- - ✅ Sheet
35
-
36
- ### Navigation (2개)
37
-
38
- - ✅ Tabs
39
- - ✅ Pagination
40
-
41
- ### Menus (1개)
42
-
43
- - ✅ Dropdown Menu
44
-
45
- ### Date & Time (1개)
46
-
47
- - ✅ Calendar
48
-
49
- ### Layout (1개)
50
-
51
- - ✅ Scroll Area
52
-
53
- ### Hooks (1개)
54
-
55
- - ✅ useToast
56
-
57
- ## 📦 사용 방법
58
-
59
- ```typescript
60
- import {
61
- Button,
62
- Form,
63
- Input,
64
- Select,
65
- Table,
66
- Dialog,
67
- Toast,
68
- } from "@sonamu-kit/react-components/components";
69
-
70
- import { useToast } from "@sonamu-kit/react-components/hooks";
71
- ```
72
-
73
- ## 💡 추가 가능한 컴포넌트
74
-
75
- 필요시 아래 컴포넌트들을 추가로 설치할 수 있습니다:
76
-
77
- ```bash
78
- cd packages/react-components
79
-
80
- # Navigation
81
- npx shadcn@latest add navigation-menu
82
- npx shadcn@latest add menubar
83
- npx shadcn@latest add breadcrumb
84
- npx shadcn@latest add command
85
-
86
- # More Components
87
- npx shadcn@latest add accordion
88
- npx shadcn@latest add collapsible
89
- npx shadcn@latest add context-menu
90
- npx shadcn@latest add hover-card
91
- npx shadcn@latest add slider
92
- npx shadcn@latest add date-picker
93
- npx shadcn@latest add toggle
94
- npx shadcn@latest add toggle-group
95
- npx shadcn@latest add aspect-ratio
96
- npx shadcn@latest add resizable
97
- npx shadcn@latest add sonner
98
- npx shadcn@latest add drawer
99
- npx shadcn@latest add carousel
100
- ```
101
-
102
- ## 🎯 다음 단계
103
-
104
- 1. ✅ shadcn/ui 컴포넌트 추가 완료
105
- 2. ⏳ react-hook-form 기반 useTypeForm 구현
106
- 3. ⏳ useListParams URL 연동 구현
107
- 4. ⏳ tanstack-router 설정
108
- 5. ⏳ 실제 Admin 페이지에서 테스트
109
-
110
- ## 📚 참고
111
-
112
- - 공식 문서: https://ui.shadcn.com/docs/components
113
- - 패키지 위치: `/packages/react-components/src/components/ui/`
114
- - Export: `/packages/react-components/src/components/index.ts`