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

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 +13 -10
  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 +47 -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 +48 -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 +208 -452
  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 +1 -24
  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
44
  const PRODUCTS = ['chat', 'connect', 'explore', 'guide', 'message', '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.8'
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.8'
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.8'
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.8'
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,17 +119,17 @@ 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.8'
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':
@@ -169,44 +151,44 @@ const retrieveProductColor$1 = props => {
169
151
  }
170
152
  };
171
153
  const StyledLogoHeaderItem = styled__default.default(StyledBaseHeaderItem).attrs({
172
- 'data-garden-id': COMPONENT_ID$u,
173
- 'data-garden-version': '9.0.0-next.7',
154
+ 'data-garden-id': COMPONENT_ID$r,
155
+ 'data-garden-version': '9.0.0-next.8',
174
156
  as: 'div'
175
157
  }).withConfig({
176
158
  displayName: "StyledLogoHeaderItem",
177
159
  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));
160
+ })(["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
161
  StyledLogoHeaderItem.defaultProps = {
180
162
  theme: reactTheming.DEFAULT_THEME
181
163
  };
182
164
 
183
- const COMPONENT_ID$t = 'chrome.base_nav_item';
165
+ const COMPONENT_ID$q = 'chrome.base_nav_item';
184
166
  const getNavItemHeight = props => {
185
167
  return `${props.theme.space.base * 13}px`;
186
168
  };
187
- const sizeStyles$3 = props => {
169
+ const sizeStyles$2 = props => {
188
170
  const verticalPadding = polished.math(`(${getNavItemHeight(props)} - ${props.theme.iconSizes.lg}) / 2`);
189
171
  const horizontalPadding = polished.math(`(${getNavWidth(props)} - ${props.theme.iconSizes.lg}) / 4`);
190
172
  return styled.css(["padding:", " ", ";min-height:", ";"], verticalPadding, horizontalPadding, getNavItemHeight);
191
173
  };
192
- const StyledBaseNavItem = styled__default.default.button.attrs({
193
- 'data-garden-id': COMPONENT_ID$t,
194
- 'data-garden-version': '9.0.0-next.7'
174
+ const StyledBaseNavItem = styled__default.default.div.attrs({
175
+ 'data-garden-id': COMPONENT_ID$q,
176
+ 'data-garden-version': '9.0.0-next.8'
195
177
  }).withConfig({
196
178
  displayName: "StyledBaseNavItem",
197
179
  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));
180
+ })(["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
181
  StyledBaseNavItem.defaultProps = {
200
182
  theme: reactTheming.DEFAULT_THEME
201
183
  };
202
184
 
203
- const COMPONENT_ID$s = 'chrome.header';
185
+ const COMPONENT_ID$p = 'chrome.header';
204
186
  const getHeaderHeight = props => {
205
187
  return getNavItemHeight(props);
206
188
  };
207
189
  const StyledHeader = styled__default.default.header.attrs({
208
- 'data-garden-id': COMPONENT_ID$s,
209
- 'data-garden-version': '9.0.0-next.7'
190
+ 'data-garden-id': COMPONENT_ID$p,
191
+ 'data-garden-version': '9.0.0-next.8'
210
192
  }).withConfig({
211
193
  displayName: "StyledHeader",
212
194
  componentId: "sc-1cexpz-0"
@@ -214,17 +196,17 @@ const StyledHeader = styled__default.default.header.attrs({
214
196
  ${StyledLogoHeaderItem} {
215
197
  display: inline-flex;
216
198
  }
217
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$s, props));
199
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$p, props));
218
200
  StyledHeader.defaultProps = {
219
201
  theme: reactTheming.DEFAULT_THEME
220
202
  };
221
203
 
222
- const COMPONENT_ID$r = 'chrome.skipnav';
204
+ const COMPONENT_ID$o = 'chrome.skipnav';
223
205
  const animationStyles = () => {
224
206
  const animationName = styled.keyframes(["0%{transform:translate(-50%,-50%);}"]);
225
207
  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
208
  };
227
- const colorStyles$5 = theme => {
209
+ const colorStyles$3 = theme => {
228
210
  const color = reactTheming.getColorV8('primaryHue', 600, theme);
229
211
  const borderColor = reactTheming.getColorV8('neutralHue', 300, theme);
230
212
  const boxShadow = theme.shadows.lg(`${theme.space.base * 5}px`, `${theme.space.base * 7}px`, reactTheming.getColorV8('chromeHue', 600, theme, 0.15));
@@ -234,7 +216,7 @@ const colorStyles$5 = theme => {
234
216
  boxShadow
235
217
  }));
236
218
  };
237
- const sizeStyles$2 = props => {
219
+ const sizeStyles$1 = props => {
238
220
  const top = polished.math(`${getHeaderHeight(props)} / 2`);
239
221
  const padding = `${props.theme.space.base * 5}px`;
240
222
  const paddingStart = `${props.theme.space.base * 4}px`;
@@ -243,120 +225,120 @@ const sizeStyles$2 = props => {
243
225
  return styled.css(["top:", ";padding:", ";padding-", ":", ";line-height:", ";font-size:", ";"], top, padding, props.theme.rtl ? 'right' : 'left', paddingStart, lineHeight, fontSize);
244
226
  };
245
227
  const StyledSkipNav = styled__default.default.a.attrs({
246
- 'data-garden-id': COMPONENT_ID$r,
247
- 'data-garden-version': '9.0.0-next.7'
228
+ 'data-garden-id': COMPONENT_ID$o,
229
+ 'data-garden-version': '9.0.0-next.8'
248
230
  }).withConfig({
249
231
  displayName: "StyledSkipNav",
250
232
  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));
233
+ })(["", ";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
234
  StyledSkipNav.defaultProps = {
253
235
  theme: reactTheming.DEFAULT_THEME
254
236
  };
255
237
 
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); }
238
+ var _path$1;
239
+ 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
240
  var SvgLinkStroke = function SvgLinkStroke(props) {
259
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$2({
241
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$1({
260
242
  xmlns: "http://www.w3.org/2000/svg",
261
243
  width: 16,
262
244
  height: 16,
263
245
  focusable: "false",
264
246
  viewBox: "0 0 16 16",
265
247
  "aria-hidden": "true"
266
- }, props), _path$2 || (_path$2 = /*#__PURE__*/React__namespace.createElement("path", {
248
+ }, props), _path$1 || (_path$1 = /*#__PURE__*/React__namespace.createElement("path", {
267
249
  fill: "currentColor",
268
250
  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
251
  })));
270
252
  };
271
253
 
272
- const COMPONENT_ID$q = 'chrome.skipnav_icon';
273
- const sizeStyles$1 = theme => {
254
+ const COMPONENT_ID$n = 'chrome.skipnav_icon';
255
+ const sizeStyles = theme => {
274
256
  const margin = `${theme.space.base * 2}px`;
275
257
  const size = theme.iconSizes.md;
276
258
  return styled.css(["margin-", ":", ";width:", ";height:", ";"], theme.rtl ? 'left' : 'right', margin, size, size);
277
259
  };
278
260
  const StyledSkipNavIcon = styled__default.default(SvgLinkStroke).attrs({
279
- 'data-garden-id': COMPONENT_ID$q,
280
- 'data-garden-version': '9.0.0-next.7'
261
+ 'data-garden-id': COMPONENT_ID$n,
262
+ 'data-garden-version': '9.0.0-next.8'
281
263
  }).withConfig({
282
264
  displayName: "StyledSkipNavIcon",
283
265
  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));
266
+ })(["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
267
  StyledSkipNavIcon.defaultProps = {
286
268
  theme: reactTheming.DEFAULT_THEME
287
269
  };
288
270
 
289
- const COMPONENT_ID$p = 'chrome.body';
271
+ const COMPONENT_ID$m = 'chrome.body';
290
272
  const StyledBody = styled__default.default.div.attrs({
291
- 'data-garden-id': COMPONENT_ID$p,
292
- 'data-garden-version': '9.0.0-next.7'
273
+ 'data-garden-id': COMPONENT_ID$m,
274
+ 'data-garden-version': '9.0.0-next.8'
293
275
  }).withConfig({
294
276
  displayName: "StyledBody",
295
277
  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));
278
+ })(["flex:1;order:1;background-color:", ";min-width:0;", ";"], props => reactTheming.getColorV8('neutralHue', 100, props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$m, props));
297
279
  StyledBody.defaultProps = {
298
280
  theme: reactTheming.DEFAULT_THEME
299
281
  };
300
282
 
301
- const COMPONENT_ID$o = 'chrome.footer';
283
+ const COMPONENT_ID$l = 'chrome.footer';
302
284
  const getFooterHeight = props => {
303
285
  return `${props.theme.space.base * 20}px`;
304
286
  };
305
287
  const StyledFooter = styled__default.default.footer.attrs({
306
- 'data-garden-id': COMPONENT_ID$o,
307
- 'data-garden-version': '9.0.0-next.7'
288
+ 'data-garden-id': COMPONENT_ID$l,
289
+ 'data-garden-version': '9.0.0-next.8'
308
290
  }).withConfig({
309
291
  displayName: "StyledFooter",
310
292
  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));
293
+ })(["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
294
  StyledFooter.defaultProps = {
313
295
  theme: reactTheming.DEFAULT_THEME
314
296
  };
315
297
 
316
- const COMPONENT_ID$n = 'chrome.content';
298
+ const COMPONENT_ID$k = 'chrome.content';
317
299
  const StyledContent = styled__default.default.div.attrs({
318
- 'data-garden-id': COMPONENT_ID$n,
319
- 'data-garden-version': '9.0.0-next.7'
300
+ 'data-garden-id': COMPONENT_ID$k,
301
+ 'data-garden-version': '9.0.0-next.8'
320
302
  }).withConfig({
321
303
  displayName: "StyledContent",
322
304
  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));
305
+ })(["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
306
  StyledContent.defaultProps = {
325
307
  theme: reactTheming.DEFAULT_THEME
326
308
  };
327
309
 
328
- const COMPONENT_ID$m = 'chrome.main';
310
+ const COMPONENT_ID$j = 'chrome.main';
329
311
  const StyledMain = styled__default.default.main.attrs({
330
- 'data-garden-id': COMPONENT_ID$m,
331
- 'data-garden-version': '9.0.0-next.7'
312
+ 'data-garden-id': COMPONENT_ID$j,
313
+ 'data-garden-version': '9.0.0-next.8'
332
314
  }).withConfig({
333
315
  displayName: "StyledMain",
334
316
  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));
317
+ })(["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
318
  StyledMain.defaultProps = {
337
319
  theme: reactTheming.DEFAULT_THEME
338
320
  };
339
321
 
340
- const COMPONENT_ID$l = 'chrome.footer_item';
322
+ const COMPONENT_ID$i = 'chrome.footer_item';
341
323
  const StyledFooterItem = styled__default.default.div.attrs({
342
- 'data-garden-id': COMPONENT_ID$l,
343
- 'data-garden-version': '9.0.0-next.7'
324
+ 'data-garden-id': COMPONENT_ID$i,
325
+ 'data-garden-version': '9.0.0-next.8'
344
326
  }).withConfig({
345
327
  displayName: "StyledFooterItem",
346
328
  componentId: "sc-1cktm85-0"
347
- })(["margin:", ";", ";"], props => `0 ${props.theme.space.base}px`, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$l, props));
329
+ })(["margin:", ";", ";"], props => `0 ${props.theme.space.base}px`, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$i, props));
348
330
  StyledFooterItem.defaultProps = {
349
331
  theme: reactTheming.DEFAULT_THEME
350
332
  };
351
333
 
352
- const COMPONENT_ID$k = 'chrome.header_item';
334
+ const COMPONENT_ID$h = 'chrome.header_item';
353
335
  const imgStyles = props => {
354
336
  const size = polished.math(`${getHeaderItemSize(props)} - ${props.theme.space.base * 2}`);
355
337
  return styled.css(["img{margin:0;border-radius:", ";width:", ";height:", ";}"], polished.math(`${props.theme.borderRadii.md} - 1`), size, size);
356
338
  };
357
339
  const StyledHeaderItem = styled__default.default(StyledBaseHeaderItem).attrs({
358
- 'data-garden-id': COMPONENT_ID$k,
359
- 'data-garden-version': '9.0.0-next.7'
340
+ 'data-garden-id': COMPONENT_ID$h,
341
+ 'data-garden-version': '9.0.0-next.8'
360
342
  }).withConfig({
361
343
  displayName: "StyledHeaderItem",
362
344
  componentId: "sc-14sft6n-0"
@@ -367,25 +349,49 @@ const StyledHeaderItem = styled__default.default(StyledBaseHeaderItem).attrs({
367
349
  ${StyledHeaderItemIcon} {
368
350
  border-radius: 100px;
369
351
  }
370
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$k, props));
352
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$h, props));
371
353
  StyledHeaderItem.defaultProps = {
372
354
  theme: reactTheming.DEFAULT_THEME
373
355
  };
374
356
 
375
- const COMPONENT_ID$j = 'chrome.header_item_wrapper';
357
+ const COMPONENT_ID$g = 'chrome.header_item_wrapper';
376
358
  const StyledHeaderItemWrapper = styled__default.default(StyledBaseHeaderItem).attrs({
377
- 'data-garden-id': COMPONENT_ID$j,
378
- 'data-garden-version': '9.0.0-next.7',
359
+ 'data-garden-id': COMPONENT_ID$g,
360
+ 'data-garden-version': '9.0.0-next.8',
379
361
  as: 'div'
380
362
  }).withConfig({
381
363
  displayName: "StyledHeaderItemWrapper",
382
364
  componentId: "sc-1uieu55-0"
383
- })(["", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$j, props));
365
+ })(["", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$g, props));
384
366
  StyledHeaderItemWrapper.defaultProps = {
385
367
  theme: reactTheming.DEFAULT_THEME
386
368
  };
