@hazelcast/ui 3.0.13 → 4.0.1-canary.10

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 (240) hide show
  1. package/README.md +1 -29
  2. package/lib/components/Alert.js +2 -2
  3. package/lib/components/Alert.js.map +1 -1
  4. package/lib/components/AppHeader/AppHeaderMenu/AppHeaderMenu.js +1 -1
  5. package/lib/components/AppHeader/AppHeaderMenu/AppHeaderMenu.js.map +1 -1
  6. package/lib/components/AppHeader/SelectCluster/SelectCluster.js +1 -1
  7. package/lib/components/AppHeader/SelectCluster/SelectCluster.js.map +1 -1
  8. package/lib/components/AppSidebar/AppSidebar.js +1 -1
  9. package/lib/components/AppSidebar/AppSidebar.js.map +1 -1
  10. package/lib/components/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js +1 -1
  11. package/lib/components/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js.map +1 -1
  12. package/lib/components/AppSidebar/AppSidebarItem/AppSidebarItem.d.ts +1 -3
  13. package/lib/components/AppSidebar/AppSidebarItem/AppSidebarItem.js +11 -10
  14. package/lib/components/AppSidebar/AppSidebarItem/AppSidebarItem.js.map +1 -1
  15. package/lib/components/AutocompleteField.d.ts +1 -3
  16. package/lib/components/AutocompleteField.js +4 -5
  17. package/lib/components/AutocompleteField.js.map +1 -1
  18. package/lib/components/AutocompleteField.module.css +183 -0
  19. package/lib/components/Badge.d.ts +1 -2
  20. package/lib/components/Badge.js +3 -7
  21. package/lib/components/Badge.js.map +1 -1
  22. package/lib/components/Badge.module.scss +18 -29
  23. package/lib/components/Button.d.ts +10 -33
  24. package/lib/components/Button.js +31 -51
  25. package/lib/components/Button.js.map +1 -1
  26. package/lib/components/Button.module.css +188 -0
  27. package/lib/components/ButtonGroup.d.ts +10 -0
  28. package/lib/components/ButtonGroup.js +6 -0
  29. package/lib/components/ButtonGroup.js.map +1 -0
  30. package/lib/components/ButtonGroup.module.css +29 -0
  31. package/lib/components/Calendar/components/CalendarTime.js +1 -1
  32. package/lib/components/Calendar/components/CalendarTime.js.map +1 -1
  33. package/lib/components/Checkbox.js +1 -1
  34. package/lib/components/Checkbox.js.map +1 -1
  35. package/lib/components/Checkbox.module.css +97 -0
  36. package/lib/components/Dialog.js +1 -1
  37. package/lib/components/Dialog.js.map +1 -1
  38. package/lib/components/Error.d.ts +2 -2
  39. package/lib/components/Help.d.ts +2 -2
  40. package/lib/components/Help.js +3 -2
  41. package/lib/components/Help.js.map +1 -1
  42. package/lib/components/IconButton.d.ts +8 -8
  43. package/lib/components/IconButton.js +24 -13
  44. package/lib/components/IconButton.js.map +1 -1
  45. package/lib/components/IconButton.module.css +145 -0
  46. package/lib/components/InteractiveList.d.ts +1 -1
  47. package/lib/components/InteractiveList.js +5 -5
  48. package/lib/components/InteractiveList.js.map +1 -1
  49. package/lib/components/InteractiveList.module.css +59 -0
  50. package/lib/components/Modal.d.ts +19 -2
  51. package/lib/components/Modal.js +56 -25
  52. package/lib/components/Modal.js.map +1 -1
  53. package/lib/components/Modal.module.css +222 -0
  54. package/lib/components/NumberField.d.ts +2 -3
  55. package/lib/components/NumberField.js +7 -10
  56. package/lib/components/NumberField.js.map +1 -1
  57. package/lib/components/NumberField.module.css +73 -0
  58. package/lib/components/Pagination.js +7 -7
  59. package/lib/components/Pagination.js.map +1 -1
  60. package/lib/components/PasswordField.d.ts +1 -2
  61. package/lib/components/PasswordField.js +2 -2
  62. package/lib/components/PasswordField.js.map +1 -1
  63. package/lib/components/PasswordField.module.scss +3 -0
  64. package/lib/components/Select/CheckableSelectField.d.ts +0 -1
  65. package/lib/components/Select/CheckableSelectField.js +12 -6
  66. package/lib/components/Select/CheckableSelectField.js.map +1 -1
  67. package/lib/components/Select/CheckableSelectField.module.css +112 -0
  68. package/lib/components/Select/Common.js +3 -3
  69. package/lib/components/Select/Common.js.map +1 -1
  70. package/lib/components/Select/Common.module.css +35 -0
  71. package/lib/components/Select/MultiSelectField.d.ts +1 -1
  72. package/lib/components/Select/MultiSelectField.js +3 -5
  73. package/lib/components/Select/MultiSelectField.js.map +1 -1
  74. package/lib/components/Select/MultiSelectField.module.css +60 -0
  75. package/lib/components/Select/SelectField.d.ts +2 -3
  76. package/lib/components/Select/SelectField.js +4 -6
  77. package/lib/components/Select/SelectField.js.map +1 -1
  78. package/lib/components/Select/SelectField.module.css +202 -0
  79. package/lib/components/SimpleTable.d.ts +25 -6
  80. package/lib/components/SimpleTable.js +27 -12
  81. package/lib/components/SimpleTable.js.map +1 -1
  82. package/lib/components/SimpleTable.module.css +80 -0
  83. package/lib/components/Table/Cell.js +6 -7
  84. package/lib/components/Table/Cell.js.map +1 -1
  85. package/lib/components/Tabs/Tab.js +1 -1
  86. package/lib/components/Tabs/Tab.js.map +1 -1
  87. package/lib/components/Tabs/Tab.module.css +58 -0
  88. package/lib/components/Tabs/TabList.js +1 -1
  89. package/lib/components/Tabs/TabList.js.map +1 -1
  90. package/lib/components/Tabs/TabList.module.css +9 -0
  91. package/lib/components/Tabs/TabPanel.js +1 -1
  92. package/lib/components/Tabs/TabPanel.js.map +1 -1
  93. package/lib/components/Tabs/TabPanel.module.css +7 -0
  94. package/lib/components/TextArea.js +1 -1
  95. package/lib/components/TextArea.js.map +1 -1
  96. package/lib/components/TextArea.module.css +109 -0
  97. package/lib/components/TextField.d.ts +2 -2
  98. package/lib/components/TextField.js +2 -2
  99. package/lib/components/TextField.js.map +1 -1
  100. package/lib/components/TextField.module.css +195 -0
  101. package/lib/components/Toast/Toast.d.ts +12 -0
  102. package/lib/components/Toast/Toast.js +26 -0
  103. package/lib/components/Toast/Toast.js.map +1 -0
  104. package/lib/components/Toast/Toast.module.css +98 -0
  105. package/lib/components/Toast/index.d.ts +4 -0
  106. package/lib/components/Toast/index.js +5 -0
  107. package/lib/components/Toast/index.js.map +1 -0
  108. package/lib/components/Toggle.js +2 -3
  109. package/lib/components/Toggle.js.map +1 -1
  110. package/lib/components/Toggle.module.css +120 -0
  111. package/lib/components/Tooltip.d.ts +35 -22
  112. package/lib/components/Tooltip.js +22 -47
  113. package/lib/components/Tooltip.js.map +1 -1
  114. package/lib/components/Tooltip.module.css +128 -0
  115. package/lib/components/TruncatedText.d.ts +2 -2
  116. package/lib/components/TruncatedText.js +3 -3
  117. package/lib/components/TruncatedText.js.map +1 -1
  118. package/lib/index.d.ts +1 -0
  119. package/lib/index.js.map +1 -1
  120. package/lib/old/AutocompleteField.d.ts +49 -0
  121. package/lib/old/AutocompleteField.js +166 -0
  122. package/lib/old/AutocompleteField.js.map +1 -0
  123. package/lib/old/AutocompleteFieldFormik.d.ts +9 -0
  124. package/lib/old/AutocompleteFieldFormik.js +19 -0
  125. package/lib/old/AutocompleteFieldFormik.js.map +1 -0
  126. package/lib/old/Button.d.ts +75 -0
  127. package/lib/old/Button.js +37 -0
  128. package/lib/old/Button.js.map +1 -0
  129. package/lib/{components/Button.module.scss → old/ButtonLegacy.module.scss} +2 -8
  130. package/lib/old/Checkbox.d.ts +35 -0
  131. package/lib/old/Checkbox.js +38 -0
  132. package/lib/old/Checkbox.js.map +1 -0
  133. package/lib/old/CheckboxFormik.d.ts +10 -0
  134. package/lib/old/CheckboxFormik.js +17 -0
  135. package/lib/old/CheckboxFormik.js.map +1 -0
  136. package/lib/old/IconButton.d.ts +49 -0
  137. package/lib/old/IconButton.js +25 -0
  138. package/lib/old/IconButton.js.map +1 -0
  139. package/lib/old/InteractiveList.d.ts +34 -0
  140. package/lib/old/InteractiveList.js +43 -0
  141. package/lib/old/InteractiveList.js.map +1 -0
  142. package/lib/old/InteractiveListFormik.d.ts +10 -0
  143. package/lib/old/InteractiveListFormik.js +75 -0
  144. package/lib/old/InteractiveListFormik.js.map +1 -0
  145. package/lib/old/Modal.d.ts +26 -0
  146. package/lib/old/Modal.js +41 -0
  147. package/lib/old/Modal.js.map +1 -0
  148. package/lib/old/NumberField.d.ts +33 -0
  149. package/lib/old/NumberField.js +141 -0
  150. package/lib/old/NumberField.js.map +1 -0
  151. package/lib/old/NumberFieldFormik.d.ts +10 -0
  152. package/lib/old/NumberFieldFormik.js +52 -0
  153. package/lib/old/NumberFieldFormik.js.map +1 -0
  154. package/lib/old/PasswordField.d.ts +29 -0
  155. package/lib/old/PasswordField.js +26 -0
  156. package/lib/old/PasswordField.js.map +1 -0
  157. package/lib/old/PasswordFieldFormik.d.ts +10 -0
  158. package/lib/old/PasswordFieldFormik.js +17 -0
  159. package/lib/old/PasswordFieldFormik.js.map +1 -0
  160. package/lib/old/PasswordFieldLegacy.module.scss +26 -0
  161. package/lib/old/Select/CheckableSelectField.d.ts +40 -0
  162. package/lib/old/Select/CheckableSelectField.js +77 -0
  163. package/lib/old/Select/CheckableSelectField.js.map +1 -0
  164. package/lib/old/Select/CheckableSelectFieldFormik.d.ts +10 -0
  165. package/lib/old/Select/CheckableSelectFieldFormik.js +19 -0
  166. package/lib/old/Select/CheckableSelectFieldFormik.js.map +1 -0
  167. package/lib/old/Select/Common.d.ts +5 -0
  168. package/lib/old/Select/Common.js +54 -0
  169. package/lib/old/Select/Common.js.map +1 -0
  170. package/lib/old/Select/MultiSelectField.d.ts +28 -0
  171. package/lib/old/Select/MultiSelectField.js +113 -0
  172. package/lib/old/Select/MultiSelectField.js.map +1 -0
  173. package/lib/old/Select/MultiSelectFieldFormik.d.ts +11 -0
  174. package/lib/old/Select/MultiSelectFieldFormik.js +19 -0
  175. package/lib/old/Select/MultiSelectFieldFormik.js.map +1 -0
  176. package/lib/old/Select/SelectField.d.ts +43 -0
  177. package/lib/old/Select/SelectField.js +103 -0
  178. package/lib/old/Select/SelectField.js.map +1 -0
  179. package/lib/old/Select/SelectFieldFormik.d.ts +10 -0
  180. package/lib/old/Select/SelectFieldFormik.js +19 -0
  181. package/lib/old/Select/SelectFieldFormik.js.map +1 -0
  182. package/lib/old/Select/helpers.d.ts +12 -0
  183. package/lib/old/Select/helpers.js +29 -0
  184. package/lib/old/Select/helpers.js.map +1 -0
  185. package/lib/old/SimpleTable.d.ts +11 -0
  186. package/lib/old/SimpleTable.js +26 -0
  187. package/lib/old/SimpleTable.js.map +1 -0
  188. package/lib/old/Tabs.d.ts +53 -0
  189. package/lib/old/Tabs.js +92 -0
  190. package/lib/old/Tabs.js.map +1 -0
  191. package/lib/{components/Tabs/Tab.module.scss → old/TabsLegacy.module.scss} +14 -6
  192. package/lib/old/TextArea.d.ts +19 -0
  193. package/lib/old/TextArea.js +25 -0
  194. package/lib/old/TextArea.js.map +1 -0
  195. package/lib/old/TextAreaFormik.d.ts +9 -0
  196. package/lib/old/TextAreaFormik.js +11 -0
  197. package/lib/old/TextAreaFormik.js.map +1 -0
  198. package/lib/old/TextField.d.ts +50 -0
  199. package/lib/old/TextField.js +65 -0
  200. package/lib/old/TextField.js.map +1 -0
  201. package/lib/old/TextFieldFormik.d.ts +11 -0
  202. package/lib/old/TextFieldFormik.js +23 -0
  203. package/lib/old/TextFieldFormik.js.map +1 -0
  204. package/lib/{components/TextField.module.scss → old/TextFieldLegacy.module.scss} +0 -1
  205. package/lib/{components → old}/Toast.js +2 -2
  206. package/lib/old/Toast.js.map +1 -0
  207. package/lib/old/Toggle.d.ts +21 -0
  208. package/lib/old/Toggle.js +22 -0
  209. package/lib/old/Toggle.js.map +1 -0
  210. package/lib/old/ToggleFormik.d.ts +9 -0
  211. package/lib/old/ToggleFormik.js +12 -0
  212. package/lib/old/ToggleFormik.js.map +1 -0
  213. package/lib/{components/Toggle.module.scss → old/ToggleLegacy.module.scss} +0 -2
  214. package/lib/old/Tooltip.d.ts +34 -0
  215. package/lib/old/Tooltip.js +57 -0
  216. package/lib/old/Tooltip.js.map +1 -0
  217. package/lib/old/Tooltip.module.scss +45 -0
  218. package/lib/old/index.d.ts +58 -0
  219. package/lib/old/index.js +34 -0
  220. package/lib/old/index.js.map +1 -0
  221. package/package.json +5 -11
  222. package/styles/constants/_colors.scss +18 -0
  223. package/styles/variables.css +162 -0
  224. package/lib/components/Tabs/TabList.module.scss +0 -3
  225. package/lib/components/Tabs/TabPanel.module.scss +0 -7
  226. package/lib/components/Toast.js.map +0 -1
  227. /package/lib/{components/AutocompleteField.module.scss → old/AutocompleteFieldLegacy.module.scss} +0 -0
  228. /package/lib/{components/Checkbox.module.scss → old/CheckboxLegacy.module.scss} +0 -0
  229. /package/lib/{components/IconButton.module.scss → old/IconButtonLegacy.module.scss} +0 -0
  230. /package/lib/{components/InteractiveList.module.scss → old/InteractiveListLegacy.module.scss} +0 -0
  231. /package/lib/{components/Modal.module.scss → old/ModalLegacy.module.scss} +0 -0
  232. /package/lib/{components/NumberField.module.scss → old/NumberFieldLegacy.module.scss} +0 -0
  233. /package/lib/{components/Select/CheckableSelectField.module.scss → old/Select/CheckableSelectFieldLegacy.module.scss} +0 -0
  234. /package/lib/{components/Select/Common.module.scss → old/Select/CommonLegacy.module.scss} +0 -0
  235. /package/lib/{components/Select/MultiSelectField.module.scss → old/Select/MultiSelectFieldLegacy.module.scss} +0 -0
  236. /package/lib/{components/Select/SelectField.module.scss → old/Select/SelectFieldLegacy.module.scss} +0 -0
  237. /package/lib/{components/SimpleTable.module.scss → old/SimpleTableLegacy.module.scss} +0 -0
  238. /package/lib/{components/TextArea.module.scss → old/TextAreaLegacy.module.scss} +0 -0
  239. /package/lib/{components → old}/Toast.d.ts +0 -0
  240. /package/lib/{components/Toast.module.scss → old/ToastLegacy.module.scss} +0 -0
