@carbon/react 1.76.0 → 1.77.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.
Files changed (188) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +810 -775
  2. package/es/components/Button/Button.d.ts +9 -1
  3. package/es/components/Button/Button.js +8 -0
  4. package/es/components/CodeSnippet/CodeSnippet.d.ts +2 -2
  5. package/es/components/ComboBox/ComboBox.d.ts +2 -2
  6. package/es/components/ComboBox/ComboBox.js +34 -12
  7. package/es/components/ComboButton/index.js +1 -2
  8. package/es/components/ComposedModal/ComposedModal.js +1 -1
  9. package/es/components/ContentSwitcher/index.d.ts +0 -1
  10. package/es/components/ContextMenu/useContextMenu.d.ts +0 -1
  11. package/es/components/Copy/Copy.js +1 -1
  12. package/es/components/DataTable/DataTable.d.ts +12 -20
  13. package/es/components/DataTable/DataTable.js +1 -9
  14. package/es/components/DataTable/Table.js +1 -1
  15. package/es/components/DataTable/TableActionList.d.ts +1 -1
  16. package/es/components/DataTable/TableBody.js +1 -1
  17. package/es/components/DataTable/TableContext.d.ts +0 -1
  18. package/es/components/DataTable/TableHead.d.ts +1 -1
  19. package/es/components/DataTable/TableToolbarContent.d.ts +1 -1
  20. package/es/components/DatePicker/plugins/fixEventsPlugin.js +2 -2
  21. package/es/components/DatePickerInput/DatePickerInput.js +1 -1
  22. package/es/components/Dropdown/Dropdown.js +1 -2
  23. package/es/components/FluidForm/FormContext.d.ts +0 -1
  24. package/es/components/Grid/CSSGrid.js +1 -1
  25. package/es/components/Grid/Grid.js +1 -1
  26. package/es/components/Grid/GridTypes.d.ts +0 -1
  27. package/es/components/Heading/index.d.ts +1 -1
  28. package/es/components/IconButton/index.d.ts +17 -1
  29. package/es/components/IconButton/index.js +20 -1
  30. package/es/components/InlineCheckbox/InlineCheckbox.js +1 -1
  31. package/es/components/InlineLoading/InlineLoading.d.ts +1 -1
  32. package/es/components/InlineLoading/InlineLoading.js +21 -7
  33. package/es/components/Menu/Menu.js +2 -2
  34. package/es/components/Menu/MenuContext.d.ts +1 -1
  35. package/es/components/MenuButton/index.d.ts +1 -1
  36. package/es/components/MenuButton/index.js +1 -2
  37. package/es/components/Modal/Modal.js +1 -1
  38. package/es/components/Modal/next/index.d.ts +175 -0
  39. package/es/components/MultiSelect/FilterableMultiSelect.d.ts +2 -2
  40. package/es/components/MultiSelect/FilterableMultiSelect.js +12 -5
  41. package/es/components/MultiSelect/MultiSelect.d.ts +1 -1
  42. package/es/components/MultiSelect/MultiSelect.js +1 -2
  43. package/es/components/Pagination/Pagination.js +2 -2
  44. package/es/components/Popover/index.js +2 -3
  45. package/es/components/PrimaryButton/PrimaryButton.d.ts +1 -1
  46. package/es/components/RadioTile/RadioTile.d.ts +1 -1
  47. package/es/components/SecondaryButton/SecondaryButton.d.ts +1 -1
  48. package/es/components/Slider/Slider.d.ts +1 -1
  49. package/es/components/Slider/Slider.js +1 -1
  50. package/es/components/Slider/index.d.ts +0 -1
  51. package/es/components/Tabs/Tabs.d.ts +3 -3
  52. package/es/components/Tabs/Tabs.js +4 -4
  53. package/es/components/Tag/DismissibleTag.d.ts +2 -2
  54. package/es/components/Tag/OperationalTag.d.ts +1 -1
  55. package/es/components/Tag/SelectableTag.d.ts +2 -2
  56. package/es/components/Text/index.d.ts +2 -2
  57. package/es/components/TextInput/PasswordInput.d.ts +1 -1
  58. package/es/components/Theme/index.d.ts +1 -1
  59. package/es/components/Tile/Tile.d.ts +1 -1
  60. package/es/components/Tile/Tile.js +1 -1
  61. package/es/components/Toggletip/index.d.ts +3 -3
  62. package/es/components/Toggletip/index.js +5 -4
  63. package/es/components/Tooltip/Tooltip.d.ts +17 -1
  64. package/es/components/Tooltip/Tooltip.js +12 -2
  65. package/es/components/TreeView/TreeNode.d.ts +27 -19
  66. package/es/components/TreeView/TreeNode.js +100 -31
  67. package/es/components/TreeView/TreeView.js +1 -1
  68. package/es/components/UIShell/Content.d.ts +9 -9
  69. package/es/components/UIShell/HeaderGlobalBar.d.ts +1 -1
  70. package/es/components/UIShell/HeaderMenu.d.ts +69 -25
  71. package/es/components/UIShell/HeaderMenuButton.d.ts +69 -27
  72. package/es/components/UIShell/HeaderMenuItem.d.ts +4 -3
  73. package/es/components/UIShell/HeaderMenuItem.js +1 -1
  74. package/es/components/UIShell/HeaderName.js +1 -1
  75. package/es/components/UIShell/HeaderNavigation.d.ts +69 -25
  76. package/es/components/UIShell/Link.d.ts +14 -11
  77. package/es/components/UIShell/Link.js +5 -6
  78. package/es/components/UIShell/SideNav.js +3 -3
  79. package/es/components/UIShell/SideNavLink.js +1 -1
  80. package/es/components/UIShell/SideNavMenuItem.d.ts +51 -3
  81. package/es/components/UIShell/SideNavMenuItem.js +6 -6
  82. package/es/components/UIShell/SwitcherItem.d.ts +2 -2
  83. package/es/components/UIShell/SwitcherItem.js +1 -1
  84. package/es/internal/PolymorphicProps.d.ts +0 -1
  85. package/es/internal/Selection.d.ts +38 -0
  86. package/es/internal/Selection.js +26 -113
  87. package/es/node_modules/es-toolkit/dist/compat/function/debounce.mjs.js +55 -0
  88. package/es/node_modules/es-toolkit/dist/compat/function/throttle.mjs.js +23 -0
  89. package/es/node_modules/es-toolkit/dist/function/debounce.mjs.js +70 -0
  90. package/es/tools/wrapComponent.d.ts +1 -1
  91. package/lib/components/Button/Button.d.ts +9 -1
  92. package/lib/components/Button/Button.js +8 -0
  93. package/lib/components/CodeSnippet/CodeSnippet.d.ts +2 -2
  94. package/lib/components/ComboBox/ComboBox.d.ts +2 -2
  95. package/lib/components/ComboBox/ComboBox.js +34 -12
  96. package/lib/components/ComboButton/index.js +1 -2
  97. package/lib/components/ComposedModal/ComposedModal.js +2 -2
  98. package/lib/components/ContentSwitcher/index.d.ts +0 -1
  99. package/lib/components/ContextMenu/useContextMenu.d.ts +0 -1
  100. package/lib/components/Copy/Copy.js +2 -2
  101. package/lib/components/DataTable/DataTable.d.ts +12 -20
  102. package/lib/components/DataTable/DataTable.js +1 -9
  103. package/lib/components/DataTable/Table.js +3 -3
  104. package/lib/components/DataTable/TableActionList.d.ts +1 -1
  105. package/lib/components/DataTable/TableBody.js +1 -1
  106. package/lib/components/DataTable/TableContext.d.ts +0 -1
  107. package/lib/components/DataTable/TableHead.d.ts +1 -1
  108. package/lib/components/DataTable/TableToolbarContent.d.ts +1 -1
  109. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +2 -2
  110. package/lib/components/DatePickerInput/DatePickerInput.js +1 -1
  111. package/lib/components/Dropdown/Dropdown.js +1 -2
  112. package/lib/components/FluidForm/FormContext.d.ts +0 -1
  113. package/lib/components/Grid/CSSGrid.js +1 -1
  114. package/lib/components/Grid/Grid.js +1 -1
  115. package/lib/components/Grid/GridTypes.d.ts +0 -1
  116. package/lib/components/Heading/index.d.ts +1 -1
  117. package/lib/components/IconButton/index.d.ts +17 -1
  118. package/lib/components/IconButton/index.js +20 -1
  119. package/lib/components/InlineCheckbox/InlineCheckbox.js +1 -1
  120. package/lib/components/InlineLoading/InlineLoading.d.ts +1 -1
  121. package/lib/components/InlineLoading/InlineLoading.js +20 -6
  122. package/lib/components/Menu/Menu.js +2 -2
  123. package/lib/components/Menu/MenuContext.d.ts +1 -1
  124. package/lib/components/MenuButton/index.d.ts +1 -1
  125. package/lib/components/MenuButton/index.js +1 -2
  126. package/lib/components/Modal/Modal.js +2 -2
  127. package/lib/components/Modal/next/index.d.ts +175 -0
  128. package/lib/components/MultiSelect/FilterableMultiSelect.d.ts +2 -2
  129. package/lib/components/MultiSelect/FilterableMultiSelect.js +11 -4
  130. package/lib/components/MultiSelect/MultiSelect.d.ts +1 -1
  131. package/lib/components/MultiSelect/MultiSelect.js +1 -2
  132. package/lib/components/Pagination/Pagination.js +3 -2
  133. package/lib/components/Popover/index.js +2 -3
  134. package/lib/components/PrimaryButton/PrimaryButton.d.ts +1 -1
  135. package/lib/components/RadioTile/RadioTile.d.ts +1 -1
  136. package/lib/components/SecondaryButton/SecondaryButton.d.ts +1 -1
  137. package/lib/components/Slider/Slider.d.ts +1 -1
  138. package/lib/components/Slider/Slider.js +2 -2
  139. package/lib/components/Slider/index.d.ts +0 -1
  140. package/lib/components/Tabs/Tabs.d.ts +3 -3
  141. package/lib/components/Tabs/Tabs.js +6 -6
  142. package/lib/components/Tag/DismissibleTag.d.ts +2 -2
  143. package/lib/components/Tag/OperationalTag.d.ts +1 -1
  144. package/lib/components/Tag/SelectableTag.d.ts +2 -2
  145. package/lib/components/Text/index.d.ts +2 -2
  146. package/lib/components/TextInput/PasswordInput.d.ts +1 -1
  147. package/lib/components/Theme/index.d.ts +1 -1
  148. package/lib/components/Tile/Tile.d.ts +1 -1
  149. package/lib/components/Tile/Tile.js +1 -1
  150. package/lib/components/Toggletip/index.d.ts +3 -3
  151. package/lib/components/Toggletip/index.js +5 -4
  152. package/lib/components/Tooltip/Tooltip.d.ts +17 -1
  153. package/lib/components/Tooltip/Tooltip.js +12 -2
  154. package/lib/components/TreeView/TreeNode.d.ts +27 -19
  155. package/lib/components/TreeView/TreeNode.js +100 -31
  156. package/lib/components/TreeView/TreeView.js +1 -1
  157. package/lib/components/UIShell/Content.d.ts +9 -9
  158. package/lib/components/UIShell/HeaderGlobalBar.d.ts +1 -1
  159. package/lib/components/UIShell/HeaderMenu.d.ts +69 -25
  160. package/lib/components/UIShell/HeaderMenuButton.d.ts +69 -27
  161. package/lib/components/UIShell/HeaderMenuItem.d.ts +4 -3
  162. package/lib/components/UIShell/HeaderMenuItem.js +1 -1
  163. package/lib/components/UIShell/HeaderName.js +1 -1
  164. package/lib/components/UIShell/HeaderNavigation.d.ts +69 -25
  165. package/lib/components/UIShell/Link.d.ts +14 -11
  166. package/lib/components/UIShell/Link.js +4 -4
  167. package/lib/components/UIShell/SideNav.js +3 -3
  168. package/lib/components/UIShell/SideNavLink.js +1 -1
  169. package/lib/components/UIShell/SideNavMenuItem.d.ts +51 -3
  170. package/lib/components/UIShell/SideNavMenuItem.js +6 -6
  171. package/lib/components/UIShell/SwitcherItem.d.ts +2 -2
  172. package/lib/components/UIShell/SwitcherItem.js +1 -1
  173. package/lib/internal/PolymorphicProps.d.ts +0 -1
  174. package/lib/internal/Selection.d.ts +38 -0
  175. package/lib/internal/Selection.js +24 -114
  176. package/lib/node_modules/es-toolkit/dist/compat/function/debounce.mjs.js +59 -0
  177. package/lib/node_modules/es-toolkit/dist/compat/function/throttle.mjs.js +27 -0
  178. package/lib/node_modules/es-toolkit/dist/function/debounce.mjs.js +74 -0
  179. package/lib/tools/wrapComponent.d.ts +1 -1
  180. package/package.json +10 -9
  181. package/es/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js +0 -896
  182. package/es/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js +0 -76
  183. package/es/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js +0 -139
  184. package/es/tools/array.js +0 -29
  185. package/lib/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js +0 -909
  186. package/lib/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js +0 -80
  187. package/lib/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js +0 -163
  188. package/lib/tools/array.js +0 -33
