@carbon/react 1.87.1-rc.0 → 1.88.0
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/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +792 -792
- package/es/components/AILabel/index.d.ts +4 -3
- package/es/components/AILabel/index.js +3 -1
- package/es/components/Button/Button.js +3 -1
- package/es/components/CodeSnippet/CodeSnippet.d.ts +9 -5
- package/es/components/CodeSnippet/CodeSnippet.js +3 -1
- package/es/components/ComboBox/ComboBox.d.ts +2 -1
- package/es/components/ComboBox/ComboBox.js +2 -1
- package/es/components/ContentSwitcher/ContentSwitcher.d.ts +1 -6
- package/es/components/Copy/Copy.d.ts +9 -5
- package/es/components/Copy/Copy.js +3 -1
- package/es/components/CopyButton/CopyButton.d.ts +9 -5
- package/es/components/CopyButton/CopyButton.js +3 -1
- package/es/components/Dropdown/Dropdown.d.ts +4 -1
- package/es/components/Dropdown/Dropdown.js +4 -1
- package/es/components/FileUploader/FileUploaderButton.js +6 -3
- package/es/components/IconButton/index.d.ts +6 -4
- package/es/components/IconButton/index.js +3 -4
- package/es/components/MultiSelect/FilterableMultiSelect.d.ts +5 -2
- package/es/components/MultiSelect/FilterableMultiSelect.js +101 -22
- package/es/components/MultiSelect/MultiSelect.d.ts +2 -1
- package/es/components/MultiSelect/MultiSelect.js +2 -1
- package/es/components/Notification/Notification.d.ts +9 -1
- package/es/components/Notification/Notification.js +9 -1
- package/es/components/NumberInput/NumberInput.d.ts +4 -0
- package/es/components/NumberInput/NumberInput.js +12 -7
- package/es/components/OverflowMenu/next/index.d.ts +6 -2
- package/es/components/OverflowMenu/next/index.js +4 -1
- package/es/components/Popover/index.d.ts +4 -1
- package/es/components/Popover/index.js +12 -2
- package/es/components/Switch/IconSwitch.d.ts +44 -2
- package/es/components/Switch/IconSwitch.js +34 -27
- package/es/components/Switch/Switch.js +1 -0
- package/es/components/Toggletip/index.d.ts +4 -1
- package/es/components/Toggletip/index.js +4 -1
- package/es/components/Tooltip/DefinitionTooltip.d.ts +4 -2
- package/es/components/Tooltip/DefinitionTooltip.js +3 -1
- package/es/components/Tooltip/Tooltip.d.ts +0 -3
- package/es/components/Tooltip/Tooltip.js +2 -10
- package/es/components/TreeView/TreeContext.d.ts +1 -2
- package/es/components/TreeView/TreeNode.d.ts +12 -8
- package/es/components/TreeView/TreeNode.js +3 -9
- package/es/components/TreeView/TreeView.d.ts +7 -5
- package/es/components/TreeView/TreeView.js +20 -22
- package/es/components/UIShell/HeaderPanel.js +1 -1
- package/es/internal/Selection.d.ts +1 -0
- package/es/internal/Selection.js +10 -0
- package/lib/components/AILabel/index.d.ts +4 -3
- package/lib/components/AILabel/index.js +3 -1
- package/lib/components/Button/Button.js +3 -1
- package/lib/components/CodeSnippet/CodeSnippet.d.ts +9 -5
- package/lib/components/CodeSnippet/CodeSnippet.js +3 -1
- package/lib/components/ComboBox/ComboBox.d.ts +2 -1
- package/lib/components/ComboBox/ComboBox.js +2 -1
- package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +1 -6
- package/lib/components/Copy/Copy.d.ts +9 -5
- package/lib/components/Copy/Copy.js +3 -1
- package/lib/components/CopyButton/CopyButton.d.ts +9 -5
- package/lib/components/CopyButton/CopyButton.js +3 -1
- package/lib/components/Dropdown/Dropdown.d.ts +4 -1
- package/lib/components/Dropdown/Dropdown.js +4 -1
- package/lib/components/FileUploader/FileUploaderButton.js +6 -3
- package/lib/components/IconButton/index.d.ts +6 -4
- package/lib/components/IconButton/index.js +3 -4
- package/lib/components/MultiSelect/FilterableMultiSelect.d.ts +5 -2
- package/lib/components/MultiSelect/FilterableMultiSelect.js +100 -21
- package/lib/components/MultiSelect/MultiSelect.d.ts +2 -1
- package/lib/components/MultiSelect/MultiSelect.js +2 -1
- package/lib/components/Notification/Notification.d.ts +9 -1
- package/lib/components/Notification/Notification.js +9 -1
- package/lib/components/NumberInput/NumberInput.d.ts +4 -0
- package/lib/components/NumberInput/NumberInput.js +12 -7
- package/lib/components/OverflowMenu/next/index.d.ts +6 -2
- package/lib/components/OverflowMenu/next/index.js +4 -1
- package/lib/components/Popover/index.d.ts +4 -1
- package/lib/components/Popover/index.js +12 -2
- package/lib/components/Switch/IconSwitch.d.ts +44 -2
- package/lib/components/Switch/IconSwitch.js +35 -28
- package/lib/components/Switch/Switch.js +1 -0
- package/lib/components/Toggletip/index.d.ts +4 -1
- package/lib/components/Toggletip/index.js +4 -1
- package/lib/components/Tooltip/DefinitionTooltip.d.ts +4 -2
- package/lib/components/Tooltip/DefinitionTooltip.js +3 -1
- package/lib/components/Tooltip/Tooltip.d.ts +0 -3
- package/lib/components/Tooltip/Tooltip.js +2 -10
- package/lib/components/TreeView/TreeContext.d.ts +1 -2
- package/lib/components/TreeView/TreeNode.d.ts +12 -8
- package/lib/components/TreeView/TreeNode.js +3 -9
- package/lib/components/TreeView/TreeView.d.ts +7 -5
- package/lib/components/TreeView/TreeView.js +20 -22
- package/lib/components/UIShell/HeaderPanel.js +2 -2
- package/lib/internal/Selection.d.ts +1 -0
- package/lib/internal/Selection.js +10 -0
- package/package.json +7 -7
- package/telemetry.yml +2 -9
|
@@ -49,11 +49,7 @@ const TreeView = ({
|
|
|
49
49
|
const treeWalker = React.useRef(null);
|
|
50
50
|
const controllableSelectionState = useControllableState.useControllableState({
|
|
51
51
|
value: preselected,
|
|
52
|
-
onChange:
|
|
53
|
-
onSelect?.(undefined, {
|
|
54
|
-
activeNodeId: newSelected[0]
|
|
55
|
-
});
|
|
56
|
-
},
|
|
52
|
+
onChange: onSelect,
|
|
57
53
|
defaultValue: []
|
|
58
54
|
});
|
|
59
55
|
const uncontrollableSelectionState = React.useState(preselected ?? []);
|
|
@@ -70,25 +66,27 @@ const TreeView = ({
|
|
|
70
66
|
item.tabIndex = -1;
|
|
71
67
|
});
|
|
72
68
|
}
|
|
73
|
-
function handleTreeSelect(event, node
|
|
69
|
+
function handleTreeSelect(event, node) {
|
|
74
70
|
const nodeId = node.id;
|
|
75
|
-
if (
|
|
76
|
-
if (
|
|
77
|
-
|
|
71
|
+
if (nodeId) {
|
|
72
|
+
if (multiselect && (event.metaKey || event.ctrlKey)) {
|
|
73
|
+
if (!selected.includes(nodeId)) {
|
|
74
|
+
setSelected(selected.concat(nodeId));
|
|
75
|
+
} else {
|
|
76
|
+
setSelected(selected.filter(selectedId => selectedId !== nodeId));
|
|
77
|
+
}
|
|
78
|
+
if (!enableTreeviewControllable) {
|
|
79
|
+
onSelect?.(event, node);
|
|
80
|
+
}
|
|
78
81
|
} else {
|
|
79
|
-
setSelected(
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
if (!enableTreeviewControllable) {
|
|
88
|
-
onSelect?.(event, {
|
|
89
|
-
activeNodeId: nodeId,
|
|
90
|
-
...node
|
|
91
|
-
});
|
|
82
|
+
setSelected([nodeId]);
|
|
83
|
+
setActive(nodeId);
|
|
84
|
+
if (!enableTreeviewControllable) {
|
|
85
|
+
onSelect?.(event, {
|
|
86
|
+
activeNodeId: nodeId,
|
|
87
|
+
...node
|
|
88
|
+
});
|
|
89
|
+
}
|
|
92
90
|
}
|
|
93
91
|
}
|
|
94
92
|
}
|
|
@@ -19,14 +19,14 @@ var match = require('../../internal/keyboard/match.js');
|
|
|
19
19
|
var useEvent = require('../../internal/useEvent.js');
|
|
20
20
|
var useMergedRefs = require('../../internal/useMergedRefs.js');
|
|
21
21
|
var Switcher = require('./Switcher.js');
|
|
22
|
+
var noopFn = require('../../internal/noopFn.js');
|
|
22
23
|
|
|
23
|
-
const noopFn = () => {};
|
|
24
24
|
const HeaderPanel = /*#__PURE__*/React.forwardRef(function HeaderPanel({
|
|
25
25
|
children,
|
|
26
26
|
className: customClassName,
|
|
27
27
|
expanded,
|
|
28
28
|
addFocusListeners = true,
|
|
29
|
-
onHeaderPanelFocus = noopFn,
|
|
29
|
+
onHeaderPanelFocus = noopFn.noopFn,
|
|
30
30
|
href,
|
|
31
31
|
...rest
|
|
32
32
|
}, ref) {
|
|
@@ -18,6 +18,7 @@ interface UseSelectionProps<ItemType> {
|
|
|
18
18
|
export declare const useSelection: <ItemType>({ disabled, onChange, initialSelectedItems, selectedItems: controlledItems, selectAll, filteredItems, }: UseSelectionProps<ItemType>) => {
|
|
19
19
|
clearSelection: () => void;
|
|
20
20
|
onItemChange: (item: ItemType) => void;
|
|
21
|
+
toggleAll: (items: ItemType[]) => void;
|
|
21
22
|
selectedItems: ItemType[];
|
|
22
23
|
};
|
|
23
24
|
interface SelectionRenderProps<ItemType> {
|
|
@@ -92,6 +92,15 @@ const useSelection = ({
|
|
|
92
92
|
selectedItems: []
|
|
93
93
|
});
|
|
94
94
|
}, [disabled, isControlled]);
|
|
95
|
+
const toggleAll = React.useCallback(items => {
|
|
96
|
+
callOnChangeHandler({
|
|
97
|
+
isControlled,
|
|
98
|
+
isMounted: isMounted.current,
|
|
99
|
+
onChangeHandlerControlled: savedOnChange.current,
|
|
100
|
+
onChangeHandlerUncontrolled: setUncontrolledItems,
|
|
101
|
+
selectedItems: items
|
|
102
|
+
});
|
|
103
|
+
}, [isControlled]);
|
|
95
104
|
React.useEffect(() => {
|
|
96
105
|
savedOnChange.current = onChange;
|
|
97
106
|
}, [onChange]);
|
|
@@ -111,6 +120,7 @@ const useSelection = ({
|
|
|
111
120
|
return {
|
|
112
121
|
clearSelection,
|
|
113
122
|
onItemChange,
|
|
123
|
+
toggleAll,
|
|
114
124
|
selectedItems
|
|
115
125
|
};
|
|
116
126
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carbon/react",
|
|
3
3
|
"description": "React components for the Carbon Design System",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.88.0",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"types": "lib/index.d.ts",
|
|
@@ -52,10 +52,10 @@
|
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@babel/runtime": "^7.27.3",
|
|
55
|
-
"@carbon/feature-flags": "^0.
|
|
56
|
-
"@carbon/icons-react": "^11.
|
|
57
|
-
"@carbon/layout": "^11.
|
|
58
|
-
"@carbon/styles": "^1.
|
|
55
|
+
"@carbon/feature-flags": "^0.29.0",
|
|
56
|
+
"@carbon/icons-react": "^11.64.0",
|
|
57
|
+
"@carbon/layout": "^11.38.0",
|
|
58
|
+
"@carbon/styles": "^1.87.0",
|
|
59
59
|
"@carbon/utilities": "^0.7.0",
|
|
60
60
|
"@floating-ui/react": "^0.27.4",
|
|
61
61
|
"@ibm/telemetry-js": "^1.5.0",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"@babel/preset-react": "^7.27.1",
|
|
81
81
|
"@babel/preset-typescript": "^7.27.1",
|
|
82
82
|
"@carbon/test-utils": "^10.36.0",
|
|
83
|
-
"@carbon/themes": "^11.
|
|
83
|
+
"@carbon/themes": "^11.57.0",
|
|
84
84
|
"@figma/code-connect": "^1.3.2",
|
|
85
85
|
"@rollup/plugin-babel": "^6.0.0",
|
|
86
86
|
"@rollup/plugin-commonjs": "^28.0.3",
|
|
@@ -139,5 +139,5 @@
|
|
|
139
139
|
"**/*.scss",
|
|
140
140
|
"**/*.css"
|
|
141
141
|
],
|
|
142
|
-
"gitHead": "
|
|
142
|
+
"gitHead": "6568a3389c2a82348c693b167b511dea66b7b269"
|
|
143
143
|
}
|
package/telemetry.yml
CHANGED
|
@@ -26,6 +26,7 @@ collect:
|
|
|
26
26
|
- autoAlign
|
|
27
27
|
- autoComplete
|
|
28
28
|
- buttonKind
|
|
29
|
+
- caption
|
|
29
30
|
- checked
|
|
30
31
|
- children
|
|
31
32
|
- className
|
|
@@ -450,6 +451,7 @@ collect:
|
|
|
450
451
|
- notificationType
|
|
451
452
|
# NumberInput
|
|
452
453
|
- hideSteppers
|
|
454
|
+
- stepStartValue
|
|
453
455
|
# OrderedList
|
|
454
456
|
- native
|
|
455
457
|
# OverflowMenuItem
|
|
@@ -601,7 +603,6 @@ collect:
|
|
|
601
603
|
- warning
|
|
602
604
|
- warningText
|
|
603
605
|
# ToastNotification
|
|
604
|
-
- caption
|
|
605
606
|
- timeout
|
|
606
607
|
# Toggle
|
|
607
608
|
- defaultToggled
|
|
@@ -850,17 +851,9 @@ collect:
|
|
|
850
851
|
- g90
|
|
851
852
|
- white
|
|
852
853
|
# General - tooltipAlignment
|
|
853
|
-
- bottom
|
|
854
|
-
- bottom-left
|
|
855
|
-
- bottom-right
|
|
856
854
|
- center
|
|
857
855
|
- end
|
|
858
|
-
- left
|
|
859
|
-
- right
|
|
860
856
|
- start
|
|
861
|
-
- top
|
|
862
|
-
- top-left
|
|
863
|
-
- top-right
|
|
864
857
|
# General - tooltipPosition
|
|
865
858
|
- bottom
|
|
866
859
|
- left
|