@zendeskgarden/react-chrome 9.0.0-next.7 → 9.0.0-next.9

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 (94) hide show
  1. package/README.md +17 -14
  2. package/dist/esm/elements/Chrome.js +94 -0
  3. package/dist/esm/elements/SkipNav.js +65 -0
  4. package/dist/esm/elements/body/Body.js +57 -0
  5. package/dist/esm/elements/body/Content.js +54 -0
  6. package/dist/esm/elements/body/Main.js +47 -0
  7. package/dist/esm/elements/footer/Footer.js +67 -0
  8. package/dist/esm/elements/footer/FooterItem.js +47 -0
  9. package/dist/esm/elements/header/Header.js +60 -0
  10. package/dist/esm/elements/header/HeaderItem.js +69 -0
  11. package/dist/esm/elements/header/HeaderItemIcon.js +66 -0
  12. package/dist/esm/elements/header/HeaderItemText.js +51 -0
  13. package/dist/esm/elements/header/HeaderItemWrapper.js +47 -0
  14. package/dist/esm/elements/nav/Nav.js +78 -0
  15. package/dist/esm/elements/nav/NavItem.js +101 -0
  16. package/dist/esm/elements/nav/NavItemIcon.js +66 -0
  17. package/dist/esm/elements/nav/NavItemText.js +58 -0
  18. package/dist/esm/elements/nav/NavList.js +55 -0
  19. package/dist/esm/elements/sheet/Sheet.js +128 -0
  20. package/dist/esm/elements/sheet/components/Body.js +50 -0
  21. package/dist/esm/elements/sheet/components/Close.js +60 -0
  22. package/dist/esm/elements/sheet/components/Description.js +59 -0
  23. package/dist/esm/elements/sheet/components/Footer.js +50 -0
  24. package/dist/esm/elements/sheet/components/FooterItem.js +50 -0
  25. package/dist/esm/elements/sheet/components/Header.js +55 -0
  26. package/dist/esm/elements/sheet/components/Title.js +59 -0
  27. package/dist/esm/index.js +24 -0
  28. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/link-stroke.svg.js +25 -0
  29. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/x-stroke.svg.js +26 -0
  30. package/dist/esm/styled/StyledChrome.js +22 -0
  31. package/dist/esm/styled/StyledSkipNav.js +46 -0
  32. package/dist/esm/styled/StyledSkipNavIcon.js +28 -0
  33. package/dist/esm/styled/body/StyledBody.js +22 -0
  34. package/dist/esm/styled/body/StyledContent.js +25 -0
  35. package/dist/esm/styled/body/StyledMain.js +22 -0
  36. package/dist/esm/styled/footer/StyledFooter.js +25 -0
  37. package/dist/esm/styled/footer/StyledFooterItem.js +22 -0
  38. package/dist/esm/styled/header/StyledBaseHeaderItem.js +35 -0
  39. package/dist/esm/styled/header/StyledHeader.js +31 -0
  40. package/dist/esm/styled/header/StyledHeaderItem.js +37 -0
  41. package/dist/esm/styled/header/StyledHeaderItemIcon.js +22 -0
  42. package/dist/esm/styled/header/StyledHeaderItemText.js +23 -0
  43. package/dist/esm/styled/header/StyledHeaderItemWrapper.js +24 -0
  44. package/dist/esm/styled/header/StyledLogoHeaderItem.js +43 -0
  45. package/dist/esm/styled/nav/StyledBaseNavItem.js +32 -0
  46. package/dist/esm/styled/nav/StyledBrandmarkNavItem.js +23 -0
  47. package/dist/esm/styled/nav/StyledLogoNavItem.js +44 -0
  48. package/dist/esm/styled/nav/StyledNav.js +34 -0
  49. package/dist/esm/styled/nav/StyledNavButton.js +65 -0
  50. package/dist/esm/styled/nav/StyledNavItemIcon.js +22 -0
  51. package/dist/esm/styled/nav/StyledNavItemText.js +34 -0
  52. package/dist/esm/styled/nav/StyledNavList.js +22 -0
  53. package/dist/esm/styled/nav/StyledNavListItem.js +22 -0
  54. package/dist/esm/styled/sheet/StyledSheet.js +41 -0
  55. package/dist/esm/styled/sheet/StyledSheetBody.js +22 -0
  56. package/dist/esm/styled/sheet/StyledSheetClose.js +34 -0
  57. package/dist/esm/styled/sheet/StyledSheetDescription.js +22 -0
  58. package/dist/esm/styled/sheet/StyledSheetFooter.js +22 -0
  59. package/dist/esm/styled/sheet/StyledSheetFooterItem.js +22 -0
  60. package/dist/esm/styled/sheet/StyledSheetHeader.js +23 -0
  61. package/dist/esm/styled/sheet/StyledSheetTitle.js +22 -0
  62. package/dist/esm/styled/sheet/StyledSheetWrapper.js +37 -0
  63. package/dist/esm/types/index.js +10 -0
  64. package/dist/esm/utils/useBodyContext.js +14 -0
  65. package/dist/esm/utils/useChromeContext.js +16 -0
  66. package/dist/esm/utils/useFocusableMount.js +31 -0
  67. package/dist/esm/utils/useNavContext.js +16 -0
  68. package/dist/esm/utils/useNavListContext.js +14 -0
  69. package/dist/esm/utils/useSheetContext.js +16 -0
  70. package/dist/index.cjs.js +209 -461
  71. package/dist/typings/elements/nav/Nav.d.ts +2 -0
  72. package/dist/typings/elements/nav/NavList.d.ts +11 -0
  73. package/dist/typings/index.d.ts +1 -5
  74. package/dist/typings/styled/index.d.ts +3 -7
  75. package/dist/typings/styled/nav/StyledBaseNavItem.d.ts +1 -5
  76. package/dist/typings/styled/nav/StyledBrandmarkNavItem.d.ts +4 -5
  77. package/dist/typings/styled/nav/StyledLogoNavItem.d.ts +4 -5
  78. package/dist/typings/styled/nav/{StyledNavItem.d.ts → StyledNavButton.d.ts} +3 -1
  79. package/dist/typings/styled/nav/StyledNavList.d.ts +10 -0
  80. package/dist/typings/styled/nav/StyledNavListItem.d.ts +10 -0
  81. package/dist/typings/types/index.d.ts +2 -25
  82. package/dist/typings/utils/useNavListContext.d.ts +13 -0
  83. package/package.json +5 -7
  84. package/dist/index.esm.js +0 -1456
  85. package/dist/typings/elements/subnav/CollapsibleSubNavItem.d.ts +0 -14
  86. package/dist/typings/elements/subnav/SubNav.d.ts +0 -19
  87. package/dist/typings/elements/subnav/SubNavItem.d.ts +0 -14
  88. package/dist/typings/elements/subnav/SubNavItemText.d.ts +0 -14
  89. package/dist/typings/styled/subnav/StyledSubNav.d.ts +0 -17
  90. package/dist/typings/styled/subnav/StyledSubNavItem.d.ts +0 -21
  91. package/dist/typings/styled/subnav/StyledSubNavItemHeader.d.ts +0 -14
  92. package/dist/typings/styled/subnav/StyledSubNavItemIcon.d.ts +0 -14
  93. package/dist/typings/styled/subnav/StyledSubNavItemText.d.ts +0 -11
  94. package/dist/typings/styled/subnav/StyledSubNavPanel.d.ts +0 -12
package/dist/index.cjs.js CHANGED
@@ -1,10 +1,9 @@
1
1
  /**
2
- * Copyright Zendesk, Inc.
3
- *
4
- * Use of this source code is governed under the Apache License, Version 2.0
5
- * found at http://www.apache.org/licenses/LICENSE-2.0.
6
- */
7
-
2
+ * Copyright Zendesk, Inc.
3
+ *
4
+ * Use of this source code is governed under the Apache License, Version 2.0
5
+ * found at http://www.apache.org/licenses/LICENSE-2.0.
6
+ */
8
7
  'use strict';
9
8
 
10
9
  var React = require('react');
@@ -12,8 +11,6 @@ var PropTypes = require('prop-types');
12
11
  var styled = require('styled-components');
13
12
  var reactTheming = require('@zendeskgarden/react-theming');
14
13
  var polished = require('polished');
15
- var containerAccordion = require('@zendeskgarden/container-accordion');
16
- var containerUtilities = require('@zendeskgarden/container-utilities');
17
14
  var reactUid = require('react-uid');
18
15
  var reactMergeRefs = require('react-merge-refs');
19
16
  var activeElement = require('dom-helpers/activeElement');
@@ -43,57 +40,42 @@ var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
43
40
  var styled__default = /*#__PURE__*/_interopDefault(styled);
44
41
  var activeElement__default = /*#__PURE__*/_interopDefault(activeElement);
45
42
 
46
- function _extends$3() {
47
- _extends$3 = Object.assign ? Object.assign.bind() : function (target) {
48
- for (var i = 1; i < arguments.length; i++) {
49
- var source = arguments[i];
50
- for (var key in source) {
51
- if (Object.prototype.hasOwnProperty.call(source, key)) {
52
- target[key] = source[key];
53
- }
54
- }
55
- }
56
- return target;
57
- };
58
- return _extends$3.apply(this, arguments);
59
- }
60
-
61
43
  const PLACEMENT = ['end', 'start'];
62
- const PRODUCTS = ['chat', 'connect', 'explore', 'guide', 'message', 'support', 'talk'];
44
+ const PRODUCTS = ['chat', 'explore', 'guide', 'support', 'talk'];
63
45
 
64
- const COMPONENT_ID$z = 'chrome.chrome';
46
+ const COMPONENT_ID$w = 'chrome.chrome';
65
47
  const StyledChrome = styled__default.default.div.attrs({
66
- 'data-garden-id': COMPONENT_ID$z,
67
- 'data-garden-version': '9.0.0-next.7'
48
+ 'data-garden-id': COMPONENT_ID$w,
49
+ 'data-garden-version': '9.0.0-next.9'
68
50
  }).withConfig({
69
51
  displayName: "StyledChrome",
70
52
  componentId: "sc-1uqm6u6-0"
71
- })(["display:flex;position:relative;margin:0;height:100vh;overflow-y:hidden;font-family:", ";direction:", ";", ";"], props => props.theme.fonts.system, props => props.theme.rtl && 'rtl', props => reactTheming.retrieveComponentStyles(COMPONENT_ID$z, props));
53
+ })(["display:flex;position:relative;margin:0;height:100vh;overflow-y:hidden;font-family:", ";direction:", ";", ";"], props => props.theme.fonts.system, props => props.theme.rtl && 'rtl', props => reactTheming.retrieveComponentStyles(COMPONENT_ID$w, props));
72
54
  StyledChrome.defaultProps = {
73
55
  theme: reactTheming.DEFAULT_THEME
74
56
  };
