@carbon/react 1.30.0 → 1.31.0-rc.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 (79) hide show
  1. package/es/components/Accordion/Accordion.js +3 -1
  2. package/es/components/Button/Button.js +6 -1
  3. package/es/components/Checkbox/Checkbox.js +2 -2
  4. package/es/components/CodeSnippet/CodeSnippet.js +1 -0
  5. package/es/components/ComboButton/index.js +6 -5
  6. package/es/components/ContainedList/ContainedList.js +12 -4
  7. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +6 -1
  8. package/es/components/ContentSwitcher/ContentSwitcher.js +10 -1
  9. package/es/components/CopyButton/CopyButton.js +8 -2
  10. package/es/components/DataTableSkeleton/DataTableSkeleton.js +1 -2
  11. package/es/components/DataTableSkeleton/index.d.ts +9 -0
  12. package/es/components/FileUploader/FileUploaderButton.js +2 -1
  13. package/es/components/IconButton/index.js +10 -2
  14. package/es/components/Layout/index.js +118 -0
  15. package/es/components/ListBox/ListBoxPropTypes.d.ts +1 -1
  16. package/es/components/Menu/MenuItem.js +2 -1
  17. package/es/components/MenuButton/index.js +7 -4
  18. package/es/components/OverflowMenu/index.js +9 -1
  19. package/es/components/OverflowMenu/next/index.js +98 -0
  20. package/es/components/OverflowMenuV2/index.js +15 -73
  21. package/es/components/Tabs/Tabs.js +5 -1
  22. package/es/components/Tag/Tag.js +2 -0
  23. package/es/components/TextArea/TextArea.Skeleton.js +1 -2
  24. package/es/components/TextArea/TextArea.js +1 -2
  25. package/es/components/TextArea/index.d.ts +10 -0
  26. package/es/components/TextInput/PasswordInput.js +1 -2
  27. package/es/components/TextInput/TextInput.Skeleton.js +1 -2
  28. package/es/components/TextInput/TextInput.js +5 -4
  29. package/es/components/TextInput/index.d.ts +4 -0
  30. package/es/components/TimePicker/TimePicker.d.ts +8 -0
  31. package/es/components/TimePicker/TimePicker.js +26 -6
  32. package/es/components/Tooltip/Tooltip.js +4 -2
  33. package/es/components/UIShell/SideNav.d.ts +2 -1
  34. package/es/components/UIShell/SideNav.js +25 -7
  35. package/es/index.d.ts +21 -20
  36. package/es/index.js +28 -26
  37. package/lib/components/Accordion/Accordion.js +3 -1
  38. package/lib/components/Button/Button.js +6 -1
  39. package/lib/components/Checkbox/Checkbox.js +2 -2
  40. package/lib/components/CodeSnippet/CodeSnippet.js +1 -0
  41. package/lib/components/ComboButton/index.js +6 -5
  42. package/lib/components/ContainedList/ContainedList.js +12 -4
  43. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +6 -1
  44. package/lib/components/ContentSwitcher/ContentSwitcher.js +10 -1
  45. package/lib/components/CopyButton/CopyButton.js +8 -2
  46. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +1 -2
  47. package/lib/components/DataTableSkeleton/index.d.ts +9 -0
  48. package/lib/components/FileUploader/FileUploaderButton.js +2 -1
  49. package/lib/components/IconButton/index.js +10 -2
  50. package/lib/components/Layout/index.js +129 -0
  51. package/lib/components/ListBox/ListBoxPropTypes.d.ts +1 -1
  52. package/lib/components/Menu/MenuItem.js +2 -1
  53. package/lib/components/MenuButton/index.js +7 -4
  54. package/lib/components/OverflowMenu/index.js +13 -1
  55. package/lib/components/OverflowMenu/next/index.js +108 -0
  56. package/lib/components/OverflowMenuV2/index.js +14 -74
  57. package/lib/components/Tabs/Tabs.js +5 -1
  58. package/lib/components/Tag/Tag.js +2 -0
  59. package/lib/components/TextArea/TextArea.Skeleton.js +1 -2
  60. package/lib/components/TextArea/TextArea.js +1 -2
  61. package/lib/components/TextArea/index.d.ts +10 -0
  62. package/lib/components/TextInput/PasswordInput.js +1 -2
  63. package/lib/components/TextInput/TextInput.Skeleton.js +1 -2
  64. package/lib/components/TextInput/TextInput.js +5 -4
  65. package/lib/components/TextInput/index.d.ts +4 -0
  66. package/lib/components/TimePicker/TimePicker.d.ts +8 -0
  67. package/lib/components/TimePicker/TimePicker.js +26 -6
  68. package/lib/components/Tooltip/Tooltip.js +4 -2
  69. package/lib/components/UIShell/SideNav.d.ts +2 -1
  70. package/lib/components/UIShell/SideNav.js +24 -6
  71. package/lib/index.d.ts +21 -20
  72. package/lib/index.js +88 -85
  73. package/package.json +8 -8
  74. /package/es/components/{Layout → LayoutDirection}/LayoutDirection.js +0 -0
  75. /package/es/components/{Layout → LayoutDirection}/LayoutDirectionContext.js +0 -0
  76. /package/es/components/{Layout → LayoutDirection}/useLayoutDirection.js +0 -0
  77. /package/lib/components/{Layout → LayoutDirection}/LayoutDirection.js +0 -0
  78. /package/lib/components/{Layout → LayoutDirection}/LayoutDirectionContext.js +0 -0
  79. /package/lib/components/{Layout → LayoutDirection}/useLayoutDirection.js +0 -0
