@hua-labs/ui 1.0.0 → 1.1.0-alpha.0.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 (348) hide show
  1. package/README.md +897 -210
  2. package/dist/ComponentLayout-BxCenSAm.d.mts +73 -0
  3. package/dist/advanced/dashboard.d.ts +7 -0
  4. package/dist/advanced/dashboard.d.ts.map +1 -0
  5. package/dist/advanced/motion.d.ts +2 -0
  6. package/dist/advanced/motion.d.ts.map +1 -0
  7. package/dist/advanced-dashboard.d.mts +4 -0
  8. package/dist/advanced-dashboard.js +2 -0
  9. package/dist/advanced-dashboard.js.map +1 -0
  10. package/dist/advanced-dashboard.mjs +2 -0
  11. package/dist/advanced-dashboard.mjs.map +1 -0
  12. package/dist/advanced-motion.d.mts +93 -0
  13. package/dist/advanced-motion.js +2 -0
  14. package/dist/advanced-motion.js.map +1 -0
  15. package/dist/advanced-motion.mjs +2 -0
  16. package/dist/advanced-motion.mjs.map +1 -0
  17. package/dist/advanced.d.mts +734 -0
  18. package/dist/advanced.d.ts +17 -0
  19. package/dist/advanced.d.ts.map +1 -0
  20. package/dist/advanced.js +2 -0
  21. package/dist/advanced.js.map +1 -0
  22. package/dist/advanced.mjs +2 -0
  23. package/dist/advanced.mjs.map +1 -0
  24. package/dist/chunk-627HOIRV.mjs +2 -0
  25. package/dist/chunk-627HOIRV.mjs.map +1 -0
  26. package/dist/chunk-ACEKLG37.mjs +2 -0
  27. package/dist/chunk-ACEKLG37.mjs.map +1 -0
  28. package/dist/chunk-E5PN4LUS.mjs +2 -0
  29. package/dist/chunk-E5PN4LUS.mjs.map +1 -0
  30. package/dist/chunk-KHEJZ3U4.mjs +2 -0
  31. package/dist/chunk-KHEJZ3U4.mjs.map +1 -0
  32. package/dist/chunk-MXGXBG63.mjs +2 -0
  33. package/dist/chunk-MXGXBG63.mjs.map +1 -0
  34. package/dist/chunk-R5KCFRYV.mjs +2 -0
  35. package/dist/chunk-R5KCFRYV.mjs.map +1 -0
  36. package/dist/chunk-UGSYQDR4.mjs +2 -0
  37. package/dist/chunk-UGSYQDR4.mjs.map +1 -0
  38. package/dist/chunk-UUHAXGMO.mjs +2 -0
  39. package/dist/chunk-UUHAXGMO.mjs.map +1 -0
  40. package/dist/chunk-VU264VFN.mjs +2 -0
  41. package/dist/chunk-VU264VFN.mjs.map +1 -0
  42. package/dist/chunk-ZFS4B5QT.mjs +2 -0
  43. package/dist/chunk-ZFS4B5QT.mjs.map +1 -0
  44. package/dist/components/Accordion.d.ts +109 -1
  45. package/dist/components/Accordion.d.ts.map +1 -1
  46. package/dist/components/Action.d.ts +68 -0
  47. package/dist/components/Action.d.ts.map +1 -0
  48. package/dist/components/ActionToolbar.d.ts +65 -0
  49. package/dist/components/ActionToolbar.d.ts.map +1 -0
  50. package/dist/components/Alert.d.ts +49 -0
  51. package/dist/components/Alert.d.ts.map +1 -1
  52. package/dist/components/Autocomplete.d.ts +88 -0
  53. package/dist/components/Autocomplete.d.ts.map +1 -0
  54. package/dist/components/Avatar.d.ts +71 -1
  55. package/dist/components/Avatar.d.ts.map +1 -1
  56. package/dist/components/Badge.d.ts +32 -2
  57. package/dist/components/Badge.d.ts.map +1 -1
  58. package/dist/components/Bookmark.d.ts +49 -0
  59. package/dist/components/Bookmark.d.ts.map +1 -0
  60. package/dist/components/BottomSheet.d.ts +91 -1
  61. package/dist/components/BottomSheet.d.ts.map +1 -1
  62. package/dist/components/Breadcrumb.d.ts +73 -14
  63. package/dist/components/Breadcrumb.d.ts.map +1 -1
  64. package/dist/components/Button.d.ts +82 -7
  65. package/dist/components/Button.d.ts.map +1 -1
  66. package/dist/components/Card.d.ts +122 -5
  67. package/dist/components/Card.d.ts.map +1 -1
  68. package/dist/components/ChatMessage.d.ts +67 -1
  69. package/dist/components/ChatMessage.d.ts.map +1 -1
  70. package/dist/components/Checkbox.d.ts +48 -2
  71. package/dist/components/Checkbox.d.ts.map +1 -1
  72. package/dist/components/Command.d.ts +82 -1
  73. package/dist/components/Command.d.ts.map +1 -1
  74. package/dist/components/ComponentLayout.d.ts +72 -0
  75. package/dist/components/ComponentLayout.d.ts.map +1 -0
  76. package/dist/components/ConfirmModal.d.ts +66 -1
  77. package/dist/components/ConfirmModal.d.ts.map +1 -1
  78. package/dist/components/Container.d.ts +39 -0
  79. package/dist/components/Container.d.ts.map +1 -1
  80. package/dist/components/ContextMenu.d.ts +51 -1
  81. package/dist/components/ContextMenu.d.ts.map +1 -1
  82. package/dist/components/DatePicker.d.ts +62 -0
  83. package/dist/components/DatePicker.d.ts.map +1 -0
  84. package/dist/components/Divider.d.ts +13 -3
  85. package/dist/components/Divider.d.ts.map +1 -1
  86. package/dist/components/Drawer.d.ts +103 -1
  87. package/dist/components/Drawer.d.ts.map +1 -1
  88. package/dist/components/Dropdown.d.ts +51 -1
  89. package/dist/components/Dropdown.d.ts.map +1 -1
  90. package/dist/components/EmotionAnalysis.d.ts +59 -1
  91. package/dist/components/EmotionAnalysis.d.ts.map +1 -1
  92. package/dist/components/EmotionButton.d.ts +35 -1
  93. package/dist/components/EmotionButton.d.ts.map +1 -1
  94. package/dist/components/EmotionMeter.d.ts +38 -2
  95. package/dist/components/EmotionMeter.d.ts.map +1 -1
  96. package/dist/components/EmotionSelector.d.ts +51 -1
  97. package/dist/components/EmotionSelector.d.ts.map +1 -1
  98. package/dist/components/FeatureCard.d.ts +61 -0
  99. package/dist/components/FeatureCard.d.ts.map +1 -0
  100. package/dist/components/Form.d.ts +114 -0
  101. package/dist/components/Form.d.ts.map +1 -0
  102. package/dist/components/Grid.d.ts +42 -1
  103. package/dist/components/Grid.d.ts.map +1 -1
  104. package/dist/components/HeroSection.d.ts +77 -0
  105. package/dist/components/HeroSection.d.ts.map +1 -0
  106. package/dist/components/Icon/Icon.d.ts +159 -0
  107. package/dist/components/Icon/Icon.d.ts.map +1 -0
  108. package/dist/components/Icon/IconProvider.d.ts +94 -0
  109. package/dist/components/Icon/IconProvider.d.ts.map +1 -0
  110. package/dist/components/Icon/icon-store.d.ts +21 -0
  111. package/dist/components/Icon/icon-store.d.ts.map +1 -0
  112. package/dist/components/Icon/index.d.ts +10 -0
  113. package/dist/components/Icon/index.d.ts.map +1 -0
  114. package/dist/components/InfoCard.d.ts +48 -0
  115. package/dist/components/InfoCard.d.ts.map +1 -0
  116. package/dist/components/Input.d.ts +40 -8
  117. package/dist/components/Input.d.ts.map +1 -1
  118. package/dist/components/Label.d.ts +50 -0
  119. package/dist/components/Label.d.ts.map +1 -0
  120. package/dist/components/LanguageToggle.d.ts +41 -1
  121. package/dist/components/LanguageToggle.d.ts.map +1 -1
  122. package/dist/components/Link.d.ts +52 -0
  123. package/dist/components/Link.d.ts.map +1 -0
  124. package/dist/components/LoadingSpinner.d.ts +44 -5
  125. package/dist/components/LoadingSpinner.d.ts.map +1 -1
  126. package/dist/components/Menu.d.ts +92 -1
  127. package/dist/components/Menu.d.ts.map +1 -1
  128. package/dist/components/Modal.d.ts +67 -5
  129. package/dist/components/Modal.d.ts.map +1 -1
  130. package/dist/components/Navigation.d.ts +72 -0
  131. package/dist/components/Navigation.d.ts.map +1 -0
  132. package/dist/components/PageNavigation.d.ts +48 -0
  133. package/dist/components/PageNavigation.d.ts.map +1 -0
  134. package/dist/components/PageTransition.d.ts +44 -1
  135. package/dist/components/PageTransition.d.ts.map +1 -1
  136. package/dist/components/Pagination.d.ts +52 -1
  137. package/dist/components/Pagination.d.ts.map +1 -1
  138. package/dist/components/Panel.d.ts +99 -0
  139. package/dist/components/Panel.d.ts.map +1 -0
  140. package/dist/components/Popover.d.ts +46 -1
  141. package/dist/components/Popover.d.ts.map +1 -1
  142. package/dist/components/Progress.d.ts +52 -3
  143. package/dist/components/Progress.d.ts.map +1 -1
  144. package/dist/components/Radio.d.ts +44 -2
  145. package/dist/components/Radio.d.ts.map +1 -1
  146. package/dist/components/ScrollArea.d.ts +53 -1
  147. package/dist/components/ScrollArea.d.ts.map +1 -1
  148. package/dist/components/ScrollIndicator.d.ts +43 -1
  149. package/dist/components/ScrollIndicator.d.ts.map +1 -1
  150. package/dist/components/ScrollProgress.d.ts +37 -0
  151. package/dist/components/ScrollProgress.d.ts.map +1 -1
  152. package/dist/components/ScrollToTop.d.ts +48 -11
  153. package/dist/components/ScrollToTop.d.ts.map +1 -1
  154. package/dist/components/SectionHeader.d.ts +42 -0
  155. package/dist/components/SectionHeader.d.ts.map +1 -0
  156. package/dist/components/Select.d.ts +59 -2
  157. package/dist/components/Select.d.ts.map +1 -1
  158. package/dist/components/Skeleton.d.ts +44 -1
  159. package/dist/components/Skeleton.d.ts.map +1 -1
  160. package/dist/components/Slider.d.ts +75 -0
  161. package/dist/components/Slider.d.ts.map +1 -0
  162. package/dist/components/Stack.d.ts +42 -1
  163. package/dist/components/Stack.d.ts.map +1 -1
  164. package/dist/components/StatsPanel.d.ts +72 -0
  165. package/dist/components/StatsPanel.d.ts.map +1 -0
  166. package/dist/components/Switch.d.ts +48 -2
  167. package/dist/components/Switch.d.ts.map +1 -1
  168. package/dist/components/Table.d.ts +206 -0
  169. package/dist/components/Table.d.ts.map +1 -0
  170. package/dist/components/Tabs.d.ts +123 -10
  171. package/dist/components/Tabs.d.ts.map +1 -1
  172. package/dist/components/Textarea.d.ts +48 -2
  173. package/dist/components/Textarea.d.ts.map +1 -1
  174. package/dist/components/ThemeProvider.d.ts +67 -2
  175. package/dist/components/ThemeProvider.d.ts.map +1 -1
  176. package/dist/components/ThemeToggle.d.ts +44 -0
  177. package/dist/components/ThemeToggle.d.ts.map +1 -1
  178. package/dist/components/Toast.d.ts +75 -1
  179. package/dist/components/Toast.d.ts.map +1 -1
  180. package/dist/components/Toggle.d.ts +62 -0
  181. package/dist/components/Toggle.d.ts.map +1 -0
  182. package/dist/components/Tooltip.d.ts +48 -1
  183. package/dist/components/Tooltip.d.ts.map +1 -1
  184. package/dist/components/Upload.d.ts +87 -0
  185. package/dist/components/Upload.d.ts.map +1 -0
  186. package/dist/components/advanced/AdvancedPageTransition.d.ts +25 -0
  187. package/dist/components/advanced/AdvancedPageTransition.d.ts.map +1 -0
  188. package/dist/components/advanced/index.d.ts +4 -0
  189. package/dist/components/advanced/index.d.ts.map +1 -0
  190. package/dist/components/advanced/usePageTransition.d.ts +33 -0
  191. package/dist/components/advanced/usePageTransition.d.ts.map +1 -0
  192. package/dist/components/advanced/usePageTransitionManager.d.ts +44 -0
  193. package/dist/components/advanced/usePageTransitionManager.d.ts.map +1 -0
  194. package/dist/components/dashboard/ActivityFeed.d.ts +87 -0
  195. package/dist/components/dashboard/ActivityFeed.d.ts.map +1 -0
  196. package/dist/components/dashboard/BarChart.d.ts +82 -0
  197. package/dist/components/dashboard/BarChart.d.ts.map +1 -0
  198. package/dist/components/dashboard/DashboardGrid.d.ts +44 -0
  199. package/dist/components/dashboard/DashboardGrid.d.ts.map +1 -0
  200. package/dist/components/dashboard/DashboardSidebar.d.ts +105 -0
  201. package/dist/components/dashboard/DashboardSidebar.d.ts.map +1 -0
  202. package/dist/components/dashboard/DashboardToolbar.d.ts +120 -0
  203. package/dist/components/dashboard/DashboardToolbar.d.ts.map +1 -0
  204. package/dist/components/dashboard/EmptyState.d.ts +61 -0
  205. package/dist/components/dashboard/EmptyState.d.ts.map +1 -0
  206. package/dist/components/dashboard/MembershipBadge.d.ts +45 -0
  207. package/dist/components/dashboard/MembershipBadge.d.ts.map +1 -0
  208. package/dist/components/dashboard/MerchantList.d.ts +98 -0
  209. package/dist/components/dashboard/MerchantList.d.ts.map +1 -0
  210. package/dist/components/dashboard/MetricCard.d.ts +75 -0
  211. package/dist/components/dashboard/MetricCard.d.ts.map +1 -0
  212. package/dist/components/dashboard/MiniBarChart.d.ts +60 -0
  213. package/dist/components/dashboard/MiniBarChart.d.ts.map +1 -0
  214. package/dist/components/dashboard/NotificationCard.d.ts +89 -0
  215. package/dist/components/dashboard/NotificationCard.d.ts.map +1 -0
  216. package/dist/components/dashboard/ProfileCard.d.ts +82 -0
  217. package/dist/components/dashboard/ProfileCard.d.ts.map +1 -0
  218. package/dist/components/dashboard/ProgressCard.d.ts +71 -0
  219. package/dist/components/dashboard/ProgressCard.d.ts.map +1 -0
  220. package/dist/components/dashboard/QuickActionCard.d.ts +63 -0
  221. package/dist/components/dashboard/QuickActionCard.d.ts.map +1 -0
  222. package/dist/components/dashboard/RoutingBreakdownCard.d.ts +88 -0
  223. package/dist/components/dashboard/RoutingBreakdownCard.d.ts.map +1 -0
  224. package/dist/components/dashboard/SettlementTimeline.d.ts +90 -0
  225. package/dist/components/dashboard/SettlementTimeline.d.ts.map +1 -0
  226. package/dist/components/dashboard/StatCard.d.ts +70 -0
  227. package/dist/components/dashboard/StatCard.d.ts.map +1 -0
  228. package/dist/components/dashboard/SummaryCard.d.ts +73 -0
  229. package/dist/components/dashboard/SummaryCard.d.ts.map +1 -0
  230. package/dist/components/dashboard/TransactionDetailDrawer.d.ts +183 -0
  231. package/dist/components/dashboard/TransactionDetailDrawer.d.ts.map +1 -0
  232. package/dist/components/dashboard/TransactionsTable.d.ts +137 -0
  233. package/dist/components/dashboard/TransactionsTable.d.ts.map +1 -0
  234. package/dist/components/dashboard/TrendChart.d.ts +75 -0
  235. package/dist/components/dashboard/TrendChart.d.ts.map +1 -0
  236. package/dist/components/dashboard/index.d.ts +41 -0
  237. package/dist/components/dashboard/index.d.ts.map +1 -0
  238. package/dist/components/scrollbar/scrollbar.d.ts +12 -0
  239. package/dist/components/scrollbar/scrollbar.d.ts.map +1 -0
  240. package/dist/dashboard-QMssHf5j.d.mts +1801 -0
  241. package/dist/feedback.d.mts +103 -0
  242. package/dist/feedback.d.ts +21 -0
  243. package/dist/feedback.d.ts.map +1 -0
  244. package/dist/feedback.js +2 -0
  245. package/dist/feedback.js.map +1 -0
  246. package/dist/feedback.mjs +2 -0
  247. package/dist/feedback.mjs.map +1 -0
  248. package/dist/form.d.mts +803 -0
  249. package/dist/form.d.ts +42 -0
  250. package/dist/form.d.ts.map +1 -0
  251. package/dist/form.js +2 -0
  252. package/dist/form.js.map +1 -0
  253. package/dist/form.mjs +2 -0
  254. package/dist/form.mjs.map +1 -0
  255. package/dist/hooks/useScrollToggle.d.ts +12 -0
  256. package/dist/hooks/useScrollToggle.d.ts.map +1 -0
  257. package/dist/icons-DoSGIez_.d.mts +135 -0
  258. package/dist/index.d.mts +3770 -0
  259. package/dist/index.d.ts +76 -38
  260. package/dist/index.d.ts.map +1 -1
  261. package/dist/index.js +37 -49
  262. package/dist/index.js.map +1 -0
  263. package/dist/index.mjs +37 -0
  264. package/dist/index.mjs.map +1 -0
  265. package/dist/lib/icon-aliases.d.ts +24 -0
  266. package/dist/lib/icon-aliases.d.ts.map +1 -0
  267. package/dist/lib/icon-names.d.ts +47 -0
  268. package/dist/lib/icon-names.d.ts.map +1 -0
  269. package/dist/lib/icon-providers.d.ts +559 -0
  270. package/dist/lib/icon-providers.d.ts.map +1 -0
  271. package/dist/lib/icons.d.ts +113 -24
  272. package/dist/lib/icons.d.ts.map +1 -1
  273. package/dist/lib/phosphor-icons.d.ts +6 -0
  274. package/dist/lib/phosphor-icons.d.ts.map +1 -0
  275. package/dist/lib/styles/colors.d.ts +131 -0
  276. package/dist/lib/styles/colors.d.ts.map +1 -0
  277. package/dist/lib/styles/index.d.ts +8 -0
  278. package/dist/lib/styles/index.d.ts.map +1 -0
  279. package/dist/lib/styles/utils.d.ts +87 -0
  280. package/dist/lib/styles/utils.d.ts.map +1 -0
  281. package/dist/lib/styles/variants.d.ts +79 -0
  282. package/dist/lib/styles/variants.d.ts.map +1 -0
  283. package/dist/lib/types/common.d.ts +80 -0
  284. package/dist/lib/types/common.d.ts.map +1 -0
  285. package/dist/lib/types/index.d.ts +6 -0
  286. package/dist/lib/types/index.d.ts.map +1 -0
  287. package/dist/lib/utils.d.ts +73 -1
  288. package/dist/lib/utils.d.ts.map +1 -1
  289. package/dist/navigation.d.mts +105 -0
  290. package/dist/navigation.d.ts +22 -0
  291. package/dist/navigation.d.ts.map +1 -0
  292. package/dist/navigation.js +2 -0
  293. package/dist/navigation.js.map +1 -0
  294. package/dist/navigation.mjs +2 -0
  295. package/dist/navigation.mjs.map +1 -0
  296. package/package.json +92 -25
  297. package/src/styles/toast.css +23 -0
  298. package/dist/components/Accordion.js +0 -84
  299. package/dist/components/Alert.js +0 -61
  300. package/dist/components/Avatar.js +0 -18
  301. package/dist/components/Badge.js +0 -15
  302. package/dist/components/BottomSheet.js +0 -96
  303. package/dist/components/Breadcrumb.js +0 -47
  304. package/dist/components/Button.js +0 -23
  305. package/dist/components/Card.js +0 -18
  306. package/dist/components/ChatMessage.js +0 -59
  307. package/dist/components/Checkbox.js +0 -30
  308. package/dist/components/Command.js +0 -119
  309. package/dist/components/ConfirmModal.js +0 -53
  310. package/dist/components/Container.js +0 -23
  311. package/dist/components/ContextMenu.js +0 -110
  312. package/dist/components/Divider.js +0 -39
  313. package/dist/components/Drawer.js +0 -79
  314. package/dist/components/Dropdown.js +0 -174
  315. package/dist/components/EmotionAnalysis.js +0 -40
  316. package/dist/components/EmotionButton.js +0 -16
  317. package/dist/components/EmotionMeter.js +0 -21
  318. package/dist/components/EmotionSelector.js +0 -46
  319. package/dist/components/Grid.js +0 -44
  320. package/dist/components/Icon.d.ts +0 -26
  321. package/dist/components/Icon.d.ts.map +0 -1
  322. package/dist/components/Icon.js +0 -48
  323. package/dist/components/Input.js +0 -25
  324. package/dist/components/LanguageToggle.js +0 -61
  325. package/dist/components/LoadingSpinner.js +0 -37
  326. package/dist/components/Menu.js +0 -122
  327. package/dist/components/Modal.js +0 -62
  328. package/dist/components/PageTransition.js +0 -39
  329. package/dist/components/Pagination.js +0 -87
  330. package/dist/components/Popover.js +0 -159
  331. package/dist/components/Progress.js +0 -51
  332. package/dist/components/Radio.js +0 -29
  333. package/dist/components/ScrollArea.js +0 -42
  334. package/dist/components/ScrollIndicator.js +0 -60
  335. package/dist/components/ScrollProgress.js +0 -39
  336. package/dist/components/ScrollToTop.js +0 -46
  337. package/dist/components/Select.js +0 -29
  338. package/dist/components/Skeleton.js +0 -71
  339. package/dist/components/Stack.js +0 -34
  340. package/dist/components/Switch.js +0 -29
  341. package/dist/components/Tabs.js +0 -117
  342. package/dist/components/Textarea.js +0 -31
  343. package/dist/components/ThemeProvider.js +0 -76
  344. package/dist/components/ThemeToggle.js +0 -49
  345. package/dist/components/Toast.js +0 -138
  346. package/dist/components/Tooltip.js +0 -102
  347. package/dist/lib/icons.js +0 -321
  348. package/dist/lib/utils.js +0 -5
