@jarllyng/nostromo 3.1.1 → 3.3.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 (302) hide show
  1. package/dist/base.css +0 -48
  2. package/dist/chunk-2DNQXAMB.cjs +1 -0
  3. package/dist/chunk-2HYJSYQX.js +3 -0
  4. package/dist/chunk-2HYJSYQX.js.map +1 -0
  5. package/dist/chunk-2JQROMCM.js +1 -0
  6. package/dist/chunk-35I2BJC3.js +3 -0
  7. package/dist/chunk-35I2BJC3.js.map +1 -0
  8. package/dist/chunk-35RWQSO2.cjs +3 -0
  9. package/dist/chunk-35RWQSO2.cjs.map +1 -0
  10. package/dist/chunk-3BNGK67W.js +1 -0
  11. package/dist/chunk-3QVQ2TNE.cjs +3 -0
  12. package/dist/chunk-3QVQ2TNE.cjs.map +1 -0
  13. package/dist/chunk-3V3OIZWQ.cjs +1 -0
  14. package/dist/chunk-44HISN45.js +1 -0
  15. package/dist/chunk-4FSJEW7W.cjs +1 -0
  16. package/dist/chunk-55N2IT62.cjs +1 -0
  17. package/dist/chunk-5PVFLXPO.cjs +1 -0
  18. package/dist/{chunk-ZC4HJSII.cjs → chunk-5Z3MYAVM.cjs} +3 -2
  19. package/dist/{chunk-ZC4HJSII.cjs.map → chunk-5Z3MYAVM.cjs.map} +1 -1
  20. package/dist/chunk-6QAYHUNV.js +1 -0
  21. package/dist/chunk-7PPAI3MM.cjs +1 -0
  22. package/dist/chunk-7SPPGTBT.cjs +1 -0
  23. package/dist/chunk-7WEIVLG3.cjs +1 -0
  24. package/dist/chunk-7YFUAGIW.cjs +1 -0
  25. package/dist/chunk-ABA7B5DE.js +1 -0
  26. package/dist/chunk-AC2JBXHQ.js +1 -0
  27. package/dist/chunk-AHRTNKXE.js +1 -0
  28. package/dist/chunk-AVTJE2O2.js +1 -0
  29. package/dist/{chunk-ZQDFYSZB.cjs → chunk-AYEM2M4H.cjs} +3 -2
  30. package/dist/{chunk-ZQDFYSZB.cjs.map → chunk-AYEM2M4H.cjs.map} +1 -1
  31. package/dist/chunk-BL2TM4YT.js +3 -0
  32. package/dist/chunk-BL2TM4YT.js.map +1 -0
  33. package/dist/chunk-BYV75TDY.cjs +1 -0
  34. package/dist/{chunk-BSUHBLZO.cjs → chunk-BZ5ZCZJX.cjs} +3 -2
  35. package/dist/{chunk-BSUHBLZO.cjs.map → chunk-BZ5ZCZJX.cjs.map} +1 -1
  36. package/dist/chunk-BZF3ZOAN.js +1 -0
  37. package/dist/chunk-C7HZAQBX.cjs +3 -0
  38. package/dist/chunk-C7HZAQBX.cjs.map +1 -0
  39. package/dist/chunk-CEMOHO3Z.js +1 -0
  40. package/dist/chunk-COXN6XBA.js +1 -0
  41. package/dist/chunk-DNTPD3PJ.js +3 -0
  42. package/dist/chunk-DNTPD3PJ.js.map +1 -0
  43. package/dist/chunk-EFCNLYYW.cjs +1 -0
  44. package/dist/chunk-EVRQYWZ3.cjs +1 -0
  45. package/dist/chunk-FUENXWR7.cjs +1 -0
  46. package/dist/chunk-G35BR7SK.cjs +1 -0
  47. package/dist/chunk-HD3TMQPR.js +1 -0
  48. package/dist/{chunk-TGPWW7FC.js → chunk-HRJXPCGF.js} +3 -2
  49. package/dist/{chunk-TGPWW7FC.js.map → chunk-HRJXPCGF.js.map} +1 -1
  50. package/dist/chunk-HWZTMVQV.cjs +1 -0
  51. package/dist/chunk-IOX4WPJL.cjs +1 -0
  52. package/dist/chunk-ITRGJNWL.cjs +1 -0
  53. package/dist/chunk-J4VRJVTO.cjs +1 -0
  54. package/dist/chunk-JCETHQ55.cjs +3 -0
  55. package/dist/chunk-JCETHQ55.cjs.map +1 -0
  56. package/dist/chunk-JEHIMQQZ.js +1 -0
  57. package/dist/chunk-JUOCEYUF.cjs +1 -0
  58. package/dist/chunk-K2JCGDU7.cjs +1 -0
  59. package/dist/chunk-LR4VUFOQ.js +1 -0
  60. package/dist/chunk-LXQT7FH6.cjs +1 -0
  61. package/dist/chunk-LYVCB45L.js +1 -0
  62. package/dist/chunk-MDXW6IRM.cjs +3 -0
  63. package/dist/chunk-MDXW6IRM.cjs.map +1 -0
  64. package/dist/chunk-MLJZU63I.cjs +1 -0
  65. package/dist/chunk-MLSE5XSB.cjs +1 -0
  66. package/dist/chunk-MOPCE5RA.js +3 -0
  67. package/dist/chunk-MOPCE5RA.js.map +1 -0
  68. package/dist/chunk-MVCGR7JQ.js +1 -0
  69. package/dist/chunk-MY2KMTUS.js +3 -0
  70. package/dist/chunk-MY2KMTUS.js.map +1 -0
  71. package/dist/chunk-NBX6FKCA.cjs +3 -0
  72. package/dist/chunk-NBX6FKCA.cjs.map +1 -0
  73. package/dist/chunk-NC27D5Y3.cjs +3 -0
  74. package/dist/chunk-NC27D5Y3.cjs.map +1 -0
  75. package/dist/chunk-NLD4R74T.js +1 -0
  76. package/dist/chunk-NPSIDFOF.cjs +3 -0
  77. package/dist/chunk-NPSIDFOF.cjs.map +1 -0
  78. package/dist/chunk-OEN63W3G.cjs +1 -0
  79. package/dist/chunk-OUWOPYAX.js +1 -0
  80. package/dist/chunk-PMNNV4ML.cjs +1 -0
  81. package/dist/chunk-Q6QMSAJR.js +1 -0
  82. package/dist/chunk-QBAURT3I.js +1 -0
  83. package/dist/chunk-QKM5LPRW.js +3 -0
  84. package/dist/chunk-QKM5LPRW.js.map +1 -0
  85. package/dist/chunk-RC2THAIA.js +1 -0
  86. package/dist/chunk-SVWQWRPZ.js +3 -0
  87. package/dist/chunk-SVWQWRPZ.js.map +1 -0
  88. package/dist/chunk-UIEGBT4T.js +3 -0
  89. package/dist/chunk-UIEGBT4T.js.map +1 -0
  90. package/dist/chunk-UL6MF7ES.js +1 -0
  91. package/dist/{chunk-4WFEVNXW.cjs → chunk-V45EOCAD.cjs} +3 -2
  92. package/dist/chunk-V45EOCAD.cjs.map +1 -0
  93. package/dist/chunk-V77N662N.cjs +1 -0
  94. package/dist/chunk-VD6S2PE4.js +1 -0
  95. package/dist/chunk-VNDL67OG.cjs +3 -0
  96. package/dist/chunk-VNDL67OG.cjs.map +1 -0
  97. package/dist/chunk-WK6LNC2E.cjs +3 -0
  98. package/dist/chunk-WK6LNC2E.cjs.map +1 -0
  99. package/dist/{chunk-M5IBD3KV.js → chunk-WO3KCAN6.js} +3 -2
  100. package/dist/{chunk-M5IBD3KV.js.map → chunk-WO3KCAN6.js.map} +1 -1
  101. package/dist/chunk-WW2DDHCI.js +1 -0
  102. package/dist/{chunk-7W456HZL.js → chunk-XJJJEWSU.js} +3 -2
  103. package/dist/{chunk-7W456HZL.js.map → chunk-XJJJEWSU.js.map} +1 -1
  104. package/dist/chunk-XLZJ6HBL.js +3 -0
  105. package/dist/chunk-XLZJ6HBL.js.map +1 -0
  106. package/dist/chunk-XPIBRXTW.cjs +1 -0
  107. package/dist/chunk-XQUZ7DUN.js +1 -0
  108. package/dist/chunk-XRVHMGMD.js +3 -0
  109. package/dist/chunk-XRVHMGMD.js.map +1 -0
  110. package/dist/chunk-YNSODGYK.js +1 -0
  111. package/dist/chunk-ZEJAFIOC.js +1 -0
  112. package/dist/components/core/accordion.cjs +1 -0
  113. package/dist/components/core/accordion.js +1 -0
  114. package/dist/components/core/alert.cjs +1 -0
  115. package/dist/components/core/alert.d.cts +1 -1
  116. package/dist/components/core/alert.d.ts +1 -1
  117. package/dist/components/core/alert.js +1 -0
  118. package/dist/components/core/avatar.cjs +1 -0
  119. package/dist/components/core/avatar.js +1 -0
  120. package/dist/components/core/badge.cjs +1 -0
  121. package/dist/components/core/badge.d.cts +2 -2
  122. package/dist/components/core/badge.d.ts +2 -2
  123. package/dist/components/core/badge.js +1 -0
  124. package/dist/components/core/breadcrumb.cjs +2 -1
  125. package/dist/components/core/breadcrumb.d.cts +10 -4
  126. package/dist/components/core/breadcrumb.d.ts +10 -4
  127. package/dist/components/core/breadcrumb.js +2 -1
  128. package/dist/components/core/button.cjs +1 -0
  129. package/dist/components/core/button.d.cts +2 -2
  130. package/dist/components/core/button.d.ts +2 -2
  131. package/dist/components/core/button.js +1 -0
  132. package/dist/components/core/calendar.cjs +2 -1
  133. package/dist/components/core/calendar.js +2 -1
  134. package/dist/components/core/card.cjs +1 -0
  135. package/dist/components/core/card.js +1 -0
  136. package/dist/components/core/charts-lazy.cjs +2 -1
  137. package/dist/components/core/charts-lazy.js +2 -1
  138. package/dist/components/core/charts.cjs +2 -1
  139. package/dist/components/core/charts.js +2 -1
  140. package/dist/components/core/checkbox.cjs +2 -1
  141. package/dist/components/core/checkbox.d.cts +1 -1
  142. package/dist/components/core/checkbox.d.ts +1 -1
  143. package/dist/components/core/checkbox.js +2 -1
  144. package/dist/components/core/data-table.cjs +2 -1
  145. package/dist/components/core/data-table.d.cts +2 -2
  146. package/dist/components/core/data-table.d.ts +2 -2
  147. package/dist/components/core/data-table.js +2 -1
  148. package/dist/components/core/dialog.cjs +2 -1
  149. package/dist/components/core/dialog.d.cts +21 -3
  150. package/dist/components/core/dialog.d.ts +21 -3
  151. package/dist/components/core/dialog.js +2 -1
  152. package/dist/components/core/error-boundary.cjs +1 -0
  153. package/dist/components/core/error-boundary.d.cts +1 -1
  154. package/dist/components/core/error-boundary.d.ts +1 -1
  155. package/dist/components/core/error-boundary.js +1 -0
  156. package/dist/components/core/error-message.cjs +1 -0
  157. package/dist/components/core/error-message.d.cts +1 -1
  158. package/dist/components/core/error-message.d.ts +1 -1
  159. package/dist/components/core/error-message.js +1 -0
  160. package/dist/components/core/helper-text.cjs +1 -0
  161. package/dist/components/core/helper-text.d.cts +1 -1
  162. package/dist/components/core/helper-text.d.ts +1 -1
  163. package/dist/components/core/helper-text.js +1 -0
  164. package/dist/components/core/icon.cjs +2 -1
  165. package/dist/components/core/icon.d.cts +3 -3
  166. package/dist/components/core/icon.d.ts +3 -3
  167. package/dist/components/core/icon.js +2 -1
  168. package/dist/components/core/input.cjs +1 -0
  169. package/dist/components/core/input.d.cts +1 -1
  170. package/dist/components/core/input.d.ts +1 -1
  171. package/dist/components/core/input.js +1 -0
  172. package/dist/components/core/label.cjs +1 -0
  173. package/dist/components/core/label.d.cts +1 -1
  174. package/dist/components/core/label.d.ts +1 -1
  175. package/dist/components/core/label.js +1 -0
  176. package/dist/components/core/pagination.cjs +1 -0
  177. package/dist/components/core/pagination.d.cts +1 -1
  178. package/dist/components/core/pagination.d.ts +1 -1
  179. package/dist/components/core/pagination.js +1 -0
  180. package/dist/components/core/progress.cjs +1 -0
  181. package/dist/components/core/progress.d.cts +3 -3
  182. package/dist/components/core/progress.d.ts +3 -3
  183. package/dist/components/core/progress.js +1 -0
  184. package/dist/components/core/radio-group.cjs +1 -0
  185. package/dist/components/core/radio-group.d.cts +1 -1
  186. package/dist/components/core/radio-group.d.ts +1 -1
  187. package/dist/components/core/radio-group.js +1 -0
  188. package/dist/components/core/select.cjs +1 -0
  189. package/dist/components/core/select.d.cts +3 -3
  190. package/dist/components/core/select.d.ts +3 -3
  191. package/dist/components/core/select.js +1 -0
  192. package/dist/components/core/separator.cjs +2 -1
  193. package/dist/components/core/separator.js +2 -1
  194. package/dist/components/core/skeleton.cjs +2 -1
  195. package/dist/components/core/skeleton.d.cts +1 -1
  196. package/dist/components/core/skeleton.d.ts +1 -1
  197. package/dist/components/core/skeleton.js +2 -1
  198. package/dist/components/core/switch.cjs +1 -0
  199. package/dist/components/core/switch.d.cts +1 -1
  200. package/dist/components/core/switch.d.ts +1 -1
  201. package/dist/components/core/switch.js +1 -0
  202. package/dist/components/core/table.cjs +2 -1
  203. package/dist/components/core/table.d.cts +11 -1
  204. package/dist/components/core/table.d.ts +11 -1
  205. package/dist/components/core/table.js +2 -1
  206. package/dist/components/core/tabs.cjs +1 -0
  207. package/dist/components/core/tabs.js +1 -0
  208. package/dist/components/core/textarea.cjs +2 -1
  209. package/dist/components/core/textarea.d.cts +1 -1
  210. package/dist/components/core/textarea.d.ts +1 -1
  211. package/dist/components/core/textarea.js +2 -1
  212. package/dist/components/core/toast.cjs +2 -1
  213. package/dist/components/core/toast.d.cts +2 -2
  214. package/dist/components/core/toast.d.ts +2 -2
  215. package/dist/components/core/toast.js +2 -1
  216. package/dist/components/core/tooltip.cjs +2 -1
  217. package/dist/components/core/tooltip.d.cts +2 -2
  218. package/dist/components/core/tooltip.d.ts +2 -2
  219. package/dist/components/core/tooltip.js +2 -1
  220. package/dist/components/marketing/features.cjs +1 -0
  221. package/dist/components/marketing/features.d.cts +2 -2
  222. package/dist/components/marketing/features.d.ts +2 -2
  223. package/dist/components/marketing/features.js +1 -0
  224. package/dist/components/marketing/gallery.cjs +1 -0
  225. package/dist/components/marketing/gallery.d.cts +1 -1
  226. package/dist/components/marketing/gallery.d.ts +1 -1
  227. package/dist/components/marketing/gallery.js +1 -0
  228. package/dist/components/marketing/hero.cjs +1 -0
  229. package/dist/components/marketing/hero.js +1 -0
  230. package/dist/components/marketing/logo-wall.cjs +1 -0
  231. package/dist/components/marketing/logo-wall.js +1 -0
  232. package/dist/components/marketing/pricing.cjs +1 -0
  233. package/dist/components/marketing/pricing.d.cts +1 -1
  234. package/dist/components/marketing/pricing.d.ts +1 -1
  235. package/dist/components/marketing/pricing.js +1 -0
  236. package/dist/components/marketing/testimonials.cjs +1 -0
  237. package/dist/components/marketing/testimonials.d.cts +1 -1
  238. package/dist/components/marketing/testimonials.d.ts +1 -1
  239. package/dist/components/marketing/testimonials.js +1 -0
  240. package/dist/index.cjs +2 -1
  241. package/dist/index.cjs.map +1 -1
  242. package/dist/index.css +1 -1
  243. package/dist/index.css.map +1 -1
  244. package/dist/index.d.cts +3 -3
  245. package/dist/index.d.ts +3 -3
  246. package/dist/index.js +2 -1
  247. package/dist/index.js.map +1 -1
  248. package/dist/lib/lazy.cjs +1 -0
  249. package/dist/lib/lazy.d.cts +3 -3
  250. package/dist/lib/lazy.d.ts +3 -3
  251. package/dist/lib/lazy.js +1 -0
  252. package/dist/lib/performance.cjs +1 -0
  253. package/dist/lib/performance.js +1 -0
  254. package/dist/themes/lv-426.css +48 -52
  255. package/dist/themes/mother.css +52 -58
  256. package/dist/themes/nostromo.css +35 -30
  257. package/dist/themes/sulaco.css +47 -51
  258. package/dist/tokens.css +1 -1
  259. package/package.json +4 -3
  260. package/dist/chunk-4PN7OGLX.cjs +0 -2
  261. package/dist/chunk-4PN7OGLX.cjs.map +0 -1
  262. package/dist/chunk-4TYVEXRA.cjs +0 -2
  263. package/dist/chunk-4TYVEXRA.cjs.map +0 -1
  264. package/dist/chunk-4WFEVNXW.cjs.map +0 -1
  265. package/dist/chunk-B2BWBKZA.cjs +0 -2
  266. package/dist/chunk-B2BWBKZA.cjs.map +0 -1
  267. package/dist/chunk-CVOSWGQZ.js +0 -2
  268. package/dist/chunk-CVOSWGQZ.js.map +0 -1
  269. package/dist/chunk-EGQ2Q37R.cjs +0 -2
  270. package/dist/chunk-EGQ2Q37R.cjs.map +0 -1
  271. package/dist/chunk-EIXD3Y4R.js +0 -2
  272. package/dist/chunk-EIXD3Y4R.js.map +0 -1
  273. package/dist/chunk-G5ZSOVJY.cjs +0 -2
  274. package/dist/chunk-G5ZSOVJY.cjs.map +0 -1
  275. package/dist/chunk-G6TR5RGR.js +0 -2
  276. package/dist/chunk-G6TR5RGR.js.map +0 -1
  277. package/dist/chunk-GUJB555L.js +0 -2
  278. package/dist/chunk-GUJB555L.js.map +0 -1
  279. package/dist/chunk-JZROH43C.js +0 -2
  280. package/dist/chunk-JZROH43C.js.map +0 -1
  281. package/dist/chunk-MRZOLUSF.js +0 -2
  282. package/dist/chunk-MRZOLUSF.js.map +0 -1
  283. package/dist/chunk-OZ3RIKZO.cjs +0 -2
  284. package/dist/chunk-OZ3RIKZO.cjs.map +0 -1
  285. package/dist/chunk-PEYPRWZP.js +0 -2
  286. package/dist/chunk-PEYPRWZP.js.map +0 -1
  287. package/dist/chunk-PVHTEE5T.cjs +0 -2
  288. package/dist/chunk-PVHTEE5T.cjs.map +0 -1
  289. package/dist/chunk-QF5CRDZI.js +0 -2
  290. package/dist/chunk-QF5CRDZI.js.map +0 -1
  291. package/dist/chunk-RPRISB7O.cjs +0 -2
  292. package/dist/chunk-RPRISB7O.cjs.map +0 -1
  293. package/dist/chunk-SD4IIQ2I.cjs +0 -2
  294. package/dist/chunk-SD4IIQ2I.cjs.map +0 -1
  295. package/dist/chunk-SLGMKBST.js +0 -2
  296. package/dist/chunk-SLGMKBST.js.map +0 -1
  297. package/dist/chunk-TJFZAMBB.js +0 -2
  298. package/dist/chunk-TJFZAMBB.js.map +0 -1
  299. package/dist/chunk-VXMDVKAD.js +0 -2
  300. package/dist/chunk-VXMDVKAD.js.map +0 -1
  301. package/dist/chunk-ZYP2PDSX.cjs +0 -2
  302. package/dist/chunk-ZYP2PDSX.cjs.map +0 -1