package/es/index.js CHANGED
@@ -9,43 +9,48 @@ import './feature-flags.js';
9
9
  export { default as Checkbox } from './components/Checkbox/Checkbox.js';
10
10
  export { default as CheckboxSkeleton } from './components/Checkbox/Checkbox.Skeleton.js';
11
11
  export { ClassPrefix } from './components/ClassPrefix/index.js';
12
+ export { ComboButton } from './components/ComboButton/index.js';
12
13
  export { default as ContentSwitcher } from './components/ContentSwitcher/index.js';
13
14
  import './components/DataTable/index.js';
15
+ export { default as DataTableSkeleton } from './components/DataTableSkeleton/DataTableSkeleton.js';
14
16
  export { default as DatePicker } from './components/DatePicker/DatePicker.js';
15
17
  export { default as DatePickerSkeleton } from './components/DatePicker/DatePicker.Skeleton.js';
16
18
  export { default as Dropdown } from './components/Dropdown/Dropdown.js';
17
19
  export { default as DropdownSkeleton } from './components/Dropdown/Dropdown.Skeleton.js';
18
- export { default as Form } from './components/Form/Form.js';
19
20
  export { default as FluidForm } from './components/FluidForm/FluidForm.js';
20
21
  export { FormContext } from './components/FluidForm/FormContext.js';
22
+ export { default as Form } from './components/Form/Form.js';
21
23
  export { FlexGrid } from './components/Grid/FlexGrid.js';
22
24
  export { Grid } from './components/Grid/Grid.js';
23
25
  export { default as Row } from './components/Grid/Row.js';
24
26
  export { default as Column } from './components/Grid/Column.js';
25
27
  export { ColumnHang } from './components/Grid/ColumnHang.js';
28
+ export { default as IconSkeleton } from './components/Icon/Icon.Skeleton.js';
26
29
  export { IdPrefix } from './components/IdPrefix/index.js';
27
30
  export { default as ListItem } from './components/ListItem/ListItem.js';
31
+ export { MenuButton } from './components/MenuButton/index.js';
28
32
  export { default as OrderedList } from './components/OrderedList/OrderedList.js';
29
33
  export { default as OverflowMenu } from './components/OverflowMenu/index.js';
34
+ export { default as PaginationSkeleton } from './components/Pagination/Pagination.Skeleton.js';
35
+ export { default as RadioButtonSkeleton } from './components/RadioButton/RadioButton.Skeleton.js';
30
36
  export { default as Search } from './components/Search/Search.js';
31
37
  export { default as SearchSkeleton } from './components/Search/Search.Skeleton.js';
32
38
  export { default as Slider } from './components/Slider/index.js';
33
- export { default as TileGroup } from './components/TileGroup/index.js';
34
- export { Toggletip, ToggletipActions, ToggletipButton, ToggletipContent, ToggletipLabel } from './components/Toggletip/index.js';
35
- export { default as UnorderedList } from './components/UnorderedList/UnorderedList.js';
36
- export { default as PaginationSkeleton } from './components/Pagination/Pagination.Skeleton.js';
37
- export { default as RadioButtonSkeleton } from './components/RadioButton/RadioButton.Skeleton.js';
38
39
  export { default as TagSkeleton } from './components/Tag/Tag.Skeleton.js';
40
+ export { default as TextArea } from './components/TextArea/TextArea.js';
41
+ export { default as TextAreaSkeleton } from './components/TextArea/TextArea.Skeleton.js';
42
+ import './components/TextInput/index.js';
43
+ export { default as TileGroup } from './components/TileGroup/index.js';
39
44
  export { default as ToggleSkeleton } from './components/Toggle/Toggle.Skeleton.js';
40
45
  export { default as ToggleSmallSkeleton } from './components/ToggleSmall/ToggleSmall.Skeleton.js';
41
- export { default as IconSkeleton } from './components/Icon/Icon.Skeleton.js';
46
+ export { Toggletip, ToggletipActions, ToggletipButton, ToggletipContent, ToggletipLabel } from './components/Toggletip/index.js';
47
+ export { default as UnorderedList } from './components/UnorderedList/UnorderedList.js';
42
48
  export { FeatureFlags as unstable_FeatureFlags, useFeatureFlag as unstable_useFeatureFlag, useFeatureFlags as unstable_useFeatureFlags } from './components/FeatureFlags/index.js';
43
49
  export { Heading, Section } from './components/Heading/index.js';
44
50
  export { IconButton } from './components/IconButton/index.js';
45
51
  export { Layer, useLayer } from './components/Layer/index.js';
52
+ export { Layout as unstable_Layout } from './components/Layout/index.js';
46
53
  export { OverflowMenuV2 as unstable_OverflowMenuV2 } from './components/OverflowMenuV2/index.js';
47
- export { ComboButton as unstable_ComboButton } from './components/ComboButton/index.js';
48
- export { MenuButton as unstable_MenuButton } from './components/MenuButton/index.js';
49
54
  export { Popover, PopoverContent } from './components/Popover/index.js';
50
55
  export { HStack, VStack } from './components/Stack/index.js';
51
56
  export { DefinitionTooltip } from './components/Tooltip/DefinitionTooltip.js';
