@eccenca/gui-elements 22.0.0-rc.7 → 22.1.0-rc.1

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 (378) hide show
  1. package/CHANGELOG.md +36 -4
  2. package/README.md +21 -7
  3. package/dist/cjs/cmem/ActivityControl/ActivityControlWidget.js +23 -15
  4. package/dist/cjs/cmem/ActivityControl/ActivityControlWidget.js.map +1 -1
  5. package/dist/cjs/cmem/ActivityControl/ActivityExecutionErrorReportModal.js +23 -6
  6. package/dist/cjs/cmem/ActivityControl/ActivityExecutionErrorReportModal.js.map +1 -1
  7. package/dist/cjs/cmem/ActivityControl/SilkActivityControl.js +59 -31
  8. package/dist/cjs/cmem/ActivityControl/SilkActivityControl.js.map +1 -1
  9. package/dist/cjs/cmem/ActivityControl/index.js +11 -0
  10. package/dist/cjs/cmem/ActivityControl/index.js.map +1 -0
  11. package/dist/cjs/cmem/ContentBlobToggler/index.js +8 -0
  12. package/dist/cjs/cmem/ContentBlobToggler/index.js.map +1 -0
  13. package/dist/cjs/cmem/index.js +14 -13
  14. package/dist/cjs/cmem/index.js.map +1 -1
  15. package/dist/cjs/cmem/react-flow/ReactFlow/ReactFlow.js +57 -0
  16. package/dist/cjs/cmem/react-flow/ReactFlow/ReactFlow.js.map +1 -0
  17. package/dist/cjs/cmem/react-flow/configuration/_colors-graph.module.scss +35 -0
  18. package/dist/cjs/cmem/react-flow/configuration/_colors-linking.module.scss +29 -0
  19. package/dist/cjs/cmem/react-flow/configuration/_colors-workflow.module.scss +22 -0
  20. package/dist/cjs/cmem/react-flow/configuration/graph.js +31 -0
  21. package/dist/cjs/cmem/react-flow/configuration/graph.js.map +1 -0
  22. package/dist/cjs/cmem/react-flow/configuration/linking.js +29 -0
  23. package/dist/cjs/cmem/react-flow/configuration/linking.js.map +1 -0
  24. package/dist/cjs/cmem/react-flow/configuration/unspecified.js +15 -0
  25. package/dist/cjs/cmem/react-flow/configuration/unspecified.js.map +1 -0
  26. package/dist/cjs/cmem/react-flow/configuration/workflow.js +27 -0
  27. package/dist/cjs/cmem/react-flow/configuration/workflow.js.map +1 -0
  28. package/dist/cjs/common/utils/stringUtils.js +7 -0
  29. package/dist/cjs/common/utils/stringUtils.js.map +1 -0
  30. package/dist/cjs/components/Application/ApplicationContent.js +1 -7
  31. package/dist/cjs/components/Application/ApplicationContent.js.map +1 -1
  32. package/dist/cjs/components/Application/ApplicationTitle.js +1 -7
  33. package/dist/cjs/components/Application/ApplicationTitle.js.map +1 -1
  34. package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js +284 -0
  35. package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js.map +1 -0
  36. package/dist/cjs/components/AutoSuggestion/AutoSuggestionList.js +81 -0
  37. package/dist/cjs/components/AutoSuggestion/AutoSuggestionList.js.map +1 -0
  38. package/dist/cjs/components/AutoSuggestion/SingleLineCodeEditor.js +46 -0
  39. package/dist/cjs/components/AutoSuggestion/SingleLineCodeEditor.js.map +1 -0
  40. package/dist/cjs/components/AutocompleteField/AutoCompleteField.js +12 -15
  41. package/dist/cjs/components/AutocompleteField/AutoCompleteField.js.map +1 -1
  42. package/dist/cjs/components/Breadcrumb/BreadcrumbItem.js +1 -1
  43. package/dist/cjs/components/Button/Button.js +1 -1
  44. package/dist/cjs/components/Button/Button.js.map +1 -1
  45. package/dist/cjs/components/Card/Card.js +18 -3
  46. package/dist/cjs/components/Card/Card.js.map +1 -1
  47. package/dist/cjs/components/ContextOverlay/ContextMenu.js +1 -1
  48. package/dist/cjs/components/ContextOverlay/ContextMenu.js.map +1 -1
  49. package/dist/cjs/components/Dialog/Modal.js +2 -2
  50. package/dist/cjs/components/Dialog/Modal.js.map +1 -1
  51. package/dist/cjs/components/Dialog/SimpleDialog.js.map +1 -1
  52. package/dist/cjs/components/Form/FieldItemRow.js +2 -3
  53. package/dist/cjs/components/Form/FieldItemRow.js.map +1 -1
  54. package/dist/cjs/components/Icon/Icon.js.map +1 -1
  55. package/dist/cjs/components/Icon/canonicalIconNames.js +30 -0
  56. package/dist/cjs/components/Icon/canonicalIconNames.js.map +1 -1
  57. package/dist/cjs/components/MultiSelect/MultiSelect.js +212 -0
  58. package/dist/cjs/components/MultiSelect/MultiSelect.js.map +1 -0
  59. package/dist/cjs/components/Notification/Notification.js +8 -2
  60. package/dist/cjs/components/Notification/Notification.js.map +1 -1
  61. package/dist/cjs/components/OverviewItem/OverviewItemList.js +1 -1
  62. package/dist/cjs/components/OverviewItem/OverviewItemList.js.map +1 -1
  63. package/dist/cjs/components/Spinner/Spinner.js +1 -1
  64. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  65. package/dist/cjs/components/Tabs/Tab.js +94 -0
  66. package/dist/cjs/components/Tabs/Tab.js.map +1 -0
  67. package/dist/cjs/components/Tabs/TabTitle.js +20 -0
  68. package/dist/cjs/components/Tabs/TabTitle.js.map +1 -0
  69. package/dist/cjs/components/Tabs/Tabs.js +26 -19
  70. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  71. package/dist/cjs/components/Tag/Tag.js +7 -1
  72. package/dist/cjs/components/Tag/Tag.js.map +1 -1
  73. package/dist/cjs/components/Typography/HtmlContentBlock.js +6 -6
  74. package/dist/cjs/components/Typography/HtmlContentBlock.js.map +1 -1
  75. package/dist/cjs/components/Typography/classnames.js +2 -1
  76. package/dist/cjs/components/Typography/classnames.js.map +1 -1
  77. package/dist/cjs/extensions/react-flow/edges/EdgeDefault.js.map +1 -1
  78. package/dist/cjs/extensions/react-flow/edges/getSmoothStepPath.js +98 -0
  79. package/dist/cjs/extensions/react-flow/edges/getSmoothStepPath.js.map +1 -0
  80. package/dist/cjs/extensions/react-flow/edges/utils.js +97 -4
  81. package/dist/cjs/extensions/react-flow/edges/utils.js.map +1 -1
  82. package/dist/cjs/extensions/react-flow/index.js +5 -1
  83. package/dist/cjs/extensions/react-flow/index.js.map +1 -1
  84. package/dist/cjs/extensions/react-flow/minimap/utils.js +2 -2
  85. package/dist/cjs/extensions/react-flow/nodes/NodeContent.js +141 -0
  86. package/dist/cjs/extensions/react-flow/nodes/NodeContent.js.map +1 -0
  87. package/dist/cjs/extensions/react-flow/nodes/NodeContentExtension.js +41 -0
  88. package/dist/cjs/extensions/react-flow/nodes/NodeContentExtension.js.map +1 -0
  89. package/dist/cjs/extensions/react-flow/nodes/NodeDefault.js +3 -130
  90. package/dist/cjs/extensions/react-flow/nodes/NodeDefault.js.map +1 -1
  91. package/dist/cjs/extensions/react-flow/nodes/NodeTools.js +11 -9
  92. package/dist/cjs/extensions/react-flow/nodes/NodeTools.js.map +1 -1
  93. package/dist/cjs/index.js +17 -2
  94. package/dist/cjs/index.js.map +1 -1
  95. package/dist/cjs/legacy-replacements/Button/AffirmativeButton.js +25 -0
  96. package/dist/cjs/legacy-replacements/Button/AffirmativeButton.js.map +1 -0
  97. package/dist/cjs/legacy-replacements/Button/Button.js +61 -0
  98. package/dist/cjs/legacy-replacements/Button/Button.js.map +1 -0
  99. package/dist/cjs/legacy-replacements/Button/DismissiveButton.js +25 -0
  100. package/dist/cjs/legacy-replacements/Button/DismissiveButton.js.map +1 -0
  101. package/dist/cjs/legacy-replacements/Button/DisruptiveButton.js +25 -0
  102. package/dist/cjs/legacy-replacements/Button/DisruptiveButton.js.map +1 -0
  103. package/dist/cjs/legacy-replacements/Checkbox/Checkbox.js +55 -0
  104. package/dist/cjs/legacy-replacements/Checkbox/Checkbox.js.map +1 -0
  105. package/dist/cjs/legacy-replacements/Radio/RadioButton.js +48 -0
  106. package/dist/cjs/legacy-replacements/Radio/RadioButton.js.map +1 -0
  107. package/dist/cjs/legacy-replacements/Tabs/Tabs.js +36 -0
  108. package/dist/cjs/legacy-replacements/Tabs/Tabs.js.map +1 -0
  109. package/dist/cjs/legacy-replacements/TextField/TextField.js +75 -0
  110. package/dist/cjs/legacy-replacements/TextField/TextField.js.map +1 -0
  111. package/dist/cjs/legacy-replacements/index.js +22 -0
  112. package/dist/cjs/legacy-replacements/index.js.map +1 -0
  113. package/dist/es5/cmem/ActivityControl/ActivityControlWidget.js +23 -15
  114. package/dist/es5/cmem/ActivityControl/ActivityControlWidget.js.map +1 -1
  115. package/dist/es5/cmem/ActivityControl/ActivityExecutionErrorReportModal.js +21 -4
  116. package/dist/es5/cmem/ActivityControl/ActivityExecutionErrorReportModal.js.map +1 -1
  117. package/dist/es5/cmem/ActivityControl/SilkActivityControl.js +57 -31
  118. package/dist/es5/cmem/ActivityControl/SilkActivityControl.js.map +1 -1
  119. package/dist/es5/cmem/ActivityControl/index.js +4 -0
  120. package/dist/es5/cmem/ActivityControl/index.js.map +1 -0
  121. package/dist/es5/cmem/ContentBlobToggler/index.js +3 -0
  122. package/dist/es5/cmem/ContentBlobToggler/index.js.map +1 -0
  123. package/dist/es5/cmem/index.js +6 -8
  124. package/dist/es5/cmem/index.js.map +1 -1
  125. package/dist/es5/cmem/react-flow/ReactFlow/ReactFlow.js +43 -0
  126. package/dist/es5/cmem/react-flow/ReactFlow/ReactFlow.js.map +1 -0
  127. package/dist/es5/cmem/react-flow/configuration/_colors-graph.module.scss +35 -0
  128. package/dist/es5/cmem/react-flow/configuration/_colors-linking.module.scss +29 -0
  129. package/dist/es5/cmem/react-flow/configuration/_colors-workflow.module.scss +22 -0
  130. package/dist/es5/cmem/react-flow/configuration/graph.js +23 -0
  131. package/dist/es5/cmem/react-flow/configuration/graph.js.map +1 -0
  132. package/dist/es5/cmem/react-flow/configuration/linking.js +21 -0
  133. package/dist/es5/cmem/react-flow/configuration/linking.js.map +1 -0
  134. package/dist/es5/cmem/react-flow/configuration/unspecified.js +12 -0
  135. package/dist/es5/cmem/react-flow/configuration/unspecified.js.map +1 -0
  136. package/dist/es5/cmem/react-flow/configuration/workflow.js +19 -0
  137. package/dist/es5/cmem/react-flow/configuration/workflow.js.map +1 -0
  138. package/dist/es5/common/utils/stringUtils.js +3 -0
  139. package/dist/es5/common/utils/stringUtils.js.map +1 -0
  140. package/dist/es5/components/Application/ApplicationContent.js +1 -7
  141. package/dist/es5/components/Application/ApplicationContent.js.map +1 -1
  142. package/dist/es5/components/Application/ApplicationTitle.js +1 -7
  143. package/dist/es5/components/Application/ApplicationTitle.js.map +1 -1
  144. package/dist/es5/components/AutoSuggestion/AutoSuggestion.js +346 -0
  145. package/dist/es5/components/AutoSuggestion/AutoSuggestion.js.map +1 -0
  146. package/dist/es5/components/AutoSuggestion/AutoSuggestionList.js +93 -0
  147. package/dist/es5/components/AutoSuggestion/AutoSuggestionList.js.map +1 -0
  148. package/dist/es5/components/AutoSuggestion/SingleLineCodeEditor.js +42 -0
  149. package/dist/es5/components/AutoSuggestion/SingleLineCodeEditor.js.map +1 -0
  150. package/dist/es5/components/AutocompleteField/AutoCompleteField.js +12 -15
  151. package/dist/es5/components/AutocompleteField/AutoCompleteField.js.map +1 -1
  152. package/dist/es5/components/Breadcrumb/BreadcrumbItem.js +1 -1
  153. package/dist/es5/components/Button/Button.js +1 -1
  154. package/dist/es5/components/Button/Button.js.map +1 -1
  155. package/dist/es5/components/Card/Card.js +18 -3
  156. package/dist/es5/components/Card/Card.js.map +1 -1
  157. package/dist/es5/components/ContextOverlay/ContextMenu.js +1 -1
  158. package/dist/es5/components/ContextOverlay/ContextMenu.js.map +1 -1
  159. package/dist/es5/components/Dialog/Modal.js +2 -2
  160. package/dist/es5/components/Dialog/Modal.js.map +1 -1
  161. package/dist/es5/components/Dialog/SimpleDialog.js.map +1 -1
  162. package/dist/es5/components/Form/FieldItemRow.js +2 -3
  163. package/dist/es5/components/Form/FieldItemRow.js.map +1 -1
  164. package/dist/es5/components/Icon/Icon.js.map +1 -1
  165. package/dist/es5/components/Icon/canonicalIconNames.js +30 -0
  166. package/dist/es5/components/Icon/canonicalIconNames.js.map +1 -1
  167. package/dist/es5/components/MultiSelect/MultiSelect.js +290 -0
  168. package/dist/es5/components/MultiSelect/MultiSelect.js.map +1 -0
  169. package/dist/es5/components/Notification/Notification.js +10 -3
  170. package/dist/es5/components/Notification/Notification.js.map +1 -1
  171. package/dist/es5/components/OverviewItem/OverviewItemList.js +1 -1
  172. package/dist/es5/components/OverviewItem/OverviewItemList.js.map +1 -1
  173. package/dist/es5/components/Spinner/Spinner.js +2 -2
  174. package/dist/es5/components/Spinner/Spinner.js.map +1 -1
  175. package/dist/es5/components/Tabs/Tab.js +97 -0
  176. package/dist/es5/components/Tabs/Tab.js.map +1 -0
  177. package/dist/es5/components/Tabs/TabTitle.js +16 -0
  178. package/dist/es5/components/Tabs/TabTitle.js.map +1 -0
  179. package/dist/es5/components/Tabs/Tabs.js +8 -21
  180. package/dist/es5/components/Tabs/Tabs.js.map +1 -1
  181. package/dist/es5/components/Tag/Tag.js +7 -1
  182. package/dist/es5/components/Tag/Tag.js.map +1 -1
  183. package/dist/es5/components/Typography/HtmlContentBlock.js +17 -8
  184. package/dist/es5/components/Typography/HtmlContentBlock.js.map +1 -1
  185. package/dist/es5/components/Typography/classnames.js +1 -0
  186. package/dist/es5/components/Typography/classnames.js.map +1 -1
  187. package/dist/es5/extensions/react-flow/edges/EdgeDefault.js.map +1 -1
  188. package/dist/es5/extensions/react-flow/edges/getSmoothStepPath.js +119 -0
  189. package/dist/es5/extensions/react-flow/edges/getSmoothStepPath.js.map +1 -0
  190. package/dist/es5/extensions/react-flow/edges/utils.js +100 -5
  191. package/dist/es5/extensions/react-flow/edges/utils.js.map +1 -1
  192. package/dist/es5/extensions/react-flow/index.js +2 -0
  193. package/dist/es5/extensions/react-flow/index.js.map +1 -1
  194. package/dist/es5/extensions/react-flow/minimap/utils.js +1 -1
  195. package/dist/es5/extensions/react-flow/nodes/NodeContent.js +162 -0
  196. package/dist/es5/extensions/react-flow/nodes/NodeContent.js.map +1 -0
  197. package/dist/es5/extensions/react-flow/nodes/NodeContentExtension.js +45 -0
  198. package/dist/es5/extensions/react-flow/nodes/NodeContentExtension.js.map +1 -0
  199. package/dist/es5/extensions/react-flow/nodes/NodeDefault.js +2 -129
  200. package/dist/es5/extensions/react-flow/nodes/NodeDefault.js.map +1 -1
  201. package/dist/es5/extensions/react-flow/nodes/NodeTools.js +12 -10
  202. package/dist/es5/extensions/react-flow/nodes/NodeTools.js.map +1 -1
  203. package/dist/es5/index.js +9 -4
  204. package/dist/es5/index.js.map +1 -1
  205. package/dist/es5/legacy-replacements/Button/AffirmativeButton.js +29 -0
  206. package/dist/es5/legacy-replacements/Button/AffirmativeButton.js.map +1 -0
  207. package/dist/es5/legacy-replacements/Button/Button.js +65 -0
  208. package/dist/es5/legacy-replacements/Button/Button.js.map +1 -0
  209. package/dist/es5/legacy-replacements/Button/DismissiveButton.js +29 -0
  210. package/dist/es5/legacy-replacements/Button/DismissiveButton.js.map +1 -0
  211. package/dist/es5/legacy-replacements/Button/DisruptiveButton.js +29 -0
  212. package/dist/es5/legacy-replacements/Button/DisruptiveButton.js.map +1 -0
  213. package/dist/es5/legacy-replacements/Checkbox/Checkbox.js +59 -0
  214. package/dist/es5/legacy-replacements/Checkbox/Checkbox.js.map +1 -0
  215. package/dist/es5/legacy-replacements/Radio/RadioButton.js +52 -0
  216. package/dist/es5/legacy-replacements/Radio/RadioButton.js.map +1 -0
  217. package/dist/es5/legacy-replacements/Tabs/Tabs.js +40 -0
  218. package/dist/es5/legacy-replacements/Tabs/Tabs.js.map +1 -0
  219. package/dist/es5/legacy-replacements/TextField/TextField.js +81 -0
  220. package/dist/es5/legacy-replacements/TextField/TextField.js.map +1 -0
  221. package/dist/es5/legacy-replacements/index.js +10 -0
  222. package/dist/es5/legacy-replacements/index.js.map +1 -0
  223. package/dist/types/cmem/ActivityControl/ActivityControlTypes.d.ts +2 -1
  224. package/dist/types/cmem/ActivityControl/ActivityControlWidget.d.ts +48 -2
  225. package/dist/types/cmem/ActivityControl/SilkActivityControl.d.ts +18 -3
  226. package/dist/types/cmem/ActivityControl/index.d.ts +3 -0
  227. package/dist/types/cmem/ContentBlobToggler/index.d.ts +2 -0
  228. package/dist/types/cmem/index.d.ts +8 -8
  229. package/dist/types/cmem/react-flow/ReactFlow/ReactFlow.d.ts +14 -0
  230. package/dist/types/cmem/react-flow/configuration/graph.d.ts +21 -0
  231. package/dist/types/cmem/react-flow/configuration/linking.d.ts +19 -0
  232. package/dist/types/cmem/react-flow/configuration/unspecified.d.ts +9 -0
  233. package/dist/types/cmem/react-flow/configuration/workflow.d.ts +17 -0
  234. package/dist/types/common/utils/stringUtils.d.ts +2 -0
  235. package/dist/types/components/AutoSuggestion/AutoSuggestion.d.ts +67 -0
  236. package/dist/types/components/AutoSuggestion/AutoSuggestionList.d.ts +13 -0
  237. package/dist/types/components/AutoSuggestion/SingleLineCodeEditor.d.ts +25 -0
  238. package/dist/types/components/AutocompleteField/AutoCompleteField.d.ts +8 -7
  239. package/dist/types/components/Button/Button.d.ts +3 -2
  240. package/dist/types/components/Card/Card.d.ts +9 -4
  241. package/dist/types/components/ContextOverlay/ContextMenu.d.ts +6 -1
  242. package/dist/types/components/Dialog/Modal.d.ts +4 -3
  243. package/dist/types/components/Dialog/SimpleDialog.d.ts +2 -0
  244. package/dist/types/components/Form/FieldItemRow.d.ts +1 -0
  245. package/dist/types/components/Icon/Icon.d.ts +2 -2
  246. package/dist/types/components/Icon/IconButton.d.ts +1 -1
  247. package/dist/types/components/Icon/canonicalIconNames.d.ts +1 -1
  248. package/dist/types/components/MultiSelect/MultiSelect.d.ts +86 -0
  249. package/dist/types/components/Notification/Notification.d.ts +55 -2
  250. package/dist/types/components/OverviewItem/OverviewItemList.d.ts +1 -1
  251. package/dist/types/components/Spinner/Spinner.d.ts +1 -1
  252. package/dist/types/components/Tabs/Tab.d.ts +549 -0
  253. package/dist/types/components/Tabs/TabTitle.d.ts +38 -0
  254. package/dist/types/components/Tabs/Tabs.d.ts +14 -20
  255. package/dist/types/components/Tag/Tag.d.ts +1 -1
  256. package/dist/types/components/Typography/HtmlContentBlock.d.ts +15 -5
  257. package/dist/types/components/Typography/classnames.d.ts +1 -0
  258. package/dist/types/extensions/react-flow/edges/getSmoothStepPath.d.ts +18 -0
  259. package/dist/types/extensions/react-flow/edges/utils.d.ts +1 -1
  260. package/dist/types/extensions/react-flow/index.d.ts +4 -0
  261. package/dist/types/extensions/react-flow/nodes/NodeContent.d.ts +127 -0
  262. package/dist/types/extensions/react-flow/nodes/NodeContentExtension.d.ts +34 -0
  263. package/dist/types/extensions/react-flow/nodes/NodeDefault.d.ts +4 -121
  264. package/dist/types/extensions/react-flow/nodes/NodeTools.d.ts +9 -2
  265. package/dist/types/extensions/react-flow/nodes/nodeTypes.d.ts +10 -10
  266. package/dist/types/index.d.ts +9 -4
  267. package/dist/types/legacy-replacements/Button/AffirmativeButton.d.ts +2 -0
  268. package/dist/types/legacy-replacements/Button/Button.d.ts +5 -0
  269. package/dist/types/legacy-replacements/Button/DismissiveButton.d.ts +2 -0
  270. package/dist/types/legacy-replacements/Button/DisruptiveButton.d.ts +2 -0
  271. package/dist/types/legacy-replacements/Checkbox/Checkbox.d.ts +2 -0
  272. package/dist/types/legacy-replacements/Radio/RadioButton.d.ts +2 -0
  273. package/dist/types/legacy-replacements/Tabs/Tabs.d.ts +22 -0
  274. package/dist/types/legacy-replacements/TextField/TextField.d.ts +2 -0
  275. package/dist/types/legacy-replacements/index.d.ts +10 -0
  276. package/package.json +48 -20
  277. package/src/cmem/ActivityControl/ActivityControlTypes.ts +3 -1
  278. package/src/cmem/ActivityControl/ActivityControlWidget.stories.tsx +98 -0
  279. package/src/cmem/ActivityControl/ActivityControlWidget.tsx +144 -89
  280. package/src/cmem/ActivityControl/ActivityExecutionErrorReportModal.tsx +11 -3
  281. package/src/cmem/ActivityControl/SilkActivityControl.tsx +182 -120
  282. package/src/cmem/ActivityControl/index.ts +3 -0
  283. package/src/cmem/ContentBlobToggler/index.ts +2 -0
  284. package/src/cmem/_index.scss +6 -0
  285. package/src/cmem/index.ts +10 -23
  286. package/src/cmem/react-flow/ReactFlow/ReactFlow.stories.tsx +222 -0
  287. package/src/cmem/react-flow/ReactFlow/ReactFlow.tsx +40 -0
  288. package/src/cmem/react-flow/_edges.scss +23 -0
  289. package/src/cmem/react-flow/_handles.scss +34 -0
  290. package/src/cmem/react-flow/_index.scss +5 -0
  291. package/src/cmem/react-flow/_minimap.scss +33 -0
  292. package/src/cmem/react-flow/_nodes.scss +66 -0
  293. package/src/cmem/react-flow/configuration/_colors-graph.module.scss +35 -0
  294. package/src/cmem/react-flow/configuration/_colors-linking.module.scss +29 -0
  295. package/src/cmem/react-flow/configuration/_colors-workflow.module.scss +22 -0
  296. package/src/cmem/react-flow/configuration/_colors.scss +3 -0
  297. package/src/cmem/react-flow/configuration/graph.ts +29 -0
  298. package/src/cmem/react-flow/configuration/linking.ts +28 -0
  299. package/src/cmem/react-flow/configuration/unspecified.ts +13 -0
  300. package/src/cmem/react-flow/configuration/workflow.ts +25 -0
  301. package/src/common/utils/stringUtils.ts +2 -0
  302. package/src/components/Application/ApplicationContent.tsx +0 -5
  303. package/src/components/Application/ApplicationTitle.tsx +0 -5
  304. package/src/components/AutoSuggestion/AutoSuggestion.scss +100 -0
  305. package/src/components/AutoSuggestion/AutoSuggestion.tsx +446 -0
  306. package/src/components/AutoSuggestion/AutoSuggestionList.tsx +170 -0
  307. package/src/components/AutoSuggestion/SingleLineCodeEditor.tsx +97 -0
  308. package/src/components/AutoSuggestion/tests/AutoSuggestion.test.tsx +37 -0
  309. package/src/components/AutoSuggestion/tests/AutoSuggestionList.test.tsx +124 -0
  310. package/src/components/AutoSuggestion/tests/SingleLineCodeEditor.test.tsx +55 -0
  311. package/src/components/AutocompleteField/AutoCompleteField.tsx +24 -23
  312. package/src/components/AutocompleteField/autoCompleteFieldUtils.tsx +2 -1
  313. package/src/components/Breadcrumb/BreadcrumbItem.tsx +5 -5
  314. package/src/components/Breadcrumb/BreadcrumbList.tsx +1 -1
  315. package/src/components/Button/Button.stories.tsx +1 -1
  316. package/src/components/Button/Button.tsx +4 -3
  317. package/src/components/Card/Card.tsx +23 -4
  318. package/src/components/Card/card.scss +4 -0
  319. package/src/components/Checkbox/checkbox.scss +4 -0
  320. package/src/components/ContextOverlay/ContextMenu.tsx +8 -2
  321. package/src/components/Dialog/Modal.tsx +9 -2
  322. package/src/components/Dialog/SimpleDialog.tsx +2 -0
  323. package/src/components/Form/FieldItem.tsx +3 -3
  324. package/src/components/Form/FieldItemRow.tsx +2 -4
  325. package/src/components/Icon/Icon.tsx +4 -4
  326. package/src/components/Icon/IconButton.tsx +3 -3
  327. package/src/components/Icon/canonicalIconNames.tsx +39 -2
  328. package/src/components/Menu/MenuItem.tsx +1 -1
  329. package/src/components/MultiSelect/MultiSelect.stories.tsx +71 -0
  330. package/src/components/MultiSelect/MultiSelect.tsx +373 -0
  331. package/src/components/Notification/Notification.stories.tsx +82 -0
  332. package/src/components/Notification/Notification.tsx +62 -4
  333. package/src/components/Notification/notification.scss +2 -1
  334. package/src/components/OverviewItem/OverviewItemList.tsx +2 -2
  335. package/src/components/RadioButton/radiobutton.scss +4 -0
  336. package/src/components/Spinner/Spinner.tsx +1 -1
  337. package/src/components/Switch/switch.scss +1 -0
  338. package/src/components/Tabs/Tab.tsx +111 -0
  339. package/src/components/Tabs/TabTitle.tsx +71 -0
  340. package/src/components/Tabs/Tabs.tsx +22 -90
  341. package/src/components/Tabs/stories/Tab.stories.tsx +65 -0
  342. package/src/components/Tabs/stories/TabTitle.stories.tsx +35 -0
  343. package/src/components/Tabs/stories/Tabs.stories.tsx +98 -0
  344. package/src/components/Tabs/tabs.scss +11 -4
  345. package/src/components/Tag/Tag.tsx +10 -3
  346. package/src/components/Tag/tag.scss +2 -2
  347. package/src/components/TextField/TextField.tsx +1 -1
  348. package/src/components/Toolbar/toolbar.scss +1 -1
  349. package/src/components/Typography/HtmlContentBlock.tsx +27 -4
  350. package/src/components/Typography/classnames.ts +1 -0
  351. package/src/components/Typography/typography.scss +8 -0
  352. package/src/configuration/_variables.scss +3 -3
  353. package/src/extensions/react-flow/_config.scss +2 -2
  354. package/src/extensions/react-flow/_react-flow.scss +4 -0
  355. package/src/extensions/react-flow/edges/EdgeDefault.tsx +0 -1
  356. package/src/extensions/react-flow/edges/_edges.scss +3 -28
  357. package/src/extensions/react-flow/edges/getSmoothStepPath.ts +118 -0
  358. package/src/extensions/react-flow/edges/utils.ts +131 -4
  359. package/src/extensions/react-flow/handles/_handles.scss +4 -58
  360. package/src/extensions/react-flow/index.ts +4 -0
  361. package/src/extensions/react-flow/minimap/_minimap.scss +0 -45
  362. package/src/extensions/react-flow/minimap/utils.ts +1 -1
  363. package/src/extensions/react-flow/nodes/NodeContent.tsx +336 -0
  364. package/src/extensions/react-flow/nodes/NodeContentExtension.tsx +17 -10
  365. package/src/extensions/react-flow/nodes/NodeDefault.tsx +4 -326
  366. package/src/extensions/react-flow/nodes/NodeTools.tsx +27 -10
  367. package/src/extensions/react-flow/nodes/_nodes.scss +61 -196
  368. package/src/extensions/react-flow/nodes/{NodeContent.stories.tsx → stories/NodeContent.stories.tsx} +14 -5
  369. package/src/extensions/react-flow/nodes/stories/NodeContentExtension.stories.tsx +59 -0
  370. package/src/extensions/react-flow/nodes/{NodeDefault.stories.tsx → stories/NodeDefault.stories.tsx} +5 -3
  371. package/src/index.scss +1 -0
  372. package/src/index.ts +19 -4
  373. package/src/legacy-replacements/Tabs/Tabs.stories.tsx +46 -0
  374. package/src/legacy-replacements/Tabs/Tabs.tsx +84 -0
  375. package/src/legacy-replacements/index.ts +11 -0
  376. package/src/test/setupTests.js +19 -0
  377. package/src/components/Icon/canonicalIconNames.json +0 -120
  378. package/src/extensions/react-flow/nodes/NodeContentExtension.stories.tsx +0 -36
