@arc-ui/components 11.20.0 → 11.21.1

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 (28) hide show
  1. package/dist/ProgressStepper/ProgressStepper.cjs.js +1 -3
  2. package/dist/ProgressStepper/ProgressStepper.esm.js +1 -3
  3. package/dist/Select/Select.cjs.js +1 -1
  4. package/dist/Select/Select.esm.js +1 -1
  5. package/dist/SiteHeaderV2/SiteHeaderV2.cjs.js +1 -1
  6. package/dist/SiteHeaderV2/SiteHeaderV2.esm.js +1 -1
  7. package/dist/TextArea/TextArea.cjs.js +7 -7
  8. package/dist/TextArea/TextArea.esm.js +7 -7
  9. package/dist/_shared/cjs/ProgressStepper-20a61620.js +100 -0
  10. package/dist/_shared/cjs/{SiteHeaderV2-301c765c.js → SiteHeaderV2-b41fdb49.js} +32 -23
  11. package/dist/_shared/esm/ProgressStepper-74d48612.js +94 -0
  12. package/dist/_shared/esm/{SiteHeaderV2-0096e25b.js → SiteHeaderV2-f06ac085.js} +33 -24
  13. package/dist/index.es.js +87 -116
  14. package/dist/index.es.js.map +1 -1
  15. package/dist/index.js +87 -116
  16. package/dist/index.js.map +1 -1
  17. package/dist/styles.css +3 -3
  18. package/dist/types/components/ProgressStepper/ProgressStepper.d.ts +1 -1
  19. package/dist/types/components/ProgressStepper/ProgressStepperItem/ProgressStepperItem.d.ts +3 -7
  20. package/dist/types/components/ProgressStepper/ProgressStepperItem/icons/Complete.d.ts +2 -0
  21. package/dist/types/components/ProgressStepper/ProgressStepperItem/icons/Current.d.ts +2 -0
  22. package/dist/types/components/ProgressStepper/ProgressStepperItem/icons/Error.d.ts +2 -0
  23. package/dist/types/components/ProgressStepper/ProgressStepperItem/icons/Todo.d.ts +2 -0
  24. package/dist/types/components/ProgressStepper/ProgressStepperItem/icons/Warning.d.ts +2 -0
  25. package/dist/types/components/SiteHeaderV2/SiteHeaderV2.d.ts +5 -0
  26. package/package.json +1 -1
  27. package/dist/_shared/cjs/ProgressStepper-3af8a210.js +0 -141
  28. package/dist/_shared/esm/ProgressStepper-d4c5b6d9.js +0 -135
@@ -1,7 +1,7 @@
1
1
  import { _ as __rest, a as __assign, f as filterDataAttrs } from './filter-data-attrs-ea8f4ed4.js';
2
2
  import { u as useMediaQuery, b as ArcBreakpointL } from './use-media-query-4c807227.js';
3
3
  import { c as classNames } from './index-2e73c2e9.js';
4
- import React__default, { useState, useEffect, Fragment, useRef, createContext, useContext } from 'react';
4
+ import React__default, { useEffect, Fragment, useRef, useState, createContext, useContext } from 'react';
5
5
  import { B as BrandLogo } from './BrandLogo-1af78f76.js';
6
6
  import { S as Surface } from './Surface-0ca6817d.js';
7
7
  import { h as handleLinkClick } from './handle-link-click-f64f55a2.js';
@@ -18,8 +18,8 @@ var Item = function (_a) {
18
18
  return (React__default.createElement("li", __assign({ className: classNames((_b = {},
19
19
  _b["arc-SiteHeaderV2Item"] = true,
20
20
  _b["arc-SiteHeaderV2Item--emphasised"] = true,
21
- _b)) }, filterDataAttrs(props)),
22
- React__default.createElement("a", { onClick: handleLinkClick({ handler: onClick }), className: "arc-SiteHeaderV2Item-link", href: href },
21
+ _b)) }, filterDataAttrs(props), { role: "none" }),
22
+ React__default.createElement("a", { onClick: handleLinkClick({ handler: onClick }), className: "arc-SiteHeaderV2Item-link", href: href, role: "menuitem" },
23
23
  children,
24
24
  React__default.createElement("span", { className: "arc-SiteHeaderV2Item-linkIcon" },
25
25
  React__default.createElement(BtIconChevronRightMid, null)))));
