@carbon/react 1.6.0-rc.0 → 1.7.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 (55) hide show
  1. package/es/components/DataTable/TableToolbarSearch.js +10 -2
  2. package/es/components/Form/Form.js +1 -1
  3. package/es/components/FormGroup/FormGroup.js +4 -4
  4. package/es/components/FormItem/FormItem.js +5 -6
  5. package/es/components/Layer/index.js +13 -1
  6. package/es/components/MultiSelect/next/FilterableMultiSelect.js +3 -1
  7. package/es/components/OverflowMenu/OverflowMenu.js +0 -1
  8. package/es/components/Popover/index.js +137 -8
  9. package/es/components/ProgressBar/ProgressBar.js +6 -3
  10. package/es/components/Select/Select.js +14 -7
  11. package/es/components/UIShell/HeaderMenu.js +1 -1
  12. package/es/components/UIShell/HeaderMenuButton.js +3 -4
  13. package/es/components/UIShell/HeaderName.js +3 -4
  14. package/es/components/UIShell/HeaderNavigation.js +27 -75
  15. package/es/components/UIShell/SideNavDetails.js +8 -3
  16. package/es/components/UIShell/SideNavFooter.js +3 -10
  17. package/es/components/UIShell/SideNavIcon.js +3 -4
  18. package/es/components/UIShell/SideNavItem.js +4 -5
  19. package/es/components/UIShell/SideNavLink.js +0 -6
  20. package/es/components/UIShell/SideNavLinkText.js +3 -4
  21. package/es/components/UIShell/SideNavMenu.js +93 -131
  22. package/es/components/UIShell/SideNavSwitcher.js +4 -2
  23. package/es/components/UIShell/SkipToContent.js +3 -4
  24. package/es/index.js +10 -9
  25. package/lib/components/DataTable/TableToolbarSearch.js +10 -2
  26. package/lib/components/Form/Form.js +1 -1
  27. package/lib/components/FormGroup/FormGroup.js +4 -4
  28. package/lib/components/FormItem/FormItem.js +5 -6
  29. package/lib/components/Layer/index.js +13 -0
  30. package/lib/components/MultiSelect/next/FilterableMultiSelect.js +3 -1
  31. package/lib/components/OverflowMenu/OverflowMenu.js +0 -1
  32. package/lib/components/Popover/index.js +135 -6
  33. package/lib/components/ProgressBar/ProgressBar.js +6 -3
  34. package/lib/components/Select/Select.js +14 -7
  35. package/lib/components/UIShell/HeaderMenu.js +1 -1
  36. package/lib/components/UIShell/HeaderMenuButton.js +3 -4
  37. package/lib/components/UIShell/HeaderName.js +3 -4
  38. package/lib/components/UIShell/HeaderNavigation.js +25 -73
  39. package/lib/components/UIShell/SideNavDetails.js +8 -3
  40. package/lib/components/UIShell/SideNavFooter.js +3 -10
  41. package/lib/components/UIShell/SideNavIcon.js +3 -4
  42. package/lib/components/UIShell/SideNavItem.js +4 -5
  43. package/lib/components/UIShell/SideNavLink.js +0 -6
  44. package/lib/components/UIShell/SideNavLinkText.js +3 -4
  45. package/lib/components/UIShell/SideNavMenu.js +89 -128
  46. package/lib/components/UIShell/SideNavSwitcher.js +4 -2
  47. package/lib/components/UIShell/SkipToContent.js +3 -4
  48. package/lib/index.js +42 -40
  49. package/package.json +4 -4
  50. package/es/components/UIShell/index.js +0 -17
  51. package/es/components/UIShell/next/HeaderNavigation.js +0 -52
  52. package/es/components/UIShell/next/SideNavMenu.js +0 -160
  53. package/lib/components/UIShell/index.js +0 -42
  54. package/lib/components/UIShell/next/HeaderNavigation.js +0 -62
  55. package/lib/components/UIShell/next/SideNavMenu.js +0 -170
@@ -11,7 +11,7 @@ import PropTypes from 'prop-types';
11
11
  import React__default from 'react';
12
12
  import { usePrefix } from '../../internal/usePrefix.js';
13
13
 