387
369
 
388
- const COMPONENT_ID$i = 'chrome.logo_nav_item';
370
+ const COMPONENT_ID$f = 'chrome.nav_list';
371
+ const StyledNavList = styled__default.default.ul.attrs({
372
+ 'data-garden-id': COMPONENT_ID$f,
373
+ 'data-garden-version': '9.0.0-next.8'
374
+ }).withConfig({
375
+ displayName: "StyledNavList",
376
+ componentId: "sc-1s0nkfb-0"
377
+ })(["display:flex;flex:1;flex-direction:column;order:0;margin:0;padding:0;list-style:none;", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$f, props));
378
+ StyledNavList.defaultProps = {
379
+ theme: reactTheming.DEFAULT_THEME
380
+ };
381
+
382
+ const COMPONENT_ID$e = 'chrome.nav_list_item';
383
+ const StyledNavListItem = styled__default.default.li.attrs({
384
+ 'data-garden-id': COMPONENT_ID$e,
385
+ 'data-garden-version': '9.0.0-next.8'
386
+ }).withConfig({
387
+ displayName: "StyledNavListItem",
388
+ componentId: "sc-18cj2v7-0"
389
+ })(["display:flex;order:1;margin:0;padding:0;list-style-type:none;", ";"], props => reactTheming.retrieveComponentStyles(COMPONENT_ID$e, props));
390
+ StyledNavListItem.defaultProps = {
391
+ theme: reactTheming.DEFAULT_THEME
392
+ };
393
+
394
+ const COMPONENT_ID$d = 'chrome.logo_nav_list_item';
389
395
  const retrieveProductColor = product => {
390
396
  switch (product) {
391
397
  case 'chat':
@@ -406,50 +412,48 @@ const retrieveProductColor = product => {
406
412
  return 'inherit';
407
413
  }
408
414
  };
409
- const colorStyles$4 = props => {
415
+ const colorStyles$2 = props => {
410
416
  const fillColor = props.isLight ? props.theme.palette.grey[800] : props.theme.palette.white;
411
417
  const color = props.isLight || props.isDark ? fillColor : retrieveProductColor(props.product);
412
418
  return styled.css(["color:", ";fill:", ";"], color, fillColor);
413
419
  };
414
420
  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'
421
+ 'data-garden-id': COMPONENT_ID$d,
422
+ 'data-garden-version': '9.0.0-next.8'
418
423
  }).withConfig({
419
424
  displayName: "StyledLogoNavItem",
420
425
  componentId: "sc-saaydx-0"
421
- })(["order:0;opacity:1;cursor:default;", ";"], props => colorStyles$4(props));
426
+ })(["order:-1;opacity:1;cursor:default;min-height:0;", ";"], props => colorStyles$2(props));
422
427
  StyledLogoNavItem.defaultProps = {
423
428
  theme: reactTheming.DEFAULT_THEME
424
429
  };