package/dist/index.d.cts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { Button, ButtonProps, buttonVariants } from './components/core/button.cjs';
2
2
  export { Input, InputProps } from './components/core/input.cjs';
3
3
  export { Checkbox, CheckboxProps, checkboxVariants } from './components/core/checkbox.cjs';
4
- export { RadioGroup, RadioGroupProps, RadioItem, RadioItemProps, radioGroupVariants, radioItemVariants } from './components/core/radio-group.cjs';
4
+ export { RadioGroup, RadioItem as RadioGroupItem, RadioGroupProps, RadioItem, RadioItemProps, radioGroupVariants, radioItemVariants } from './components/core/radio-group.cjs';
5
5
  export { Switch, SwitchProps, switchThumbVariants, switchVariants } from './components/core/switch.cjs';
6
6
  export { Textarea, TextareaProps, textareaVariants } from './components/core/textarea.cjs';
7
7
  export { Alert, AlertDescription, AlertProps, AlertTitle, alertCloseVariants, alertDescriptionVariants, alertTitleVariants, alertVariants } from './components/core/alert.cjs';
@@ -11,7 +11,7 @@ export { Separator, SeparatorProps, separatorVariants } from './components/core/
11
11
  export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from './components/core/card.cjs';
12
12
  export { Badge, BadgeProps, badgeVariants } from './components/core/badge.cjs';
13
13
  export { Avatar, AvatarFallback, AvatarImage, AvatarProps, avatarVariants } from './components/core/avatar.cjs';
14
- export { Dialog, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogHeader, DialogHeaderProps, DialogProps, DialogTitle, DialogTitleProps } from './components/core/dialog.cjs';
14
+ export { Dialog, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogHeader, DialogHeaderProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps } from './components/core/dialog.cjs';
15
15
  export { ErrorMessage, ErrorMessageProps, errorMessageVariants } from './components/core/error-message.cjs';
16
16
  export { HelperText, HelperTextProps, helperTextVariants } from './components/core/helper-text.cjs';
17
17
  export { Label, LabelProps, labelVariants } from './components/core/label.cjs';
@@ -24,7 +24,7 @@ export { ColumnFilter, DataTable, DataTableProps, FilterType } from './component
24
24
  export { Calendar, CalendarMode, CalendarProps, calendarDayVariants, calendarVariants } from './components/core/calendar.cjs';
25
25
  export { Chart, ChartDataPoint, ChartProps, ChartType, chartContainerVariants } from './components/core/charts.cjs';
26
26
  export { LazyChart, LazyChartProps } from './components/core/charts-lazy.cjs';
