@hua-labs/ui 2.0.2 → 2.1.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.
Files changed (214) hide show
  1. package/README.md +34 -161
  2. package/dist/{ComponentLayout-btJq4TjA.d.mts → ComponentLayout-DrZpz0yv.d.mts} +1 -1
  3. package/dist/Section-BWzyshgX.d.mts +67 -0
  4. package/dist/advanced/dashboard.d.ts.map +1 -1
  5. package/dist/advanced-dashboard.d.mts +1 -1
  6. package/dist/advanced-dashboard.js +4 -4
  7. package/dist/advanced-dashboard.js.map +1 -1
  8. package/dist/advanced-dashboard.mjs +3 -3
  9. package/dist/advanced-dashboard.mjs.map +1 -1
  10. package/dist/advanced-emotion.mjs +1 -1
  11. package/dist/advanced-motion.d.mts +65 -1
  12. package/dist/advanced-motion.js +14 -14
  13. package/dist/advanced-motion.js.map +1 -1
  14. package/dist/advanced-motion.mjs +1 -1
  15. package/dist/advanced.d.mts +4 -4
  16. package/dist/advanced.js +16 -16
  17. package/dist/advanced.js.map +1 -1
  18. package/dist/advanced.mjs +3 -3
  19. package/dist/advanced.mjs.map +1 -1
  20. package/dist/chunk-3CCF7U3P.mjs +3 -0
  21. package/dist/{chunk-IFSEJVOR.mjs.map → chunk-3CCF7U3P.mjs.map} +1 -1
  22. package/dist/chunk-3GAUTZXQ.mjs +3 -0
  23. package/dist/{chunk-X7ZIWYRC.mjs.map → chunk-3GAUTZXQ.mjs.map} +1 -1
  24. package/dist/chunk-42RGFEL2.mjs +3 -0
  25. package/dist/chunk-42RGFEL2.mjs.map +1 -0
  26. package/dist/chunk-4NJE7D6X.mjs +3 -0
  27. package/dist/chunk-4NJE7D6X.mjs.map +1 -0
  28. package/dist/chunk-6HVJFEDA.mjs +3 -0
  29. package/dist/{chunk-FSL373O6.mjs.map → chunk-6HVJFEDA.mjs.map} +1 -1
  30. package/dist/chunk-7OYT3QSY.mjs +3 -0
  31. package/dist/chunk-7OYT3QSY.mjs.map +1 -0
  32. package/dist/chunk-ANYZ56VB.mjs +3 -0
  33. package/dist/{chunk-QQCELXFD.mjs.map → chunk-ANYZ56VB.mjs.map} +1 -1
  34. package/dist/chunk-AOSXB5JJ.mjs +4 -0
  35. package/dist/{chunk-GLZKT7JN.mjs.map → chunk-AOSXB5JJ.mjs.map} +1 -1
  36. package/dist/chunk-B544MRF7.mjs +3 -0
  37. package/dist/{chunk-SDFHJ4GB.mjs.map → chunk-B544MRF7.mjs.map} +1 -1
  38. package/dist/chunk-CVWWS25A.mjs +3 -0
  39. package/dist/chunk-CVWWS25A.mjs.map +1 -0
  40. package/dist/chunk-DYNBM24D.mjs +3 -0
  41. package/dist/{chunk-OSCMSA2Q.mjs.map → chunk-DYNBM24D.mjs.map} +1 -1
  42. package/dist/{chunk-NBJUE7NR.mjs → chunk-FX57OSYG.mjs} +2 -2
  43. package/dist/{chunk-NBJUE7NR.mjs.map → chunk-FX57OSYG.mjs.map} +1 -1
  44. package/dist/chunk-IJSYSNM5.mjs +3 -0
  45. package/dist/{chunk-IN7RWQCJ.mjs.map → chunk-IJSYSNM5.mjs.map} +1 -1
  46. package/dist/chunk-KJZGOL2Z.mjs +3 -0
  47. package/dist/{chunk-LOYAJIWO.mjs.map → chunk-KJZGOL2Z.mjs.map} +1 -1
  48. package/dist/chunk-KYRIUUQP.mjs +3 -0
  49. package/dist/{chunk-PAEKNQWW.mjs.map → chunk-KYRIUUQP.mjs.map} +1 -1
  50. package/dist/chunk-LSA7DU3N.mjs +73 -0
  51. package/dist/chunk-LSA7DU3N.mjs.map +1 -0
  52. package/dist/chunk-MDLCJASB.mjs +3 -0
  53. package/dist/{chunk-LH77I6HO.mjs.map → chunk-MDLCJASB.mjs.map} +1 -1
  54. package/dist/chunk-N56BUOCD.mjs +3 -0
  55. package/dist/{chunk-XV3Y7QVU.mjs.map → chunk-N56BUOCD.mjs.map} +1 -1
  56. package/dist/chunk-OFYITQXI.mjs +13 -0
  57. package/dist/chunk-OFYITQXI.mjs.map +1 -0
  58. package/dist/chunk-OZNST3EZ.mjs +3 -0
  59. package/dist/{chunk-SGEP3CQE.mjs.map → chunk-OZNST3EZ.mjs.map} +1 -1
  60. package/dist/chunk-RS6RKW5U.mjs +13 -0
  61. package/dist/{chunk-6KTHJ3EL.mjs.map → chunk-RS6RKW5U.mjs.map} +1 -1
  62. package/dist/{chunk-C4OACMTB.mjs → chunk-TXBZZJNR.mjs} +2 -2
  63. package/dist/{chunk-C4OACMTB.mjs.map → chunk-TXBZZJNR.mjs.map} +1 -1
  64. package/dist/chunk-TZ4YSHMC.mjs +3 -0
  65. package/dist/{chunk-UWHCM3S6.mjs.map → chunk-TZ4YSHMC.mjs.map} +1 -1
  66. package/dist/chunk-U6CTBZ2U.mjs +3 -0
  67. package/dist/chunk-U6CTBZ2U.mjs.map +1 -0
  68. package/dist/{chunk-5BMH7223.mjs → chunk-WP7VFE77.mjs} +2 -2
  69. package/dist/{chunk-5BMH7223.mjs.map → chunk-WP7VFE77.mjs.map} +1 -1
  70. package/dist/{chunk-FFH4ZFKS.mjs → chunk-XCZMLKPK.mjs} +2 -2
  71. package/dist/{chunk-FFH4ZFKS.mjs.map → chunk-XCZMLKPK.mjs.map} +1 -1
  72. package/dist/chunk-XGHT7WMO.mjs +3 -0
  73. package/dist/chunk-XGHT7WMO.mjs.map +1 -0
  74. package/dist/chunk-XL4KTJ4L.mjs +3 -0
  75. package/dist/{chunk-VWSBJUNI.mjs.map → chunk-XL4KTJ4L.mjs.map} +1 -1
  76. package/dist/chunk-Z74YUUVT.mjs +3 -0
  77. package/dist/chunk-Z74YUUVT.mjs.map +1 -0
  78. package/dist/chunk-ZXZIHU7J.mjs +8 -0
  79. package/dist/{chunk-N7M6RIN4.mjs.map → chunk-ZXZIHU7J.mjs.map} +1 -1
  80. package/dist/components/DatePicker.d.ts.map +1 -1
  81. package/dist/components/Modal.d.ts.map +1 -1
  82. package/dist/components/Popover.d.ts +2 -0
  83. package/dist/components/Popover.d.ts.map +1 -1
  84. package/dist/components/Progress.d.ts +1 -0
  85. package/dist/components/Progress.d.ts.map +1 -1
  86. package/dist/components/Section.d.ts +44 -0
  87. package/dist/components/Section.d.ts.map +1 -0
  88. package/dist/components/advanced/AnimatedGradient.d.ts.map +1 -1
  89. package/dist/components/advanced/DotNav.d.ts +26 -0
  90. package/dist/components/advanced/DotNav.d.ts.map +1 -0
  91. package/dist/components/advanced/HorizontalScroll.d.ts +20 -0
  92. package/dist/components/advanced/HorizontalScroll.d.ts.map +1 -0
  93. package/dist/components/advanced/ImageReveal.d.ts +24 -0
  94. package/dist/components/advanced/ImageReveal.d.ts.map +1 -0
  95. package/dist/components/advanced/index.d.ts +6 -0
  96. package/dist/components/advanced/index.d.ts.map +1 -1
  97. package/dist/data.mjs +2 -2
  98. package/dist/data.mjs.map +1 -1
  99. package/dist/feedback.mjs +1 -1
  100. package/dist/form.js +3 -3
  101. package/dist/form.js.map +1 -1
  102. package/dist/form.mjs +4 -4
  103. package/dist/form.mjs.map +1 -1
  104. package/dist/{icons-Bj_nr8Ba.d.mts → icons-DmhQEH_E.d.mts} +6 -1
  105. package/dist/index.d.mts +9 -27
  106. package/dist/index.d.ts +4 -0
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +6 -6
  109. package/dist/index.js.map +1 -1
  110. package/dist/index.mjs +2 -2
  111. package/dist/index.mjs.map +1 -1
  112. package/dist/interactive.js +1 -1
  113. package/dist/interactive.js.map +1 -1
  114. package/dist/interactive.mjs +1 -1
  115. package/dist/interactive.mjs.map +1 -1
  116. package/dist/landing/LandingAbout.d.ts +3 -0
  117. package/dist/landing/LandingAbout.d.ts.map +1 -0
  118. package/dist/landing/LandingCTA.d.ts +3 -0
  119. package/dist/landing/LandingCTA.d.ts.map +1 -0
  120. package/dist/landing/LandingContact.d.ts +3 -0
  121. package/dist/landing/LandingContact.d.ts.map +1 -0
  122. package/dist/landing/LandingExperience.d.ts +3 -0
  123. package/dist/landing/LandingExperience.d.ts.map +1 -0
  124. package/dist/landing/LandingFeatures.d.ts +3 -0
  125. package/dist/landing/LandingFeatures.d.ts.map +1 -0
  126. package/dist/landing/LandingHero.d.ts +3 -0
  127. package/dist/landing/LandingHero.d.ts.map +1 -0
  128. package/dist/landing/LandingLogoCloud.d.ts +3 -0
  129. package/dist/landing/LandingLogoCloud.d.ts.map +1 -0
  130. package/dist/landing/LandingMetrics.d.ts +3 -0
  131. package/dist/landing/LandingMetrics.d.ts.map +1 -0
  132. package/dist/landing/LandingProjects.d.ts +3 -0
  133. package/dist/landing/LandingProjects.d.ts.map +1 -0
  134. package/dist/landing/LandingProvider.d.ts +4 -0
  135. package/dist/landing/LandingProvider.d.ts.map +1 -0
  136. package/dist/landing/LandingShowcase.d.ts +3 -0
  137. package/dist/landing/LandingShowcase.d.ts.map +1 -0
  138. package/dist/landing/LandingSkills.d.ts +3 -0
  139. package/dist/landing/LandingSkills.d.ts.map +1 -0
  140. package/dist/landing/LandingStats.d.ts +3 -0
  141. package/dist/landing/LandingStats.d.ts.map +1 -0
  142. package/dist/landing/LandingTestimonials.d.ts +3 -0
  143. package/dist/landing/LandingTestimonials.d.ts.map +1 -0
  144. package/dist/landing/index.d.ts +47 -0
  145. package/dist/landing/index.d.ts.map +1 -0
  146. package/dist/landing/themes/app.d.ts +3 -0
  147. package/dist/landing/themes/app.d.ts.map +1 -0
  148. package/dist/landing/themes/corporate.d.ts +3 -0
  149. package/dist/landing/themes/corporate.d.ts.map +1 -0
  150. package/dist/landing/themes/dashboard.d.ts +3 -0
  151. package/dist/landing/themes/dashboard.d.ts.map +1 -0
  152. package/dist/landing/themes/immersive.d.ts +3 -0
  153. package/dist/landing/themes/immersive.d.ts.map +1 -0
  154. package/dist/landing/themes/index.d.ts +15 -0
  155. package/dist/landing/themes/index.d.ts.map +1 -0
  156. package/dist/landing/themes/marketing.d.ts +3 -0
  157. package/dist/landing/themes/marketing.d.ts.map +1 -0
  158. package/dist/landing/themes/portfolio.d.ts +3 -0
  159. package/dist/landing/themes/portfolio.d.ts.map +1 -0
  160. package/dist/landing/themes/product.d.ts +3 -0
  161. package/dist/landing/themes/product.d.ts.map +1 -0
  162. package/dist/landing/types.d.ts +346 -0
  163. package/dist/landing/types.d.ts.map +1 -0
  164. package/dist/landing.d.mts +417 -0
  165. package/dist/landing.js +100 -0
  166. package/dist/landing.js.map +1 -0
  167. package/dist/landing.mjs +31 -0
  168. package/dist/landing.mjs.map +1 -0
  169. package/dist/lib/icons.d.ts +6 -1
  170. package/dist/lib/icons.d.ts.map +1 -1
  171. package/dist/navigation.d.mts +1 -1
  172. package/dist/navigation.js +2 -2
  173. package/dist/navigation.js.map +1 -1
  174. package/dist/navigation.mjs +1 -1
  175. package/dist/navigation.mjs.map +1 -1
  176. package/dist/overlay.d.mts +2 -0
  177. package/dist/overlay.js +1 -1
  178. package/dist/overlay.js.map +1 -1
  179. package/dist/overlay.mjs +1 -1
  180. package/dist/overlay.mjs.map +1 -1
  181. package/dist/sdui.js +4 -4
  182. package/dist/sdui.js.map +1 -1
  183. package/dist/sdui.mjs +1 -1
  184. package/dist/sdui.mjs.map +1 -1
  185. package/package.json +18 -7
  186. package/src/styles/landing.css +107 -0
  187. package/src/styles/utilities.css +58 -0
  188. package/dist/chunk-6KTHJ3EL.mjs +0 -13
  189. package/dist/chunk-COR6CDMA.mjs +0 -83
  190. package/dist/chunk-COR6CDMA.mjs.map +0 -1
  191. package/dist/chunk-FSL373O6.mjs +0 -3
  192. package/dist/chunk-GLZKT7JN.mjs +0 -4
  193. package/dist/chunk-HN5LSP6L.mjs +0 -3
  194. package/dist/chunk-HN5LSP6L.mjs.map +0 -1
  195. package/dist/chunk-IFSEJVOR.mjs +0 -3
  196. package/dist/chunk-IN7RWQCJ.mjs +0 -3
  197. package/dist/chunk-LH77I6HO.mjs +0 -3
  198. package/dist/chunk-LOYAJIWO.mjs +0 -3
  199. package/dist/chunk-LPAG7DCA.mjs +0 -3
  200. package/dist/chunk-LPAG7DCA.mjs.map +0 -1
  201. package/dist/chunk-N7M6RIN4.mjs +0 -8
  202. package/dist/chunk-OSCMSA2Q.mjs +0 -3
  203. package/dist/chunk-PAEKNQWW.mjs +0 -3
  204. package/dist/chunk-QQCELXFD.mjs +0 -3
  205. package/dist/chunk-RPUS7G7Q.mjs +0 -3
  206. package/dist/chunk-RPUS7G7Q.mjs.map +0 -1
  207. package/dist/chunk-SDFHJ4GB.mjs +0 -3
  208. package/dist/chunk-SGEP3CQE.mjs +0 -3
  209. package/dist/chunk-UUHAXGMO.mjs +0 -3
  210. package/dist/chunk-UUHAXGMO.mjs.map +0 -1
  211. package/dist/chunk-UWHCM3S6.mjs +0 -3
  212. package/dist/chunk-VWSBJUNI.mjs +0 -3
  213. package/dist/chunk-X7ZIWYRC.mjs +0 -3
  214. package/dist/chunk-XV3Y7QVU.mjs +0 -3
