@carbon/ibm-products 2.43.2-canary.2 → 2.43.2-canary.22
Sign up to get free protection for your applications and to get access to all the features.
- package/css/index-full-carbon.css +35 -3
- 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.map +1 -1
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +35 -3
- 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 +35 -3
- 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/ConditionBuilder/ConditionBlock/ConditionBlock.js +23 -21
- package/es/components/ConditionBuilder/ConditionBuilder.js +67 -20
- package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
- package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +129 -0
- package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +6 -4
- package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +5 -1
- package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +16 -4
- package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +2 -2
- package/es/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +2 -2
- package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -11
- package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +36 -32
- package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +0 -1
- package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +7 -2
- package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +6 -1
- package/es/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +18 -10
- package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +39 -36
- package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +12 -10
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +1 -1
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +24 -16
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +19 -4
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +109 -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} +58 -33
- package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +4 -6
- package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +14 -5
- package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +1 -2
- package/es/components/ConditionBuilder/utils/util.d.ts +1 -0
- package/es/components/ConditionBuilder/utils/util.js +16 -1
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +29 -16
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +9 -1
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +18 -2
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +17 -6
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +4 -1
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.d.ts +3 -1
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +15 -3
- package/es/components/DataSpreadsheet/types/index.d.ts +1 -1
- package/es/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +34 -2
- package/es/components/Datagrid/Datagrid/Datagrid.js +2 -1
- package/es/components/Datagrid/Datagrid/DatagridContent.js +1 -1
- 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 +6 -3
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +21 -16
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +21 -3
- package/es/components/Datagrid/types/index.d.ts +18 -4
- 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/useInlineEdit.d.ts +8 -1
- package/es/components/Datagrid/useInlineEdit.js +13 -3
- package/es/components/Datagrid/useNestedRows.js +27 -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/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 +10 -0
- package/es/components/Tearsheet/TearsheetShell.js +17 -3
- package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +23 -21
- package/lib/components/ConditionBuilder/ConditionBuilder.js +67 -20
- package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.d.ts +15 -0
- package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +137 -0
- package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +6 -3
- package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.d.ts +5 -1
- package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +16 -4
- package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +2 -2
- package/lib/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +2 -2
- package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.d.ts +9 -11
- package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +36 -32
- package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.d.ts +0 -1
- package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +7 -2
- package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.d.ts +6 -1
- package/lib/components/ConditionBuilder/ConditionBuilderContext/DataConfigs.js +18 -10
- package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +39 -36
- package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +12 -10
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.d.ts +1 -1
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +23 -15
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +20 -5
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.d.ts +13 -0
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +117 -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} +56 -31
- package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +4 -6
- package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +14 -4
- package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +1 -2
- package/lib/components/ConditionBuilder/utils/util.d.ts +1 -0
- package/lib/components/ConditionBuilder/utils/util.js +17 -0
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +29 -16
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +9 -1
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +18 -2
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +17 -6
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +4 -1
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.d.ts +3 -1
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +15 -3
- package/lib/components/DataSpreadsheet/types/index.d.ts +1 -1
- package/lib/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +34 -2
- package/lib/components/Datagrid/Datagrid/Datagrid.js +2 -1
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +1 -1
- 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 +6 -3
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.d.ts +1 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +21 -16
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +21 -3
- package/lib/components/Datagrid/types/index.d.ts +18 -4
- 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/useInlineEdit.d.ts +8 -1
- package/lib/components/Datagrid/useInlineEdit.js +13 -3
- package/lib/components/Datagrid/useNestedRows.js +27 -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/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 +10 -0
- package/lib/components/Tearsheet/TearsheetShell.js +16 -2
- package/package.json +3 -3
- package/scss/components/ConditionBuilder/styles/_conditionBuilderCondition.scss +9 -1
- package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +26 -1
- package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +1 -0
- 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/telemetry.yml +1 -0
- package/es/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
- package/es/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -16
- package/lib/components/ConditionBuilder/utils/checkForHoldingKey.d.ts +0 -1
- package/lib/components/ConditionBuilder/utils/checkForHoldingKey.js +0 -20
@@ -36,7 +36,8 @@ var useFilters = function useFilters(_ref) {
|
|
36
36
|
isFetching = _ref.isFetching;
|
37
37
|
var _useContext = React.useContext(FilterProvider.FilterContext),
|
38
38
|
state = _useContext.state,
|
39
|
-
localDispatch = _useContext.dispatch
|
39
|
+
localDispatch = _useContext.dispatch,
|
40
|
+
contextTableId = _useContext.tableId;
|
40
41
|
var savedFilters = state.savedFilters;
|
41
42
|
/** State */
|
42
43
|
var _useState = React.useState(utils.getInitialStateFromFilters(filters, variation, reactTableFiltersState)),
|
@@ -77,24 +78,28 @@ var useFilters = function useFilters(_ref) {
|
|
77
78
|
holdingLastAppliedFiltersRef.current = JSON.parse(prevFiltersObjectArrayRef.current);
|
78
79
|
holdingPrevFiltersObjectArrayRef.current = JSON.parse(lastAppliedFilters.current);
|
79
80
|
}, [setAllFilters]);
|
80
|
-
var reset = React.useCallback(function () {
|
81
|
-
//
|
82
|
-
|
81
|
+
var reset = React.useCallback(function (tableId) {
|
82
|
+
// only reset filters if tableid of the datagrid that triggered "clear filters"
|
83
|
+
// matches the table id stored in its context instance
|
84
|
+
if (tableId === contextTableId) {
|
85
|
+
// When we reset we want the "initialFilters" to be an empty array
|
86
|
+
var resetFiltersArray = [];
|
83
87
|
|
84
|
-
|
85
|
-
|
86
|
-
|
88
|
+
// Get the initial values for the filters
|
89
|
+
var initialFiltersState = utils.getInitialStateFromFilters(filters, variation, resetFiltersArray);
|
90
|
+
var initialFiltersObjectArray = [];
|
87
91
|
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
+
// Set the state to the initial values
|
93
|
+
setFiltersState(initialFiltersState);
|
94
|
+
setFiltersObjectArray(initialFiltersObjectArray);
|
95
|
+
setAllFilters([]);
|
92
96
|
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
97
|
+
// Update their respective refs so everything is in sync
|
98
|
+
prevFiltersRef.current = JSON.stringify(initialFiltersState);
|
99
|
+
prevFiltersObjectArrayRef.current = JSON.stringify(initialFiltersObjectArray);
|
100
|
+
lastAppliedFilters.current = JSON.stringify([]);
|
101
|
+
}
|
102
|
+
}, [filters, setAllFilters, variation, contextTableId]);
|
98
103
|
var applyFilters = function applyFilters(_ref2) {
|
99
104
|
var column = _ref2.column,
|
100
105
|
value = _ref2.value,
|
@@ -28,7 +28,7 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
28
28
|
|
29
29
|
var blockClass = "".concat(settings.pkg.prefix, "--datagrid");
|
30
30
|
var InlineEditCell = function InlineEditCell(_ref) {
|
31
|
-
var _config$validator
|
31
|
+
var _config$validator;
|
32
32
|
var cell = _ref.cell,
|
33
33
|
config = _ref.config,
|
34
34
|
_ref$disabledCell = _ref.disabledCell,
|
@@ -456,6 +456,24 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
456
456
|
ref: textInputRef
|
457
457
|
}));
|
458
458
|
};
|
459
|
+
var getLabel = function getLabel() {
|
460
|
+
var _value$text, _checkStaticCell;
|
461
|
+
var checkStaticCell = function checkStaticCell(val) {
|
462
|
+
if (_rollupPluginBabelHelpers["typeof"](val) === 'object' && val !== null && val !== void 0 && val.isStaticCell) {
|
463
|
+
return val === null || val === void 0 ? void 0 : val.value;
|
464
|
+
}
|
465
|
+
};
|
466
|
+
switch (type) {
|
467
|
+
case 'selection':
|
468
|
+
checkStaticCell(value);
|
469
|
+
return (_value$text = value === null || value === void 0 ? void 0 : value.text) !== null && _value$text !== void 0 ? _value$text : value;
|
470
|
+
case 'date':
|
471
|
+
checkStaticCell(value);
|
472
|
+
return buildDate(value);
|
473
|
+
default:
|
474
|
+
return (_checkStaticCell = checkStaticCell(value)) !== null && _checkStaticCell !== void 0 ? _checkStaticCell : value;
|
475
|
+
}
|
476
|
+
};
|
459
477
|
return (
|
460
478
|
/*#__PURE__*/
|
461
479
|
// eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions
|
@@ -464,7 +482,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
464
482
|
"data-cell-id": cellId,
|
465
483
|
"data-column-index": columnIndex,
|
466
484
|
"data-row-index": cell.row.index,
|
467
|
-
"data-disabled": disabledCell,
|
485
|
+
"data-disabled": disabledCell || nonEditCell,
|
468
486
|
"data-inline-type": type,
|
469
487
|
onClick: !nonEditCell ? handleInlineCellClick : addActiveState,
|
470
488
|
onKeyDown: !nonEditCell ? handleKeyDown : null,
|
@@ -472,7 +490,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
472
490
|
}, !nonEditCell && !disabledCell && renderRegularCell(), (!inEditMode || disabledCell) && /*#__PURE__*/React__default["default"].createElement(InlineEditButton.InlineEditButton, {
|
473
491
|
isActiveCell: cellId === activeCellId,
|
474
492
|
renderIcon: setRenderIcon(),
|
475
|
-
label:
|
493
|
+
label: getLabel(),
|
476
494
|
disabledCell: disabledCell,
|
477
495
|
labelIcon: (value === null || value === void 0 ? void 0 : value.icon) || null,
|
478
496
|
placeholder: placeholder,
|
@@ -5,10 +5,10 @@ import { RadioButtonProps } from '@carbon/react/lib/components/RadioButton/Radio
|
|
5
5
|
import { RadioButtonGroupProps } from '@carbon/react/lib/components/RadioButtonGroup/RadioButtonGroup';
|
6
6
|
import { CheckboxProps } from '@carbon/react/lib/components/Checkbox';
|
7
7
|
import { NumberInputProps } from '@carbon/react/lib/components/NumberInput/NumberInput';
|
8
|
-
import { CSSProperties, JSXElementConstructor, MutableRefObject, ReactNode, TouchEventHandler } from 'react';
|
9
|
-
import { Cell, Column, ColumnInstance, FilterValue, Filters, HeaderGroup, Meta, Row, TableCommonProps, TableDispatch, TableInstance, TableToggleAllRowsSelectedProps, UseExpandedRowProps, UseFiltersInstanceProps, UsePaginationInstanceProps, UseResizeColumnsColumnProps, UseResizeColumnsState, UseRowSelectInstanceProps, UseRowSelectRowProps, UseRowSelectState, UseSortByColumnProps, UseTableHooks } from 'react-table';
|
8
|
+
import React, { CSSProperties, ComponentType, FunctionComponent, JSXElementConstructor, MutableRefObject, ReactNode, TouchEventHandler } from 'react';
|
9
|
+
import { Cell, Column, ColumnInstance, FilterValue, Filters, HeaderGroup, Meta, Row, TableCommonProps, TableDispatch, TableInstance, TableToggleAllRowsSelectedProps, UseExpandedRowProps, UseFiltersInstanceProps, UsePaginationInstanceProps, UseResizeColumnsColumnProps, UseResizeColumnsState, UseRowSelectInstanceProps, UseRowSelectRowProps, UseRowSelectState, UseSortByColumnProps, UseSortByOptions, UseTableHooks } from 'react-table';
|
10
10
|
import { CarbonIconType } from '@carbon/react/icons';
|
11
|
-
import { type ButtonProps } from '@carbon/react';
|
11
|
+
import { IconButton, type ButtonProps } from '@carbon/react';
|
12
12
|
import { TableBatchActionsProps } from '@carbon/react/lib/components/DataTable/TableBatchActions';
|
13
13
|
export type Size = 'xs' | 'sm' | 'md' | 'lg';
|
14
14
|
export interface ResizerProps {
|
@@ -85,9 +85,10 @@ export interface DataGridToggleAllRowsProps extends TableToggleAllRowsSelectedPr
|
|
85
85
|
}
|
86
86
|
export interface DatagridTableHooks<T extends object = any> extends UseTableHooks<T> {
|
87
87
|
}
|
88
|
-
export interface DatagridColumn<T extends object = any> extends ColumnInstance<T> {
|
88
|
+
export interface DatagridColumn<T extends object = any> extends ColumnInstance<T>, UseSortByOptions<T> {
|
89
89
|
sticky?: 'left' | 'right';
|
90
90
|
className?: string;
|
91
|
+
rightAlignedColumn?: boolean;
|
91
92
|
disableSortBy?: boolean;
|
92
93
|
centerAlignedColumn?: boolean;
|
93
94
|
}
|
@@ -100,6 +101,7 @@ export interface DatagridRow<T extends object = any> extends Omit<Row<T>, 'cells
|
|
100
101
|
RowExpansionRenderer?: (state?: DataGridState) => void;
|
101
102
|
cells: Array<DataGridCell>;
|
102
103
|
isSkeleton?: boolean;
|
104
|
+
hasExpanded?: boolean;
|
103
105
|
}
|
104
106
|
export interface DataGridHeader<T extends object = any> extends ColumnInstance, UseResizeColumnsColumnProps<T>, UseSortByColumnProps<T> {
|
105
107
|
className(className: any, arg1: {
|
@@ -120,6 +122,16 @@ interface DataGridTableState extends UseResizeColumnsState<any>, UseRowSelectSta
|
|
120
122
|
}
|
121
123
|
export interface DataGridTableInstance<T extends object = any> extends TableInstance<T> {
|
122
124
|
}
|
125
|
+
export interface RowAction {
|
126
|
+
id?: string;
|
127
|
+
itemText?: string;
|
128
|
+
icon?: ComponentType | FunctionComponent;
|
129
|
+
align?: React.ComponentProps<typeof IconButton>['align'];
|
130
|
+
shouldHideMenuItem?: (...args: any[]) => void;
|
131
|
+
shouldDisableMenuItem?: (...args: any[]) => void;
|
132
|
+
disabled?: boolean;
|
133
|
+
onClick?: (...args: any[]) => void;
|
134
|
+
}
|
123
135
|
export interface DataGridState<T extends object = any> extends TableCommonProps, UsePaginationInstanceProps<T>, Omit<TableInstance<T>, 'state' | 'headers' | 'rows' | 'columns'>, Omit<UseFiltersInstanceProps<T>, 'rows'>, UseRowSelectInstanceProps<T>, Pick<UseRowSelectInstanceProps<T>, 'toggleAllRowsSelected'> {
|
124
136
|
withVirtualScroll?: boolean;
|
125
137
|
DatagridPagination?: JSXElementConstructor<any>;
|
@@ -142,6 +154,7 @@ export interface DataGridState<T extends object = any> extends TableCommonProps,
|
|
142
154
|
batchActions?: boolean;
|
143
155
|
row: DatagridRow;
|
144
156
|
rows: Array<DatagridRow<any>>;
|
157
|
+
rowActions?: RowAction[];
|
145
158
|
columns: Array<DatagridColumn>;
|
146
159
|
key?: any;
|
147
160
|
rowSize?: Size;
|
@@ -217,4 +230,5 @@ export interface ResizeHeaderProps {
|
|
217
230
|
isFetching?: boolean;
|
218
231
|
}
|
219
232
|
export type VisibleColumns<T extends object = {}> = (allColumns: Array<ColumnInstance<T>>, meta: Meta<T>) => Array<Column<T>>;
|
233
|
+
export type NodeFuncType = (props: any) => ReactNode;
|
220
234
|
export {};
|
@@ -1,2 +1,9 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2021, 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
import { Hooks } from 'react-table';
|
8
|
+
declare const useActionsColumn: (hooks: Hooks) => void;
|
1
9
|
export default useActionsColumn;
|
2
|
-
declare function useActionsColumn(hooks: any): void;
|
@@ -26,9 +26,10 @@ var _excluded = ["align", "id", "itemText", "onClick", "icon", "shouldHideMenuIt
|
|
26
26
|
var blockClass = "".concat(settings.pkg.prefix, "--datagrid");
|
27
27
|
var useActionsColumn = function useActionsColumn(hooks) {
|
28
28
|
var useAttachActionsOnInstance = function useAttachActionsOnInstance(instance) {
|
29
|
-
var
|
30
|
-
|
31
|
-
|
29
|
+
var _ref = instance,
|
30
|
+
rowActions = _ref.rowActions,
|
31
|
+
isFetching = _ref.isFetching,
|
32
|
+
selectedRowIds = _ref.state.selectedRowIds;
|
32
33
|
var getDisabledState = function getDisabledState(rowIndex) {
|
33
34
|
var selectedRowIndexes = Object.keys(selectedRowIds).map(function (n) {
|
34
35
|
return Number(n);
|
@@ -88,10 +89,10 @@ var useActionsColumn = function useActionsColumn(hooks) {
|
|
88
89
|
return;
|
89
90
|
}
|
90
91
|
e.stopPropagation();
|
91
|
-
_onClick(id, row, e);
|
92
|
+
_onClick === null || _onClick === void 0 || _onClick(id, row, e);
|
92
93
|
},
|
93
94
|
disabled: isDisabledByRow
|
94
|
-
}), /*#__PURE__*/React__default["default"].createElement(Icon, null)));
|
95
|
+
}), Icon && /*#__PURE__*/React__default["default"].createElement(Icon, null)));
|
95
96
|
})), !isFetching && (rowActions.length > 2 || isColumnSticky) && /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(react.OverflowMenu, {
|
96
97
|
align: "left",
|
97
98
|
size: "sm",
|
@@ -117,7 +118,7 @@ var useActionsColumn = function useActionsColumn(hooks) {
|
|
117
118
|
disabled: isDisabledByRow,
|
118
119
|
onClick: function onClick(e) {
|
119
120
|
e.stopPropagation();
|
120
|
-
_onClick2(id, row, e);
|
121
|
+
_onClick2 === null || _onClick2 === void 0 || _onClick2(id, row, e);
|
121
122
|
},
|
122
123
|
key: id
|
123
124
|
}));
|
@@ -1,2 +1,9 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2020, 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
import { Hooks } from 'react-table';
|
8
|
+
declare const useColumnRightAlign: (hooks: Hooks) => void;
|
1
9
|
export default useColumnRightAlign;
|
2
|
-
declare function useColumnRightAlign(hooks: any): void;
|
@@ -22,16 +22,17 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
22
22
|
var blockClass = "".concat(settings.pkg.prefix, "--datagrid");
|
23
23
|
var useColumnRightAlign = function useColumnRightAlign(hooks) {
|
24
24
|
var RightAlignRenderer = function RightAlignRenderer(tableProps, column) {
|
25
|
+
var _tableProps$column, _column$Cell;
|
25
26
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
26
27
|
className: cx__default["default"]("".concat(blockClass, "__right-align-cell-renderer"), {
|
27
|
-
sortDisabled: !tableProps.isTableSortable || tableProps.column.disableSortBy === true
|
28
|
+
sortDisabled: !tableProps.isTableSortable || (tableProps === null || tableProps === void 0 || (_tableProps$column = tableProps.column) === null || _tableProps$column === void 0 ? void 0 : _tableProps$column.disableSortBy) === true
|
28
29
|
})
|
29
|
-
}, column.Cell(tableProps));
|
30
|
+
}, column === null || column === void 0 || (_column$Cell = column.Cell) === null || _column$Cell === void 0 ? void 0 : _column$Cell.call(column, tableProps));
|
30
31
|
};
|
31
32
|
var RightAlignHeader = function RightAlignHeader(headerProp, column) {
|
32
33
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
33
34
|
className: "".concat(blockClass, "__right-align-header")
|
34
|
-
}, typeof column.Header === 'function' ? column.Header(headerProp) : column.Header);
|
35
|
+
}, typeof column.Header === 'function' ? (column === null || column === void 0 ? void 0 : column.Header.bind(column))(headerProp) : column.Header);
|
35
36
|
};
|
36
37
|
var rightAlignedColumns = function rightAlignedColumns(columns) {
|
37
38
|
var columnsWithDefaultCells = columns.map(function (column) {
|
@@ -1,2 +1,9 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright IBM Corp. 2022, 2024
|
3
|
+
*
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
import { Hooks } from 'react-table';
|
8
|
+
declare const useInlineEdit: (hooks: Hooks) => void;
|
1
9
|
export default useInlineEdit;
|
2
|
-
declare function useInlineEdit(hooks: any): void;
|
@@ -9,6 +9,7 @@
|
|
9
9
|
|
10
10
|
Object.defineProperty(exports, '__esModule', { value: true });
|
11
11
|
|
12
|
+
var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
|
12
13
|
var React = require('react');
|
13
14
|
var settings = require('../../settings.js');
|
14
15
|
var cx = require('classnames');
|
@@ -22,19 +23,20 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
22
23
|
var blockClass = "".concat(settings.pkg.prefix, "--datagrid");
|
23
24
|
var useInlineEdit = function useInlineEdit(hooks) {
|
24
25
|
var addInlineEdit = function addInlineEdit(props, _ref) {
|
25
|
-
var _cell$column, _cell$column2;
|
26
|
+
var _cell$column, _cell$column2, _cell$value, _cell$value2, _cell$value3;
|
26
27
|
var cell = _ref.cell,
|
27
28
|
instance = _ref.instance;
|
28
29
|
var columnInlineEditConfig = cell.column.inlineEdit;
|
29
30
|
var inlineEditType = (_cell$column = cell.column) === null || _cell$column === void 0 || (_cell$column = _cell$column.inlineEdit) === null || _cell$column === void 0 ? void 0 : _cell$column.type;
|
30
31
|
var isDisabled = (_cell$column2 = cell.column) === null || _cell$column2 === void 0 ? void 0 : _cell$column2.isDisabled;
|
32
|
+
var staticCell = _rollupPluginBabelHelpers["typeof"](cell.value) === 'object' && cell.column.id === ((_cell$value = cell.value) === null || _cell$value === void 0 ? void 0 : _cell$value.columnId) && ((_cell$value2 = cell.value) === null || _cell$value2 === void 0 ? void 0 : _cell$value2.isStaticCell);
|
31
33
|
var renderInlineEditComponent = function renderInlineEditComponent(type) {
|
32
34
|
return /*#__PURE__*/React__default["default"].createElement(InlineEditCell.InlineEditCell, {
|
33
35
|
config: columnInlineEditConfig,
|
34
36
|
tabIndex: -1,
|
35
37
|
value: cell.value,
|
36
38
|
cell: cell,
|
37
|
-
|
39
|
+
disabledCell: isDisabled,
|
38
40
|
instance: instance,
|
39
41
|
type: type
|
40
42
|
});
|
@@ -47,7 +49,15 @@ var useInlineEdit = function useInlineEdit(hooks) {
|
|
47
49
|
return [props, {
|
48
50
|
className: cx__default["default"]("".concat(blockClass, "__cell"), "".concat(blockClass, "__cell-inline-edit")),
|
49
51
|
role: 'gridcell',
|
50
|
-
children: /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, inlineEditType === 'text' && renderInlineEditComponent(inlineEditType), inlineEditType === 'number' && renderInlineEditComponent(inlineEditType), inlineEditType === 'selection' && renderInlineEditComponent(inlineEditType), inlineEditType === 'date' && renderInlineEditComponent(inlineEditType),
|
52
|
+
children: /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, !staticCell && inlineEditType === 'text' && renderInlineEditComponent(inlineEditType), !staticCell && inlineEditType === 'number' && renderInlineEditComponent(inlineEditType), !staticCell && inlineEditType === 'selection' && renderInlineEditComponent(inlineEditType), !staticCell && inlineEditType === 'date' && renderInlineEditComponent(inlineEditType), staticCell && /*#__PURE__*/React__default["default"].createElement(InlineEditCell.InlineEditCell, {
|
53
|
+
config: columnInlineEditConfig,
|
54
|
+
tabIndex: -1,
|
55
|
+
value: (_cell$value3 = cell.value) === null || _cell$value3 === void 0 ? void 0 : _cell$value3.value,
|
56
|
+
cell: cell,
|
57
|
+
instance: instance,
|
58
|
+
nonEditCell: true,
|
59
|
+
type: "text"
|
60
|
+
}), !inlineEditType && /*#__PURE__*/React__default["default"].createElement(InlineEditCell.InlineEditCell, {
|
51
61
|
config: columnInlineEditConfig,
|
52
62
|
tabIndex: -1,
|
53
63
|
value: cell.value,
|
@@ -23,12 +23,30 @@ var blockClass = "".concat(settings.pkg.prefix, "--datagrid");
|
|
23
23
|
var useNestedRows = function useNestedRows(hooks) {
|
24
24
|
useNestedRowExpander["default"](hooks);
|
25
25
|
var useInstance = function useInstance(instance) {
|
26
|
+
React.useEffect(function () {
|
27
|
+
var _ref = instance,
|
28
|
+
rows = _ref.rows;
|
29
|
+
var defaultExpandedRows = rows.filter(function (row) {
|
30
|
+
var _row$original;
|
31
|
+
return row === null || row === void 0 || (_row$original = row.original) === null || _row$original === void 0 ? void 0 : _row$original.defaultExpanded;
|
32
|
+
});
|
33
|
+
if (defaultExpandedRows !== null && defaultExpandedRows !== void 0 && defaultExpandedRows.length) {
|
34
|
+
defaultExpandedRows.map(function (defaultExpandedRow) {
|
35
|
+
if (!(defaultExpandedRow !== null && defaultExpandedRow !== void 0 && defaultExpandedRow.isExpanded) && !(defaultExpandedRow !== null && defaultExpandedRow !== void 0 && defaultExpandedRow.hasExpanded)) {
|
36
|
+
var _defaultExpandedRow$t;
|
37
|
+
defaultExpandedRow === null || defaultExpandedRow === void 0 || (_defaultExpandedRow$t = defaultExpandedRow.toggleRowExpanded) === null || _defaultExpandedRow$t === void 0 || _defaultExpandedRow$t.call(defaultExpandedRow);
|
38
|
+
defaultExpandedRow.hasExpanded = true;
|
39
|
+
return;
|
40
|
+
}
|
41
|
+
});
|
42
|
+
}
|
43
|
+
}, [instance, instance.rows]);
|
26
44
|
// This useEffect will expand rows if they exist in the initialState obj
|
27
45
|
React.useEffect(function () {
|
28
46
|
var rows = instance.rows,
|
29
47
|
initialState = instance.initialState;
|
30
|
-
var
|
31
|
-
expandedRowIds =
|
48
|
+
var _ref2 = initialState,
|
49
|
+
expandedRowIds = _ref2.expandedRowIds;
|
32
50
|
if (expandedRowIds) {
|
33
51
|
Object.keys(expandedRowIds).forEach(function (key) {
|
34
52
|
var row = rows.filter(function (r) {
|
@@ -42,14 +60,14 @@ var useNestedRows = function useNestedRows(hooks) {
|
|
42
60
|
}
|
43
61
|
}, [instance]);
|
44
62
|
var marginLeft = 24;
|
45
|
-
var getRowProps = function getRowProps(props,
|
46
|
-
var row =
|
63
|
+
var getRowProps = function getRowProps(props, _ref3) {
|
64
|
+
var row = _ref3.row;
|
47
65
|
return [props, {
|
48
66
|
className: cx__default["default"](_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "__carbon-nested-row"), row.depth > 0), "".concat(blockClass, "__carbon-row-expanded"), row.isExpanded))
|
49
67
|
}];
|
50
68
|
};
|
51
|
-
var getRowStyles = function getRowStyles(props,
|
52
|
-
var row =
|
69
|
+
var getRowStyles = function getRowStyles(props, _ref4) {
|
70
|
+
var row = _ref4.row;
|
53
71
|
return [props, {
|
54
72
|
style: {
|
55
73
|
paddingLeft: "".concat(row.depth > 1 ? marginLeft * 2 + (row.depth - 1) * (marginLeft + marginLeft / 3) : row.depth === 1 ? marginLeft * 2 : 0, "px")
|
@@ -59,9 +77,9 @@ var useNestedRows = function useNestedRows(hooks) {
|
|
59
77
|
var getIndentation = function getIndentation(depth) {
|
60
78
|
return 32 * depth + 16;
|
61
79
|
}; // row indentation padding
|
62
|
-
var getCellProps = function getCellProps(props,
|
63
|
-
var cell =
|
64
|
-
instance =
|
80
|
+
var getCellProps = function getCellProps(props, _ref5) {
|
81
|
+
var cell = _ref5.cell,
|
82
|
+
instance = _ref5.instance;
|
65
83
|
// we add a dynamic -ve margin right only if the cell is resized below minimum width i.e 50px, else we set the width based on indentation at different levels
|
66
84
|
var isFirstCell = instance.columns.findIndex(function (c) {
|
67
85
|
return c.id === cell.column.id;
|
@@ -95,7 +95,8 @@ exports.Decorator.propTypes = {
|
|
95
95
|
*/
|
96
96
|
small: index["default"].bool,
|
97
97
|
/**
|
98
|
-
*
|
98
|
+
* Override the default theme of the component.
|
99
|
+
* Useful if you want "invert" the component's theme.
|
99
100
|
*/
|
100
101
|
theme: index["default"].oneOf(['light', 'dark']),
|
101
102
|
/**
|
@@ -32,8 +32,7 @@ var defaults = {
|
|
32
32
|
onContextMenu: function onContextMenu() {},
|
33
33
|
onContextMenuLabel: function onContextMenuLabel() {},
|
34
34
|
onContextMenuValue: function onContextMenuValue() {},
|
35
|
-
scoreThresholds: [0, 4, 7, 10]
|
36
|
-
theme: 'light'
|
35
|
+
scoreThresholds: [0, 4, 7, 10]
|
37
36
|
};
|
38
37
|
|
39
38
|
/**
|
@@ -65,8 +64,7 @@ var DecoratorBase = /*#__PURE__*/React__default["default"].forwardRef(function (
|
|
65
64
|
_ref$scoreThresholds = _ref.scoreThresholds,
|
66
65
|
scoreThresholds = _ref$scoreThresholds === void 0 ? defaults.scoreThresholds : _ref$scoreThresholds,
|
67
66
|
small = _ref.small,
|
68
|
-
|
69
|
-
theme = _ref$theme === void 0 ? defaults.theme : _ref$theme,
|
67
|
+
theme = _ref.theme,
|
70
68
|
truncateValue = _ref.truncateValue,
|
71
69
|
value = _ref.value,
|
72
70
|
valueTitle = _ref.valueTitle,
|
@@ -76,7 +74,7 @@ var DecoratorBase = /*#__PURE__*/React__default["default"].forwardRef(function (
|
|
76
74
|
var _value = utils.truncate(value, truncateValue);
|
77
75
|
|
78
76
|
// These class names apply to all types of DecoratorBase.
|
79
|
-
var classNames = cx__default["default"](blockClass, className,
|
77
|
+
var classNames = cx__default["default"](blockClass, className, _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "--").concat(theme), theme), "".concat(blockClass, "--sm"), small), "".concat(blockClass, "--truncate-end"), truncateValue === 'end'), "".concat(blockClass, "--truncate-start"), truncateValue === 'start'), "".concat(blockClass, "--truncate-midline"), truncateValue === null || truncateValue === void 0 ? void 0 : truncateValue.maxLength));
|
80
78
|
|
81
79
|
// These properties apply to all <DecoratorIcons>.
|
82
80
|
var decoratorIconsProps = {
|
@@ -119,7 +119,8 @@ exports.DecoratorDualButton.propTypes = {
|
|
119
119
|
*/
|
120
120
|
small: index["default"].bool,
|
121
121
|
/**
|
122
|
-
*
|
122
|
+
* Override the default theme of the component.
|
123
|
+
* Useful if you want "invert" the component's theme.
|
123
124
|
*/
|
124
125
|
theme: index["default"].oneOf(['light', 'dark']),
|
125
126
|
/**
|
@@ -109,7 +109,8 @@ exports.DecoratorLink.propTypes = {
|
|
109
109
|
*/
|
110
110
|
small: index["default"].bool,
|
111
111
|
/**
|
112
|
-
*
|
112
|
+
* Override the default theme of the component.
|
113
|
+
* Useful if you want "invert" the component's theme.
|
113
114
|
*/
|
114
115
|
theme: index["default"].oneOf(['light', 'dark']),
|
115
116
|
/**
|
@@ -109,7 +109,8 @@ exports.DecoratorSingleButton.propTypes = {
|
|
109
109
|
*/
|
110
110
|
small: index["default"].bool,
|
111
111
|
/**
|
112
|
-
*
|
112
|
+
* Override the default theme of the component.
|
113
|
+
* Useful if you want "invert" the component's theme.
|
113
114
|
*/
|
114
115
|
theme: index["default"].oneOf(['light', 'dark']),
|
115
116
|
/**
|
@@ -99,9 +99,16 @@ interface TearsheetProps extends PropsWithChildren {
|
|
99
99
|
*/
|
100
100
|
portalTarget: ReactNode;
|
101
101
|
/**
|
102
|
-
* Specify a CSS selector that matches the DOM element that should be
|
102
|
+
* Specify a CSS selector that matches the DOM element that should be
|
103
|
+
* focused when the Modal opens.
|
103
104
|
*/
|
104
105
|
selectorPrimaryFocus?: string;
|
106
|
+
/**
|
107
|
+
* Specify the CSS selectors that match the floating menus.
|
108
|
+
*
|
109
|
+
* See https://react.carbondesignsystem.com/?path=/docs/components-composedmodal--overview#focus-management
|
110
|
+
*/
|
111
|
+
selectorsFloatingMenus?: string[];
|
105
112
|
/**
|
106
113
|
* The main title of the tearsheet, displayed in the header area.
|
107
114
|
*/
|
@@ -198,9 +198,17 @@ exports.Tearsheet.propTypes = _rollupPluginBabelHelpers.objectSpread2({
|
|
198
198
|
/**@ts-ignore */
|
199
199
|
portalTarget: TearsheetShell.portalType,
|
200
200
|
/**
|
201
|
-
* Specify a CSS selector that matches the DOM element that should be
|
201
|
+
* Specify a CSS selector that matches the DOM element that should be
|
202
|
+
* focused when the Modal opens.
|
202
203
|
*/
|
203
204
|
selectorPrimaryFocus: index["default"].string,
|
205
|
+
/**
|
206
|
+
* Specify the CSS selectors that match the floating menus.
|
207
|
+
*
|
208
|
+
* See https://react.carbondesignsystem.com/?path=/docs/components-composedmodal--overview#focus-management
|
209
|
+
*/
|
210
|
+
/**@ts-ignore*/
|
211
|
+
selectorsFloatingMenus: index["default"].arrayOf(index["default"].string),
|
204
212
|
/**
|
205
213
|
* The main title of the tearsheet, displayed in the header area.
|
206
214
|
*/
|
@@ -64,6 +64,17 @@ interface TearsheetNarrowBaseProps extends PropsWithChildren {
|
|
64
64
|
* The DOM element that the tearsheet should be rendered within. Defaults to document.body.
|
65
65
|
*/
|
66
66
|
portalTarget?: ReactNode;
|
67
|
+
/**
|
68
|
+
* Specify a CSS selector that matches the DOM element that should be
|
69
|
+
* focused when the Modal opens.
|
70
|
+
*/
|
71
|
+
selectorPrimaryFocus?: string;
|
72
|
+
/**
|
73
|
+
* Specify the CSS selectors that match the floating menus.
|
74
|
+
*
|
75
|
+
* See https://react.carbondesignsystem.com/?path=/docs/components-composedmodal--overview#focus-management
|
76
|
+
*/
|
77
|
+
selectorsFloatingMenus?: string[];
|
67
78
|
/**
|
68
79
|
* The main title of the tearsheet, displayed in the header area.
|
69
80
|
*/
|
@@ -156,6 +156,18 @@ exports.TearsheetNarrow.propTypes = _rollupPluginBabelHelpers.objectSpread2({
|
|
156
156
|
*/
|
157
157
|
/**@ts-ignore */
|
158
158
|
portalTarget: TearsheetShell.portalType,
|
159
|
+
/**
|
160
|
+
* Specify a CSS selector that matches the DOM element that should be
|
161
|
+
* focused when the Modal opens.
|
162
|
+
*/
|
163
|
+
selectorPrimaryFocus: index["default"].string,
|
164
|
+
/**
|
165
|
+
* Specify the CSS selectors that match the floating menus.
|
166
|
+
*
|
167
|
+
* See https://react.carbondesignsystem.com/?path=/docs/components-composedmodal--overview#focus-management
|
168
|
+
*/
|
169
|
+
/**@ts-ignore*/
|
170
|
+
selectorsFloatingMenus: index["default"].arrayOf(index["default"].string),
|
159
171
|
/**
|
160
172
|
* The main title of the tearsheet, displayed in the header area.
|
161
173
|
*/
|
@@ -81,7 +81,17 @@ interface TearsheetShellProps extends PropsWithChildren {
|
|
81
81
|
* The DOM element that the tearsheet should be rendered within. Defaults to document.body.
|
82
82
|
*/
|
83
83
|
portalTarget?: ReactNode;
|
84
|
+
/**
|
85
|
+
* Specify a CSS selector that matches the DOM element that should be
|
86
|
+
* focused when the Modal opens.
|
87
|
+
*/
|
84
88
|
selectorPrimaryFocus?: string;
|
89
|
+
/**
|
90
|
+
* Specify the CSS selectors that match the floating menus.
|
91
|
+
*
|
92
|
+
* See https://react.carbondesignsystem.com/?path=/docs/components-composedmodal--overview#focus-management
|
93
|
+
*/
|
94
|
+
selectorsFloatingMenus?: string[];
|
85
95
|
/**
|
86
96
|
* Specifies the width of the tearsheet, 'narrow' or 'wide'.
|
87
97
|
*/
|
@@ -29,7 +29,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
29
29
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
30
30
|
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
31
31
|
|
32
|
-
var _excluded = ["actions", "ariaLabel", "children", "className", "closeIconDescription", "description", "hasCloseIcon", "headerActions", "influencer", "influencerPosition", "influencerWidth", "label", "navigation", "onClose", "open", "portalTarget", "selectorPrimaryFocus", "size", "slug", "title", "verticalPosition", "launcherButtonRef"];
|
32
|
+
var _excluded = ["actions", "ariaLabel", "children", "className", "closeIconDescription", "description", "hasCloseIcon", "headerActions", "influencer", "influencerPosition", "influencerWidth", "label", "navigation", "onClose", "open", "portalTarget", "selectorPrimaryFocus", "selectorsFloatingMenus", "size", "slug", "title", "verticalPosition", "launcherButtonRef"];
|
33
33
|
|
34
34
|
// The block part of our conventional BEM class names (bc__E--M).
|
35
35
|
var bc = "".concat(settings.pkg.prefix, "--tearsheet");
|
@@ -88,6 +88,8 @@ var TearsheetShell = /*#__PURE__*/React__default["default"].forwardRef(function
|
|
88
88
|
open = _ref.open,
|
89
89
|
portalTargetIn = _ref.portalTarget,
|
90
90
|
selectorPrimaryFocus = _ref.selectorPrimaryFocus,
|
91
|
+
_ref$selectorsFloatin = _ref.selectorsFloatingMenus,
|
92
|
+
selectorsFloatingMenus = _ref$selectorsFloatin === void 0 ? [] : _ref$selectorsFloatin,
|
91
93
|
size = _ref.size,
|
92
94
|
slug = _ref.slug,
|
93
95
|
title = _ref.title,
|
@@ -258,7 +260,7 @@ var TearsheetShell = /*#__PURE__*/React__default["default"].forwardRef(function
|
|
258
260
|
onKeyDown: keyDownListener,
|
259
261
|
preventCloseOnClickOutside: !isPassive,
|
260
262
|
ref: modalRef,
|
261
|
-
selectorsFloatingMenus: [".".concat(carbonPrefix, "--overflow-menu-options"), ".".concat(carbonPrefix, "--tooltip"), '.flatpickr-calendar', ".".concat(bc, "__container")],
|
263
|
+
selectorsFloatingMenus: [".".concat(carbonPrefix, "--overflow-menu-options"), ".".concat(carbonPrefix, "--tooltip"), '.flatpickr-calendar', ".".concat(bc, "__container")].concat(_rollupPluginBabelHelpers.toConsumableArray(selectorsFloatingMenus)),
|
262
264
|
size: "sm"
|
263
265
|
}), includeHeader && /*#__PURE__*/React__default["default"].createElement(react.ModalHeader, {
|
264
266
|
className: cx__default["default"]("".concat(bc, "__header"), _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(bc, "__header--with-close-icon"), effectiveHasCloseIcon), "".concat(bc, "__header--with-nav"), navigation)),
|
@@ -454,6 +456,18 @@ TearsheetShell.propTypes = _rollupPluginBabelHelpers.objectSpread2({
|
|
454
456
|
*/
|
455
457
|
/**@ts-ignore*/
|
456
458
|
portalTarget: portalType,
|
459
|
+
/**
|
460
|
+
* Specify a CSS selector that matches the DOM element that should be
|
461
|
+
* focused when the Modal opens.
|
462
|
+
*/
|
463
|
+
selectorPrimaryFocus: index["default"].string,
|
464
|
+
/**
|
465
|
+
* Specify the CSS selectors that match the floating menus.
|
466
|
+
*
|
467
|
+
* See https://react.carbondesignsystem.com/?path=/docs/components-composedmodal--overview#focus-management
|
468
|
+
*/
|
469
|
+
/**@ts-ignore*/
|
470
|
+
selectorsFloatingMenus: index["default"].arrayOf(index["default"].string),
|
457
471
|
/**
|
458
472
|
* Specifies the width of the tearsheet, 'narrow' or 'wide'.
|
459
473
|
*/
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@carbon/ibm-products",
|
3
3
|
"description": "Carbon for IBM Products",
|
4
|
-
"version": "2.43.2-canary.
|
4
|
+
"version": "2.43.2-canary.22+cf2bb2369",
|
5
5
|
"license": "Apache-2.0",
|
6
6
|
"main": "lib/index.js",
|
7
7
|
"module": "es/index.js",
|
@@ -88,7 +88,7 @@
|
|
88
88
|
"rimraf": "^5.0.5",
|
89
89
|
"rollup": "^2.79.1",
|
90
90
|
"rollup-plugin-strip-banner": "^3.0.0",
|
91
|
-
"sass": "^1.
|
91
|
+
"sass": "^1.77.2",
|
92
92
|
"typescript-config-carbon": "^0.2.1",
|
93
93
|
"yargs": "^17.7.2"
|
94
94
|
},
|
@@ -119,5 +119,5 @@
|
|
119
119
|
"react": "^16.8.6 || ^17.0.1 || ^18.2.0",
|
120
120
|
"react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
|
121
121
|
},
|
122
|
-
"gitHead": "
|
122
|
+
"gitHead": "cf2bb2369c44e9a92022c6d73ba8ac50d338f336"
|
123
123
|
}
|