75
57
 
76
- const COMPONENT_ID$y = 'chrome.header_item_icon';
58
+ const COMPONENT_ID$v = 'chrome.header_item_icon';
77
59
  const StyledHeaderItemIcon = styled__default.default.div.attrs({
78
- 'data-garden-id': COMPONENT_ID$y,
79
- 'data-garden-version': '9.0.0-next.7'
60
+ 'data-garden-id': COMPONENT_ID$v,
61
+ 'data-garden-version': '9.0.0-next.9'
80
62
  }).withConfig({
81
63
  displayName: "StyledHeaderItemIcon",
82
64
  componentId: "sc-1jhhp6z-0"
83
- })(["transition:transform 0.25s ease-in-out;margin:0 3px;width:", ";min-width:", ";height:", ";", ";"], props => props.theme.iconSizes.md, props => props.theme.iconSizes.md, props => props.theme.iconSizes.md, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$y, props));
65
+ })(["transition:transform 0.25s ease-in-out;margin:0 3px;width:", ";min-width:", ";height:", ";", ";"], props => props.theme.iconSizes.md, props => props.theme.iconSizes.md, props => props.theme.iconSizes.md, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$v, props));
84
66
  StyledHeaderItemIcon.defaultProps = {
85
67
  theme: reactTheming.DEFAULT_THEME
86
68
  };
87
69
 
88
- const COMPONENT_ID$x = 'chrome.base_header_item';
70
+ const COMPONENT_ID$u = 'chrome.base_header_item';
89
71
  const getHeaderItemSize = props => `${props.theme.space.base * 7.5}px`;
90
- const sizeStyles$4 = props => {
72
+ const sizeStyles$3 = props => {
91
73
  const size = props.theme.space.base * 7.5;
92
74
  return styled.css(["padding:0 3px;min-width:", "px;height:", ";line-height:", ";"], size, props.maxY ? '100%' : `${size}px`, reactTheming.getLineHeight(size, props.theme.fontSizes.md));
93
75
  };
94
76
  const StyledBaseHeaderItem = styled__default.default.button.attrs({
95
- 'data-garden-id': COMPONENT_ID$x,
96
- 'data-garden-version': '9.0.0-next.7'
77
+ 'data-garden-id': COMPONENT_ID$u,
78
+ 'data-garden-version': '9.0.0-next.9'
97
79
  }).withConfig({
98
80
  displayName: "StyledBaseHeaderItem",
99
81
  componentId: "sc-1qua7h6-0"
@@ -105,26 +87,26 @@ const StyledBaseHeaderItem = styled__default.default.button.attrs({
105
87
  return '0';
106
88
  }
107
89
  return props.theme.borderRadii.md;
108
- }, sizeStyles$4, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$x, props));
90
+ }, sizeStyles$3, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$u, props));
109
91
  StyledBaseHeaderItem.defaultProps = {
110
92
  theme: reactTheming.DEFAULT_THEME
111
93
  };
112
94
 
113
- const COMPONENT_ID$w = 'chrome.header_item_text';
95
+ const COMPONENT_ID$t = 'chrome.header_item_text';
114
96
  const clippedStyling = styled.css(["position:absolute;margin:0;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;white-space:nowrap;"]);
115
97
  const StyledHeaderItemText = styled__default.default.span.attrs({
116
- 'data-garden-id': COMPONENT_ID$w,
117
- 'data-garden-version': '9.0.0-next.7'
98
+ 'data-garden-id': COMPONENT_ID$t,
99
+ 'data-garden-version': '9.0.0-next.9'
118
100
  }).withConfig({
119
101
  displayName: "StyledHeaderItemText",
120
102
  componentId: "sc-goz7la-0"
121
- })(["margin:0 3px;", " ", ";"], props => props.isClipped && clippedStyling, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$w, props));
103
+ })(["margin:0 3px;", " ", ";"], props => props.isClipped && clippedStyling, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$t, props));
122
104
  StyledHeaderItemText.defaultProps = {
123
105
  theme: reactTheming.DEFAULT_THEME
124
106
  };
125
107
 
126
- const COMPONENT_ID$v = 'chrome.nav';
127
- const colorStyles$6 = props => {
108
+ const COMPONENT_ID$s = 'chrome.nav';
109
+ const colorStyles$4 = props => {
128
110
  const shade = props.isDark || props.isLight ? 600 : 700;
129
111
  const backgroundColor = reactTheming.getColorV8(props.hue, shade, props.theme);
130
112
  const foregroundColor = props.isLight ? props.theme.palette.black : props.theme.palette.white;
@@ -137,29 +119,25 @@ const getExpandedNavWidth = () => {
137
119
  return `200px`;
138
120
  };
139
121
  const StyledNav = styled__default.default.nav.attrs({
140
- 'data-garden-id': COMPONENT_ID$v,
141
- 'data-garden-version': '9.0.0-next.7'
122
+ 'data-garden-id': COMPONENT_ID$s,
123
+ 'data-garden-version': '9.0.0-next.9'
142
124
  }).withConfig({
143
125
  displayName: "StyledNav",
144
126
  componentId: "sc-6j462r-0"
145
- })(["display:flex;position:relative;flex-direction:column;flex-shrink:0;order:-1;width:", ";font-size:", ";", ";", ";"], props => props.isExpanded ? getExpandedNavWidth : getNavWidth, props => props.theme.fontSizes.md, props => colorStyles$6(props), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$v, props));
127
+ })(["display:flex;position:relative;flex-direction:column;flex-shrink:0;order:-1;width:", ";font-size:", ";", ";", ";"], props => props.isExpanded ? getExpandedNavWidth : getNavWidth, props => props.theme.fontSizes.md, props => colorStyles$4(props), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$s, props));
146
128
  StyledNav.defaultProps = {
147
129
  theme: reactTheming.DEFAULT_THEME
148
130
  };
149
131
 
150
- const COMPONENT_ID$u = 'chrome.header_item';
132
+ const COMPONENT_ID$r = 'chrome.header_item';
151
133
  const retrieveProductColor$1 = props => {
152
134
  switch (props.product) {
153
135
  case 'chat':
154
136
  return reactTheming.PALETTE.product.chat;
155
- case 'connect':
156
- return reactTheming.PALETTE.product.connect;
157
137
  case 'explore':
158
138
  return reactTheming.PALETTE.product.explore;
159
139
  case 'guide':
160
140
  return reactTheming.PALETTE.product.guide;
161
- case 'message':
162
- return reactTheming.PALETTE.product.message;
163
141
  case 'support':
164
142
  return reactTheming.PALETTE.product.support;
165
143
  case 'talk':
@@ -169,44 +147,44 @@ const retrieveProductColor$1 = props => {
169
147
  }
170
148
  };
171
149
  const StyledLogoHeaderItem = styled__default.default(StyledBaseHeaderItem).attrs({
172
- 'data-garden-id': COMPONENT_ID$u,
173
- 'data-garden-version': '9.0.0-next.7',
150
+ 'data-garden-id': COMPONENT_ID$r,
151
+ 'data-garden-version': '9.0.0-next.9',
174
152
  as: 'div'
175
153
  }).withConfig({
176
154
  displayName: "StyledLogoHeaderItem",
177
155
  componentId: "sc-1n1d1yv-0"
178
- })(["display:none;order:0;margin-right:", ";margin-left:", ";border-", ":", ";border-radius:0;padding:0;width:", ";height:100%;overflow:hidden;fill:", ";text-decoration:none;color:", ";", "{", "}", "{margin:0;width:", ";height:", ";}", ";"], props => props.theme.rtl ? `-${props.theme.space.base}px` : 'auto', props => props.theme.rtl ? 'auto' : `-${props.theme.space.base}px`, props => props.theme.rtl ? 'left' : 'right', props => `${props.theme.borders.sm} ${reactTheming.getColorV8('neutralHue', 300, props.theme)}`, props => getNavWidth(props), props => reactTheming.getColorV8('chromeHue', 700, props.theme), props => retrieveProductColor$1(props), StyledHeaderItemText, clippedStyling, StyledHeaderItemIcon, props => props.theme.iconSizes.lg, props => props.theme.iconSizes.lg, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$u, props));
156
+ })(["display:none;order:0;margin-right:", ";margin-left:", ";border-", ":", ";border-radius:0;padding:0;width:", ";height:100%;overflow:hidden;fill:", ";text-decoration:none;color:", ";", "{", "}", "{margin:0;width:", ";height:", ";}", ";"], props => props.theme.rtl ? `-${props.theme.space.base}px` : 'auto', props => props.theme.rtl ? 'auto' : `-${props.theme.space.base}px`, props => props.theme.rtl ? 'left' : 'right', props => `${props.theme.borders.sm} ${reactTheming.getColorV8('neutralHue', 300, props.theme)}`, props => getNavWidth(props), props => reactTheming.getColorV8('chromeHue', 700, props.theme), props => retrieveProductColor$1(props), StyledHeaderItemText, clippedStyling, StyledHeaderItemIcon, props => props.theme.iconSizes.lg, props => props.theme.iconSizes.lg, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$r, props));
179
157
  StyledLogoHeaderItem.defaultProps = {
180
158
  theme: reactTheming.DEFAULT_THEME
181
159
  };
182
160
 
183
- const COMPONENT_ID$t = 'chrome.base_nav_item';
161
+ const COMPONENT_ID$q = 'chrome.base_nav_item';
184
162
  const getNavItemHeight = props => {
185
163
  return `${props.theme.space.base * 13}px`;
186
164
  };
