@ssa-ui-kit/core 2.33.0 → 3.1.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 (222) hide show
  1. package/dist/components/AccordionGroup/Accordion.d.ts +37 -0
  2. package/dist/components/AccordionGroup/AccordionContent.d.ts +48 -0
  3. package/dist/components/AccordionGroup/AccordionContext.d.ts +76 -2
  4. package/dist/components/AccordionGroup/AccordionGroup.d.ts +56 -0
  5. package/dist/components/AccordionGroup/AccordionTitle.d.ts +41 -0
  6. package/dist/components/AccordionGroup/types.d.ts +199 -1
  7. package/dist/components/Avatar/Avatar.d.ts +33 -0
  8. package/dist/components/Button/Button.d.ts +61 -0
  9. package/dist/components/Button/fixtures.d.ts +52 -31
  10. package/dist/components/Button/styles.d.ts +7 -12
  11. package/dist/components/Button/types.d.ts +98 -4
  12. package/dist/components/Charts/BarGaugeChart/components/BarGaugeChartHeader.d.ts +1 -1
  13. package/dist/components/Charts/BarLineComplexChart/BarLineComplexChartView.d.ts +2 -2
  14. package/dist/components/Charts/BarLineComplexChart/types.d.ts +2 -2
  15. package/dist/components/Charts/BigNumberChart/BigNumberChart.d.ts +4 -2
  16. package/dist/components/Charts/BigNumberChart/components/BigNumberChartHeader.d.ts +1 -1
  17. package/dist/components/Charts/BigNumberChart/components/TrendLine.d.ts +8 -3
  18. package/dist/components/Charts/BigNumberChart/components/TrendLineTooltip.d.ts +8 -5
  19. package/dist/components/Charts/GaugeChart/components/GaugeChartBase.d.ts +3 -1
  20. package/dist/components/Charts/GaugeChart/components/GaugeChartHeader.d.ts +1 -1
  21. package/dist/components/Charts/PieChart/PieChartLegendMarker.d.ts +1 -1
  22. package/dist/components/Charts/PieChart/styles.d.ts +1 -1
  23. package/dist/components/Charts/PieChart/types.d.ts +1 -1
  24. package/dist/components/Charts/RadarChart/RadarChart.d.ts +1 -1
  25. package/dist/components/Charts/RadarChart/components/RadarChartHeader.d.ts +1 -1
  26. package/dist/components/Charts/TreeMapChart/TreeMapChart.d.ts +1 -1
  27. package/dist/components/Charts/TreeMapChart/TreeMapChartHeader.d.ts +1 -1
  28. package/dist/components/Charts/index.d.ts +1 -0
  29. package/dist/components/Charts/utils/nivoReact19Compat.d.ts +18 -0
  30. package/dist/components/Checkbox/Checkbox.d.ts +84 -0
  31. package/dist/components/Checkbox/CheckboxBase.d.ts +1 -1
  32. package/dist/components/Checkbox/styles.d.ts +2 -2
  33. package/dist/components/Checkbox/types.d.ts +104 -3
  34. package/dist/components/Chip/Chip.d.ts +70 -0
  35. package/dist/components/Chip/constants.d.ts +1 -1
  36. package/dist/components/Chip/helpers.d.ts +6 -0
  37. package/dist/components/Chip/types.d.ts +129 -1
  38. package/dist/components/CollapsibleNavBar/CollapsibleNavBar.d.ts +1 -1
  39. package/dist/components/CollapsibleNavBar/CollapsibleNavBarContext.d.ts +2 -2
  40. package/dist/components/CollapsibleNavBar/components/TriggerIcon.d.ts +4 -2
  41. package/dist/components/CollapsibleNavBar/types.d.ts +9 -2
  42. package/dist/components/ColorPicker/components/CopyButton.d.ts +1 -1
  43. package/dist/components/DatePicker/constants.d.ts +22 -0
  44. package/dist/components/DatePicker/hooks/useDatePicker.d.ts +7 -5
  45. package/dist/components/DatePicker/index.d.ts +1 -0
  46. package/dist/components/DatePicker/styles.d.ts +3 -2
  47. package/dist/components/DatePicker/types.d.ts +10 -2
  48. package/dist/components/DatePicker/utils/dates.d.ts +2 -2
  49. package/dist/components/DateRangePicker/DateRangePicker.d.ts +1 -1
  50. package/dist/components/DateRangePicker/DateRangePickerFormBridge.d.ts +46 -0
  51. package/dist/components/DateRangePicker/components/DatesListWrapper.d.ts +3 -2
  52. package/dist/components/DateRangePicker/constants.d.ts +1 -0
  53. package/dist/components/DateRangePicker/hooks/useDateRangePicker.d.ts +22 -17
  54. package/dist/components/DateRangePicker/index.d.ts +3 -0
  55. package/dist/components/DateRangePicker/styles.d.ts +6 -4
  56. package/dist/components/DateRangePicker/types.d.ts +24 -7
  57. package/dist/components/DateRangePicker/utils/dates.d.ts +2 -2
  58. package/dist/components/Drawer/index.d.ts +2 -1
  59. package/dist/components/Dropdown/Dropdown.d.ts +88 -0
  60. package/dist/components/Dropdown/types.d.ts +102 -1
  61. package/dist/components/DropdownOption/DropdownOption.d.ts +2 -0
  62. package/dist/components/DropdownOptions/DropdownOptions.d.ts +31 -0
  63. package/dist/components/DropdownOptions/types.d.ts +22 -0
  64. package/dist/components/DropdownToggle/DropdownToggle.d.ts +3 -2
  65. package/dist/components/DropdownToggle/types.d.ts +5 -3
  66. package/dist/components/Field/FieldControl.d.ts +62 -1
  67. package/dist/components/Field/FieldDescription.d.ts +33 -0
  68. package/dist/components/Field/FieldError.d.ts +36 -0
  69. package/dist/components/Field/FieldLabel.d.ts +37 -0
  70. package/dist/components/Field/FieldProvider.d.ts +19 -1
  71. package/dist/components/Field/FieldRoot.d.ts +90 -0
  72. package/dist/components/Field/FieldSuccess.d.ts +34 -0
  73. package/dist/components/Field/index.d.ts +4 -0
  74. package/dist/components/Filters/FilterBlockWrapper.d.ts +3 -2
  75. package/dist/components/Filters/FiltersContext.d.ts +4 -4
  76. package/dist/components/Filters/hooks/useVisibility.d.ts +2 -2
  77. package/dist/components/FullscreenModeContext.d.ts +1 -4
  78. package/dist/components/Icon/icons/Assessment.d.ts +1 -1
  79. package/dist/components/Icon/icons/Award.d.ts +3 -0
  80. package/dist/components/Icon/icons/Bench.d.ts +3 -0
  81. package/dist/components/Icon/icons/Briefcase.d.ts +3 -0
  82. package/dist/components/Icon/icons/Building.d.ts +3 -0
  83. package/dist/components/Icon/icons/CalendarSchedule.d.ts +3 -0
  84. package/dist/components/Icon/icons/Camera.d.ts +3 -0
  85. package/dist/components/Icon/icons/CardText.d.ts +3 -0
  86. package/dist/components/Icon/icons/Case.d.ts +3 -0
  87. package/dist/components/Icon/icons/Comments.d.ts +3 -0
  88. package/dist/components/Icon/icons/Compensation.d.ts +3 -0
  89. package/dist/components/Icon/icons/Contacts.d.ts +3 -0
  90. package/dist/components/Icon/icons/CopyLink.d.ts +3 -0
  91. package/dist/components/Icon/icons/Delete.d.ts +3 -0
  92. package/dist/components/Icon/icons/DiamondRing.d.ts +3 -0
  93. package/dist/components/Icon/icons/Document.d.ts +3 -0
  94. package/dist/components/Icon/icons/Documents.d.ts +3 -0
  95. package/dist/components/Icon/icons/Education.d.ts +3 -0
  96. package/dist/components/Icon/icons/EmployeeProfile.d.ts +3 -0
  97. package/dist/components/Icon/icons/Export.d.ts +3 -0
  98. package/dist/components/Icon/icons/FollowLink.d.ts +3 -0
  99. package/dist/components/Icon/icons/Form.d.ts +3 -0
  100. package/dist/components/Icon/icons/Gender.d.ts +3 -0
  101. package/dist/components/Icon/icons/Gift.d.ts +3 -0
  102. package/dist/components/Icon/icons/Inventory.d.ts +3 -0
  103. package/dist/components/Icon/icons/Link.d.ts +3 -0
  104. package/dist/components/Icon/icons/OfficeChair.d.ts +3 -0
  105. package/dist/components/Icon/icons/OpenBook.d.ts +3 -0
  106. package/dist/components/Icon/icons/Report.d.ts +1 -1
  107. package/dist/components/Icon/icons/Results.d.ts +3 -0
  108. package/dist/components/Icon/icons/Signature.d.ts +3 -0
  109. package/dist/components/Icon/icons/Summery.d.ts +3 -0
  110. package/dist/components/Icon/icons/Team.d.ts +3 -0
  111. package/dist/components/Icon/icons/TechnicalReview.d.ts +3 -0
  112. package/dist/components/Icon/icons/TennisBall.d.ts +3 -0
  113. package/dist/components/Icon/icons/Timeline.d.ts +3 -0
  114. package/dist/components/Icon/icons/UnionCircle.d.ts +3 -0
  115. package/dist/components/Icon/icons/Url.d.ts +3 -0
  116. package/dist/components/Icon/icons/all.d.ts +36 -1
  117. package/dist/components/Icon/icons/iconsList.d.ts +1 -1
  118. package/dist/components/IconButton/IconButton.d.ts +39 -0
  119. package/dist/components/IconButton/index.d.ts +2 -0
  120. package/dist/components/IconButton/styles.d.ts +2 -0
  121. package/dist/components/IconButton/types.d.ts +41 -0
  122. package/dist/components/Indicator/types.d.ts +4 -2
  123. package/dist/components/Input/types.d.ts +157 -0
  124. package/dist/components/JsonSchemaForm/fields/DateRangeField.d.ts +15 -1
  125. package/dist/components/JsonSchemaForm/utils/dateFormats.d.ts +37 -0
  126. package/dist/components/JsonSchemaForm/utils/dateRangeField.d.ts +24 -0
  127. package/dist/components/JsonSchemaForm/utils/index.d.ts +1 -0
  128. package/dist/components/JsonSchemaForm/utils/selectWidget.d.ts +16 -0
  129. package/dist/components/Modal/Modal.d.ts +60 -0
  130. package/dist/components/Modal/types.d.ts +21 -1
  131. package/dist/components/ModalContent/ModalContent.d.ts +42 -1
  132. package/dist/components/ModalDialog/ModalDialog.d.ts +27 -0
  133. package/dist/components/ModalDialog/types.d.ts +18 -0
  134. package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +29 -2
  135. package/dist/components/ModalOpenButton/ModalOpenButton.d.ts +25 -1
  136. package/dist/components/MultipleDropdown/index.d.ts +1 -0
  137. package/dist/components/MultipleDropdown/types.d.ts +74 -0
  138. package/dist/components/NavBar/types.d.ts +1 -1
  139. package/dist/components/NotificationMenu/types.d.ts +3 -3
  140. package/dist/components/Pagination/ArrowButton.d.ts +32 -0
  141. package/dist/components/Pagination/Pagination.d.ts +81 -0
  142. package/dist/components/Pagination/PaginationButtons.d.ts +35 -0
  143. package/dist/components/Pagination/PaginationContext.d.ts +30 -0
  144. package/dist/components/Pagination/WithPagination.d.ts +47 -4
  145. package/dist/components/Pagination/components/RowsPerPageDropdown/RowsPerPageDropdown.d.ts +41 -0
  146. package/dist/components/Pagination/components/RowsPerPageDropdown/types.d.ts +39 -0
  147. package/dist/components/Pagination/styles.d.ts +1 -1
  148. package/dist/components/Pagination/types.d.ts +178 -0
  149. package/dist/components/PersonInfo/styles.d.ts +1 -1
  150. package/dist/components/Popover/Popover.d.ts +120 -0
  151. package/dist/components/Popover/PopoverClose.d.ts +26 -0
  152. package/dist/components/Popover/PopoverContent.d.ts +33 -0
  153. package/dist/components/Popover/PopoverDescription.d.ts +22 -1
  154. package/dist/components/Popover/PopoverHeading.d.ts +22 -1
  155. package/dist/components/Popover/PopoverTrigger.d.ts +30 -0
  156. package/dist/components/Popover/hooks/usePopover.d.ts +21 -0
  157. package/dist/components/Popover/hooks/usePopoverContext.d.ts +23 -0
  158. package/dist/components/Popover/types.d.ts +86 -0
  159. package/dist/components/Radio/Radio.d.ts +69 -1
  160. package/dist/components/Radio/RadioBase.d.ts +1 -1
  161. package/dist/components/Radio/types.d.ts +109 -0
  162. package/dist/components/RadioGroup/RadioGroup.d.ts +1 -1
  163. package/dist/components/RadioGroup/index.d.ts +1 -0
  164. package/dist/components/RadioGroup/types.d.ts +42 -0
  165. package/dist/components/SearchBox/SearchBox.d.ts +60 -0
  166. package/dist/components/SearchBox/SearchBoxInput.d.ts +1 -1
  167. package/dist/components/SearchBox/types.d.ts +46 -0
  168. package/dist/components/Slider/Slider.d.ts +53 -0
  169. package/dist/components/Slider/consts.d.ts +4 -0
  170. package/dist/components/Slider/index.d.ts +4 -0
  171. package/dist/components/Slider/styles.d.ts +90 -0
  172. package/dist/components/Slider/types.d.ts +69 -0
  173. package/dist/components/Switch/Switch.d.ts +66 -1
  174. package/dist/components/Switch/SwitchBase.d.ts +5 -1
  175. package/dist/components/Switch/SwitchContext.d.ts +50 -0
  176. package/dist/components/Switch/types.d.ts +74 -0
  177. package/dist/components/Table/Table.d.ts +74 -0
  178. package/dist/components/TableBody/TableBody.d.ts +55 -0
  179. package/dist/components/TableCell/TableCell.d.ts +56 -4
  180. package/dist/components/TableCell/types.d.ts +33 -0
  181. package/dist/components/TableCellHeader/TableCellHeader.d.ts +63 -2
  182. package/dist/components/TableCellHeader/types.d.ts +28 -0
  183. package/dist/components/TableFilters/TableFilters.d.ts +72 -0
  184. package/dist/components/TableFilters/hooks/useTableData.d.ts +3 -3
  185. package/dist/components/TableFilters/types.d.ts +130 -2
  186. package/dist/components/TableHead/TableHead.d.ts +37 -0
  187. package/dist/components/TableRow/TableRow.d.ts +2 -7
  188. package/dist/components/TableRow/types.d.ts +34 -0
  189. package/dist/components/TextField/TextField.d.ts +76 -0
  190. package/dist/components/TextField/types.d.ts +80 -0
  191. package/dist/components/Textarea/Textarea.d.ts +81 -0
  192. package/dist/components/Textarea/TextareaBase.d.ts +6 -1
  193. package/dist/components/Textarea/types.d.ts +109 -0
  194. package/dist/components/Tooltip/SimpleChartTooltip.d.ts +2 -1
  195. package/dist/components/Tooltip/Tooltip.d.ts +73 -0
  196. package/dist/components/Tooltip/types.d.ts +116 -5
  197. package/dist/components/TooltipContent/TooltipContent.d.ts +45 -0
  198. package/dist/components/TooltipTrigger/TooltipTrigger.d.ts +27 -1
  199. package/dist/components/Typeahead/Typeahead.context.d.ts +10 -4
  200. package/dist/components/Typeahead/Typeahead.d.ts +173 -9
  201. package/dist/components/Typeahead/components/TypeaheadOption.d.ts +1 -1
  202. package/dist/components/Typeahead/styles.d.ts +10 -5
  203. package/dist/components/Typeahead/types.d.ts +191 -1
  204. package/dist/components/Typeahead/useTypeahead.d.ts +13 -5
  205. package/dist/components/Typography/Typography.d.ts +50 -0
  206. package/dist/components/Typography/types.d.ts +67 -0
  207. package/dist/components/UserProfile/UserProfile.d.ts +76 -0
  208. package/dist/components/UserProfile/styles.d.ts +6 -4
  209. package/dist/components/UserProfile/types.d.ts +85 -1
  210. package/dist/components/WidgetCard/Title.d.ts +1 -1
  211. package/dist/components/WidgetCard/WidgetCardBase.d.ts +1 -1
  212. package/dist/components/WithLink.d.ts +1 -1
  213. package/dist/components/Wrapper/Wrapper.d.ts +83 -2
  214. package/dist/components/Wrapper/index.d.ts +1 -0
  215. package/dist/components/index.d.ts +113 -85
  216. package/dist/index.d.ts +1 -0
  217. package/dist/index.js +48942 -19624
  218. package/dist/index.js.map +1 -1
  219. package/dist/types/emotion.d.ts +65 -0
  220. package/dist/utils/react19HocCompat.d.ts +14 -0
  221. package/package.json +42 -33
  222. package/dist/components/Icon/icons/Company.d.ts +0 -3
