@jarllyng/nostromo 3.4.0 → 3.5.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 (83) hide show
  1. package/dist/animations.css +144 -0
  2. package/dist/chunk-3FY7LZ3B.js +3 -0
  3. package/dist/chunk-3FY7LZ3B.js.map +1 -0
  4. package/dist/chunk-E53C3RDD.cjs +3 -0
  5. package/dist/chunk-E53C3RDD.cjs.map +1 -0
  6. package/dist/chunk-EEGXD4HC.cjs +3 -0
  7. package/dist/chunk-EEGXD4HC.cjs.map +1 -0
  8. package/dist/chunk-ESUSGG6O.js +3 -0
  9. package/dist/chunk-ESUSGG6O.js.map +1 -0
  10. package/dist/components/core/alert.d.cts +1 -1
  11. package/dist/components/core/alert.d.ts +1 -1
  12. package/dist/components/core/badge.d.cts +1 -1
  13. package/dist/components/core/badge.d.ts +1 -1
  14. package/dist/components/core/breadcrumb.d.cts +1 -1
  15. package/dist/components/core/breadcrumb.d.ts +1 -1
  16. package/dist/components/core/button.d.cts +2 -2
  17. package/dist/components/core/button.d.ts +2 -2
  18. package/dist/components/core/checkbox.d.cts +1 -1
  19. package/dist/components/core/checkbox.d.ts +1 -1
  20. package/dist/components/core/collapsible.cjs +3 -0
  21. package/dist/components/core/collapsible.cjs.map +1 -0
  22. package/dist/components/core/collapsible.d.cts +17 -0
  23. package/dist/components/core/collapsible.d.ts +17 -0
  24. package/dist/components/core/collapsible.js +3 -0
  25. package/dist/components/core/collapsible.js.map +1 -0
  26. package/dist/components/core/dialog.d.cts +1 -1
  27. package/dist/components/core/dialog.d.ts +1 -1
  28. package/dist/components/core/error-message.d.cts +1 -1
  29. package/dist/components/core/error-message.d.ts +1 -1
  30. package/dist/components/core/helper-text.d.cts +1 -1
  31. package/dist/components/core/helper-text.d.ts +1 -1
  32. package/dist/components/core/icon.d.cts +2 -2
  33. package/dist/components/core/icon.d.ts +2 -2
  34. package/dist/components/core/input.d.cts +1 -1
  35. package/dist/components/core/input.d.ts +1 -1
  36. package/dist/components/core/label.d.cts +1 -1
  37. package/dist/components/core/label.d.ts +1 -1
  38. package/dist/components/core/pagination.d.cts +1 -1
  39. package/dist/components/core/pagination.d.ts +1 -1
  40. package/dist/components/core/popover.cjs +3 -0
  41. package/dist/components/core/popover.cjs.map +1 -0
  42. package/dist/components/core/popover.d.cts +39 -0
  43. package/dist/components/core/popover.d.ts +39 -0
  44. package/dist/components/core/popover.js +3 -0
  45. package/dist/components/core/popover.js.map +1 -0
  46. package/dist/components/core/progress.d.cts +3 -3
  47. package/dist/components/core/progress.d.ts +3 -3
  48. package/dist/components/core/radio-group.d.cts +1 -1
  49. package/dist/components/core/radio-group.d.ts +1 -1
  50. package/dist/components/core/select.d.cts +3 -3
  51. package/dist/components/core/select.d.ts +3 -3
  52. package/dist/components/core/skeleton.d.cts +1 -1
  53. package/dist/components/core/skeleton.d.ts +1 -1
  54. package/dist/components/core/switch.d.cts +1 -1
  55. package/dist/components/core/switch.d.ts +1 -1
  56. package/dist/components/core/textarea.d.cts +1 -1
  57. package/dist/components/core/textarea.d.ts +1 -1
  58. package/dist/components/core/toast.d.cts +2 -2
  59. package/dist/components/core/toast.d.ts +2 -2
  60. package/dist/components/core/tooltip.d.cts +2 -2
  61. package/dist/components/core/tooltip.d.ts +2 -2
  62. package/dist/components/marketing/features.d.cts +2 -2
  63. package/dist/components/marketing/features.d.ts +2 -2
  64. package/dist/components/marketing/gallery.d.cts +1 -1
  65. package/dist/components/marketing/gallery.d.ts +1 -1
  66. package/dist/components/marketing/pricing.d.cts +1 -1
  67. package/dist/components/marketing/pricing.d.ts +1 -1
  68. package/dist/components/marketing/testimonials.d.cts +1 -1
  69. package/dist/components/marketing/testimonials.d.ts +1 -1
  70. package/dist/index.cjs +1 -1
  71. package/dist/index.cjs.map +1 -1
  72. package/dist/index.css +1 -1
  73. package/dist/index.css.map +1 -1
  74. package/dist/index.d.cts +4 -0
  75. package/dist/index.d.ts +4 -0
  76. package/dist/index.js +1 -1
  77. package/dist/index.js.map +1 -1
  78. package/dist/tailwind.css +4 -0
  79. package/dist/themes/lv-426.css +6 -0
  80. package/dist/themes/mother.css +6 -0
  81. package/dist/themes/nostromo.css +6 -0
  82. package/dist/themes/sulaco.css +6 -0
  83. package/package.json +22 -1
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  "use client";
2
- export{a as Testimonials}from'./chunk-LR4VUFOQ.js';export{b as Textarea,a as textareaVariants}from'./chunk-2HYJSYQX.js';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-TCA5Z7FL.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{e as CircularProgress,d as Progress,b as progressBarVariants,c as progressLabelVariants,a as progressVariants}from'./chunk-NLD4R74T.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{c as Dialog,e as DialogContent,h as DialogDescription,f as DialogHeader,g as DialogTitle,d as DialogTrigger}from'./chunk-MY2KMTUS.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{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{l as ChartArea,j as ChartBar,d as ChartContainer,e as ChartGrid,i as ChartLegend,k as ChartLine,m as ChartReferenceLine,h as ChartTooltip,f as ChartXAxis,g as ChartYAxis,b as buildColorMap,a as chartPalette,c as resolveSeriesColor}from'./chunk-CCNO2VWE.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{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 gt={nostromo:"nostromo",mother:"mother","lv-426":"lv-426",sulaco:"sulaco"};function nt(o){typeof document<"u"&&document.documentElement.setAttribute("data-theme",o);}function et(){return typeof document>"u"?null:document.documentElement.getAttribute("data-theme")}function ft(){if(typeof document>"u")return;let r=document.documentElement.getAttribute("data-color-scheme")==="dark"?"light":"dark";document.documentElement.setAttribute("data-color-scheme",r);}function st(o){typeof document>"u"||document.documentElement.setAttribute("data-color-scheme",o?"dark":"light");}function at(){return typeof document>"u"?null:document.documentElement.getAttribute("data-color-scheme")}function lt(){return typeof window>"u"?false:window.matchMedia("(prefers-color-scheme: dark)").matches}function ht(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 xt(o="nostromo"){typeof document>"u"||(et()||nt(o),at()||st(lt()));}var Mt={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{nt as applyTheme,at as getColorScheme,et as getCurrentTheme,xt as initializeTheme,ht as onSystemColorSchemeChange,lt as prefersDarkMode,st as setDarkMode,Mt as themeInfo,gt as themes,ft as toggleDarkMode};//# sourceMappingURL=index.js.map
2
+ 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{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{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-TCA5Z7FL.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{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{b as Popover,d as PopoverAnchor,g as PopoverArrow,e as PopoverClose,f as PopoverContent,c as PopoverTrigger,a as popoverContentVariants}from'./chunk-3FY7LZ3B.js';export{e as CircularProgress,d as Progress,b as progressBarVariants,c as progressLabelVariants,a as progressVariants}from'./chunk-NLD4R74T.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{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{c as Dialog,e as DialogContent,h as DialogDescription,f as DialogHeader,g as DialogTitle,d as DialogTrigger}from'./chunk-MY2KMTUS.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 Input}from'./chunk-HD3TMQPR.js';export{b as Label,a as labelVariants}from'./chunk-LYVCB45L.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{l as ChartArea,j as ChartBar,d as ChartContainer,e as ChartGrid,i as ChartLegend,k as ChartLine,m as ChartReferenceLine,h as ChartTooltip,f as ChartXAxis,g as ChartYAxis,b as buildColorMap,a as chartPalette,c as resolveSeriesColor}from'./chunk-CCNO2VWE.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 Collapsible,c as CollapsibleContent,b as CollapsibleTrigger}from'./chunk-ESUSGG6O.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 St={nostromo:"nostromo",mother:"mother","lv-426":"lv-426",sulaco:"sulaco"};function pt(o){typeof document<"u"&&document.documentElement.setAttribute("data-theme",o);}function gt(){return typeof document>"u"?null:document.documentElement.getAttribute("data-theme")}function Pt(){if(typeof document>"u")return;let r=document.documentElement.getAttribute("data-color-scheme")==="dark"?"light":"dark";document.documentElement.setAttribute("data-color-scheme",r);}function ft(o){typeof document>"u"||document.documentElement.setAttribute("data-color-scheme",o?"dark":"light");}function ht(){return typeof document>"u"?null:document.documentElement.getAttribute("data-color-scheme")}function xt(){return typeof window>"u"?false:window.matchMedia("(prefers-color-scheme: dark)").matches}function Tt(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 It(o="nostromo"){typeof document>"u"||(gt()||pt(o),ht()||ft(xt()));}var Ut={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{pt as applyTheme,ht as getColorScheme,gt as getCurrentTheme,It as initializeTheme,Tt as onSystemColorSchemeChange,xt as prefersDarkMode,ft as setDarkMode,Ut as themeInfo,St as themes,Pt as toggleDarkMode};//# sourceMappingURL=index.js.map
3
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","initializeTheme","defaultTheme","themeInfo"],"mappings":"i+IAIO,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"]}
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":"4uJAIO,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/tailwind.css CHANGED
@@ -22,6 +22,10 @@
22
22
  layering itself. */
23
23
  @import "./tokens.css";
24
24
 
25
+ /* Enter/exit utilities. Also unlayered: @utility is a Tailwind at-rule and it
26
+ places these in the utilities layer itself. */
27
+ @import "./animations.css";
28
+
25
29
  /* The reset and base typography go into Tailwind's `base` layer. Left
26
30
  unlayered they would outrank every layered rule in the document - including
27
31
  utility classes - and a blanket `* { margin: 0 }` beating utilities is not
@@ -135,6 +135,12 @@
135
135
  --nostromo-radius-2xl: 1rem;
136
136
  --nostromo-radius-full: 9999px;
137
137
 
138
+ /* Motion - how long enter/exit animations run. A token rather than a literal
139
+ so a consumer can slow it down or switch it off per theme; every animation
140
+ utility reads it with a fallback, so removing it degrades to the default
141
+ rather than to no animation. */
142
+ --nostromo-animate-duration: 150ms;
143
+
138
144
  /* Shadows */
139
145
  --nostromo-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
140
146
  --nostromo-shadow-md:
@@ -135,6 +135,12 @@
135
135
  --nostromo-radius-2xl: 1rem;
136
136
  --nostromo-radius-full: 9999px;
137
137
 
138
+ /* Motion - how long enter/exit animations run. A token rather than a literal
139
+ so a consumer can slow it down or switch it off per theme; every animation
140
+ utility reads it with a fallback, so removing it degrades to the default
141
+ rather than to no animation. */
142
+ --nostromo-animate-duration: 150ms;
143
+
138
144
  /* Shadows */
139
145
  --nostromo-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
140
146
  --nostromo-shadow-md:
@@ -96,6 +96,12 @@
96
96
  --nostromo-radius-xl: 1rem; /* 16px */
97
97
  --nostromo-radius-full: 9999px;
98
98
 
99
+ /* Motion - how long enter/exit animations run. A token rather than a literal
100
+ so a consumer can slow it down or switch it off per theme; every animation
101
+ utility reads it with a fallback, so removing it degrades to the default
102
+ rather than to no animation. */
103
+ --nostromo-animate-duration: 150ms;
104
+
99
105
  /* Shadows - Modern, layered depth */
100
106
  --nostromo-shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
101
107
  --nostromo-shadow-sm:
@@ -135,6 +135,12 @@
135
135
  --nostromo-radius-2xl: 1rem;
136
136
  --nostromo-radius-full: 9999px;
137
137
 
138
+ /* Motion - how long enter/exit animations run. A token rather than a literal
139
+ so a consumer can slow it down or switch it off per theme; every animation
140
+ utility reads it with a fallback, so removing it degrades to the default
141
+ rather than to no animation. */
142
+ --nostromo-animate-duration: 150ms;
143
+
138
144
  /* Shadows */
139
145
  --nostromo-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
140
146
  --nostromo-shadow-md:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jarllyng/nostromo",
3
- "version": "3.4.0",
3
+ "version": "3.5.0",
4
4
  "description": "Accessible React component library with CSS-first Tailwind v4 theming",
5
5
  "keywords": [
6
6
  "react",
@@ -237,6 +237,16 @@
237
237
  "types": "./dist/components/core/chart-composable.d.ts",
238
238
  "import": "./dist/components/core/chart-composable.js",
239
239
  "require": "./dist/components/core/chart-composable.cjs"
240
+ },
241
+ "./components/core/popover": {
242
+ "types": "./dist/components/core/popover.d.ts",
243
+ "import": "./dist/components/core/popover.js",
244
+ "require": "./dist/components/core/popover.cjs"
245
+ },
246
+ "./components/core/collapsible": {
247
+ "types": "./dist/components/core/collapsible.d.ts",
248
+ "import": "./dist/components/core/collapsible.js",
249
+ "require": "./dist/components/core/collapsible.cjs"
240
250
  }
241
251
  },
242
252
  "files": [
@@ -270,6 +280,9 @@
270
280
  "tailwindcss": "^4.0.0"
271
281
  },
272
282
  "dependencies": {
283
+ "@radix-ui/react-collapsible": "^1.1.20",
284
+ "@radix-ui/react-dialog": "^1.1.23",
285
+ "@radix-ui/react-dropdown-menu": "^2.1.24",
273
286
  "@radix-ui/react-popover": "^1.1.23",
274
287
  "@radix-ui/react-select": "^2.3.7",
275
288
  "@radix-ui/react-slot": "^1.3.3",
@@ -348,6 +361,14 @@
348
361
  {
349
362
  "path": "dist/components/core/icon.js",
350
363
  "limit": "55 KB"
364
+ },
365
+ {
366
+ "path": "dist/components/core/popover.js",
367
+ "limit": "32 KB"
368
+ },
369
+ {
370
+ "path": "dist/components/core/collapsible.js",
371
+ "limit": "14 KB"
351
372
  }
352
373
  ]
353
374
  }