187
- const sizeStyles$3 = props => {
165
+ const sizeStyles$2 = props => {
188
166
  const verticalPadding = polished.math(`(${getNavItemHeight(props)} - ${props.theme.iconSizes.lg}) / 2`);
189
167
  const horizontalPadding = polished.math(`(${getNavWidth(props)} - ${props.theme.iconSizes.lg}) / 4`);
190
168
  return styled.css(["padding:", " ", ";min-height:", ";"], verticalPadding, horizontalPadding, getNavItemHeight);
191
169
  };
192
- const StyledBaseNavItem = styled__default.default.button.attrs({
193
- 'data-garden-id': COMPONENT_ID$t,
194
- 'data-garden-version': '9.0.0-next.7'
170
+ const StyledBaseNavItem = styled__default.default.div.attrs({
171
+ 'data-garden-id': COMPONENT_ID$q,
172
+ 'data-garden-version': '9.0.0-next.9'
195
173
  }).withConfig({
196
174
  displayName: "StyledBaseNavItem",
197
175
  componentId: "sc-zvo43f-0"
198
- })(["display:flex;flex-shrink:0;align-items:center;justify-content:center;transition:outline-color 0.1s ease-in-out,box-shadow 0.1s ease-in-out,background-color 0.1s ease-in-out,opacity 0.1s ease-in-out;border:none;box-sizing:border-box;background:transparent;text-decoration:none;color:inherit;font-size:inherit;", ""], props => sizeStyles$3(props));
176
+ })(["display:flex;flex-shrink:0;align-items:center;justify-content:center;transition:outline-color 0.1s ease-in-out,box-shadow 0.1s ease-in-out,background-color 0.1s ease-in-out,opacity 0.1s ease-in-out;", ""], props => sizeStyles$2(props));
199
177
  StyledBaseNavItem.defaultProps = {
200
178
  theme: reactTheming.DEFAULT_THEME
201
179
  };
202
180
 
203
- const COMPONENT_ID$s = 'chrome.header';
181
+ const COMPONENT_ID$p = 'chrome.header';
204
182
  const getHeaderHeight = props => {
205
183
  return getNavItemHeight(props);
206
184
  };
207
185
  const StyledHeader = styled__default.default.header.attrs({
208
- 'data-garden-id': COMPONENT_ID$s,
209
- 'data-garden-version': '9.0.0-next.7'
186
+ 'data-garden-id': COMPONENT_ID$p,
187
+ 'data-garden-version': '9.0.0-next.9'
210
188
  }).withConfig({
211
189
  displayName: "StyledHeader",
212
190
  componentId: "sc-1cexpz-0"
@@ -214,17 +192,17 @@ const StyledHeader = styled__default.default.header.attrs({
214
192
  ${StyledLogoHeaderItem} {
215
193
  display: inline-flex;
216
194
  }
217
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$s, props));
195
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$p, props));
218
196
  StyledHeader.defaultProps = {
219
197
  theme: reactTheming.DEFAULT_THEME
220
198
  };
221
199
 
222
- const COMPONENT_ID$r = 'chrome.skipnav';
200
+ const COMPONENT_ID$o = 'chrome.skipnav';
223
201
  const animationStyles = () => {
224
202
  const animationName = styled.keyframes(["0%{transform:translate(-50%,-50%);}"]);
225
203
  return styled.css(["transition:opacity 0.2s ease-out,clip 0s linear 0.2s;opacity:0;clip:rect(0,0,0,0);&:focus{transition:opacity 0.2s ease-in-out;animation:0.2s cubic-bezier(0.15,0.85,0.35,1.2) ", ";opacity:1;clip:rect(0,150vw,100vh,-50vw);}"], animationName);
226
204
  };
227
- const colorStyles$5 = theme => {
205
+ const colorStyles$3 = theme => {
228
206
  const color = reactTheming.getColorV8('primaryHue', 600, theme);
229
207
  const borderColor = reactTheming.getColorV8('neutralHue', 300, theme);
230
208
  const boxShadow = theme.shadows.lg(`${theme.space.base * 5}px`, `${theme.space.base * 7}px`, reactTheming.getColorV8('chromeHue', 600, theme, 0.15));
@@ -234,7 +212,7 @@ const colorStyles$5 = theme => {
234
212
  boxShadow
235
213
  }));
236
214
  };
237
- const sizeStyles$2 = props => {
215
+ const sizeStyles$1 = props => {
238
216
  const top = polished.math(`${getHeaderHeight(props)} / 2`);
239
217
  const padding = `${props.theme.space.base * 5}px`;
240
218
  const paddingStart = `${props.theme.space.base * 4}px`;
@@ -243,120 +221,120 @@ const sizeStyles$2 = props => {
243
221
  return styled.css(["top:", ";padding:", ";padding-", ":", ";line-height:", ";font-size:", ";"], top, padding, props.theme.rtl ? 'right' : 'left', paddingStart, lineHeight, fontSize);
244
222
  };
245
223
  const StyledSkipNav = styled__default.default.a.attrs({
246
- 'data-garden-id': COMPONENT_ID$r,
247
- 'data-garden-version': '9.0.0-next.7'
224
+ 'data-garden-id': COMPONENT_ID$o,
225
+ 'data-garden-version': '9.0.0-next.9'
248
226
  }).withConfig({
249
227
  displayName: "StyledSkipNav",
250
228
  componentId: "sc-1tsro34-0"
251
- })(["", ";display:inline-flex;position:absolute;left:50%;align-items:center;justify-content:center;transform:translateX(-50%);direction:", ";z-index:", ";border:", ";border-radius:", ";text-decoration:underline;white-space:nowrap;", ";", "{text-decoration:none;}&:hover{text-decoration:underline;}", ";", ";"], animationStyles(), props => props.theme.rtl && 'rtl', props => props.zIndex, props => props.theme.borders.sm, props => props.theme.borderRadii.md, props => sizeStyles$2(props), reactTheming.SELECTOR_FOCUS_VISIBLE, props => colorStyles$5(props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$r, props));
229
+ })(["", ";display:inline-flex;position:absolute;left:50%;align-items:center;justify-content:center;transform:translateX(-50%);direction:", ";z-index:", ";border:", ";border-radius:", ";text-decoration:underline;white-space:nowrap;", ";", "{text-decoration:none;}&:hover{text-decoration:underline;}", ";", ";"], animationStyles(), props => props.theme.rtl && 'rtl', props => props.zIndex, props => props.theme.borders.sm, props => props.theme.borderRadii.md, props => sizeStyles$1(props), reactTheming.SELECTOR_FOCUS_VISIBLE, props => colorStyles$3(props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$o, props));
252
230
  StyledSkipNav.defaultProps = {
253
231
  theme: reactTheming.DEFAULT_THEME
254
232
  };
255
233
 
256
- var _path$2;
257
- function _extends$2() { _extends$2 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$2.apply(this, arguments); }
234
+ var _path$1;
235
+ function _extends$1() { _extends$1 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
258
236
  var SvgLinkStroke = function SvgLinkStroke(props) {
259
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$2({
237
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$1({
260
238
  xmlns: "http://www.w3.org/2000/svg",
261
239
  width: 16,
262
240
  height: 16,
263
241
  focusable: "false",
264
242
  viewBox: "0 0 16 16",
265
243
  "aria-hidden": "true"
266
- }, props), _path$2 || (_path$2 = /*#__PURE__*/React__namespace.createElement("path", {
244
+ }, props), _path$1 || (_path$1 = /*#__PURE__*/React__namespace.createElement("path", {
267
245
  fill: "currentColor",
268
246
  d: "M4.441 7.38l.095.083.939.939-.708.707-.939-.939-2 2-.132.142a2.829 2.829 0 003.99 3.99l.142-.132 2-2-.939-.939.707-.708.94.94a1 1 0 01.083 1.32l-.083.094-2 2A3.828 3.828 0 01.972 9.621l.15-.158 2-2A1 1 0 014.34 7.31l.101.07zm7.413-3.234a.5.5 0 01.057.638l-.057.07-7 7a.5.5 0 01-.765-.638l.057-.07 7-7a.5.5 0 01.708 0zm3.023-3.025a3.829 3.829 0 01.15 5.257l-.15.158-2 2a1 1 0 01-1.32.083l-.094-.083-.94-.94.708-.707.939.94 2-2 .132-.142a2.829 2.829 0 00-3.99-3.99l-.142.131-2 2 .939.939-.707.708-.94-.94a1 1 0 01-.082-1.32l.083-.094 2-2a3.828 3.828 0 015.414 0z"
269
247
  })));
270
248
  };
271
249
 
272
- const COMPONENT_ID$q = 'chrome.skipnav_icon';
273
- const sizeStyles$1 = theme => {
250
+ const COMPONENT_ID$n = 'chrome.skipnav_icon';
251
+ const sizeStyles = theme => {
274
252
  const margin = `${theme.space.base * 2}px`;
275
253
  const size = theme.iconSizes.md;
276
254
  return styled.css(["margin-", ":", ";width:", ";height:", ";"], theme.rtl ? 'left' : 'right', margin, size, size);
277
255
  };
278
256
  const StyledSkipNavIcon = styled__default.default(SvgLinkStroke).attrs({
279
- 'data-garden-id': COMPONENT_ID$q,
280
- 'data-garden-version': '9.0.0-next.7'
257
+ 'data-garden-id': COMPONENT_ID$n,
258
+ 'data-garden-version': '9.0.0-next.9'
281
259
  }).withConfig({
282
260
  displayName: "StyledSkipNavIcon",
283
261
  componentId: "sc-1ika5z4-0"
284
- })(["transform:", ";color:", ";", ";", ";"], props => props.theme.rtl && 'scaleX(-1)', props => reactTheming.getColorV8('neutralHue', 600, props.theme), props => sizeStyles$1(props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$q, props));
262
+ })(["transform:", ";color:", ";", ";", ";"], props => props.theme.rtl && 'scaleX(-1)', props => reactTheming.getColorV8('neutralHue', 600, props.theme), props => sizeStyles(props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$n, props));
285
263
  StyledSkipNavIcon.defaultProps = {
286
264
  theme: reactTheming.DEFAULT_THEME
287
265
  };
288
266
 
289
- const COMPONENT_ID$p = 'chrome.body';
267
+ const COMPONENT_ID$m = 'chrome.body';
290
268
  const StyledBody = styled__default.default.div.attrs({
291
- 'data-garden-id': COMPONENT_ID$p,
292
- 'data-garden-version': '9.0.0-next.7'
269
+ 'data-garden-id': COMPONENT_ID$m,
270
+ 'data-garden-version': '9.0.0-next.9'
293
271
  }).withConfig({
294
272
  displayName: "StyledBody",
295
273
  componentId: "sc-c7h9kv-0"
296
- })(["flex:1;order:1;background-color:", ";min-width:0;", ";"], props => reactTheming.getColorV8('neutralHue', 100, props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$p, props));
274
+ })(["flex:1;order:1;background-color:", ";min-width:0;", ";"], props => reactTheming.getColorV8('neutralHue', 100, props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$m, props));
297
275
  StyledBody.defaultProps = {
298
276
  theme: reactTheming.DEFAULT_THEME
299
277
  };
300
278
 
301
- const COMPONENT_ID$o = 'chrome.footer';
279
+ const COMPONENT_ID$l = 'chrome.footer';
302
280
  const getFooterHeight = props => {
303
281
  return `${props.theme.space.base * 20}px`;
304
282
  };
