@carbon/ibm-products 2.43.2-canary.12 → 2.43.2-canary.122

Sign up to get free protection for your applications and to get access to all the features.
Files changed (424) hide show
  1. package/css/config-dev.css +6 -1
  2. package/css/config-dev.css.map +1 -1
  3. package/css/config.css +6 -1
  4. package/css/config.css.map +1 -1
  5. package/css/index-full-carbon.css +1854 -499
  6. package/css/index-full-carbon.css.map +1 -1
  7. package/css/index-full-carbon.min.css +1 -1
  8. package/css/index-full-carbon.min.css.map +1 -1
  9. package/css/index-without-carbon-released-only.css +267 -65
  10. package/css/index-without-carbon-released-only.css.map +1 -1
  11. package/css/index-without-carbon-released-only.min.css +1 -1
  12. package/css/index-without-carbon-released-only.min.css.map +1 -1
  13. package/css/index-without-carbon.css +1463 -250
  14. package/css/index-without-carbon.css.map +1 -1
  15. package/css/index-without-carbon.min.css +1 -1
  16. package/css/index-without-carbon.min.css.map +1 -1
  17. package/css/index.css +1659 -369
  18. package/css/index.css.map +1 -1
  19. package/css/index.min.css +1 -1
  20. package/css/index.min.css.map +1 -1
  21. package/es/components/APIKeyModal/APIKeyModal.types.d.ts +6 -0
  22. package/es/components/ActionBar/ActionBar.d.ts +58 -2
  23. package/es/components/ActionBar/ActionBar.js +14 -9
  24. package/es/components/ActionBar/ActionBarItem.d.ts +36 -2
  25. package/es/components/ActionBar/ActionBarItem.js +8 -5
  26. package/es/components/ActionBar/ActionBarOverflowItems.d.ts +55 -16
  27. package/es/components/ActionBar/ActionBarOverflowItems.js +8 -4
  28. package/es/components/AddSelect/types/index.d.ts +6 -0
  29. package/es/components/Card/Card.d.ts +68 -2
  30. package/es/components/Card/Card.js +28 -35
  31. package/es/components/Card/CardFooter.d.ts +51 -48
  32. package/es/components/Card/CardFooter.js +4 -2
  33. package/es/components/Card/CardHeader.d.ts +67 -49
  34. package/es/components/Card/CardHeader.js +4 -2
  35. package/es/components/Coachmark/Coachmark.d.ts +6 -1
  36. package/es/components/Coachmark/Coachmark.js +47 -11
  37. package/es/components/Coachmark/CoachmarkOverlay.js +2 -4
  38. package/es/components/Coachmark/utils/enums.d.ts +6 -0
  39. package/es/components/CoachmarkBeacon/CoachmarkBeacon.js +1 -7
  40. package/es/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
  41. package/es/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +2 -1
  42. package/es/components/CoachmarkStack/CoachmarkStack.d.ts +67 -2
  43. package/es/components/CoachmarkStack/CoachmarkStack.js +22 -11
  44. package/es/components/CoachmarkStack/CoachmarkStackHome.d.ts +71 -2
  45. package/es/components/CoachmarkStack/CoachmarkStackHome.js +25 -23
  46. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +100 -58
  47. package/es/components/ConditionBuilder/ConditionBuilder.js +82 -25
  48. package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
  49. package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +154 -0
  50. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
  51. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +30 -27
  52. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +8 -1
  53. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +35 -11
  54. package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +18 -10
  55. package/es/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +19 -11
  56. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -13
  57. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +83 -64
  58. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +13 -7
  59. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +31 -8
  60. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +8 -2
  61. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +35 -24
  62. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +43 -36
  63. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +43 -36
  64. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +6 -2
  65. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +114 -40
  66. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +3 -1
  67. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +24 -9
  68. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +27 -9
  69. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
  70. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +114 -0
  71. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.d.ts → ItemOptionForValueField.d.ts} +2 -2
  72. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.js → ItemOptionForValueField.js} +71 -38
  73. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +5 -1
  74. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +22 -9
  75. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
  76. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +1 -3
  77. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +122 -40
  78. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +5 -1
  79. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +51 -19
  80. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.d.ts +2 -1
  81. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +152 -42
  82. package/es/components/ConditionBuilder/utils/useTranslations.d.ts +1 -0
  83. package/es/components/ConditionBuilder/utils/useTranslations.js +26 -0
  84. package/es/components/ConditionBuilder/utils/util.d.ts +6 -4
  85. package/es/components/ConditionBuilder/utils/util.js +42 -17
  86. package/es/components/CreateFullPage/CreateFullPage.js +2 -2
  87. package/es/components/DataSpreadsheet/DataSpreadsheet.d.ts +26 -0
  88. package/es/components/DataSpreadsheet/DataSpreadsheet.js +129 -53
  89. package/es/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +16 -0
  90. package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +32 -7
  91. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
  92. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +16 -3
  93. package/es/components/DataSpreadsheet/types/index.d.ts +7 -0
  94. package/es/components/Datagrid/Datagrid/Datagrid.d.ts +0 -4
  95. package/es/components/Datagrid/Datagrid/Datagrid.js +4 -9
  96. package/es/components/Datagrid/Datagrid/DatagridBody.d.ts +6 -0
  97. package/es/components/Datagrid/Datagrid/DatagridContent.js +4 -3
  98. package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +23 -8
  99. package/es/components/Datagrid/Datagrid/DatagridRefBody.d.ts +6 -0
  100. package/es/components/Datagrid/Datagrid/DatagridRow.js +21 -8
  101. package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +6 -6
  102. package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
  103. package/es/components/Datagrid/Datagrid/DatagridSimpleBody.d.ts +6 -0
  104. package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +3 -1
  105. package/es/components/Datagrid/Datagrid/DraggableElement.d.ts +6 -0
  106. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +34 -10
  107. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -1
  108. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +6 -1
  109. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.d.ts +6 -3
  110. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +20 -12
  111. package/es/components/Datagrid/Datagrid/addons/Filtering/handleCheckboxChange.js +7 -0
  112. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
  113. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +54 -17
  114. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
  115. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +75 -12
  116. package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +10 -2
  117. package/es/components/Datagrid/common-column-ids.d.ts +6 -0
  118. package/es/components/Datagrid/types/index.d.ts +60 -9
  119. package/es/components/Datagrid/useActionsColumn.d.ts +8 -1
  120. package/es/components/Datagrid/useActionsColumn.js +7 -6
  121. package/es/components/Datagrid/useCustomizeColumns.d.ts +8 -1
  122. package/es/components/Datagrid/useCustomizeColumns.js +4 -3
  123. package/es/components/Datagrid/useDatagrid.d.ts +6 -0
  124. package/es/components/Datagrid/useDefaultStringRenderer.js +0 -1
  125. package/es/components/Datagrid/useDisableSelectRows.d.ts +8 -1
  126. package/es/components/Datagrid/useDisableSelectRows.js +27 -22
  127. package/es/components/Datagrid/useInitialColumnSort.js +4 -0
  128. package/es/components/Datagrid/useInlineEdit.js +12 -2
  129. package/es/components/Datagrid/useNestedRowExpander.js +1 -3
  130. package/es/components/Datagrid/useNestedRows.js +5 -4
  131. package/es/components/Datagrid/useRowExpander.js +1 -3
  132. package/es/components/Datagrid/useRowIsMouseOver.d.ts +6 -0
  133. package/es/components/Datagrid/useSelectRows.js +2 -1
  134. package/es/components/Datagrid/useSortableColumns.d.ts +5 -4
  135. package/es/components/Datagrid/useSortableColumns.js +18 -13
  136. package/es/components/Datagrid/useStickyColumn.d.ts +8 -1
  137. package/es/components/Datagrid/useStickyColumn.js +12 -9
  138. package/es/components/EditInPlace/EditInPlace.d.ts +4 -0
  139. package/es/components/EditInPlace/EditInPlace.js +21 -10
  140. package/es/components/EditTearsheet/EditTearsheet.d.ts +7 -2
  141. package/es/components/EditTearsheet/EditTearsheet.js +44 -10
  142. package/es/components/EditTearsheet/EditTearsheetForm.d.ts +45 -2
  143. package/es/components/EditTearsheet/EditTearsheetForm.js +3 -0
  144. package/es/components/EmptyStates/EmptyState.d.ts +72 -5
  145. package/es/components/EmptyStates/EmptyState.js +8 -5
  146. package/es/components/EmptyStates/EmptyStateV2.d.ts +63 -2
  147. package/es/components/EmptyStates/EmptyStateV2.js +3 -2
  148. package/es/components/FullPageError/FullPageError.d.ts +36 -2
  149. package/es/components/FullPageError/FullPageError.js +0 -3
  150. package/es/components/GetStartedCard/GetStartedCard.d.ts +60 -2
  151. package/es/components/GetStartedCard/GetStartedCard.js +11 -10
  152. package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
  153. package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
  154. package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
  155. package/es/components/HTTPErrors/assets/HTTPErrorSvg403.js +204 -200
  156. package/es/components/HTTPErrors/assets/HTTPErrorSvg404.js +116 -112
  157. package/es/components/HTTPErrors/assets/HTTPErrorSvgOther.js +110 -106
  158. package/es/components/Nav/NavItem.js +12 -3
  159. package/es/components/OptionsTile/OptionsTile.js +11 -6
  160. package/es/components/PageHeader/PageHeader.js +1 -0
  161. package/es/components/PageHeader/PageHeaderUtils.js +1 -1
  162. package/es/components/RemoveModal/RemoveModal.d.ts +4 -0
  163. package/es/components/RemoveModal/RemoveModal.js +7 -1
  164. package/es/components/SearchBar/SearchBar.d.ts +1 -1
  165. package/es/components/SearchBar/SearchBar.js +2 -2
  166. package/es/components/SidePanel/SidePanel.js +17 -21
  167. package/es/components/SidePanel/motion/variants.d.ts +4 -6
  168. package/es/components/SidePanel/motion/variants.js +10 -11
  169. package/es/components/StatusIndicator/StatusIndicatorStep.js +87 -0
  170. package/es/components/StringFormatter/StringFormatter.js +14 -3
  171. package/es/components/StringFormatter/utils/enums.d.ts +20 -1
  172. package/es/components/StringFormatter/utils/enums.js +29 -2
  173. package/es/components/TagOverflow/TagOverflow.d.ts +35 -4
  174. package/es/components/TagOverflow/TagOverflow.js +47 -64
  175. package/es/components/TagOverflow/TagOverflowModal.js +4 -6
  176. package/es/components/TagOverflow/TagOverflowPopover.d.ts +13 -1
  177. package/es/components/TagOverflow/TagOverflowPopover.js +38 -41
  178. package/es/components/Tearsheet/Tearsheet.d.ts +8 -1
  179. package/es/components/Tearsheet/Tearsheet.js +9 -1
  180. package/es/components/Tearsheet/TearsheetNarrow.d.ts +11 -0
  181. package/es/components/Tearsheet/TearsheetNarrow.js +12 -0
  182. package/es/components/Tearsheet/TearsheetShell.d.ts +11 -1
  183. package/es/components/Tearsheet/TearsheetShell.js +28 -7
  184. package/es/components/Toolbar/ToolbarButton.js +1 -1
  185. package/es/components/UserAvatar/UserAvatar.d.ts +59 -1
  186. package/es/components/UserAvatar/UserAvatar.js +7 -23
  187. package/es/components/WebTerminal/WebTerminal.js +10 -12
  188. package/es/components/index.d.ts +1 -1
  189. package/es/global/js/hooks/useFocus.d.ts +1 -0
  190. package/es/global/js/hooks/useFocus.js +5 -2
  191. package/es/global/js/hooks/usePrefersReducedMotion.js +14 -8
  192. package/es/global/js/package-settings.d.ts +1 -1
  193. package/es/global/js/package-settings.js +1 -1
  194. package/es/global/js/utils/scrollableAncestor.js +7 -0
  195. package/es/global/js/utils/uuidv4.d.ts +6 -0
  196. package/es/global/js/utils/uuidv4.js +2 -0
  197. package/es/global/js/utils/wait.d.ts +6 -0
  198. package/es/global/js/utils/wait.js +2 -0
  199. package/es/index.js +1 -0
  200. package/es/node_modules/@carbon/icon-helpers/es/index.js +49 -62
  201. package/es/node_modules/@carbon/icons-react/es/generated/bucket-2.js +1020 -1058
  202. package/es/node_modules/@carbon/icons-react/es/generated/bucket-9.js +881 -758
  203. package/es/settings.d.ts +1 -1
  204. package/flags.js +7 -0
  205. package/lib/components/APIKeyModal/APIKeyModal.types.d.ts +6 -0
  206. package/lib/components/ActionBar/ActionBar.d.ts +58 -2
  207. package/lib/components/ActionBar/ActionBar.js +14 -9
  208. package/lib/components/ActionBar/ActionBarItem.d.ts +36 -2
  209. package/lib/components/ActionBar/ActionBarItem.js +7 -4
  210. package/lib/components/ActionBar/ActionBarOverflowItems.d.ts +55 -16
  211. package/lib/components/ActionBar/ActionBarOverflowItems.js +8 -4
  212. package/lib/components/AddSelect/types/index.d.ts +6 -0
  213. package/lib/components/Card/Card.d.ts +68 -2
  214. package/lib/components/Card/Card.js +28 -35
  215. package/lib/components/Card/CardFooter.d.ts +51 -48
  216. package/lib/components/Card/CardFooter.js +4 -2
  217. package/lib/components/Card/CardHeader.d.ts +67 -49
  218. package/lib/components/Card/CardHeader.js +4 -2
  219. package/lib/components/Coachmark/Coachmark.d.ts +6 -1
  220. package/lib/components/Coachmark/Coachmark.js +46 -10
  221. package/lib/components/Coachmark/CoachmarkOverlay.js +2 -4
  222. package/lib/components/Coachmark/utils/enums.d.ts +6 -0
  223. package/lib/components/CoachmarkBeacon/CoachmarkBeacon.js +1 -7
  224. package/lib/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
  225. package/lib/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +2 -1
  226. package/lib/components/CoachmarkStack/CoachmarkStack.d.ts +67 -2
  227. package/lib/components/CoachmarkStack/CoachmarkStack.js +22 -11
  228. package/lib/components/CoachmarkStack/CoachmarkStackHome.d.ts +71 -2
  229. package/lib/components/CoachmarkStack/CoachmarkStackHome.js +25 -23
  230. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +98 -56
  231. package/lib/components/ConditionBuilder/ConditionBuilder.js +82 -25
  232. package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
  233. package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +163 -0
  234. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
  235. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +29 -25
  236. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +8 -1
  237. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +33 -9
  238. package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +16 -8
  239. package/lib/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +18 -10
  240. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -13
  241. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +81 -62
  242. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +13 -7
  243. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +31 -8
  244. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +8 -2
  245. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +34 -24
  246. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +43 -36
  247. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +43 -36
  248. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +6 -2
  249. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +112 -38
  250. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +3 -1
  251. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +24 -9
  252. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +28 -10
  253. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
  254. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +122 -0
  255. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.d.ts → ItemOptionForValueField.d.ts} +2 -2
  256. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.js → ItemOptionForValueField.js} +68 -35
  257. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +5 -1
  258. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +21 -8
  259. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
  260. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +1 -3
  261. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +119 -37
  262. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +5 -1
  263. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +50 -17
  264. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.d.ts +2 -1
  265. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +152 -41
  266. package/lib/components/ConditionBuilder/utils/useTranslations.d.ts +1 -0
  267. package/lib/components/ConditionBuilder/utils/useTranslations.js +30 -0
  268. package/lib/components/ConditionBuilder/utils/util.d.ts +6 -4
  269. package/lib/components/ConditionBuilder/utils/util.js +44 -16
  270. package/lib/components/CreateFullPage/CreateFullPage.js +2 -2
  271. package/lib/components/DataSpreadsheet/DataSpreadsheet.d.ts +26 -0
  272. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +129 -53
  273. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +16 -0
  274. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +32 -7
  275. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
  276. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +16 -3
  277. package/lib/components/DataSpreadsheet/types/index.d.ts +7 -0
  278. package/lib/components/Datagrid/Datagrid/Datagrid.d.ts +0 -4
  279. package/lib/components/Datagrid/Datagrid/Datagrid.js +4 -9
  280. package/lib/components/Datagrid/Datagrid/DatagridBody.d.ts +6 -0
  281. package/lib/components/Datagrid/Datagrid/DatagridContent.js +4 -3
  282. package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +23 -8
  283. package/lib/components/Datagrid/Datagrid/DatagridRefBody.d.ts +6 -0
  284. package/lib/components/Datagrid/Datagrid/DatagridRow.js +21 -8
  285. package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +6 -6
  286. package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
  287. package/lib/components/Datagrid/Datagrid/DatagridSimpleBody.d.ts +6 -0
  288. package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +3 -1
  289. package/lib/components/Datagrid/Datagrid/DraggableElement.d.ts +6 -0
  290. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +34 -10
  291. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -1
  292. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +6 -1
  293. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.d.ts +6 -3
  294. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +20 -12
  295. package/lib/components/Datagrid/Datagrid/addons/Filtering/handleCheckboxChange.js +7 -0
  296. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
  297. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +53 -16
  298. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
  299. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +74 -11
  300. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +10 -2
  301. package/lib/components/Datagrid/common-column-ids.d.ts +6 -0
  302. package/lib/components/Datagrid/types/index.d.ts +60 -9
  303. package/lib/components/Datagrid/useActionsColumn.d.ts +8 -1
  304. package/lib/components/Datagrid/useActionsColumn.js +7 -6
  305. package/lib/components/Datagrid/useCustomizeColumns.d.ts +8 -1
  306. package/lib/components/Datagrid/useCustomizeColumns.js +4 -3
  307. package/lib/components/Datagrid/useDatagrid.d.ts +6 -0
  308. package/lib/components/Datagrid/useDefaultStringRenderer.js +0 -1
  309. package/lib/components/Datagrid/useDisableSelectRows.d.ts +8 -1
  310. package/lib/components/Datagrid/useDisableSelectRows.js +27 -22
  311. package/lib/components/Datagrid/useInitialColumnSort.js +4 -0
  312. package/lib/components/Datagrid/useInlineEdit.js +12 -2
  313. package/lib/components/Datagrid/useNestedRowExpander.js +1 -3
  314. package/lib/components/Datagrid/useNestedRows.js +5 -4
  315. package/lib/components/Datagrid/useRowExpander.js +1 -3
  316. package/lib/components/Datagrid/useRowIsMouseOver.d.ts +6 -0
  317. package/lib/components/Datagrid/useSelectRows.js +2 -1
  318. package/lib/components/Datagrid/useSortableColumns.d.ts +5 -4
  319. package/lib/components/Datagrid/useSortableColumns.js +18 -13
  320. package/lib/components/Datagrid/useStickyColumn.d.ts +8 -1
  321. package/lib/components/Datagrid/useStickyColumn.js +12 -9
  322. package/lib/components/EditInPlace/EditInPlace.d.ts +4 -0
  323. package/lib/components/EditInPlace/EditInPlace.js +21 -10
  324. package/lib/components/EditTearsheet/EditTearsheet.d.ts +7 -2
  325. package/lib/components/EditTearsheet/EditTearsheet.js +43 -9
  326. package/lib/components/EditTearsheet/EditTearsheetForm.d.ts +45 -2
  327. package/lib/components/EditTearsheet/EditTearsheetForm.js +3 -0
  328. package/lib/components/EmptyStates/EmptyState.d.ts +72 -5
  329. package/lib/components/EmptyStates/EmptyState.js +8 -5
  330. package/lib/components/EmptyStates/EmptyStateV2.d.ts +63 -2
  331. package/lib/components/EmptyStates/EmptyStateV2.js +3 -2
  332. package/lib/components/FullPageError/FullPageError.d.ts +36 -2
  333. package/lib/components/FullPageError/FullPageError.js +0 -3
  334. package/lib/components/GetStartedCard/GetStartedCard.d.ts +60 -2
  335. package/lib/components/GetStartedCard/GetStartedCard.js +10 -9
  336. package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
  337. package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
  338. package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
  339. package/lib/components/HTTPErrors/assets/HTTPErrorSvg403.js +204 -200
  340. package/lib/components/HTTPErrors/assets/HTTPErrorSvg404.js +116 -112
  341. package/lib/components/HTTPErrors/assets/HTTPErrorSvgOther.js +110 -106
  342. package/lib/components/Nav/NavItem.js +10 -1
  343. package/lib/components/OptionsTile/OptionsTile.js +11 -6
  344. package/lib/components/PageHeader/PageHeader.js +1 -0
  345. package/lib/components/PageHeader/PageHeaderUtils.js +1 -1
  346. package/lib/components/RemoveModal/RemoveModal.d.ts +4 -0
  347. package/lib/components/RemoveModal/RemoveModal.js +7 -1
  348. package/lib/components/SearchBar/SearchBar.d.ts +1 -1
  349. package/lib/components/SearchBar/SearchBar.js +2 -2
  350. package/lib/components/SidePanel/SidePanel.js +16 -20
  351. package/lib/components/SidePanel/motion/variants.d.ts +4 -6
  352. package/lib/components/SidePanel/motion/variants.js +10 -11
  353. package/lib/components/StatusIndicator/StatusIndicatorStep.js +94 -0
  354. package/lib/components/StringFormatter/StringFormatter.js +13 -2
  355. package/lib/components/StringFormatter/utils/enums.d.ts +20 -1
  356. package/lib/components/StringFormatter/utils/enums.js +30 -1
  357. package/lib/components/TagOverflow/TagOverflow.d.ts +35 -4
  358. package/lib/components/TagOverflow/TagOverflow.js +46 -63
  359. package/lib/components/TagOverflow/TagOverflowModal.js +4 -6
  360. package/lib/components/TagOverflow/TagOverflowPopover.d.ts +13 -1
  361. package/lib/components/TagOverflow/TagOverflowPopover.js +37 -40
  362. package/lib/components/Tearsheet/Tearsheet.d.ts +8 -1
  363. package/lib/components/Tearsheet/Tearsheet.js +9 -1
  364. package/lib/components/Tearsheet/TearsheetNarrow.d.ts +11 -0
  365. package/lib/components/Tearsheet/TearsheetNarrow.js +12 -0
  366. package/lib/components/Tearsheet/TearsheetShell.d.ts +11 -1
  367. package/lib/components/Tearsheet/TearsheetShell.js +26 -5
  368. package/lib/components/Toolbar/ToolbarButton.js +1 -1
  369. package/lib/components/UserAvatar/UserAvatar.d.ts +59 -1
  370. package/lib/components/UserAvatar/UserAvatar.js +7 -23
  371. package/lib/components/WebTerminal/WebTerminal.js +10 -12
  372. package/lib/components/index.d.ts +1 -1
  373. package/lib/global/js/hooks/useFocus.d.ts +1 -0
  374. package/lib/global/js/hooks/useFocus.js +5 -1
  375. package/lib/global/js/hooks/usePrefersReducedMotion.js +13 -7
  376. package/lib/global/js/package-settings.d.ts +1 -1
  377. package/lib/global/js/package-settings.js +1 -1
  378. package/lib/global/js/utils/scrollableAncestor.js +7 -0
  379. package/lib/global/js/utils/uuidv4.d.ts +6 -0
  380. package/lib/global/js/utils/uuidv4.js +2 -0
  381. package/lib/global/js/utils/wait.d.ts +6 -0
  382. package/lib/global/js/utils/wait.js +2 -0
  383. package/lib/index.js +5 -0
  384. package/lib/node_modules/@carbon/icon-helpers/es/index.js +49 -62
  385. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-2.js +1036 -1074
  386. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-9.js +946 -823
  387. package/lib/settings.d.ts +1 -1
  388. package/package.json +8 -7
  389. package/scss/components/Coachmark/_coachmark-overlay.scss +6 -70
  390. package/scss/components/Coachmark/_coachmark.scss +5 -4
  391. package/scss/components/CoachmarkBeacon/_coachmark-beacon.scss +1 -3
  392. package/scss/components/ConditionBuilder/_condition-builder.scss +8 -1
  393. package/scss/components/ConditionBuilder/styles/_conditionBuilderCondition.scss +30 -5
  394. package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +88 -22
  395. package/scss/components/ConditionBuilder/styles/_index.scss +7 -0
  396. package/scss/components/CreateModal/_create-modal.scss +0 -4
  397. package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +16 -2
  398. package/scss/components/Datagrid/_datagrid.scss +0 -4
  399. package/scss/components/Datagrid/styles/_datagrid.scss +1 -0
  400. package/scss/components/Datagrid/styles/_useActionsColumn.scss +6 -7
  401. package/scss/components/Datagrid/styles/_useColumnRightAlign.scss +6 -7
  402. package/scss/components/Datagrid/styles/_useExpandedRow.scss +6 -7
  403. package/scss/components/Datagrid/styles/_useInlineEdit.scss +19 -7
  404. package/scss/components/Datagrid/styles/_useNestedRows.scss +6 -7
  405. package/scss/components/Datagrid/styles/_useNestedTable.scss +6 -7
  406. package/scss/components/Datagrid/styles/_useStickyColumn.scss +6 -7
  407. package/scss/components/Datagrid/styles/addons/_CustomizeColumnsTearsheet.scss +7 -5
  408. package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +5 -4
  409. package/scss/components/Datagrid/styles/addons/_RowSizeDropdown.scss +6 -7
  410. package/scss/components/HTTPErrors/_http-errors.scss +77 -0
  411. package/scss/components/OptionsTile/_options-tile.scss +6 -6
  412. package/scss/components/SidePanel/_side-panel.scss +1 -1
  413. package/scss/components/_index-released-only.scss +1 -0
  414. package/scss/config-dev.scss +7 -0
  415. package/scss/config.scss +7 -0
  416. package/telemetry.yml +34 -19
  417. package/es/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
  418. package/es/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -16
  419. package/es/global/js/utils/window.d.ts +0 -2
  420. package/es/global/js/utils/window.js +0 -12
  421. package/lib/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
  422. package/lib/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -20
  423. package/lib/global/js/utils/window.d.ts +0 -2
  424. package/lib/global/js/utils/window.js +0 -16
