@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
@@ -1,8 +1,73 @@
1
+ /**
2
+ * Copyright IBM Corp. 2023, 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
+ import React, { ReactNode } from 'react';
8
+ type Media = {
9
+ render?: () => ReactNode;
10
+ } | {
11
+ filePaths?: string[];
12
+ };
13
+ interface CoachmarkStackProps {
14
+ /**
15
+ * CoachmarkStack should use a single CoachmarkOverlayElements component as a child.
16
+ */
17
+ children: ReactNode;
18
+ /**
19
+ * Provide an optional class to be applied to the containing node.
20
+ */
21
+ className?: string;
22
+ /**
23
+ * The label for the button that will close the Stack
24
+ */
25
+ closeButtonLabel?: string;
26
+ /**
27
+ * The description of the Coachmark.
28
+ */
29
+ description: ReactNode;
30
+ /**
31
+ * The object describing an image in one of two shapes.
32
+ *
33
+ * If a single media element is required, use `{render}`.
34
+ *
35
+ * If a stepped animation is required, use `{filePaths}`.
36
+ *
37
+ * @see {@link MEDIA_PROP_TYPE}.
38
+ */
39
+ media?: Media;
40
+ /**
41
+ * The labels used to link to the stackable Coachmarks.
42
+ */
43
+ navLinkLabels: string[];
44
+ /**
45
+ * Function to call when the CoachmarkStack closes.
46
+ */
47
+ onClose?: () => void;
48
+ /**
49
+ * Where in the DOM to render the stack.
50
+ * The default is `document.body`.
51
+ */
52
+ portalTarget?: string;
53
+ /**
54
+ * The tagline title which will be fixed to the bottom right of the window and will serve as the display trigger.
55
+ */
56
+ tagline: string;
57
+ /**
58
+ * Determines the theme of the component.
59
+ */
60
+ theme?: 'light' | 'dark';
61
+ /**
62
+ * The title of the Coachmark.
63
+ */
64
+ title: string;
65
+ }
1
66
  /**
2
67
  * Stacked coachmarks are used to call out specific functionality or concepts
3
68
  * within the UI that may not be intuitive but are important for the
4
69
  * user to gain understanding of the product's main value and discover new use cases.
5
70
  * This variant allows the stacking of multiple coachmark overlays to be displayed by interacting with the tagline.
6
71
  */
7
- export let CoachmarkStack: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
8
- import React from 'react';
72
+ export declare let CoachmarkStack: React.ForwardRefExoticComponent<CoachmarkStackProps & React.RefAttributes<HTMLDivElement>>;
73
+ export {};
@@ -21,6 +21,7 @@ var CoachmarkStackHome = require('./CoachmarkStackHome.js');
21
21
  var CoachmarkTagline = require('../Coachmark/CoachmarkTagline.js');
22
22
  var context = require('../Coachmark/utils/context.js');
23
23
  var enums = require('../Coachmark/utils/enums.js');
24
+ var useIsomorphicEffect = require('../../global/js/hooks/useIsomorphicEffect.js');
24
25
 
25
26
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
26
27
 
