shadcn-glass-ui 2.3.1 → 2.4.0

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 (478) hide show
  1. package/dist/cli/index.cjs +1 -1
  2. package/dist/components.cjs +4 -4
  3. package/dist/components.mjs +1 -1
  4. package/dist/hooks.cjs +2 -2
  5. package/dist/index.cjs +196 -5
  6. package/dist/index.d.ts +4 -1
  7. package/dist/index.mjs +158 -2
  8. package/dist/r/modal-glass.json +3 -2
  9. package/dist/r/progress-glass.json +2 -2
  10. package/dist/r/registry.json +7 -1
  11. package/dist/r/sheet-glass.json +44 -0
  12. package/dist/shadcn-glass-ui.css +1 -1
  13. package/dist/{theme-context-7NcW0KZL.cjs → theme-context-C-vx8lHq.cjs} +2 -2
  14. package/dist/themes.cjs +1 -1
  15. package/dist/{trust-score-card-glass-DtgFygh5.cjs → trust-score-card-glass-BcZhKCFm.cjs} +146 -4
  16. package/dist/{trust-score-card-glass-BGqBcdyJ.mjs → trust-score-card-glass-CguUC0Iy.mjs} +12 -2
  17. package/dist/{use-focus-BFBcpBh1.cjs → use-focus-BoO-8ZPI.cjs} +2 -2
  18. package/dist/{use-wallpaper-tint-DTTStm5f.cjs → use-wallpaper-tint-BaKRGsRu.cjs} +2 -2
  19. package/dist/{utils-CiuCe_Aq.cjs → utils-DEM7daK7.cjs} +2 -2
  20. package/dist/utils.cjs +1 -1
  21. package/package.json +21 -3
  22. package/dist/components/blocks/avatar-gallery/index.d.ts +0 -2
  23. package/dist/components/blocks/avatar-gallery/index.d.ts.map +0 -1
  24. package/dist/components/blocks/avatar-gallery/page.d.ts +0 -7
  25. package/dist/components/blocks/avatar-gallery/page.d.ts.map +0 -1
  26. package/dist/components/blocks/badges/index.d.ts +0 -2
  27. package/dist/components/blocks/badges/index.d.ts.map +0 -1
  28. package/dist/components/blocks/badges/page.d.ts +0 -7
  29. package/dist/components/blocks/badges/page.d.ts.map +0 -1
  30. package/dist/components/blocks/buttons/index.d.ts +0 -2
  31. package/dist/components/blocks/buttons/index.d.ts.map +0 -1
  32. package/dist/components/blocks/buttons/page.d.ts +0 -7
  33. package/dist/components/blocks/buttons/page.d.ts.map +0 -1
  34. package/dist/components/blocks/form-elements/index.d.ts +0 -2
  35. package/dist/components/blocks/form-elements/index.d.ts.map +0 -1
  36. package/dist/components/blocks/form-elements/page.d.ts +0 -7
  37. package/dist/components/blocks/form-elements/page.d.ts.map +0 -1
  38. package/dist/components/blocks/index.d.ts +0 -14
  39. package/dist/components/blocks/index.d.ts.map +0 -1
  40. package/dist/components/blocks/notifications/index.d.ts +0 -2
  41. package/dist/components/blocks/notifications/index.d.ts.map +0 -1
  42. package/dist/components/blocks/notifications/page.d.ts +0 -7
  43. package/dist/components/blocks/notifications/page.d.ts.map +0 -1
  44. package/dist/components/blocks/progress/index.d.ts +0 -2
  45. package/dist/components/blocks/progress/index.d.ts.map +0 -1
  46. package/dist/components/blocks/progress/page.d.ts +0 -7
  47. package/dist/components/blocks/progress/page.d.ts.map +0 -1
  48. package/dist/components/blocks/registry.d.ts +0 -16
  49. package/dist/components/blocks/registry.d.ts.map +0 -1
  50. package/dist/components/demos/AnimatedBackground.d.ts +0 -5
  51. package/dist/components/demos/AnimatedBackground.d.ts.map +0 -1
  52. package/dist/components/demos/ComponentShowcase.d.ts +0 -6
  53. package/dist/components/demos/ComponentShowcase.d.ts.map +0 -1
  54. package/dist/components/demos/DesktopShowcase.d.ts +0 -3
  55. package/dist/components/demos/DesktopShowcase.d.ts.map +0 -1
  56. package/dist/components/demos/GlassFixesDemo.d.ts +0 -6
  57. package/dist/components/demos/GlassFixesDemo.d.ts.map +0 -1
  58. package/dist/components/demos/MobileShowcase.d.ts +0 -3
  59. package/dist/components/demos/MobileShowcase.d.ts.map +0 -1
  60. package/dist/components/glass/atomic/expandable-header-glass.d.ts +0 -16
  61. package/dist/components/glass/atomic/expandable-header-glass.d.ts.map +0 -1
  62. package/dist/components/glass/atomic/icon-button-glass.d.ts +0 -18
  63. package/dist/components/glass/atomic/icon-button-glass.d.ts.map +0 -1
  64. package/dist/components/glass/atomic/index.d.ts +0 -14
  65. package/dist/components/glass/atomic/index.d.ts.map +0 -1
  66. package/dist/components/glass/atomic/insight-card-glass.d.ts +0 -22
  67. package/dist/components/glass/atomic/insight-card-glass.d.ts.map +0 -1
  68. package/dist/components/glass/atomic/search-box-glass.d.ts +0 -17
  69. package/dist/components/glass/atomic/search-box-glass.d.ts.map +0 -1
  70. package/dist/components/glass/atomic/sort-dropdown-glass.d.ts +0 -38
  71. package/dist/components/glass/atomic/sort-dropdown-glass.d.ts.map +0 -1
  72. package/dist/components/glass/atomic/stat-item-glass.d.ts +0 -22
  73. package/dist/components/glass/atomic/stat-item-glass.d.ts.map +0 -1
  74. package/dist/components/glass/atomic/theme-toggle-glass.d.ts +0 -11
  75. package/dist/components/glass/atomic/theme-toggle-glass.d.ts.map +0 -1
  76. package/dist/components/glass/composite/ai-card-glass.d.ts +0 -7
  77. package/dist/components/glass/composite/ai-card-glass.d.ts.map +0 -1
  78. package/dist/components/glass/composite/career-stats-header-glass.d.ts +0 -15
  79. package/dist/components/glass/composite/career-stats-header-glass.d.ts.map +0 -1
  80. package/dist/components/glass/composite/circular-metric-glass.d.ts +0 -24
  81. package/dist/components/glass/composite/circular-metric-glass.d.ts.map +0 -1
  82. package/dist/components/glass/composite/contribution-metrics-glass.d.ts +0 -15
  83. package/dist/components/glass/composite/contribution-metrics-glass.d.ts.map +0 -1
  84. package/dist/components/glass/composite/index.d.ts +0 -22
  85. package/dist/components/glass/composite/index.d.ts.map +0 -1
  86. package/dist/components/glass/composite/metric-card-glass.d.ts +0 -96
  87. package/dist/components/glass/composite/metric-card-glass.d.ts.map +0 -1
  88. package/dist/components/glass/composite/metrics-grid-glass.d.ts +0 -17
  89. package/dist/components/glass/composite/metrics-grid-glass.d.ts.map +0 -1
  90. package/dist/components/glass/composite/repository-card-glass.d.ts +0 -16
  91. package/dist/components/glass/composite/repository-card-glass.d.ts.map +0 -1
  92. package/dist/components/glass/composite/repository-header-glass.d.ts +0 -16
  93. package/dist/components/glass/composite/repository-header-glass.d.ts.map +0 -1
  94. package/dist/components/glass/composite/repository-metadata-glass.d.ts +0 -13
  95. package/dist/components/glass/composite/repository-metadata-glass.d.ts.map +0 -1
  96. package/dist/components/glass/composite/split-layout-glass/index.d.ts +0 -16
  97. package/dist/components/glass/composite/split-layout-glass/index.d.ts.map +0 -1
  98. package/dist/components/glass/composite/split-layout-glass/split-layout-accordion.d.ts +0 -66
  99. package/dist/components/glass/composite/split-layout-glass/split-layout-accordion.d.ts.map +0 -1
  100. package/dist/components/glass/composite/split-layout-glass/split-layout-context.d.ts +0 -122
  101. package/dist/components/glass/composite/split-layout-glass/split-layout-context.d.ts.map +0 -1
  102. package/dist/components/glass/composite/split-layout-glass/split-layout-glass.d.ts +0 -177
  103. package/dist/components/glass/composite/split-layout-glass/split-layout-glass.d.ts.map +0 -1
  104. package/dist/components/glass/composite/trust-score-display-glass.d.ts +0 -15
  105. package/dist/components/glass/composite/trust-score-display-glass.d.ts.map +0 -1
  106. package/dist/components/glass/composite/user-info-glass.d.ts +0 -15
  107. package/dist/components/glass/composite/user-info-glass.d.ts.map +0 -1
  108. package/dist/components/glass/composite/user-stats-line-glass.d.ts +0 -15
  109. package/dist/components/glass/composite/user-stats-line-glass.d.ts.map +0 -1
  110. package/dist/components/glass/composite/year-card-glass.d.ts +0 -53
  111. package/dist/components/glass/composite/year-card-glass.d.ts.map +0 -1
  112. package/dist/components/glass/index.d.ts +0 -18
  113. package/dist/components/glass/index.d.ts.map +0 -1
  114. package/dist/components/glass/primitives/form-field-wrapper.d.ts +0 -69
  115. package/dist/components/glass/primitives/form-field-wrapper.d.ts.map +0 -1
  116. package/dist/components/glass/primitives/index.d.ts +0 -12
  117. package/dist/components/glass/primitives/index.d.ts.map +0 -1
  118. package/dist/components/glass/primitives/interactive-card.d.ts +0 -91
  119. package/dist/components/glass/primitives/interactive-card.d.ts.map +0 -1
  120. package/dist/components/glass/primitives/style-utils.d.ts +0 -147
  121. package/dist/components/glass/primitives/style-utils.d.ts.map +0 -1
  122. package/dist/components/glass/primitives/touch-target.d.ts +0 -46
  123. package/dist/components/glass/primitives/touch-target.d.ts.map +0 -1
  124. package/dist/components/glass/sections/career-stats-glass.d.ts +0 -17
  125. package/dist/components/glass/sections/career-stats-glass.d.ts.map +0 -1
  126. package/dist/components/glass/sections/flags-section-glass.d.ts +0 -13
  127. package/dist/components/glass/sections/flags-section-glass.d.ts.map +0 -1
  128. package/dist/components/glass/sections/header-branding-glass.d.ts +0 -16
  129. package/dist/components/glass/sections/header-branding-glass.d.ts.map +0 -1
  130. package/dist/components/glass/sections/header-nav-glass.d.ts +0 -7
  131. package/dist/components/glass/sections/header-nav-glass.d.ts.map +0 -1
  132. package/dist/components/glass/sections/index.d.ts +0 -13
  133. package/dist/components/glass/sections/index.d.ts.map +0 -1
  134. package/dist/components/glass/sections/profile-header-glass.d.ts +0 -16
  135. package/dist/components/glass/sections/profile-header-glass.d.ts.map +0 -1
  136. package/dist/components/glass/sections/projects-list-glass.d.ts +0 -42
  137. package/dist/components/glass/sections/projects-list-glass.d.ts.map +0 -1
  138. package/dist/components/glass/sections/trust-score-card-glass.d.ts +0 -12
  139. package/dist/components/glass/sections/trust-score-card-glass.d.ts.map +0 -1
  140. package/dist/components/glass/specialized/base-progress-glass.d.ts +0 -8
  141. package/dist/components/glass/specialized/base-progress-glass.d.ts.map +0 -1
  142. package/dist/components/glass/specialized/flag-alert-glass.d.ts +0 -8
  143. package/dist/components/glass/specialized/flag-alert-glass.d.ts.map +0 -1
  144. package/dist/components/glass/specialized/index.d.ts +0 -21
  145. package/dist/components/glass/specialized/index.d.ts.map +0 -1
  146. package/dist/components/glass/specialized/language-bar-glass.d.ts +0 -24
  147. package/dist/components/glass/specialized/language-bar-glass.d.ts.map +0 -1
  148. package/dist/components/glass/specialized/profile-avatar-glass.d.ts +0 -26
  149. package/dist/components/glass/specialized/profile-avatar-glass.d.ts.map +0 -1
  150. package/dist/components/glass/specialized/progress-glass.d.ts +0 -9
  151. package/dist/components/glass/specialized/progress-glass.d.ts.map +0 -1
  152. package/dist/components/glass/specialized/rainbow-progress-glass.d.ts +0 -8
  153. package/dist/components/glass/specialized/rainbow-progress-glass.d.ts.map +0 -1
  154. package/dist/components/glass/specialized/segmented-control-glass.d.ts +0 -11
  155. package/dist/components/glass/specialized/segmented-control-glass.d.ts.map +0 -1
  156. package/dist/components/glass/specialized/sparkline-glass.d.ts +0 -34
  157. package/dist/components/glass/specialized/sparkline-glass.d.ts.map +0 -1
  158. package/dist/components/glass/specialized/status-indicator-glass.d.ts +0 -8
  159. package/dist/components/glass/specialized/status-indicator-glass.d.ts.map +0 -1
  160. package/dist/components/glass/ui/alert-glass.d.ts +0 -13
  161. package/dist/components/glass/ui/alert-glass.d.ts.map +0 -1
  162. package/dist/components/glass/ui/avatar-glass.d.ts +0 -58
  163. package/dist/components/glass/ui/avatar-glass.d.ts.map +0 -1
  164. package/dist/components/glass/ui/badge-glass.d.ts +0 -74
  165. package/dist/components/glass/ui/badge-glass.d.ts.map +0 -1
  166. package/dist/components/glass/ui/button-glass.d.ts +0 -110
  167. package/dist/components/glass/ui/button-glass.d.ts.map +0 -1
  168. package/dist/components/glass/ui/card-glass.d.ts +0 -115
  169. package/dist/components/glass/ui/card-glass.d.ts.map +0 -1
  170. package/dist/components/glass/ui/checkbox-glass.d.ts +0 -88
  171. package/dist/components/glass/ui/checkbox-glass.d.ts.map +0 -1
  172. package/dist/components/glass/ui/circular-progress-glass.d.ts +0 -36
  173. package/dist/components/glass/ui/circular-progress-glass.d.ts.map +0 -1
  174. package/dist/components/glass/ui/combobox-glass.d.ts +0 -61
  175. package/dist/components/glass/ui/combobox-glass.d.ts.map +0 -1
  176. package/dist/components/glass/ui/dropdown-glass.d.ts +0 -83
  177. package/dist/components/glass/ui/dropdown-glass.d.ts.map +0 -1
  178. package/dist/components/glass/ui/dropdown-menu-glass.d.ts +0 -83
  179. package/dist/components/glass/ui/dropdown-menu-glass.d.ts.map +0 -1
  180. package/dist/components/glass/ui/glass-card.d.ts +0 -78
  181. package/dist/components/glass/ui/glass-card.d.ts.map +0 -1
  182. package/dist/components/glass/ui/index.d.ts +0 -50
  183. package/dist/components/glass/ui/index.d.ts.map +0 -1
  184. package/dist/components/glass/ui/input-glass.d.ts +0 -98
  185. package/dist/components/glass/ui/input-glass.d.ts.map +0 -1
  186. package/dist/components/glass/ui/modal-glass.d.ts +0 -180
  187. package/dist/components/glass/ui/modal-glass.d.ts.map +0 -1
  188. package/dist/components/glass/ui/notification-glass.d.ts +0 -13
  189. package/dist/components/glass/ui/notification-glass.d.ts.map +0 -1
  190. package/dist/components/glass/ui/popover-glass.d.ts +0 -74
  191. package/dist/components/glass/ui/popover-glass.d.ts.map +0 -1
  192. package/dist/components/glass/ui/sidebar-glass/index.d.ts +0 -100
  193. package/dist/components/glass/ui/sidebar-glass/index.d.ts.map +0 -1
  194. package/dist/components/glass/ui/sidebar-glass/sidebar-context.d.ts +0 -96
  195. package/dist/components/glass/ui/sidebar-glass/sidebar-context.d.ts.map +0 -1
  196. package/dist/components/glass/ui/sidebar-glass/sidebar-glass.d.ts +0 -88
  197. package/dist/components/glass/ui/sidebar-glass/sidebar-glass.d.ts.map +0 -1
  198. package/dist/components/glass/ui/sidebar-glass/sidebar-menu.d.ts +0 -121
  199. package/dist/components/glass/ui/sidebar-glass/sidebar-menu.d.ts.map +0 -1
  200. package/dist/components/glass/ui/skeleton-glass.d.ts +0 -8
  201. package/dist/components/glass/ui/skeleton-glass.d.ts.map +0 -1
  202. package/dist/components/glass/ui/slider-glass.d.ts +0 -38
  203. package/dist/components/glass/ui/slider-glass.d.ts.map +0 -1
  204. package/dist/components/glass/ui/stepper-glass.d.ts +0 -63
  205. package/dist/components/glass/ui/stepper-glass.d.ts.map +0 -1
  206. package/dist/components/glass/ui/tabs-glass.d.ts +0 -150
  207. package/dist/components/glass/ui/tabs-glass.d.ts.map +0 -1
  208. package/dist/components/glass/ui/toggle-glass.d.ts +0 -27
  209. package/dist/components/glass/ui/toggle-glass.d.ts.map +0 -1
  210. package/dist/components/glass/ui/tooltip-glass.d.ts +0 -65
  211. package/dist/components/glass/ui/tooltip-glass.d.ts.map +0 -1
  212. package/dist/components/ui/alert.d.ts +0 -8
  213. package/dist/components/ui/alert.d.ts.map +0 -1
  214. package/dist/components/ui/avatar.d.ts +0 -7
  215. package/dist/components/ui/avatar.d.ts.map +0 -1
  216. package/dist/components/ui/badge.d.ts +0 -8
  217. package/dist/components/ui/badge.d.ts.map +0 -1
  218. package/dist/components/ui/button.d.ts +0 -8
  219. package/dist/components/ui/button.d.ts.map +0 -1
  220. package/dist/components/ui/card.d.ts +0 -10
  221. package/dist/components/ui/card.d.ts.map +0 -1
  222. package/dist/components/ui/chart.d.ts +0 -69
  223. package/dist/components/ui/chart.d.ts.map +0 -1
  224. package/dist/components/ui/checkbox.d.ts +0 -5
  225. package/dist/components/ui/checkbox.d.ts.map +0 -1
  226. package/dist/components/ui/collapsible.d.ts +0 -6
  227. package/dist/components/ui/collapsible.d.ts.map +0 -1
  228. package/dist/components/ui/command.d.ts +0 -19
  229. package/dist/components/ui/command.d.ts.map +0 -1
  230. package/dist/components/ui/dialog.d.ts +0 -16
  231. package/dist/components/ui/dialog.d.ts.map +0 -1
  232. package/dist/components/ui/dropdown-menu.d.ts +0 -26
  233. package/dist/components/ui/dropdown-menu.d.ts.map +0 -1
  234. package/dist/components/ui/input.d.ts +0 -4
  235. package/dist/components/ui/input.d.ts.map +0 -1
  236. package/dist/components/ui/popover.d.ts +0 -8
  237. package/dist/components/ui/popover.d.ts.map +0 -1
  238. package/dist/components/ui/progress.d.ts +0 -5
  239. package/dist/components/ui/progress.d.ts.map +0 -1
  240. package/dist/components/ui/scroll-area.d.ts +0 -6
  241. package/dist/components/ui/scroll-area.d.ts.map +0 -1
  242. package/dist/components/ui/separator.d.ts +0 -5
  243. package/dist/components/ui/separator.d.ts.map +0 -1
  244. package/dist/components/ui/skeleton.d.ts +0 -3
  245. package/dist/components/ui/skeleton.d.ts.map +0 -1
  246. package/dist/components/ui/slider.d.ts +0 -5
  247. package/dist/components/ui/slider.d.ts.map +0 -1
  248. package/dist/components/ui/sonner.d.ts +0 -4
  249. package/dist/components/ui/sonner.d.ts.map +0 -1
  250. package/dist/components/ui/switch.d.ts +0 -5
  251. package/dist/components/ui/switch.d.ts.map +0 -1
  252. package/dist/components/ui/tabs.d.ts +0 -8
  253. package/dist/components/ui/tabs.d.ts.map +0 -1
  254. package/dist/components/ui/tooltip.d.ts +0 -8
  255. package/dist/components/ui/tooltip.d.ts.map +0 -1
  256. package/dist/components.d.ts.map +0 -1
  257. package/dist/demo-screenshot-aurora.png +0 -0
  258. package/dist/demo-screenshot.png +0 -0
  259. package/dist/demo-screenshot.png.zip +0 -0
  260. package/dist/hooks.d.ts.map +0 -1
  261. package/dist/index.cjs.map +0 -1
  262. package/dist/index.d.ts.map +0 -1
  263. package/dist/index.mjs.map +0 -1
  264. package/dist/lib/config.d.ts +0 -28
  265. package/dist/lib/config.d.ts.map +0 -1
  266. package/dist/lib/hooks/index.d.ts +0 -11
  267. package/dist/lib/hooks/index.d.ts.map +0 -1
  268. package/dist/lib/hooks/use-focus.d.ts +0 -61
  269. package/dist/lib/hooks/use-focus.d.ts.map +0 -1
  270. package/dist/lib/hooks/use-hover.d.ts +0 -54
  271. package/dist/lib/hooks/use-hover.d.ts.map +0 -1
  272. package/dist/lib/hooks/use-responsive.d.ts +0 -44
  273. package/dist/lib/hooks/use-responsive.d.ts.map +0 -1
  274. package/dist/lib/hooks/use-wallpaper-tint.d.ts +0 -57
  275. package/dist/lib/hooks/use-wallpaper-tint.d.ts.map +0 -1
  276. package/dist/lib/hooks.d.ts +0 -92
  277. package/dist/lib/hooks.d.ts.map +0 -1
  278. package/dist/lib/theme/tokens.d.ts +0 -441
  279. package/dist/lib/theme/tokens.d.ts.map +0 -1
  280. package/dist/lib/theme-context.d.ts +0 -115
  281. package/dist/lib/theme-context.d.ts.map +0 -1
  282. package/dist/lib/types.d.ts +0 -24
  283. package/dist/lib/types.d.ts.map +0 -1
  284. package/dist/lib/utils.d.ts +0 -8
  285. package/dist/lib/utils.d.ts.map +0 -1
  286. package/dist/lib/variants/alert-glass-variants.d.ts +0 -10
  287. package/dist/lib/variants/alert-glass-variants.d.ts.map +0 -1
  288. package/dist/lib/variants/alert-variants.d.ts +0 -8
  289. package/dist/lib/variants/alert-variants.d.ts.map +0 -1
  290. package/dist/lib/variants/avatar-glass-variants.d.ts +0 -12
  291. package/dist/lib/variants/avatar-glass-variants.d.ts.map +0 -1
  292. package/dist/lib/variants/badge-glass-variants.d.ts +0 -10
  293. package/dist/lib/variants/badge-glass-variants.d.ts.map +0 -1
  294. package/dist/lib/variants/badge-variants.d.ts +0 -8
  295. package/dist/lib/variants/badge-variants.d.ts.map +0 -1
  296. package/dist/lib/variants/button-glass-variants.d.ts +0 -29
  297. package/dist/lib/variants/button-glass-variants.d.ts.map +0 -1
  298. package/dist/lib/variants/button-variants.d.ts +0 -9
  299. package/dist/lib/variants/button-variants.d.ts.map +0 -1
  300. package/dist/lib/variants/dropdown-content-styles.d.ts +0 -102
  301. package/dist/lib/variants/dropdown-content-styles.d.ts.map +0 -1
  302. package/dist/lib/variants/dropdown-glass-variants.d.ts +0 -9
  303. package/dist/lib/variants/dropdown-glass-variants.d.ts.map +0 -1
  304. package/dist/lib/variants/glass-card-variants.d.ts +0 -13
  305. package/dist/lib/variants/glass-card-variants.d.ts.map +0 -1
  306. package/dist/lib/variants/index.d.ts +0 -26
  307. package/dist/lib/variants/index.d.ts.map +0 -1
  308. package/dist/lib/variants/input-glass-variants.d.ts +0 -9
  309. package/dist/lib/variants/input-glass-variants.d.ts.map +0 -1
  310. package/dist/lib/variants/insight-card-glass-variants.d.ts +0 -11
  311. package/dist/lib/variants/insight-card-glass-variants.d.ts.map +0 -1
  312. package/dist/lib/variants/modal-glass-variants.d.ts +0 -9
  313. package/dist/lib/variants/modal-glass-variants.d.ts.map +0 -1
  314. package/dist/lib/variants/notification-glass-variants.d.ts +0 -9
  315. package/dist/lib/variants/notification-glass-variants.d.ts.map +0 -1
  316. package/dist/lib/variants/progress-glass-variants.d.ts +0 -10
  317. package/dist/lib/variants/progress-glass-variants.d.ts.map +0 -1
  318. package/dist/lib/variants/skeleton-glass-variants.d.ts +0 -9
  319. package/dist/lib/variants/skeleton-glass-variants.d.ts.map +0 -1
  320. package/dist/lib/variants/sparkline-glass-variants.d.ts +0 -10
  321. package/dist/lib/variants/sparkline-glass-variants.d.ts.map +0 -1
  322. package/dist/lib/variants/stepper-glass-variants.d.ts +0 -40
  323. package/dist/lib/variants/stepper-glass-variants.d.ts.map +0 -1
  324. package/dist/lib/variants/toggle-glass-variants.d.ts +0 -26
  325. package/dist/lib/variants/toggle-glass-variants.d.ts.map +0 -1
  326. package/dist/lib/variants/tooltip-glass-variants.d.ts +0 -9
  327. package/dist/lib/variants/tooltip-glass-variants.d.ts.map +0 -1
  328. package/dist/theme-context-7NcW0KZL.cjs.map +0 -1
  329. package/dist/theme-context-DLS2uAgJ.mjs.map +0 -1
  330. package/dist/themes.d.ts.map +0 -1
  331. package/dist/trust-score-card-glass-BGqBcdyJ.mjs.map +0 -1
  332. package/dist/trust-score-card-glass-DtgFygh5.cjs.map +0 -1
  333. package/dist/use-focus-BFBcpBh1.cjs.map +0 -1
  334. package/dist/use-focus-C5kPAKr_.mjs.map +0 -1
  335. package/dist/use-wallpaper-tint-C0kYXNiN.mjs.map +0 -1
  336. package/dist/use-wallpaper-tint-DTTStm5f.cjs.map +0 -1
  337. package/dist/utils-B792GPM_.mjs.map +0 -1
  338. package/dist/utils-CiuCe_Aq.cjs.map +0 -1
  339. package/dist/utils.d.ts.map +0 -1
  340. package/docs/AI_IMPROVEMENTS_COMPLETE.md +0 -574
  341. package/docs/API_PATTERNS_COMPARISON.md +0 -419
  342. package/docs/COMPLIANCE_CHECKLIST.md +0 -307
  343. package/docs/COMPLIANCE_TESTING.md +0 -436
  344. package/docs/CSS_VARIABLES_AUDIT.md +0 -306
  345. package/docs/CSS_VARIABLES_REFACTORING_PLAN.md +0 -330
  346. package/docs/DROPDOWN_ARCHITECTURE.md +0 -290
  347. package/docs/METRIC_CARD_API_REDESIGN.md +0 -354
  348. package/docs/PRIMITIVE_MAPPING.md +0 -404
  349. package/docs/PUBLISHING.md +0 -593
  350. package/docs/REGISTRY_SUMMARY.md +0 -96
  351. package/docs/SECURITY.md +0 -117
  352. package/docs/api/README.md +0 -723
  353. package/docs/api/functions/ThemeProvider.md +0 -21
  354. package/docs/api/functions/cn.md +0 -27
  355. package/docs/api/functions/getNextTheme.md +0 -21
  356. package/docs/api/functions/getThemeConfig.md +0 -21
  357. package/docs/api/functions/useFocus.md +0 -53
  358. package/docs/api/functions/useHover.md +0 -47
  359. package/docs/api/functions/useResponsive.md +0 -31
  360. package/docs/api/functions/useTheme.md +0 -15
  361. package/docs/api/functions/useWallpaperTint.md +0 -36
  362. package/docs/api/globals.md +0 -139
  363. package/docs/api/interfaces/AlertGlassProps.md +0 -131
  364. package/docs/api/interfaces/AvatarGlassProps.md +0 -114
  365. package/docs/api/interfaces/BadgeGlassProps.md +0 -125
  366. package/docs/api/interfaces/ButtonGlassProps.md +0 -186
  367. package/docs/api/interfaces/CheckboxGlassProps.md +0 -125
  368. package/docs/api/interfaces/DropdownGlassProps.md +0 -123
  369. package/docs/api/interfaces/DropdownItem.md +0 -53
  370. package/docs/api/interfaces/GlassCardProps.md +0 -151
  371. package/docs/api/interfaces/InputGlassProps.md +0 -169
  372. package/docs/api/interfaces/NotificationGlassProps.md +0 -67
  373. package/docs/api/interfaces/ProgressGlassProps.md +0 -49
  374. package/docs/api/interfaces/SkeletonGlassProps.md +0 -41
  375. package/docs/api/interfaces/SliderGlassProps.md +0 -107
  376. package/docs/api/interfaces/TabItem.md +0 -25
  377. package/docs/api/interfaces/ThemeConfig.md +0 -25
  378. package/docs/api/interfaces/ThemeContextValue.md +0 -47
  379. package/docs/api/interfaces/ToggleGlassProps.md +0 -59
  380. package/docs/api/interfaces/TooltipGlassProps.md +0 -119
  381. package/docs/api/type-aliases/AlertType.md +0 -11
  382. package/docs/api/type-aliases/AlertVariant.md +0 -11
  383. package/docs/api/type-aliases/AvatarSize.md +0 -11
  384. package/docs/api/type-aliases/AvatarStatus.md +0 -13
  385. package/docs/api/type-aliases/BadgeSize.md +0 -11
  386. package/docs/api/type-aliases/BadgeVariant.md +0 -11
  387. package/docs/api/type-aliases/ButtonGlassSize.md +0 -11
  388. package/docs/api/type-aliases/ButtonGlassVariant.md +0 -11
  389. package/docs/api/type-aliases/DropdownAlign.md +0 -11
  390. package/docs/api/type-aliases/GlowType.md +0 -11
  391. package/docs/api/type-aliases/InputGlassSize.md +0 -11
  392. package/docs/api/type-aliases/IntensityType.md +0 -11
  393. package/docs/api/type-aliases/ModalSize.md +0 -11
  394. package/docs/api/type-aliases/NotificationType.md +0 -11
  395. package/docs/api/type-aliases/PaddingType.md +0 -11
  396. package/docs/api/type-aliases/ProgressGradient.md +0 -11
  397. package/docs/api/type-aliases/ProgressSize.md +0 -11
  398. package/docs/api/type-aliases/SkeletonVariant.md +0 -11
  399. package/docs/api/type-aliases/Theme.md +0 -11
  400. package/docs/api/type-aliases/ToggleGlassSize.md +0 -11
  401. package/docs/api/type-aliases/TooltipPosition.md +0 -11
  402. package/docs/api/variables/AICardGlass.md +0 -11
  403. package/docs/api/variables/AlertGlass.md +0 -11
  404. package/docs/api/variables/AvatarGlass.md +0 -11
  405. package/docs/api/variables/BadgeGlass.md +0 -11
  406. package/docs/api/variables/BaseProgressGlass.md +0 -11
  407. package/docs/api/variables/ButtonGlass.md +0 -11
  408. package/docs/api/variables/CareerStatsGlass.md +0 -11
  409. package/docs/api/variables/CareerStatsHeaderGlass.md +0 -11
  410. package/docs/api/variables/CheckboxGlass.md +0 -11
  411. package/docs/api/variables/CircularMetricGlass.md +0 -22
  412. package/docs/api/variables/CircularProgressGlass.md +0 -11
  413. package/docs/api/variables/ComboBoxGlass.md +0 -27
  414. package/docs/api/variables/ContributionMetricsGlass.md +0 -11
  415. package/docs/api/variables/DropdownGlass.md +0 -11
  416. package/docs/api/variables/ExpandableHeaderGlass.md +0 -11
  417. package/docs/api/variables/FlagAlertGlass.md +0 -11
  418. package/docs/api/variables/FlagsSectionGlass.md +0 -11
  419. package/docs/api/variables/FormFieldWrapper.md +0 -44
  420. package/docs/api/variables/GlassCard.md +0 -11
  421. package/docs/api/variables/HeaderBrandingGlass.md +0 -11
  422. package/docs/api/variables/HeaderNavGlass.md +0 -11
  423. package/docs/api/variables/IconButtonGlass.md +0 -11
  424. package/docs/api/variables/InputGlass.md +0 -11
  425. package/docs/api/variables/InteractiveCard.md +0 -45
  426. package/docs/api/variables/LanguageBarGlass.md +0 -11
  427. package/docs/api/variables/MetricCardGlass.md +0 -11
  428. package/docs/api/variables/MetricsGridGlass.md +0 -11
  429. package/docs/api/variables/ModalGlass.md +0 -73
  430. package/docs/api/variables/NotificationGlass.md +0 -11
  431. package/docs/api/variables/PopoverGlass.md +0 -11
  432. package/docs/api/variables/ProfileAvatarGlass.md +0 -11
  433. package/docs/api/variables/ProfileHeaderGlass.md +0 -11
  434. package/docs/api/variables/ProgressGlass.md +0 -11
  435. package/docs/api/variables/ProjectsListGlass.md +0 -11
  436. package/docs/api/variables/RainbowProgressGlass.md +0 -11
  437. package/docs/api/variables/RepositoryCardGlass.md +0 -11
  438. package/docs/api/variables/RepositoryHeaderGlass.md +0 -11
  439. package/docs/api/variables/RepositoryMetadataGlass.md +0 -11
  440. package/docs/api/variables/SearchBoxGlass.md +0 -11
  441. package/docs/api/variables/SegmentedControlGlass.md +0 -11
  442. package/docs/api/variables/SkeletonGlass.md +0 -11
  443. package/docs/api/variables/SliderGlass.md +0 -11
  444. package/docs/api/variables/SortDropdownGlass.md +0 -11
  445. package/docs/api/variables/StatItemGlass.md +0 -11
  446. package/docs/api/variables/StatusIndicatorGlass.md +0 -11
  447. package/docs/api/variables/THEMES.md +0 -11
  448. package/docs/api/variables/THEME_CONFIG.md +0 -11
  449. package/docs/api/variables/TabsGlass.md +0 -52
  450. package/docs/api/variables/ThemeToggleGlass.md +0 -11
  451. package/docs/api/variables/ToggleGlass.md +0 -11
  452. package/docs/api/variables/TooltipGlass.md +0 -11
  453. package/docs/api/variables/TouchTarget.md +0 -35
  454. package/docs/api/variables/TrustScoreCardGlass.md +0 -11
  455. package/docs/api/variables/TrustScoreDisplayGlass.md +0 -11
  456. package/docs/api/variables/UserInfoGlass.md +0 -11
  457. package/docs/api/variables/UserStatsLineGlass.md +0 -11
  458. package/docs/api/variables/YearCardGlass.md +0 -11
  459. package/docs/api/variables/alertVariants.md +0 -21
  460. package/docs/api/variables/avatarSizes.md +0 -21
  461. package/docs/api/variables/badgeVariants.md +0 -21
  462. package/docs/api/variables/buttonGlassVariants.md +0 -21
  463. package/docs/api/variables/cardIntensity.md +0 -21
  464. package/docs/api/variables/dropdownAlign.md +0 -21
  465. package/docs/api/variables/inputVariants.md +0 -21
  466. package/docs/api/variables/modalSizes.md +0 -21
  467. package/docs/api/variables/notificationVariants.md +0 -21
  468. package/docs/api/variables/progressSizes.md +0 -21
  469. package/docs/api/variables/shadcnAlertVariants.md +0 -21
  470. package/docs/api/variables/shadcnBadgeVariants.md +0 -21
  471. package/docs/api/variables/shadcnButtonVariants.md +0 -21
  472. package/docs/api/variables/skeletonVariants.md +0 -21
  473. package/docs/api/variables/statusSizes.md +0 -21
  474. package/docs/api/variables/toggleSizes.md +0 -21
  475. package/docs/api/variables/tooltipPositions.md +0 -21
  476. package/docs/design-system/UI_DESIGN.md +0 -628
  477. package/docs/technical/DEPENDENCIES.md +0 -291
  478. package/docs/visual-testing-guide.md +0 -362
