@carbon/react 1.6.0 → 1.8.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 (80) hide show
  1. package/es/components/ComposedModal/ComposedModal.js +1 -1
  2. package/es/components/ComposedModal/index.js +4 -4
  3. package/es/components/DataTable/DataTable.js +1 -1
  4. package/es/components/DataTable/Table.js +10 -2
  5. package/es/components/DataTable/TableContainer.js +20 -5
  6. package/es/components/DataTable/TableContext.js +15 -0
  7. package/es/components/DataTable/TableSelectRow.js +1 -1
  8. package/es/components/FileUploader/FileUploader.js +8 -1
  9. package/es/components/FileUploader/FileUploaderButton.js +3 -1
  10. package/es/components/FileUploader/FileUploaderDropContainer.js +3 -1
  11. package/es/components/FileUploader/FileUploaderItem.js +3 -1
  12. package/es/components/Form/Form.js +1 -1
  13. package/es/components/FormGroup/FormGroup.js +4 -4
  14. package/es/components/FormItem/FormItem.js +5 -6
  15. package/es/components/InlineLoading/InlineLoading.js +9 -5
  16. package/es/components/Loading/Loading.js +7 -18
  17. package/es/components/MultiSelect/FilterableMultiSelect.js +345 -386
  18. package/es/components/MultiSelect/index.js +4 -8
  19. package/es/components/Notification/Notification.js +322 -189
  20. package/es/components/Popover/index.js +137 -8
  21. package/es/components/ProgressBar/ProgressBar.js +6 -3
  22. package/es/components/RadioButton/RadioButton.js +58 -99
  23. package/es/components/RadioButton/index.js +2 -8
  24. package/es/components/RadioButtonGroup/RadioButtonGroup.js +72 -121
  25. package/es/components/RadioButtonGroup/index.js +2 -8
  26. package/es/components/Select/Select.js +14 -7
  27. package/es/components/Slider/Slider.js +2 -1
  28. package/es/components/Switch/Switch.js +0 -1
  29. package/es/components/TreeView/TreeView.js +19 -11
  30. package/es/components/UIShell/HeaderMenu.js +1 -1
  31. package/es/components/UIShell/HeaderMenuButton.js +4 -0
  32. package/es/components/UIShell/SideNavDetails.js +8 -3
  33. package/es/components/UIShell/SideNavLink.js +6 -9
  34. package/es/index.js +7 -6
  35. package/es/internal/createClassWrapper.js +2 -5
  36. package/lib/components/ComposedModal/index.js +7 -7
  37. package/lib/components/DataTable/DataTable.js +5 -5
  38. package/lib/components/DataTable/Table.js +9 -1
  39. package/lib/components/DataTable/TableContainer.js +19 -4
  40. package/lib/components/DataTable/TableContext.js +19 -0
  41. package/lib/components/DataTable/TableSelectRow.js +2 -2
  42. package/lib/components/FileUploader/FileUploader.js +8 -1
  43. package/lib/components/FileUploader/FileUploaderButton.js +3 -1
  44. package/lib/components/FileUploader/FileUploaderDropContainer.js +3 -1
  45. package/lib/components/FileUploader/FileUploaderItem.js +3 -1
  46. package/lib/components/Form/Form.js +1 -1
  47. package/lib/components/FormGroup/FormGroup.js +4 -4
  48. package/lib/components/FormItem/FormItem.js +5 -6
  49. package/lib/components/InlineLoading/InlineLoading.js +9 -5
  50. package/lib/components/Loading/Loading.js +6 -17
  51. package/lib/components/MultiSelect/FilterableMultiSelect.js +341 -382
  52. package/lib/components/MultiSelect/index.js +5 -28
  53. package/lib/components/Notification/Notification.js +321 -188
  54. package/lib/components/Popover/index.js +135 -6
  55. package/lib/components/ProgressBar/ProgressBar.js +6 -3
  56. package/lib/components/RadioButton/RadioButton.js +57 -99
  57. package/lib/components/RadioButton/index.js +2 -25
  58. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +68 -117
  59. package/lib/components/RadioButtonGroup/index.js +2 -25
  60. package/lib/components/Select/Select.js +14 -7
  61. package/lib/components/Slider/Slider.js +2 -1
  62. package/lib/components/Switch/Switch.js +0 -1
  63. package/lib/components/TreeView/TreeView.js +18 -10
  64. package/lib/components/UIShell/HeaderMenu.js +1 -0
  65. package/lib/components/UIShell/HeaderMenuButton.js +4 -0
  66. package/lib/components/UIShell/SideNavDetails.js +8 -3
  67. package/lib/components/UIShell/SideNavLink.js +6 -9
  68. package/lib/index.js +83 -83
  69. package/lib/internal/createClassWrapper.js +2 -5
  70. package/package.json +8 -8
  71. package/es/components/MultiSelect/next/FilterableMultiSelect.js +0 -542
  72. package/es/components/Notification/index.js +0 -42
  73. package/es/components/Notification/next/Notification.js +0 -663
  74. package/es/components/RadioButton/next/RadioButton.js +0 -130
  75. package/es/components/RadioButtonGroup/next/RadioButtonGroup.js +0 -141
  76. package/lib/components/MultiSelect/next/FilterableMultiSelect.js +0 -554
  77. package/lib/components/Notification/index.js +0 -51
  78. package/lib/components/Notification/next/Notification.js +0 -677
  79. package/lib/components/RadioButton/next/RadioButton.js +0 -140
  80. package/lib/components/RadioButtonGroup/next/RadioButtonGroup.js +0 -151
