@arc-ui/community-components 3.8.0 → 3.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/.turbo/turbo-build.log +12 -12
  2. package/CHANGELOG.md +22 -0
  3. package/lib/ActionTile/ActionTile.cjs +2 -2
  4. package/lib/ActionTile/ActionTile.mjs +2 -2
  5. package/lib/ArticleCarousel/ArticleCarousel.cjs +3 -2
  6. package/lib/ArticleCarousel/ArticleCarousel.mjs +3 -2
  7. package/lib/BannerWithTabs/BannerWithTabs.cjs +2 -1
  8. package/lib/BannerWithTabs/BannerWithTabs.mjs +2 -1
  9. package/lib/BusinessSegmentSwitcher/BusinessSegmentSwitcher.cjs +2 -1
  10. package/lib/BusinessSegmentSwitcher/BusinessSegmentSwitcher.mjs +2 -1
  11. package/lib/CopyLead/CopyLead.cjs +2 -2
  12. package/lib/CopyLead/CopyLead.mjs +2 -2
  13. package/lib/DownloadList/DownloadList.cjs +12 -9
  14. package/lib/DownloadList/DownloadList.mjs +12 -9
  15. package/lib/DownloadList/styles.css +1 -1
  16. package/lib/FAQs/FAQs.cjs +2 -1
  17. package/lib/FAQs/FAQs.mjs +2 -1
  18. package/lib/FeaturePost/FeaturePost.cjs +1 -1
  19. package/lib/FeaturePost/FeaturePost.mjs +1 -1
  20. package/lib/Highlights/Highlights.cjs +2 -1
  21. package/lib/Highlights/Highlights.mjs +2 -1
  22. package/lib/InlineLinkGroup/InlineLinkGroup.cjs +2 -2
  23. package/lib/InlineLinkGroup/InlineLinkGroup.mjs +2 -2
  24. package/lib/ProductNavigation/ProductNavigation.cjs +7 -4
  25. package/lib/ProductNavigation/ProductNavigation.mjs +7 -4
  26. package/lib/PromoListing/PromoListing.cjs +5 -4
  27. package/lib/PromoListing/PromoListing.mjs +5 -4
  28. package/lib/PromoListing/styles.css +1 -1
  29. package/lib/PromoListingThumbnailSignpost/PromoListingThumbnailSignpost.cjs +4 -2
  30. package/lib/PromoListingThumbnailSignpost/PromoListingThumbnailSignpost.mjs +4 -2
  31. package/lib/SectionHeading/SectionHeading.cjs +2 -1
  32. package/lib/SectionHeading/SectionHeading.mjs +2 -1
  33. package/lib/SectionHeading/styles.css +1 -1
  34. package/lib/Statistics/Statistics.cjs +1 -1
  35. package/lib/Statistics/Statistics.mjs +1 -1
  36. package/lib/Summary/Summary.cjs +1 -1
  37. package/lib/Summary/Summary.mjs +1 -1
  38. package/lib/ThumbnailSignpost/ThumbnailSignpost.cjs +2 -1
  39. package/lib/ThumbnailSignpost/ThumbnailSignpost.mjs +2 -1
  40. package/lib/ThumbnailSignpost/styles.css +1 -1
  41. package/lib/_shared/cjs/SectionHeading-XCMdv8eZ.cjs +34 -0
  42. package/lib/_shared/cjs/{ThumbnailSignpost-ja1yxriK.cjs → ThumbnailSignpost-DymZmLlB.cjs} +6 -2
  43. package/lib/_shared/cjs/{index.es-Dg_lyAyh.cjs → index.es-B73RVhhj.cjs} +1 -1
  44. package/lib/_shared/esm/SectionHeading-lyXLUtdr.mjs +32 -0
  45. package/lib/_shared/esm/{ThumbnailSignpost-Cc21FjUJ.mjs → ThumbnailSignpost-D6uye3mm.mjs} +7 -3
  46. package/lib/_shared/esm/{index.es-DtCgfyRV.mjs → index.es-DNGykRl2.mjs} +1 -1
  47. package/lib/index.cjs +45 -35
  48. package/lib/index.cjs.map +1 -1
  49. package/lib/index.d.cts +16 -4
  50. package/lib/index.d.mts +16 -4
  51. package/lib/index.mjs +46 -36
  52. package/lib/index.mjs.map +1 -1
  53. package/lib/styles.css +1 -1
  54. package/package.json +15 -15
  55. package/src/components/ActionTile/ActionTile.tsx +9 -3
  56. package/src/components/BusinessSegmentSwitcher/BusinessSegmentSwitcher.tsx +5 -1
  57. package/src/components/BusinessSegmentSwitcher/types/types.ts +6 -3
  58. package/src/components/DownloadList/DownloadList.module.css +11 -3
  59. package/src/components/DownloadList/DownloadList.tsx +33 -17
  60. package/src/components/InlineLinkGroup/InlineLinkGroup.tsx +4 -1
  61. package/src/components/PartnerBrandLogos/components/PartnerLogoSubgroup/PartnerLogoSubgroup.tsx +2 -4
  62. package/src/components/ProductNavigation/ProductNavigation.tsx +6 -5
  63. package/src/components/PromoListing/PromoListing.module.css +14 -0
  64. package/src/components/PromoListing/PromoListing.tsx +1 -1
  65. package/src/components/SectionHeading/SectionHeading.module.css +7 -26
  66. package/src/components/SectionHeading/SectionHeading.tsx +35 -33
  67. package/src/components/ThumbnailSignpost/ThumbnailSignpost.module.css +31 -1
  68. package/src/components/ThumbnailSignpost/ThumbnailSignpost.tsx +7 -2
  69. package/versions.json +1 -1
  70. package/lib/_shared/cjs/SectionHeading-DtYzFetD.cjs +0 -31
  71. package/lib/_shared/esm/SectionHeading-RLfs7ete.mjs +0 -29