@@ -17,7 +17,7 @@ import { pkg } from '../../settings.js';
17
17
  import { blockClass } from './ConditionBuilderContext/DataConfigs.js';
18
18
  import { handleKeyDown } from './utils/handleKeyboardEvents.js';
19
19
 
20
- var _excluded = ["className", "inputConfig", "startConditionLabel", "popOverSearchThreshold", "getOptions", "initialState", "getConditionState", "variant"];
20
+ var _excluded = ["className", "inputConfig", "startConditionLabel", "popOverSearchThreshold", "getOptions", "initialState", "getConditionState", "getActionsState", "variant", "actions", "translateWithId"];
21
21
 
22
22
  // Carbon and package components we use.
23
23
  /* TODO: @import(s) of carbon components and other package components. */
@@ -52,18 +52,24 @@ var ConditionBuilder = /*#__PURE__*/React__default.forwardRef(function (_ref, re
52
52
  getOptions = _ref.getOptions,
53
53
  initialState = _ref.initialState,
54
54
  getConditionState = _ref.getConditionState,
55
- variant = _ref.variant,
55
+ getActionsState = _ref.getActionsState,
56
+ _ref$variant = _ref.variant,
57
+ variant = _ref$variant === void 0 ? 'sentence' : _ref$variant,
58
+ actions = _ref.actions,
59
+ translateWithId = _ref.translateWithId,
56
60
  rest = _objectWithoutProperties(_ref, _excluded);
57
61
  var localRef = useRef();
58
62
  var conditionBuilderRef = ref || localRef;
59
63
  var handleKeyDownHandler = function handleKeyDownHandler(evt) {
60
- handleKeyDown(evt, conditionBuilderRef);
64
+ handleKeyDown(evt, conditionBuilderRef, variant);
61
65
  };
62
66
  return /*#__PURE__*/React__default.createElement(ConditionBuilderProvider, {
63
67
  inputConfig: inputConfig,
64
68
  popOverSearchThreshold: popOverSearchThreshold,
65
69
  getOptions: getOptions,
66
- variant: variant
70
+ variant: variant,
71
+ translateWithId: translateWithId,
72
+ conditionBuilderRef: conditionBuilderRef
67
73
  }, /*#__PURE__*/React__default.createElement("div", _extends({}, rest, {
68
74
  className: cx(blockClass,
69
75
  // Apply the block class to the main HTML element
@@ -81,9 +87,10 @@ var ConditionBuilder = /*#__PURE__*/React__default.forwardRef(function (_ref, re
81
87
  onKeyDown: handleKeyDownHandler
82
88
  }, /*#__PURE__*/React__default.createElement(ConditionBuilderContent, {
83
89
  startConditionLabel: startConditionLabel,
84
- conditionBuilderRef: conditionBuilderRef,
85
90
  getConditionState: getConditionState,
86
- initialState: initialState
91
+ getActionsState: getActionsState,
92
+ initialState: initialState,
93
+ actions: actions
87
94
  }))));
88
95
  });
89
96
 
@@ -99,27 +106,66 @@ ConditionBuilder.displayName = componentName;
99
106
  // See https://www.npmjs.com/package/prop-types#usage.
100
107
  ConditionBuilder.propTypes = {
101
108
  /**
102
- * Provide the contents of the ConditionBuilder.
109
+ * optional array of actions
103
110
  */
104
- //children: PropTypes.node.isRequired,
105
-
111
+ actions: PropTypes.arrayOf(PropTypes.shape({
112
+ id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
113
+ label: PropTypes.string.isRequired
114
+ })),
106
115
  /**
107
116
  * Provide an optional class to be applied to the containing node.
108
117
  */
109
118
  className: PropTypes.string,
119
+ /**
120
+ * This is a callback that gives back the updated action state
121
+ */
122
+ getActionsState: PropTypes.func,
123
+ /**
124
+ * This is a callback that gives back updated condition state
125
+ */
110
126
  getConditionState: PropTypes.func.isRequired,
127
+ /**
128
+ * This is a callback that get triggered when you want to dynamically fetch options.
129
+ * Component call this when the option array is not passed against a property with type as option in the input config.
130
+ * This is an asynchronous callback that can return a promise , and you need to resolve the promise with options array in the valid format.
131
+ * You will receive the root condition state and current condition as the 2 arguments.
132
+ * eg: const getOptions = async (conditionState,condition) => {
133
+ switch (condition.property) {
134
+ case 'continent':
135
+ return new Promise((resolve) => {
136
+ const continents=[{
137
+ label: 'Africa',
138
+ id: 'Africa',
139
+ },...]
140
+ resolve(continents);
141
+ });
142
+ default:
143
+ return [];
144
+ }
145
+ };
146
+ */
111
147
  getOptions: PropTypes.func,
148
+ /**
149
+ * Optional prop if you want to pass a saved condition state.
150
+ * This object should respect the structure of condition state that is available in getConditionState callback
151
+ */
112
152
  initialState: PropTypes.shape({
113
153
  groups: PropTypes.arrayOf(PropTypes.shape({
114
- groupSeparateOperator: PropTypes.string,
115
- groupOperator: PropTypes.string,
116
- statement: PropTypes.string,
117
- conditions: PropTypes.arrayOf(PropTypes.shape({
118
- property: PropTypes.string,
119
- operator: PropTypes.string,
120
- value: PropTypes.string
121
- }))
122
- }))
154
+ groupOperator: PropTypes.string.isRequired,
155
+ statement: PropTypes.string.isRequired,
156
+ conditions: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.shape({
157
+ property: PropTypes.string.isRequired,
158
+ operator: PropTypes.string.isRequired,
159
+ value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.shape({
160
+ id: PropTypes.string,
161
+ label: PropTypes.string
162
+ })), PropTypes.shape({
163
+ id: PropTypes.string,
164
+ label: PropTypes.string
165
+ })])
166
+ }), PropTypes.object]))
167
+ })),
168
+ operator: PropTypes.string
123
169
  }),