27
- export { Toast, ToastContextType, ToastProps, ToastProvider, toastIconVariants, toastVariants, useToastNotification } from './components/core/toast.cjs';
27
+ export { Toast, ToastContextType, ToastProps, ToastProvider, toastIconVariants, toastVariants, useToast, useToastNotification } from './components/core/toast.cjs';
28
28
  export { Tooltip, TooltipContent, TooltipContentProps, TooltipProps, TooltipProvider, TooltipProviderProps, TooltipTrigger, TooltipTriggerProps, arrowVariants, tooltipVariants } from './components/core/tooltip.cjs';
29
29
  export { Accordion, AccordionContent, AccordionContentProps, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, AccordionTriggerProps, accordionChevronVariants, accordionContentVariants, accordionItemVariants, accordionTriggerVariants, accordionVariants } from './components/core/accordion.cjs';
30
30
  export { Skeleton, SkeletonAvatar, SkeletonAvatarProps, SkeletonButton, SkeletonButtonProps, SkeletonCard, SkeletonCardProps, SkeletonList, SkeletonProps, SkeletonTable, SkeletonText, SkeletonTextProps, skeletonVariants } from './components/core/skeleton.cjs';
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { Button, ButtonProps, buttonVariants } from './components/core/button.js';
2
2
  export { Input, InputProps } from './components/core/input.js';
3
3
  export { Checkbox, CheckboxProps, checkboxVariants } from './components/core/checkbox.js';
4
- export { RadioGroup, RadioGroupProps, RadioItem, RadioItemProps, radioGroupVariants, radioItemVariants } from './components/core/radio-group.js';
4
+ export { RadioGroup, RadioItem as RadioGroupItem, RadioGroupProps, RadioItem, RadioItemProps, radioGroupVariants, radioItemVariants } from './components/core/radio-group.js';
5
5
  export { Switch, SwitchProps, switchThumbVariants, switchVariants } from './components/core/switch.js';
6
6
  export { Textarea, TextareaProps, textareaVariants } from './components/core/textarea.js';
7
7
  export { Alert, AlertDescription, AlertProps, AlertTitle, alertCloseVariants, alertDescriptionVariants, alertTitleVariants, alertVariants } from './components/core/alert.js';
@@ -11,7 +11,7 @@ export { Separator, SeparatorProps, separatorVariants } from './components/core/
11
11
  export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from './components/core/card.js';
12
12
  export { Badge, BadgeProps, badgeVariants } from './components/core/badge.js';
13
13
  export { Avatar, AvatarFallback, AvatarImage, AvatarProps, avatarVariants } from './components/core/avatar.js';
14
- export { Dialog, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogHeader, DialogHeaderProps, DialogProps, DialogTitle, DialogTitleProps } from './components/core/dialog.js';
14
+ export { Dialog, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogHeader, DialogHeaderProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps } from './components/core/dialog.js';
15
15
  export { ErrorMessage, ErrorMessageProps, errorMessageVariants } from './components/core/error-message.js';
16
16
  export { HelperText, HelperTextProps, helperTextVariants } from './components/core/helper-text.js';
17
17
  export { Label, LabelProps, labelVariants } from './components/core/label.js';
@@ -24,7 +24,7 @@ export { ColumnFilter, DataTable, DataTableProps, FilterType } from './component
24
24
  export { Calendar, CalendarMode, CalendarProps, calendarDayVariants, calendarVariants } from './components/core/calendar.js';
25
25
  export { Chart, ChartDataPoint, ChartProps, ChartType, chartContainerVariants } from './components/core/charts.js';
26
26
  export { LazyChart, LazyChartProps } from './components/core/charts-lazy.js';
27
- export { Toast, ToastContextType, ToastProps, ToastProvider, toastIconVariants, toastVariants, useToastNotification } from './components/core/toast.js';
27
+ export { Toast, ToastContextType, ToastProps, ToastProvider, toastIconVariants, toastVariants, useToast, useToastNotification } from './components/core/toast.js';
28
28
  export { Tooltip, TooltipContent, TooltipContentProps, TooltipProps, TooltipProvider, TooltipProviderProps, TooltipTrigger, TooltipTriggerProps, arrowVariants, tooltipVariants } from './components/core/tooltip.js';
29
29
  export { Accordion, AccordionContent, AccordionContentProps, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, AccordionTriggerProps, accordionChevronVariants, accordionContentVariants, accordionItemVariants, accordionTriggerVariants, accordionVariants } from './components/core/accordion.js';
30
30
  export { Skeleton, SkeletonAvatar, SkeletonAvatarProps, SkeletonButton, SkeletonButtonProps, SkeletonCard, SkeletonCardProps, SkeletonList, SkeletonProps, SkeletonTable, SkeletonText, SkeletonTextProps, skeletonVariants } from './components/core/skeleton.js';