package/README.md CHANGED
@@ -23,7 +23,7 @@ Accessible, TypeScript-first component library for React applications. Provides
23
23
  pnpm add @hua-labs/ui
24
24
  ```
25
25
 
26
- > Peer dependencies: @dnd-kit/core ^6.3.1, @dnd-kit/sortable ^10.0.0, @dnd-kit/utilities ^3.2.2, react >=19.0.0, react-dom >=19.0.0
26
+ > Peer dependencies: @dnd-kit/core ^6.3.1, @dnd-kit/sortable ^10.0.0, @dnd-kit/utilities ^3.2.2, @hua-labs/motion-core >=2.0.0, react >=19.0.0, react-dom >=19.0.0
27
27
 
28
28
  ## Quick Start
29
29
 
@@ -51,171 +51,44 @@ function App() {
51
51
 
52
52
  | Export | Type | Description |
53
53
  |--------|------|-------------|
54
- | `Button` | component | |
55
- | `Action` | component | |
56
- | `Input` | component | |
57
- | `NumberInput` | component | |
58
- | `Link` | component | |
59
- | `Icon` | component | |
60
- | `EmotionIcon` | component | |
61
- | `StatusIcon` | component | |
62
- | `LoadingIcon` | component | |
63
- | `SuccessIcon` | component | |
64
- | `ErrorIcon` | component | |
65
- | `Avatar` | component | |
66
- | `AvatarImage` | component | |
67
- | `AvatarFallback` | component | |
68
- | `Modal` | component | |
69
- | `Container` | component | |
70
- | `Grid` | component | |
71
- | `Stack` | component | |
72
- | `Divider` | component | |
73
- | `Card` | component | |
74
- | `CardHeader` | component | |
75
- | `CardFooter` | component | |
76
- | `CardTitle` | component | |
77
- | `CardDescription` | component | |
78
- | `CardContent` | component | |
79
- | `Panel` | component | |
80
- | `ActionToolbar` | component | |
81
- | `ComponentLayout` | component | |
82
- | `Badge` | component | |
83
- | `Progress` | component | |
84
- | `ProgressSuccess` | component | |
85
- | `ProgressWarning` | component | |
86
- | `ProgressError` | component | |
87
- | `ProgressInfo` | component | |
88
- | `ProgressGroup` | component | |
89
- | `Skeleton` | component | |
90
- | `SkeletonText` | component | |
91
- | `SkeletonCircle` | component | |
92
- | `SkeletonRectangle` | component | |
93
- | `SkeletonRounded` | component | |
94
- | `SkeletonCard` | component | |
95
- | `SkeletonAvatar` | component | |
96
- | `SkeletonImage` | component | |
97
- | `SkeletonUserProfile` | component | |
98
- | `SkeletonList` | component | |
99
- | `SkeletonTable` | component | |
100
- | `Alert` | component | |
101
- | `AlertSuccess` | component | |
102
- | `AlertWarning` | component | |
103
- | `AlertError` | component | |
104
- | `AlertInfo` | component | |
105
- | `ToastProvider` | component | |
106
- | `useToast` | hook | |
107
- | `useToastSafe` | hook | |
108
- | `LoadingSpinner` | component | |
109
- | `Tooltip` | component | |
110
- | `TooltipLight` | component | |
111
- | `TooltipDark` | component | |
112
- | `Label` | component | |
113
- | `Switch` | component | |
114
- | `Toggle` | component | |
115
- | `ScrollArea` | component | |
116
- | `ScrollToTop` | component | |
117
- | `ThemeProvider` | component | |
118
- | `ThemeToggle` | component | |
119
- | `useTheme` | hook | |
120
- | `iconCategories` | function | |
121
- | `emotionIcons` | function | |
122
- | `statusIcons` | function | |
123
- | `iconNames` | function | |
124
- | `iconProviderMapping` | function | |
125
- | `isValidIconName` | function | |
126
- | `getIconNameForProvider` | function | |
127
- | `ICON_ALIASES` | component | |
128
- | `resolveIconAlias` | function | |
129
- | `getIconAliases` | function | |
130
- | `IconProvider` | component | |
131
- | `useIconContext` | hook | |
132
- | `defaultIconConfig` | function | |
133
- | `getDefaultStrokeWidth` | function | |
134
- | `merge` | function | |
135
- | `mergeIf` | function | |
136
- | `mergeMap` | function | |
137
- | `cn` | function | |
138
- | `formatRelativeTime` | function | |
139
- | `Slot` | component | |
140
- | `composeRefs` | function | |
141
- | `mergeProps` | function | |
142
- | `createColorStyles` | function | |
143
- | `useColorStyles` | hook | |
144
- | `createVariantStyles` | function | |
145
- | `createSizeStyles` | function | |
146
- | `createRoundedStyles` | function | |
147
- | `createShadowStyles` | function | |
148
- | `createHoverStyles` | function | |
149
- | `HUA_SPRING_EASING` | component | |
150
- | `withDarkMode` | function | |
151
- | `createGradient` | function | |
152
- | `withOpacity` | function | |
153
- | `isTextWhite` | function | |
154
- | `isGradientVariant` | function | |
155
- | `responsive` | function | |
156
- | `conditionalClass` | function | |
157
- | `useMicroMotion` | hook | |
158
- | `getMicroMotionClasses` | function | |
159
- | `EASING_FUNCTIONS` | component | |
160
- | `DURATIONS` | component | |
161
- | `COMPONENT_MOTION_DEFAULTS` | component | |
162
- | `CSS_MOTION_VARS` | component | |
163
- | `useInView` | hook | |
164
- | `useScrollProgress` | hook | |
165
- | `useMouse` | hook | |
166
- | `useReducedMotion` | hook | |
167
- | `useWindowSize` | hook | |
168
- | `ButtonProps` | type | |
169
- | `NumberInputProps` | type | |
170
- | `IconProps` | type | |
171
- | `ModalProps` | type | |
172
- | `CardProps` | type | |
173
- | `CardHeaderProps` | type | |
174
- | `CardTitleProps` | type | |
175
- | `CardDescriptionProps` | type | |
176
- | `CardContentProps` | type | |
177
- | `CardFooterProps` | type | |
178
- | `ActionToolbarProps` | type | |
179
- | `ActionButton` | type | |
180
- | `Toast` | type | |
181
- | `ToggleProps` | type | |
182
- | `ThemeProviderProps` | type | |
183
- | `ThemeProviderState` | type | |
184
- | `IconName` | type | |
185
- | `ProjectIconName` | type | |
186
- | `AllIconName` | type | |
187
- | `IconProviderProps` | type | |
188
- | `IconSet` | type | |
189
- | `PhosphorWeight` | type | |
190
- | `IconConfig` | type | |
191
- | `SlotProps` | type | |
192
- | `ColorStyleConfig` | type | |
193
- | `ColorStyles` | type | |
194
- | `SizeStyles` | type | |
195
- | `Rounded` | type | |
196
- | `Shadow` | type | |
197
- | `HoverEffect` | type | |
198
- | `MicroMotionConfig` | type | |
199
- | `MicroMotionPreset` | type | |
200
- | `MicroMotionState` | type | |
201
- | `Color` | type | |
202
- | `Size` | type | |
203
- | `BaseVariant` | type | |
204
- | `ExtendedVariant` | type | |
205
- | `UseInViewOptions` | type | |
206
- | `UseInViewReturn` | type | |
207
- | `UseScrollProgressOptions` | type | |
208
- | `UseScrollProgressReturn` | type | |
209
- | `UseMouseOptions` | type | |
210
- | `UseMouseReturn` | type | |
211
- | `UseWindowSizeOptions` | type | |
212
- | `UseWindowSizeReturn` | type | |
54
+ | `Button` | component | Primary action button with variants, sizes, and loading state |
55
+ | `Action` | component | Compact icon action button |
56
+ | `Input` | component | Text input with validation, prefix/suffix, and error states |
57
+ | `NumberInput` | component | Numeric input with increment/decrement controls |
58
+ | `Link` | component | Styled anchor with router integration |
59
+ | `Icon` | component | Universal icon component (Lucide, Phosphor, custom) |
60
+ | `Avatar` | component | User avatar with image fallback |
61
+ | `Modal` | component | Dialog overlay with backdrop and focus trap |
62
+ | `Container` | component | Responsive max-width container |
63
+ | `Grid` | component | CSS Grid layout wrapper |
64
+ | `Stack` | component | Flex stack layout (vertical/horizontal) |
65
+ | `Divider` | component | Visual separator (horizontal/vertical) |
66
+ | `Card` | component | Content container with header, body, footer slots |
67
+ | `Panel` | component | Collapsible content panel |
68
+ | `Badge` | component | Status badge with color variants |
69
+ | `Progress` | component | Progress bar with percentage |
70
+ | `Skeleton` | component | Content placeholder during loading |
71
+ | `Alert` | component | Inline alert with success/warning/error/info variants |
72
+ | `ToastProvider` | component | Toast notification provider |
73
+ | `useToast` | hook | Imperative toast API — toast.success(), toast.error() |
74
+ | `LoadingSpinner` | component | Animated loading indicator |
75
+ | `Tooltip` | component | Hover tooltip with positioning |
76
+ | `Label` | component | Form label with required indicator |
77
+ | `Switch` | component | Toggle switch for boolean values |
78
+ | `Toggle` | component | Pressable toggle button |
79
+ | `ScrollArea` | component | Custom scrollbar container |
80
+ | `ScrollToTop` | component | Scroll-to-top floating button |
81
+ | `ThemeProvider` | component | Dark/light theme context provider |
82
+ | `ThemeToggle` | component | Theme switch button |
83
+ | `useTheme` | hook | Theme context hook — { theme, setTheme } |
84
+ | `IconProvider` | component | Icon configuration context provider |
85
+ | `cn` | function | Tailwind-safe class name merging (clsx + tailwind-merge) |
86
+ | `Slot` | component | Polymorphic slot for asChild pattern |
213
87
 
214
88
 
215
89
  ## Related Packages
216
90
 
217
91
  - [`@hua-labs/hua`](https://www.npmjs.com/package/@hua-labs/hua)
218
- - [`@hua-labs/ui-dashboard`](https://www.npmjs.com/package/@hua-labs/ui-dashboard)
219
92
 
220
93
  ## License
221
94
 
@@ -1,4 +1,4 @@
1
- import { I as IconName } from './icons-Bj_nr8Ba.mjs';
1
+ import { I as IconName } from './icons-DmhQEH_E.mjs';
2
2
  import React$1 from 'react';
3
3
 
4
4
  /**
@@ -0,0 +1,67 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import React from 'react';
3
+ import { VariantProps } from 'class-variance-authority';
4
+
5
+ /**
6
+ * Container 컴포넌트의 props
7
+ */
8
+ interface ContainerProps extends React.HTMLAttributes<HTMLDivElement> {
9
+ size?: "sm" | "md" | "lg" | "xl" | "full";
10
+ padding?: "none" | "sm" | "md" | "lg" | "xl";
11
+ centered?: boolean;
12
+ fluid?: boolean;
13
+ }
14
+ /**
15
+ * Container 컴포넌트
16
+ *
17
+ * 콘텐츠를 감싸는 컨테이너 컴포넌트입니다.
18
+ * 반응형 최대 너비와 패딩을 제공하여 일관된 레이아웃을 구성합니다.
19
+ *
20
+ * @example
21
+ * <Container><h1>제목</h1></Container>
22
+ * <Container size="sm" padding="none"><div>콘텐츠</div></Container>
23
+ * <Container fluid padding="xl"><div>전체 너비</div></Container>
24
+ */
25
+ declare const Container: React.ForwardRefExoticComponent<ContainerProps & React.RefAttributes<HTMLDivElement>>;
26
+
27
+ declare const sectionVariants: (props?: ({
28
+ spacing?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
29
+ background?: "none" | "primary" | "muted" | "accent" | null | undefined;
30
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
31
+ interface SectionHeaderConfig {
32
+ title: string;
33
+ subtitle?: string;
34
+ action?: React.ReactNode;
35
+ /** section-line 데코레이터 표시 @default true */
36
+ decorator?: boolean;
37
+ /** 텍스트 정렬 @default 'center' */
38
+ align?: 'left' | 'center';
39
+ }
40
+ interface SectionProps extends React.HTMLAttributes<HTMLElement>, VariantProps<typeof sectionVariants> {
41
+ /** Container 사이즈 @default 'lg' */
42
+ container?: ContainerProps['size'];
43
+ /** Container 패딩 @default 'none' */
44
+ containerPadding?: ContainerProps['padding'];
45
+ /** 섹션 헤더 설정 */
46
+ header?: SectionHeaderConfig;
47
+ /** 풀위드 모드 (Container 없이 직접) */
48
+ fullWidth?: boolean;
49
+ }
50
+ /**
51
+ * Section 컴포넌트
52
+ *
53
+ * 랜딩 페이지 섹션의 보일러플레이트를 줄이는 시맨틱 래퍼.
54
+ * 내부적으로 Container를 사용하며, header prop으로 제목/부제/데코레이터를 자동 생성합니다.
55
+ *
56
+ * @example
57
+ * <Section header={{ title: "제목", subtitle: "부제" }}>
58
+ * {children}
59
+ * </Section>
60
+ *
61
+ * <Section spacing="xl" background="muted" fullWidth>
62
+ * {fullWidthContent}
63
+ * </Section>
64
+ */
65
+ declare const Section: React.ForwardRefExoticComponent<SectionProps & React.RefAttributes<HTMLElement>>;
66
+
67
+ export { Container as C, type SectionProps as S, type ContainerProps as a, Section as b, type SectionHeaderConfig as c, sectionVariants as s };
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/advanced/dashboard.ts"],"names":[],"mappings":"AAIA,cAAc,yBAAyB,CAAC;AACxC,mBAAmB,yBAAyB,CAAC;AAG7C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/advanced/dashboard.ts"],"names":[],"mappings":"AAEA,cAAc,yBAAyB,CAAC;AACxC,mBAAmB,yBAAyB,CAAC;AAG7C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import React$1 from 'react';
2
- import { I as IconName } from './icons-Bj_nr8Ba.mjs';
2
+ import { I as IconName } from './icons-DmhQEH_E.mjs';
3
3
  import { C as Color, E as ExtendedVariant } from './common-YLvZxA_K.mjs';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import '@phosphor-icons/react';