@@ -27,7 +27,6 @@ var Item = function (_a) {
27
27
 
28
28
  var ItemGroup = function (_a) {
29
29
  var children = _a.children, href = _a.href, title = _a.title, subtitle = _a.subtitle, onClick = _a.onClick, viewAllTitle = _a.viewAllTitle, props = __rest(_a, ["children", "href", "title", "subtitle", "onClick", "viewAllTitle"]);
30
- var _b = useState(false), hasClientSideJavaScript = _b[0], setHasClientSideJavaScript = _b[1];
31
30
  var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(ArcBreakpointL, "px)"));
32
31
  useEffect(function () {
33
32
  React__default.Children.map(children, function (item) {
@@ -36,10 +35,6 @@ var ItemGroup = function (_a) {
36
35
  }
37
36
  });
38
37
  }, [children]);
39
- useEffect(function () {
40
- // useEffect does not run in ReactDomServer renders
41
- setHasClientSideJavaScript(true);
42
- }, [setHasClientSideJavaScript]);
43
38
  var ElementType = "div";
44
39
  if (title) {
45
40
  ElementType = "details";
@@ -47,16 +42,14 @@ var ItemGroup = function (_a) {
47
42
  return (React__default.createElement("li", { className: "arc-SiteHeaderV2ItemGroup" },
48
43
  React__default.createElement(ElementType, __assign({ className: "arc-SiteHeaderV2ItemGroup-details", open: Boolean(title && isMinWidthArcBreakpointL) }, filterDataAttrs(props)),
49
44
  title ? (React__default.createElement(React__default.Fragment, null,
50
- React__default.createElement("summary", { className: "arc-SiteHeaderV2ItemGroup-summary", tabIndex: isMinWidthArcBreakpointL ? -1 : 0 }, href ? (React__default.createElement("div", { className: "arc-SiteHeaderV2ItemGroup-heading" },
45
+ React__default.createElement("summary", { className: "arc-SiteHeaderV2ItemGroup-summary" }, href ? (React__default.createElement("div", { className: "arc-SiteHeaderV2ItemGroup-heading" },
51
46
  React__default.createElement("a", { onClick: handleLinkClick({
52
47
  handler: onClick
53
- }), className: "arc-SiteHeaderV2ItemGroup-title", href: href, tabIndex: !hasClientSideJavaScript || isMinWidthArcBreakpointL
54
- ? 0
55
- : -1 }, title),
48
+ }), className: "arc-SiteHeaderV2ItemGroup-title", href: href }, title),
56
49
  React__default.createElement("span", { className: "arc-SiteHeaderV2ItemGroup-titleIcon" },
57
50
  React__default.createElement(BtIconChevronRightMid, null)))) : (React__default.createElement("div", { className: "arc-SiteHeaderV2ItemGroup-title" }, title))),
58
51
  React__default.createElement("span", { className: "arc-SiteHeaderV2ItemGroup-subtitle" }, subtitle))) : null,
59
- React__default.createElement("ul", { className: "arc-SiteHeaderV2ItemGroup-items" },
52
+ React__default.createElement("ul", { className: "arc-SiteHeaderV2ItemGroup-items", role: "menubar" },
60
53
  children,
61
54
  href && title ? (React__default.createElement("li", { className: "arc-SiteHeaderV2Item arc-SiteHeaderV2Item--viewAll" },
62
55
  React__default.createElement("a", { className: "arc-SiteHeaderV2Item-link", onClick: handleLinkClick({
@@ -73,8 +66,8 @@ var Column = function (_a) {
73
66
  }
74
67
  });
75
68
  }, [children]);
76
- return (React__default.createElement("li", __assign({ className: "arc-SiteHeaderV2Column" }, filterDataAttrs(props)),
77
- React__default.createElement("ul", { className: "arc-SiteHeaderV2Column-items" }, children)));
69
+ return (React__default.createElement("li", __assign({ className: "arc-SiteHeaderV2Column" }, filterDataAttrs(props), { role: "none" }),
70
+ React__default.createElement("ul", { className: "arc-SiteHeaderV2Column-items", role: "none" }, children)));
78
71
  };
79
72
 
80
73
  var BackButton = function (_a) {
@@ -92,11 +85,13 @@ var Panel = function (_a) {
92
85
  var _b, _c, _d, _e, _f;
93
86
  var children = _a.children, navItemRef = _a.navItemRef, isNavItem = _a.isNavItem, open = _a.open, setOpen = _a.setOpen, setOpenPanelOnFirstClick = _a.setOpenPanelOnFirstClick, subNavItemRef = _a.subNavItemRef; _a.navLink; var _h = _a.subNavLink, subNavLink = _h === void 0 ? "" : _h, title = _a.title, subtitle = _a.subtitle, viewAll = _a.viewAll, withSubNav = _a.withSubNav; _a.fade; var isPrimary = _a.isPrimary, props = __rest(_a, ["children", "navItemRef", "isNavItem", "open", "setOpen", "setOpenPanelOnFirstClick", "subNavItemRef", "navLink", "subNavLink", "title", "subtitle", "viewAll", "withSubNav", "fade", "isPrimary"]);
94
87
  var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(ArcBreakpointL, "px)"));
88
+ var menubarRef = useHeaderV2Context().menubarRef;
95
89
  useEffect(function () {
96
90
  // Where appropriate, close the Panel when clicking outside of it,
97
91
  // by listening to clicks on the entire document and acting accordingly.
98
92
  var handleClick = function (e) {
99
93
  var _a, _b;
94
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.add("noFocus");
100
95
  // Don't close the Panel…
101
96
  if (
102
97
  // The click is inside the current SubNavItem.
@@ -136,9 +131,11 @@ var Panel = function (_a) {
136
131
  subNavItemRef,
137
132
  subNavLink,
138
133
  setOpenPanelOnFirstClick,
134
+ menubarRef,
139
135
  ]);
140
136
  useEffect(function () {
141
137
  var handleClick = function (e) {
138
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.add("noFocus");
142
139
  // Close the Panel…
143
140
  if (e.target.classList.contains("arc-SiteHeaderV2NavItem-link--itemHasChildren-closeFirstPanel")) {
144
141
  setOpenPanelOnFirstClick(false);
@@ -154,7 +151,7 @@ var Panel = function (_a) {
154
151
  return function () {
155
152
  document.removeEventListener("click", handleClick);
156
153
  };
157
- }, [navItemRef, setOpenPanelOnFirstClick]);
154
+ }, [navItemRef, setOpenPanelOnFirstClick, menubarRef]);
158
155
  useEffect(function () {
159
156
  var handleKeydown = function (e) {
160
157
  // Check the viewport width at time of press
@@ -167,12 +164,15 @@ var Panel = function (_a) {
167
164
  }
168
165
  return setOpen(false);
169
166
  }
167
+ if (e.key === "Tab") {
168
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.remove("noFocus");
169
+ }
170
170
  };
171
171
  window.addEventListener("keydown", handleKeydown);
172
172
  return function () {
173
173
  window.removeEventListener("keydown", handleKeydown);
174
174
  };
175
- }, [setOpen, subNavItemRef]);
175
+ }, [setOpen, subNavItemRef, menubarRef]);
176
176
  return (React__default.createElement("div", { style: { display: "flex" } },
177
177
  React__default.createElement("div", __assign({ className: classNames((_b = {},
178
178
  _b["arc-SiteHeaderV2Panel"] = true,
@@ -261,8 +261,9 @@ var NavItem = function (_a) {
261
261
  handler: onClick
262
262
  }), className: "arc-SiteHeaderV2NavItem-link", href: href }, title)) : null) : (React__default.createElement(React__default.Fragment, null,
263
263
  React__default.createElement("div", { className: "arc-SiteHeaderV2NavItemWithSubNav-buttonContainer" },
264
- React__default.createElement("button", { "aria-expanded": panelOpen, className: classNames((_c = {},
264
+ React__default.createElement("button", { "aria-expanded": panelOpen, role: "menuitem", "aria-haspopup": "true", "aria-label": title, className: classNames((_c = {},
265
265
  _c["arc-SiteHeaderV2NavItem-link"] = true,
266
+ _c["arc-SiteHeaderV2NavItem-horizontalPanelFocus"] = !isPrimary,
266
267
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren"] = true,
267
268
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-closeFirstPanel"] = !isPrimary && !opensFirstWithPanel,
268
269
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-hasFirstPanel"] = opensFirstWithPanel,
@@ -400,10 +401,11 @@ var NavItemWithSubNav = function (_a) {
400
401
  ? horizontalPanelOpen
401
402
  : panelOpen,
402
403
  _b["arc-SiteHeaderV2NavItemWithSubNav-active"] = panelOpen || (opensFirstWithPanel && openSecondaryWithSubNav),
403
- _b)), ref: navItem }, filterDataAttrs(props)),
404
+ _b)), role: "none", ref: navItem }, filterDataAttrs(props)),
404
405
  React__default.createElement("div", { className: "arc-SiteHeaderV2NavItemWithSubNav-buttonContainer" },
405
- React__default.createElement("button", { "aria-expanded": horizontalPanelOpen, className: classNames((_c = {},
406
+ React__default.createElement("button", { "aria-expanded": horizontalPanelOpen || panelOpen, role: "menuitem", "aria-label": title, "aria-haspopup": "true", tabIndex: 0, className: classNames((_c = {},
406
407
  _c["arc-SiteHeaderV2NavItem-link"] = true,
408
+ _c["arc-SiteHeaderV2NavItem-horizontalPanelFocus"] = !isPrimary,
407
409
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren"] = true,
408
410
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-closeFirstPanel"] = !isPrimary && !opensFirstWithPanel,
409
411
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-hasFirstPanel"] = opensFirstWithPanel,
@@ -536,7 +538,7 @@ var VerticalDivider = function () {
536
538
  return React__default.createElement("li", { className: "arc-SiteHeaderV2VerticalDivider-line" });
537
539
  };
538
540
 
539
- var defaultContext = { transparent: false };
541
+ var defaultContext = { transparent: false, menubarRef: null };
540
542
  var Context = createContext(defaultContext);
541
543
  var Provider = Context.Provider;
542
544
  /**
@@ -548,6 +550,7 @@ var SiteHeaderV2 = function (_a) {
548
550
  var _j = useState(false), hasClientSideJavaScript = _j[0], setHasClientSideJavaScript = _j[1];
549
551
  var _k = useState(false), menuOpen = _k[0], setMenuOpen = _k[1];
550
552
  var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(ArcBreakpointL, "px)"));
553
+ var menubarRef = useRef();
551
554
  useEffect(function () {
552
555
  React__default.Children.map(children, function (item) {
553
556
  if (item &&
@@ -581,6 +584,9 @@ var SiteHeaderV2 = function (_a) {
581
584
  window.removeEventListener("keydown", handleKeydown);
582
585
  };
583
586
  }, [setMenuOpen]);
587
+ useEffect(function () {
588
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.add("noFocus");
589
+ }, []);
584
590
  useEffect(function () {
585
591
  var handleClick = function (e) {
586
592
  if (e.target.getAttribute("href")) {
@@ -596,7 +602,7 @@ var SiteHeaderV2 = function (_a) {
596
602
  // useEffect does not run in ReactDomServer renders
597
603
  setHasClientSideJavaScript(true);
598
604
  }, [setHasClientSideJavaScript]);
599
- return (React__default.createElement(Provider, { value: { transparent: isTransparent } },
605
+ return (React__default.createElement(Provider, { value: { transparent: isTransparent, menubarRef: menubarRef } },
600
606
  React__default.createElement("div", __assign({ className: classNames((_b = {},
601
607
  _b["arc-SiteHeaderV2"] = true,
602
608
  _b["arc-SiteHeaderV2--menuOpen"] = menuOpen,
@@ -613,8 +619,8 @@ var SiteHeaderV2 = function (_a) {
613
619
  children && (React__default.createElement("nav", { className: "arc-SiteHeaderV2-nav" },
614
620
  React__default.createElement("div", { className: "arc-SiteHeaderV2-menuButton" },
615
621
  React__default.createElement(MenuButton, { menuOpen: menuOpen, setMenuOpen: setMenuOpen })),
616
- React__default.createElement("div", { className: "arc-SiteHeaderV2-main" },
617
- React__default.createElement("ul", { className: "arc-SiteHeaderV2-navItems" }, children),
622
+ React__default.createElement("div", { className: "arc-SiteHeaderV2-main", tabIndex: -1 },
623
+ React__default.createElement("ul", { role: "menubar", "aria-label": "navigation", ref: menubarRef, className: "arc-SiteHeaderV2-navItems" }, children),
618
624
  hasLogin && (React__default.createElement(React__default.Fragment, null, loginOnClick ? (React__default.createElement("div", { className: "arc-SiteHeaderV2-mobileButtonContainer" },
619
625
  React__default.createElement("button", { className: "arc-SiteHeaderV2-mobileLogin", onClick: loginOnClick },
620
626
  loginTitle,
@@ -629,6 +635,9 @@ var SiteHeaderV2 = function (_a) {
629
635
  basket ? (React__default.createElement("div", { className: "arc-SiteHeaderV2-basket" }, basket)) : null,
630
636
  hasLogin && (React__default.createElement(React__default.Fragment, null, loginOnClick ? (React__default.createElement("div", { className: "arc-SiteHeaderV2-loginLink arc-SiteHeaderV2-loginLink--function", onClick: loginOnClick }, loginTitle)) : (React__default.createElement("a", { className: "arc-SiteHeaderV2-loginLink", href: loginHref }, loginTitle)))))))))));
631
637
  };
638
+ function useHeaderV2Context() {
639
+ return useContext(Context);
640
+ }
632
641
  SiteHeaderV2.Column = Column;
633
642
  SiteHeaderV2.Item = Item;
634
643
  SiteHeaderV2.ItemGroup = ItemGroup;
package/dist/index.es.js CHANGED
@@ -35626,68 +35626,48 @@ var ProgressBar = function (_a) {
35626
35626
  React__default.createElement(Icon, { icon: PROGRESS_BAR_ICON_MAP[action.icon], size: 24 }))))))))));
35627
35627
  };
35628
35628
 
35629
- const BtIconTickVariant = (props) =>
35630
- /*#__PURE__*/ React__default.createElement(
35631
- "svg",
35632
- Object.assign(
35633
- {
35634
- xmlns: "http://www.w3.org/2000/svg",
35635
- viewBox: "0 0 32 32",
35636
- },
35637
- props,
35638
- ),
35639
- /*#__PURE__*/ React__default.createElement("defs", null),
35640
- /*#__PURE__*/ React__default.createElement("path", {
35641
- d: "M13.5,21.207,9.14648,16.85352a.5.5,0,0,1,.707-.707L13.5,19.793l8.64648-8.64649a.5.5,0,0,1,.707.707Z",
35642
- fill: "currentColor",
35643
- }),
35644
- );
35645
-
35646
- const BtIconCrossAlt = (props) =>
35647
- /*#__PURE__*/ React__default.createElement(
35648
- "svg",
35649
- Object.assign(
35650
- {
35651
- xmlns: "http://www.w3.org/2000/svg",
35652
- viewBox: "0 0 32 32",
35653
- },
35654
- props,
35655
- ),
35656
- /*#__PURE__*/ React__default.createElement("defs", null),
35657
- /*#__PURE__*/ React__default.createElement("path", {
35658
- d: "M16.70709,16.02l4.48236-4.49365a.4996.4996,0,1,0-.707-.70606l-4.481,4.49225-4.481-4.49225a.4996.4996,0,1,0-.707.70606L15.29584,16.02l-4.48236,4.49365a.4996.4996,0,1,0,.707.70606l4.481-4.49225,4.481,4.49225a.4996.4996,0,1,0,.707-.70606Z",
35659
- fill: "currentColor",
35660
- }),
35661
- );
35662
-
35663
- const BtIconCircle = (props) =>
35664
- /*#__PURE__*/ React__default.createElement(
35665
- "svg",
35666
- Object.assign(
35667
- {
35668
- viewBox: "0 0 32 32",
35669
- fill: "none",
35670
- xmlns: "http://www.w3.org/2000/svg",
35671
- },
35672
- props,
35673
- ),
35674
- /*#__PURE__*/ React__default.createElement("path", {
35675
- fillRule: "evenodd",
35676
- clipRule: "evenodd",
35677
- d: "M9 16C9 19.87 12.13 23 16 23C19.87 23 23 19.87 23 16C23 12.13 19.87 9 16 9C12.13 9 9 12.13 9 16ZM16 7C11.03 7 7 11.03 7 16C7 20.97 11.03 25 16 25C20.97 25 25 20.97 25 16C25 11.03 20.97 7 16 7Z",
35678
- fill: "currentColor",
35679
- }),
35680
- );
35681
-
35629
+ var Error$1 = function () { return (React__default.createElement("svg", { fill: "none", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" },
35630
+ React__default.createElement("g", { "clip-path": "url(#a)" },
35631
+ React__default.createElement("path", { d: "m13.06 12 2.845-2.845a.75.75 0 0 0-1.06-1.06L12 10.94 9.155 8.095a.75.75 0 0 0-1.06 1.06L10.939 12l-2.844 2.845a.75.75 0 1 0 1.06 1.06L12 13.061l2.845 2.844a.75.75 0 0 0 1.06-1.06L13.06 12Z", fill: "currentColor" })),
35632
+ React__default.createElement("rect", { x: ".667", y: ".667", width: "22.667", height: "22.667", rx: "11.333", stroke: "currentColor", "stroke-width": "1.333" }),
35633
+ React__default.createElement("defs", null,
35634
+ React__default.createElement("clipPath", { id: "a" },
35635
+ React__default.createElement("rect", { width: "24", height: "24", rx: "12" }))))); };
35636
+
35637
+ var Warning = function () { return (React__default.createElement("svg", { fill: "none", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" },
35638
+ React__default.createElement("rect", { x: ".667", y: ".667", width: "22.667", height: "22.667", rx: "11.333", stroke: "currentColor", "stroke-width": "1.333" }),
35639
+ React__default.createElement("path", { d: "M12 15.747a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm.004-1.487a.375.375 0 0 0 .375-.375l.001-6.757a.375.375 0 1 0-.75 0l-.001 6.757a.375.375 0 0 0 .375.375Z", fill: "currentColor", stroke: "currentColor", "stroke-width": ".3" }))); };
35640
+
35641
+ var Complete = function () { return (React__default.createElement("svg", { fill: "none", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" },
35642
+ React__default.createElement("g", { "clip-path": "url(#a)" },
35643
+ React__default.createElement("path", { d: "m10.125 16.435-3.53-3.53a.75.75 0 0 1 0-1.06.768.768 0 0 1 1.06 0l2.47 2.47 6.22-6.22a.75.75 0 1 1 1.06 1.06l-7.28 7.28Z", fill: "currentColor" })),
35644
+ React__default.createElement("rect", { x: ".667", y: ".667", width: "22.667", height: "22.667", rx: "11.333", stroke: "currentColor", "stroke-width": "1.333" }),
35645
+ React__default.createElement("defs", null,
35646
+ React__default.createElement("clipPath", { id: "a" },
35647
+ React__default.createElement("rect", { width: "24", height: "24", rx: "12" }))))); };
35648
+
35649
+ var Current = function () { return (React__default.createElement("svg", { viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
35650
+ React__default.createElement("rect", { x: "0.666667", y: "0.666667", width: "22.6667", height: "22.6667", rx: "11.3333", stroke: "url(#paint0_linear_1_1050)", "stroke-width": "1.33333" }),
35651
+ React__default.createElement("circle", { cx: "12", cy: "12", r: "7", fill: "currentColor" }),
35652
+ React__default.createElement("defs", null,
35653
+ React__default.createElement("linearGradient", { id: "paint0_linear_1_1050", x1: "36.6036", y1: "-4.31391e-07", x2: "-12.6036", y2: "24", gradientUnits: "userSpaceOnUse" },
35654
+ React__default.createElement("stop", { "stop-color": "#F200F5" }),
35655
+ React__default.createElement("stop", { offset: "1", "stop-color": "#1EC8E6" }))))); };
35656
+
35657
+ var Todo = function () { return (React__default.createElement("svg", { fill: "none", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" },
35658
+ React__default.createElement("rect", { x: ".667", y: ".667", width: "22.667", height: "22.667", rx: "11.333", stroke: "currentColor", "stroke-width": "1.333" }))); };
35659
+
35660
+ // export current step as an icon
35682
35661
  var ProgressStepperItem = function (_a) {
35683
- var _b, _c, _d;
35684
- var title = _a.title, titleHref = _a.titleHref, subTitle = _a.subTitle, _e = _a.direction, direction = _e === void 0 ? "horizontal" : _e, _f = _a.status, status = _f === void 0 ? "todo" : _f, _g = _a.size, size = _g === void 0 ? "large" : _g, _h = _a.position, position = _h === void 0 ? "middle" : _h, isFluid = _a.isFluid, ariaLabel = _a.ariaLabel, onClick = _a.onClick, previousStep = _a.previousStep, isExpandable = _a.isExpandable, stepContent = _a.stepContent, isStepContentHidden = _a.isStepContentHidden, props = __rest(_a, ["title", "titleHref", "subTitle", "direction", "status", "size", "position", "isFluid", "ariaLabel", "onClick", "previousStep", "isExpandable", "stepContent", "isStepContentHidden"]);
35662
+ var _b;
35663
+ var title = _a.title, titleHref = _a.titleHref, subTitle = _a.subTitle, _c = _a.direction, direction = _c === void 0 ? "horizontal" : _c, _d = _a.status, status = _d === void 0 ? "todo" : _d, _e = _a.size, size = _e === void 0 ? "large" : _e, isFluid = _a.isFluid, ariaLabel = _a.ariaLabel, onClick = _a.onClick, previousStep = _a.previousStep, stepContent = _a.stepContent, isStepContentHidden = _a.isStepContentHidden, props = __rest(_a, ["title", "titleHref", "subTitle", "direction", "status", "size", "isFluid", "ariaLabel", "onClick", "previousStep", "stepContent", "isStepContentHidden"]);
35685
35664
  var surface = useContext(Context$5).surface;
35686
35665
  var statusIcons = {
35687
- completed: BtIconTickVariant,
35688
- current: BtIconCircle,
35689
- warning: BtIconAlert,
35690
- error: BtIconCrossAlt
35666
+ todo: Todo,
35667
+ completed: Complete,
35668
+ current: Current,
35669
+ warning: Warning,
35670
+ error: Error$1
35691
35671
  };
35692
35672
  var onClickHandler = function (event) {
35693
35673
  event.preventDefault();
@@ -35696,37 +35676,25 @@ var ProgressStepperItem = function (_a) {
35696
35676
  var capitaliseFirstLetter = function (word) {
35697
35677
  return word.charAt(0).toUpperCase() + word.slice(1);
35698
35678
  };
35699
- return (React__default.createElement("div", __assign({ className: classNames("arc-ProgressStepperItem", (_b = {
35679
+ return (React__default.createElement("div", __assign({ className: classNames("arc-ProgressStepperItem", "arc-ProgressStepperItem--".concat(status), "arc-ProgressStepperItem--".concat(size), (_b = {
35700
35680
  "arc-ProgressStepperItem--vertical": direction === "vertical",
35701
- "arc-ProgressStepperItem--isFluid": isFluid,
35681
+ "arc-ProgressStepperItem--isFluid": isFluid && direction !== "vertical",
35702
35682
  "arc-ProgressStepperItem--onDarkSurface": surface === "dark",
35703
35683
  "arc-ProgressStepperItem--previousStepCompleted": previousStep === "completed"
35704
35684
  },
35705
- _b["arc-ProgressStepperItem--".concat(size)] = size === "small",
35685
+ _b["arc-ProgressStepperItem--hasInteractiveStatus"] = status !== "todo",
35706
35686
  _b)) }, filterDataAttrs(props)),
35707
- React__default.createElement("div", { className: classNames("arc-ProgressStepperItem-iconSection", (_c = {},
35708
- _c["arc-ProgressStepperItem-iconSection--".concat(position)] = position !== "middle",
35709
- _c)) },
35710
- React__default.createElement("div", { className: "arc-ProgressStepperItem-iconSectionTrailBefore" }),
35711
- React__default.createElement("div", { className: classNames("arc-ProgressStepperItem-iconWrapper", (_d = {},
35712
- _d["arc-ProgressStepperItem-iconWrapper--".concat(status)] = status !== "todo",
35713
- _d)), "data-testid": "arc-ProgressStepperItem-iconWrapper" }, statusIcons[status] === undefined ? (React__default.createElement("div", { style: {
35714
- width: size === "small" ? "16px" : "32px",
35715
- height: size === "small" ? "16px" : "32px"
35716
- } })) : (React__default.createElement(Icon, { size: size === "small" ? 16 : 32, icon: statusIcons[status] }))),
35717
- React__default.createElement("div", { className: "arc-ProgressStepperItem-iconSectionTrailAfter" })),
35687
+ React__default.createElement("div", { className: "arc-ProgressStepperItem-iconSection" },
35688
+ React__default.createElement("div", { className: "arc-ProgressStepperItem-iconWrapper", "data-testid": "arc-ProgressStepperItem-iconWrapper" },
35689
+ React__default.createElement(Icon, { size: size === "small" ? 16 : 24, icon: statusIcons[status] }))),
35718
35690
  React__default.createElement("div", { className: "arc-ProgressStepperItem-textSection" },
35719
35691
  status !== "todo" && (React__default.createElement(VisuallyHidden, null,
35720
35692
  capitaliseFirstLetter(status),
35721
35693
  ":")),
35722
- titleHref ? (React__default.createElement("a", { href: titleHref, "aria-label": ariaLabel, className: "arc-ProgressStepperItem-title", onClick: onClickHandler }, title)) : (React__default.createElement("div", { className: "arc-ProgressStepperItem-title" }, title)),
35694
+ titleHref ? (React__default.createElement("a", { href: titleHref, "aria-label": ariaLabel, className: classNames("arc-ProgressStepperItem-title", "arc-ProgressStepperItem-title--link"), onClick: onClickHandler }, title)) : (React__default.createElement("div", { className: "arc-ProgressStepperItem-title" }, title)),
35723
35695
  React__default.createElement("div", { className: "arc-ProgressStepperItem-subTitle" }, subTitle),
35724
- isExpandable && direction === "vertical" && (React__default.createElement(React__default.Fragment, null,
35725
- React__default.createElement("div", { className: "arc-ProgressStepperItem-nodeItem" },
35726
- React__default.createElement("div", { className: "arc-ProgressStepperItem-keyline" }),
35727
- stepContent && !isStepContentHidden && (React__default.createElement(React__default.Fragment, null,
35728
- React__default.createElement(VerticalSpace, { size: "8" }),
35729
- stepContent))))))));
35696
+ stepContent && !isStepContentHidden && direction === "vertical" && (React__default.createElement(React__default.Fragment, null,
35697
+ React__default.createElement("div", { className: "arc-ProgressStepperItem-nodeItem" }, stepContent))))));
35730
35698
  };
35731
35699
 
35732
35700
  /** Use `ProgressStepper` to illustrate the progress of a specific task within a page, by displaying a step-by-step progress through the user journey. This is commonly used in multi-step processes or wizards. */
@@ -35739,15 +35707,8 @@ var ProgressStepper = function (_a) {
35739
35707
  };
35740
35708
  return (React__default.createElement("div", __assign({ className: classNames("arc-ProgressStepper", {
35741
35709
  "arc-ProgressStepper--vertical": direction === "vertical"
35742
- }) }, filterDataAttrs(props)), items.map(function (item, index) {
35743
- var currentPosition = index === 0
35744
- ? "first"
35745
- : index === React__default.Children.count(children) - 1
35746
- ? "last"
35747
- : undefined;
35748
- return (React__default.createElement(React__default.Fragment, { key: "StepperItem-".concat(index) },
35749
- React__default.createElement(ProgressStepperItem, __assign({ title: item.props.title, titleHref: item.props.titleHref, subTitle: item.props.subTitle, status: item.props.status, stepContent: item.props.stepContent, isStepContentHidden: item.props.isStepContentHidden, onClick: item.props.onClick, isFluid: isFluid, direction: direction, isExpandable: isExpandable, size: size, position: currentPosition, previousStep: getStepStatus(items[index - 1]) }, filterDataAttrs(item.props)))));
35750
- })));
35710
+ }) }, filterDataAttrs(props)), items.map(function (item, index) { return (React__default.createElement(React__default.Fragment, { key: "StepperItem-".concat(index) },
35711
+ React__default.createElement(ProgressStepperItem, __assign({ title: item.props.title, titleHref: item.props.titleHref, subTitle: item.props.subTitle, status: item.props.status, stepContent: item.props.stepContent, isStepContentHidden: item.props.isStepContentHidden, onClick: item.props.onClick, isFluid: isFluid, direction: direction, isExpandable: isExpandable, size: size, previousStep: getStepStatus(items[index - 1]) }, filterDataAttrs(item.props))))); })));
35751
35712
  };
35752
35713
  ProgressStepper.Item = ProgressStepperItem;
35753
35714
 
@@ -39318,7 +39279,7 @@ var Select = function (_a) {
39318
39279
  "arc-Select-trigger--invalid": errorMessage
39319
39280
  },
39320
39281
  _b["arc-Select-trigger--size".concat(selectSize && selectSize.toUpperCase())] = selectSize && selectSize !== "m",
39321
- _b)) }, filterDataAttrs(props)),
39282
+ _b)), "aria-describedby": "".concat(id, "-helper") }, filterDataAttrs(props)),
39322
39283
  React__default.createElement($cc7e05a45900e73f$export$4c8d1a57a761ef94, { className: "arc-Select-triggerText", placeholder: placeholder, "aria-label": getSelectedValueName(uncontrolledValue) }),
39323
39284
  React__default.createElement($cc7e05a45900e73f$export$f04a61298a47a40f, { className: "arc-Select-triggerIcon" },
39324
39285
  React__default.createElement(Icon, { icon: BtIconChevronDown2Px, size: getIconSize(selectSize) }))),
@@ -40066,8 +40027,8 @@ var Item = function (_a) {
40066
40027
  return (React__default.createElement("li", __assign({ className: classNames((_b = {},
40067
40028
  _b["arc-SiteHeaderV2Item"] = true,
40068
40029
  _b["arc-SiteHeaderV2Item--emphasised"] = true,
40069
- _b)) }, filterDataAttrs(props)),
40070
- React__default.createElement("a", { onClick: handleLinkClick({ handler: onClick }), className: "arc-SiteHeaderV2Item-link", href: href },
40030
+ _b)) }, filterDataAttrs(props), { role: "none" }),
40031
+ React__default.createElement("a", { onClick: handleLinkClick({ handler: onClick }), className: "arc-SiteHeaderV2Item-link", href: href, role: "menuitem" },
40071
40032
  children,
40072
40033
  React__default.createElement("span", { className: "arc-SiteHeaderV2Item-linkIcon" },
40073
40034
  React__default.createElement(BtIconChevronRightMid, null)))));
@@ -40075,7 +40036,6 @@ var Item = function (_a) {
40075
40036
 
40076
40037
  var ItemGroup = function (_a) {
40077
40038
  var children = _a.children, href = _a.href, title = _a.title, subtitle = _a.subtitle, onClick = _a.onClick, viewAllTitle = _a.viewAllTitle, props = __rest(_a, ["children", "href", "title", "subtitle", "onClick", "viewAllTitle"]);
40078
- var _b = useState(false), hasClientSideJavaScript = _b[0], setHasClientSideJavaScript = _b[1];
40079
40039
  var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(ArcBreakpointL, "px)"));
40080
40040
  useEffect(function () {
40081
40041
  React__default.Children.map(children, function (item) {
@@ -40084,10 +40044,6 @@ var ItemGroup = function (_a) {
40084
40044
  }
40085
40045
  });
40086
40046
  }, [children]);
40087
- useEffect(function () {
40088
- // useEffect does not run in ReactDomServer renders
40089
- setHasClientSideJavaScript(true);
40090
- }, [setHasClientSideJavaScript]);
40091
40047
  var ElementType = "div";
40092
40048
  if (title) {
40093
40049
  ElementType = "details";
@@ -40095,16 +40051,14 @@ var ItemGroup = function (_a) {
40095
40051
  return (React__default.createElement("li", { className: "arc-SiteHeaderV2ItemGroup" },
40096
40052
  React__default.createElement(ElementType, __assign({ className: "arc-SiteHeaderV2ItemGroup-details", open: Boolean(title && isMinWidthArcBreakpointL) }, filterDataAttrs(props)),
40097
40053
  title ? (React__default.createElement(React__default.Fragment, null,
40098
- React__default.createElement("summary", { className: "arc-SiteHeaderV2ItemGroup-summary", tabIndex: isMinWidthArcBreakpointL ? -1 : 0 }, href ? (React__default.createElement("div", { className: "arc-SiteHeaderV2ItemGroup-heading" },
40054
+ React__default.createElement("summary", { className: "arc-SiteHeaderV2ItemGroup-summary" }, href ? (React__default.createElement("div", { className: "arc-SiteHeaderV2ItemGroup-heading" },
40099
40055
  React__default.createElement("a", { onClick: handleLinkClick({
40100
40056
  handler: onClick
40101
- }), className: "arc-SiteHeaderV2ItemGroup-title", href: href, tabIndex: !hasClientSideJavaScript || isMinWidthArcBreakpointL
40102
- ? 0
40103
- : -1 }, title),
40057
+ }), className: "arc-SiteHeaderV2ItemGroup-title", href: href }, title),
40104
40058
  React__default.createElement("span", { className: "arc-SiteHeaderV2ItemGroup-titleIcon" },
40105
40059
  React__default.createElement(BtIconChevronRightMid, null)))) : (React__default.createElement("div", { className: "arc-SiteHeaderV2ItemGroup-title" }, title))),
40106
40060
  React__default.createElement("span", { className: "arc-SiteHeaderV2ItemGroup-subtitle" }, subtitle))) : null,
40107
- React__default.createElement("ul", { className: "arc-SiteHeaderV2ItemGroup-items" },
40061
+ React__default.createElement("ul", { className: "arc-SiteHeaderV2ItemGroup-items", role: "menubar" },
40108
40062
  children,
40109
40063
  href && title ? (React__default.createElement("li", { className: "arc-SiteHeaderV2Item arc-SiteHeaderV2Item--viewAll" },
40110
40064
  React__default.createElement("a", { className: "arc-SiteHeaderV2Item-link", onClick: handleLinkClick({
@@ -40121,8 +40075,8 @@ var Column = function (_a) {
40121
40075
  }
40122
40076
  });
40123
40077
  }, [children]);
40124
- return (React__default.createElement("li", __assign({ className: "arc-SiteHeaderV2Column" }, filterDataAttrs(props)),
40125
- React__default.createElement("ul", { className: "arc-SiteHeaderV2Column-items" }, children)));
40078
+ return (React__default.createElement("li", __assign({ className: "arc-SiteHeaderV2Column" }, filterDataAttrs(props), { role: "none" }),
40079
+ React__default.createElement("ul", { className: "arc-SiteHeaderV2Column-items", role: "none" }, children)));
40126
40080
  };
40127
40081
 
40128
40082
  var BackButton = function (_a) {
@@ -40140,11 +40094,13 @@ var Panel = function (_a) {
40140
40094
  var _b, _c, _d, _e, _f;
40141
40095
  var children = _a.children, navItemRef = _a.navItemRef, isNavItem = _a.isNavItem, open = _a.open, setOpen = _a.setOpen, setOpenPanelOnFirstClick = _a.setOpenPanelOnFirstClick, subNavItemRef = _a.subNavItemRef; _a.navLink; var _h = _a.subNavLink, subNavLink = _h === void 0 ? "" : _h, title = _a.title, subtitle = _a.subtitle, viewAll = _a.viewAll, withSubNav = _a.withSubNav; _a.fade; var isPrimary = _a.isPrimary, props = __rest(_a, ["children", "navItemRef", "isNavItem", "open", "setOpen", "setOpenPanelOnFirstClick", "subNavItemRef", "navLink", "subNavLink", "title", "subtitle", "viewAll", "withSubNav", "fade", "isPrimary"]);
40142
40096
  var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(ArcBreakpointL, "px)"));
40097
+ var menubarRef = useHeaderV2Context().menubarRef;
40143
40098
  useEffect(function () {
40144
40099
  // Where appropriate, close the Panel when clicking outside of it,
40145
40100
  // by listening to clicks on the entire document and acting accordingly.
40146
40101
  var handleClick = function (e) {
40147
40102
  var _a, _b;
40103
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.add("noFocus");
40148
40104
  // Don't close the Panel…
40149
40105
  if (
40150
40106
  // The click is inside the current SubNavItem.
@@ -40184,9 +40140,11 @@ var Panel = function (_a) {
40184
40140
  subNavItemRef,
40185
40141
  subNavLink,
40186
40142
  setOpenPanelOnFirstClick,
40143
+ menubarRef,
40187
40144
  ]);
40188
40145
  useEffect(function () {
40189
40146
  var handleClick = function (e) {
40147
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.add("noFocus");
40190
40148
  // Close the Panel…
40191
40149
  if (e.target.classList.contains("arc-SiteHeaderV2NavItem-link--itemHasChildren-closeFirstPanel")) {
40192
40150
  setOpenPanelOnFirstClick(false);
@@ -40202,7 +40160,7 @@ var Panel = function (_a) {
40202
40160
  return function () {
40203
40161
  document.removeEventListener("click", handleClick);
40204
40162
  };
40205
- }, [navItemRef, setOpenPanelOnFirstClick]);
40163
+ }, [navItemRef, setOpenPanelOnFirstClick, menubarRef]);
40206
40164
  useEffect(function () {
40207
40165
  var handleKeydown = function (e) {
40208
40166
  // Check the viewport width at time of press
@@ -40215,12 +40173,15 @@ var Panel = function (_a) {
40215
40173
  }
40216
40174
  return setOpen(false);
40217
40175
  }
40176
+ if (e.key === "Tab") {
40177
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.remove("noFocus");
40178
+ }
40218
40179
  };
40219
40180
  window.addEventListener("keydown", handleKeydown);
40220
40181
  return function () {
40221
40182
  window.removeEventListener("keydown", handleKeydown);
40222
40183
  };
40223
- }, [setOpen, subNavItemRef]);
40184
+ }, [setOpen, subNavItemRef, menubarRef]);
40224
40185
  return (React__default.createElement("div", { style: { display: "flex" } },
40225
40186
  React__default.createElement("div", __assign({ className: classNames((_b = {},
40226
40187
  _b["arc-SiteHeaderV2Panel"] = true,
@@ -40309,8 +40270,9 @@ var NavItem = function (_a) {
40309
40270
  handler: onClick
40310
40271
  }), className: "arc-SiteHeaderV2NavItem-link", href: href }, title)) : null) : (React__default.createElement(React__default.Fragment, null,
40311
40272
  React__default.createElement("div", { className: "arc-SiteHeaderV2NavItemWithSubNav-buttonContainer" },
40312
- React__default.createElement("button", { "aria-expanded": panelOpen, className: classNames((_c = {},
40273
+ React__default.createElement("button", { "aria-expanded": panelOpen, role: "menuitem", "aria-haspopup": "true", "aria-label": title, className: classNames((_c = {},
40313
40274
  _c["arc-SiteHeaderV2NavItem-link"] = true,
40275
+ _c["arc-SiteHeaderV2NavItem-horizontalPanelFocus"] = !isPrimary,
40314
40276
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren"] = true,
40315
40277
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-closeFirstPanel"] = !isPrimary && !opensFirstWithPanel,
40316
40278
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-hasFirstPanel"] = opensFirstWithPanel,
@@ -40448,10 +40410,11 @@ var NavItemWithSubNav = function (_a) {
40448
40410
  ? horizontalPanelOpen
40449
40411
  : panelOpen,
40450
40412
  _b["arc-SiteHeaderV2NavItemWithSubNav-active"] = panelOpen || (opensFirstWithPanel && openSecondaryWithSubNav),
40451
- _b)), ref: navItem }, filterDataAttrs(props)),
40413
+ _b)), role: "none", ref: navItem }, filterDataAttrs(props)),
40452
40414
  React__default.createElement("div", { className: "arc-SiteHeaderV2NavItemWithSubNav-buttonContainer" },
40453
- React__default.createElement("button", { "aria-expanded": horizontalPanelOpen, className: classNames((_c = {},
40415
+ React__default.createElement("button", { "aria-expanded": horizontalPanelOpen || panelOpen, role: "menuitem", "aria-label": title, "aria-haspopup": "true", tabIndex: 0, className: classNames((_c = {},
40454
40416
  _c["arc-SiteHeaderV2NavItem-link"] = true,
40417
+ _c["arc-SiteHeaderV2NavItem-horizontalPanelFocus"] = !isPrimary,
40455
40418
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren"] = true,
40456
40419
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-closeFirstPanel"] = !isPrimary && !opensFirstWithPanel,
40457
40420
  _c["arc-SiteHeaderV2NavItem-link--itemHasChildren-hasFirstPanel"] = opensFirstWithPanel,
@@ -40584,7 +40547,7 @@ var VerticalDivider = function () {
40584
40547
  return React__default.createElement("li", { className: "arc-SiteHeaderV2VerticalDivider-line" });
40585
40548
  };
40586
40549
 
40587
- var defaultContext = { transparent: false };
40550
+ var defaultContext = { transparent: false, menubarRef: null };
40588
40551
  var Context = createContext(defaultContext);
40589
40552
  var Provider = Context.Provider;
40590
40553
  /**
@@ -40596,6 +40559,7 @@ var SiteHeaderV2 = function (_a) {
40596
40559
  var _j = useState(false), hasClientSideJavaScript = _j[0], setHasClientSideJavaScript = _j[1];
40597
40560
  var _k = useState(false), menuOpen = _k[0], setMenuOpen = _k[1];
40598
40561
  var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(ArcBreakpointL, "px)"));
40562
+ var menubarRef = useRef();
40599
40563
  useEffect(function () {
40600
40564
  React__default.Children.map(children, function (item) {
40601
40565
  if (item &&
@@ -40629,6 +40593,9 @@ var SiteHeaderV2 = function (_a) {
40629
40593
  window.removeEventListener("keydown", handleKeydown);
40630
40594
  };
40631
40595
  }, [setMenuOpen]);
40596
+ useEffect(function () {
40597
+ menubarRef === null || menubarRef === void 0 ? void 0 : menubarRef.current.classList.add("noFocus");
40598
+ }, []);
40632
40599
  useEffect(function () {
40633
40600
  var handleClick = function (e) {
40634
40601
  if (e.target.getAttribute("href")) {
@@ -40644,7 +40611,7 @@ var SiteHeaderV2 = function (_a) {
40644
40611
  // useEffect does not run in ReactDomServer renders
40645
40612
  setHasClientSideJavaScript(true);
40646
40613
  }, [setHasClientSideJavaScript]);
40647
- return (React__default.createElement(Provider, { value: { transparent: isTransparent } },
40614
+ return (React__default.createElement(Provider, { value: { transparent: isTransparent, menubarRef: menubarRef } },
40648
40615
  React__default.createElement("div", __assign({ className: classNames((_b = {},
40649
40616
  _b["arc-SiteHeaderV2"] = true,
40650
40617
  _b["arc-SiteHeaderV2--menuOpen"] = menuOpen,
@@ -40661,8 +40628,8 @@ var SiteHeaderV2 = function (_a) {
40661
40628
  children && (React__default.createElement("nav", { className: "arc-SiteHeaderV2-nav" },
40662
40629
  React__default.createElement("div", { className: "arc-SiteHeaderV2-menuButton" },
40663
40630
  React__default.createElement(MenuButton, { menuOpen: menuOpen, setMenuOpen: setMenuOpen })),
40664
- React__default.createElement("div", { className: "arc-SiteHeaderV2-main" },
40665
- React__default.createElement("ul", { className: "arc-SiteHeaderV2-navItems" }, children),
40631
+ React__default.createElement("div", { className: "arc-SiteHeaderV2-main", tabIndex: -1 },
40632
+ React__default.createElement("ul", { role: "menubar", "aria-label": "navigation", ref: menubarRef, className: "arc-SiteHeaderV2-navItems" }, children),
40666
40633
  hasLogin && (React__default.createElement(React__default.Fragment, null, loginOnClick ? (React__default.createElement("div", { className: "arc-SiteHeaderV2-mobileButtonContainer" },
40667
40634
  React__default.createElement("button", { className: "arc-SiteHeaderV2-mobileLogin", onClick: loginOnClick },
40668
40635
  loginTitle,
@@ -40677,6 +40644,9 @@ var SiteHeaderV2 = function (_a) {
40677
40644
  basket ? (React__default.createElement("div", { className: "arc-SiteHeaderV2-basket" }, basket)) : null,
40678
40645
  hasLogin && (React__default.createElement(React__default.Fragment, null, loginOnClick ? (React__default.createElement("div", { className: "arc-SiteHeaderV2-loginLink arc-SiteHeaderV2-loginLink--function", onClick: loginOnClick }, loginTitle)) : (React__default.createElement("a", { className: "arc-SiteHeaderV2-loginLink", href: loginHref }, loginTitle)))))))))));
40679
40646
  };
40647
+ function useHeaderV2Context() {
40648
+ return useContext(Context);
40649
+ }
40680
40650
  SiteHeaderV2.Column = Column;
40681
40651
  SiteHeaderV2.Item = Item;
40682
40652
  SiteHeaderV2.ItemGroup = ItemGroup;
@@ -41688,15 +41658,16 @@ var TextArea = forwardRef(function (_a, ref) {
41688
41658
  return (React__default.createElement(FormControl, __assign({ errorMessage: errorMessage, helper: helper, htmlFor: id, isDisabled: isDisabled, label: label, hideLabel: hideLabel, labelSize: labelSize, requirementStatus: isRequired ? "required" : "optional", disclosureTitle: disclosureTitle, disclosureText: disclosureText, onClickDisclosure: onClickDisclosure, supplementaryInfo: maxLength &&
41689
41659
  showCharacterCount && (React__default.createElement(React__default.Fragment, null,
41690
41660
  React__default.createElement(Text, { tone: isDisabled ? "muted" : "default" },
41691
- React__default.createElement("span", { className: "arc-TextArea-characterCount" },
41661
+ React__default.createElement("span", { className: "arc-TextArea-characterCount", "aria-live": "polite" },
41692
41662
  characterCount,
41693
41663
  " / ",
41694
- maxLength)))) }, filterDataAttrs(props)),
41664
+ maxLength,
41665
+ characterCount === maxLength && (React__default.createElement(VisuallyHidden, null, "Maximum characters reached")))))) }, filterDataAttrs(props)),
41695
41666
  React__default.createElement("textarea", { id: id, className: classNames("arc-TextArea", {
41696
41667
  "arc-TextArea--noResize": resize !== "manual",
41697
41668
  "arc-TextArea--onDarkSurface": surface === "dark",
41698
41669
  "arc-TextArea--invalid": errorMessage
41699
- }), defaultValue: typeof value !== "undefined" ? undefined : defaultValue, disabled: isDisabled, value: value, readOnly: isReadOnly, maxLength: maxLength, name: name, onChange: handleOnChange, onBlur: onBlur, ref: getTextAreaRef, style: { width: width } })));
41670
+ }), defaultValue: typeof value !== "undefined" ? undefined : defaultValue, disabled: isDisabled, value: value, readOnly: isReadOnly, maxLength: maxLength, name: name, onChange: handleOnChange, onBlur: onBlur, ref: getTextAreaRef, style: { width: width }, "aria-describedby": "".concat(id, "-helper") })));
41700
41671
  });
41701
41672
 
41702
41673
  /**