7onic 0.1.8 → 0.1.9

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 (3) hide show
  1. package/dist/index.js +89 -506
  2. package/llms.txt +1 -1
  3. package/package.json +10 -1
package/dist/index.js CHANGED
@@ -1549,7 +1549,7 @@ var registry = {
1549
1549
  dependencies: ["@radix-ui/react-accordion"],
1550
1550
  registryDependencies: [],
1551
1551
  reverseDependencies: [],
1552
- namespace: true,
1552
+ namespace: false,
1553
1553
  description: "",
1554
1554
  files: [{
1555
1555
  path: "accordion.tsx",
@@ -1610,7 +1610,7 @@ export interface AccordionProps extends React.HTMLAttributes<HTMLDivElement> {
1610
1610
  disabled?: boolean
1611
1611
  }
1612
1612
 
1613
- const AccordionRoot = React.forwardRef<HTMLDivElement, AccordionProps>(
1613
+ const Accordion = React.forwardRef<HTMLDivElement, AccordionProps>(
1614
1614
  ({ className, variant = 'default', size = 'default', iconPosition = 'right', type = 'single', collapsible = true, defaultValue, value, onValueChange, disabled, ...props }, ref) => {
1615
1615
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Radix single/multiple union type conflict
1616
1616
  const restProps = props as any
@@ -1645,7 +1645,7 @@ const AccordionRoot = React.forwardRef<HTMLDivElement, AccordionProps>(
1645
1645
  )
1646
1646
  }
1647
1647
  )
1648
- AccordionRoot.displayName = 'Accordion'
1648
+ Accordion.displayName = 'Accordion'
1649
1649
 
1650
1650
  // \u2500\u2500\u2500 AccordionItem \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
1651
1651
 
@@ -1792,21 +1792,6 @@ const AccordionContent = React.forwardRef<
1792
1792
  AccordionContent.displayName = 'AccordionContent'
1793
1793
 
1794
1794
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
1795
-
1796
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
1797
- const Accordion = Object.assign(AccordionRoot, {
1798
- Item: AccordionItem,
1799
- Trigger: AccordionTrigger,
1800
- Content: AccordionContent,
1801
- })
1802
-
1803
- // eslint-disable-next-line @typescript-eslint/no-namespace
1804
- namespace Accordion {
1805
- export type ItemProps = AccordionItemProps
1806
- export type TriggerProps = AccordionTriggerProps
1807
- export type ContentProps = AccordionContentProps
1808
- }
1809
-
1810
1795
  export {
1811
1796
  Accordion,
1812
1797
  AccordionItem,
@@ -1824,7 +1809,7 @@ export {
1824
1809
  dependencies: [],
1825
1810
  registryDependencies: [],
1826
1811
  reverseDependencies: [],
1827
- namespace: true,
1812
+ namespace: false,
1828
1813
  description: "",
1829
1814
  files: [{
1830
1815
  path: "alert.tsx",
@@ -1988,7 +1973,7 @@ function useAlertContext() {
1988
1973
  // Alert
1989
1974
  // \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
1990
1975
 
1991
- // \u2500\u2500\u2500 AlertRoot \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
1976
+ // \u2500\u2500\u2500 Alert \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
1992
1977
  export interface AlertRootProps
1993
1978
  extends React.HTMLAttributes<HTMLDivElement>,
1994
1979
  VariantProps<typeof alertVariants> {
@@ -2010,7 +1995,7 @@ export interface AlertRootProps
2010
1995
  hideIcon?: boolean
2011
1996
  }
2012
1997
 
2013
- const AlertRoot = React.forwardRef<HTMLDivElement, AlertRootProps>(
1998
+ const Alert = React.forwardRef<HTMLDivElement, AlertRootProps>(
2014
1999
  ({
2015
2000
  className,
2016
2001
  variant = 'default',
@@ -2076,7 +2061,7 @@ const AlertRoot = React.forwardRef<HTMLDivElement, AlertRootProps>(
2076
2061
  )
2077
2062
  }
2078
2063
  )
2079
- AlertRoot.displayName = 'AlertRoot'
2064
+ Alert.displayName = 'Alert'
2080
2065
 
2081
2066
  // \u2500\u2500\u2500 AlertTitle \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
2082
2067
  export interface AlertTitleProps extends React.HTMLAttributes<HTMLHeadingElement> {}
@@ -2117,23 +2102,9 @@ const AlertDescription = React.forwardRef<HTMLParagraphElement, AlertDescription
2117
2102
  )
2118
2103
  AlertDescription.displayName = 'AlertDescription'
2119
2104
 
2120
- // \u2500\u2500\u2500 Namespace: Alert \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
2121
- const Alert = Object.assign(AlertRoot, {
2122
- Title: AlertTitle,
2123
- Description: AlertDescription,
2124
- })
2125
-
2126
- // eslint-disable-next-line @typescript-eslint/no-namespace
2127
- namespace Alert {
2128
- export type RootProps = AlertRootProps
2129
- export type TitleProps = AlertTitleProps
2130
- export type DescriptionProps = AlertDescriptionProps
2131
- }
2132
-
2133
2105
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
2134
2106
  export {
2135
2107
  Alert,
2136
- AlertRoot,
2137
2108
  AlertTitle,
2138
2109
  AlertDescription,
2139
2110
  alertVariants,
@@ -2147,7 +2118,7 @@ export {
2147
2118
  dependencies: ["@radix-ui/react-avatar"],
2148
2119
  registryDependencies: [],
2149
2120
  reverseDependencies: [],
2150
- namespace: true,
2121
+ namespace: false,
2151
2122
  description: "",
2152
2123
  files: [{
2153
2124
  path: "avatar.tsx",
@@ -2278,7 +2249,7 @@ export interface AvatarProps
2278
2249
  status?: AvatarStatus
2279
2250
  }
2280
2251
 
2281
- const AvatarRoot = React.forwardRef<
2252
+ const Avatar = React.forwardRef<
2282
2253
  React.ElementRef<typeof AvatarPrimitive.Root>,
2283
2254
  AvatarProps
2284
2255
  >(({ className, size, shape, status, children, ...props }, ref) => {
@@ -2316,7 +2287,7 @@ const AvatarRoot = React.forwardRef<
2316
2287
  </span>
2317
2288
  )
2318
2289
  })
2319
- AvatarRoot.displayName = 'Avatar'
2290
+ Avatar.displayName = 'Avatar'
2320
2291
 
2321
2292
  export interface AvatarImageProps
2322
2293
  extends React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image> {}
@@ -2394,9 +2365,9 @@ const AvatarGroup = React.forwardRef<HTMLDivElement, AvatarGroupProps>(
2394
2365
  >
2395
2366
  {visibleChildren}
2396
2367
  {overflowCount > 0 && (
2397
- <AvatarRoot size={size} shape={shape}>
2368
+ <Avatar size={size} shape={shape}>
2398
2369
  <AvatarFallback size={size}>+{overflowCount}</AvatarFallback>
2399
- </AvatarRoot>
2370
+ </Avatar>
2400
2371
  )}
2401
2372
  </div>
2402
2373
  )
@@ -2404,20 +2375,6 @@ const AvatarGroup = React.forwardRef<HTMLDivElement, AvatarGroupProps>(
2404
2375
  )
2405
2376
  AvatarGroup.displayName = 'AvatarGroup'
2406
2377
 
2407
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
2408
- const Avatar = Object.assign(AvatarRoot, {
2409
- Image: AvatarImage,
2410
- Fallback: AvatarFallback,
2411
- Group: AvatarGroup,
2412
- })
2413
-
2414
- // eslint-disable-next-line @typescript-eslint/no-namespace
2415
- namespace Avatar {
2416
- export type ImageProps = AvatarImageProps
2417
- export type FallbackProps = AvatarFallbackProps
2418
- export type GroupProps = AvatarGroupProps
2419
- }
2420
-
2421
2378
  export { Avatar, AvatarImage, AvatarFallback, AvatarGroup, avatarVariants, avatarColors, getAvatarColor, getAvatarInitials }
2422
2379
  `,
2423
2380
  type: "ui"
@@ -2636,7 +2593,7 @@ export { Badge, badgeVariants }
2636
2593
  dependencies: ["@radix-ui/react-slot"],
2637
2594
  registryDependencies: [],
2638
2595
  reverseDependencies: [],
2639
- namespace: true,
2596
+ namespace: false,
2640
2597
  description: "",
2641
2598
  files: [{
2642
2599
  path: "breadcrumb.tsx",
@@ -2709,7 +2666,7 @@ export interface BreadcrumbProps extends React.ComponentPropsWithoutRef<'nav'> {
2709
2666
  itemsAfterCollapse?: number
2710
2667
  }
2711
2668
 
2712
- const BreadcrumbRoot = React.forwardRef<HTMLElement, BreadcrumbProps>(
2669
+ const Breadcrumb = React.forwardRef<HTMLElement, BreadcrumbProps>(
2713
2670
  ({ className, separator, size = 'default', ...props }, ref) => (
2714
2671
  <BreadcrumbContext.Provider value={{ size, separator }}>
2715
2672
  <nav
@@ -2721,7 +2678,7 @@ const BreadcrumbRoot = React.forwardRef<HTMLElement, BreadcrumbProps>(
2721
2678
  </BreadcrumbContext.Provider>
2722
2679
  )
2723
2680
  )
2724
- BreadcrumbRoot.displayName = 'Breadcrumb'
2681
+ Breadcrumb.displayName = 'Breadcrumb'
2725
2682
 
2726
2683
  // \u2500\u2500\u2500 BreadcrumbList \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
2727
2684
 
@@ -2846,22 +2803,6 @@ BreadcrumbEllipsis.displayName = 'BreadcrumbEllipsis'
2846
2803
 
2847
2804
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
2848
2805
 
2849
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
2850
- const Breadcrumb = Object.assign(BreadcrumbRoot, {
2851
- List: BreadcrumbList,
2852
- Item: BreadcrumbItem,
2853
- Link: BreadcrumbLink,
2854
- Page: BreadcrumbPage,
2855
- Separator: BreadcrumbSeparator,
2856
- Ellipsis: BreadcrumbEllipsis,
2857
- })
2858
-
2859
- // eslint-disable-next-line @typescript-eslint/no-namespace
2860
- namespace Breadcrumb {
2861
- export type LinkProps = BreadcrumbLinkProps
2862
- export type EllipsisProps = BreadcrumbEllipsisProps
2863
- }
2864
-
2865
2806
  export {
2866
2807
  Breadcrumb,
2867
2808
  BreadcrumbList,
@@ -3165,7 +3106,7 @@ export { Button, buttonVariants }
3165
3106
  dependencies: ["@radix-ui/react-slot"],
3166
3107
  registryDependencies: [],
3167
3108
  reverseDependencies: [],
3168
- namespace: true,
3109
+ namespace: false,
3169
3110
  description: "",
3170
3111
  files: [{
3171
3112
  path: "card.tsx",
@@ -3247,7 +3188,7 @@ export interface CardProps
3247
3188
  asChild?: boolean
3248
3189
  }
3249
3190
 
3250
- const CardRoot = React.forwardRef<HTMLDivElement, CardProps>(
3191
+ const Card = React.forwardRef<HTMLDivElement, CardProps>(
3251
3192
  ({
3252
3193
  className,
3253
3194
  variant = 'default',
@@ -3303,7 +3244,7 @@ const CardRoot = React.forwardRef<HTMLDivElement, CardProps>(
3303
3244
  )
3304
3245
  }
3305
3246
  )
3306
- CardRoot.displayName = 'Card'
3247
+ Card.displayName = 'Card'
3307
3248
 
3308
3249
  // \u2500\u2500 Size-based padding map (responsive: mobile \u2192 desktop) \u2500\u2500
3309
3250
 
@@ -3567,28 +3508,6 @@ const CardFooter = React.forwardRef<HTMLDivElement, CardFooterProps>(
3567
3508
  )
3568
3509
  CardFooter.displayName = 'CardFooter'
3569
3510
 
3570
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
3571
- const Card = Object.assign(CardRoot, {
3572
- Image: CardImage,
3573
- Header: CardHeader,
3574
- Title: CardTitle,
3575
- Description: CardDescription,
3576
- Action: CardAction,
3577
- Content: CardContent,
3578
- Footer: CardFooter,
3579
- })
3580
-
3581
- // eslint-disable-next-line @typescript-eslint/no-namespace
3582
- namespace Card {
3583
- export type ImageProps = CardImageProps
3584
- export type HeaderProps = CardHeaderProps
3585
- export type TitleProps = CardTitleProps
3586
- export type DescriptionProps = CardDescriptionProps
3587
- export type ActionProps = CardActionProps
3588
- export type ContentProps = CardContentProps
3589
- export type FooterProps = CardFooterProps
3590
- }
3591
-
3592
3511
  export {
3593
3512
  Card,
3594
3513
  CardImage,
@@ -3609,7 +3528,7 @@ export {
3609
3528
  dependencies: ["recharts"],
3610
3529
  registryDependencies: [],
3611
3530
  reverseDependencies: [],
3612
- namespace: true,
3531
+ namespace: false,
3613
3532
  description: "",
3614
3533
  aliases: ["bar-chart", "line-chart", "area-chart", "pie-chart"],
3615
3534
  files: [{
@@ -4462,24 +4381,9 @@ function ChartPie({
4462
4381
 
4463
4382
  // \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
4464
4383
 
4465
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
4466
- const Chart = Object.assign(ChartContainer, {
4467
- Bar: ChartBar,
4468
- Line: ChartLine,
4469
- Area: ChartArea,
4470
- Pie: ChartPie,
4471
- Tooltip: ChartTooltip,
4472
- TooltipContent: ChartTooltipContent,
4473
- Legend: ChartLegend,
4474
- LegendContent: ChartLegendContent,
4475
- XAxis: ChartXAxis,
4476
- YAxis: ChartYAxis,
4477
- Style: ChartStyle,
4478
- })
4479
-
4480
4384
  export {
4481
- Chart,
4482
4385
  ChartContainer,
4386
+ ChartContainer as Chart,
4483
4387
  ChartBar,
4484
4388
  ChartLine,
4485
4389
  ChartArea,
@@ -4502,7 +4406,7 @@ export {
4502
4406
  dependencies: [],
4503
4407
  registryDependencies: [],
4504
4408
  reverseDependencies: [],
4505
- namespace: true,
4409
+ namespace: false,
4506
4410
  description: "",
4507
4411
  files: [{
4508
4412
  path: "chat-input.tsx",
@@ -4725,7 +4629,7 @@ export interface ChatInputSubmitProps
4725
4629
  // ChatInput \u2014 Root container
4726
4630
  // ============================================================================
4727
4631
 
4728
- const ChatInputRoot = React.forwardRef<HTMLDivElement, ChatInputRootProps>(
4632
+ const ChatInput = React.forwardRef<HTMLDivElement, ChatInputRootProps>(
4729
4633
  (
4730
4634
  {
4731
4635
  className,
@@ -4812,10 +4716,10 @@ const ChatInputRoot = React.forwardRef<HTMLDivElement, ChatInputRootProps>(
4812
4716
  )
4813
4717
  }
4814
4718
  )
4815
- ChatInputRoot.displayName = 'ChatInput'
4719
+ ChatInput.displayName = 'ChatInput'
4816
4720
 
4817
4721
  // ============================================================================
4818
- // ChatInput.Field \u2014 Auto-resizing textarea
4722
+ // ChatInputField \u2014 Auto-resizing textarea
4819
4723
  // ============================================================================
4820
4724
 
4821
4725
  const ChatInputField = React.forwardRef<HTMLTextAreaElement, ChatInputFieldProps>(
@@ -4917,10 +4821,10 @@ const ChatInputField = React.forwardRef<HTMLTextAreaElement, ChatInputFieldProps
4917
4821
  )
4918
4822
  }
4919
4823
  )
4920
- ChatInputField.displayName = 'ChatInput.Field'
4824
+ ChatInputField.displayName = 'ChatInputField'
4921
4825
 
4922
4826
  // ============================================================================
4923
- // ChatInput.Submit \u2014 Send / stop button
4827
+ // ChatInputSubmit \u2014 Send / stop button
4924
4828
  // ============================================================================
4925
4829
 
4926
4830
  const ChatInputSubmit = React.forwardRef<HTMLButtonElement, ChatInputSubmitProps>(
@@ -5002,7 +4906,7 @@ const ChatInputSubmit = React.forwardRef<HTMLButtonElement, ChatInputSubmitProps
5002
4906
  )
5003
4907
  }
5004
4908
  )
5005
- ChatInputSubmit.displayName = 'ChatInput.Submit'
4909
+ ChatInputSubmit.displayName = 'ChatInputSubmit'
5006
4910
 
5007
4911
  // ============================================================================
5008
4912
  // Built-in SVG icons \u2014 no external icon dependency
@@ -5033,26 +4937,8 @@ function StopIcon() {
5033
4937
  )
5034
4938
  }
5035
4939
 
5036
- // ============================================================================
5037
- // Namespace export (compound pattern)
5038
- // ============================================================================
5039
-
5040
- const ChatInput = Object.assign(ChatInputRoot, {
5041
- Field: ChatInputField,
5042
- Submit: ChatInputSubmit,
5043
- })
5044
-
5045
- // eslint-disable-next-line @typescript-eslint/no-namespace
5046
- namespace ChatInput {
5047
- export type RootProps = ChatInputRootProps
5048
- export type FieldProps = ChatInputFieldProps
5049
- export type SubmitProps = ChatInputSubmitProps
5050
- export type Layout = ChatInputLayout
5051
- }
5052
-
5053
4940
  export {
5054
4941
  ChatInput,
5055
- ChatInputRoot,
5056
4942
  ChatInputField,
5057
4943
  ChatInputSubmit,
5058
4944
  chatInputVariants,
@@ -5066,7 +4952,7 @@ export {
5066
4952
  dependencies: [],
5067
4953
  registryDependencies: ["avatar", "typing-indicator"],
5068
4954
  reverseDependencies: [],
5069
- namespace: true,
4955
+ namespace: false,
5070
4956
  description: "",
5071
4957
  files: [{
5072
4958
  path: "chat-message.tsx",
@@ -5295,7 +5181,7 @@ export interface ChatMessageFooterProps extends React.HTMLAttributes<HTMLDivElem
5295
5181
  // ChatMessage Root
5296
5182
  // ============================================================================
5297
5183
 
5298
- const ChatMessageRoot = React.forwardRef<HTMLDivElement, ChatMessageRootProps>(
5184
+ const ChatMessage = React.forwardRef<HTMLDivElement, ChatMessageRootProps>(
5299
5185
  (
5300
5186
  {
5301
5187
  className,
@@ -5338,7 +5224,7 @@ const ChatMessageRoot = React.forwardRef<HTMLDivElement, ChatMessageRootProps>(
5338
5224
  )
5339
5225
  }
5340
5226
  )
5341
- ChatMessageRoot.displayName = 'ChatMessage'
5227
+ ChatMessage.displayName = 'ChatMessage'
5342
5228
 
5343
5229
  // ============================================================================
5344
5230
  // Default AI sparkle icon
@@ -5355,7 +5241,7 @@ function DefaultAiIcon() {
5355
5241
  }
5356
5242
 
5357
5243
  // ============================================================================
5358
- // ChatMessage.Avatar \u2014 wraps Avatar component with chat-specific sizes
5244
+ // ChatMessageAvatar \u2014 wraps Avatar component with chat-specific sizes
5359
5245
  // ============================================================================
5360
5246
 
5361
5247
  const ChatMessageAvatar = React.forwardRef<HTMLSpanElement, ChatMessageAvatarProps>(
@@ -5373,10 +5259,10 @@ const ChatMessageAvatar = React.forwardRef<HTMLSpanElement, ChatMessageAvatarPro
5373
5259
  </Avatar>
5374
5260
  )
5375
5261
  )
5376
- ChatMessageAvatar.displayName = 'ChatMessage.Avatar'
5262
+ ChatMessageAvatar.displayName = 'ChatMessageAvatar'
5377
5263
 
5378
5264
  // ============================================================================
5379
- // ChatMessage.Content
5265
+ // ChatMessageContent
5380
5266
  // ============================================================================
5381
5267
 
5382
5268
  const ChatMessageContent = React.forwardRef<HTMLDivElement, ChatMessageContentProps>(
@@ -5436,10 +5322,10 @@ const ChatMessageContent = React.forwardRef<HTMLDivElement, ChatMessageContentPr
5436
5322
  )
5437
5323
  }
5438
5324
  )
5439
- ChatMessageContent.displayName = 'ChatMessage.Content'
5325
+ ChatMessageContent.displayName = 'ChatMessageContent'
5440
5326
 
5441
5327
  // ============================================================================
5442
- // ChatMessage.Footer
5328
+ // ChatMessageFooter
5443
5329
  // ============================================================================
5444
5330
 
5445
5331
  const ChatMessageFooter = React.forwardRef<HTMLDivElement, ChatMessageFooterProps>(
@@ -5489,36 +5375,10 @@ const ChatMessageFooter = React.forwardRef<HTMLDivElement, ChatMessageFooterProp
5489
5375
  )
5490
5376
  }
5491
5377
  )
5492
- ChatMessageFooter.displayName = 'ChatMessage.Footer'
5493
-
5494
- // ============================================================================
5495
- // Namespace export (compound pattern)
5496
- // ============================================================================
5497
-
5498
- const ChatMessage = Object.assign(ChatMessageRoot, {
5499
- Avatar: ChatMessageAvatar,
5500
- Content: ChatMessageContent,
5501
- Footer: ChatMessageFooter,
5502
- })
5503
-
5504
- // eslint-disable-next-line @typescript-eslint/no-namespace
5505
- namespace ChatMessage {
5506
- export type RootProps = ChatMessageRootProps
5507
- export type AvatarProps = ChatMessageAvatarProps
5508
- export type ContentProps = ChatMessageContentProps
5509
- export type FooterProps = ChatMessageFooterProps
5510
- export type Role = ChatMessageRole
5511
- export type Variant = ChatMessageVariant
5512
- export type Color = ChatMessageColor
5513
- export type Size = ChatMessageSize
5514
- export type Radius = ChatMessageRadius
5515
- export type Status = ChatMessageStatus
5516
- export type AvatarSize = ChatMessageAvatarSize
5517
- }
5378
+ ChatMessageFooter.displayName = 'ChatMessageFooter'
5518
5379
 
5519
5380
  export {
5520
5381
  ChatMessage,
5521
- ChatMessageRoot,
5522
5382
  ChatMessageAvatar,
5523
5383
  ChatMessageContent,
5524
5384
  ChatMessageFooter,
@@ -5865,7 +5725,7 @@ export { Divider, dividerVariants }
5865
5725
  dependencies: ["@radix-ui/react-dialog"],
5866
5726
  registryDependencies: [],
5867
5727
  reverseDependencies: [],
5868
- namespace: true,
5728
+ namespace: false,
5869
5729
  description: "",
5870
5730
  files: [{
5871
5731
  path: "drawer.tsx",
@@ -5933,8 +5793,8 @@ const drawerSizeVertical = cva('', {
5933
5793
  // Drawer
5934
5794
  // \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
5935
5795
 
5936
- // \u2500\u2500\u2500 Drawer (Root) \u2014 wrapper to avoid Object.assign mutating DialogPrimitive.Root \u2500\u2500
5937
- function DrawerRoot(props: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Root>) {
5796
+ // \u2500\u2500\u2500 Drawer (Root) \u2014 thin wrapper to expose as named export \u2500\u2500
5797
+ function Drawer(props: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Root>) {
5938
5798
  return <DialogPrimitive.Root {...props} />
5939
5799
  }
5940
5800
 
@@ -6097,29 +5957,9 @@ const DrawerFooter = React.forwardRef<
6097
5957
  ))
6098
5958
  DrawerFooter.displayName = 'DrawerFooter'
6099
5959
 
6100
- // \u2500\u2500\u2500 Namespace: Drawer \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
6101
- const Drawer = Object.assign(DrawerRoot, {
6102
- Trigger: DrawerTrigger,
6103
- Portal: DrawerPortal,
6104
- Overlay: DrawerOverlay,
6105
- Content: DrawerContent,
6106
- Header: DrawerHeader,
6107
- Title: DrawerTitle,
6108
- Description: DrawerDescription,
6109
- Body: DrawerBody,
6110
- Footer: DrawerFooter,
6111
- Close: DrawerClose,
6112
- })
6113
-
6114
- // eslint-disable-next-line @typescript-eslint/no-namespace
6115
- namespace Drawer {
6116
- export type ContentProps = DrawerContentProps
6117
- }
6118
-
6119
5960
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
6120
5961
  export {
6121
5962
  Drawer,
6122
- DrawerRoot,
6123
5963
  DrawerTrigger,
6124
5964
  DrawerPortal,
6125
5965
  DrawerOverlay,
@@ -6142,7 +5982,7 @@ export {
6142
5982
  dependencies: ["@radix-ui/react-dropdown-menu"],
6143
5983
  registryDependencies: [],
6144
5984
  reverseDependencies: [],
6145
- namespace: true,
5985
+ namespace: false,
6146
5986
  description: "",
6147
5987
  files: [{
6148
5988
  path: "dropdown.tsx",
@@ -6220,7 +6060,7 @@ const DropdownMenuStyleContext = React.createContext<{
6220
6060
  }>({ radius: 'lg', flush: false, size: 'md' })
6221
6061
 
6222
6062
  // Root \u2014 state management (controlled / uncontrolled)
6223
- const DropdownMenuRoot = DropdownMenuPrimitive.Root
6063
+ const DropdownMenu = DropdownMenuPrimitive.Root
6224
6064
 
6225
6065
  // Trigger \u2014 the element that toggles the menu
6226
6066
  const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger
@@ -6472,23 +6312,6 @@ DropdownMenuShortcut.displayName = 'DropdownMenuShortcut'
6472
6312
 
6473
6313
  export type { DropdownMenuRadius, DropdownMenuSize }
6474
6314
 
6475
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
6476
- const DropdownMenu = Object.assign(DropdownMenuRoot, {
6477
- Trigger: DropdownMenuTrigger,
6478
- Content: DropdownMenuContent,
6479
- Item: DropdownMenuItem,
6480
- CheckboxItem: DropdownMenuCheckboxItem,
6481
- RadioGroup: DropdownMenuRadioGroup,
6482
- RadioItem: DropdownMenuRadioItem,
6483
- Label: DropdownMenuLabel,
6484
- Separator: DropdownMenuSeparator,
6485
- Group: DropdownMenuGroup,
6486
- Sub: DropdownMenuSub,
6487
- SubTrigger: DropdownMenuSubTrigger,
6488
- SubContent: DropdownMenuSubContent,
6489
- Shortcut: DropdownMenuShortcut,
6490
- })
6491
-
6492
6315
  export {
6493
6316
  DropdownMenu,
6494
6317
  DropdownMenuTrigger,
@@ -6514,7 +6337,7 @@ export {
6514
6337
  dependencies: [],
6515
6338
  registryDependencies: [],
6516
6339
  reverseDependencies: [],
6517
- namespace: true,
6340
+ namespace: false,
6518
6341
  description: "",
6519
6342
  files: [{
6520
6343
  path: "field.tsx",
@@ -6560,7 +6383,7 @@ export interface FieldProps
6560
6383
  disabled?: boolean
6561
6384
  }
6562
6385
 
6563
- const FieldRoot = React.forwardRef<HTMLDivElement, FieldProps>(
6386
+ const Field = React.forwardRef<HTMLDivElement, FieldProps>(
6564
6387
  ({ className, gap, error, disabled, children, ...props }, ref) => {
6565
6388
  const id = React.useId()
6566
6389
 
@@ -6579,7 +6402,7 @@ const FieldRoot = React.forwardRef<HTMLDivElement, FieldProps>(
6579
6402
  )
6580
6403
  }
6581
6404
  )
6582
- FieldRoot.displayName = 'Field'
6405
+ Field.displayName = 'Field'
6583
6406
 
6584
6407
  // Field Label
6585
6408
  export interface FieldLabelProps extends React.LabelHTMLAttributes<HTMLLabelElement> {
@@ -6654,18 +6477,6 @@ const FieldCharCount = React.forwardRef<
6654
6477
  })
6655
6478
  FieldCharCount.displayName = 'FieldCharCount'
6656
6479
 
6657
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
6658
- const Field = Object.assign(FieldRoot, {
6659
- Label: FieldLabel,
6660
- Error: FieldError,
6661
- CharCount: FieldCharCount,
6662
- })
6663
-
6664
- // eslint-disable-next-line @typescript-eslint/no-namespace
6665
- namespace Field {
6666
- export type LabelProps = FieldLabelProps
6667
- }
6668
-
6669
6480
  export { Field, FieldLabel, FieldError, FieldCharCount, useFieldContext }
6670
6481
  `,
6671
6482
  type: "ui"
@@ -7049,7 +6860,7 @@ export { Input, inputVariants }
7049
6860
  dependencies: [],
7050
6861
  registryDependencies: [],
7051
6862
  reverseDependencies: [],
7052
- namespace: true,
6863
+ namespace: false,
7053
6864
  description: "",
7054
6865
  files: [{
7055
6866
  path: "metric-card.tsx",
@@ -7139,7 +6950,7 @@ export interface MetricCardProps
7139
6950
  animated?: boolean
7140
6951
  }
7141
6952
 
7142
- const MetricCardRoot = React.forwardRef<HTMLDivElement, MetricCardProps>(
6953
+ const MetricCard = React.forwardRef<HTMLDivElement, MetricCardProps>(
7143
6954
  ({ className, variant, size, radius, animated = false, children, ...props }, ref) => {
7144
6955
  const resolvedSize = (size || 'default') as MetricCardSize
7145
6956
  return (
@@ -7155,7 +6966,7 @@ const MetricCardRoot = React.forwardRef<HTMLDivElement, MetricCardProps>(
7155
6966
  )
7156
6967
  }
7157
6968
  )
7158
- MetricCardRoot.displayName = 'MetricCard'
6969
+ MetricCard.displayName = 'MetricCard'
7159
6970
 
7160
6971
  // \u2500\u2500 MetricCardHeader \u2500\u2500
7161
6972
 
@@ -7310,27 +7121,6 @@ const MetricCardSymbol = React.forwardRef<HTMLDivElement, MetricCardSymbolProps>
7310
7121
  MetricCardSymbol.displayName = 'MetricCardSymbol'
7311
7122
 
7312
7123
  // \u2500\u2500 Exports \u2500\u2500
7313
-
7314
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
7315
- const MetricCard = Object.assign(MetricCardRoot, {
7316
- Header: MetricCardHeader,
7317
- Title: MetricCardTitle,
7318
- Value: MetricCardValue,
7319
- Trend: MetricCardTrend,
7320
- Description: MetricCardDescription,
7321
- Symbol: MetricCardSymbol,
7322
- })
7323
-
7324
- // eslint-disable-next-line @typescript-eslint/no-namespace
7325
- namespace MetricCard {
7326
- export type HeaderProps = MetricCardHeaderProps
7327
- export type TitleProps = MetricCardTitleProps
7328
- export type ValueProps = MetricCardValueProps
7329
- export type TrendProps = MetricCardTrendProps
7330
- export type DescriptionProps = MetricCardDescriptionProps
7331
- export type SymbolProps = MetricCardSymbolProps
7332
- }
7333
-
7334
7124
  export {
7335
7125
  MetricCard,
7336
7126
  MetricCardHeader,
@@ -7350,7 +7140,7 @@ export {
7350
7140
  dependencies: ["@radix-ui/react-alert-dialog", "@radix-ui/react-dialog"],
7351
7141
  registryDependencies: [],
7352
7142
  reverseDependencies: [],
7353
- namespace: true,
7143
+ namespace: false,
7354
7144
  description: "",
7355
7145
  files: [{
7356
7146
  path: "modal.tsx",
@@ -7388,8 +7178,8 @@ const ModalStyleContext = React.createContext<ModalStyleContextValue>({
7388
7178
  // Modal (Dialog)
7389
7179
  // \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
7390
7180
 
7391
- // \u2500\u2500\u2500 Modal (Root) \u2014 wrapper to avoid Object.assign mutating DialogPrimitive.Root \u2500\u2500
7392
- function ModalRoot(props: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Root>) {
7181
+ // \u2500\u2500\u2500 Modal (Root) \u2014 thin wrapper to expose as named export without mutating DialogPrimitive.Root \u2500\u2500
7182
+ function Modal(props: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Root>) {
7393
7183
  return <DialogPrimitive.Root {...props} />
7394
7184
  }
7395
7185
 
@@ -7616,7 +7406,7 @@ ModalFooter.displayName = 'ModalFooter'
7616
7406
  // \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
7617
7407
 
7618
7408
  // \u2500\u2500\u2500 AlertModal (Root) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
7619
- const AlertModalRoot = AlertDialogPrimitive.Root
7409
+ const AlertModal = AlertDialogPrimitive.Root
7620
7410
 
7621
7411
  // \u2500\u2500\u2500 AlertModalTrigger \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
7622
7412
  const AlertModalTrigger = AlertDialogPrimitive.Trigger
@@ -7777,45 +7567,6 @@ const AlertModalCancel = React.forwardRef<
7777
7567
  ))
7778
7568
  AlertModalCancel.displayName = 'AlertModalCancel'
7779
7569
 
7780
- // \u2500\u2500\u2500 Namespace: Modal \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
7781
- const Modal = Object.assign(ModalRoot, {
7782
- Trigger: ModalTrigger,
7783
- Portal: ModalPortal,
7784
- Overlay: ModalOverlay,
7785
- Content: ModalContent,
7786
- Header: ModalHeader,
7787
- Title: ModalTitle,
7788
- Description: ModalDescription,
7789
- Body: ModalBody,
7790
- Footer: ModalFooter,
7791
- Close: ModalClose,
7792
- })
7793
-
7794
- // eslint-disable-next-line @typescript-eslint/no-namespace
7795
- namespace Modal {
7796
- export type ContentProps = ModalContentProps
7797
- }
7798
-
7799
- // \u2500\u2500\u2500 Namespace: AlertModal \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
7800
- const AlertModal = Object.assign(AlertModalRoot, {
7801
- Trigger: AlertModalTrigger,
7802
- Portal: AlertModalPortal,
7803
- Overlay: AlertModalOverlay,
7804
- Content: AlertModalContent,
7805
- Header: AlertModalHeader,
7806
- Title: AlertModalTitle,
7807
- Description: AlertModalDescription,
7808
- Body: AlertModalBody,
7809
- Footer: AlertModalFooter,
7810
- Action: AlertModalAction,
7811
- Cancel: AlertModalCancel,
7812
- })
7813
-
7814
- // eslint-disable-next-line @typescript-eslint/no-namespace
7815
- namespace AlertModal {
7816
- export type ContentProps = AlertModalContentProps
7817
- }
7818
-
7819
7570
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
7820
7571
  export {
7821
7572
  Modal,
@@ -7853,7 +7604,7 @@ export {
7853
7604
  dependencies: ["@radix-ui/react-collapsible", "@radix-ui/react-navigation-menu", "@radix-ui/react-slot"],
7854
7605
  registryDependencies: [],
7855
7606
  reverseDependencies: [],
7856
- namespace: true,
7607
+ namespace: false,
7857
7608
  description: "",
7858
7609
  files: [{
7859
7610
  path: "navigation-menu.tsx",
@@ -7993,7 +7744,7 @@ export interface NavigationMenuProps extends React.HTMLAttributes<HTMLElement> {
7993
7744
  onValueChange?: (value: string) => void
7994
7745
  }
7995
7746
 
7996
- const NavigationMenuRoot = React.forwardRef<HTMLElement, NavigationMenuProps>(
7747
+ const NavigationMenu = React.forwardRef<HTMLElement, NavigationMenuProps>(
7997
7748
  ({
7998
7749
  className,
7999
7750
  orientation = 'horizontal',
@@ -8060,7 +7811,7 @@ const NavigationMenuRoot = React.forwardRef<HTMLElement, NavigationMenuProps>(
8060
7811
  )
8061
7812
  }
8062
7813
  )
8063
- NavigationMenuRoot.displayName = 'NavigationMenu'
7814
+ NavigationMenu.displayName = 'NavigationMenu'
8064
7815
 
8065
7816
  // \u2500\u2500\u2500 NavigationMenuList \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
8066
7817
 
@@ -8518,31 +8269,6 @@ const NavigationMenuViewport = React.forwardRef<HTMLDivElement, NavigationMenuVi
8518
8269
  NavigationMenuViewport.displayName = 'NavigationMenuViewport'
8519
8270
 
8520
8271
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
8521
-
8522
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
8523
- const NavigationMenu = Object.assign(NavigationMenuRoot, {
8524
- List: NavigationMenuList,
8525
- Item: NavigationMenuItem,
8526
- Trigger: NavigationMenuTrigger,
8527
- Content: NavigationMenuContent,
8528
- Link: NavigationMenuLink,
8529
- Group: NavigationMenuGroup,
8530
- Indicator: NavigationMenuIndicator,
8531
- Viewport: NavigationMenuViewport,
8532
- })
8533
-
8534
- // eslint-disable-next-line @typescript-eslint/no-namespace
8535
- namespace NavigationMenu {
8536
- export type ListProps = NavigationMenuListProps
8537
- export type ItemProps = NavigationMenuItemProps
8538
- export type TriggerProps = NavigationMenuTriggerProps
8539
- export type ContentProps = NavigationMenuContentProps
8540
- export type LinkProps = NavigationMenuLinkProps
8541
- export type GroupProps = NavigationMenuGroupProps
8542
- export type IndicatorProps = NavigationMenuIndicatorProps
8543
- export type ViewportProps = NavigationMenuViewportProps
8544
- }
8545
-
8546
8272
  export {
8547
8273
  NavigationMenu,
8548
8274
  NavigationMenuList,
@@ -8565,7 +8291,7 @@ export {
8565
8291
  dependencies: [],
8566
8292
  registryDependencies: [],
8567
8293
  reverseDependencies: [],
8568
- namespace: true,
8294
+ namespace: false,
8569
8295
  description: "",
8570
8296
  files: [{
8571
8297
  path: "pagination.tsx",
@@ -8843,7 +8569,7 @@ export interface PaginationProps extends Omit<React.ComponentPropsWithoutRef<'na
8843
8569
  loop?: boolean
8844
8570
  }
8845
8571
 
8846
- const PaginationRoot = React.forwardRef<HTMLElement, PaginationProps>(
8572
+ const Pagination = React.forwardRef<HTMLElement, PaginationProps>(
8847
8573
  ({
8848
8574
  className,
8849
8575
  total = 1,
@@ -8915,7 +8641,7 @@ const PaginationRoot = React.forwardRef<HTMLElement, PaginationProps>(
8915
8641
  )
8916
8642
  }
8917
8643
  )
8918
- PaginationRoot.displayName = 'Pagination'
8644
+ Pagination.displayName = 'Pagination'
8919
8645
 
8920
8646
  // \u2500\u2500\u2500 PaginationContent \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
8921
8647
 
@@ -9185,29 +8911,6 @@ const PaginationItems = React.forwardRef<HTMLDivElement, React.ComponentPropsWit
9185
8911
  PaginationItems.displayName = 'PaginationItems'
9186
8912
 
9187
8913
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
9188
-
9189
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
9190
- const Pagination = Object.assign(PaginationRoot, {
9191
- Content: PaginationContent,
9192
- Item: PaginationItem,
9193
- Link: PaginationLink,
9194
- Previous: PaginationPrevious,
9195
- Next: PaginationNext,
9196
- First: PaginationFirst,
9197
- Last: PaginationLast,
9198
- Ellipsis: PaginationEllipsis,
9199
- Items: PaginationItems,
9200
- })
9201
-
9202
- // eslint-disable-next-line @typescript-eslint/no-namespace
9203
- namespace Pagination {
9204
- export type LinkProps = PaginationLinkProps
9205
- export type PreviousProps = PaginationPreviousProps
9206
- export type NextProps = PaginationNextProps
9207
- export type FirstProps = PaginationFirstProps
9208
- export type LastProps = PaginationLastProps
9209
- }
9210
-
9211
8914
  export {
9212
8915
  Pagination,
9213
8916
  PaginationContent,
@@ -9231,7 +8934,7 @@ export {
9231
8934
  dependencies: ["@radix-ui/react-popover"],
9232
8935
  registryDependencies: [],
9233
8936
  reverseDependencies: [],
9234
- namespace: true,
8937
+ namespace: false,
9235
8938
  description: "",
9236
8939
  files: [{
9237
8940
  path: "popover.tsx",
@@ -9305,10 +9008,10 @@ const ARROW_ELEVATED = 'fill-background-paper drop-shadow-sm'
9305
9008
  // Popover
9306
9009
  // \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
9307
9010
 
9308
- // \u2500\u2500\u2500 PopoverRoot \u2014 wrapper to avoid Object.assign mutating Radix primitive \u2500\u2500
9011
+ // \u2500\u2500\u2500 Popover (Root) \u2014 thin wrapper to expose as named export \u2500\u2500
9309
9012
  export interface PopoverRootProps extends React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Root> {}
9310
9013
 
9311
- function PopoverRoot(props: PopoverRootProps) {
9014
+ function Popover(props: PopoverRootProps) {
9312
9015
  return <PopoverPrimitive.Root {...props} />
9313
9016
  }
9314
9017
 
@@ -9402,26 +9105,9 @@ const PopoverArrow = React.forwardRef<
9402
9105
  ))
9403
9106
  PopoverArrow.displayName = 'PopoverArrow'
9404
9107
 
9405
- // \u2500\u2500\u2500 Namespace: Popover \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
9406
- const Popover = Object.assign(PopoverRoot, {
9407
- Trigger: PopoverTrigger,
9408
- Content: PopoverContent,
9409
- Arrow: PopoverArrow,
9410
- Close: PopoverClose,
9411
- Anchor: PopoverAnchor,
9412
- Portal: PopoverPortal,
9413
- })
9414
-
9415
- // eslint-disable-next-line @typescript-eslint/no-namespace
9416
- namespace Popover {
9417
- export type ContentProps = PopoverContentProps
9418
- export type RootProps = PopoverRootProps
9419
- }
9420
-
9421
9108
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
9422
9109
  export {
9423
9110
  Popover,
9424
- PopoverRoot,
9425
9111
  PopoverTrigger,
9426
9112
  PopoverContent,
9427
9113
  PopoverArrow,
@@ -9682,7 +9368,7 @@ export { Progress, linearTrackVariants }
9682
9368
  dependencies: ["@radix-ui/react-slot"],
9683
9369
  registryDependencies: [],
9684
9370
  reverseDependencies: [],
9685
- namespace: true,
9371
+ namespace: false,
9686
9372
  description: "",
9687
9373
  files: [{
9688
9374
  path: "quick-reply.tsx",
@@ -9832,7 +9518,7 @@ export interface QuickReplyItemProps
9832
9518
  // QuickReply Root \u2014 group container that propagates style via Context
9833
9519
  // ============================================================================
9834
9520
 
9835
- const QuickReplyRoot = React.forwardRef<HTMLDivElement, QuickReplyRootProps>(
9521
+ const QuickReply = React.forwardRef<HTMLDivElement, QuickReplyRootProps>(
9836
9522
  (
9837
9523
  {
9838
9524
  className,
@@ -9867,7 +9553,7 @@ const QuickReplyRoot = React.forwardRef<HTMLDivElement, QuickReplyRootProps>(
9867
9553
  )
9868
9554
  }
9869
9555
  )
9870
- QuickReplyRoot.displayName = 'QuickReply'
9556
+ QuickReply.displayName = 'QuickReply'
9871
9557
 
9872
9558
  // ============================================================================
9873
9559
  // QuickReply Item \u2014 individual chip button
@@ -9904,25 +9590,10 @@ const QuickReplyItem = React.forwardRef<HTMLButtonElement, QuickReplyItemProps>(
9904
9590
  )
9905
9591
  }
9906
9592
  )
9907
- QuickReplyItem.displayName = 'QuickReply.Item'
9908
-
9909
- // ============================================================================
9910
- // Namespace export (compound pattern)
9911
- // ============================================================================
9912
-
9913
- const QuickReply = Object.assign(QuickReplyRoot, {
9914
- Item: QuickReplyItem,
9915
- })
9916
-
9917
- // eslint-disable-next-line @typescript-eslint/no-namespace
9918
- namespace QuickReply {
9919
- export type RootProps = QuickReplyRootProps
9920
- export type ItemProps = QuickReplyItemProps
9921
- }
9593
+ QuickReplyItem.displayName = 'QuickReplyItem'
9922
9594
 
9923
9595
  export {
9924
9596
  QuickReply,
9925
- QuickReplyRoot,
9926
9597
  QuickReplyItem,
9927
9598
  quickReplyRootVariants,
9928
9599
  quickReplyItemVariants,
@@ -9936,7 +9607,7 @@ export {
9936
9607
  dependencies: ["@radix-ui/react-radio-group"],
9937
9608
  registryDependencies: ["field"],
9938
9609
  reverseDependencies: [],
9939
- namespace: true,
9610
+ namespace: false,
9940
9611
  description: "",
9941
9612
  files: [{
9942
9613
  path: "radio-group.tsx",
@@ -9992,7 +9663,7 @@ export interface RadioGroupProps
9992
9663
  color?: RadioColor
9993
9664
  }
9994
9665
 
9995
- const RadioGroupRoot = React.forwardRef<
9666
+ const RadioGroup = React.forwardRef<
9996
9667
  React.ElementRef<typeof RadioGroupPrimitive.Root>,
9997
9668
  RadioGroupProps
9998
9669
  >(({ className, orientation, size = 'default', weight = 'bold', color = 'default', disabled, ...props }, ref) => {
@@ -10011,7 +9682,7 @@ const RadioGroupRoot = React.forwardRef<
10011
9682
  </RadioGroupContext.Provider>
10012
9683
  )
10013
9684
  })
10014
- RadioGroupRoot.displayName = 'RadioGroup'
9685
+ RadioGroup.displayName = 'RadioGroup'
10015
9686
 
10016
9687
  // RadioGroupItem circle variants
10017
9688
  const radioItemVariants = cva(
@@ -10116,16 +9787,6 @@ const RadioGroupItem = React.forwardRef<
10116
9787
  })
10117
9788
  RadioGroupItem.displayName = 'RadioGroupItem'
10118
9789
 
10119
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
10120
- const RadioGroup = Object.assign(RadioGroupRoot, {
10121
- Item: RadioGroupItem,
10122
- })
10123
-
10124
- // eslint-disable-next-line @typescript-eslint/no-namespace
10125
- namespace RadioGroup {
10126
- export type ItemProps = RadioGroupItemProps
10127
- }
10128
-
10129
9790
  export { RadioGroup, RadioGroupItem, radioGroupVariants, radioItemVariants }
10130
9791
  `,
10131
9792
  type: "ui"
@@ -10136,7 +9797,7 @@ export { RadioGroup, RadioGroupItem, radioGroupVariants, radioItemVariants }
10136
9797
  dependencies: ["@radix-ui/react-radio-group"],
10137
9798
  registryDependencies: [],
10138
9799
  reverseDependencies: [],
10139
- namespace: true,
9800
+ namespace: false,
10140
9801
  description: "",
10141
9802
  files: [{
10142
9803
  path: "segmented.tsx",
@@ -10292,7 +9953,7 @@ export interface SegmentedProps
10292
9953
  extends React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>,
10293
9954
  VariantProps<typeof segmentedVariants> {}
10294
9955
 
10295
- const SegmentedRoot = React.forwardRef<
9956
+ const Segmented = React.forwardRef<
10296
9957
  React.ElementRef<typeof RadioGroupPrimitive.Root>,
10297
9958
  SegmentedProps
10298
9959
  >(({ className, variant, size, radius, fontWeight, ...props }, ref) => {
@@ -10309,7 +9970,7 @@ const SegmentedRoot = React.forwardRef<
10309
9970
  </SegmentedContext.Provider>
10310
9971
  )
10311
9972
  })
10312
- SegmentedRoot.displayName = 'Segmented'
9973
+ Segmented.displayName = 'Segmented'
10313
9974
 
10314
9975
  // Icon size for segmented control (4-step scale, Icon+Text mode)
10315
9976
  // sm: 14px, md~default~lg: 16px
@@ -10348,16 +10009,6 @@ const SegmentedItem = React.forwardRef<
10348
10009
  })
10349
10010
  SegmentedItem.displayName = 'SegmentedItem'
10350
10011
 
10351
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
10352
- const Segmented = Object.assign(SegmentedRoot, {
10353
- Item: SegmentedItem,
10354
- })
10355
-
10356
- // eslint-disable-next-line @typescript-eslint/no-namespace
10357
- namespace Segmented {
10358
- export type ItemProps = SegmentedItemProps
10359
- }
10360
-
10361
10012
  export { Segmented, SegmentedItem, segmentedVariants, segmentedItemVariants }
10362
10013
  `,
10363
10014
  type: "ui"
@@ -10368,7 +10019,7 @@ export { Segmented, SegmentedItem, segmentedVariants, segmentedItemVariants }
10368
10019
  dependencies: ["@radix-ui/react-select"],
10369
10020
  registryDependencies: [],
10370
10021
  reverseDependencies: [],
10371
- namespace: true,
10022
+ namespace: false,
10372
10023
  description: "",
10373
10024
  files: [{
10374
10025
  path: "select.tsx",
@@ -10506,7 +10157,7 @@ const SelectStyleContext = React.createContext<{
10506
10157
  }>({ contentRadius: 'xl', itemSize: 'md', flush: false })
10507
10158
 
10508
10159
  // Root \u2014 state management + size/radius context
10509
- const SelectRoot = ({
10160
+ const Select = ({
10510
10161
  size = 'default',
10511
10162
  radius = 'default',
10512
10163
  ...props
@@ -10720,17 +10371,6 @@ SelectSeparator.displayName = SelectPrimitive.Separator.displayName
10720
10371
 
10721
10372
  export type { SelectRadius, SelectSize }
10722
10373
 
10723
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
10724
- const Select = Object.assign(SelectRoot, {
10725
- Trigger: SelectTrigger,
10726
- Value: SelectValue,
10727
- Content: SelectContent,
10728
- Item: SelectItem,
10729
- Group: SelectGroup,
10730
- Label: SelectLabel,
10731
- Separator: SelectSeparator,
10732
- })
10733
-
10734
10374
  export {
10735
10375
  Select,
10736
10376
  SelectTrigger,
@@ -11968,7 +11608,7 @@ export { Switch, switchVariants }
11968
11608
  dependencies: [],
11969
11609
  registryDependencies: [],
11970
11610
  reverseDependencies: [],
11971
- namespace: true,
11611
+ namespace: false,
11972
11612
  description: "",
11973
11613
  files: [{
11974
11614
  path: "table.tsx",
@@ -12042,7 +11682,7 @@ export interface TableProps
12042
11682
  wrapperClassName?: string
12043
11683
  }
12044
11684
 
12045
- const TableRoot = React.forwardRef<HTMLTableElement, TableProps>(
11685
+ const Table = React.forwardRef<HTMLTableElement, TableProps>(
12046
11686
  ({ className, size = 'default', variant = 'default', stickyHeader = false, wrapperClassName, ...props }, ref) => (
12047
11687
  <TableContext.Provider value={{ size, variant, stickyHeader }}>
12048
11688
  <div className={cn('relative w-full overflow-auto', wrapperClassName)}>
@@ -12055,7 +11695,7 @@ const TableRoot = React.forwardRef<HTMLTableElement, TableProps>(
12055
11695
  </TableContext.Provider>
12056
11696
  )
12057
11697
  )
12058
- TableRoot.displayName = 'Table'
11698
+ Table.displayName = 'Table'
12059
11699
 
12060
11700
  // \u2500\u2500\u2500 Header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
12061
11701
  const TableHeader = React.forwardRef<
@@ -12268,24 +11908,6 @@ TableCaption.displayName = 'TableCaption'
12268
11908
 
12269
11909
  export type { TableSize, TableVariant, SortDirection }
12270
11910
 
12271
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
12272
- const Table = Object.assign(TableRoot, {
12273
- Header: TableHeader,
12274
- Body: TableBody,
12275
- Footer: TableFooter,
12276
- Row: TableRow,
12277
- Head: TableHead,
12278
- Cell: TableCell,
12279
- Caption: TableCaption,
12280
- })
12281
-
12282
- // eslint-disable-next-line @typescript-eslint/no-namespace
12283
- namespace Table {
12284
- export type RowProps = TableRowProps
12285
- export type HeadProps = TableHeadProps
12286
- export type CellProps = TableCellProps
12287
- }
12288
-
12289
11911
  export {
12290
11912
  Table,
12291
11913
  TableHeader,
@@ -12305,7 +11927,7 @@ export {
12305
11927
  dependencies: ["@radix-ui/react-tabs"],
12306
11928
  registryDependencies: [],
12307
11929
  reverseDependencies: [],
12308
- namespace: true,
11930
+ namespace: false,
12309
11931
  description: "",
12310
11932
  files: [{
12311
11933
  path: "tabs.tsx",
@@ -12546,21 +12168,7 @@ TabsContent.displayName = 'TabsContent'
12546
12168
 
12547
12169
  // \u2500\u2500\u2500 Tabs (Root) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
12548
12170
 
12549
- const TabsRoot = TabsPrimitive.Root
12550
-
12551
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
12552
- const Tabs = Object.assign(TabsRoot, {
12553
- List: TabsList,
12554
- Trigger: TabsTrigger,
12555
- Content: TabsContent,
12556
- })
12557
-
12558
- // eslint-disable-next-line @typescript-eslint/no-namespace
12559
- namespace Tabs {
12560
- export type ListProps = TabsListProps
12561
- export type TriggerProps = TabsTriggerProps
12562
- export type ContentProps = TabsContentProps
12563
- }
12171
+ const Tabs = TabsPrimitive.Root
12564
12172
 
12565
12173
  export {
12566
12174
  Tabs,
@@ -13423,7 +13031,7 @@ export type {
13423
13031
  dependencies: ["@radix-ui/react-toggle-group"],
13424
13032
  registryDependencies: [],
13425
13033
  reverseDependencies: [],
13426
- namespace: true,
13034
+ namespace: false,
13427
13035
  description: "",
13428
13036
  files: [{
13429
13037
  path: "toggle-group.tsx",
@@ -13529,7 +13137,7 @@ export type ToggleGroupProps = ToggleGroupBaseProps &
13529
13137
  VariantProps<typeof toggleGroupItemVariants> &
13530
13138
  (ToggleGroupSingleProps | ToggleGroupMultipleProps)
13531
13139
 
13532
- const ToggleGroupRoot = React.forwardRef<
13140
+ const ToggleGroup = React.forwardRef<
13533
13141
  React.ElementRef<typeof ToggleGroupPrimitive.Root>,
13534
13142
  ToggleGroupProps
13535
13143
  >(({ className, orientation, variant, size, radius, fontWeight, children, ...props }, ref) => (
@@ -13568,7 +13176,7 @@ const ToggleGroupRoot = React.forwardRef<
13568
13176
  </ToggleGroupContext.Provider>
13569
13177
  </ToggleGroupPrimitive.Root>
13570
13178
  ))
13571
- ToggleGroupRoot.displayName = ToggleGroupPrimitive.Root.displayName
13179
+ ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName
13572
13180
 
13573
13181
  export interface ToggleGroupItemProps
13574
13182
  extends React.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Item>,
@@ -13614,16 +13222,6 @@ const ToggleGroupItem = React.forwardRef<
13614
13222
  })
13615
13223
  ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName
13616
13224
 
13617
- // \u2500\u2500\u2500 Namespace \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
13618
- const ToggleGroup = Object.assign(ToggleGroupRoot, {
13619
- Item: ToggleGroupItem,
13620
- })
13621
-
13622
- // eslint-disable-next-line @typescript-eslint/no-namespace
13623
- namespace ToggleGroup {
13624
- export type ItemProps = ToggleGroupItemProps
13625
- }
13626
-
13627
13225
  export { ToggleGroup, ToggleGroupItem, toggleGroupVariants, toggleGroupItemVariants }
13628
13226
  `,
13629
13227
  type: "ui"
@@ -13804,7 +13402,7 @@ export { Toggle, toggleVariants }
13804
13402
  dependencies: ["@radix-ui/react-tooltip"],
13805
13403
  registryDependencies: [],
13806
13404
  reverseDependencies: [],
13807
- namespace: true,
13405
+ namespace: false,
13808
13406
  description: "",
13809
13407
  files: [{
13810
13408
  path: "tooltip.tsx",
@@ -13860,13 +13458,14 @@ const ARROW_FILL: Record<string, string> = {
13860
13458
  // \u2500\u2500\u2500 TooltipProvider \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
13861
13459
  const TooltipProvider = TooltipPrimitive.Provider
13862
13460
 
13863
- // \u2500\u2500\u2500 Tooltip (Root) \u2014 wrapper to avoid Object.assign mutating Radix primitive \u2500\u2500
13461
+ // \u2500\u2500\u2500 Tooltip (Root) \u2014 Props type \u2500\u2500
13864
13462
  export interface TooltipRootProps extends React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Root> {
13865
13463
  /** Delay in ms before tooltip appears */
13866
13464
  delayDuration?: number
13867
13465
  }
13868
13466
 
13869
- function TooltipRoot({ delayDuration = 200, ...props }: TooltipRootProps) {
13467
+ // \u2500\u2500\u2500 Tooltip (Root) \u2014 thin wrapper to expose as named export with default delayDuration \u2500\u2500
13468
+ function Tooltip({ delayDuration = 200, ...props }: TooltipRootProps) {
13870
13469
  return <TooltipPrimitive.Root delayDuration={delayDuration} {...props} />
13871
13470
  }
13872
13471
 
@@ -13932,25 +13531,9 @@ const TooltipArrow = React.forwardRef<
13932
13531
  ))
13933
13532
  TooltipArrow.displayName = 'TooltipArrow'
13934
13533
 
13935
- // \u2500\u2500\u2500 Namespace: Tooltip \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
13936
- const Tooltip = Object.assign(TooltipRoot, {
13937
- Trigger: TooltipTrigger,
13938
- Content: TooltipContent,
13939
- Arrow: TooltipArrow,
13940
- Portal: TooltipPortal,
13941
- Provider: TooltipProvider,
13942
- })
13943
-
13944
- // eslint-disable-next-line @typescript-eslint/no-namespace
13945
- namespace Tooltip {
13946
- export type ContentProps = TooltipContentProps
13947
- export type RootProps = TooltipRootProps
13948
- }
13949
-
13950
13534
  // \u2500\u2500\u2500 Exports \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
13951
13535
  export {
13952
13536
  Tooltip,
13953
- TooltipRoot,
13954
13537
  TooltipTrigger,
13955
13538
  TooltipContent,
13956
13539
  TooltipArrow,
@@ -14468,15 +14051,15 @@ function showSetupHints(names) {
14468
14051
  }
14469
14052
  if (names.includes("tooltip")) {
14470
14053
  wt(
14471
- `Wrap your app with ${import_picocolors3.default.cyan("<Tooltip.Provider>")}:
14054
+ `Wrap your app with ${import_picocolors3.default.cyan("<TooltipProvider>")}:
14472
14055
 
14473
- ` + import_picocolors3.default.dim(` import { Tooltip } from '${import_picocolors3.default.reset("@/components/ui/tooltip")}'
14056
+ ` + import_picocolors3.default.dim(` import { TooltipProvider } from '${import_picocolors3.default.reset("@/components/ui/tooltip")}'
14474
14057
 
14475
14058
  `) + import_picocolors3.default.dim(` export default function Layout({ children }) {
14476
14059
  `) + import_picocolors3.default.dim(` return (
14477
- `) + import_picocolors3.default.green(` <Tooltip.Provider>
14060
+ `) + import_picocolors3.default.green(` <TooltipProvider>
14478
14061
  `) + import_picocolors3.default.dim(` {children}
14479
- `) + import_picocolors3.default.green(` </Tooltip.Provider>
14062
+ `) + import_picocolors3.default.green(` </TooltipProvider>
14480
14063
  `) + import_picocolors3.default.dim(` )
14481
14064
  `) + import_picocolors3.default.dim(` }`),
14482
14065
  "Tooltip Setup"
@@ -14486,7 +14069,7 @@ function showSetupHints(names) {
14486
14069
 
14487
14070
  // cli/src/index.ts
14488
14071
  var import_picocolors4 = __toESM(require_picocolors());
14489
- var VERSION = "0.1.8";
14072
+ var VERSION = "0.1.9";
14490
14073
  var HELP = `
14491
14074
  ${import_picocolors4.default.bold("7onic")} \u2014 Add 7onic design system components to your project
14492
14075
 
package/llms.txt CHANGED
@@ -86,7 +86,7 @@ accordion, alert, avatar, badge, breadcrumb, button, button-group, card, chat-in
86
86
  ## Post-install Setup
87
87
 
88
88
  - **toast**: Add `<Toaster />` to root layout
89
- - **tooltip**: Wrap app with `<Tooltip.Provider>`
89
+ - **tooltip**: Wrap app with `<TooltipProvider>`
90
90
 
91
91
  ## Notes
92
92
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "7onic",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "description": "CLI for adding 7onic design system components to your project",
5
5
  "bin": {
6
6
  "7onic": "./dist/index.js"
@@ -9,6 +9,15 @@
9
9
  "engines": { "node": ">=18" },
10
10
  "author": "7onic",
11
11
  "license": "MIT",
12
+ "homepage": "https://7onic.design",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "https://github.com/itonys/7onic",
16
+ "directory": "cli"
17
+ },
18
+ "bugs": {
19
+ "url": "https://github.com/itonys/7onic/issues"
20
+ },
12
21
  "keywords": [
13
22
  "cli",
14
23
  "design-system",