@facter/ds-core 1.34.0 → 1.34.1

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.
package/dist/index.d.mts CHANGED
@@ -18,7 +18,6 @@ import * as AvatarPrimitive from '@radix-ui/react-avatar';
18
18
  import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
19
19
  import * as PopoverPrimitive from '@radix-ui/react-popover';
20
20
  import * as TooltipPrimitive from '@radix-ui/react-tooltip';
21
- import { LucideIcon } from 'lucide-react';
22
21
  import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
23
22
  import * as SeparatorPrimitive from '@radix-ui/react-separator';
24
23
  import { ClassValue } from 'clsx';
@@ -861,7 +860,7 @@ interface TextareaProps extends Omit<React$1.TextareaHTMLAttributes<HTMLTextArea
861
860
  declare const Textarea: React$1.NamedExoticComponent<TextareaProps & React$1.RefAttributes<HTMLTextAreaElement>>;
862
861
 
863
862
  interface FormContextValue<T extends FieldValues = FieldValues> {
864
- form: UseFormReturn<T>;
863
+ form: UseFormReturn<T, any, any>;
865
864
  }
866
865
  interface FormFieldContextValue {
867
866
  name: string;
@@ -1026,7 +1025,7 @@ interface FormFieldProviderProps {
1026
1025
  declare function FormFieldProvider({ name, children }: FormFieldProviderProps): react_jsx_runtime.JSX.Element;
1027
1026
 
1028
1027
  interface FormRootProps<T extends FieldValues = FieldValues> extends Omit<React$1.FormHTMLAttributes<HTMLFormElement>, 'onSubmit' | 'onError'> {
1029
- form: UseFormReturn<T>;
1028
+ form: UseFormReturn<T, any, any>;
1030
1029
  onSubmit: SubmitHandler<T>;
1031
1030
  onError?: SubmitErrorHandler<T>;
1032
1031
  }
@@ -1255,6 +1254,9 @@ declare const AuthLayout: typeof AuthLayoutRoot & {
1255
1254
  Divider: typeof AuthLayoutDivider;
1256
1255
  };
1257
1256
 
1257
+ type IconComponent$2 = React$1.ComponentType<{
1258
+ className?: string;
1259
+ }>;
1258
1260
  interface SelectionLayoutProps {
1259
1261
  children: React$1.ReactNode;
1260
1262
  className?: string;
@@ -1302,7 +1304,7 @@ interface SelectionLayoutTabsProps {
1302
1304
  interface SelectionLayoutTabProps {
1303
1305
  value: string;
1304
1306
  label: string;
1305
- icon?: LucideIcon;
1307
+ icon?: IconComponent$2;
1306
1308
  badge?: string | number;
1307
1309
  className?: string;
1308
1310
  }
@@ -1314,7 +1316,7 @@ interface SelectionLayoutCardProps {
1314
1316
  children?: React$1.ReactNode;
1315
1317
  className?: string;
1316
1318
  onClick?: () => void;
1317
- icon?: LucideIcon | React$1.ReactNode;
1319
+ icon?: IconComponent$2 | React$1.ReactNode;
1318
1320
  title: string;
1319
1321
  description?: string;
1320
1322
  badge?: React$1.ReactNode;
@@ -1322,7 +1324,7 @@ interface SelectionLayoutCardProps {
1322
1324
  onFavoriteClick?: () => void;
1323
1325
  }
1324
1326
  interface SelectionLayoutEmptyProps {
1325
- icon?: LucideIcon;
1327
+ icon?: IconComponent$2;
1326
1328
  title: string;
1327
1329
  description?: string;
1328
1330
  action?: React$1.ReactNode;
@@ -1396,6 +1398,9 @@ declare const SelectionLayout: typeof SelectionLayoutRoot & {
1396
1398
  Empty: typeof SelectionLayoutEmpty;
1397
1399
  };
1398
1400
 
1401
+ type IconComponent$1 = React.ComponentType<{
1402
+ className?: string;
1403
+ }>;
1399
1404
  interface DashboardLayoutContextValue {
1400
1405
  sidebarExpanded: boolean;
1401
1406
  setSidebarExpanded: (expanded: boolean) => void;
@@ -1429,7 +1434,7 @@ interface DashboardLayoutSidebarNavProps {
1429
1434
  className?: string;
1430
1435
  }
1431
1436
  interface DashboardLayoutSidebarNavItemProps {
1432
- icon?: LucideIcon | React.ReactNode;
1437
+ icon?: IconComponent$1 | React.ReactNode;
1433
1438
  label: string;
1434
1439
  href?: string;
1435
1440
  onClick?: () => void;
@@ -1440,7 +1445,7 @@ interface DashboardLayoutSidebarNavItemProps {
1440
1445
  disabled?: boolean;
1441
1446
  }
1442
1447
  interface DashboardLayoutSidebarNavGroupProps {
1443
- icon?: LucideIcon | React.ReactNode;
1448
+ icon?: IconComponent$1 | React.ReactNode;
1444
1449
  label: string;
1445
1450
  children: React.ReactNode;
1446
1451
  defaultOpen?: boolean;
@@ -1488,7 +1493,7 @@ interface DashboardLayoutBreadcrumbsProps {
1488
1493
  items: Array<{
1489
1494
  label: string;
1490
1495
  href?: string;
1491
- icon?: LucideIcon;
1496
+ icon?: IconComponent$1;
1492
1497
  }>;
1493
1498
  className?: string;
1494
1499
  separator?: React.ReactNode;
@@ -1498,7 +1503,7 @@ interface DashboardLayoutMobileNavProps {
1498
1503
  className?: string;
1499
1504
  }
1500
1505
  interface DashboardLayoutMobileNavItemProps {
1501
- icon: LucideIcon;
1506
+ icon: IconComponent$1;
1502
1507
  label: string;
1503
1508
  href?: string;
1504
1509
  onClick?: () => void;
@@ -1589,6 +1594,9 @@ declare const DashboardLayout: typeof DashboardLayoutRoot & {
1589
1594
  MobileNavItem: typeof DashboardLayoutMobileNavItem;
1590
1595
  };
1591
1596
 
1597
+ type IconComponent = React.ComponentType<{
1598
+ className?: string;
1599
+ }>;
1592
1600
  interface SidebarContextValue {
1593
1601
  expanded: boolean;
1594
1602
  setExpanded: (expanded: boolean) => void;
@@ -1626,7 +1634,7 @@ interface SidebarSectionProps {
1626
1634
  }
1627
1635
  type BadgeVariant = 'default' | 'notification' | 'success' | 'warning';
1628
1636
  interface SidebarNavItemProps {
1629
- icon?: LucideIcon | React.ReactNode;
1637
+ icon?: IconComponent | React.ReactNode;
1630
1638
  label: string;
1631
1639
  href?: string;
1632
1640
  onClick?: () => void;
@@ -1637,7 +1645,7 @@ interface SidebarNavItemProps {
1637
1645
  className?: string;
1638
1646
  }
1639
1647
  interface SidebarNavGroupProps {
1640
- icon?: LucideIcon | React.ReactNode;
1648
+ icon?: IconComponent | React.ReactNode;
1641
1649
  label: string;
1642
1650
  children: React.ReactNode;
1643
1651
  id?: string;
@@ -1653,7 +1661,7 @@ interface SidebarFooterUser {
1653
1661
  avatar?: string;
1654
1662
  }
1655
1663
  interface SidebarFooterMenuItem {
1656
- icon?: LucideIcon;
1664
+ icon?: IconComponent;
1657
1665
  label: string;
1658
1666
  onClick: () => void;
1659
1667
  variant?: 'default' | 'destructive';
@@ -1713,7 +1721,9 @@ declare function useSidebarOptional(): SidebarContextValue | null;
1713
1721
  declare function useMediaQuery(query: string): boolean;
1714
1722
 
1715
1723
  interface MobileNavItemConfig {
1716
- icon: LucideIcon | React.ReactNode;
1724
+ icon: React.ComponentType<{
1725
+ className?: string;
1726
+ }> | React.ReactNode;
1717
1727
  label: string;
1718
1728
  href?: string;
1719
1729
  onClick?: () => void;
@@ -1730,7 +1740,9 @@ interface MobileNavProps {
1730
1740
  className?: string;
1731
1741
  }
1732
1742
  interface MobileNavItemProps {
1733
- icon: LucideIcon | React.ReactNode;
1743
+ icon: React.ComponentType<{
1744
+ className?: string;
1745
+ }> | React.ReactNode;
1734
1746
  label: string;
1735
1747
  isActive?: boolean;
1736
1748
  onClick?: () => void;
@@ -1861,7 +1873,9 @@ declare namespace SectionHeaderRoot {
1861
1873
  var displayName: string;
1862
1874
  }
1863
1875
  interface SectionHeaderIconProps {
1864
- icon: LucideIcon;
1876
+ icon: React$1.ComponentType<{
1877
+ className?: string;
1878
+ }>;
1865
1879
  className?: string;
1866
1880
  }
1867
1881
  declare function SectionHeaderIcon({ icon: Icon, className }: SectionHeaderIconProps): react_jsx_runtime.JSX.Element;
@@ -2273,7 +2287,7 @@ interface WizardProps<T extends FieldValues = FieldValues> {
2273
2287
  /** Child components (Wizard.Steps, Wizard.Content, etc.) */
2274
2288
  children: ReactNode;
2275
2289
  /** React Hook Form instance */
2276
- form: UseFormReturn<T>;
2290
+ form: UseFormReturn<T, any, any>;
2277
2291
  /** Array of step configurations */
2278
2292
  steps: WizardStepConfig<T>[];
2279
2293
  /** Initial step index (0-based) */
@@ -2322,7 +2336,7 @@ interface WizardContextValue<T extends FieldValues = FieldValues> {
2322
2336
  /** Check if a step has errors */
2323
2337
  hasStepErrors: (index: number) => boolean;
2324
2338
  /** React Hook Form instance */
2325
- form: UseFormReturn<T>;
2339
+ form: UseFormReturn<T, any, any>;
2326
2340
  /** Current step configuration */
2327
2341
  currentStepConfig: WizardStepConfig<T>;
2328
2342
  /** Get step config by index */
package/dist/index.d.ts CHANGED
@@ -18,7 +18,6 @@ import * as AvatarPrimitive from '@radix-ui/react-avatar';
18
18
  import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
19
19
  import * as PopoverPrimitive from '@radix-ui/react-popover';
20
20
  import * as TooltipPrimitive from '@radix-ui/react-tooltip';
21
- import { LucideIcon } from 'lucide-react';
22
21
  import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
23
22
  import * as SeparatorPrimitive from '@radix-ui/react-separator';
24
23
  import { ClassValue } from 'clsx';
@@ -861,7 +860,7 @@ interface TextareaProps extends Omit<React$1.TextareaHTMLAttributes<HTMLTextArea
861
860
  declare const Textarea: React$1.NamedExoticComponent<TextareaProps & React$1.RefAttributes<HTMLTextAreaElement>>;
862
861
 
863
862
  interface FormContextValue<T extends FieldValues = FieldValues> {
864
- form: UseFormReturn<T>;
863
+ form: UseFormReturn<T, any, any>;
865
864
  }
866
865
  interface FormFieldContextValue {
867
866
  name: string;
@@ -1026,7 +1025,7 @@ interface FormFieldProviderProps {
1026
1025
  declare function FormFieldProvider({ name, children }: FormFieldProviderProps): react_jsx_runtime.JSX.Element;
1027
1026
 
1028
1027
  interface FormRootProps<T extends FieldValues = FieldValues> extends Omit<React$1.FormHTMLAttributes<HTMLFormElement>, 'onSubmit' | 'onError'> {
1029
- form: UseFormReturn<T>;
1028
+ form: UseFormReturn<T, any, any>;
1030
1029
  onSubmit: SubmitHandler<T>;
1031
1030
  onError?: SubmitErrorHandler<T>;
1032
1031
  }
@@ -1255,6 +1254,9 @@ declare const AuthLayout: typeof AuthLayoutRoot & {
1255
1254
  Divider: typeof AuthLayoutDivider;
1256
1255
  };
1257
1256
 
1257
+ type IconComponent$2 = React$1.ComponentType<{
1258
+ className?: string;
1259
+ }>;
1258
1260
  interface SelectionLayoutProps {
1259
1261
  children: React$1.ReactNode;
1260
1262
  className?: string;
@@ -1302,7 +1304,7 @@ interface SelectionLayoutTabsProps {
1302
1304
  interface SelectionLayoutTabProps {
1303
1305
  value: string;
1304
1306
  label: string;
1305
- icon?: LucideIcon;
1307
+ icon?: IconComponent$2;
1306
1308
  badge?: string | number;
1307
1309
  className?: string;
1308
1310
  }
@@ -1314,7 +1316,7 @@ interface SelectionLayoutCardProps {
1314
1316
  children?: React$1.ReactNode;
1315
1317
  className?: string;
1316
1318
  onClick?: () => void;
1317
- icon?: LucideIcon | React$1.ReactNode;
1319
+ icon?: IconComponent$2 | React$1.ReactNode;
1318
1320
  title: string;
1319
1321
  description?: string;
1320
1322
  badge?: React$1.ReactNode;
@@ -1322,7 +1324,7 @@ interface SelectionLayoutCardProps {
1322
1324
  onFavoriteClick?: () => void;
1323
1325
  }
1324
1326
  interface SelectionLayoutEmptyProps {
1325
- icon?: LucideIcon;
1327
+ icon?: IconComponent$2;
1326
1328
  title: string;
1327
1329
  description?: string;
1328
1330
  action?: React$1.ReactNode;
@@ -1396,6 +1398,9 @@ declare const SelectionLayout: typeof SelectionLayoutRoot & {
1396
1398
  Empty: typeof SelectionLayoutEmpty;
1397
1399
  };
1398
1400
 
1401
+ type IconComponent$1 = React.ComponentType<{
1402
+ className?: string;
1403
+ }>;
1399
1404
  interface DashboardLayoutContextValue {
1400
1405
  sidebarExpanded: boolean;
1401
1406
  setSidebarExpanded: (expanded: boolean) => void;
@@ -1429,7 +1434,7 @@ interface DashboardLayoutSidebarNavProps {
1429
1434
  className?: string;
1430
1435
  }
1431
1436
  interface DashboardLayoutSidebarNavItemProps {
1432
- icon?: LucideIcon | React.ReactNode;
1437
+ icon?: IconComponent$1 | React.ReactNode;
1433
1438
  label: string;
1434
1439
  href?: string;
1435
1440
  onClick?: () => void;
@@ -1440,7 +1445,7 @@ interface DashboardLayoutSidebarNavItemProps {
1440
1445
  disabled?: boolean;
1441
1446
  }
1442
1447
  interface DashboardLayoutSidebarNavGroupProps {
1443
- icon?: LucideIcon | React.ReactNode;
1448
+ icon?: IconComponent$1 | React.ReactNode;
1444
1449
  label: string;
1445
1450
  children: React.ReactNode;
1446
1451
  defaultOpen?: boolean;
@@ -1488,7 +1493,7 @@ interface DashboardLayoutBreadcrumbsProps {
1488
1493
  items: Array<{
1489
1494
  label: string;
1490
1495
  href?: string;
1491
- icon?: LucideIcon;
1496
+ icon?: IconComponent$1;
1492
1497
  }>;
1493
1498
  className?: string;
1494
1499
  separator?: React.ReactNode;
@@ -1498,7 +1503,7 @@ interface DashboardLayoutMobileNavProps {
1498
1503
  className?: string;
1499
1504
  }
1500
1505
  interface DashboardLayoutMobileNavItemProps {
1501
- icon: LucideIcon;
1506
+ icon: IconComponent$1;
1502
1507
  label: string;
1503
1508
  href?: string;
1504
1509
  onClick?: () => void;
@@ -1589,6 +1594,9 @@ declare const DashboardLayout: typeof DashboardLayoutRoot & {
1589
1594
  MobileNavItem: typeof DashboardLayoutMobileNavItem;
1590
1595
  };
1591
1596
 
1597
+ type IconComponent = React.ComponentType<{
1598
+ className?: string;
1599
+ }>;
1592
1600
  interface SidebarContextValue {
1593
1601
  expanded: boolean;
1594
1602
  setExpanded: (expanded: boolean) => void;
@@ -1626,7 +1634,7 @@ interface SidebarSectionProps {
1626
1634
  }
1627
1635
  type BadgeVariant = 'default' | 'notification' | 'success' | 'warning';
1628
1636
  interface SidebarNavItemProps {
1629
- icon?: LucideIcon | React.ReactNode;
1637
+ icon?: IconComponent | React.ReactNode;
1630
1638
  label: string;
1631
1639
  href?: string;
1632
1640
  onClick?: () => void;
@@ -1637,7 +1645,7 @@ interface SidebarNavItemProps {
1637
1645
  className?: string;
1638
1646
  }
1639
1647
  interface SidebarNavGroupProps {
1640
- icon?: LucideIcon | React.ReactNode;
1648
+ icon?: IconComponent | React.ReactNode;
1641
1649
  label: string;
1642
1650
  children: React.ReactNode;
1643
1651
  id?: string;
@@ -1653,7 +1661,7 @@ interface SidebarFooterUser {
1653
1661
  avatar?: string;
1654
1662
  }
1655
1663
  interface SidebarFooterMenuItem {
1656
- icon?: LucideIcon;
1664
+ icon?: IconComponent;
1657
1665
  label: string;
1658
1666
  onClick: () => void;
1659
1667
  variant?: 'default' | 'destructive';
@@ -1713,7 +1721,9 @@ declare function useSidebarOptional(): SidebarContextValue | null;
1713
1721
  declare function useMediaQuery(query: string): boolean;
1714
1722
 
1715
1723
  interface MobileNavItemConfig {
1716
- icon: LucideIcon | React.ReactNode;
1724
+ icon: React.ComponentType<{
1725
+ className?: string;
1726
+ }> | React.ReactNode;
1717
1727
  label: string;
1718
1728
  href?: string;
1719
1729
  onClick?: () => void;
@@ -1730,7 +1740,9 @@ interface MobileNavProps {
1730
1740
  className?: string;
1731
1741
  }
1732
1742
  interface MobileNavItemProps {
1733
- icon: LucideIcon | React.ReactNode;
1743
+ icon: React.ComponentType<{
1744
+ className?: string;
1745
+ }> | React.ReactNode;
1734
1746
  label: string;
1735
1747
  isActive?: boolean;
1736
1748
  onClick?: () => void;
@@ -1861,7 +1873,9 @@ declare namespace SectionHeaderRoot {
1861
1873
  var displayName: string;
1862
1874
  }
1863
1875
  interface SectionHeaderIconProps {
1864
- icon: LucideIcon;
1876
+ icon: React$1.ComponentType<{
1877
+ className?: string;
1878
+ }>;
1865
1879
  className?: string;
1866
1880
  }
1867
1881
  declare function SectionHeaderIcon({ icon: Icon, className }: SectionHeaderIconProps): react_jsx_runtime.JSX.Element;
@@ -2273,7 +2287,7 @@ interface WizardProps<T extends FieldValues = FieldValues> {
2273
2287
  /** Child components (Wizard.Steps, Wizard.Content, etc.) */
2274
2288
  children: ReactNode;
2275
2289
  /** React Hook Form instance */
2276
- form: UseFormReturn<T>;
2290
+ form: UseFormReturn<T, any, any>;
2277
2291
  /** Array of step configurations */
2278
2292
  steps: WizardStepConfig<T>[];
2279
2293
  /** Initial step index (0-based) */
@@ -2322,7 +2336,7 @@ interface WizardContextValue<T extends FieldValues = FieldValues> {
2322
2336
  /** Check if a step has errors */
2323
2337
  hasStepErrors: (index: number) => boolean;
2324
2338
  /** React Hook Form instance */
2325
- form: UseFormReturn<T>;
2339
+ form: UseFormReturn<T, any, any>;
2326
2340
  /** Current step configuration */
2327
2341
  currentStepConfig: WizardStepConfig<T>;
2328
2342
  /** Get step config by index */
package/dist/index.js CHANGED
@@ -63,7 +63,7 @@ function cn(...inputs) {
63
63
  return tailwindMerge.twMerge(clsx.clsx(inputs));
64
64
  }
65
65
  var buttonVariants = classVarianceAuthority.cva(
66
- "inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-50",
66
+ "inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-70",
67
67
  {
68
68
  variants: {
69
69
  variant: {
@@ -3884,7 +3884,9 @@ function SelectDropdown({
3884
3884
  collisionPadding: 16,
3885
3885
  className: "p-0 overflow-hidden flex flex-col",
3886
3886
  style: {
3887
- width: "var(--radix-popover-trigger-width)",
3887
+ minWidth: "var(--radix-popover-trigger-width)",
3888
+ width: "fit-content",
3889
+ maxWidth: "var(--radix-popover-content-available-width, 100%)",
3888
3890
  maxHeight: "min(340px, var(--radix-popover-content-available-height, 340px))"
3889
3891
  },
3890
3892
  onOpenAutoFocus: (e) => {
@@ -4227,7 +4229,9 @@ function MultiSelectDropdown({
4227
4229
  collisionPadding: 16,
4228
4230
  className: "p-0 overflow-hidden flex flex-col",
4229
4231
  style: {
4230
- width: "var(--radix-popover-trigger-width)",
4232
+ minWidth: "var(--radix-popover-trigger-width)",
4233
+ width: "fit-content",
4234
+ maxWidth: "var(--radix-popover-content-available-width, 100%)",
4231
4235
  maxHeight: "min(340px, var(--radix-popover-content-available-height, 340px))"
4232
4236
  },
4233
4237
  onOpenAutoFocus: (e) => {