305
283
  const StyledFooter = styled__default.default.footer.attrs({
306
- 'data-garden-id': COMPONENT_ID$o,
307
- 'data-garden-version': '9.0.0-next.7'
284
+ 'data-garden-id': COMPONENT_ID$l,
285
+ 'data-garden-version': '9.0.0-next.9'
308
286
  }).withConfig({
309
287
  displayName: "StyledFooter",
310
288
  componentId: "sc-v7lib2-0"
311
- })(["display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;border-top:", ";background-color:", ";padding:0 ", "px;height:", ";", ";"], props => `${props.theme.borders.sm} ${reactTheming.getColorV8('neutralHue', 300, props.theme)}`, props => reactTheming.getColorV8('background', 600 , props.theme), props => props.theme.space.base * 9, getFooterHeight, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$o, props));
289
+ })(["display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;border-top:", ";background-color:", ";padding:0 ", "px;height:", ";", ";"], props => `${props.theme.borders.sm} ${reactTheming.getColorV8('neutralHue', 300, props.theme)}`, props => reactTheming.getColorV8('background', 600 , props.theme), props => props.theme.space.base * 9, getFooterHeight, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$l, props));
312
290
  StyledFooter.defaultProps = {
313
291
  theme: reactTheming.DEFAULT_THEME
314
292
  };
315
293
 
316
- const COMPONENT_ID$n = 'chrome.content';
294
+ const COMPONENT_ID$k = 'chrome.content';
317
295
  const StyledContent = styled__default.default.div.attrs({
318
- 'data-garden-id': COMPONENT_ID$n,
319
- 'data-garden-version': '9.0.0-next.7'
296
+ 'data-garden-id': COMPONENT_ID$k,
297
+ 'data-garden-version': '9.0.0-next.9'
320
298
  }).withConfig({
321
299
  displayName: "StyledContent",
322
300
  componentId: "sc-qcuzxn-0"
323
- })(["display:flex;height:", ";line-height:", ";color:", ";font-size:", ";&:focus{outline:none;}", ";"], props => props.hasFooter ? `calc(100% - ${polished.math(`${getHeaderHeight(props)} + ${getFooterHeight(props)}`)})` : `calc(100% - ${getHeaderHeight(props)})`, props => reactTheming.getLineHeight(props.theme.lineHeights.md, props.theme.fontSizes.md), props => reactTheming.getColorV8('foreground', 600 , props.theme), props => props.theme.fontSizes.md, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$n, props));
301
+ })(["display:flex;height:", ";line-height:", ";color:", ";font-size:", ";&:focus{outline:none;}", ";"], props => props.hasFooter ? `calc(100% - ${polished.math(`${getHeaderHeight(props)} + ${getFooterHeight(props)}`)})` : `calc(100% - ${getHeaderHeight(props)})`, props => reactTheming.getLineHeight(props.theme.lineHeights.md, props.theme.fontSizes.md), props => reactTheming.getColorV8('foreground', 600 , props.theme), props => props.theme.fontSizes.md, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$k, props));
324
302
  StyledContent.defaultProps = {
325
303
  theme: reactTheming.DEFAULT_THEME
326
304
  };
327
305
 
328
- const COMPONENT_ID$m = 'chrome.main';
306
+ const COMPONENT_ID$j = 'chrome.main';
329
307
  const StyledMain = styled__default.default.main.attrs({
330
- 'data-garden-id': COMPONENT_ID$m,
331
- 'data-garden-version': '9.0.0-next.7'
308
+ 'data-garden-id': COMPONENT_ID$j,
309
+ 'data-garden-version': '9.0.0-next.9'
332
310
  }).withConfig({
333
311
  displayName: "StyledMain",
334
312
  componentId: "sc-t61cre-0"
335
- })(["flex:1;order:1;background-color:", ";overflow:auto;:focus{outline:none;}", ";"], props => reactTheming.getColorV8('background', 600 , props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$m, props));
313
+ })(["flex:1;order:1;background-color:", ";overflow:auto;:focus{outline:none;}", ";"], props => reactTheming.getColorV8('background', 600 , props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$j, props));
336
314
  StyledMain.defaultProps = {
337
315
  theme: reactTheming.DEFAULT_THEME
338
316
  };
339
317
 
340
- const COMPONENT_ID$l = 'chrome.footer_item';
318
+ const COMPONENT_ID$i = 'chrome.footer_item';
341
319
  const StyledFooterItem = styled__default.default.div.attrs({
342
- 'data-garden-id': COMPONENT_ID$l,
343
- 'data-garden-version': '9.0.0-next.7'
320
+ 'data-garden-id': COMPONENT_ID$i,
321
+ 'data-garden-version': '9.0.0-next.9'
344
322
  }).withConfig({
345
323
  displayName: "StyledFooterItem",
346
324
  componentId: "sc-1cktm85-0"
347
- })(["margin:", ";", ";"], props => `0 ${props.theme.space.base}px`, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$l, props));
325
+ })(["margin:", ";", ";"], props => `0 ${props.theme.space.base}px`, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$i, props));
348
326
  StyledFooterItem.defaultProps = {
349
327
  theme: reactTheming.DEFAULT_THEME
350
328
  };
351
329
 
352
- const COMPONENT_ID$k = 'chrome.header_item';
330
+ const COMPONENT_ID$h = 'chrome.header_item';
353
331
  const imgStyles = props => {
354
332
  const size = polished.math(`${getHeaderItemSize(props)} - ${props.theme.space.base * 2}`);
355
333
  return styled.css(["img{margin:0;border-radius:", ";width:", ";height:", ";}"], polished.math(`${props.theme.borderRadii.md} - 1`), size, size);
356
334
  };
357
335
  const StyledHeaderItem = styled__default.default(StyledBaseHeaderItem).attrs({
358
- 'data-garden-id': COMPONENT_ID$k,
359
- 'data-garden-version': '9.0.0-next.7'
336
+ 'data-garden-id': COMPONENT_ID$h,
337
+ 'data-garden-version': '9.0.0-next.9'
360
338
  }).withConfig({
361
339
  displayName: "StyledHeaderItem",
362
340
  componentId: "sc-14sft6n-0"
@@ -367,37 +345,57 @@ const StyledHeaderItem = styled__default.default(StyledBaseHeaderItem).attrs({
367
345
  ${StyledHeaderItemIcon} {
368
346
  border-radius: 100px;
369
347
  }
370
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$k, props));
348
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$h, props));
371
349
  StyledHeaderItem.defaultProps = {
372
350
  theme: reactTheming.DEFAULT_THEME
373
351
  };
374
352
 
375
- const COMPONENT_ID$j = 'chrome.header_item_wrapper';
353
+ const COMPONENT_ID$g = 'chrome.header_item_wrapper';
376
354
  const StyledHeaderItemWrapper = styled__default.default(StyledBaseHeaderItem).attrs({
377
- 'data-garden-id': COMPONENT_ID$j,
378
- 'data-garden-version': '9.0.0-next.7',
355
+ 'data-garden-id': COMPONENT_ID$g,
356
+ 'data-garden-version': '9.0.0-next.9',
379
357
  as: 'div'
380
358
  }).withConfig({
381
359
  displayName: "StyledHeaderItemWrapper",
382
360
  componentId: "sc-1uieu55-0"
383
- })(["", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$j, props));
361
+ })(["", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$g, props));
384
362
  StyledHeaderItemWrapper.defaultProps = {
385
363
  theme: reactTheming.DEFAULT_THEME
386
364
  };
387
365
 
388
- const COMPONENT_ID$i = 'chrome.logo_nav_item';
366
+ const COMPONENT_ID$f = 'chrome.nav_list';
367
+ const StyledNavList = styled__default.default.ul.attrs({
368
+ 'data-garden-id': COMPONENT_ID$f,
369
+ 'data-garden-version': '9.0.0-next.9'
370
+ }).withConfig({
371
+ displayName: "StyledNavList",
372
+ componentId: "sc-1s0nkfb-0"
373
+ })(["display:flex;flex:1;flex-direction:column;order:0;margin:0;padding:0;list-style:none;", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$f, props));
374
+ StyledNavList.defaultProps = {
375
+ theme: reactTheming.DEFAULT_THEME
376
+ };
377
+
378
+ const COMPONENT_ID$e = 'chrome.nav_list_item';
379
+ const StyledNavListItem = styled__default.default.li.attrs({
380
+ 'data-garden-id': COMPONENT_ID$e,
381
+ 'data-garden-version': '9.0.0-next.9'
382
+ }).withConfig({
383
+ displayName: "StyledNavListItem",
384
+ componentId: "sc-18cj2v7-0"
385
+ })(["display:flex;order:1;margin:0;padding:0;list-style-type:none;", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$e, props));
386
+ StyledNavListItem.defaultProps = {
387
+ theme: reactTheming.DEFAULT_THEME
388
+ };
389
+
390
+ const COMPONENT_ID$d = 'chrome.logo_nav_list_item';
389
391
  const retrieveProductColor = product => {
390
392
  switch (product) {
391
393
  case 'chat':
392
394
  return reactTheming.PALETTE.product.chat;
393
- case 'connect':
394
- return reactTheming.PALETTE.product.connect;
395
395
  case 'explore':
396
396
  return reactTheming.PALETTE.product.explore;
397
397
  case 'guide':
398
398
  return reactTheming.PALETTE.product.guide;
399
- case 'message':
400
- return reactTheming.PALETTE.product.message;
401
399
  case 'support':
402
400
  return reactTheming.PALETTE.product.support;
403
401
  case 'talk':
@@ -406,50 +404,48 @@ const retrieveProductColor = product => {
406
404
  return 'inherit';
407
405
  }
408
406
  };
409
- const colorStyles$4 = props => {
407
+ const colorStyles$2 = props => {
410
408
  const fillColor = props.isLight ? props.theme.palette.grey[800] : props.theme.palette.white;
411
409
  const color = props.isLight || props.isDark ? fillColor : retrieveProductColor(props.product);
412
410
  return styled.css(["color:", ";fill:", ";"], color, fillColor);
413
411
  };
414
412
  const StyledLogoNavItem = styled__default.default(StyledBaseNavItem).attrs({
415
- 'data-garden-id': COMPONENT_ID$i,
416
- 'data-garden-version': '9.0.0-next.7',
417
- as: 'div'
413
+ 'data-garden-id': COMPONENT_ID$d,
414
+ 'data-garden-version': '9.0.0-next.9'
418
415
  }).withConfig({
419
416
  displayName: "StyledLogoNavItem",
420
417
  componentId: "sc-saaydx-0"
421
- })(["order:0;opacity:1;cursor:default;", ";"], props => colorStyles$4(props));
418
+ })(["order:-1;opacity:1;cursor:default;min-height:0;", ";"], props => colorStyles$2(props));
422
419
  StyledLogoNavItem.defaultProps = {
423
420
  theme: reactTheming.DEFAULT_THEME
424
421
  };
425
422
 