@@ -39,7 +40,8 @@ var elementBlockClass = "".concat(settings.pkg.prefix, "--coachmark-stack-elemen
39
40
  var defaults = {
40
41
  onClose: function onClose() {},
41
42
  // Pass through to CoachmarkStackHome
42
- theme: 'light'
43
+ theme: 'light',
44
+ portalTarget: 'body'
43
45
  };
44
46
 
45
47
  // NOTE
@@ -56,7 +58,6 @@ var defaults = {
56
58
  * This variant allows the stacking of multiple coachmark overlays to be displayed by interacting with the tagline.
57
59
  */
58
60
  exports.CoachmarkStack = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
59
- var _document$querySelect;
60
61
  var children = _ref.children,
61
62
  className = _ref.className,
62
63
  _ref$onClose = _ref.onClose,
@@ -72,8 +73,12 @@ exports.CoachmarkStack = /*#__PURE__*/React__default["default"].forwardRef(funct
72
73
  theme = _ref$theme === void 0 ? defaults.theme : _ref$theme,
73
74
  title = _ref.title,
74
75
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
75
- var portalNode = portalTarget ? (_document$querySelect = document.querySelector(portalTarget)) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector('body') : document.querySelector('body');
76
- var stackHomeRef = React.useRef();
76
+ var portalNode = React.useRef(null);
77
+ useIsomorphicEffect.useIsomorphicEffect(function () {
78
+ var _document$querySelect, _document, _document2, _document3;
79
+ portalNode.current = portalTarget ? (_document$querySelect = (_document = document) === null || _document === void 0 ? void 0 : _document.querySelector(portalTarget)) !== null && _document$querySelect !== void 0 ? _document$querySelect : (_document2 = document) === null || _document2 === void 0 ? void 0 : _document2.querySelector('body') : (_document3 = document) === null || _document3 === void 0 ? void 0 : _document3.querySelector('body');
80
+ }, [portalTarget]);
81
+ var stackHomeRef = React.useRef(null);
77
82
  var stackedCoachmarkRefs = React.useRef([]);
78
83
  var _useState = React.useState(false),
79
84
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
@@ -87,7 +92,7 @@ exports.CoachmarkStack = /*#__PURE__*/React__default["default"].forwardRef(funct
87
92
  selectedItemNumber = _useState4[0],
88
93
  setSelectedItemNumber = _useState4[1];
89
94
  // // The parent height and width values to return to after unstacked
90
- var _useState5 = React.useState(null),
95
+ var _useState5 = React.useState(),
91
96
  _useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
92
97
  parentHeight = _useState6[0],
93
98
  setParentHeight = _useState6[1];
@@ -168,14 +173,20 @@ exports.CoachmarkStack = /*#__PURE__*/React__default["default"].forwardRef(funct
168
173
  if (!parentHeight) {
169
174
  return;
170
175
  }
171
- stackHomeRef.current.style.height = "".concat(parentHeight, "px");
176
+ if (stackHomeRef.current) {
177
+ stackHomeRef.current.style.height = "".concat(parentHeight, "px");
178
+ }
172
179
  if (!isOpen || targetSelectedItem < 0) {
173
- stackHomeRef.current.focus();
180
+ if (stackHomeRef.current) {
181
+ stackHomeRef.current.focus();
182
+ }
174
183
  return;
175
184
  }
176
185
  var targetHomeHeight = stackedCoachmarkRefs.current[targetSelectedItem].clientHeight;
177
- stackHomeRef.current.style.height = "".concat(targetHomeHeight, "px");
178
- stackedCoachmarkRefs.current[targetSelectedItem].focus();
186
+ if (stackHomeRef.current) {
187
+ stackHomeRef.current.style.height = "".concat(targetHomeHeight, "px");
188
+ stackedCoachmarkRefs.current[targetSelectedItem].focus();
189
+ }
179
190
  }, [selectedItemNumber, isOpen, parentHeight]);
180
191
  var wrappedChildren = React.Children.map(childArray, function (child, idx) {
181
192
  var mountedClass = mountedRef.current ? "".concat(elementBlockClass, "--is-mounted") : '';
@@ -215,7 +226,7 @@ exports.CoachmarkStack = /*#__PURE__*/React__default["default"].forwardRef(funct
215
226
  portalTarget: portalTarget,
216
227
  closeButtonLabel: closeButtonLabel,
217
228
  title: title
218
- }), /*#__PURE__*/reactDom.createPortal(wrappedChildren, portalNode)));
229
+ }), portalNode !== null && portalNode !== void 0 && portalNode.current ? /*#__PURE__*/reactDom.createPortal(wrappedChildren, portalNode === null || portalNode === void 0 ? void 0 : portalNode.current) : null));
219
230
  });
220
231
 
221
232
  // Return a placeholder if not released and not enabled by feature flag
