@drivenets/design-system 0.7.3 → 0.8.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 (79) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/index.cjs +4445 -3769
  3. package/dist/index.d.cts +1224 -945
  4. package/dist/index.d.cts.map +1 -1
  5. package/dist/index.d.ts +1224 -945
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +4446 -3776
  8. package/dist/index.js.map +1 -1
  9. package/dist/index.min.css +1 -1
  10. package/package.json +7 -8
  11. package/src/components/ds-autocomplete/ds-autocomplete.module.scss +1 -1
  12. package/src/components/ds-autocomplete/ds-autocomplete.tsx +13 -8
  13. package/src/components/ds-autocomplete/ds-autocomplete.types.ts +2 -1
  14. package/src/components/ds-comment-bubble/ds-comment-bubble.module.scss +6 -2
  15. package/src/components/ds-comment-bubble/ds-comment-bubble.tsx +22 -15
  16. package/src/components/ds-comment-bubble/ds-comment-bubble.types.ts +1 -0
  17. package/src/components/ds-date-input/ds-date-input.tsx +3 -4
  18. package/src/components/ds-date-input/ds-date-input.types.ts +3 -1
  19. package/src/components/ds-date-input/index.ts +10 -0
  20. package/src/components/ds-date-picker/components/calendar-table.module.scss +93 -0
  21. package/src/components/ds-date-picker/components/calendar-view-control/calendar-view-control.module.scss +48 -0
  22. package/src/components/ds-date-picker/components/calendar-view-control/calendar-view-control.tsx +20 -0
  23. package/src/components/ds-date-picker/components/calendar-view-control/index.ts +1 -0
  24. package/src/components/ds-date-picker/components/day-view/day-view.module.scss +12 -0
  25. package/src/components/ds-date-picker/components/day-view/day-view.tsx +45 -0
  26. package/src/components/ds-date-picker/components/day-view/index.ts +1 -0
  27. package/src/components/ds-date-picker/components/month-view/index.ts +1 -0
  28. package/src/components/ds-date-picker/components/month-view/month-view.module.scss +4 -0
  29. package/src/components/ds-date-picker/components/month-view/month-view.tsx +35 -0
  30. package/src/components/ds-date-picker/components/year-view/index.ts +1 -0
  31. package/src/components/ds-date-picker/components/year-view/year-view.module.scss +4 -0
  32. package/src/components/ds-date-picker/components/year-view/year-view.tsx +35 -0
  33. package/src/components/ds-date-picker/ds-date-picker.module.scss +19 -0
  34. package/src/components/ds-date-picker/ds-date-picker.tsx +209 -0
  35. package/src/components/ds-date-picker/ds-date-picker.types.ts +94 -0
  36. package/src/components/ds-date-picker/ds-date-picker.utils.ts +87 -0
  37. package/src/components/ds-date-picker/ds-date-picker.utils.unit.test.ts +226 -0
  38. package/src/components/ds-date-picker/index.ts +2 -0
  39. package/src/components/ds-date-range-picker/ds-date-range-picker.module.scss +20 -0
  40. package/src/components/ds-date-range-picker/ds-date-range-picker.tsx +101 -0
  41. package/src/components/ds-date-range-picker/ds-date-range-picker.types.ts +95 -0
  42. package/src/components/ds-date-range-picker/ds-date-range-picker.utils.ts +19 -0
  43. package/src/components/ds-date-range-picker/ds-date-range-picker.utils.unit.test.ts +48 -0
  44. package/src/components/ds-date-range-picker/index.ts +9 -0
  45. package/src/components/ds-file-upload/ds-file-upload-api.types.ts +1 -0
  46. package/src/components/ds-file-upload/hooks/use-file-upload.ts +1 -1
  47. package/src/components/ds-file-upload/index.ts +6 -1
  48. package/src/components/ds-file-upload/utils/file-factory.ts +1 -0
  49. package/src/components/ds-file-upload/utils/file-factory.unit.test.ts +37 -0
  50. package/src/components/ds-form-control/ds-form-control.tsx +5 -0
  51. package/src/components/ds-key-value-pair/ds-key-value-pair.module.scss +72 -0
  52. package/src/components/ds-key-value-pair/ds-key-value-pair.tsx +47 -0
  53. package/src/components/ds-key-value-pair/ds-key-value-pair.types.ts +24 -0
  54. package/src/components/ds-key-value-pair/index.ts +3 -0
  55. package/src/components/ds-loader/ds-loader.tsx +1 -1
  56. package/src/components/ds-status-badge/ds-status-badge.module.scss +1 -1
  57. package/src/components/ds-table/components/ds-table-body-virtualized/ds-table-body-virtualized.tsx +4 -2
  58. package/src/components/ds-time-picker/components/time-item/index.ts +1 -0
  59. package/src/components/ds-time-picker/components/time-item/time-item.module.scss +37 -0
  60. package/src/components/ds-time-picker/components/time-item/time-item.tsx +26 -0
  61. package/src/components/ds-time-picker/components/time-item/time-item.types.ts +10 -0
  62. package/src/components/ds-time-picker/components/time-scroller/index.ts +2 -0
  63. package/src/components/ds-time-picker/components/time-scroller/time-scroller.module.scss +25 -0
  64. package/src/components/ds-time-picker/components/time-scroller/time-scroller.tsx +61 -0
  65. package/src/components/ds-time-picker/components/time-scroller/time-scroller.types.ts +17 -0
  66. package/src/components/ds-time-picker/components/time-scroller/time-scroller.utils.ts +44 -0
  67. package/src/components/ds-time-picker/ds-time-picker.tsx +158 -0
  68. package/src/components/ds-time-picker/ds-time-picker.types.ts +48 -0
  69. package/src/components/ds-time-picker/ds-time-picker.utils.ts +176 -0
  70. package/src/components/ds-time-picker/ds-time-picker.utils.unit.test.ts +316 -0
  71. package/src/components/ds-time-picker/index.ts +3 -0
  72. package/src/components/ds-tooltip/ds-tooltip.module.scss +1 -7
  73. package/src/components/ds-tooltip/ds-tooltip.tsx +9 -9
  74. package/src/components/ds-tooltip/ds-tooltip.types.ts +7 -1
  75. package/src/index.ts +4 -0
  76. package/src/styles/_root_updated.scss +593 -0
  77. package/src/styles/shared/_dropdown.scss +4 -1
  78. package/src/utils/use-controlled.browser.test.ts +79 -0
  79. package/src/utils/use-controlled.ts +18 -0
package/dist/index.d.cts CHANGED
@@ -1,8 +1,9 @@
1
1
  import * as react_jsx_runtime0 from "react/jsx-runtime";
2
2
  import * as react from "react";
3
- import React, { CSSProperties, ComponentPropsWithoutRef, ComponentType, FC, FunctionComponent, HTMLAttributes, KeyboardEvent, MouseEvent, PropsWithChildren, ReactNode, Ref, SVGProps } from "react";
3
+ import React, { CSSProperties, ComponentPropsWithoutRef, ComponentType, FC, FunctionComponent, HTMLAttributes, KeyboardEvent, MouseEvent, PropsWithChildren, ReactNode, Ref, RefObject, SVGProps } from "react";
4
4
  import { Root } from "@radix-ui/react-checkbox";
5
5
  import { DatePickerRootProps } from "@ark-ui/react/date-picker";
6
+ import { PopoverContentProps } from "@ark-ui/react/popover";
6
7
  import { UseDialogProps } from "@ark-ui/react/dialog";
7
8
  import { Menu } from "@ark-ui/react/menu";
8
9
  import * as _ark_ui_react0 from "@ark-ui/react";