426
- const COMPONENT_ID$h = 'chrome.brandmark_nav_item';
423
+ const COMPONENT_ID$c = 'chrome.brandmark_nav_list_item';
427
424
  const StyledBrandmarkNavItem = styled__default.default(StyledBaseNavItem).attrs({
428
- 'data-garden-id': COMPONENT_ID$h,
429
- 'data-garden-version': '9.0.0-next.7',
430
- as: 'div'
425
+ 'data-garden-id': COMPONENT_ID$c,
426
+ 'data-garden-version': '9.0.0-next.9'
431
427
  }).withConfig({
432
428
  displayName: "StyledBrandmarkNavItem",
433
429
  componentId: "sc-8kynd4-0"
434
- })(["order:1;opacity:0.3;margin-top:auto;"]);
430
+ })(["order:1;opacity:0.3;margin-top:auto;min-height:0;"]);
435
431
  StyledBrandmarkNavItem.defaultProps = {
436
432
  theme: reactTheming.DEFAULT_THEME
437
433
  };
438
434
 
439
- const COMPONENT_ID$g = 'chrome.nav_item_icon';
435
+ const COMPONENT_ID$b = 'chrome.nav_item_icon';
440
436
  const StyledNavItemIcon = styled__default.default.div.attrs({
441
- 'data-garden-id': COMPONENT_ID$g,
442
- 'data-garden-version': '9.0.0-next.7'
437
+ 'data-garden-id': COMPONENT_ID$b,
438
+ 'data-garden-version': '9.0.0-next.9'
443
439
  }).withConfig({
444
440
  displayName: "StyledNavItemIcon",
445
441
  componentId: "sc-7w9rpt-0"
446
- })(["align-self:flex-start;order:0;border-radius:", ";width:", ";height:", ";", ";"], props => props.theme.borderRadii.md, props => props.theme.iconSizes.lg, props => props.theme.iconSizes.lg, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$g, props));
442
+ })(["align-self:flex-start;order:0;border-radius:", ";width:", ";height:", ";", ";"], props => props.theme.borderRadii.md, props => props.theme.iconSizes.lg, props => props.theme.iconSizes.lg, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$b, props));
447
443
  StyledNavItemIcon.defaultProps = {
448
444
  theme: reactTheming.DEFAULT_THEME
449
445
  };
450
446
 
451
- const COMPONENT_ID$f = 'chrome.nav_item';
452
- const colorStyles$3 = props => {
447
+ const COMPONENT_ID$a = 'chrome.nav_button';
448
+ const colorStyles$1 = props => {
453
449
  const {
454
450
  theme,
455
451
  hue,
@@ -483,31 +479,31 @@ const colorStyles$3 = props => {
483
479
  }
484
480
  }), activeColor);
485
481
  };
486
- const StyledNavItem = styled__default.default(StyledBaseNavItem).attrs({
487
- 'data-garden-id': COMPONENT_ID$f,
488
- 'data-garden-version': '9.0.0-next.7',
482
+ const StyledNavButton = styled__default.default(StyledBaseNavItem).attrs({
483
+ 'data-garden-id': COMPONENT_ID$a,
484
+ 'data-garden-version': '9.0.0-next.9',
489
485
  as: 'button'
490
486
  }).withConfig({
491
- displayName: "StyledNavItem",
492
- componentId: "sc-gs8mjz-0"
493
- })(["justify-content:", ";order:1;margin:0;cursor:", ";text-align:", ";&:hover,&:focus{text-decoration:none;color:inherit;}", ";&:focus-visible:hover,&:focus-visible:active,", "{outline:", " solid;outline-offset:-", ";}", " ", ";"], props => props.isExpanded && 'start', props => props.isCurrent ? 'default' : 'pointer', props => props.isExpanded && 'inherit', colorStyles$3, reactTheming.SELECTOR_FOCUS_VISIBLE, props => polished.math(`${props.theme.borderWidths.md} - 1`), props => props.theme.borderWidths.md, props => props.isExpanded && `
487
+ displayName: "StyledNavButton",
488
+ componentId: "sc-f5ux3-0"
489
+ })(["flex:1;justify-content:", ";margin:0;border:none;box-sizing:border-box;background:transparent;cursor:", ";min-width:0;text-align:", ";text-decoration:none;color:inherit;font-size:inherit;&:hover,&:focus{text-decoration:none;color:inherit;}", ";&:focus-visible:hover,&:focus-visible:active,", "{outline:", " solid;outline-offset:-", ";}", " ", ";"], props => props.isExpanded && 'start', props => props.isCurrent ? 'default' : 'pointer', props => props.isExpanded && 'inherit', colorStyles$1, reactTheming.SELECTOR_FOCUS_VISIBLE, props => polished.math(`${props.theme.borderWidths.md} - 1`), props => props.theme.borderWidths.md, props => props.isExpanded && `
494
490
  ${StyledNavItemIcon} {
495
491
  margin: 0 ${polished.math(`(${getNavWidth(props)} - ${props.theme.iconSizes.lg}) / 4`)};
496
492
  }
497
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$f, props));
498
- StyledNavItem.defaultProps = {
493
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$a, props));
494
+ StyledNavButton.defaultProps = {
499
495
  theme: reactTheming.DEFAULT_THEME
500
496
  };
501
497
 