14
- var SideNavIcon = function SideNavIcon(_ref) {
14
+ function SideNavIcon(_ref) {
15
15
  var _cx;
16
16
 
17
17
  var children = _ref.children,
@@ -22,7 +22,7 @@ var SideNavIcon = function SideNavIcon(_ref) {
22
22
  return /*#__PURE__*/React__default.createElement("div", {
23
23
  className: className
24
24
  }, children);
25
- };
25
+ }
26
26
 
27
27
  SideNavIcon.propTypes = {
28
28
  /**
@@ -44,6 +44,5 @@ SideNavIcon.propTypes = {
44
44
  SideNavIcon.defaultProps = {
45
45
  small: false
46
46
  };
47
- var SideNavIcon$1 = SideNavIcon;
48
47
 
49
- export { SideNavIcon$1 as default };
48
+ export { SideNavIcon as default };
@@ -11,7 +11,7 @@ import PropTypes from 'prop-types';
11
11
  import React__default from 'react';
12
12
  import { usePrefix } from '../../internal/usePrefix.js';
13
13
 
14
- var SideNavItem = function SideNavItem(_ref) {
14
+ function SideNavItem(_ref) {
15
15
  var _cx;
16
16
 
17
17
  var customClassName = _ref.className,
@@ -23,11 +23,11 @@ var SideNavItem = function SideNavItem(_ref) {
23
23
  return /*#__PURE__*/React__default.createElement("li", {
24
24
  className: className
25
25
  }, children);
26
- };
26
+ }
27
27
 