124
170
  /**
125
171
  * This is a mandatory prop that defines the input to the condition builder.
@@ -127,17 +173,21 @@ ConditionBuilder.propTypes = {
127
173
  */
128
174
  inputConfig: PropTypes.shape({
129
175
  properties: PropTypes.arrayOf(PropTypes.shape({
130
- id: PropTypes.string,
131
- label: PropTypes.string,
176
+ id: PropTypes.string.isRequired,
177
+ label: PropTypes.string.isRequired,
132
178
  icon: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
133
- type: PropTypes.oneOf(['text', 'number', 'date', 'option', 'time']),
179
+ type: PropTypes.oneOf(['text', 'textarea', 'number', 'date', 'option', 'time', 'custom']).isRequired,
134
180
  config: PropTypes.shape({
135
181
  options: PropTypes.arrayOf(PropTypes.shape({
136
- id: PropTypes.string,
137
- label: PropTypes.string,
182
+ id: PropTypes.string.isRequired,
183
+ label: PropTypes.string.isRequired,
138
184
  icon: PropTypes.oneOfType([PropTypes.func, PropTypes.object])
139
185
  })),
140
- includeSearch: PropTypes.bool
186
+ component: PropTypes.func,
187
+ operators: PropTypes.arrayOf(PropTypes.shape({
188
+ id: PropTypes.string.isRequired,
189
+ label: PropTypes.string.isRequired
190
+ }))
141
191
  })
142
192
  }))
143
193
  }).isRequired,