502
- const COMPONENT_ID$e = 'chrome.nav_item_text';
498
+ const COMPONENT_ID$9 = 'chrome.nav_item_text';
503
499
  const StyledNavItemText = styled__default.default.span.attrs({
504
- 'data-garden-id': COMPONENT_ID$e,
505
- 'data-garden-version': '9.0.0-next.7'
500
+ 'data-garden-id': COMPONENT_ID$9,
501
+ 'data-garden-version': '9.0.0-next.9'
506
502
  }).withConfig({
507
503
  displayName: "StyledNavItemText",
508
504
  componentId: "sc-13m84xl-0"
509
505
  })(["position:absolute;order:1;clip:rect(1px,1px,1px,1px);margin:", ";width:1px;height:1px;overflow:hidden;line-height:", ";white-space:", ";", " ", ";"], props => props.isExpanded && `0 ${polished.math(`(${getNavWidth(props)} - ${props.theme.iconSizes.lg}) / 4`)}`, props => reactTheming.getLineHeight(props.theme.space.base * 5, props.theme.fontSizes.md), props => props.isWrapped ? 'normal' : 'nowrap', props => props.isExpanded && `
510
- ${StyledNavItem} > && {
506
+ ${StyledNavButton} > && {
511
507
  position: static;
512
508
  flex: 1;
513
509
  clip: auto;
@@ -515,168 +511,11 @@ const StyledNavItemText = styled__default.default.span.attrs({
515
511
  height: auto;
516
512
  text-overflow: ellipsis;
517
513
  }
518
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$e, props));
514
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$9, props));
519
515
  StyledNavItemText.defaultProps = {
520
516
  theme: reactTheming.DEFAULT_THEME
521
517
  };
522
518
 
523
- const COMPONENT_ID$d = 'chrome.subnav_item';
524
- const colorStyles$2 = props => {
525
- const {
526
- theme,
527
- isLight,
528
- isCurrent
529
- } = props;
530
- const DARK = theme.palette.black;
531
- const LIGHT = theme.palette.white;
532
- let currentColor;
533
- let hoverColor;
534
- if (isCurrent) {
535
- if (isLight) {
536
- currentColor = polished.rgba(DARK, 0.1);
537
- } else {
538
- currentColor = polished.rgba(LIGHT, 0.1);
539
- }
540
- } else {
541
- hoverColor = polished.rgba(isLight ? LIGHT : DARK, 0.1);
542
- }
543
- const activeColor = polished.rgba(isLight ? DARK : LIGHT, 0.03);
544
- return styled.css(["opacity:", ";background-color:", ";&:hover{opacity:1;background-color:", ";}", " &:not([data-garden-header='true']):active{background-color:", ";}"], isCurrent ? '1' : '0.6', currentColor, hoverColor, reactTheming.focusStyles({
545
- theme,
546
- hue: isLight ? DARK : LIGHT,
547
- spacerWidth: null,
548
- styles: {
549
- opacity: 1
550
- }
551
- }), activeColor);
552
- };
553
- const getSubNavItemHeight = props => {
554
- return `${props.theme.space.base * 7.5}px`;
555
- };
556
- const StyledSubNavItem = styled__default.default.button.attrs({
557
- 'data-garden-id': COMPONENT_ID$d,
558
- 'data-garden-version': '9.0.0-next.7'
559
- }).withConfig({
560
- displayName: "StyledSubNavItem",
561
- componentId: "sc-1yg9dpx-0"
562
- })(["display:flex;align-items:center;transition:box-shadow 0.1s ease-in-out,background-color 0.1s ease-in-out,opacity 0.1s ease-in-out;margin:", "px 0 0;border:none;border-radius:", ";box-sizing:border-box;background:transparent;cursor:", ";padding:", ";width:100%;min-height:", ";text-align:inherit;font-size:inherit;&,&:hover,&:focus{text-decoration:none;color:inherit;}", ";", ";"], props => props.theme.space.base * 2, props => props.theme.borderRadii.md, props => props.isCurrent ? 'default' : 'pointer', props => `0 ${props.theme.space.base * 2}px`, getSubNavItemHeight, props => colorStyles$2(props), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$d, props));
563
- StyledSubNavItem.defaultProps = {
564
- theme: reactTheming.DEFAULT_THEME
565
- };
566
-
567
- const COMPONENT_ID$c = 'chrome.subnav';
568
- const colorStyles$1 = props => {
569
- let shade;
570
- if (props.isLight) {
571
- shade = 500;
572
- } else {
573
- shade = props.isDark ? 700 : 800;
574
- }
575
- const backgroundColor = reactTheming.getColorV8(props.hue, shade, props.theme);
576
- const foregroundColor = props.isLight ? props.theme.palette.grey[800] : props.theme.palette.white;
577
- return styled.css(["background-color:", ";color:", ";"], backgroundColor, foregroundColor);
578
- };
579
- const StyledSubNav = styled__default.default.nav.attrs({
580
- 'data-garden-id': COMPONENT_ID$c,
581
- 'data-garden-version': '9.0.0-next.7'
582
- }).withConfig({
583
- displayName: "StyledSubNav",
584
- componentId: "sc-19hjou6-0"
585
- })(["flex-direction:column;order:0;padding:", ";min-width:220px;overflow:auto;font-size:", ";", ";& > ", ":first-child{margin-top:0;}", ";"], props => `${props.theme.space.base * 6}px ${props.theme.space.base * 5}px`, props => props.theme.fontSizes.md, props => colorStyles$1(props), StyledSubNavItem, props => reactTheming.retrieveComponentStyles('chrome.subnav', props));
586
- StyledSubNav.defaultProps = {
587
- theme: reactTheming.DEFAULT_THEME
588
- };
589
-
590
- const COMPONENT_ID$b = 'chrome.subnav_item_text';
591
- const sizeStyles = props => {
592
- const baseLineHeight = props.theme.space.base * 5;
593
- const verticalMargin = polished.math(`(${getSubNavItemHeight(props)} - ${baseLineHeight}) / 2`);
594
- const lineHeight = reactTheming.getLineHeight(baseLineHeight, props.theme.fontSizes.md);
595
- return styled.css(["margin:", " 0;line-height:", ";"], verticalMargin, lineHeight);
596
- };
597
- const StyledSubNavItemText = styled__default.default.span.attrs({
598
- 'data-garden-id': COMPONENT_ID$b,
599
- 'data-garden-version': '9.0.0-next.7'
600
- }).withConfig({
601
- displayName: "StyledSubNavItemText",
602
- componentId: "sc-1hy0pn7-0"
603
- })(["overflow:hidden;text-overflow:ellipsis;white-space:", ";", " ", ";"], props => props.isWrapped ? 'normal' : 'nowrap', props => sizeStyles(props), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$b, props));
604
- StyledSubNavItemText.defaultProps = {
605
- theme: reactTheming.DEFAULT_THEME
606
- };
607
-
608
- const COMPONENT_ID$a = 'chrome.collapsible_sub_nav_item';
609
- const StyledSubNavItemHeader = styled__default.default(StyledSubNavItem).attrs({
610
- 'data-garden-id': COMPONENT_ID$a,
611
- 'data-garden-version': '9.0.0-next.7',
612
- 'data-garden-header': 'true'
613
- }).withConfig({
614
- displayName: "StyledSubNavItemHeader",
615
- componentId: "sc-1vniter-0"
616
- })(["position:relative;padding-", ":", "px;", ";"], props => props.theme.rtl ? 'left' : 'right', props => props.theme.space.base * 7, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$a, props));
617
- StyledSubNavItemHeader.defaultProps = {
618
- theme: reactTheming.DEFAULT_THEME
619
- };
620
-
621
- var _path$1;
622
- function _extends$1() { _extends$1 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
623
- var SvgChevronDownStroke = function SvgChevronDownStroke(props) {
624
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$1({
625
- xmlns: "http://www.w3.org/2000/svg",
626
- width: 12,
627
- height: 12,
628
- focusable: "false",
629
- viewBox: "0 0 12 12",
630
- "aria-hidden": "true"
631
- }, props), _path$1 || (_path$1 = /*#__PURE__*/React__namespace.createElement("path", {
632
- fill: "currentColor",
633
- d: "M1.646 3.646a.5.5 0 01.638-.057l.07.057L6 7.293l3.646-3.647a.5.5 0 01.638-.057l.07.057a.5.5 0 01.057.638l-.057.07-4 4a.5.5 0 01-.638.057l-.07-.057-4-4a.5.5 0 010-.708z"
634
- })));
635
- };
636
-
637
- const COMPONENT_ID$9 = 'chrome.collapsible_sub_nav_item_icon';
638
- const FilteredChevronDownStrokeIcon = React__namespace.default.forwardRef((_ref, ref) => {
639
- let {
640
- theme,
641
- isExpanded,
642
- ...validProps
643
- } = _ref;
644
- return React__namespace.default.createElement(SvgChevronDownStroke, _extends$3({
645
- ref: ref
646
- }, validProps));
647
- });
648
- FilteredChevronDownStrokeIcon.displayName = 'FilteredChevronDownStrokeIcon';
649
- const StyledSubNavItemIcon = styled__default.default(FilteredChevronDownStrokeIcon).withConfig({
650
- displayName: "StyledSubNavItemIcon",
651
- componentId: "sc-1d02hho-0"
652
- })(["width:", ";height:", ";"], props => props.theme.iconSizes.sm, props => props.theme.iconSizes.sm);
653
- StyledSubNavItemIcon.defaultProps = {
654
- theme: reactTheming.DEFAULT_THEME
655
- };
656
- const StyledSubNavItemIconWrapper = styled__default.default.div.attrs({
657
- 'data-garden-id': COMPONENT_ID$9,
658
- 'data-garden-version': '9.0.0-next.7'
659
- }).withConfig({
660
- displayName: "StyledSubNavItemIcon__StyledSubNavItemIconWrapper",
661
- componentId: "sc-1d02hho-1"
662
- })(["display:flex;position:absolute;top:0;right:", ";left:", ";align-items:center;justify-content:center;width:", "px;height:", ";", "{transform:", ";transition:transform 0.25s ease-in-out;}", ";"], props => props.theme.rtl ? 'auto' : 0, props => props.theme.rtl && 0, props => props.theme.space.base * 7, getSubNavItemHeight, StyledSubNavItemIcon, props => props.isExpanded && `rotate(${props.theme.rtl ? '-' : ''}180deg)`, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$9, props));
663
- StyledSubNavItemIconWrapper.defaultProps = {
664
- theme: reactTheming.DEFAULT_THEME
665
- };
666
-
667
- const PANEL_COMPONENT_ID = 'chrome.collapsible_sub_nav_item_panel';
668
- const hiddenStyling = styled.css(["visibility:hidden;max-height:0 !important;overflow:hidden;"]);
669
- const StyledSubNavPanel = styled__default.default.div.attrs({
670
- 'data-garden-id': PANEL_COMPONENT_ID,
671
- 'data-garden-version': '9.0.0-next.7'
672
- }).withConfig({
673
- displayName: "StyledSubNavPanel",
674
- componentId: "sc-1jv3rpv-0"
675
- })(["transition:max-height 0.25s cubic-bezier(0.15,0.85,0.35,1.2),0.25s visibility 0s linear;height:auto;max-height:100%;", " ", "{padding-", ":", ";}", ";"], props => props.isHidden && hiddenStyling, StyledSubNavItem, props => props.theme.rtl ? 'right' : 'left', props => `${props.theme.space.base * 5}px`, props => reactTheming.retrieveComponentStyles(PANEL_COMPONENT_ID, props));
676
- StyledSubNavPanel.defaultProps = {
677
- theme: reactTheming.DEFAULT_THEME
678
- };
679
-
680
519
  const COMPONENT_ID$8 = 'chrome.sheet';
681
520
  const borderStyle = _ref => {
682
521
  let {
@@ -699,7 +538,7 @@ const borderStyle = _ref => {
699
538
  };
700
539
  const StyledSheet = styled__default.default.aside.attrs({
701
540
  'data-garden-id': COMPONENT_ID$8,
702
- 'data-garden-version': '9.0.0-next.7'
541
+ 'data-garden-version': '9.0.0-next.9'
703
542
  }).withConfig({
704
543
  displayName: "StyledSheet",
705
544
  componentId: "sc-dx8ijk-0"
@@ -711,7 +550,7 @@ StyledSheet.defaultProps = {
711
550
  const COMPONENT_ID$7 = 'chrome.sheet_wrapper';
712
551
  const StyledSheetWrapper = styled__default.default.div.attrs({
713
552
  'data-garden-id': COMPONENT_ID$7,
714
- 'data-garden-version': '9.0.0-next.7'
553
+ 'data-garden-version': '9.0.0-next.9'
715
554
  }).withConfig({
716
555
  displayName: "StyledSheetWrapper",
717
556
  componentId: "sc-f6x9zb-0"
@@ -738,7 +577,7 @@ StyledSheetWrapper.defaultProps = {
738
577
  const COMPONENT_ID$6 = 'chrome.sheet_title';
739
578
  const StyledSheetTitle = styled__default.default.div.attrs({
740
579
  'data-garden-id': COMPONENT_ID$6,
741
- 'data-garden-version': '9.0.0-next.7'
580
+ 'data-garden-version': '9.0.0-next.9'
742
581
  }).withConfig({
743
582
  displayName: "StyledSheetTitle",
744
583
  componentId: "sc-1gogk75-0"
@@ -750,7 +589,7 @@ StyledSheetTitle.defaultProps = {
750
589
  const COMPONENT_ID$5 = 'chrome.sheet_description';
751
590
  const StyledSheetDescription = styled__default.default.div.attrs({
752
591
  'data-garden-id': COMPONENT_ID$5,
753
- 'data-garden-version': '9.0.0-next.7'
592
+ 'data-garden-version': '9.0.0-next.9'
754
593
  }).withConfig({
755
594
  displayName: "StyledSheetDescription",
756
595
  componentId: "sc-1puglb6-0"
@@ -762,7 +601,7 @@ StyledSheetDescription.defaultProps = {
762
601
  const COMPONENT_ID$4 = 'chrome.sheet_body';
763
602
  const StyledSheetBody = styled__default.default.div.attrs({
764
603
  'data-garden-id': COMPONENT_ID$4,
765
- 'data-garden-version': '9.0.0-next.7'
604
+ 'data-garden-version': '9.0.0-next.9'
766
605
  }).withConfig({
767
606
  displayName: "StyledSheetBody",
768
607
  componentId: "sc-bt4eoj-0"
@@ -786,7 +625,7 @@ const colorStyles = props => {
786
625
  };
787
626
  const StyledSheetClose = styled__default.default.button.attrs({
788
627
  'data-garden-id': COMPONENT_ID$3,
789
- 'data-garden-version': '9.0.0-next.7'
628
+ 'data-garden-version': '9.0.0-next.9'
790
629
  }).withConfig({
791
630
  displayName: "StyledSheetClose",
792
631
  componentId: "sc-1ab02oq-0"
@@ -798,7 +637,7 @@ StyledSheetClose.defaultProps = {
798
637
  const COMPONENT_ID$2 = 'chrome.sheet_footer';
799
638
  const StyledSheetFooter = styled__default.default.footer.attrs({
800
639
  'data-garden-id': COMPONENT_ID$2,
801
- 'data-garden-version': '9.0.0-next.7'
640
+ 'data-garden-version': '9.0.0-next.9'
802
641
  }).withConfig({
803
642
  displayName: "StyledSheetFooter",
804
643
  componentId: "sc-2cktos-0"
@@ -810,7 +649,7 @@ StyledSheetFooter.defaultProps = {
810
649
  const COMPONENT_ID$1 = 'chrome.sheet_footer_item';
811
650
  const StyledSheetFooterItem = styled__default.default.div.attrs({
812
651
  'data-garden-id': COMPONENT_ID$1,
813
- 'data-garden-version': '9.0.0-next.7'
652
+ 'data-garden-version': '9.0.0-next.9'
814
653
  }).withConfig({
815
654
  displayName: "StyledSheetFooterItem",
816
655
  componentId: "sc-r9ixh-0"
@@ -822,7 +661,7 @@ StyledSheetFooterItem.defaultProps = {
822
661
  const COMPONENT_ID = 'chrome.sheet_header';
823
662
  const StyledSheetHeader = styled__default.default.header.attrs({
824
663
  'data-garden-id': COMPONENT_ID,
825
- 'data-garden-version': '9.0.0-next.7'
664
+ 'data-garden-version': '9.0.0-next.9'
826
665
  }).withConfig({
827
666
  displayName: "StyledSheetHeader",
828
667
  componentId: "sc-o2ry8i-0"
@@ -838,12 +677,12 @@ const HeaderItem = React__namespace.default.forwardRef((_ref, ref) => {
838
677
  ...other
839
678
  } = _ref;
840
679
  if (hasLogo) {
841
- return React__namespace.default.createElement(StyledLogoHeaderItem, _extends$3({
680
+ return React__namespace.default.createElement(StyledLogoHeaderItem, Object.assign({
842
681
  ref: ref,
843
682
  product: product
844
683
  }, other));
845
684
  }
846
- return React__namespace.default.createElement(StyledHeaderItem, _extends$3({
685
+ return React__namespace.default.createElement(StyledHeaderItem, Object.assign({
847
686
  ref: ref
848
687
  }, other));
849
688
  });
@@ -873,14 +712,14 @@ const HeaderItemIcon = _ref => {
873
712
  ...iconProps
874
713
  });
875
714
  };
876
- return React__namespace.default.createElement(StyledHeaderItemIcon, _extends$3({
715
+ return React__namespace.default.createElement(StyledHeaderItemIcon, Object.assign({
877
716
  as: Icon
878
717
  }, props));
879
718
  }
880
719
  return null;
881
720
  };
882
721
 
883
- const HeaderItemText = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemText, _extends$3({
722
+ const HeaderItemText = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemText, Object.assign({
884
723
  ref: ref
885
724
  }, props)));
886
725
  HeaderItemText.displayName = 'HeaderItemText';
@@ -888,12 +727,12 @@ HeaderItemText.propTypes = {
888
727
  isClipped: PropTypes__default.default.bool
889
728
  };
890
729
 
891
- const HeaderItemWrapper = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemWrapper, _extends$3({
730
+ const HeaderItemWrapper = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemWrapper, Object.assign({
892
731
  ref: ref
893
732
  }, props)));
894
733
  HeaderItemWrapper.displayName = 'HeaderItemWrapper';
895
734
 
896
- const FooterItem$1 = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledFooterItem, _extends$3({
735
+ const FooterItem$1 = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledFooterItem, Object.assign({
897
736
  ref: ref
898
737
  }, props)));
899
738
  FooterItem$1.displayName = 'FooterItem';
@@ -912,6 +751,11 @@ const useChromeContext = () => {
912
751
  return React.useContext(ChromeContext);
913
752
  };
914
753
 
754
+ const NavListContext = React__namespace.default.createContext(undefined);
755
+ const useNavListContext = () => {
756
+ return React.useContext(NavListContext);
757
+ };
758
+
915
759
  const NavItem = React__namespace.default.forwardRef((_ref, ref) => {
916
760
  let {
917
761
  hasLogo,
@@ -927,30 +771,37 @@ const NavItem = React__namespace.default.forwardRef((_ref, ref) => {
927
771
  const {
928
772
  isExpanded
929
773
  } = useNavContext();
774
+ const navListContext = useNavListContext();
930
775
  const ariaCurrent = other.isCurrent || undefined;
776
+ const hasList = navListContext?.hasList;
777
+ let retVal;
931
778
  if (hasLogo) {
932
- return React__namespace.default.createElement(StyledLogoNavItem, _extends$3({
779
+ retVal = React__namespace.default.createElement(StyledLogoNavItem, Object.assign({
933
780
  ref: ref,
934
781
  isDark: isDark,
935
782
  isLight: isLight,
936
783
  product: product,
937
784
  "aria-current": ariaCurrent
938
785
  }, other));
939
- }
940
- if (hasBrandmark) {
941
- return React__namespace.default.createElement(StyledBrandmarkNavItem, _extends$3({
786
+ } else if (hasBrandmark) {
787
+ retVal = React__namespace.default.createElement(StyledBrandmarkNavItem, Object.assign({
942
788
  ref: ref
943
789
  }, other));
790
+ } else {
791
+ retVal = React__namespace.default.createElement(StyledNavButton, Object.assign({
792
+ tabIndex: 0,
793
+ ref: ref,
794
+ isExpanded: isExpanded,
795
+ hue: hue,
796
+ isDark: isDark,
797
+ isLight: isLight,
798
+ "aria-current": ariaCurrent
799
+ }, other));
944
800
  }
945
- return React__namespace.default.createElement(StyledNavItem, _extends$3({
946
- tabIndex: 0,
947
- ref: ref,
948
- isExpanded: isExpanded,
949
- hue: hue,
950
- isDark: isDark,
951
- isLight: isLight,
952
- "aria-current": ariaCurrent
953
- }, other));
801
+ if (hasList) {
802
+ retVal = React__namespace.default.createElement(StyledNavListItem, null, retVal);
803
+ }
804
+ return retVal;
954
805
  });
955
806
  NavItem.displayName = 'NavItem';
956
807
  NavItem.propTypes = {
@@ -976,7 +827,7 @@ const NavItemIcon = _ref => {
976
827
  ...iconProps
977
828
  });
978
829
  };
979
- return React__namespace.default.createElement(StyledNavItemIcon, _extends$3({
830
+ return React__namespace.default.createElement(StyledNavItemIcon, Object.assign({
980
831
  as: Icon
981
832
  }, props));
982
833
  }
@@ -987,7 +838,7 @@ const NavItemText = React__namespace.default.forwardRef((props, ref) => {
987
838
  const {
988
839
  isExpanded
989
840
  } = useNavContext();
990
- return React__namespace.default.createElement(StyledNavItemText, _extends$3({
841
+ return React__namespace.default.createElement(StyledNavItemText, Object.assign({
991
842
  ref: ref,
992
843
  isExpanded: isExpanded
993
844
  }, props));
@@ -997,99 +848,6 @@ NavItemText.propTypes = {
997
848
  isWrapped: PropTypes__default.default.bool
998
849
  };
999
850
 
1000
- const SubNavItem = React__namespace.default.forwardRef((props, ref) => {
1001
- const {
1002
- isDark,
1003
- isLight
1004
- } = useChromeContext();
1005
- return React__namespace.default.createElement(StyledSubNavItem, _extends$3({
1006
- ref: ref,
1007
- isDark: isDark,
1008
- isLight: isLight
1009
- }, props));
1010
- });
1011
- SubNavItem.displayName = 'SubNavItem';
1012
- SubNavItem.propTypes = {
1013
- isCurrent: PropTypes__default.default.bool
1014
- };
1015
-
1016
- const SubNavItemText = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledSubNavItemText, _extends$3({
1017
- ref: ref
1018
- }, props)));
1019
- SubNavItemText.displayName = 'SubNavItemText';
1020
- SubNavItemText.propTypes = {
1021
- isWrapped: PropTypes__default.default.bool
1022
- };
1023
-
1024
- const CollapsibleSubNavItem = React__namespace.default.forwardRef((_ref, ref) => {
1025
- let {
1026
- header,
1027
- children,
1028
- isExpanded: controlledExpanded,
1029
- onChange,
1030
- ...other
1031
- } = _ref;
1032
- const {
1033
- isDark,
1034
- isLight
1035
- } = useChromeContext();
1036
- const panelRef = React.createRef();
1037
- const [internalExpanded, setInternalExpanded] = React.useState(controlledExpanded);
1038
- const expanded = containerUtilities.getControlledValue(controlledExpanded, internalExpanded);
1039
- const value = 0;
1040
- const expandedSections = expanded ? [value] : [];
1041
- const {
1042
- getHeaderProps,
1043
- getTriggerProps,
1044
- getPanelProps
1045
- } = containerAccordion.useAccordion({
1046
- sections: [value],
1047
- expandedSections,
1048
- onChange: () => {
1049
- const isExpanded = expandedSections.length === 0;
1050
- if (onChange) {
1051
- onChange(isExpanded);
1052
- } else {
1053
- setInternalExpanded(isExpanded);
1054
- }
1055
- }
1056
- });
1057
- React.useEffect(() => {
1058
- if (expanded && panelRef.current) {
1059
- panelRef.current.style.maxHeight = `${panelRef.current.scrollHeight}px`;
1060
- }
1061
- }, [expanded, children, panelRef]);
1062
- return React__namespace.default.createElement("div", {
1063
- ref: ref
1064
- }, React__namespace.default.createElement("div", getHeaderProps({
1065
- 'aria-level': 2
1066
- }), React__namespace.default.createElement(StyledSubNavItemHeader, _extends$3({
1067
- isDark: isDark,
1068
- isLight: isLight,
1069
- isExpanded: expanded
1070
- }, getTriggerProps({
1071
- ...other,
1072
- role: null,
1073
- tabIndex: null,
1074
- value
1075
- }), {
1076
- type: "button"
1077
- }), React__namespace.default.createElement(React__namespace.default.Fragment, null, header, React__namespace.default.createElement(StyledSubNavItemIconWrapper, {
1078
- isExpanded: expanded
1079
- }, React__namespace.default.createElement(StyledSubNavItemIcon, null))))), React__namespace.default.createElement(StyledSubNavPanel, _extends$3({
1080
- isHidden: !expanded
1081
- }, getPanelProps({
1082
- ref: panelRef,
1083
- value
1084
- })), children));
1085
- });
1086
- CollapsibleSubNavItem.propTypes = {
1087
- header: PropTypes__default.default.any,
1088
- isExpanded: PropTypes__default.default.bool,
1089
- onChange: PropTypes__default.default.func
1090
- };
1091
- CollapsibleSubNavItem.displayName = 'CollapsibleSubNavItem';
1092
-
1093
851
  const Chrome = React__namespace.default.forwardRef((_ref, ref) => {
1094
852
  let {
1095
853
  hue,
@@ -1128,7 +886,7 @@ const Chrome = React__namespace.default.forwardRef((_ref, ref) => {
1128
886
  }, [environment, isFluid]);
1129
887
  return React__namespace.default.createElement(ChromeContext.Provider, {
1130
888
  value: chromeContextValue
1131
- }, React__namespace.default.createElement(StyledChrome, _extends$3({
889
+ }, React__namespace.default.createElement(StyledChrome, Object.assign({
1132
890
  ref: ref
1133
891
  }, props)));
1134
892
  });
@@ -1144,7 +902,7 @@ const SkipNav = React__namespace.default.forwardRef((_ref, ref) => {
1144
902
  children,
1145
903
  ...props
1146
904
  } = _ref;
1147
- return React__namespace.default.createElement(StyledSkipNav, _extends$3({
905
+ return React__namespace.default.createElement(StyledSkipNav, Object.assign({
1148
906
  href: `#${targetId}`,
1149
907
  zIndex: zIndex,
1150
908
  ref: ref
@@ -1172,7 +930,7 @@ const Body$1 = React__namespace.default.forwardRef((props, ref) => {
1172
930
  }), [hasFooter, setHasFooter]);
