@carbon/ibm-products 2.43.2-canary.9 → 2.43.2-canary.92

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/css/index-full-carbon.css +427 -139
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +1 -1
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +218 -5
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +1 -1
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +247 -101
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +1 -1
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +348 -125
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +1 -1
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/ActionBar/ActionBarItem.js +1 -1
  18. package/es/components/Coachmark/Coachmark.d.ts +6 -1
  19. package/es/components/Coachmark/Coachmark.js +47 -11
  20. package/es/components/Coachmark/CoachmarkOverlay.js +2 -4
  21. package/es/components/CoachmarkBeacon/CoachmarkBeacon.js +1 -7
  22. package/es/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
  23. package/es/components/CoachmarkStack/CoachmarkStack.js +7 -3
  24. package/es/components/CoachmarkStack/CoachmarkStackHome.js +8 -4
  25. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +76 -55
  26. package/es/components/ConditionBuilder/ConditionBuilder.js +82 -25
  27. package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
  28. package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +154 -0
  29. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
  30. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +29 -13
  31. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +8 -1
  32. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +30 -8
  33. package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +14 -9
  34. package/es/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +19 -11
  35. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -13
  36. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +75 -62
  37. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +13 -7
  38. package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +31 -8
  39. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +8 -2
  40. package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +35 -24
  41. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +40 -36
  42. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +40 -36
  43. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +6 -2
  44. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +98 -40
  45. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +3 -1
  46. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +24 -9
  47. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +27 -9
  48. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
  49. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +114 -0
  50. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.d.ts → ItemOptionForValueField.d.ts} +2 -2
  51. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.js → ItemOptionForValueField.js} +71 -38
  52. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +5 -1
  53. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +22 -9
  54. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
  55. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +1 -3
  56. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +121 -40
  57. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
  58. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +45 -19
  59. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.d.ts +2 -1
  60. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +137 -40
  61. package/es/components/ConditionBuilder/utils/useTranslations.d.ts +1 -0
  62. package/es/components/ConditionBuilder/utils/useTranslations.js +26 -0
  63. package/es/components/ConditionBuilder/utils/util.d.ts +6 -4
  64. package/es/components/ConditionBuilder/utils/util.js +42 -17
  65. package/es/components/CreateFullPage/CreateFullPage.js +2 -2
  66. package/es/components/DataSpreadsheet/DataSpreadsheet.d.ts +26 -0
  67. package/es/components/DataSpreadsheet/DataSpreadsheet.js +129 -53
  68. package/es/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +16 -0
  69. package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +32 -7
  70. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
  71. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +16 -3
  72. package/es/components/DataSpreadsheet/types/index.d.ts +1 -0
  73. package/es/components/Datagrid/Datagrid/Datagrid.d.ts +0 -4
  74. package/es/components/Datagrid/Datagrid/Datagrid.js +4 -9
  75. package/es/components/Datagrid/Datagrid/DatagridContent.js +1 -1
  76. package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +23 -8
  77. package/es/components/Datagrid/Datagrid/DatagridRow.js +21 -8
  78. package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +2 -1
  79. package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
  80. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +34 -10
  81. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -1
  82. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +6 -1
  83. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.d.ts +3 -1
  84. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +7 -4
  85. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
  86. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +54 -17
  87. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
  88. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +74 -11
  89. package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +10 -2
  90. package/es/components/Datagrid/types/index.d.ts +57 -9
  91. package/es/components/Datagrid/useActionsColumn.d.ts +8 -1
  92. package/es/components/Datagrid/useActionsColumn.js +7 -6
  93. package/es/components/Datagrid/useColumnRightAlign.d.ts +8 -1
  94. package/es/components/Datagrid/useColumnRightAlign.js +4 -3
  95. package/es/components/Datagrid/useCustomizeColumns.d.ts +8 -1
  96. package/es/components/Datagrid/useCustomizeColumns.js +4 -3
  97. package/es/components/Datagrid/useDefaultStringRenderer.js +0 -1
  98. package/es/components/Datagrid/useDisableSelectRows.d.ts +2 -1
  99. package/es/components/Datagrid/useDisableSelectRows.js +27 -22
  100. package/es/components/Datagrid/useInlineEdit.js +12 -2
  101. package/es/components/Datagrid/useNestedRowExpander.js +1 -3
  102. package/es/components/Datagrid/useNestedRows.js +32 -13
  103. package/es/components/Datagrid/useRowExpander.js +1 -3
  104. package/es/components/Datagrid/useSelectRows.js +2 -1
  105. package/es/components/Datagrid/useStickyColumn.d.ts +8 -1
  106. package/es/components/Datagrid/useStickyColumn.js +12 -9
  107. package/es/components/Decorator/Decorator.js +2 -1
  108. package/es/components/DecoratorBase/DecoratorBase.js +3 -5
  109. package/es/components/DecoratorDualButton/DecoratorDualButton.js +2 -1
  110. package/es/components/DecoratorLink/DecoratorLink.js +2 -1
  111. package/es/components/DecoratorSingleButton/DecoratorSingleButton.js +2 -1
  112. package/es/components/EditInPlace/EditInPlace.d.ts +4 -0
  113. package/es/components/EditInPlace/EditInPlace.js +21 -10
  114. package/es/components/EditTearsheet/EditTearsheet.d.ts +7 -2
  115. package/es/components/EditTearsheet/EditTearsheet.js +44 -10
  116. package/es/components/EditTearsheet/EditTearsheetForm.d.ts +45 -2
  117. package/es/components/EditTearsheet/EditTearsheetForm.js +3 -0
  118. package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
  119. package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
  120. package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
  121. package/es/components/HTTPErrors/assets/HTTPErrorSvg403.js +204 -200
  122. package/es/components/HTTPErrors/assets/HTTPErrorSvg404.js +116 -112
  123. package/es/components/HTTPErrors/assets/HTTPErrorSvgOther.js +110 -106
  124. package/es/components/Nav/NavItem.js +12 -3
  125. package/es/components/OptionsTile/OptionsTile.js +11 -6
  126. package/es/components/PageHeader/PageHeader.js +1 -0
  127. package/es/components/RemoveModal/RemoveModal.d.ts +4 -0
  128. package/es/components/RemoveModal/RemoveModal.js +7 -1
  129. package/es/components/SearchBar/SearchBar.d.ts +1 -1
  130. package/es/components/SearchBar/SearchBar.js +2 -2
  131. package/es/components/SidePanel/SidePanel.js +17 -21
  132. package/es/components/SidePanel/motion/variants.d.ts +4 -6
  133. package/es/components/SidePanel/motion/variants.js +10 -11
  134. package/es/components/StatusIndicator/StatusIndicatorStep.js +87 -0
  135. package/es/components/StringFormatter/StringFormatter.js +14 -3
  136. package/es/components/StringFormatter/utils/enums.d.ts +20 -1
  137. package/es/components/StringFormatter/utils/enums.js +22 -2
  138. package/es/components/Tearsheet/Tearsheet.d.ts +8 -1
  139. package/es/components/Tearsheet/Tearsheet.js +9 -1
  140. package/es/components/Tearsheet/TearsheetNarrow.d.ts +11 -0
  141. package/es/components/Tearsheet/TearsheetNarrow.js +12 -0
  142. package/es/components/Tearsheet/TearsheetShell.d.ts +11 -1
  143. package/es/components/Tearsheet/TearsheetShell.js +28 -7
  144. package/es/components/Toolbar/ToolbarButton.js +1 -1
  145. package/es/components/WebTerminal/WebTerminal.js +10 -12
  146. package/es/components/index.d.ts +1 -1
  147. package/es/global/js/hooks/useFocus.d.ts +1 -0
  148. package/es/global/js/hooks/useFocus.js +5 -2
  149. package/es/global/js/hooks/usePrefersReducedMotion.js +14 -8
  150. package/es/global/js/package-settings.d.ts +1 -1
  151. package/es/global/js/package-settings.js +1 -1
  152. package/es/index.js +1 -0
  153. package/es/node_modules/@carbon/icon-helpers/es/index.js +49 -62
  154. package/es/node_modules/@carbon/icons-react/es/generated/bucket-2.js +1020 -1058
  155. package/es/node_modules/@carbon/icons-react/es/generated/bucket-9.js +881 -758
  156. package/es/settings.d.ts +1 -1
  157. package/lib/components/ActionBar/ActionBarItem.js +1 -1
  158. package/lib/components/Coachmark/Coachmark.d.ts +6 -1
  159. package/lib/components/Coachmark/Coachmark.js +46 -10
  160. package/lib/components/Coachmark/CoachmarkOverlay.js +2 -4
  161. package/lib/components/CoachmarkBeacon/CoachmarkBeacon.js +1 -7
  162. package/lib/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
  163. package/lib/components/CoachmarkStack/CoachmarkStack.js +7 -3
  164. package/lib/components/CoachmarkStack/CoachmarkStackHome.js +8 -4
  165. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +74 -53
  166. package/lib/components/ConditionBuilder/ConditionBuilder.js +82 -25
  167. package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
  168. package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +163 -0
  169. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
  170. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +28 -11
  171. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +8 -1
  172. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +29 -7
  173. package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +12 -7
  174. package/lib/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +18 -10
  175. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -13
  176. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +73 -60
  177. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +13 -7
  178. package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +31 -8
  179. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +8 -2
  180. package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +34 -24
  181. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +40 -36
  182. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +40 -36
  183. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +6 -2
  184. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +96 -38
  185. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +3 -1
  186. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +24 -9
  187. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +28 -10
  188. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
  189. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +122 -0
  190. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.d.ts → ItemOptionForValueField.d.ts} +2 -2
  191. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.js → ItemOptionForValueField.js} +68 -35
  192. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +5 -1
  193. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +21 -8
  194. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
  195. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +1 -3
  196. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +118 -37
  197. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
  198. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +44 -17
  199. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.d.ts +2 -1
  200. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +137 -39
  201. package/lib/components/ConditionBuilder/utils/useTranslations.d.ts +1 -0
  202. package/lib/components/ConditionBuilder/utils/useTranslations.js +30 -0
  203. package/lib/components/ConditionBuilder/utils/util.d.ts +6 -4
  204. package/lib/components/ConditionBuilder/utils/util.js +44 -16
  205. package/lib/components/CreateFullPage/CreateFullPage.js +2 -2
  206. package/lib/components/DataSpreadsheet/DataSpreadsheet.d.ts +26 -0
  207. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +129 -53
  208. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +16 -0
  209. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +32 -7
  210. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
  211. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +16 -3
  212. package/lib/components/DataSpreadsheet/types/index.d.ts +1 -0
  213. package/lib/components/Datagrid/Datagrid/Datagrid.d.ts +0 -4
  214. package/lib/components/Datagrid/Datagrid/Datagrid.js +4 -9
  215. package/lib/components/Datagrid/Datagrid/DatagridContent.js +1 -1
  216. package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +23 -8
  217. package/lib/components/Datagrid/Datagrid/DatagridRow.js +21 -8
  218. package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +2 -1
  219. package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
  220. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +34 -10
  221. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -1
  222. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +6 -1
  223. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.d.ts +3 -1
  224. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +7 -4
  225. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
  226. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +53 -16
  227. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
  228. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +73 -10
  229. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +10 -2
  230. package/lib/components/Datagrid/types/index.d.ts +57 -9
  231. package/lib/components/Datagrid/useActionsColumn.d.ts +8 -1
  232. package/lib/components/Datagrid/useActionsColumn.js +7 -6
  233. package/lib/components/Datagrid/useColumnRightAlign.d.ts +8 -1
  234. package/lib/components/Datagrid/useColumnRightAlign.js +4 -3
  235. package/lib/components/Datagrid/useCustomizeColumns.d.ts +8 -1
  236. package/lib/components/Datagrid/useCustomizeColumns.js +4 -3
  237. package/lib/components/Datagrid/useDefaultStringRenderer.js +0 -1
  238. package/lib/components/Datagrid/useDisableSelectRows.d.ts +2 -1
  239. package/lib/components/Datagrid/useDisableSelectRows.js +27 -22
  240. package/lib/components/Datagrid/useInlineEdit.js +12 -2
  241. package/lib/components/Datagrid/useNestedRowExpander.js +1 -3
  242. package/lib/components/Datagrid/useNestedRows.js +32 -13
  243. package/lib/components/Datagrid/useRowExpander.js +1 -3
  244. package/lib/components/Datagrid/useSelectRows.js +2 -1
  245. package/lib/components/Datagrid/useStickyColumn.d.ts +8 -1
  246. package/lib/components/Datagrid/useStickyColumn.js +12 -9
  247. package/lib/components/Decorator/Decorator.js +2 -1
  248. package/lib/components/DecoratorBase/DecoratorBase.js +3 -5
  249. package/lib/components/DecoratorDualButton/DecoratorDualButton.js +2 -1
  250. package/lib/components/DecoratorLink/DecoratorLink.js +2 -1
  251. package/lib/components/DecoratorSingleButton/DecoratorSingleButton.js +2 -1
  252. package/lib/components/EditInPlace/EditInPlace.d.ts +4 -0
  253. package/lib/components/EditInPlace/EditInPlace.js +21 -10
  254. package/lib/components/EditTearsheet/EditTearsheet.d.ts +7 -2
  255. package/lib/components/EditTearsheet/EditTearsheet.js +43 -9
  256. package/lib/components/EditTearsheet/EditTearsheetForm.d.ts +45 -2
  257. package/lib/components/EditTearsheet/EditTearsheetForm.js +3 -0
  258. package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
  259. package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
  260. package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
  261. package/lib/components/HTTPErrors/assets/HTTPErrorSvg403.js +204 -200
  262. package/lib/components/HTTPErrors/assets/HTTPErrorSvg404.js +116 -112
  263. package/lib/components/HTTPErrors/assets/HTTPErrorSvgOther.js +110 -106
  264. package/lib/components/Nav/NavItem.js +10 -1
  265. package/lib/components/OptionsTile/OptionsTile.js +11 -6
  266. package/lib/components/PageHeader/PageHeader.js +1 -0
  267. package/lib/components/RemoveModal/RemoveModal.d.ts +4 -0
  268. package/lib/components/RemoveModal/RemoveModal.js +7 -1
  269. package/lib/components/SearchBar/SearchBar.d.ts +1 -1
  270. package/lib/components/SearchBar/SearchBar.js +2 -2
  271. package/lib/components/SidePanel/SidePanel.js +16 -20
  272. package/lib/components/SidePanel/motion/variants.d.ts +4 -6
  273. package/lib/components/SidePanel/motion/variants.js +10 -11
  274. package/lib/components/StatusIndicator/StatusIndicatorStep.js +94 -0
  275. package/lib/components/StringFormatter/StringFormatter.js +13 -2
  276. package/lib/components/StringFormatter/utils/enums.d.ts +20 -1
  277. package/lib/components/StringFormatter/utils/enums.js +23 -1
  278. package/lib/components/Tearsheet/Tearsheet.d.ts +8 -1
  279. package/lib/components/Tearsheet/Tearsheet.js +9 -1
  280. package/lib/components/Tearsheet/TearsheetNarrow.d.ts +11 -0
  281. package/lib/components/Tearsheet/TearsheetNarrow.js +12 -0
  282. package/lib/components/Tearsheet/TearsheetShell.d.ts +11 -1
  283. package/lib/components/Tearsheet/TearsheetShell.js +26 -5
  284. package/lib/components/Toolbar/ToolbarButton.js +1 -1
  285. package/lib/components/WebTerminal/WebTerminal.js +10 -12
  286. package/lib/components/index.d.ts +1 -1
  287. package/lib/global/js/hooks/useFocus.d.ts +1 -0
  288. package/lib/global/js/hooks/useFocus.js +5 -1
  289. package/lib/global/js/hooks/usePrefersReducedMotion.js +13 -7
  290. package/lib/global/js/package-settings.d.ts +1 -1
  291. package/lib/global/js/package-settings.js +1 -1
  292. package/lib/index.js +5 -0
  293. package/lib/node_modules/@carbon/icon-helpers/es/index.js +49 -62
  294. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-2.js +1036 -1074
  295. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-9.js +946 -823
  296. package/lib/settings.d.ts +1 -1
  297. package/package.json +9 -8
  298. package/scss/components/Coachmark/_coachmark-overlay.scss +6 -70
  299. package/scss/components/Coachmark/_coachmark.scss +5 -4
  300. package/scss/components/CoachmarkBeacon/_coachmark-beacon.scss +1 -3
  301. package/scss/components/ConditionBuilder/_condition-builder.scss +5 -1
  302. package/scss/components/ConditionBuilder/styles/_conditionBuilderCondition.scss +20 -3
  303. package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +32 -3
  304. package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +16 -2
  305. package/scss/components/Datagrid/_datagrid.scss +0 -4
  306. package/scss/components/Datagrid/styles/_useInlineEdit.scss +13 -0
  307. package/scss/components/Datagrid/styles/addons/_CustomizeColumnsTearsheet.scss +7 -5
  308. package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +5 -4
  309. package/scss/components/HTTPErrors/_http-errors.scss +77 -0
  310. package/scss/components/OptionsTile/_options-tile.scss +6 -6
  311. package/scss/components/SidePanel/_side-panel.scss +1 -1
  312. package/scss/components/StatusIcon/_status-icon.scss +4 -4
  313. package/scss/components/StringFormatter/_string-formatter.scss +2 -2
  314. package/scss/components/UserProfileImage/_user-profile-image.scss +6 -2
  315. package/scss/components/_index-released-only.scss +1 -0
  316. package/telemetry.yml +32 -19
  317. package/es/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
  318. package/es/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -16
  319. package/es/global/js/utils/window.d.ts +0 -2
  320. package/es/global/js/utils/window.js +0 -12
  321. package/lib/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
  322. package/lib/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -20
  323. package/lib/global/js/utils/window.d.ts +0 -2
  324. 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';