package/lib/index.d.cts CHANGED
@@ -203,7 +203,14 @@ interface CopyLeadProps {
203
203
 
204
204
  declare const DownloadList: React$1.FC<DownloadListProps>;
205
205
  interface DownloadListProps extends Omit<SectionHeadingProps, "isPadded"> {
206
+ /**
207
+ * Set the list of `Download` components.
208
+ */
206
209
  downloads: DownloadProps[];
210
+ /**
211
+ * Align the `Download` list below or to the right of the `SectionHeading`.
212
+ */
213
+ alignment?: "below" | "right";
207
214
  }
208
215
 
209
216
  declare const FAQs: React$1.FC<FAQsProps>;
@@ -561,7 +568,7 @@ interface ProductNavigationProps extends Omit<SectionHeadingProps, "isPadded"> {
561
568
  */
562
569
  productList: ListProps[];
563
570
  /**
564
- * Include "show more" or "show less" buttons.
571
+ * Hide "show more" or "show less" button controls.
565
572
  */
566
573
  hideButton?: boolean;
567
574
  /**
@@ -642,6 +649,8 @@ declare const InlineLinkGroup: React$1.FC<InlineLinkGroupProps>;
642
649
  interface InlineLinkGroupProps {
643
650
  /** Optional overline label displayed above the link group */
644
651
  label?: string;
652
+ /** Heading level for the label, defaults to "2" for proper heading hierarchy */
653
+ headingLevel?: "1" | "2" | "3" | "4" | "5" | "6";
645
654
  /** Array of link items to display */
646
655
  links: InlineLinkGroupItem[];
647
656
  }
@@ -762,16 +771,19 @@ interface BentoMediaCard extends Omit<MediaCardProps, "isContained" | "buttonIco
762
771
  * Content structure for the bento grid layout within each tab.
763
772
  * - card1 & card2: Can be either information or media cards
764
773
  * - card3: Optional information card
765
- * - card4: Typography card with label and url
774
+ * - card4: Typography card with label, heading and url
766
775
  */
767
776
  type BentoGridContent = {
768
777
  card1: BentoInformationCard | BentoMediaCard;
769
778
  card2: BentoInformationCard | BentoMediaCard;
770
779
  card3?: BentoInformationCard;
771
780
  card4: {
772
- url: string;
773
- label?: string;
781
+ url: TypographyCardProps["url"];
782
+ label?: TypographyCardProps["label"];
783
+ /** Overrides the default heading if provided and is not falsey. */
784
+ heading?: string;
774
785
  text?: TypographyCardProps["text"];
786
+ onClick?: TypographyCardProps["onClick"];
775
787
  };
776
788
  };
777
789
 
package/lib/index.d.mts CHANGED
@@ -203,7 +203,14 @@ interface CopyLeadProps {
203
203
 
204
204
  declare const DownloadList: React$1.FC<DownloadListProps>;
205
205
  interface DownloadListProps extends Omit<SectionHeadingProps, "isPadded"> {
206
+ /**
207
+ * Set the list of `Download` components.
208
+ */
206
209
  downloads: DownloadProps[];
210
+ /**
211
+ * Align the `Download` list below or to the right of the `SectionHeading`.
212
+ */
213
+ alignment?: "below" | "right";
207
214
  }
208
215
 
209
216
  declare const FAQs: React$1.FC<FAQsProps>;
@@ -561,7 +568,7 @@ interface ProductNavigationProps extends Omit<SectionHeadingProps, "isPadded"> {
561
568
  */
562
569
  productList: ListProps[];
563
570
  /**
564
- * Include "show more" or "show less" buttons.
571
+ * Hide "show more" or "show less" button controls.
565
572
  */
566
573
  hideButton?: boolean;
567
574
  /**
@@ -642,6 +649,8 @@ declare const InlineLinkGroup: React$1.FC<InlineLinkGroupProps>;
642
649
  interface InlineLinkGroupProps {
643
650
  /** Optional overline label displayed above the link group */
644
651
  label?: string;
652
+ /** Heading level for the label, defaults to "2" for proper heading hierarchy */
653
+ headingLevel?: "1" | "2" | "3" | "4" | "5" | "6";
645
654
  /** Array of link items to display */
646
655
  links: InlineLinkGroupItem[];
647
656
  }
@@ -762,16 +771,19 @@ interface BentoMediaCard extends Omit<MediaCardProps, "isContained" | "buttonIco
762
771
  * Content structure for the bento grid layout within each tab.
763
772
  * - card1 & card2: Can be either information or media cards
764
773
  * - card3: Optional information card
765
- * - card4: Typography card with label and url
774
+ * - card4: Typography card with label, heading and url
766
775
  */
767
776
  type BentoGridContent = {
768
777
  card1: BentoInformationCard | BentoMediaCard;
769
778
  card2: BentoInformationCard | BentoMediaCard;
770
779
  card3?: BentoInformationCard;
771
780
  card4: {
772
- url: string;
773
- label?: string;
781
+ url: TypographyCardProps["url"];
782
+ label?: TypographyCardProps["label"];
783
+ /** Overrides the default heading if provided and is not falsey. */
784
+ heading?: string;
774
785
  text?: TypographyCardProps["text"];
786
+ onClick?: TypographyCardProps["onClick"];
775
787
  };
776
788
  };
777
789
 
package/lib/index.mjs CHANGED
@@ -1,15 +1,15 @@
1
- import React, { useId, useState, useEffect, Suspense, useRef } from 'react';
1
+ import React, { useId, useState, useEffect, Suspense, useRef, useContext } from 'react';
2
2
  import { Heading } from '@arc-ui/components/Heading';
3
3
  import { Text } from '@arc-ui/components/Text';
4
4
  import { VerticalSpace } from '@arc-ui/components/VerticalSpace';
5
5
  import { Image as Image$2 } from '@arc-ui/components/Image';
6
6
  import { Disclosure } from '@arc-ui/components/Disclosure';
7
7
  import { Carousel } from '@arc-ui/components/Carousel';
8
+ import { Columns, ColumnsCol } from '@arc-ui/components/Columns';
8
9
  import { MediaCard } from '@arc-ui/components/MediaCard';
9
10
  import { useMediaQuery } from '@arc-ui/components/use-media-query';
10
11
  import { Grid, GridRow, GridCol } from '@arc-ui/components/Grid';
11
12
  import { Avatar } from '@arc-ui/components/Avatar';
12
- import { Columns, ColumnsCol } from '@arc-ui/components/Columns';
13
13
  import { Icon } from '@arc-ui/components/Icon';
14
14
  import { ButtonV2 } from '@arc-ui/components/ButtonV2';
15
15
  import { Download } from '@arc-ui/components/Download';
@@ -27,10 +27,10 @@ import { TabbedBanner } from '@arc-ui/components/TabbedBanner';
27
27
  import { Tag } from '@arc-ui/components/Tag';
28
28
  import { Toast, ToastNotification } from '@arc-ui/components/Toast';
29
29
  import { VisuallyHidden } from '@arc-ui/components/VisuallyHidden';
30
+ import { SurfaceContext, Surface } from '@arc-ui/components/Surface';
30
31
  import { Visible } from '@arc-ui/components/Visible';
31
32
  import { Spacing } from '@arc-ui/components/Spacing';
32
33
  import ReactPlayer from 'react-player';
33
- import { Surface } from '@arc-ui/components/Surface';
34
34
  import { ContentSwitcher, ContentSwitcherList, ContentSwitcherTab, ContentSwitcherContent } from '@arc-ui/components/ContentSwitcher';
35
35
  import { ContentSwitcherDropdown, ContentSwitcherDropdownContent } from '@arc-ui/components/ContentSwitcherDropdown';
36
36
 
@@ -940,28 +940,30 @@ function requireDebounce () {
940
940
  var debounceExports = requireDebounce();
941
941
  var debounce = /*@__PURE__*/getDefaultExportFromCjs(debounceExports);
942
942
 
943
- var styles$r = {"section-header":"SectionHeading-module_section-header__iB07I","section-header--hasImage":"SectionHeading-module_section-header--hasImage__Ka3T7","section-header--isCentered":"SectionHeading-module_section-header--isCentered__pz0V9","section-header--padded":"SectionHeading-module_section-header--padded__0FXP2"};
943
+ var styles$r = {"sectionHeading--hasImage":"SectionHeading-module_sectionHeading--hasImage__qaz6n","sectionHeading--isCentered":"SectionHeading-module_sectionHeading--isCentered__i0fR8","sectionHeading-content":"SectionHeading-module_sectionHeading-content__ufB6w"};
944
944
 
945
945
  var SectionHeading = function (_a) {
946
946
  var _b, _c;
947
947
  var heading = _a.heading, content = _a.content, id = _a.id, image = _a.image, isHeadingWordWrap = _a.isHeadingWordWrap, _d = _a.isPadded, isPadded = _d === void 0 ? false : _d, _e = _a.headingLevel, headingLevel = _e === void 0 ? "2" : _e, _f = _a.isCentered, isCentered = _f === void 0 ? false : _f, props = __rest(_a, ["heading", "content", "id", "image", "isHeadingWordWrap", "isPadded", "headingLevel", "isCentered"]);
948
- return (React.createElement("div", __assign({ className: classNames((_b = {},
949
- _b[styles$r["section-header"]] = true,
950
- _b[styles$r["section-header--padded"]] = isPadded,
951
- _b[styles$r["section-header--isCentered"]] = isCentered,
952
- _b)) }, filterAttrs(props)),
953
- React.createElement("div", { className: classNames((_c = {}, _c[styles$r["section-header--hasImage"]] = image, _c)) },
954
- image && (React.createElement("div", null,
955
- React.createElement(Image$2, __assign({}, image, { width: 68, fit: "cover" })))),
956
- React.createElement(Heading, { level: headingLevel, id: id, size: "xl", isWordWrap: isHeadingWordWrap }, heading)),
957
- content && (React.createElement(React.Fragment, null,
958
- React.createElement(VerticalSpace, { size: "24" }),
959
- React.createElement(Text, { size: "l", elementType: "p" }, content)))));
948
+ return (React.createElement(Columns, null,
949
+ React.createElement(ColumnsCol, { spanM: isPadded ? 9 : 12 },
950
+ React.createElement("div", __assign({ className: classNames((_b = {},
951
+ _b[styles$r["sectionHeading--isCentered"]] = isCentered,
952
+ _b)) }, filterAttrs(props)),
953
+ React.createElement("div", { className: classNames((_c = {},
954
+ _c[styles$r["sectionHeading--hasImage"]] = image,
955
+ _c)) },
956
+ image && React.createElement(Image$2, __assign({}, image, { width: 68, fit: "cover" })),
957
+ React.createElement(Heading, { level: headingLevel, id: id, size: "xl", isWordWrap: isHeadingWordWrap }, heading)),
958
+ content && (React.createElement("div", { className: styles$r["sectionHeading-content"] },
959
+ React.createElement(VerticalSpace, { size: "24" }),
960
+ React.createElement(Text, { size: "l", elementType: "p" }, content))),
961
+ React.createElement(VerticalSpace, { size: "40" })))));
960
962
  };
961
963
 
962
964
  /**
963
965
  * Do not edit directly
964
- * Generated on Tue, 21 Apr 2026 10:23:52 GMT
966
+ * Generated on Thu, 21 May 2026 15:46:02 GMT
965
967
  */
966
968
  var ArcSizeBreakpointsXs = "320px";
967
969
  var ArcSizeBreakpointsS = "636px";
@@ -1174,17 +1176,19 @@ var CopyLead = function (_a) {
1174
1176
  return null;
1175
1177
  };
1176
1178
 
1177
- var styles$n = {"headingContainer":"DownloadList-module_headingContainer__PNio8"};
1179
+ var styles$n = {"downloadList-below":"DownloadList-module_downloadList-below__21q6i","downloadList-right":"DownloadList-module_downloadList-right__mHYHL"};
1178
1180
 
1179
1181
  var DownloadList = function (_a) {
1180
- var heading = _a.heading, id = _a.id, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, isHeadingWordWrap = _a.isHeadingWordWrap, content = _a.content, downloads = _a.downloads, props = __rest(_a, ["heading", "id", "headingLevel", "isHeadingWordWrap", "content", "downloads"]);
1182
+ var heading = _a.heading, id = _a.id, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, isHeadingWordWrap = _a.isHeadingWordWrap, content = _a.content, downloads = _a.downloads, _c = _a.alignment, alignment = _c === void 0 ? "below" : _c, props = __rest(_a, ["heading", "id", "headingLevel", "isHeadingWordWrap", "content", "downloads", "alignment"]);
1181
1183
  return (React.createElement("div", __assign({}, filterAttrs(props)),
1182
- React.createElement("div", { className: styles$n.headingContainer },
1183
- React.createElement(SectionHeading, { id: id, heading: heading, isHeadingWordWrap: isHeadingWordWrap, headingLevel: headingLevel, content: content })),
1184
- React.createElement(VerticalSpace, { size: "40" }),
1185
- downloads.map(function (downloadProps, i) { return (React.createElement(React.Fragment, { key: "download-".concat(i) },
1186
- React.createElement(Download, __assign({}, downloadProps)),
1187
- i !== downloads.length - 1 && React.createElement(VerticalSpace, { size: "16" }))); })));
1184
+ React.createElement(Columns, null,
1185
+ React.createElement(ColumnsCol, { spanL: alignment === "right" ? 6 : 9, spanM: 9, span: 12 },
1186
+ " ",
1187
+ React.createElement(SectionHeading, { id: id, heading: heading, isHeadingWordWrap: isHeadingWordWrap, headingLevel: headingLevel, content: content })),
1188
+ React.createElement(ColumnsCol, { spanL: alignment === "right" ? 6 : 8, spanM: 9, spanS: 12 },
1189
+ React.createElement("div", { className: styles$n["downloadList-".concat(alignment)] }, downloads.map(function (downloadProps, i) { return (React.createElement(React.Fragment, { key: "download-".concat(i, "-").concat(downloadProps.name) },
1190
+ React.createElement(Download, __assign({}, downloadProps)),
1191
+ i !== downloads.length - 1 && React.createElement(VerticalSpace, { size: "16" }))); }))))));
1188
1192
  };
1189
1193
 
1190
1194
  var styles$m = {"FAQs":"FAQs-module_FAQs__FtQr4","linkListSection":"FAQs-module_linkListSection__RdQkU","linkListTitle":"FAQs-module_linkListTitle__RVni3","linkList":"FAQs-module_linkList__dPyXj","linkListItem":"FAQs-module_linkListItem__S83CL","linkList--padded":"FAQs-module_linkList--padded__8Paxc"};
@@ -3555,7 +3559,7 @@ var Highlights = function (_a) {
3555
3559
  : undefined, iconPosition: (_d = cta.iconPosition) !== null && _d !== void 0 ? _d : "beforeText" })))));