@@ -54,7 +59,6 @@ import './components/Text/index.js';
54
59
  export { GlobalTheme, Theme, ThemeContext, useTheme } from './components/Theme/index.js';
55
60
  export { PrefixContext, usePrefix } from './internal/usePrefix.js';
56
61
  export { useIdPrefix } from './internal/useIdPrefix.js';
57
- export { default as unstable_useContextMenu } from './components/ContextMenu/useContextMenu.js';
58
62
  export { default as unstable__FluidDatePickerSkeleton } from './components/FluidDatePicker/FluidDatePicker.Skeleton.js';
59
63
  export { default as unstable__FluidTextArea } from './components/FluidTextArea/FluidTextArea.js';
60
64
  export { default as unstable__FluidTextAreaSkeleton } from './components/FluidTextArea/FluidTextArea.Skeleton.js';
@@ -72,9 +76,11 @@ export { default as CodeSnippetSkeleton } from './components/CodeSnippet/CodeSni
72
76
  export { default as CodeSnippet } from './components/CodeSnippet/CodeSnippet.js';
73
77
  export { default as ContainedListItem } from './components/ContainedList/ContainedListItem/ContainedListItem.js';
74
78
  export { default as ContainedList } from './components/ContainedList/ContainedList.js';
79
+ export { default as useContextMenu } from './components/ContextMenu/useContextMenu.js';
75
80
  export { default as Copy } from './components/Copy/Copy.js';
76
81
  export { default as CopyButton } from './components/CopyButton/CopyButton.js';
77
82
  export { default as ErrorBoundary } from './components/ErrorBoundary/ErrorBoundary.js';
83
+ export { default as ExpandableSearch } from './components/ExpandableSearch/ExpandableSearch.js';
78
84
  export { default as Filename } from './components/FileUploader/Filename.js';
79
85
  export { default as FileUploaderSkeleton } from './components/FileUploader/FileUploader.Skeleton.js';
80
86
  export { default as FileUploaderButton } from './components/FileUploader/FileUploaderButton.js';
@@ -88,8 +94,9 @@ export { default as Loading } from './components/Loading/Loading.js';
88
94
  export { default as ModalWrapper } from './components/ModalWrapper/ModalWrapper.js';
89
95
  export { default as NumberInputSkeleton } from './components/NumberInput/NumberInput.Skeleton.js';
90
96
  export { default as ProgressIndicatorSkeleton } from './components/ProgressIndicator/ProgressIndicator.Skeleton.js';
91
- export { default as ExpandableSearch } from './components/ExpandableSearch/ExpandableSearch.js';
92
97
  export { default as TabsSkeleton } from './components/Tabs/Tabs.Skeleton.js';
98
+ export { default as TextInputSkeleton } from './components/TextInput/TextInput.Skeleton.js';
99
+ export { default as TextInput } from './components/TextInput/TextInput.js';
93
100
  export { Toggle } from './components/Toggle/Toggle.js';
94
101
  export { default as TreeNode } from './components/TreeView/TreeNode.js';
95
102
  export { default as TreeView } from './components/TreeView/TreeView.js';
@@ -118,10 +125,8 @@ export { default as unstable__FluidSelectSkeleton } from './components/FluidSele
118
125
  export { default as unstable__FluidTimePicker } from './components/FluidTimePicker/FluidTimePicker.js';
119
126
  export { default as unstable__FluidTimePickerSkeleton } from './components/FluidTimePicker/FluidTimePicker.Skeleton.js';
120
127
  export { default as unstable__FluidTimePickerSelect } from './components/FluidTimePickerSelect/FluidTimePickerSelect.js';
121
- export { LayoutDirection as unstable_LayoutDirection } from './components/Layout/LayoutDirection.js';
122
- export { useLayoutDirection as unstable_useLayoutDirection } from './components/Layout/useLayoutDirection.js';
123
- export { Menu as unstable_Menu } from './components/Menu/Menu.js';
124
- export { MenuItem as unstable_MenuItem, MenuItemDivider as unstable_MenuItemDivider, MenuItemGroup as unstable_MenuItemGroup, MenuItemRadioGroup as unstable_MenuItemRadioGroup, MenuItemSelectable as unstable_MenuItemSelectable } from './components/Menu/MenuItem.js';
128
+ export { LayoutDirection as unstable_LayoutDirection } from './components/LayoutDirection/LayoutDirection.js';
129
+ export { useLayoutDirection as unstable_useLayoutDirection } from './components/LayoutDirection/useLayoutDirection.js';
125
130
  export { Text as unstable_Text } from './components/Text/Text.js';
126
131
  export { TextDirection as unstable_TextDirection } from './components/Text/TextDirection.js';
127
132
  export { default as Breadcrumb } from './components/Breadcrumb/Breadcrumb.js';
@@ -160,6 +165,8 @@ export { ErrorBoundaryContext } from './components/ErrorBoundary/ErrorBoundaryCo
160
165
  export { default as FilterableMultiSelect } from './components/MultiSelect/FilterableMultiSelect.js';
161
166
  export { default as FormGroup } from './components/FormGroup/FormGroup.js';
162
167
  export { default as Link } from './components/Link/Link.js';
168
+ export { Menu } from './components/Menu/Menu.js';
169
+ export { MenuItem, MenuItemDivider, MenuItemGroup, MenuItemRadioGroup, MenuItemSelectable } from './components/Menu/MenuItem.js';
163
170
  export { default as Modal } from './components/Modal/Modal.js';