@@ -263,7 +274,7 @@ exports.CoachmarkStack.propTypes = {
263
274
  /**
264
275
  * The labels used to link to the stackable Coachmarks.
265
276
  */
266
- navLinkLabels: index["default"].arrayOf(index["default"].string).isRequired,
277
+ navLinkLabels: index["default"].arrayOf(index["default"].string.isRequired).isRequired,
267
278
  /**
268
279
  * Function to call when the CoachmarkStack closes.
269
280
  */
@@ -1,6 +1,75 @@
1
+ /**
2
+ * Copyright IBM Corp. 2023, 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
+ import React, { ReactNode } from 'react';
8
+ type Media = {
9
+ render?: () => ReactNode;
10
+ filePaths?: never;
11
+ } | {
12
+ render?: never;
13
+ filePaths?: string[];
14
+ };
15
+ interface CoachmarkStackHomeProps {
16
+ /**
17
+ * Optional class name for this component.
18
+ */
19
+ className?: string;
20
+ /**
21
+ * The label for the button that will close the stack
22
+ */
23
+ closeButtonLabel?: string;
24
+ /**
25
+ * The description of the Coachmark.
26
+ */
27
+ description: React.ReactNode;
28
+ /**
29
+ * If the stack home is open.
30
+ */
31
+ isOpen: boolean;
32
+ /**
33
+ * The object describing an image in one of two shapes.
34
+ *
35
+ * If a single media element is required, use `{render}`.
36
+ *
37
+ * If a stepped animation is required, use `{filePaths}`.
38
+ *
39
+ * @see {@link MEDIA_PROP_TYPE}.
40
+ */
41
+ media?: Media;
42
+ /**
43
+ * The labels used to link to the stackable Coachmarks.
44
+ */
45
+ navLinkLabels: string[];
46
+ /**
47
+ * For internal use only by CoachmarkStack and CoachmarkStackHome.
48
+ */
49
+ onClickNavItem: (index: number) => void;
50
+ /**
51
+ * Function to call when the stack closes.
52
+ */
53
+ onClose: () => void;
54
+ /**
55
+ * By default, the CoachmarkStackHome will be appended to the end of `document.body`.
56
+ * The CoachmarkStackHome will remain persistent as the user navigates the app until
57
+ * the user closes the CoachmarkStackHome.
58
+ *
59
+ * Alternatively, the app developer can tightly couple the CoachmarkStackHome to a DOM
60
+ * element or other component by specifying a CSS selector. The CoachmarkStackHome will
61
+ * remain visible as long as that element remains visible or mounted. When the
62
+ * element is hidden or component is unmounted, the CoachmarkStackHome will disappear.
63
+ */
64
+ portalTarget?: string;
65
+ /**
66
+ * The title of the Coachmark.
67
+ */
68
+ title: string;
69
+ }
1
70
  /**
2
71
  * DO NOT USE. This component is for the exclusive use
3
72
  * of other Onboarding components.
4
73
  */
5
- export let CoachmarkStackHome: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
6
- import React from 'react';
74
+ export declare let CoachmarkStackHome: React.ForwardRefExoticComponent<CoachmarkStackHomeProps & React.RefAttributes<HTMLDivElement>>;
75
+ export {};
@@ -20,6 +20,7 @@ var devtools = require('../../global/js/utils/devtools.js');
20
20
  var settings = require('../../settings.js');
21
21
  var reactDom = require('react-dom');
22
22
  var CoachmarkHeader = require('../Coachmark/CoachmarkHeader.js');
23
+ var useIsomorphicEffect = require('../../global/js/hooks/useIsomorphicEffect.js');
23
24
  var SteppedAnimatedMedia = require('../SteppedAnimatedMedia/SteppedAnimatedMedia.js');
24
25
 
25
26
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -28,7 +29,6 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
28
29
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
29
30
 
30
31
  var _excluded = ["className", "description", "isOpen", "media", "navLinkLabels", "onClickNavItem", "onClose", "portalTarget", "closeButtonLabel", "title"];
31
-
32
32
  // Carbon and package components we use.
33
33
  /* TODO: @import(s) of carbon components and other package components. */
34
34
 
@@ -42,7 +42,6 @@ var componentName = 'CoachmarkStackHome';
42
42
  * of other Onboarding components.