3556
3560
  };
3557
3561
 
3558
- var styles$j = {"PromoListing":"PromoListing-module_PromoListing__6ensv","carouselSlide":"PromoListing-module_carouselSlide__AMTPF","cardGrid":"PromoListing-module_cardGrid__llf73","cardWrapper":"PromoListing-module_cardWrapper__I4iwh","cardWrapperCarousel":"PromoListing-module_cardWrapperCarousel__t-2qM","columns-3":"PromoListing-module_columns-3__y6jWS","columns-2":"PromoListing-module_columns-2__GRFxb"};
3562
+ var styles$j = {"PromoListing":"PromoListing-module_PromoListing__6ensv","CarouselWrapper":"PromoListing-module_CarouselWrapper__iYwWp","carouselSlide":"PromoListing-module_carouselSlide__AMTPF","cardGrid":"PromoListing-module_cardGrid__llf73","cardWrapper":"PromoListing-module_cardWrapper__I4iwh","cardWrapperCarousel":"PromoListing-module_cardWrapperCarousel__t-2qM","columns-3":"PromoListing-module_columns-3__y6jWS","columns-2":"PromoListing-module_columns-2__GRFxb"};
3559
3563
 
3560
3564
  /**
3561
3565
  * Do not edit directly
@@ -3681,7 +3685,7 @@ var PromoListing = function (_a) {
3681
3685
  button.label && (React.createElement(React.Fragment, null,
3682
3686
  React.createElement(ButtonV2, __assign({}, button, { icon: button.buttonStyle == "compact" ? BtIconArrowRightFill : undefined, size: "m" })),
3683
3687
  React.createElement(VerticalSpace, { size: "40" }))),
3684
- isCarousel && !isMinWidthArcBreakpointL ? (React.createElement("div", { className: styles$j.promolistingCarouselWrapper },
3688
+ isCarousel && !isMinWidthArcBreakpointL ? (React.createElement("div", { className: styles$j.CarouselWrapper },
3685
3689
  React.createElement(Carousel, { overflow: "visible", itemsPerSlide: 1, behavior: "adaptive", withGutter: false }, cards === null || cards === void 0 ? void 0 : cards.map(function (card, i) { return (React.createElement("div", { key: "promolist-carousel-card-".concat(componentId, "-").concat(i), className: (styles$j.cardWrapperCarousel) }, getCard(card))); })))) : (React.createElement("ul", { className: classNames(styles$j.cardGrid, styles$j["columns-".concat(columns)]) }, cards === null || cards === void 0 ? void 0 : cards.map(function (card, index) { return (React.createElement("li", { key: "promolist-card--".concat(componentId, "-").concat(index) },
3686
3690
  React.createElement("div", { "data-testid": "promoList-card".concat(index), className: styles$j.cardWrapper }, getCard(card)))); })))));
3687
3691
  };
@@ -3895,6 +3899,7 @@ var ProductNavigation = function (_a) {
3895
3899
  var _g = useState(false), hideLessButton = _g[0], setHideLessButton = _g[1];
3896
3900
  var _h = useState(cardsToDisplay), skipLinkCard = _h[0], setSkipLinkCard = _h[1];
3897
3901
  var _j = useState(productList.slice(0, cardsToDisplay)), displayList = _j[0], setDisplayList = _j[1];
3902
+ var _k = useState(false), displaySkipButton = _k[0], setDisplaySkipButton = _k[1];
3898
3903
  var cardRef = useRef(null);
3899
3904
  useEffect(function () {
3900
3905
  if (defaultExpanded) {
@@ -3906,6 +3911,7 @@ var ProductNavigation = function (_a) {
3906
3911
  (_a = cardRef.current) === null || _a === void 0 ? void 0 : _a.focus();
3907
3912
  };
3908
3913
  var clickController = function () {
3914
+ setDisplaySkipButton(true);
3909
3915
  // show more / current list length + increment
3910
3916
  if (displayList.length < productList.length) {
3911
3917
  if (onClickMore)
@@ -3939,8 +3945,8 @@ var ProductNavigation = function (_a) {
3939
3945
  !hideButton && !hideLessButton && (React.createElement(ButtonV2, { label: displayList.length < productList.length
3940
3946
  ? "Show more"
3941
3947
  : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
3942
- displayList.length > cardsToDisplay && (React.createElement(React.Fragment, null,
3943
- React.createElement("div", { id: "skip-link", className: classNames(styles$d["productNavigation-skipLink"]), tabIndex: -1 },
3948
+ hideButton ||
3949
+ (displaySkipButton && displayList.length > cardsToDisplay && (React.createElement("div", { id: "skip-link", className: classNames(styles$d["productNavigation-skipLink"]), tabIndex: -1 },
3944
3950
  React.createElement(ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true })))),
3945
3951
  React.createElement(VisuallyHidden, null,
3946
3952
  React.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
@@ -3977,10 +3983,10 @@ var ActionTile = function (_a) {
3977
3983
  React.createElement("div", { className: styles$b["action-tile-content"] },
3978
3984
  displayIcon && (React.createElement("div", { className: styles$b["action-tile-icon"] },
3979
3985
  React.createElement(Icon, { icon: displayIcon, size: 48 }))),
3980
- React.createElement("h3", { className: styles$b["action-tile-heading"] }, heading)),
3986
+ React.createElement("span", { className: styles$b["action-tile-heading"] }, heading)),
3981
3987
  isActive && (React.createElement("div", { className: styles$b["action-tile-tick"] },
3982
3988
  React.createElement(Icon, { icon: BtIconTickAlt2Px, size: 28 })))));
3983
- return (React.createElement("div", __assign({ className: tileClasses, onClick: onClick }, filterAttrs(props)), content));
3989
+ return (React.createElement("button", __assign({ type: "button", className: tileClasses, onClick: onClick, "aria-pressed": isActive }, filterAttrs(props)), content));
3984
3990
  };
3985
3991
 
3986
3992
  var styles$a = {"link-tile":"LinkTile-module_link-tile__xVUP3","link-tile-content":"LinkTile-module_link-tile-content__H-QN8","link-tile-icon":"LinkTile-module_link-tile-icon__kTMfH","link-tile-text":"LinkTile-module_link-tile-text__0K6zf"};
@@ -3998,10 +4004,10 @@ var LinkTile = function (_a) {
3998
4004
  var styles$9 = {"quick-help":"InlineLinkGroup-module_quick-help__cMTpB","quick-help-label":"InlineLinkGroup-module_quick-help-label__VLKen","quick-help-container":"InlineLinkGroup-module_quick-help-container__IStTk","quick-help-item":"InlineLinkGroup-module_quick-help-item__QTIMl","quick-help-separator":"InlineLinkGroup-module_quick-help-separator__qJE0q","quick-help-separator-line":"InlineLinkGroup-module_quick-help-separator-line__VbCVI"};
3999
4005
 
4000
4006
  var InlineLinkGroup = function (_a) {
4001
- var label = _a.label, links = _a.links, props = __rest(_a, ["label", "links"]);
4007
+ var label = _a.label, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, links = _a.links, props = __rest(_a, ["label", "headingLevel", "links"]);
4002
4008
  return (React.createElement("div", __assign({ className: styles$9["quick-help"] }, filterAttrs(props)),
4003
4009
  label && (React.createElement("div", { className: styles$9["quick-help-label"] },
4004
- React.createElement(Heading, { size: "xxs", fontStyle: "overline" }, label))),
4010
+ React.createElement(Heading, { level: headingLevel, size: "xxs", fontStyle: "overline" }, label))),
4005
4011
  React.createElement("ul", { className: styles$9["quick-help-container"] }, links.map(function (link, index) { return (React.createElement(React.Fragment, { key: index },
4006
4012
  React.createElement("li", { className: styles$9["quick-help-item"] },
4007
4013
  React.createElement(Link, { href: link.href, onClick: link.onClick, "aria-label": link.ariaLabel }, link.label),
@@ -4010,14 +4016,17 @@ var InlineLinkGroup = function (_a) {
4010
4016
  React.createElement("div", { className: styles$9["quick-help-separator-line"] }))))); }))));
4011
4017
  };
4012
4018
 
4013
- var styles$8 = {"thumbnailSignpost":"ThumbnailSignpost-module_thumbnailSignpost__Yf26b","isLink":"ThumbnailSignpost-module_isLink__FucdG","content":"ThumbnailSignpost-module_content__XG9oj","heading":"ThumbnailSignpost-module_heading__mTrpJ","image":"ThumbnailSignpost-module_image__syGZj","thumbnailButton":"ThumbnailSignpost-module_thumbnailButton__Nn-NR","buttonIcon":"ThumbnailSignpost-module_buttonIcon__ydmza"};
4019
+ var styles$8 = {"thumbnailSignpost":"ThumbnailSignpost-module_thumbnailSignpost__Yf26b","isLink":"ThumbnailSignpost-module_isLink__FucdG","onDarkSurface":"ThumbnailSignpost-module_onDarkSurface__F2jUk","content":"ThumbnailSignpost-module_content__XG9oj","heading":"ThumbnailSignpost-module_heading__mTrpJ","image":"ThumbnailSignpost-module_image__syGZj","thumbnailButton":"ThumbnailSignpost-module_thumbnailButton__Nn-NR","buttonIcon":"ThumbnailSignpost-module_buttonIcon__ydmza"};
4014
4020
 
4015
4021
  /** Use `ThumbnailSignpost` to highlight key information or navigation points with an accompanying thumbnail image or icon. */
