@hazelcast/ui 1.1.1 → 1.2.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 (178) hide show
  1. package/lib/Alert.d.ts +3 -2
  2. package/lib/Alert.js +23 -22
  3. package/lib/Alert.js.map +1 -1
  4. package/lib/Alert.module.scss +14 -6
  5. package/lib/AutocompleteField.d.ts +2 -1
  6. package/lib/AutocompleteField.js +41 -19
  7. package/lib/AutocompleteField.js.map +1 -1
  8. package/lib/AutocompleteField.module.scss +2 -4
  9. package/lib/AutocompleteFieldFormik.d.ts +2 -1
  10. package/lib/AutocompleteFieldFormik.js +11 -5
  11. package/lib/AutocompleteFieldFormik.js.map +1 -1
  12. package/lib/Button.d.ts +80 -13
  13. package/lib/Button.js +39 -12
  14. package/lib/Button.js.map +1 -1
  15. package/lib/Button.module.scss +119 -87
  16. package/lib/Calendar/Calendar.d.ts +1 -1
  17. package/lib/Calendar/Calendar.js +6 -1
  18. package/lib/Calendar/Calendar.js.map +1 -1
  19. package/lib/Calendar/Calendar.module.scss +132 -124
  20. package/lib/Calendar/components/CalendarTime.js +1 -1
  21. package/lib/Calendar/components/CalendarTime.js.map +1 -1
  22. package/lib/Card.d.ts +1 -0
  23. package/lib/Card.js +4 -3
  24. package/lib/Card.js.map +1 -1
  25. package/lib/Card.module.scss +15 -3
  26. package/lib/Checkbox.js +4 -3
  27. package/lib/Checkbox.js.map +1 -1
  28. package/lib/Checkbox.module.scss +15 -6
  29. package/lib/CheckboxFormik.d.ts +2 -1
  30. package/lib/CheckboxFormik.js +9 -4
  31. package/lib/CheckboxFormik.js.map +1 -1
  32. package/lib/CodeEditor.d.ts +3 -2
  33. package/lib/CodeEditor.js +3 -2
  34. package/lib/CodeEditor.js.map +1 -1
  35. package/lib/EmptyState.d.ts +6 -4
  36. package/lib/EmptyState.js +4 -6
  37. package/lib/EmptyState.js.map +1 -1
  38. package/lib/EmptyState.module.scss +0 -1
  39. package/lib/Error.d.ts +1 -0
  40. package/lib/Error.js +2 -1
  41. package/lib/Error.js.map +1 -1
  42. package/lib/FieldHeader.d.ts +20 -0
  43. package/lib/FieldHeader.js +15 -0
  44. package/lib/FieldHeader.js.map +1 -0
  45. package/lib/FieldHeader.module.scss +20 -0
  46. package/lib/Icon.d.ts +2 -2
  47. package/lib/IconButton.d.ts +13 -3
  48. package/lib/IconButton.js +2 -2
  49. package/lib/IconButton.js.map +1 -1
  50. package/lib/InteractiveList.d.ts +2 -1
  51. package/lib/InteractiveList.js.map +1 -1
  52. package/lib/Link.js +2 -3
  53. package/lib/Link.js.map +1 -1
  54. package/lib/Link.module.scss +6 -0
  55. package/lib/Loader.module.scss +3 -1
  56. package/lib/Modal.d.ts +2 -0
  57. package/lib/Modal.js +2 -2
  58. package/lib/Modal.js.map +1 -1
  59. package/lib/NumberField.js +11 -5
  60. package/lib/NumberField.js.map +1 -1
  61. package/lib/NumberFieldFormik.d.ts +2 -1
  62. package/lib/NumberFieldFormik.js +7 -4
  63. package/lib/NumberFieldFormik.js.map +1 -1
  64. package/lib/Overlay.d.ts +2 -1
  65. package/lib/Overlay.js +7 -5
  66. package/lib/Overlay.js.map +1 -1
  67. package/lib/Overlay.module.scss +16 -3
  68. package/lib/Pagination.d.ts +0 -3
  69. package/lib/Pagination.js +10 -13
  70. package/lib/Pagination.js.map +1 -1
  71. package/lib/Pagination.module.scss +2 -1
  72. package/lib/PasswordFieldFormik.d.ts +2 -1
  73. package/lib/PasswordFieldFormik.js +9 -4
  74. package/lib/PasswordFieldFormik.js.map +1 -1
  75. package/lib/Popover.d.ts +1 -0
  76. package/lib/Popover.js +2 -0
  77. package/lib/Popover.js.map +1 -0
  78. package/lib/RadioGroup.js +4 -3
  79. package/lib/RadioGroup.js.map +1 -1
  80. package/lib/RadioGroup.module.scss +2 -4
  81. package/lib/RadioGroupFormik.d.ts +2 -1
  82. package/lib/RadioGroupFormik.js +9 -4
  83. package/lib/RadioGroupFormik.js.map +1 -1
  84. package/lib/SegmentedControl.d.ts +8 -8
  85. package/lib/SegmentedControl.js.map +1 -1
  86. package/lib/SegmentedControl.module.scss +4 -2
  87. package/lib/SegmentedControlFormik.d.ts +4 -4
  88. package/lib/SegmentedControlFormik.js.map +1 -1
  89. package/lib/Select/CheckableSelectField.d.ts +31 -0
  90. package/lib/Select/CheckableSelectField.js +89 -0
  91. package/lib/Select/CheckableSelectField.js.map +1 -0
  92. package/lib/Select/CheckableSelectField.module.scss +79 -0
  93. package/lib/Select/CheckableSelectFieldFormik.d.ts +10 -0
  94. package/lib/Select/CheckableSelectFieldFormik.js +19 -0
  95. package/lib/Select/CheckableSelectFieldFormik.js.map +1 -0
  96. package/lib/Select/MultiSelectField.d.ts +5 -8
  97. package/lib/Select/MultiSelectField.js +11 -9
  98. package/lib/Select/MultiSelectField.js.map +1 -1
  99. package/lib/Select/MultiSelectField.module.scss +8 -0
  100. package/lib/Select/MultiSelectFieldFormik.d.ts +2 -1
  101. package/lib/Select/MultiSelectFieldFormik.js +11 -5
  102. package/lib/Select/MultiSelectFieldFormik.js.map +1 -1
  103. package/lib/Select/SelectField.d.ts +3 -7
  104. package/lib/Select/SelectField.js +8 -8
  105. package/lib/Select/SelectField.js.map +1 -1
  106. package/lib/Select/SelectField.module.scss +4 -4
  107. package/lib/Select/SelectFieldFormik.d.ts +2 -1
  108. package/lib/Select/SelectFieldFormik.js +10 -4
  109. package/lib/Select/SelectFieldFormik.js.map +1 -1
  110. package/lib/Select/index.d.ts +2 -0
  111. package/lib/Select/index.js +2 -0
  112. package/lib/Select/index.js.map +1 -1
  113. package/lib/Slider.d.ts +6 -5
  114. package/lib/Slider.js +35 -17
  115. package/lib/Slider.js.map +1 -1
  116. package/lib/Slider.module.scss +8 -8
  117. package/lib/Table/Cell.module.scss +11 -4
  118. package/lib/Table/EnhancedRenderers.d.ts +0 -7
  119. package/lib/Table/EnhancedRenderers.js +3 -14
  120. package/lib/Table/EnhancedRenderers.js.map +1 -1
  121. package/lib/Table/Header.js +9 -3
  122. package/lib/Table/Header.js.map +1 -1
  123. package/lib/Table/Header.module.scss +26 -35
  124. package/lib/Table/Row.js +2 -3
  125. package/lib/Table/Row.js.map +1 -1
  126. package/lib/Table/Row.module.scss +4 -10
  127. package/lib/Table/Table.d.ts +10 -4
  128. package/lib/Table/Table.js +66 -26
  129. package/lib/Table/Table.js.map +1 -1
  130. package/lib/Table/Table.module.scss +5 -5
  131. package/lib/Tabs/Tab.d.ts +9 -1
  132. package/lib/Tabs/Tab.js +5 -2
  133. package/lib/Tabs/Tab.js.map +1 -1
  134. package/lib/Tabs/Tab.module.scss +4 -0
  135. package/lib/TextArea.d.ts +2 -5
  136. package/lib/TextArea.js +7 -7
  137. package/lib/TextArea.js.map +1 -1
  138. package/lib/TextArea.module.scss +2 -4
  139. package/lib/TextField.d.ts +4 -7
  140. package/lib/TextField.js +9 -8
  141. package/lib/TextField.js.map +1 -1
  142. package/lib/TextField.module.scss +4 -22
  143. package/lib/TextFieldFormik.d.ts +4 -2
  144. package/lib/TextFieldFormik.js +15 -4
  145. package/lib/TextFieldFormik.js.map +1 -1
  146. package/lib/TimeField.d.ts +2 -11
  147. package/lib/TimeField.js +7 -6
  148. package/lib/TimeField.js.map +1 -1
  149. package/lib/TimeField.module.scss +6 -6
  150. package/lib/Toggle.js +4 -3
  151. package/lib/Toggle.js.map +1 -1
  152. package/lib/Toggle.module.scss +15 -14
  153. package/lib/Tooltip.d.ts +7 -1
  154. package/lib/Tooltip.js +38 -23
  155. package/lib/Tooltip.js.map +1 -1
  156. package/lib/Tooltip.module.scss +10 -5
  157. package/lib/TruncatedText.d.ts +1 -1
  158. package/lib/TruncatedText.js +1 -1
  159. package/lib/TruncatedText.js.map +1 -1
  160. package/lib/hooks/index.d.ts +1 -0
  161. package/lib/hooks/index.js +3 -0
  162. package/lib/hooks/index.js.map +1 -0
  163. package/lib/hooks/usePrevious.d.ts +1 -0
  164. package/lib/hooks/usePrevious.js +9 -0
  165. package/lib/hooks/usePrevious.js.map +1 -0
  166. package/lib/hooks/useTableCustomizableColumns.d.ts +9 -0
  167. package/lib/hooks/useTableCustomizableColumns.js +23 -0
  168. package/lib/hooks/useTableCustomizableColumns.js.map +1 -0
  169. package/lib/index.d.ts +2 -0
  170. package/lib/index.js +2 -0
  171. package/lib/index.js.map +1 -1
  172. package/package.json +13 -13
  173. package/styles/constants/_sizes.scss +5 -4
  174. package/styles/constants/_typography.scss +3 -3
  175. package/styles/fonts.css +29 -65
  176. package/styles/helpers/_a11y.scss +4 -0
  177. package/styles/helpers/_error.scss +17 -0
  178. package/styles/helpers/_index.scss +1 -0
