@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.
- package/css/index-full-carbon.css +427 -139
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +1 -1
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +218 -5
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +1 -1
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +247 -101
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +1 -1
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +348 -125
- package/css/index.css.map +1 -1
- package/css/index.min.css +1 -1
- package/css/index.min.css.map +1 -1
- package/es/components/ActionBar/ActionBarItem.js +1 -1
- package/es/components/Coachmark/Coachmark.d.ts +6 -1
- package/es/components/Coachmark/Coachmark.js +47 -11
- package/es/components/Coachmark/CoachmarkOverlay.js +2 -4
- package/es/components/CoachmarkBeacon/CoachmarkBeacon.js +1 -7
- package/es/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
- package/es/components/CoachmarkStack/CoachmarkStack.js +7 -3
- package/es/components/CoachmarkStack/CoachmarkStackHome.js +8 -4
- package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +76 -55
- package/es/components/ConditionBuilder/ConditionBuilder.js +82 -25
- package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
- package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +154 -0
- package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
- package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +29 -13
- package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +8 -1
- package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +30 -8
- package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +14 -9
- package/es/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +19 -11
- package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -13
- package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +75 -62
- package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +13 -7
- package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +31 -8
- package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +8 -2
- package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +35 -24
- package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +40 -36
- package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +40 -36
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +6 -2
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +98 -40
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +3 -1
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +24 -9
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +27 -9
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +114 -0
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.d.ts → ItemOptionForValueField.d.ts} +2 -2
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.js → ItemOptionForValueField.js} +71 -38
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +5 -1
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +22 -9
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
- package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +1 -3
- package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +121 -40
- package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
- package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +45 -19
- package/es/components/ConditionBuilder/utils/handleKeyboardEvents.d.ts +2 -1
- package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +137 -40
- package/es/components/ConditionBuilder/utils/useTranslations.d.ts +1 -0
- package/es/components/ConditionBuilder/utils/useTranslations.js +26 -0
- package/es/components/ConditionBuilder/utils/util.d.ts +6 -4
- package/es/components/ConditionBuilder/utils/util.js +42 -17
- package/es/components/CreateFullPage/CreateFullPage.js +2 -2
- package/es/components/DataSpreadsheet/DataSpreadsheet.d.ts +26 -0
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +129 -53
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +16 -0
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +32 -7
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +16 -3
- package/es/components/DataSpreadsheet/types/index.d.ts +1 -0
- package/es/components/Datagrid/Datagrid/Datagrid.d.ts +0 -4
- package/es/components/Datagrid/Datagrid/Datagrid.js +4 -9
- package/es/components/Datagrid/Datagrid/DatagridContent.js +1 -1
- package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +23 -8
- package/es/components/Datagrid/Datagrid/DatagridRow.js +21 -8
- package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +2 -1
- package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +34 -10
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +6 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.d.ts +3 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +7 -4
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +54 -17
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +74 -11
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +10 -2
- package/es/components/Datagrid/types/index.d.ts +57 -9
- package/es/components/Datagrid/useActionsColumn.d.ts +8 -1
- package/es/components/Datagrid/useActionsColumn.js +7 -6
- package/es/components/Datagrid/useColumnRightAlign.d.ts +8 -1
- package/es/components/Datagrid/useColumnRightAlign.js +4 -3
- package/es/components/Datagrid/useCustomizeColumns.d.ts +8 -1
- package/es/components/Datagrid/useCustomizeColumns.js +4 -3
- package/es/components/Datagrid/useDefaultStringRenderer.js +0 -1
- package/es/components/Datagrid/useDisableSelectRows.d.ts +2 -1
- package/es/components/Datagrid/useDisableSelectRows.js +27 -22
- package/es/components/Datagrid/useInlineEdit.js +12 -2
- package/es/components/Datagrid/useNestedRowExpander.js +1 -3
- package/es/components/Datagrid/useNestedRows.js +32 -13
- package/es/components/Datagrid/useRowExpander.js +1 -3
- package/es/components/Datagrid/useSelectRows.js +2 -1
- package/es/components/Datagrid/useStickyColumn.d.ts +8 -1
- package/es/components/Datagrid/useStickyColumn.js +12 -9
- package/es/components/Decorator/Decorator.js +2 -1
- package/es/components/DecoratorBase/DecoratorBase.js +3 -5
- package/es/components/DecoratorDualButton/DecoratorDualButton.js +2 -1
- package/es/components/DecoratorLink/DecoratorLink.js +2 -1
- package/es/components/DecoratorSingleButton/DecoratorSingleButton.js +2 -1
- package/es/components/EditInPlace/EditInPlace.d.ts +4 -0
- package/es/components/EditInPlace/EditInPlace.js +21 -10
- package/es/components/EditTearsheet/EditTearsheet.d.ts +7 -2
- package/es/components/EditTearsheet/EditTearsheet.js +44 -10
- package/es/components/EditTearsheet/EditTearsheetForm.d.ts +45 -2
- package/es/components/EditTearsheet/EditTearsheetForm.js +3 -0
- package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
- package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
- package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
- package/es/components/HTTPErrors/assets/HTTPErrorSvg403.js +204 -200
- package/es/components/HTTPErrors/assets/HTTPErrorSvg404.js +116 -112
- package/es/components/HTTPErrors/assets/HTTPErrorSvgOther.js +110 -106
- package/es/components/Nav/NavItem.js +12 -3
- package/es/components/OptionsTile/OptionsTile.js +11 -6
- package/es/components/PageHeader/PageHeader.js +1 -0
- package/es/components/RemoveModal/RemoveModal.d.ts +4 -0
- package/es/components/RemoveModal/RemoveModal.js +7 -1
- package/es/components/SearchBar/SearchBar.d.ts +1 -1
- package/es/components/SearchBar/SearchBar.js +2 -2
- package/es/components/SidePanel/SidePanel.js +17 -21
- package/es/components/SidePanel/motion/variants.d.ts +4 -6
- package/es/components/SidePanel/motion/variants.js +10 -11
- package/es/components/StatusIndicator/StatusIndicatorStep.js +87 -0
- package/es/components/StringFormatter/StringFormatter.js +14 -3
- package/es/components/StringFormatter/utils/enums.d.ts +20 -1
- package/es/components/StringFormatter/utils/enums.js +22 -2
- package/es/components/Tearsheet/Tearsheet.d.ts +8 -1
- package/es/components/Tearsheet/Tearsheet.js +9 -1
- package/es/components/Tearsheet/TearsheetNarrow.d.ts +11 -0
- package/es/components/Tearsheet/TearsheetNarrow.js +12 -0
- package/es/components/Tearsheet/TearsheetShell.d.ts +11 -1
- package/es/components/Tearsheet/TearsheetShell.js +28 -7
- package/es/components/Toolbar/ToolbarButton.js +1 -1
- package/es/components/WebTerminal/WebTerminal.js +10 -12
- package/es/components/index.d.ts +1 -1
- package/es/global/js/hooks/useFocus.d.ts +1 -0
- package/es/global/js/hooks/useFocus.js +5 -2
- package/es/global/js/hooks/usePrefersReducedMotion.js +14 -8
- package/es/global/js/package-settings.d.ts +1 -1
- package/es/global/js/package-settings.js +1 -1
- package/es/index.js +1 -0
- package/es/node_modules/@carbon/icon-helpers/es/index.js +49 -62
- package/es/node_modules/@carbon/icons-react/es/generated/bucket-2.js +1020 -1058
- package/es/node_modules/@carbon/icons-react/es/generated/bucket-9.js +881 -758
- package/es/settings.d.ts +1 -1
- package/lib/components/ActionBar/ActionBarItem.js +1 -1
- package/lib/components/Coachmark/Coachmark.d.ts +6 -1
- package/lib/components/Coachmark/Coachmark.js +46 -10
- package/lib/components/Coachmark/CoachmarkOverlay.js +2 -4
- package/lib/components/CoachmarkBeacon/CoachmarkBeacon.js +1 -7
- package/lib/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
- package/lib/components/CoachmarkStack/CoachmarkStack.js +7 -3
- package/lib/components/CoachmarkStack/CoachmarkStackHome.js +8 -4
- package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +74 -53
- package/lib/components/ConditionBuilder/ConditionBuilder.js +82 -25
- package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
- package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +163 -0
- package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
- package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +28 -11
- package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +8 -1
- package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +29 -7
- package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +12 -7
- package/lib/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +18 -10
- package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -13
- package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +73 -60
- package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +13 -7
- package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +31 -8
- package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +8 -2
- package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +34 -24
- package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +40 -36
- package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +40 -36
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +6 -2
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +96 -38
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.d.ts +3 -1
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +24 -9
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +28 -10
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +122 -0
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.d.ts → ItemOptionForValueField.d.ts} +2 -2
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/{ConditionBuilderItemOption.js → ItemOptionForValueField.js} +68 -35
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.d.ts +5 -1
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +21 -8
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +1 -1
- package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.d.ts +1 -3
- package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +118 -37
- package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
- package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +44 -17
- package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.d.ts +2 -1
- package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +137 -39
- package/lib/components/ConditionBuilder/utils/useTranslations.d.ts +1 -0
- package/lib/components/ConditionBuilder/utils/useTranslations.js +30 -0
- package/lib/components/ConditionBuilder/utils/util.d.ts +6 -4
- package/lib/components/ConditionBuilder/utils/util.js +44 -16
- package/lib/components/CreateFullPage/CreateFullPage.js +2 -2
- package/lib/components/DataSpreadsheet/DataSpreadsheet.d.ts +26 -0
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +129 -53
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +16 -0
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +32 -7
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +16 -3
- package/lib/components/DataSpreadsheet/types/index.d.ts +1 -0
- package/lib/components/Datagrid/Datagrid/Datagrid.d.ts +0 -4
- package/lib/components/Datagrid/Datagrid/Datagrid.js +4 -9
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +1 -1
- package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +23 -8
- package/lib/components/Datagrid/Datagrid/DatagridRow.js +21 -8
- package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +2 -1
- package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +34 -10
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +6 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.d.ts +3 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +7 -4
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +53 -16
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +73 -10
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +10 -2
- package/lib/components/Datagrid/types/index.d.ts +57 -9
- package/lib/components/Datagrid/useActionsColumn.d.ts +8 -1
- package/lib/components/Datagrid/useActionsColumn.js +7 -6
- package/lib/components/Datagrid/useColumnRightAlign.d.ts +8 -1
- package/lib/components/Datagrid/useColumnRightAlign.js +4 -3
- package/lib/components/Datagrid/useCustomizeColumns.d.ts +8 -1
- package/lib/components/Datagrid/useCustomizeColumns.js +4 -3
- package/lib/components/Datagrid/useDefaultStringRenderer.js +0 -1
- package/lib/components/Datagrid/useDisableSelectRows.d.ts +2 -1
- package/lib/components/Datagrid/useDisableSelectRows.js +27 -22
- package/lib/components/Datagrid/useInlineEdit.js +12 -2
- package/lib/components/Datagrid/useNestedRowExpander.js +1 -3
- package/lib/components/Datagrid/useNestedRows.js +32 -13
- package/lib/components/Datagrid/useRowExpander.js +1 -3
- package/lib/components/Datagrid/useSelectRows.js +2 -1
- package/lib/components/Datagrid/useStickyColumn.d.ts +8 -1
- package/lib/components/Datagrid/useStickyColumn.js +12 -9
- package/lib/components/Decorator/Decorator.js +2 -1
- package/lib/components/DecoratorBase/DecoratorBase.js +3 -5
- package/lib/components/DecoratorDualButton/DecoratorDualButton.js +2 -1
- package/lib/components/DecoratorLink/DecoratorLink.js +2 -1
- package/lib/components/DecoratorSingleButton/DecoratorSingleButton.js +2 -1
- package/lib/components/EditInPlace/EditInPlace.d.ts +4 -0
- package/lib/components/EditInPlace/EditInPlace.js +21 -10
- package/lib/components/EditTearsheet/EditTearsheet.d.ts +7 -2
- package/lib/components/EditTearsheet/EditTearsheet.js +43 -9
- package/lib/components/EditTearsheet/EditTearsheetForm.d.ts +45 -2
- package/lib/components/EditTearsheet/EditTearsheetForm.js +3 -0
- package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +6 -0
- package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +6 -0
- package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +6 -0
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg403.js +204 -200
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg404.js +116 -112
- package/lib/components/HTTPErrors/assets/HTTPErrorSvgOther.js +110 -106
- package/lib/components/Nav/NavItem.js +10 -1
- package/lib/components/OptionsTile/OptionsTile.js +11 -6
- package/lib/components/PageHeader/PageHeader.js +1 -0
- package/lib/components/RemoveModal/RemoveModal.d.ts +4 -0
- package/lib/components/RemoveModal/RemoveModal.js +7 -1
- package/lib/components/SearchBar/SearchBar.d.ts +1 -1
- package/lib/components/SearchBar/SearchBar.js +2 -2
- package/lib/components/SidePanel/SidePanel.js +16 -20
- package/lib/components/SidePanel/motion/variants.d.ts +4 -6
- package/lib/components/SidePanel/motion/variants.js +10 -11
- package/lib/components/StatusIndicator/StatusIndicatorStep.js +94 -0
- package/lib/components/StringFormatter/StringFormatter.js +13 -2
- package/lib/components/StringFormatter/utils/enums.d.ts +20 -1
- package/lib/components/StringFormatter/utils/enums.js +23 -1
- package/lib/components/Tearsheet/Tearsheet.d.ts +8 -1
- package/lib/components/Tearsheet/Tearsheet.js +9 -1
- package/lib/components/Tearsheet/TearsheetNarrow.d.ts +11 -0
- package/lib/components/Tearsheet/TearsheetNarrow.js +12 -0
- package/lib/components/Tearsheet/TearsheetShell.d.ts +11 -1
- package/lib/components/Tearsheet/TearsheetShell.js +26 -5
- package/lib/components/Toolbar/ToolbarButton.js +1 -1
- package/lib/components/WebTerminal/WebTerminal.js +10 -12
- package/lib/components/index.d.ts +1 -1
- package/lib/global/js/hooks/useFocus.d.ts +1 -0
- package/lib/global/js/hooks/useFocus.js +5 -1
- package/lib/global/js/hooks/usePrefersReducedMotion.js +13 -7
- package/lib/global/js/package-settings.d.ts +1 -1
- package/lib/global/js/package-settings.js +1 -1
- package/lib/index.js +5 -0
- package/lib/node_modules/@carbon/icon-helpers/es/index.js +49 -62
- package/lib/node_modules/@carbon/icons-react/es/generated/bucket-2.js +1036 -1074
- package/lib/node_modules/@carbon/icons-react/es/generated/bucket-9.js +946 -823
- package/lib/settings.d.ts +1 -1
- package/package.json +9 -8
- package/scss/components/Coachmark/_coachmark-overlay.scss +6 -70
- package/scss/components/Coachmark/_coachmark.scss +5 -4
- package/scss/components/CoachmarkBeacon/_coachmark-beacon.scss +1 -3
- package/scss/components/ConditionBuilder/_condition-builder.scss +5 -1
- package/scss/components/ConditionBuilder/styles/_conditionBuilderCondition.scss +20 -3
- package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +32 -3
- package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +16 -2
- package/scss/components/Datagrid/_datagrid.scss +0 -4
- package/scss/components/Datagrid/styles/_useInlineEdit.scss +13 -0
- package/scss/components/Datagrid/styles/addons/_CustomizeColumnsTearsheet.scss +7 -5
- package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +5 -4
- package/scss/components/HTTPErrors/_http-errors.scss +77 -0
- package/scss/components/OptionsTile/_options-tile.scss +6 -6
- package/scss/components/SidePanel/_side-panel.scss +1 -1
- package/scss/components/StatusIcon/_status-icon.scss +4 -4
- package/scss/components/StringFormatter/_string-formatter.scss +2 -2
- package/scss/components/UserProfileImage/_user-profile-image.scss +6 -2
- package/scss/components/_index-released-only.scss +1 -0
- package/telemetry.yml +32 -19
- package/es/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
- package/es/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -16
- package/es/global/js/utils/window.d.ts +0 -2
- package/es/global/js/utils/window.js +0 -12
- package/lib/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
- package/lib/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -20
- package/lib/global/js/utils/window.d.ts +0 -2
- 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
|
-
|
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
|
-
|
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
|
-
*
|
109
|
+
* optional array of actions
|
103
110
|
*/
|
104
|
-
|
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
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
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
|
-
|
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.
|
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 {
|
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":
|
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 :
|
75
|
-
|
76
|
-
})),
|
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:
|
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
|
-
|
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
|
-
|
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(
|
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 {
|
12
|
-
import { blockClass,
|
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
|
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:
|
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(
|
65
|
+
}), /*#__PURE__*/React__default.createElement(ItemOption, {
|
61
66
|
config: {
|
62
67
|
options: connectorConfig
|
63
68
|
},
|
64
69
|
conditionState: {
|
65
70
|
value: operator,
|
66
|
-
label:
|
71
|
+
label: connectorText
|
67
72
|
},
|
68
73
|
onChange: onChangeHandler
|
69
74
|
}))
|