package/dist/index.js CHANGED
@@ -1,2 +1,3 @@
1
- export{e as Toast,d as ToastProvider,b as toastIconVariants,a as toastVariants,f as useToastNotification}from'./chunk-M5IBD3KV.js';export{f as Tooltip,d as TooltipContent,e as TooltipProvider,c as TooltipTrigger,b as arrowVariants,a as tooltipVariants}from'./chunk-MRZOLUSF.js';export{a as Features}from'./chunk-CEMOHO3Z.js';export{a as Gallery}from'./chunk-2JQROMCM.js';export{a as Hero}from'./chunk-JEHIMQQZ.js';export{a as LogoWall}from'./chunk-RC2THAIA.js';export{a as Pricing}from'./chunk-44HISN45.js';export{a as Testimonials}from'./chunk-LR4VUFOQ.js';export{c as RadioGroup,d as RadioItem,a as radioGroupVariants,b as radioItemVariants}from'./chunk-WW2DDHCI.js';export{d as Select,h as SelectContent,e as SelectGroup,j as SelectItem,i as SelectLabel,k as SelectSeparator,g as SelectTrigger,f as SelectValue,b as selectContentVariants,c as selectItemVariants,a as selectTriggerVariants}from'./chunk-BZF3ZOAN.js';export{b as Separator,a as separatorVariants}from'./chunk-CVOSWGQZ.js';export{c as Switch,b as switchThumbVariants,a as switchVariants}from'./chunk-OUWOPYAX.js';export{d as Tabs,g as TabsContent,e as TabsList,f as TabsTrigger,c as tabsContentVariants,a as tabsListVariants,b as tabsTriggerVariants}from'./chunk-ZEJAFIOC.js';export{b as Textarea,a as textareaVariants}from'./chunk-SLGMKBST.js';export{b as ErrorMessage,a as errorMessageVariants}from'./chunk-XQUZ7DUN.js';export{b as HelperText,a as helperTextVariants}from'./chunk-ABA7B5DE.js';export{a as Icon,b as iconNames}from'./chunk-TJFZAMBB.js';export{b as Label,a as labelVariants}from'./chunk-LYVCB45L.js';export{c as Pagination,d as PaginationContent,i as PaginationEllipsis,e as PaginationItem,f as PaginationLink,h as PaginationNext,g as PaginationPrevious,b as paginationItemVariants,a as paginationVariants}from'./chunk-Q6QMSAJR.js';export{e as CircularProgress,d as Progress,b as progressBarVariants,c as progressLabelVariants,a as progressVariants}from'./chunk-NLD4R74T.js';export{c as Calendar,b as calendarDayVariants,a as calendarVariants}from'./chunk-PEYPRWZP.js';export{b as Button,a as buttonVariants}from'./chunk-AVTJE2O2.js';export{g as Card,e as CardContent,d as CardDescription,f as CardFooter,b as CardHeader,c as CardTitle}from'./chunk-VD6S2PE4.js';export{a as LazyChart}from'./chunk-TGPWW7FC.js';export{b as Skeleton,d as SkeletonAvatar,e as SkeletonButton,f as SkeletonCard,h as SkeletonList,g as SkeletonTable,c as SkeletonText,a as skeletonVariants}from'./chunk-EIXD3Y4R.js';export{b as Chart,a as chartContainerVariants}from'./chunk-JZROH43C.js';export{b as Checkbox,a as checkboxVariants}from'./chunk-G6TR5RGR.js';export{a as DataTable}from'./chunk-7W456HZL.js';export{d as Table,f as TableBody,h as TableCell,i as TableHead,e as TableHeader,g as TableRow,c as tableCellVariants,b as tableHeaderVariants,a as tableVariants}from'./chunk-GUJB555L.js';export{b as Input}from'./chunk-HD3TMQPR.js';export{c as Dialog,d as DialogContent,g as DialogDescription,e as DialogHeader,f as DialogTitle}from'./chunk-QF5CRDZI.js';export{a as LazyComponent,d as LazyInView,c as useLazyLoading,b as withLazyLoading}from'./chunk-QBAURT3I.js';export{a as ErrorBoundary,b as useErrorHandler}from'./chunk-MVCGR7JQ.js';export{d as performanceUtils,c as useMemoryMonitor,a as usePerformanceMonitor,b as withPerformanceMonitoring}from'./chunk-3BNGK67W.js';export{f as Accordion,i as AccordionContent,g as AccordionItem,h as AccordionTrigger,e as accordionChevronVariants,d as accordionContentVariants,b as accordionItemVariants,c as accordionTriggerVariants,a as accordionVariants}from'./chunk-6QAYHUNV.js';export{g as Alert,f as AlertDescription,e as AlertTitle,d as alertCloseVariants,c as alertDescriptionVariants,b as alertTitleVariants,a as alertVariants}from'./chunk-AHRTNKXE.js';export{d as Avatar,c as AvatarFallback,b as AvatarImage,a as avatarVariants}from'./chunk-YNSODGYK.js';export{b as Badge,a as badgeVariants}from'./chunk-UL6MF7ES.js';import'./chunk-COXN6XBA.js';export{d as Breadcrumb,j as BreadcrumbEllipsis,f as BreadcrumbItem,g as BreadcrumbLink,e as BreadcrumbList,h as BreadcrumbPage,i as BreadcrumbSeparator,b as breadcrumbItemVariants,c as breadcrumbSeparatorVariants,a as breadcrumbVariants}from'./chunk-VXMDVKAD.js';export{a as cn}from'./chunk-AC2JBXHQ.js';var $r={nostromo:"nostromo",mother:"mother","lv-426":"lv-426",sulaco:"sulaco"};function Ur(o){typeof document<"u"&&document.documentElement.setAttribute("data-theme",o);}function jr(){return typeof document>"u"?null:document.documentElement.getAttribute("data-theme")}function ot(){if(typeof document>"u")return;let r=document.documentElement.getAttribute("data-color-scheme")==="dark"?"light":"dark";document.documentElement.setAttribute("data-color-scheme",r);}function Or(o){typeof document>"u"||document.documentElement.setAttribute("data-color-scheme",o?"dark":"light");}function Yr(){return typeof document>"u"?null:document.documentElement.getAttribute("data-color-scheme")}function Zr(){return typeof window>"u"?false:window.matchMedia("(prefers-color-scheme: dark)").matches}function rt(o){if(typeof window>"u")return ()=>{};let r=window.matchMedia("(prefers-color-scheme: dark)"),t=n=>{o(n.matches);};return r.addEventListener("change",t),()=>{r.removeEventListener("change",t);}}function tt(o="nostromo"){typeof document>"u"||(jr()||Ur(o),Yr()||Or(Zr()));}var ft={nostromo:{name:"Nostromo",description:"Classic space industrial theme inspired by the USCSS Nostromo",colors:{primary:"Purple/Blue",secondary:"Dark Gray",accent:"Green"}},mother:{name:"Mother",description:"Cold, clinical AI aesthetic inspired by the ship's computer",colors:{primary:"Cold Blue/Cyan",secondary:"Clinical White",accent:"Green"}},"lv-426":{name:"LV-426",description:"Warm, rusty atmosphere inspired by the planet LV-426",colors:{primary:"Warm Orange/Rust",secondary:"Earth Tones",accent:"Green"}},sulaco:{name:"Sulaco",description:"Modern, military-inspired aesthetic from the USS Sulaco",colors:{primary:"Military Blue/Gray",secondary:"Steel Tones",accent:"Green"}}};export{Ur as applyTheme,Yr as getColorScheme,jr as getCurrentTheme,tt as initializeTheme,rt as onSystemColorSchemeChange,Zr as prefersDarkMode,Or as setDarkMode,ft as themeInfo,$r as themes,ot as toggleDarkMode};//# sourceMappingURL=index.js.map
1
+ "use client";
2
+ export{e as Toast,d as ToastProvider,b as toastIconVariants,a as toastVariants,c as useToast,f as useToastNotification}from'./chunk-WO3KCAN6.js';export{f as Tooltip,d as TooltipContent,e as TooltipProvider,c as TooltipTrigger,b as arrowVariants,a as tooltipVariants}from'./chunk-MOPCE5RA.js';export{a as Features}from'./chunk-CEMOHO3Z.js';export{a as Gallery}from'./chunk-2JQROMCM.js';export{a as Hero}from'./chunk-JEHIMQQZ.js';export{a as LogoWall}from'./chunk-RC2THAIA.js';export{a as Pricing}from'./chunk-44HISN45.js';export{a as Testimonials}from'./chunk-LR4VUFOQ.js';export{c as RadioGroup,d as RadioGroupItem,d as RadioItem,a as radioGroupVariants,b as radioItemVariants}from'./chunk-WW2DDHCI.js';export{d as Select,h as SelectContent,e as SelectGroup,j as SelectItem,i as SelectLabel,k as SelectSeparator,g as SelectTrigger,f as SelectValue,b as selectContentVariants,c as selectItemVariants,a as selectTriggerVariants}from'./chunk-BZF3ZOAN.js';export{b as Separator,a as separatorVariants}from'./chunk-XRVHMGMD.js';export{c as Switch,b as switchThumbVariants,a as switchVariants}from'./chunk-OUWOPYAX.js';export{d as Tabs,g as TabsContent,e as TabsList,f as TabsTrigger,c as tabsContentVariants,a as tabsListVariants,b as tabsTriggerVariants}from'./chunk-ZEJAFIOC.js';export{b as Textarea,a as textareaVariants}from'./chunk-2HYJSYQX.js';export{b as ErrorMessage,a as errorMessageVariants}from'./chunk-XQUZ7DUN.js';export{b as HelperText,a as helperTextVariants}from'./chunk-ABA7B5DE.js';export{a as Icon,b as iconNames}from'./chunk-BL2TM4YT.js';export{b as Label,a as labelVariants}from'./chunk-LYVCB45L.js';export{c as Pagination,d as PaginationContent,i as PaginationEllipsis,e as PaginationItem,f as PaginationLink,h as PaginationNext,g as PaginationPrevious,b as paginationItemVariants,a as paginationVariants}from'./chunk-Q6QMSAJR.js';export{e as CircularProgress,d as Progress,b as progressBarVariants,c as progressLabelVariants,a as progressVariants}from'./chunk-NLD4R74T.js';export{c as Calendar,b as calendarDayVariants,a as calendarVariants}from'./chunk-35I2BJC3.js';export{b as Button,a as buttonVariants}from'./chunk-AVTJE2O2.js';export{g as Card,e as CardContent,d as CardDescription,f as CardFooter,b as CardHeader,c as CardTitle}from'./chunk-VD6S2PE4.js';export{a as LazyChart}from'./chunk-HRJXPCGF.js';export{b as Skeleton,d as SkeletonAvatar,e as SkeletonButton,f as SkeletonCard,h as SkeletonList,g as SkeletonTable,c as SkeletonText,a as skeletonVariants}from'./chunk-QKM5LPRW.js';export{b as Chart,a as chartContainerVariants}from'./chunk-XLZJ6HBL.js';export{b as Checkbox,a as checkboxVariants}from'./chunk-DNTPD3PJ.js';export{a as DataTable}from'./chunk-XJJJEWSU.js';export{d as Table,f as TableBody,h as TableCell,i as TableHead,e as TableHeader,g as TableRow,c as tableCellVariants,b as tableHeaderVariants,a as tableVariants}from'./chunk-UIEGBT4T.js';export{b as Input}from'./chunk-HD3TMQPR.js';export{c as Dialog,e as DialogContent,h as DialogDescription,f as DialogHeader,g as DialogTitle,d as DialogTrigger}from'./chunk-MY2KMTUS.js';export{a as LazyComponent,d as LazyInView,c as useLazyLoading,b as withLazyLoading}from'./chunk-QBAURT3I.js';export{a as ErrorBoundary,b as useErrorHandler}from'./chunk-MVCGR7JQ.js';export{d as performanceUtils,c as useMemoryMonitor,a as usePerformanceMonitor,b as withPerformanceMonitoring}from'./chunk-3BNGK67W.js';export{f as Accordion,i as AccordionContent,g as AccordionItem,h as AccordionTrigger,e as accordionChevronVariants,d as accordionContentVariants,b as accordionItemVariants,c as accordionTriggerVariants,a as accordionVariants}from'./chunk-6QAYHUNV.js';export{g as Alert,f as AlertDescription,e as AlertTitle,d as alertCloseVariants,c as alertDescriptionVariants,b as alertTitleVariants,a as alertVariants}from'./chunk-AHRTNKXE.js';export{d as Avatar,c as AvatarFallback,b as AvatarImage,a as avatarVariants}from'./chunk-YNSODGYK.js';export{b as Badge,a as badgeVariants}from'./chunk-UL6MF7ES.js';import'./chunk-COXN6XBA.js';export{d as Breadcrumb,j as BreadcrumbEllipsis,f as BreadcrumbItem,g as BreadcrumbLink,e as BreadcrumbList,h as BreadcrumbPage,i as BreadcrumbSeparator,b as breadcrumbItemVariants,c as breadcrumbSeparatorVariants,a as breadcrumbVariants}from'./chunk-SVWQWRPZ.js';export{a as cn}from'./chunk-AC2JBXHQ.js';var rt={nostromo:"nostromo",mother:"mother","lv-426":"lv-426",sulaco:"sulaco"};function jr(o){typeof document<"u"&&document.documentElement.setAttribute("data-theme",o);}function Yr(){return typeof document>"u"?null:document.documentElement.getAttribute("data-theme")}function tt(){if(typeof document>"u")return;let r=document.documentElement.getAttribute("data-color-scheme")==="dark"?"light":"dark";document.documentElement.setAttribute("data-color-scheme",r);}function Zr(o){typeof document>"u"||document.documentElement.setAttribute("data-color-scheme",o?"dark":"light");}function Qr(){return typeof document>"u"?null:document.documentElement.getAttribute("data-color-scheme")}function Jr(){return typeof window>"u"?false:window.matchMedia("(prefers-color-scheme: dark)").matches}function nt(o){if(typeof window>"u")return ()=>{};let r=window.matchMedia("(prefers-color-scheme: dark)"),t=e=>{o(e.matches);};return r.addEventListener("change",t),()=>{r.removeEventListener("change",t);}}function et(o="nostromo"){typeof document>"u"||(Yr()||jr(o),Qr()||Zr(Jr()));}var bt={nostromo:{name:"Nostromo",description:"Classic space industrial theme inspired by the USCSS Nostromo",colors:{primary:"Purple/Blue",secondary:"Dark Gray",accent:"Green"}},mother:{name:"Mother",description:"Cold, clinical AI aesthetic inspired by the ship's computer",colors:{primary:"Cold Blue/Cyan",secondary:"Clinical White",accent:"Green"}},"lv-426":{name:"LV-426",description:"Warm, rusty atmosphere inspired by the planet LV-426",colors:{primary:"Warm Orange/Rust",secondary:"Earth Tones",accent:"Green"}},sulaco:{name:"Sulaco",description:"Modern, military-inspired aesthetic from the USS Sulaco",colors:{primary:"Military Blue/Gray",secondary:"Steel Tones",accent:"Green"}}};export{jr as applyTheme,Qr as getColorScheme,Yr as getCurrentTheme,et as initializeTheme,nt as onSystemColorSchemeChange,Jr as prefersDarkMode,Zr as setDarkMode,bt as themeInfo,rt as themes,tt as toggleDarkMode};//# sourceMappingURL=index.js.map
2
3
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/themes/utils.ts","../src/themes/index.ts"],"names":["themes","applyTheme","theme","getCurrentTheme","toggleDarkMode","newScheme","setDarkMode","isDark","getColorScheme","prefersDarkMode","onSystemColorSchemeChange","callback","mediaQuery","handler","e","initializeTheme","defaultTheme","themeInfo"],"mappings":"oqIAIO,IAAMA,EAAAA,CAAoC,CAC/C,QAAA,CAAU,UAAA,CACV,MAAA,CAAQ,SACR,QAAA,CAAU,QAAA,CACV,MAAA,CAAQ,QACV,EAKO,SAASC,GAAWC,CAAAA,CAAwB,CAC7C,OAAO,QAAA,CAAa,GAAA,EACtB,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,YAAA,CAAcA,CAAK,EAE7D,CAKO,SAASC,EAAAA,EAAoC,CAClD,OAAI,OAAO,QAAA,CAAa,GAAA,CAAoB,IAAA,CAE9B,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,YAAY,CAElE,CAKO,SAASC,EAAAA,EAAuB,CACrC,GAAI,OAAO,QAAA,CAAa,GAAA,CAAa,OAGrC,IAAMC,CAAAA,CADgB,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,mBAAmB,CAAA,GAC3C,MAAA,CAAS,OAAA,CAAU,MAAA,CACvD,SAAS,eAAA,CAAgB,YAAA,CAAa,mBAAA,CAAqBA,CAAS,EACtE,CAKO,SAASC,EAAAA,CAAYC,CAAAA,CAAuB,CAC7C,OAAO,QAAA,CAAa,GAAA,EAExB,QAAA,CAAS,gBAAgB,YAAA,CAAa,mBAAA,CAAqBA,CAAAA,CAAS,MAAA,CAAS,OAAO,EACtF,CAKO,SAASC,EAAAA,EAA0C,CACxD,OAAI,OAAO,QAAA,CAAa,GAAA,CAAoB,KAE7B,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,mBAAmB,CAE1E,CAKO,SAASC,EAAAA,EAA2B,CACzC,OAAI,OAAO,MAAA,CAAW,GAAA,CAAoB,KAAA,CAEnC,OAAO,UAAA,CAAW,8BAA8B,CAAA,CAAE,OAC3D,CAKO,SAASC,EAAAA,CAA0BC,CAAAA,CAAiD,CACzF,GAAI,OAAO,MAAA,CAAW,GAAA,CAAa,OAAO,IAAM,CAAC,CAAA,CAEjD,IAAMC,CAAAA,CAAa,MAAA,CAAO,UAAA,CAAW,8BAA8B,CAAA,CAE7DC,CAAAA,CAAWC,CAAAA,EAA2B,CAC1CH,CAAAA,CAASG,CAAAA,CAAE,OAAO,EACpB,CAAA,CAEA,OAAAF,CAAAA,CAAW,gBAAA,CAAiB,QAAA,CAAUC,CAAO,CAAA,CAGtC,IAAM,CACXD,CAAAA,CAAW,mBAAA,CAAoB,QAAA,CAAUC,CAAO,EAClD,CACF,CAKO,SAASE,EAAAA,CAAgBC,CAAAA,CAA0B,UAAA,CAAkB,CACtE,OAAO,QAAA,CAAa,GAAA,GAGnBb,EAAAA,EAAgB,EACnBF,EAAAA,CAAWe,CAAY,CAAA,CAIpBR,IAAe,EAClBF,EAAAA,CAAYG,EAAAA,EAAiB,CAAA,EAEjC,CC9FO,IAAMQ,EAAAA,CAAY,CACvB,QAAA,CAAU,CACR,IAAA,CAAM,UAAA,CACN,WAAA,CAAa,gEACb,MAAA,CAAQ,CACN,OAAA,CAAS,aAAA,CACT,SAAA,CAAW,WAAA,CACX,MAAA,CAAQ,OACV,CACF,CAAA,CACA,MAAA,CAAQ,CACN,IAAA,CAAM,QAAA,CACN,YAAa,6DAAA,CACb,MAAA,CAAQ,CACN,OAAA,CAAS,gBAAA,CACT,SAAA,CAAW,gBAAA,CACX,MAAA,CAAQ,OACV,CACF,CAAA,CACA,QAAA,CAAU,CACR,IAAA,CAAM,SACN,WAAA,CAAa,sDAAA,CACb,MAAA,CAAQ,CACN,OAAA,CAAS,kBAAA,CACT,SAAA,CAAW,aAAA,CACX,MAAA,CAAQ,OACV,CACF,CAAA,CACA,MAAA,CAAQ,CACN,KAAM,QAAA,CACN,WAAA,CAAa,yDAAA,CACb,MAAA,CAAQ,CACN,OAAA,CAAS,oBAAA,CACT,SAAA,CAAW,aAAA,CACX,MAAA,CAAQ,OACV,CACF,CACF","file":"index.js","sourcesContent":["// Theme utilities and helpers\n\nexport type ThemeName = 'nostromo' | 'mother' | 'lv-426' | 'sulaco';\n\nexport const themes: Record<ThemeName, string> = {\n nostromo: 'nostromo',\n mother: 'mother',\n 'lv-426': 'lv-426',\n sulaco: 'sulaco',\n} as const;\n\n/**\n * Apply a theme to the document\n */\nexport function applyTheme(theme: ThemeName): void {\n if (typeof document !== 'undefined') {\n document.documentElement.setAttribute('data-theme', theme);\n }\n}\n\n/**\n * Get the current theme from the document\n */\nexport function getCurrentTheme(): ThemeName | null {\n if (typeof document === 'undefined') return null;\n \n const theme = document.documentElement.getAttribute('data-theme');\n return theme as ThemeName | null;\n}\n\n/**\n * Toggle between light and dark mode\n */\nexport function toggleDarkMode(): void {\n if (typeof document === 'undefined') return;\n \n const currentScheme = document.documentElement.getAttribute('data-color-scheme');\n const newScheme = currentScheme === 'dark' ? 'light' : 'dark';\n document.documentElement.setAttribute('data-color-scheme', newScheme);\n}\n\n/**\n * Set dark mode\n */\nexport function setDarkMode(isDark: boolean): void {\n if (typeof document === 'undefined') return;\n \n document.documentElement.setAttribute('data-color-scheme', isDark ? 'dark' : 'light');\n}\n\n/**\n * Get current color scheme\n */\nexport function getColorScheme(): 'light' | 'dark' | null {\n if (typeof document === 'undefined') return null;\n \n const scheme = document.documentElement.getAttribute('data-color-scheme');\n return scheme as 'light' | 'dark' | null;\n}\n\n/**\n * Check if system prefers dark mode\n */\nexport function prefersDarkMode(): boolean {\n if (typeof window === 'undefined') return false;\n \n return window.matchMedia('(prefers-color-scheme: dark)').matches;\n}\n\n/**\n * Listen for system color scheme changes\n */\nexport function onSystemColorSchemeChange(callback: (isDark: boolean) => void): () => void {\n if (typeof window === 'undefined') return () => {};\n \n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n \n const handler = (e: MediaQueryListEvent) => {\n callback(e.matches);\n };\n \n mediaQuery.addEventListener('change', handler);\n \n // Return cleanup function\n return () => {\n mediaQuery.removeEventListener('change', handler);\n };\n}\n\n/**\n * Initialize theme system\n */\nexport function initializeTheme(defaultTheme: ThemeName = 'nostromo'): void {\n if (typeof document === 'undefined') return;\n \n // Set default theme if none is set\n if (!getCurrentTheme()) {\n applyTheme(defaultTheme);\n }\n \n // Set initial color scheme based on system preference\n if (!getColorScheme()) {\n setDarkMode(prefersDarkMode());\n }\n}\n","// Theme exports\nexport * from './utils';\n\n// Theme CSS imports (for bundlers that support CSS imports)\nimport './nostromo.css';\nimport './mother.css';\nimport './lv-426.css';\nimport './sulaco.css';\n\n// Theme names and descriptions\nexport const themeInfo = {\n nostromo: {\n name: 'Nostromo',\n description: 'Classic space industrial theme inspired by the USCSS Nostromo',\n colors: {\n primary: 'Purple/Blue',\n secondary: 'Dark Gray',\n accent: 'Green'\n }\n },\n mother: {\n name: 'Mother',\n description: 'Cold, clinical AI aesthetic inspired by the ship\\'s computer',\n colors: {\n primary: 'Cold Blue/Cyan',\n secondary: 'Clinical White',\n accent: 'Green'\n }\n },\n 'lv-426': {\n name: 'LV-426',\n description: 'Warm, rusty atmosphere inspired by the planet LV-426',\n colors: {\n primary: 'Warm Orange/Rust',\n secondary: 'Earth Tones',\n accent: 'Green'\n }\n },\n sulaco: {\n name: 'Sulaco',\n description: 'Modern, military-inspired aesthetic from the USS Sulaco',\n colors: {\n primary: 'Military Blue/Gray',\n secondary: 'Steel Tones',\n accent: 'Green'\n }\n }\n} as const;\n\nexport type ThemeInfo = typeof themeInfo;\n"]}
1
+ {"version":3,"sources":["../src/themes/utils.ts","../src/themes/index.ts"],"names":["themes","applyTheme","theme","getCurrentTheme","toggleDarkMode","newScheme","setDarkMode","isDark","getColorScheme","prefersDarkMode","onSystemColorSchemeChange","callback","mediaQuery","handler","initializeTheme","defaultTheme","themeInfo"],"mappings":"ytIAIO,IAAMA,EAAAA,CAAoC,CAC/C,QAAA,CAAU,UAAA,CACV,MAAA,CAAQ,SACR,QAAA,CAAU,QAAA,CACV,MAAA,CAAQ,QACV,EAKO,SAASC,GAAWC,CAAAA,CAAwB,CAC7C,OAAO,QAAA,CAAa,GAAA,EACtB,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,YAAA,CAAcA,CAAK,EAE7D,CAKO,SAASC,EAAAA,EAAoC,CAClD,OAAI,OAAO,QAAA,CAAa,GAAA,CAAoB,IAAA,CAE9B,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,YAAY,CAElE,CAKO,SAASC,EAAAA,EAAuB,CACrC,GAAI,OAAO,QAAA,CAAa,GAAA,CAAa,OAGrC,IAAMC,CAAAA,CADgB,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,mBAAmB,CAAA,GAC3C,MAAA,CAAS,OAAA,CAAU,MAAA,CACvD,SAAS,eAAA,CAAgB,YAAA,CAAa,mBAAA,CAAqBA,CAAS,EACtE,CAKO,SAASC,EAAAA,CAAYC,CAAAA,CAAuB,CAC7C,OAAO,QAAA,CAAa,GAAA,EAExB,QAAA,CAAS,gBAAgB,YAAA,CAAa,mBAAA,CAAqBA,CAAAA,CAAS,MAAA,CAAS,OAAO,EACtF,CAKO,SAASC,EAAAA,EAA0C,CACxD,OAAI,OAAO,QAAA,CAAa,GAAA,CAAoB,KAE7B,QAAA,CAAS,eAAA,CAAgB,YAAA,CAAa,mBAAmB,CAE1E,CAKO,SAASC,EAAAA,EAA2B,CACzC,OAAI,OAAO,MAAA,CAAW,GAAA,CAAoB,KAAA,CAEnC,OAAO,UAAA,CAAW,8BAA8B,CAAA,CAAE,OAC3D,CAKO,SAASC,EAAAA,CAA0BC,CAAAA,CAAiD,CACzF,GAAI,OAAO,MAAA,CAAW,GAAA,CAAa,OAAO,IAAM,CAAC,CAAA,CAEjD,IAAMC,CAAAA,CAAa,MAAA,CAAO,UAAA,CAAW,8BAA8B,CAAA,CAE7DC,CAAAA,CAAW,CAAA,EAA2B,CAC1CF,CAAAA,CAAS,CAAA,CAAE,OAAO,EACpB,CAAA,CAEA,OAAAC,CAAAA,CAAW,gBAAA,CAAiB,QAAA,CAAUC,CAAO,CAAA,CAGtC,IAAM,CACXD,CAAAA,CAAW,mBAAA,CAAoB,QAAA,CAAUC,CAAO,EAClD,CACF,CAKO,SAASC,EAAAA,CAAgBC,CAAAA,CAA0B,UAAA,CAAkB,CACtE,OAAO,QAAA,CAAa,GAAA,GAGnBZ,EAAAA,EAAgB,EACnBF,EAAAA,CAAWc,CAAY,CAAA,CAIpBP,IAAe,EAClBF,EAAAA,CAAYG,EAAAA,EAAiB,CAAA,EAEjC,CC9FO,IAAMO,EAAAA,CAAY,CACvB,QAAA,CAAU,CACR,IAAA,CAAM,UAAA,CACN,WAAA,CAAa,gEACb,MAAA,CAAQ,CACN,OAAA,CAAS,aAAA,CACT,SAAA,CAAW,WAAA,CACX,MAAA,CAAQ,OACV,CACF,CAAA,CACA,MAAA,CAAQ,CACN,IAAA,CAAM,QAAA,CACN,YAAa,6DAAA,CACb,MAAA,CAAQ,CACN,OAAA,CAAS,gBAAA,CACT,SAAA,CAAW,gBAAA,CACX,MAAA,CAAQ,OACV,CACF,CAAA,CACA,QAAA,CAAU,CACR,IAAA,CAAM,SACN,WAAA,CAAa,sDAAA,CACb,MAAA,CAAQ,CACN,OAAA,CAAS,kBAAA,CACT,SAAA,CAAW,aAAA,CACX,MAAA,CAAQ,OACV,CACF,CAAA,CACA,MAAA,CAAQ,CACN,KAAM,QAAA,CACN,WAAA,CAAa,yDAAA,CACb,MAAA,CAAQ,CACN,OAAA,CAAS,oBAAA,CACT,SAAA,CAAW,aAAA,CACX,MAAA,CAAQ,OACV,CACF,CACF","file":"index.js","sourcesContent":["// Theme utilities and helpers\n\nexport type ThemeName = 'nostromo' | 'mother' | 'lv-426' | 'sulaco';\n\nexport const themes: Record<ThemeName, string> = {\n nostromo: 'nostromo',\n mother: 'mother',\n 'lv-426': 'lv-426',\n sulaco: 'sulaco',\n} as const;\n\n/**\n * Apply a theme to the document\n */\nexport function applyTheme(theme: ThemeName): void {\n if (typeof document !== 'undefined') {\n document.documentElement.setAttribute('data-theme', theme);\n }\n}\n\n/**\n * Get the current theme from the document\n */\nexport function getCurrentTheme(): ThemeName | null {\n if (typeof document === 'undefined') return null;\n \n const theme = document.documentElement.getAttribute('data-theme');\n return theme as ThemeName | null;\n}\n\n/**\n * Toggle between light and dark mode\n */\nexport function toggleDarkMode(): void {\n if (typeof document === 'undefined') return;\n \n const currentScheme = document.documentElement.getAttribute('data-color-scheme');\n const newScheme = currentScheme === 'dark' ? 'light' : 'dark';\n document.documentElement.setAttribute('data-color-scheme', newScheme);\n}\n\n/**\n * Set dark mode\n */\nexport function setDarkMode(isDark: boolean): void {\n if (typeof document === 'undefined') return;\n \n document.documentElement.setAttribute('data-color-scheme', isDark ? 'dark' : 'light');\n}\n\n/**\n * Get current color scheme\n */\nexport function getColorScheme(): 'light' | 'dark' | null {\n if (typeof document === 'undefined') return null;\n \n const scheme = document.documentElement.getAttribute('data-color-scheme');\n return scheme as 'light' | 'dark' | null;\n}\n\n/**\n * Check if system prefers dark mode\n */\nexport function prefersDarkMode(): boolean {\n if (typeof window === 'undefined') return false;\n \n return window.matchMedia('(prefers-color-scheme: dark)').matches;\n}\n\n/**\n * Listen for system color scheme changes\n */\nexport function onSystemColorSchemeChange(callback: (isDark: boolean) => void): () => void {\n if (typeof window === 'undefined') return () => {};\n \n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n \n const handler = (e: MediaQueryListEvent) => {\n callback(e.matches);\n };\n \n mediaQuery.addEventListener('change', handler);\n \n // Return cleanup function\n return () => {\n mediaQuery.removeEventListener('change', handler);\n };\n}\n\n/**\n * Initialize theme system\n */\nexport function initializeTheme(defaultTheme: ThemeName = 'nostromo'): void {\n if (typeof document === 'undefined') return;\n \n // Set default theme if none is set\n if (!getCurrentTheme()) {\n applyTheme(defaultTheme);\n }\n \n // Set initial color scheme based on system preference\n if (!getColorScheme()) {\n setDarkMode(prefersDarkMode());\n }\n}\n","// Theme exports\nexport * from './utils';\n\n// Theme CSS imports (for bundlers that support CSS imports)\nimport './nostromo.css';\nimport './mother.css';\nimport './lv-426.css';\nimport './sulaco.css';\n\n// Theme names and descriptions\nexport const themeInfo = {\n nostromo: {\n name: 'Nostromo',\n description: 'Classic space industrial theme inspired by the USCSS Nostromo',\n colors: {\n primary: 'Purple/Blue',\n secondary: 'Dark Gray',\n accent: 'Green'\n }\n },\n mother: {\n name: 'Mother',\n description: 'Cold, clinical AI aesthetic inspired by the ship\\'s computer',\n colors: {\n primary: 'Cold Blue/Cyan',\n secondary: 'Clinical White',\n accent: 'Green'\n }\n },\n 'lv-426': {\n name: 'LV-426',\n description: 'Warm, rusty atmosphere inspired by the planet LV-426',\n colors: {\n primary: 'Warm Orange/Rust',\n secondary: 'Earth Tones',\n accent: 'Green'\n }\n },\n sulaco: {\n name: 'Sulaco',\n description: 'Modern, military-inspired aesthetic from the USS Sulaco',\n colors: {\n primary: 'Military Blue/Gray',\n secondary: 'Steel Tones',\n accent: 'Green'\n }\n }\n} as const;\n\nexport type ThemeInfo = typeof themeInfo;\n"]}
package/dist/lib/lazy.cjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  'use strict';var chunk55N2IT62_cjs=require('../chunk-55N2IT62.cjs');require('../chunk-4FSJEW7W.cjs');Object.defineProperty(exports,"LazyComponent",{enumerable:true,get:function(){return chunk55N2IT62_cjs.a}});Object.defineProperty(exports,"LazyInView",{enumerable:true,get:function(){return chunk55N2IT62_cjs.d}});Object.defineProperty(exports,"useLazyLoading",{enumerable:true,get:function(){return chunk55N2IT62_cjs.c}});Object.defineProperty(exports,"withLazyLoading",{enumerable:true,get:function(){return chunk55N2IT62_cjs.b}});//# sourceMappingURL=lazy.cjs.map
2
3
  //# sourceMappingURL=lazy.cjs.map