@@ -5,12 +5,14 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { slicedToArray as _slicedToArray, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { slicedToArray as _slicedToArray, extends as _extends, defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import React__default, { useState } 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,11 +23,17 @@ var ConditionBuilderAdd = function ConditionBuilderAdd(_ref) {
21
23
  showConditionPreviewHandler = _ref.showConditionPreviewHandler,
22
24
  hideConditionPreviewHandler = _ref.hideConditionPreviewHandler,
23
25
  enableSubGroup = _ref.enableSubGroup,
24
- buttonLabel = _ref.buttonLabel;
26
+ buttonLabel = _ref.buttonLabel,
27
+ tabIndex = _ref.tabIndex;
25
28
  var _useState = useState(false),
26
29
  _useState2 = _slicedToArray(_useState, 2),
27
30
  isAddSubgroup = _useState2[0],
28
31
  setIsAddSubgroup = _useState2[1];
32
+ var _useTranslations = useTranslations(['addConditionText', 'addConditionRowText', 'addSubgroupText']),
33
+ _useTranslations2 = _slicedToArray(_useTranslations, 3),
34
+ addConditionText = _useTranslations2[0],
35
+ addConditionRowText = _useTranslations2[1],
36
+ addSubgroupText = _useTranslations2[2];
29
37
  var showAddSubGroup = function showAddSubGroup() {
30
38
  setIsAddSubgroup(true);
31
39
  };
@@ -52,14 +60,16 @@ var ConditionBuilderAdd = function ConditionBuilderAdd(_ref) {
52
60
  onBlur: hideConditionSubGroupPreviewHandler
53
61
  };
54
62
  };
63
+ var getAriaLabel = function getAriaLabel() {
64
+ return buttonLabel ? buttonLabel : !enableSubGroup ? addConditionRowText : undefined;
65
+ };
55
66
  var wrapperProps = enableSubGroup ? {
56
- role: 'gridcell',
57
- 'aria-label': translateWithId('add-condition')
67
+ role: 'gridcell'
58
68
  } : {};
59
69
  return /*#__PURE__*/React__default.createElement("div", {
60
70
  className: "".concat(className, " ").concat(blockClass, "__add-button-wrapper"),
61
71
  role: !enableSubGroup ? 'gridcell' : 'none',
62
- "aria-label": !enableSubGroup ? translateWithId('add_condition_row') : undefined,
72
+ "aria-label": getAriaLabel(),
63
73
  onMouseEnter: showAddSubGroup,
64
74
  onMouseLeave: hideAddSubGroup,
65
75
  onFocus: showAddSubGroup,
@@ -68,18 +78,20 @@ var ConditionBuilderAdd = function ConditionBuilderAdd(_ref) {
68
78
  renderIcon: AddAlt,
69
79
  onClick: onClickHandler
70
80
  }, previewHandlers(), {
81
+ wrapperProps: wrapperProps,
71
82
  className: "".concat(blockClass, "__add-button"),
72
83
  hideLabel: true,
73
84
  "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({
85
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : addConditionText,
86
+ tabIndex: tabIndex
87
+ })), enableSubGroup && /*#__PURE__*/React__default.createElement(ConditionBuilderButton, _extends({
77
88
  renderIcon: TextNewLine,
78
89
  onClick: addConditionSubGroupHandler,
79
- className: "".concat(blockClass, "__add-condition-group ").concat(blockClass, "__gap-left"),
90
+ className: cx("".concat(blockClass, "__add-condition-sub-group ").concat(blockClass, "__gap-left")),
80
91
  hideLabel: true,
81
- label: translateWithId('add-condition'),
82
- wrapperProps: wrapperProps
92
+ label: addSubgroupText,
93
+ wrapperProps: wrapperProps,
94
+ wrapperClassName: cx("".concat(blockClass, "__add-condition-sub-group-wrapper"), _defineProperty({}, "".concat(blockClass, "__add-condition-sub-group-wrapper--show"), isAddSubgroup))
83
95
  }, previewHandlersForSubgroup())));
84
96
  };