4016
4022
  var ThumbnailSignpost = function (_a) {
4017
4023
  var _b;
4018
4024
  var text = _a.text, title = _a.title, img = _a.img, onClick = _a.onClick, buttonLabel = _a.buttonLabel, props = __rest(_a, ["text", "title", "img", "onClick", "buttonLabel"]);
4025
+ var surface = useContext(SurfaceContext).surface;
4026
+ var isDarkSurface = surface === "dark";
4019
4027
  return (React.createElement("div", __assign({ className: classNames(styles$8.thumbnailSignpost, (_b = {},
4020
4028
  _b[styles$8.isLink] = onClick,
4029
+ _b[styles$8.onDarkSurface] = isDarkSurface,
4021
4030
  _b)), onClick: onClick, "aria-label": title, tabIndex: onClick ? 0 : -1 }, (onClick && { role: "button" }), filterAttrs(props)),
4022
4031
  img && (React.createElement("div", { className: styles$8.image },
4023
4032
  React.createElement(Image$2, __assign({}, img)))),
@@ -4026,7 +4035,7 @@ var ThumbnailSignpost = function (_a) {
4026
4035
  React.createElement(VerticalSpace, { size: "8" }),
4027
4036
  text,
4028
4037
  buttonLabel && onClick && (React.createElement(React.Fragment, null,
4029
- React.createElement(VerticalSpace, { size: "8" }),
4038
+ React.createElement(VerticalSpace, { size: "32" }),
4030
4039
  React.createElement("div", { className: styles$8.thumbnailButton },
4031
4040
  React.createElement("span", { className: styles$8.buttonIcon, role: "img", style: {
4032
4041
  height: 24,
@@ -4186,7 +4195,8 @@ var BusinessSegmentSwitcher = function (_a) {
4186
4195
  React.createElement("div", { className: styles$2.cardCol },
4187
4196
  content.card3 && React.createElement(InformationCard, __assign({}, content.card3)),
4188
4197
  React.createElement("div", null,
4189
- React.createElement(TypographyCard, { heading: "All ".concat(label.toLowerCase(), " solutions"), text: content.card4.text, label: content.card4.label, url: content.card4.url }))))));
4198
+ React.createElement(TypographyCard, { heading: content.card4.heading ||
4199
+ "All ".concat(label.toLowerCase(), " solutions"), text: content.card4.text, label: content.card4.label, url: content.card4.url, onClick: content.card4.onClick }))))));
4190
4200
  }))),
4191
4201
  React.createElement("div", { className: styles$2.businessSegmentSwitcherMobile },
4192
4202
  React.createElement(ContentSwitcherDropdown, { isInset: true, value: selectedTab, tabs: tabs, isFluid: true, onValueChange: function (value) { return setSelectedTab(value); } }, tabs.map(function (_a, index) {