@@ -1,9 +1,43 @@
1
- import * as React from "react";
1
+ import React from "react";
2
+ /**
3
+ * EmotionButton 컴포넌트의 props / EmotionButton component props
4
+ * @typedef {Object} EmotionButtonProps
5
+ * @property {string} emotion - 감정 이모지 또는 텍스트 / Emotion emoji or text
6
+ * @property {boolean} [isSelected=false] - 선택 상태 / Selected state
7
+ * @property {"sm" | "md" | "lg"} [size="md"] - 버튼 크기 / Button size
8
+ * @extends {React.ButtonHTMLAttributes<HTMLButtonElement>}
9
+ */
2
10
  export interface EmotionButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
3
11
  emotion: string;
4
12
  isSelected?: boolean;
5
13
  size?: "sm" | "md" | "lg";
6
14
  }
15
+ /**
16
+ * EmotionButton 컴포넌트 / EmotionButton component
17
+ *
18
+ * 감정을 선택하는 버튼 컴포넌트입니다.
19
+ * 이모지나 텍스트로 감정을 표시하며, 선택 상태를 지원합니다.
20
+ *
21
+ * Button component for selecting emotions.
22
+ * Displays emotion as emoji or text and supports selected state.
23
+ *
24
+ * @component
25
+ * @example
26
+ * // 기본 사용 / Basic usage
27
+ * <EmotionButton emotion="😊" />
28
+ *
29
+ * @example
30
+ * // 선택 상태 / Selected state
31
+ * <EmotionButton
32
+ * emotion="😊"
33
+ * isSelected
34
+ * size="lg"
35
+ * />
36
+ *
37
+ * @param {EmotionButtonProps} props - EmotionButton 컴포넌트의 props / EmotionButton component props
38
+ * @param {React.Ref<HTMLButtonElement>} ref - button 요소 ref / button element ref
39
+ * @returns {JSX.Element} EmotionButton 컴포넌트 / EmotionButton component
40
+ */
7
41
  declare const EmotionButton: React.ForwardRefExoticComponent<EmotionButtonProps & React.RefAttributes<HTMLButtonElement>>;