425
430
 
426
- const COMPONENT_ID$h = 'chrome.brandmark_nav_item';
431
+ const COMPONENT_ID$c = 'chrome.brandmark_nav_list_item';
427
432
  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'
433
+ 'data-garden-id': COMPONENT_ID$c,
434
+ 'data-garden-version': '9.0.0-next.8'
431
435
  }).withConfig({
432
436
  displayName: "StyledBrandmarkNavItem",
433
437
  componentId: "sc-8kynd4-0"
434
- })(["order:1;opacity:0.3;margin-top:auto;"]);
438
+ })(["order:1;opacity:0.3;margin-top:auto;min-height:0;"]);
435
439
  StyledBrandmarkNavItem.defaultProps = {
436
440
  theme: reactTheming.DEFAULT_THEME
437
441
  };
438
442
 
439
- const COMPONENT_ID$g = 'chrome.nav_item_icon';
443
+ const COMPONENT_ID$b = 'chrome.nav_item_icon';
440
444
  const StyledNavItemIcon = styled__default.default.div.attrs({
441
- 'data-garden-id': COMPONENT_ID$g,
442
- 'data-garden-version': '9.0.0-next.7'
445
+ 'data-garden-id': COMPONENT_ID$b,
446
+ 'data-garden-version': '9.0.0-next.8'
443
447
  }).withConfig({
444
448
  displayName: "StyledNavItemIcon",
445
449
  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));