@@ -1,419 +0,0 @@
1
- # API Patterns Comparison - Glass UI Library
2
-
3
- ## Document Purpose
4
-
5
- Detailed comparison of API patterns across all library components to ensure **consistency** of the
6
- new `MetricCardGlass` API.
7
-
8
- ---
9
-
10
- ## 📊 Comparison Table: Core UI Components
11
-
12
- | Component | Title/Label Prop | Value Prop | Variant System | Children | Icon Support | Notes |
13
- | --------------------- | -------------------------------- | ----------------- | ----------------------------------------------------------------------------------------------------- | -------------- | -------------------------- | ------------------------ |
14
- | **shadcn/ui Card** | `CardTitle` (subcomponent) | — | — | ✅ Composition | — | Compound component |
15
- | **AlertGlass** | `AlertGlassTitle` (subcomponent) | — | `variant: 'default' \| 'destructive' \| 'success' \| 'warning'` | ✅ Composition | ✅ Auto (variant-based) | **Compound component** |
16
- | **BadgeGlass** | — | — | `variant: 'default' \| 'secondary' \| 'destructive' \| 'outline' \| 'success' \| 'warning' \| 'info'` | ✅ `children` | ❌ | **shadcn/ui + extended** |
17
- | **ButtonGlass** | — | — | `variant: 'primary' \| 'secondary' \| 'ghost' \| 'destructive' \| 'success' \| 'text'` | ✅ `children` | ✅ `iconLeft`, `iconRight` | **shadcn/ui-like** |
18
- | **GlassCard** | — | — | `intensity: 'low' \| 'medium' \| 'high'` | ✅ `children` | ❌ | Custom Glass prop |
19
- | **NotificationGlass** | `title: string` (required) | `message: string` | `variant: 'default' \| 'destructive' \| 'success' \| 'warning'` | ❌ | ✅ Auto (variant-based) | **shadcn/ui compatible** |
20
-
21
- ### Insights from Core UI:
22
-
23
- 1. **✅ Variant System** - all use `variant` prop (except GlassCard with `intensity`)
24
- 2. **✅ Compound Components** - AlertGlass follows shadcn/ui pattern with subcomponents
25
- (AlertGlassTitle, AlertGlassDescription)
26
- 3. **✅ shadcn/ui variants** - base variants: `default`, `secondary`, `destructive`, `outline`
27
- 4. **✅ Glass UI extensions** - extended variants: `success`, `warning`, `info`
28
- 5. **✅ Icon handling** - automatic icons based on `variant` (AlertGlass, NotificationGlass)
29
-
30
- ---
31
-
32
- ## 📊 Comparison Table: Composite Components
33
-
34
- | Component | Title/Label Prop | Value Prop | Color/Variant System | Progress | Trend/Change | Notes |
35
- | ----------------------------- | ------------------------------ | ------------------------------------------ | ------------------------------------------------ | --------------------- | ------------------ | --------------------- |
36
- | **CircularMetricGlass** | `label: string` | `value: number (0-100)` | `color: 'emerald' \| 'amber' \| 'blue' \| 'red'` | ✅ Circular progress | ❌ | Simple metric display |
37
- | **AICardGlass** | — (hardcoded "AI Code Review") | — | ❌ | ❌ | ❌ | Fixed layout card |
38
- | **YearCardGlass** | `label: string` (badge) | `commits: string` | `gradient?: ProgressGradient` | ✅ `progress: number` | ❌ | Career stats card |
39
- | **TrustScoreDisplayGlass** | `title?: string` | `score: number (0-100)` | ❌ (color auto) | ✅ Circular | ❌ | Score display |
40
- | **MetricCardGlass (current)** | `label: string` | `value: number (0-100)` + `valueFormatter` | `color: 'emerald' \| 'amber' \| 'blue' \| 'red'` | ✅ `showProgress` | ✅ `trend: object` | **Inconsistent!** |
41
-
42
- ### Insights from Composite:
43
-
44
- 1. **❌ ISSUE:** `label` is used instead of `title`
45
- 2. **❌ ISSUE:** `color` instead of `variant` (doesn't match Core UI)
46
- 3. **❌ ISSUE:** `value` as percentage 0-100 instead of display value
47
- 4. **✅ Good:** Separate `progress` prop in YearCardGlass
48
- 5. **❌ ISSUE:** Complex `trend` object instead of simple `change`
49
-
50
- ---
51
-
52
- ## 🎯 Patterns from shadcn/ui Card
53
-
54
- ### Compound Component Pattern
55
-
56
- ```tsx
57
- // shadcn/ui uses composition
58
- <Card>
59
- <CardHeader>
60
- <CardTitle>Card Title</CardTitle>
61
- <CardDescription>Card Description</CardDescription>
62
- </CardHeader>
63
- <CardContent>
64
- <p>Card Content</p>
65
- </CardContent>
66
- <CardFooter>
67
- <Button>Action</Button>
68
- </CardFooter>
69
- </Card>
70
- ```
71
-
72
- ### Advantages of Compound Pattern:
73
-
74
- - ✅ Maximum composition flexibility
75
- - ✅ No need for complex layout props
76
- - ✅ Easy to extend
77
- - ❌ More verbose API
78
-
79
- ### Disadvantages for MetricCard:
80
-
81
- - ❌ Too complex for simple use case
82
- - ❌ More boilerplate code
83
- - ❌ Not suitable for fixed layout metrics
84
-
85
- ---
86
-
87
- ## 🔍 Analysis: Which Pattern to Choose?
88
-
89
- ### Option 1: Compound Component (like shadcn/ui Card)
90
-
91
- ```tsx
92
- <MetricCardGlass>
93
- <MetricCardGlass.Header>
94
- <MetricCardGlass.Title>Total Revenue</MetricCardGlass.Title>
95
- <MetricCardGlass.Icon><DollarSign /></MetricCardGlass.Icon>
96
- </MetricCardGlass.Header>
97
- <MetricCardGlass.Value>$45,231</MetricCardGlass.Value>
98
- <MetricCardGlass.Change>+12.5%</MetricCardGlass.Change>
99
- <MetricCardGlass.Sparkline data={[...]} />
100
- </MetricCardGlass>
101
- ```
102
-
103
- **Assessment:**
104
-
105
- - ✅ Maximum flexibility
106
- - ❌ Too verbose for fixed layout
107
- - ❌ Doesn't match other Composite components
108
-
109
- ### Option 2: Flat Props (like CircularMetricGlass, YearCardGlass)
110
-
111
- ```tsx
112
- <MetricCardGlass
113
- title="Total Revenue"
114
- value="$45,231"
115
- change="+12.5%"
116
- variant="success"
117
- icon={<DollarSign />}
118
- sparklineData={[...]}
119
- />
120
- ```
121
-
122
- **Assessment:**
123
-
124
- - ✅ Simple and clear API
125
- - ✅ Matches CircularMetricGlass, YearCardGlass
126
- - ✅ Less boilerplate
127
- - ✅ **RECOMMENDED** ✨
128
-
129
- ### Option 3: Hybrid (Props + Composition for complex cases)
130
-
131
- ```tsx
132
- // Simple case
133
- <MetricCardGlass title="Revenue" value="$45,231" change="+12.5%" />
134
-
135
- // Complex case with custom layout
136
- <MetricCardGlass>
137
- <MetricCardGlass.Header>...</MetricCardGlass.Header>
138
- <CustomContent />
139
- </MetricCardGlass>
140
- ```
141
-
142
- **Assessment:**
143
-
144
- - ✅ Flexibility + simplicity
145
- - ❌ More complex to implement
146
- - ❌ API becomes less predictable
147
-
148
- ---
149
-
150
- ## ✅ RECOMMENDATION: Option 2 - Flat Props API
151
-
152
- ### Why?
153
-
154
- 1. **Consistency with the library** ✅
155
- - Matches the pattern of CircularMetricGlass, YearCardGlass, TrustScoreDisplayGlass
156
- - All Composite components use flat props
157
-
158
- 2. **Ease of use** ✅
159
- - Less code for typical cases
160
- - Clear API without nesting
161
- - Easy to migrate from current API
162
-
163
- 3. **shadcn/ui compatibility** ✅
164
- - Uses `title` (like CardTitle)
165
- - Uses `description` (like CardDescription)
166
- - Uses `variant` system (like Alert, Badge, Button)
167
-
168
- 4. **Extensibility** ✅
169
- - Can add `children` for custom content
170
- - Can add `asChild` for polymorphism
171
-
172
- ---
173
-
174
- ## 📝 Final API for MetricCardGlass
175
-
176
- ### Type Definitions
177
-
178
- ```tsx
179
- // ========================================
180
- // VARIANT SYSTEM (following AlertGlass, BadgeGlass)
181
- // ========================================
182
-
183
- export type MetricVariant =
184
- | 'default' // shadcn/ui base (blue)
185
- | 'secondary' // shadcn/ui base (gray)
186
- | 'success' // Glass UI extension (green)
187
- | 'warning' // Glass UI extension (yellow)
188
- | 'destructive'; // shadcn/ui base (red)
189
-
190
- // Mapping: old color → new variant
191
- // emerald → success
192
- // amber → warning
193
- // blue → default
194
- // red → destructive
195
-
196
- // ========================================
197
- // CHANGE/TREND TYPES (simplified)
198
- // ========================================
199
-
200
- export type TrendDirection = 'up' | 'down' | 'neutral';
201
-
202
- export interface MetricChange {
203
- /** Change value (e.g., 12.5 for +12.5%) */
204
- readonly value: number;
205
- /** Trend direction (auto-detected if not provided) */
206
- readonly direction?: TrendDirection;
207
- /** Optional period label (e.g., "vs last month") */
208
- readonly period?: string;
209
- }
210
-
211
- // ========================================
212
- // MAIN PROPS INTERFACE
213
- // ========================================
214
-
215
- export interface MetricCardGlassProps
216
- extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof metricCardVariants> {
217
- // ========================================
218
- // CORE PROPS (shadcn/ui compatible)
219
- // ========================================
220
-
221
- /** Metric title (shadcn/ui Card: title) */
222
- readonly title: string;
223
-
224
- /** Display value (shadcn/ui Card: value) */
225
- readonly value: string | number;
226
-
227
- /** Optional description/subtitle (shadcn/ui Card: description) */
228
- readonly description?: string;
229
-
230
- /** Change indicator (shadcn/ui: change) */
231
- readonly change?: string | number | MetricChange;
232
-
233
- /** Semantic variant (follows AlertGlass, BadgeGlass pattern) */
234
- readonly variant?: MetricVariant;
235
-
236
- /** Icon to display */
237
- readonly icon?: ReactNode;
238
-
239
- // ========================================
240
- // GLASS UI EXTENSIONS
241
- // ========================================
242
-
243
- /** Data for sparkline visualization */
244
- readonly sparklineData?: readonly number[];
245
-
246
- /** Show sparkline chart */
247
- readonly showSparkline?: boolean;
248
-
249
- /** Show progress bar (requires progress prop) */
250
- readonly showProgress?: boolean;
251
-
252
- /** Progress percentage (0-100, separate from display value) */
253
- readonly progress?: number;
254
-
255
- // ========================================
256
- // DEPRECATED (backward compatibility)
257
- // ========================================
258
-
259
- /** @deprecated Use `title` instead */
260
- readonly label?: string;
261
-
262
- /** @deprecated Use `variant` instead. Mapping: emerald→success, amber→warning, blue→default, red→destructive */
263
- readonly color?: 'emerald' | 'amber' | 'blue' | 'red';
264
-
265
- /** @deprecated Format value before passing. Use `value` prop directly */
266
- readonly valueFormatter?: (value: number) => string;
267
-
268
- /** @deprecated Use `description` instead */
269
- readonly valueSuffix?: string;
270
-
271
- /** @deprecated Use `change` instead */
272
- readonly trend?: { value: number; direction: TrendDirection; label?: string };
273
- }
274
- ```
275
-
276
- ### Usage Examples
277
-
278
- ```tsx
279
- // ========================================
280
- // SIMPLE VARIANT (shadcn/ui style)
281
- // ========================================
282
-
283
- <MetricCardGlass
284
- title="Total Revenue"
285
- value="$45,231"
286
- change="+12.5%"
287
- variant="success"
288
- icon={<DollarSign />}
289
- />
290
-
291
- // ========================================
292
- // WITH DESCRIPTION
293
- // ========================================
294
-
295
- <MetricCardGlass
296
- title="Active Users"
297
- value="8,459"
298
- description="Current active sessions"
299
- change="+5.2%"
300
- variant="default"
301
- icon={<Users />}
302
- />
303
-
304
- // ========================================
305
- // WITH DETAILED CHANGE OBJECT
306
- // ========================================
307
-
308
- <MetricCardGlass
309
- title="Conversion Rate"
310
- value="3.24%"
311
- change={{
312
- value: 2.1,
313
- direction: 'up',
314
- period: 'vs last month'
315
- }}
316
- variant="success"
317
- />
318
-
319
- // ========================================
320
- // WITH PROGRESS AND SPARKLINE (Glass UI extensions)
321
- // ========================================
322
-
323
- <MetricCardGlass
324
- title="Completion Rate"
325
- value="85%"
326
- description="Project milestones"
327
- change="+5.2%"
328
- variant="success"
329
- progress={85} // 0-100 for progress bar
330
- sparklineData={[70, 75, 78, 80, 82, 84, 85]}
331
- showProgress
332
- showSparkline
333
- />
334
-
335
- // ========================================
336
- // BACKWARD COMPATIBILITY (deprecated props)
337
- // ========================================
338
-
339
- <MetricCardGlass
340
- label="Total Revenue" // ⚠️ deprecated → title
341
- value={75}
342
- valueFormatter={(v) => `$${v}`} // ⚠️ deprecated → format before
343
- color="emerald" // ⚠️ deprecated → variant="success"
344
- trend={{ value: 12.5, direction: 'up' }} // ⚠️ deprecated → change
345
- />
346
- ```
347
-
348
- ---
349
-
350
- ## 🎨 CSS Variables Structure
351
-
352
- Following the AlertGlass and BadgeGlass pattern:
353
-
354
- ```css
355
- /* ========================================
356
- METRIC CARD VARIANTS
357
- Following AlertGlass, BadgeGlass pattern
358
- ======================================== */
359
-
360
- /* Default variant (blue) */
361
- --metric-default-bg: rgba(59, 130, 246, 0.08);
362
- --metric-default-border: rgba(59, 130, 246, 0.25);
363
- --metric-default-text: rgb(96, 165, 250);
364
- --metric-default-glow: 0 0 20px rgba(59, 130, 246, 0.3);
365
-
366
- /* Secondary variant (gray) */
367
- --metric-secondary-bg: rgba(148, 163, 184, 0.08);
368
- --metric-secondary-border: rgba(148, 163, 184, 0.25);
369
- --metric-secondary-text: rgb(203, 213, 225);
370
- --metric-secondary-glow: 0 0 20px rgba(148, 163, 184, 0.2);
371
-
372
- /* Success variant (green/emerald) */
373
- --metric-success-bg: rgba(16, 185, 129, 0.08);
374
- --metric-success-border: rgba(16, 185, 129, 0.25);
375
- --metric-success-text: rgb(52, 211, 153);
376
- --metric-success-glow: 0 0 20px rgba(16, 185, 129, 0.3);
377
-
378
- /* Warning variant (yellow/amber) */
379
- --metric-warning-bg: rgba(245, 158, 11, 0.08);
380
- --metric-warning-border: rgba(245, 158, 11, 0.25);
381
- --metric-warning-text: rgb(251, 191, 36);
382
- --metric-warning-glow: 0 0 20px rgba(245, 158, 11, 0.3);
383
-
384
- /* Destructive variant (red/rose) */
385
- --metric-destructive-bg: rgba(244, 63, 94, 0.08);
386
- --metric-destructive-border: rgba(244, 63, 94, 0.25);
387
- --metric-destructive-text: rgb(251, 113, 133);
388
- --metric-destructive-glow: 0 0 20px rgba(244, 63, 94, 0.3);
389
- ```
390
-
391
- ---
392
-
393
- ## ✅ Final Consistency Verification
394
-
395
- | Criteria | AlertGlass | BadgeGlass | MetricCardGlass (new) | Compliance |
396
- | -------------------------- | ---------- | ---------- | --------------------- | ---------- |
397
- | Uses `variant` prop | ✅ | ✅ | ✅ | ✅ |
398
- | Base shadcn/ui variants | ✅ | ✅ | ✅ | ✅ |
399
- | Glass UI extensions | ✅ | ✅ | ✅ | ✅ |
400
- | CSS variables pattern | ✅ | ✅ | ✅ | ✅ |
401
- | `title` prop (not `label`) | ✅ | — | ✅ | ✅ |
402
- | `description` support | — | — | ✅ | ✅ |
403
- | `extends HTMLAttributes` | ✅ | ✅ | ✅ | ✅ |
404
- | `readonly` props | ✅ | ✅ | ✅ | ✅ |
405
- | CVA integration | ✅ | ✅ | ✅ | ✅ |
406
- | Icon support | ✅ (auto) | ❌ | ✅ (prop) | ✅ |
407
-
408
- **Result: 10/10 - Complete consistency!** ✅
409
-
410
- ---
411
-
412
- ## 📚 References
413
-
414
- - [AlertGlass](../src/components/glass/ui/alert-glass.tsx)
415
- - [BadgeGlass](../src/components/glass/ui/badge-glass.tsx)
416
- - [ButtonGlass](../src/components/glass/ui/button-glass.tsx)
417
- - [CircularMetricGlass](../src/components/glass/composite/circular-metric-glass.tsx)
418
- - [YearCardGlass](../src/components/glass/composite/year-card-glass.tsx)
419
- - [shadcn/ui Card](https://ui.shadcn.com/docs/components/card)