@@ -1,18 +1,119 @@
1
- import { MutableRefObject, ReactNode } from 'react';
1
+ import { RefObject, ReactNode } from 'react';
2
2
  import { Control, FieldPath, FieldValues, UseFormReturn } from 'react-hook-form';
3
+ /**
4
+ * Props for the Checkbox component
5
+ *
6
+ * A form control that allows users to select one or more options from a set.
7
+ * Supports checked, unchecked, indeterminate, and disabled states. Can be used
8
+ * standalone or integrated with React Hook Form for form validation.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * // Basic checkbox
13
+ * <Checkbox
14
+ * id="terms"
15
+ * text="I agree to the terms"
16
+ * onChange={(checked) => console.log(checked)}
17
+ * />
18
+ * ```
19
+ *
20
+ * @example
21
+ * ```tsx
22
+ * // Checkbox with React Hook Form
23
+ * const { register } = useForm();
24
+ * <Checkbox
25
+ * name="newsletter"
26
+ * text="Subscribe to newsletter"
27
+ * register={register}
28
+ * />
29
+ * ```
30
+ *
31
+ * @example
32
+ * ```tsx
33
+ * // Controlled checkbox
34
+ * const [checked, setChecked] = useState(false);
35
+ * <Checkbox
36
+ * text="Controlled checkbox"
37
+ * externalState={checked}
38
+ * onChange={setChecked}
39
+ * />
40
+ * ```
41
+ */
3
42
  export interface CheckboxProps extends Partial<Pick<UseFormReturn, 'register'>> {
43
+ /**
44
+ * Label text or custom React node to display next to the checkbox
45
+ * Can be a string, number, or any React node
46
+ */
4
47
  text?: ReactNode;
48
+ /**
49
+ * Unique identifier for the checkbox input element
50
+ * If not provided, a unique ID will be auto-generated
51
+ */
5
52
  id?: string;
53
+ /**
54
+ * Callback function called when checkbox state changes
55
+ * Receives the new checked state (boolean) as parameter
56
+ */
6
57
  onChange?: (newState: boolean) => void;
58
+ /**
59
+ * External state control - allows parent component to control checkbox state
60
+ * When provided, the checkbox becomes controlled
61
+ */
7
62
  externalState?: boolean;
63
+ /**
64
+ * Whether the checkbox is disabled
65
+ * Disabled checkboxes cannot be interacted with and appear visually muted
66
+ * @default false
67
+ */
8
68
  isDisabled?: boolean;
69
+ /**
70
+ * Initial checked state when component mounts
71
+ * Only used for uncontrolled checkboxes
72
+ * @default false
73
+ */
9
74
  initialState?: boolean;
75
+ /**
76
+ * Indeterminate state - represents a partially selected state
77
+ * Commonly used in tree structures or "select all" scenarios
78
+ * Visual indicator: shows a minus (-) icon instead of checkmark
79
+ * @default false
80
+ */
10
81
  isIndeterminate?: boolean;
82
+ /**
83
+ * Name attribute for form submission and React Hook Form integration
84
+ * Required when using with React Hook Form
85
+ * @default ''
86
+ */
11
87
  name?: string;
88
+ /**
89
+ * Whether the checkbox is required for form validation
90
+ * @default false
91
+ */
12
92
  isRequired?: boolean;
13
- ref?: MutableRefObject<HTMLInputElement>;
14
- color?: 'green' | 'blue' | 'custom';
93
+ /**
94
+ * Ref object to access the underlying input element
95
+ */
96
+ ref?: RefObject<HTMLInputElement>;
97
+ /**
98
+ * Color variant of the checkbox — controls the checked and focus-state colors.
99
+ * Sourced from `theme.palette`:
100
+ * - `primary` — blue (uses `palette.primary`); resting border is `palette.primary.light`,
101
+ * checked fill is `palette.primary.main`, hover fill is `palette.primary.dark`,
102
+ * disabled box background is `greyFocused40`
103
+ * - `success` — green (uses `palette.success`); resting border is `palette.success.main`,
104
+ * checked fill is `palette.success.main`, hover fill is `palette.success.dark`,
105
+ * disabled box background is `greyFocused40`
106
+ * - `custom` — no built-in color; apply styles via `className` or the `css` prop
107
+ * @default 'primary'
108
+ */
109
+ color?: 'primary' | 'success' | 'custom';
110
+ /**
111
+ * Custom element type to render as (for composition)
112
+ */
15
113
  as?: React.ElementType;
114
+ /**
115
+ * Custom CSS class name
116
+ */
16
117
  className?: string;
17
118
  }