@@ -0,0 +1,111 @@
1
+ import React from 'react';
2
+ import {
3
+ Tab as BlueprintTab,
4
+ TabProps as BlueprintTabProps
5
+ } from "@blueprintjs/core";
6
+ import Color from "color";
7
+ import { CLASSPREFIX as eccgui } from "../../configuration/constants";
8
+ import TabTitle, { TabTitleProps } from "./TabTitle";
9
+
10
+ export interface TabProps extends Omit<BlueprintTabProps, "title"> {
11
+ /**
12
+ * Title (or tab label).
13
+ */
14
+ title: string | React.ReactElement<TabTitleProps>;
15
+ /**
16
+ * Sets the background color of a tag, depends on the `Color` object provided by the
17
+ * [npm color module](https://www.npmjs.com/package/color) v3. You can use it with
18
+ * all allowed [CSS color values](https://developer.mozilla.org/de/docs/Web/CSS/color_value).
19
+ *
20
+ * The front color is set automatically, so the tag label is always readable.
21
+ */
22
+ backgroundColor?: Color | string;
23
+ /**
24
+ * In case of not enough space do not shrink this tab in its size.
25
+ */
26
+ dontShrink?: boolean;
27
+ }
28
+
29
+ // Dummy as we cannot use it like that directly for now
30
+ export const TabDummyForStorybook = (props: TabProps) => { return <>{props.title}</>}
31
+
32
+ export const transformTabProperties = ({
33
+ title,
34
+ dontShrink=false,
35
+ className="",
36
+ backgroundColor,
37
+ ...otherBlueprintTabProperties
38
+ }: TabProps) => {
39
+ const flexStyles = dontShrink ? { flexShrink: 0} : {};
40
+ let colorStyles = {};
41
+ if (!!backgroundColor) {
42
+ let color = Color("#ffffff")
43
+ try {
44
+ color = Color(backgroundColor);
45
+ } catch(ex) {
46
+ console.warn("Received invalid background color for tag: " + backgroundColor)
47
+ }
48
+ colorStyles = {
49
+ backgroundColor: `${color.rgb().toString()}`,
50
+ color: color.isLight() ? "#000" : "#fff",
51
+ }
52
+ }
53
+ const extraStyles = (dontShrink || !!backgroundColor) ? {style: {...flexStyles, ...colorStyles}} : {};
54
+ return {
55
+ key: otherBlueprintTabProperties.id,
56
+ className: className + ` ${eccgui}-tabs`,
57
+ title: typeof title === "string" ? <TabTitle text={title} /> : title,
58
+ ...otherBlueprintTabProperties,
59
+ ...extraStyles
60
+ }
61
+ }
62
+
63
+ /*
64
+
65
+ NOTE: Try to overload the original Tab element. Currently it does not work.
66
+ (at least inside Storybook) because the set displayName is overwritten and
67
+ Blueprints Tabs integration cannot match the new Tab element correctly by
68
+ checking the displayName.
69
+
70
+ const Tab = (tabProps: TabProps) => {
71
+ return <BlueprintTab
72
+ {...transformTabProperties(tabProps)}
73
+ />;
74
+ }
75
+
76
+ Tab.displayName = BlueprintTab.displayName;
77
+ //*/
78
+
79
+ /*
80
+ import { AbstractPureComponent2, Classes } from "@blueprintjs/core";
81
+ class Tab extends AbstractPureComponent2<TabProps> {
82
+ public static defaultProps: Partial<TabProps> = {
83
+ disabled: false,
84
+ //dontShrink: false,
85
+ };
86
+
87
+ constructor(props: TabProps) {
88
+ //const { title, ...otherProps} = transformTabProperties(props);
89
+ //const newProps = {...otherProps, title: props.title}
90
+ //console.log(newProps);
91
+ super(props);
92
+ }
93
+
94
+ public static displayName = BlueprintTab.displayName;
95
+
96
+ // this component is never rendered directly; see BlueprintTabs#renderTabPanel()
97
+ public render() {
98
+ const { className, panel } = this.props;
99
+ return (
100
+ <div className={`${Classes.TAB_PANEL} ${className}`} role="tablist">
101
+ {panel}
102
+ </div>
103
+ );
104
+ }
105
+ }
106
+
107
+ //*
108
+ export default Tab;
109
+ //*/
110
+
111
+ export default BlueprintTab;
@@ -0,0 +1,71 @@
1
+ import React from 'react';
2
+ import { CLASSPREFIX as eccgui } from "../../configuration/constants";
3
+ import Button from "../Button/Button";
4
+
5
+ export interface TabTitleProps {
6
+ /**
7
+ * Content of the label that is displayed in the tab element.
8
+ */
9
+ text: string | React.ReactNode;
10
+ /**
11
+ * Content that is displayed before the tab label, could be used for icons, change markers, etc.
12
+ * Use text content inside `<span>` element to force white space between th eprefix and the label.
13
+ */
14
+ titlePrefix?: React.ReactNode;
15
+ /**
16
+ * Content that is display after tab label, could be used for counts or close/remove buttons.
17
+ * Use text content inside `<span>` element to force white space between th eprefix and the label.
18
+ */
19
+ titleSuffix?: React.ReactNode;
20
+ /**
21
+ * Enable larger display of the tab.
22
+ */
23
+ large?: boolean;
24
+ /**
25
+ * Enable smaller display of the tab.
26
+ */
27
+ small?: boolean;
28
+ /**
29
+ * Add a tooltip to a tab, displayed when user hoveres over it.
30
+ */
31
+ tooltip?: string | JSX.Element;
32
+ /**
33
+ * Make the tab not usable, display is also narrowed.
34
+ */
35
+ disabled?: boolean;
36
+ }
37
+
38
+ /**
39
+ * Gives control about functionality and layout of the tab titles.
40
+ */
41
+ const TabTitle = ({
42
+ text,
43
+ tooltip,
44
+ titlePrefix,
45
+ titleSuffix,
46
+ large=false,
47
+ small=false,
48
+ disabled=false,
49
+ }: TabTitleProps) => {
50
+ return (
51
+ <Button
52
+ className={`${eccgui}-tabtitle`}
53
+ minimal
54
+ tabIndex={-1}
55
+ text={text}
56
+ tooltip={disabled ? undefined : tooltip}
57
+ tooltipProperties={{
58
+ tooltipProps: {
59
+ boundary: "window"
60
+ }
61
+ }}
62
+ icon={<>{titlePrefix}</>}
63
+ rightIcon={<>{titleSuffix}</>}
64
+ small={small}
65
+ large={large}
66
+ disabled={disabled}
67
+ />
68
+ );
69
+ };
70
+
71
+ export default TabTitle;
@@ -1,119 +1,51 @@
1
1
  import React from 'react';
