@ssa-ui-kit/core 3.0.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 (54) hide show
  1. package/dist/components/Dropdown/types.d.ts +24 -1
  2. package/dist/components/DropdownOption/DropdownOption.d.ts +2 -0
  3. package/dist/components/DropdownToggle/DropdownToggle.d.ts +2 -1
  4. package/dist/components/DropdownToggle/types.d.ts +5 -3
  5. package/dist/components/Icon/icons/Assessment.d.ts +1 -1
  6. package/dist/components/Icon/icons/Award.d.ts +3 -0
  7. package/dist/components/Icon/icons/Bench.d.ts +3 -0
  8. package/dist/components/Icon/icons/Briefcase.d.ts +3 -0
  9. package/dist/components/Icon/icons/Building.d.ts +3 -0
  10. package/dist/components/Icon/icons/CalendarSchedule.d.ts +3 -0
  11. package/dist/components/Icon/icons/Camera.d.ts +3 -0
  12. package/dist/components/Icon/icons/CardText.d.ts +3 -0
  13. package/dist/components/Icon/icons/Case.d.ts +3 -0
  14. package/dist/components/Icon/icons/Comments.d.ts +3 -0
  15. package/dist/components/Icon/icons/Compensation.d.ts +3 -0
  16. package/dist/components/Icon/icons/Contacts.d.ts +3 -0
  17. package/dist/components/Icon/icons/CopyLink.d.ts +3 -0
  18. package/dist/components/Icon/icons/Delete.d.ts +3 -0
  19. package/dist/components/Icon/icons/DiamondRing.d.ts +3 -0
  20. package/dist/components/Icon/icons/Document.d.ts +3 -0
  21. package/dist/components/Icon/icons/Documents.d.ts +3 -0
  22. package/dist/components/Icon/icons/Education.d.ts +3 -0
  23. package/dist/components/Icon/icons/EmployeeProfile.d.ts +3 -0
  24. package/dist/components/Icon/icons/Export.d.ts +3 -0
  25. package/dist/components/Icon/icons/FollowLink.d.ts +3 -0
  26. package/dist/components/Icon/icons/Form.d.ts +3 -0
  27. package/dist/components/Icon/icons/Gender.d.ts +3 -0
  28. package/dist/components/Icon/icons/Gift.d.ts +3 -0
  29. package/dist/components/Icon/icons/Inventory.d.ts +3 -0
  30. package/dist/components/Icon/icons/Link.d.ts +3 -0
  31. package/dist/components/Icon/icons/OfficeChair.d.ts +3 -0
  32. package/dist/components/Icon/icons/OpenBook.d.ts +3 -0
  33. package/dist/components/Icon/icons/Report.d.ts +1 -1
  34. package/dist/components/Icon/icons/Results.d.ts +3 -0
  35. package/dist/components/Icon/icons/Signature.d.ts +3 -0
  36. package/dist/components/Icon/icons/Summery.d.ts +3 -0
  37. package/dist/components/Icon/icons/Team.d.ts +3 -0
  38. package/dist/components/Icon/icons/TechnicalReview.d.ts +3 -0
  39. package/dist/components/Icon/icons/TennisBall.d.ts +3 -0
  40. package/dist/components/Icon/icons/Timeline.d.ts +3 -0
  41. package/dist/components/Icon/icons/UnionCircle.d.ts +3 -0
  42. package/dist/components/Icon/icons/Url.d.ts +3 -0
  43. package/dist/components/Icon/icons/all.d.ts +36 -1
  44. package/dist/components/Icon/icons/iconsList.d.ts +1 -1
  45. package/dist/components/MultipleDropdown/index.d.ts +1 -0
  46. package/dist/components/MultipleDropdown/types.d.ts +74 -0
  47. package/dist/components/Textarea/TextareaBase.d.ts +6 -1
  48. package/dist/components/Textarea/types.d.ts +14 -0
  49. package/dist/components/Typeahead/styles.d.ts +1 -1
  50. package/dist/index.js +1723 -238
  51. package/dist/index.js.map +1 -1
  52. package/dist/types/emotion.d.ts +3 -1
  53. package/package.json +3 -3
  54. package/dist/components/Icon/icons/Company.d.ts +0 -3
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { Interpolation, Theme } from '@emotion/react';
2
3
  import { DropdownOptionProps } from '../DropdownOptions';