@@ -5,11 +5,5 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import * as FeatureFlags from '@carbon/feature-flags';
9
- import RadioButtonGroupNext from './next/RadioButtonGroup.js';
10
- import RadioButtonGroup$2 from './RadioButtonGroup.js';
11
-
12
- var RadioButtonGroup = FeatureFlags.enabled('enable-v11-release') ? RadioButtonGroupNext : RadioButtonGroup$2;
13
- var RadioButtonGroup$1 = RadioButtonGroup;
14
-
15
- export { RadioButtonGroup$1 as default };
8
+ import RadioButtonGroup from './RadioButtonGroup.js';
9
+ export { default } from './RadioButtonGroup.js';
@@ -20,18 +20,25 @@ var Select = /*#__PURE__*/React__default.forwardRef(function Select(_ref, ref) {
20
20
 
21
21
  var className = _ref.className,
22
22
  id = _ref.id,
23
- inline = _ref.inline,
23
+ _ref$inline = _ref.inline,
24
+ inline = _ref$inline === void 0 ? false : _ref$inline,
24
25
  labelText = _ref.labelText,
25
- disabled = _ref.disabled,
26
+ _ref$disabled = _ref.disabled,
27
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
26
28
  children = _ref.children,
27
- noLabel = _ref.noLabel,
28
- hideLabel = _ref.hideLabel,
29
- invalid = _ref.invalid,
29
+ _ref$noLabel = _ref.noLabel,
30
+ noLabel = _ref$noLabel === void 0 ? false : _ref$noLabel,
31
+ _ref$hideLabel = _ref.hideLabel,
32
+ hideLabel = _ref$hideLabel === void 0 ? false : _ref$hideLabel,
33
+ _ref$invalid = _ref.invalid,
34
+ invalid = _ref$invalid === void 0 ? false : _ref$invalid,
30
35
  invalidText = _ref.invalidText,
31
36
  helperText = _ref.helperText,
32
- light = _ref.light,
37
+ _ref$light = _ref.light,
38
+ light = _ref$light === void 0 ? false : _ref$light,
33
39
  size = _ref.size,
34
- warn = _ref.warn,
40
+ _ref$warn = _ref.warn,
41
+ warn = _ref$warn === void 0 ? false : _ref$warn,
35
42
  warnText = _ref.warnText,
36
43
  other = _objectWithoutProperties(_ref, _excluded);
37
44
 
@@ -457,7 +457,8 @@ var Slider = /*#__PURE__*/function (_PureComponent) {
457
457
  "aria-valuemax": max,
458
458
  "aria-valuemin": min,
459
459
  "aria-valuenow": value,
460
- style: thumbStyle
460
+ style: thumbStyle,
461
+ "aria-labelledby": labelId
461
462
  }), /*#__PURE__*/React__default.createElement("div", {
462
463
  className: "".concat(prefix, "--slider__track"),
463
464
  ref: function ref(node) {
@@ -115,7 +115,6 @@ Switch.propTypes = {
115
115
  };
116
116
  Switch.defaultProps = {
117
117
  selected: false,
118
- text: 'Provide text',
119
118
  onClick: function onClick() {},
120
119
  onKeyDown: function onKeyDown() {}
121
120
  };
@@ -5,7 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, slicedToArray as _slicedToArray, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, slicedToArray as _slicedToArray, extends as _extends, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import React__default, { useRef, useState, useEffect } from 'react';
10
10
  import PropTypes from 'prop-types';
11
11
  import cx from 'classnames';
@@ -69,12 +69,15 @@ function TreeView(_ref) {
69
69
  return selectedId !== nodeId;
70
70
  }));
71
71
  }
72
+
73
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect(event, node);
72
74
  } else {
73
75
  setSelected([nodeId]);
74
76
  setActive(nodeId);
77
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect(event, _objectSpread2({
78
+ activeNodeId: nodeId
79
+ }, node));
75
80
  }
76
-
77
- onSelect === null || onSelect === void 0 ? void 0 : onSelect(event, node);
78
81
  }
79
82
 
80
83
  function handleFocusEvent(event) {
@@ -213,15 +216,20 @@ function TreeView(_ref) {
213
216
  }
214
217
  });