450
+ })(["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
451
  StyledNavItemIcon.defaultProps = {
448
452
  theme: reactTheming.DEFAULT_THEME
449
453
  };
450
454
 
451
- const COMPONENT_ID$f = 'chrome.nav_item';
452
- const colorStyles$3 = props => {
455
+ const COMPONENT_ID$a = 'chrome.nav_button';
456
+ const colorStyles$1 = props => {
453
457
  const {
454
458
  theme,
455
459
  hue,
@@ -483,31 +487,31 @@ const colorStyles$3 = props => {
483
487
  }
484
488
  }), activeColor);
485
489
  };
486
- const StyledNavItem = styled__default.default(StyledBaseNavItem).attrs({
487
- 'data-garden-id': COMPONENT_ID$f,
488
- 'data-garden-version': '9.0.0-next.7',
490
+ const StyledNavButton = styled__default.default(StyledBaseNavItem).attrs({
491
+ 'data-garden-id': COMPONENT_ID$a,
492
+ 'data-garden-version': '9.0.0-next.8',
489
493
  as: 'button'
490
494
  }).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 && `
495
+ displayName: "StyledNavButton",
496
+ componentId: "sc-f5ux3-0"
497
+ })(["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
498
  ${StyledNavItemIcon} {
495
499
  margin: 0 ${polished.math(`(${getNavWidth(props)} - ${props.theme.iconSizes.lg}) / 4`)};
496
500
  }
497
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$f, props));
498
- StyledNavItem.defaultProps = {
501
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$a, props));
502
+ StyledNavButton.defaultProps = {
499
503
  theme: reactTheming.DEFAULT_THEME
500
504
  };
501
505
 
502
- const COMPONENT_ID$e = 'chrome.nav_item_text';
506
+ const COMPONENT_ID$9 = 'chrome.nav_item_text';
503
507
  const StyledNavItemText = styled__default.default.span.attrs({
504
- 'data-garden-id': COMPONENT_ID$e,
505
- 'data-garden-version': '9.0.0-next.7'
508
+ 'data-garden-id': COMPONENT_ID$9,
509
+ 'data-garden-version': '9.0.0-next.8'
506
510
  }).withConfig({
507
511
  displayName: "StyledNavItemText",
508
512
  componentId: "sc-13m84xl-0"
509
513
  })(["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} > && {
514
+ ${StyledNavButton} > && {
511
515
  position: static;
512
516
  flex: 1;
513
517
  clip: auto;
@@ -515,168 +519,11 @@ const StyledNavItemText = styled__default.default.span.attrs({
515
519
  height: auto;
516
520
  text-overflow: ellipsis;
517
521
  }
518
- `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$e, props));
522
+ `, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$9, props));
519
523
  StyledNavItemText.defaultProps = {
520
524
  theme: reactTheming.DEFAULT_THEME
521
525
  };
522
526
 
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
527
  const COMPONENT_ID$8 = 'chrome.sheet';
681
528
  const borderStyle = _ref => {
682
529
  let {
@@ -699,7 +546,7 @@ const borderStyle = _ref => {
699
546
  };
700
547
  const StyledSheet = styled__default.default.aside.attrs({
701
548
  'data-garden-id': COMPONENT_ID$8,
702
- 'data-garden-version': '9.0.0-next.7'
549
+ 'data-garden-version': '9.0.0-next.8'
703
550
  }).withConfig({
704
551
  displayName: "StyledSheet",
705
552
  componentId: "sc-dx8ijk-0"
@@ -711,7 +558,7 @@ StyledSheet.defaultProps = {
711
558
  const COMPONENT_ID$7 = 'chrome.sheet_wrapper';
712
559
  const StyledSheetWrapper = styled__default.default.div.attrs({
713
560
  'data-garden-id': COMPONENT_ID$7,
714
- 'data-garden-version': '9.0.0-next.7'
561
+ 'data-garden-version': '9.0.0-next.8'
715
562
  }).withConfig({
716
563
  displayName: "StyledSheetWrapper",
717
564
  componentId: "sc-f6x9zb-0"
@@ -738,7 +585,7 @@ StyledSheetWrapper.defaultProps = {
738
585
  const COMPONENT_ID$6 = 'chrome.sheet_title';
739
586
  const StyledSheetTitle = styled__default.default.div.attrs({
740
587
  'data-garden-id': COMPONENT_ID$6,
741
- 'data-garden-version': '9.0.0-next.7'
588
+ 'data-garden-version': '9.0.0-next.8'
742
589
  }).withConfig({
743
590
  displayName: "StyledSheetTitle",
744
591
  componentId: "sc-1gogk75-0"
@@ -750,7 +597,7 @@ StyledSheetTitle.defaultProps = {
750
597
  const COMPONENT_ID$5 = 'chrome.sheet_description';
751
598
  const StyledSheetDescription = styled__default.default.div.attrs({
752
599
  'data-garden-id': COMPONENT_ID$5,
753
- 'data-garden-version': '9.0.0-next.7'
600
+ 'data-garden-version': '9.0.0-next.8'
754
601
  }).withConfig({
755
602
  displayName: "StyledSheetDescription",
756
603
  componentId: "sc-1puglb6-0"
@@ -762,7 +609,7 @@ StyledSheetDescription.defaultProps = {
762
609
  const COMPONENT_ID$4 = 'chrome.sheet_body';
763
610
  const StyledSheetBody = styled__default.default.div.attrs({
764
611
  'data-garden-id': COMPONENT_ID$4,
765
- 'data-garden-version': '9.0.0-next.7'
612
+ 'data-garden-version': '9.0.0-next.8'
766
613
  }).withConfig({
767
614
  displayName: "StyledSheetBody",
768
615
  componentId: "sc-bt4eoj-0"
@@ -786,7 +633,7 @@ const colorStyles = props => {
786
633
  };
787
634
  const StyledSheetClose = styled__default.default.button.attrs({
788
635
  'data-garden-id': COMPONENT_ID$3,
789
- 'data-garden-version': '9.0.0-next.7'
636
+ 'data-garden-version': '9.0.0-next.8'
790
637
  }).withConfig({
791
638
  displayName: "StyledSheetClose",
792
639
  componentId: "sc-1ab02oq-0"
@@ -798,7 +645,7 @@ StyledSheetClose.defaultProps = {
798
645
  const COMPONENT_ID$2 = 'chrome.sheet_footer';
799
646
  const StyledSheetFooter = styled__default.default.footer.attrs({
800
647
  'data-garden-id': COMPONENT_ID$2,
801
- 'data-garden-version': '9.0.0-next.7'
648
+ 'data-garden-version': '9.0.0-next.8'
802
649
  }).withConfig({
803
650
  displayName: "StyledSheetFooter",
804
651
  componentId: "sc-2cktos-0"
@@ -810,7 +657,7 @@ StyledSheetFooter.defaultProps = {
810
657
  const COMPONENT_ID$1 = 'chrome.sheet_footer_item';
811
658
  const StyledSheetFooterItem = styled__default.default.div.attrs({
812
659
  'data-garden-id': COMPONENT_ID$1,
813
- 'data-garden-version': '9.0.0-next.7'
660
+ 'data-garden-version': '9.0.0-next.8'
814
661
  }).withConfig({
815
662
  displayName: "StyledSheetFooterItem",
816
663
  componentId: "sc-r9ixh-0"
@@ -822,7 +669,7 @@ StyledSheetFooterItem.defaultProps = {
822
669
  const COMPONENT_ID = 'chrome.sheet_header';
823
670
  const StyledSheetHeader = styled__default.default.header.attrs({
824
671
  'data-garden-id': COMPONENT_ID,
825
- 'data-garden-version': '9.0.0-next.7'
672
+ 'data-garden-version': '9.0.0-next.8'
826
673
  }).withConfig({
827
674
  displayName: "StyledSheetHeader",
828
675
  componentId: "sc-o2ry8i-0"
@@ -838,12 +685,12 @@ const HeaderItem = React__namespace.default.forwardRef((_ref, ref) => {
838
685
  ...other
839
686
  } = _ref;
840
687
  if (hasLogo) {
841
- return React__namespace.default.createElement(StyledLogoHeaderItem, _extends$3({
688
+ return React__namespace.default.createElement(StyledLogoHeaderItem, Object.assign({
842
689
  ref: ref,
843
690
  product: product
844
691
  }, other));
845
692
  }
846
- return React__namespace.default.createElement(StyledHeaderItem, _extends$3({
693
+ return React__namespace.default.createElement(StyledHeaderItem, Object.assign({
847
694
  ref: ref
848
695
  }, other));
849
696
  });
@@ -873,14 +720,14 @@ const HeaderItemIcon = _ref => {
873
720
  ...iconProps
874
721
  });
875
722
  };
876
- return React__namespace.default.createElement(StyledHeaderItemIcon, _extends$3({
723
+ return React__namespace.default.createElement(StyledHeaderItemIcon, Object.assign({
877
724
  as: Icon
878
725
  }, props));
879
726
  }
880
727
  return null;
881
728
  };
882
729
 
883
- const HeaderItemText = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemText, _extends$3({
730
+ const HeaderItemText = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemText, Object.assign({
884
731
  ref: ref
885
732
  }, props)));
886
733
  HeaderItemText.displayName = 'HeaderItemText';
@@ -888,12 +735,12 @@ HeaderItemText.propTypes = {
888
735
  isClipped: PropTypes__default.default.bool
889
736
  };
890
737
 
891
- const HeaderItemWrapper = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemWrapper, _extends$3({
738
+ const HeaderItemWrapper = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeaderItemWrapper, Object.assign({
892
739
  ref: ref
893
740
  }, props)));
894
741
  HeaderItemWrapper.displayName = 'HeaderItemWrapper';
895
742
 
896
- const FooterItem$1 = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledFooterItem, _extends$3({
743
+ const FooterItem$1 = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledFooterItem, Object.assign({
897
744
  ref: ref
898
745
  }, props)));
899
746
  FooterItem$1.displayName = 'FooterItem';
@@ -912,6 +759,11 @@ const useChromeContext = () => {
912
759
  return React.useContext(ChromeContext);
913
760
  };
914
761
 
762
+ const NavListContext = React__namespace.default.createContext(undefined);
763
+ const useNavListContext = () => {
764
+ return React.useContext(NavListContext);
765
+ };
766
+
915
767
  const NavItem = React__namespace.default.forwardRef((_ref, ref) => {
916
768
  let {
917
769
  hasLogo,
@@ -927,30 +779,37 @@ const NavItem = React__namespace.default.forwardRef((_ref, ref) => {
927
779
  const {
928
780
  isExpanded
929
781
  } = useNavContext();
782
+ const navListContext = useNavListContext();
930
783
  const ariaCurrent = other.isCurrent || undefined;
784
+ const hasList = navListContext?.hasList;
785
+ let retVal;
931
786
  if (hasLogo) {
932
- return React__namespace.default.createElement(StyledLogoNavItem, _extends$3({
787
+ retVal = React__namespace.default.createElement(StyledLogoNavItem, Object.assign({
933
788
  ref: ref,
934
789
  isDark: isDark,
935
790
  isLight: isLight,
936
791
  product: product,
937
792
  "aria-current": ariaCurrent
938
793
  }, other));
939
- }
940
- if (hasBrandmark) {
941
- return React__namespace.default.createElement(StyledBrandmarkNavItem, _extends$3({
794
+ } else if (hasBrandmark) {
795
+ retVal = React__namespace.default.createElement(StyledBrandmarkNavItem, Object.assign({
942
796
  ref: ref
943
797
  }, other));
798
+ } else {
799
+ retVal = React__namespace.default.createElement(StyledNavButton, Object.assign({
800
+ tabIndex: 0,
801
+ ref: ref,
802
+ isExpanded: isExpanded,
803
+ hue: hue,
804
+ isDark: isDark,
805
+ isLight: isLight,
806
+ "aria-current": ariaCurrent
807
+ }, other));
944
808
  }
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));
809
+ if (hasList) {
810
+ retVal = React__namespace.default.createElement(StyledNavListItem, null, retVal);
811
+ }
812
+ return retVal;
954
813
  });
955
814
  NavItem.displayName = 'NavItem';
956
815
  NavItem.propTypes = {
@@ -976,7 +835,7 @@ const NavItemIcon = _ref => {
976
835
  ...iconProps
977
836
  });
978
837
  };
979
- return React__namespace.default.createElement(StyledNavItemIcon, _extends$3({
838
+ return React__namespace.default.createElement(StyledNavItemIcon, Object.assign({
980
839
  as: Icon
981
840
  }, props));
982
841
  }
@@ -987,7 +846,7 @@ const NavItemText = React__namespace.default.forwardRef((props, ref) => {
987
846
  const {
988
847
  isExpanded
989
848
  } = useNavContext();
990
- return React__namespace.default.createElement(StyledNavItemText, _extends$3({
849
+ return React__namespace.default.createElement(StyledNavItemText, Object.assign({
991
850
  ref: ref,
992
851
  isExpanded: isExpanded
993
852
  }, props));
@@ -997,99 +856,6 @@ NavItemText.propTypes = {
997
856
  isWrapped: PropTypes__default.default.bool
998
857
  };
999
858
 
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
859
  const Chrome = React__namespace.default.forwardRef((_ref, ref) => {
1094
860
  let {
1095
861
  hue,
@@ -1128,7 +894,7 @@ const Chrome = React__namespace.default.forwardRef((_ref, ref) => {
1128
894
  }, [environment, isFluid]);
1129
895
  return React__namespace.default.createElement(ChromeContext.Provider, {
1130
896
  value: chromeContextValue
1131
- }, React__namespace.default.createElement(StyledChrome, _extends$3({
897
+ }, React__namespace.default.createElement(StyledChrome, Object.assign({
1132
898
  ref: ref
1133
899
  }, props)));
1134
900
  });
@@ -1144,7 +910,7 @@ const SkipNav = React__namespace.default.forwardRef((_ref, ref) => {
1144
910
  children,
1145
911
  ...props
1146
912
  } = _ref;
1147
- return React__namespace.default.createElement(StyledSkipNav, _extends$3({
913
+ return React__namespace.default.createElement(StyledSkipNav, Object.assign({
1148
914
  href: `#${targetId}`,
1149
915
  zIndex: zIndex,
1150
916
  ref: ref
@@ -1172,7 +938,7 @@ const Body$1 = React__namespace.default.forwardRef((props, ref) => {
1172
938
  }), [hasFooter, setHasFooter]);