3
4
  import { CommonProps } from '../../types/emotion';
4
5
  import { IconProps } from '../Icon/types';
@@ -78,7 +79,29 @@ export interface DropdownProps<P extends DropdownOptionProps> extends CommonProp
78
79
  /** Props for the wrapper div element */
79
80
  base?: React.HTMLAttributes<HTMLDivElement>;
80
81
  /** Props for the toggle button element (excluding controlled props) */
81
- toggleButton?: Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, ControlledButtonProps>;
82
+ toggleButton?: Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, ControlledButtonProps> & {
83
+ /**
84
+ * Emotion css prop for custom styles on the toggle button.
85
+ * Merged on top of the component's built-in styles, so any rule here
86
+ * overrides the default appearance.
87
+ *
88
+ * @example
89
+ * ```tsx
90
+ * import { css } from '@emotion/react';
91
+ *
92
+ * <Dropdown
93
+ * dropdownProps={{
94
+ * toggleButton: {
95
+ * css: css`background: hotpink; border: none;`,
96
+ * },
97
+ * }}
98
+ * >
99
+ * ...
100
+ * </Dropdown>
101
+ * ```
102
+ */
103
+ css?: Interpolation<Theme>;
104
+ };
82
105
  /** Props for the arrow icon SVG element */
83
106
  toggleButtonArrow?: Omit<IconProps, 'name' | 'size'>;
84
107
  };
@@ -10,6 +10,8 @@ interface DropdownItemProps extends CommonProps {
10
10
  value?: string | number | boolean;
11
11
  label?: string | number;
12
12
  children?: React.ReactNode;
13
+ /** Avatar or icon to display before the option content (e.g. <Avatar size={20} image={url} />) */
14
+ avatar?: React.ReactNode;
13
15
  }