package/lib/Alert.d.ts CHANGED
@@ -20,10 +20,11 @@ export declare type AlertActionLink = {
20
20
  export declare type AlertAction = AlertActionButton | AlertActionLink;
21
21
  export declare type AlertProps = {
22
22
  type: ToastType;
23
- title: string;
24
- content: ReactNode;
23
+ title?: ReactNode;
24
+ content?: ReactNode;
25
25
  actions?: AlertAction[];
26
26
  className?: string;
27
+ titleClassName?: string;
27
28
  dismissableByEscKey?: boolean;
28
29
  closeToast?: (e?: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;
29
30
  };
package/lib/Alert.js CHANGED
@@ -10,7 +10,7 @@ import { Icon } from './Icon';
10
10
  import { IconButton } from './IconButton';
11
11
  import styles from './Alert.module.scss';
12
12
  const isAlertActionButton = (action) => action.onClick !== undefined;
13
- export const Alert = ({ type, title, content, actions, className, dismissableByEscKey = true, closeToast }) => {
13
+ export const Alert = ({ type, title, content, actions, className, dismissableByEscKey = true, closeToast, titleClassName, }) => {
14
14
  const { icon, ariaLabel } = ToastIcon[type];
15
15
  const closeByEsc = useCallback((nativeEvent) => {
16
16
  if (dismissableByEscKey) {
@@ -25,26 +25,27 @@ export const Alert = ({ type, title, content, actions, className, dismissableByE
25
25
  [styles.warning]: type === 'warning',
26
26
  [styles.critical]: type === 'critical',
27
27
  }, className) },
28
- React.createElement("div", { className: styles.header },
29
- React.createElement(Icon, { "data-test": "alert-icon", ariaLabel: ariaLabel, icon: icon, className: styles.icon }),
30
- React.createElement("div", { "data-test": "alert-title", className: styles.title }, title),
31
- !!closeToast && React.createElement(IconButton, { "data-test": "alert-close", kind: "transparent", ariaLabel: "Close icon", icon: X, onClick: closeToast })),
32
- React.createElement("div", { "data-test": "alert-body", className: styles.body },
33
- React.createElement("div", { "data-test": "alert-content" }, content),
34
- (actions === null || actions === void 0 ? void 0 : actions.length) ? (React.createElement("div", { "data-test": "alert-actions", className: styles.actions }, actions.map((action, aI) => {
35
- if (isAlertActionButton(action)) {
36
- const { text, icon, ariaLabel, onClick } = action;
37
- const iconLeftProps = icon && ariaLabel
38
- ? {
39
- iconLeft: icon,
40
- iconLeftAriaLabel: ariaLabel,
41
- iconLeftClassName: styles.actionButtonIcon,
42
- }
43
- : {};
44
- return (React.createElement(Button, Object.assign({ key: aI, size: "small", kind: "transparent", capitalize: false, className: cn(styles.action, styles.actionButton), bodyClassName: styles.actionButtonBody, onClick: onClick }, iconLeftProps), text));
45
- }
46
- const { text, href, ...props } = action;
47
- return (React.createElement(Link, Object.assign({ key: aI, href: href, icon: ChevronRight, ariaLabel: "Icon chevron right", className: styles.action, size: "small" }, props), text));
48
- }))) : null)));
28
+ React.createElement(Icon, { "data-test": "alert-icon", ariaLabel: ariaLabel, icon: icon, className: styles.icon }),
29
+ React.createElement("div", { className: styles.rightSide },
30
+ React.createElement("div", { className: styles.header },
31
+ title && (React.createElement("div", { "data-test": "alert-title", className: cn(styles.title, titleClassName) }, title)),
32
+ !!closeToast && React.createElement(IconButton, { "data-test": "alert-close", kind: "transparent", ariaLabel: "Close icon", icon: X, onClick: closeToast })),
33
+ React.createElement("div", { "data-test": "alert-body", className: styles.body },
34
+ content && React.createElement("div", { "data-test": "alert-content" }, content),
35
+ (actions === null || actions === void 0 ? void 0 : actions.length) ? (React.createElement("div", { "data-test": "alert-actions", className: styles.actions }, actions.map((action, aI) => {
36
+ if (isAlertActionButton(action)) {
37
+ const { text, icon, ariaLabel, onClick } = action;
38
+ const iconLeftProps = icon && ariaLabel
39
+ ? {
40
+ iconLeft: icon,
41
+ iconLeftAriaLabel: ariaLabel,
42
+ iconLeftClassName: styles.actionButtonIcon,
43
+ }
44
+ : {};
45
+ return (React.createElement(Button, Object.assign({ key: aI, kind: "transparent", capitalize: false, className: cn(styles.action, styles.actionButton), bodyClassName: styles.actionButtonBody, onClick: onClick }, iconLeftProps), text));
46
+ }
47
+ const { text, href, ...props } = action;
48
+ return (React.createElement(Link, Object.assign({ key: aI, href: href, icon: ChevronRight, ariaLabel: "Icon chevron right", className: styles.action, size: "small" }, props), text));
49
+ }))) : null))));
49
50
  };
50
51
  //# sourceMappingURL=Alert.js.map
package/lib/Alert.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../src/Alert.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../src/Alert.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAiB,WAAW,EAAE,MAAM,OAAO,CAAA;AACzD,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,eAAe,CAAA;AAI/C,OAAO,MAAM,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,IAAI,EAAa,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,MAAM,EAAiC,MAAM,UAAU,CAAA;AAChE,OAAO,EAAE,SAAS,EAAa,MAAM,SAAS,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAa,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,MAAM,MAAM,qBAAqB,CAAA;AA4BxC,MAAM,mBAAmB,GAAG,CAAC,MAAmB,EAA+B,EAAE,CAAE,MAA4B,CAAC,OAAO,KAAK,SAAS,CAAA;AAarI,MAAM,CAAC,MAAM,KAAK,GAAmB,CAAC,EACpC,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,SAAS,EACT,mBAAmB,GAAG,IAAI,EAC1B,UAAU,EACV,cAAc,GACf,EAAE,EAAE;IACH,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAE3C,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,WAA0B,EAAE,EAAE;QAC7B,IAAI,mBAAmB,EAAE;YACvB,UAAU,aAAV,UAAU,uBAAV,UAAU,GAAI;YACd,WAAW,CAAC,wBAAwB,EAAE,CAAA;SACvC;IACH,CAAC,EACD,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAClC,CAAA;IAED,MAAM,CAAC,qBAAqB,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAA;IAEzG,OAAO,CACL,0CACY,OAAO,EACjB,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,KAAK,EACZ;YACE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,SAAS;YACpC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,MAAM;YAC9B,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,SAAS;YACpC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,KAAK,UAAU;SACvC,EACD,SAAS,CACV;QAED,oBAAC,IAAI,iBAAW,YAAY,EAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,GAAI;QACzF,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;YAC9B,6BAAK,SAAS,EAAE,MAAM,CAAC,MAAM;gBAC1B,KAAK,IAAI,CACR,0CAAe,aAAa,EAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,IACrE,KAAK,CACF,CACP;gBACA,CAAC,CAAC,UAAU,IAAI,oBAAC,UAAU,iBAAW,aAAa,EAAC,IAAI,EAAC,aAAa,EAAC,SAAS,EAAC,YAAY,EAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,GAAI,CAC3H;YACN,0CAAe,YAAY,EAAC,SAAS,EAAE,MAAM,CAAC,IAAI;gBAC/C,OAAO,IAAI,0CAAe,eAAe,IAAE,OAAO,CAAO;gBACzD,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAC,CAAC,CAAC,CACjB,0CAAe,eAAe,EAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IACrD,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;oBAC1B,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;wBAC/B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;wBACjD,MAAM,aAAa,GACjB,IAAI,IAAI,SAAS;4BACf,CAAC,CAAC;gCACE,QAAQ,EAAE,IAAI;gCACd,iBAAiB,EAAE,SAAS;gCAC5B,iBAAiB,EAAE,MAAM,CAAC,gBAAgB;6BAC3C;4BACH,CAAC,CAAC,EAAE,CAAA;wBAER,OAAO,CACL,oBAAC,MAAM,kBACL,GAAG,EAAE,EAAE,EACP,IAAI,EAAC,aAAa,EAClB,UAAU,EAAE,KAAK,EACjB,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,EACjD,aAAa,EAAE,MAAM,CAAC,gBAAgB,EACtC,OAAO,EAAE,OAAO,IACZ,aAAa,GAEhB,IAAI,CACE,CACV,CAAA;qBACF;oBAED,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;oBAEvC,OAAO,CACL,oBAAC,IAAI,kBACH,GAAG,EAAE,EAAE,EACP,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,YAAY,EAClB,SAAS,EAAC,oBAAoB,EAC9B,SAAS,EAAE,MAAM,CAAC,MAAM,EACxB,IAAI,EAAC,OAAO,IACR,KAAK,GAER,IAAI,CACA,CACR,CAAA;gBACH,CAAC,CAAC,CACE,CACP,CAAC,CAAC,CAAC,IAAI,CACJ,CACF,CACF,CACP,CAAA;AACH,CAAC,CAAA"}
@@ -3,20 +3,28 @@
3
3
 
4
4
  // TODO: potential max-height
5
5
  .alert {
6
- display: inline-block;
6
+ display: inline-flex;
7
7
  border-radius: c.$borderRadius;
8
8
  padding: c.$grid * 2.5;
9
9
  width: c.$alertWidth;
10
10
 
11
+ .icon {
12
+ flex-shrink: 0;
13
+ margin-right: c.$grid * 2.5;
14
+ }
15
+
16
+ .rightSide {
17
+ flex-grow: 1;
18
+ display: flex;
19
+ flex-direction: column;
20
+ justify-content: center;
21
+ }
22
+
11
23
  .header {
12
24
  display: flex;
13
25
  flex-direction: row;
14
26
  align-items: center;
15
27
 
16
- .icon {
17
- margin-right: c.$grid * 2.5;
18
- }
19
-
20
28
  .title {
21
29
  flex: 1 0 auto;
22
30
  margin-right: c.$grid * 8.5;
@@ -91,7 +99,7 @@
91
99
  }
92
100
 
93
101
  .body {
94
- padding: 0 c.$grid * 8.5;
102
+ padding-right: c.$grid * 8.5;
95
103
 
96
104
  @include c.typographyBodySmall;
97
105
 
@@ -5,7 +5,7 @@ export declare type AutocompleteFieldOption = {
5
5
  label: string;
6
6
  value: string;
7
7
  };
8
- export declare type RenderOptionFunction = (highlightedLabelText: ReactNode, option: AutocompleteFieldOption, labelMeta: FormatOptionLabelMeta<AutocompleteFieldOption>) => ReactNode;
8
+ export declare type RenderOptionFunction<O = AutocompleteFieldOption> = (highlightedLabelText: ReactNode, option: O extends AutocompleteFieldOption ? O : never, labelMeta: FormatOptionLabelMeta<AutocompleteFieldOption>) => ReactNode;
9
9
  export declare type AutocompleteFieldProps = {
10
10
  'data-test'?: string;
11
11
  className?: string;
@@ -19,6 +19,7 @@ export declare type AutocompleteFieldProps = {
19
19
  onChange?: (newValue: string) => void;
20
20
  onInputChange?: (newInputValue: string) => void;
21
21
  onBlur?: (e: FocusEvent<HTMLElement>) => void;
22
+ onFocus?: (e: FocusEvent<HTMLElement>) => void;
22
23
  required?: boolean;
23
24
  helperText?: HelpProps['helperText'];
24
25
  renderOption?: RenderOptionFunction;
@@ -42,19 +42,23 @@ const ClearIndicator = ({ innerProps }) => {
42
42
  return React.createElement(IconButton, Object.assign({}, innerProps, { icon: X, ariaHidden: true, kind: "primary", size: "medium", className: styles.clear, tabIndex: -1 }));
43
43
  };
44
44
  export const highlightOptionText = (labelText, inputValue) => {
45
- const customSeparator = '<%>';
45
+ const separator = '<%>';
46
46
  const query = inputValue || '';
47
- return labelText
48
- .replace(new RegExp(query, 'ig'), `${customSeparator}$&${customSeparator}`)
49
- .split(customSeparator)
50
- .filter((val) => val)
51
- .map((val, i) => (React.createElement("span", { className: cn({
52
- 'hz-autocomplete-field__matched-option-text': val.toLowerCase() === query.toLowerCase(),
53
- }), key: val + `${i}` }, val)));
47
+ return query
48
+ ? labelText
49
+ .replace(new RegExp(query, 'ig'), `${separator}$&${separator}`)
50
+ .split(separator)
51
+ .filter((val) => val)
52
+ .map((val, i) => (React.createElement("span", { className: cn({
53
+ 'hz-autocomplete-field__matched-option-text': val.toLowerCase() === query.toLowerCase(),
54
+ }), key: val + `${i}` }, val)))
55
+ : labelText;
54
56
  };
55
- export const AutocompleteField = ({ 'data-test': dataTest, className, disabled, error, errorClassName, isClearable, label, labelClassName, helperText, menuPortalTarget = 'body', name, onChange, onInputChange, options, required, value, placeholder = 'Search...', renderOption, ...rest }) => {
57
+ export const AutocompleteField = ({ 'data-test': dataTest, className, disabled, error, errorClassName, isClearable, label, labelClassName, helperText, menuPortalTarget = 'body', name, onChange, onFocus, onBlur, onInputChange, options, required, value, placeholder = 'Search...', renderOption, ...rest }) => {
58
+ // when the user clicks on an input with the value, the value should disappear,
59
+ // but then it should appear after the user selects something or blurs the input
60
+ const [isValueHidden, setValueHidden] = useState(false);
56
61
  const id = useUID();
57
- const [isMenuOpen, setMenuOpen] = useState(false);
58
62
  useIsomorphicLayoutEffect(() => {
59
63
  const menuContainer = getMenuContainer(menuPortalTarget);
60
64
  if (menuContainer && !menuContainer.className.includes(styles.menuContainer)) {
@@ -67,16 +71,21 @@ export const AutocompleteField = ({ 'data-test': dataTest, className, disabled,
67
71
  }, {}), [options]);
68
72
  const selectedOption = useMemo(() => getSelectedOptionFromValue({ value, optionsMap }), [optionsMap, value]);
69
73
  const onChangeFn = React.useCallback((option) => {
70
- ;
74
+ setValueHidden(false);
71
75
  onChange(option === null ? null : option.value);
72
76
  }, [onChange]);
73
- const onInputChangeFn = React.useCallback((value) => {
74
- // keep menu closed if no value
75
- setMenuOpen(!!value);
76
- if (onInputChange) {
77
- onInputChange(value);
77
+ const onFocusFn = React.useCallback((e) => {
78
+ if (onFocus) {
79
+ onFocus(e);
78
80
  }
79
- }, [onInputChange]);
81
+ setValueHidden(true);
82
+ }, [onFocus]);
83
+ const onBlurFn = React.useCallback((e) => {
84
+ if (onBlur) {
85
+ onBlur(e);
86
+ }
87
+ setValueHidden(false);
88
+ }, [onBlur]);
80
89
  const formatOptionLabelFn = React.useCallback((option, labelMeta) => {
81
90
  const { inputValue } = labelMeta;
82
91
  let optionText = option.label;
@@ -112,6 +121,8 @@ export const AutocompleteField = ({ 'data-test': dataTest, className, disabled,
112
121
  placeholder,
113
122
  options,
114
123
  onChange: onChangeFn,
124
+ onFocus: onFocusFn,
125
+ onBlur: onBlurFn,
115
126
  menuPortalTarget: getMenuContainer(menuPortalTarget),
116
127
  components: {
117
128
  DropdownIndicator,
@@ -121,6 +132,7 @@ export const AutocompleteField = ({ 'data-test': dataTest, className, disabled,
121
132
  ...rest,
122
133
  };
123
134
  return (React.createElement("div", { "data-test": dataTest, className: cn(styles.container, {
135
+ [styles.withError]: 'error' in props,
124
136
  [styles.disabled]: disabled,
125
137
  [styles.hasError]: error,
126
138
  [styles.empty]: !value,
@@ -131,8 +143,18 @@ export const AutocompleteField = ({ 'data-test': dataTest, className, disabled,
131
143
  styles.menuContainer, className) },
132
144
  React.createElement(Label, { id: id, label: label, className: cn(styles.label, labelClassName) }),
133
145
  React.createElement("div", { className: styles.selectBlock },
134
- React.createElement(ReactSelect, Object.assign({ menuIsOpen: isMenuOpen, onInputChange: onInputChangeFn, formatOptionLabel: formatOptionLabelFn }, props)),
146
+ React.createElement(ReactSelect, Object.assign({ onInputChange: onInputChange, formatOptionLabel: formatOptionLabelFn, openMenuOnClick: false, styles: {
147
+ ...props.styles,
148
+ singleValue: (base) => {
149
+ var _a;
150
+ return ({
151
+ ...base,
152
+ ...(_a = props.styles) === null || _a === void 0 ? void 0 : _a.singleValue,
153
+ visibility: isValueHidden ? 'hidden' : 'visible',
154
+ });
155
+ },
156
+ } }, props)),
135
157
  helperText && React.createElement(Help, { parentId: id, helperText: helperText, className: styles.helperText })),
136
- React.createElement(Error, { error: error, className: cn(styles.errorContainer, errorClassName), inputId: id })));
158
+ React.createElement(Error, { truncated: true, error: error, className: cn(styles.errorContainer, errorClassName), inputId: id })));
137
159
  };
138
160
  //# sourceMappingURL=AutocompleteField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutocompleteField.js","sourceRoot":"","sources":["../src/AutocompleteField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutocompleteField.js","sourceRoot":"","sources":["../src/AutocompleteField.tsx"],"names":[],"mappings":"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"}
@@ -12,10 +12,6 @@ $select: ':global .hz-autocomplete-field__control';
12
12
  margin-bottom: c.$grid;
13
13
  }
14
14
 
15
- .errorContainer {
16
- margin-top: c.$grid;
17
- }
18
-
19
15
  .helperText {
20
16
  margin-left: c.$grid * 1.5;
21
17
  display: block;
@@ -148,3 +144,5 @@ $select: ':global .hz-autocomplete-field__control';
148
144
  }
149
145
  }
150
146
  }
147
+
148
+ @include h.withError;
@@ -3,6 +3,7 @@ import { AutocompleteFieldProps } from './AutocompleteField';
3
3
  import { FieldValidatorGeneric } from './utils/formik';
4
4
  declare type AutocompleteFieldFormikProps = AutocompleteFieldProps & {
5
5
  validate?: FieldValidatorGeneric<string | null>;
6
+ onChange?: (value: string | null) => void;
6
7
  };
7
- export declare const AutocompleteFieldFormik: ({ name, validate, ...props }: AutocompleteFieldFormikProps) => ReactElement;
8
+ export declare const AutocompleteFieldFormik: ({ name, validate, onChange, ...props }: AutocompleteFieldFormikProps) => ReactElement;
8
9
  export {};
@@ -1,13 +1,19 @@
1
- import React, { useMemo } from 'react';
1
+ import React, { useCallback, useMemo } from 'react';
2
2
  import { useField } from 'formik';
3
3
  import { AutocompleteField } from './AutocompleteField';
4
4
  import { formikTouchAndUpdate, getFieldError } from './utils/formik';
5
- export const AutocompleteFieldFormik = ({ name, validate, ...props }) => {
6
- const [field, meta, { setValue, setTouched }] = useField({
5
+ export const AutocompleteFieldFormik = ({ name, validate, onChange, ...props }) => {
6
+ const [{ value, onBlur }, meta, { setValue, setTouched }] = useField({
7
7
  name,
8
8
  validate,
9
9
  });
10
- const onChange = useMemo(() => formikTouchAndUpdate(setValue, setTouched), [setValue, setTouched]);
11
- return (React.createElement(AutocompleteField, Object.assign({}, props, { value: field.value, onChange: onChange, name: name, onBlur: field.onBlur, error: getFieldError(meta) })));
10
+ const setFormikValue = useMemo(() => formikTouchAndUpdate(setValue, setTouched), [setValue, setTouched]);
11
+ const handleChange = useCallback((newValue) => {
12
+ if (onChange) {
13
+ onChange(newValue);
14
+ }
15
+ setFormikValue(newValue);
16
+ }, [setFormikValue, onChange]);
17
+ return React.createElement(AutocompleteField, Object.assign({}, props, { value: value, onChange: handleChange, name: name, onBlur: onBlur, error: getFieldError(meta) }));
12
18
  };
13
19
  //# sourceMappingURL=AutocompleteFieldFormik.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutocompleteFieldFormik.js","sourceRoot":"","sources":["../src/AutocompleteFieldFormik.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAgB,OAAO,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEjC,OAAO,EAAE,iBAAiB,EAA0B,MAAM,qBAAqB,CAAA;AAC/E,OAAO,EAAyB,oBAAoB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAM3F,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAgC,EAAgB,EAAE;IAClH,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,GAAG,QAAQ,CAAgB;QACtE,IAAI;QACJ,QAAQ;KACT,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAgB,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;IAEjH,OAAO,CACL,oBAAC,iBAAiB,oBAAK,KAAK,IAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CACvI,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"AutocompleteFieldFormik.js","sourceRoot":"","sources":["../src/AutocompleteFieldFormik.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAgB,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEjC,OAAO,EAAE,iBAAiB,EAA0B,MAAM,qBAAqB,CAAA;AAC/E,OAAO,EAAyB,oBAAoB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAO3F,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAgC,EAAgB,EAAE;IAC5H,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,GAAG,QAAQ,CAAgB;QAClF,IAAI;QACJ,QAAQ;KACT,CAAC,CAAA;IAEF,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAgB,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;IACvH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,QAAgB,EAAE,EAAE;QACnB,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,QAAQ,CAAC,CAAA;SACnB;QAED,cAAc,CAAC,QAAQ,CAAC,CAAA;IAC1B,CAAC,EACD,CAAC,cAAc,EAAE,QAAQ,CAAC,CAC3B,CAAA;IAED,OAAO,oBAAC,iBAAiB,oBAAK,KAAK,IAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAA;AACvI,CAAC,CAAA"}
package/lib/Button.d.ts CHANGED
@@ -3,6 +3,8 @@ import { IconProps } from './Icon';
3
3
  import { TooltipProps } from './Tooltip';
4
4
  import { LinkRel, LinkTarget } from './Link';
5
5
  export declare type ButtonKind = 'primary' | 'secondary' | 'danger' | 'transparent';
6
+ export declare type ButtonVariant = 'contained' | 'outlined' | 'text';
7
+ export declare type ButtonColor = 'primary' | 'secondary' | 'warning';
6
8
  export declare type ButtonSize = 'medium' | 'small';
7
9
  export declare type ButtonAccessibleIconLeftProps = {
8
10
  iconLeft: IconProps['icon'];
@@ -40,13 +42,18 @@ export declare type ButtonDisabledProps = {
40
42
  };
41
43
  export declare type ButtonOutlineType = 'outline' | 'inset';
42
44
  export declare type ButtonCommonProps = {
45
+ /**
46
+ * @deprecated Use variant + color instead
47
+ */
43
48
  kind?: ButtonKind;
44
- size?: ButtonSize;
45
49
  children: string;
50
+ color?: ButtonColor;
46
51
  capitalize?: boolean;
47
52
  bodyClassName?: string;
53
+ variant?: ButtonVariant;
48
54
  outlineClassName?: string;
49
55
  outline?: ButtonOutlineType;
56
+ tooltip?: string;
50
57
  } & Pick<HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, 'className' | 'onClick' | 'tabIndex' | 'style'>;
51
58
  export declare type ButtonTypeAnchorProps = {
52
59
  component: 'a';
@@ -86,13 +93,18 @@ export declare type ButtonProps<T = ButtonTypeProps> = ButtonCommonProps & Butto
86
93
  * - **Transparent**: Use for IconButton and similar use-cases.
87
94
  */
88
95
  export declare const Button: React.ForwardRefExoticComponent<({
96
+ /**
97
+ * @deprecated Use variant + color instead
98
+ */
89
99
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
90
- size?: "medium" | "small" | undefined;
91
100
  children: string;
101
+ color?: "primary" | "secondary" | "warning" | undefined;
92
102
  capitalize?: boolean | undefined;
93
103
  bodyClassName?: string | undefined;
104
+ variant?: "text" | "contained" | "outlined" | undefined;
94
105
  outlineClassName?: string | undefined;
95
106
  outline?: "inset" | "outline" | undefined;
107
+ tooltip?: string | undefined;
96
108
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
97
109
  iconLeft: IconProps['icon'];
98
110
  iconLeftAriaLabel: string;
@@ -111,13 +123,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
111
123
  type?: undefined;
112
124
  loading?: undefined;
113
125
  } & ButtonNotDisabledProps & React.RefAttributes<HTMLElement>) | ({
126
+ /**
127
+ * @deprecated Use variant + color instead
128
+ */
114
129
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
115
- size?: "medium" | "small" | undefined;
116
130
  children: string;
131
+ color?: "primary" | "secondary" | "warning" | undefined;
117
132
  capitalize?: boolean | undefined;
118
133
  bodyClassName?: string | undefined;
134
+ variant?: "text" | "contained" | "outlined" | undefined;
119
135
  outlineClassName?: string | undefined;
120
136
  outline?: "inset" | "outline" | undefined;
137
+ tooltip?: string | undefined;
121
138
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
122
139
  iconLeft: IconProps['icon'];
123
140
  iconLeftAriaLabel: string;
@@ -135,13 +152,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
135
152
  rel?: undefined;
136
153
  loading?: boolean | undefined;
137
154
  } & ButtonNotDisabledProps & Pick<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "autoFocus"> & React.RefAttributes<HTMLElement>) | ({
155
+ /**
156
+ * @deprecated Use variant + color instead
157
+ */
138
158
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
139
- size?: "medium" | "small" | undefined;
140
159
  children: string;
160
+ color?: "primary" | "secondary" | "warning" | undefined;
141
161
  capitalize?: boolean | undefined;
142
162
  bodyClassName?: string | undefined;
163
+ variant?: "text" | "contained" | "outlined" | undefined;
143
164
  outlineClassName?: string | undefined;
144
165
  outline?: "inset" | "outline" | undefined;
166
+ tooltip?: string | undefined;
145
167
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
146
168
  iconLeft: IconProps['icon'];
147
169
  iconLeftAriaLabel: string;
@@ -159,13 +181,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
159
181
  rel?: undefined;
160
182
  loading?: boolean | undefined;
161
183
  } & ButtonDisabledProps & Pick<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "autoFocus"> & React.RefAttributes<HTMLElement>) | ({
184
+ /**
185
+ * @deprecated Use variant + color instead
186
+ */
162
187
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
163
- size?: "medium" | "small" | undefined;
164
188
  children: string;
189
+ color?: "primary" | "secondary" | "warning" | undefined;
165
190
  capitalize?: boolean | undefined;
166
191
  bodyClassName?: string | undefined;
192
+ variant?: "text" | "contained" | "outlined" | undefined;
167
193
  outlineClassName?: string | undefined;
168
194
  outline?: "inset" | "outline" | undefined;
195
+ tooltip?: string | undefined;
169
196
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
170
197
  iconLeft: IconProps['icon'];
171
198
  iconLeftAriaLabel: string;
@@ -184,13 +211,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
184
211
  type?: undefined;
185
212
  loading?: undefined;
186
213
  } & ButtonNotDisabledProps & React.RefAttributes<HTMLElement>) | ({
214
+ /**
215
+ * @deprecated Use variant + color instead
216
+ */
187
217
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
188
- size?: "medium" | "small" | undefined;
189
218
  children: string;
219
+ color?: "primary" | "secondary" | "warning" | undefined;
190
220
  capitalize?: boolean | undefined;
191
221
  bodyClassName?: string | undefined;
222
+ variant?: "text" | "contained" | "outlined" | undefined;
192
223
  outlineClassName?: string | undefined;
193
224
  outline?: "inset" | "outline" | undefined;
225
+ tooltip?: string | undefined;
194
226
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
195
227
  iconLeft: IconProps['icon'];
196
228
  iconLeftAriaLabel: string;
@@ -208,13 +240,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
208
240
  rel?: undefined;
209
241
  loading?: boolean | undefined;
210
242
  } & ButtonNotDisabledProps & Pick<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "autoFocus"> & React.RefAttributes<HTMLElement>) | ({
243
+ /**
244
+ * @deprecated Use variant + color instead
245
+ */
211
246
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
212
- size?: "medium" | "small" | undefined;
213
247
  children: string;
248
+ color?: "primary" | "secondary" | "warning" | undefined;
214
249
  capitalize?: boolean | undefined;
215
250
  bodyClassName?: string | undefined;
251
+ variant?: "text" | "contained" | "outlined" | undefined;
216
252
  outlineClassName?: string | undefined;
217
253
  outline?: "inset" | "outline" | undefined;
254
+ tooltip?: string | undefined;
218
255
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
219
256
  iconLeft: IconProps['icon'];
220
257
  iconLeftAriaLabel: string;
@@ -232,13 +269,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
232
269
  rel?: undefined;
233
270
  loading?: boolean | undefined;
234
271
  } & ButtonDisabledProps & Pick<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "autoFocus"> & React.RefAttributes<HTMLElement>) | ({
272
+ /**
273
+ * @deprecated Use variant + color instead
274
+ */
235
275
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
236
- size?: "medium" | "small" | undefined;
237
276
  children: string;
277
+ color?: "primary" | "secondary" | "warning" | undefined;
238
278
  capitalize?: boolean | undefined;
239
279
  bodyClassName?: string | undefined;
280
+ variant?: "text" | "contained" | "outlined" | undefined;
240
281
  outlineClassName?: string | undefined;
241
282
  outline?: "inset" | "outline" | undefined;
283
+ tooltip?: string | undefined;
242
284
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
243
285
  iconLeft?: undefined;
244
286
  iconLeftAriaLabel?: undefined;
@@ -257,13 +299,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
257
299
  type?: undefined;
258
300
  loading?: undefined;
259
301
  } & ButtonNotDisabledProps & React.RefAttributes<HTMLElement>) | ({
302
+ /**
303
+ * @deprecated Use variant + color instead
304
+ */
260
305
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
261
- size?: "medium" | "small" | undefined;
262
306
  children: string;
307
+ color?: "primary" | "secondary" | "warning" | undefined;
263
308
  capitalize?: boolean | undefined;
264
309
  bodyClassName?: string | undefined;
310
+ variant?: "text" | "contained" | "outlined" | undefined;
265
311
  outlineClassName?: string | undefined;
266
312
  outline?: "inset" | "outline" | undefined;
313
+ tooltip?: string | undefined;
267
314
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
268
315
  iconLeft?: undefined;
269
316
  iconLeftAriaLabel?: undefined;
@@ -281,13 +328,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
281
328
  rel?: undefined;
282
329
  loading?: boolean | undefined;
283
330
  } & ButtonNotDisabledProps & Pick<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "autoFocus"> & React.RefAttributes<HTMLElement>) | ({
331
+ /**
332
+ * @deprecated Use variant + color instead
333
+ */
284
334
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
285
- size?: "medium" | "small" | undefined;
286
335
  children: string;
336
+ color?: "primary" | "secondary" | "warning" | undefined;
287
337
  capitalize?: boolean | undefined;
288
338
  bodyClassName?: string | undefined;
339
+ variant?: "text" | "contained" | "outlined" | undefined;
289
340
  outlineClassName?: string | undefined;
290
341
  outline?: "inset" | "outline" | undefined;
342
+ tooltip?: string | undefined;
291
343
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
292
344
  iconLeft?: undefined;
293
345
  iconLeftAriaLabel?: undefined;
@@ -305,13 +357,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
305
357
  rel?: undefined;
306
358
  loading?: boolean | undefined;
307
359
  } & ButtonDisabledProps & Pick<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "autoFocus"> & React.RefAttributes<HTMLElement>) | ({
360
+ /**
361
+ * @deprecated Use variant + color instead
362
+ */
308
363
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
309
- size?: "medium" | "small" | undefined;
310
364
  children: string;
365
+ color?: "primary" | "secondary" | "warning" | undefined;
311
366
  capitalize?: boolean | undefined;
312
367
  bodyClassName?: string | undefined;
368
+ variant?: "text" | "contained" | "outlined" | undefined;
313
369
  outlineClassName?: string | undefined;
314
370
  outline?: "inset" | "outline" | undefined;
371
+ tooltip?: string | undefined;
315
372
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
316
373
  iconLeft?: undefined;
317
374
  iconLeftAriaLabel?: undefined;
@@ -330,13 +387,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
330
387
  type?: undefined;
331
388
  loading?: undefined;
332
389
  } & ButtonNotDisabledProps & React.RefAttributes<HTMLElement>) | ({
390
+ /**
391
+ * @deprecated Use variant + color instead
392
+ */
333
393
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
334
- size?: "medium" | "small" | undefined;
335
394
  children: string;
395
+ color?: "primary" | "secondary" | "warning" | undefined;
336
396
  capitalize?: boolean | undefined;
337
397
  bodyClassName?: string | undefined;
398
+ variant?: "text" | "contained" | "outlined" | undefined;
338
399
  outlineClassName?: string | undefined;
339
400
  outline?: "inset" | "outline" | undefined;
401
+ tooltip?: string | undefined;
340
402
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
341
403
  iconLeft?: undefined;
342
404
  iconLeftAriaLabel?: undefined;
@@ -354,13 +416,18 @@ export declare const Button: React.ForwardRefExoticComponent<({
354
416
  rel?: undefined;
355
417
  loading?: boolean | undefined;
356
418
  } & ButtonNotDisabledProps & Pick<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "autoFocus"> & React.RefAttributes<HTMLElement>) | ({
419
+ /**
420
+ * @deprecated Use variant + color instead
421
+ */
357
422
  kind?: "transparent" | "primary" | "secondary" | "danger" | undefined;
358
- size?: "medium" | "small" | undefined;
359
423
  children: string;
424
+ color?: "primary" | "secondary" | "warning" | undefined;
360
425
  capitalize?: boolean | undefined;
361
426
  bodyClassName?: string | undefined;
427
+ variant?: "text" | "contained" | "outlined" | undefined;
362
428
  outlineClassName?: string | undefined;
363
429
  outline?: "inset" | "outline" | undefined;
430
+ tooltip?: string | undefined;
364
431
  } & Pick<React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, "style" | "className" | "tabIndex" | "onClick"> & {
365
432
  iconLeft?: undefined;
366
433
  iconLeftAriaLabel?: undefined;