8
42
  export { EmotionButton };
9
43
  //# sourceMappingURL=EmotionButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmotionButton.d.ts","sourceRoot":"","sources":["../../src/components/EmotionButton.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,MAAM,WAAW,kBAAmB,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACvF,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;CAC1B;AAED,QAAA,MAAM,aAAa,8FAyBlB,CAAA;AAGD,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"EmotionButton.d.ts","sourceRoot":"","sources":["../../src/components/EmotionButton.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAmB,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACvF,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,QAAA,MAAM,aAAa,8FAyBlB,CAAA;AAGD,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -1,10 +1,46 @@
1
- import * as React from "react";
1
+ import React from "react";
2
+ import type { Color } from "../lib/types/common";
3
+ /**
4
+ * EmotionMeter 컴포넌트의 props / EmotionMeter component props
5
+ * @typedef {Object} EmotionMeterProps
6
+ * @property {number} value - 감정 강도 값 (0-max) / Emotion intensity value (0-max)
7
+ * @property {number} [max=100] - 최대값 / Maximum value
8
+ * @property {"sm" | "md" | "lg"} [size="md"] - 미터 크기 / Meter size
9
+ * @property {"blue" | "green" | "yellow" | "red"} [color="blue"] - 미터 색상 / Meter color
10
+ * @extends {React.HTMLAttributes<HTMLDivElement>}
11
+ */
2
12
  export interface EmotionMeterProps extends React.HTMLAttributes<HTMLDivElement> {
3
13
  value: number;
4
14
  max?: number;
5
15
  size?: "sm" | "md" | "lg";
6
- color?: "blue" | "green" | "yellow" | "red";
16
+ color?: "blue" | "green" | "yellow" | "red" | Color;
7
17
  }