43
43
  */
44
44
  exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
45
- var _document$querySelect;
46
45
  var className = _ref.className,
47
46
  description = _ref.description,
48
47
  isOpen = _ref.isOpen,
@@ -54,7 +53,7 @@ exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref)
54
53
  closeButtonLabel = _ref.closeButtonLabel,
55
54
  title = _ref.title,
56
55
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
57
- var buttonFocusRef = React.useRef();
56
+ var buttonFocusRef = React.useRef(null);
58
57
  var _useState = React.useState(0),
59
58
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
60
59
  linkFocusIndex = _useState2[0],
@@ -66,11 +65,29 @@ exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref)
66
65
  }
67
66
  }, 100);
68
67
  }, [isOpen]);
68
+ var portalNode = React.useRef(null);
69
+ useIsomorphicEffect.useIsomorphicEffect(function () {
70
+ var _document$querySelect, _document, _document2, _document3;
71
+ portalNode.current = portalTarget ? (_document$querySelect = (_document = document) === null || _document === void 0 ? void 0 : _document.querySelector(portalTarget)) !== null && _document$querySelect !== void 0 ? _document$querySelect : (_document2 = document) === null || _document2 === void 0 ? void 0 : _document2.querySelector('body') : (_document3 = document) === null || _document3 === void 0 ? void 0 : _document3.querySelector('body');
72
+ }, [portalTarget]);
69
73
  if (!navLinkLabels) {
70
74
  return pconsole["default"].warn("".concat(componentName, " is an Onboarding internal component and is not intended for general use."));
71
75
  }
72
- var portalNode = portalTarget ? (_document$querySelect = document.querySelector(portalTarget)) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector('body') : document.querySelector('body');
73
- return /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, rest, {
76
+ function renderNavLink(index, label) {
77
+ var ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
78
+ return /*#__PURE__*/React__default["default"].createElement("li", {
79
+ key: index
80
+ }, /*#__PURE__*/React__default["default"].createElement(react.Button, {
81
+ kind: "ghost",
82
+ size: "sm",
83
+ onClick: function onClick() {
84
+ setLinkFocusIndex(index);
85
+ onClickNavItem(index + 1);
86
+ },
87
+ ref: ref
88
+ }, label));
89
+ }
90
+ return portalNode !== null && portalNode !== void 0 && portalNode.current ? /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, rest, {
74
91
  className: cx__default["default"](blockClass, className),
75
92
  ref: ref,
76
93
  role: "main"
@@ -101,9 +118,8 @@ exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref)
101
118
  }, navLinkLabels.map(function (label, index) {
102
119
  if (index === linkFocusIndex) {
103
120
  return renderNavLink(index, label, buttonFocusRef);
104
- } else {
105
- return renderNavLink(index, label);
106
121
  }
122
+ return renderNavLink(index, label);
107
123
  })), closeButtonLabel && /*#__PURE__*/React__default["default"].createElement("div", {
108
124
  className: "".concat(overlayClass, "__footer")
109
125
  }, /*#__PURE__*/React__default["default"].createElement(react.Button, {
@@ -112,21 +128,7 @@ exports.CoachmarkStackHome = /*#__PURE__*/React.forwardRef(function (_ref, ref)
112
128
  setLinkFocusIndex(0);
113
129
  _onClose();
114
130
  }
115
- }, closeButtonLabel))))), portalNode);
116
- function renderNavLink(index, label) {
117
- var ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
118
- return /*#__PURE__*/React__default["default"].createElement("li", {
119
- key: index
120
- }, /*#__PURE__*/React__default["default"].createElement(react.Button, {
121
- kind: "ghost",
122
- size: "sm",
123
- onClick: function onClick() {
124
- setLinkFocusIndex(index);
125
- onClickNavItem(index + 1);
126
- },
127
- ref: ref
128
- }, label));
129
- }
131
+ }, closeButtonLabel))))), portalNode === null || portalNode === void 0 ? void 0 : portalNode.current) : null;
130
132
  });
131
133
 
132
134
  // Return a placeholder if not released and not enabled by feature flag