215
218
  }, [prefix]);
216
- useEffect(function () {
217
- if (preselected.length) {
218
- setSelected(preselected);
219
- }
220
219
 
221
- if (prespecifiedActive) {
222
- setActive(prespecifiedActive);
223
- }
224
- }, [preselected, prespecifiedActive]);
220
+ var useActiveAndSelectedOnMount = function useActiveAndSelectedOnMount() {
221
+ return useEffect(function () {
222
+ if (preselected.length) {
223
+ setSelected(preselected);
224
+ }
225
+
226
+ if (prespecifiedActive) {
227
+ setActive(prespecifiedActive);
228
+ }
229
+ }, []);
230
+ };
231
+
232
+ useActiveAndSelectedOnMount();
225
233
  var labelId = "".concat(treeId, "__label");
226
234
 
227
235
  var TreeLabel = function TreeLabel() {
@@ -237,4 +237,4 @@ var HeaderMenuForwardRef = /*#__PURE__*/React__default.forwardRef(function (prop
237
237
  HeaderMenuForwardRef.displayName = 'HeaderMenu';
238
238
  var HeaderMenuForwardRef$1 = HeaderMenuForwardRef;
239
239
 
240
- export { HeaderMenuForwardRef$1 as default };
240
+ export { HeaderMenu, HeaderMenuForwardRef$1 as default };
@@ -56,6 +56,10 @@ HeaderMenuButton.propTypes = _objectSpread2(_objectSpread2({}, AriaLabelPropType
56
56
  * button
57
57
  */
58
58
  className: PropTypes.string,
59
+
60
+ /**
61
+ * Specify whether the menu button is "active".
62
+ */
59
63
  isActive: PropTypes.bool,
60
64
 
61
65
  /**
@@ -5,20 +5,25 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
+ import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
8
9
  import cx from 'classnames';
9
10
  import PropTypes from 'prop-types';
10
11
  import React__default from 'react';
11
12
  import { usePrefix } from '../../internal/usePrefix.js';
12
13
 
14
+ var _excluded = ["children", "className", "title"];
15
+
13
16
  var SideNavDetails = function SideNavDetails(_ref) {
14
17
  var children = _ref.children,
15
18
  customClassName = _ref.className,
16
- title = _ref.title;
19
+ title = _ref.title,
20
+ rest = _objectWithoutProperties(_ref, _excluded);
21
+
17
22
  var prefix = usePrefix();
18
23
  var className = cx("".concat(prefix, "--side-nav__details"), customClassName);
19
- return /*#__PURE__*/React__default.createElement("div", {
24
+ return /*#__PURE__*/React__default.createElement("div", _extends({
20
25
  className: className
21
- }, /*#__PURE__*/React__default.createElement("h2", {
26
+ }, rest), /*#__PURE__*/React__default.createElement("h2", {
22
27
  className: "".concat(prefix, "--side-nav__title"),
23
28
  title: title
24
29
  }, title), children);
@@ -15,15 +15,16 @@ import SideNavItem from './SideNavItem.js';
15
15
  import SideNavLinkText from './SideNavLinkText.js';
16
16
  import { usePrefix } from '../../internal/usePrefix.js';
17
17
 
18
- var _excluded = ["className", "children", "renderIcon", "isActive", "large"];
18
+ var _excluded = ["children", "className", "renderIcon", "isActive", "large"];
19
19
  var SideNavLink = /*#__PURE__*/React__default.forwardRef(function SideNavLink(_ref, ref) {
20
20
  var _cx;
21
21
 
22
- var customClassName = _ref.className,
23
- children = _ref.children,
22
+ var children = _ref.children,
23
+ customClassName = _ref.className,
24
24
  IconElement = _ref.renderIcon,
25
25
  isActive = _ref.isActive,
26
- large = _ref.large,
26
+ _ref$large = _ref.large,
27
+ large = _ref$large === void 0 ? false : _ref$large,
27
28
  rest = _objectWithoutProperties(_ref, _excluded);
28
29
 
29
30
  var prefix = usePrefix();
@@ -58,11 +59,7 @@ SideNavLink.propTypes = _objectSpread2(_objectSpread2({}, LinkPropTypes), {}, {
58
59
  * Provide an icon to render in the side navigation link. Should be a React class.
59
60
  */
60
61
  renderIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object])
61
- });
62
- SideNavLink.defaultProps = {
63
- element: 'a',
64
- large: false
65
- }; // eslint-disable-next-line react/display-name
62
+ }); // eslint-disable-next-line react/display-name
66
63
  var SideNavLink$1 = SideNavLink;
67
64
 
68
65
  export { SideNavLink$1 as default };
package/es/index.js CHANGED
@@ -18,7 +18,7 @@ export { ClassPrefix } from './components/ClassPrefix/index.js';
18
18
  export { default as CodeSnippetSkeleton } from './components/CodeSnippet/CodeSnippet.Skeleton.js';
19
19
  export { default as CodeSnippet } from './components/CodeSnippet/CodeSnippet.js';
20
20
  export { default as ComboBox } from './components/ComboBox/ComboBox.js';
21
- export { ModalFooter, ModalHeader } from './components/ComposedModal/index.js';
21
+ export { ComposedModal, ModalFooter, ModalHeader } from './components/ComposedModal/index.js';
22
22
  export { default as ContentSwitcher } from './components/ContentSwitcher/index.js';
23
23
  export { default as Copy } from './components/Copy/Copy.js';
24
24
  export { default as CopyButton } from './components/CopyButton/CopyButton.js';
@@ -41,8 +41,7 @@ export { default as ListItem } from './components/ListItem/ListItem.js';
41
41
  export { default as Loading } from './components/Loading/Loading.js';
42
42
  export { default as Modal } from './components/Modal/index.js';
43
43
  export { default as ModalWrapper } from './components/ModalWrapper/ModalWrapper.js';
44
- export { FilterableMultiSelect } from './components/MultiSelect/index.js';
45
- export { ActionableNotification, InlineNotification, NotificationActionButton, NotificationButton, NotificationTextDetails, ToastNotification } from './components/Notification/index.js';
44
+ import './components/MultiSelect/index.js';
46
45
  export { default as NumberInputSkeleton } from './components/NumberInput/NumberInput.Skeleton.js';
47
46
  export { default as NumberInput } from './components/NumberInput/NumberInput.js';
48
47
  export { default as OrderedList } from './components/OrderedList/OrderedList.js';
@@ -52,8 +51,8 @@ export { default as Pagination } from './components/Pagination/index.js';
52
51
  export { default as PaginationNav } from './components/PaginationNav/PaginationNav.js';
53
52
  export { default as PrimaryButton } from './components/PrimaryButton/PrimaryButton.js';
54
53
  export { ProgressIndicator } from './components/ProgressIndicator/index.js';
55
- export { default as RadioButton } from './components/RadioButton/index.js';
56
- export { default as RadioButtonGroup } from './components/RadioButtonGroup/index.js';
54
+ export { default as RadioButton } from './components/RadioButton/RadioButton.js';
55
+ export { default as RadioButtonGroup } from './components/RadioButtonGroup/RadioButtonGroup.js';
57
56
  export { default as Search } from './components/Search/index.js';
58
57
  export { default as SearchFilterButton } from './components/SearchFilterButton/SearchFilterButton.js';
59
58
  export { default as SearchLayoutButton } from './components/SearchLayoutButton/SearchLayoutButton.js';
@@ -135,13 +134,13 @@ export { default as unstable_PageSelector } from './components/Pagination/experi
135
134
  export { default as unstable_Pagination } from './components/Pagination/experimental/Pagination.js';
136
135
  export { default as ProgressBar } from './components/ProgressBar/ProgressBar.js';
137
136
  export { default as unstable_TreeNode } from './components/TreeView/TreeNode.js';
138
- export { default as ComposedModal, ModalBody } from './components/ComposedModal/ComposedModal.js';
139
137
  export { default as MultiSelect } from './components/MultiSelect/MultiSelect.js';
140
138
  export { default as TextInput } from './components/TextInput/TextInput.js';
141
139
  export { default as unstable_Menu } from './components/Menu/Menu.js';
142
140
  export { default as unstable_TreeView } from './components/TreeView/TreeView.js';
143
141
  export { default as Breadcrumb } from './components/Breadcrumb/Breadcrumb.js';
144
142
  export { default as BreadcrumbItem } from './components/Breadcrumb/BreadcrumbItem.js';
143
+ export { ModalBody } from './components/ComposedModal/ComposedModal.js';
145
144
  export { default as Table } from './components/DataTable/Table.js';
146
145
  export { default as TableActionList } from './components/DataTable/TableActionList.js';
147
146
  export { default as TableBatchAction } from './components/DataTable/TableBatchAction.js';
@@ -164,9 +163,11 @@ export { default as TableToolbarSearch } from './components/DataTable/TableToolb
164
163
  export { default as TableToolbarMenu } from './components/DataTable/TableToolbarMenu.js';
165
164
  export { default as ErrorBoundary } from './components/ErrorBoundary/ErrorBoundary.js';
166
165
  export { ErrorBoundaryContext } from './components/ErrorBoundary/ErrorBoundaryContext.js';
166
+ export { default as FilterableMultiSelect } from './components/MultiSelect/FilterableMultiSelect.js';
167
167
  export { Grid } from './components/Grid/Grid.js';
168
168
  export { ColumnHang } from './components/Grid/ColumnHang.js';
169
169
  export { FlexGrid } from './components/Grid/FlexGrid.js';
170
+ export { ActionableNotification, InlineNotification, NotificationActionButton, NotificationButton, ToastNotification } from './components/Notification/Notification.js';
170
171
  export { default as ControlledPasswordInput } from './components/TextInput/ControlledPasswordInput.js';
171
172
  export { default as PasswordInput } from './components/TextInput/PasswordInput.js';
172
173
  export { ProgressStep } from './components/ProgressIndicator/ProgressIndicator.js';
@@ -20,11 +20,8 @@ function createClassWrapper(Component) {
20
20
  return /*#__PURE__*/React__default.createElement(Component, props);
21
21
  }
22
22
 
23
- if (process.env.NODE_ENV !== "production") {
24
- var name = Component.displayName || Component.name;
25
- ClassWrapper.displayName = "ClassWrapper(".concat(name, ")");
26
- }
27
-
23
+ var name = Component.displayName || Component.name;
24
+ ClassWrapper.displayName = "ClassWrapper(".concat(name, ")");
28
25
  return ClassWrapper;
29
26
  }
30
27
 
@@ -12,8 +12,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
12
12
  var FeatureFlags = require('@carbon/feature-flags');
13
13
  var ModalHeader$1 = require('./next/ModalHeader.js');
14
14
  var ModalFooter$1 = require('./next/ModalFooter.js');
15
- var ComposedModal$1 = require('./next/ComposedModal.js');
16
- var ComposedModal = require('./ComposedModal.js');
15
+ var ComposedModal$2 = require('./next/ComposedModal.js');
16
+ var ComposedModal$1 = require('./ComposedModal.js');
17
17
 
18
18
  function _interopNamespace(e) {
19
19
  if (e && e.__esModule) return e;
@@ -35,11 +35,11 @@ function _interopNamespace(e) {
35
35
 
36
36
  var FeatureFlags__namespace = /*#__PURE__*/_interopNamespace(FeatureFlags);
37
37
 
38
- var ModalHeader = FeatureFlags__namespace.enabled('enable-v11-release') ? ModalHeader$1.ModalHeader : ComposedModal.ModalHeader;
39
- var ModalFooter = FeatureFlags__namespace.enabled('enable-v11-release') ? ModalFooter$1.ModalFooter : ComposedModal.ModalFooter;
40
- FeatureFlags__namespace.enabled('enable-v11-release') ? ComposedModal$1["default"] : ComposedModal["default"];
38
+ var ModalHeader = FeatureFlags__namespace.enabled('enable-v11-release') ? ModalHeader$1.ModalHeader : ComposedModal$1.ModalHeader;
39
+ var ModalFooter = FeatureFlags__namespace.enabled('enable-v11-release') ? ModalFooter$1.ModalFooter : ComposedModal$1.ModalFooter;
40
+ var ComposedModal = FeatureFlags__namespace.enabled('enable-v11-release') ? ComposedModal$2["default"] : ComposedModal$1["default"];
41
41
 
42
- exports.ModalBody = ComposedModal.ModalBody;
43
- exports["default"] = ComposedModal["default"];
42
+ exports.ModalBody = ComposedModal$1.ModalBody;
43
+ exports.ComposedModal = ComposedModal;
44
44
  exports.ModalFooter = ModalFooter;
45
45
  exports.ModalHeader = ModalHeader;
@@ -14,12 +14,12 @@ var PropTypes = require('prop-types');
14
14
  var React = require('react');
15
15
  var isEqual = require('lodash.isequal');
16
16
  var getDerivedStateFromProps = require('./state/getDerivedStateFromProps.js');
17
- var sorting = require('./state/sorting.js');
17
+ var sorting$1 = require('./state/sorting.js');
18
18
  var cells = require('./tools/cells.js');
19
19
  var denormalize = require('./tools/denormalize.js');
20
20
  var events = require('../../tools/events.js');
21
21
  var filter = require('./tools/filter.js');
22
- var sorting$1 = require('./tools/sorting.js');
22
+ var sorting = require('./tools/sorting.js');
23
23
  var instanceId = require('./tools/instanceId.js');
24
24
 
25
25
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -90,7 +90,7 @@ var DataTable = /*#__PURE__*/function (_React$Component) {
90
90
  isSortable: isSortable,
91
91
  isSortHeader: sortHeaderKey === header.key,
92
92
  onClick: function onClick(event) {
93
- var nextSortState = sorting.getNextSortState(_this.props, _this.state, {
93
+ var nextSortState = sorting$1.getNextSortState(_this.props, _this.state, {
94
94
  key: header.key
95
95
  });
96
96
 
@@ -387,7 +387,7 @@ var DataTable = /*#__PURE__*/function (_React$Component) {
387
387
  _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "handleSortBy", function (headerKey) {
388
388
  return function () {
389
389
  _this.setState(function (state) {
390
- return sorting.getNextSortState(_this.props, state, {
390
+ return sorting$1.getNextSortState(_this.props, state, {
391
391
  key: headerKey
392
392
  });
393
393
  });
@@ -626,7 +626,7 @@ _rollupPluginBabelHelpers.defineProperty(DataTable, "propTypes", {
626
626
  });
627
627
 
628
628
  _rollupPluginBabelHelpers.defineProperty(DataTable, "defaultProps", {
629
- sortRow: sorting$1.defaultSortRow,
629
+ sortRow: sorting.defaultSortRow,
630
630
  filterRows: filter.defaultFilterRows,
631
631
  locale: 'en',
632
632
  size: 'lg',
@@ -14,6 +14,7 @@ var React = require('react');
14
14
  var PropTypes = require('prop-types');
15
15
  var cx = require('classnames');
16
16
  var usePrefix = require('../../internal/usePrefix.js');
17
+ var TableContext = require('./TableContext.js');
17
18
 
18
19
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
20
 
@@ -35,11 +36,18 @@ var Table = function Table(_ref) {
35
36
  overflowMenuOnHover = _ref.overflowMenuOnHover,
36
37
  other = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
37
38
 
39
+ var _useContext = React.useContext(TableContext.TableContext),
40
+ titleId = _useContext.titleId,
41
+ descriptionId = _useContext.descriptionId;
42
+
38
43
  var prefix = usePrefix.usePrefix();
39
44
  var componentClass = cx__default["default"]("".concat(prefix, "--data-table"), className, (_cx = {}, _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table--").concat(size), size), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table--sort"), isSortable), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table--zebra"), useZebraStyles), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table--static"), useStaticWidth), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table--sticky-header"), stickyHeader), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table--visible-overflow-menu"), !overflowMenuOnHover), _cx));
40
45
  var table = /*#__PURE__*/React__default["default"].createElement("div", {
41
46
  className: "".concat(prefix, "--data-table-content")
42
- }, /*#__PURE__*/React__default["default"].createElement("table", _rollupPluginBabelHelpers["extends"]({}, other, {
47
+ }, /*#__PURE__*/React__default["default"].createElement("table", _rollupPluginBabelHelpers["extends"]({
48
+ "aria-labelledby": titleId,
49
+ "aria-describedby": descriptionId
50
+ }, other, {
43
51
  className: componentClass
44
52
  }), children));
45
53
  return stickyHeader ? /*#__PURE__*/React__default["default"].createElement("section", {
@@ -14,6 +14,8 @@ var cx = require('classnames');
14
14
  var PropTypes = require('prop-types');
15
15
  var React = require('react');
16
16
  var usePrefix = require('../../internal/usePrefix.js');
17
+ var useId = require('../../internal/useId.js');
18
+ var TableContext = require('./TableContext.js');
17
19
 
18
20
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
21
 
@@ -34,17 +36,30 @@ var TableContainer = function TableContainer(_ref) {
34
36
  useStaticWidth = _ref.useStaticWidth,
35
37
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
36
38
 
39
+ var baseId = useId.useId('tc');
40
+ var titleId = "".concat(baseId, "-title");
41
+ var descriptionId = "".concat(baseId, "-description");
37
42
  var prefix = usePrefix.usePrefix();
38
43
  var tableContainerClasses = cx__default["default"](className, "".concat(prefix, "--data-table-container"), (_cx = {}, _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table--max-width"), stickyHeader), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--data-table-container--static"), useStaticWidth), _cx));
39
- return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, rest, {
44
+ var value = React.useMemo(function () {
45
+ return {
46
+ titleId: title ? titleId : null,
47
+ descriptionId: description ? descriptionId : null
48
+ };
49
+ }, [title, description, titleId, descriptionId]);
50
+ return /*#__PURE__*/React__default["default"].createElement(TableContext.TableContext.Provider, {
51
+ value: value
52
+ }, /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({}, rest, {
40
53
  className: tableContainerClasses
41
54
  }), title && /*#__PURE__*/React__default["default"].createElement("div", {
42
55
  className: "".concat(prefix, "--data-table-header")
43
56
  }, /*#__PURE__*/React__default["default"].createElement("h4", {
44
- className: "".concat(prefix, "--data-table-header__title")
57
+ className: "".concat(prefix, "--data-table-header__title"),
58
+ id: titleId
45
59
  }, title), /*#__PURE__*/React__default["default"].createElement("p", {
46
- className: "".concat(prefix, "--data-table-header__description")
47
- }, description)), children);
60
+ className: "".concat(prefix, "--data-table-header__description"),
61
+ id: descriptionId
62
+ }, description)), children));
48
63
  };
49
64
 
50
65
  TableContainer.propTypes = {
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2022
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 React = require('react');
13
+
14
+ var TableContext = /*#__PURE__*/React.createContext({
15
+ titleId: null,
16
+ descriptionId: null
17
+ });
18
+
19
+ exports.TableContext = TableContext;
@@ -14,7 +14,7 @@ var PropTypes = require('prop-types');
14
14
  var React = require('react');
15
15
  var cx = require('classnames');
16
16
  var InlineCheckbox = require('../InlineCheckbox/InlineCheckbox.js');
17
- var index = require('../RadioButton/index.js');
17
+ var RadioButton = require('../RadioButton/RadioButton.js');
18
18
  var usePrefix = require('../../internal/usePrefix.js');
19
19
 
20
20
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -44,7 +44,7 @@ var TableSelectRow = function TableSelectRow(_ref) {
44
44
  checked: checked,
45
45
  disabled: disabled
46
46
  };
47
- var InlineInputComponent = radio ? index["default"] : InlineCheckbox["default"];
47
+ var InlineInputComponent = radio ? RadioButton["default"] : InlineCheckbox["default"];
48
48
  var tableSelectRowClasses = cx__default["default"]("".concat(prefix, "--table-column-checkbox"), (_classNames = {}, _rollupPluginBabelHelpers.defineProperty(_classNames, className, className), _rollupPluginBabelHelpers.defineProperty(_classNames, "".concat(prefix, "--table-column-radio"), radio), _classNames));
49
49
  return /*#__PURE__*/React__default["default"].createElement("td", {
50
50
  className: tableSelectRowClasses
@@ -70,6 +70,8 @@ var FileUploader = /*#__PURE__*/function (_React$Component) {
70
70
 
71
71
  _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "nodes", []);
72
72
 
73
+ _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "uploaderButton", /*#__PURE__*/React__default["default"].createRef());
74
+
73
75
  _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "handleChange", function (evt) {
74
76
  evt.stopPropagation();
75
77
  var filenames = Array.prototype.map.call(evt.target.files, function (file) {
@@ -102,6 +104,8 @@ var FileUploader = /*#__PURE__*/function (_React$Component) {
102
104
 
103
105
  if (_this.props.onDelete) {
104
106
  _this.props.onDelete(evt);
107
+
108
+ _this.uploaderButton.current.focus();
105
109
  }
106
110
 
107
111
  _this.props.onClick(evt);
@@ -157,6 +161,7 @@ var FileUploader = /*#__PURE__*/function (_React$Component) {
157
161
  }, labelTitle), /*#__PURE__*/React__default["default"].createElement("p", {
158
162
  className: getHelperLabelClasses("".concat(prefix, "--label-description"))
159
163
  }, labelDescription), /*#__PURE__*/React__default["default"].createElement(FileUploaderButton["default"], {
164
+ innerRef: this.uploaderButton,
160
165
  disabled: disabled,
161
166
  labelText: buttonLabel,
162
167
  multiple: multiple,
@@ -177,11 +182,13 @@ var FileUploader = /*#__PURE__*/function (_React$Component) {
177
182
  } // eslint-disable-line
178
183
 
179
184
  }, other), /*#__PURE__*/React__default["default"].createElement("p", {
180
- className: "".concat(prefix, "--file-filename")
185
+ className: "".concat(prefix, "--file-filename"),
186
+ id: name
181
187
  }, name), /*#__PURE__*/React__default["default"].createElement("span", {
182
188
  className: "".concat(prefix, "--file__state-container")
183
189
  }, /*#__PURE__*/React__default["default"].createElement(Filename["default"], {
184
190
  iconDescription: iconDescription,
191
+ "aria-describedby": name,
185
192
  status: filenameStatus,
186
193
  onKeyDown: function onKeyDown(evt) {
187
194
  if (match.matches(evt, [keys.Enter, keys.Space])) {
@@ -45,7 +45,7 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
45
45
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
46
46
  var FeatureFlags__namespace = /*#__PURE__*/_interopNamespace(FeatureFlags);
47
47
 
48
- var _excluded = ["accept", "buttonKind", "className", "disabled", "disableLabelChanges", "id", "labelText", "multiple", "onChange", "role", "name", "size", "tabIndex"];
48
+ var _excluded = ["accept", "buttonKind", "className", "disabled", "disableLabelChanges", "id", "labelText", "multiple", "onChange", "role", "name", "size", "tabIndex", "innerRef"];
49
49
 
50
50
  function noop() {}
51
51
 
@@ -74,6 +74,7 @@ function FileUploaderButton(_ref) {
74
74
  size = _ref$size === void 0 ? 'md' : _ref$size,
75
75
  _ref$tabIndex = _ref.tabIndex,
76
76
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
77
+ innerRef = _ref.innerRef,
77
78
  other = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
78
79
 
79
80
  var prefix = usePrefix.usePrefix();
@@ -125,6 +126,7 @@ function FileUploaderButton(_ref) {
125
126
  }
126
127
 
127
128
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("label", _rollupPluginBabelHelpers["extends"]({
129
+ ref: innerRef,
128
130
  tabIndex: disabled ? -1 : tabIndex || 0,
129
131
  className: classes,
130
132
  onKeyDown: onKeyDown,
@@ -24,7 +24,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
24
24
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
25
25
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
26
26
 
27
- var _excluded = ["accept", "className", "id", "disabled", "labelText", "multiple", "name", "onAddFiles", "pattern", "role", "tabIndex"];
27
+ var _excluded = ["accept", "className", "id", "disabled", "labelText", "multiple", "name", "onAddFiles", "pattern", "role", "tabIndex", "innerRef"];
28
28
 
29
29
  function FileUploaderDropContainer(_ref) {
30
30
  var _classNames2;
@@ -40,6 +40,7 @@ function FileUploaderDropContainer(_ref) {
40
40
  pattern = _ref.pattern,
41
41
  role = _ref.role,
42
42
  tabIndex = _ref.tabIndex,
43
+ innerRef = _ref.innerRef,
43
44
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
44
45
 
45
46
  var prefix = usePrefix.usePrefix();
@@ -135,6 +136,7 @@ function FileUploaderDropContainer(_ref) {
135
136
  handleChange(evt);
136
137
  }
137
138
  }, /*#__PURE__*/React__default["default"].createElement("label", _rollupPluginBabelHelpers["extends"]({
139
+ ref: innerRef,
138
140
  className: labelClasses,
139
141
  htmlFor: uid,
140
142
  tabIndex: tabIndex || 0,
@@ -71,11 +71,13 @@ function FileUploaderItem(_ref) {
71
71
  className: classes
72
72
  }, other), /*#__PURE__*/React__default["default"].createElement("p", {
73
73
  className: "".concat(prefix, "--file-filename"),
74
- title: name
74
+ title: name,
75
+ id: name
75
76
  }, name), /*#__PURE__*/React__default["default"].createElement("span", {
76
77
  className: "".concat(prefix, "--file__state-container")
77
78
  }, /*#__PURE__*/React__default["default"].createElement(Filename["default"], {
78
79
  iconDescription: iconDescription,
80
+ "aria-describedby": name,
79
81
  status: status,
80
82
  invalid: invalid,
81
83
  onKeyDown: function onKeyDown(evt) {
@@ -32,7 +32,7 @@ var Form = function Form(_ref) {
32
32
  var classNames = cx__default["default"]("".concat(prefix, "--form"), className);
33
33
  return /*#__PURE__*/React__default["default"].createElement("form", _rollupPluginBabelHelpers["extends"]({
34
34
  className: classNames
35
- }, other), ' ', children, ' ');
35
+ }, other), children);
36
36
  };
37
37
 
38
38
  Form.propTypes = {
@@ -31,7 +31,7 @@ var FormGroup = function FormGroup(_ref) {
31
31
  className = _ref.className,
32
32
  message = _ref.message,
33
33
  messageText = _ref.messageText,
34
- other = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
34
+ rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
35
35
 
36
36
  var prefix = usePrefix.usePrefix();
37
37
  var classNamesFieldset = cx__default["default"]("".concat(prefix, "--fieldset"), className);
@@ -39,11 +39,11 @@ var FormGroup = function FormGroup(_ref) {
39
39
  'data-invalid': ''
40
40
  }, {
41
41
  className: classNamesFieldset
42
- }, other, {
43
- "aria-labelledby": other['aria-labelledby'] || legendId
42
+ }, rest, {
43
+ "aria-labelledby": rest['aria-labelledby'] || legendId
44
44
  }), /*#__PURE__*/React__default["default"].createElement("legend", {
45
45
  className: "".concat(prefix, "--label"),
46
- id: legendId || other['aria-labelledby']
46
+ id: legendId || rest['aria-labelledby']
47
47
  }, legendText), children, message ? /*#__PURE__*/React__default["default"].createElement("div", {
48
48
  className: "".concat(prefix, "--form__requirements")
49
49
  }, messageText) : null);
@@ -23,17 +23,17 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
23
23
 
24
24
  var _excluded = ["className", "children"];
25
25
 
26
- var FormItem = function FormItem(_ref) {
26
+ function FormItem(_ref) {
27
27
  var className = _ref.className,
28
28
  children = _ref.children,
29
- other = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
29
+ rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
30
30
 
31
31
  var prefix = usePrefix.usePrefix();
32
32
  var classNames = cx__default["default"]("".concat(prefix, "--form-item"), className);
33
33
  return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({
34
34
  className: classNames
35
- }, other), children);
36
- };
35
+ }, rest), children);
36
+ }
37
37
 
38
38
  FormItem.propTypes = {
39
39
  /**
@@ -46,6 +46,5 @@ FormItem.propTypes = {
46
46
  */
47
47
  className: PropTypes__default["default"].string
48
48
  };
49
- var FormItem$1 = FormItem;
50
49
 
51
- exports["default"] = FormItem$1;
50
+ exports["default"] = FormItem;