164
171
  export { default as MultiSelect } from './components/MultiSelect/MultiSelect.js';
165
172
  export { ActionableNotification, InlineNotification, NotificationActionButton, NotificationButton, ToastNotification } from './components/Notification/Notification.js';
@@ -173,31 +180,26 @@ export { default as PrimaryButton } from './components/PrimaryButton/PrimaryButt
173
180
  export { ProgressIndicator, ProgressStep } from './components/ProgressIndicator/ProgressIndicator.js';
174
181
  export { default as RadioButton } from './components/RadioButton/RadioButton.js';
175
182
  export { default as RadioButtonGroup } from './components/RadioButtonGroup/RadioButtonGroup.js';
183
+ export { default as RadioTile } from './components/RadioTile/RadioTile.js';
176
184
  export { default as SecondaryButton } from './components/SecondaryButton/SecondaryButton.js';
177
185
  export { default as SelectSkeleton } from './components/Select/Select.Skeleton.js';
178
186
  export { default as Select } from './components/Select/Select.js';
179
187
  export { default as SelectItem } from './components/SelectItem/SelectItem.js';
180
188
  export { default as SelectItemGroup } from './components/SelectItemGroup/SelectItemGroup.js';
181
- export { default as Switch } from './components/Switch/Switch.js';
182
- export { default as IconSwitch } from './components/Switch/IconSwitch.js';
189
+ export { default as SkeletonIcon } from './components/SkeletonIcon/SkeletonIcon.js';
190
+ export { default as SkeletonPlaceholder } from './components/SkeletonPlaceholder/SkeletonPlaceholder.js';
191
+ export { default as SkeletonText } from './components/SkeletonText/SkeletonText.js';
183
192
  export { default as SliderSkeleton } from './components/Slider/Slider.Skeleton.js';
184
193
  export { default as StructuredListSkeleton } from './components/StructuredList/StructuredList.Skeleton.js';
185
194
  export { StructuredListBody, StructuredListCell, StructuredListHead, StructuredListInput, StructuredListRow, StructuredListWrapper } from './components/StructuredList/StructuredList.js';
195
+ export { default as Switch } from './components/Switch/Switch.js';
196
+ export { default as IconSwitch } from './components/Switch/IconSwitch.js';
186
197
  export { IconTab, Tab, TabList, TabPanel, TabPanels, Tabs } from './components/Tabs/Tabs.js';
187
198
  export { default as TabContent } from './components/TabContent/TabContent.js';
188
199
  export { default as Tag, types } from './components/Tag/Tag.js';
189
- export { default as TextAreaSkeleton } from './components/TextArea/TextArea.Skeleton.js';
190
- export { default as TextArea } from './components/TextArea/TextArea.js';
191
- export { default as TextInputSkeleton } from './components/TextInput/TextInput.Skeleton.js';
192
- export { default as TextInput } from './components/TextInput/TextInput.js';
193
200
  export { ClickableTile, ExpandableTile, SelectableTile, Tile, TileAboveTheFoldContent, TileBelowTheFoldContent } from './components/Tile/Tile.js';
194
- export { default as RadioTile } from './components/RadioTile/RadioTile.js';
195
201
  export { default as TimePicker } from './components/TimePicker/TimePicker.js';
196
202
  export { default as TimePickerSelect } from './components/TimePickerSelect/TimePickerSelect.js';
197
- export { default as SkeletonText } from './components/SkeletonText/SkeletonText.js';
198
- export { default as SkeletonPlaceholder } from './components/SkeletonPlaceholder/SkeletonPlaceholder.js';
199
- export { default as SkeletonIcon } from './components/SkeletonIcon/SkeletonIcon.js';
200
- export { default as DataTableSkeleton } from './components/DataTableSkeleton/DataTableSkeleton.js';
201
203
  export { default as Content } from './components/UIShell/Content.js';
202
204
  export { default as Header } from './components/UIShell/Header.js';
203
205
  export { default as HeaderGlobalAction } from './components/UIShell/HeaderGlobalAction.js';
@@ -28,13 +28,15 @@ function Accordion(_ref) {
28
28
  className: customClassName,
29
29
  disabled = false,
30
30
  isFlush = false,
31
- size = 'md',
31
+ size,
32
32
  ...rest
33
33
  } = _ref;
34
34
  const prefix = usePrefix.usePrefix();
35
35
  const className = cx__default["default"](`${prefix}--accordion`, customClassName, {
36
36
  [`${prefix}--accordion--${align}`]: align,
37
37
  [`${prefix}--accordion--${size}`]: size,
38
+ // TODO: V12 - Remove this class
39
+ [`${prefix}--layout--size-${size}`]: size,
38
40
  [`${prefix}--accordion--flush`]: isFlush && align !== 'start'
39
41
  });