2
2
  import {
3
3
  Tabs as BlueprintTabs,
4
- TabsProps as BlueprintTabsProbs,
5
- Tab,
6
- TabProps as BlueprintTabProbs,
4
+ TabsProps as BlueprintTabsProps,
7
5
  } from "@blueprintjs/core";
8
6
  import { CLASSPREFIX as eccgui } from "../../configuration/constants";
9
- import Button from "../Button/Button";
7
+ import Tab, { TabProps, transformTabProperties } from "./Tab";
10
8
 
11
- // new interface
12
- export interface TabProps extends BlueprintTabProbs {
13
- // could be used for Icons, etc.
14
- titlePrefix?: React.ReactNode;
15
- // could be used for action buttons, e.g. "close/remove tab"
16
- titleSuffix?: React.ReactNode;
17
- // prevent shrinking when too many tabs appear in the list
18
- dontShrink?: boolean;
19
- // display tab with larger styling
20
- large?: boolean;
21
- // display tabs with smaller styling
22
- small?: boolean;
23
- }
24
-
25
- const createBlueprintTab = ({
26
- titlePrefix,
27
- title,
28
- titleSuffix,
29
- dontShrink=false,
30
- large=false,
31
- small=false,
32
- ...otherBlueprintTabProperties
33
- }: TabProps) => {
34
- const extraStyles = dontShrink ? { style: {flexShrink: 0} } : {};
35
- return <Tab
36
- key={otherBlueprintTabProperties.id}
37
- title={(
38
- <Button
39
- //title={title}
40
- minimal
41
- tabIndex={-1}
42
- text={title}
43
- icon={<>{titlePrefix}</>}
44
- rightIcon={<>{titleSuffix}</>}
45
- small={small}
46
- large={large}
47
- />
48
- )}
49
- {...otherBlueprintTabProperties}
50
- {...extraStyles}
51
- />;
52
- }
53
-
54
- // deprecated interface
55
- export interface DeprecatedTabProps {
56
- tabId: string;
57
- tabTitle: React.ReactNode;
58
- tabContent?: JSX.Element;
59
- dontShrink?: boolean;
60
- }
61
-
62
- const createDeprecatedTab = ({
63
- tabId,
64
- tabTitle,
65
- tabContent,
66
- dontShrink=false
67
- }: DeprecatedTabProps) => {
68
- const extraStyles = dontShrink ? { style: {flexShrink: 0} } : {};
69
- return <Tab
70
- key={tabId}
71
- id={tabId}
72
- title={tabTitle}
73
- panel={tabContent}
74
- {...extraStyles}
75
- />;
76
- }
77
-
78
- interface TabsProps extends Omit<BlueprintTabsProbs, "vertical" | "onChange" | "large"> {
79
- activeTab: string;
80
- tabs: any[]; // DeprecatedTabProps[] | TabProps[];
81
- onTabClick: ({props}: any) => void;
82
- prefixTabNames?: string;
9
+ interface TabsProps extends Omit<BlueprintTabsProps, "vertical" | "large" | "animate"> {
10
+ children?: React.ReactNode;
11
+ /**
12
+ * Data structure containing all tabs, including their titles and content panels.
13
+ * Currently it is not possible to add `Tab` elements direct as children elements to the `<Tabs>` container.
14
+ */
15
+ tabs?: TabProps[];
16
+ /**
17
+ * Allow scrollbars on the tabs header.
18
+ * Otherwise they will be shrinked if not enough space.
19
+ */
83
20
  allowScrollbars?: boolean;
84
21
  }
85
22
 
86
23
  function Tabs(
87
24
  {
88
- activeTab,
89
25
  tabs=[],
90
- onTabClick,
91
- prefixTabNames='tabBar',
26
+ children,
92
27
  className = "",
93
28
  allowScrollbars,
94
29
  ...restProps
95
30
  }: TabsProps) {
31
+
96
32
  return (
97
33
  <BlueprintTabs
98
- onChange={onTabClick}
99
- selectedTabId={activeTab}
100
34
  className={
101
35
  className +
36
+ ` ${eccgui}-tabs` +
102
37
  (allowScrollbars ? ` ${eccgui}-tabs--scrollablelist` : "")
103
38
  }
104
39
  {...restProps}
40
+ animate={false}
105
41
  >
106
- {
42
+ {!!tabs ? (
107
43
  tabs.map(tab => {
108
- return !!tab.id ? createBlueprintTab({
109
- className: `${prefixTabNames}-header-${tab.id}`,
110
- ...tab
111
- }) : createDeprecatedTab({
112
- className: `${prefixTabNames}-header-${tab.tabId}`,
113
- ...tab
114
- });
44
+ return <Tab {...transformTabProperties(tab)} />;
115
45
  })
116
- }
46
+ ) : (
47
+ children
48
+ )}
117
49
  </BlueprintTabs>
118
50
  );
119
51
  };
@@ -0,0 +1,65 @@
1
+ import React from "react";
2
+ import { ComponentStory, ComponentMeta } from "@storybook/react";
3
+ import { Tabs } from "./../../../../";
4
+ import { TabDummyForStorybook } from "./../Tab";
5
+
6
+ export default {
7
+ title: "Components/Tabs",
8
+ component: TabDummyForStorybook,
9
+ argTypes: {
10
+ id: {
11
+ description: "Unique identifier used to control which tab is selected.",
12
+ control: "text",
13
+ table: {
14
+ type: { summary: "string" },
15
+ }
16
+ },
17
+ className: {
18
+ description: "A space-delimited list of class names.",
19
+ control: "boolean",
20
+ table: {
21
+ defaultValue: { summary: undefined },
22
+ type: { summary: "string" },
23
+ }
24
+ },
25
+ disabled: {
26
+ description: "Whether this action is non-interactive and the button is not usable. This option must be repeated currently also in the `TabTitle` element.",
27
+ control: "boolean",
28
+ table: {
29
+ defaultValue: { summary: false },
30
+ type: { summary: "boolean" },
31
+ }
32
+ },
33
+ panel: {
34
+ description: "Panel content, rendered by the parent Tabs when this tab is active.",
35
+ table: {
36
+ defaultValue: { summary: undefined },
37
+ type: { summary: "JSX.Element" },
38
+ }
39
+ },
40
+ backgroundColor: {
41
+ control: "color",
42
+ },
43
+ },
44
+ } as ComponentMeta<typeof TabDummyForStorybook>;
45
+
46
+ const Tab = (args) => {
47
+ return (
48
+ <Tabs
49
+ id="titledemo"
50
+ tabs={[args]}
51
+ />
52
+ )
53
+ }
54
+
55
+ const TemplateFull: ComponentStory<typeof TabDummyForStorybook> = (args) => (
56
+ <Tab {...args} />
57
+ );
58
+
59
+ export const TabElement = TemplateFull.bind({});
60
+ TabElement.args = {
61
+ id: "tabtest",
62
+ title: "Tab title",
63
+ dontShrink: false,
64
+ panel: <div>Test panel content.</div>
65
+ };
@@ -0,0 +1,35 @@
1
+ import React from "react";
2
+ import { ComponentStory, ComponentMeta } from "@storybook/react";
3
+ import { Tabs, TabTitle as TabTitleOrg } from "./../../../";
4
+
5
+ export default {
6
+ title: "Components/Tabs",
7
+ component: TabTitleOrg,
8
+ argTypes: {
9
+ },
10
+ } as ComponentMeta<typeof TabTitleOrg>;
11
+
12
+ const TabTitle = (args) => {
13
+ return (
14
+ <Tabs
15
+ id="titledemo"
16
+ tabs={[
17
+ {
18
+ id: "titlesimple",
19
+ title: <TabTitleOrg {...args} />
20
+ }
21
+ ]}
22
+ />
23
+ )
24
+ }
25
+
26
+ const TemplateFull: ComponentStory<typeof TabTitleOrg> = (args) => (
27
+ <TabTitle {...args} />
28
+ );
29
+
30
+ export const TabTitleElement = TemplateFull.bind({});
31
+ TabTitleElement.args = {
32
+ text: "Tab title",
33
+ titlePrefix: "[",
34
+ titleSuffix: <span>]</span>,
35
+ };
@@ -0,0 +1,98 @@
1
+ import React from "react";
2
+ import { ComponentStory, ComponentMeta } from "@storybook/react";
3
+ import { Tabs, Tab, TabTitle } from "./../../../";
4
+
5
+ export default {
6
+ title: "Components/Tabs",
7
+ component: Tabs,
8
+ argTypes: {
9
+ id: {
10
+ description: "Unique identifier used to control which tab is selected.",
11
+ control: "text",
12
+ table: {
13
+ type: { summary: "string" },
14
+ }
15
+ },
16
+ className: {
17
+ description: "A space-delimited list of class names.",
18
+ control: "text",
19
+ table: {
20
+ defaultValue: { summary: undefined },
21
+ type: { summary: "string" },
22
+ }
23
+ },
24
+ /*
25
+ NOTE: we currently cannot support this because Blueprint set then !important
26
+ styles prevent tab background colors.
27
+
28
+ animate: {
29
+ description: "Whether the selected tab indicator should animate its movement.",
30
+ control: "boolean",
31
+ table: {
32
+ defaultValue: { summary: true },
33
+ type: { summary: "boolean" },
34
+ }
35
+ },
36
+ */
37
+ defaultSelectedTabId: {
38
+ description: "Initial selected tab `id`, for uncontrolled usage.",
39
+ control: "text",
40
+ table: {
41
+ defaultValue: { summary: undefined },
42
+ type: { summary: "string" },
43
+ }
44
+ },
45
+ selectedTabId: {
46
+ description: "Selected tab id, for controlled usage. Providing this prop will put the component in controlled mode and the `onChange` handler must be set.",
47
+ control: "text",
48
+ table: {
49
+ defaultValue: { summary: undefined },
50
+ type: { summary: "string" },
51
+ }
52
+ },
53
+ onChange: {
54
+ description: "A callback function that is invoked when a tab in the tab list is clicked.",
55
+ table: {
56
+ defaultValue: { summary: undefined },
57
+ type: { summary: "(newTabId: TabId, prevTabId: TabId | undefined, event: MouseEvent<HTMLElement>) => void" },
58
+ }
59
+ },
60
+ },
61
+ } as ComponentMeta<typeof Tabs>;
62
+
63
+ const TemplateFull: ComponentStory<typeof Tabs> = (args) => (
64
+ <Tabs {...args} />
65
+ );
66
+
67
+ export const TabsContainerUncontrolled = TemplateFull.bind({});
68
+ TabsContainerUncontrolled.args = {
69
+ id: "storytabs1",
70
+ tabs: [
71
+ {
72
+ id: "storytab1",
73
+ title: "Tab title 1",
74
+ panel: <div>Tab content 1</div>,
75
+ },
76
+ {
77
+ id: "storytab2",
78
+ title: <TabTitle text="Tab title 2" />,
79
+ panel: <div>Tab content 2</div>,
80
+ },
81
+ {
82
+ id: "storytab3",
83
+ title: <TabTitle text="Tab title 3" tooltip="Tab tooltip 3" />,
84
+ panel: <div>Tab content 3</div>,
85
+ }
86
+ ]
87
+ };
88
+
89
+ /*
90
+ FIXME: this integration does currently not work, reason is not clear. See Tab component comments at bottom.
91
+ export const UncontrolledElementsUsage = TemplateFull.bind({});
92
+ UncontrolledElementsUsage.args = {
93
+ id: "storytabs2",
94
+ children: [
95
+ <Tab id="storytab1" title="Tab title 1" panel={<div>Tab content 1</div>} />
96
+ ]
97
+ };
98
+ */
@@ -32,11 +32,14 @@ $tab-indicator-width: 3px !default;
32
32
  max-width: 33%;
