shadcn-glass-ui 2.2.1 → 2.2.4

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 (368) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/cli/commands/info.d.ts +15 -0
  3. package/dist/cli/commands/info.d.ts.map +1 -0
  4. package/dist/cli/commands/list.d.ts +23 -0
  5. package/dist/cli/commands/list.d.ts.map +1 -0
  6. package/dist/cli/index.cjs +1 -1
  7. package/dist/cli/index.d.ts.map +1 -0
  8. package/dist/cli/{index.js → index.mjs} +1 -1
  9. package/dist/cli/index.mjs.map +1 -0
  10. package/dist/cli/utils/format.d.ts +76 -0
  11. package/dist/cli/utils/format.d.ts.map +1 -0
  12. package/dist/cli/utils/fuzzy-search.d.ts +73 -0
  13. package/dist/cli/utils/fuzzy-search.d.ts.map +1 -0
  14. package/dist/cli/utils/load-exports.d.ts +141 -0
  15. package/dist/cli/utils/load-exports.d.ts.map +1 -0
  16. package/dist/components/blocks/avatar-gallery/index.d.ts +2 -0
  17. package/dist/components/blocks/avatar-gallery/index.d.ts.map +1 -0
  18. package/dist/components/blocks/avatar-gallery/page.d.ts +7 -0
  19. package/dist/components/blocks/avatar-gallery/page.d.ts.map +1 -0
  20. package/dist/components/blocks/badges/index.d.ts +2 -0
  21. package/dist/components/blocks/badges/index.d.ts.map +1 -0
  22. package/dist/components/blocks/badges/page.d.ts +7 -0
  23. package/dist/components/blocks/badges/page.d.ts.map +1 -0
  24. package/dist/components/blocks/buttons/index.d.ts +2 -0
  25. package/dist/components/blocks/buttons/index.d.ts.map +1 -0
  26. package/dist/components/blocks/buttons/page.d.ts +7 -0
  27. package/dist/components/blocks/buttons/page.d.ts.map +1 -0
  28. package/dist/components/blocks/form-elements/index.d.ts +2 -0
  29. package/dist/components/blocks/form-elements/index.d.ts.map +1 -0
  30. package/dist/components/blocks/form-elements/page.d.ts +7 -0
  31. package/dist/components/blocks/form-elements/page.d.ts.map +1 -0
  32. package/dist/components/blocks/index.d.ts +14 -0
  33. package/dist/components/blocks/index.d.ts.map +1 -0
  34. package/dist/components/blocks/notifications/index.d.ts +2 -0
  35. package/dist/components/blocks/notifications/index.d.ts.map +1 -0
  36. package/dist/components/blocks/notifications/page.d.ts +7 -0
  37. package/dist/components/blocks/notifications/page.d.ts.map +1 -0
  38. package/dist/components/blocks/progress/index.d.ts +2 -0
  39. package/dist/components/blocks/progress/index.d.ts.map +1 -0
  40. package/dist/components/blocks/progress/page.d.ts +7 -0
  41. package/dist/components/blocks/progress/page.d.ts.map +1 -0
  42. package/dist/components/blocks/registry.d.ts +16 -0
  43. package/dist/components/blocks/registry.d.ts.map +1 -0
  44. package/dist/components/demos/AnimatedBackground.d.ts +5 -0
  45. package/dist/components/demos/AnimatedBackground.d.ts.map +1 -0
  46. package/dist/components/demos/ComponentShowcase.d.ts +6 -0
  47. package/dist/components/demos/ComponentShowcase.d.ts.map +1 -0
  48. package/dist/components/demos/DesktopShowcase.d.ts +3 -0
  49. package/dist/components/demos/DesktopShowcase.d.ts.map +1 -0
  50. package/dist/components/demos/GlassFixesDemo.d.ts +6 -0
  51. package/dist/components/demos/GlassFixesDemo.d.ts.map +1 -0
  52. package/dist/components/demos/MobileShowcase.d.ts +3 -0
  53. package/dist/components/demos/MobileShowcase.d.ts.map +1 -0
  54. package/dist/components/glass/atomic/expandable-header-glass.d.ts +16 -0
  55. package/dist/components/glass/atomic/expandable-header-glass.d.ts.map +1 -0
  56. package/dist/components/glass/atomic/icon-button-glass.d.ts +18 -0
  57. package/dist/components/glass/atomic/icon-button-glass.d.ts.map +1 -0
  58. package/dist/components/glass/atomic/index.d.ts +14 -0
  59. package/dist/components/glass/atomic/index.d.ts.map +1 -0
  60. package/dist/components/glass/atomic/insight-card-glass.d.ts +22 -0
  61. package/dist/components/glass/atomic/insight-card-glass.d.ts.map +1 -0
  62. package/dist/components/glass/atomic/search-box-glass.d.ts +17 -0
  63. package/dist/components/glass/atomic/search-box-glass.d.ts.map +1 -0
  64. package/dist/components/glass/atomic/sort-dropdown-glass.d.ts +38 -0
  65. package/dist/components/glass/atomic/sort-dropdown-glass.d.ts.map +1 -0
  66. package/dist/components/glass/atomic/stat-item-glass.d.ts +22 -0
  67. package/dist/components/glass/atomic/stat-item-glass.d.ts.map +1 -0
  68. package/dist/components/glass/atomic/theme-toggle-glass.d.ts +11 -0
  69. package/dist/components/glass/atomic/theme-toggle-glass.d.ts.map +1 -0
  70. package/dist/components/glass/composite/ai-card-glass.d.ts +7 -0
  71. package/dist/components/glass/composite/ai-card-glass.d.ts.map +1 -0
  72. package/dist/components/glass/composite/career-stats-header-glass.d.ts +15 -0
  73. package/dist/components/glass/composite/career-stats-header-glass.d.ts.map +1 -0
  74. package/dist/components/glass/composite/circular-metric-glass.d.ts +24 -0
  75. package/dist/components/glass/composite/circular-metric-glass.d.ts.map +1 -0
  76. package/dist/components/glass/composite/contribution-metrics-glass.d.ts +15 -0
  77. package/dist/components/glass/composite/contribution-metrics-glass.d.ts.map +1 -0
  78. package/dist/components/glass/composite/index.d.ts +22 -0
  79. package/dist/components/glass/composite/index.d.ts.map +1 -0
  80. package/dist/components/glass/composite/metric-card-glass.d.ts +96 -0
  81. package/dist/components/glass/composite/metric-card-glass.d.ts.map +1 -0
  82. package/dist/components/glass/composite/metrics-grid-glass.d.ts +17 -0
  83. package/dist/components/glass/composite/metrics-grid-glass.d.ts.map +1 -0
  84. package/dist/components/glass/composite/repository-card-glass.d.ts +16 -0
  85. package/dist/components/glass/composite/repository-card-glass.d.ts.map +1 -0
  86. package/dist/components/glass/composite/repository-header-glass.d.ts +16 -0
  87. package/dist/components/glass/composite/repository-header-glass.d.ts.map +1 -0
  88. package/dist/components/glass/composite/repository-metadata-glass.d.ts +13 -0
  89. package/dist/components/glass/composite/repository-metadata-glass.d.ts.map +1 -0
  90. package/dist/components/glass/composite/split-layout-glass/index.d.ts +16 -0
  91. package/dist/components/glass/composite/split-layout-glass/index.d.ts.map +1 -0
  92. package/dist/components/glass/composite/split-layout-glass/split-layout-accordion.d.ts +66 -0
  93. package/dist/components/glass/composite/split-layout-glass/split-layout-accordion.d.ts.map +1 -0
  94. package/dist/components/glass/composite/split-layout-glass/split-layout-context.d.ts +122 -0
  95. package/dist/components/glass/composite/split-layout-glass/split-layout-context.d.ts.map +1 -0
  96. package/dist/components/glass/composite/split-layout-glass/split-layout-glass.d.ts +177 -0
  97. package/dist/components/glass/composite/split-layout-glass/split-layout-glass.d.ts.map +1 -0
  98. package/dist/components/glass/composite/trust-score-display-glass.d.ts +15 -0
  99. package/dist/components/glass/composite/trust-score-display-glass.d.ts.map +1 -0
  100. package/dist/components/glass/composite/user-info-glass.d.ts +15 -0
  101. package/dist/components/glass/composite/user-info-glass.d.ts.map +1 -0
  102. package/dist/components/glass/composite/user-stats-line-glass.d.ts +15 -0
  103. package/dist/components/glass/composite/user-stats-line-glass.d.ts.map +1 -0
  104. package/dist/components/glass/composite/year-card-glass.d.ts +53 -0
  105. package/dist/components/glass/composite/year-card-glass.d.ts.map +1 -0
  106. package/dist/components/glass/index.d.ts +16 -0
  107. package/dist/components/glass/index.d.ts.map +1 -0
  108. package/dist/components/glass/primitives/form-field-wrapper.d.ts +69 -0
  109. package/dist/components/glass/primitives/form-field-wrapper.d.ts.map +1 -0
  110. package/dist/components/glass/primitives/index.d.ts +12 -0
  111. package/dist/components/glass/primitives/index.d.ts.map +1 -0
  112. package/dist/components/glass/primitives/interactive-card.d.ts +91 -0
  113. package/dist/components/glass/primitives/interactive-card.d.ts.map +1 -0
  114. package/dist/components/glass/primitives/style-utils.d.ts +147 -0
  115. package/dist/components/glass/primitives/style-utils.d.ts.map +1 -0
  116. package/dist/components/glass/primitives/touch-target.d.ts +46 -0
  117. package/dist/components/glass/primitives/touch-target.d.ts.map +1 -0
  118. package/dist/components/glass/sections/career-stats-glass.d.ts +17 -0
  119. package/dist/components/glass/sections/career-stats-glass.d.ts.map +1 -0
  120. package/dist/components/glass/sections/flags-section-glass.d.ts +13 -0
  121. package/dist/components/glass/sections/flags-section-glass.d.ts.map +1 -0
  122. package/dist/components/glass/sections/header-branding-glass.d.ts +16 -0
  123. package/dist/components/glass/sections/header-branding-glass.d.ts.map +1 -0
  124. package/dist/components/glass/sections/header-nav-glass.d.ts +7 -0
  125. package/dist/components/glass/sections/header-nav-glass.d.ts.map +1 -0
  126. package/dist/components/glass/sections/index.d.ts +13 -0
  127. package/dist/components/glass/sections/index.d.ts.map +1 -0
  128. package/dist/components/glass/sections/profile-header-glass.d.ts +16 -0
  129. package/dist/components/glass/sections/profile-header-glass.d.ts.map +1 -0
  130. package/dist/components/glass/sections/projects-list-glass.d.ts +42 -0
  131. package/dist/components/glass/sections/projects-list-glass.d.ts.map +1 -0
  132. package/dist/components/glass/sections/trust-score-card-glass.d.ts +12 -0
  133. package/dist/components/glass/sections/trust-score-card-glass.d.ts.map +1 -0
  134. package/dist/components/glass/specialized/base-progress-glass.d.ts +8 -0
  135. package/dist/components/glass/specialized/base-progress-glass.d.ts.map +1 -0
  136. package/dist/components/glass/specialized/flag-alert-glass.d.ts +8 -0
  137. package/dist/components/glass/specialized/flag-alert-glass.d.ts.map +1 -0
  138. package/dist/components/glass/specialized/index.d.ts +21 -0
  139. package/dist/components/glass/specialized/index.d.ts.map +1 -0
  140. package/dist/components/glass/specialized/language-bar-glass.d.ts +24 -0
  141. package/dist/components/glass/specialized/language-bar-glass.d.ts.map +1 -0
  142. package/dist/components/glass/specialized/profile-avatar-glass.d.ts +26 -0
  143. package/dist/components/glass/specialized/profile-avatar-glass.d.ts.map +1 -0
  144. package/dist/components/glass/specialized/progress-glass.d.ts +9 -0
  145. package/dist/components/glass/specialized/progress-glass.d.ts.map +1 -0
  146. package/dist/components/glass/specialized/rainbow-progress-glass.d.ts +8 -0
  147. package/dist/components/glass/specialized/rainbow-progress-glass.d.ts.map +1 -0
  148. package/dist/components/glass/specialized/segmented-control-glass.d.ts +11 -0
  149. package/dist/components/glass/specialized/segmented-control-glass.d.ts.map +1 -0
  150. package/dist/components/glass/specialized/sparkline-glass.d.ts +34 -0
  151. package/dist/components/glass/specialized/sparkline-glass.d.ts.map +1 -0
  152. package/dist/components/glass/specialized/status-indicator-glass.d.ts +8 -0
  153. package/dist/components/glass/specialized/status-indicator-glass.d.ts.map +1 -0
  154. package/dist/components/glass/ui/alert-glass.d.ts +13 -0
  155. package/dist/components/glass/ui/alert-glass.d.ts.map +1 -0
  156. package/dist/components/glass/ui/avatar-glass.d.ts +58 -0
  157. package/dist/components/glass/ui/avatar-glass.d.ts.map +1 -0
  158. package/dist/components/glass/ui/badge-glass.d.ts +74 -0
  159. package/dist/components/glass/ui/badge-glass.d.ts.map +1 -0
  160. package/dist/components/glass/ui/button-glass.d.ts +110 -0
  161. package/dist/components/glass/ui/button-glass.d.ts.map +1 -0
  162. package/dist/components/glass/ui/card-glass.d.ts +115 -0
  163. package/dist/components/glass/ui/card-glass.d.ts.map +1 -0
  164. package/dist/components/glass/ui/checkbox-glass.d.ts +80 -0
  165. package/dist/components/glass/ui/checkbox-glass.d.ts.map +1 -0
  166. package/dist/components/glass/ui/circular-progress-glass.d.ts +36 -0
  167. package/dist/components/glass/ui/circular-progress-glass.d.ts.map +1 -0
  168. package/dist/components/glass/ui/combobox-glass.d.ts +61 -0
  169. package/dist/components/glass/ui/combobox-glass.d.ts.map +1 -0
  170. package/dist/components/glass/ui/dropdown-glass.d.ts +83 -0
  171. package/dist/components/glass/ui/dropdown-glass.d.ts.map +1 -0
  172. package/dist/components/glass/ui/dropdown-menu-glass.d.ts +77 -0
  173. package/dist/components/glass/ui/dropdown-menu-glass.d.ts.map +1 -0
  174. package/dist/components/glass/ui/glass-card.d.ts +78 -0
  175. package/dist/components/glass/ui/glass-card.d.ts.map +1 -0
  176. package/dist/components/glass/ui/index.d.ts +44 -0
  177. package/dist/components/glass/ui/index.d.ts.map +1 -0
  178. package/dist/components/glass/ui/input-glass.d.ts +98 -0
  179. package/dist/components/glass/ui/input-glass.d.ts.map +1 -0
  180. package/dist/components/glass/ui/modal-glass.d.ts +180 -0
  181. package/dist/components/glass/ui/modal-glass.d.ts.map +1 -0
  182. package/dist/components/glass/ui/notification-glass.d.ts +13 -0
  183. package/dist/components/glass/ui/notification-glass.d.ts.map +1 -0
  184. package/dist/components/glass/ui/popover-glass.d.ts +71 -0
  185. package/dist/components/glass/ui/popover-glass.d.ts.map +1 -0
  186. package/dist/components/glass/ui/sidebar-glass/index.d.ts +100 -0
  187. package/dist/components/glass/ui/sidebar-glass/index.d.ts.map +1 -0
  188. package/dist/components/glass/ui/sidebar-glass/sidebar-context.d.ts +96 -0
  189. package/dist/components/glass/ui/sidebar-glass/sidebar-context.d.ts.map +1 -0
  190. package/dist/components/glass/ui/sidebar-glass/sidebar-glass.d.ts +88 -0
  191. package/dist/components/glass/ui/sidebar-glass/sidebar-glass.d.ts.map +1 -0
  192. package/dist/components/glass/ui/sidebar-glass/sidebar-menu.d.ts +121 -0
  193. package/dist/components/glass/ui/sidebar-glass/sidebar-menu.d.ts.map +1 -0
  194. package/dist/components/glass/ui/skeleton-glass.d.ts +8 -0
  195. package/dist/components/glass/ui/skeleton-glass.d.ts.map +1 -0
  196. package/dist/components/glass/ui/slider-glass.d.ts +38 -0
  197. package/dist/components/glass/ui/slider-glass.d.ts.map +1 -0
  198. package/dist/components/glass/ui/stepper-glass.d.ts +63 -0
  199. package/dist/components/glass/ui/stepper-glass.d.ts.map +1 -0
  200. package/dist/components/glass/ui/tabs-glass.d.ts +149 -0
  201. package/dist/components/glass/ui/tabs-glass.d.ts.map +1 -0
  202. package/dist/components/glass/ui/toggle-glass.d.ts +27 -0
  203. package/dist/components/glass/ui/toggle-glass.d.ts.map +1 -0
  204. package/dist/components/glass/ui/tooltip-glass.d.ts +65 -0
  205. package/dist/components/glass/ui/tooltip-glass.d.ts.map +1 -0
  206. package/dist/components/ui/alert.d.ts +8 -0
  207. package/dist/components/ui/alert.d.ts.map +1 -0
  208. package/dist/components/ui/avatar.d.ts +7 -0
  209. package/dist/components/ui/avatar.d.ts.map +1 -0
  210. package/dist/components/ui/badge.d.ts +8 -0
  211. package/dist/components/ui/badge.d.ts.map +1 -0
  212. package/dist/components/ui/button.d.ts +8 -0
  213. package/dist/components/ui/button.d.ts.map +1 -0
  214. package/dist/components/ui/card.d.ts +10 -0
  215. package/dist/components/ui/card.d.ts.map +1 -0
  216. package/dist/components/ui/chart.d.ts +69 -0
  217. package/dist/components/ui/chart.d.ts.map +1 -0
  218. package/dist/components/ui/checkbox.d.ts +5 -0
  219. package/dist/components/ui/checkbox.d.ts.map +1 -0
  220. package/dist/components/ui/collapsible.d.ts +6 -0
  221. package/dist/components/ui/collapsible.d.ts.map +1 -0
  222. package/dist/components/ui/command.d.ts +19 -0
  223. package/dist/components/ui/command.d.ts.map +1 -0
  224. package/dist/components/ui/dialog.d.ts +16 -0
  225. package/dist/components/ui/dialog.d.ts.map +1 -0
  226. package/dist/components/ui/dropdown-menu.d.ts +26 -0
  227. package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
  228. package/dist/components/ui/input.d.ts +4 -0
  229. package/dist/components/ui/input.d.ts.map +1 -0
  230. package/dist/components/ui/popover.d.ts +8 -0
  231. package/dist/components/ui/popover.d.ts.map +1 -0
  232. package/dist/components/ui/progress.d.ts +5 -0
  233. package/dist/components/ui/progress.d.ts.map +1 -0
  234. package/dist/components/ui/scroll-area.d.ts +6 -0
  235. package/dist/components/ui/scroll-area.d.ts.map +1 -0
  236. package/dist/components/ui/separator.d.ts +5 -0
  237. package/dist/components/ui/separator.d.ts.map +1 -0
  238. package/dist/components/ui/skeleton.d.ts +3 -0
  239. package/dist/components/ui/skeleton.d.ts.map +1 -0
  240. package/dist/components/ui/slider.d.ts +5 -0
  241. package/dist/components/ui/slider.d.ts.map +1 -0
  242. package/dist/components/ui/sonner.d.ts +4 -0
  243. package/dist/components/ui/sonner.d.ts.map +1 -0
  244. package/dist/components/ui/switch.d.ts +5 -0
  245. package/dist/components/ui/switch.d.ts.map +1 -0
  246. package/dist/components/ui/tabs.d.ts +8 -0
  247. package/dist/components/ui/tabs.d.ts.map +1 -0
  248. package/dist/components/ui/tooltip.d.ts +8 -0
  249. package/dist/components/ui/tooltip.d.ts.map +1 -0
  250. package/dist/components.cjs +4 -4
  251. package/dist/components.d.ts +56 -1932
  252. package/dist/components.d.ts.map +1 -0
  253. package/dist/components.mjs +5 -0
  254. package/dist/hooks.cjs +2 -2
  255. package/dist/hooks.d.ts +5 -225
  256. package/dist/hooks.d.ts.map +1 -0
  257. package/dist/{hooks.js → hooks.mjs} +2 -2
  258. package/dist/index.cjs +138 -1109
  259. package/dist/index.cjs.map +1 -1
  260. package/dist/index.d.ts +81 -1
  261. package/dist/index.d.ts.map +1 -0
  262. package/dist/{index.js → index.mjs} +116 -1115
  263. package/dist/index.mjs.map +1 -0
  264. package/dist/lib/config.d.ts +28 -0
  265. package/dist/lib/config.d.ts.map +1 -0
  266. package/dist/lib/hooks/index.d.ts +11 -0
  267. package/dist/lib/hooks/index.d.ts.map +1 -0
  268. package/dist/lib/hooks/use-focus.d.ts +61 -0
  269. package/dist/lib/hooks/use-focus.d.ts.map +1 -0
  270. package/dist/lib/hooks/use-hover.d.ts +54 -0
  271. package/dist/lib/hooks/use-hover.d.ts.map +1 -0
  272. package/dist/lib/hooks/use-responsive.d.ts +44 -0
  273. package/dist/lib/hooks/use-responsive.d.ts.map +1 -0
  274. package/dist/lib/hooks/use-wallpaper-tint.d.ts +57 -0
  275. package/dist/lib/hooks/use-wallpaper-tint.d.ts.map +1 -0
  276. package/dist/lib/hooks.d.ts +92 -0
  277. package/dist/lib/hooks.d.ts.map +1 -0
  278. package/dist/lib/theme/tokens.d.ts +441 -0
  279. package/dist/lib/theme/tokens.d.ts.map +1 -0
  280. package/dist/lib/theme-context.d.ts +115 -0
  281. package/dist/lib/theme-context.d.ts.map +1 -0
  282. package/dist/lib/types.d.ts +24 -0
  283. package/dist/lib/types.d.ts.map +1 -0
  284. package/dist/lib/utils.d.ts +8 -0
  285. package/dist/lib/utils.d.ts.map +1 -0
  286. package/dist/lib/variants/alert-glass-variants.d.ts +10 -0
  287. package/dist/lib/variants/alert-glass-variants.d.ts.map +1 -0
  288. package/dist/lib/variants/alert-variants.d.ts +8 -0
  289. package/dist/lib/variants/alert-variants.d.ts.map +1 -0
  290. package/dist/lib/variants/avatar-glass-variants.d.ts +12 -0
  291. package/dist/lib/variants/avatar-glass-variants.d.ts.map +1 -0
  292. package/dist/lib/variants/badge-glass-variants.d.ts +10 -0
  293. package/dist/lib/variants/badge-glass-variants.d.ts.map +1 -0
  294. package/dist/lib/variants/badge-variants.d.ts +8 -0
  295. package/dist/lib/variants/badge-variants.d.ts.map +1 -0
  296. package/dist/lib/variants/button-glass-variants.d.ts +29 -0
  297. package/dist/lib/variants/button-glass-variants.d.ts.map +1 -0
  298. package/dist/lib/variants/button-variants.d.ts +9 -0
  299. package/dist/lib/variants/button-variants.d.ts.map +1 -0
  300. package/dist/lib/variants/dropdown-content-styles.d.ts +102 -0
  301. package/dist/lib/variants/dropdown-content-styles.d.ts.map +1 -0
  302. package/dist/lib/variants/dropdown-glass-variants.d.ts +9 -0
  303. package/dist/lib/variants/dropdown-glass-variants.d.ts.map +1 -0
  304. package/dist/lib/variants/glass-card-variants.d.ts +13 -0
  305. package/dist/lib/variants/glass-card-variants.d.ts.map +1 -0
  306. package/dist/lib/variants/index.d.ts +26 -0
  307. package/dist/lib/variants/index.d.ts.map +1 -0
  308. package/dist/lib/variants/input-glass-variants.d.ts +9 -0
  309. package/dist/lib/variants/input-glass-variants.d.ts.map +1 -0
  310. package/dist/lib/variants/insight-card-glass-variants.d.ts +11 -0
  311. package/dist/lib/variants/insight-card-glass-variants.d.ts.map +1 -0
  312. package/dist/lib/variants/modal-glass-variants.d.ts +9 -0
  313. package/dist/lib/variants/modal-glass-variants.d.ts.map +1 -0
  314. package/dist/lib/variants/notification-glass-variants.d.ts +9 -0
  315. package/dist/lib/variants/notification-glass-variants.d.ts.map +1 -0
  316. package/dist/lib/variants/progress-glass-variants.d.ts +10 -0
  317. package/dist/lib/variants/progress-glass-variants.d.ts.map +1 -0
  318. package/dist/lib/variants/skeleton-glass-variants.d.ts +9 -0
  319. package/dist/lib/variants/skeleton-glass-variants.d.ts.map +1 -0
  320. package/dist/lib/variants/sparkline-glass-variants.d.ts +10 -0
  321. package/dist/lib/variants/sparkline-glass-variants.d.ts.map +1 -0
  322. package/dist/lib/variants/stepper-glass-variants.d.ts +40 -0
  323. package/dist/lib/variants/stepper-glass-variants.d.ts.map +1 -0
  324. package/dist/lib/variants/toggle-glass-variants.d.ts +26 -0
  325. package/dist/lib/variants/toggle-glass-variants.d.ts.map +1 -0
  326. package/dist/lib/variants/tooltip-glass-variants.d.ts +9 -0
  327. package/dist/lib/variants/tooltip-glass-variants.d.ts.map +1 -0
  328. package/dist/{theme-context-BEA8K_rq.cjs → theme-context-DBAPfMto.cjs} +2 -2
  329. package/dist/{theme-context-BEA8K_rq.cjs.map → theme-context-DBAPfMto.cjs.map} +1 -1
  330. package/dist/{theme-context-_T5r1KG4.js → theme-context-DLS2uAgJ.mjs} +1 -1
  331. package/dist/theme-context-DLS2uAgJ.mjs.map +1 -0
  332. package/dist/themes.cjs +1 -1
  333. package/dist/themes.d.ts +2 -124
  334. package/dist/themes.d.ts.map +1 -0
  335. package/dist/{themes.js → themes.mjs} +1 -1
  336. package/dist/trust-score-card-glass-BUt9MIF0.mjs +4197 -0
  337. package/dist/trust-score-card-glass-BUt9MIF0.mjs.map +1 -0
  338. package/dist/trust-score-card-glass-_v9hGnCW.cjs +4834 -0
  339. package/dist/trust-score-card-glass-_v9hGnCW.cjs.map +1 -0
  340. package/dist/{use-focus-CX0TJJIj.js → use-focus-C5kPAKr_.mjs} +1 -1
  341. package/dist/use-focus-C5kPAKr_.mjs.map +1 -0
  342. package/dist/{use-focus-CdoUzFQ8.cjs → use-focus-DBs46Dxv.cjs} +2 -2
  343. package/dist/{use-focus-CdoUzFQ8.cjs.map → use-focus-DBs46Dxv.cjs.map} +1 -1
  344. package/dist/{use-wallpaper-tint-DUgmytlY.js → use-wallpaper-tint-C0kYXNiN.mjs} +1 -1
  345. package/dist/use-wallpaper-tint-C0kYXNiN.mjs.map +1 -0
  346. package/dist/{use-wallpaper-tint-Rq5UgY9L.cjs → use-wallpaper-tint-DNdTbD1y.cjs} +2 -2
  347. package/dist/{use-wallpaper-tint-Rq5UgY9L.cjs.map → use-wallpaper-tint-DNdTbD1y.cjs.map} +1 -1
  348. package/dist/{utils-CcyeqpKQ.js → utils-B792GPM_.mjs} +1 -1
  349. package/dist/utils-B792GPM_.mjs.map +1 -0
  350. package/dist/{utils-NLnOCttr.cjs → utils-D5ef293O.cjs} +2 -2
  351. package/dist/{utils-NLnOCttr.cjs.map → utils-D5ef293O.cjs.map} +1 -1
  352. package/dist/utils.cjs +1 -1
  353. package/dist/utils.d.ts +2 -10
  354. package/dist/utils.d.ts.map +1 -0
  355. package/dist/utils.mjs +2 -0
  356. package/package.json +9 -9
  357. package/dist/cli/index.js.map +0 -1
  358. package/dist/components.js +0 -5
  359. package/dist/index.js.map +0 -1
  360. package/dist/theme-context-_T5r1KG4.js.map +0 -1
  361. package/dist/trust-score-card-glass-DTS1RdIt.cjs +0 -28660
  362. package/dist/trust-score-card-glass-DTS1RdIt.cjs.map +0 -1
  363. package/dist/trust-score-card-glass-Dg4_b_g_.js +0 -27660
  364. package/dist/trust-score-card-glass-Dg4_b_g_.js.map +0 -1
  365. package/dist/use-focus-CX0TJJIj.js.map +0 -1
  366. package/dist/use-wallpaper-tint-DUgmytlY.js.map +0 -1
  367. package/dist/utils-CcyeqpKQ.js.map +0 -1
  368. package/dist/utils.js +0 -2