1173
939
  return React__namespace.default.createElement(BodyContext.Provider, {
1174
940
  value: bodyContextValue
1175
- }, React__namespace.default.createElement(StyledBody, _extends$3({
941
+ }, React__namespace.default.createElement(StyledBody, Object.assign({
1176
942
  ref: ref
1177
943
  }, props)));
1178
944
  });
@@ -1182,19 +948,19 @@ const Content = React__namespace.default.forwardRef((props, ref) => {
1182
948
  const {
1183
949
  hasFooter
1184
950
  } = useBodyContext() || {};
1185
- return React__namespace.default.createElement(StyledContent, _extends$3({
951
+ return React__namespace.default.createElement(StyledContent, Object.assign({
1186
952
  ref: ref,
1187
953
  hasFooter: hasFooter
1188
954
  }, props));
1189
955
  });
1190
956
  Content.displayName = 'Content';
1191
957
 
1192
- const Main = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledMain, _extends$3({
958
+ const Main = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledMain, Object.assign({
1193
959
  ref: ref
1194
960
  }, props)));
1195
961
  Main.displayName = 'Main';
1196
962
 
1197
- const HeaderComponent = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeader, _extends$3({
963
+ const HeaderComponent = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledHeader, Object.assign({
1198
964
  ref: ref
1199
965
  }, props)));
1200
966
  HeaderComponent.displayName = 'Header';
@@ -1222,7 +988,7 @@ const FooterComponent = React__namespace.default.forwardRef((props, ref) => {
1222
988
  }
1223
989
  };
1224
990
  }, [hasFooter, setHasFooter]);
1225
- return React__namespace.default.createElement(StyledFooter, _extends$3({
991
+ return React__namespace.default.createElement(StyledFooter, Object.assign({
1226
992
  ref: ref
1227
993
  }, props));
1228
994
  });
@@ -1230,6 +996,18 @@ FooterComponent.displayName = 'Footer';
1230
996
  const Footer$1 = FooterComponent;
1231
997
  Footer$1.Item = FooterItem$1;
1232
998
 
999
+ const NavList = React__namespace.default.forwardRef((props, ref) => {
1000
+ const contextValue = React.useMemo(() => ({
1001
+ hasList: true
1002
+ }), []);
1003
+ return React__namespace.default.createElement(NavListContext.Provider, {
1004
+ value: contextValue
1005
+ }, React__namespace.default.createElement(StyledNavList, Object.assign({
1006
+ ref: ref
1007
+ }, props)));
1008
+ });
1009
+ NavList.displayName = 'Nav';
1010
+
1233
1011
  const NavComponent = React__namespace.default.forwardRef((props, ref) => {
1234
1012
  const {
1235
1013
  hue,
@@ -1241,7 +1019,7 @@ const NavComponent = React__namespace.default.forwardRef((props, ref) => {
1241
1019
  }), [props.isExpanded]);
1242
1020
  return React__namespace.default.createElement(NavContext.Provider, {
1243
1021
  value: navContextValue
1244
- }, React__namespace.default.createElement(StyledNav, _extends$3({
1022
+ }, React__namespace.default.createElement(StyledNav, Object.assign({
1245
1023
  ref: ref
1246
1024
  }, props, {
1247
1025
  hue: hue,
@@ -1254,29 +1032,11 @@ NavComponent.propTypes = {
1254
1032
  isExpanded: PropTypes__default.default.bool
1255
1033
  };
1256
1034
  const Nav = NavComponent;
1035
+ Nav.List = NavList;
1257
1036
  Nav.Item = NavItem;
1258
1037
  Nav.ItemIcon = NavItemIcon;
1259
1038
  Nav.ItemText = NavItemText;
1260
1039
 
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
1040
  const SheetContext = React.createContext({
1281
1041
  setIsCloseButtonPresent() {}
1282
1042
  });
@@ -1313,7 +1073,7 @@ const SheetTitle = React.forwardRef((_ref, ref) => {
1313
1073
  const {
1314
1074
  titleId
1315
1075
  } = useSheetContext();
1316
- return React__namespace.default.createElement(StyledSheetTitle, _extends$3({
1076
+ return React__namespace.default.createElement(StyledSheetTitle, Object.assign({
1317
1077
  id: id || titleId,
1318
1078
  ref: ref
1319
1079
  }, props));
@@ -1329,7 +1089,7 @@ const SheetDescription = React.forwardRef((_ref, ref) => {
1329
1089
  const {
1330
1090
  descriptionId
1331
1091
  } = useSheetContext();
1332
- return React__namespace.default.createElement(StyledSheetDescription, _extends$3({
1092
+ return React__namespace.default.createElement(StyledSheetDescription, Object.assign({
1333
1093
  id: id || descriptionId,
1334
1094
  ref: ref
1335
1095
  }, props));
@@ -1341,7 +1101,7 @@ const SheetHeader = React.forwardRef((props, ref) => {
1341
1101
  const {
1342
1102
  isCloseButtonPresent
1343
1103
  } = useSheetContext();
1344
- return React__namespace.default.createElement(StyledSheetHeader, _extends$3({
1104
+ return React__namespace.default.createElement(StyledSheetHeader, Object.assign({
1345
1105
  ref: ref,
1346
1106
  isCloseButtonPresent: isCloseButtonPresent
1347
1107
  }, props));
@@ -1350,7 +1110,7 @@ SheetHeader.displayName = 'Sheet.Header';
1350
1110
  const Header = SheetHeader;
1351
1111
 
1352
1112
  const SheetBody = React.forwardRef((props, ref) => {
1353
- return React__namespace.default.createElement(StyledSheetBody, _extends$3({
1113
+ return React__namespace.default.createElement(StyledSheetBody, Object.assign({
1354
1114
  ref: ref
1355
1115
  }, props));
1356
1116
  });
@@ -1358,7 +1118,7 @@ SheetBody.displayName = 'Sheet.Body';
1358
1118
  const Body = SheetBody;
1359
1119
 
1360
1120
  const SheetFooter = React.forwardRef((props, ref) => {
1361
- return React__namespace.default.createElement(StyledSheetFooter, _extends$3({
1121
+ return React__namespace.default.createElement(StyledSheetFooter, Object.assign({
1362
1122
  ref: ref
1363
1123
  }, props));
1364
1124
  });
@@ -1366,7 +1126,7 @@ SheetFooter.displayName = 'Sheet.Footer';
1366
1126
  const Footer = SheetFooter;
1367
1127
 
1368
1128
  const SheetFooterItem = React.forwardRef((props, ref) => {
1369
- return React__namespace.default.createElement(StyledSheetFooterItem, _extends$3({
1129
+ return React__namespace.default.createElement(StyledSheetFooterItem, Object.assign({
1370
1130
  ref: ref
1371
1131
  }, props));
1372
1132
  });
@@ -1398,7 +1158,7 @@ const SheetClose = React.forwardRef((props, ref) => {
1398
1158
  setIsCloseButtonPresent(true);
1399
1159
  return () => setIsCloseButtonPresent(false);
1400
1160
  }, [setIsCloseButtonPresent]);
1401
- return React__namespace.default.createElement(StyledSheetClose, _extends$3({
1161
+ return React__namespace.default.createElement(StyledSheetClose, Object.assign({
1402
1162
  "aria-label": "Close Sheet",
1403
1163
  ref: ref
1404
1164
  }, props), React__namespace.default.createElement(SvgXStroke, null));
@@ -1421,7 +1181,7 @@ const SheetComponent = React__namespace.default.forwardRef((_ref, ref) => {
1421
1181
  const sheetRef = React.useRef(null);
1422
1182
  const seed = reactUid.useUIDSeed();
1423
1183
  const [isCloseButtonPresent, setIsCloseButtonPresent] = React.useState(false);
1424
- const idPrefix = React.useMemo(() => id || seed(`sheet_${'9.0.0-next.7'}`), [id, seed]);
1184
+ const idPrefix = React.useMemo(() => id || seed(`sheet_${'9.0.0-next.8'}`), [id, seed]);
1425
1185
  const titleId = `${idPrefix}--title`;
1426
1186
  const descriptionId = `${idPrefix}--description`;
1427
1187
  const sheetContext = React.useMemo(() => ({
@@ -1438,7 +1198,7 @@ const SheetComponent = React__namespace.default.forwardRef((_ref, ref) => {
1438
1198
  });
1439
1199
  return React__namespace.default.createElement(SheetContext.Provider, {
1440
1200
  value: sheetContext
1441
- }, React__namespace.default.createElement(StyledSheet, _extends$3({
1201
+ }, React__namespace.default.createElement(StyledSheet, Object.assign({
1442
1202
  isOpen: isOpen,
1443
1203
  isAnimated: isAnimated,
1444
1204
  placement: placement,
@@ -1481,7 +1241,6 @@ Sheet.Title = Title;
1481
1241
 
1482
1242
  exports.Body = Body$1;
1483
1243
  exports.Chrome = Chrome;
1484
- exports.CollapsibleSubNavItem = CollapsibleSubNavItem;
1485
1244
  exports.Content = Content;
1486
1245
  exports.Footer = Footer$1;
1487
1246
  exports.FooterItem = FooterItem$1;
@@ -1498,6 +1257,3 @@ exports.NavItemText = NavItemText;
1498
1257
  exports.PRODUCTS = PRODUCTS;
1499
1258
  exports.Sheet = Sheet;
1500
1259
  exports.SkipNav = SkipNav;
1501
- exports.SubNav = SubNav;
1502
- exports.SubNavItem = SubNavItem;
1503
- exports.SubNavItemText = SubNavItemText;