@@ -173,7 +175,7 @@ exports.CoachmarkStackHome.propTypes = {
173
175
  /**
174
176
  * The labels used to link to the stackable Coachmarks.
175
177
  */
176
- navLinkLabels: index["default"].arrayOf(index["default"].string).isRequired,
178
+ navLinkLabels: index["default"].arrayOf(index["default"].string.isRequired).isRequired,
177
179
  /**
178
180
  * For internal use only by CoachmarkStack and CoachmarkStackHome.
179
181
  */
@@ -15,7 +15,6 @@ var icons = require('@carbon/react/icons');
15
15
  var ConditionBuilderItem = require('../ConditionBuilderItem/ConditionBuilderItem.js');
16
16
  var index = require('../../../node_modules/prop-types/index.js');
17
17
  var DataConfigs = require('../ConditionBuilderContext/DataConfigs.js');
18
- var ConditionBuilderItemOption = require('../ConditionBuilderItem/ConditionBuilderItemOption/ConditionBuilderItemOption.js');
19
18
  var cx = require('classnames');
20
19
  var ConditionConnector = require('../ConditionBuilderConnector/ConditionConnector.js');
21
20
  var ConditionBuilderItemNumber = require('../ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js');
@@ -26,6 +25,9 @@ var ConditionBuilderButton = require('../ConditionBuilderButton/ConditionBuilder
26
25
  var util = require('../utils/util.js');
27
26
  var ConditionBuilderItemTime = require('../ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js');
28
27
  var ConditionBuilderAdd = require('../ConditionBuilderAdd/ConditionBuilderAdd.js');
28
+ var ItemOption = require('../ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js');
29
+ var ItemOptionForValueField = require('../ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js');
30
+ var useTranslations = require('../utils/useTranslations.js');
29
31
 
30
32
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
31
33
 
@@ -33,6 +35,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
33
35
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
34
36
 
35
37
  var _div;
38
+
36
39
  /**
37
40
  * This component build each block of condition consisting of property, operator value and close button.
38
41
  */
@@ -61,41 +64,56 @@ var ConditionBlock = function ConditionBlock(props) {
61
64
  isLastCondition = props.isLastCondition;
62
65
  var _useContext = React.useContext(ConditionBuilderProvider.ConditionBuilderContext),
63
66
  inputConfig = _useContext.inputConfig,
64
- variant = _useContext.variant;
65
- //Below possible input types expected for value field.
66
- var itemComponents = {
67
- option: ConditionBuilderItemOption.ConditionBuilderItemOption,
68
- text: ConditionBuilderItemText.ConditionBuilderItemText,
69
- number: ConditionBuilderItemNumber.ConditionBuilderItemNumber,
70
- date: ConditionBuilderItemDate.ConditionBuilderItemDate,
71
- time: ConditionBuilderItemTime.ConditionBuilderItemTime
72
- };
67
+ variant = _useContext.variant,
68
+ conditionBuilderRef = _useContext.conditionBuilderRef;
73
69
  var _useState = React.useState(false),
74
70
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
75
71
  showDeletionPreview = _useState2[0],
76
72
  setShowDeletionPreview = _useState2[1];
73
+ var _useState3 = React.useState(false),
74
+ _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
75
+ showAllActions = _useState4[0],
76
+ setShowAllActions = _useState4[1];
77
+ var _useTranslations = useTranslations.useTranslations(['conditionRowText', 'conditionText', 'propertyText', 'operatorText', 'removeConditionText']),
78
+ _useTranslations2 = _rollupPluginBabelHelpers.slicedToArray(_useTranslations, 5),
79
+ conditionRowText = _useTranslations2[0],
80
+ conditionText = _useTranslations2[1],
81
+ propertyText = _useTranslations2[2],
82
+ operatorText = _useTranslations2[3],
83
+ removeConditionText = _useTranslations2[4];
77
84
 
78
85
  //filtering the current property to access its properties and config options
79
86
  var getCurrentConfig = function getCurrentConfig(property) {
80
87
  var _inputConfig$properti, _inputConfig$properti2;
81
- return (_inputConfig$properti = (_inputConfig$properti2 = inputConfig.properties) === null || _inputConfig$properti2 === void 0 ? void 0 : _inputConfig$properti2.filter(function (eachProperty) {
88
+ return (_inputConfig$properti = (_inputConfig$properti2 = inputConfig.properties) === null || _inputConfig$properti2 === void 0 ? void 0 : _inputConfig$properti2.find(function (eachProperty) {
82
89
  return eachProperty.id == property;
83
- })[0]) !== null && _inputConfig$properti !== void 0 ? _inputConfig$properti : {};
90
+ })) !== null && _inputConfig$properti !== void 0 ? _inputConfig$properti : {};
84
91
  };
85
92
  var _getCurrentConfig = getCurrentConfig(property),
86
93
  icon = _getCurrentConfig.icon,
87
94
  type = _getCurrentConfig.type,
88
95
  config = _getCurrentConfig.config,
89
96
  label = _getCurrentConfig.label;
90
- var ItemComponent;
91
- // if (type == 'custom') {
92
- // ItemComponent = config.component;
93
- // } else {
94
- ItemComponent = property ? itemComponents[type] : null;
95
- //}
96
97
 
98
+ //Below possible input types expected for value field.
99
+ var itemComponents = {
100
+ text: ConditionBuilderItemText.ConditionBuilderItemText,
101
+ number: ConditionBuilderItemNumber.ConditionBuilderItemNumber,
102
+ date: ConditionBuilderItemDate.ConditionBuilderItemDate,
103
+ time: ConditionBuilderItemTime.ConditionBuilderItemTime,
104
+ option: ItemOptionForValueField.ItemOptionForValueField,
105
+ custom: config === null || config === void 0 ? void 0 : config.component,
106
+ textarea: ConditionBuilderItemText.ConditionBuilderItemText
107
+ };
108
+ var ItemComponent = property ? itemComponents[type] : null;
109
+ var showAllActionsHandler = function showAllActionsHandler() {
110
+ setShowAllActions(true);
111
+ };
112
+ var hideAllActionsHandler = function hideAllActionsHandler() {
113
+ setShowAllActions(false);
114
+ };
97
115
  var onStatementChangeHandler = function onStatementChangeHandler(v, evt) {
98
- util.focusThisField(evt);
116
+ util.focusThisField(evt, conditionBuilderRef);
99
117
  onStatementChange(v);
100
118
  };
101
119
  var onPropertyChangeHandler = function onPropertyChangeHandler(newProperty) {
@@ -103,20 +121,21 @@ var ConditionBlock = function ConditionBlock(props) {
103
121
  property: newProperty,
104
122
  operator: undefined,
105
123
  value: '',
106
- popoverToOpen: 'operatorField'
124
+ popoverToOpen: util.checkIsValid(newProperty) ? 'operatorField' : ''
107
125
  }));
108
126
  };
109
127
  var onOperatorChangeHandler = function onOperatorChangeHandler(newOperator) {
110
128
  onChange(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, condition), {}, {
111
129
  operator: newOperator,
112
130
  value: undefined,
113
- popoverToOpen: 'valueField'
131
+ popoverToOpen: util.checkIsValid(newOperator) ? 'valueField' : ''
114
132
  }));