85
97
  var ConditionBuilderAdd$1 = ConditionBuilderAdd;
@@ -114,10 +126,14 @@ ConditionBuilderAdd.propTypes = {
114
126
  */
115
127
  onClick: PropTypes.func,
116
128
  showConditionPreviewHandler: PropTypes.func,
117
- showConditionSubGroupPreviewHandler: PropTypes.func
129
+ showConditionSubGroupPreviewHandler: PropTypes.func,
118
130
  /**
119
131
  * handler for hiding sub group preview
120
132
  */
133
+ /**
134
+ * Tab index
135
+ */
136
+ tabIndex: PropTypes.number
121
137
  };
122
138
 
123
139
  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
12
  import { 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,24 +28,31 @@ 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);
29
36
  var Button = function Button() {
30
- return /*#__PURE__*/React__default.createElement("button", {
37
+ var _rest$dataName;
38
+ var dataName = (_rest$dataName = rest['data-name']) !== null && _rest$dataName !== void 0 ? _rest$dataName : '';
39
+ return /*#__PURE__*/React__default.createElement("button", _extends({
31
40
  // role={'gridcell'}
32
- tabIndex: -1,
33
- className: cx([className, "".concat(blockClass, "__button"), _defineProperty({}, "".concat(blockClass, "__text-ellipsis"), showToolTip && !hideLabel)]),
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")
55
+ className: "".concat(wrapperClassName)
46
56
  }, wrapperProps), Button()) : /*#__PURE__*/React__default.createElement(React__default.Fragment, null, Button());
47
57
  };
48
58
  ConditionBuilderButton.propTypes = {
@@ -54,6 +64,10 @@ ConditionBuilderButton.propTypes = {
54
64
  * decides if label and tooltip to be hidden
55
65
  */
56
66
  hideLabel: PropTypes.bool,
67
+ /**
68
+ * boolean to know the updated value in not valid
69
+ */
70
+ isInvalid: PropTypes.bool,
57
71
  /**
58
72
  * label of the button
59
73
  */
@@ -79,10 +93,18 @@ ConditionBuilderButton.propTypes = {
79
93
  *decides if tooltip to be shown
80
94
  */
81
95
  showToolTip: PropTypes.bool,
96
+ /**
97
+ * Tab index
98
+ */
99
+ tabIndex: PropTypes.number,
82
100
  /**
83
101
  * tooltip position
84
102
  */
85
103
  tooltipAlign: PropTypes.string,
104
+ /**
105
+ * classname applies to the wrapper of popover
106
+ */
107
+ wrapperClassName: PropTypes.string,
86
108
  /**
87
109
  * optional props for tree grid to add role and aria-label to wrapper span
88
110
  */
@@ -5,14 +5,15 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import React__default, { useContext, useCallback } from 'react';
10
10
  import { ConditionBuilderItem } from '../ConditionBuilderItem/ConditionBuilderItem.js';
11
- import { ConditionBuilderItemOption } from '../ConditionBuilderItem/ConditionBuilderItemOption/ConditionBuilderItemOption.js';
12
- import { blockClass, translateWithId, connectorConfig } from '../ConditionBuilderContext/DataConfigs.js';
11
+ import { ItemOption } from '../ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js';
12
+ import { blockClass, connectorConfig } from '../ConditionBuilderContext/DataConfigs.js';
13
13
  import PropTypes from '../../../node_modules/prop-types/index.js';
14
14
  import { focusThisField } from '../utils/util.js';
15
15
  import { ConditionBuilderContext } from '../ConditionBuilderContext/ConditionBuilderProvider.js';
16
+ import { useTranslations } from '../utils/useTranslations.js';
16
17
 
17
18
  var _excluded = ["operator", "className", "onChange"];
18
19
  var ConditionConnector = function ConditionConnector(_ref) {
@@ -21,7 +22,11 @@ var ConditionConnector = function ConditionConnector(_ref) {
21
22
  onChange = _ref.onChange,
22
23
  rest = _objectWithoutProperties(_ref, _excluded);
23
24
  var _useContext = useContext(ConditionBuilderContext),
24
- variant = _useContext.variant;
25
+ variant = _useContext.variant,
26
+ conditionBuilderRef = _useContext.conditionBuilderRef;
27
+ var _useTranslations = useTranslations(['connectorText']),
28
+ _useTranslations2 = _slicedToArray(_useTranslations, 1),
29
+ connectorText = _useTranslations2[0];
25
30
  var handleConnectorHover = useCallback(function (parentGroup, isHover) {
26
31
  if (isHover) {
27
32
  parentGroup.classList.add('hoveredConnector');
@@ -39,16 +44,16 @@ var ConditionConnector = function ConditionConnector(_ref) {
39
44
  };
40
45
  var onChangeHandler = function onChangeHandler(op, evt) {
41
46
  onChange(op);
42
- focusThisField(evt);
47
+ focusThisField(evt, conditionBuilderRef);
43
48
  };
44
49
  return variant == 'tree' ? /*#__PURE__*/React__default.createElement("span", {
45
- className: "".concat(className, " ").concat(blockClass, "__connector-disabled")
50
+ className: "".concat(className, " ").concat(blockClass, "__connector--disabled")
46
51
  }, operator) :
47
52
  /*#__PURE__*/
48
53
  // <div className={className} {...rest}>
49
54
  React__default.createElement(ConditionBuilderItem, _extends({
50
55
  label: operator,
51
- title: translateWithId('connector'),
56
+ title: connectorText,
52
57
  "data-name": "connectorField",
53
58
  onMouseEnter: activeConnectorHandler,
54
59
  onMouseLeave: inActiveConnectorHandler,
@@ -57,13 +62,13 @@ var ConditionConnector = function ConditionConnector(_ref) {
57
62
  }, rest, {
58
63
  popOverClassName: className,
59
64
  className: "".concat(blockClass, "__connector-button ")
60
- }), /*#__PURE__*/React__default.createElement(ConditionBuilderItemOption, {
65
+ }), /*#__PURE__*/React__default.createElement(ItemOption, {
61
66
  config: {
62
67
  options: connectorConfig
63
68
  },
64
69
  conditionState: {
65
70
  value: operator,
66
- label: translateWithId('connector')
71
+ label: connectorText
67
72
  },
68
73
  onChange: onChangeHandler
69
74
  }))