@@ -0,0 +1,61 @@
1
+ import { LucideIcon } from 'lucide-react';
2
+ import { InputGlassSize } from '../../../lib/variants/input-glass-variants';
3
+ export type GlassVariant = 'glass' | 'frosted' | 'fluted' | 'crystal';
4
+ export interface ComboBoxOption<T = string> {
5
+ readonly value: T;
6
+ readonly label: string;
7
+ readonly disabled?: boolean;
8
+ /** Optional icon component for the option */
9
+ readonly icon?: LucideIcon;
10
+ }
11
+ export interface ComboBoxGlassProps<T = string> {
12
+ /** Available options */
13
+ readonly options: readonly ComboBoxOption<T>[];
14
+ /** Currently selected value */
15
+ readonly value?: T;
16
+ /** Callback when value changes */
17
+ readonly onValueChange?: (value: T | undefined) => void;
18
+ /** Placeholder text for trigger button */
19
+ readonly placeholder?: string;
20
+ /** Text shown when no results found */
21
+ readonly emptyText?: string;
22
+ /** Placeholder for search input */
23
+ readonly searchPlaceholder?: string;
24
+ /** Glass variant style */
25
+ readonly glassVariant?: GlassVariant;
26
+ /** Disabled state */
27
+ readonly disabled?: boolean;
28
+ /** Custom className for container */
29
+ readonly className?: string;
30
+ /** Custom className for popover content */
31
+ readonly popoverClassName?: string;
32
+ /** Allow clearing selection */
33
+ readonly clearable?: boolean;
34
+ /** Popover side */
35
+ readonly side?: 'top' | 'right' | 'bottom' | 'left';
36
+ /** Popover alignment */
37
+ readonly align?: 'start' | 'center' | 'end';
38
+ /** Label text displayed above the field */
39
+ readonly label?: string;
40
+ /** Error message - displays in red below the field */
41
+ readonly error?: string;
42
+ /** Success message - displays in green if no error */
43
+ readonly success?: string;
44
+ /** Shows required asterisk (*) next to label */
45
+ readonly required?: boolean;
46
+ /** Size variant (affects trigger button height and padding) */
47
+ readonly size?: InputGlassSize;
48
+ /** Enable/disable search functionality */
49
+ readonly searchable?: boolean;
50
+ /** Optional icon for trigger button (displayed before text) */
51
+ readonly icon?: LucideIcon;
52
+ }
53
+ declare function ComboBoxGlassInner<T = string>({ options, value, onValueChange, placeholder, emptyText, searchPlaceholder, glassVariant, disabled, className, popoverClassName, clearable, side, align, label, error, success, required, size, searchable, icon: TriggerIcon, }: ComboBoxGlassProps<T>, ref: React.ForwardedRef<HTMLButtonElement>): import("react/jsx-runtime").JSX.Element;
54
+ declare namespace ComboBoxGlassInner {
55
+ var displayName: string;
56
+ }
57
+ export declare const ComboBoxGlass: <T = string>(props: ComboBoxGlassProps<T> & {
58
+ ref?: React.ForwardedRef<HTMLButtonElement>;
59
+ }) => ReturnType<typeof ComboBoxGlassInner>;
60
+ export {};
61
+ //# sourceMappingURL=combobox-glass.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combobox-glass.d.ts","sourceRoot":"","sources":["../../../../src/components/glass/ui/combobox-glass.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,EAAiC,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAa9E,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAOzF,OAAO,mBAAmB,CAAC;AAM3B,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEtE,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,MAAM;IACxC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,6CAA6C;IAC7C,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,MAAM;IAC5C,wBAAwB;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,+BAA+B;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACnB,kCAAkC;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;IACxD,0CAA0C;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,uCAAuC;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,mCAAmC;IACnC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,0BAA0B;IAC1B,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,qCAAqC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,2CAA2C;IAC3C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,+BAA+B;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,mBAAmB;IACnB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IACpD,wBAAwB;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IAM5C,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;IAC/B,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;CAC5B;AAMD,iBAAS,kBAAkB,CAAC,CAAC,GAAG,MAAM,EACpC,EACE,OAAO,EACP,KAAK,EACL,aAAa,EACb,WAAgC,EAChC,SAA+B,EAC/B,iBAA+B,EAC/B,YAAsB,EACtB,QAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,SAAiB,EACjB,IAAe,EACf,KAAe,EAEf,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAgB,EAChB,IAAW,EACX,UAAiB,EACjB,IAAI,EAAE,WAAW,GAClB,EAAE,kBAAkB,CAAC,CAAC,CAAC,EACxB,GAAG,EAAE,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,2CA+J3C;kBAvLQ,kBAAkB;;;AA0L3B,eAAO,MAAM,aAAa,EAAqC,CAAC,CAAC,GAAG,MAAM,EACxE,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;CAAE,KAC3E,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,83 @@
1
+ import { LucideIcon } from 'lucide-react';
2
+ /**
3
+ * DropdownGlass Component
4
+ *
5
+ * Glass-themed dropdown menu with two APIs:
6
+ *
7
+ * 1. **Simple API** (items prop) - Quick setup for basic menus
8
+ * 2. **Compound API** (DropdownMenuGlass.*) - Full shadcn/ui pattern for complex menus
9
+ *
10
+ * @example Simple API (recommended for basic dropdowns)
11
+ * ```tsx
12
+ * import { DropdownGlass } from '@/components/glass/ui/dropdown-glass';
13
+ *
14
+ * <DropdownGlass
15
+ * trigger={<button><MoreVertical /></button>}
16
+ * items={[
17
+ * { label: 'Edit', icon: Edit, onClick: handleEdit },
18
+ * { divider: true },
19
+ * { label: 'Delete', icon: Trash, onClick: handleDelete, danger: true }
20
+ * ]}
21
+ * />
22
+ * ```
23
+ *
24
+ * @example Compound API (for complex dropdowns)
25
+ * ```tsx
26
+ * import {
27
+ * DropdownMenuGlass,
28
+ * DropdownMenuGlassTrigger,
29
+ * DropdownMenuGlassContent,
30
+ * DropdownMenuGlassItem,
31
+ * DropdownMenuGlassSeparator,
32
+ * } from '@/components/glass/ui/dropdown-menu-glass';
33
+ *
34
+ * <DropdownMenuGlass>
35
+ * <DropdownMenuGlassTrigger asChild>
36
+ * <Button>Open Menu</Button>
37
+ * </DropdownMenuGlassTrigger>
38
+ * <DropdownMenuGlassContent>
39
+ * <DropdownMenuGlassItem>Edit</DropdownMenuGlassItem>
40
+ * <DropdownMenuGlassSeparator />
41
+ * <DropdownMenuGlassItem variant="destructive">Delete</DropdownMenuGlassItem>
42
+ * </DropdownMenuGlassContent>
43
+ * </DropdownMenuGlass>
44
+ * ```
45
+ *
46
+ * @see ./dropdown-menu-glass.tsx for compound component exports
47
+ */
48
+ import * as React from 'react';
49
+ export interface DropdownItem {
50
+ readonly label?: string;
51
+ readonly icon?: LucideIcon;
52
+ readonly onClick?: () => void;
53
+ readonly danger?: boolean;
54
+ readonly divider?: boolean;
55
+ }
56
+ /**
57
+ * Props for the DropdownGlass component (Simple API)
58
+ *
59
+ * @accessibility
60
+ * - **Keyboard Navigation:** Arrow keys navigate, Enter/Space activates, Escape closes
61
+ * - **Focus Management:** Focus trapped within menu when open
62
+ * - **Screen Readers:** Uses role="menu" and role="menuitem"
63
+ * - **Touch Targets:** All items meet minimum 44x44px
64
+ */
65
+ export interface DropdownGlassProps {
66
+ /** Trigger element (button, etc.) */
67
+ readonly trigger: React.ReactNode;
68
+ /** Menu items array */
69
+ readonly items: readonly DropdownItem[];
70
+ /** Dropdown alignment */
71
+ readonly align?: 'left' | 'right';
72
+ /** Additional className */
73
+ readonly className?: string;
74
+ }
75
+ /**
76
+ * DropdownGlass - Simple API wrapper
77
+ *
78
+ * For complex dropdowns with checkboxes, radio groups, sub-menus, etc.,
79
+ * use the compound components from dropdown-menu-glass.tsx directly.
80
+ */
81
+ export declare const DropdownGlass: React.ForwardRefExoticComponent<DropdownGlassProps & React.RefAttributes<HTMLDivElement>>;
82
+ export { DropdownMenuGlass, DropdownMenuGlassTrigger, DropdownMenuGlassContent, DropdownMenuGlassItem, DropdownMenuGlassSeparator, } from './dropdown-menu-glass';
83
+ //# sourceMappingURL=dropdown-glass.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-glass.d.ts","sourceRoot":"","sources":["../../../../src/components/glass/ui/dropdown-glass.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAU/C,OAAO,mBAAmB,CAAC;AAM3B,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAMD;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,uBAAuB;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,yBAAyB;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,2BAA2B;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAMD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,2FAqCzB,CAAC;AAQF,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * DropdownMenuGlass - Compound Component
3
+ *
4
+ * Glass-themed dropdown menu following shadcn/ui compound component pattern.
5
+ * Built on Radix UI primitives with unified glass styling.
6
+ *
7
+ * @example Basic usage
8
+ * ```tsx
9
+ * <DropdownMenuGlass>
10
+ * <DropdownMenuGlassTrigger asChild>
11
+ * <Button>Open Menu</Button>
12
+ * </DropdownMenuGlassTrigger>
13
+ * <DropdownMenuGlassContent>
14
+ * <DropdownMenuGlassItem onSelect={() => console.log('Edit')}>
15
+ * <Edit className="mr-2 h-4 w-4" />
16
+ * Edit
17
+ * </DropdownMenuGlassItem>
18
+ * <DropdownMenuGlassSeparator />
19
+ * <DropdownMenuGlassItem variant="destructive">
20
+ * <Trash className="mr-2 h-4 w-4" />
21
+ * Delete
22
+ * </DropdownMenuGlassItem>
23
+ * </DropdownMenuGlassContent>
24
+ * </DropdownMenuGlass>
25
+ * ```
26
+ *
27
+ * @example With labels and groups
28
+ * ```tsx
29
+ * <DropdownMenuGlass>
30
+ * <DropdownMenuGlassTrigger asChild>
31
+ * <Button variant="outline">Options</Button>
32
+ * </DropdownMenuGlassTrigger>
33
+ * <DropdownMenuGlassContent>
34
+ * <DropdownMenuGlassLabel>Actions</DropdownMenuGlassLabel>
35
+ * <DropdownMenuGlassGroup>
36
+ * <DropdownMenuGlassItem>Copy</DropdownMenuGlassItem>
37
+ * <DropdownMenuGlassItem>Paste</DropdownMenuGlassItem>
38
+ * </DropdownMenuGlassGroup>
39
+ * <DropdownMenuGlassSeparator />
40
+ * <DropdownMenuGlassLabel>Danger Zone</DropdownMenuGlassLabel>
41
+ * <DropdownMenuGlassItem variant="destructive">Delete</DropdownMenuGlassItem>
42
+ * </DropdownMenuGlassContent>
43
+ * </DropdownMenuGlass>
44
+ * ```
45
+ *
46
+ * @see https://www.radix-ui.com/primitives/docs/components/dropdown-menu
47
+ */
48
+ import * as React from 'react';
49
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
50
+ declare const DropdownMenuGlass: React.FC<DropdownMenuPrimitive.DropdownMenuProps>;
51
+ declare const DropdownMenuGlassTrigger: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
52
+ declare const DropdownMenuGlassGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
53
+ declare const DropdownMenuGlassPortal: React.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
54
+ declare const DropdownMenuGlassSub: React.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
55
+ declare const DropdownMenuGlassRadioGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
56
+ declare const DropdownMenuGlassSubTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
57
+ inset?: boolean;
58
+ } & React.RefAttributes<HTMLDivElement>>;
59
+ declare const DropdownMenuGlassSubContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
60
+ declare const DropdownMenuGlassContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
61
+ export interface DropdownMenuGlassItemProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> {
62
+ inset?: boolean;
63
+ variant?: 'default' | 'destructive';
64
+ }
65
+ declare const DropdownMenuGlassItem: React.ForwardRefExoticComponent<DropdownMenuGlassItemProps & React.RefAttributes<HTMLDivElement>>;
66
+ declare const DropdownMenuGlassCheckboxItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
67
+ declare const DropdownMenuGlassRadioItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
68
+ declare const DropdownMenuGlassLabel: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
69
+ inset?: boolean;
70
+ } & React.RefAttributes<HTMLDivElement>>;
71
+ declare const DropdownMenuGlassSeparator: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
72
+ declare const DropdownMenuGlassShortcut: {
73
+ ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
74
+ displayName: string;
75
+ };
76
+ export { DropdownMenuGlass, DropdownMenuGlassTrigger, DropdownMenuGlassContent, DropdownMenuGlassItem, DropdownMenuGlassCheckboxItem, DropdownMenuGlassRadioItem, DropdownMenuGlassLabel, DropdownMenuGlassSeparator, DropdownMenuGlassShortcut, DropdownMenuGlassGroup, DropdownMenuGlassPortal, DropdownMenuGlassSub, DropdownMenuGlassSubContent, DropdownMenuGlassSubTrigger, DropdownMenuGlassRadioGroup, };
77
+ //# sourceMappingURL=dropdown-menu-glass.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-menu-glass.d.ts","sourceRoot":"","sources":["../../../../src/components/glass/ui/dropdown-menu-glass.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAC;AAUvE,OAAO,mBAAmB,CAAC;AAM3B,QAAA,MAAM,iBAAiB,mDAA6B,CAAC;AAMrD,QAAA,MAAM,wBAAwB,0HAAgC,CAAC;AAM/D,QAAA,MAAM,sBAAsB,qHAA8B,CAAC;AAM3D,QAAA,MAAM,uBAAuB,yDAA+B,CAAC;AAM7D,QAAA,MAAM,oBAAoB,sDAA4B,CAAC;AAMvD,QAAA,MAAM,2BAA2B,0HAAmC,CAAC;AAMrE,QAAA,MAAM,2BAA2B;YAGrB,OAAO;wCAgBjB,CAAC;AAOH,QAAA,MAAM,2BAA2B,6KAU/B,CAAC;AAOH,QAAA,MAAM,wBAAwB,0KAa5B,CAAC;AAOH,MAAM,WAAW,0BAA2B,SAAQ,KAAK,CAAC,wBAAwB,CAChF,OAAO,qBAAqB,CAAC,IAAI,CAClC;IACC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;CACrC;AAED,QAAA,MAAM,qBAAqB,mGAazB,CAAC;AAOH,QAAA,MAAM,6BAA6B,+KAiBjC,CAAC;AAOH,QAAA,MAAM,0BAA0B,4KAgB9B,CAAC;AAOH,QAAA,MAAM,sBAAsB;YAGhB,OAAO;wCAQjB,CAAC;AAOH,QAAA,MAAM,0BAA0B,4KAS9B,CAAC;AAOH,QAAA,MAAM,yBAAyB;8BAG5B,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC;;CAOvC,CAAC;AAOF,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,GAC5B,CAAC"}
@@ -0,0 +1,78 @@
1
+ import { ReactNode } from 'react';
2
+ import { VariantProps } from 'class-variance-authority';
3
+ import { cardIntensity, GlowType, PaddingType } from '../../../lib/variants/glass-card-variants';
4
+ /**
5
+ * Props for the GlassCard component
6
+ *
7
+ * A glass-themed container with configurable blur, glow effects, and hover animations.
8
+ * Features polymorphic rendering via `asChild` for semantic HTML flexibility.
9
+ *
10
+ * @accessibility
11
+ * - **Keyboard Navigation:** When used with `asChild` as a link/button, inherits native keyboard support (Enter/Space activation)
12
+ * - **Focus Management:** Focus ring applied to child element when using `asChild` pattern with interactive elements
13
+ * - **Screen Readers:** Semantic HTML preserved via `asChild` - use appropriate elements (`<a>`, `<button>`, `<article>`)
14
+ * - **Hover State:** Hover effects are purely visual and do not affect functionality (progressive enhancement)
15
+ * - **Touch Targets:** When interactive, ensure child element meets minimum 44x44px touch target (WCAG 2.5.5)
16
+ * - **Color Contrast:** Card border and background meet WCAG AA contrast requirements, content contrast is consumer's responsibility
17
+ * - **Motion:** Hover scale animation respects `prefers-reduced-motion` settings via CSS transitions
18
+ *
19
+ * @example
20
+ * ```tsx
21
+ * // Basic card
22
+ * <GlassCard intensity="medium">Content</GlassCard>
23
+ *
24
+ * // As a clickable link with accessible name
25
+ * <GlassCard asChild intensity="medium">
26
+ * <a href="/details" aria-label="View product details">
27
+ * <h3>Product Title</h3>
28
+ * <p>Description</p>
29
+ * </a>
30
+ * </GlassCard>
31
+ *
32
+ * // Different intensity levels
33
+ * <GlassCard intensity="subtle">Subtle blur</GlassCard>
34
+ * <GlassCard intensity="medium">Standard blur</GlassCard>
35
+ * <GlassCard intensity="strong">Heavy blur</GlassCard>
36
+ *
37
+ * // With glow effects
38
+ * <GlassCard glow="blue">Blue glow card</GlassCard>
39
+ * <GlassCard glow="violet">Violet glow card</GlassCard>
40
+ * <GlassCard glow="cyan">Cyan glow card</GlassCard>
41
+ *
42
+ * // As a button (interactive) with role
43
+ * <GlassCard asChild hover intensity="medium">
44
+ * <button onClick={handleClick} aria-label="Open settings">
45
+ * <Settings className="w-6 h-6" />
46
+ * <span>Settings</span>
47
+ * </button>
48
+ * </GlassCard>
49
+ *
50
+ * // Article card with semantic HTML
51
+ * <GlassCard asChild intensity="medium" padding="lg">
52
+ * <article>
53
+ * <header><h2>Article Title</h2></header>
54
+ * <p>Article content...</p>
55
+ * <footer>Published: Jan 1, 2025</footer>
56
+ * </article>
57
+ * </GlassCard>
58
+ * ```
59
+ */
60
+ export interface GlassCardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'style'>, VariantProps<typeof cardIntensity> {
61
+ /**
62
+ * Render as child element instead of div (polymorphic rendering).
63
+ * Useful for making cards clickable links or custom interactive elements.
64
+ * @default false
65
+ * @example
66
+ * ```tsx
67
+ * <GlassCard asChild>
68
+ * <a href="/article">Article Content</a>
69
+ * </GlassCard>
70
+ * ```
71
+ */
72
+ readonly asChild?: boolean;
73
+ readonly children: ReactNode;
74
+ readonly glow?: GlowType;
75
+ readonly padding?: PaddingType;
76
+ }
77
+ export declare const GlassCard: import('react').ForwardRefExoticComponent<GlassCardProps & import('react').RefAttributes<HTMLDivElement>>;
78
+ //# sourceMappingURL=glass-card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glass-card.d.ts","sourceRoot":"","sources":["../../../../src/components/glass/ui/glass-card.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,SAAS,EAEf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,QAAQ,EAAiB,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAoB/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,MAAM,WAAW,cACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,EACzD,YAAY,CAAC,OAAO,aAAa,CAAC;IACpC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAE3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;CAChC;AA0BD,eAAO,MAAM,SAAS,2GA6CrB,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Glass UI Components - Barrel Exports
3
+ *
4
+ * Level 1: UI Components (18 components)
5
+ * Base glassmorphism components with theme-aware styling
6
+ * Note: ProgressGlass moved to specialized/
7
+ * Note: SelectGlass removed in v1.0.0 (replaced by ComboBoxGlass)
8
+ */
9
+ export { AlertGlass, AlertGlassTitle, AlertGlassDescription } from './alert-glass';
10
+ export type { AlertGlassProps, AlertGlassTitleProps, AlertGlassDescriptionProps, } from './alert-glass';
11
+ export { AvatarGlass, AvatarGlassImage, AvatarGlassFallback, AvatarGlassSimple, } from './avatar-glass';
12
+ export type { AvatarStatus, AvatarSize } from './avatar-glass';
13
+ export { BadgeGlass } from './badge-glass';
14
+ export type { BadgeGlassProps } from './badge-glass';
15
+ export { ButtonGlass } from './button-glass';
16
+ export type { ButtonGlassProps } from './button-glass';
17
+ export { CheckboxGlass } from './checkbox-glass';
18
+ export type { CheckboxGlassProps } from './checkbox-glass';
19
+ export { CircularProgressGlass } from './circular-progress-glass';
20
+ export type { CircularProgressGlassProps } from './circular-progress-glass';
21
+ export { ComboBoxGlass } from './combobox-glass';
22
+ export type { ComboBoxGlassProps } from './combobox-glass';
23
+ export { DropdownGlass } from './dropdown-glass';
24
+ export type { DropdownGlassProps } from './dropdown-glass';
25
+ export { GlassCard } from './glass-card';
26
+ export type { GlassCardProps } from './glass-card';
27
+ export { CardGlass, CardGlassRoot, CardGlassHeader, CardGlassTitle, CardGlassDescription, CardGlassAction, CardGlassContent, CardGlassFooter, } from './card-glass';
28
+ export type { CardGlassRootProps } from './card-glass';
29
+ export { InputGlass } from './input-glass';
30
+ export type { InputGlassProps } from './input-glass';
31
+ export { ModalGlass } from './modal-glass';
32
+ export { NotificationGlass } from './notification-glass';
33
+ export type { NotificationGlassProps } from './notification-glass';
34
+ export { PopoverGlass, PopoverGlassTrigger, PopoverGlassContent, PopoverGlassAnchor, PopoverGlassLegacy, } from './popover-glass';
35
+ export type { PopoverGlassLegacyProps } from './popover-glass';
36
+ export { SkeletonGlass } from './skeleton-glass';
37
+ export type { SkeletonGlassProps } from './skeleton-glass';
38
+ export { SliderGlass } from './slider-glass';
39
+ export type { SliderGlassProps } from './slider-glass';
40
+ export { TabsGlass } from './tabs-glass';
41
+ export { ToggleGlass } from './toggle-glass';
42
+ export type { ToggleGlassProps } from './toggle-glass';
43
+ export { TooltipGlass, TooltipGlassProvider, TooltipGlassTrigger, TooltipGlassContent, TooltipGlassSimple, } from './tooltip-glass';
44
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/glass/ui/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACnF,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,YAAY,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAGnD,OAAO,EACL,SAAS,EACT,aAAa,EACb,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,98 @@
1
+ import { InputHTMLAttributes } from 'react';
2
+ import { VariantProps } from 'class-variance-authority';
3
+ import { LucideIcon } from 'lucide-react';
4
+ import { inputVariants } from '../../../lib/variants/input-glass-variants';
5
+ /**
6
+ * Props for the InputGlass component
7
+ *
8
+ * A glass-themed input field with labels, validation states, and icon support.
9
+ * Features focus glow effects and theme-aware styling.
10
+ *
11
+ * @accessibility
12
+ * - **Keyboard Navigation:** Full keyboard support with native `<input>` element, standard tab navigation
13
+ * - **Focus Management:** Visible focus ring using `--focus-glow` CSS variable (WCAG 2.4.7)
14
+ * - **Screen Readers:** Semantic `<label>` elements properly associated via `htmlFor`, error/success messages announced with `aria-describedby`
15
+ * - **Error State:** Red border and error message displayed below input, programmatically associated for screen readers
16
+ * - **Success State:** Green border and success message displayed below input, programmatically associated for screen readers
17
+ * - **Touch Targets:** Minimum 44x44px touch target on mobile devices (WCAG 2.5.5)
18
+ * - **Color Contrast:** All text meets WCAG AA contrast ratio 4.5:1 minimum against backgrounds
19
+ * - **Motion:** Icon color transitions respect `prefers-reduced-motion` settings
20
+ *
21
+ * @example
22
+ * ```tsx
23
+ * // Basic input with label
24
+ * <InputGlass label="Email" placeholder="you@example.com" />
25
+ *
26
+ * // With aria-describedby for additional context
27
+ * <InputGlass
28
+ * label="Username"
29
+ * placeholder="Enter username"
30
+ * aria-describedby="username-help"
31
+ * />
32
+ * <span id="username-help">Must be 3-20 characters</span>
33
+ *
34
+ * // With validation states (automatically announced to screen readers)
35
+ * <InputGlass label="Username" error="Username is required" />
36
+ * <InputGlass label="Password" success="Strong password" type="password" />
37
+ *
38
+ * // With icon and accessible label
39
+ * <InputGlass
40
+ * icon={Search}
41
+ * placeholder="Search..."
42
+ * aria-label="Search products"
43
+ * />
44
+ * <InputGlass icon={Mail} iconPosition="right" type="email" />
45
+ *
46
+ * // Disabled state (automatically announced)
47
+ * <InputGlass label="Email" disabled value="locked@example.com" />
48
+ *
49
+ * // Form integration with accessible error handling
50
+ * <form onSubmit={handleSubmit}>
51
+ * <InputGlass
52
+ * label="Email"
53
+ * type="email"
54
+ * required
55
+ * error={errors.email}
56
+ * aria-invalid={!!errors.email}
57
+ * />
58
+ * <InputGlass
59
+ * label="Password"
60
+ * type="password"
61
+ * icon={Lock}
62
+ * error={errors.password}
63
+ * />
64
+ * <ButtonGlass type="submit">Sign In</ButtonGlass>
65
+ * </form>
66
+ * ```
67
+ */
68
+ export interface InputGlassProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'>, VariantProps<typeof inputVariants> {
69
+ /**
70
+ * Label text displayed above the input field
71
+ */
72
+ readonly label?: string;
73
+ /**
74
+ * Error message to display below the input (red styling)
75
+ */
76
+ readonly error?: string;
77
+ /**
78
+ * Success message to display below the input (green styling)
79
+ */
80
+ readonly success?: string;
81
+ /**
82
+ * Icon component from lucide-react to display
83
+ * @example icon={Search}
84
+ */
85
+ readonly icon?: LucideIcon;
86
+ /**
87
+ * Position of the icon relative to input text
88
+ * @default "left"
89
+ */
90
+ readonly iconPosition?: 'left' | 'right';
91
+ /**
92
+ * @deprecated Use `size` prop instead. Will be removed in v4.0
93
+ * @default "md"
94
+ */
95
+ readonly inputSize?: 'sm' | 'md' | 'lg';
96
+ }
97
+ export declare const InputGlass: import('react').ForwardRefExoticComponent<InputGlassProps & import('react').RefAttributes<HTMLInputElement>>;
98
+ //# sourceMappingURL=input-glass.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-glass.d.ts","sourceRoot":"","sources":["../../../../src/components/glass/ui/input-glass.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAGL,KAAK,mBAAmB,EAGzB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,OAAO,mBAAmB,CAAC;AA6B3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC;IAC/F;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAEzC;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAGzC;AAMD,eAAO,MAAM,UAAU,8GAgGtB,CAAC"}
@@ -0,0 +1,180 @@
1
+ import { ModalSize } from '../../../lib/variants/modal-glass-variants';
2
+ /**
3
+ * ModalGlass Component (Radix UI Dialog-based)
4
+ *
5
+ * Glass-themed modal/dialog with full shadcn/ui Dialog API compatibility.
6
+ * Built on @radix-ui/react-dialog for accessibility and state management.
7
+ *
8
+ * @example Uncontrolled with Trigger (shadcn/ui pattern)
9
+ * ```tsx
10
+ * <ModalGlass.Root>
11
+ * <ModalGlass.Trigger asChild>
12
+ * <ButtonGlass>Open Dialog</ButtonGlass>
13
+ * </ModalGlass.Trigger>
14
+ * <ModalGlass.Content>
15
+ * <ModalGlass.Header>
16
+ * <ModalGlass.Title>Dialog Title</ModalGlass.Title>
17
+ * <ModalGlass.Description>Dialog description</ModalGlass.Description>
18
+ * </ModalGlass.Header>
19
+ * <ModalGlass.Body>Content here</ModalGlass.Body>
20
+ * <ModalGlass.Footer>
21
+ * <ModalGlass.Close asChild>
22
+ * <ButtonGlass variant="ghost">Cancel</ButtonGlass>
23
+ * </ModalGlass.Close>
24
+ * <ButtonGlass>Confirm</ButtonGlass>
25
+ * </ModalGlass.Footer>
26
+ * </ModalGlass.Content>
27
+ * </ModalGlass.Root>
28
+ * ```
29
+ *
30
+ * @example Controlled mode (programmatic)
31
+ * ```tsx
32
+ * <ModalGlass.Root open={open} onOpenChange={setOpen}>
33
+ * <ModalGlass.Content>
34
+ * <ModalGlass.Header>
35
+ * <ModalGlass.Title>Confirm Action</ModalGlass.Title>
36
+ * </ModalGlass.Header>
37
+ * <ModalGlass.Body>Are you sure?</ModalGlass.Body>
38
+ * <ModalGlass.Footer>
39
+ * <ButtonGlass onClick={() => setOpen(false)}>Cancel</ButtonGlass>
40
+ * </ModalGlass.Footer>
41
+ * </ModalGlass.Content>
42
+ * </ModalGlass.Root>
43
+ * ```
44
+ *
45
+ * @accessibility
46
+ * - Built on Radix UI Dialog with full WCAG 2.1 AA compliance
47
+ * - Keyboard: Escape to close, Tab for focus trap
48
+ * - Screen Readers: role="dialog", aria-modal, aria-labelledby, aria-describedby
49
+ * - Focus Management: Auto-focus on open, return focus on close
50
+ *
51
+ * @since v2.0.0 - Migrated to Radix UI Dialog, added Trigger and Portal
52
+ */
53
+ import * as React from 'react';
54
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
55
+ interface ModalRootProps extends React.ComponentProps<typeof DialogPrimitive.Root> {
56
+ /** Size variant for the modal */
57
+ size?: ModalSize;
58
+ }
59
+ /**
60
+ * ModalGlass.Root - Dialog root component
61
+ *
62
+ * Supports both controlled (open/onOpenChange) and uncontrolled (with Trigger) modes.
63
+ */
64
+ declare function ModalRoot({ size, children, ...props }: ModalRootProps): import("react/jsx-runtime").JSX.Element;
65
+ /**
66
+ * ModalGlass.Trigger - Opens the modal when clicked
67
+ *
68
+ * Use `asChild` to render as the child element instead of a button.
69
+ */
70
+ declare function ModalTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
71
+ /**
72
+ * ModalGlass.Portal - Renders children into a portal
73
+ */
74
+ declare function ModalPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
75
+ /**
76
+ * ModalGlass.Overlay - Backdrop with glass blur effect
77
+ */
78
+ declare const ModalOverlay: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
79
+ interface ModalContentProps extends React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> {
80
+ /** Show close button in top-right corner */
81
+ showCloseButton?: boolean;
82
+ /** Override size from Root */
83
+ size?: ModalSize;
84
+ }
85
+ /**
86
+ * ModalGlass.Content - Main modal container with glass styling
87
+ *
88
+ * Automatically renders Portal and Overlay.
89
+ */
90
+ declare const ModalContent: React.ForwardRefExoticComponent<ModalContentProps & React.RefAttributes<HTMLDivElement>>;
91
+ /**
92
+ * ModalGlass.Header - Header section with flex layout
93
+ */
94
+ declare function ModalHeader({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
95
+ /**
96
+ * ModalGlass.Body - Main content area
97
+ *
98
+ * Note: shadcn/ui Dialog doesn't have DialogBody, but we keep it for convenience.
99
+ */
100
+ declare function ModalBody({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
101
+ /**
102
+ * ModalGlass.Footer - Footer section with flex layout for actions
103
+ */
104
+ declare function ModalFooter({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
105
+ /**
106
+ * ModalGlass.Title - Modal title with proper accessibility
107
+ */
108
+ declare const ModalTitle: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
109
+ /**
110
+ * ModalGlass.Description - Modal description text
111
+ */
112
+ declare const ModalDescription: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
113
+ /**
114
+ * ModalGlass.Close - Closes the modal when clicked
115
+ *
116
+ * Use `asChild` to render as the child element.
117
+ *
118
+ * @example
119
+ * ```tsx
120
+ * <ModalGlass.Close asChild>
121
+ * <ButtonGlass variant="ghost">Cancel</ButtonGlass>
122
+ * </ModalGlass.Close>
123
+ * ```
124
+ */
125
+ declare function ModalClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
126
+ /**
127
+ * ModalGlass - Glass-themed Dialog with shadcn/ui API compatibility
128
+ *
129
+ * Built on @radix-ui/react-dialog for full accessibility support.
130
+ *
131
+ * @example Uncontrolled (with Trigger)
132
+ * ```tsx
133
+ * <ModalGlass.Root>
134
+ * <ModalGlass.Trigger asChild>
135
+ * <ButtonGlass>Open</ButtonGlass>
136
+ * </ModalGlass.Trigger>
137
+ * <ModalGlass.Content>
138
+ * <ModalGlass.Header>
139
+ * <ModalGlass.Title>Title</ModalGlass.Title>
140
+ * </ModalGlass.Header>
141
+ * <ModalGlass.Body>Content</ModalGlass.Body>
142
+ * <ModalGlass.Footer>
143
+ * <ModalGlass.Close asChild>
144
+ * <ButtonGlass>Close</ButtonGlass>
145
+ * </ModalGlass.Close>
146
+ * </ModalGlass.Footer>
147
+ * </ModalGlass.Content>
148
+ * </ModalGlass.Root>
149
+ * ```
150
+ *
151
+ * @example Controlled
152
+ * ```tsx
153
+ * <ModalGlass.Root open={open} onOpenChange={setOpen}>
154
+ * <ModalGlass.Content showCloseButton={false}>
155
+ * <ModalGlass.Header>
156
+ * <ModalGlass.Title>Confirm</ModalGlass.Title>
157
+ * </ModalGlass.Header>
158
+ * <ModalGlass.Footer>
159
+ * <ButtonGlass onClick={() => setOpen(false)}>OK</ButtonGlass>
160
+ * </ModalGlass.Footer>
161
+ * </ModalGlass.Content>
162
+ * </ModalGlass.Root>
163
+ * ```
164
+ */
165
+ export declare const ModalGlass: {
166
+ Root: typeof ModalRoot;
167
+ Trigger: typeof ModalTrigger;
168
+ Portal: typeof ModalPortal;
169
+ Overlay: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
170
+ Content: React.ForwardRefExoticComponent<ModalContentProps & React.RefAttributes<HTMLDivElement>>;
171
+ Header: typeof ModalHeader;
172
+ Body: typeof ModalBody;
173
+ Footer: typeof ModalFooter;
174
+ Title: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
175
+ Description: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
176
+ Close: typeof ModalClose;
177
+ };
178
+ export { ModalRoot, ModalTrigger, ModalPortal, ModalOverlay, ModalContent, ModalHeader, ModalBody, ModalFooter, ModalTitle, ModalDescription, ModalClose, };
179
+ export type { ModalRootProps, ModalContentProps };
180
+ //# sourceMappingURL=modal-glass.d.ts.map