1173
931
  return React__namespace.default.createElement(BodyContext.Provider, {
1174
932
  value: bodyContextValue
1175
- }, React__namespace.default.createElement(StyledBody, _extends$3({
933
+ }, React__namespace.default.createElement(StyledBody, Object.assign({
1176
934
  ref: ref
1177
935
  }, props)));
1178
936
  });
@@ -1182,19 +940,19 @@ const Content = React__namespace.default.forwardRef((props, ref) => {
1182
940
  const {
1183
941
  hasFooter
1184
942
  } = useBodyContext() || {};
1185
- return React__namespace.default.createElement(StyledContent, _extends$3({
943
+ return React__namespace.default.createElement(StyledContent, Object.assign({
1186
944
  ref: ref,
1187
945
  hasFooter: hasFooter
1188
946
  }, props));
1189
947
  });
1190
948
  Content.displayName = 'Content';
1191
949
 
1192
- const Main = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledMain, _extends$3({
950
+ const Main = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledMain, Object.assign({
1193
951
  ref: ref
1194
952
  }, props)));
1195
953
  Main.displayName = 'Main';
1196
954
 
1197
- const HeaderComponent = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeader, _extends$3({
955
+ const HeaderComponent = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeader, Object.assign({
1198
956
  ref: ref
1199
957
  }, props)));
1200
958
  HeaderComponent.displayName = 'Header';
@@ -1222,7 +980,7 @@ const FooterComponent = React__namespace.default.forwardRef((props, ref) => {
1222
980
  }
1223
981
  };
1224
982
  }, [hasFooter, setHasFooter]);
1225
- return React__namespace.default.createElement(StyledFooter, _extends$3({
983
+ return React__namespace.default.createElement(StyledFooter, Object.assign({
1226
984
  ref: ref
1227
985
  }, props));
1228
986
  });
@@ -1230,6 +988,18 @@ FooterComponent.displayName = 'Footer';
1230
988
  const Footer$1 = FooterComponent;
1231
989
  Footer$1.Item = FooterItem$1;
1232
990
 
991
+ const NavList = React__namespace.default.forwardRef((props, ref) => {
992
+ const contextValue = React.useMemo(() => ({
993
+ hasList: true
994
+ }), []);
995
+ return React__namespace.default.createElement(NavListContext.Provider, {
996
+ value: contextValue
997
+ }, React__namespace.default.createElement(StyledNavList, Object.assign({
998
+ ref: ref
999
+ }, props)));
1000
+ });
1001
+ NavList.displayName = 'Nav';
1002
+
1233
1003
  const NavComponent = React__namespace.default.forwardRef((props, ref) => {
1234
1004
  const {
1235
1005
  hue,
@@ -1241,7 +1011,7 @@ const NavComponent = React__namespace.default.forwardRef((props, ref) => {
1241
1011
  }), [props.isExpanded]);
1242
1012
  return React__namespace.default.createElement(NavContext.Provider, {
1243
1013
  value: navContextValue
1244
- }, React__namespace.default.createElement(StyledNav, _extends$3({
1014
+ }, React__namespace.default.createElement(StyledNav, Object.assign({
1245
1015
  ref: ref
1246
1016
  }, props, {
1247
1017
  hue: hue,
@@ -1254,29 +1024,11 @@ NavComponent.propTypes = {
1254
1024
  isExpanded: PropTypes__default.default.bool
1255
1025
  };
1256
1026
  const Nav = NavComponent;
1027
+ Nav.List = NavList;
1257
1028
  Nav.Item = NavItem;
1258
1029
  Nav.ItemIcon = NavItemIcon;
1259
1030
  Nav.ItemText = NavItemText;
1260
1031
 
1261
- const SubNavComponent = React__namespace.default.forwardRef((props, ref) => {
1262
- const {
1263
- hue,
1264
- isLight,
1265
- isDark
1266
- } = useChromeContext();
1267
- return React__namespace.default.createElement(StyledSubNav, _extends$3({
1268
- ref: ref,
1269
- hue: hue,
1270
- isLight: isLight,
1271
- isDark: isDark
1272
- }, props));
1273
- });
1274
- SubNavComponent.displayName = 'SubNav';
1275
- const SubNav = SubNavComponent;
1276
- SubNav.Item = SubNavItem;
1277
- SubNav.ItemText = SubNavItemText;
1278
- SubNav.CollapsibleItem = CollapsibleSubNavItem;
1279
-
1280
1032
  const SheetContext = React.createContext({
1281
1033
  setIsCloseButtonPresent() {}
1282
1034
  });
@@ -1313,7 +1065,7 @@ const SheetTitle = React.forwardRef((_ref, ref) => {
1313
1065
  const {
1314
1066
  titleId
1315
1067
  } = useSheetContext();
1316
- return React__namespace.default.createElement(StyledSheetTitle, _extends$3({
1068
+ return React__namespace.default.createElement(StyledSheetTitle, Object.assign({
1317
1069
  id: id || titleId,
1318
1070
  ref: ref
1319
1071
  }, props));
@@ -1329,7 +1081,7 @@ const SheetDescription = React.forwardRef((_ref, ref) => {
1329
1081
  const {
1330
1082
  descriptionId
1331
1083
  } = useSheetContext();
1332
- return React__namespace.default.createElement(StyledSheetDescription, _extends$3({
1084
+ return React__namespace.default.createElement(StyledSheetDescription, Object.assign({
1333
1085
  id: id || descriptionId,
1334
1086
  ref: ref
1335
1087
  }, props));
@@ -1341,7 +1093,7 @@ const SheetHeader = React.forwardRef((props, ref) => {
1341
1093
  const {
1342
1094
  isCloseButtonPresent
1343
1095
  } = useSheetContext();
1344
- return React__namespace.default.createElement(StyledSheetHeader, _extends$3({
1096
+ return React__namespace.default.createElement(StyledSheetHeader, Object.assign({
1345
1097
  ref: ref,
1346
1098
  isCloseButtonPresent: isCloseButtonPresent
1347
1099
  }, props));
@@ -1350,7 +1102,7 @@ SheetHeader.displayName = 'Sheet.Header';
1350
1102
  const Header = SheetHeader;
1351
1103
 
1352
1104
  const SheetBody = React.forwardRef((props, ref) => {
1353
- return React__namespace.default.createElement(StyledSheetBody, _extends$3({
1105
+ return React__namespace.default.createElement(StyledSheetBody, Object.assign({
1354
1106
  ref: ref
1355
1107
  }, props));
1356
1108
  });
@@ -1358,7 +1110,7 @@ SheetBody.displayName = 'Sheet.Body';
1358
1110
  const Body = SheetBody;
1359
1111
 
1360
1112
  const SheetFooter = React.forwardRef((props, ref) => {
1361
- return React__namespace.default.createElement(StyledSheetFooter, _extends$3({
1113
+ return React__namespace.default.createElement(StyledSheetFooter, Object.assign({
1362
1114
  ref: ref
1363
1115
  }, props));
1364
1116
  });
@@ -1366,7 +1118,7 @@ SheetFooter.displayName = 'Sheet.Footer';
1366
1118
  const Footer = SheetFooter;
1367
1119
 
1368
1120
  const SheetFooterItem = React.forwardRef((props, ref) => {
1369
- return React__namespace.default.createElement(StyledSheetFooterItem, _extends$3({
1121
+ return React__namespace.default.createElement(StyledSheetFooterItem, Object.assign({
1370
1122
  ref: ref
1371
1123
  }, props));
1372
1124
  });
@@ -1398,7 +1150,7 @@ const SheetClose = React.forwardRef((props, ref) => {
1398
1150
  setIsCloseButtonPresent(true);
1399
1151
  return () => setIsCloseButtonPresent(false);
1400
1152
  }, [setIsCloseButtonPresent]);
1401
- return React__namespace.default.createElement(StyledSheetClose, _extends$3({
1153
+ return React__namespace.default.createElement(StyledSheetClose, Object.assign({
1402
1154
  "aria-label": "Close Sheet",
1403
1155
  ref: ref
1404
1156
  }, props), React__namespace.default.createElement(SvgXStroke, null));
@@ -1421,7 +1173,7 @@ const SheetComponent = React__namespace.default.forwardRef((_ref, ref) => {
1421
1173
  const sheetRef = React.useRef(null);
1422
1174
  const seed = reactUid.useUIDSeed();
1423
1175
  const [isCloseButtonPresent, setIsCloseButtonPresent] = React.useState(false);
1424
- const idPrefix = React.useMemo(() => id || seed(`sheet_${'9.0.0-next.7'}`), [id, seed]);
1176
+ const idPrefix = React.useMemo(() => id || seed(`sheet_${'9.0.0-next.9'}`), [id, seed]);
1425
1177
  const titleId = `${idPrefix}--title`;
1426
1178
  const descriptionId = `${idPrefix}--description`;
1427
1179
  const sheetContext = React.useMemo(() => ({
@@ -1438,7 +1190,7 @@ const SheetComponent = React__namespace.default.forwardRef((_ref, ref) => {
1438
1190
  });
1439
1191
  return React__namespace.default.createElement(SheetContext.Provider, {
1440
1192
  value: sheetContext
1441
- }, React__namespace.default.createElement(StyledSheet, _extends$3({
1193
+ }, React__namespace.default.createElement(StyledSheet, Object.assign({
1442
1194
  isOpen: isOpen,
1443
1195
  isAnimated: isAnimated,
1444
1196
  placement: placement,
@@ -1481,7 +1233,6 @@ Sheet.Title = Title;
1481
1233
 
1482
1234
  exports.Body = Body$1;
1483
1235
  exports.Chrome = Chrome;
1484
- exports.CollapsibleSubNavItem = CollapsibleSubNavItem;
1485
1236
  exports.Content = Content;
1486
1237
  exports.Footer = Footer$1;
1487
1238
  exports.FooterItem = FooterItem$1;
@@ -1498,6 +1249,3 @@ exports.NavItemText = NavItemText;
1498
1249
  exports.PRODUCTS = PRODUCTS;
1499
1250
  exports.Sheet = Sheet;
1500
1251
  exports.SkipNav = SkipNav;
1501
- exports.SubNav = SubNav;
1502
- exports.SubNavItem = SubNavItem;
1503
- exports.SubNavItemText = SubNavItemText;