28
28
  SideNavItem.propTypes = {
29
29
  /**
30
- * Provide a single icon as the child to `SideNavIcon` to render in the
30
+ * Provide a single icon as the child to `SideNavItem` to render in the
31
31
  * container
32
32
  */
33
33
  children: PropTypes.node.isRequired,
@@ -42,6 +42,5 @@ SideNavItem.propTypes = {
42
42
  */
43
43
  large: PropTypes.bool
44
44
  };
45
- var SideNavItem$1 = SideNavItem;
46
45
 
47
- export { SideNavItem$1 as default };
46
+ export { SideNavItem as default };
@@ -49,12 +49,6 @@ SideNavLink.propTypes = _objectSpread2(_objectSpread2({}, LinkPropTypes), {}, {
49
49
  */
50
50
  className: PropTypes.string,
51
51
 
52
- /**
53
- * Property to indicate if the side nav container is open (or not). Use to
54
- * keep local state and styling in step with the SideNav expansion state.
55
- */
56
- isSideNavExpanded: PropTypes.bool,
57
-
58
52
  /**
59
53
  * Specify if this is a large variation of the SideNavLink
60
54
  */
@@ -13,7 +13,7 @@ import { usePrefix } from '../../internal/usePrefix.js';
13
13
 
14
14
  var _excluded = ["className", "children"];
15
15
 
16
- var SideNavLinkText = function SideNavLinkText(_ref) {
16
+ function SideNavLinkText(_ref) {
17
17
  var customClassName = _ref.className,
18
18
  children = _ref.children,
19
19
  rest = _objectWithoutProperties(_ref, _excluded);
@@ -23,7 +23,7 @@ var SideNavLinkText = function SideNavLinkText(_ref) {
23
23
  return /*#__PURE__*/React__default.createElement("span", _extends({}, rest, {
24
24
  className: className
25
25
  }), children);
26
- };
26
+ }
27
27
 
28
28
  SideNavLinkText.propTypes = {
29
29
  /**
@@ -36,6 +36,5 @@ SideNavLinkText.propTypes = {
36
36
  */
37
37
  className: PropTypes.string
38
38
  };
39
- var SideNavLinkText$1 = SideNavLinkText;
40
39
 
41
- export { SideNavLinkText$1 as default };
40
+ export { SideNavLinkText as default };
@@ -5,119 +5,84 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { inherits as _inherits, createSuper as _createSuper, classCallCheck as _classCallCheck, defineProperty as _defineProperty, assertThisInitialized as _assertThisInitialized, createClass as _createClass, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import { ChevronDown } from '@carbon/icons-react';
10
10
  import cx from 'classnames';
11
11
  import PropTypes from 'prop-types';
12
- import React__default from 'react';
12
+ import React__default, { useState } from 'react';
13
13
  import SideNavIcon from './SideNavIcon.js';
14
- import { PrefixContext } from '../../internal/usePrefix.js';
14
+ import { usePrefix } from '../../internal/usePrefix.js';
15
15
  import { match } from '../../internal/keyboard/match.js';
16
16
  import { Escape } from '../../internal/keyboard/keys.js';
17
17
 
18
18
  var _ChevronDown;
19
- var SideNavMenu = /*#__PURE__*/function (_React$Component) {
20
- _inherits(SideNavMenu, _React$Component);
21
-
22
- var _super = _createSuper(SideNavMenu);
23
-
24
- function SideNavMenu(props) {
25
- var _this;
26
-
27
- _classCallCheck(this, SideNavMenu);
28
-
29
- _this = _super.call(this, props);
30
-
31
- _defineProperty(_assertThisInitialized(_this), "handleToggleExpand", function () {
32
- _this.setState(function (state) {
33
- return {
34
- isExpanded: !state.isExpanded
35
- };
36
- });
37
- });
38
-
39
- _defineProperty(_assertThisInitialized(_this), "handleKeyDown", function (event) {
40
- if (match(event, Escape)) {
41
- _this.setState(function () {
42
- return {
43
- isExpanded: false
44
- };
45
- });
46
- }
47
- });
48
-
49
- _this.state = {
50
- isExpanded: props.defaultExpanded || false,
51
- wasPreviouslyExpanded: props.defaultExpanded || false
52
- };
53
- return _this;
19
+ var SideNavMenu = /*#__PURE__*/React__default.forwardRef(function SideNavMenu(props, ref) {
20
+ var _cx;
21
+
22
+ var customClassName = props.className,
23
+ children = props.children,
24
+ _props$defaultExpande = props.defaultExpanded,
25
+ defaultExpanded = _props$defaultExpande === void 0 ? false : _props$defaultExpande,
26
+ _props$isActive = props.isActive,
27
+ isActive = _props$isActive === void 0 ? false : _props$isActive,
28
+ _props$large = props.large,
29
+ large = _props$large === void 0 ? false : _props$large,
30
+ IconElement = props.renderIcon,
31
+ isSideNavExpanded = props.isSideNavExpanded,
32
+ title = props.title;
33
+ var prefix = usePrefix();
34
+
35
+ var _useState = useState(defaultExpanded),
36
+ _useState2 = _slicedToArray(_useState, 2),
37
+ isExpanded = _useState2[0],
38
+ setIsExpanded = _useState2[1];
39
+
40
+ var _useState3 = useState(defaultExpanded),
41
+ _useState4 = _slicedToArray(_useState3, 2),
42
+ prevExpanded = _useState4[0],
43
+ setPrevExpanded = _useState4[1];
44
+
45
+ var className = cx((_cx = {}, _defineProperty(_cx, "".concat(prefix, "--side-nav__item"), true), _defineProperty(_cx, "".concat(prefix, "--side-nav__item--active"), isActive || hasActiveChild(children) && !isExpanded), _defineProperty(_cx, "".concat(prefix, "--side-nav__item--icon"), IconElement), _defineProperty(_cx, "".concat(prefix, "--side-nav__item--large"), large), _defineProperty(_cx, customClassName, !!customClassName), _cx));
46
+
47
+ if (isSideNavExpanded === false && isExpanded === true) {
48
+ setIsExpanded(false);
49
+ setPrevExpanded(true);
50
+ } else if (isSideNavExpanded === true && prevExpanded === true) {
51
+ setIsExpanded(true);
52
+ setPrevExpanded(false);
54
53
  }
55
54
 
56
- _createClass(SideNavMenu, [{
57
- key: "render",
58
- value: function render() {
59
- var _cx;
60
-
61
- var prefix = this.context;
62
- var _this$props = this.props,
63
- buttonRef = _this$props.buttonRef,
64
- customClassName = _this$props.className,
65
- children = _this$props.children,
66
- IconElement = _this$props.renderIcon,
67
- isActive = _this$props.isActive,
68
- title = _this$props.title,
69
- large = _this$props.large;
70
- var isExpanded = this.state.isExpanded;
71
- var hasActiveChild;
72
-
73
- if (children) {
74
- // if we have children, either a single or multiple, find if it is active
75
- hasActiveChild = Array.isArray(children) ? children.some(function (child) {
76
- if (child.props && (child.props.isActive === true || child.props['aria-current'])) {
77
- return true;
78
- }
79
-
80
- return false;
81
- }) : children.props && (children.props.isActive === true || children.props['aria-current']);
55
+ return (
56
+ /*#__PURE__*/
57
+ // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
58
+ React__default.createElement("li", {
59
+ className: className,
60
+ onKeyDown: function onKeyDown(event) {
61
+ if (match(event, Escape)) {
62
+ setIsExpanded(false);
63
+ }
82
64
  }
83
-
84
- var className = cx((_cx = {}, _defineProperty(_cx, "".concat(prefix, "--side-nav__item"), true), _defineProperty(_cx, "".concat(prefix, "--side-nav__item--active"), isActive || hasActiveChild && !isExpanded), _defineProperty(_cx, "".concat(prefix, "--side-nav__item--icon"), IconElement), _defineProperty(_cx, "".concat(prefix, "--side-nav__item--large"), large), _defineProperty(_cx, customClassName, !!customClassName), _cx));
85
- return (
86
- /*#__PURE__*/
87
- // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
88
- React__default.createElement("li", {
89
- className: className,
90
- onKeyDown: this.handleKeyDown
91
- }, /*#__PURE__*/React__default.createElement("button", {
92
- "aria-expanded": isExpanded,
93
- className: "".concat(prefix, "--side-nav__submenu"),
94
- onClick: this.handleToggleExpand,
95
- ref: buttonRef,
96
- type: "button"
97
- }, IconElement && /*#__PURE__*/React__default.createElement(SideNavIcon, null, /*#__PURE__*/React__default.createElement(IconElement, null)), /*#__PURE__*/React__default.createElement("span", {
98
- className: "".concat(prefix, "--side-nav__submenu-title")
99
- }, title), /*#__PURE__*/React__default.createElement(SideNavIcon, {
100
- className: "".concat(prefix, "--side-nav__submenu-chevron"),
101
- small: true
102
- }, _ChevronDown || (_ChevronDown = /*#__PURE__*/React__default.createElement(ChevronDown, {
103
- size: 20
104
- })))), /*#__PURE__*/React__default.createElement("ul", {
105
- className: "".concat(prefix, "--side-nav__menu")
106
- }, children))
107
- );
108
- }
109
- }]);
110
-
111
- return SideNavMenu;
112
- }(React__default.Component);
113
-
114
- _defineProperty(SideNavMenu, "contextType", PrefixContext);
115
-
116
- _defineProperty(SideNavMenu, "propTypes", {
117
- buttonRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
118
- current: PropTypes.any
119
- })]),
120
-
65
+ }, /*#__PURE__*/React__default.createElement("button", {
66
+ "aria-expanded": isExpanded,
67
+ className: "".concat(prefix, "--side-nav__submenu"),
68
+ onClick: function onClick() {
69
+ setIsExpanded(!isExpanded);
70
+ },
71
+ ref: ref,
72
+ type: "button"
73
+ }, IconElement && /*#__PURE__*/React__default.createElement(SideNavIcon, null, /*#__PURE__*/React__default.createElement(IconElement, null)), /*#__PURE__*/React__default.createElement("span", {
74
+ className: "".concat(prefix, "--side-nav__submenu-title")
75
+ }, title), /*#__PURE__*/React__default.createElement(SideNavIcon, {
76
+ className: "".concat(prefix, "--side-nav__submenu-chevron"),
77
+ small: true
78
+ }, _ChevronDown || (_ChevronDown = /*#__PURE__*/React__default.createElement(ChevronDown, {
79
+ size: 20
80
+ })))), /*#__PURE__*/React__default.createElement("ul", {
81
+ className: "".concat(prefix, "--side-nav__menu")
82
+ }, children))
83
+ );
84
+ });
85
+ SideNavMenu.propTypes = {
121
86
  /**
122
87
  * Provide <SideNavMenuItem>'s inside of the `SideNavMenu`
123
88
  */
@@ -161,38 +126,35 @@ _defineProperty(SideNavMenu, "propTypes", {
161
126
  * Provide the text for the overall menu name
162
127
  */
163
128
  title: PropTypes.string.isRequired
164
- });
129
+ };
130
+
131
+ function hasActiveChild(children) {
132
+ // if we have children, either a single or multiple, find if it is active
133
+ if (Array.isArray(children)) {
134
+ return children.some(function (child) {
135
+ if (!child.props) {
136
+ return false;
137
+ }
165
138
 
166
- _defineProperty(SideNavMenu, "defaultProps", {
167
- defaultExpanded: false,
168
- isActive: false,
169
- large: false
170
- });
139
+ if (child.props.isActive === true) {
140
+ return true;
141
+ }
171
142
 
172
- _defineProperty(SideNavMenu, "getDerivedStateFromProps", function (props, state) {
173
- var derivedState = null;
174
-
175
- if (props.isSideNavExpanded === false && state.isExpanded === true) {
176
- derivedState = {
177
- isExpanded: props.isSideNavExpanded,
178
- wasPreviouslyExpanded: true
179
- };
180
- } else if (props.isSideNavExpanded === true && state.wasPreviouslyExpanded === true) {
181
- derivedState = {
182
- isExpanded: props.isSideNavExpanded,
183
- wasPreviouslyExpanded: false
184
- };
143
+ if (child.props['aria-current']) {
144
+ return true;
145
+ }
146
+
147
+ return false;
148
+ });
185
149
  }
186
150
 
187
- return derivedState;
188
- });
151
+ if (children.props) {
152
+ if (children.props.isActive === true || children.props['aria-current']) {
153
+ return true;
154
+ }
155
+ }
189
156
 
190
- var SideNavMenuForwardRef = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
191
- return /*#__PURE__*/React__default.createElement(SideNavMenu, _extends({}, props, {
192
- buttonRef: ref
193
- }));
194
- });
195
- SideNavMenuForwardRef.displayName = 'SideNavMenu';
196
- var SideNavMenuClassic = SideNavMenuForwardRef;
157
+ return false;
158
+ }
197
159
 
198
- export { SideNavMenu, SideNavMenuClassic as default };
160
+ export { SideNavMenu };
@@ -10,9 +10,11 @@ import cx from 'classnames';
10
10
  import PropTypes from 'prop-types';
11
11
  import React__default from 'react';
12
12
  import { usePrefix } from '../../internal/usePrefix.js';
13
+ import { useId } from '../../internal/useId.js';
13
14
 
14
15
  var _ChevronDown;
15
16
  var SideNavSwitcher = /*#__PURE__*/React__default.forwardRef(function SideNavSwitcher(props, ref) {
17
+ var id = useId('side-nav-switcher');
16
18
  var prefix = usePrefix();
17
19
  var customClassName = props.className,
18
20
  labelText = props.labelText,
@@ -23,10 +25,10 @@ var SideNavSwitcher = /*#__PURE__*/React__default.forwardRef(function SideNavSwi
23
25
  return /*#__PURE__*/React__default.createElement("div", {
24
26
  className: className
25
27
  }, /*#__PURE__*/React__default.createElement("label", {
26
- htmlFor: "side-nav-switcher",
28
+ htmlFor: id,
27
29
  className: "".concat(prefix, "--assistive-text")
28
30
  }, labelText), /*#__PURE__*/React__default.createElement("select", {
29
- id: "carbon-side-nav-switcher",
31
+ id: id,
30
32
  className: "".concat(prefix, "--side-nav__select"),
31
33
  defaultValue: "",
32
34
  onBlur: onChange,
@@ -13,7 +13,7 @@ import { usePrefix } from '../../internal/usePrefix.js';
13
13
 
14
14
  var _excluded = ["children", "className", "href", "tabIndex"];
15
15
 
16
- var SkipToContent = function SkipToContent(_ref) {
16
+ function SkipToContent(_ref) {
17
17
  var children = _ref.children,
18
18
  customClassName = _ref.className,
19
19
  href = _ref.href,
@@ -27,7 +27,7 @@ var SkipToContent = function SkipToContent(_ref) {
27
27
  href: href,
28
28
  tabIndex: tabIndex
29
29
  }), children);
30
- };
30
+ }
31
31
 
32
32
  SkipToContent.propTypes = {
33
33
  /**
@@ -52,6 +52,5 @@ SkipToContent.defaultProps = {
52
52
  href: '#main-content',
53
53
  tabIndex: '0'
54
54
  };
55
- var SkipToContent$1 = SkipToContent;
56
55
 
57
- export { SkipToContent$1 as default };
56
+ export { SkipToContent as default };
package/es/index.js CHANGED
@@ -98,11 +98,10 @@ export { default as TabsSkeleton } from './components/Tabs/Tabs.Skeleton.js';
98
98
  export { default as TextInputSkeleton } from './components/TextInput/TextInput.Skeleton.js';
99
99
  export { default as ToggleSmallSkeleton } from './components/ToggleSmall/ToggleSmall.Skeleton.js';
100
100
  export { default as IconSkeleton } from './components/Icon/Icon.Skeleton.js';
101
- export { HeaderNavigation, SideNavMenu } from './components/UIShell/index.js';
102
101
  export { FeatureFlags as unstable_FeatureFlags, useFeatureFlag as unstable_useFeatureFlag, useFeatureFlags as unstable_useFeatureFlags } from './components/FeatureFlags/index.js';
103
102
  export { Heading, Section } from './components/Heading/index.js';
104
103
  export { IconButton } from './components/IconButton/index.js';
105
- export { Layer } from './components/Layer/index.js';
104
+ export { Layer, useLayer } from './components/Layer/index.js';
106
105
  import './components/Menu/index.js';
107
106
  export { OverflowMenuV2 as unstable_OverflowMenuV2 } from './components/OverflowMenuV2/index.js';
108
107
  export { Popover, PopoverContent } from './components/Popover/index.js';
@@ -118,7 +117,14 @@ export { default as FileUploaderDropContainer } from './components/FileUploader/
118
117
  export { default as FileUploaderItem } from './components/FileUploader/FileUploaderItem.js';
119
118
  export { default as Row } from './components/Grid/Row.js';
120
119
  export { default as Column } from './components/Grid/Column.js';
120
+ export { default as HeaderMenuButton } from './components/UIShell/HeaderMenuButton.js';
121
+ export { default as HeaderName } from './components/UIShell/HeaderName.js';
122
+ export { default as SkipToContent } from './components/UIShell/SkipToContent.js';
121
123
  export { default as SideNavDivider } from './components/UIShell/SideNavDivider.js';
124
+ export { default as SideNavFooter } from './components/UIShell/SideNavFooter.js';
125
+ export { default as SideNavIcon } from './components/UIShell/SideNavIcon.js';
126
+ export { default as SideNavItem } from './components/UIShell/SideNavItem.js';
127
+ export { default as SideNavLinkText } from './components/UIShell/SideNavLinkText.js';
122
128
  export { default as unstable_useContextMenu } from './components/ContextMenu/useContextMenu.js';
123
129
  export { default as unstable_MenuDivider } from './components/Menu/MenuDivider.js';
124
130
  export { default as unstable_MenuGroup } from './components/Menu/MenuGroup.js';
@@ -171,24 +177,19 @@ export { default as HeaderContainer } from './components/UIShell/HeaderContainer
171
177
  export { default as HeaderGlobalAction } from './components/UIShell/HeaderGlobalAction.js';
172
178
  export { default as HeaderGlobalBar } from './components/UIShell/HeaderGlobalBar.js';
173
179
  export { default as HeaderMenu } from './components/UIShell/HeaderMenu.js';
174
- export { default as HeaderMenuButton } from './components/UIShell/HeaderMenuButton.js';
175
180
  export { default as HeaderMenuItem } from './components/UIShell/HeaderMenuItem.js';
176
- export { default as HeaderName } from './components/UIShell/HeaderName.js';
181
+ export { HeaderNavigation } from './components/UIShell/HeaderNavigation.js';
177
182
  export { default as HeaderPanel } from './components/UIShell/HeaderPanel.js';
178
183
  export { default as HeaderSideNavItems } from './components/UIShell/HeaderSideNavItems.js';
179
184
  export { default as Switcher } from './components/UIShell/Switcher.js';
180
185
  export { default as SwitcherItem } from './components/UIShell/SwitcherItem.js';
181
186
  export { default as SwitcherDivider } from './components/UIShell/SwitcherDivider.js';
182
- export { default as SkipToContent } from './components/UIShell/SkipToContent.js';
183
187
  export { default as SideNav } from './components/UIShell/SideNav.js';
184
188
  export { default as SideNavDetails } from './components/UIShell/SideNavDetails.js';
185
- export { default as SideNavFooter } from './components/UIShell/SideNavFooter.js';
186
189
  export { default as SideNavHeader } from './components/UIShell/SideNavHeader.js';
187
- export { default as SideNavIcon } from './components/UIShell/SideNavIcon.js';
188
- export { default as SideNavItem } from './components/UIShell/SideNavItem.js';
189
190
  export { default as SideNavItems } from './components/UIShell/SideNavItems.js';
190
191
  export { default as SideNavLink } from './components/UIShell/SideNavLink.js';
191
- export { default as SideNavLinkText } from './components/UIShell/SideNavLinkText.js';
192
+ export { SideNavMenu } from './components/UIShell/SideNavMenu.js';
192
193
  export { default as SideNavMenuItem } from './components/UIShell/SideNavMenuItem.js';
193
194
  export { default as SideNavSwitcher } from './components/UIShell/SideNavSwitcher.js';
194
195
  export { Stack } from './components/Stack/Stack.js';
@@ -23,7 +23,7 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
23
23
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
24
24
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
25
25
 
26
- var _excluded = ["className", "searchContainerClass", "onChange", "onClear", "translateWithId", "placeholder", "labelText", "expanded", "defaultExpanded", "defaultValue", "disabled", "onExpand", "persistent", "id", "onBlur", "onFocus"];
26
+ var _excluded = ["className", "searchContainerClass", "onChange", "onClear", "translateWithId", "placeholder", "labelText", "expanded", "defaultExpanded", "defaultValue", "disabled", "onExpand", "persistent", "id", "onBlur", "onFocus", "size"];
27
27
  var getInstanceId = instanceId["default"]();
28
28
  var translationKeys = {
29
29
  'carbon.table.toolbar.search.label': 'Filter table',
@@ -53,6 +53,8 @@ var TableToolbarSearch = function TableToolbarSearch(_ref) {
53
53
  id = _ref.id,
54
54
  onBlur = _ref.onBlur,
55
55
  onFocus = _ref.onFocus,
56
+ _ref$size = _ref.size,
57
+ size = _ref$size === void 0 ? 'lg' : _ref$size,
56
58
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
57
59
 
58
60
  var _useRef = React.useRef(expandedProp !== undefined),
@@ -136,7 +138,8 @@ var TableToolbarSearch = function TableToolbarSearch(_ref) {
136
138
  } : handleOnFocus,
137
139
  onBlur: onBlur ? function (event) {
138
140
  return onBlur(event, handleExpand);
139
- } : handleOnBlur
141
+ } : handleOnBlur,
142
+ size: size
140
143
  }, rest));
141
144
  };
142
145
 
@@ -222,6 +225,11 @@ TableToolbarSearch.propTypes = {
222
225
  */
223
226
  searchContainerClass: PropTypes__default["default"].string,
224
227
 
228
+ /**
229
+ * Specify the size of the Search
230
+ */
231
+ size: PropTypes__default["default"].oneOf(['sm', 'md', 'lg']),
232
+
225
233
  /**
226
234
  * Optional prop to specify the tabIndex of the <Search> (in expanded state) or the container (in collapsed state)
227
235
  */
@@ -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;
@@ -25,6 +25,18 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
25
25
  var _excluded = ["as", "className", "children", "level"];
26
26
  var levels = ['one', 'two', 'three'];
27
27
  var MAX_LEVEL = levels.length - 1;
28
+ /**
29
+ * A custom hook that will return information about the current layer. A common
30
+ * field to pull from this is the `level` for the layer that the component that
31
+ * calls this hook is currently in
32
+ */
33
+
34
+ function useLayer() {
35
+ var level = React__default["default"].useContext(LayerContext.LayerContext);
36
+ return {
37
+ level: level
38
+ };
39
+ }
28
40
  function Layer(_ref) {
29
41
  var _ref$as = _ref.as,
30
42
  BaseComponent = _ref$as === void 0 ? 'div' : _ref$as,
@@ -70,3 +82,4 @@ Layer.propTypes = {
70
82
  };
71
83
 
72
84
  exports.Layer = Layer;
85
+ exports.useLayer = useLayer;
@@ -272,7 +272,9 @@ var FilterableMultiSelect = /*#__PURE__*/React__default["default"].forwardRef(fu
272
272
  // toggleMenu behavior for the toggleButton to correctly open and
273
273
  // close the menu.
274
274
  onMouseUp: function onMouseUp(event) {
275
- event.stopPropagation();
275
+ if (isOpen) {
276
+ event.stopPropagation();
277
+ }
276
278
  }
277
279
  });
278
280
  var inputProps = getInputProps({
@@ -539,7 +539,6 @@ _rollupPluginBabelHelpers.defineProperty(OverflowMenu, "defaultProps", {
539
539
  onOpen: function onOpen() {},
540
540
  menuOffset: getMenuOffset,
541
541
  menuOffsetFlip: getMenuOffset,
542
- light: false,
543
542
  selectorPrimaryFocus: '[data-overflow-menu-primary-focus]'
544
543
  });
545
544