@@ -11,7 +11,7 @@ interface LazyComponentProps {
11
11
  /**
12
12
  * Lazy loading wrapper component with error boundary and loading fallback
13
13
  */
14
- declare function LazyComponent({ children, fallback: Fallback, errorFallback: ErrorFallback }: LazyComponentProps): JSX.Element;
14
+ declare function LazyComponent({ children, fallback: Fallback, errorFallback: ErrorFallback }: LazyComponentProps): React.JSX.Element;
15
15
  /**
16
16
  * Higher-order component for lazy loading with error boundary
17
17
  */
@@ -29,7 +29,7 @@ declare function useLazyLoading(options?: {
29
29
  rootMargin?: string;
30
30
  threshold?: number;
31
31
  }): {
32
- ref: React.RefObject<HTMLElement>;
32
+ ref: React.RefObject<HTMLElement | null>;
33
33
  isVisible: boolean;
34
34
  };
35
35
  /**
@@ -38,6 +38,6 @@ declare function useLazyLoading(options?: {
38
38
  declare function LazyInView({ children, fallback, ...options }: {
39
39
  children: React.ReactNode;
40
40
  fallback?: React.ReactNode;
41
- } & Parameters<typeof useLazyLoading>[0]): JSX.Element;
41
+ } & Parameters<typeof useLazyLoading>[0]): React.JSX.Element;
42
42
 
43
43
  export { LazyComponent, LazyInView, useLazyLoading, withLazyLoading };
@@ -11,7 +11,7 @@ interface LazyComponentProps {
11
11
  /**
12
12
  * Lazy loading wrapper component with error boundary and loading fallback
13
13
  */
14
- declare function LazyComponent({ children, fallback: Fallback, errorFallback: ErrorFallback }: LazyComponentProps): JSX.Element;
14
+ declare function LazyComponent({ children, fallback: Fallback, errorFallback: ErrorFallback }: LazyComponentProps): React.JSX.Element;
15
15
  /**
16
16
  * Higher-order component for lazy loading with error boundary
17
17
  */
@@ -29,7 +29,7 @@ declare function useLazyLoading(options?: {
29
29
  rootMargin?: string;
30
30
  threshold?: number;
31
31
  }): {
32
- ref: React.RefObject<HTMLElement>;
32
+ ref: React.RefObject<HTMLElement | null>;
33
33
  isVisible: boolean;
34
34
  };
35
35
  /**
@@ -38,6 +38,6 @@ declare function useLazyLoading(options?: {
38
38
  declare function LazyInView({ children, fallback, ...options }: {
39
39
  children: React.ReactNode;
40
40
  fallback?: React.ReactNode;
41
- } & Parameters<typeof useLazyLoading>[0]): JSX.Element;
41
+ } & Parameters<typeof useLazyLoading>[0]): React.JSX.Element;
42
42
 
43
43
  export { LazyComponent, LazyInView, useLazyLoading, withLazyLoading };
package/dist/lib/lazy.js CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export{a as LazyComponent,d as LazyInView,c as useLazyLoading,b as withLazyLoading}from'../chunk-QBAURT3I.js';import'../chunk-MVCGR7JQ.js';//# sourceMappingURL=lazy.js.map
2
3
  //# sourceMappingURL=lazy.js.map
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  'use strict';var chunk7WEIVLG3_cjs=require('../chunk-7WEIVLG3.cjs');Object.defineProperty(exports,"performanceUtils",{enumerable:true,get:function(){return chunk7WEIVLG3_cjs.d}});Object.defineProperty(exports,"useMemoryMonitor",{enumerable:true,get:function(){return chunk7WEIVLG3_cjs.c}});Object.defineProperty(exports,"usePerformanceMonitor",{enumerable:true,get:function(){return chunk7WEIVLG3_cjs.a}});Object.defineProperty(exports,"withPerformanceMonitoring",{enumerable:true,get:function(){return chunk7WEIVLG3_cjs.b}});//# sourceMappingURL=performance.cjs.map
2
3
  //# sourceMappingURL=performance.cjs.map
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  export{d as performanceUtils,c as useMemoryMonitor,a as usePerformanceMonitor,b as withPerformanceMonitoring}from'../chunk-3BNGK67W.js';//# sourceMappingURL=performance.js.map
2
3
  //# sourceMappingURL=performance.js.map
@@ -72,7 +72,7 @@
72
72
  --nostromo-color-info-200: 210 80% 80%;
73
73
  --nostromo-color-info-300: 210 80% 70%;
74
74
  --nostromo-color-info-400: 210 80% 60%;
75
- --nostromo-color-info-500: 210 80% 50%;
75
+ --nostromo-color-info-500: 210 80% 51%;
76
76
  --nostromo-color-info-600: 210 80% 40%;
77
77
  --nostromo-color-info-700: 210 80% 30%;
78
78
  --nostromo-color-info-800: 210 80% 20%;
@@ -80,34 +80,32 @@
80
80
  --nostromo-color-info-950: 210 80% 5%;
81
81
 
82
82
  /* Semantic Colors */
83
- --nostromo-color-background: hsl(var(--nostromo-color-neutral-50));
84
- --nostromo-color-foreground: hsl(var(--nostromo-color-neutral-900));
85
- --nostromo-color-muted: hsl(var(--nostromo-color-neutral-100));
86
- --nostromo-color-muted-foreground: hsl(var(--nostromo-color-neutral-600));
87
- --nostromo-color-popover: hsl(var(--nostromo-color-neutral-50));
88
- --nostromo-color-popover-foreground: hsl(var(--nostromo-color-neutral-900));
89
- --nostromo-color-card: hsl(var(--nostromo-color-neutral-50));
90
- --nostromo-color-card-foreground: hsl(var(--nostromo-color-neutral-900));
91
- --nostromo-color-border: hsl(var(--nostromo-color-neutral-200));
92
- --nostromo-color-input: hsl(var(--nostromo-color-neutral-200));
83
+ --nostromo-color-background: var(--nostromo-color-neutral-50);
84
+ --nostromo-color-foreground: var(--nostromo-color-neutral-900);
85
+ --nostromo-color-muted: var(--nostromo-color-neutral-100);
86
+ --nostromo-color-muted-foreground: var(--nostromo-color-neutral-600);
87
+ --nostromo-color-popover: var(--nostromo-color-neutral-50);
88
+ --nostromo-color-popover-foreground: var(--nostromo-color-neutral-900);
89
+ --nostromo-color-card: var(--nostromo-color-neutral-50);
90
+ --nostromo-color-card-foreground: var(--nostromo-color-neutral-900);
91
+ --nostromo-color-border: var(--nostromo-color-neutral-200);
92
+ --nostromo-color-input: var(--nostromo-color-neutral-200);
93
93
  /* Contrast validated: primary-foreground/primary 4.52:1 */
94
- --nostromo-color-primary: hsl(var(--nostromo-color-brand-500));
95
- --nostromo-color-primary-foreground: hsl(
96
- 0 0% 100%
94
+ --nostromo-color-primary: var(--nostromo-color-brand-500);
95
+ --nostromo-color-primary-foreground: var(
96
+ --nostromo-color-neutral-900
97
97
  ); /* White for better contrast */
98
- --nostromo-color-secondary: hsl(var(--nostromo-color-neutral-100));
99
- --nostromo-color-secondary-foreground: hsl(var(--nostromo-color-neutral-900));
100
- --nostromo-color-accent: hsl(var(--nostromo-color-brand-100));
101
- --nostromo-color-accent-foreground: hsl(var(--nostromo-color-brand-900));
102
- --nostromo-color-destructive: hsl(var(--nostromo-color-error-500));
103
- --nostromo-color-destructive-foreground: hsl(
104
- var(--nostromo-color-neutral-50)
105
- );
106
- --nostromo-color-success-foreground: hsl(var(--nostromo-color-neutral-50));
107
- --nostromo-color-warning-foreground: hsl(var(--nostromo-color-neutral-900));
108
- --nostromo-color-error-foreground: hsl(var(--nostromo-color-neutral-50));
109
- --nostromo-color-info-foreground: hsl(var(--nostromo-color-neutral-50));
110
- --nostromo-color-ring: hsl(var(--nostromo-color-brand-500));
98
+ --nostromo-color-secondary: var(--nostromo-color-neutral-100);
99
+ --nostromo-color-secondary-foreground: var(--nostromo-color-neutral-900);
100
+ --nostromo-color-accent: var(--nostromo-color-brand-100);
101
+ --nostromo-color-accent-foreground: var(--nostromo-color-brand-900);
102
+ --nostromo-color-destructive: var(--nostromo-color-error-600);
103
+ --nostromo-color-destructive-foreground: var(--nostromo-color-neutral-50);
104
+ --nostromo-color-success-foreground: 0 0% 9%;
105
+ --nostromo-color-warning-foreground: 0 0% 9%;
106
+ --nostromo-color-error-foreground: 0 0% 98%;
107
+ --nostromo-color-info-foreground: 0 0% 9%;
108
+ --nostromo-color-ring: var(--nostromo-color-brand-500);
111
109
 
112
110
  /* Typography */
113
111
  --nostromo-font-sans:
@@ -165,31 +163,29 @@
165
163
 
166
164
  /* Dark mode overrides for LV-426 theme */
167
165
  [data-theme="lv-426"][data-color-scheme="dark"] {
168
- --nostromo-color-background: hsl(var(--nostromo-color-neutral-900));
169
- --nostromo-color-foreground: hsl(var(--nostromo-color-neutral-50));
170
- --nostromo-color-muted: hsl(var(--nostromo-color-neutral-800));
171
- --nostromo-color-muted-foreground: hsl(var(--nostromo-color-neutral-400));
172
- --nostromo-color-popover: hsl(var(--nostromo-color-neutral-800));
173
- --nostromo-color-popover-foreground: hsl(var(--nostromo-color-neutral-50));
174
- --nostromo-color-card: hsl(var(--nostromo-color-neutral-800));
175
- --nostromo-color-card-foreground: hsl(var(--nostromo-color-neutral-50));
176
- --nostromo-color-border: hsl(var(--nostromo-color-neutral-700));
177
- --nostromo-color-input: hsl(var(--nostromo-color-neutral-700));
178
- --nostromo-color-primary: hsl(var(--nostromo-color-brand-400));
179
- --nostromo-color-primary-foreground: hsl(var(--nostromo-color-neutral-900));
180
- --nostromo-color-secondary: hsl(var(--nostromo-color-neutral-700));
181
- --nostromo-color-secondary-foreground: hsl(var(--nostromo-color-neutral-50));
182
- --nostromo-color-accent: hsl(var(--nostromo-color-brand-800));
183
- --nostromo-color-accent-foreground: hsl(var(--nostromo-color-brand-100));
184
- --nostromo-color-destructive: hsl(var(--nostromo-color-error-400));
185
- --nostromo-color-destructive-foreground: hsl(
186
- var(--nostromo-color-neutral-900)
187
- );
188
- --nostromo-color-success-foreground: hsl(var(--nostromo-color-neutral-50));
189
- --nostromo-color-warning-foreground: hsl(var(--nostromo-color-neutral-900));
190
- --nostromo-color-error-foreground: hsl(var(--nostromo-color-neutral-900));
191
- --nostromo-color-info-foreground: hsl(var(--nostromo-color-neutral-50));
192
- --nostromo-color-ring: hsl(var(--nostromo-color-brand-400));
166
+ --nostromo-color-background: var(--nostromo-color-neutral-900);
167
+ --nostromo-color-foreground: var(--nostromo-color-neutral-50);
168
+ --nostromo-color-muted: var(--nostromo-color-neutral-800);
169
+ --nostromo-color-muted-foreground: var(--nostromo-color-neutral-400);
170
+ --nostromo-color-popover: var(--nostromo-color-neutral-800);
171
+ --nostromo-color-popover-foreground: var(--nostromo-color-neutral-50);
172
+ --nostromo-color-card: var(--nostromo-color-neutral-800);
173
+ --nostromo-color-card-foreground: var(--nostromo-color-neutral-50);
174
+ --nostromo-color-border: var(--nostromo-color-neutral-700);
175
+ --nostromo-color-input: var(--nostromo-color-neutral-700);
176
+ --nostromo-color-primary: var(--nostromo-color-brand-400);
177
+ --nostromo-color-primary-foreground: var(--nostromo-color-neutral-900);
178
+ --nostromo-color-secondary: var(--nostromo-color-neutral-700);
179
+ --nostromo-color-secondary-foreground: var(--nostromo-color-neutral-50);
180
+ --nostromo-color-accent: var(--nostromo-color-brand-800);
181
+ --nostromo-color-accent-foreground: var(--nostromo-color-brand-100);
182
+ --nostromo-color-destructive: var(--nostromo-color-error-400);
183
+ --nostromo-color-destructive-foreground: var(--nostromo-color-neutral-900);
184
+ --nostromo-color-success-foreground: 0 0% 9%;
185
+ --nostromo-color-warning-foreground: 0 0% 9%;
186
+ --nostromo-color-error-foreground: 0 0% 98%;
187
+ --nostromo-color-info-foreground: 0 0% 9%;
188
+ --nostromo-color-ring: var(--nostromo-color-brand-400);
193
189
  }
194
190
 
195
191
  /* LV-426 theme specific styles */
@@ -80,34 +80,32 @@
80
80
  --nostromo-color-info-950: 210 100% 5%;
81
81
 
82
82
  /* Semantic Colors */
83
- --nostromo-color-background: hsl(var(--nostromo-color-neutral-50));
84
- --nostromo-color-foreground: hsl(var(--nostromo-color-neutral-900));
85
- --nostromo-color-muted: hsl(var(--nostromo-color-neutral-100));
86
- --nostromo-color-muted-foreground: hsl(var(--nostromo-color-neutral-600));
87
- --nostromo-color-popover: hsl(var(--nostromo-color-neutral-50));
88
- --nostromo-color-popover-foreground: hsl(var(--nostromo-color-neutral-900));
89
- --nostromo-color-card: hsl(var(--nostromo-color-neutral-50));
90
- --nostromo-color-card-foreground: hsl(var(--nostromo-color-neutral-900));
91
- --nostromo-color-border: hsl(var(--nostromo-color-neutral-200));
92
- --nostromo-color-input: hsl(var(--nostromo-color-neutral-200));
83
+ --nostromo-color-background: var(--nostromo-color-neutral-50);
84
+ --nostromo-color-foreground: var(--nostromo-color-neutral-900);
85
+ --nostromo-color-muted: var(--nostromo-color-neutral-100);
86
+ --nostromo-color-muted-foreground: var(--nostromo-color-neutral-600);
87
+ --nostromo-color-popover: var(--nostromo-color-neutral-50);
88
+ --nostromo-color-popover-foreground: var(--nostromo-color-neutral-900);
89
+ --nostromo-color-card: var(--nostromo-color-neutral-50);
90
+ --nostromo-color-card-foreground: var(--nostromo-color-neutral-900);
91
+ --nostromo-color-border: var(--nostromo-color-neutral-200);
92
+ --nostromo-color-input: var(--nostromo-color-neutral-200);
93
93
  /* Contrast validated: primary-foreground/primary 4.52:1 */
94
- --nostromo-color-primary: hsl(var(--nostromo-color-brand-500));
95
- --nostromo-color-primary-foreground: hsl(
96
- 0 0% 100%
97
- ); /* White for better contrast with cyan */
98
- --nostromo-color-secondary: hsl(var(--nostromo-color-neutral-100));
99
- --nostromo-color-secondary-foreground: hsl(var(--nostromo-color-neutral-900));
100
- --nostromo-color-accent: hsl(var(--nostromo-color-brand-100));
101
- --nostromo-color-accent-foreground: hsl(var(--nostromo-color-brand-900));
102
- --nostromo-color-destructive: hsl(var(--nostromo-color-error-500));
103
- --nostromo-color-destructive-foreground: hsl(
104
- var(--nostromo-color-neutral-50)
105
- );
106
- --nostromo-color-success-foreground: hsl(var(--nostromo-color-neutral-50));
107
- --nostromo-color-warning-foreground: hsl(var(--nostromo-color-neutral-900));
108
- --nostromo-color-error-foreground: hsl(var(--nostromo-color-neutral-50));
109
- --nostromo-color-info-foreground: hsl(var(--nostromo-color-neutral-50));
110
- --nostromo-color-ring: hsl(var(--nostromo-color-brand-500));
94
+ --nostromo-color-primary: var(--nostromo-color-brand-500);
95
+ --nostromo-color-primary-foreground: var(
96
+ --nostromo-color-neutral-900
97
+ ); /* Dark: white on this cyan is 2.12:1 */
98
+ --nostromo-color-secondary: var(--nostromo-color-neutral-100);
99
+ --nostromo-color-secondary-foreground: var(--nostromo-color-neutral-900);
100
+ --nostromo-color-accent: var(--nostromo-color-brand-100);
101
+ --nostromo-color-accent-foreground: var(--nostromo-color-brand-900);
102
+ --nostromo-color-destructive: var(--nostromo-color-error-600);
103
+ --nostromo-color-destructive-foreground: var(--nostromo-color-neutral-50);
104
+ --nostromo-color-success-foreground: 0 0% 9%;
105
+ --nostromo-color-warning-foreground: 0 0% 9%;
106
+ --nostromo-color-error-foreground: 0 0% 98%;
107
+ --nostromo-color-info-foreground: 0 0% 9%;
108
+ --nostromo-color-ring: var(--nostromo-color-brand-500);
111
109
 
112
110
  /* Typography */
113
111
  --nostromo-font-sans:
@@ -166,41 +164,37 @@
166
164
  /* Dark mode overrides for Mother theme */
167
165
  /* Contrast validated: All combinations meet WCAG AA */
168
166
  [data-theme="mother"][data-color-scheme="dark"] {
169
- --nostromo-color-background: hsl(var(--nostromo-color-neutral-900));
170
- --nostromo-color-foreground: hsl(var(--nostromo-color-neutral-50));
171
- --nostromo-color-muted: hsl(var(--nostromo-color-neutral-800));
172
- --nostromo-color-muted-foreground: hsl(
173
- 0 0% 38%
174
- ); /* Adjusted for 4.5:1 contrast */
175
- --nostromo-color-popover: hsl(
176
- var(--nostromo-color-neutral-900)
167
+ --nostromo-color-background: var(--nostromo-color-neutral-900);
168
+ --nostromo-color-foreground: var(--nostromo-color-neutral-50);
169
+ --nostromo-color-muted: var(--nostromo-color-neutral-800);
170
+ --nostromo-color-muted-foreground: 0 0% 65%; /* Adjusted for 4.5:1 contrast */
171
+ --nostromo-color-popover: var(
172
+ --nostromo-color-neutral-900
177
173
  ); /* Changed from 800 to 900 for better contrast */
178
- --nostromo-color-popover-foreground: hsl(var(--nostromo-color-neutral-50));
179
- --nostromo-color-card: hsl(
180
- var(--nostromo-color-neutral-900)
174
+ --nostromo-color-popover-foreground: var(--nostromo-color-neutral-50);
175
+ --nostromo-color-card: var(
176
+ --nostromo-color-neutral-900
181
177
  ); /* Changed from 800 to 900 for better contrast */
182
- --nostromo-color-card-foreground: hsl(var(--nostromo-color-neutral-50));
183
- --nostromo-color-border: hsl(var(--nostromo-color-neutral-700));
184
- --nostromo-color-input: hsl(var(--nostromo-color-neutral-700));
185
- --nostromo-color-primary: hsl(
186
- var(--nostromo-color-brand-300)
178
+ --nostromo-color-card-foreground: var(--nostromo-color-neutral-50);
179
+ --nostromo-color-border: var(--nostromo-color-neutral-700);
180
+ --nostromo-color-input: var(--nostromo-color-neutral-700);
181
+ --nostromo-color-primary: var(
182
+ --nostromo-color-brand-300
187
183
  ); /* Lighter for better contrast with dark text */
188
- --nostromo-color-primary-foreground: hsl(var(--nostromo-color-neutral-900));
189
- --nostromo-color-secondary: hsl(
190
- var(--nostromo-color-neutral-900)
184
+ --nostromo-color-primary-foreground: var(--nostromo-color-neutral-900);
185
+ --nostromo-color-secondary: var(
186
+ --nostromo-color-neutral-900
191
187
  ); /* Changed from 700 to 900 for better contrast */
192
- --nostromo-color-secondary-foreground: hsl(var(--nostromo-color-neutral-50));
193
- --nostromo-color-accent: hsl(var(--nostromo-color-brand-800));
194
- --nostromo-color-accent-foreground: hsl(var(--nostromo-color-brand-100));
195
- --nostromo-color-destructive: hsl(var(--nostromo-color-error-400));
196
- --nostromo-color-destructive-foreground: hsl(
197
- var(--nostromo-color-neutral-900)
198
- );
199
- --nostromo-color-success-foreground: hsl(var(--nostromo-color-neutral-50));
200
- --nostromo-color-warning-foreground: hsl(var(--nostromo-color-neutral-900));
201
- --nostromo-color-error-foreground: hsl(var(--nostromo-color-neutral-900));
202
- --nostromo-color-info-foreground: hsl(var(--nostromo-color-neutral-50));
203
- --nostromo-color-ring: hsl(var(--nostromo-color-brand-400));
188
+ --nostromo-color-secondary-foreground: var(--nostromo-color-neutral-50);
189
+ --nostromo-color-accent: var(--nostromo-color-brand-800);
190
+ --nostromo-color-accent-foreground: var(--nostromo-color-brand-100);
191
+ --nostromo-color-destructive: var(--nostromo-color-error-400);
192
+ --nostromo-color-destructive-foreground: var(--nostromo-color-neutral-900);
193
+ --nostromo-color-success-foreground: 0 0% 9%;
194
+ --nostromo-color-warning-foreground: 0 0% 9%;
195
+ --nostromo-color-error-foreground: 0 0% 98%;
196
+ --nostromo-color-info-foreground: 0 0% 9%;
197
+ --nostromo-color-ring: var(--nostromo-color-brand-400);
204
198
  }
205
199
 
206
200
  /* Mother theme specific styles */
@@ -60,7 +60,7 @@
60
60
  --nostromo-color-error-300: 0 84% 70%;
61
61
  --nostromo-color-error-400: 0 84% 60%;
62
62
  --nostromo-color-error-500: 0 84% 60%;
63
- --nostromo-color-error-600: 0 84% 50%;
63
+ --nostromo-color-error-600: 0 84% 48%;
64
64
  --nostromo-color-error-700: 0 84% 40%;
65
65
  --nostromo-color-error-800: 0 84% 30%;
66
66
  --nostromo-color-error-900: 0 84% 20%;
@@ -179,12 +179,12 @@
179
179
  --nostromo-color-secondary-foreground: 0 0% 9%;
180
180
  --nostromo-color-accent: 262 84% 90%;
181
181
  --nostromo-color-accent-foreground: 262 84% 15%;
182
- --nostromo-color-destructive: 0 84% 60%;
182
+ --nostromo-color-destructive: 0 84% 48%;
183
183
  --nostromo-color-destructive-foreground: 0 0% 98%;
184
- --nostromo-color-success-foreground: 0 0% 98%;
184
+ --nostromo-color-success-foreground: 0 0% 9%;
185
185
  --nostromo-color-warning-foreground: 0 0% 9%;
186
186
  --nostromo-color-error-foreground: 0 0% 98%;
187
- --nostromo-color-info-foreground: 0 0% 98%;
187
+ --nostromo-color-info-foreground: 0 0% 9%;
188
188
  --nostromo-color-ring: 262 84% 52%;
189
189
  }
190
190
 
@@ -240,32 +240,36 @@
240
240
  /* Note: Use DIRECT raw HSL values, NOT var() references */
241
241
  --nostromo-color-background: 0 0% 9%; /* Dark background - using neutral-900 value directly */
242
242
  --nostromo-color-foreground: 0 0% 95%; /* Light text on dark background */
243
- --nostromo-color-muted: 0 0% 85%;
244
- --nostromo-color-muted-foreground: 0 0% 65%; /* Adjusted for 4.5:1 contrast with muted (85%) */
245
- --nostromo-color-popover: 0 0% 85%; /* Dark popover background */
243
+ --nostromo-color-muted: 0 0% 20%;
244
+ --nostromo-color-muted-foreground: 0 0% 65%; /* 5.2:1 against muted (20%) */
245
+ --nostromo-color-popover: 0 0% 15%; /* Dark popover background */
246
246
  --nostromo-color-popover-foreground: 0 0% 95%; /* Light text on dark popover */
247
- --nostromo-color-card: 0 0% 85%;
247
+ --nostromo-color-card: 0 0% 15%;
248
248
  --nostromo-color-card-foreground: 0 0% 95%;
249
249
  --nostromo-color-border: 0 0% 75%;
250
250
  --nostromo-color-input: 0 0% 75%;
251
251
  --nostromo-color-primary: 262 84% 60%;
252
- --nostromo-color-primary-foreground: 0 0% 9%; /* Dark text on light primary button */
253
- --nostromo-color-secondary: 0 0% 75%;
252
+ --nostromo-color-primary-foreground: 0 0% 98%;
253
+ --nostromo-color-secondary: 0 0% 20%;
254
254
  --nostromo-color-secondary-foreground: 0 0% 95%;
255
255
  --nostromo-color-accent: 262 84% 25%;
256
256
  --nostromo-color-accent-foreground: 262 84% 90%;
257
- --nostromo-color-destructive: 0 84% 60%;
258
- --nostromo-color-destructive-foreground: 0 0% 9%; /* Dark text on light destructive button */
259
- --nostromo-color-success-foreground: 0 0% 9%; /* Dark text on light success */
260
- --nostromo-color-warning-foreground: 0 0% 95%;
261
- --nostromo-color-error-foreground: 0 0% 9%; /* Dark text on light error */
262
- --nostromo-color-info-foreground: 0 0% 9%; /* Dark text on light info */
257
+ --nostromo-color-destructive: 0 84% 48%;
258
+ --nostromo-color-destructive-foreground: 0 0% 98%;
259
+ --nostromo-color-success-foreground: 0 0% 9%;
260
+ --nostromo-color-warning-foreground: 0 0% 9%;
261
+ --nostromo-color-error-foreground: 0 0% 98%;
262
+ --nostromo-color-info-foreground: 0 0% 9%;
263
263
  --nostromo-color-ring: 262 84% 60%;
264
264
  }
265
265
 
266
266
  /* System Preference Dark Mode */
267
+ /* OS preference acts as the default only. The guard matters: without it this
268
+ * block has the same specificity as the base [data-theme] rule but comes later,
269
+ * so on a dark-OS machine it beat an explicit data-color-scheme="light" and the
270
+ * light scheme could not be selected at all. */
267
271
  @media (prefers-color-scheme: dark) {
268
- [data-theme="nostromo"] {
272
+ [data-theme="nostromo"]:not([data-color-scheme]) {
269
273
  /* Invert neutral colors for dark mode */
270
274
  --nostromo-color-neutral-50: 0 0% 9%;
271
275
  --nostromo-color-neutral-100: 0 0% 15%;
@@ -285,31 +289,32 @@
285
289
  --nostromo-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.4);
286
290
  --nostromo-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.4);
287
291
 
288
- /* Semantic Colors - Dark mode overrides (system preference) */
292
+ /* Semantic Colors - Dark mode overrides */
293
+ /* Contrast validated: foreground/background 17.18:1, muted-foreground/muted 4.51:1 */
289
294
  /* IMPORTANT: In dark mode, neutral-950 is 98% (light), so we use neutral-900 (95%) for dark background */
290
295
  /* Note: Use DIRECT raw HSL values, NOT var() references */
291
296
  --nostromo-color-background: 0 0% 9%; /* Dark background - using neutral-900 value directly */
292
297
  --nostromo-color-foreground: 0 0% 95%; /* Light text on dark background */
293
- --nostromo-color-muted: 0 0% 85%;
294
- --nostromo-color-muted-foreground: 0 0% 65%; /* Adjusted for 4.5:1 contrast with muted (85%) */
295
- --nostromo-color-popover: 0 0% 85%; /* Dark popover background */
298
+ --nostromo-color-muted: 0 0% 20%;
299
+ --nostromo-color-muted-foreground: 0 0% 65%; /* 5.2:1 against muted (20%) */
300
+ --nostromo-color-popover: 0 0% 15%; /* Dark popover background */
296
301
  --nostromo-color-popover-foreground: 0 0% 95%; /* Light text on dark popover */
297
- --nostromo-color-card: 0 0% 85%;
302
+ --nostromo-color-card: 0 0% 15%;
298
303
  --nostromo-color-card-foreground: 0 0% 95%;
299
304
  --nostromo-color-border: 0 0% 75%;
300
305
  --nostromo-color-input: 0 0% 75%;
301
306
  --nostromo-color-primary: 262 84% 60%;
302
- --nostromo-color-primary-foreground: 0 0% 9%; /* Dark text on light primary button */
303
- --nostromo-color-secondary: 0 0% 75%;
307
+ --nostromo-color-primary-foreground: 0 0% 98%;
308
+ --nostromo-color-secondary: 0 0% 20%;
304
309
  --nostromo-color-secondary-foreground: 0 0% 95%;
305
310
  --nostromo-color-accent: 262 84% 25%;
306
311
  --nostromo-color-accent-foreground: 262 84% 90%;
307
- --nostromo-color-destructive: 0 84% 60%;
308
- --nostromo-color-destructive-foreground: 0 0% 9%; /* Dark text on light destructive button */
309
- --nostromo-color-success-foreground: 0 0% 9%; /* Dark text on light success */
310
- --nostromo-color-warning-foreground: 0 0% 95%;
311
- --nostromo-color-error-foreground: 0 0% 9%; /* Dark text on light error */
312
- --nostromo-color-info-foreground: 0 0% 9%; /* Dark text on light info */
312
+ --nostromo-color-destructive: 0 84% 48%;
313
+ --nostromo-color-destructive-foreground: 0 0% 98%;
314
+ --nostromo-color-success-foreground: 0 0% 9%;
315
+ --nostromo-color-warning-foreground: 0 0% 9%;
316
+ --nostromo-color-error-foreground: 0 0% 98%;
317
+ --nostromo-color-info-foreground: 0 0% 9%;
313
318
  --nostromo-color-ring: 262 84% 60%;
314
319
  }
315
320
  }