@@ -0,0 +1,97 @@
1
+ .wrapper {
2
+ --checkbox-size: calc(var(--hive-grid) * 4);
3
+ --checkbox-radius: calc(var(--hive-grid) * 1);
4
+ --checkbox-padding: 1px;
5
+ --checkbox-transition-duration: 120ms;
6
+ --checkbox-shadow: 0 1px 2px oklch(0 0 0 / 0.05);
7
+ --checkbox-shadow-checked: 0 1px 1px oklch(0 0 0 / 0.05);
8
+
9
+ display: flex;
10
+ flex-direction: row;
11
+ align-items: center;
12
+ gap: calc(var(--hive-grid) * 2);
13
+ cursor: pointer;
14
+ box-sizing: border-box;
15
+ color: var(--hive-color-text-v4);
16
+ font-family: var(--hive-font-family-text);
17
+ font-size: var(--hive-font-size-body-small);
18
+ font-weight: var(--hive-font-weight-text-regular);
19
+ line-height: var(--hive-line-height-body-small);
20
+ }
21
+
22
+ .wrapper * {
23
+ box-sizing: border-box;
24
+ }
25
+
26
+ .wrapper input {
27
+ position: absolute;
28
+ width: 1px;
29
+ height: 1px;
30
+ padding: 0;
31
+ margin: -1px;
32
+ overflow: hidden;
33
+ clip: rect(0, 0, 0, 0);
34
+ white-space: nowrap;
35
+ border: 0;
36
+ }
37
+
38
+ .wrapper .checkmark {
39
+ order: -1;
40
+ flex-shrink: 0;
41
+ width: var(--checkbox-size);
42
+ height: var(--checkbox-size);
43
+ padding: var(--checkbox-padding);
44
+ border: var(--hive-border-width) solid var(--hive-color-border-v4);
45
+ border-radius: var(--checkbox-radius);
46
+ background-color: var(--hive-color-neutral-white-v4);
47
+ color: var(--hive-color-neutral-white-v4);
48
+ box-shadow: var(--checkbox-shadow);
49
+ transition:
50
+ background-color var(--checkbox-transition-duration) ease,
51
+ border-color var(--checkbox-transition-duration) ease,
52
+ box-shadow var(--checkbox-transition-duration) ease;
53
+ }
54
+
55
+ .wrapper > input:checked ~ .checkmark,
56
+ .wrapper.indeterminate > input ~ .checkmark {
57
+ background-color: var(--hive-color-primary-v4);
58
+ border-color: var(--hive-color-primary-v4);
59
+ box-shadow: var(--checkbox-shadow-checked);
60
+ }
61
+
62
+ .wrapper:hover > input:not(:disabled) ~ .checkmark,
63
+ .wrapper.hover > input:not(:disabled) ~ .checkmark {
64
+ border-color: var(--hive-color-primary-v4);
65
+ }
66
+
67
+ .wrapper.error > input ~ .checkmark {
68
+ border-color: var(--hive-color-error-v4);
69
+ }
70
+
71
+ .wrapper > input:focus-visible ~ .checkmark,
72
+ .wrapper.focus > input ~ .checkmark {
73
+ border-color: var(--hive-color-primary-v4);
74
+ box-shadow: 0 0 0 3px oklch(from var(--hive-color-primary-v4) l c h / 0.5);
75
+ }
76
+
77
+ .wrapper.disabled {
78
+ cursor: not-allowed;
79
+ opacity: 0.5;
80
+ }
81
+
82
+ .wrapper .name {
83
+ overflow: hidden;
84
+ }
85
+
86
+ .wrapper .helperText {
87
+ margin-left: calc(var(--hive-grid) * 1);
88
+ }
89
+
90
+ .errorContainer {
91
+ margin-top: calc(var(--hive-grid) * 0.5);
92
+ margin-left: calc(var(--hive-grid) * 6);
93
+ }
94
+
95
+ .withError {
96
+ margin-bottom: calc(var(--hive-grid) * 2);
97
+ }
@@ -18,7 +18,7 @@ export const Dialog = ({ modalClassName, consequences, affirmation = DIALOG_AFFI
18
18
  ? [
19
19
  {
20
20
  autoFocus: !actionDangerous,
21
- color: actionDangerous ? 'secondary' : 'primary',
21
+ color: actionDangerous ? 'danger' : 'primary',
22
22
  ...(actionDisabled && actionDisabledTooltip
23
23
  ? {
24
24
  disabled: actionDisabled,
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../src/components/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAiB,OAAO,EAAE,MAAM,OAAO,CAAA;AACrD,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,KAAK,EAAgC,MAAM,SAAS,CAAA;AAE7D,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,mCAAmC,CAAA;AAyB7E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAoB,CAAC,EACtC,cAAc,EACd,YAAY,EACZ,WAAW,GAAG,0BAA0B,EACxC,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,MAAM,KAAK,GACT,cAAc,IAAI,eAAe;YAC/B,CAAC,CAAC;gBACE;oBACE,SAAS,EAAE,CAAC,eAAe;oBAC3B,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;oBAChD,GAAG,CAAC,cAAc,IAAI,qBAAqB;wBACzC,CAAC,CAAC;4BACE,QAAQ,EAAE,cAAc;4BACxB,eAAe,EAAE,qBAAqB;yBACvC;wBACH,CAAC,CAAC;4BACE,QAAQ,EAAE,SAAS;4BACnB,eAAe,EAAE,SAAS;yBAC3B,CAAC;oBACN,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,cAAc;iBACzB;aACF;YACH,CAAC,CAAC,EAAE,CAAA;QAER,OAAO,KAAK,CAAA;IACd,CAAC,EAAE,CAAC,eAAe,EAAE,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAA;IAE7F,OAAO,CACL,oBAAC,KAAK,IACJ,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EAC5C,eAAe,EAAE,MAAM,CAAC,YAAY,EACpC,aAAa,EAAE,MAAM,CAAC,UAAU,EAChC,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,EAC3C,eAAe,EAAE,MAAM,CAAC,YAAY,EACpC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,WAAW,EAClB,eAAe,EAAE,KAAK,KAClB,IAAI,IAEP,YAAY,CACP,CACT,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../src/components/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAiB,OAAO,EAAE,MAAM,OAAO,CAAA;AACrD,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,KAAK,EAAgC,MAAM,SAAS,CAAA;AAE7D,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,mCAAmC,CAAA;AAyB7E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAoB,CAAC,EACtC,cAAc,EACd,YAAY,EACZ,WAAW,GAAG,0BAA0B,EACxC,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,MAAM,KAAK,GACT,cAAc,IAAI,eAAe;YAC/B,CAAC,CAAC;gBACE;oBACE,SAAS,EAAE,CAAC,eAAe;oBAC3B,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;oBAC7C,GAAG,CAAC,cAAc,IAAI,qBAAqB;wBACzC,CAAC,CAAC;4BACE,QAAQ,EAAE,cAAc;4BACxB,eAAe,EAAE,qBAAqB;yBACvC;wBACH,CAAC,CAAC;4BACE,QAAQ,EAAE,SAAS;4BACnB,eAAe,EAAE,SAAS;yBAC3B,CAAC;oBACN,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,cAAc;iBACzB;aACF;YACH,CAAC,CAAC,EAAE,CAAA;QAER,OAAO,KAAK,CAAA;IACd,CAAC,EAAE,CAAC,eAAe,EAAE,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAA;IAE7F,OAAO,CACL,oBAAC,KAAK,IACJ,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EAC5C,eAAe,EAAE,MAAM,CAAC,YAAY,EACpC,aAAa,EAAE,MAAM,CAAC,UAAU,EAChC,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,EAC3C,eAAe,EAAE,MAAM,CAAC,YAAY,EACpC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,WAAW,EAClB,eAAe,EAAE,KAAK,KAClB,IAAI,IAEP,YAAY,CACP,CACT,CAAA;AACH,CAAC,CAAA"}
@@ -1,13 +1,13 @@
1
1
  import { FC } from 'react';
2
2
  import { DataTestProp } from '../helpers/types';
3
- import { TooltipProps } from './Tooltip';
3
+ import { TooltipSide } from './Tooltip';
4
4
  export declare const errorId: (inputId: string) => string;
5
5
  interface ErrorProps extends DataTestProp {
6
6
  error?: string;
7
7
  className?: string;
8
8
  inputId: string;
9
9
  truncated?: boolean;
10
- tooltipPlacement?: TooltipProps['placement'];
10
+ tooltipPlacement?: TooltipSide;
11
11
  }
12
12
  export declare const Error: FC<ErrorProps>;
13
13
  export {};
@@ -1,12 +1,12 @@
1
1
  import { CSSProperties, FC, ReactElement } from 'react';
2
2
  import { IconSize } from './Icon';
3
- import { TooltipProps } from './Tooltip';
3
+ import { TooltipSide } from './Tooltip';
4
4
  import { DataTestProp } from '../helpers/types';
5
5
  export declare const helpTooltipId: (inputId: string) => string;
6
6
  export interface HelpProps extends DataTestProp {
7
7
  parentId: string;
8
8
  helperText: string | ReactElement;
9
- placement?: TooltipProps['placement'];
9
+ placement?: TooltipSide;
10
10
  className?: string;
11
11
  size?: IconSize;
12
12
  tooltipWordBreak?: CSSProperties['wordBreak'];
@@ -8,7 +8,8 @@ import styles from './Help.module.scss';
8
8
  export const helpTooltipId = (inputId) => `${inputId}-help`;
9
9
  export const Help = ({ helperText, placement = 'top', parentId, className, tooltipWordBreak, size = 'small', 'data-test': dataTest = 'help', }) => {
10
10
  const tooltipId = helpTooltipId(parentId);
11
- return (React.createElement(Tooltip, { placement: placement, content: helperText, id: tooltipId, wordBreak: tooltipWordBreak }, (ref) => (React.createElement("div", { ref: ref, "data-test": dataTest, className: cn(styles.container, className) },
12
- React.createElement(Icon, { ariaLabel: "Help", "aria-describedby": tooltipId, color: styleConsts.colorPrimary, icon: HelpCircle, className: styles.icon, size: size })))));
11
+ return (React.createElement(Tooltip, { side: placement, content: helperText, id: tooltipId, wordBreak: tooltipWordBreak },
12
+ React.createElement("div", { "data-test": dataTest, className: cn(styles.container, className) },
13
+ React.createElement(Icon, { ariaLabel: "Help", "aria-describedby": tooltipId, color: styleConsts.colorPrimary, icon: HelpCircle, className: styles.icon, size: size }))));
13
14
  };
14
15
  //# sourceMappingURL=Help.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Help.js","sourceRoot":"","sources":["../../src/components/Help.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,IAAI,EAAY,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAA;AAGjD,OAAO,WAAW,MAAM,2CAA2C,CAAA;AACnE,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAEvC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,GAAG,OAAO,OAAO,CAAA;AAW3E,MAAM,CAAC,MAAM,IAAI,GAAkB,CAAC,EAClC,UAAU,EACV,SAAS,GAAG,KAAK,EACjB,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,IAAI,GAAG,OAAO,EACd,WAAW,EAAE,QAAQ,GAAG,MAAM,GAC/B,EAAE,EAAE;IACH,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAEzC,OAAO,CACL,oBAAC,OAAO,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,IAC3F,CAAC,GAAG,EAAE,EAAE,CAAC,CACR,6BAAK,GAAG,EAAE,GAAG,eAAa,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC;QAC5E,oBAAC,IAAI,IACH,SAAS,EAAC,MAAM,sBACE,SAAS,EAC3B,KAAK,EAAE,WAAW,CAAC,YAAY,EAC/B,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,MAAM,CAAC,IAAI,EACtB,IAAI,EAAE,IAAI,GACV,CACE,CACP,CACO,CACX,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"Help.js","sourceRoot":"","sources":["../../src/components/Help.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,IAAI,EAAY,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,OAAO,EAAe,MAAM,WAAW,CAAA;AAGhD,OAAO,WAAW,MAAM,2CAA2C,CAAA;AACnE,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAEvC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,GAAG,OAAO,OAAO,CAAA;AAW3E,MAAM,CAAC,MAAM,IAAI,GAAkB,CAAC,EAClC,UAAU,EACV,SAAS,GAAG,KAAK,EACjB,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,IAAI,GAAG,OAAO,EACd,WAAW,EAAE,QAAQ,GAAG,MAAM,GAC/B,EAAE,EAAE;IACH,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAEzC,OAAO,CACL,oBAAC,OAAO,IAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB;QACvF,0CAAgB,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC;YAClE,oBAAC,IAAI,IACH,SAAS,EAAC,MAAM,sBACE,SAAS,EAC3B,KAAK,EAAE,WAAW,CAAC,YAAY,EAC/B,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,MAAM,CAAC,IAAI,EACtB,IAAI,EAAE,IAAI,GACV,CACE,CACE,CACX,CAAA;AACH,CAAC,CAAA"}
@@ -1,22 +1,22 @@
1
1
  import React, { ButtonHTMLAttributes } from 'react';
2
2
  import { Icon as FeatherIcon } from 'react-feather';
3
- import { IconProps, IconAriaProps } from './Icon';
4
- import { TooltipProps } from './Tooltip';
3
+ import { IconAriaProps } from './Icon';
4
+ import { ButtonVariant, ButtonColor, ButtonSize } from './Button';
5
+ import { TooltipSide } from './Tooltip';
5
6
  import { LinkRel, LinkTarget } from './Link';
6
7
  import { DataTestProp } from '../helpers/types';
7
- export type IconButtonKind = 'primary' | 'transparent';
8
8
  type IconButtonCommonProps = {
9
9
  icon: FeatherIcon;
10
10
  iconClassName?: string;
11
11
  iconColor?: string;
12
12
  iconRole?: string;
13
13
  loaderRole?: string;
14
- kind?: IconButtonKind;
15
- size?: IconProps['size'];
16
- padding?: 'normal';
14
+ variant?: ButtonVariant;
15
+ color?: ButtonColor;
16
+ size?: ButtonSize;
17
17
  tooltip?: string;
18
18
  tooltipVisible?: boolean;
19
- tooltipPlacement?: TooltipProps['placement'];
19
+ tooltipPlacement?: TooltipSide;
20
20
  } & DataTestProp & IconAriaProps & Pick<ButtonHTMLAttributes<HTMLAnchorElement | HTMLButtonElement>, 'onClick' | 'onMouseDown' | 'className' | 'tabIndex' | 'style'>;
21
21
  export type IconButtonNotDisabledProps = {
22
22
  disabledTooltip?: never;
@@ -27,7 +27,7 @@ export type IconButtonNotDisabledProps = {
27
27
  export type IconButtonDisabledProps = {
28
28
  disabledTooltip: string;
29
29
  disabled: boolean;
30
- disabledTooltipPlacement?: TooltipProps['placement'];
30
+ disabledTooltipPlacement?: TooltipSide;
31
31
  disabledTooltipVisible?: boolean;
32
32
  };
33
33
  type IconButtonComponentProps = ({
@@ -1,25 +1,36 @@
1
1
  import React, { forwardRef } from 'react';
2
2
  import cn from 'classnames';
3
3
  import { useUID } from 'react-uid';
4
- import mergeRefs from 'react-merge-refs';
5
4
  import { Icon } from './Icon';
6
5
  import { Tooltip } from './Tooltip';
7
6
  import { Loader } from './Loader';
8
- import styles from './IconButton.module.scss';
9
- export const IconButton = forwardRef(({ component: Component = 'button', icon, iconClassName, iconColor, iconRole, loaderRole, className, size, kind = 'transparent', ariaHidden, ariaLabelledBy, ariaLabel,
10
- // Disabled tooltip
11
- disabled, disabledTooltip, disabledTooltipVisible, disabledTooltipPlacement, rel = 'noopener', target, type = 'button', loading, padding, tooltip, tooltipPlacement, tooltipVisible, 'data-test': dataTest = 'icon-button', ...rest }, ref) => {
7
+ import styles from './IconButton.module.css';
8
+ const variantClass = {
9
+ contained: styles.variantContained,
10
+ outlined: styles.variantOutlined,
11
+ ghost: styles.variantGhost,
12
+ link: styles.variantLink,
13
+ };
14
+ const colorClass = {
15
+ primary: styles.colorPrimary,
16
+ secondary: styles.colorSecondary,
17
+ warning: styles.colorWarning,
18
+ danger: styles.colorDanger,
19
+ };
20
+ const sizeClass = {
21
+ small: styles.sizeSmall,
22
+ regular: styles.sizeRegular,
23
+ };
24
+ export const IconButton = forwardRef(({ component: Component = 'button', icon, iconClassName, iconColor, iconRole, loaderRole, className, variant = 'contained', color = 'primary', size = 'regular', ariaHidden, ariaLabelledBy, ariaLabel, disabled, disabledTooltip, disabledTooltipVisible, disabledTooltipPlacement, rel = 'noopener', target, type = 'button', loading, tooltip, tooltipPlacement, tooltipVisible, 'data-test': dataTest = 'icon-button', ...rest }, ref) => {
12
25
  const tooltipId = useUID();
26
+ const iconSize = size === 'small' ? 'small' : 'smallMedium';
13
27
  const relFinal = Array.isArray(rel) ? rel.join(' ') : rel;
14
28
  const labelledByFinal = [ariaLabelledBy, disabled ? tooltipId : undefined].filter(Boolean).join(' ');
15
- return (React.createElement(Tooltip, { id: tooltipId, content: disabled ? disabledTooltip : tooltip, placement: disabled ? disabledTooltipPlacement : tooltipPlacement, visible: disabled ? disabledTooltipVisible : tooltipVisible }, (tooltipRef) => (React.createElement(Component, { className: cn(styles.iconButton, {
16
- [styles.primary]: kind === 'primary',
17
- [styles.transparent]: kind === 'transparent',
18
- [styles.paddingNormal]: padding === 'normal',
19
- }, className), "aria-hidden": ariaHidden, "aria-label": ariaLabel, "aria-labelledby": labelledByFinal, disabled: disabled !== null && disabled !== void 0 ? disabled : loading, rel: Component === 'a' ? relFinal : undefined, target: Component === 'a' ? target : undefined, type: Component === 'button' ? type : undefined, "data-test": dataTest, ...rest },
20
- React.createElement("span", { className: styles.body, ref: mergeRefs([ref, tooltipRef]) },
21
- loading && React.createElement(Loader, { role: loaderRole, size: size }),
22
- !loading && (React.createElement(Icon, { role: iconRole, className: iconClassName, color: iconColor, "data-test": `${dataTest}-icon`, icon: icon, size: size, ariaHidden: true })))))));
29
+ return (React.createElement(Tooltip, { id: tooltipId, content: disabled ? disabledTooltip : tooltip, side: disabled ? disabledTooltipPlacement : tooltipPlacement, open: disabled ? disabledTooltipVisible : tooltipVisible },
30
+ React.createElement(Component, { className: cn(styles.iconButton, variantClass[variant], colorClass[color], sizeClass[size], className), "aria-hidden": ariaHidden, "aria-label": ariaLabel, "aria-labelledby": labelledByFinal, disabled: disabled !== null && disabled !== void 0 ? disabled : loading, rel: Component === 'a' ? relFinal : undefined, target: Component === 'a' ? target : undefined, type: Component === 'button' ? type : undefined, "data-test": dataTest, ...rest },
31
+ React.createElement("span", { className: styles.body, ref: ref },
32
+ loading && React.createElement(Loader, { role: loaderRole, size: iconSize }),
33
+ !loading && (React.createElement(Icon, { role: iconRole, className: iconClassName, color: iconColor, "data-test": `${dataTest}-icon`, icon: icon, size: iconSize, ariaHidden: true }))))));
23
34
  });
24
35
  IconButton.displayName = 'IconButton';
25
36
  //# sourceMappingURL=IconButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../src/components/IconButton.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../src/components/IconButton.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,145 @@
1
+ .iconButton {
2
+ --button-size: 36px;
3
+ --button-color-base: var(--hive-color-brand-v4);
4
+ --button-color-fg-on-base: var(--hive-color-text-v4);
5
+ --button-color-fg-on-light: var(--hive-color-text-v4);
6
+ --button-bg: var(--button-color-base);
7
+ --button-bg-hover: oklch(from var(--button-bg) calc(l - 0.04) c h);
8
+ --button-bg-active: oklch(from var(--button-bg) calc(l - 0.08) c h);
9
+ --button-color: var(--button-color-fg-on-base);
10
+ --button-border: transparent;
11
+ --button-border-hover: var(--button-border);
12
+
13
+ position: relative;
14
+ display: inline-flex;
15
+ align-items: center;
16
+ justify-content: center;
17
+ box-sizing: border-box;
18
+ width: var(--button-size);
19
+ height: var(--button-size);
20
+ padding: 0;
21
+ border: var(--hive-border-width) solid var(--button-border);
22
+ border-radius: var(--hive-border-radius);
23
+ background: var(--button-bg);
24
+ color: var(--button-color);
25
+ cursor: pointer;
26
+ transition:
27
+ background-color 120ms ease,
28
+ border-color 120ms ease,
29
+ color 120ms ease;
30
+ }
31
+
32
+ .sizeSmall {
33
+ --button-size: 32px;
34
+ }
35
+
36
+ .sizeRegular {
37
+ --button-size: 36px;
38
+ }
39
+
40
+ .iconButton:hover,
41
+ .iconButton.hover {
42
+ background: var(--button-bg-hover);
43
+ border-color: var(--button-border-hover);
44
+ }
45
+
46
+ .iconButton:active,
47
+ .iconButton.active {
48
+ background: var(--button-bg-active);
49
+ }
50
+
51
+ .iconButton:disabled,
52
+ .iconButton.disabled {
53
+ opacity: 0.5;
54
+ cursor: not-allowed;
55
+ }
56
+
57
+ .iconButton:focus-visible,
58
+ .iconButton.focus {
59
+ outline: var(--hive-outline-width) solid var(--hive-color-primary-v4);
60
+ outline-offset: 2px;
61
+ }
62
+
63
+ .variantContained {
64
+ --button-bg: var(--button-color-base);
65
+ --button-color: var(--button-color-fg-on-base);
66
+ --button-border: transparent;
67
+ }
68
+
69
+ .variantOutlined {
70
+ --button-bg: var(--hive-color-neutral-white-v4);
71
+ --button-bg-hover: var(--hive-color-surface-hover-v4);
72
+ --button-bg-active: var(--hive-color-surface-active-v4);
73
+ --button-color: var(--button-color-fg-on-light);
74
+ --button-border: var(--button-color-base);
75
+ --button-border-hover: var(--button-color-base);
76
+ }
77
+
78
+ .variantGhost {
79
+ --button-bg: transparent;
80
+ --button-bg-hover: var(--hive-color-surface-hover-v4);
81
+ --button-bg-active: var(--hive-color-surface-active-v4);
82
+ --button-color: var(--button-color-fg-on-light);
83
+ }
84
+
85
+ .variantGhost.colorPrimary {
86
+ --button-bg-hover: oklch(from var(--hive-color-brand-v4) 0.95 calc(c * 0.5) h);
87
+ --button-bg-active: oklch(from var(--hive-color-brand-v4) 0.9 calc(c * 0.6) h);
88
+ }
89
+
90
+ .variantGhost.colorWarning {
91
+ --button-bg-hover: oklch(from var(--hive-color-warning) 0.95 calc(c * 0.5) h);
92
+ --button-bg-active: oklch(from var(--hive-color-warning) 0.9 calc(c * 0.6) h);
93
+ }
94
+
95
+ .variantGhost.colorDanger {
96
+ --button-bg-hover: oklch(from var(--hive-color-error) 0.95 calc(c * 0.4) h);
97
+ --button-bg-active: oklch(from var(--hive-color-error) 0.9 calc(c * 0.5) h);
98
+ }
99
+
100
+ .variantLink {
101
+ --button-bg: transparent;
102
+ --button-bg-hover: transparent;
103
+ --button-bg-active: transparent;
104
+ --button-color: var(--hive-color-link-v4);
105
+ }
106
+
107
+ .colorPrimary {
108
+ --button-color-base: var(--hive-color-brand-v4);
109
+ --button-color-fg-on-base: var(--hive-color-text-v4);
110
+ --button-color-fg-on-light: var(--hive-color-text-v4);
111
+ }
112
+
113
+ .colorSecondary {
114
+ --button-color-base: var(--hive-color-secondary-v4);
115
+ --button-color-fg-on-base: var(--hive-color-text-v4);
116
+ --button-color-fg-on-light: var(--hive-color-text-v4);
117
+ }
118
+
119
+ .colorWarning {
120
+ --button-color-base: var(--hive-color-warning);
121
+ --button-color-fg-on-base: var(--hive-color-warning-darkest);
122
+ --button-color-fg-on-light: var(--hive-color-warning-darkest);
123
+ }
124
+
125
+ .colorDanger {
126
+ --button-color-base: var(--hive-color-error);
127
+ --button-color-fg-on-base: var(--hive-color-neutral-white-v4);
128
+ --button-color-fg-on-light: var(--hive-color-error);
129
+ }
130
+
131
+ .variantOutlined.colorSecondary {
132
+ --button-border: var(--hive-color-border-v4);
133
+ --button-border-hover: var(--hive-color-border-v4);
134
+ }
135
+
136
+ .variantOutlined.colorWarning {
137
+ --button-border: var(--hive-color-warning-darkest);
138
+ --button-border-hover: var(--hive-color-warning-darkest);
139
+ }
140
+
141
+ .body {
142
+ display: inline-flex;
143
+ align-items: center;
144
+ justify-content: center;
145
+ }
@@ -35,4 +35,4 @@ export declare const InteractiveListItem: ({ onRemoveItem, content, error, idx,
35
35
  * This component is meant to be used only from InteractiveListFormik
36
36
  * @private
37
37
  */
38
- export declare const InteractiveList: <V>({ label, children, error, name, value, helperText, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, "data-test": dataTest, }: InteractiveListProps<V>) => React.JSX.Element;
38
+ export declare const InteractiveList: <V>({ label, children, error, name, value, helperText, placeholder, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, "data-test": dataTest, }: InteractiveListProps<V>) => React.JSX.Element;
@@ -5,7 +5,7 @@ import cn from 'classnames';
5
5
  import { IconButton } from './IconButton';
6
6
  import { Error, errorId } from './Error';
7
7
  import { TextField } from './TextField';
8
- import styles from './InteractiveList.module.scss';
8
+ import styles from './InteractiveList.module.css';
9
9
  export const InteractiveListItem = ({ onRemoveItem, content, error, idx, 'data-test': dataTest }) => {
10
10
  const id = useUID();
11
11
  const errorProps = error
@@ -18,7 +18,7 @@ export const InteractiveListItem = ({ onRemoveItem, content, error, idx, 'data-t
18
18
  React.createElement("div", { "data-test": dataTest, className: styles.content },
19
19
  React.createElement("span", { id: id, ...errorProps }, content),
20
20
  ' ',
21
- React.createElement(IconButton, { kind: "primary", ariaLabel: "Remove Item", icon: X, size: "medium", className: styles.removeIcon, onClick: () => {
21
+ React.createElement(IconButton, { variant: "ghost", ariaLabel: "Remove Item", size: "small", icon: X, className: styles.removeIcon, onClick: () => {
22
22
  onRemoveItem(idx);
23
23
  } })),
24
24
  error && React.createElement(Error, { error: error, inputId: id })));
@@ -27,11 +27,11 @@ export const InteractiveListItem = ({ onRemoveItem, content, error, idx, 'data-t
27
27
  * This component is meant to be used only from InteractiveListFormik
28
28
  * @private
29
29
  */
30
- export const InteractiveList = ({ label, children, error, name, value, helperText, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, 'data-test': dataTest = 'interactive-list', }) => {
30
+ export const InteractiveList = ({ label, children, error, name, value, helperText, placeholder, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, 'data-test': dataTest = 'interactive-list', }) => {
31
31
  const id = useUID();
32
32
  return (React.createElement(React.Fragment, null,
33
33
  React.createElement("div", { "data-test": dataTest, className: cn(styles.inputRow, className) },
34
- React.createElement(TextField, { id: id, type: type, helperText: helperText, inputIcon: inputIcon, inputClassName: cn(styles.input, inputClassName), inputContainerClassName: styles.inputContainer, inputBorderOverlayClassName: styles.inputBorderOverlay, error: typeof error === 'string' ? error : undefined, label: label, name: name, value: inputValue, onChange: ({ target: { value } }) => {
34
+ React.createElement(TextField, { id: id, type: type, helperText: helperText, placeholder: placeholder, inputIcon: inputIcon, inputClassName: inputClassName, className: styles.field, error: typeof error === 'string' ? error : undefined, label: label, name: name, value: inputValue, onChange: ({ target: { value } }) => {
35
35
  setInputValue(value);
36
36
  }, onKeyDown: async (e) => {
37
37
  if (e.key === 'Enter') {
@@ -39,7 +39,7 @@ export const InteractiveList = ({ label, children, error, name, value, helperTex
39
39
  await onAddItem();
40
40
  }
41
41
  } },
42
- React.createElement(IconButton, { "data-test": `${dataTest}-add-button`, kind: "transparent", ariaLabel: "Add Icon", icon: Plus, className: cn(styles.addIcon, iconClassName), size: "medium", onClick: () => void onAddItem() }))),
42
+ React.createElement(IconButton, { "data-test": `${dataTest}-add-button`, variant: "contained", color: "secondary", ariaLabel: "Add item", icon: Plus, className: cn(styles.addIcon, iconClassName), onClick: () => void onAddItem() }))),
43
43
  children,
44
44
  React.createElement("ul", { className: cn(styles.list, listClassName) }, value.map((str, idx) => (React.createElement("li", { key: str, className: itemClassName },
45
45
  React.createElement(InteractiveListItem, { onRemoveItem: onRemoveItem, idx: idx, content: str, "data-test": `${dataTest}-item`, error: typeof error === 'object' && error[idx] ? error[idx] : undefined })))))));
@@ -1 +1 @@
1
- {"version":3,"file":"InteractiveList.js","sourceRoot":"","sources":["../../src/components/InteractiveList.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InteractiveList.js","sourceRoot":"","sources":["../../src/components/InteractiveList.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ .inputRow {
2
+ margin-bottom: calc(var(--hive-grid) * 3);
3
+ }
4
+
5
+ .field {
6
+ width: 100%;
7
+ }
8
+
9
+ .addIcon {
10
+ display: inline-flex;
11
+ align-items: center;
12
+ justify-content: center;
13
+ margin-left: calc(var(--hive-grid) * 2);
14
+ border-radius: var(--hive-border-radius);
15
+ border: var(--hive-border-width) solid transparent;
16
+ background-color: var(--hive-color-secondary-v4);
17
+ color: var(--hive-color-text-v4);
18
+ width: calc(var(--hive-grid) * 9);
19
+ height: calc(var(--hive-grid) * 9);
20
+ }
21
+
22
+ .addIcon:hover,
23
+ .addIcon:focus-visible {
24
+ background-color: color-mix(in oklab, var(--hive-color-secondary-v4) 75%, var(--hive-color-neutral-white-v4));
25
+ border-color: transparent;
26
+ color: var(--hive-color-brand-v4);
27
+ }
28
+
29
+ .list {
30
+ list-style: none;
31
+ padding: 0;
32
+ margin: 0;
33
+ }
34
+
35
+ .content {
36
+ display: flex;
37
+ justify-content: space-between;
38
+ align-items: center;
39
+ margin-top: calc(var(--hive-grid) * 3);
40
+ min-height: calc(var(--hive-grid) * 9);
41
+ padding: 0 calc(var(--hive-grid) * 2);
42
+ border: var(--hive-border-width) solid var(--hive-color-border-v4);
43
+ border-radius: var(--hive-border-radius);
44
+ background: color-mix(in oklab, var(--hive-color-neutral-lighter-v4) 80%, var(--hive-color-neutral-white-v4));
45
+ color: var(--hive-color-text-v4);
46
+ }
47
+
48
+ .removeIcon {
49
+ color: var(--hive-color-text-secondary-v4);
50
+ margin-right: 0;
51
+ border: none;
52
+ }
53
+
54
+ .removeIcon:hover,
55
+ .removeIcon:focus-visible {
56
+ background-color: transparent;
57
+ border-color: transparent;
58
+ color: var(--hive-color-text-v4);
59
+ }
@@ -1,13 +1,23 @@
1
- import { FC, ReactNode } from 'react';
1
+ import { FC, ReactElement, ReactNode, AnchorHTMLAttributes } from 'react';
2
2
  import { Props as ReactModalProps } from 'react-modal';
3
3
  import { DataTestProp } from '../helpers/types';
4
4
  import { ButtonProps, ButtonTypeButtonProps } from './Button';
5
5
  import { IconProps } from './Icon';
6
6
  export declare const setAppElement: (appElement: string | HTMLElement) => void;
7
7
  export type ModalActionProps = ButtonProps<ButtonTypeButtonProps>;
8
+ export type ModalIntent = 'action' | 'confirm' | 'info' | 'danger' | 'success';
9
+ export type ModalHelperLinkProps = {
10
+ label: ReactNode;
11
+ href: string;
12
+ ariaLabel?: string;
13
+ target?: AnchorHTMLAttributes<HTMLAnchorElement>['target'];
14
+ rel?: AnchorHTMLAttributes<HTMLAnchorElement>['rel'];
15
+ };
8
16
  export type ModalProps = {
9
17
  actions?: ModalActionProps[];
10
18
  hideActions?: boolean;
19
+ hideHeader?: boolean;
20
+ hideFooter?: boolean;
11
21
  autoFocus?: boolean;
12
22
  children?: ReactNode;
13
23
  closable?: boolean;
@@ -18,9 +28,16 @@ export type ModalProps = {
18
28
  footerClassName?: string;
19
29
  overlayClassName?: string;
20
30
  className?: string;
31
+ cancelLabel?: string | ReactElement;
21
32
  icon?: IconProps['icon'];
22
33
  iconAriaLabel?: IconProps['ariaLabel'];
23
34
  onClose: ReactModalProps['onRequestClose'];
24
- title: string;
35
+ title?: string;
36
+ description?: ReactNode;
37
+ eyebrow?: ReactNode;
38
+ intent?: ModalIntent;
39
+ helperLink?: ModalHelperLinkProps;
40
+ header?: ReactNode;
41
+ footer?: ReactNode;
25
42
  } & DataTestProp & Exclude<ReactModalProps, 'onRequestClose' | 'shouldFocusAfterRender' | 'shouldReturnFocusAfterClose'>;
26
43
  export declare const Modal: FC<ModalProps>;