@common-origin/design-system 2.14.0 → 2.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.js CHANGED
@@ -248,10 +248,10 @@ var exitAnimation = styled.css(templateObject_2$v || (templateObject_2$v = __mak
248
248
  var visuallyHidden = styled.css(templateObject_3$s || (templateObject_3$s = __makeTemplateObject(["\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n"], ["\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n"])));
249
249
  var templateObject_1$K, templateObject_2$v, templateObject_3$s;
250
250
 
251
- var _a$c = data.tokensJson.semantic,
252
- typography$1 = _a$c.typography,
253
- color$9 = _a$c.color,
254
- letterSpacing = _a$c.letterSpacing;
251
+ var _a$b = data.tokensJson.semantic,
252
+ typography$1 = _a$b.typography,
253
+ color$9 = _a$b.color,
254
+ letterSpacing = _a$b.letterSpacing;
255
255
  var getTypographyStyles = function getTypographyStyles(variant) {
256
256
  var styles = {
257
257
  display: "font: ".concat(typography$1.display, "; letter-spacing: ").concat(letterSpacing.tighter, ";"),
@@ -382,10 +382,10 @@ var semantic$f = data.tokensJson.semantic;
382
382
  var color$8 = semantic$f.color,
383
383
  border$9 = semantic$f.border;
384
384
  var radius$4 = border$9.radius;
385
- var _a$b = data.tokensJson.component.badge,
386
- dot = _a$b.dot,
387
- count = _a$b.count,
388
- ring = _a$b.ring;
385
+ var _a$a = data.tokensJson.component.badge,
386
+ dot = _a$a.dot,
387
+ count = _a$a.count,
388
+ ring = _a$a.ring;
389
389
  var scaleIn$2 = styled.keyframes(templateObject_1$I || (templateObject_1$I = __makeTemplateObject(["\n from {\n transform: scale(0.8);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n"], ["\n from {\n transform: scale(0.8);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n"])));
390
390
  var BadgeWrapper = styled__default.default.span.withConfig({
391
391
  displayName: "Badge__BadgeWrapper",
@@ -434,7 +434,8 @@ var Badge = function Badge(_a) {
434
434
  _e = _a.dot,
435
435
  dot = _e === void 0 ? false : _e,
436
436
  ariaLabel = _a["aria-label"],
437
- className = _a.className;
437
+ className = _a.className,
438
+ dataTestId = _a["data-testid"];
438
439
  var isVisible = dot || count > 0;
439
440
  var displayCount = count > max ? "".concat(max, "+") : count.toString();
440
441
  // Generate default aria-label if not provided
@@ -442,6 +443,7 @@ var Badge = function Badge(_a) {
442
443
  var label = ariaLabel || defaultAriaLabel;
443
444
  return jsxRuntime.jsxs(BadgeWrapper, {
444
445
  className: className,
446
+ "data-testid": dataTestId,
445
447
  children: [children, jsxRuntime.jsxs(BadgeIndicator, {
446
448
  "$variant": variant,
447
449
  "$isDot": dot,
@@ -477,7 +479,7 @@ var StyledBox = styled__default.default.div.withConfig({
477
479
  }, function (props) {
478
480
  return props.$alignItems && styled.css(templateObject_4$l || (templateObject_4$l = __makeTemplateObject(["align-items: ", ";"], ["align-items: ", ";"])), props.$alignItems);
479
481
  }, function (props) {
480
- return props.$flexWrap && styled.css(templateObject_5$g || (templateObject_5$g = __makeTemplateObject(["flex-wrap: ", ";"], ["flex-wrap: ", ";"])), props.$flexWrap);
482
+ return props.$flexWrap && styled.css(templateObject_5$h || (templateObject_5$h = __makeTemplateObject(["flex-wrap: ", ";"], ["flex-wrap: ", ";"])), props.$flexWrap);
481
483
  }, function (props) {
482
484
  return props.$gap && styled.css(templateObject_6$d || (templateObject_6$d = __makeTemplateObject(["gap: ", ";"], ["gap: ", ";"])), data.tokensJson.semantic.spacing.layout[props.$gap]);
483
485
  }, function (props) {
@@ -503,7 +505,7 @@ var StyledBox = styled__default.default.div.withConfig({
503
505
  }, function (props) {
504
506
  return props.$pb && styled.css(templateObject_17$2 || (templateObject_17$2 = __makeTemplateObject(["padding-bottom: ", ";"], ["padding-bottom: ", ";"])), data.tokensJson.semantic.spacing.layout[props.$pb]);
505
507
  }, function (props) {
506
- return props.$pl && styled.css(templateObject_18$1 || (templateObject_18$1 = __makeTemplateObject(["padding-left: ", ";"], ["padding-left: ", ";"])), data.tokensJson.semantic.spacing.layout[props.$pl]);
508
+ return props.$pl && styled.css(templateObject_18$2 || (templateObject_18$2 = __makeTemplateObject(["padding-left: ", ";"], ["padding-left: ", ";"])), data.tokensJson.semantic.spacing.layout[props.$pl]);
507
509
  }, function (props) {
508
510
  return props.$px && styled.css(templateObject_19$1 || (templateObject_19$1 = __makeTemplateObject(["\n padding-left: ", ";\n padding-right: ", ";\n "], ["\n padding-left: ", ";\n padding-right: ", ";\n "])), data.tokensJson.semantic.spacing.layout[props.$px], data.tokensJson.semantic.spacing.layout[props.$px]);
509
511
  }, function (props) {
@@ -693,7 +695,7 @@ var BoxTransform = function BoxTransform(props) {
693
695
  }));
694
696
  };
695
697
  var Box = BoxTransform;
696
- var templateObject_1$H, templateObject_2$t, templateObject_3$q, templateObject_4$l, templateObject_5$g, templateObject_6$d, templateObject_7$b, templateObject_8$8, templateObject_9$6, templateObject_10$4, templateObject_11$4, templateObject_12$4, templateObject_13$3, templateObject_14$2, templateObject_15$2, templateObject_16$2, templateObject_17$2, templateObject_18$1, templateObject_19$1, templateObject_20$1, templateObject_21$1, templateObject_22$1, templateObject_23$1, templateObject_24$1, templateObject_25$1, templateObject_26$1, templateObject_27$1, templateObject_28$1, templateObject_29$1, templateObject_30$1, templateObject_31$1, templateObject_32$1, templateObject_33$1, templateObject_34$1, templateObject_35$1, templateObject_36, templateObject_37, templateObject_38, templateObject_39, templateObject_40, templateObject_41, templateObject_42, templateObject_43, templateObject_44, templateObject_45, templateObject_46, templateObject_47, templateObject_48, templateObject_49;
698
+ var templateObject_1$H, templateObject_2$t, templateObject_3$q, templateObject_4$l, templateObject_5$h, templateObject_6$d, templateObject_7$b, templateObject_8$8, templateObject_9$6, templateObject_10$4, templateObject_11$4, templateObject_12$4, templateObject_13$3, templateObject_14$2, templateObject_15$2, templateObject_16$2, templateObject_17$2, templateObject_18$2, templateObject_19$1, templateObject_20$1, templateObject_21$1, templateObject_22$1, templateObject_23$1, templateObject_24$1, templateObject_25$1, templateObject_26$1, templateObject_27$1, templateObject_28$1, templateObject_29$1, templateObject_30$1, templateObject_31$1, templateObject_32$1, templateObject_33$1, templateObject_34$1, templateObject_35$1, templateObject_36, templateObject_37, templateObject_38, templateObject_39, templateObject_40, templateObject_41, templateObject_42, templateObject_43, templateObject_44, templateObject_45, templateObject_46, templateObject_47, templateObject_48, templateObject_49;
697
699
 
698
700
  var IconStyled = styled__default.default.span.withConfig({
699
701
  shouldForwardProp: function shouldForwardProp(prop) {
@@ -892,8 +894,11 @@ var Button = function Button(_a) {
892
894
  rest = __rest(_a, ["variant", "size", "url", "purpose", "children", "target", "iconName", "linkComponent", 'data-testid']);
893
895
  // For links with custom link component (e.g., Next.js Link, React Router Link)
894
896
  if (purpose === 'link' && url && LinkComponent) {
895
- return jsxRuntime.jsx(LinkComponent, {
897
+ // The link component renders the <a>, so anchor attributes (id, aria-*, rel, handlers) go to it
898
+ var linkProps = rest;
899
+ return jsxRuntime.jsx(LinkComponent, __assign({}, linkProps, {
896
900
  href: url,
901
+ target: target,
897
902
  children: jsxRuntime.jsx(StyledLink, {
898
903
  as: "span",
899
904
  "$variant": variant,
@@ -901,18 +906,17 @@ var Button = function Button(_a) {
901
906
  "data-testid": dataTestId,
902
907
  children: renderButtonContent(children, iconName, size)
903
908
  })
904
- });
909
+ }));
905
910
  }
906
911
  // For standard links (external or without custom component)
907
912
  if (purpose === 'link' && url) {
908
913
  var linkProps = rest;
909
- return jsxRuntime.jsx(StyledLink, __assign({
914
+ return jsxRuntime.jsx(StyledLink, __assign({}, linkProps, {
910
915
  href: url,
911
916
  target: target,
912
917
  "$variant": variant,
913
918
  "$size": size,
914
- "data-testid": dataTestId
915
- }, linkProps, {
919
+ "data-testid": dataTestId,
916
920
  children: renderButtonContent(children, iconName, size)
917
921
  }));
918
922
  }
@@ -1066,6 +1070,11 @@ CategoryBadge.displayName = 'CategoryBadge';
1066
1070
  var templateObject_1$E;
1067
1071
 
1068
1072
  var chip = data.tokensJson.component.chip;
1073
+ // Selected-chip hover and active colours have no token yet: they wait on #21 (selected states).
1074
+ // eslint-disable-next-line no-restricted-syntax
1075
+ var SELECTED_HOVER = '#CAE8FF';
1076
+ // eslint-disable-next-line no-restricted-syntax
1077
+ var SELECTED_ACTIVE = '#B5DEFF';
1069
1078
  // Helper function to get variant styles matching Button's approach
1070
1079
  var getVariantStyles = function getVariantStyles(_a) {
1071
1080
  var $variant = _a.$variant,
@@ -1074,7 +1083,7 @@ var getVariantStyles = function getVariantStyles(_a) {
1074
1083
  $disabled = _a.$disabled;
1075
1084
  // Boolean chips with selected state get special background
1076
1085
  if ($selected) {
1077
- return "\n background-color: ".concat(data.tokensJson.semantic.color.background['interactive-subtle'], ";\n color: ").concat(chip["default"].textColor, ";\n \n &:hover {\n background-color: ").concat($disabled ? data.tokensJson.semantic.color.background['interactive-subtle'] : $clickable ? '#CAE8FF' : data.tokensJson.semantic.color.background['interactive-subtle'], ";\n }\n \n &:active {\n background-color: ").concat($disabled ? data.tokensJson.semantic.color.background['interactive-subtle'] : $clickable ? '#B5DEFF' : data.tokensJson.semantic.color.background['interactive-subtle'], ";\n }\n ");
1086
+ return "\n background-color: ".concat(data.tokensJson.semantic.color.background['interactive-subtle'], ";\n color: ").concat(chip["default"].textColor, ";\n \n &:hover {\n background-color: ").concat($disabled ? data.tokensJson.semantic.color.background['interactive-subtle'] : $clickable ? SELECTED_HOVER : data.tokensJson.semantic.color.background['interactive-subtle'], ";\n }\n \n &:active {\n background-color: ").concat($disabled ? data.tokensJson.semantic.color.background['interactive-subtle'] : $clickable ? SELECTED_ACTIVE : data.tokensJson.semantic.color.background['interactive-subtle'], ";\n }\n ");
1078
1087
  }
1079
1088
  switch ($variant) {
1080
1089
  case 'emphasis':
@@ -1126,7 +1135,7 @@ var CloseButton = styled__default.default.button.withConfig({
1126
1135
  },
1127
1136
  displayName: "ChipBase__CloseButton",
1128
1137
  componentId: "sc-moa6zc-2"
1129
- })(templateObject_3$p || (templateObject_3$p = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: ", ";\n background: transparent;\n border: none;\n padding: 2px;\n border-radius: ", ";\n cursor: ", ";\n color: inherit;\n transition: ", ";\n \n &:hover:not(:disabled) {\n background-color: ", ";\n }\n \n &:active:not(:disabled) {\n background-color: ", ";\n }\n \n &:disabled {\n color: ", ";\n }\n \n &:focus-visible {\n outline: ", ";\n outline-offset: ", ";\n border-radius: ", ";\n }\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: ", ";\n background: transparent;\n border: none;\n padding: 2px;\n border-radius: ", ";\n cursor: ", ";\n color: inherit;\n transition: ", ";\n \n &:hover:not(:disabled) {\n background-color: ", ";\n }\n \n &:active:not(:disabled) {\n background-color: ", ";\n }\n \n &:disabled {\n color: ", ";\n }\n \n &:focus-visible {\n outline: ", ";\n outline-offset: ", ";\n border-radius: ", ";\n }\n"])), data.tokensJson.semantic.spacing.layout.sm, data.tokensJson.semantic.border.radius.xs, function (props) {
1138
+ })(templateObject_3$p || (templateObject_3$p = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: ", ";\n background: transparent;\n border: none;\n width: ", ";\n height: ", ";\n padding: ", ";\n border-radius: ", ";\n cursor: ", ";\n color: inherit;\n transition: ", ";\n \n &:hover:not(:disabled) {\n background-color: ", ";\n }\n \n &:active:not(:disabled) {\n background-color: ", ";\n }\n \n &:disabled {\n color: ", ";\n }\n \n &:focus-visible {\n outline: ", ";\n outline-offset: ", ";\n border-radius: ", ";\n }\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: ", ";\n background: transparent;\n border: none;\n width: ", ";\n height: ", ";\n padding: ", ";\n border-radius: ", ";\n cursor: ", ";\n color: inherit;\n transition: ", ";\n \n &:hover:not(:disabled) {\n background-color: ", ";\n }\n \n &:active:not(:disabled) {\n background-color: ", ";\n }\n \n &:disabled {\n color: ", ";\n }\n \n &:focus-visible {\n outline: ", ";\n outline-offset: ", ";\n border-radius: ", ";\n }\n"])), data.tokensJson.semantic.spacing.layout.sm, chip.closeButton.size, chip.closeButton.size, data.tokensJson.semantic.spacing.layout.none, data.tokensJson.semantic.border.radius.xs, function (props) {
1130
1139
  return props.$disabled ? 'not-allowed' : 'pointer';
1131
1140
  }, data.tokensJson.semantic.motion.hover, data.tokensJson.semantic.color.background['hover-overlay'], data.tokensJson.semantic.color.background['active-overlay'], data.tokensJson.semantic.color.text.disabled, chip.focus.outline, chip.focus.outlineOffset, chip["default"].borderRadius);
1132
1141
  var templateObject_1$D, templateObject_2$r, templateObject_3$p;
@@ -1417,9 +1426,9 @@ var Picture = function Picture(_a) {
1417
1426
  };
1418
1427
  var templateObject_1$B, templateObject_2$q, templateObject_3$o, templateObject_4$k;
1419
1428
 
1420
- var _a$a = data.tokensJson.semantic,
1421
- typography = _a$a.typography,
1422
- color$6 = _a$a.color;
1429
+ var _a$9 = data.tokensJson.semantic,
1430
+ typography = _a$9.typography,
1431
+ color$6 = _a$9.color;
1423
1432
  var TimeStyled = styled__default.default.time.withConfig({
1424
1433
  displayName: "DateFormatter__TimeStyled",
1425
1434
  componentId: "sc-5464cc-0"
@@ -1475,9 +1484,9 @@ var DateFormatter = function DateFormatter(_a) {
1475
1484
  var templateObject_1$A;
1476
1485
 
1477
1486
  var motion$5 = data.tokensJson.semantic.motion,
1478
- _a$9 = data.tokensJson.component,
1479
- iconButton = _a$9.iconButton,
1480
- button = _a$9.button;
1487
+ _a$8 = data.tokensJson.component,
1488
+ iconButton = _a$8.iconButton,
1489
+ button = _a$8.button;
1481
1490
  var IconButtonStyled = styled__default.default.button.withConfig({
1482
1491
  shouldForwardProp: function shouldForwardProp(prop) {
1483
1492
  return !prop.startsWith('$');
@@ -1707,13 +1716,13 @@ var templateObject_1$y;
1707
1716
 
1708
1717
  // Destructure tokens
1709
1718
  var semantic$c = data.tokensJson.semantic;
1710
- var _a$8 = __assign(__assign({}, semantic$c), {
1719
+ var _a$7 = __assign(__assign({}, semantic$c), {
1711
1720
  component: data.tokensJson.component
1712
1721
  }),
1713
- color$5 = _a$8.color,
1714
- border$7 = _a$8.border,
1715
- motion$4 = _a$8.motion,
1716
- component$2 = _a$8.component;
1722
+ color$5 = _a$7.color,
1723
+ border$7 = _a$7.border,
1724
+ motion$4 = _a$7.motion,
1725
+ component$2 = _a$7.component;
1717
1726
  var radius$2 = border$7.radius;
1718
1727
  var ProgressBarContainer = styled__default.default.div.withConfig({
1719
1728
  shouldForwardProp: function shouldForwardProp(prop) {
@@ -1748,7 +1757,7 @@ var ProgressBarFill = styled__default.default.div.withConfig({
1748
1757
  }
1749
1758
  return styled.css(templateObject_4$j || (templateObject_4$j = __makeTemplateObject(["background-color: ", ";"], ["background-color: ", ";"])), backgroundColor);
1750
1759
  }, function (props) {
1751
- return props.$variant === 'horizontal' && styled.css(templateObject_5$f || (templateObject_5$f = __makeTemplateObject(["\n width: ", "%;\n "], ["\n width: ", "%;\n "])), Math.min(100, Math.max(0, props.$value)));
1760
+ return props.$variant === 'horizontal' && styled.css(templateObject_5$g || (templateObject_5$g = __makeTemplateObject(["\n width: ", "%;\n "], ["\n width: ", "%;\n "])), Math.min(100, Math.max(0, props.$value)));
1752
1761
  }, function (props) {
1753
1762
  return props.$variant === 'vertical' && styled.css(templateObject_6$c || (templateObject_6$c = __makeTemplateObject(["\n width: 100%;\n height: ", "%;\n "], ["\n width: 100%;\n height: ", "%;\n "])), Math.min(100, Math.max(0, props.$value)));
1754
1763
  });
@@ -1760,13 +1769,20 @@ var ProgressBar = function ProgressBar(_a) {
1760
1769
  color = _c === void 0 ? 'default' : _c,
1761
1770
  height = _a.height,
1762
1771
  width = _a.width,
1772
+ ariaLabel = _a["aria-label"],
1773
+ ariaLabelledBy = _a["aria-labelledby"],
1763
1774
  dataTestId = _a["data-testid"];
1775
+ // Blank values are no name at all, so they fall back like missing ones
1776
+ var label = (ariaLabel === null || ariaLabel === void 0 ? void 0 : ariaLabel.trim()) ? ariaLabel : undefined;
1777
+ var labelledBy = (ariaLabelledBy === null || ariaLabelledBy === void 0 ? void 0 : ariaLabelledBy.trim()) ? ariaLabelledBy : undefined;
1764
1778
  return jsxRuntime.jsx(ProgressBarContainer, {
1765
1779
  "$variant": variant,
1766
1780
  "$height": height,
1767
1781
  "$width": width,
1768
1782
  "data-testid": dataTestId,
1769
1783
  role: "progressbar",
1784
+ "aria-label": label !== null && label !== void 0 ? label : labelledBy ? undefined : 'Progress',
1785
+ "aria-labelledby": labelledBy,
1770
1786
  "aria-valuenow": Math.min(100, Math.max(0, value)),
1771
1787
  "aria-valuemin": 0,
1772
1788
  "aria-valuemax": 100,
@@ -1777,7 +1793,7 @@ var ProgressBar = function ProgressBar(_a) {
1777
1793
  })
1778
1794
  });
1779
1795
  };
1780
- var templateObject_1$x, templateObject_2$p, templateObject_3$n, templateObject_4$j, templateObject_5$f, templateObject_6$c, templateObject_7$a;
1796
+ var templateObject_1$x, templateObject_2$p, templateObject_3$n, templateObject_4$j, templateObject_5$g, templateObject_6$c, templateObject_7$a;
1781
1797
 
1782
1798
  // Destructure tokens for cleaner access
1783
1799
  var separatorTokens = data.tokensJson.component.separator;
@@ -1954,10 +1970,10 @@ var templateObject_1$v;
1954
1970
  var statusColors = data.tokensJson.semantic.color.status;
1955
1971
  var spacing$5 = data.tokensJson.semantic.spacing.layout;
1956
1972
  var radius$1 = data.tokensJson.semantic.border.radius;
1957
- var _a$7 = data.tokensJson.semantic.motion,
1958
- transition = _a$7.transition,
1959
- duration$3 = _a$7.duration,
1960
- easing$3 = _a$7.easing;
1973
+ var _a$6 = data.tokensJson.semantic.motion,
1974
+ transition = _a$6.transition,
1975
+ duration$3 = _a$6.duration,
1976
+ easing$3 = _a$6.easing;
1961
1977
  var label$1 = data.tokensJson.component.badge.label;
1962
1978
  var scaleIn$1 = styled.keyframes(templateObject_1$u || (templateObject_1$u = __makeTemplateObject(["\n from {\n opacity: 0;\n transform: scale(0.8);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n"], ["\n from {\n opacity: 0;\n transform: scale(0.8);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n"])));
1963
1979
  var getStatusConfig = function getStatusConfig(status) {
@@ -2242,7 +2258,7 @@ var StyledStackWrapper = styled__default.default.div.withConfig({
2242
2258
  var StyledHeaderWrapper = styled__default.default.div.withConfig({
2243
2259
  displayName: "AccountCard__StyledHeaderWrapper",
2244
2260
  componentId: "sc-1erp7zn-4"
2245
- })(templateObject_5$e || (templateObject_5$e = __makeTemplateObject(["\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: ", ";\n\n & > span {\n margin-top: -", ";\n }\n"], ["\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: ", ";\n\n & > span {\n margin-top: -", ";\n }\n"
2261
+ })(templateObject_5$f || (templateObject_5$f = __makeTemplateObject(["\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: ", ";\n\n & > span {\n margin-top: -", ";\n }\n"], ["\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: ", ";\n\n & > span {\n margin-top: -", ";\n }\n"
2246
2262
  // Map trend direction to icon and color
2247
2263
  ])), data.tokensJson.component.accountCard.header.minHeight, layout$2.none, layout$2.xs);
2248
2264
  // Map trend direction to icon and color
@@ -2393,12 +2409,12 @@ var AccountCard = function AccountCard(_a) {
2393
2409
  })
2394
2410
  });
2395
2411
  };
2396
- var templateObject_1$s, templateObject_2$n, templateObject_3$l, templateObject_4$i, templateObject_5$e;
2412
+ var templateObject_1$s, templateObject_2$n, templateObject_3$l, templateObject_4$i, templateObject_5$f;
2397
2413
 
2398
2414
  var semantic$9 = data.tokensJson.semantic;
2399
- var _a$6 = semantic$9.motion,
2400
- duration$2 = _a$6.duration,
2401
- easing$2 = _a$6.easing;
2415
+ var _a$5 = semantic$9.motion,
2416
+ duration$2 = _a$5.duration,
2417
+ easing$2 = _a$5.easing;
2402
2418
  var StyledListItem = styled__default.default.li.withConfig({
2403
2419
  shouldForwardProp: function shouldForwardProp(prop) {
2404
2420
  return !prop.startsWith('$');
@@ -2451,7 +2467,7 @@ var StyledTextContent = styled__default.default.div.withConfig({
2451
2467
  var StyledRightContent = styled__default.default.div.withConfig({
2452
2468
  displayName: "ListItem__StyledRightContent",
2453
2469
  componentId: "sc-1wzzt21-4"
2454
- })(templateObject_5$d || (templateObject_5$d = __makeTemplateObject(["\n display: flex;\n align-items: center;\n gap: ", ";\n flex-shrink: 0;\n margin-left: auto;\n"], ["\n display: flex;\n align-items: center;\n gap: ", ";\n flex-shrink: 0;\n margin-left: auto;\n"])), semantic$9.spacing.layout.sm);
2470
+ })(templateObject_5$e || (templateObject_5$e = __makeTemplateObject(["\n display: flex;\n align-items: center;\n gap: ", ";\n flex-shrink: 0;\n margin-left: auto;\n"], ["\n display: flex;\n align-items: center;\n gap: ", ";\n flex-shrink: 0;\n margin-left: auto;\n"])), semantic$9.spacing.layout.sm);
2455
2471
  var StyledChevronIcon = styled__default.default.div.withConfig({
2456
2472
  shouldForwardProp: function shouldForwardProp(prop) {
2457
2473
  return !prop.startsWith('$');
@@ -2593,7 +2609,7 @@ var ListItem = function ListItem(_a) {
2593
2609
  }));
2594
2610
  };
2595
2611
  ListItem.displayName = 'ListItem';
2596
- var templateObject_1$r, templateObject_2$m, templateObject_3$k, templateObject_4$h, templateObject_5$d, templateObject_6$b, templateObject_7$9;
2612
+ var templateObject_1$r, templateObject_2$m, templateObject_3$k, templateObject_4$h, templateObject_5$e, templateObject_6$b, templateObject_7$9;
2597
2613
 
2598
2614
  // How long an exiting element stays mounted: the duration of `exitAnimation` in styleUtils.
2599
2615
  var EXIT_DURATION_MS = parseInt(data.tokensJson.semantic.motion.duration.fast, 10);
@@ -2638,12 +2654,12 @@ function useInert(ref, isInert) {
2638
2654
  }, [ref, isInert]);
2639
2655
  }
2640
2656
 
2641
- var _a$5 = data.tokensJson.semantic,
2642
- color$3 = _a$5.color,
2643
- border$5 = _a$5.border,
2644
- layout$1 = _a$5.spacing.layout,
2645
- motion$3 = _a$5.motion,
2646
- elevation$2 = _a$5.elevation;
2657
+ var _a$4 = data.tokensJson.semantic,
2658
+ color$3 = _a$4.color,
2659
+ border$5 = _a$4.border,
2660
+ layout$1 = _a$4.spacing.layout,
2661
+ motion$3 = _a$4.motion,
2662
+ elevation$2 = _a$4.elevation;
2647
2663
  var slideUp = styled.keyframes(templateObject_1$q || (templateObject_1$q = __makeTemplateObject(["\n from {\n transform: translateY(100%);\n }\n to {\n transform: translateY(0);\n }\n"], ["\n from {\n transform: translateY(100%);\n }\n to {\n transform: translateY(0);\n }\n"])));
2648
2664
  var fadeIn$2 = styled.keyframes(templateObject_2$l || (templateObject_2$l = __makeTemplateObject(["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"], ["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"])));
2649
2665
  var StyledOverlay$2 = styled__default.default.div.withConfig({
@@ -2666,7 +2682,7 @@ var StyledActionSheet = styled__default.default.div.withConfig({
2666
2682
  var StyledHeader$2 = styled__default.default.div.withConfig({
2667
2683
  displayName: "ActionSheet__StyledHeader",
2668
2684
  componentId: "sc-regbol-2"
2669
- })(templateObject_5$c || (templateObject_5$c = __makeTemplateObject(["\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n padding: ", " ", " ", ";\n border-bottom: ", ";\n"], ["\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n padding: ", " ", " ", ";\n border-bottom: ", ";\n"])), layout$1.lg, layout$1.lg, layout$1.md, border$5["default"]);
2685
+ })(templateObject_5$d || (templateObject_5$d = __makeTemplateObject(["\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n padding: ", " ", " ", ";\n border-bottom: ", ";\n"], ["\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n padding: ", " ", " ", ";\n border-bottom: ", ";\n"])), layout$1.lg, layout$1.lg, layout$1.md, border$5["default"]);
2670
2686
  var StyledHeaderContent = styled__default.default.div.withConfig({
2671
2687
  displayName: "ActionSheet__StyledHeaderContent",
2672
2688
  componentId: "sc-regbol-3"
@@ -2901,7 +2917,7 @@ var ActionSheet = function ActionSheet(_a) {
2901
2917
  })]
2902
2918
  }), document.body);
2903
2919
  };
2904
- var templateObject_1$q, templateObject_2$l, templateObject_3$j, templateObject_4$g, templateObject_5$c, templateObject_6$a, templateObject_7$8, templateObject_8$7;
2920
+ var templateObject_1$q, templateObject_2$l, templateObject_3$j, templateObject_4$g, templateObject_5$d, templateObject_6$a, templateObject_7$8, templateObject_8$7;
2905
2921
 
2906
2922
  function detectSpeechRecognitionConstructor(targetWindow) {
2907
2923
  if (!targetWindow) return null;
@@ -3022,7 +3038,7 @@ var InputShell = styled__default.default.div.withConfig({
3022
3038
  var Input = styled__default.default.input.withConfig({
3023
3039
  displayName: "AgentInput__Input",
3024
3040
  componentId: "sc-fhl996-3"
3025
- })(templateObject_5$b || (templateObject_5$b = __makeTemplateObject(["\n flex: 1;\n min-width: 0;\n min-height: ", ";\n border: none;\n background: transparent;\n font: ", ";\n color: ", ";\n outline: none;\n\n &::placeholder {\n color: ", ";\n }\n\n &:disabled {\n color: ", ";\n cursor: not-allowed;\n }\n"], ["\n flex: 1;\n min-width: 0;\n min-height: ", ";\n border: none;\n background: transparent;\n font: ", ";\n color: ", ";\n outline: none;\n\n &::placeholder {\n color: ", ";\n }\n\n &:disabled {\n color: ", ";\n cursor: not-allowed;\n }\n"])), semantic$8.spacing.layout['7xl'], semantic$8.typography.body, semantic$8.color.text["default"], semantic$8.color.text.subdued, semantic$8.color.text.disabled);
3041
+ })(templateObject_5$c || (templateObject_5$c = __makeTemplateObject(["\n flex: 1;\n min-width: 0;\n min-height: ", ";\n border: none;\n background: transparent;\n font: ", ";\n color: ", ";\n outline: none;\n\n &::placeholder {\n color: ", ";\n }\n\n &:disabled {\n color: ", ";\n cursor: not-allowed;\n }\n"], ["\n flex: 1;\n min-width: 0;\n min-height: ", ";\n border: none;\n background: transparent;\n font: ", ";\n color: ", ";\n outline: none;\n\n &::placeholder {\n color: ", ";\n }\n\n &:disabled {\n color: ", ";\n cursor: not-allowed;\n }\n"])), semantic$8.spacing.layout['7xl'], semantic$8.typography.body, semantic$8.color.text["default"], semantic$8.color.text.subdued, semantic$8.color.text.disabled);
3026
3042
  var InputActions = styled__default.default.div.withConfig({
3027
3043
  displayName: "AgentInput__InputActions",
3028
3044
  componentId: "sc-fhl996-4"
@@ -3041,50 +3057,56 @@ var MicButtonWrapper = styled__default.default.div.withConfig({
3041
3057
  },
3042
3058
  displayName: "AgentInput__MicButtonWrapper",
3043
3059
  componentId: "sc-fhl996-7"
3044
- })(templateObject_9$5 || (templateObject_9$5 = __makeTemplateObject(["\n position: relative;\n display: inline-flex;\n border-radius: ", ";\n\n & > button {\n position: relative;\n z-index: 1;\n }\n"], ["\n position: relative;\n display: inline-flex;\n border-radius: ", ";\n\n & > button {\n position: relative;\n z-index: 1;\n }\n"])), semantic$8.border.radius.circle);
3060
+ })(templateObject_9$5 || (templateObject_9$5 = __makeTemplateObject(["\n position: relative;\n display: inline-flex;\n border-radius: ", ";\n\n & > button {\n position: relative;\n z-index: 1;\n }\n"], ["\n position: relative;\n display: inline-flex;\n border-radius: ", ";\n\n & > button {\n position: relative;\n z-index: 1;\n }\n"
3061
+ // Masks read only alpha, so the opaque stop is a mask value, not a colour (decision 0010).
3062
+ // eslint-disable-next-line no-restricted-syntax
3063
+ ])), semantic$8.border.radius.circle);
3064
+ // Masks read only alpha, so the opaque stop is a mask value, not a colour (decision 0010).
3065
+ // eslint-disable-next-line no-restricted-syntax
3066
+ var ringMask = styled.css(templateObject_10$3 || (templateObject_10$3 = __makeTemplateObject(["radial-gradient(farthest-side, transparent calc(100% - var(--ring-thickness)), #000 calc(100% - var(--ring-thickness)))"], ["radial-gradient(farthest-side, transparent calc(100% - var(--ring-thickness)), #000 calc(100% - var(--ring-thickness)))"])));
3045
3067
  var MicListeningRing = styled__default.default.span.withConfig({
3046
3068
  shouldForwardProp: function shouldForwardProp(prop) {
3047
3069
  return !prop.startsWith('$');
3048
3070
  },
3049
3071
  displayName: "AgentInput__MicListeningRing",
3050
3072
  componentId: "sc-fhl996-8"
3051
- })(templateObject_11$3 || (templateObject_11$3 = __makeTemplateObject(["\n --ring-thickness: ", ";\n position: absolute;\n inset: calc(-", " - ", ");\n border-radius: ", ";\n pointer-events: none;\n z-index: 0;\n background: conic-gradient(\n from 0deg,\n ", " 0deg,\n ", " 110deg,\n ", " 210deg,\n ", " 300deg,\n ", " 360deg\n );\n mask: radial-gradient(\n farthest-side,\n transparent calc(100% - var(--ring-thickness)),\n #000 calc(100% - var(--ring-thickness))\n );\n -webkit-mask: radial-gradient(\n farthest-side,\n transparent calc(100% - var(--ring-thickness)),\n #000 calc(100% - var(--ring-thickness))\n );\n\n ", "\n\n @media (prefers-reduced-motion: reduce) {\n animation: none;\n }\n"], ["\n --ring-thickness: ", ";\n position: absolute;\n inset: calc(-", " - ", ");\n border-radius: ", ";\n pointer-events: none;\n z-index: 0;\n background: conic-gradient(\n from 0deg,\n ", " 0deg,\n ", " 110deg,\n ", " 210deg,\n ", " 300deg,\n ", " 360deg\n );\n mask: radial-gradient(\n farthest-side,\n transparent calc(100% - var(--ring-thickness)),\n #000 calc(100% - var(--ring-thickness))\n );\n -webkit-mask: radial-gradient(\n farthest-side,\n transparent calc(100% - var(--ring-thickness)),\n #000 calc(100% - var(--ring-thickness))\n );\n\n ", "\n\n @media (prefers-reduced-motion: reduce) {\n animation: none;\n }\n"])), semantic$8.border.width.thick, semantic$8.spacing.layout.xs, component$1.iconButton.focus.outlineOffset, semantic$8.border.radius.circle, semantic$8.color.background['interactive-subtle'], semantic$8.color.background.interactive, semantic$8.color.background['interactive-hover'], semantic$8.color.background.interactive, semantic$8.color.background['interactive-subtle'], function (_a) {
3073
+ })(templateObject_12$3 || (templateObject_12$3 = __makeTemplateObject(["\n --ring-thickness: ", ";\n position: absolute;\n inset: calc(-", " - ", ");\n border-radius: ", ";\n pointer-events: none;\n z-index: 0;\n background: conic-gradient(\n from 0deg,\n ", " 0deg,\n ", " 110deg,\n ", " 210deg,\n ", " 300deg,\n ", " 360deg\n );\n mask: ", ";\n -webkit-mask: ", ";\n\n ", "\n\n @media (prefers-reduced-motion: reduce) {\n animation: none;\n }\n"], ["\n --ring-thickness: ", ";\n position: absolute;\n inset: calc(-", " - ", ");\n border-radius: ", ";\n pointer-events: none;\n z-index: 0;\n background: conic-gradient(\n from 0deg,\n ", " 0deg,\n ", " 110deg,\n ", " 210deg,\n ", " 300deg,\n ", " 360deg\n );\n mask: ", ";\n -webkit-mask: ", ";\n\n ", "\n\n @media (prefers-reduced-motion: reduce) {\n animation: none;\n }\n"])), semantic$8.border.width.thick, semantic$8.spacing.layout.xs, component$1.iconButton.focus.outlineOffset, semantic$8.border.radius.circle, semantic$8.color.background['interactive-subtle'], semantic$8.color.background.interactive, semantic$8.color.background['interactive-hover'], semantic$8.color.background.interactive, semantic$8.color.background['interactive-subtle'], ringMask, ringMask, function (_a) {
3052
3074
  var $reducedMotion = _a.$reducedMotion;
3053
- return !$reducedMotion && styled.css(templateObject_10$3 || (templateObject_10$3 = __makeTemplateObject(["\n animation: ", " 1300ms linear infinite;\n "], ["\n animation: ", " 1300ms linear infinite;\n "])), rotateRing);
3075
+ return !$reducedMotion && styled.css(templateObject_11$3 || (templateObject_11$3 = __makeTemplateObject(["\n animation: ", " 1300ms linear infinite;\n "], ["\n animation: ", " 1300ms linear infinite;\n "])), rotateRing);
3054
3076
  });
3055
3077
  var StatusRow = styled__default.default.div.withConfig({
3056
3078
  displayName: "AgentInput__StatusRow",
3057
3079
  componentId: "sc-fhl996-9"
3058
- })(templateObject_12$3 || (templateObject_12$3 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: ", ";\n min-height: ", ";\n"], ["\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: ", ";\n min-height: ", ";\n"])), semantic$8.spacing.layout.md, semantic$8.spacing.layout['2xl']);
3080
+ })(templateObject_13$2 || (templateObject_13$2 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: ", ";\n min-height: ", ";\n"], ["\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: ", ";\n min-height: ", ";\n"])), semantic$8.spacing.layout.md, semantic$8.spacing.layout['2xl']);
3059
3081
  var StatusText = styled__default.default.div.withConfig({
3060
3082
  shouldForwardProp: function shouldForwardProp(prop) {
3061
3083
  return !prop.startsWith('$');
3062
3084
  },
3063
3085
  displayName: "AgentInput__StatusText",
3064
3086
  componentId: "sc-fhl996-10"
3065
- })(templateObject_13$2 || (templateObject_13$2 = __makeTemplateObject(["\n padding-left: ", ";\n"], ["\n padding-left: ", ";\n"])), semantic$8.spacing.layout.xl);
3087
+ })(templateObject_14$1 || (templateObject_14$1 = __makeTemplateObject(["\n padding-left: ", ";\n"], ["\n padding-left: ", ";\n"])), semantic$8.spacing.layout.xl);
3066
3088
  var StatusAnnouncement = styled__default.default.div.withConfig({
3067
3089
  displayName: "AgentInput__StatusAnnouncement",
3068
3090
  componentId: "sc-fhl996-11"
3069
- })(templateObject_14$1 || (templateObject_14$1 = __makeTemplateObject([""], [""])));
3091
+ })(templateObject_15$1 || (templateObject_15$1 = __makeTemplateObject([""], [""])));
3070
3092
  var MeterContainer = styled__default.default.div.withConfig({
3071
3093
  displayName: "AgentInput__MeterContainer",
3072
3094
  componentId: "sc-fhl996-12"
3073
- })(templateObject_15$1 || (templateObject_15$1 = __makeTemplateObject(["\n display: inline-flex;\n align-items: flex-end;\n gap: ", ";\n height: ", ";\n"], ["\n display: inline-flex;\n align-items: flex-end;\n gap: ", ";\n height: ", ";\n"])), semantic$8.spacing.layout.xs, semantic$8.spacing.layout.lg);
3095
+ })(templateObject_16$1 || (templateObject_16$1 = __makeTemplateObject(["\n display: inline-flex;\n align-items: flex-end;\n gap: ", ";\n height: ", ";\n"], ["\n display: inline-flex;\n align-items: flex-end;\n gap: ", ";\n height: ", ";\n"])), semantic$8.spacing.layout.xs, semantic$8.spacing.layout.lg);
3074
3096
  var MeterBar = styled__default.default.div.withConfig({
3075
3097
  shouldForwardProp: function shouldForwardProp(prop) {
3076
3098
  return !prop.startsWith('$');
3077
3099
  },
3078
3100
  displayName: "AgentInput__MeterBar",
3079
3101
  componentId: "sc-fhl996-13"
3080
- })(templateObject_16$1 || (templateObject_16$1 = __makeTemplateObject(["\n width: ", ";\n border-radius: ", ";\n background-color: ", ";\n height: ", ";\n transition: height ", " ", ";\n"], ["\n width: ", ";\n border-radius: ", ";\n background-color: ", ";\n height: ", ";\n transition: height ", " ", ";\n"])), semantic$8.spacing.layout.xs, semantic$8.border.radius.xs, semantic$8.color.background.interactive, function (_a) {
3102
+ })(templateObject_17$1 || (templateObject_17$1 = __makeTemplateObject(["\n width: ", ";\n border-radius: ", ";\n background-color: ", ";\n height: ", ";\n transition: height ", " ", ";\n"], ["\n width: ", ";\n border-radius: ", ";\n background-color: ", ";\n height: ", ";\n transition: height ", " ", ";\n"])), semantic$8.spacing.layout.xs, semantic$8.border.radius.xs, semantic$8.color.background.interactive, function (_a) {
3081
3103
  var $height = _a.$height;
3082
3104
  return "".concat($height * 100, "%");
3083
3105
  }, semantic$8.motion.duration.fast, semantic$8.motion.easing.easeOut);
3084
3106
  var VisuallyHiddenLabel = styled__default.default.label.withConfig({
3085
3107
  displayName: "AgentInput__VisuallyHiddenLabel",
3086
3108
  componentId: "sc-fhl996-14"
3087
- })(templateObject_17$1 || (templateObject_17$1 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), visuallyHidden);
3109
+ })(templateObject_18$1 || (templateObject_18$1 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), visuallyHidden);
3088
3110
  function getInitialState(hasText) {
3089
3111
  return hasText ? 'typing' : 'idle';
3090
3112
  }
@@ -3713,13 +3735,13 @@ var AgentInput = function AgentInput(_a) {
3713
3735
  })]
3714
3736
  });
3715
3737
  };
3716
- var templateObject_1$p, templateObject_2$k, templateObject_3$i, templateObject_4$f, templateObject_5$b, templateObject_6$9, templateObject_7$7, templateObject_8$6, templateObject_9$5, templateObject_10$3, templateObject_11$3, templateObject_12$3, templateObject_13$2, templateObject_14$1, templateObject_15$1, templateObject_16$1, templateObject_17$1;
3738
+ var templateObject_1$p, templateObject_2$k, templateObject_3$i, templateObject_4$f, templateObject_5$c, templateObject_6$9, templateObject_7$7, templateObject_8$6, templateObject_9$5, templateObject_10$3, templateObject_11$3, templateObject_12$3, templateObject_13$2, templateObject_14$1, templateObject_15$1, templateObject_16$1, templateObject_17$1, templateObject_18$1;
3717
3739
 
3718
3740
  var semantic$7 = data.tokensJson.semantic;
3719
3741
  var alert = data.tokensJson.component.alert;
3720
- var _a$4 = semantic$7.motion,
3721
- duration$1 = _a$4.duration,
3722
- easing$1 = _a$4.easing;
3742
+ var _a$3 = semantic$7.motion,
3743
+ duration$1 = _a$3.duration,
3744
+ easing$1 = _a$3.easing;
3723
3745
  // Dismissing fades the alert out, then collapses the space it took (Ollie's call, #35).
3724
3746
  // Each half takes duration.fast, so the whole exit stays within the 300ms maximum (P6).
3725
3747
  var FADE_MS = parseInt(duration$1.fast, 10);
@@ -3793,7 +3815,7 @@ var StyledAlert = styled__default.default.div.withConfig({
3793
3815
  }, function (_a) {
3794
3816
  var $isExiting = _a.$isExiting,
3795
3817
  $reducedExit = _a.$reducedExit;
3796
- return $isExiting && styled.css(templateObject_5$a || (templateObject_5$a = __makeTemplateObject(["\n overflow: hidden;\n pointer-events: none;\n animation: ", ";\n "], ["\n overflow: hidden;\n pointer-events: none;\n animation: ", ";\n "])), $reducedExit ? styled.css(templateObject_3$h || (templateObject_3$h = __makeTemplateObject(["", " ", " ", " forwards"], ["", " ", " ", " forwards"])), fadeOut, duration$1.fast, easing$1.easeOut) : styled.css(templateObject_4$e || (templateObject_4$e = __makeTemplateObject(["", " ", "ms ", " forwards"], ["", " ", "ms ", " forwards"])), fadeThenCollapse, EXIT_MS, easing$1.easeOut));
3818
+ return $isExiting && styled.css(templateObject_5$b || (templateObject_5$b = __makeTemplateObject(["\n overflow: hidden;\n pointer-events: none;\n animation: ", ";\n "], ["\n overflow: hidden;\n pointer-events: none;\n animation: ", ";\n "])), $reducedExit ? styled.css(templateObject_3$h || (templateObject_3$h = __makeTemplateObject(["", " ", " ", " forwards"], ["", " ", " ", " forwards"])), fadeOut, duration$1.fast, easing$1.easeOut) : styled.css(templateObject_4$e || (templateObject_4$e = __makeTemplateObject(["", " ", "ms ", " forwards"], ["", " ", "ms ", " forwards"])), fadeThenCollapse, EXIT_MS, easing$1.easeOut));
3797
3819
  });
3798
3820
  var StyledIconContainer = styled__default.default.div.withConfig({
3799
3821
  displayName: "Alert__StyledIconContainer",
@@ -3946,13 +3968,12 @@ var Alert = function Alert(_a) {
3946
3968
  }));
3947
3969
  };
3948
3970
  Alert.displayName = 'Alert';
3949
- var templateObject_1$o, templateObject_2$j, templateObject_3$h, templateObject_4$e, templateObject_5$a, templateObject_6$8, templateObject_7$6, templateObject_8$5, templateObject_9$4, templateObject_10$2, templateObject_11$2, templateObject_12$2;
3971
+ var templateObject_1$o, templateObject_2$j, templateObject_3$h, templateObject_4$e, templateObject_5$b, templateObject_6$8, templateObject_7$6, templateObject_8$5, templateObject_9$4, templateObject_10$2, templateObject_11$2, templateObject_12$2;
3950
3972
 
3951
- var _a$3, _b$1;
3952
3973
  var BreadcrumbNavStyled = styled__default.default.nav.withConfig({
3953
3974
  displayName: "Breadcrumbs__BreadcrumbNavStyled",
3954
3975
  componentId: "sc-7ouzg5-0"
3955
- })(templateObject_1$n || (templateObject_1$n = __makeTemplateObject(["\n border-bottom: ", ";\n\n ol {\n display: flex;\n align-items: center;\n list-style: none;\n margin: 0;\n padding: 0;\n }\n"], ["\n border-bottom: ", ";\n\n ol {\n display: flex;\n align-items: center;\n list-style: none;\n margin: 0;\n padding: 0;\n }\n"])), ((_b$1 = (_a$3 = data.tokensJson.semantic) === null || _a$3 === void 0 ? void 0 : _a$3.border) === null || _b$1 === void 0 ? void 0 : _b$1["default"]) || '0.0625rem solid #e9ecef');
3976
+ })(templateObject_1$n || (templateObject_1$n = __makeTemplateObject(["\n border-bottom: ", ";\n\n ol {\n display: flex;\n align-items: center;\n list-style: none;\n margin: 0;\n padding: 0;\n }\n"], ["\n border-bottom: ", ";\n\n ol {\n display: flex;\n align-items: center;\n list-style: none;\n margin: 0;\n padding: 0;\n }\n"])), data.tokensJson.semantic.border["default"]);
3956
3977
  var BreadcrumbStyled = styled__default.default.li.withConfig({
3957
3978
  displayName: "Breadcrumbs__BreadcrumbStyled",
3958
3979
  componentId: "sc-7ouzg5-1"
@@ -4020,7 +4041,8 @@ var CardSmall = function CardSmall(_a) {
4020
4041
  subtitle = _a.subtitle,
4021
4042
  meta = _a.meta,
4022
4043
  href = _a.href,
4023
- LinkComponent = _a.linkComponent;
4044
+ LinkComponent = _a.linkComponent,
4045
+ dataTestId = _a["data-testid"];
4024
4046
  if (!picture || !meta) {
4025
4047
  return null;
4026
4048
  }
@@ -4054,6 +4076,7 @@ var CardSmall = function CardSmall(_a) {
4054
4076
  })]
4055
4077
  });
4056
4078
  return jsxRuntime.jsx(CardSmallStyled, {
4079
+ "data-testid": dataTestId,
4057
4080
  children: LinkComponent && href ? jsxRuntime.jsx(LinkComponent, {
4058
4081
  href: href,
4059
4082
  "aria-label": title,
@@ -4080,8 +4103,10 @@ var CardLarge = function CardLarge(_a) {
4080
4103
  labels = _b === void 0 ? [] : _b,
4081
4104
  picture = _a.picture,
4082
4105
  onImageClick = _a.onImageClick,
4083
- imageHref = _a.imageHref;
4106
+ imageHref = _a.imageHref,
4107
+ dataTestId = _a["data-testid"];
4084
4108
  return jsxRuntime.jsx(CardLargeStyled, {
4109
+ "data-testid": dataTestId,
4085
4110
  children: jsxRuntime.jsxs(Stack, {
4086
4111
  direction: "column",
4087
4112
  gap: "md",
@@ -4455,6 +4480,37 @@ var CopyButton = function CopyButton(_a) {
4455
4480
  })
4456
4481
  });
4457
4482
  };
4483
+ var LiveRegion = styled__default.default.span.withConfig({
4484
+ displayName: "CodeBlock__LiveRegion",
4485
+ componentId: "sc-1p1t0kp-4"
4486
+ })(templateObject_5$a || (templateObject_5$a = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"
4487
+ /**
4488
+ * CodeBlock component for displaying formatted code with optional copy functionality
4489
+ * and expandable content for long code blocks.
4490
+ *
4491
+ * @param children - The code content to display
4492
+ * @param showCopyButton - Whether to show the copy button (default: true)
4493
+ * @param onCopy - Optional callback when code is copied
4494
+ * @param maxHeight - Maximum height in pixels before enabling expand/collapse
4495
+ * @param defaultExpanded - Initial expanded state when maxHeight is set
4496
+ * @param data-testid - Test identifier for the code block
4497
+ *
4498
+ * @example
4499
+ * ```tsx
4500
+ * // Basic usage
4501
+ * <CodeBlock>const x = 1;</CodeBlock>
4502
+ *
4503
+ * // With max height and expand/collapse
4504
+ * <CodeBlock maxHeight={200}>
4505
+ * {longCodeString}
4506
+ * </CodeBlock>
4507
+ *
4508
+ * // Start expanded
4509
+ * <CodeBlock maxHeight={200} defaultExpanded>
4510
+ * {longCodeString}
4511
+ * </CodeBlock>
4512
+ * ```
4513
+ */])), visuallyHidden);
4458
4514
  /**
4459
4515
  * CodeBlock component for displaying formatted code with optional copy functionality
4460
4516
  * and expandable content for long code blocks.
@@ -4497,6 +4553,9 @@ var CodeBlock = function CodeBlock(_a) {
4497
4553
  var _e = React.useState(false),
4498
4554
  needsExpansion = _e[0],
4499
4555
  setNeedsExpansion = _e[1];
4556
+ var _f = React.useState(''),
4557
+ announcement = _f[0],
4558
+ setAnnouncement = _f[1];
4500
4559
  var contentRef = React.useRef(null);
4501
4560
  // Check if content exceeds maxHeight
4502
4561
  React.useEffect(function () {
@@ -4510,17 +4569,7 @@ var CodeBlock = function CodeBlock(_a) {
4510
4569
  return !prev;
4511
4570
  });
4512
4571
  // Announce state change to screen readers
4513
- var announcement = isExpanded ? 'Code block collapsed' : 'Code block expanded';
4514
- var announcer = document.createElement('div');
4515
- announcer.setAttribute('aria-live', 'polite');
4516
- announcer.setAttribute('aria-atomic', 'true');
4517
- announcer.setAttribute('class', 'sr-only');
4518
- announcer.style.cssText = 'position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;';
4519
- announcer.textContent = announcement;
4520
- document.body.appendChild(announcer);
4521
- setTimeout(function () {
4522
- document.body.removeChild(announcer);
4523
- }, 1000);
4572
+ setAnnouncement(isExpanded ? 'Code block collapsed' : 'Code block expanded');
4524
4573
  };
4525
4574
  var showExpandButton = maxHeight && needsExpansion;
4526
4575
  return jsxRuntime.jsxs(CodeBlockWrapper, {
@@ -4545,13 +4594,17 @@ var CodeBlock = function CodeBlock(_a) {
4545
4594
  "data-testid": "expand-button",
4546
4595
  children: isExpanded ? 'Show less' : 'Show more'
4547
4596
  })
4597
+ }), showExpandButton && jsxRuntime.jsx(LiveRegion, {
4598
+ "aria-live": "polite",
4599
+ "aria-atomic": "true",
4600
+ children: announcement
4548
4601
  }), showCopyButton && jsxRuntime.jsx(CopyButton, {
4549
4602
  text: children,
4550
4603
  onCopy: onCopy
4551
4604
  })]
4552
4605
  });
4553
4606
  };
4554
- var templateObject_1$h, templateObject_2$f, templateObject_3$e, templateObject_4$c;
4607
+ var templateObject_1$h, templateObject_2$f, templateObject_3$e, templateObject_4$c, templateObject_5$a;
4555
4608
 
4556
4609
  var StyledHeader$1 = styled__default.default.div.withConfig({
4557
4610
  displayName: "DateGroup__StyledHeader",
@@ -4797,9 +4850,11 @@ var FeatureBlock = function FeatureBlock(_a) {
4797
4850
  onReadMore = _a.onReadMore,
4798
4851
  readMoreHref = _a.readMoreHref,
4799
4852
  _c = _a.readMoreText,
4800
- readMoreText = _c === void 0 ? "Read more" : _c;
4853
+ readMoreText = _c === void 0 ? "Read more" : _c,
4854
+ dataTestId = _a["data-testid"];
4801
4855
  return jsxRuntime.jsxs(jsxRuntime.Fragment, {
4802
4856
  children: [jsxRuntime.jsxs(FeatureBlockStyled, {
4857
+ "data-testid": dataTestId,
4803
4858
  children: [jsxRuntime.jsx(ImageWrapper, {
4804
4859
  children: jsxRuntime.jsx(Picture, {
4805
4860
  title: title,
@@ -4938,7 +4993,8 @@ var Dropdown = function Dropdown(_a) {
4938
4993
  className = _a.className,
4939
4994
  label = _a.label,
4940
4995
  helperText = _a.helperText,
4941
- error = _a.error;
4996
+ error = _a.error,
4997
+ dataTestId = _a["data-testid"];
4942
4998
  var _d = React.useState(false),
4943
4999
  isOpen = _d[0],
4944
5000
  setIsOpen = _d[1];
@@ -5043,6 +5099,7 @@ var Dropdown = function Dropdown(_a) {
5043
5099
  return jsxRuntime.jsxs(DropdownContainer, {
5044
5100
  ref: dropdownRef,
5045
5101
  className: className,
5102
+ "data-testid": dataTestId,
5046
5103
  children: [label && jsxRuntime.jsx("label", {
5047
5104
  htmlFor: dropdownId,
5048
5105
  style: {
@@ -5679,10 +5736,36 @@ var PageTitleStyled = styled__default.default.div.withConfig({
5679
5736
  },
5680
5737
  displayName: "PageTitle__PageTitleStyled",
5681
5738
  componentId: "sc-16h256f-0"
5682
- })(templateObject_1$8 || (templateObject_1$8 = __makeTemplateObject(["\n margin-bottom: ", ";\n margin-top: ", ";\n"], ["\n margin-bottom: ", ";\n margin-top: ", ";\n"])), data.tokensJson.semantic.spacing.layout['2xl'], function (_a) {
5739
+ })(templateObject_1$8 || (templateObject_1$8 = __makeTemplateObject(["\n margin-bottom: ", ";\n margin-top: ", ";\n"], ["\n margin-bottom: ", ";\n margin-top: ", ";\n"
5740
+ /**
5741
+ * @deprecated PageTitle is a leftover from the personal site (its back button always links to `/music`)
5742
+ * and will be removed in the next major version. Compose a page title from `Typography` in a `Stack`:
5743
+ *
5744
+ * ```tsx
5745
+ * <Stack direction="column" gap="md">
5746
+ * <Typography variant="h1">{title}</Typography>
5747
+ * <Typography variant="caption" color="subdued">{subtitle}</Typography>
5748
+ * </Stack>
5749
+ * ```
5750
+ *
5751
+ * For a back link, add an `IconButton` with your own `url` and `aria-label`.
5752
+ */])), data.tokensJson.semantic.spacing.layout['2xl'], function (_a) {
5683
5753
  var $hasBackButton = _a.$hasBackButton;
5684
5754
  return $hasBackButton ? data.tokensJson.semantic.spacing.layout.none : data.tokensJson.semantic.spacing.layout['7xl'];
5685
5755
  });
5756
+ /**
5757
+ * @deprecated PageTitle is a leftover from the personal site (its back button always links to `/music`)
5758
+ * and will be removed in the next major version. Compose a page title from `Typography` in a `Stack`:
5759
+ *
5760
+ * ```tsx
5761
+ * <Stack direction="column" gap="md">
5762
+ * <Typography variant="h1">{title}</Typography>
5763
+ * <Typography variant="caption" color="subdued">{subtitle}</Typography>
5764
+ * </Stack>
5765
+ * ```
5766
+ *
5767
+ * For a back link, add an `IconButton` with your own `url` and `aria-label`.
5768
+ */
5686
5769
  var PageTitle = function PageTitle(_a) {
5687
5770
  var title = _a.title,
5688
5771
  _b = _a.hasBackButton,
@@ -6869,13 +6952,8 @@ var StyledBadge = styled__default.default.span.withConfig({
6869
6952
  * />
6870
6953
  * ```
6871
6954
  */])), data.tokensJson.component.tabBar.badge.size, data.tokensJson.component.tabBar.badge.size, semantic.spacing.layout.xs, data.tokensJson.component.tabBar.badge.typography, data.tokensJson.component.tabBar.badge.fontWeight, semantic.border.radius.circle, function (props) {
6872
- if (props.$variant === 'pills') {
6873
- return props.$isActive ? 'rgba(255, 255, 255, 0.2)' : semantic.color.background.interactive;
6874
- }
6875
- return semantic.color.background.interactive;
6876
- }, function (props) {
6877
- return props.$variant === 'pills' && props.$isActive ? semantic.color.text.inverse : semantic.color.text.inverse;
6878
- });
6955
+ return props.$variant === 'pills' && props.$isActive ? semantic.color.background['inverse-overlay'] : semantic.color.background.interactive;
6956
+ }, semantic.color.text.inverse);
6879
6957
  /**
6880
6958
  * TabBar component for tabbed navigation
6881
6959
  *
@@ -7385,6 +7463,7 @@ var Grid = function Grid(_a) {
7385
7463
  gapX = _a.gapX,
7386
7464
  gapY = _a.gapY,
7387
7465
  className = _a.className,
7466
+ dataTestId = _a["data-testid"],
7388
7467
  children = _a.children;
7389
7468
  return jsxRuntime.jsx(GridContainer, {
7390
7469
  "$cols": cols,
@@ -7392,6 +7471,7 @@ var Grid = function Grid(_a) {
7392
7471
  "$gapX": gapX ? gapSpacing[gapX] : undefined,
7393
7472
  "$gapY": gapY ? gapSpacing[gapY] : undefined,
7394
7473
  className: className,
7474
+ "data-testid": dataTestId,
7395
7475
  children: children
7396
7476
  });
7397
7477
  };
@@ -7404,7 +7484,7 @@ var GridColContainer = styled__default.default.div.withConfig({
7404
7484
  })(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n ", "\n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n"], ["\n ", "\n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n \n ", "\n"])), function (props) {
7405
7485
  return props.$span && styled.css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["grid-column: span ", " / span ", ";"], ["grid-column: span ", " / span ", ";"])), props.$span, props.$span);
7406
7486
  }, function (props) {
7407
- return props.$order && styled.css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["order: ", ";"], ["order: ", ";"])), props.$order);
7487
+ return props.$order !== undefined && styled.css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["order: ", ";"], ["order: ", ";"])), props.$order);
7408
7488
  }, function (props) {
7409
7489
  return props.$spanSm && styled.css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n ", " {\n grid-column: span ", " / span ", ";\n }\n "], ["\n ", " {\n grid-column: span ", " / span ", ";\n }\n "])), media.sm, props.$spanSm, props.$spanSm);
7410
7490
  }, function (props) {
@@ -7414,13 +7494,13 @@ var GridColContainer = styled__default.default.div.withConfig({
7414
7494
  }, function (props) {
7415
7495
  return props.$spanXl && styled.css(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n ", " {\n grid-column: span ", " / span ", ";\n }\n "], ["\n ", " {\n grid-column: span ", " / span ", ";\n }\n "])), media.xl, props.$spanXl, props.$spanXl);
7416
7496
  }, function (props) {
7417
- return props.$orderSm && styled.css(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.sm, props.$orderSm);
7497
+ return props.$orderSm !== undefined && styled.css(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.sm, props.$orderSm);
7418
7498
  }, function (props) {
7419
- return props.$orderMd && styled.css(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.md, props.$orderMd);
7499
+ return props.$orderMd !== undefined && styled.css(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.md, props.$orderMd);
7420
7500
  }, function (props) {
7421
- return props.$orderLg && styled.css(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.lg, props.$orderLg);
7501
+ return props.$orderLg !== undefined && styled.css(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.lg, props.$orderLg);
7422
7502
  }, function (props) {
7423
- return props.$orderXl && styled.css(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.xl, props.$orderXl);
7503
+ return props.$orderXl !== undefined && styled.css(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n ", " {\n order: ", ";\n }\n "], ["\n ", " {\n order: ", ";\n }\n "])), media.xl, props.$orderXl);
7424
7504
  });
7425
7505
  var GridCol = function GridCol(_a) {
7426
7506
  var span = _a.span,
@@ -7434,6 +7514,7 @@ var GridCol = function GridCol(_a) {
7434
7514
  orderLg = _a.orderLg,
7435
7515
  orderXl = _a.orderXl,
7436
7516
  className = _a.className,
7517
+ dataTestId = _a["data-testid"],
7437
7518
  children = _a.children;
7438
7519
  return jsxRuntime.jsx(GridColContainer, {
7439
7520
  "$span": span,
@@ -7447,6 +7528,7 @@ var GridCol = function GridCol(_a) {
7447
7528
  "$orderLg": orderLg,
7448
7529
  "$orderXl": orderXl,
7449
7530
  className: className,
7531
+ "data-testid": dataTestId,
7450
7532
  children: children
7451
7533
  });
7452
7534
  };
@@ -7519,6 +7601,7 @@ var ResponsiveGrid = function ResponsiveGrid(_a) {
7519
7601
  gapYLg = _a.gapYLg,
7520
7602
  gapYXl = _a.gapYXl,
7521
7603
  className = _a.className,
7604
+ dataTestId = _a["data-testid"],
7522
7605
  children = _a.children;
7523
7606
  return jsxRuntime.jsx(ResponsiveGridContainer, {
7524
7607
  "$cols": cols,
@@ -7542,6 +7625,7 @@ var ResponsiveGrid = function ResponsiveGrid(_a) {
7542
7625
  "$gapYLg": gapYLg ? gapSpacing[gapYLg] : undefined,
7543
7626
  "$gapYXl": gapYXl ? gapSpacing[gapYXl] : undefined,
7544
7627
  className: className,
7628
+ "data-testid": dataTestId,
7545
7629
  children: children
7546
7630
  });
7547
7631
  };