18
+ /**
19
+ * EmotionMeter 컴포넌트 / EmotionMeter component
20
+ *
21
+ * 감정 강도를 표시하는 미터 컴포넌트입니다.
22
+ * Progress 컴포넌트와 유사하지만 감정 분석에 특화되어 있습니다.
23
+ *
24
+ * Meter component that displays emotion intensity.
25
+ * Similar to Progress component but specialized for emotion analysis.
26
+ *
27
+ * @component
28
+ * @example
29
+ * // 기본 사용 / Basic usage
30
+ * <EmotionMeter value={75} />
31
+ *
32
+ * @example
33
+ * // 다양한 색상 / Various colors
34
+ * <EmotionMeter
35
+ * value={80}
36
+ * color="green"
37
+ * size="lg"
38
+ * />
39
+ *
40
+ * @param {EmotionMeterProps} props - EmotionMeter 컴포넌트의 props / EmotionMeter component props
41
+ * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
42
+ * @returns {JSX.Element} EmotionMeter 컴포넌트 / EmotionMeter component
43
+ */
8
44
  declare const EmotionMeter: React.ForwardRefExoticComponent<EmotionMeterProps & React.RefAttributes<HTMLDivElement>>;
9
45
  export { EmotionMeter };
10
46
  //# sourceMappingURL=EmotionMeter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmotionMeter.d.ts","sourceRoot":"","sources":["../../src/components/EmotionMeter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,MAAM,WAAW,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC7E,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;CAC5C;AAED,QAAA,MAAM,YAAY,0FAqCjB,CAAA;AAGD,OAAO,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"EmotionMeter.d.ts","sourceRoot":"","sources":["../../src/components/EmotionMeter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAEhD;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC7E,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAA;CACpD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,QAAA,MAAM,YAAY,0FA4CjB,CAAA;AAGD,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -1,4 +1,22 @@