@@ -149,11 +199,18 @@ ConditionBuilder.propTypes = {
149
199
  * Provide a label to the button that starts condition builder
150
200
  */
151
201
  startConditionLabel: PropTypes.string.isRequired,
202
+ /**
203
+ * Optional prop, if you need to pass translations to the texts on the component instead of the defined defaults.
204
+ * This callback function will receive the message id and you need to return the corresponding text for that id.
205
+ * The message id will be one of [ "ifText","addConditionText", "addConditionGroupText", "addSubgroupText", "conditionText", "propertyText", "operatorText", "valueText", "connectorText", "conditionRowText","conditionRowGroupText","conditionBuilderText","actionSectionText", "removeConditionText", "addConditionRowText", "startText", "endText", "clearSearchText", "actionsText", "then", "removeActionText", "addActionText", "invalidText", "invalidNumberWarnText"]
206
+ ]
207
+ */
208
+ translateWithId: PropTypes.func,
152
209
  /* TODO: add types and DocGen for all props. */
153
210
  /**
154
211
  * Provide the condition builder variant: sentence/ tree
155
212
  */
156
- variant: PropTypes.string.isRequired
213
+ variant: PropTypes.oneOf(['tree', 'sentence'])
157
214
  };
158
215
 
159
216
  export { ConditionBuilder };