14
16
  declare const DropdownOption: import("@emotion/styled").StyledComponent<{
15
17
  theme?: Theme;
@@ -1,6 +1,7 @@
1
+ import { Theme } from '@emotion/react';
1
2
  import { DropdownToggleProps } from './types';
2
3
  export declare const DropdownToggleBase: import("@emotion/styled").StyledComponent<{
3
- theme?: import("@emotion/react").Theme;
4
+ theme?: Theme;
4
5
  as?: React.ElementType;
5
6
  } & Pick<DropdownToggleProps, "colors" | "disabled" | "isOpen" | "isMultiple" | "selectedCount">, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {}>;
6
7
  declare const DropdownToggle: ({ onClick, onFocus, isOpen, isMultiple, selectedCount, disabled, children, ariaLabelledby, ariaControls, colors, className, ...restProps }: DropdownToggleProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -1,10 +1,12 @@
1
1
  import React from 'react';
2
- import { Theme } from '@emotion/react';
2
+ import { Interpolation, Theme } from '@emotion/react';
3
3
  import { CommonProps } from '../../types/emotion';
4
4
  import { ControlledButtonProps } from '../Dropdown/types';
5
5
  export interface DropdownToggleProps extends CommonProps, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, ControlledButtonProps> {
6
+ /** Emotion css prop forwarded to the underlying styled button */
7
+ css?: Interpolation<Theme>;
6
8
  onClick: (e: React.MouseEvent<HTMLElement>) => void;
7
- onFocus: (e: React.FocusEvent<HTMLButtonElement, Element>) => void;
9
+ onFocus?: (e: React.FocusEvent<HTMLButtonElement, Element>) => void;
8
10
  isOpen: boolean;
9
11
  isMultiple?: boolean;
10
12
  disabled?: boolean;
@@ -17,5 +19,5 @@ export interface DropdownToggleProps extends CommonProps, Omit<React.ButtonHTMLA
17
19
  }
18
20
  export interface MultipleStylesProps {
19
21
  theme: Theme;
20
- selectedCount?: number;
22
+ isOpen?: boolean;
21
23
  }
@@ -1,3 +1,3 @@
1
1
  import { SVGProps } from '../types';
2
2
  export declare const Assessment: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
- export declare const ICON_NAME = "assessment";
3
+ export declare const ICON_NAME = "clipboard-assessment";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Award: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "award";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Bench: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "bench";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Briefcase: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "briefcase";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Building: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "building";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const CalendarSchedule: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "calendar-schedule";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Camera: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "camera";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const CardText: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "card-text";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Case: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "case";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Comments: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "comments";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Compensation: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "compensation";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Contacts: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "contacts";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const CopyLink: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "copy-link";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Delete: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "delete";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const DiamondRing: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "diamond-ring";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Document: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "document";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Documents: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "documents";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Education: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "education";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const EmployeeProfile: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "employee-profile";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Export: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "export";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const FollowLink: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "follow-link";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Form: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "clipboard-form";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Gender: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "gender";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Gift: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "gift";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Inventory: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "inventory";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Link: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "link";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const OfficeChair: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "office-chair";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const OpenBook: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "open-book";
@@ -1,3 +1,3 @@
1
1
  import { SVGProps } from '../types';
2
2
  export declare const Report: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
- export declare const ICON_NAME = "report";
3
+ export declare const ICON_NAME = "clipboard-report";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Results: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "clipboard-result";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Signature: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "signature";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Summery: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "clipboard-summary";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Team: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "team";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const TechnicalReview: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "clipboard-star";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const TennisBall: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "tennis-ball";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Timeline: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "timeline";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const UnionCircle: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "union-circle";
@@ -0,0 +1,3 @@
1
+ import { SVGProps } from '../types';
2
+ export declare const Url: ({ fill, size, tooltip, ...props }: SVGProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const ICON_NAME = "url";
@@ -3,15 +3,21 @@ export * as ArrowDown from './ArrowDown';
3
3
  export * as ArrowUp from './ArrowUp';
4
4
  export * as Assessment from './Assessment';
5
5
  export * as Attention from './Attention';
6
+ export * as Award from './Award';
6
7
  export * as BanUser from './BanUser';
8
+ export * as Bench from './Bench';
7
9
  export * as Bin from './Bin';
8
10
  export * as Calendar from './Calendar';
11
+ export * as CalendarSchedule from './CalendarSchedule';
9
12
  export * as CarrotDown from './CarrotDown';
10
13
  export * as CarrotLeft from './CarrotLeft';
11
14
  export * as CarrotRight from './CarrotRight';
12
15
  export * as CarrotUp from './CarrotUp';
16
+ export * as CardText from './CardText';
17
+ export * as Case from './Case';
13
18
  export * as Certification from './Certification';
14
19
  export * as CertificationExpiring from './CertificationExpiring';
20
+ export * as Camera from './Camera';
15
21
  export * as Change from './Change';
16
22
  export * as Chart from './Chart';
17
23
  export * as Check from './Check';
@@ -22,25 +28,43 @@ export * as Circle from './Circle';
22
28
  export * as Circular from './Circular';
23
29
  export * as Clock from './Clock';
24
30
  export * as Cogwheel from './Cogwheel';
25
- export * as Company from './Company';
31
+ export * as Comments from './Comments';
32
+ export * as Briefcase from './Briefcase';
33
+ export * as Building from './Building';
34
+ export * as Compensation from './Compensation';
26
35
  export * as ConfirmEmail from './ConfirmEmail';
36
+ export * as Contacts from './Contacts';
27
37
  export * as Copy from './Copy';
38
+ export * as CopyLink from './CopyLink';
28
39
  export * as Cross from './Cross';
40
+ export * as Delete from './Delete';
41
+ export * as Document from './Document';
42
+ export * as DiamondRing from './DiamondRing';
29
43
  export * as Diet from './Diet';
44
+ export * as Documents from './Documents';
30
45
  export * as Edit from './Edit';
46
+ export * as Education from './Education';
31
47
  export * as Email from './Email';
32
48
  export * as Employee from './Employee';
49
+ export * as EmployeeProfile from './EmployeeProfile';
33
50
  export * as EmployeeTerminated from './EmployeeTerminated';
34
51
  export * as ExcelDownload from './ExcelDownload';
52
+ export * as Export from './Export';
35
53
  export * as Filter from './Filter';
36
54
  export * as FilterFunnel from './FilterFunnel';
55
+ export * as FollowLink from './FollowLink';
37
56
  export * as FTE from './FTE';
57
+ export * as Form from './Form';
38
58
  export * as Geography from './Geography';
59
+ export * as Gender from './Gender';
60
+ export * as Gift from './Gift';
39
61
  export * as Home from './Home';
40
62
  export * as Import from './Import';
41
63
  export * as Information from './Information';
64
+ export * as Inventory from './Inventory';
42
65
  export * as Invisible from './Invisible';
43
66
  export * as Language from './Language';
67
+ export * as Link from './Link';
44
68
  export * as Lock from './Lock';
45
69
  export * as LogIn from './LogIn';
46
70
  export * as LogOut from './LogOut';
@@ -53,6 +77,8 @@ export * as MinusCircleInverted from './MinusCircleInverted';
53
77
  export * as More from './More';
54
78
  export * as MoreVertical from './MoreVertical';
55
79
  export * as Notification from './Notification';
80
+ export * as OfficeChair from './OfficeChair';
81
+ export * as OpenBook from './OpenBook';
56
82
  export * as Pages from './Pages';
57
83
  export * as Party from './Party';
58
84
  export * as Plus from './Plus';
@@ -62,20 +88,29 @@ export * as ProbationPeriod from './ProbationPeriod';
62
88
  export * as ProfilesChanges from './ProfilesChanges';
63
89
  export * as RadioOn from './RadioOn';
64
90
  export * as Report from './Report';
91
+ export * as Results from './Results';
65
92
  export * as Robot from './Robot';
66
93
  export * as Roles from './Roles';
67
94
  export * as Search from './Search';
68
95
  export * as Seniority from './Seniority';
69
96
  export * as Settings from './Settings';
97
+ export * as Signature from './Signature';
70
98
  export * as Sleep from './Sleep';
71
99
  export * as StaffGrowthCoefficient from './StaffGrowthCoefficient';
72
100
  export * as StaffTurnoverCoefficient from './StaffTurnoverCoefficient';
73
101
  export * as Stats from './Stats';
102
+ export * as Summery from './Summery';
103
+ export * as Team from './Team';
104
+ export * as TechnicalReview from './TechnicalReview';
74
105
  export * as TimeTracking from './TimeTracking';
106
+ export * as Timeline from './Timeline';
107
+ export * as TennisBall from './TennisBall';
75
108
  export * as Trainings from './Trainings';
76
109
  export * as UnArchive from './UnArchive';
77
110
  export * as Union from './Union';
111
+ export * as UnionCircle from './UnionCircle';
78
112
  export * as Unlock from './Unlock';
113
+ export * as Url from './Url';
79
114
  export * as User from './User';
80
115
  export * as Visible from './Visible';
81
116
  export * as Warning from './Warning';
@@ -1 +1 @@
1
- export declare const iconsList: ("visible" | "warning" | "archive" | "search" | "arrow-down" | "arrow-up" | "assessment" | "attention" | "ban-user" | "bin" | "calendar" | "carrot-down" | "carrot-left" | "carrot-right" | "carrot-up" | "certification" | "certification-expiring" | "change" | "chart" | "check" | "check-circle" | "check-circle-inverted" | "children" | "circle" | "circular" | "clock" | "cogwheel" | "company" | "confirm-email" | "copy" | "cross" | "diet" | "edit" | "email" | "employee" | "employee-terminated" | "excel-download" | "filter" | "filter-funnel" | "fte" | "geography" | "home" | "import" | "information" | "invisible" | "language" | "lock" | "log-in" | "log-out" | "maximize" | "measurements" | "message" | "minus" | "minus-circle" | "minus-circle-inverted" | "more" | "more-vertical" | "notification" | "pages" | "party" | "plus" | "plus-circle" | "plus-circle-inverted" | "probation-period" | "profiles-changes" | "radio-on" | "report" | "robot" | "roles" | "seniority" | "settings" | "sleep" | "staff-growth-coefficient" | "staff-turnover-coefficient" | "stats" | "time-tracking" | "trainings" | "unarchive" | "union" | "unlock" | "user")[];
1
+ export declare const iconsList: ("visible" | "warning" | "archive" | "document" | "link" | "search" | "arrow-down" | "arrow-up" | "clipboard-assessment" | "attention" | "award" | "ban-user" | "bench" | "bin" | "calendar" | "calendar-schedule" | "carrot-down" | "carrot-left" | "carrot-right" | "carrot-up" | "card-text" | "case" | "certification" | "certification-expiring" | "camera" | "change" | "chart" | "check" | "check-circle" | "check-circle-inverted" | "children" | "circle" | "circular" | "clock" | "cogwheel" | "comments" | "briefcase" | "building" | "compensation" | "confirm-email" | "contacts" | "copy" | "copy-link" | "cross" | "delete" | "diamond-ring" | "diet" | "documents" | "edit" | "education" | "email" | "employee" | "employee-profile" | "employee-terminated" | "excel-download" | "export" | "filter" | "filter-funnel" | "follow-link" | "fte" | "clipboard-form" | "geography" | "gender" | "gift" | "home" | "import" | "information" | "inventory" | "invisible" | "language" | "lock" | "log-in" | "log-out" | "maximize" | "measurements" | "message" | "minus" | "minus-circle" | "minus-circle-inverted" | "more" | "more-vertical" | "notification" | "office-chair" | "open-book" | "pages" | "party" | "plus" | "plus-circle" | "plus-circle-inverted" | "probation-period" | "profiles-changes" | "radio-on" | "clipboard-report" | "clipboard-result" | "robot" | "roles" | "seniority" | "settings" | "signature" | "sleep" | "staff-growth-coefficient" | "staff-turnover-coefficient" | "stats" | "clipboard-summary" | "team" | "clipboard-star" | "time-tracking" | "timeline" | "tennis-ball" | "trainings" | "unarchive" | "union" | "union-circle" | "unlock" | "url" | "user")[];
@@ -1 +1,2 @@
1
1
  export { default } from './MultipleDropdown';
2
+ export type { DropdownProps, DropdownContextType } from './types';
@@ -1,18 +1,92 @@
1
1
  import { DropdownOptionProps } from '../DropdownOptions/types';
2
+ /**
3
+ * Props for the MultipleDropdown component
4
+ *
5
+ * A dropdown that supports selecting one or more options from a list.
6
+ * In multi-select mode (`isMultiple=true`) options toggle independently and
7
+ * a `+N` badge is shown for overflow. In single-select mode the menu closes
8
+ * after a pick. Forwards its ref to the root container div.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <MultipleDropdown
13
+ * label="Fruits"
14
+ * selectedItems={[{ value: 'apple' }]}
15
+ * onChange={(value, isSelected) => handleChange(value, isSelected)}
16
+ * >
17
+ * <DropdownOption value="apple">Apple</DropdownOption>
18
+ * <DropdownOption value="banana">Banana</DropdownOption>
19
+ * </MultipleDropdown>
20
+ * ```
21
+ */
2
22
  export type DropdownProps<P extends DropdownOptionProps> = {
23
+ /**
24
+ * List of currently selected items
25
+ * Each entry must match one of the DropdownOption values
26
+ * @default []
27
+ */
3
28
  selectedItems?: P[];
29
+ /**
30
+ * Enables multi-select mode — each option toggles independently.
31
+ * When `false` the dropdown behaves like a single-select and closes on pick.
32
+ * @default true
33
+ */
4
34
  isMultiple?: boolean;
35
+ /**
36
+ * Disables the dropdown, preventing any user interaction
37
+ * @default false
38
+ */
5
39
  isDisabled?: boolean;
40
+ /**
41
+ * Placeholder shown in the toggle button when no item is selected
42
+ * @default 'Select something'
43
+ */
6
44
  placeholder?: string;
45
+ /**
46
+ * When `true` the placeholder value is included in the displayed list.
47
+ * Set to `false` to hide it and show only the badge count.
48
+ * @default true
49
+ */
7
50
  showPlaceholder?: boolean;
51
+ /**
52
+ * DropdownOption components to render as selectable items
53
+ */
8
54
  children?: React.ReactNode;
55
+ /**
56
+ * Custom CSS class name forwarded to the toggle button.
57
+ * Useful for styling via `styled(MultipleDropdown)`.
58
+ */
9
59
  className?: string;
60
+ /**
61
+ * Controlled open state — when provided, overrides internal open/close logic
62
+ */
10
63
  isOpen?: boolean;
64
+ /**
65
+ * Label prefix shown in the toggle button before the selected value(s)
66
+ * e.g. `label="Strategy"` renders "Strategy: Value"
67
+ */
11
68
  label?: string;
69
+ /**
70
+ * Callback fired when an option is toggled
71
+ * @param selectedItem - The value of the toggled option
72
+ * @param isSelected - `true` if the option was just selected, `false` if deselected
73
+ */
12
74
  onChange?: (selectedItem: string | number, isSelected: boolean) => void;
13
75
  };
76
+ /**
77
+ * Context value shared with child DropdownOption components via MultipleDropdownContext
78
+ */
14
79
  export interface DropdownContextType<T extends DropdownOptionProps> {
80
+ /**
81
+ * Function called when an option is clicked
82
+ */
15
83
  onChange: (item: T) => void;
84
+ /**
85
+ * Whether multi-select mode is active
86
+ */
16
87
  isMultiple?: boolean;
88
+ /**
89
+ * Map of all option values to their current state (including `isSelected`)
90
+ */
17
91
  allItems: Record<string | number, T>;
18
92
  }
@@ -1,4 +1,9 @@
1
+ import type { Theme } from '@emotion/react';
2
+ type TextareaStatus = 'basic' | 'error' | 'success' | 'custom';
1
3
  export declare const TextareaBase: import("@emotion/styled").StyledComponent<{
2
- theme?: import("@emotion/react").Theme;
4
+ theme?: Theme;
3
5
  as?: React.ElementType;
6
+ } & {
7
+ status?: TextareaStatus;
4
8
  }, import("react").DetailedHTMLProps<import("react").TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, {}>;
9
+ export {};
@@ -84,6 +84,15 @@ export interface TextareaProps extends Partial<Pick<UseFormReturn, 'register'>>
84
84
  * Use with setCountChar callback to track character count
85
85
  */
86
86
  maxLength?: number;
87
+ /**
88
+ * Visual validation status (aligns with Input/TextField palette behavior).
89
+ * - `basic`: default border/outline (theme.colors grey)
90
+ * - `error`: error state (theme.palette.error)
91
+ * - `success`: success state (theme.palette.success)
92
+ * - `custom`: same as basic (no palette styling)
93
+ * @default 'basic'
94
+ */
95
+ status?: 'basic' | 'error' | 'success' | 'custom';
87
96
  /**
88
97
  * Custom element type to render as (for composition)
89
98
  */
@@ -97,6 +106,11 @@ export interface TextareaProps extends Partial<Pick<UseFormReturn, 'register'>>
97
106
  * Provides tooltip text on hover
98
107
  */
99
108
  title?: string;
109
+ /**
110
+ * HTML id attribute for the textarea (e.g. for label htmlFor).
111
+ * Defaults to `formElement-${name}` when not provided.
112
+ */
113
+ id?: string;
100
114
  /**
101
115
  * Paste event handler
102
116
  * Fired when content is pasted into the textarea
@@ -10,7 +10,7 @@ export declare const TypeaheadOption: import("@emotion/styled").StyledComponent<
10
10
  as?: React.ElementType;
11
11
  } & TypeaheadItemProps, import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, {}>;
12
12
  export declare const TypeaheadInput: (theme: Theme) => string;
13
- export declare const TypeaheadInputPlaceholder: string;
13
+ export declare const TypeaheadInputPlaceholder: (theme: Theme) => string;
14
14
  export declare const TypeaheadInputWrapper: string;
15
15
  export declare const TypeaheadItem: import("@emotion/styled").StyledComponent<{
16
16
  theme?: Theme;