115
133
  };
116
134
  var onValueChangeHandler = function onValueChangeHandler(newValue) {
117
- onChange(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, condition), {}, {
118
- value: newValue,
119
- popoverToOpen: ''
135
+ var currentCondition = _rollupPluginBabelHelpers.objectSpread2({}, condition);
136
+ delete currentCondition.popoverToOpen;
137
+ onChange(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, currentCondition), {}, {
138
+ value: newValue
120
139
  }));
121
140
  };
122
141
  var handleShowDeletionPreview = function handleShowDeletionPreview() {
@@ -125,7 +144,16 @@ var ConditionBlock = function ConditionBlock(props) {
125
144
  var handleHideDeletionPreview = function handleHideDeletionPreview() {
126
145
  setShowDeletionPreview(false);
127
146
  };
147
+ var manageActionButtons = function manageActionButtons(conditionIndex, conditions) {
148
+ if (variant === 'tree') {
149
+ return true;
150
+ }
151
+ return isLastCondition(conditionIndex, conditions);
152
+ };
128
153
  var getOperators = function getOperators() {
154
+ if (config !== null && config !== void 0 && config.operators) {
155
+ return config.operators;
156
+ }
129
157
  return DataConfigs.operatorConfig.filter(function (operator) {
130
158
  return operator.type.indexOf(type) != -1 || operator.type == 'all';
131
159
  });
@@ -137,12 +165,30 @@ var ConditionBlock = function ConditionBlock(props) {
137
165
  'aria-setsize': aria.setsize
138
166
  } : {};
139
167
  };
168
+ var renderChildren = function renderChildren(popoverRef) {
169
+ return /*#__PURE__*/React__default["default"].createElement(ItemComponent, {
170
+ conditionState: {
171
+ property: property,
172
+ operator: operator,
173
+ value: value
174
+ },
175
+ onChange: onValueChangeHandler,
176
+ config: config,
177
+ "data-name": "valueField",
178
+ parentRef: popoverRef,
179
+ type: type
180
+ });
181
+ };
140
182
  return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({
141
- className: cx__default["default"]("".concat(DataConfigs.blockClass, "__condition-block"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__condition__deletion-preview"), showDeletionPreview), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap-bottom"), variant == 'tree' && !(conditionIndex + 1 >= group.conditions.length)), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap ").concat(DataConfigs.blockClass, "__gap-bottom"), variant == 'sentence')),
183
+ className: cx__default["default"]("".concat(DataConfigs.blockClass, "__condition-block"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__condition__deletion-preview"), showDeletionPreview), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap-bottom"), variant == 'tree'), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__gap ").concat(DataConfigs.blockClass, "__gap-bottom"), variant == 'sentence'), _rollupPluginBabelHelpers.defineProperty({}, "".concat(DataConfigs.blockClass, "__condition--interacting"), showAllActions)),
142
184
  role: "row",
143
- "aria-label": DataConfigs.translateWithId('condition_row'),
144
- tabIndex: -1
145
- }, getAriaAttributes()), conjunction ? /*#__PURE__*/React__default["default"].createElement(ConditionConnector["default"], {
185
+ "aria-label": conditionRowText
186
+ }, getAriaAttributes(), {
187
+ tabIndex: -1,
188
+ onMouseEnter: showAllActionsHandler,
189
+ onMouseLeave: hideAllActionsHandler,
190
+ onBlur: hideAllActionsHandler
191
+ }), conjunction ? /*#__PURE__*/React__default["default"].createElement(ConditionConnector["default"], {
146
192
  className: "".concat(DataConfigs.blockClass, "__gap"),
147
193
  operator: conjunction,
148
194
  onChange: function onChange(op) {
@@ -152,74 +198,70 @@ var ConditionBlock = function ConditionBlock(props) {
152
198
  role: "gridcell"
153
199
  })), isStatement && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItem.ConditionBuilderItem, {
154
200
  label: group.statement,
155
- title: DataConfigs.translateWithId('condition'),
201
+ title: conditionText,
156
202
  "data-name": "connectorField",
157
203
  popOverClassName: "".concat(DataConfigs.blockClass, "__gap"),
158
- className: "".concat(DataConfigs.blockClass, "__statement-button")
159
- }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItemOption.ConditionBuilderItemOption, {
204
+ className: "".concat(DataConfigs.blockClass, "__statement-button"),
205
+ tabIndex: 0
206
+ }, /*#__PURE__*/React__default["default"].createElement(ItemOption.ItemOption, {
160
207
  conditionState: {
161
208
  value: group.statement,
162
- label: DataConfigs.translateWithId('condition')
209
+ label: conditionText
163
210
  },
164
211
  onChange: onStatementChangeHandler,
165
212
  config: {
166
213
  options: DataConfigs.statementConfig
167
214
  }
168
215
  })), /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItem.ConditionBuilderItem, {
169
- label: label,
170
- title: DataConfigs.translateWithId('property'),
216
+ label: label !== null && label !== void 0 ? label : condition === null || condition === void 0 ? void 0 : condition.property,
217
+ title: propertyText,
171
218
  renderIcon: icon !== null && icon !== void 0 ? icon : null,
172
219
  className: "".concat(DataConfigs.blockClass, "__property-field"),
173
220
  "data-name": "propertyField",
174
221
  condition: condition,
175
- type: type
176
- }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItemOption.ConditionBuilderItemOption, {
222
+ type: type,
223
+ onChange: onPropertyChangeHandler
224
+ }, /*#__PURE__*/React__default["default"].createElement(ItemOption.ItemOption, {
177
225
  conditionState: {
178
226
  value: property,
179
- label: DataConfigs.translateWithId('property')
227
+ label: propertyText
180
228
  },
181
229
  onChange: onPropertyChangeHandler,
182
230
  config: {
183
231
  options: inputConfig.properties
184
232
  }
185
- })), property && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItem.ConditionBuilderItem, {
233
+ })), util.checkIsValid(property) && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItem.ConditionBuilderItem, {
186
234
  label: operator,
187
- title: DataConfigs.translateWithId('operator'),
235
+ title: operatorText,
188
236
  "data-name": "operatorField",
189
237
  condition: condition,
190
- type: type
191
- }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItemOption.ConditionBuilderItemOption, {
238
+ type: type,
239
+ onChange: onOperatorChangeHandler
240
+ }, /*#__PURE__*/React__default["default"].createElement(ItemOption.ItemOption, {
192
241
  config: {
193
242
  options: getOperators()
194
243
  },
195
244
  conditionState: {
196
245
  value: operator,
197
- label: DataConfigs.translateWithId('operator')
246
+ label: operatorText
198
247
  },
199
248
  onChange: onOperatorChangeHandler
200
- })), property && operator && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItem.ConditionBuilderItem, {
249
+ })), util.checkIsValid(property) && util.checkIsValid(operator) && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderItem.ConditionBuilderItem, {
201
250
  label: value,
202
251
  type: type,
203
252
  title: label,
204
253
  showToolTip: true,
205
254
  "data-name": "valueField",
206
255
  condition: condition,
207
- config: config
208
- }, /*#__PURE__*/React__default["default"].createElement(ItemComponent, {
209
- conditionState: {
210
- property: property,
211
- operator: operator,
212
- value: value
213
- },
214
- onChange: onValueChangeHandler,
215
256
  config: config,
216
- "data-name": "valueField"
217
- })), /*#__PURE__*/React__default["default"].createElement("span", {
257
+ onChange: onValueChangeHandler,
258
+ renderChildren: renderChildren
259
+ }), /*#__PURE__*/React__default["default"].createElement("span", {
218
260
  role: "gridcell",
219
- "aria-label": DataConfigs.translateWithId('remove_condition')
261
+ "aria-label": removeConditionText
220
262
  }, /*#__PURE__*/React__default["default"].createElement(ConditionBuilderButton.ConditionBuilderButton, {
221
263
  hideLabel: true,
222
- label: DataConfigs.translateWithId('remove_condition'),
264
+ label: removeConditionText,
223
265
  onClick: onRemove,
224
266
  onMouseEnter: handleShowDeletionPreview,
225
267
  onMouseLeave: handleHideDeletionPreview,
@@ -228,7 +270,7 @@ var ConditionBlock = function ConditionBlock(props) {
228
270
  renderIcon: icons.Close,
229
271
  className: "".concat(DataConfigs.blockClass, "__close-condition"),
230
272
  "data-name": "closeCondition"
231
- })), isLastCondition(conditionIndex, group.conditions) && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderAdd["default"], {
273
+ })), manageActionButtons(conditionIndex, group.conditions) && /*#__PURE__*/React__default["default"].createElement(ConditionBuilderAdd["default"], {
232
274
  onClick: function onClick() {
233
275
  addConditionHandler(conditionIndex);
234
276
  },