@@ -0,0 +1,15 @@
1
+ export default ConditionBuilderActions;
2
+ declare function ConditionBuilderActions({ actions, className }: {
3
+ actions: any;
4
+ className: any;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ declare namespace ConditionBuilderActions {
7
+ namespace propTypes {
8
+ let actions: PropTypes.Requireable<(PropTypes.InferProps<{
9
+ id: PropTypes.Validator<NonNullable<NonNullable<string | number | null | undefined>>>;
10
+ label: PropTypes.Validator<string>;
11
+ }> | null | undefined)[]>;
12
+ let className: PropTypes.Requireable<string>;
13
+ }
14
+ }
15
+ import PropTypes from 'prop-types';
@@ -0,0 +1,154 @@
1
+ /**
2
+ * Copyright IBM Corp. 2020, 2024
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { slicedToArray as _slicedToArray, defineProperty as _defineProperty, toConsumableArray as _toConsumableArray, objectSpread2 as _objectSpread2 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
9
+ import React__default, { useContext, useState } from 'react';
10
+ import PropTypes from '../../../node_modules/prop-types/index.js';
11
+ import cx from 'classnames';
12
+ import { Close } from '@carbon/react/icons';
13
+ import { Section, Heading } from '@carbon/react';
14
+ import { ConditionBuilderItem } from '../ConditionBuilderItem/ConditionBuilderItem.js';
15
+ import { blockClass } from '../ConditionBuilderContext/DataConfigs.js';
16
+ import { ConditionBuilderContext } from '../ConditionBuilderContext/ConditionBuilderProvider.js';
17
+ import ConditionBuilderAdd from '../ConditionBuilderAdd/ConditionBuilderAdd.js';
18
+ import uuidv4 from '../../../global/js/utils/uuidv4.js';
19
+ import { ConditionBuilderButton } from '../ConditionBuilderButton/ConditionBuilderButton.js';
20
+ import { useTranslations } from '../utils/useTranslations.js';
21
+ import { ItemOptionForValueField } from '../ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js';
22
+
23
+ var ConditionBuilderActions = function ConditionBuilderActions(_ref) {
24
+ var actions = _ref.actions,
25
+ className = _ref.className;
26
+ var _useContext = useContext(ConditionBuilderContext),
27
+ actionState = _useContext.actionState,
28
+ setActionState = _useContext.setActionState;
29
+ var _useState = useState(-1),
30
+ _useState2 = _slicedToArray(_useState, 2),
31
+ showDeletionPreview = _useState2[0],
32
+ setShowDeletionPreview = _useState2[1];
33
+ var _useTranslations = useTranslations(['actionsText', 'then', 'and', 'removeActionText', 'addActionText', 'actionSectionText']),
34
+ _useTranslations2 = _slicedToArray(_useTranslations, 6),
35
+ actionsText = _useTranslations2[0],
36
+ thenText = _useTranslations2[1],
37
+ andText = _useTranslations2[2],
38
+ removeActionText = _useTranslations2[3],
39
+ addActionText = _useTranslations2[4],
40
+ actionSectionText = _useTranslations2[5];
41
+ var addActionHandler = function addActionHandler() {
42
+ var action = {
43
+ id: uuidv4(),
44
+ label: undefined,
45
+ popoverToOpen: 'valueField'
46
+ };
47
+ setActionState([].concat(_toConsumableArray(actionState), [action]));
48
+ };
49
+ var onchangeHandler = function onchangeHandler(selectedId, actionIndex) {
50
+ var action = actions.find(function (action) {
51
+ return action.id === selectedId;
52
+ }); //fetch the selected action from the input action array
53
+
54
+ // same actions can be added multiple times
55
+ var newAction = _objectSpread2(_objectSpread2({}, action), {}, {
56
+ id: actionState[actionIndex].id
57
+ });
58
+ setActionState([].concat(_toConsumableArray(actionState.slice(0, actionIndex)), [newAction], _toConsumableArray(actionState.slice(actionIndex + 1))));
59
+ };
60
+ var onRemove = function onRemove(selectedId) {
61
+ setActionState(actionState.filter(function (action) {
62
+ return action.id !== selectedId;
63
+ }));
64
+ };
65
+ var handleShowDeletionPreview = function handleShowDeletionPreview(index) {
66
+ setShowDeletionPreview(index);
67
+ };
68
+ var handleHideDeletionPreview = function handleHideDeletionPreview() {
69
+ setShowDeletionPreview(-1);
70
+ };
71
+ return /*#__PURE__*/React__default.createElement("div", {
72
+ className: className
73
+ }, /*#__PURE__*/React__default.createElement(Section, {
74
+ className: "".concat(blockClass, "__heading"),
75
+ level: 4
76
+ }, /*#__PURE__*/React__default.createElement(Heading, null, actionsText)), /*#__PURE__*/React__default.createElement("div", {
77
+ className: "".concat(blockClass, "__condition-wrapper"),
78
+ role: "grid",
79
+ "aria-label": actionSectionText
80
+ }, actionState === null || actionState === void 0 ? void 0 : actionState.map(function (action, index) {
81
+ return /*#__PURE__*/React__default.createElement("div", {
82
+ key: action.id,
83
+ role: "row",
84
+ className: cx("".concat(blockClass, "__condition-block ").concat(blockClass, "__gap ").concat(blockClass, "__gap-bottom"), _defineProperty({}, "".concat(blockClass, "__condition__deletion-preview"), showDeletionPreview == index))
85
+ }, /*#__PURE__*/React__default.createElement(ConditionBuilderItem, {
86
+ className: "".concat(blockClass, "__statement-button"),
87
+ tabIndex: 0,
88
+ popOverClassName: "".concat(blockClass, "__gap"),
89
+ label: index === 0 ? thenText : andText
90
+ }), /*#__PURE__*/React__default.createElement(ConditionBuilderItem, {
91
+ label: action.label,
92
+ title: actionsText,
93
+ condition: action,
94
+ "data-name": "valueField",
95
+ type: "option"
96
+ }, /*#__PURE__*/React__default.createElement(ItemOptionForValueField, {
97
+ conditionState: {
98
+ value: action.label
99
+ },
100
+ onChange: function onChange(selection) {
101
+ return onchangeHandler(selection.id, index);
102
+ },
103
+ config: {
104
+ options: actions
105
+ }
106
+ })), /*#__PURE__*/React__default.createElement("span", {
107
+ role: "gridcell",
108
+ "aria-label": removeActionText
109
+ }, /*#__PURE__*/React__default.createElement(ConditionBuilderButton, {
110
+ hideLabel: true,
111
+ label: removeActionText,
112
+ onClick: function onClick() {
113
+ return onRemove(action.id);
114
+ },
115
+ onMouseEnter: function onMouseEnter() {
116
+ return handleShowDeletionPreview(index);
117
+ },
118
+ onMouseLeave: handleHideDeletionPreview,
119
+ onFocus: function onFocus() {
120
+ return handleShowDeletionPreview(index);
121
+ },
122
+ onBlur: handleHideDeletionPreview,
123
+ renderIcon: Close,
124
+ className: "".concat(blockClass, "__close-condition"),
125
+ "data-name": "closeCondition"
126
+ })), actionState.length === index + 1 && /*#__PURE__*/React__default.createElement(ConditionBuilderAdd, {
127
+ onClick: addActionHandler,
128
+ className: "".concat(blockClass, "__gap ").concat(blockClass, "__gap-left"),
129
+ buttonLabel: addActionText,
130
+ tabIndex: 0
131
+ }));
132
+ }), actionState.length === 0 && /*#__PURE__*/React__default.createElement(ConditionBuilderAdd, {
133
+ onClick: addActionHandler,
134
+ className: "".concat(blockClass, "__gap ").concat(blockClass, "__gap-left"),
135
+ buttonLabel: addActionText,
136
+ tabIndex: 0
137
+ })));
138
+ };
139
+ var ConditionBuilderActions$1 = ConditionBuilderActions;
140
+ ConditionBuilderActions.propTypes = {
141
+ /**
142
+ * optional array of object that give the list of actions.
143
+ */
144
+ actions: PropTypes.arrayOf(PropTypes.shape({
145
+ id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
146
+ label: PropTypes.string.isRequired
147
+ })),
148
+ /**
149
+ * Provide an optional class to be applied to the containing node.
150
+ */
151
+ className: PropTypes.string
152
+ };
153
+
154
+ export { ConditionBuilderActions$1 as default };
@@ -1,5 +1,5 @@
1
1
  export default ConditionBuilderAdd;
2
- declare function ConditionBuilderAdd({ className, onClick, addConditionSubGroupHandler, showConditionSubGroupPreviewHandler, hideConditionSubGroupPreviewHandler, showConditionPreviewHandler, hideConditionPreviewHandler, enableSubGroup, buttonLabel, }: {
2
+ declare function ConditionBuilderAdd({ className, onClick, addConditionSubGroupHandler, showConditionSubGroupPreviewHandler, hideConditionSubGroupPreviewHandler, showConditionPreviewHandler, hideConditionPreviewHandler, enableSubGroup, buttonLabel, tabIndex, }: {
3
3
  className: any;
4
4
  onClick: any;
5
5
  addConditionSubGroupHandler: any;
@@ -9,6 +9,7 @@ declare function ConditionBuilderAdd({ className, onClick, addConditionSubGroupH
9
9
  hideConditionPreviewHandler: any;
10
10
  enableSubGroup: any;
11
11
  buttonLabel: any;
12
+ tabIndex: any;
12
13
  }): import("react/jsx-runtime").JSX.Element;
13
14
  declare namespace ConditionBuilderAdd {
14
15
  namespace propTypes {
@@ -21,6 +22,7 @@ declare namespace ConditionBuilderAdd {
21
22
  let onClick: PropTypes.Requireable<(...args: any[]) => any>;
22
23
  let showConditionPreviewHandler: PropTypes.Requireable<(...args: any[]) => any>;
23
24
  let showConditionSubGroupPreviewHandler: PropTypes.Requireable<(...args: any[]) => any>;
25
+ let tabIndex: PropTypes.Requireable<number>;
24
26
  }
25
27
  }
26
28
  import PropTypes from 'prop-types';
@@ -6,11 +6,13 @@
6
6
  */
7
7
 
8
8
  import { slicedToArray as _slicedToArray, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
9
- import React__default, { useState } from 'react';
9
+ import React__default from 'react';
10
+ import cx from 'classnames';
10
11
  import { AddAlt, TextNewLine } from '@carbon/react/icons';
11
12
  import { ConditionBuilderButton } from '../ConditionBuilderButton/ConditionBuilderButton.js';
12
13
  import PropTypes from '../../../node_modules/prop-types/index.js';
13
- import { translateWithId, blockClass } from '../ConditionBuilderContext/DataConfigs.js';
14
+ import { blockClass } from '../ConditionBuilderContext/DataConfigs.js';
15
+ import { useTranslations } from '../utils/useTranslations.js';
14
16
 
15
17
  var ConditionBuilderAdd = function ConditionBuilderAdd(_ref) {
16
18
  var className = _ref.className,
@@ -21,17 +23,13 @@ var ConditionBuilderAdd = function ConditionBuilderAdd(_ref) {
21
23
  showConditionPreviewHandler = _ref.showConditionPreviewHandler,
22
24
  hideConditionPreviewHandler = _ref.hideConditionPreviewHandler,
23
25
  enableSubGroup = _ref.enableSubGroup,
24
- buttonLabel = _ref.buttonLabel;
25
- var _useState = useState(false),
26
- _useState2 = _slicedToArray(_useState, 2),
27
- isAddSubgroup = _useState2[0],
28
- setIsAddSubgroup = _useState2[1];
29
- var showAddSubGroup = function showAddSubGroup() {
30
- setIsAddSubgroup(true);
31
- };
32
- var hideAddSubGroup = function hideAddSubGroup() {
33
- setIsAddSubgroup(false);
34
- };
26
+ buttonLabel = _ref.buttonLabel,
27
+ tabIndex = _ref.tabIndex;
28
+ var _useTranslations = useTranslations(['addConditionText', 'addConditionRowText', 'addSubgroupText']),
29
+ _useTranslations2 = _slicedToArray(_useTranslations, 3),
30
+ addConditionText = _useTranslations2[0],
31
+ addConditionRowText = _useTranslations2[1],
32
+ addSubgroupText = _useTranslations2[2];
35
33
  var onClickHandler = function onClickHandler() {
36
34
  hideConditionPreviewHandler === null || hideConditionPreviewHandler === void 0 || hideConditionPreviewHandler();
37
35
  onClick();
@@ -52,34 +50,35 @@ var ConditionBuilderAdd = function ConditionBuilderAdd(_ref) {
52
50
  onBlur: hideConditionSubGroupPreviewHandler
53
51
  };
54
52
  };
53
+ var getAriaLabel = function getAriaLabel() {
54
+ return buttonLabel ? buttonLabel : !enableSubGroup ? addConditionRowText : undefined;
55
+ };
55
56
  var wrapperProps = enableSubGroup ? {
56
- role: 'gridcell',
57
- 'aria-label': translateWithId('add-condition')
57
+ role: 'gridcell'
58
58
  } : {};
59
59
  return /*#__PURE__*/React__default.createElement("div", {
60
60
  className: "".concat(className, " ").concat(blockClass, "__add-button-wrapper"),
61
61
  role: !enableSubGroup ? 'gridcell' : 'none',
62
- "aria-label": !enableSubGroup ? translateWithId('add_condition_row') : undefined,
63
- onMouseEnter: showAddSubGroup,
64
- onMouseLeave: hideAddSubGroup,
65
- onFocus: showAddSubGroup,
66
- onBlur: hideAddSubGroup
62
+ "aria-label": getAriaLabel()
67
63
  }, /*#__PURE__*/React__default.createElement(ConditionBuilderButton, _extends({
68
64
  renderIcon: AddAlt,
69
65
  onClick: onClickHandler
70
66
  }, previewHandlers(), {
67
+ wrapperProps: wrapperProps,
71
68
  className: "".concat(blockClass, "__add-button"),
72
69
  hideLabel: true,
73
70
  "data-name": "addButton",
74
- label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : translateWithId('add-condition'),
75
- wrapperProps: wrapperProps
76
- })), isAddSubgroup && enableSubGroup && /*#__PURE__*/React__default.createElement(ConditionBuilderButton, _extends({
71
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : addConditionText,
72
+ tabIndex: tabIndex,
73
+ wrapperClassName: "".concat(blockClass, "__add-condition-wrapper")
74
+ })), enableSubGroup && /*#__PURE__*/React__default.createElement(ConditionBuilderButton, _extends({
77
75
  renderIcon: TextNewLine,
78
76
  onClick: addConditionSubGroupHandler,
79
- className: "".concat(blockClass, "__add-condition-group ").concat(blockClass, "__gap-left"),
77
+ className: cx("".concat(blockClass, "__add-condition-sub-group")),
80
78
  hideLabel: true,
81
- label: translateWithId('add-condition'),
82
- wrapperProps: wrapperProps
79
+ label: addSubgroupText,
80
+ wrapperProps: wrapperProps,
81
+ wrapperClassName: "".concat(blockClass, "__add-condition-sub-group-wrapper ").concat(blockClass, "__gap-left")
83
82
  }, previewHandlersForSubgroup())));
84
83
  };
85
84
  var ConditionBuilderAdd$1 = ConditionBuilderAdd;
@@ -114,10 +113,14 @@ ConditionBuilderAdd.propTypes = {
114
113
  */
115
114
  onClick: PropTypes.func,
116
115
  showConditionPreviewHandler: PropTypes.func,
117
- showConditionSubGroupPreviewHandler: PropTypes.func
116
+ showConditionSubGroupPreviewHandler: PropTypes.func,
118
117
  /**
119
118
  * handler for hiding sub group preview
120
119
  */
120
+ /**
121
+ * Tab index
122
+ */
123
+ tabIndex: PropTypes.number
121
124
  };
122
125
 
123
126
  export { ConditionBuilderAdd$1 as default };
@@ -1,4 +1,5 @@
1
- export function ConditionBuilderButton({ className, label, hideLabel, tooltipAlign, renderIcon: Icon, onClick, showToolTip, wrapperProps, onBlur, onFocus, onMouseEnter, onMouseLeave, }: {
1
+ export function ConditionBuilderButton({ className, label, hideLabel, tooltipAlign, renderIcon: Icon, onClick, showToolTip, wrapperProps, onBlur, onFocus, onMouseEnter, onMouseLeave, isInvalid, wrapperClassName, tabIndex, ...rest }: {
2
+ [x: string]: any;
2
3
  className: any;
3
4
  label: any;
4
5
  hideLabel: any;
@@ -11,11 +12,15 @@ export function ConditionBuilderButton({ className, label, hideLabel, tooltipAli
11
12
  onFocus: any;
12
13
  onMouseEnter: any;
13
14
  onMouseLeave: any;
15
+ isInvalid: any;
16
+ wrapperClassName: any;
17
+ tabIndex: any;
14
18
  }): import("react/jsx-runtime").JSX.Element;
15
19
  export namespace ConditionBuilderButton {
16
20
  namespace propTypes {
17
21
  let className: PropTypes.Requireable<string>;
18
22
  let hideLabel: PropTypes.Requireable<boolean>;
23
+ let isInvalid: PropTypes.Requireable<boolean>;
19
24
  let label: PropTypes.Requireable<string>;
20
25
  let onBlur: PropTypes.Requireable<(...args: any[]) => any>;
21
26
  let onClick: PropTypes.Requireable<(...args: any[]) => any>;
@@ -24,7 +29,9 @@ export namespace ConditionBuilderButton {
24
29
  let onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
25
30
  let renderIcon: PropTypes.Requireable<object>;
26
31
  let showToolTip: PropTypes.Requireable<boolean>;
32
+ let tabIndex: PropTypes.Requireable<number>;
27
33
  let tooltipAlign: PropTypes.Requireable<string>;
34
+ let wrapperClassName: PropTypes.Requireable<string>;
28
35
  let wrapperProps: PropTypes.Requireable<object>;
29
36
  }
30
37
  }
@@ -5,13 +5,16 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { extends as _extends, defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { objectWithoutProperties as _objectWithoutProperties, extends as _extends, defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import React__default from 'react';
10
10
  import cx from 'classnames';
11
11
  import PropTypes from '../../../node_modules/prop-types/index.js';
12
- import { Tooltip } from '@carbon/react';
12
+ import { usePrefix, Tooltip } from '@carbon/react';
13
13
  import { blockClass } from '../ConditionBuilderContext/DataConfigs.js';
14
+ import { WarningAltFilled } from '@carbon/react/icons';
14
15
 
16
+ var _WarningAltFilled;
17
+ var _excluded = ["className", "label", "hideLabel", "tooltipAlign", "renderIcon", "onClick", "showToolTip", "wrapperProps", "onBlur", "onFocus", "onMouseEnter", "onMouseLeave", "isInvalid", "wrapperClassName", "tabIndex"];
15
18
  var ConditionBuilderButton = function ConditionBuilderButton(_ref) {
16
19
  var _Icon, _span;
17
20
  var className = _ref.className,
@@ -25,25 +28,34 @@ var ConditionBuilderButton = function ConditionBuilderButton(_ref) {
25
28
  onBlur = _ref.onBlur,
26
29
  onFocus = _ref.onFocus,
27
30
  onMouseEnter = _ref.onMouseEnter,
28
- onMouseLeave = _ref.onMouseLeave;
31
+ onMouseLeave = _ref.onMouseLeave,
32
+ isInvalid = _ref.isInvalid,
33
+ wrapperClassName = _ref.wrapperClassName,
34
+ tabIndex = _ref.tabIndex,
35
+ rest = _objectWithoutProperties(_ref, _excluded);
36
+ var carbonPrefix = usePrefix();
29
37
  var Button = function Button() {
30
- return /*#__PURE__*/React__default.createElement("button", {
31
- // role={'gridcell'}
32
- tabIndex: -1,
33
- className: cx([className, "".concat(blockClass, "__button"), _defineProperty({}, "".concat(blockClass, "__text-ellipsis"), showToolTip && !hideLabel)]),
38
+ var _rest$dataName;
39
+ var dataName = (_rest$dataName = rest['data-name']) !== null && _rest$dataName !== void 0 ? _rest$dataName : '';
40
+ return /*#__PURE__*/React__default.createElement("button", _extends({
41
+ tabIndex: tabIndex != undefined ? tabIndex : -1,
42
+ className: cx([className, "".concat(blockClass, "__button"), _defineProperty({}, "".concat(blockClass, "__text-ellipsis"), showToolTip && !hideLabel && !isInvalid), _defineProperty({}, "".concat(blockClass, "__invalid-input"), isInvalid)]),
34
43
  type: "button",
35
44
  onClick: onClick,
36
45
  onBlur: onBlur,
37
46
  onFocus: onFocus,
38
47
  onMouseEnter: onMouseEnter,
39
- onMouseLeave: onMouseLeave
40
- }, Icon && (_Icon || (_Icon = /*#__PURE__*/React__default.createElement(Icon, null))), !hideLabel && (_span || (_span = /*#__PURE__*/React__default.createElement("span", null, label))));
48
+ onMouseLeave: onMouseLeave,
49
+ "data-name": dataName
50
+ }, rest), Icon && (_Icon || (_Icon = /*#__PURE__*/React__default.createElement(Icon, null))), !hideLabel && (_span || (_span = /*#__PURE__*/React__default.createElement("span", null, label))), isInvalid && (_WarningAltFilled || (_WarningAltFilled = /*#__PURE__*/React__default.createElement(WarningAltFilled, null))));
41
51
  };
42
52
  return hideLabel || showToolTip ? /*#__PURE__*/React__default.createElement(Tooltip, _extends({
43
53
  label: label,
44
54
  align: tooltipAlign,
45
- className: "".concat(blockClass, "__con-tooltip")
46
- }, wrapperProps), Button()) : /*#__PURE__*/React__default.createElement(React__default.Fragment, null, Button());
55
+ className: "".concat(wrapperClassName, " ").concat(blockClass, "__tooltip ").concat(carbonPrefix, "--icon-tooltip")
56
+ }, wrapperProps, {
57
+ leaveDelayMs: 0
58
+ }), Button()) : /*#__PURE__*/React__default.createElement(React__default.Fragment, null, Button());
47
59
  };
48
60
  ConditionBuilderButton.propTypes = {
49
61
  /**
@@ -54,6 +66,10 @@ ConditionBuilderButton.propTypes = {
54
66
  * decides if label and tooltip to be hidden
55
67
  */
56
68
  hideLabel: PropTypes.bool,
69
+ /**
70
+ * boolean to know the updated value in not valid
71
+ */
72
+ isInvalid: PropTypes.bool,
57
73
  /**
58
74
  * label of the button
59
75
  */
@@ -79,10 +95,18 @@ ConditionBuilderButton.propTypes = {
79
95
  *decides if tooltip to be shown
80
96
  */
81
97
  showToolTip: PropTypes.bool,
98
+ /**
99
+ * Tab index
100
+ */
101
+ tabIndex: PropTypes.number,
82
102
  /**
83
103
  * tooltip position
84
104
  */
85
105
  tooltipAlign: PropTypes.string,
106
+ /**
107
+ * classname applies to the wrapper of popover
108
+ */
109
+ wrapperClassName: PropTypes.string,
86
110
  /**
87
111
  * optional props for tree grid to add role and aria-label to wrapper span
88
112
  */