@@ -6488,7 +6489,8 @@ interface DsAutocompleteProps {
6488
6489
  */
6489
6490
  startAdornment?: React.ReactNode;
6490
6491
  /**
6491
- * Event handler called when the value changes (when an option is selected)
6492
+ * Event handler called when the value changes.
6493
+ * Fires with the selected option's value, or an empty string when cleared.
6492
6494
  */
6493
6495
  onValueChange?: (value: string) => void;
6494
6496
  /**
@@ -7047,6 +7049,7 @@ interface DsCommentBubbleProps {
7047
7049
  ref?: Ref<HTMLDivElement>;
7048
7050
  comment?: CommentData;
7049
7051
  currentUser?: CommentAuthor;
7052
+ hideActionRequired?: boolean;
7050
7053
  actionRequired?: boolean;
7051
7054
  onActionRequiredChange?: (checked: boolean) => void;
7052
7055
  value?: string;
@@ -7073,6 +7076,7 @@ declare const DsCommentBubble: ({
7073
7076
  ref,
7074
7077
  comment,
7075
7078
  currentUser,
7079
+ hideActionRequired,
7076
7080
  actionRequired,
7077
7081
  onActionRequiredChange,
7078
7082
  value,
@@ -7407,16 +7411,17 @@ type DsDateInputBaseProps = Pick<DatePickerRootProps, 'disabled' | 'readOnly' |
7407
7411
  hideClearButton?: boolean;
7408
7412
  };
7409
7413
  /**
7410
- * Props for the DsDateInput component
7414
+ * @deprecated DsDateInput is deprecated. Use DsDatePicker or DsDateRangePicker instead.
7415
+ * @see {@link ../ds-date-picker} for single date selection.
7416
+ * @see {@link ../ds-date-range-picker} for date range selection.
7411
7417
  */
7412
7418
  type DsDateInputProps = DsDateInputBaseProps & DsDateInputRangeProps;
7413
7419
  //#endregion
7414
7420
  //#region src/components/ds-date-input/ds-date-input.d.ts
7415
7421
  /**
7416
- * Design system date input component with integrated calendar picker.
7417
- *
7418
- * Supports both single date and date range selection with a single text input field.
7419
- * Features built-in validation, manual text entry, and calendar selection.
7422
+ * @deprecated DsDateInput is deprecated. Use DsDatePicker or DsDateRangePicker instead.
7423
+ * @see {@link ../ds-date-picker} for single date selection.
7424
+ * @see {@link ../ds-date-range-picker} for date range selection.
7420
7425
  */
7421
7426
  declare const DsDateInput: ({
7422
7427
  range,
@@ -7437,1360 +7442,1598 @@ declare const DsDateInput: ({
7437
7442
  ...datePickerProps
7438
7443
  }: DsDateInputProps) => react_jsx_runtime0.JSX.Element;
7439
7444
  //#endregion
7440
- //#region src/components/ds-dialog/ds-dialog.types.d.ts
7441
- interface DsDialogProps {
7445
+ //#region src/components/ds-text-input/ds-text-input.types.d.ts
7446
+ declare const textInputSizes: readonly ["small", "default"];
7447
+ type TextInputSize = (typeof textInputSizes)[number];
7448
+ interface DsTextInputProps {
7442
7449
  /**
7443
- * Controls whether the dialog is open.
7450
+ * Unique identifier for the input field
7444
7451
  */
7445
- open: boolean;
7452
+ id?: string;
7446
7453
  /**
7447
- * Callback fired when the open state should change.
7454
+ * The ref to the input field
7448
7455
  */
7449
- onOpenChange?: (open: boolean) => void;
7456
+ ref?: React.Ref<HTMLInputElement>;
7450
7457
  /**
7451
- * The accessible title for the dialog. Required for accessibility.
7458
+ * The name of the input field
7452
7459
  */
7453
- title: string;
7460
+ name?: string;
7454
7461
  /**
7455
- * If true, the dialog title will be visually hidden but accessible to screen readers.
7462
+ * The size of the input field
7463
+ * @default default
7456
7464
  */
7457
- hideTitle?: boolean;
7465
+ size?: TextInputSize;
7458
7466
  /**
7459
- * The accessible description for the dialog. Optional, but recommended for accessibility.
7467
+ * The type of the input field
7468
+ * @default text
7460
7469
  */
7461
- description?: string;
7470
+ type?: string;
7462
7471
  /**
7463
- * If true, the dialog description will be visually hidden but accessible to screen readers.
7472
+ * Event handler called when the input field receives focus
7464
7473
  */
7465
- hideDescription?: boolean;
7474
+ onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
7466
7475
  /**
7467
- * The content to render inside the dialog.
7476
+ * Event handler called when the input field loses focus
7477
+ *
7478
+ * @param event
7468
7479
  */
7469
- children: React.ReactNode;
7480
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
7470
7481
  /**
7471
- * Additional CSS class names for the dialog container.
7482
+ * Callback when a key is pressed down
7483
+ */
7484
+ onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
7485
+ /**
7486
+ * Callback when the value changes
7487
+ */
7488
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
7489
+ /**
7490
+ * Value change event handler (provides just the value)
7491
+ */
7492
+ onValueChange?: (value: string) => void;
7493
+ /**
7494
+ * Additional CSS class names
7472
7495
  */
7473
7496
  className?: string;
7474
7497
  /**
7475
- * Ref to the element the dialog should be anchored to (for relative placement)
7498
+ * Additional styles to apply to the component
7476
7499
  */
7477
- anchorRef?: React.RefObject<HTMLElement>;
7500
+ style?: React.CSSProperties;
7478
7501
  /**
7479
- * Custom fixed position (e.g., { top: number, left: number })
7502
+ * The placeholder text
7480
7503
  */
7481
- customPosition?: {
7482
- top: number;
7483
- left: number;
7484
- };
7504
+ placeholder?: string;
7485
7505
  /**
7486
- * If true, show modal overlay and center dialog (default: true)
7506
+ * The current value
7487
7507
  */
7488
- modal?: boolean;
7489
- }
7490
- //#endregion
7491
- //#region src/components/ds-dialog/ds-dialog.d.ts
7492
- declare const DsDialog: React.FC<DsDialogProps>;
7493
- //#endregion
7494
- //#region src/components/ds-divider/ds-divider.types.d.ts
7495
- interface DsDividerProps {
7508
+ value?: string;
7496
7509
  /**
7497
- * Controls orientation of the divider. Horizontal by default.
7510
+ * The minimum value of the input
7498
7511
  */
7499
- orientation?: 'horizontal' | 'vertical';
7512
+ min?: number | string;
7500
7513
  /**
7501
- * Underlying element/component to render.
7502
- * Examples: "hr", "div", "span", Link, etc.
7514
+ * The maximum value of the input
7503
7515
  */
7504
- component?: React.ElementType;
7516
+ max?: number | string;
7505
7517
  /**
7506
- * Additional CSS styles.
7518
+ * The minimum number of characters
7507
7519
  */
7508
- style?: React.CSSProperties;
7520
+ minLength?: number;
7509
7521
  /**
7510
- * Additional CSS classes.
7522
+ * The maximum number of characters
7523
+ */
7524
+ maxLength?: number;
7525
+ /**
7526
+ * The initial value of the input when rendered.
7527
+ * Use when you don't need to control the value of the input.
7528
+ */
7529
+ defaultValue?: string;
7530
+ /**
7531
+ * Whether the input is disabled
7532
+ */
7533
+ disabled?: boolean;
7534
+ /**
7535
+ * Whether the input is read only
7536
+ */
7537
+ readOnly?: boolean;
7538
+ /**
7539
+ * The tabIndex of the input
7511
7540
  */
7541
+ tabIndex?: number;
7542
+ slots?: {
7543
+ /**
7544
+ * Custom component to wrap the input element
7545
+ */
7546
+ inputWrapper?: ComponentType<{
7547
+ children: React.ReactNode;
7548
+ }>;
7549
+ /**
7550
+ * Adornment to display at the start of the input
7551
+ */
7552
+ startAdornment?: React.ReactNode;
7553
+ /**
7554
+ * Adornment to display at the end of the input
7555
+ */
7556
+ endAdornment?: React.ReactNode;
7557
+ };
7558
+ }
7559
+ //#endregion
7560
+ //#region src/components/ds-text-input/ds-text-input.d.ts
7561
+ declare const DsTextInput: FC<DsTextInputProps>;
7562
+ //#endregion
7563
+ //#region src/components/ds-time-picker/ds-time-picker.types.d.ts
7564
+ interface DsTimePickerProps {
7565
+ id?: string;
7566
+ ref?: RefObject<HTMLDivElement>;
7512
7567
  className?: string;
7568
+ value?: Date | null;
7569
+ defaultValue?: Date;
7570
+ open?: boolean;
7571
+ defaultOpen?: boolean;
7572
+ placeholder?: string;
7573
+ min?: Date;
7574
+ max?: Date;
7575
+ disabled?: boolean;
7576
+ readOnly?: boolean;
7577
+ /**
7578
+ * Whether to disable the portal for the popover content
7579
+ * @default false
7580
+ */
7581
+ disablePortal?: boolean;
7582
+ locale?: DsTimePickerLocale;
7583
+ slotProps?: DsTimePickerSlotProps;
7584
+ onChange?: (value: Date | null) => void;
7585
+ onOpenChange?: (open: boolean) => void;
7586
+ }
7587
+ interface DsTimePickerLocale {
7588
+ openLabel?: string;
7589
+ clearLabel?: string;
7590
+ hourLabel?: string;
7591
+ minuteLabel?: string;
7592
+ periodLabel?: string;
7593
+ }
7594
+ interface DsTimePickerSlotProps {
7595
+ input?: DsTextInputProps;
7596
+ popover?: PopoverContentProps;
7513
7597
  }
7514
7598
  //#endregion
7515
- //#region src/components/ds-divider/ds-divider.d.ts
7516
- declare const DsDivider: React.FC<DsDividerProps>;
7599
+ //#region src/components/ds-time-picker/ds-time-picker.d.ts
7600
+ declare const DsTimePicker: (props: DsTimePickerProps) => react_jsx_runtime0.JSX.Element;
7517
7601
  //#endregion
7518
- //#region src/components/ds-drawer/ds-drawer.types.d.ts
7602
+ //#region src/components/ds-time-picker/ds-time-picker.utils.d.ts
7519
7603
  /**
7520
- * Available positions for the drawer
7521
- */
7522
- type DsDrawerPosition = 'start' | 'end';
7523
- /**
7524
- * Available column sizes for drawer width
7604
+ * Format a Date to a 12-hour time string (hh:mm AM/PM)
7525
7605
  */
7526
- type DsDrawerColumns = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
7527
- interface DsDrawerProps extends Pick<UseDialogProps, 'closeOnEscape' | 'closeOnInteractOutside'> {
7606
+ declare const formatTime: (date?: Date | null) => string;
7607
+ //#endregion
7608
+ //#region src/components/ds-date-picker/ds-date-picker.types.d.ts
7609
+ interface DsDatePickerLocale {
7610
+ openCalendarLabel?: string;
7611
+ timeTriggerLabel?: string;
7612
+ clearLabel?: string;
7613
+ }
7614
+ interface DsDatePickerSlotProps {
7615
+ input?: DsTextInputProps;
7616
+ timePicker?: DsTimePickerProps;
7617
+ }
7618
+ interface DsDatePickerProps extends Pick<DatePickerRootProps, 'disabled' | 'readOnly' | 'id' | 'open' | 'name'> {
7528
7619
  /**
7529
- * Whether the drawer is open
7620
+ * Controlled value as Date object.
7621
+ * `null` means the date is empty.
7622
+ * `undefined` means value is not provided, so component will be uncontrolled.
7530
7623
  */
7531
- open: boolean;
7624
+ value?: Date | null;
7532
7625
  /**
7533
- * Callback when the drawer open state changes
7626
+ * Default value for uncontrolled mode
7534
7627
  */
7535
- onOpenChange: (open: boolean) => void;
7628
+ defaultValue?: Date;
7536
7629
  /**
7537
- * Number of grid columns the drawer should span (1-12)
7538
- * @default 4
7630
+ * Callback when the value changes
7631
+ * @param value - Date object or null when cleared
7539
7632
  */
7540
- columns?: DsDrawerColumns;
7633
+ onChange?: (value: Date | null) => void;
7541
7634
  /**
7542
- * Position of the drawer
7543
- * @default 'end'
7635
+ * Callback when the calendar open state changes
7544
7636
  */
7545
- position?: DsDrawerPosition;
7637
+ onOpenChange?: (open: boolean) => void;
7546
7638
  /**
7547
- * Whether to show backdrop overlay
7548
- * @default false
7639
+ * Minimum allowed datetime as Date object
7549
7640
  */
7550
- backdrop?: boolean;
7641
+ min?: Date;
7551
7642
  /**
7552
- * Whether to append the drawer to the body instead of rendering in place
7643
+ * Maximum allowed datetime as Date object
7644
+ */
7645
+ max?: Date;
7646
+ /**
7647
+ * Whether to show the time picker alongside the date picker
7553
7648
  * @default false
7554
7649
  */
7555
- portal?: boolean;
7650
+ withTime?: boolean;
7556
7651
  /**
7557
- * Additional CSS styles
7652
+ * Placeholder text for the input
7653
+ * @default 'mm/dd/yyyy'
7558
7654
  */
7559
- style?: CSSProperties;
7655
+ placeholder?: string;
7560
7656
  /**
7561
- * Additional CSS class names
7657
+ * Whether to close the calendar when a date is selected. This is ignored when withTime is true.
7658
+ * @default true
7562
7659
  */
7660
+ closeOnSelect?: boolean;
7563
7661
  className?: string;
7564
7662
  /**
7565
- * Children components
7663
+ * Whether to disable the portal for the calendar content
7664
+ * @default false
7566
7665
  */
7567
- children: ReactNode;
7666
+ disablePortal?: boolean;
7667
+ /**
7668
+ * Whether to hide the clear button
7669
+ * @default true
7670
+ */
7671
+ hideClearButton?: boolean;
7672
+ /**
7673
+ * Localizable aria-labels and text
7674
+ */
7675
+ locale?: DsDatePickerLocale;
7676
+ /**
7677
+ * Props forwarded to sub-component slots
7678
+ */
7679
+ slotProps?: DsDatePickerSlotProps;
7568
7680
  }
7569
7681
  //#endregion
7570
- //#region src/components/ds-drawer/ds-drawer.d.ts
7571
- /**
7572
- * Composable drawer component.
7573
- * Supports grid-based sizing, flexible positioning, and compound components.
7574
- * Use columns prop to control drawer width (1-12 grid columns).
7575
- */
7576
- declare const DsDrawer: {
7577
- ({
7578
- open,
7579
- onOpenChange,
7580
- columns,
7581
- position,
7582
- backdrop,
7583
- closeOnEscape,
7584
- closeOnInteractOutside,
7585
- portal,
7586
- style,
7587
- className,
7588
- children
7589
- }: DsDrawerProps): react_jsx_runtime0.JSX.Element;
7590
- Header: ({
7591
- style,
7592
- className,
7593
- children
7594
- }: {
7595
- style?: CSSProperties;
7596
- className?: string;
7597
- children: ReactNode;
7598
- }) => react_jsx_runtime0.JSX.Element;
7599
- Title: ({
7600
- style,
7601
- className,
7602
- children
7603
- }: {
7604
- style?: CSSProperties;
7605
- className?: string;
7606
- children: ReactNode;
7607
- }) => react_jsx_runtime0.JSX.Element;
7608
- CloseTrigger: ({
7609
- style,
7610
- className
7611
- }: {
7612
- style?: CSSProperties;
7613
- className?: string;
7614
- }) => react_jsx_runtime0.JSX.Element;
7615
- Toolbar: ({
7616
- style,
7617
- className,
7618
- children
7619
- }: {
7620
- style?: CSSProperties;
7621
- className?: string;
7622
- children: ReactNode;
7623
- }) => react_jsx_runtime0.JSX.Element;
7624
- Body: ({
7625
- style,
7626
- className,
7627
- children
7628
- }: {
7629
- style?: CSSProperties;
7630
- className?: string;
7631
- children: ReactNode;
7632
- }) => react_jsx_runtime0.JSX.Element;
7633
- Footer: ({
7634
- style,
7635
- className,
7636
- children
7637
- }: {
7638
- style?: CSSProperties;
7639
- className?: string;
7640
- children: ReactNode;
7641
- }) => react_jsx_runtime0.JSX.Element;
7642
- Actions: ({
7643
- style,
7644
- className,
7645
- children
7646
- }: {
7647
- style?: CSSProperties;
7648
- className?: string;
7649
- children: ReactNode;
7650
- }) => react_jsx_runtime0.JSX.Element;
7651
- };
7682
+ //#region src/components/ds-date-picker/ds-date-picker.d.ts
7683
+ declare const DsDatePicker: ({
7684
+ placeholder,
7685
+ className,
7686
+ withTime,
7687
+ closeOnSelect,
7688
+ disablePortal,
7689
+ hideClearButton,
7690
+ locale,
7691
+ slotProps,
7692
+ onChange,
7693
+ onOpenChange,
7694
+ value: _value,
7695
+ defaultValue: _defaultValue,
7696
+ min: _min,
7697
+ max: _max,
7698
+ disabled,
7699
+ readOnly,
7700
+ id,
7701
+ ...restProps
7702
+ }: DsDatePickerProps) => react_jsx_runtime0.JSX.Element;
7652
7703
  //#endregion
7653
- //#region src/components/ds-dropdown-menu/ds-dropdown-menu.types.d.ts
7654
- /**
7655
- * Base positioning type
7656
- */
7657
- type BasePositioning = NonNullable<Menu.RootProps['positioning']>;
7658
- /**
7659
- * Positioning options for dropdown menu
7660
- */
7661
- type DsDropdownMenuPositioning = Pick<BasePositioning, 'placement' | 'gutter' | 'sameWidth' | 'getAnchorRect'>;
7662
- /**
7663
- * DEPRECATED: Legacy dropdown menu option configuration
7664
- * Use compound component pattern instead
7665
- * @deprecated
7666
- */
7667
- interface DsDropdownMenuOptionLegacy {
7668
- /**
7669
- * Display label for the menu option
7670
- */
7671
- label: string;
7704
+ //#region src/components/ds-number-input/ds-number-input.types.d.ts
7705
+ interface DsNumberInputProps {
7672
7706
  /**
7673
- * Optional icon to display
7707
+ * Unique identifier for the input field
7674
7708
  */
7675
- icon?: IconType;
7709
+ id?: string;
7676
7710
  /**
7677
- * Whether this option is disabled
7711
+ * The ref to the input field
7678
7712
  */
7679
- disabled?: boolean;
7713
+ ref?: React.Ref<HTMLInputElement>;
7680
7714
  /**
7681
- * Click handler for the option
7715
+ * The name of the input field
7682
7716
  */
7683
- onClick?: (e: MouseEvent<HTMLElement>) => void;
7717
+ name?: string;
7684
7718
  /**
7685
- * Optional value for selection tracking
7719
+ * The size of the input field
7720
+ * @default default
7686
7721
  */
7687
- value?: string;
7688
- }
7689
- /**
7690
- * DEPRECATED: Legacy props for DsDropdownMenuLegacy component
7691
- * Use compound component pattern instead
7692
- * @deprecated
7693
- */
7694
- interface DsDropdownMenuLegacyProps {
7722
+ size?: 'small' | 'default';
7695
7723
  /**
7696
- * The options to be displayed in the dropdown menu
7724
+ * Event handler called when the input field loses focus
7725
+ *
7726
+ * @param event
7697
7727
  */
7698
- options: DsDropdownMenuOptionLegacy[];
7728
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
7699
7729
  /**
7700
- * Optional children to be rendered inside the component
7701
- * Typically used for the trigger element
7730
+ * Callback when the value changes (native input onChange event)
7731
+ * This is provided for compatibility but onValueChange is preferred
7702
7732
  */
7703
- children?: ReactNode | undefined;
7733
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
7704
7734
  /**
7705
- * The gap between the trigger and dropdown content in pixels
7706
- * @default 0
7735
+ * Value change event handler (provides just the number value)
7736
+ * This is the preferred way to handle value changes
7707
7737
  */
7708
- contentGap?: number;
7738
+ onValueChange?: (value: number) => void;
7709
7739
  /**
7710
7740
  * Additional CSS class names
7711
7741
  */
7712
7742
  className?: string;
7713
7743
  /**
7714
- * Optional inline styles to apply to the component
7715
- */
7716
- style?: CSSProperties;
7717
- /**
7718
- * The alignment of the dropdown content
7719
- * @default 'center'
7744
+ * Additional styles to apply to the component
7720
7745
  */
7721
- align?: 'start' | 'center' | 'end';
7746
+ style?: React.CSSProperties;
7722
7747
  /**
7723
- * The side of the dropdown content
7724
- * @default 'bottom'
7748
+ * The placeholder text
7725
7749
  */
7726
- side?: 'top' | 'right' | 'bottom' | 'left';
7750
+ placeholder?: string;
7727
7751
  /**
7728
- * Whether to render in place instead of using portals
7729
- * @default false
7752
+ * Whether the number input is disabled
7730
7753
  */
7731
- disablePortal?: boolean;
7754
+ disabled?: boolean;
7732
7755
  /**
7733
- * Whether to disable the search functionality
7734
- * @default false
7756
+ * The minimum value of the number input
7735
7757
  */
7736
- disableSearch?: boolean;
7758
+ min?: number | undefined;
7737
7759
  /**
7738
- * Currently selected value (for selection tracking)
7760
+ * The maximum value of the number input
7761
+ * @default Number.MAX_SAFE_INTEGER
7739
7762
  */
7740
- selected?: string;
7763
+ max?: number | undefined;
7741
7764
  /**
7742
- * Callback when an option with a value is selected
7765
+ * The amount to increment or decrement the value by
7766
+ * @default 1
7743
7767
  */
7744
- onSelect?: (value: string) => void;
7745
- }
7746
- /**
7747
- * Props for the DsDropdownMenu Root component
7748
- */
7749
- interface DsDropdownMenuRootProps {
7768
+ step?: number | undefined;
7750
7769
  /**
7751
- * Whether the dropdown is open (controlled mode)
7770
+ * The controlled value of the input
7752
7771
  */
7753
- open?: boolean;
7772
+ value?: number | undefined;
7754
7773
  /**
7755
- * Callback when open state changes
7774
+ * The initial value of the input when rendered.
7775
+ * Use when you don't need to control the value of the input.
7756
7776
  */
7757
- onOpenChange?: (open: boolean) => void;
7777
+ defaultValue?: number | undefined;
7778
+ }
7779
+ //#endregion
7780
+ //#region src/components/ds-number-input/ds-number-input.d.ts
7781
+ declare const DsNumberInput: FC<DsNumberInputProps>;
7782
+ //#endregion
7783
+ //#region src/components/ds-password-input/ds-password-input.types.d.ts
7784
+ interface DsPasswordInputProps {
7758
7785
  /**
7759
- * Callback when an item is selected
7786
+ * Unique identifier for the input field
7760
7787
  */
7761
- onSelect?: (value: string) => void;
7788
+ id?: string;
7762
7789
  /**
7763
- * Callback when the highlighted item changes
7790
+ * The ref to the input field
7764
7791
  */
7765
- onHighlightChange?: (value: string | null) => void;
7792
+ ref?: React.Ref<HTMLInputElement>;
7766
7793
  /**
7767
- * Positioning options for the dropdown
7794
+ * The name of the input field
7768
7795
  */
7769
- positioning?: DsDropdownMenuPositioning;
7796
+ name?: string;
7770
7797
  /**
7771
- * Prevents the menu from closing when any item is selected
7772
- * @default false
7798
+ * The size of the input field
7799
+ * @default default
7773
7800
  */
7774
- preventCloseOnSelect?: boolean;
7801
+ size?: 'small' | 'default';
7775
7802
  /**
7776
- * Root content
7803
+ * Event handler called when the input field loses focus
7804
+ *
7805
+ * @param event
7777
7806
  */
7778
- children?: ReactNode;
7779
- }
7780
- /**
7781
- * Props for the DsDropdownMenu Trigger component
7782
- */
7783
- type DsDropdownMenuTriggerProps = Menu.TriggerProps;
7784
- /**
7785
- * Props for the DsDropdownMenu Content component
7786
- */
7787
- interface DsDropdownMenuContentProps extends Pick<Menu.ContentProps, 'className' | 'style' | 'children'> {
7807
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
7788
7808
  /**
7789
- * Whether to render in place instead of using portals
7790
- * @default false
7809
+ * Callback when the value changes (native input onChange event)
7810
+ * This is provided for compatibility but onValueChange is preferred
7791
7811
  */
7792
- disablePortal?: boolean;
7793
- }
7794
- /**
7795
- * Props for the DsDropdownMenu Item component
7796
- */
7797
- interface DsDropdownMenuItemProps extends Pick<Menu.ItemProps, 'disabled' | 'asChild' | 'className' | 'style' | 'onSelect' | 'onClick' | 'value' | 'children'> {
7812
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
7798
7813
  /**
7799
- * Whether the item is selected (applies selected styling)
7814
+ * Value change event handler (provides just the string value)
7815
+ * This is the preferred way to handle value changes
7800
7816
  */
7801
- selected?: boolean;
7802
- }
7803
- /**
7804
- * Props for the DsDropdownMenu ItemIndicator component
7805
- */
7806
- interface DsDropdownMenuItemIndicatorProps {
7817
+ onValueChange?: (value: string) => void;
7807
7818
  /**
7808
- * Custom content to render as the indicator (defaults to check icon)
7819
+ * Additional CSS class names
7809
7820
  */
7810
- children?: ReactNode;
7821
+ className?: string;
7811
7822
  /**
7812
- * Optional CSS class name
7823
+ * Additional styles to apply to the component
7813
7824
  */
7814
- className?: string;
7825
+ style?: React.CSSProperties;
7815
7826
  /**
7816
- * Optional inline styles
7827
+ * The placeholder text
7817
7828
  */
7818
- style?: CSSProperties;
7819
- }
7820
- /**
7821
- * Props for the DsDropdownMenu Header component
7822
- */
7823
- interface DsDropdownMenuHeaderProps {
7829
+ placeholder?: string;
7824
7830
  /**
7825
- * The header content (typically a search input or filter controls)
7831
+ * The current value (for controlled usage)
7826
7832
  */
7827
- children: ReactNode;
7833
+ value?: string;
7828
7834
  /**
7829
- * Optional CSS class name
7835
+ * The initial value of the input when rendered.
7836
+ * Use when you don't need to control the value of the input.
7830
7837
  */
7831
- className?: string;
7838
+ defaultValue?: string;
7832
7839
  /**
7833
- * Optional inline styles
7840
+ * Whether the password input is disabled
7834
7841
  */
7835
- style?: CSSProperties;
7842
+ disabled?: boolean;
7836
7843
  }
7837
- /**
7838
- * Props for the DsDropdownMenu Actions component
7839
- */
7840
- interface DsDropdownMenuActionsProps {
7844
+ //#endregion
7845
+ //#region src/components/ds-password-input/ds-password-input.d.ts
7846
+ declare const DsPasswordInput: FC<DsPasswordInputProps>;
7847
+ //#endregion
7848
+ //#region src/components/ds-textarea/ds-textarea.types.d.ts
7849
+ interface DsTextareaProps {
7841
7850
  /**
7842
- * The action buttons or elements
7851
+ * Unique identifier for the textarea element
7843
7852
  */
7844
- children: ReactNode;
7853
+ id?: string;
7845
7854
  /**
7846
- * Optional CSS class name
7855
+ * The ref to the textarea element
7847
7856
  */
7848
- className?: string;
7857
+ ref?: React.Ref<HTMLTextAreaElement>;
7849
7858
  /**
7850
- * Optional inline styles
7859
+ * The name of the textarea
7851
7860
  */
7852
- style?: CSSProperties;
7853
- }
7854
- /**
7855
- * Props for the DsDropdownMenu ItemGroup component
7856
- */
7857
- interface DsDropdownMenuItemGroupProps extends Menu.ItemGroupProps {
7861
+ name?: string;
7858
7862
  /**
7859
- * Whether the group is collapsed
7863
+ * Event handler called when the textarea loses focus
7864
+ *
7865
+ * @param event
7860
7866
  */
7861
- collapsed?: boolean;
7867
+ onBlur?: (event: React.FocusEvent<HTMLTextAreaElement>) => void;
7862
7868
  /**
7863
- * Callback when collapse state changes
7869
+ * Callback when the value changes
7864
7870
  */
7865
- onCollapsedChange?: (collapsed: boolean) => void;
7866
- }
7867
- /**
7868
- * Props for the DsDropdownMenu ItemGroupLabel component
7869
- */
7870
- type DsDropdownMenuItemGroupLabelProps = Menu.ItemGroupLabelProps;
7871
- /**
7872
- * Props for the DsDropdownMenu ItemGroupContent component
7873
- */
7874
- interface DsDropdownMenuItemGroupContentProps {
7871
+ onChange?: (event: React.ChangeEvent<HTMLTextAreaElement>) => void;
7875
7872
  /**
7876
- * The content to show/hide based on collapsed state
7873
+ * Value change event handler (provides just the value)
7877
7874
  */
7878
- children: ReactNode;
7875
+ onValueChange?: (value: string) => void;
7879
7876
  /**
7880
- * Optional CSS class name
7877
+ * Additional CSS class names
7881
7878
  */
7882
7879
  className?: string;
7883
7880
  /**
7884
- * Optional inline styles
7881
+ * Additional styles to apply to the component
7885
7882
  */
7886
- style?: CSSProperties;
7887
- }
7888
- /**
7889
- * Props for the DsDropdownMenu Separator component
7890
- */
7891
- type DsDropdownMenuSeparatorProps = Menu.SeparatorProps;
7892
- /**
7893
- * Props for the DsDropdownMenu TriggerItem component (for nested submenus)
7894
- */
7895
- type DsDropdownMenuTriggerItemProps = Menu.TriggerItemProps;
7896
- //#endregion
7897
- //#region src/components/ds-dropdown-menu/ds-dropdown-menu.d.ts
7898
- /**
7899
- * DEPRECATED: Legacy DsDropdownMenu component with options array
7900
- * Use compound component pattern instead
7901
- * @deprecated
7902
- */
7903
- declare const DsDropdownMenuLegacy: React.FC<DsDropdownMenuLegacyProps>;
7904
- /**
7905
- * Design system DsDropdownMenu component
7906
- *
7907
- * @example
7908
- * <DsDropdownMenu.Root>
7909
- * <DsDropdownMenu.Trigger>
7910
- * <button>Open</button>
7911
- * </DsDropdownMenu.Trigger>
7912
- * <DsDropdownMenu.Content>
7913
- * <DsDropdownMenu.Header>
7914
- * <DsTextInput placeholder="Search..." />
7915
- * </DsDropdownMenu.Header>
7916
- * <DsDropdownMenu.Item value="item1">
7917
- * Item 1
7918
- * <DsDropdownMenu.ItemIndicator />
7919
- * </DsDropdownMenu.Item>
7920
- * <DsDropdownMenu.ItemGroup>
7921
- * <DsDropdownMenu.ItemGroupLabel>Group Name</DsDropdownMenu.ItemGroupLabel>
7922
- * <DsDropdownMenu.ItemGroupContent>
7923
- * <DsDropdownMenu.Item value="item2">Item 2</DsDropdownMenu.Item>
7924
- * </DsDropdownMenu.ItemGroupContent>
7925
- * </DsDropdownMenu.ItemGroup>
7926
- * <DsDropdownMenu.Separator />
7927
- * <DsDropdownMenu.Actions>
7928
- * <DsButton>Cancel</DsButton>
7929
- * <DsButton>Apply</DsButton>
7930
- * </DsDropdownMenu.Actions>
7931
- * </DsDropdownMenu.Content>
7932
- * </DsDropdownMenu.Root>
7933
- */
7934
- declare const DsDropdownMenu: {
7935
- Root: React.FC<DsDropdownMenuRootProps>;
7936
- Trigger: React.FC<Menu.TriggerProps>;
7937
- Content: React.FC<DsDropdownMenuContentProps>;
7938
- Item: React.FC<DsDropdownMenuItemProps>;
7939
- ItemIndicator: React.FC<DsDropdownMenuItemIndicatorProps>;
7940
- TriggerItem: React.FC<Menu.TriggerItemProps>;
7941
- Header: React.FC<DsDropdownMenuHeaderProps>;
7942
- Actions: React.FC<DsDropdownMenuActionsProps>;
7943
- ItemGroup: React.FC<DsDropdownMenuItemGroupProps>;
7944
- ItemGroupLabel: React.FC<Menu.ItemGroupLabelProps>;
7945
- ItemGroupContent: React.FC<DsDropdownMenuItemGroupContentProps>;
7946
- Separator: React.FC<Menu.SeparatorProps>;
7947
- };
7948
- //#endregion
7949
- //#region src/components/ds-text-input/ds-text-input.types.d.ts
7950
- declare const textInputSizes: readonly ["small", "default"];
7951
- type TextInputSize = (typeof textInputSizes)[number];
7952
- interface DsTextInputProps {
7883
+ style?: React.CSSProperties;
7953
7884
  /**
7954
- * Unique identifier for the input field
7885
+ * The placeholder text
7955
7886
  */
7956
- id?: string;
7887
+ placeholder?: string;
7957
7888
  /**
7958
- * The ref to the input field
7889
+ * The current value
7959
7890
  */
7960
- ref?: React.Ref<HTMLInputElement>;
7891
+ value?: string;
7961
7892
  /**
7962
- * The name of the input field
7893
+ * The initial value of the input when rendered.
7894
+ * Use when you don't need to control the value of the input.
7963
7895
  */
7964
- name?: string;
7896
+ defaultValue?: string;
7965
7897
  /**
7966
- * The size of the input field
7967
- * @default default
7898
+ * Whether the textarea is disabled
7968
7899
  */
7969
- size?: TextInputSize;
7900
+ disabled?: boolean;
7970
7901
  /**
7971
- * The type of the input field
7972
- * @default text
7902
+ * The number of visible text lines
7973
7903
  */
7974
- type?: string;
7904
+ rows?: number;
7975
7905
  /**
7976
- * Event handler called when the input field receives focus
7906
+ * The minimum number of characters
7977
7907
  */
7978
- onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
7908
+ minLength?: number;
7979
7909
  /**
7980
- * Event handler called when the input field loses focus
7981
- *
7982
- * @param event
7910
+ * The maximum number of characters
7983
7911
  */
7984
- onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
7912
+ maxLength?: number;
7913
+ }
7914
+ //#endregion
7915
+ //#region src/components/ds-textarea/ds-textarea.d.ts
7916
+ declare const DsTextarea: React.FC<DsTextareaProps>;
7917
+ //#endregion
7918
+ //#region src/components/ds-select/ds-select.types.d.ts
7919
+ type SelectSize = 'default' | 'small';
7920
+ interface DsSelectOption {
7985
7921
  /**
7986
- * Callback when a key is pressed down
7922
+ * Label to display in the select
7987
7923
  */
7988
- onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
7924
+ label: string;
7989
7925
  /**
7990
- * Callback when the value changes
7926
+ * Value to return when the option is selected
7991
7927
  */
7992
- onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
7928
+ value: SelectOptionValue;
7993
7929
  /**
7994
- * Value change event handler (provides just the value)
7930
+ * Optional icon to display next to the label
7995
7931
  */
7996
- onValueChange?: (value: string) => void;
7932
+ icon?: IconName;
7933
+ }
7934
+ type SelectOptionValue = string;
7935
+ type DsSelectProps = {
7936
+ /**
7937
+ * Unique identifier for the select component
7938
+ */
7939
+ id?: string;
7940
+ /**
7941
+ * Options to display in the select dropdown
7942
+ */
7943
+ options: DsSelectOption[];
7944
+ /**
7945
+ * Additional styles to apply to the icon
7946
+ */
7947
+ style?: React.CSSProperties;
7997
7948
  /**
7998
7949
  * Additional CSS class names
7999
7950
  */
8000
7951
  className?: string;
8001
7952
  /**
8002
- * Additional styles to apply to the component
7953
+ * Event handler called when the select loses focus
7954
+ *
7955
+ * @param event
8003
7956
  */
8004
- style?: React.CSSProperties;
7957
+ onBlur?: (event: React.FocusEvent) => void;
8005
7958
  /**
8006
- * The placeholder text
7959
+ * Placeholder text to display when no option is selected
8007
7960
  */
8008
7961
  placeholder?: string;
8009
7962
  /**
8010
- * The current value
7963
+ * Whether the select is disabled
8011
7964
  */
8012
- value?: string;
7965
+ disabled?: boolean;
8013
7966
  /**
8014
- * The minimum value of the input
7967
+ * The size of the select component
7968
+ * @default 'default'
8015
7969
  */
8016
- min?: number | string;
7970
+ size?: SelectSize;
8017
7971
  /**
8018
- * The maximum value of the input
7972
+ * Custom render function for dropdown options.
7973
+ * When provided, replaces the default label text inside each dropdown item.
7974
+ * The string `label` is still used for search, trigger text, chips, and accessibility.
8019
7975
  */
8020
- max?: number | string;
7976
+ renderOption?: (option: DsSelectOption) => ReactNode;
7977
+ } & ({
7978
+ clearable?: undefined | false;
7979
+ onClear?: never;
7980
+ } | {
7981
+ clearable: true;
7982
+ onClear?: () => void;
7983
+ }) & ({
7984
+ multiple?: undefined | false;
7985
+ value: SelectOptionValue;
7986
+ onValueChange?: (value: SelectOptionValue) => void;
8021
7987
  /**
8022
- * The minimum number of characters
7988
+ * Custom render function for the selected value in the trigger.
7989
+ * When provided, replaces the default label text inside the trigger button.
7990
+ * Only called when there is a selection; otherwise the placeholder is shown.
8023
7991
  */
8024
- minLength?: number;
7992
+ renderValue?: (selectedOption: DsSelectOption) => ReactNode;
7993
+ } | {
7994
+ multiple: true;
7995
+ value: SelectOptionValue[];
7996
+ onValueChange?: (value: SelectOptionValue[]) => void;
8025
7997
  /**
8026
- * The maximum number of characters
7998
+ * Custom render function for the selected value in the trigger.
7999
+ * When provided, replaces the default label text inside the trigger button.
8000
+ * Only called when there is a selection; otherwise the placeholder is shown.
8027
8001
  */
8028
- maxLength?: number;
8002
+ renderValue?: (selectedOptions: DsSelectOption[]) => ReactNode;
8003
+ });
8004
+ //#endregion
8005
+ //#region src/components/ds-select/ds-select.d.ts
8006
+ declare const DsSelect: ({
8007
+ id,
8008
+ options: userOptions,
8009
+ value,
8010
+ style,
8011
+ size,
8012
+ clearable,
8013
+ onClear,
8014
+ onBlur,
8015
+ className,
8016
+ placeholder,
8017
+ disabled,
8018
+ renderOption,
8019
+ ...multiselectProps
8020
+ }: DsSelectProps) => react_jsx_runtime0.JSX.Element;
8021
+ //#endregion
8022
+ //#region src/components/ds-form-control/ds-form-control.types.d.ts
8023
+ declare const controlStatuses: readonly ["info", "success", "error", "warning"];
8024
+ type ControlStatus = (typeof controlStatuses)[number];
8025
+ interface DsFormControlProps extends React.PropsWithChildren {
8029
8026
  /**
8030
- * The initial value of the input when rendered.
8031
- * Use when you don't need to control the value of the input.
8027
+ * Unique identifier for the control
8032
8028
  */
8033
- defaultValue?: string;
8029
+ id?: string;
8034
8030
  /**
8035
- * Whether the input is disabled
8031
+ * Visual status
8036
8032
  */
8037
- disabled?: boolean;
8033
+ status?: ControlStatus;
8038
8034
  /**
8039
- * Whether the input is read only
8035
+ * Label text
8040
8036
  */
8041
- readOnly?: boolean;
8037
+ label: string;
8042
8038
  /**
8043
- * The tabIndex of the input
8039
+ * Marks the field as required
8044
8040
  */
8045
- tabIndex?: number;
8041
+ required?: boolean;
8046
8042
  slots?: {
8047
8043
  /**
8048
- * Custom component to wrap the input element
8049
- */
8050
- inputWrapper?: ComponentType<{
8051
- children: React.ReactNode;
8052
- }>;
8053
- /**
8054
- * Adornment to display at the start of the input
8055
- */
8056
- startAdornment?: React.ReactNode;
8057
- /**
8058
- * Adornment to display at the end of the input
8044
+ * Adornment to display at the end of the label
8059
8045
  */
8060
8046
  endAdornment?: React.ReactNode;
8061
8047
  };
8062
- }
8063
- //#endregion
8064
- //#region src/components/ds-text-input/ds-text-input.d.ts
8065
- declare const DsTextInput: FC<DsTextInputProps>;
8066
- //#endregion
8067
- //#region src/components/ds-expandable-text-input/ds-expandable-text-input.types.d.ts
8068
- interface DsExpandableTextInputProps extends Omit<DsTextInputProps, 'tabIndex' | 'slots'> {
8069
8048
  /**
8070
- * The icon to display inside the expandable input trigger button
8049
+ * Message under the control
8071
8050
  */
8072
- icon: IconType;
8051
+ message?: string;
8073
8052
  /**
8074
- * Callback fired when the clear action is triggered
8053
+ * Icon shown next to message
8075
8054
  */
8076
- onClear?: () => void;
8055
+ messageIcon?: IconType;
8077
8056
  /**
8078
- * Callback fired when the expanded state changes
8057
+ * Additional CSS class names
8079
8058
  */
8080
- onExpandChange?: (expanded: boolean) => void;
8081
- }
8082
- //#endregion
8083
- //#region src/components/ds-expandable-text-input/ds-expandable-text-input.d.ts
8084
- declare function DsExpandableTextInput({
8085
- onClear,
8086
- onExpandChange,
8087
- icon,
8088
- size,
8089
- ...props
8090
- }: DsExpandableTextInputProps): react_jsx_runtime0.JSX.Element;
8091
- //#endregion
8092
- //#region src/components/ds-file-upload/ds-file-upload-api.types.d.ts
8093
- type FileError = FileUploadFileError;
8094
- type UploadFileStatus = 'pending' | 'uploading' | 'interrupted' | 'completed' | 'error' | 'cancelled';
8095
- type FileMetadata = Record<string, unknown>;
8096
- interface UploadedFile extends File {
8097
- id: string;
8098
- progress: number;
8099
- status: UploadFileStatus;
8100
- errors?: FileError[];
8101
- }
8102
- interface FileUploadOptions {
8103
- file: File;
8104
- fileId: string;
8105
- metadata?: FileMetadata;
8106
- onProgress?: (progress: number) => void;
8107
- signal?: AbortSignal;
8108
- }
8109
- interface FileUploadResult {
8110
- url: string;
8111
- metadata?: FileMetadata;
8059
+ className?: string;
8060
+ /**
8061
+ * Additional styles to apply to the component
8062
+ */
8063
+ style?: React.CSSProperties;
8112
8064
  }
8113
- /**
8114
- * File upload adapter interface
8115
- * The upload method should:
8116
- * - resolve with FileUploadResult on success
8117
- * - reject with RetryableFileUploadError for transient failures
8118
- * - reject with FatalFileUploadError for permanent failures
8119
- */
8120
- interface FileUploadAdapter {
8121
- upload: (options: FileUploadOptions) => FileUploadResult | Promise<FileUploadResult>;
8122
- cancel?: (fileId: string) => void | Promise<void>;
8123
- delete?: (fileId: string) => void | Promise<void>;
8065
+ interface DsFormControlDescriptionProps {
8066
+ /**
8067
+ * The description content
8068
+ */
8069
+ children: React.ReactNode;
8070
+ /**
8071
+ * Additional CSS class names
8072
+ */
8073
+ className?: string;
8124
8074
  }
8125
8075
  //#endregion
8126
- //#region src/components/ds-file-upload/types/accept-types.d.ts
8127
- /**
8128
- * File extension with leading dot
8129
- * @example '.pdf', '.jpg', '.csv'
8130
- */
8131
- type FileExtension = `.${string}`;
8132
- /**
8133
- * Accepted file type configuration
8134
- * - Use string shorthand for common MIME types (uses built-in extensions map)
8135
- * - Use object form to override or provide custom extensions
8136
- */
8137
- type AcceptedFileType = FileUploadFileMimeType | {
8138
- mimeType: FileUploadFileMimeType;
8139
- extensions: [FileExtension, ...FileExtension[]];
8076
+ //#region src/components/ds-form-control/ds-form-control.d.ts
8077
+ declare const DsFormControl: {
8078
+ ({
8079
+ id,
8080
+ status,
8081
+ label,
8082
+ required,
8083
+ slots,
8084
+ message,
8085
+ messageIcon,
8086
+ className,
8087
+ style,
8088
+ children
8089
+ }: DsFormControlProps): react_jsx_runtime0.JSX.Element;
8090
+ TextInput: (props: DsTextInputProps) => react_jsx_runtime0.JSX.Element;
8091
+ NumberInput: (props: DsNumberInputProps) => react_jsx_runtime0.JSX.Element;
8092
+ PasswordInput: (props: DsPasswordInputProps) => react_jsx_runtime0.JSX.Element; /** @deprecated DsDateInput is deprecated. Use DsDatePicker or DsDateRangePicker instead. */
8093
+ DateInput: (props: DsDateInputProps) => react_jsx_runtime0.JSX.Element;
8094
+ DatePicker: (props: DsDatePickerProps) => react_jsx_runtime0.JSX.Element;
8095
+ TimePicker: (props: DsTimePickerProps) => react_jsx_runtime0.JSX.Element;
8096
+ Textarea: (props: DsTextareaProps) => react_jsx_runtime0.JSX.Element;
8097
+ Select: (props: DsSelectProps) => react_jsx_runtime0.JSX.Element;
8098
+ Description: React.FC<DsFormControlDescriptionProps>;
8140
8099
  };
8141
8100
  //#endregion
8142
- //#region src/components/ds-file-upload/components/file-upload/file-upload.types.d.ts
8143
- interface FileUploadProps {
8101
+ //#region src/components/ds-date-range-picker/ds-date-range-picker.types.d.ts
8102
+ type DateRangeValue = [Date | null, Date | null];
8103
+ declare const dateRangePickerOrientations: readonly ["horizontal", "vertical"];
8104
+ type DateRangePickerOrientation = (typeof dateRangePickerOrientations)[number];
8105
+ interface DsDateRangePickerLocale {
8106
+ clearAllLabel?: string;
8107
+ }
8108
+ type DateRangeFormControlSlotProps = Partial<Omit<DsFormControlProps, 'children'>>;
8109
+ interface DsDateRangePickerSlotProps {
8110
+ startDatePicker?: DsDatePickerProps;
8111
+ endDatePicker?: DsDatePickerProps;
8112
+ startDateFormControl?: DateRangeFormControlSlotProps;
8113
+ endDateFormControl?: DateRangeFormControlSlotProps;
8114
+ }
8115
+ interface DsDateRangePickerProps {
8144
8116
  /**
8145
- * Error text displayed when validation fails
8117
+ * Controlled value as a tuple of [startDate, endDate].
8118
+ * `null` for either element means that date is empty.
8119
+ * `undefined` means the component is uncontrolled.
8146
8120
  */
8147
- errorText?: string;
8121
+ value?: DateRangeValue;
8148
8122
  /**
8149
- * Text displayed in the dropzone area
8123
+ * Default value for uncontrolled mode
8150
8124
  */
8151
- dropzoneText?: string;
8125
+ defaultValue?: DateRangeValue;
8152
8126
  /**
8153
- * Text for the upload trigger button
8127
+ * Callback when either date changes
8154
8128
  */
8155
- triggerText?: string;
8129
+ onChange?: (value: DateRangeValue) => void;
8156
8130
  /**
8157
- * Whether to hide upload progress
8158
- * @default false
8131
+ * Minimum allowed datetime for both pickers
8159
8132
  */
8160
- hideProgress?: boolean;
8133
+ min?: Date;
8161
8134
  /**
8162
- * Whether to hide the info text (file types, size limits, etc.)
8135
+ * Maximum allowed datetime for both pickers
8136
+ */
8137
+ max?: Date;
8138
+ /**
8139
+ * Whether to show date pickers with time
8163
8140
  * @default false
8164
8141
  */
8165
- hideInfoText?: boolean;
8142
+ withTime?: boolean;
8166
8143
  /**
8167
- * Whether to disable drag and drop functionality
8144
+ * Layout orientation of the two pickers
8145
+ * @default 'horizontal'
8146
+ */
8147
+ orientation?: DateRangePickerOrientation;
8148
+ /**
8149
+ * Whether to hide the "Clear all" button
8168
8150
  * @default false
8169
8151
  */
8170
- disableDrop?: boolean;
8152
+ hideClearAll?: boolean;
8171
8153
  /**
8172
- * The maximum number of files that can be uploaded
8154
+ * Whether to close the calendar when a date is selected. This is ignored when withTime is true.
8155
+ * @default true
8173
8156
  */
8174
- maxFiles?: number;
8157
+ closeOnSelect?: boolean;
8158
+ disabled?: boolean;
8159
+ readOnly?: boolean;
8160
+ className?: string;
8175
8161
  /**
8176
- * Maximum file size in bytes
8177
- * @default 25MB
8162
+ * Whether to disable the portal for both calendar popups
8163
+ * @default false
8178
8164
  */
8179
- maxFileSize?: number;
8165
+ disablePortal?: boolean;
8180
8166
  /**
8181
- * Callback when files are accepted
8167
+ * Localizable labels and text
8182
8168
  */
8183
- onFileAccept?: (details: FileUploadFileAcceptDetails) => void;
8169
+ locale?: DsDateRangePickerLocale;
8184
8170
  /**
8185
- * Callback when files are rejected
8171
+ * Props forwarded to sub-component slots
8186
8172
  */
8187
- onFileReject?: (details: FileUploadFileRejectDetails) => void;
8173
+ slotProps?: DsDateRangePickerSlotProps;
8174
+ }
8175
+ //#endregion
8176
+ //#region src/components/ds-date-range-picker/ds-date-range-picker.d.ts
8177
+ declare const DsDateRangePicker: ({
8178
+ value: valueProp,
8179
+ defaultValue,
8180
+ onChange,
8181
+ min,
8182
+ max,
8183
+ withTime,
8184
+ orientation,
8185
+ hideClearAll,
8186
+ closeOnSelect,
8187
+ disabled,
8188
+ readOnly,
8189
+ className,
8190
+ disablePortal,
8191
+ locale,
8192
+ slotProps
8193
+ }: DsDateRangePickerProps) => react_jsx_runtime0.JSX.Element;
8194
+ //#endregion
8195
+ //#region src/components/ds-dialog/ds-dialog.types.d.ts
8196
+ interface DsDialogProps {
8188
8197
  /**
8189
- * Additional CSS class names
8198
+ * Controls whether the dialog is open.
8190
8199
  */
8191
- className?: string;
8200
+ open: boolean;
8192
8201
  /**
8193
- * Additional styles
8202
+ * Callback fired when the open state should change.
8194
8203
  */
8195
- style?: CSSProperties;
8204
+ onOpenChange?: (open: boolean) => void;
8196
8205
  /**
8197
- * The file types that are accepted
8198
- * Use shorthand for common MIME types (extensions provided automatically)
8199
- * or explicit form for custom types
8200
- * @example ['application/pdf', 'image/png']
8201
- * @example ['application/pdf', { mimeType: 'application/x-custom', extensions: ['.custom'] }]
8206
+ * The accessible title for the dialog. Required for accessibility.
8202
8207
  */
8203
- accept?: AcceptedFileType[];
8208
+ title: string;
8204
8209
  /**
8205
- * File states to display (managed externally)
8210
+ * If true, the dialog title will be visually hidden but accessible to screen readers.
8206
8211
  */
8207
- files?: UploadedFile[];
8212
+ hideTitle?: boolean;
8208
8213
  /**
8209
- * Callback when files are removed
8214
+ * The accessible description for the dialog. Optional, but recommended for accessibility.
8210
8215
  */
8211
- onFileRemove?: (fileId: string) => void;
8216
+ description?: string;
8212
8217
  /**
8213
- * Callback when files are deleted
8218
+ * If true, the dialog description will be visually hidden but accessible to screen readers.
8214
8219
  */
8215
- onFileDelete?: (fileId: string) => void;
8220
+ hideDescription?: boolean;
8216
8221
  /**
8217
- * Callback when files upload is canceled
8222
+ * The content to render inside the dialog.
8218
8223
  */
8219
- onFileCancel?: (fileId: string) => void;
8224
+ children: React.ReactNode;
8220
8225
  /**
8221
- * Callback when files upload is retried
8226
+ * Additional CSS class names for the dialog container.
8222
8227
  */
8223
- onFileRetry?: (fileId: string) => void;
8228
+ className?: string;
8224
8229
  /**
8225
- * Controlled accepted files
8230
+ * Ref to the element the dialog should be anchored to (for relative placement)
8226
8231
  */
8227
- acceptedFiles?: File[];
8232
+ anchorRef?: React.RefObject<HTMLElement>;
8228
8233
  /**
8229
- * Whether the file upload is disabled
8234
+ * Custom fixed position (e.g., { top: number, left: number })
8230
8235
  */
8231
- disabled?: boolean;
8236
+ customPosition?: {
8237
+ top: number;
8238
+ left: number;
8239
+ };
8232
8240
  /**
8233
- * Whether the file upload layout is compact (inline)
8241
+ * If true, show modal overlay and center dialog (default: true)
8234
8242
  */
8235
- compact?: boolean;
8243
+ modal?: boolean;
8236
8244
  }
8237
8245
  //#endregion
8238
- //#region src/components/ds-file-upload/components/file-upload/file-upload.d.ts
8239
- /**
8240
- * Design system base File Upload component
8241
- * Used in conjunction with the useFileUpload hook
8242
- */
8243
- declare const FileUpload: React.FC<FileUploadProps>;
8246
+ //#region src/components/ds-dialog/ds-dialog.d.ts
8247
+ declare const DsDialog: React.FC<DsDialogProps>;
8244
8248
  //#endregion
8245
- //#region src/components/ds-file-upload/ds-file-upload.types.d.ts
8246
- interface DsFileUploadProps extends Omit<FileUploadProps, 'files' | 'acceptedFiles' | 'onFileAccept' | 'onFileReject' | 'onFileRemove' | 'onFileDelete' | 'onFileCancel' | 'onFileRetry' | 'uploadProgress'> {
8247
- /** Upload adapter implementation */
8248
- adapter: FileUploadAdapter;
8249
+ //#region src/components/ds-divider/ds-divider.types.d.ts
8250
+ interface DsDividerProps {
8249
8251
  /**
8250
- * Whether to start upload automatically when files are added
8251
- * @default true
8252
+ * Controls orientation of the divider. Horizontal by default.
8252
8253
  */
8253
- autoUpload?: boolean;
8254
- /** Maximum number of concurrent uploads */
8255
- maxConcurrent?: number;
8256
- /** Additional metadata to attach to uploads */
8257
- metadata?: FileMetadata;
8258
- /** Called when a file upload completes successfully */
8259
- onFileUploadComplete?: (fileId: string, result: FileUploadResult) => void;
8260
- /** Called when a file upload fails */
8261
- onFileUploadError?: (fileId: string, error: string) => void;
8262
- /** Called when files are added (before upload) */
8263
- onFilesAdded?: (files: File[]) => void;
8264
- /** Called when a file is removed */
8265
- onFileRemoved?: (fileId: string) => void;
8266
- /** Called when a file is deleted */
8267
- onFileDeleted?: (fileId: string) => void;
8268
- /** Called when a file upload is canceled */
8269
- onFileUploadCanceled?: (fileId: string) => void;
8270
- /** Called when a file upload is retried */
8271
- onFileUploadRetried?: (fileId: string) => void;
8272
- /** Called when all file uploads are complete */
8273
- onAllFileUploadsComplete?: () => void;
8274
- }
8275
- //#endregion
8276
- //#region src/components/ds-file-upload/ds-file-upload.d.ts
8277
- /**
8278
- * Design system File Upload component (with state management)
8279
- */
8280
- declare const DsFileUpload: React.FC<DsFileUploadProps>;
8281
- //#endregion
8282
- //#region src/components/ds-file-upload/hooks/use-file-upload.d.ts
8283
- interface UseFileUploadConfig {
8284
- adapter: FileUploadAdapter;
8285
- autoUpload?: boolean;
8286
- maxConcurrent?: number;
8287
- maxFiles?: number;
8288
- metadata?: FileMetadata;
8289
- onFileUploadComplete?: (fileId: string, result: FileUploadResult) => void;
8290
- onFileUploadError?: (fileId: string, error: string) => void;
8291
- onAllFileUploadsComplete?: () => void;
8292
- }
8293
- interface UseFileUploadUserCallbacks {
8294
- onFilesAdded?: (files: File[]) => void;
8295
- onFileRemoved?: (fileId: string) => void;
8296
- onFileDeleted?: (fileId: string) => void;
8297
- onFileUploadCanceled?: (fileId: string) => void;
8298
- onFileUploadRetried?: (fileId: string) => void;
8299
- }
8300
- interface UseFileUploadReturn {
8301
- files: UploadedFile[];
8302
- acceptedFiles: UploadedFile[];
8303
- addFiles: (newFiles: File[]) => UploadedFile[];
8304
- addRejectedFiles: (filesWithErrors: {
8305
- file: File;
8306
- errors: FileError[];
8307
- }[]) => void;
8308
- removeFile: (fileId: string) => void;
8309
- deleteFile: (fileId: string) => Promise<void>;
8310
- uploadFile: (fileId: string) => Promise<void>;
8311
- uploadAll: () => Promise<void>;
8312
- cancelUpload: (fileId: string) => Promise<void>;
8313
- retryUpload: (fileId: string) => Promise<void>;
8314
- clearFiles: () => void;
8254
+ orientation?: 'horizontal' | 'vertical';
8315
8255
  /**
8316
- * Get props for FileUpload component with callback composition
8317
- * @param userCallbacks Optional user callbacks to compose with internal logic
8318
- * @returns Props ready to spread onto FileUpload component
8256
+ * Underlying element/component to render.
8257
+ * Examples: "hr", "div", "span", Link, etc.
8319
8258
  */
8320
- getProps: (userCallbacks?: UseFileUploadUserCallbacks) => Pick<FileUploadProps, 'files' | 'acceptedFiles' | 'onFileAccept' | 'onFileReject' | 'onFileRemove' | 'onFileDelete' | 'onFileCancel' | 'onFileRetry'>;
8259
+ component?: React.ElementType;
8260
+ /**
8261
+ * Additional CSS styles.
8262
+ */
8263
+ style?: React.CSSProperties;
8264
+ /**
8265
+ * Additional CSS classes.
8266
+ */
8267
+ className?: string;
8321
8268
  }
8322
- /**
8323
- * File upload state management hook
8324
- */
8325
- declare function useFileUpload({
8326
- adapter,
8327
- autoUpload,
8328
- maxConcurrent,
8329
- maxFiles,
8330
- metadata,
8331
- onFileUploadComplete,
8332
- onFileUploadError,
8333
- onAllFileUploadsComplete
8334
- }: UseFileUploadConfig): UseFileUploadReturn;
8335
8269
  //#endregion
8336
- //#region src/components/ds-file-upload/errors/file-upload-errors.d.ts
8337
- /**
8338
- * Base class for file upload errors
8339
- */
8340
- declare abstract class FileUploadError extends Error {
8341
- abstract readonly isRetryable: boolean;
8342
- constructor(message: string);
8343
- }
8270
+ //#region src/components/ds-divider/ds-divider.d.ts
8271
+ declare const DsDivider: React.FC<DsDividerProps>;
8272
+ //#endregion
8273
+ //#region src/components/ds-drawer/ds-drawer.types.d.ts
8344
8274
  /**
8345
- * Retryable file upload error - indicates the upload can be retried
8346
- * Examples: network errors, timeouts, temporary server errors (503), user cancellation
8275
+ * Available positions for the drawer
8347
8276
  */
8348
- declare class RetryableFileUploadError extends FileUploadError {
8349
- readonly isRetryable = true;
8350
- }
8277
+ type DsDrawerPosition = 'start' | 'end';
8351
8278
  /**
8352
- * Fatal file upload error - indicates the upload should not be retried
8353
- * Examples: file type not allowed, file too large, invalid credentials, malformed response
8279
+ * Available column sizes for drawer width
8354
8280
  */
8355
- declare class FatalFileUploadError extends FileUploadError {
8356
- readonly isRetryable = false;
8357
- }
8358
- //#endregion
8359
- //#region src/components/ds-filter-status-icon/ds-filter-status-icon.types.d.ts
8360
- declare const filterStatuses: readonly ["running", "warning", "failed", "paused"];
8361
- type FilterStatus = (typeof filterStatuses)[number];
8362
- interface DsFilterStatusIconProps {
8281
+ type DsDrawerColumns = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
8282
+ interface DsDrawerProps extends Pick<UseDialogProps, 'closeOnEscape' | 'closeOnInteractOutside'> {
8363
8283
  /**
8364
- * The filter status type
8284
+ * Whether the drawer is open
8365
8285
  */
8366
- status: FilterStatus;
8286
+ open: boolean;
8367
8287
  /**
8368
- * Whether the status icon is active or non-active
8369
- * @default true
8288
+ * Callback when the drawer open state changes
8370
8289
  */
8371
- active?: boolean;
8290
+ onOpenChange: (open: boolean) => void;
8372
8291
  /**
8373
- * Icon size
8374
- * @default 'small'
8292
+ * Number of grid columns the drawer should span (1-12)
8293
+ * @default 4
8375
8294
  */
8376
- size?: IconSize;
8295
+ columns?: DsDrawerColumns;
8296
+ /**
8297
+ * Position of the drawer
8298
+ * @default 'end'
8299
+ */
8300
+ position?: DsDrawerPosition;
8301
+ /**
8302
+ * Whether to show backdrop overlay
8303
+ * @default false
8304
+ */
8305
+ backdrop?: boolean;
8306
+ /**
8307
+ * Whether to append the drawer to the body instead of rendering in place
8308
+ * @default false
8309
+ */
8310
+ portal?: boolean;
8311
+ /**
8312
+ * Additional CSS styles
8313
+ */
8314
+ style?: CSSProperties;
8377
8315
  /**
8378
8316
  * Additional CSS class names
8379
8317
  */
8380
8318
  className?: string;
8381
8319
  /**
8382
- * Additional styles to apply to the component
8320
+ * Children components
8383
8321
  */
8384
- style?: CSSProperties;
8322
+ children: ReactNode;
8385
8323
  }
8386
8324
  //#endregion
8387
- //#region src/components/ds-filter-status-icon/ds-filter-status-icon.d.ts
8325
+ //#region src/components/ds-drawer/ds-drawer.d.ts
8388
8326
  /**
8389
- * Design system Filter Status Icon component
8390
- * Status icons for toggle filter buttons to help users quickly distinguish states
8327
+ * Composable drawer component.
8328
+ * Supports grid-based sizing, flexible positioning, and compound components.
8329
+ * Use columns prop to control drawer width (1-12 grid columns).
8391
8330
  */
8392
- declare const DsFilterStatusIcon: ({
8393
- status,
8394
- active,
8395
- size,
8396
- className,
8397
- style
8398
- }: DsFilterStatusIconProps) => react_jsx_runtime0.JSX.Element;
8331
+ declare const DsDrawer: {
8332
+ ({
8333
+ open,
8334
+ onOpenChange,
8335
+ columns,
8336
+ position,
8337
+ backdrop,
8338
+ closeOnEscape,
8339
+ closeOnInteractOutside,
8340
+ portal,
8341
+ style,
8342
+ className,
8343
+ children
8344
+ }: DsDrawerProps): react_jsx_runtime0.JSX.Element;
8345
+ Header: ({
8346
+ style,
8347
+ className,
8348
+ children
8349
+ }: {
8350
+ style?: CSSProperties;
8351
+ className?: string;
8352
+ children: ReactNode;
8353
+ }) => react_jsx_runtime0.JSX.Element;
8354
+ Title: ({
8355
+ style,
8356
+ className,
8357
+ children
8358
+ }: {
8359
+ style?: CSSProperties;
8360
+ className?: string;
8361
+ children: ReactNode;
8362
+ }) => react_jsx_runtime0.JSX.Element;
8363
+ CloseTrigger: ({
8364
+ style,
8365
+ className
8366
+ }: {
8367
+ style?: CSSProperties;
8368
+ className?: string;
8369
+ }) => react_jsx_runtime0.JSX.Element;
8370
+ Toolbar: ({
8371
+ style,
8372
+ className,
8373
+ children
8374
+ }: {
8375
+ style?: CSSProperties;
8376
+ className?: string;
8377
+ children: ReactNode;
8378
+ }) => react_jsx_runtime0.JSX.Element;
8379
+ Body: ({
8380
+ style,
8381
+ className,
8382
+ children
8383
+ }: {
8384
+ style?: CSSProperties;
8385
+ className?: string;
8386
+ children: ReactNode;
8387
+ }) => react_jsx_runtime0.JSX.Element;
8388
+ Footer: ({
8389
+ style,
8390
+ className,
8391
+ children
8392
+ }: {
8393
+ style?: CSSProperties;
8394
+ className?: string;
8395
+ children: ReactNode;
8396
+ }) => react_jsx_runtime0.JSX.Element;
8397
+ Actions: ({
8398
+ style,
8399
+ className,
8400
+ children
8401
+ }: {
8402
+ style?: CSSProperties;
8403
+ className?: string;
8404
+ children: ReactNode;
8405
+ }) => react_jsx_runtime0.JSX.Element;
8406
+ };
8399
8407
  //#endregion
8400
- //#region src/components/ds-number-input/ds-number-input.types.d.ts
8401
- interface DsNumberInputProps {
8408
+ //#region src/components/ds-dropdown-menu/ds-dropdown-menu.types.d.ts
8409
+ /**
8410
+ * Base positioning type
8411
+ */
8412
+ type BasePositioning = NonNullable<Menu.RootProps['positioning']>;
8413
+ /**
8414
+ * Positioning options for dropdown menu
8415
+ */
8416
+ type DsDropdownMenuPositioning = Pick<BasePositioning, 'placement' | 'gutter' | 'sameWidth' | 'getAnchorRect'>;
8417
+ /**
8418
+ * DEPRECATED: Legacy dropdown menu option configuration
8419
+ * Use compound component pattern instead
8420
+ * @deprecated
8421
+ */
8422
+ interface DsDropdownMenuOptionLegacy {
8402
8423
  /**
8403
- * Unique identifier for the input field
8424
+ * Display label for the menu option
8404
8425
  */
8405
- id?: string;
8426
+ label: string;
8406
8427
  /**
8407
- * The ref to the input field
8428
+ * Optional icon to display
8408
8429
  */
8409
- ref?: React.Ref<HTMLInputElement>;
8430
+ icon?: IconType;
8410
8431
  /**
8411
- * The name of the input field
8432
+ * Whether this option is disabled
8412
8433
  */
8413
- name?: string;
8434
+ disabled?: boolean;
8414
8435
  /**
8415
- * The size of the input field
8416
- * @default default
8436
+ * Click handler for the option
8417
8437
  */
8418
- size?: 'small' | 'default';
8438
+ onClick?: (e: MouseEvent<HTMLElement>) => void;
8419
8439
  /**
8420
- * Event handler called when the input field loses focus
8421
- *
8422
- * @param event
8440
+ * Optional value for selection tracking
8423
8441
  */
8424
- onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
8442
+ value?: string;
8443
+ }
8444
+ /**
8445
+ * DEPRECATED: Legacy props for DsDropdownMenuLegacy component
8446
+ * Use compound component pattern instead
8447
+ * @deprecated
8448
+ */
8449
+ interface DsDropdownMenuLegacyProps {
8425
8450
  /**
8426
- * Callback when the value changes (native input onChange event)
8427
- * This is provided for compatibility but onValueChange is preferred
8451
+ * The options to be displayed in the dropdown menu
8428
8452
  */
8429
- onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
8453
+ options: DsDropdownMenuOptionLegacy[];
8430
8454
  /**
8431
- * Value change event handler (provides just the number value)
8432
- * This is the preferred way to handle value changes
8455
+ * Optional children to be rendered inside the component
8456
+ * Typically used for the trigger element
8433
8457
  */
8434
- onValueChange?: (value: number) => void;
8458
+ children?: ReactNode | undefined;
8435
8459
  /**
8436
- * Additional CSS class names
8460
+ * The gap between the trigger and dropdown content in pixels
8461
+ * @default 0
8437
8462
  */
8438
- className?: string;
8463
+ contentGap?: number;
8439
8464
  /**
8440
- * Additional styles to apply to the component
8465
+ * Additional CSS class names
8441
8466
  */
8442
- style?: React.CSSProperties;
8467
+ className?: string;
8443
8468
  /**
8444
- * The placeholder text
8469
+ * Optional inline styles to apply to the component
8445
8470
  */
8446
- placeholder?: string;
8471
+ style?: CSSProperties;
8447
8472
  /**
8448
- * Whether the number input is disabled
8473
+ * The alignment of the dropdown content
8474
+ * @default 'center'
8449
8475
  */
8450
- disabled?: boolean;
8476
+ align?: 'start' | 'center' | 'end';
8451
8477
  /**
8452
- * The minimum value of the number input
8478
+ * The side of the dropdown content
8479
+ * @default 'bottom'
8453
8480
  */
8454
- min?: number | undefined;
8481
+ side?: 'top' | 'right' | 'bottom' | 'left';
8455
8482
  /**
8456
- * The maximum value of the number input
8457
- * @default Number.MAX_SAFE_INTEGER
8483
+ * Whether to render in place instead of using portals
8484
+ * @default false
8458
8485
  */
8459
- max?: number | undefined;
8486
+ disablePortal?: boolean;
8460
8487
  /**
8461
- * The amount to increment or decrement the value by
8462
- * @default 1
8488
+ * Whether to disable the search functionality
8489
+ * @default false
8463
8490
  */
8464
- step?: number | undefined;
8491
+ disableSearch?: boolean;
8465
8492
  /**
8466
- * The controlled value of the input
8493
+ * Currently selected value (for selection tracking)
8467
8494
  */
8468
- value?: number | undefined;
8495
+ selected?: string;
8469
8496
  /**
8470
- * The initial value of the input when rendered.
8471
- * Use when you don't need to control the value of the input.
8497
+ * Callback when an option with a value is selected
8472
8498
  */
8473
- defaultValue?: number | undefined;
8499
+ onSelect?: (value: string) => void;
8474
8500
  }
8475
- //#endregion
8476
- //#region src/components/ds-number-input/ds-number-input.d.ts
8477
- declare const DsNumberInput: FC<DsNumberInputProps>;
8478
- //#endregion
8479
- //#region src/components/ds-password-input/ds-password-input.types.d.ts
8480
- interface DsPasswordInputProps {
8481
- /**
8482
- * Unique identifier for the input field
8483
- */
8484
- id?: string;
8501
+ /**
8502
+ * Props for the DsDropdownMenu Root component
8503
+ */
8504
+ interface DsDropdownMenuRootProps {
8485
8505
  /**
8486
- * The ref to the input field
8506
+ * Whether the dropdown is open (controlled mode)
8487
8507
  */
8488
- ref?: React.Ref<HTMLInputElement>;
8508
+ open?: boolean;
8489
8509
  /**
8490
- * The name of the input field
8510
+ * Callback when open state changes
8491
8511
  */
8492
- name?: string;
8512
+ onOpenChange?: (open: boolean) => void;
8493
8513
  /**
8494
- * The size of the input field
8495
- * @default default
8514
+ * Callback when an item is selected
8496
8515
  */
8497
- size?: 'small' | 'default';
8516
+ onSelect?: (value: string) => void;
8498
8517
  /**
8499
- * Event handler called when the input field loses focus
8500
- *
8501
- * @param event
8518
+ * Callback when the highlighted item changes
8502
8519
  */
8503
- onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
8520
+ onHighlightChange?: (value: string | null) => void;
8504
8521
  /**
8505
- * Callback when the value changes (native input onChange event)
8506
- * This is provided for compatibility but onValueChange is preferred
8522
+ * Positioning options for the dropdown
8507
8523
  */
8508
- onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
8524
+ positioning?: DsDropdownMenuPositioning;
8509
8525
  /**
8510
- * Value change event handler (provides just the string value)
8511
- * This is the preferred way to handle value changes
8526
+ * Prevents the menu from closing when any item is selected
8527
+ * @default false
8512
8528
  */
8513
- onValueChange?: (value: string) => void;
8529
+ preventCloseOnSelect?: boolean;
8514
8530
  /**
8515
- * Additional CSS class names
8531
+ * Root content
8516
8532
  */
8517
- className?: string;
8533
+ children?: ReactNode;
8534
+ }
8535
+ /**
8536
+ * Props for the DsDropdownMenu Trigger component
8537
+ */
8538
+ type DsDropdownMenuTriggerProps = Menu.TriggerProps;
8539
+ /**
8540
+ * Props for the DsDropdownMenu Content component
8541
+ */
8542
+ interface DsDropdownMenuContentProps extends Pick<Menu.ContentProps, 'className' | 'style' | 'children'> {
8518
8543
  /**
8519
- * Additional styles to apply to the component
8544
+ * Whether to render in place instead of using portals
8545
+ * @default false
8520
8546
  */
8521
- style?: React.CSSProperties;
8547
+ disablePortal?: boolean;
8548
+ }
8549
+ /**
8550
+ * Props for the DsDropdownMenu Item component
8551
+ */
8552
+ interface DsDropdownMenuItemProps extends Pick<Menu.ItemProps, 'disabled' | 'asChild' | 'className' | 'style' | 'onSelect' | 'onClick' | 'value' | 'children'> {
8522
8553
  /**
8523
- * The placeholder text
8554
+ * Whether the item is selected (applies selected styling)
8524
8555
  */
8525
- placeholder?: string;
8556
+ selected?: boolean;
8557
+ }
8558
+ /**
8559
+ * Props for the DsDropdownMenu ItemIndicator component
8560
+ */
8561
+ interface DsDropdownMenuItemIndicatorProps {
8526
8562
  /**
8527
- * The current value (for controlled usage)
8563
+ * Custom content to render as the indicator (defaults to check icon)
8528
8564
  */
8529
- value?: string;
8565
+ children?: ReactNode;
8530
8566
  /**
8531
- * The initial value of the input when rendered.
8532
- * Use when you don't need to control the value of the input.
8567
+ * Optional CSS class name
8533
8568
  */
8534
- defaultValue?: string;
8569
+ className?: string;
8535
8570
  /**
8536
- * Whether the password input is disabled
8571
+ * Optional inline styles
8537
8572
  */
8538
- disabled?: boolean;
8573
+ style?: CSSProperties;
8539
8574
  }
8540
- //#endregion
8541
- //#region src/components/ds-password-input/ds-password-input.d.ts
8542
- declare const DsPasswordInput: FC<DsPasswordInputProps>;
8543
- //#endregion
8544
- //#region src/components/ds-textarea/ds-textarea.types.d.ts
8545
- interface DsTextareaProps {
8546
- /**
8547
- * Unique identifier for the textarea element
8548
- */
8549
- id?: string;
8575
+ /**
8576
+ * Props for the DsDropdownMenu Header component
8577
+ */
8578
+ interface DsDropdownMenuHeaderProps {
8550
8579
  /**
8551
- * The ref to the textarea element
8580
+ * The header content (typically a search input or filter controls)
8552
8581
  */
8553
- ref?: React.Ref<HTMLTextAreaElement>;
8582
+ children: ReactNode;
8554
8583
  /**
8555
- * The name of the textarea
8584
+ * Optional CSS class name
8556
8585
  */
8557
- name?: string;
8586
+ className?: string;
8558
8587
  /**
8559
- * Event handler called when the textarea loses focus
8560
- *
8561
- * @param event
8588
+ * Optional inline styles
8562
8589
  */
8563
- onBlur?: (event: React.FocusEvent<HTMLTextAreaElement>) => void;
8590
+ style?: CSSProperties;
8591
+ }
8592
+ /**
8593
+ * Props for the DsDropdownMenu Actions component
8594
+ */
8595
+ interface DsDropdownMenuActionsProps {
8564
8596
  /**
8565
- * Callback when the value changes
8597
+ * The action buttons or elements
8566
8598
  */
8567
- onChange?: (event: React.ChangeEvent<HTMLTextAreaElement>) => void;
8599
+ children: ReactNode;
8568
8600
  /**
8569
- * Value change event handler (provides just the value)
8601
+ * Optional CSS class name
8570
8602
  */
8571
- onValueChange?: (value: string) => void;
8603
+ className?: string;
8572
8604
  /**
8573
- * Additional CSS class names
8605
+ * Optional inline styles
8574
8606
  */
8575
- className?: string;
8607
+ style?: CSSProperties;
8608
+ }
8609
+ /**
8610
+ * Props for the DsDropdownMenu ItemGroup component
8611
+ */
8612
+ interface DsDropdownMenuItemGroupProps extends Menu.ItemGroupProps {
8576
8613
  /**
8577
- * Additional styles to apply to the component
8614
+ * Whether the group is collapsed
8578
8615
  */
8579
- style?: React.CSSProperties;
8616
+ collapsed?: boolean;
8580
8617
  /**
8581
- * The placeholder text
8618
+ * Callback when collapse state changes
8582
8619
  */
8583
- placeholder?: string;
8620
+ onCollapsedChange?: (collapsed: boolean) => void;
8621
+ }
8622
+ /**
8623
+ * Props for the DsDropdownMenu ItemGroupLabel component
8624
+ */
8625
+ type DsDropdownMenuItemGroupLabelProps = Menu.ItemGroupLabelProps;
8626
+ /**
8627
+ * Props for the DsDropdownMenu ItemGroupContent component
8628
+ */
8629
+ interface DsDropdownMenuItemGroupContentProps {
8584
8630
  /**
8585
- * The current value
8631
+ * The content to show/hide based on collapsed state
8586
8632
  */
8587
- value?: string;
8633
+ children: ReactNode;
8588
8634
  /**
8589
- * The initial value of the input when rendered.
8590
- * Use when you don't need to control the value of the input.
8635
+ * Optional CSS class name
8591
8636
  */
8592
- defaultValue?: string;
8637
+ className?: string;
8593
8638
  /**
8594
- * Whether the textarea is disabled
8639
+ * Optional inline styles
8595
8640
  */
8596
- disabled?: boolean;
8641
+ style?: CSSProperties;
8642
+ }
8643
+ /**
8644
+ * Props for the DsDropdownMenu Separator component
8645
+ */
8646
+ type DsDropdownMenuSeparatorProps = Menu.SeparatorProps;
8647
+ /**
8648
+ * Props for the DsDropdownMenu TriggerItem component (for nested submenus)
8649
+ */
8650
+ type DsDropdownMenuTriggerItemProps = Menu.TriggerItemProps;
8651
+ //#endregion
8652
+ //#region src/components/ds-dropdown-menu/ds-dropdown-menu.d.ts
8653
+ /**
8654
+ * DEPRECATED: Legacy DsDropdownMenu component with options array
8655
+ * Use compound component pattern instead
8656
+ * @deprecated
8657
+ */
8658
+ declare const DsDropdownMenuLegacy: React.FC<DsDropdownMenuLegacyProps>;
8659
+ /**
8660
+ * Design system DsDropdownMenu component
8661
+ *
8662
+ * @example
8663
+ * <DsDropdownMenu.Root>
8664
+ * <DsDropdownMenu.Trigger>
8665
+ * <button>Open</button>
8666
+ * </DsDropdownMenu.Trigger>
8667
+ * <DsDropdownMenu.Content>
8668
+ * <DsDropdownMenu.Header>
8669
+ * <DsTextInput placeholder="Search..." />
8670
+ * </DsDropdownMenu.Header>
8671
+ * <DsDropdownMenu.Item value="item1">
8672
+ * Item 1
8673
+ * <DsDropdownMenu.ItemIndicator />
8674
+ * </DsDropdownMenu.Item>
8675
+ * <DsDropdownMenu.ItemGroup>
8676
+ * <DsDropdownMenu.ItemGroupLabel>Group Name</DsDropdownMenu.ItemGroupLabel>
8677
+ * <DsDropdownMenu.ItemGroupContent>
8678
+ * <DsDropdownMenu.Item value="item2">Item 2</DsDropdownMenu.Item>
8679
+ * </DsDropdownMenu.ItemGroupContent>
8680
+ * </DsDropdownMenu.ItemGroup>
8681
+ * <DsDropdownMenu.Separator />
8682
+ * <DsDropdownMenu.Actions>
8683
+ * <DsButton>Cancel</DsButton>
8684
+ * <DsButton>Apply</DsButton>
8685
+ * </DsDropdownMenu.Actions>
8686
+ * </DsDropdownMenu.Content>
8687
+ * </DsDropdownMenu.Root>
8688
+ */
8689
+ declare const DsDropdownMenu: {
8690
+ Root: React.FC<DsDropdownMenuRootProps>;
8691
+ Trigger: React.FC<Menu.TriggerProps>;
8692
+ Content: React.FC<DsDropdownMenuContentProps>;
8693
+ Item: React.FC<DsDropdownMenuItemProps>;
8694
+ ItemIndicator: React.FC<DsDropdownMenuItemIndicatorProps>;
8695
+ TriggerItem: React.FC<Menu.TriggerItemProps>;
8696
+ Header: React.FC<DsDropdownMenuHeaderProps>;
8697
+ Actions: React.FC<DsDropdownMenuActionsProps>;
8698
+ ItemGroup: React.FC<DsDropdownMenuItemGroupProps>;
8699
+ ItemGroupLabel: React.FC<Menu.ItemGroupLabelProps>;
8700
+ ItemGroupContent: React.FC<DsDropdownMenuItemGroupContentProps>;
8701
+ Separator: React.FC<Menu.SeparatorProps>;
8702
+ };
8703
+ //#endregion
8704
+ //#region src/components/ds-expandable-text-input/ds-expandable-text-input.types.d.ts
8705
+ interface DsExpandableTextInputProps extends Omit<DsTextInputProps, 'tabIndex' | 'slots'> {
8597
8706
  /**
8598
- * The number of visible text lines
8707
+ * The icon to display inside the expandable input trigger button
8599
8708
  */
8600
- rows?: number;
8709
+ icon: IconType;
8601
8710
  /**
8602
- * The minimum number of characters
8711
+ * Callback fired when the clear action is triggered
8603
8712
  */
8604
- minLength?: number;
8713
+ onClear?: () => void;
8605
8714
  /**
8606
- * The maximum number of characters
8715
+ * Callback fired when the expanded state changes
8607
8716
  */
8608
- maxLength?: number;
8717
+ onExpandChange?: (expanded: boolean) => void;
8609
8718
  }
8610
8719
  //#endregion
8611
- //#region src/components/ds-textarea/ds-textarea.d.ts
8612
- declare const DsTextarea: React.FC<DsTextareaProps>;
8720
+ //#region src/components/ds-expandable-text-input/ds-expandable-text-input.d.ts
8721
+ declare function DsExpandableTextInput({
8722
+ onClear,
8723
+ onExpandChange,
8724
+ icon,
8725
+ size,
8726
+ ...props
8727
+ }: DsExpandableTextInputProps): react_jsx_runtime0.JSX.Element;
8613
8728
  //#endregion
8614
- //#region src/components/ds-select/ds-select.types.d.ts
8615
- type SelectSize = 'default' | 'small';
8616
- interface DsSelectOption {
8729
+ //#region src/components/ds-file-upload/ds-file-upload-api.types.d.ts
8730
+ type FileError = FileUploadFileError;
8731
+ type UploadFileStatus = 'pending' | 'uploading' | 'interrupted' | 'completed' | 'error' | 'cancelled';
8732
+ type FileMetadata = Record<string, unknown>;
8733
+ interface UploadedFile extends File {
8734
+ id: string;
8735
+ progress: number;
8736
+ status: UploadFileStatus;
8737
+ errors?: FileError[];
8738
+ originalFile: File;
8739
+ }
8740
+ interface FileUploadOptions {
8741
+ file: File;
8742
+ fileId: string;
8743
+ metadata?: FileMetadata;
8744
+ onProgress?: (progress: number) => void;
8745
+ signal?: AbortSignal;
8746
+ }
8747
+ interface FileUploadResult {
8748
+ url: string;
8749
+ metadata?: FileMetadata;
8750
+ }
8751
+ /**
8752
+ * File upload adapter interface
8753
+ * The upload method should:
8754
+ * - resolve with FileUploadResult on success
8755
+ * - reject with RetryableFileUploadError for transient failures
8756
+ * - reject with FatalFileUploadError for permanent failures
8757
+ */
8758
+ interface FileUploadAdapter {
8759
+ upload: (options: FileUploadOptions) => FileUploadResult | Promise<FileUploadResult>;
8760
+ cancel?: (fileId: string) => void | Promise<void>;
8761
+ delete?: (fileId: string) => void | Promise<void>;
8762
+ }
8763
+ //#endregion
8764
+ //#region src/components/ds-file-upload/types/accept-types.d.ts
8765
+ /**
8766
+ * File extension with leading dot
8767
+ * @example '.pdf', '.jpg', '.csv'
8768
+ */
8769
+ type FileExtension = `.${string}`;
8770
+ /**
8771
+ * Accepted file type configuration
8772
+ * - Use string shorthand for common MIME types (uses built-in extensions map)
8773
+ * - Use object form to override or provide custom extensions
8774
+ */
8775
+ type AcceptedFileType = FileUploadFileMimeType | {
8776
+ mimeType: FileUploadFileMimeType;
8777
+ extensions: [FileExtension, ...FileExtension[]];
8778
+ };
8779
+ //#endregion
8780
+ //#region src/components/ds-file-upload/components/file-upload/file-upload.types.d.ts
8781
+ interface FileUploadProps {
8617
8782
  /**
8618
- * Label to display in the select
8783
+ * Error text displayed when validation fails
8619
8784
  */
8620
- label: string;
8785
+ errorText?: string;
8621
8786
  /**
8622
- * Value to return when the option is selected
8787
+ * Text displayed in the dropzone area
8623
8788
  */
8624
- value: SelectOptionValue;
8789
+ dropzoneText?: string;
8625
8790
  /**
8626
- * Optional icon to display next to the label
8791
+ * Text for the upload trigger button
8627
8792
  */
8628
- icon?: IconName;
8629
- }
8630
- type SelectOptionValue = string;
8631
- type DsSelectProps = {
8793
+ triggerText?: string;
8632
8794
  /**
8633
- * Unique identifier for the select component
8795
+ * Whether to hide upload progress
8796
+ * @default false
8634
8797
  */
8635
- id?: string;
8798
+ hideProgress?: boolean;
8636
8799
  /**
8637
- * Options to display in the select dropdown
8800
+ * Whether to hide the info text (file types, size limits, etc.)
8801
+ * @default false
8638
8802
  */
8639
- options: DsSelectOption[];
8803
+ hideInfoText?: boolean;
8640
8804
  /**
8641
- * Additional styles to apply to the icon
8805
+ * Whether to disable drag and drop functionality
8806
+ * @default false
8642
8807
  */
8643
- style?: React.CSSProperties;
8808
+ disableDrop?: boolean;
8644
8809
  /**
8645
- * Additional CSS class names
8810
+ * The maximum number of files that can be uploaded
8646
8811
  */
8647
- className?: string;
8812
+ maxFiles?: number;
8648
8813
  /**
8649
- * Event handler called when the select loses focus
8650
- *
8651
- * @param event
8814
+ * Maximum file size in bytes
8815
+ * @default 25MB
8652
8816
  */
8653
- onBlur?: (event: React.FocusEvent) => void;
8817
+ maxFileSize?: number;
8654
8818
  /**
8655
- * Placeholder text to display when no option is selected
8819
+ * Callback when files are accepted
8656
8820
  */
8657
- placeholder?: string;
8821
+ onFileAccept?: (details: FileUploadFileAcceptDetails) => void;
8658
8822
  /**
8659
- * Whether the select is disabled
8823
+ * Callback when files are rejected
8660
8824
  */
8661
- disabled?: boolean;
8825
+ onFileReject?: (details: FileUploadFileRejectDetails) => void;
8662
8826
  /**
8663
- * The size of the select component
8664
- * @default 'default'
8827
+ * Additional CSS class names
8665
8828
  */
8666
- size?: SelectSize;
8829
+ className?: string;
8667
8830
  /**
8668
- * Custom render function for dropdown options.
8669
- * When provided, replaces the default label text inside each dropdown item.
8670
- * The string `label` is still used for search, trigger text, chips, and accessibility.
8831
+ * Additional styles
8671
8832
  */
8672
- renderOption?: (option: DsSelectOption) => ReactNode;
8673
- } & ({
8674
- clearable?: undefined | false;
8675
- onClear?: never;
8676
- } | {
8677
- clearable: true;
8678
- onClear?: () => void;
8679
- }) & ({
8680
- multiple?: undefined | false;
8681
- value: SelectOptionValue;
8682
- onValueChange?: (value: SelectOptionValue) => void;
8833
+ style?: CSSProperties;
8683
8834
  /**
8684
- * Custom render function for the selected value in the trigger.
8685
- * When provided, replaces the default label text inside the trigger button.
8686
- * Only called when there is a selection; otherwise the placeholder is shown.
8835
+ * The file types that are accepted
8836
+ * Use shorthand for common MIME types (extensions provided automatically)
8837
+ * or explicit form for custom types
8838
+ * @example ['application/pdf', 'image/png']
8839
+ * @example ['application/pdf', { mimeType: 'application/x-custom', extensions: ['.custom'] }]
8687
8840
  */
8688
- renderValue?: (selectedOption: DsSelectOption) => ReactNode;
8689
- } | {
8690
- multiple: true;
8691
- value: SelectOptionValue[];
8692
- onValueChange?: (value: SelectOptionValue[]) => void;
8841
+ accept?: AcceptedFileType[];
8842
+ /**
8843
+ * File states to display (managed externally)
8844
+ */
8845
+ files?: UploadedFile[];
8693
8846
  /**
8694
- * Custom render function for the selected value in the trigger.
8695
- * When provided, replaces the default label text inside the trigger button.
8696
- * Only called when there is a selection; otherwise the placeholder is shown.
8847
+ * Callback when files are removed
8697
8848
  */
8698
- renderValue?: (selectedOptions: DsSelectOption[]) => ReactNode;
8699
- });
8700
- //#endregion
8701
- //#region src/components/ds-select/ds-select.d.ts
8702
- declare const DsSelect: ({
8703
- id,
8704
- options: userOptions,
8705
- value,
8706
- style,
8707
- size,
8708
- clearable,
8709
- onClear,
8710
- onBlur,
8711
- className,
8712
- placeholder,
8713
- disabled,
8714
- renderOption,
8715
- ...multiselectProps
8716
- }: DsSelectProps) => react_jsx_runtime0.JSX.Element;
8717
- //#endregion
8718
- //#region src/components/ds-form-control/ds-form-control.types.d.ts
8719
- declare const controlStatuses: readonly ["info", "success", "error", "warning"];
8720
- type ControlStatus = (typeof controlStatuses)[number];
8721
- interface DsFormControlProps extends React.PropsWithChildren {
8849
+ onFileRemove?: (fileId: string) => void;
8722
8850
  /**
8723
- * Unique identifier for the control
8851
+ * Callback when files are deleted
8724
8852
  */
8725
- id?: string;
8853
+ onFileDelete?: (fileId: string) => void;
8726
8854
  /**
8727
- * Visual status
8855
+ * Callback when files upload is canceled
8728
8856
  */
8729
- status?: ControlStatus;
8857
+ onFileCancel?: (fileId: string) => void;
8730
8858
  /**
8731
- * Label text
8859
+ * Callback when files upload is retried
8732
8860
  */
8733
- label: string;
8861
+ onFileRetry?: (fileId: string) => void;
8734
8862
  /**
8735
- * Marks the field as required
8863
+ * Controlled accepted files
8736
8864
  */
8737
- required?: boolean;
8738
- slots?: {
8739
- /**
8740
- * Adornment to display at the end of the label
8741
- */
8742
- endAdornment?: React.ReactNode;
8743
- };
8865
+ acceptedFiles?: File[];
8744
8866
  /**
8745
- * Message under the control
8867
+ * Whether the file upload is disabled
8746
8868
  */
8747
- message?: string;
8869
+ disabled?: boolean;
8748
8870
  /**
8749
- * Icon shown next to message
8871
+ * Whether the file upload layout is compact (inline)
8750
8872
  */
8751
- messageIcon?: IconType;
8873
+ compact?: boolean;
8874
+ }
8875
+ //#endregion
8876
+ //#region src/components/ds-file-upload/components/file-upload/file-upload.d.ts
8877
+ /**
8878
+ * Design system base File Upload component
8879
+ * Used in conjunction with the useFileUpload hook
8880
+ */
8881
+ declare const FileUpload: React.FC<FileUploadProps>;
8882
+ //#endregion
8883
+ //#region src/components/ds-file-upload/ds-file-upload.types.d.ts
8884
+ interface DsFileUploadProps extends Omit<FileUploadProps, 'files' | 'acceptedFiles' | 'onFileAccept' | 'onFileReject' | 'onFileRemove' | 'onFileDelete' | 'onFileCancel' | 'onFileRetry' | 'uploadProgress'> {
8885
+ /** Upload adapter implementation */
8886
+ adapter: FileUploadAdapter;
8752
8887
  /**
8753
- * Additional CSS class names
8888
+ * Whether to start upload automatically when files are added
8889
+ * @default true
8754
8890
  */
8755
- className?: string;
8891
+ autoUpload?: boolean;
8892
+ /** Maximum number of concurrent uploads */
8893
+ maxConcurrent?: number;
8894
+ /** Additional metadata to attach to uploads */
8895
+ metadata?: FileMetadata;
8896
+ /** Called when a file upload completes successfully */
8897
+ onFileUploadComplete?: (fileId: string, result: FileUploadResult) => void;
8898
+ /** Called when a file upload fails */
8899
+ onFileUploadError?: (fileId: string, error: string) => void;
8900
+ /** Called when files are added (before upload) */
8901
+ onFilesAdded?: (files: File[]) => void;
8902
+ /** Called when a file is removed */
8903
+ onFileRemoved?: (fileId: string) => void;
8904
+ /** Called when a file is deleted */
8905
+ onFileDeleted?: (fileId: string) => void;
8906
+ /** Called when a file upload is canceled */
8907
+ onFileUploadCanceled?: (fileId: string) => void;
8908
+ /** Called when a file upload is retried */
8909
+ onFileUploadRetried?: (fileId: string) => void;
8910
+ /** Called when all file uploads are complete */
8911
+ onAllFileUploadsComplete?: () => void;
8912
+ }
8913
+ //#endregion
8914
+ //#region src/components/ds-file-upload/ds-file-upload.d.ts
8915
+ /**
8916
+ * Design system File Upload component (with state management)
8917
+ */
8918
+ declare const DsFileUpload: React.FC<DsFileUploadProps>;
8919
+ //#endregion
8920
+ //#region src/components/ds-file-upload/hooks/use-file-upload.d.ts
8921
+ interface UseFileUploadConfig {
8922
+ adapter: FileUploadAdapter;
8923
+ autoUpload?: boolean;
8924
+ maxConcurrent?: number;
8925
+ maxFiles?: number;
8926
+ metadata?: FileMetadata;
8927
+ onFileUploadComplete?: (fileId: string, result: FileUploadResult) => void;
8928
+ onFileUploadError?: (fileId: string, error: string) => void;
8929
+ onAllFileUploadsComplete?: () => void;
8930
+ }
8931
+ interface UseFileUploadUserCallbacks {
8932
+ onFilesAdded?: (files: File[]) => void;
8933
+ onFileRemoved?: (fileId: string) => void;
8934
+ onFileDeleted?: (fileId: string) => void;
8935
+ onFileUploadCanceled?: (fileId: string) => void;
8936
+ onFileUploadRetried?: (fileId: string) => void;
8937
+ }
8938
+ interface UseFileUploadReturn {
8939
+ files: UploadedFile[];
8940
+ acceptedFiles: UploadedFile[];
8941
+ addFiles: (newFiles: File[]) => UploadedFile[];
8942
+ addRejectedFiles: (filesWithErrors: {
8943
+ file: File;
8944
+ errors: FileError[];
8945
+ }[]) => void;
8946
+ removeFile: (fileId: string) => void;
8947
+ deleteFile: (fileId: string) => Promise<void>;
8948
+ uploadFile: (fileId: string) => Promise<void>;
8949
+ uploadAll: () => Promise<void>;
8950
+ cancelUpload: (fileId: string) => Promise<void>;
8951
+ retryUpload: (fileId: string) => Promise<void>;
8952
+ clearFiles: () => void;
8756
8953
  /**
8757
- * Additional styles to apply to the component
8954
+ * Get props for FileUpload component with callback composition
8955
+ * @param userCallbacks Optional user callbacks to compose with internal logic
8956
+ * @returns Props ready to spread onto FileUpload component
8758
8957
  */
8759
- style?: React.CSSProperties;
8958
+ getProps: (userCallbacks?: UseFileUploadUserCallbacks) => Pick<FileUploadProps, 'files' | 'acceptedFiles' | 'onFileAccept' | 'onFileReject' | 'onFileRemove' | 'onFileDelete' | 'onFileCancel' | 'onFileRetry'>;
8760
8959
  }
8761
- interface DsFormControlDescriptionProps {
8960
+ /**
8961
+ * File upload state management hook
8962
+ */
8963
+ declare function useFileUpload({
8964
+ adapter,
8965
+ autoUpload,
8966
+ maxConcurrent,
8967
+ maxFiles,
8968
+ metadata,
8969
+ onFileUploadComplete,
8970
+ onFileUploadError,
8971
+ onAllFileUploadsComplete
8972
+ }: UseFileUploadConfig): UseFileUploadReturn;
8973
+ //#endregion
8974
+ //#region src/components/ds-file-upload/errors/file-upload-errors.d.ts
8975
+ /**
8976
+ * Base class for file upload errors
8977
+ */
8978
+ declare abstract class FileUploadError extends Error {
8979
+ abstract readonly isRetryable: boolean;
8980
+ constructor(message: string);
8981
+ }
8982
+ /**
8983
+ * Retryable file upload error - indicates the upload can be retried
8984
+ * Examples: network errors, timeouts, temporary server errors (503), user cancellation
8985
+ */
8986
+ declare class RetryableFileUploadError extends FileUploadError {
8987
+ readonly isRetryable = true;
8988
+ }
8989
+ /**
8990
+ * Fatal file upload error - indicates the upload should not be retried
8991
+ * Examples: file type not allowed, file too large, invalid credentials, malformed response
8992
+ */
8993
+ declare class FatalFileUploadError extends FileUploadError {
8994
+ readonly isRetryable = false;
8995
+ }
8996
+ //#endregion
8997
+ //#region src/components/ds-filter-status-icon/ds-filter-status-icon.types.d.ts
8998
+ declare const filterStatuses: readonly ["running", "warning", "failed", "paused"];
8999
+ type FilterStatus = (typeof filterStatuses)[number];
9000
+ interface DsFilterStatusIconProps {
8762
9001
  /**
8763
- * The description content
9002
+ * The filter status type
8764
9003
  */
8765
- children: React.ReactNode;
9004
+ status: FilterStatus;
9005
+ /**
9006
+ * Whether the status icon is active or non-active
9007
+ * @default true
9008
+ */
9009
+ active?: boolean;
9010
+ /**
9011
+ * Icon size
9012
+ * @default 'small'
9013
+ */
9014
+ size?: IconSize;
8766
9015
  /**
8767
9016
  * Additional CSS class names
8768
9017
  */
8769
9018
  className?: string;
9019
+ /**
9020
+ * Additional styles to apply to the component
9021
+ */
9022
+ style?: CSSProperties;
8770
9023
  }
8771
9024
  //#endregion
8772
- //#region src/components/ds-form-control/ds-form-control.d.ts
8773
- declare const DsFormControl: {
8774
- ({
8775
- id,
8776
- status,
8777
- label,
8778
- required,
8779
- slots,
8780
- message,
8781
- messageIcon,
8782
- className,
8783
- style,
8784
- children
8785
- }: DsFormControlProps): react_jsx_runtime0.JSX.Element;
8786
- TextInput: (props: DsTextInputProps) => react_jsx_runtime0.JSX.Element;
8787
- NumberInput: (props: DsNumberInputProps) => react_jsx_runtime0.JSX.Element;
8788
- PasswordInput: (props: DsPasswordInputProps) => react_jsx_runtime0.JSX.Element;
8789
- DateInput: (props: DsDateInputProps) => react_jsx_runtime0.JSX.Element;
8790
- Textarea: (props: DsTextareaProps) => react_jsx_runtime0.JSX.Element;
8791
- Select: (props: DsSelectProps) => react_jsx_runtime0.JSX.Element;
8792
- Description: React.FC<DsFormControlDescriptionProps>;
8793
- };
9025
+ //#region src/components/ds-filter-status-icon/ds-filter-status-icon.d.ts
9026
+ /**
9027
+ * Design system Filter Status Icon component
9028
+ * Status icons for toggle filter buttons to help users quickly distinguish states
9029
+ */
9030
+ declare const DsFilterStatusIcon: ({
9031
+ status,
9032
+ active,
9033
+ size,
9034
+ className,
9035
+ style
9036
+ }: DsFilterStatusIconProps) => react_jsx_runtime0.JSX.Element;
8794
9037
  //#endregion
8795
9038
  //#region src/components/ds-grid/ds-grid.types.d.ts
8796
9039
  interface DsGridProps {
@@ -8848,6 +9091,36 @@ declare const DsGrid: React.FC<DsGridProps>;
8848
9091
  */
8849
9092
  declare const DsGridItem: React.FC<DsGridItemProps>;
8850
9093
  //#endregion
9094
+ //#region src/components/ds-key-value-pair/ds-key-value-pair.types.d.ts
9095
+ declare const dsKeyValuePairOrientations: readonly ["vertical", "horizontal"];
9096
+ type DsKeyValuePairOrientation = (typeof dsKeyValuePairOrientations)[number];
9097
+ interface DsKeyValuePairProps {
9098
+ keyLabel: ReactNode;
9099
+ /** Shown when the editor is not active (read-only or not hovered). */
9100
+ value?: ReactNode;
9101
+ /** @default false */
9102
+ readOnly?: boolean;
9103
+ /** @default 'vertical' */
9104
+ orientation?: DsKeyValuePairOrientation;
9105
+ /** Editor content revealed on hover/focus when not read-only. */
9106
+ editInput?: ReactNode;
9107
+ ref?: Ref<HTMLDivElement>;
9108
+ className?: string;
9109
+ style?: CSSProperties;
9110
+ }
9111
+ //#endregion
9112
+ //#region src/components/ds-key-value-pair/ds-key-value-pair.d.ts
9113
+ declare const DsKeyValuePair: ({
9114
+ ref,
9115
+ keyLabel,
9116
+ value,
9117
+ readOnly,
9118
+ orientation,
9119
+ editInput,
9120
+ className,
9121
+ style
9122
+ }: DsKeyValuePairProps) => react_jsx_runtime0.JSX.Element;
9123
+ //#endregion
8851
9124
  //#region src/components/ds-loader/ds-loader.types.d.ts
8852
9125
  declare const loaderVariants: readonly ["spinner", "pulsing"];
8853
9126
  type LoaderVariant = (typeof loaderVariants)[number];
@@ -11165,6 +11438,12 @@ interface DsTooltipProps {
11165
11438
  * The content to be rendered inside the tooltip
11166
11439
  */
11167
11440
  children: ReactNode;
11441
+ slotProps?: {
11442
+ content?: {
11443
+ className?: string;
11444
+ style?: CSSProperties;
11445
+ };
11446
+ };
11168
11447
  }
11169
11448
  //#endregion
11170
11449
  //#region src/components/ds-tooltip/ds-tooltip.d.ts
@@ -11430,5 +11709,5 @@ declare const DsVerticalTabs: {
11430
11709
  }: DsVerticalTabsContentProps) => react_jsx_runtime0.JSX.Element;
11431
11710
  };
11432
11711
  //#endregion
11433
- export { AcceptedFileType, Action, AlertBannerVariant, AnyAdapter, CheckboxFilterAdapterConfig, CheckboxFilterItem, CheckboxFilterProps, CheckboxVariant, ChipItem, ChipSize, Color, ColumnFilterState, CommentAuthor, CommentData, CommentIndicatorType, CommentMessage, CommentsFilterState, ControlStatus, CustomIconComponent, CustomIconName, DsAlertBanner, DsAlertBannerProps, DsAutocomplete, DsAutocompleteOption, DsAutocompleteProps, DsAvatar, DsAvatarGroup, DsAvatarGroupProps, DsAvatarProps, DsAvatarSize, DsAvatarType, DsBreadcrumb, DsBreadcrumbItem, DsBreadcrumbProps, DsButton, DsButtonUnifiedProps, DsCard, DsCardBodyProps, DsCardFooterProps, DsCardHeaderProps, DsCardRootProps, DsCardSize, DsCheckbox, DsCheckboxProps, DsChip, DsChipGroup, DsChipGroupProps, DsChipProps, DsCommentBubble, DsCommentBubbleProps, DsCommentCard, DsCommentCardProps, DsCommentIndicator, DsCommentIndicatorProps, DsCommentThread, DsCommentThreadProps, DsCommentsDrawer, DsCommentsDrawerProps, DsConfirmation, DsConfirmationProps, DsDataTableProps, DsDateInput, DsDateInputProps, DsDialog, DsDialogProps, DsDivider, DsDividerProps, DsDrawer, DsDrawerColumns, DsDrawerPosition, DsDrawerProps, DsDropdownMenu, DsDropdownMenuActionsProps, DsDropdownMenuContentProps, DsDropdownMenuHeaderProps, DsDropdownMenuItemGroupContentProps, DsDropdownMenuItemGroupLabelProps, DsDropdownMenuItemGroupProps, DsDropdownMenuItemIndicatorProps, DsDropdownMenuItemProps, DsDropdownMenuLegacy, DsDropdownMenuLegacyProps, DsDropdownMenuOptionLegacy, DsDropdownMenuPositioning, DsDropdownMenuRootProps, DsDropdownMenuSeparatorProps, DsDropdownMenuTriggerItemProps, DsDropdownMenuTriggerProps, DsExpandableTextInput, DsExpandableTextInputProps, DsFileUpload, DsFileUploadProps, DsFilterStatusIcon, DsFilterStatusIconProps, DsFormControl, DsFormControlDescriptionProps, DsFormControlProps, DsGrid, DsGridItem, DsGridItemProps, DsGridProps, DsIcon, DsIconProps, DsLoader, DsLoaderProps, DsModal, DsModalColumns, DsModalProps, DsNextStepButton, DsNextStepButtonProps, DsNumberInput, DsNumberInputProps, DsPanel, DsPanelCollapseButtonProps, DsPanelProps, DsPanelVariant, DsPasswordInput, DsPasswordInputProps, DsPopover, DsPopoverProps, DsProgressArc, DsProgressArcProps, DsProgressDonut, DsProgressDonutProps, DsProgressLinear, DsProgressLinearProps, DsRadioGroup, DsRadioGroupItemProps, DsRadioGroupLegacy, DsRadioGroupLegacyProps, DsRadioGroupRootProps, DsRadioOptionLegacy, DsSegmentGroup, DsSegmentGroupItemProps, DsSegmentGroupItemTextProps, DsSegmentGroupRootProps, DsSegmentGroupSize, DsSelect, DsSelectOption, DsSelectProps, _default as DsSkeleton, DsSkeletonBaseProps, DsSkeletonCircle, DsSkeletonCircleProps, DsSkeletonRect, DsSkeletonRectProps, DsSkeletonText, DsSkeletonTextProps, DsSmartTabProps, DsSmartTabs, DsSmartTabsProps, DsSpinner, DsSpinnerProps, DsStatus, DsStatusBadge, DsStatusBadgeProps, DsStep, DsStepContent, DsStepContentProps, DsStepProps, DsStepper, DsStepperOrientation, DsStepperProps, DsStepperVariant, DsSystemStatus, DsSystemStatusProps, DsTable, DsTableApi, DsTableRowSize, DsTabs, DsTabsContentProps, DsTabsListProps, DsTabsMenuActionItem, DsTabsOrientation, DsTabsProps, DsTabsSize, DsTabsTabProps, DsTag, DsTagFilter, DsTagFilterProps, DsTagProps, DsTextInput, DsTextInputProps, DsTextarea, DsTextareaProps, DsThreadItem, DsThreadItemProps, DsToastContextType, DsToastProps, DsToastProvider, DsToastProviderProps, DsToggle, DsToggleProps, DsTooltip, DsTooltipProps, DsTree, DsTreeBranchContentProps, DsTreeBranchControlProps, DsTreeBranchIndentGuideProps, DsTreeBranchIndicatorProps, DsTreeBranchProps, DsTreeBranchTextProps, DsTreeItemActionProps, DsTreeItemIndicatorProps, DsTreeItemProps, DsTreeItemTextProps, DsTreeNode, DsTreeNodeCheckboxProps, DsTreeRootProps, DsTreeSize, DsTreeTreeProps, DsTypography, DsTypographyProps, DsVerticalTabs, DsVerticalTabsContentProps, DsVerticalTabsListProps, DsVerticalTabsRootProps, DsVerticalTabsTabProps, DualRangeFilterAdapterConfig, DualRangeFilterValue, FatalFileUploadError, FileExtension, FileUpload, FileUploadAdapter, FileUploadError, FileUploadOptions, FileUploadResult, FilterAdapter, FilterAdapterConfig, FilterNavItem, FilterState, FilterStatus, FilterTag, IconName, IconSize, IconType, IconVariant, LoaderVariant, MaterialIconName, ProgressArcSize, ProgressArcVariant, ProgressDonutSize, ProgressDonutVariant, ProgressLinearSize, ProgressLinearVariant, RangeFilterProps, RangeFilterValue, RangeValue, RetryableFileUploadError, RowAction, ScrollParams, SecondaryRowAction, SelectSize, SemanticVariant, SkeletonColorVariant, SkeletonRadiusVariant, SpinnerSize, StatusBadgeSize, SystemStatus, TagFilterItem, TagSize, TagVariant, TextInputSize, ToastVariant, ToggleSize, UseFileUploadReturn, UseTableFiltersOptions, UseTableFiltersResult, alertBannerVariants, cardSizes, checkboxVariants, colors, controlStatuses, createCheckboxFilterAdapter, createDsTreeCollection, createDualRangeFilterAdapter, createFilterAdapter, customIcons, dsTreeSizes, filterStatuses, iconSizes, iconVariants, isCustomIcon, loaderVariants, progressArcSizes, progressArcVariants, progressDonutSizes, progressDonutVariants, progressLinearSizes, progressLinearVariants, skeletonColorVariants, skeletonRadiusVariants, spinnerSizes, systemStatuses, tagSizes, tagVariants, textInputSizes, useFileUpload, useTableFilters, useToaster };
11712
+ export { AcceptedFileType, Action, AlertBannerVariant, AnyAdapter, CheckboxFilterAdapterConfig, CheckboxFilterItem, CheckboxFilterProps, CheckboxVariant, ChipItem, ChipSize, Color, ColumnFilterState, CommentAuthor, CommentData, CommentIndicatorType, CommentMessage, CommentsFilterState, ControlStatus, CustomIconComponent, CustomIconName, DateRangeFormControlSlotProps, DateRangePickerOrientation, DateRangeValue, DsAlertBanner, DsAlertBannerProps, DsAutocomplete, DsAutocompleteOption, DsAutocompleteProps, DsAvatar, DsAvatarGroup, DsAvatarGroupProps, DsAvatarProps, DsAvatarSize, DsAvatarType, DsBreadcrumb, DsBreadcrumbItem, DsBreadcrumbProps, DsButton, DsButtonUnifiedProps, DsCard, DsCardBodyProps, DsCardFooterProps, DsCardHeaderProps, DsCardRootProps, DsCardSize, DsCheckbox, DsCheckboxProps, DsChip, DsChipGroup, DsChipGroupProps, DsChipProps, DsCommentBubble, DsCommentBubbleProps, DsCommentCard, DsCommentCardProps, DsCommentIndicator, DsCommentIndicatorProps, DsCommentThread, DsCommentThreadProps, DsCommentsDrawer, DsCommentsDrawerProps, DsConfirmation, DsConfirmationProps, DsDataTableProps, DsDateInput, DsDateInputProps, DsDatePicker, DsDatePickerLocale, DsDatePickerProps, DsDatePickerSlotProps, DsDateRangePicker, DsDateRangePickerLocale, DsDateRangePickerProps, DsDateRangePickerSlotProps, DsDialog, DsDialogProps, DsDivider, DsDividerProps, DsDrawer, DsDrawerColumns, DsDrawerPosition, DsDrawerProps, DsDropdownMenu, DsDropdownMenuActionsProps, DsDropdownMenuContentProps, DsDropdownMenuHeaderProps, DsDropdownMenuItemGroupContentProps, DsDropdownMenuItemGroupLabelProps, DsDropdownMenuItemGroupProps, DsDropdownMenuItemIndicatorProps, DsDropdownMenuItemProps, DsDropdownMenuLegacy, DsDropdownMenuLegacyProps, DsDropdownMenuOptionLegacy, DsDropdownMenuPositioning, DsDropdownMenuRootProps, DsDropdownMenuSeparatorProps, DsDropdownMenuTriggerItemProps, DsDropdownMenuTriggerProps, DsExpandableTextInput, DsExpandableTextInputProps, DsFileUpload, DsFileUploadProps, DsFilterStatusIcon, DsFilterStatusIconProps, DsFormControl, DsFormControlDescriptionProps, DsFormControlProps, DsGrid, DsGridItem, DsGridItemProps, DsGridProps, DsIcon, DsIconProps, DsKeyValuePair, DsKeyValuePairOrientation, DsKeyValuePairProps, DsLoader, DsLoaderProps, DsModal, DsModalColumns, DsModalProps, DsNextStepButton, DsNextStepButtonProps, DsNumberInput, DsNumberInputProps, DsPanel, DsPanelCollapseButtonProps, DsPanelProps, DsPanelVariant, DsPasswordInput, DsPasswordInputProps, DsPopover, DsPopoverProps, DsProgressArc, DsProgressArcProps, DsProgressDonut, DsProgressDonutProps, DsProgressLinear, DsProgressLinearProps, DsRadioGroup, DsRadioGroupItemProps, DsRadioGroupLegacy, DsRadioGroupLegacyProps, DsRadioGroupRootProps, DsRadioOptionLegacy, DsSegmentGroup, DsSegmentGroupItemProps, DsSegmentGroupItemTextProps, DsSegmentGroupRootProps, DsSegmentGroupSize, DsSelect, DsSelectOption, DsSelectProps, _default as DsSkeleton, DsSkeletonBaseProps, DsSkeletonCircle, DsSkeletonCircleProps, DsSkeletonRect, DsSkeletonRectProps, DsSkeletonText, DsSkeletonTextProps, DsSmartTabProps, DsSmartTabs, DsSmartTabsProps, DsSpinner, DsSpinnerProps, DsStatus, DsStatusBadge, DsStatusBadgeProps, DsStep, DsStepContent, DsStepContentProps, DsStepProps, DsStepper, DsStepperOrientation, DsStepperProps, DsStepperVariant, DsSystemStatus, DsSystemStatusProps, DsTable, DsTableApi, DsTableRowSize, DsTabs, DsTabsContentProps, DsTabsListProps, DsTabsMenuActionItem, DsTabsOrientation, DsTabsProps, DsTabsSize, DsTabsTabProps, DsTag, DsTagFilter, DsTagFilterProps, DsTagProps, DsTextInput, DsTextInputProps, DsTextarea, DsTextareaProps, DsThreadItem, DsThreadItemProps, DsTimePicker, DsTimePickerLocale, DsTimePickerProps, DsTimePickerSlotProps, DsToastContextType, DsToastProps, DsToastProvider, DsToastProviderProps, DsToggle, DsToggleProps, DsTooltip, DsTooltipProps, DsTree, DsTreeBranchContentProps, DsTreeBranchControlProps, DsTreeBranchIndentGuideProps, DsTreeBranchIndicatorProps, DsTreeBranchProps, DsTreeBranchTextProps, DsTreeItemActionProps, DsTreeItemIndicatorProps, DsTreeItemProps, DsTreeItemTextProps, DsTreeNode, DsTreeNodeCheckboxProps, DsTreeRootProps, DsTreeSize, DsTreeTreeProps, DsTypography, DsTypographyProps, DsVerticalTabs, DsVerticalTabsContentProps, DsVerticalTabsListProps, DsVerticalTabsRootProps, DsVerticalTabsTabProps, DualRangeFilterAdapterConfig, DualRangeFilterValue, FatalFileUploadError, FileExtension, FileUpload, FileUploadAdapter, FileUploadError, FileUploadOptions, FileUploadResult, FilterAdapter, FilterAdapterConfig, FilterNavItem, FilterState, FilterStatus, FilterTag, IconName, IconSize, IconType, IconVariant, LoaderVariant, MaterialIconName, ProgressArcSize, ProgressArcVariant, ProgressDonutSize, ProgressDonutVariant, ProgressLinearSize, ProgressLinearVariant, RangeFilterProps, RangeFilterValue, RangeValue, RetryableFileUploadError, RowAction, ScrollParams, SecondaryRowAction, SelectSize, SemanticVariant, SkeletonColorVariant, SkeletonRadiusVariant, SpinnerSize, StatusBadgeSize, SystemStatus, TagFilterItem, TagSize, TagVariant, TextInputSize, ToastVariant, ToggleSize, UploadedFile, UseFileUploadReturn, UseTableFiltersOptions, UseTableFiltersResult, alertBannerVariants, cardSizes, checkboxVariants, colors, controlStatuses, createCheckboxFilterAdapter, createDsTreeCollection, createDualRangeFilterAdapter, createFilterAdapter, customIcons, dsKeyValuePairOrientations, dsTreeSizes, filterStatuses, formatTime, iconSizes, iconVariants, isCustomIcon, loaderVariants, progressArcSizes, progressArcVariants, progressDonutSizes, progressDonutVariants, progressLinearSizes, progressLinearVariants, skeletonColorVariants, skeletonRadiusVariants, spinnerSizes, systemStatuses, tagSizes, tagVariants, textInputSizes, useFileUpload, useTableFilters, useToaster };
11434
11713
  //# sourceMappingURL=index.d.cts.map