40
42
  return /*#__PURE__*/React__default["default"].createElement("ul", _rollupPluginBabelHelpers["extends"]({
@@ -44,7 +44,7 @@ const Button = /*#__PURE__*/React__default["default"].forwardRef(function Button
44
44
  onMouseEnter,
45
45
  onMouseLeave,
46
46
  renderIcon: ButtonImageElement,
47
- size = 'lg',
47
+ size,
48
48
  tabIndex,
49
49
  tooltipAlignment = 'center',
50
50
  tooltipPosition = 'top',
@@ -63,9 +63,14 @@ const Button = /*#__PURE__*/React__default["default"].forwardRef(function Button
63
63
  const buttonClasses = cx__default["default"](className, {
64
64
  [`${prefix}--btn`]: true,
65
65
  [`${prefix}--btn--sm`]: size === 'sm' && !isExpressive,
66
+ // TODO: V12 - Remove this class
66
67
  [`${prefix}--btn--md`]: size === 'md' && !isExpressive,
68
+ // TODO: V12 - Remove this class
67
69
  [`${prefix}--btn--xl`]: size === 'xl',
70
+ // TODO: V12 - Remove this class
68
71
  [`${prefix}--btn--2xl`]: size === '2xl',
72
+ // TODO: V12 - Remove this class
73
+ [`${prefix}--layout--size-${size}`]: size,
69
74
  [`${prefix}--btn--${kind}`]: kind,
70
75
  [`${prefix}--btn--disabled`]: disabled,
71
76
  [`${prefix}--btn--expressive`]: isExpressive,
@@ -77,8 +77,8 @@ const Checkbox = /*#__PURE__*/React__default["default"].forwardRef((_ref, ref) =
77
77
  className: `${prefix}--checkbox`,
78
78
  id: id,
79
79
  ref: el => {
80
- if (el && indeterminate) {
81
- el.indeterminate = indeterminate;
80
+ if (el) {
81
+ el.indeterminate = indeterminate ?? false;
82
82
  }
83
83
  if (typeof ref === 'function') {
84
84
  ref(el);
@@ -211,6 +211,7 @@ function CodeSnippet(_ref) {
211
211
  }), hasRightOverflow && type !== 'multi' && /*#__PURE__*/React__default["default"].createElement("div", {
212
212
  className: `${prefix}--snippet__overflow-indicator--right`
213
213
  }), !hideCopyButton && /*#__PURE__*/React__default["default"].createElement(CopyButton["default"], {
214
+ size: type === 'multi' ? 'sm' : 'md',
214
215
  disabled: disabled,
215
216
  onClick: handleCopyClick,
216
217
  feedback: feedback,
@@ -44,7 +44,7 @@ const ComboButton = /*#__PURE__*/React__default["default"].forwardRef(function C
44
44
  label,
45
45
  onClick,
46
46
  size = 'lg',
47
- tooltipAlign,
47
+ tooltipAlignment,
48
48
  translateWithId: t = defaultTranslateWithId,
49
49
  ...rest
50
50
  } = _ref;
@@ -86,7 +86,8 @@ const ComboButton = /*#__PURE__*/React__default["default"].forwardRef(function C
86
86
  const triggerClasses = cx__default["default"](`${prefix}--combo-button__trigger`);
87
87
  return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, rest, {
88
88
  className: containerClasses,
89
- ref: ref
89
+ ref: ref,
90
+ "aria-owns": open ? id : null
90
91
  }), /*#__PURE__*/React__default["default"].createElement("div", {
91
92
  className: primaryActionClasses
92
93
  }, /*#__PURE__*/React__default["default"].createElement(Button["default"], {
@@ -98,12 +99,12 @@ const ComboButton = /*#__PURE__*/React__default["default"].forwardRef(function C
98
99
  label: t('carbon.combo-button.additional-actions'),
99
100
  size: size,
100
101
  disabled: disabled,
101
- align: tooltipAlign,
102
+ align: tooltipAlignment,
102
103
  "aria-haspopup": true,
103
104
  "aria-expanded": open,
104
105
  onClick: handleTriggerClick,
105
106
  onMouseDown: handleTriggerMousedown,
106
- "aria-owns": open ? id : null
107
+ "aria-controls": open ? id : null
107
108
  }, _ChevronDown || (_ChevronDown = /*#__PURE__*/React__default["default"].createElement(iconsReact.ChevronDown, null))), /*#__PURE__*/React__default["default"].createElement(Menu.Menu, {
108
109
  ref: menuRef,
109
110
  id: id,
@@ -144,7 +145,7 @@ ComboButton.propTypes = {
144
145
  /**
145
146
  * Specify how the trigger tooltip should be aligned.
146
147
  */
147
- tooltipAlign: PropTypes__default["default"].oneOf(['top', 'top-left', 'top-right', 'bottom', 'bottom-left', 'bottom-right', 'left', 'right']),
148
+ tooltipAlignment: PropTypes__default["default"].oneOf(['top', 'top-left', 'top-right', 'bottom', 'bottom-left', 'bottom-right', 'left', 'right']),
148
149
  /**
149
150
  * Optional method that takes in a message id and returns an
150
151
  * internationalized string.
@@ -12,6 +12,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
12
12
  var React = require('react');
13
13
  var PropTypes = require('prop-types');
14
14
  var cx = require('classnames');
15
+ var index = require('../Layout/index.js');
15
16
  var useId = require('../../internal/useId.js');
16
17
  var usePrefix = require('../../internal/usePrefix.js');
17
18
 
@@ -53,13 +54,16 @@ function ContainedList(_ref) {
53
54
  isInset,
54
55
  kind = variants[0],
55
56
  label,
56
- size = 'lg'
57
+ size
57
58
  } = _ref;
58
59
  const labelId = `${useId.useId('contained-list')}-header`;
59
60
  const prefix = usePrefix.usePrefix();
60
61
  const classes = cx__default["default"](`${prefix}--contained-list`, {
61
- [`${prefix}--contained-list--inset-rulers`]: isInset
62
- }, `${prefix}--contained-list--${kind}`, `${prefix}--contained-list--${size}`, className);
62
+ [`${prefix}--contained-list--inset-rulers`]: isInset,
63
+ [`${prefix}--contained-list--${size}`]: size,
64
+ // TODO: V12 - Remove this class
65
+ [`${prefix}--layout--size-${size}`]: size
66
+ }, `${prefix}--contained-list--${kind}`, className);
63
67
  const filteredChildren = filterChildren(children);
64
68
  const isActionSearch = ['Search', 'ExpandableSearch'].includes(action?.type?.displayName);
65
69
  const renderedChildren = renderChildren(children);
@@ -70,7 +74,11 @@ function ContainedList(_ref) {
70
74
  }, /*#__PURE__*/React__default["default"].createElement("div", {
71
75
  id: labelId,
72
76
  className: `${prefix}--contained-list__label`
73
- }, label), /*#__PURE__*/React__default["default"].createElement("div", {
77
+ }, label), /*#__PURE__*/React__default["default"].createElement(index.LayoutConstraint, {
78
+ size: {
79
+ min: 'sm',
80
+ max: 'xl'
81
+ },
74
82
  className: `${prefix}--contained-list__action`
75
83
  }, action)), children && /*#__PURE__*/React__default["default"].createElement("ul", {
76
84
  "aria-labelledby": labelId
@@ -12,6 +12,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
12
12
  var React = require('react');
13
13
  var PropTypes = require('prop-types');
14
14
  var cx = require('classnames');
15
+ var index = require('../../Layout/index.js');
15
16
  var usePrefix = require('../../../internal/usePrefix.js');
16
17
 
17
18
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -48,7 +49,11 @@ function ContainedListItem(_ref) {
48
49
  onClick: onClick
49
50
  }, content) : /*#__PURE__*/React__default["default"].createElement("div", {
50
51
  className: `${prefix}--contained-list-item__content`
51
- }, content), action && /*#__PURE__*/React__default["default"].createElement("div", {
52
+ }, content), action && /*#__PURE__*/React__default["default"].createElement(index.LayoutConstraint, {
53
+ size: {
54
+ min: 'sm',
55
+ max: 'lg'
56
+ },
52
57
  className: `${prefix}--contained-list-item__action`
53
58
  }, action));
54
59
  }
@@ -14,6 +14,7 @@ var PropTypes = require('prop-types');
14
14
  var React = require('react');
15
15
  var cx = require('classnames');
16
16
  var deprecate = require('../../prop-types/deprecate.js');
17
+ var index = require('../Layout/index.js');
17
18
  var events = require('../../tools/events.js');
18
19
  var usePrefix = require('../../internal/usePrefix.js');
19
20
  var match = require('../../internal/keyboard/match.js');
@@ -117,9 +118,17 @@ class ContentSwitcher extends React__default["default"].Component {
117
118
  const classes = cx__default["default"](`${prefix}--content-switcher`, className, {
118
119
  [`${prefix}--content-switcher--light`]: light,
119
120
  [`${prefix}--content-switcher--${size}`]: size,
121
+ // TODO: V12 - Remove this class
122
+ [`${prefix}--layout--size-${size}`]: size,
120
123
  [`${prefix}--content-switcher--icon-only`]: isIconOnly
121
124
  });
122
- return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, other, {
125
+ return /*#__PURE__*/React__default["default"].createElement(index.LayoutConstraint, _rollupPluginBabelHelpers["extends"]({
126
+ size: {
127
+ default: 'md',
128
+ min: 'sm',
129
+ max: 'lg'
130
+ }
131
+ }, other, {
123
132
  className: classes,
124
133
  role: "tablist"
125
134
  }), React__default["default"].Children.map(children, (child, index) => /*#__PURE__*/React__default["default"].cloneElement(child, {
@@ -15,6 +15,7 @@ var React = require('react');
15
15
  var cx = require('classnames');
16
16
  var iconsReact = require('@carbon/icons-react');
17
17
  var Copy = require('../Copy/Copy.js');
18
+ var index = require('../Layout/index.js');
18
19
  var usePrefix = require('../../internal/usePrefix.js');
19
20
 
20
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -30,12 +31,17 @@ function CopyButton(_ref) {
30
31
  ...other
31
32
  } = _ref;
32
33
  const prefix = usePrefix.usePrefix();
33
- return /*#__PURE__*/React__default["default"].createElement(Copy["default"], _rollupPluginBabelHelpers["extends"]({
34
+ return /*#__PURE__*/React__default["default"].createElement(index.LayoutConstraint, {
35
+ size: {
36
+ default: 'md',
37
+ max: 'lg'
38
+ }
39
+ }, /*#__PURE__*/React__default["default"].createElement(Copy["default"], _rollupPluginBabelHelpers["extends"]({
34
40
  className: cx__default["default"](className, `${prefix}--copy-btn`),
35
41
  "aria-label": iconDescription
36
42
  }, other), /*#__PURE__*/React__default["default"].createElement(iconsReact.Copy, {
37
43
  className: `${prefix}--snippet__icon`
38
- }));
44
+ })));
39
45
  }
40
46
  CopyButton.propTypes = {
41
47
  /**
@@ -121,6 +121,5 @@ DataTableSkeleton.defaultProps = {
121
121
  showHeader: true,
122
122
  showToolbar: true
123
123
  };
124
- var DataTableSkeleton$1 = DataTableSkeleton;
125
124
 
126
- exports["default"] = DataTableSkeleton$1;
125
+ exports["default"] = DataTableSkeleton;
@@ -0,0 +1,9 @@
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
+ import DataTableSkeleton from './DataTableSkeleton';
8
+ export default DataTableSkeleton;
9
+ export { DataTableSkeleton };
@@ -56,7 +56,8 @@ function FileUploaderButton(_ref) {
56
56
  [`${prefix}--btn--disabled`]: disabled,
57
57
  // V11: remove field, small
58
58
  [`${prefix}--btn--md`]: size === 'field' || size === 'md',
59
- [`${prefix}--btn--sm`]: size === 'small' || size === 'sm'
59
+ [`${prefix}--btn--sm`]: size === 'small' || size === 'sm',
60
+ [`${prefix}--layout--size-${size}`]: size
60
61
  });
61
62
 
62
63
  // Adjust label text state based on changes to the labelText prop
@@ -31,16 +31,19 @@ const IconButton = /*#__PURE__*/React__default["default"].forwardRef(function Ic
31
31
  className,
32
32
  closeOnActivation = true,
33
33
  defaultOpen = false,
34
+ disabled,
34
35
  enterDelayMs,
35
36
  kind,
36
37
  label,
37
38
  leaveDelayMs,
38
39
  wrapperClasses,
39
- size = 'md',
40
+ size,
40
41
  ...rest
41
42
  } = props;
42
43
  const prefix = usePrefix.usePrefix();
43
- const tooltipClasses = cx__default["default"](wrapperClasses, `${prefix}--icon-tooltip`);
44
+ const tooltipClasses = cx__default["default"](wrapperClasses, `${prefix}--icon-tooltip`, {
45
+ [`${prefix}--icon-tooltip--disabled`]: disabled
46
+ });
44
47
  return /*#__PURE__*/React__default["default"].createElement(Tooltip.Tooltip, {
45
48
  align: align,
46
49
  closeOnActivation: closeOnActivation,
@@ -50,6 +53,7 @@ const IconButton = /*#__PURE__*/React__default["default"].forwardRef(function Ic
50
53
  label: label,
51
54
  leaveDelayMs: leaveDelayMs
52
55
  }, /*#__PURE__*/React__default["default"].createElement(Button["default"], _rollupPluginBabelHelpers["extends"]({}, rest, {
56
+ disabled: disabled,
53
57
  kind: kind,
54
58
  ref: ref,
55
59
  size: size,
@@ -77,6 +81,10 @@ IconButton.propTypes = {
77
81
  * Specify whether the tooltip should be open when it first renders
78
82
  */
79
83
  defaultOpen: PropTypes__default["default"].bool,
84
+ /**
85
+ * Specify whether the Button should be disabled, or not
86
+ */
87
+ disabled: PropTypes__default["default"].bool,
80
88
  /**
81
89
  * Specify the duration in milliseconds to delay before displaying the tooltip
82
90
  */
@@ -0,0 +1,129 @@
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 _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
13
+ var cx = require('classnames');
14
+ var PropTypes = require('prop-types');
15
+ var React = require('react');
16
+ var usePrefix = require('../../internal/usePrefix.js');
17
+
18
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
+
20
+ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
21
+ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
22
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
23
+
24
+ const sizes = ['xs', 'sm', 'md', 'lg', 'xl', '2xl'];
25
+ const densities = ['condensed', 'normal'];
26
+ const Layout = /*#__PURE__*/React__default["default"].forwardRef(function Layout(_ref, forwardRef) {
27
+ let {
28
+ as: BaseComponent = 'div',
29
+ children,
30
+ className,
31
+ density,
32
+ size,
33
+ ...rest
34
+ } = _ref;
35
+ const prefix = usePrefix.usePrefix();
36
+ const classes = cx__default["default"](className, `${prefix}--layout`, {
37
+ [`${prefix}--layout--size-${size}`]: sizes.includes(size),
38
+ [`${prefix}--layout--density-${density}`]: densities.includes(density)
39
+ });
40
+ return /*#__PURE__*/React__default["default"].createElement(BaseComponent, _rollupPluginBabelHelpers["extends"]({}, rest, {
41
+ ref: forwardRef,
42
+ className: classes
43
+ }), children);
44
+ });
45
+ Layout.propTypes = {
46
+ /**
47
+ * Specify a custom component or element to be rendered as the top-level
48
+ * element in the component
49
+ */
50
+ as: PropTypes__default["default"].oneOfType([PropTypes__default["default"].func, PropTypes__default["default"].string, PropTypes__default["default"].elementType]),
51
+ /**
52
+ * Provide child elements to be rendered inside of `Layout`
53
+ */
54
+ children: PropTypes__default["default"].node,
55
+ /**
56
+ * Provide a custom class name to be used on the outermost element rendered by
57
+ * the component
58
+ */
59
+ className: PropTypes__default["default"].string,
60
+ /**
61
+ * Specify the desired density of components within this layout
62
+ */
63
+ density: PropTypes__default["default"].oneOf(densities),
64
+ /**
65
+ * Specify the desired size of components within this layout
66
+ */
67
+ size: PropTypes__default["default"].oneOf(sizes)
68
+ };
69
+ const LayoutConstraint = /*#__PURE__*/React__default["default"].forwardRef(function Layout(_ref2, forwardRef) {
70
+ let {
71
+ as: BaseComponent = 'div',
72
+ children,
73
+ className,
74
+ density,
75
+ size,
76
+ ...rest
77
+ } = _ref2;
78
+ const prefix = usePrefix.usePrefix();
79
+ const classes = cx__default["default"](className, Object.entries({
80
+ size,
81
+ density
82
+ }).map(_ref3 => {
83
+ let [group, constraints] = _ref3;
84
+ return {
85
+ [`${prefix}--layout-constraint--${group}:default-${constraints?.default}`]: constraints?.default,
86
+ [`${prefix}--layout-constraint--${group}:min-${constraints?.min}`]: constraints?.min,
87
+ [`${prefix}--layout-constraint--${group}:max-${constraints?.max}`]: constraints?.max
88
+ };
89
+ }));
90
+ return /*#__PURE__*/React__default["default"].createElement(BaseComponent, _rollupPluginBabelHelpers["extends"]({}, rest, {
91
+ ref: forwardRef,
92
+ className: classes
93
+ }), children);
94
+ });
95
+ LayoutConstraint.propTypes = {
96
+ /**
97
+ * Specify a custom component or element to be rendered as the top-level
98
+ * element in the component
99
+ */
100
+ as: PropTypes__default["default"].oneOfType([PropTypes__default["default"].func, PropTypes__default["default"].string, PropTypes__default["default"].elementType]),
101
+ /**
102
+ * Provide child elements to be rendered inside of `LayoutConstraint`
103
+ */
104
+ children: PropTypes__default["default"].node,
105
+ /**
106
+ * Provide a custom class name to be used on the outermost element rendered by
107
+ * the component
108
+ */
109
+ className: PropTypes__default["default"].string,
110
+ /**
111
+ * Specify the desired layout density constraints of this element's children
112
+ */
113
+ density: PropTypes__default["default"].shape({
114
+ min: PropTypes__default["default"].oneOf(densities),
115
+ default: PropTypes__default["default"].oneOf(densities),
116
+ max: PropTypes__default["default"].oneOf(densities)
117
+ }),
118
+ /**
119
+ * Specify the desired layout size constraints of this element's children
120
+ */
121
+ size: PropTypes__default["default"].shape({
122
+ min: PropTypes__default["default"].oneOf(sizes),
123
+ default: PropTypes__default["default"].oneOf(sizes),
124
+ max: PropTypes__default["default"].oneOf(sizes)
125
+ })
126
+ };
127
+
128
+ exports.Layout = Layout;
129
+ exports.LayoutConstraint = LayoutConstraint;
@@ -10,5 +10,5 @@ declare const listBoxSizes: readonly ["sm", "md", "lg"];
10
10
  export type ListBoxType = (typeof listBoxTypes)[number];
11
11
  export type ListBoxSize = (typeof listBoxSizes)[number];
12
12
  export declare const ListBoxType: PropTypes.Requireable<"default" | "inline">;
13
- export declare const ListBoxSize: PropTypes.Requireable<"md" | "sm" | "lg">;
13
+ export declare const ListBoxSize: PropTypes.Requireable<"sm" | "md" | "lg">;
14
14
  export {};
@@ -290,12 +290,13 @@ MenuItemGroup.propTypes = {
290
290
  */
291
291
  label: PropTypes__default["default"].string.isRequired
292
292
  };
293
+ const defaultItemToString = item => item.toString();
293
294
  const MenuItemRadioGroup = /*#__PURE__*/React__default["default"].forwardRef(function MenuItemRadioGroup(_ref4, forwardRef) {
294
295
  let {
295
296
  className,
296
297
  defaultSelectedItem,
297
298
  items,
298
- itemToString = item => item.toString(),
299
+ itemToString = defaultItemToString,
299
300
  label,
300
301
  onChange,
301
302
  selectedItem,
@@ -68,10 +68,13 @@ const MenuButton = /*#__PURE__*/React__default["default"].forwardRef(function Me
68
68
  }
69
69
  const triggerClasses = cx__default["default"](`${prefix}--menu-button__trigger`, {
70
70
  [`${prefix}--menu-button__trigger--open`]: open
71
- }, className);
71
+ });
72
72
  const buttonKind = validButtonKinds.includes(kind) ? kind : defaultButtonKind;
73
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button["default"], _rollupPluginBabelHelpers["extends"]({}, rest, {
73
+ return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, rest, {
74
74
  ref: ref,
75
+ "aria-owns": open ? id : null,
76
+ className: className
77
+ }), /*#__PURE__*/React__default["default"].createElement(Button["default"], {
75
78
  className: triggerClasses,
76
79
  size: size,
77
80
  kind: buttonKind,
@@ -81,8 +84,8 @@ const MenuButton = /*#__PURE__*/React__default["default"].forwardRef(function Me
81
84
  "aria-expanded": open,
82
85
  onClick: handleClick,
83
86
  onMouseDown: handleMousedown,
84
- "aria-owns": open ? id : null
85
- }), label), /*#__PURE__*/React__default["default"].createElement(Menu.Menu, {
87
+ "aria-controls": open ? id : null
88
+ }, label), /*#__PURE__*/React__default["default"].createElement(Menu.Menu, {
86
89
  ref: menuRef,
87
90
  id: id,
88
91
  label: label,