1
- import * as React from "react";
1
+ import React from "react";
2
+ /**
3
+ * EmotionSelector 컴포넌트의 props / EmotionSelector component props
4
+ * @typedef {Object} EmotionSelectorProps
5
+ * @property {string} [selectedEmotion] - 선택된 감정 키 / Selected emotion key
6
+ * @property {(emotion: string) => void} [onEmotionSelect] - 감정 선택 콜백 / Emotion selection callback
7
+ * @property {"grid" | "list" | "compact"} [layout="grid"] - 레이아웃 타입 / Layout type
8
+ * @property {boolean} [showIntensity=false] - 강도 조절 표시 여부 / Show intensity control
9
+ * @property {number} [intensity=50] - 감정 강도 (0-100) / Emotion intensity (0-100)
10
+ * @property {(intensity: number) => void} [onIntensityChange] - 강도 변경 콜백 / Intensity change callback
11
+ * @property {Array<Object>} [emotions] - 감정 목록 / Emotions list
12
+ * @property {string} emotions[].key - 감정 키 / Emotion key
13
+ * @property {string} emotions[].label - 감정 라벨 / Emotion label
14
+ * @property {string} [emotions[].icon] - 감정 아이콘 / Emotion icon
15
+ * @property {string} [emotions[].color] - 감정 색상 / Emotion color
16
+ * @property {"sm" | "md" | "lg"} [size="md"] - 감정 버튼 크기 / Emotion button size
17
+ * @property {"button" | "card" | "chip"} [variant="button"] - 감정 표시 스타일 / Emotion display style
18
+ * @extends {React.HTMLAttributes<HTMLDivElement>}
19
+ */
2
20
  interface EmotionSelectorProps extends React.HTMLAttributes<HTMLDivElement> {
3
21
  selectedEmotion?: string;
4
22
  onEmotionSelect?: (emotion: string) => void;
@@ -15,6 +33,38 @@ interface EmotionSelectorProps extends React.HTMLAttributes<HTMLDivElement> {
15
33
  size?: "sm" | "md" | "lg";
16
34
  variant?: "button" | "card" | "chip";
17
35
  }
36
+ /**
37
+ * EmotionSelector 컴포넌트 / EmotionSelector component
38
+ *
39
+ * 감정을 선택하는 컴포넌트입니다.
40
+ * 여러 감정 옵션을 제공하며, 강도 조절 기능을 포함할 수 있습니다.
41
+ *
42
+ * Component for selecting emotions.
43
+ * Provides multiple emotion options and can include intensity control.
44
+ *
45
+ * @component
46
+ * @example
47
+ * // 기본 사용 / Basic usage
48
+ * <EmotionSelector
49
+ * selectedEmotion="joy"
50
+ * onEmotionSelect={(emotion) => console.log(emotion)}
51
+ * />
52
+ *
53
+ * @example
54
+ * // 강도 조절 포함 / With intensity control
55
+ * <EmotionSelector
56
+ * selectedEmotion="calm"
57
+ * onEmotionSelect={handleEmotionSelect}
58
+ * showIntensity
59
+ * intensity={intensity}
60
+ * onIntensityChange={setIntensity}
61
+ * variant="card"
62
+ * />
63
+ *
64
+ * @param {EmotionSelectorProps} props - EmotionSelector 컴포넌트의 props / EmotionSelector component props
65
+ * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
66
+ * @returns {JSX.Element} EmotionSelector 컴포넌트 / EmotionSelector component
67
+ */
18
68
  declare const EmotionSelector: React.ForwardRefExoticComponent<EmotionSelectorProps & React.RefAttributes<HTMLDivElement>>;
19
69
  export { EmotionSelector };
20
70
  //# sourceMappingURL=EmotionSelector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmotionSelector.d.ts","sourceRoot":"","sources":["../../src/components/EmotionSelector.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,UAAU,oBAAqB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACzE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACpC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAC,CAAA;IACF,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;CACrC;AAaD,QAAA,MAAM,eAAe,6FAgJpB,CAAA;AAID,OAAO,EAAE,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"EmotionSelector.d.ts","sourceRoot":"","sources":["../../src/components/EmotionSelector.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB;;;;;;;;;;;;;;;;;GAiBG;AACH,UAAU,oBAAqB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACzE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACpC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAC,CAAA;IACF,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;CACrC;AAaD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,QAAA,MAAM,eAAe,6FAgJpB,CAAA;AAID,OAAO,EAAE,eAAe,EAAE,CAAA"}
@@ -0,0 +1,61 @@
1
+ import React from "react";
2
+ import type { IconName } from "../lib/icons";
3
+ /**
4
+ * FeatureCard 컴포넌트의 props / FeatureCard component props
5
+ * @typedef {Object} FeatureCardProps
6
+ * @property {IconName | string} [icon] - 아이콘 (IconName 또는 이미지 URL) / Icon (IconName or image URL)
7
+ * @property {string} title - 카드 제목 / Card title
8
+ * @property {string} description - 카드 설명 / Card description
9
+ * @property {"default" | "gradient" | "glass" | "neon"} [variant="default"] - FeatureCard 스타일 변형 / FeatureCard style variant
10
+ * @property {"sm" | "md" | "lg"} [size="md"] - FeatureCard 크기 / FeatureCard size
11
+ * @property {"scale" | "glow" | "slide" | "none"} [hover="scale"] - 호버 효과 / Hover effect
12
+ * @property {"blue" | "purple" | "green" | "orange" | "pink" | "custom"} [gradient="blue"] - 그라디언트 색상 / Gradient color
13
+ * @property {string} [customGradient] - 커스텀 그라디언트 클래스 / Custom gradient class
14
+ * @extends {React.HTMLAttributes<HTMLDivElement>}
15
+ */
16
+ export interface FeatureCardProps extends React.HTMLAttributes<HTMLDivElement> {
17
+ icon?: IconName | string;
18
+ title: string;
19
+ description: string;
20
+ variant?: "default" | "gradient" | "glass" | "neon";
21
+ size?: "sm" | "md" | "lg";
22
+ hover?: "scale" | "glow" | "slide" | "none";
23
+ gradient?: "blue" | "purple" | "green" | "orange" | "pink" | "custom";
24
+ customGradient?: string;
25
+ }
26
+ /**
27
+ * FeatureCard 컴포넌트 / FeatureCard component
28
+ *
29
+ * 기능을 소개하는 카드 컴포넌트입니다.
30
+ * 아이콘, 제목, 설명을 포함하며, 다양한 스타일과 호버 효과를 지원합니다.
31
+ *
32
+ * Card component that introduces features.
33
+ * Includes icon, title, and description, supports various styles and hover effects.
34
+ *
35
+ * @component
36
+ * @example
37
+ * // 기본 사용 / Basic usage
38
+ * <FeatureCard
39
+ * icon="star"
40
+ * title="고급 기능"
41
+ * description="강력한 기능을 제공합니다"
42
+ * />
43
+ *
44
+ * @example
45
+ * // Gradient 스타일 / Gradient style
46
+ * <FeatureCard
47
+ * icon="zap"
48
+ * title="빠른 성능"
49
+ * description="최적화된 성능"
50
+ * variant="gradient"
51
+ * gradient="purple"
52
+ * hover="glow"
53
+ * />
54
+ *
55
+ * @param {FeatureCardProps} props - FeatureCard 컴포넌트의 props / FeatureCard component props
56
+ * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
57
+ * @returns {JSX.Element} FeatureCard 컴포넌트 / FeatureCard component
58
+ */
59
+ declare const FeatureCard: React.ForwardRefExoticComponent<FeatureCardProps & React.RefAttributes<HTMLDivElement>>;
60
+ export { FeatureCard };
61
+ //# sourceMappingURL=FeatureCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureCard.d.ts","sourceRoot":"","sources":["../../src/components/FeatureCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE5C;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,gBAAiB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC5E,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAA;IACnD,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;IAC3C,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAA;IACrE,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,QAAA,MAAM,WAAW,yFA4EhB,CAAA;AAeD,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,114 @@
1
+ import React from "react";
2
+ /**
3
+ * Form 컴포넌트의 props / Form component props
4
+ * @typedef {Object} FormProps
5
+ * @property {(e: React.FormEvent<HTMLFormElement>) => void} [onSubmit] - 폼 제출 핸들러 / Form submit handler
6
+ * @property {"default" | "glass"} [variant="default"] - Form 스타일 변형 / Form style variant
7
+ * @extends {React.FormHTMLAttributes<HTMLFormElement>}
8
+ */
9
+ export interface FormProps extends React.FormHTMLAttributes<HTMLFormElement> {
10
+ onSubmit?: (e: React.FormEvent<HTMLFormElement>) => void;
11
+ variant?: "default" | "glass";
12
+ }
13
+ /**
14
+ * FormField 컴포넌트의 props / FormField component props
15
+ * @typedef {Object} FormFieldProps
16
+ * @property {string} [error] - 에러 메시지 / Error message
17
+ * @property {boolean} [required=false] - 필수 필드 여부 / Required field
18
+ * @extends {React.HTMLAttributes<HTMLDivElement>}
19
+ */
20
+ export interface FormFieldProps extends React.HTMLAttributes<HTMLDivElement> {
21
+ error?: string;
22
+ required?: boolean;
23
+ }
24
+ /**
25
+ * FormGroup 컴포넌트의 props / FormGroup component props
26
+ * @typedef {Object} FormGroupProps
27
+ * @property {boolean} [inline=false] - 인라인 레이아웃 여부 / Inline layout
28
+ * @extends {React.HTMLAttributes<HTMLDivElement>}
29
+ */
30
+ export interface FormGroupProps extends React.HTMLAttributes<HTMLDivElement> {
31
+ inline?: boolean;
32
+ }
33
+ /**
34
+ * Form 컴포넌트 / Form component
35
+ *
36
+ * 폼 컨테이너 컴포넌트입니다.
37
+ * FormField, FormGroup과 함께 사용하여 구조화된 폼을 구성합니다.
38
+ *
39
+ * Form container component.
40
+ * Used with FormField and FormGroup to create structured forms.
41
+ *
42
+ * @component
43
+ * @example
44
+ * // 기본 사용 / Basic usage
45
+ * <Form onSubmit={(e) => { e.preventDefault(); console.log('제출') }}>
46
+ * <FormField>
47
+ * <Label>이름</Label>
48
+ * <Input />
49
+ * </FormField>
50
+ * </Form>
51
+ *
52
+ * @example
53
+ * // Glass 스타일 / Glass style
54
+ * <Form variant="glass" onSubmit={handleSubmit}>
55
+ * <FormGroup>
56
+ * <FormField>
57
+ * <Label>이메일</Label>
58
+ * <Input type="email" />
59
+ * </FormField>
60
+ * </FormGroup>
61
+ * </Form>
62
+ *
63
+ * @param {FormProps} props - Form 컴포넌트의 props / Form component props
64
+ * @param {React.Ref<HTMLFormElement>} ref - form 요소 ref / form element ref
65
+ * @returns {JSX.Element} Form 컴포넌트 / Form component
66
+ */
67
+ declare const Form: React.ForwardRefExoticComponent<FormProps & React.RefAttributes<HTMLFormElement>>;
68
+ /**
69
+ * FormField 컴포넌트 / FormField component
70
+ *
71
+ * 폼 필드를 감싸는 컨테이너입니다.
72
+ * 에러 메시지를 표시하고 필수 필드 표시를 지원합니다.
73
+ *
74
+ * Container that wraps a form field.
75
+ * Displays error messages and supports required field indication.
76
+ *
77
+ * @component
78
+ * @example
79
+ * <FormField error="이 필드는 필수입니다" required>
80
+ * <Label>이름</Label>
81
+ * <Input />
82
+ * </FormField>
83
+ *
84
+ * @param {FormFieldProps} props - FormField 컴포넌트의 props / FormField component props
85
+ * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
86
+ * @returns {JSX.Element} FormField 컴포넌트 / FormField component
87
+ */
88
+ declare const FormField: React.ForwardRefExoticComponent<FormFieldProps & React.RefAttributes<HTMLDivElement>>;
89
+ /**
90
+ * FormGroup 컴포넌트 / FormGroup component
91
+ *
92
+ * 여러 폼 필드를 그룹화하는 컨테이너입니다.
93
+ * Container that groups multiple form fields.
94
+ *
95
+ * @component
96
+ * @example
97
+ * <FormGroup inline>
98
+ * <FormField>
99
+ * <Label>이름</Label>
100
+ * <Input />
101
+ * </FormField>
102
+ * <FormField>
103
+ * <Label>성</Label>
104
+ * <Input />
105
+ * </FormField>
106
+ * </FormGroup>
107
+ *
108
+ * @param {FormGroupProps} props - FormGroup 컴포넌트의 props / FormGroup component props
109
+ * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
110
+ * @returns {JSX.Element} FormGroup 컴포넌트 / FormGroup component
111
+ */
112
+ declare const FormGroup: React.ForwardRefExoticComponent<FormGroupProps & React.RefAttributes<HTMLDivElement>>;
113
+ export { Form, FormField, FormGroup };
114
+ //# sourceMappingURL=Form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../src/components/Form.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB;;;;;;GAMG;AACH,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,kBAAkB,CAAC,eAAe,CAAC;IAC1E,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,IAAI,CAAA;IACxD,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;CAC9B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC1E,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,QAAA,MAAM,IAAI,mFA6BT,CAAA;AAGD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,SAAS,uFA6Ed,CAAA;AAGD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,QAAA,MAAM,SAAS,uFAoBd,CAAA;AAGD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAA"}
@@ -1,4 +1,14 @@
1
- import * as React from "react";
1
+ import React from "react";
2
+ /**
3
+ * Grid 컴포넌트의 props
4
+ * @typedef {Object} GridProps
5
+ * @property {1|2|3|4|5|6|7|8|9|10|11|12} [cols=1] - 그리드 열 개수
6
+ * @property {"none" | "sm" | "md" | "lg" | "xl"} [gap="md"] - 그리드 아이템 간 간격
7
+ * @property {"none" | "sm" | "md" | "lg" | "xl"} [gapX] - 가로 간격 (gap보다 우선)
8
+ * @property {"none" | "sm" | "md" | "lg" | "xl"} [gapY] - 세로 간격
9
+ * @property {boolean} [responsive=true] - 반응형 그리드 활성화 (모바일: 1열, 태블릿: 2열, 데스크톱: 지정 열)
10
+ * @extends {React.HTMLAttributes<HTMLDivElement>}
11
+ */
2
12
  export interface GridProps extends React.HTMLAttributes<HTMLDivElement> {
3
13
  cols?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
4
14
  gap?: "none" | "sm" | "md" | "lg" | "xl";
@@ -6,6 +16,37 @@ export interface GridProps extends React.HTMLAttributes<HTMLDivElement> {
6
16
  gapY?: "none" | "sm" | "md" | "lg" | "xl";
7
17
  responsive?: boolean;
8
18
  }
19
+ /**
20
+ * Grid 컴포넌트
21
+ *
22
+ * CSS Grid를 사용한 그리드 레이아웃 컴포넌트입니다.
23
+ * 반응형 그리드를 지원하여 모바일부터 데스크톱까지 최적화된 레이아웃을 제공합니다.
24
+ *
25
+ * @component
26
+ * @example
27
+ * // 기본 3열 그리드
28
+ * <Grid cols={3} gap="md">
29
+ * <div>아이템 1</div>
30
+ * <div>아이템 2</div>
31
+ * <div>아이템 3</div>
32
+ * </Grid>
33
+ *
34
+ * @example
35
+ * // 가로/세로 간격 분리
36
+ * <Grid cols={4} gapX="lg" gapY="sm">
37
+ * {items.map(item => <div key={item.id}>{item.content}</div>)}
38
+ * </Grid>
39
+ *
40
+ * @example
41
+ * // 반응형 비활성화 (고정 그리드)
42
+ * <Grid cols={6} responsive={false} gap="lg">
43
+ * <div>고정 6열</div>
44
+ * </Grid>
45
+ *
46
+ * @param {GridProps} props - Grid 컴포넌트의 props
47
+ * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref
48
+ * @returns {JSX.Element} Grid 컴포넌트
49
+ */
9
50
  declare const Grid: React.ForwardRefExoticComponent<GridProps & React.RefAttributes<HTMLDivElement>>;
10
51
  export { Grid };
11
52
  //# sourceMappingURL=Grid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../../src/components/Grid.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACrE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;IACvD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACxC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzC,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,QAAA,MAAM,IAAI,kFA+DT,CAAA;AAGD,OAAO,EAAE,IAAI,EAAE,CAAA"}
1
+ {"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../../src/components/Grid.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACrE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;IACvD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACxC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzC,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,QAAA,MAAM,IAAI,kFA+DT,CAAA;AAGD,OAAO,EAAE,IAAI,EAAE,CAAA"}
@@ -0,0 +1,77 @@
1
+ import React from "react";
2
+ /**
3
+ * HeroSection 컴포넌트의 props / HeroSection component props
4
+ * @typedef {Object} HeroSectionProps
5
+ * @property {string} title - 히어로 섹션 제목 / Hero section title
6
+ * @property {string} [subtitle] - 히어로 섹션 부제목 / Hero section subtitle
7
+ * @property {string} description - 히어로 섹션 설명 / Hero section description
8
+ * @property {Object} [primaryAction] - 주요 액션 버튼 / Primary action button
9
+ * @property {string} primaryAction.label - 버튼 라벨 / Button label
10
+ * @property {string} primaryAction.href - 버튼 링크 / Button link
11
+ * @property {string} [primaryAction.icon] - 버튼 아이콘 / Button icon
12
+ * @property {Object} [secondaryAction] - 보조 액션 버튼 / Secondary action button
13
+ * @property {string} secondaryAction.label - 버튼 라벨 / Button label
14
+ * @property {string} secondaryAction.href - 버튼 링크 / Button link
15
+ * @property {string} [secondaryAction.icon] - 버튼 아이콘 / Button icon
16
+ * @property {"default" | "gradient" | "glass" | "neon"} [variant="default"] - HeroSection 스타일 변형 / HeroSection style variant
17
+ * @property {"none" | "gradient" | "particles" | "video"} [background="gradient"] - 배경 타입 / Background type
18
+ * @property {string} [customBackground] - 커스텀 배경 / Custom background
19
+ * @property {"sm" | "md" | "lg" | "xl"} [size="lg"] - HeroSection 크기 / HeroSection size
20
+ * @extends {React.HTMLAttributes<HTMLElement>}
21
+ */
22
+ export interface HeroSectionProps extends React.HTMLAttributes<HTMLElement> {
23
+ title: string;
24
+ subtitle?: string;
25
+ description: string;
26
+ primaryAction?: {
27
+ label: string;
28
+ href: string;
29
+ icon?: string;
30
+ };
31
+ secondaryAction?: {
32
+ label: string;
33
+ href: string;
34
+ icon?: string;
35
+ };
36
+ variant?: "default" | "gradient" | "glass" | "neon";
37
+ background?: "none" | "gradient" | "particles" | "video";
38
+ customBackground?: string;
39
+ size?: "sm" | "md" | "lg" | "xl";
40
+ }
41
+ /**
42
+ * HeroSection 컴포넌트 / HeroSection component
43
+ *
44
+ * 랜딩 페이지의 히어로 섹션을 제공하는 컴포넌트입니다.
45
+ * 제목, 설명, 액션 버튼을 포함하며, 다양한 배경 효과를 지원합니다.
46
+ *
47
+ * Component that provides hero section for landing pages.
48
+ * Includes title, description, and action buttons, supports various background effects.
49
+ *
50
+ * @component
51
+ * @example
52
+ * // 기본 사용 / Basic usage
53
+ * <HeroSection
54
+ * title="환영합니다"
55
+ * description="우리 서비스를 소개합니다"
56
+ * primaryAction={{ label: "시작하기", href: "/start" }}
57
+ * />
58
+ *
59
+ * @example
60
+ * // Gradient 배경, 두 개의 액션 버튼 / Gradient background, two action buttons
61
+ * <HeroSection
62
+ * title="혁신적인 솔루션"
63
+ * subtitle="차세대 플랫폼"
64
+ * description="최신 기술로 만든 플랫폼"
65
+ * variant="gradient"
66
+ * background="gradient"
67
+ * primaryAction={{ label: "시작하기", href: "/start", icon: "arrowRight" }}
68
+ * secondaryAction={{ label: "더 알아보기", href: "/about" }}
69
+ * />
70
+ *
71
+ * @param {HeroSectionProps} props - HeroSection 컴포넌트의 props / HeroSection component props
72
+ * @param {React.Ref<HTMLElement>} ref - section 요소 ref / section element ref
73
+ * @returns {JSX.Element} HeroSection 컴포넌트 / HeroSection component
74
+ */
75
+ declare const HeroSection: React.ForwardRefExoticComponent<HeroSectionProps & React.RefAttributes<HTMLElement>>;
76
+ export { HeroSection };
77
+ //# sourceMappingURL=HeroSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeroSection.d.ts","sourceRoot":"","sources":["../../src/components/HeroSection.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,gBAAiB,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IACzE,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE;QACd,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,eAAe,CAAC,EAAE;QAChB,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAA;IACnD,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAA;IACxD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,QAAA,MAAM,WAAW,sFAgKhB,CAAA;AAID,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,159 @@
1
+ import React from 'react';
2
+ import { emotionIcons, statusIcons } from '../../lib/icons';
3
+ import { type IconSet } from './IconProvider';
4
+ import { type PhosphorWeight } from './icon-store';
5
+ import type { AllIconName } from '../../lib/icon-names';
6
+ /**
7
+ * Icon 컴포넌트 Props
8
+ *
9
+ * Icon component props interface.
10
+ *
11
+ * @interface IconProps
12
+ */
13
+ export interface IconProps {
14
+ /** 아이콘 이름 / Icon name */
15
+ name: AllIconName;
16
+ /** 아이콘 크기 (숫자 또는 문자열) / Icon size (number or string) */
17
+ size?: number | string;
18
+ /** 추가 CSS 클래스 / Additional CSS classes */
19
+ className?: string;
20
+ /** 감정 아이콘 타입 / Emotion icon type */
21
+ emotion?: keyof typeof emotionIcons;
22
+ /** 상태 아이콘 타입 / Status icon type */
23
+ status?: keyof typeof statusIcons;
24
+ /** 아이콘 프로바이더 오버라이드 (전역 설정 무시) / Icon provider override (ignores global config) */
25
+ provider?: IconSet;
26
+ /** 부드러운 애니메이션 효과 / Smooth animation effect */
27
+ animated?: boolean;
28
+ /** 펄스 애니메이션 / Pulse animation */
29
+ pulse?: boolean;
30
+ /** 회전 애니메이션 / Spin animation */
31
+ spin?: boolean;
32
+ /** 바운스 애니메이션 / Bounce animation */
33
+ bounce?: boolean;
34
+ /** 색상 변형 / Color variant */
35
+ variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'muted';
36
+ /** Phosphor 아이콘 weight 오버라이드 / Phosphor icon weight override */
37
+ weight?: PhosphorWeight;
38
+ /** 스크린 리더용 라벨 (의미 있는 아이콘인 경우) / Screen reader label (for meaningful icons) */
39
+ 'aria-label'?: string;
40
+ /** 장식용 아이콘인 경우 true (스크린 리더에서 숨김) / Set to true for decorative icons (hidden from screen readers) */
41
+ 'aria-hidden'?: boolean;
42
+ }
43
+ /**
44
+ * Icon 컴포넌트
45
+ *
46
+ * 다중 아이콘 라이브러리(Lucide, Phosphor, Untitled)를 지원하는 통합 아이콘 컴포넌트입니다.
47
+ * IconProvider를 통해 전역 설정을 관리할 수 있으며, 개별 아이콘에서도 설정을 오버라이드할 수 있습니다.
48
+ *
49
+ * Icon component that supports multiple icon libraries (Lucide, Phosphor, Untitled).
50
+ * Global settings can be managed through IconProvider, and individual icons can override settings.
51
+ *
52
+ * @component
53
+ * @example
54
+ * ```tsx
55
+ * // 기본 사용 / Basic usage
56
+ * <Icon name="heart" />
57
+ *
58
+ * // 크기 지정 / Specify size
59
+ * <Icon name="user" size={24} />
60
+ *
61
+ * // 색상 변형 / Color variant
62
+ * <Icon name="check" variant="success" />
63
+ *
64
+ * // 애니메이션 / Animation
65
+ * <Icon name="loader" spin />
66
+ * <Icon name="heart" pulse />
67
+ *
68
+ * // 접근성 / Accessibility
69
+ * <Icon name="search" aria-label="검색" />
70
+ * <Icon name="decorative-icon" aria-hidden />
71
+ *
72
+ * // 감정 아이콘 / Emotion icon
73
+ * <Icon emotion="happy" />
74
+ *
75
+ * // 상태 아이콘 / Status icon
76
+ * <Icon status="loading" spin />
77
+ * ```
78
+ *
79
+ * @param props - Icon 컴포넌트 props / Icon component props
80
+ * @returns Icon 컴포넌트 / Icon component
81
+ */
82
+ declare const IconComponent: React.ForwardRefExoticComponent<IconProps & React.RefAttributes<HTMLSpanElement>>;
83
+ export declare const Icon: typeof IconComponent;
84
+ /**
85
+ * EmotionIcon 컴포넌트
86
+ *
87
+ * 감정을 표현하는 아이콘 컴포넌트입니다.
88
+ * Icon component for expressing emotions.
89
+ *
90
+ * @component
91
+ * @example
92
+ * ```tsx
93
+ * <EmotionIcon emotion="happy" />
94
+ * <EmotionIcon emotion="sad" size={24} />
95
+ * ```
96
+ */
97
+ export declare const EmotionIcon: React.ForwardRefExoticComponent<Omit<IconProps, "name"> & {
98
+ emotion: keyof typeof emotionIcons;
99
+ } & React.RefAttributes<HTMLSpanElement>>;
100
+ /**
101
+ * StatusIcon 컴포넌트
102
+ *
103
+ * 상태를 표현하는 아이콘 컴포넌트입니다.
104
+ * Icon component for expressing status.
105
+ *
106
+ * @component
107
+ * @example
108
+ * ```tsx
109
+ * <StatusIcon status="loading" spin />
110
+ * <StatusIcon status="success" variant="success" />
111
+ * ```
112
+ */
113
+ export declare const StatusIcon: React.ForwardRefExoticComponent<Omit<IconProps, "name"> & {
114
+ status: keyof typeof statusIcons;
115
+ } & React.RefAttributes<HTMLSpanElement>>;
116
+ /**
117
+ * LoadingIcon 컴포넌트
118
+ *
119
+ * 로딩 상태를 표시하는 전용 아이콘 컴포넌트입니다.
120
+ * Dedicated icon component for displaying loading status.
121
+ *
122
+ * @component
123
+ * @example
124
+ * ```tsx
125
+ * <LoadingIcon />
126
+ * <LoadingIcon size={32} />
127
+ * ```
128
+ */
129
+ export declare const LoadingIcon: React.ForwardRefExoticComponent<Omit<IconProps, "name" | "status"> & React.RefAttributes<HTMLDivElement>>;
130
+ /**
131
+ * SuccessIcon 컴포넌트
132
+ *
133
+ * 성공 상태를 표시하는 전용 아이콘 컴포넌트입니다.
134
+ * Dedicated icon component for displaying success status.
135
+ *
136
+ * @component
137
+ * @example
138
+ * ```tsx
139
+ * <SuccessIcon />
140
+ * <SuccessIcon size={24} />
141
+ * ```
142
+ */
143
+ export declare const SuccessIcon: React.ForwardRefExoticComponent<Omit<IconProps, "name" | "status"> & React.RefAttributes<HTMLDivElement>>;
144
+ /**
145
+ * ErrorIcon 컴포넌트
146
+ *
147
+ * 에러 상태를 표시하는 전용 아이콘 컴포넌트입니다.
148
+ * Dedicated icon component for displaying error status.
149
+ *
150
+ * @component
151
+ * @example
152
+ * ```tsx
153
+ * <ErrorIcon />
154
+ * <ErrorIcon size={24} />
155
+ * ```
156
+ */
157
+ export declare const ErrorIcon: React.ForwardRefExoticComponent<Omit<IconProps, "name" | "status"> & React.RefAttributes<HTMLDivElement>>;
158
+ export {};
159
+ //# sourceMappingURL=Icon.d.ts.map