33
33
  }
34
34
 
35
- & > .#{$ns}-button {
35
+ & > .#{$ns}-button, // normal button
36
+ & > span > span > span > .#{$ns}-button { // button with tooltip
36
37
  outline: none;
37
38
  margin-bottom: $tab-indicator-width;
38
39
  max-width: 15rem;
39
40
  width: 100%;
41
+ color: inherit;
42
+ border-radius: 0;
40
43
 
41
44
  .#{$ns}-button-text {
42
45
  white-space: nowrap;
@@ -50,10 +53,14 @@ $tab-indicator-width: 3px !default;
50
53
  }
51
54
  }
52
55
 
53
- &:focus > .#{$ns}-button {
54
- @extend .#{$ns}-button:hover;
56
+ &:focus,
57
+ &:hover {
58
+ & > .#{$ns}-button,
59
+ & > span > span > span > .#{$ns}-button {
60
+ background: $minimal-button-background-color-hover;
61
+ color: inherit;
62
+ }
55
63
  }
56
-
57
64
  }
58
65
 
59
66
  .#{$ns}-tab-indicator-wrapper {
@@ -14,8 +14,9 @@ interface TagProps extends Omit<
14
14
  "large" |
15
15
  "multiline" |
16
16
  "intent" |
17
- "rightIcon" |
18
- "round"
17
+ "rightIcon"
18
+ // Removed round to have chip-like elements, since they are currently missing
19
+ // "round"
19
20
  > {
20
21
  // own properties
21
22
 
@@ -57,7 +58,13 @@ function Tag({
57
58
  otherProps['interactive'] = otherProps.interactive ?? !!otherProps.onClick ? true : false;
58
59
  if (!!backgroundColor) {
59
60
  const additionalStyles = otherProps.style ?? {};
60
- const color = Color(backgroundColor);
61
+ let color = Color("#ffffff")
62
+ try {
63
+ color = Color(backgroundColor);
64
+ } catch(ex) {
65
+ console.warn("Received invalid background color for tag: " + backgroundColor)
66
+ }
67
+
61
68
  otherProps['style'] = {
62
69
  ...additionalStyles,
63
70
  ...{
@@ -18,7 +18,7 @@ $tag-line-height-large: $eccgui-size-typo-tag-large; // !default;
18
18
  $tag-padding-large: ($tag-height-large - $tag-line-height-large); // !default;
19
19
  // $tag-icon-spacing: ($tag-height - 12px) / 2 !default;
20
20
  // $tag-icon-spacing-large: ($tag-height-large - $pt-icon-size-standard) / 2 !default;
21
- // $tag-round-adjustment: 2px !default;
21
+ $tag-round-adjustment: 0px !default;
22
22
 
23
23
  @import "~@blueprintjs/core/src/components/tag/tag";
24
24
 
@@ -53,7 +53,7 @@ $tag-padding-large: ($tag-height-large - $tag-line-height-large); // !default;
53
53
  vertical-align: baseline;
54
54
  font-size: $eccgui-size-typo-tag;
55
55
  line-height: $eccgui-size-typo-tag-lineheight;
56
- font-weight: $eccgui-font-weight-light;
56
+ font-weight: $eccgui-font-weight-regular;
57
57
  }
58
58
 
59
59
  .#{$eccgui}-tag__list-label {
@@ -35,7 +35,7 @@ export interface TextFieldProps extends Partial<Omit<InputGroupProps, "intent" |
35
35
  /**
36
36
  * Left aligned icon, can be a canonical icon name or an `Icon` element.
37
37
  */
38
- leftIcon?: ValidIconName | MaybeElement
38
+ leftIcon?: ValidIconName | MaybeElement;
39
39
  }
40
40
 
41
41
  /**
@@ -26,7 +26,7 @@
26
26
 
27
27
  .#{$eccgui}-toolbar--vertical > & {
28
28
  flex-direction: column;
29
- align-items: center;
29
+ align-items: stretch;
30
30
  }
31
31
  }
32
32
 
@@ -2,15 +2,34 @@ import React from "react";
2
2
  import { CLASSPREFIX as eccgui } from "../../configuration/constants";
3
3
  import * as TypographyClassNames from "./classnames";
4
4
 
5
+ // FIXME: CMEM-3742: comment + add story
6
+
7
+ export interface HtmlContentBlockProps extends React.HTMLAttributes<HTMLDivElement> {
8
+ className?: string;
9
+ small?: boolean;
10
+ /** currently not supported */
11
+ large?: boolean;
12
+ /** currently not supported */
13
+ muted ?: boolean;
14
+ /** currently not supported */
15
+ disabled?: boolean;
16
+ linebreakForced?: boolean;
17
+ linebreakPrevented?: boolean;
18
+ noScrollbarsOnChildren?: boolean;
19
+ }
20
+
5
21
  function HtmlContentBlock({
6
22
  className = "",
7
23
  children,
8
24
  small = false,
9
- large = false, // currently unsupported
10
- muted = false, // currently unsupported
11
- disabled = false, // currently unsupported
25
+ large = false,
26
+ muted = false,
27
+ disabled = false,
28
+ linebreakForced = false,
29
+ linebreakPrevented = false,
30
+ noScrollbarsOnChildren = false,
12
31
  ...otherProps
13
- }: any) {
32
+ }: HtmlContentBlockProps) {
14
33
  return (
15
34
  <div
16
35
  className={
@@ -19,8 +38,12 @@ function HtmlContentBlock({
19
38
  (small ? " " + TypographyClassNames.SMALL : "") +
20
39
  (large ? " " + TypographyClassNames.LARGE : "") +
21
40
  (muted ? " " + TypographyClassNames.MUTED : "") +
41
+ (linebreakForced ? " " + TypographyClassNames.FORCELINEBREAK : "") +
42
+ (linebreakPrevented ? " " + TypographyClassNames.PREVENTLINEBREAK : "") +
43
+ (noScrollbarsOnChildren ? " " + TypographyClassNames.NOSCROLLBARSONCHILDREN : "") +
22
44
  (disabled ? " " + TypographyClassNames.DISABLED : "")
23
45
  }
46
+ {...otherProps}
24
47
  >
25
48
  {children}
26
49
  </div>
@@ -4,6 +4,7 @@ import { CLASSPREFIX as eccgui } from "../../configuration/constants";
4
4
  export const NOOVERFLOW = eccgui + "-typography--nooverflow";
5
5
  export const FORCELINEBREAK = eccgui + "-typography--forcelinebreak";
6
6
  export const PREVENTLINEBREAK = eccgui + "-typography--preventlinebreak";
7
+ export const NOSCROLLBARSONCHILDREN = eccgui + "-typography--noscrollbarsonchildren";
7
8
  export const LARGE = eccgui + "-typography--large";
8
9
  export const SMALL = eccgui + "-typography--small";
9
10
  export const MUTED = eccgui + "-typography--muted";