@@ -1,80 +0,0 @@
1
- /**
2
- * Copyright IBM Corp. 2016, 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
-
8
- 'use strict';
9
-
10
- Object.defineProperty(exports, '__esModule', { value: true });
11
-
12
- var floatingUi_core = require('../../core/dist/floating-ui.core.mjs.js');
13
-
14
- /**
15
- * Modifies the placement by translating the floating element along the
16
- * specified axes.
17
- * A number (shorthand for `mainAxis` or distance), or an axes configuration
18
- * object may be passed.
19
- * @see https://floating-ui.com/docs/offset
20
- */
21
- floatingUi_core.offset;
22
-
23
- /**
24
- * Optimizes the visibility of the floating element by choosing the placement
25
- * that has the most space available automatically, without needing to specify a
26
- * preferred placement. Alternative to `flip`.
27
- * @see https://floating-ui.com/docs/autoPlacement
28
- */
29
- floatingUi_core.autoPlacement;
30
-
31
- /**
32
- * Optimizes the visibility of the floating element by shifting it in order to
33
- * keep it in view when it will overflow the clipping boundary.
34
- * @see https://floating-ui.com/docs/shift
35
- */
36
- floatingUi_core.shift;
37
-
38
- /**
39
- * Optimizes the visibility of the floating element by flipping the `placement`
40
- * in order to keep it in view when the preferred placement(s) will overflow the
41
- * clipping boundary. Alternative to `autoPlacement`.
42
- * @see https://floating-ui.com/docs/flip
43
- */
44
- floatingUi_core.flip;
45
-
46
- /**
47
- * Provides data that allows you to change the size of the floating element —
48
- * for instance, prevent it from overflowing the clipping boundary or match the
49
- * width of the reference element.
50
- * @see https://floating-ui.com/docs/size
51
- */
52
- floatingUi_core.size;
53
-
54
- /**
55
- * Provides data to hide the floating element in applicable situations, such as
56
- * when it is not in the same clipping context as the reference element.
57
- * @see https://floating-ui.com/docs/hide
58
- */
59
- const hide = floatingUi_core.hide;
60
-
61
- /**
62
- * Provides data to position an inner element of the floating element so that it
63
- * appears centered to the reference element.
64
- * @see https://floating-ui.com/docs/arrow
65
- */
66
- floatingUi_core.arrow;
67
-
68
- /**
69
- * Provides improved positioning for inline reference elements that can span
70
- * over multiple lines, such as hyperlinks or range selections.
71
- * @see https://floating-ui.com/docs/inline
72
- */
73
- floatingUi_core.inline;
74
-
75
- /**
76
- * Built-in `limiter` that will stop `shift()` at a certain point.
77
- */
78
- floatingUi_core.limitShift;
79
-
80
- exports.hide = hide;
@@ -1,163 +0,0 @@
1
- /**
2
- * Copyright IBM Corp. 2016, 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
-
8
- 'use strict';
9
-
10
- Object.defineProperty(exports, '__esModule', { value: true });
11
-
12
- /**
13
- * Custom positioning reference element.
14
- * @see https://floating-ui.com/docs/virtual-elements
15
- */
16
-
17
- const sides = ['top', 'right', 'bottom', 'left'];
18
- const alignments = ['start', 'end'];
19
- const placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + "-" + alignments[0], side + "-" + alignments[1]), []);
20
- const min = Math.min;
21
- const max = Math.max;
22
- const oppositeSideMap = {
23
- left: 'right',
24
- right: 'left',
25
- bottom: 'top',
26
- top: 'bottom'
27
- };
28
- const oppositeAlignmentMap = {
29
- start: 'end',
30
- end: 'start'
31
- };
32
- function clamp(start, value, end) {
33
- return max(start, min(value, end));
34
- }
35
- function evaluate(value, param) {
36
- return typeof value === 'function' ? value(param) : value;
37
- }
38
- function getSide(placement) {
39
- return placement.split('-')[0];
40
- }
41
- function getAlignment(placement) {
42
- return placement.split('-')[1];
43
- }
44
- function getOppositeAxis(axis) {
45
- return axis === 'x' ? 'y' : 'x';
46
- }
47
- function getAxisLength(axis) {
48
- return axis === 'y' ? 'height' : 'width';
49
- }
50
- function getSideAxis(placement) {
51
- return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
52
- }
53
- function getAlignmentAxis(placement) {
54
- return getOppositeAxis(getSideAxis(placement));
55
- }
56
- function getAlignmentSides(placement, rects, rtl) {
57
- if (rtl === void 0) {
58
- rtl = false;
59
- }
60
- const alignment = getAlignment(placement);
61
- const alignmentAxis = getAlignmentAxis(placement);
62
- const length = getAxisLength(alignmentAxis);
63
- let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
64
- if (rects.reference[length] > rects.floating[length]) {
65
- mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
66
- }
67
- return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
68
- }
69
- function getExpandedPlacements(placement) {
70
- const oppositePlacement = getOppositePlacement(placement);
71
- return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
72
- }
73
- function getOppositeAlignmentPlacement(placement) {
74
- return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
75
- }
76
- function getSideList(side, isStart, rtl) {
77
- const lr = ['left', 'right'];
78
- const rl = ['right', 'left'];
79
- const tb = ['top', 'bottom'];
80
- const bt = ['bottom', 'top'];
81
- switch (side) {
82
- case 'top':
83
- case 'bottom':
84
- if (rtl) return isStart ? rl : lr;
85
- return isStart ? lr : rl;
86
- case 'left':
87
- case 'right':
88
- return isStart ? tb : bt;
89
- default:
90
- return [];
91
- }
92
- }
93
- function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
94
- const alignment = getAlignment(placement);
95
- let list = getSideList(getSide(placement), direction === 'start', rtl);
96
- if (alignment) {
97
- list = list.map(side => side + "-" + alignment);
98
- if (flipAlignment) {
99
- list = list.concat(list.map(getOppositeAlignmentPlacement));
100
- }
101
- }
102
- return list;
103
- }
104
- function getOppositePlacement(placement) {
105
- return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
106
- }
107
- function expandPaddingObject(padding) {
108
- return {
109
- top: 0,
110
- right: 0,
111
- bottom: 0,
112
- left: 0,
113
- ...padding
114
- };
115
- }
116
- function getPaddingObject(padding) {
117
- return typeof padding !== 'number' ? expandPaddingObject(padding) : {
118
- top: padding,
119
- right: padding,
120
- bottom: padding,
121
- left: padding
122
- };
123
- }
124
- function rectToClientRect(rect) {
125
- const {
126
- x,
127
- y,
128
- width,
129
- height
130
- } = rect;
131
- return {
132
- width,
133
- height,
134
- top: y,
135
- left: x,
136
- right: x + width,
137
- bottom: y + height,
138
- x,
139
- y
140
- };
141
- }
142
-
143
- exports.alignments = alignments;
144
- exports.clamp = clamp;
145
- exports.evaluate = evaluate;
146
- exports.expandPaddingObject = expandPaddingObject;
147
- exports.getAlignment = getAlignment;
148
- exports.getAlignmentAxis = getAlignmentAxis;
149
- exports.getAlignmentSides = getAlignmentSides;
150
- exports.getAxisLength = getAxisLength;
151
- exports.getExpandedPlacements = getExpandedPlacements;
152
- exports.getOppositeAlignmentPlacement = getOppositeAlignmentPlacement;
153
- exports.getOppositeAxis = getOppositeAxis;
154
- exports.getOppositeAxisPlacements = getOppositeAxisPlacements;
155
- exports.getOppositePlacement = getOppositePlacement;
156
- exports.getPaddingObject = getPaddingObject;
157
- exports.getSide = getSide;
158
- exports.getSideAxis = getSideAxis;
159
- exports.max = max;
160
- exports.min = min;
161
- exports.placements = placements;
162
- exports.rectToClientRect = rectToClientRect;
163
- exports.sides = sides;
@@ -1,33 +0,0 @@
1
- /**
2
- * Copyright IBM Corp. 2016, 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
-
8
- 'use strict';
9
-
10
- Object.defineProperty(exports, '__esModule', { value: true });
11
-
12
- /**
13
- * Shallow compare two arrays for equality
14
- * @param {Array} arr1 the first array
15
- * @param {Array} arr2 the second array
16
- * @returns {boolean} true if both arrays have the same contents, otherwise false
17
- */
18
- function equals(arr1, arr2) {
19
- if (!Array.isArray(arr1) || !Array.isArray(arr2) || arr1.length !== arr2.length) {
20
- return false;
21
- }
22
- if (arr1 === arr2) {
23
- return true;
24
- }
25
- for (let i = 0; i < arr1.length; i++) {
26
- if (arr1[i] !== arr2[i]) {
27
- return false;
28
- }
29
- }
30
- return true;
31
- }
32
-
33
- exports.equals = equals;