18
119
  export type IFormCheckboxProps<T extends FieldValues> = Omit<CheckboxProps, 'onChange' | 'name'> & {
@@ -1,2 +1,72 @@
1
1
  import { ChipProps } from './types';
2
+ /**
3
+ * Chip - Compact component for tags, labels, and removable items.
4
+ *
5
+ * Colors are driven by `theme.palette` for semantic values, allowing palette
6
+ * overrides in a custom theme to flow through automatically.
7
+ *
8
+ * ### Color / Palette mapping
9
+ * - `default` — neutral: white bg (outlined) / greyLighter bg (filled), uses `theme.colors`
10
+ * - `primary` — blue, uses `theme.palette.primary`
11
+ * - `secondary` — grey, uses `theme.palette.secondary` (dark text)
12
+ * - `success` — green, uses `theme.palette.success`
13
+ * - `error` — red, uses `theme.palette.error`
14
+ * - `warning` — orange, uses `theme.palette.warning`
15
+ *
16
+ * ### Variant / Palette token mapping
17
+ * - `filled` — `palette.main` background, white text (dark for `secondary`)
18
+ * - `outlined` — `palette.light` background, `palette.main` border, `palette.dark` text
19
+ *
20
+ * @category Components
21
+ * @subcategory Display
22
+ *
23
+ * @example
24
+ * ```tsx
25
+ * // Basic chip — default color, filled
26
+ * <Chip label="React" />
27
+ * ```
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * // Removable palette-colored tag
32
+ * <Chip
33
+ * label="TypeScript"
34
+ * onDelete={(e) => removeTag('typescript')}
35
+ * color="primary"
36
+ * />
37
+ * ```
38
+ *
39
+ * @example
40
+ * ```tsx
41
+ * // Outlined chip using palette light/main/dark
42
+ * <Chip
43
+ * label="Filter: Active"
44
+ * icon="filter"
45
+ * onClick={() => openFilterDialog()}
46
+ * variant="outlined"
47
+ * color="secondary"
48
+ * />
49
+ * ```
50
+ *
51
+ * @example
52
+ * ```tsx
53
+ * // Chip with avatar
54
+ * <Chip
55
+ * label="John Doe"
56
+ * avatar={<Avatar size={20} image="/avatar.jpg" />}
57
+ * onDelete={() => removeUser()}
58
+ * />
59
+ * ```
60
+ *
61
+ * @see {@link Avatar} - For user avatar integration
62
+ * @see {@link Icon} - For chip icons
63
+ * @see {@link Tag} - Alternative component for simpler use cases
64
+ *
65
+ * @accessibility
66
+ * - Keyboard navigable (Tab to focus)
67
+ * - Delete with Backspace/Delete keys
68
+ * - Escape to blur
69
+ * - Proper ARIA roles and attributes
70
+ * - Screen reader announcements for actions
71
+ */
2
72
  export declare const Chip: import("react").ForwardRefExoticComponent<ChipProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -5,9 +5,9 @@ export declare const VARIANTS: {
5
5
  export declare const COLORS: {
6
6
  readonly DEFAULT: "default";
7
7
  readonly PRIMARY: "primary";
8
+ readonly SECONDARY: "secondary";
8
9
  readonly SUCCESS: "success";
9
10
  readonly ERROR: "error";
10
- readonly INFO: "info";
11
11
  readonly WARNING: "warning";
12
12
  };
13
13
  export declare const mapSizes: {
@@ -2,8 +2,14 @@ import { Theme } from '@emotion/react';
2
2
  import { ChipProps } from './types';
3
3
  type SemanticColor = Exclude<ChipProps['color'], 'default' | undefined>;
4
4
  type ColorConfig = {
5
+ /** Solid background for filled variant / border + text for outlined */
5
6
  main: string;
7
+ /** Light background for outlined variant */
6
8
  bg: string;
9
+ /** Darkest shade — used as text color in outlined variant */
10
+ dark: string;
11
+ /** When true, filled variant uses dark text instead of white (e.g. light grey bg) */
12
+ darkText?: boolean;
7
13
  };
8
14
  export declare const colorMap: (theme: Theme) => Record<SemanticColor, ColorConfig>;
9
15
  export declare const getVariantColors: (theme: Theme, variant: ChipProps["variant"], color: ChipProps["color"], disabled: boolean) => {
@@ -2,22 +2,150 @@ import { CommonProps } from '../../types/emotion';
2
2
  import { Interpolation, Theme } from '@emotion/react';
3
3
  import { ReactNode, MouseEventHandler } from 'react';
4
4
  import { IconProps } from '../Icon/types';
5
+ /**
6
+ * Visual style variant for Chip component
7
+ * - `filled`: Solid background with text (default)
8
+ * - `outlined`: Transparent background with border
9
+ */
5
10
  export type ChipVariant = 'filled' | 'outlined';
6
- export type ChipColor = 'default' | 'primary' | 'success' | 'error' | 'info' | 'warning';
11
+ /**
12
+ * Color theme for Chip component — aligns with `theme.palette`.
13
+ * - `default`: Neutral: white bg (outlined) / greyLighter bg (filled)
14
+ * - `primary`: Blue — uses `theme.palette.primary`
15
+ * - `secondary`: Grey — uses `theme.palette.secondary`
16
+ * - `success`: Green — uses `theme.palette.success`
17
+ * - `error`: Red — uses `theme.palette.error`
18
+ * - `warning`: Orange — uses `theme.palette.warning`
19
+ */
20
+ export type ChipColor = 'default' | 'primary' | 'secondary' | 'success' | 'error' | 'warning';
21
+ /**
22
+ * Size variant for Chip component
23
+ * - `small`: Compact chip for dense UIs
24
+ * - `medium`: Standard chip size (default)
25
+ * - `large`: Larger chip for emphasis
26
+ */
7
27
  export type ChipSize = 'small' | 'medium' | 'large';
28
+ /**
29
+ * Props for the Chip component
30
+ *
31
+ * A versatile chip component for displaying compact pieces of information, tags,
32
+ * or removable items. Supports icons, avatars, click handlers, and delete actions.
33
+ * Fully accessible with keyboard support and ARIA attributes.
34
+ *
35
+ * @example
36
+ * ```tsx
37
+ * // Basic chip
38
+ * <Chip label="React" />
39
+ * ```
40
+ *
41
+ * @example
42
+ * ```tsx
43
+ * // Chip with icon and delete
44
+ * <Chip
45
+ * label="TypeScript"
46
+ * icon="check"
47
+ * onDelete={(e) => handleRemove(e)}
48
+ * />
49
+ * ```
50
+ *
51
+ * @example
52
+ * ```tsx
53
+ * // Clickable chip with avatar
54
+ * <Chip
55
+ * label="John Doe"
56
+ * avatar={<Avatar size={20} image="/avatar.jpg" />}
57
+ * onClick={() => navigateToProfile()}
58
+ * color="primary"
59
+ * />
60
+ * ```
61
+ *
62
+ * @example
63
+ * ```tsx
64
+ * // Outlined variant with custom color
65
+ * <Chip
66
+ * label="New"
67
+ * variant="outlined"
68
+ * color="success"
69
+ * size="small"
70
+ * />
71
+ * ```
72
+ */
8
73
  export interface ChipProps extends CommonProps {
74
+ /**
75
+ * Main text content of the chip
76
+ * Can be a string, number, or React node
77
+ */
9
78
  label: ReactNode;
79
+ /**
80
+ * Optional title/heading text displayed before the label
81
+ * Useful for chips with additional context
82
+ */
10
83
  title?: ReactNode;
84
+ /**
85
+ * Visual style variant
86
+ * - `filled`: Solid background (default)
87
+ * - `outlined`: Transparent with border
88
+ * @default 'filled'
89
+ */
11
90
  variant?: ChipVariant;
91
+ /**
92
+ * Color theme for the chip. Semantic colors read from `theme.palette`,
93
+ * so palette overrides in a custom theme apply automatically.
94
+ * @default 'default'
95
+ */
12
96
  color?: ChipColor;
97
+ /**
98
+ * Size of the chip
99
+ * @default 'medium'
100
+ */
13
101
  size?: ChipSize;
102
+ /**
103
+ * Whether the chip is disabled
104
+ * Disabled chips cannot be clicked or deleted
105
+ * @default false
106
+ */
14
107
  disabled?: boolean;
108
+ /**
109
+ * Icon name to display before the label
110
+ * Uses the Icon component internally
111
+ * Defaults to 'plus' if showIcon is true and no icon provided
112
+ */
15
113
  icon?: IconProps['name'];
114
+ /**
115
+ * Avatar component or image to display before the label
116
+ * Takes precedence over icon if both are provided
117
+ */
16
118
  avatar?: ReactNode;
119
+ /**
120
+ * Delete button click handler
121
+ * When provided, a delete icon button appears on the chip
122
+ * Keyboard: Delete or Backspace keys trigger deletion
123
+ */
17
124
  onDelete?: MouseEventHandler<HTMLButtonElement>;
125
+ /**
126
+ * Custom icon name for the delete button
127
+ * @default 'cross'
128
+ */
18
129
  deleteIcon?: IconProps['name'];
130
+ /**
131
+ * Whether to show the leading icon
132
+ * If false, no icon will be displayed even if icon prop is provided
133
+ * @default true
134
+ */
19
135
  showIcon?: boolean;
136
+ /**
137
+ * Click handler for the chip
138
+ * Makes the chip clickable/interactive
139
+ */
20
140
  onClick?: MouseEventHandler<HTMLDivElement>;
141
+ /**
142
+ * Explicitly mark chip as clickable
143
+ * Used to enable pointer cursor and keyboard interaction
144
+ * Automatically true if onClick is provided
145
+ */
21
146
  clickable?: boolean;
147
+ /**
148
+ * Custom Emotion CSS styles
149
+ */
22
150
  css?: Interpolation<Theme>;
23
151
  }
@@ -2,4 +2,4 @@ import { CollapsibleNavBarExtendedProps } from './types';
2
2
  /**
3
3
  * UI Component that shows the collapsible navigation bar
4
4
  */
5
- export declare const CollapsibleNavBar: ({ items, renderLogo, theme, subMenuMaxWidth, showIconTooltip, className, useMatchPattern, onChange, }: CollapsibleNavBarExtendedProps) => import("@emotion/react/jsx-runtime").JSX.Element;
5
+ export declare const CollapsibleNavBar: ({ items, renderLogo, theme, subMenuMaxWidth, showIconTooltip, className, useMatchPattern, onChange, exactMatch, }: CollapsibleNavBarExtendedProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -1,7 +1,7 @@
1
1
  import { CollapsibleNavBarExtendedProps } from './types';
2
- type ContextType = Pick<CollapsibleNavBarExtendedProps, 'theme' | 'subMenuMaxWidth' | 'showIconTooltip'>;
2
+ type ContextType = Pick<CollapsibleNavBarExtendedProps, 'theme' | 'subMenuMaxWidth' | 'showIconTooltip' | 'exactMatch'>;
3
3
  export declare const CollapsibleNavBarContext: import("react").Context<ContextType>;
4
- export declare const CollapsibleNavBarProvider: ({ children, theme, subMenuMaxWidth, showIconTooltip, }: {
4
+ export declare const CollapsibleNavBarProvider: ({ children, theme, subMenuMaxWidth, showIconTooltip, exactMatch, }: {
5
5
  children: React.ReactNode;
6
6
  } & ContextType) => import("@emotion/react/jsx-runtime").JSX.Element;
7
7
  export declare const useCollapsibleNavBarContext: () => ContextType;
@@ -1,9 +1,11 @@
1
+ import { CSSObject } from '@emotion/react';
1
2
  import type { MapIconsType, SVGProps } from '../../Icon/types';
2
- export declare const TriggerIcon: ({ iconName, iconSize, className, CustomIcon, }: {
3
+ export declare const TriggerIcon: ({ iconName, iconSize, className, CustomIcon, css: cssProp, }: {
3
4
  iconName: keyof MapIconsType;
4
5
  iconSize?: number;
5
6
  className?: string;
6
7
  CustomIcon?: (props: Omit<SVGProps, "fill"> & {
7
8
  showIconTooltip?: boolean;
8
- }) => JSX.Element;
9
+ }) => React.JSX.Element;
10
+ css?: CSSObject;
9
11
  }) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -1,13 +1,14 @@
1
1
  import { CSSProperties } from 'react';
2
2
  import { PathPattern } from 'react-router-dom';
3
+ import { CSSObject } from '@emotion/react';
3
4
  import { NavBarExtendedGroup, NavBarExtendedItem, NavBarExtendedSubItem } from '../..';
4
5
  export interface CollapsibleNavBarItem extends NavBarExtendedItem {
5
6
  iconSize: number;
6
- css?: React.CSSProperties;
7
+ css?: CSSObject;
7
8
  }
8
9
  export interface CollapsibleNavBarGroup<T extends NavBarExtendedSubItem = NavBarExtendedSubItem> extends NavBarExtendedGroup<T> {
9
10
  iconSize: number;
10
- css?: React.CSSProperties;
11
+ css?: CSSObject;
11
12
  prefix: string;
12
13
  }
13
14
  export interface CollapsibleNavBarExtendedProps<T extends NavBarExtendedSubItem = NavBarExtendedSubItem> {
@@ -19,4 +20,10 @@ export interface CollapsibleNavBarExtendedProps<T extends NavBarExtendedSubItem
19
20
  showIconTooltip?: boolean;
20
21
  useMatchPattern?: (prefix: string) => string | PathPattern<string>;
21
22
  onChange?: (isChecked: boolean) => void;
23
+ /**
24
+ * If true, only exact path matches will be considered active.
25
+ * If false, sub-routes will also be considered active.
26
+ * @default false
27
+ */
28
+ exactMatch?: boolean;
22
29
  }
@@ -1,3 +1,3 @@
1
- export declare const CopyButton: import("@emotion/styled").StyledComponent<import("../../Button/types").ButtonProps & import("react").RefAttributes<HTMLButtonElement> & {
1
+ export declare const CopyButton: import("@emotion/styled").StyledComponent<import("../..").ButtonProps & import("react").RefAttributes<HTMLButtonElement> & {
2
2
  theme?: import("@emotion/react").Theme;
3
3
  }, {}, {}>;
@@ -1,7 +1,29 @@
1
1
  export declare const DEFAULT_MASK_FORMAT = "mm/dd/yyyy";
2
+ export declare const DEFAULT_MONTH_MASK_FORMAT = "mm/yyyy";
3
+ export declare const DEFAULT_YEAR_MASK_FORMAT = "yyyy";
2
4
  export declare const DEFAULT_MASK = "__/__/____";
5
+ export declare const DEFAULT_MONTH_MASK = "__/____";
6
+ export declare const DEFAULT_YEAR_MASK = "____";
3
7
  export declare const MONTHS: string[];
8
+ export declare const VALID_DATE_FORMATS: readonly ["mm/dd/yyyy", "dd/mm/yyyy", "mm/yyyy", "yyyy"];
4
9
  export declare const DATE_MIN = "01/01/1900";
5
10
  export declare const DATE_MAX = "01/01/2150";
11
+ export declare const MONTH_DATE_MIN = "01/1900";
12
+ export declare const MONTH_DATE_MAX = "01/2150";
13
+ export declare const YEAR_DATE_MIN = "1900";
14
+ export declare const YEAR_DATE_MAX = "2150";
6
15
  export declare const OUT_OF_RANGE = "The date is out of the defined range";
7
16
  export declare const INVALID_DATE = "Invalid date";
17
+ export declare const FULL_DATE_LENGTH = 10;
18
+ export declare const FULL_MONTH_DATE_LENGTH = 7;
19
+ export declare const FULL_YEAR_DATE_LENGTH = 4;
20
+ export declare const PICKER_TYPE: {
21
+ readonly DAYS: "days";
22
+ readonly MONTHS: "months";
23
+ readonly YEARS: "years";
24
+ };
25
+ export declare const CALENDAR_TYPE: {
26
+ readonly DAYS: "days";
27
+ readonly MONTHS: "months";
28
+ readonly YEARS: "years";
29
+ };
@@ -1,6 +1,7 @@
1
1
  import { DateTime } from 'luxon';
2
- import { CalendarType, DatePickerProps } from '../types';
3
- export declare const useDatePicker: ({ dateMin, dateMax, name, defaultValue, format, maskOptions, onOpen, onClose, onError, onChange, ...rest }: DatePickerProps) => {
2
+ import { DatePickerProps } from '../types';
3
+ export declare const useDatePicker: ({ dateMin, dateMax, name, defaultValue, format: propFormat, maskOptions, pickerType, onOpen, onClose, onError, onChange, value: externalValue, }: DatePickerProps) => {
4
+ format: import("../../JsonSchemaForm/utils").DateFormat;
4
5
  formatIndexes: {
5
6
  day: number;
6
7
  month: number;
@@ -15,13 +16,14 @@ export declare const useDatePicker: ({ dateMin, dateMax, name, defaultValue, for
15
16
  inputValue: any;
16
17
  calendarViewDateTime: DateTime<boolean> | undefined;
17
18
  maskInputRef: import("react").MutableRefObject<HTMLInputElement>;
18
- calendarType: CalendarType;
19
+ calendarType: import("../../JsonSchemaForm/utils").PickerCalendarType;
19
20
  lastChangedDate: Date | undefined;
20
21
  luxonFormat: string;
21
- safeOnChange: (newDateTime?: DateTime) => void;
22
- setCalendarType: import("react").Dispatch<import("react").SetStateAction<CalendarType>>;
22
+ safeOnChange: (newDT?: DateTime) => void;
23
+ setCalendarType: import("react").Dispatch<import("react").SetStateAction<import("../../JsonSchemaForm/utils").PickerCalendarType>>;
23
24
  setCalendarViewDateTime: import("react").Dispatch<import("react").SetStateAction<DateTime<boolean> | undefined>>;
24
25
  setDateTime: import("react").Dispatch<import("react").SetStateAction<DateTime<boolean> | undefined>>;
25
26
  setIsOpen: import("react").Dispatch<import("react").SetStateAction<boolean>>;
26
27
  handleBlur: import("react").FocusEventHandler<HTMLInputElement>;
28
+ pickerType: import("../types").PickerType;
27
29
  };
@@ -1 +1,2 @@
1
1
  export * from './DatePicker';
2
+ export * from './types';
@@ -2,8 +2,9 @@ export declare const DaysViewCell: import("@emotion/styled").StyledComponent<{
2
2
  theme?: import("@emotion/react").Theme;
3
3
  as?: React.ElementType;
4
4
  } & {
5
- direction?: string;
6
- alignItems?: string;
5
+ direction?: import("../Wrapper").WrapperDirection;
6
+ alignItems?: import("../Wrapper").WrapperAlignItems;
7
+ justifyContent?: import("../Wrapper").WrapperJustifyContent;
7
8
  fade?: boolean;
8
9
  fadeDelay?: number;
9
10
  isVisible?: boolean;
@@ -2,12 +2,18 @@ import { Dispatch, SetStateAction } from 'react';
2
2
  import { useMask } from '@react-input/mask';
3
3
  import { DateTime } from 'luxon';
4
4
  import { InputProps } from '../Input/types';
5
+ import { PICKER_TYPE } from './constants';
6
+ import { RegisterOptions } from 'react-hook-form';
7
+ import type { PickerCalendarType, DateFormat } from '../JsonSchemaForm/utils/dateFormats';
8
+ export type PickerType = (typeof PICKER_TYPE)[keyof typeof PICKER_TYPE];
9
+ export type DatePickerFormat = DateFormat;
5
10
  export type DatePickerProps = {
6
11
  name: string;
7
12
  label?: string;
8
- format?: 'mm/dd/yyyy' | 'dd/mm/yyyy';
13
+ format?: DatePickerFormat;
9
14
  maskOptions?: Parameters<typeof useMask>[0];
10
15
  openCalendarMode?: 'icon' | 'input' | 'both';
16
+ pickerType?: PickerType;
11
17
  inputProps?: Partial<InputProps>;
12
18
  value?: string;
13
19
  defaultValue?: string;
@@ -43,6 +49,7 @@ export type DatePickerProps = {
43
49
  onMonthChange?: (date: Date) => void;
44
50
  onYearChange?: (date: Date) => void;
45
51
  onBlur?: React.FocusEventHandler<HTMLInputElement>;
52
+ validationSchema?: RegisterOptions;
46
53
  };
47
54
  export type DatePickerContextProps = Omit<DatePickerProps, 'dateMin' | 'dateMax'> & {
48
55
  inputRef?: React.ForwardedRef<HTMLInputElement | null>;
@@ -60,10 +67,11 @@ export type DatePickerContextProps = Omit<DatePickerProps, 'dateMin' | 'dateMax'
60
67
  month: number;
61
68
  year: number;
62
69
  };
70
+ pickerType: PickerType;
63
71
  safeOnChange?: (date?: DateTime) => void;
64
72
  setCalendarViewDateTime: Dispatch<SetStateAction<DateTime | undefined>>;
65
73
  setDateTime: Dispatch<SetStateAction<DateTime<boolean> | undefined>>;
66
74
  setIsOpen: Dispatch<SetStateAction<boolean>>;
67
75
  setCalendarType: Dispatch<SetStateAction<CalendarType>>;
68
76
  };
69
- export type CalendarType = 'days' | 'months' | 'years';
77
+ export type CalendarType = PickerCalendarType;
@@ -5,7 +5,7 @@ export declare const getYearsList: (props?: {
5
5
  yearsCount?: number;
6
6
  }) => number[];
7
7
  export declare const processDate: (dateParts: {
8
- month: string;
9
- day: string;
8
+ month?: string;
9
+ day?: string;
10
10
  year: string;
11
11
  }, yearMin: number, yearMax: number) => boolean;
@@ -1,2 +1,2 @@
1
1
  import { DateRangePickerProps } from './types';
2
- export declare const DateRangePicker: ({ format, showCalendarIcon, showStatusArea, rangePickerType, ...rest }: DateRangePickerProps) => import("@emotion/react/jsx-runtime").JSX.Element;
2
+ export declare const DateRangePicker: ({ format, showCalendarIcon, showStatusArea, rangePickerType, showPresentOption, ...rest }: DateRangePickerProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,46 @@
1
+ import type { DateRangePickerProps } from './types';
2
+ import { type DateFormat } from '../JsonSchemaForm/utils/dateFormats';
3
+ /**
4
+ * Special value to represent "Present" (ongoing/no end date) in form data and UI display.
5
+ *
6
+ * WHY THIS EXISTS:
7
+ * - DateRangePicker (standalone) uses `null` for "Present" (semantic, clean API)
8
+ * - Form schemas with type: "string" reject `null` (validation error: "must be string")
9
+ * - This magic string allows validation to pass while preserving the "Present" meaning
10
+ *
11
+ * DATA FLOW:
12
+ * - Form → Bridge: end can be PRESENT_VALUE
13
+ * - Bridge → Picker: PRESENT_VALUE becomes null
14
+ * - Picker → Bridge: null (user clicked "Present") comes back
15
+ * - Bridge → Form: null becomes PRESENT_VALUE for storage
16
+ *
17
+ * USAGE:
18
+ * - Form storage: Used in form data to represent "Present" end date
19
+ * - UI display: Used as display text shown to users when "Present" is selected
20
+ */
21
+ export declare const PRESENT_VALUE = "Present";
22
+ export type DateRangePickerFormBridgeValue = {
23
+ start?: string;
24
+ end?: string | typeof PRESENT_VALUE;
25
+ };
26
+ /**
27
+ * DateRangePickerFormBridge - adapter between form builders and DateRangePicker
28
+ *
29
+ * PURPOSE:
30
+ * - Keeps DateRangePicker "pure": it only ever sees inputFormat and null for "Present"
31
+ * - Converts form value (outputFormat + PRESENT_VALUE string) ↔ picker value (inputFormat + null)
32
+ * - Used by DateRangeField (RJSF); can be used by other form builders
33
+ */
34
+ export type DateRangePickerFormBridgeProps = Omit<DateRangePickerProps, 'defaultValue' | 'value' | 'onChange'> & {
35
+ /** Form value: dates in outputFormat, end can be PRESENT_VALUE for "Present" */
36
+ value?: DateRangePickerFormBridgeValue;
37
+ /** Fallback when value is empty (e.g. from ui:options.defaultValue) */
38
+ defaultValue?: DateRangePickerFormBridgeValue;
39
+ /** Called with form shape: dates in outputFormat, end is PRESENT_VALUE when "Present" */
40
+ onChange?: (value: DateRangePickerFormBridgeValue) => void;
41
+ /** Format used to parse value (form storage), e.g. 'yyyy-MM-dd' */
42
+ outputFormat: string;
43
+ /** Format used for display in the picker, e.g. 'dd/mm/yyyy' */
44
+ inputFormat: DateFormat;
45
+ };
46
+ export declare const DateRangePickerFormBridge: ({ value, defaultValue: defaultValueProp, onChange, outputFormat, inputFormat: inputFormatProp, ...pickerProps }: DateRangePickerFormBridgeProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -2,8 +2,9 @@ export declare const DatesListWrapper: import("@emotion/styled").StyledComponent
2
2
  theme?: import("@emotion/react").Theme;
3
3
  as?: React.ElementType;
4
4
  } & {
5
- direction?: string;
6
- alignItems?: string;
5
+ direction?: import("../../Wrapper").WrapperDirection;
6
+ alignItems?: import("../../Wrapper").WrapperAlignItems;
7
+ justifyContent?: import("../../Wrapper").WrapperJustifyContent;
7
8
  fade?: boolean;
8
9
  fadeDelay?: number;
9
10
  isVisible?: boolean;
@@ -1,4 +1,5 @@
1
1
  export declare const DEFAULT_MASK_FORMAT = "mm/dd/yyyy";
2
+ export declare const DEFAULT_EUROPEAN_MASK_FORMAT = "dd/mm/yyyy";
2
3
  export declare const DEFAULT_MONTH_MASK_FORMAT = "mm/yyyy";
3
4
  export declare const DEFAULT_YEAR_MASK_FORMAT = "yyyy";
4
5
  export declare const DEFAULT_MASK = "__/__/____";