@arc-ui/community-components 3.0.1 → 3.2.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 (125) hide show
  1. package/.turbo/turbo-build.log +19 -22
  2. package/CHANGELOG.md +30 -0
  3. package/lib/Accordion/Accordion.cjs +2 -2
  4. package/lib/Accordion/Accordion.mjs +2 -2
  5. package/lib/ActionTile/ActionTile.cjs +35 -0
  6. package/lib/ActionTile/ActionTile.mjs +33 -0
  7. package/lib/ActionTile/styles.css +1 -0
  8. package/lib/ArticleSidebar/ArticleSidebar.cjs +68 -58
  9. package/lib/ArticleSidebar/ArticleSidebar.mjs +68 -58
  10. package/lib/ArticleSidebar/styles.css +1 -1
  11. package/lib/Author/Author.cjs +2 -2
  12. package/lib/Author/Author.mjs +2 -2
  13. package/lib/BannerWithTabs/BannerWithTabs.cjs +5 -5
  14. package/lib/BannerWithTabs/BannerWithTabs.mjs +5 -5
  15. package/lib/CopyLead/CopyLead.cjs +12 -12
  16. package/lib/CopyLead/CopyLead.mjs +12 -12
  17. package/lib/DownloadList/DownloadList.cjs +5 -5
  18. package/lib/DownloadList/DownloadList.mjs +5 -5
  19. package/lib/FAQs/FAQs.cjs +16 -12
  20. package/lib/FAQs/FAQs.mjs +16 -12
  21. package/lib/FeaturePost/FeaturePost.cjs +18 -11
  22. package/lib/FeaturePost/FeaturePost.mjs +18 -11
  23. package/lib/HeroLink/HeroLink.cjs +35 -0
  24. package/lib/HeroLink/HeroLink.mjs +33 -0
  25. package/lib/HeroLink/styles.css +1 -0
  26. package/lib/Highlights/Highlights.cjs +9 -16
  27. package/lib/Highlights/Highlights.mjs +7 -14
  28. package/lib/LinkTile/LinkTile.cjs +21 -0
  29. package/lib/LinkTile/LinkTile.mjs +19 -0
  30. package/lib/LinkTile/styles.css +1 -0
  31. package/lib/ProductNavigation/ProductNavigation.cjs +10 -13
  32. package/lib/ProductNavigation/ProductNavigation.mjs +10 -13
  33. package/lib/PromoListing/PromoListing.cjs +17 -9
  34. package/lib/PromoListing/PromoListing.mjs +17 -9
  35. package/lib/PromoListingThumbnailSignpost/PromoListingThumbnailSignpost.cjs +28 -0
  36. package/lib/PromoListingThumbnailSignpost/PromoListingThumbnailSignpost.mjs +26 -0
  37. package/lib/PromoListingThumbnailSignpost/styles.css +1 -0
  38. package/lib/Quote/Quote.cjs +3 -3
  39. package/lib/Quote/Quote.mjs +3 -3
  40. package/lib/SectionHeading/SectionHeading.cjs +3 -3
  41. package/lib/SectionHeading/SectionHeading.mjs +3 -3
  42. package/lib/Statistics/Statistics.cjs +6 -6
  43. package/lib/Statistics/Statistics.mjs +6 -6
  44. package/lib/Summary/Summary.cjs +1 -1
  45. package/lib/Summary/Summary.mjs +1 -1
  46. package/lib/ThumbnailSignpost/ThumbnailSignpost.cjs +15 -0
  47. package/lib/ThumbnailSignpost/ThumbnailSignpost.mjs +9 -0
  48. package/lib/ThumbnailSignpost/styles.css +1 -0
  49. package/lib/_shared/cjs/{Accordion-D5fpUJzm.cjs → Accordion-DfNGOjTm.cjs} +5 -5
  50. package/lib/_shared/cjs/{Author-X47pv31V.cjs → Author-D4dKNQem.cjs} +2 -2
  51. package/lib/_shared/cjs/BtIconArrowAltRight-CLQdP61r.cjs +11 -0
  52. package/lib/_shared/cjs/BtIconArrowRightFill-BVCZv7Lm.cjs +11 -0
  53. package/lib/_shared/cjs/{SectionHeading-DepTV4JA.cjs → SectionHeading-DeSFM0HV.cjs} +5 -5
  54. package/lib/_shared/cjs/ThumbnailSignpost-GkOiwt-Z.cjs +39 -0
  55. package/lib/_shared/cjs/filter-attrs-BizjMsy0.cjs +27 -0
  56. package/lib/_shared/cjs/{index.es-D11PdokQ.cjs → index.es-Dq8bYrbW.cjs} +1 -1
  57. package/lib/_shared/esm/{Accordion-LLwNdzax.mjs → Accordion-cd1oYvBv.mjs} +5 -5
  58. package/lib/_shared/esm/{Author-CydDYCma.mjs → Author-HnYsFTPT.mjs} +2 -2
  59. package/lib/_shared/esm/BtIconArrowAltRight-VH6RTTnL.mjs +9 -0
  60. package/lib/_shared/esm/BtIconArrowRightFill-D0zKgk3B.mjs +9 -0
  61. package/lib/_shared/esm/{SectionHeading-BayinGP_.mjs → SectionHeading-CpDLCndw.mjs} +5 -5
  62. package/lib/_shared/esm/ThumbnailSignpost-BeRiXbUp.mjs +37 -0
  63. package/lib/_shared/esm/filter-attrs-DZ7RCEZm.mjs +25 -0
  64. package/lib/_shared/esm/{index.es-C4PyYMjI.mjs → index.es-Bfdys5__.mjs} +1 -1
  65. package/lib/index.cjs +378 -227
  66. package/lib/index.cjs.map +1 -1
  67. package/lib/index.d.cts +190 -26
  68. package/lib/index.d.mts +190 -26
  69. package/lib/index.mjs +374 -228
  70. package/lib/index.mjs.map +1 -1
  71. package/lib/styles.css +1 -1
  72. package/package.json +13 -13
  73. package/src/components/Accordion/Accordion.tsx +3 -2
  74. package/src/components/Accordion/components/AccordionDisclosureList/AccordionDisclosureList.tsx +3 -3
  75. package/src/components/Accordion/components/AccordionHeading/AccordionHeading.tsx +3 -4
  76. package/src/components/ActionTile/ActionTile.module.css +89 -0
  77. package/src/components/ActionTile/ActionTile.tsx +70 -0
  78. package/src/components/ActionTile/index.ts +1 -0
  79. package/src/components/ArticleSidebar/ArticleSidebar.module.css +6 -0
  80. package/src/components/ArticleSidebar/ArticleSidebar.tsx +115 -85
  81. package/src/components/ArticleSidebar/types/link-section.ts +2 -1
  82. package/src/components/ArticleSidebar/types/share-button.ts +1 -1
  83. package/src/components/ArticleSidebar/types/share.ts +5 -1
  84. package/src/components/ArticleSidebar/types/text-section.ts +3 -2
  85. package/src/components/ArticleSidebar/types/topic.ts +2 -2
  86. package/src/components/Author/Author.tsx +2 -2
  87. package/src/components/BannerWithTabs/BannerWithTabs.tsx +9 -3
  88. package/src/components/CopyLead/CopyLead.tsx +21 -5
  89. package/src/components/CopyLead/components/MediaContent/MediaContent.tsx +10 -1
  90. package/src/components/CopyLead/templates/Content/Content.tsx +4 -0
  91. package/src/components/CopyLead/templates/Media/Media.tsx +10 -1
  92. package/src/components/CopyLead/types/copy-lead-button.ts +1 -1
  93. package/src/components/CopyLead/types/copy-lead-image.ts +1 -1
  94. package/src/components/DownloadList/DownloadList.tsx +4 -0
  95. package/src/components/FAQs/FAQs.tsx +20 -9
  96. package/src/components/FeaturePost/FeaturePost.tsx +27 -6
  97. package/src/components/FeaturePost/components/Image/Image.tsx +31 -7
  98. package/src/components/FeaturePost/types/feature-post-app-button-footer.ts +1 -1
  99. package/src/components/FeaturePost/types/feature-post-cta-footer.ts +2 -1
  100. package/src/components/FeaturePost/types/feature-post-image.ts +3 -1
  101. package/src/components/HeroLink/HeroLink.module.css +44 -0
  102. package/src/components/HeroLink/HeroLink.tsx +136 -0
  103. package/src/components/HeroLink/index.ts +2 -0
  104. package/src/components/Highlights/Highlights.tsx +6 -1
  105. package/src/components/Highlights/components/HighlightItem/HighlightItem.tsx +1 -0
  106. package/src/components/Highlights/types/highlight-link.ts +1 -0
  107. package/src/components/LinkTile/LinkTile.module.css +57 -0
  108. package/src/components/LinkTile/LinkTile.tsx +38 -0
  109. package/src/components/LinkTile/index.ts +1 -0
  110. package/src/components/ProductNavigation/ProductNavigation.tsx +10 -11
  111. package/src/components/ProductNavigation/types/product-list.ts +1 -8
  112. package/src/components/PromoListing/PromoListing.tsx +67 -3
  113. package/src/components/PromoListingThumbnailSignpost/PromoListingThumbnailSignpost.module.css +54 -0
  114. package/src/components/PromoListingThumbnailSignpost/PromoListingThumbnailSignpost.tsx +53 -0
  115. package/src/components/PromoListingThumbnailSignpost/index.ts +4 -0
  116. package/src/components/Quote/Quote.tsx +2 -2
  117. package/src/components/SectionHeading/SectionHeading.tsx +17 -7
  118. package/src/components/Statistics/Statistics.tsx +6 -2
  119. package/src/components/ThumbnailSignpost/ThumbnailSignpost.module.css +112 -0
  120. package/src/components/ThumbnailSignpost/ThumbnailSignpost.tsx +100 -0
  121. package/src/components/ThumbnailSignpost/index.ts +4 -0
  122. package/src/components/index.ts +5 -0
  123. package/versions.json +1 -1
  124. package/lib/_shared/cjs/filter-data-attrs-ajtUvDAC.cjs +0 -15
  125. package/lib/_shared/esm/filter-data-attrs-V7cbJuwS.mjs +0 -13
package/lib/index.cjs CHANGED
@@ -122,14 +122,26 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
122
122
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
123
123
  };
124
124
 
125
- var dataAttrRe = /^(data-.*)$/;
126
- var filterDataAttrs = function (props) {
125
+ /**
126
+ * Filters out attributes from the given props object based on a pattern.
127
+ *
128
+ * This function extracts all properties that match either the `data-*` or `aria-*` attribute patterns
129
+ * and returns a new object containing only those properties.
130
+ *
131
+ * @param props - The object containing properties to filter.
132
+ * @returns A new object containing only the matched attributes (`data-*` and `aria-*`) from the input props.
133
+ */
134
+ var attributePrefixes = ["data-", "aria-"];
135
+ var filterAttrs = function (props) {
127
136
  var filteredProps = {};
128
- for (var prop in props) {
137
+ var _loop_1 = function (prop) {
129
138
  if (Object.prototype.hasOwnProperty.call(props, prop) &&
130
- dataAttrRe.test(prop)) {
139
+ attributePrefixes.some(function (prefix) { return prop.startsWith(prefix); })) {
131
140
  filteredProps[prop] = props[prop];
132
141
  }
142
+ };
143
+ for (var prop in props) {
144
+ _loop_1(prop);
133
145
  }
134
146
  return filteredProps;
135
147
  };
@@ -225,17 +237,17 @@ function requireClassnames () {
225
237
  var classnamesExports = requireClassnames();
226
238
  var classNames = /*@__PURE__*/getDefaultExportFromCjs(classnamesExports);
227
239
 
228
- var styles$h = {"accordion-header":"AccordionHeading-module_accordion-header__8s12f","accordion-header--hasImage":"AccordionHeading-module_accordion-header--hasImage__wbDjW","accordion-header--padded":"AccordionHeading-module_accordion-header--padded__me1JY","accordion-header--headingSizeM":"AccordionHeading-module_accordion-header--headingSizeM__amLfy"};
240
+ var styles$m = {"accordion-header":"AccordionHeading-module_accordion-header__8s12f","accordion-header--hasImage":"AccordionHeading-module_accordion-header--hasImage__wbDjW","accordion-header--padded":"AccordionHeading-module_accordion-header--padded__me1JY","accordion-header--headingSizeM":"AccordionHeading-module_accordion-header--headingSizeM__amLfy"};
229
241
 
230
242
  var AccordionHeading = function (_a) {
231
243
  var _b, _c;
232
244
  var heading = _a.heading, content = _a.content, id = _a.id, _d = _a.isPadded, isPadded = _d === void 0 ? false : _d, _e = _a.headingLevel, headingLevel = _e === void 0 ? "2" : _e, _f = _a.headingSize, headingSize = _f === void 0 ? "xl" : _f, image = _a.image, props = __rest(_a, ["heading", "content", "id", "isPadded", "headingLevel", "headingSize", "image"]);
233
245
  return (React.createElement("div", __assign({ className: classNames((_b = {},
234
- _b[styles$h["accordion-header"]] = true,
235
- _b[styles$h["accordion-header--padded"]] = isPadded,
236
- _b[styles$h["accordion-header--headingSizeM"]] = headingSize === "m",
237
- _b)) }, filterDataAttrs(props)),
238
- React.createElement("div", { className: classNames((_c = {}, _c[styles$h["accordion-header--hasImage"]] = image, _c)) },
246
+ _b[styles$m["accordion-header"]] = true,
247
+ _b[styles$m["accordion-header--padded"]] = isPadded,
248
+ _b[styles$m["accordion-header--headingSizeM"]] = headingSize === "m",
249
+ _b)) }, filterAttrs(props)),
250
+ React.createElement("div", { className: classNames((_c = {}, _c[styles$m["accordion-header--hasImage"]] = image, _c)) },
239
251
  image && (React.createElement("div", null,
240
252
  React.createElement(Image$2.Image, __assign({}, image, { width: 68, fit: "cover" })))),
241
253
  React.createElement(Heading.Heading, { level: headingLevel, id: id, size: headingSize }, heading)),
@@ -244,86 +256,86 @@ var AccordionHeading = function (_a) {
244
256
  React.createElement(Text.Text, { size: "l", elementType: "p" }, content)))));
245
257
  };
246
258
 
247
- var styles$g = {"AccordionDisclosureListItem":"AccordionDisclosureList-module_AccordionDisclosureListItem__p8LIT"};
259
+ var styles$l = {"AccordionDisclosureListItem":"AccordionDisclosureList-module_AccordionDisclosureListItem__p8LIT"};
248
260
 
249
261
  var AccordionDisclosureList = function (_a) {
250
262
  var disclosureList = _a.disclosureList;
251
263
  return (React.createElement("ul", null, disclosureList.map(function (_a) {
252
264
  var children = _a.children, summary = _a.summary, _b = _a.isOpen, isOpen = _b === void 0 ? false : _b, _c = _a.indentDetails, indentDetails = _c === void 0 ? false : _c, headingLevel = _a.headingLevel, id = _a.id, props = __rest(_a, ["children", "summary", "isOpen", "indentDetails", "headingLevel", "id"]);
253
- return (React.createElement("li", { key: id, className: styles$g.AccordionDisclosureListItem },
254
- React.createElement(Disclosure.Disclosure, __assign({ summary: summary, isOpen: isOpen, indentDetails: indentDetails, headingLevel: headingLevel }, filterDataAttrs(props)), children)));
265
+ return (React.createElement("li", { key: id, className: styles$l.AccordionDisclosureListItem, id: id },
266
+ React.createElement(Disclosure.Disclosure, __assign({ summary: summary, isOpen: isOpen, indentDetails: indentDetails, headingLevel: headingLevel }, filterAttrs(props)), children)));
255
267
  })));
256
268
  };
257
269
 
258
- var styles$f = {"Accordion":"Accordion-module_Accordion__LsXTU"};
270
+ var styles$k = {"Accordion":"Accordion-module_Accordion__LsXTU"};
259
271
 
260
272
  /**
261
273
  * Use the `Accordion` component to package together a title, content and a number of disclosure components into one section (maximum 10).
262
274
  */
263
275
  var Accordion = function (_a) {
264
276
  var heading = _a.heading, headingLevel = _a.headingLevel, headingSize = _a.headingSize, content = _a.content, id = _a.id, disclosureList = _a.disclosureList, props = __rest(_a, ["heading", "headingLevel", "headingSize", "content", "id", "disclosureList"]);
265
- return (React.createElement("div", __assign({ className: styles$f.Accordion }, filterDataAttrs(props)),
277
+ return (React.createElement("div", __assign({ className: styles$k.Accordion }, filterAttrs(props)),
266
278
  React.createElement(AccordionHeading, { isPadded: true, id: id, "data-testid": "Accordion-header", heading: heading, headingLevel: headingLevel, headingSize: headingSize, content: content }),
267
279
  React.createElement(AccordionDisclosureList, { disclosureList: disclosureList })));
268
280
  };
269
281
 
270
- var styles$e = {"authorContent":"Author-module_authorContent__TBY7b","largeAvatar":"Author-module_largeAvatar__Vco03"};
282
+ var styles$j = {"authorContent":"Author-module_authorContent__TBY7b","largeAvatar":"Author-module_largeAvatar__Vco03"};
271
283
 
272
284
  var Author = function (_a) {
273
285
  var name = _a.name, title = _a.title, _b = _a.avatar, avatar = _b === void 0 ? {} : _b, props = __rest(_a, ["name", "title", "avatar"]);
274
286
  var avatarSizes = ["s", "m", "l", "xl"];
275
287
  avatar.size = avatarSizes.includes(avatar.size || "") ? avatar.size : "m";
276
288
  var isLargeAvatar = avatar.size === "l" || avatar.size === "xl";
277
- return (React.createElement("div", __assign({}, filterDataAttrs(props)),
289
+ return (React.createElement("div", __assign({}, filterAttrs(props)),
278
290
  React.createElement(Grid.Grid, { isFluid: true, isGutterless: true },
279
291
  React.createElement(Grid.GridRow, { align: "center" },
280
292
  React.createElement(Grid.GridCol, { xs: isLargeAvatar ? 12 : "auto" },
281
- React.createElement("div", { className: isLargeAvatar ? styles$e.largeAvatar : undefined },
293
+ React.createElement("div", { className: isLargeAvatar ? styles$j.largeAvatar : undefined },
282
294
  React.createElement(Avatar.Avatar, __assign({}, avatar)))),
283
295
  React.createElement(Grid.GridCol, null,
284
- React.createElement("div", { className: "".concat(!isLargeAvatar && styles$e.authorContent), "data-testid": "authorContent" },
296
+ React.createElement("div", { className: "".concat(!isLargeAvatar && styles$j.authorContent), "data-testid": "authorContent" },
285
297
  React.createElement(Heading.Heading, { size: "xs" }, name),
286
298
  React.createElement(Text.Text, { size: "s" }, title)))))));
287
299
  };
288
300
 
289
301
  /**
290
302
  * Do not edit directly
291
- * Generated on Wed, 18 Feb 2026 11:14:49 GMT
303
+ * Generated on Fri, 06 Mar 2026 15:05:14 GMT
292
304
  */
293
305
  var ArcSizeBreakpointsS = "636px";
294
306
  var ArcSizeBreakpointsM = "768px";
295
307
  var ArcSizeBreakpointsL = "1024px";
296
308
  var ArcSizeBreakpointsXl = "1280px";
297
309
 
298
- var styles$d = {"buttonContainer":"CopyLead-module_buttonContainer__3OaRG","col":"CopyLead-module_col__0Da5H","container":"CopyLead-module_container__I91ym","container--content":"CopyLead-module_container--content__e8LxG","container--media":"CopyLead-module_container--media__QcMWi","container--align-center":"CopyLead-module_container--align-center__Fh1Sd","container--align-top":"CopyLead-module_container--align-top__UIXOZ","list":"CopyLead-module_list__arnJd","listItem":"CopyLead-module_listItem__NscHE","listItemCentered":"CopyLead-module_listItemCentered__Kwdab","listItemIconContainer":"CopyLead-module_listItemIconContainer__dgnhJ","listItemTextContainer":"CopyLead-module_listItemTextContainer__Dl9lw","imgWrapper":"CopyLead-module_imgWrapper__HYP3w","mediaContainer":"CopyLead-module_mediaContainer__PxTnm","content":"CopyLead-module_content__Bja1D","container--reverse":"CopyLead-module_container--reverse__Gq9u8"};
310
+ var styles$i = {"buttonContainer":"CopyLead-module_buttonContainer__3OaRG","col":"CopyLead-module_col__0Da5H","container":"CopyLead-module_container__I91ym","container--content":"CopyLead-module_container--content__e8LxG","container--media":"CopyLead-module_container--media__QcMWi","container--align-center":"CopyLead-module_container--align-center__Fh1Sd","container--align-top":"CopyLead-module_container--align-top__UIXOZ","list":"CopyLead-module_list__arnJd","listItem":"CopyLead-module_listItem__NscHE","listItemCentered":"CopyLead-module_listItemCentered__Kwdab","listItemIconContainer":"CopyLead-module_listItemIconContainer__dgnhJ","listItemTextContainer":"CopyLead-module_listItemTextContainer__Dl9lw","imgWrapper":"CopyLead-module_imgWrapper__HYP3w","mediaContainer":"CopyLead-module_mediaContainer__PxTnm","content":"CopyLead-module_content__Bja1D","container--reverse":"CopyLead-module_container--reverse__Gq9u8"};
299
311
 
300
312
  var MediaContent$1 = function (_a) {
301
- var heading = _a.heading, headingLevel = _a.headingLevel, children = _a.children;
302
- return (React.createElement("div", { className: styles$d.mediaContainer },
303
- React.createElement(Heading.Heading, { level: headingLevel, size: "xl" }, heading),
304
- children && (React.createElement("div", { className: styles$d.content },
313
+ var heading = _a.heading, id = _a.id, headingLevel = _a.headingLevel, isHeadingWordWrap = _a.isHeadingWordWrap, children = _a.children;
314
+ return (React.createElement("div", { className: styles$i.mediaContainer },
315
+ React.createElement(Heading.Heading, { id: id, level: headingLevel, isWordWrap: isHeadingWordWrap, size: "xl" }, heading),
316
+ children && (React.createElement("div", { className: styles$i.content },
305
317
  React.createElement(VerticalSpace.VerticalSpace, { size: "24" }),
306
318
  React.createElement(Text.Text, { size: "l" }, children)))));
307
319
  };
308
320
 
309
321
  var Image$1 = function (_a) {
310
322
  var sources = _a.sources, props = __rest(_a, ["sources"]);
311
- return (React.createElement("div", { className: styles$d.imgWrapper },
323
+ return (React.createElement("div", { className: styles$i.imgWrapper },
312
324
  React.createElement(Image$2.Image, __assign({ fadeOnLoad: true }, props), sources &&
313
325
  sources.map(function (source) { return React.createElement("source", __assign({ key: source.srcSet }, source)); }))));
314
326
  };
315
327
 
316
328
  var IconList = function (_a) {
317
329
  var listItems = _a.listItems, isLgScreen = _a.isLgScreen, _b = _a.headingLevel, headingLevel = _b === void 0 ? "3" : _b;
318
- return (React.createElement("ul", { className: styles$d.list }, listItems.map(function (_a) {
330
+ return (React.createElement("ul", { className: styles$i.list }, listItems.map(function (_a) {
319
331
  var _b;
320
332
  var icon = _a.icon, heading = _a.heading, text = _a.text;
321
- return (React.createElement("li", { key: heading, className: classNames(styles$d.listItem, (_b = {},
322
- _b[styles$d.listItemCentered] = !text,
333
+ return (React.createElement("li", { key: heading, className: classNames(styles$i.listItem, (_b = {},
334
+ _b[styles$i.listItemCentered] = !text,
323
335
  _b)) },
324
- React.createElement("div", { className: styles$d.listItemIconContainer },
336
+ React.createElement("div", { className: styles$i.listItemIconContainer },
325
337
  React.createElement(Icon.Icon, { color: "brand", icon: icon, size: isLgScreen ? 64 : 48 })),
326
- React.createElement("div", { className: styles$d.listItemTextContainer },
338
+ React.createElement("div", { className: styles$i.listItemTextContainer },
327
339
  React.createElement(Heading.Heading, { level: headingLevel, size: "s" }, heading),
328
340
  text && (React.createElement(React.Fragment, null,
329
341
  React.createElement(VerticalSpace.VerticalSpace, { size: "8", sizeL: "16" }),
@@ -331,20 +343,20 @@ var IconList = function (_a) {
331
343
  })));
332
344
  };
333
345
 
334
- var Button = function (props) { return (React.createElement("div", { className: styles$d.buttonContainer },
346
+ var Button = function (props) { return (React.createElement("div", { className: styles$i.buttonContainer },
335
347
  React.createElement(ButtonV2.ButtonV2, __assign({ isFullWidth: true, buttonStyle: "secondary" }, props)))); };
336
348
 
337
349
  var Container = function (_a) {
338
350
  var _b;
339
351
  var children = _a.children, isReverseOrder = _a.isReverseOrder, type = _a.type, alignment = _a.alignment;
340
- return (React.createElement("div", { "data-testid": "copy-lead-container", className: classNames(styles$d.container, styles$d["container--".concat(type)], styles$d["container--align-".concat(alignment)], (_b = {},
341
- _b[styles$d["container--reverse"]] = isReverseOrder,
352
+ return (React.createElement("div", { "data-testid": "copy-lead-container", className: classNames(styles$i.container, styles$i["container--".concat(type)], styles$i["container--align-".concat(alignment)], (_b = {},
353
+ _b[styles$i["container--reverse"]] = isReverseOrder,
342
354
  _b)) }, children));
343
355
  };
344
356
 
345
357
  var Column = function (_a) {
346
358
  var children = _a.children;
347
- return (React.createElement("div", { className: styles$d.col }, children));
359
+ return (React.createElement("div", { className: styles$i.col }, children));
348
360
  };
349
361
 
350
362
  var getListHeadingLevel$1 = function (level) {
@@ -361,7 +373,7 @@ var VideoPlayer$1 = React.lazy(function () {
361
373
  });
362
374
  });
363
375
  var MediaTemplate = function (_a) {
364
- var button = _a.button, heading = _a.heading, headingLevel = _a.headingLevel, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, _b = _a.isReverseOrder, isReverseOrder = _b === void 0 ? false : _b;
376
+ var button = _a.button, id = _a.id, heading = _a.heading, headingLevel = _a.headingLevel, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, isHeadingWordWrap = _a.isHeadingWordWrap, _b = _a.isReverseOrder, isReverseOrder = _b === void 0 ? false : _b;
365
377
  var _c = React.useState(false), isClient = _c[0], setIsClient = _c[1];
366
378
  var isMinWidthArcBreakpointL = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsL, ")"));
367
379
  var isMinWidthArcBreakpointXl = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsXl, ")"));
@@ -372,7 +384,7 @@ var MediaTemplate = function (_a) {
372
384
  return (React.createElement("div", null,
373
385
  !isMinWidthArcBreakpointXl && (React.createElement(Columns.Columns, null,
374
386
  React.createElement(Columns.ColumnsCol, { span: 12, spanM: 9 },
375
- React.createElement(MediaContent$1, { heading: heading, headingLevel: headingLevel }, content)))),
387
+ React.createElement(MediaContent$1, { heading: heading, headingLevel: headingLevel, id: id, isHeadingWordWrap: isHeadingWordWrap }, content)))),
376
388
  React.createElement(Container, { type: "media", isReverseOrder: isReverseOrder, alignment: !isMinWidthArcBreakpointXl ? "top" : "center" },
377
389
  React.createElement(Column, null,
378
390
  isMinWidthArcBreakpointXl && (React.createElement(MediaContent$1, { heading: heading }, content)),
@@ -384,32 +396,32 @@ var MediaTemplate = function (_a) {
384
396
  image && !video && React.createElement(Image$1, __assign({}, image))))));
385
397
  };
386
398
 
387
- var styles$c = {"section-header":"SectionHeading-module_section-header__iB07I","section-header--hasImage":"SectionHeading-module_section-header--hasImage__Ka3T7","section-header--padded":"SectionHeading-module_section-header--padded__0FXP2"};
399
+ var styles$h = {"section-header":"SectionHeading-module_section-header__iB07I","section-header--hasImage":"SectionHeading-module_section-header--hasImage__Ka3T7","section-header--padded":"SectionHeading-module_section-header--padded__0FXP2"};
388
400
 
389
401
  var SectionHeading = function (_a) {
390
402
  var _b, _c;
391
- var heading = _a.heading, content = _a.content, id = _a.id, _d = _a.isPadded, isPadded = _d === void 0 ? false : _d, _e = _a.headingLevel, headingLevel = _e === void 0 ? "2" : _e, image = _a.image, props = __rest(_a, ["heading", "content", "id", "isPadded", "headingLevel", "image"]);
403
+ 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, props = __rest(_a, ["heading", "content", "id", "image", "isHeadingWordWrap", "isPadded", "headingLevel"]);
392
404
  return (React.createElement("div", __assign({ className: classNames((_b = {},
393
- _b[styles$c["section-header"]] = true,
394
- _b[styles$c["section-header--padded"]] = isPadded,
395
- _b)) }, filterDataAttrs(props)),
396
- React.createElement("div", { className: classNames((_c = {}, _c[styles$c["section-header--hasImage"]] = image, _c)) },
405
+ _b[styles$h["section-header"]] = true,
406
+ _b[styles$h["section-header--padded"]] = isPadded,
407
+ _b)) }, filterAttrs(props)),
408
+ React.createElement("div", { className: classNames((_c = {}, _c[styles$h["section-header--hasImage"]] = image, _c)) },
397
409
  image && (React.createElement("div", null,
398
410
  React.createElement(Image$2.Image, __assign({}, image, { width: 68, fit: "cover" })))),
399
- React.createElement(Heading.Heading, { level: headingLevel, id: id, size: "xl" }, heading)),
411
+ React.createElement(Heading.Heading, { level: headingLevel, id: id, size: "xl", isWordWrap: isHeadingWordWrap }, heading)),
400
412
  content && (React.createElement(React.Fragment, null,
401
413
  React.createElement(VerticalSpace.VerticalSpace, { size: "24" }),
402
414
  React.createElement(Text.Text, { size: "l", elementType: "p" }, content)))));
403
415
  };
404
416
 
405
417
  var ContentTemplate = function (_a) {
406
- var button = _a.button, heading = _a.heading, headingLevel = _a.headingLevel, listItems = _a.listItems, content = _a.content;
418
+ var button = _a.button, id = _a.id, heading = _a.heading, headingLevel = _a.headingLevel, isHeadingWordWrap = _a.isHeadingWordWrap, listItems = _a.listItems, content = _a.content;
407
419
  var isMinWidthArcBreakpointM = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsM, ")"));
408
420
  var isMinWidthArcBreakpointL = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsL, ")"));
409
421
  var listHeadingLevel = getListHeadingLevel$1(headingLevel);
410
422
  return (React.createElement(Container, { type: "content", alignment: "top" },
411
423
  React.createElement(Column, null,
412
- React.createElement(SectionHeading, { heading: heading, headingLevel: headingLevel, content: content }),
424
+ React.createElement(SectionHeading, { id: id, heading: heading, headingLevel: headingLevel, isHeadingWordWrap: isHeadingWordWrap, content: content }),
413
425
  button && isMinWidthArcBreakpointM && React.createElement(Button, __assign({}, button))),
414
426
  React.createElement(Column, null,
415
427
  React.createElement(IconList, { listItems: listItems, isLgScreen: isMinWidthArcBreakpointL, headingLevel: listHeadingLevel }),
@@ -420,23 +432,23 @@ var ContentTemplate = function (_a) {
420
432
  * Use `CopyLead` to give supporting information about a page or proposition. It can be used to call out key benefits in bullet points, or link to a supporting explanatory video. An optional CTA can be used to link to further information or trigger a sales or enquiry journey.
421
433
  */
422
434
  var CopyLead = function (_a) {
423
- var button = _a.button, heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, _c = _a.isReverseOrder, isReverseOrder = _c === void 0 ? false : _c, props = __rest(_a, ["button", "heading", "headingLevel", "listItems", "video", "image", "content", "isReverseOrder"]);
435
+ var button = _a.button, heading = _a.heading, id = _a.id, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, isHeadingWordWrap = _a.isHeadingWordWrap, _c = _a.isReverseOrder, isReverseOrder = _c === void 0 ? false : _c, props = __rest(_a, ["button", "heading", "id", "headingLevel", "listItems", "video", "image", "content", "isHeadingWordWrap", "isReverseOrder"]);
424
436
  if (video || image) {
425
- return (React.createElement(MediaTemplate, __assign({ content: content, video: video, image: image, listItems: listItems, heading: heading, headingLevel: headingLevel, button: button, isReverseOrder: isReverseOrder }, filterDataAttrs(props))));
437
+ return (React.createElement(MediaTemplate, __assign({ id: id, content: content, video: video, image: image, listItems: listItems, heading: heading, headingLevel: headingLevel, isHeadingWordWrap: isHeadingWordWrap, button: button, isReverseOrder: isReverseOrder }, filterAttrs(props))));
426
438
  }
427
439
  if (content) {
428
- return (React.createElement(ContentTemplate, __assign({ listItems: listItems, heading: heading, headingLevel: headingLevel, button: button, content: content }, filterDataAttrs(props))));
440
+ return (React.createElement(ContentTemplate, __assign({ id: id, listItems: listItems, heading: heading, headingLevel: headingLevel, isHeadingWordWrap: isHeadingWordWrap, button: button, content: content }, filterAttrs(props))));
429
441
  }
430
442
  return null;
431
443
  };
432
444
 
433
- var styles$b = {"headingContainer":"DownloadList-module_headingContainer__PNio8"};
445
+ var styles$g = {"headingContainer":"DownloadList-module_headingContainer__PNio8"};
434
446
 
435
447
  var DownloadList = function (_a) {
436
- var heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, content = _a.content, downloads = _a.downloads;
448
+ 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;
437
449
  return (React.createElement(React.Fragment, null,
438
- React.createElement("div", { className: styles$b.headingContainer },
439
- React.createElement(SectionHeading, { heading: heading, headingLevel: headingLevel, content: content })),
450
+ React.createElement("div", { className: styles$g.headingContainer },
451
+ React.createElement(SectionHeading, { id: id, heading: heading, isHeadingWordWrap: isHeadingWordWrap, headingLevel: headingLevel, content: content })),
440
452
  React.createElement(VerticalSpace.VerticalSpace, { size: "40" }),
441
453
  downloads.map(function (props, i) { return (React.createElement(React.Fragment, null,
442
454
  React.createElement(Download.Download, __assign({}, props)),
@@ -444,33 +456,37 @@ var DownloadList = function (_a) {
444
456
  i !== downloads.length - 1 && React.createElement(VerticalSpace.VerticalSpace, { size: "16" }))); })));
445
457
  };
446
458
 
447
- var styles$a = {"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"};
459
+ var styles$f = {"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"};
448
460
 
461
+ var scrollToSectionFocusFirstElement = function (item) {
462
+ var _a, _b, _c, _d, _e;
463
+ if (!item.id)
464
+ return;
465
+ (_a = document.getElementById(item.id)) === null || _a === void 0 ? void 0 : _a.scrollIntoView({ behavior: "smooth" });
466
+ // preventScroll avoids interfering with the scroll animation.
467
+ (_e = (_d = document
468
+ .getElementById((_c = (_b = item.disclosureList) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.id)) === null || _d === void 0 ? void 0 : _d.querySelector("summary")) === null || _e === void 0 ? void 0 : _e.focus({ preventScroll: true });
469
+ };
449
470
  var FAQs = function (_a) {
450
471
  var _b;
451
- var heading = _a.heading, content = _a.content, _c = _a.isPadded, isPadded = _c === void 0 ? false : _c, _d = _a.headingLevel, headingLevel = _d === void 0 ? "2" : _d, image = _a.image, _e = _a.type, type = _e === void 0 ? "list" : _e, _f = _a.linkListHeading, linkListHeading = _f === void 0 ? "Skip to section" : _f, accordionData = _a.accordionData, props = __rest(_a, ["heading", "content", "isPadded", "headingLevel", "image", "type", "linkListHeading", "accordionData"]);
452
- return (React.createElement("div", __assign({ className: styles$a.FAQs }, filterDataAttrs(props)),
453
- React.createElement(SectionHeading, { heading: heading, content: content, image: image, headingLevel: headingLevel, isPadded: isPadded }),
454
- type === "listWithLinks" && (React.createElement("div", { className: styles$a.linkListSection },
455
- React.createElement("div", { className: styles$a.linkListTitle },
472
+ var heading = _a.heading, isHeadingWordWrap = _a.isHeadingWordWrap, content = _a.content, id = _a.id, _c = _a.isPadded, isPadded = _c === void 0 ? false : _c, _d = _a.headingLevel, headingLevel = _d === void 0 ? "2" : _d, image = _a.image, type = _a.type, _e = _a.linkListHeading, linkListHeading = _e === void 0 ? "Skip to section" : _e, accordionData = _a.accordionData, props = __rest(_a, ["heading", "isHeadingWordWrap", "content", "id", "isPadded", "headingLevel", "image", "type", "linkListHeading", "accordionData"]);
473
+ return (React.createElement("div", __assign({ className: styles$f.FAQs }, filterAttrs(props)),
474
+ React.createElement(SectionHeading, { id: id, isHeadingWordWrap: isHeadingWordWrap, heading: heading, content: content, image: image, headingLevel: headingLevel, isPadded: isPadded }),
475
+ type === "listWithLinks" && (React.createElement("div", { className: styles$f.linkListSection },
476
+ React.createElement("div", { className: styles$f.linkListTitle },
456
477
  React.createElement(Heading.Heading, { size: "xs" }, linkListHeading)),
457
478
  React.createElement("ul", { className: classNames((_b = {},
458
- _b[styles$a.linkList] = true,
459
- _b[styles$a["linkList--padded"]] = isPadded,
479
+ _b[styles$f.linkList] = true,
480
+ _b[styles$f["linkList--padded"]] = isPadded,
460
481
  _b)) }, accordionData.map(function (item) {
461
482
  var _a;
462
- return (React.createElement("li", { className: styles$a.linkListItem, key: item.heading },
483
+ return (React.createElement("li", { className: styles$f.linkListItem, key: item.heading },
463
484
  React.createElement(Link.Link, { title: item.heading, href: "#".concat(item.id), onClick: function (e) {
464
485
  e.preventDefault();
465
- if (item.id) {
466
- var element = document.getElementById(item.id);
467
- if (element) {
468
- element.scrollIntoView({ behavior: "smooth" });
469
- }
470
- }
486
+ scrollToSectionFocusFirstElement(item);
471
487
  } }, (_a = item.altLinkTitle) !== null && _a !== void 0 ? _a : item.heading)));
472
488
  })))),
473
- type !== "tabs" && accordionData && (React.createElement("ul", { className: styles$a.accordionList }, accordionData.map(function (item) { return (React.createElement("li", { className: styles$a.accordionListItem, key: item.id },
489
+ type !== "tabs" && accordionData && (React.createElement("ul", { className: styles$f.accordionList }, accordionData.map(function (item) { return (React.createElement("li", { className: styles$f.accordionListItem, key: item.id },
474
490
  React.createElement(Accordion, { id: item.id, heading: item.heading, headingLevel: item.headingLevel, content: item.content, disclosureList: item.disclosureList, headingSize: "m" }),
475
491
  React.createElement(VerticalSpace.VerticalSpace, { size: "48", sizeL: "64" }))); }))),
476
492
  type === "tabs" && (React.createElement(Tabs.Tabs, { defaultValue: accordionData[0].heading },
@@ -2667,13 +2683,20 @@ function cleanEscapedString(input) {
2667
2683
  return matched[1].replace(doubleQuoteRegExp, "'");
2668
2684
  }
2669
2685
 
2670
- var styles$9 = {"labelDate":"FeaturePost-module_labelDate__NXOgY","googlePlayButtonWrapper":"FeaturePost-module_googlePlayButtonWrapper__GI-ag","imgWrapper":"FeaturePost-module_imgWrapper__r6omd","featurePost":"FeaturePost-module_featurePost__9jY21","featurePostReversed":"FeaturePost-module_featurePostReversed__WQRXm","contentContainer":"FeaturePost-module_contentContainer__kdus7","col":"FeaturePost-module_col__eW8gY"};
2686
+ var styles$e = {"labelDate":"FeaturePost-module_labelDate__NXOgY","googlePlayButtonWrapper":"FeaturePost-module_googlePlayButtonWrapper__GI-ag","imgWrapper":"FeaturePost-module_imgWrapper__r6omd","featurePost":"FeaturePost-module_featurePost__9jY21","featurePostReversed":"FeaturePost-module_featurePostReversed__WQRXm","contentContainer":"FeaturePost-module_contentContainer__kdus7","col":"FeaturePost-module_col__eW8gY"};
2671
2687
 
2672
2688
  var Image = function (_a) {
2673
- var sources = _a.sources, props = __rest(_a, ["sources"]);
2674
- return (React.createElement("div", { className: styles$9.imgWrapper },
2675
- React.createElement(Image$2.Image, __assign({ fadeOnLoad: true }, props), sources &&
2676
- sources.map(function (source) { return React.createElement("source", __assign({ key: source.srcSet }, source)); }))));
2689
+ var sources = _a.sources, title = _a.title, description = _a.description, props = __rest(_a, ["sources", "title", "description"]);
2690
+ return (React.createElement(React.Fragment, null,
2691
+ React.createElement("div", { className: styles$e.imgWrapper },
2692
+ React.createElement(Image$2.Image, __assign({ fadeOnLoad: true }, props), sources &&
2693
+ sources.map(function (source) { return React.createElement("source", __assign({ key: source.srcSet }, source)); }))),
2694
+ title && (React.createElement(React.Fragment, null,
2695
+ React.createElement(VerticalSpace.VerticalSpace, { size: "24" }),
2696
+ React.createElement(Heading.Heading, { level: "3", size: "s" }, title),
2697
+ description && (React.createElement(React.Fragment, null,
2698
+ React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
2699
+ React.createElement(Text.Text, { size: "m" }, description)))))));
2677
2700
  };
2678
2701
 
2679
2702
  var VideoPlayer = React.lazy(function () {
@@ -2701,27 +2724,27 @@ var MediaContent = function (_a) {
2701
2724
  * */
2702
2725
  var FeaturePost = function (_a) {
2703
2726
  var _b;
2704
- var heading = _a.heading, _c = _a.headingLevel, headingLevel = _c === void 0 ? "2" : _c, label = _a.label, image = _a.image, content = _a.content, footer = _a.footer, video = _a.video, _d = _a.isReverseOrder, isReverseOrder = _d === void 0 ? false : _d, props = __rest(_a, ["heading", "headingLevel", "label", "image", "content", "footer", "video", "isReverseOrder"]);
2727
+ var heading = _a.heading, id = _a.id, _c = _a.headingLevel, headingLevel = _c === void 0 ? "2" : _c, label = _a.label, image = _a.image, content = _a.content, footer = _a.footer, video = _a.video, isHeadingWordWrap = _a.isHeadingWordWrap, _d = _a.isReverseOrder, isReverseOrder = _d === void 0 ? false : _d, props = __rest(_a, ["heading", "id", "headingLevel", "label", "image", "content", "footer", "video", "isHeadingWordWrap", "isReverseOrder"]);
2705
2728
  var isMinWidthArcBreakpointM = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsM, ")"));
2706
- return (React.createElement("div", __assign({ "data-testid": "feature-post", className: classNames(styles$9.featurePost, (_b = {},
2707
- _b[styles$9.featurePostReversed] = isReverseOrder,
2708
- _b)) }, filterDataAttrs(props)),
2709
- React.createElement("div", { className: styles$9.col },
2710
- React.createElement("div", { className: styles$9.contentContainer },
2729
+ return (React.createElement("div", __assign({ "data-testid": "feature-post", className: classNames(styles$e.featurePost, (_b = {},
2730
+ _b[styles$e.featurePostReversed] = isReverseOrder,
2731
+ _b)) }, filterAttrs(props)),
2732
+ React.createElement("div", { className: styles$e.col },
2733
+ React.createElement("div", { className: styles$e.contentContainer },
2711
2734
  label && (React.createElement(Grid.Grid, { isGutterless: true, isFluid: true },
2712
2735
  React.createElement(Grid.GridRow, { align: "baseline" },
2713
2736
  React.createElement(Grid.GridCol, { xs: 12, m: "auto" },
2714
2737
  React.createElement(Heading.Heading, { size: "xxs", fontStyle: "overline" }, label.text)),
2715
2738
  React.createElement(Grid.GridCol, { xs: 12, m: "auto" },
2716
- React.createElement("div", { className: styles$9.labelDate },
2739
+ React.createElement("div", { className: styles$e.labelDate },
2717
2740
  React.createElement(Text.Text, { size: "xs", tone: "muted" }, isDate(label.date) ? (React.createElement("time", { dateTime: format(label.date, "yyyy-MM-dd") }, format(label.date, "d MMMM yyyy"))) : (React.createElement("span", null, label.date)))))),
2718
2741
  React.createElement(VerticalSpace.VerticalSpace, { size: "24" }))),
2719
- React.createElement(Heading.Heading, { level: headingLevel, size: "xl" }, heading),
2742
+ React.createElement(Heading.Heading, { id: id, level: headingLevel, isWordWrap: isHeadingWordWrap, size: "xl" }, heading),
2720
2743
  !isMinWidthArcBreakpointM && (React.createElement("div", { "data-testid": "mobile-img" },
2721
2744
  React.createElement(VerticalSpace.VerticalSpace, { size: "40" }),
2722
2745
  React.createElement(MediaContent, { image: image, video: video }))),
2723
2746
  React.createElement(VerticalSpace.VerticalSpace, { size: "40" }),
2724
- React.createElement(Text.Text, { size: "l" }, content),
2747
+ typeof content === "string" ? (React.createElement(Text.Text, { size: "l" }, content)) : (content),
2725
2748
  (footer === null || footer === void 0 ? void 0 : footer.type) === "cta" && (React.createElement(React.Fragment, null,
2726
2749
  footer.author && (React.createElement(React.Fragment, null,
2727
2750
  React.createElement(VerticalSpace.VerticalSpace, { size: "24" }),
@@ -2735,10 +2758,10 @@ var FeaturePost = function (_a) {
2735
2758
  footer.appStore && (React.createElement(Grid.GridCol, { xs: 12, s: "auto" },
2736
2759
  React.createElement(AppButton.AppButton, { type: "apple-app-store", screenReaderText: footer.appStore.screenReaderText, url: footer.appStore.url }))),
2737
2760
  footer.googlePlay && (React.createElement(Grid.GridCol, { xs: 12, s: "auto" },
2738
- React.createElement("div", { className: styles$9.googlePlayButtonWrapper },
2761
+ React.createElement("div", { className: styles$e.googlePlayButtonWrapper },
2739
2762
  React.createElement(AppButton.AppButton, { type: "google-play", screenReaderText: footer.googlePlay.screenReaderText, url: footer.googlePlay.url })))))))))),
2740
- isMinWidthArcBreakpointM && (React.createElement("div", { className: styles$9.col },
2741
- React.createElement("div", { "data-testid": "desktop-img", className: styles$9.imgContainer },
2763
+ isMinWidthArcBreakpointM && (React.createElement("div", { className: styles$e.col },
2764
+ React.createElement("div", { "data-testid": "desktop-img", className: styles$e.imgContainer },
2742
2765
  React.createElement(MediaContent, { image: image, video: video }))))));
2743
2766
  };
2744
2767
 
@@ -2750,7 +2773,7 @@ var FeaturePost = function (_a) {
2750
2773
  const BtIconArrowRightFill =
2751
2774
  "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M2 16A14 14 0 1 0 16 2 14 14 0 0 0 2 16m16.854-4.354L23.207 16l-4.354 4.354a.5.5 0 0 1-.707-.707l3.147-3.147H9.5a.5.5 0 0 1 0-1h11.793l-3.146-3.146a.5.5 0 0 1 .707-.707'/%3e%3c/svg%3e";
2752
2775
 
2753
- var styles$8 = {"highlights":"Highlights-module_highlights__Hf7Zq","highlightItem":"Highlights-module_highlightItem__-N6le","highlights2Column":"Highlights-module_highlights2Column__6qIuI","highlights3Column":"Highlights-module_highlights3Column__qsCMP"};
2776
+ var styles$d = {"highlights":"Highlights-module_highlights__Hf7Zq","highlightItem":"Highlights-module_highlightItem__-N6le","highlights2Column":"Highlights-module_highlights2Column__6qIuI","highlights3Column":"Highlights-module_highlights3Column__qsCMP"};
2754
2777
 
2755
2778
  var getListHeadingLevel = function (level) {
2756
2779
  var nextLevel = Math.min(parseInt(level) + 1, 6);
@@ -2760,21 +2783,21 @@ var getListHeadingLevel = function (level) {
2760
2783
  var HighlightItem = function (_a) {
2761
2784
  var icon = _a.icon, heading = _a.heading, text = _a.text, link = _a.link, isSmallIcon = _a.isSmallIcon, headingLevel = _a.headingLevel;
2762
2785
  var listHeadingLevel = getListHeadingLevel(headingLevel || "2");
2763
- return (React.createElement("div", { "data-testid": "highlight-item-container", className: styles$8.highlightItem },
2764
- icon && (React.createElement("div", { className: styles$8.Icon },
2786
+ return (React.createElement("div", { "data-testid": "highlight-item-container", className: styles$d.highlightItem },
2787
+ icon && (React.createElement("div", { className: styles$d.Icon },
2765
2788
  React.createElement(Icon.Icon, { "data-testid": "highlight-icon", color: "brand", icon: icon, size: isSmallIcon ? 64 : 76 }))),
2766
2789
  React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
2767
2790
  React.createElement(Heading.Heading, { level: listHeadingLevel, size: "m" }, heading),
2768
2791
  React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
2769
2792
  React.createElement(Text.Text, null, text),
2770
2793
  React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
2771
- link && (React.createElement(Link.Link, { href: link.url, id: link.url, onClick: link.onClick, rel: "", size: "m", target: "_self", title: link.textLink }, link.textLink))));
2794
+ link && (React.createElement(Link.Link, { href: link.url, id: link.url, "aria-label": link.ariaLabel, onClick: link.onClick, rel: "", size: "m", target: "_self", title: link.textLink }, link.textLink))));
2772
2795
  };
2773
2796
 
2774
2797
  var HighlightList = function (_a) {
2775
2798
  var listItems = _a.listItems, columns = _a.columns, isSmallIcon = _a.isSmallIcon, headingLevel = _a.headingLevel;
2776
2799
  var id = React.useId();
2777
- return (React.createElement("div", { "data-testid": "highlights-list", className: classNames(styles$8.highlights, styles$8["highlights".concat(columns, "Column")]) }, listItems.map(function (_a, i) {
2800
+ return (React.createElement("div", { "data-testid": "highlights-list", className: classNames(styles$d.highlights, styles$d["highlights".concat(columns, "Column")]) }, listItems.map(function (_a, i) {
2778
2801
  var icon = _a.icon, heading = _a.heading, text = _a.text, link = _a.link;
2779
2802
  return (React.createElement(HighlightItem, { key: "highlight-".concat(id, "-").concat(i), icon: icon, heading: heading, text: text, link: link, isSmallIcon: isSmallIcon, headingLevel: headingLevel }));
2780
2803
  })));
@@ -2787,28 +2810,76 @@ var HighlightList = function (_a) {
2787
2810
  */
2788
2811
  var Highlights = function (_a) {
2789
2812
  var _b, _c, _d;
2790
- var heading = _a.heading, headingLevel = _a.headingLevel, content = _a.content, listItems = _a.listItems, _e = _a.columns, columns = _e === void 0 ? "2" : _e, cta = _a.cta;
2813
+ var heading = _a.heading, headingLevel = _a.headingLevel, id = _a.id, isHeadingWordWrap = _a.isHeadingWordWrap, content = _a.content, listItems = _a.listItems, _e = _a.columns, columns = _e === void 0 ? "2" : _e, cta = _a.cta;
2791
2814
  var isMaxWidthArcBreakpointXs = useMediaQuery.useMediaQuery("(max-width: 767px)");
2792
2815
  return (React.createElement("div", null,
2793
- React.createElement(SectionHeading, { isPadded: true, "data-testid": "highlights-header", heading: heading, headingLevel: headingLevel, content: content }),
2816
+ React.createElement(SectionHeading, { isPadded: true, id: id, "data-testid": "highlights-header", heading: heading, headingLevel: headingLevel, isHeadingWordWrap: isHeadingWordWrap, content: content }),
2794
2817
  React.createElement(HighlightList, { "data-testid": "highlights-list-container", listItems: listItems, columns: columns, isSmallIcon: isMaxWidthArcBreakpointXs, headingLevel: headingLevel }),
2795
2818
  cta && (React.createElement(React.Fragment, null,
2796
2819
  React.createElement(VerticalSpace.VerticalSpace, { size: "24" }),
2797
- React.createElement(ButtonV2.ButtonV2, { label: cta.label, href: cta.href, onClick: cta.onClick, size: "m", buttonStyle: cta.buttonStyle, icon: cta.buttonStyle === "compact"
2820
+ React.createElement(ButtonV2.ButtonV2, { label: cta.label, href: cta.href, onClick: cta.onClick, size: "m", ariaLabel: cta.ariaLabel, buttonStyle: cta.buttonStyle, icon: cta.buttonStyle === "compact"
2798
2821
  ? ((_b = cta.icon) !== null && _b !== void 0 ? _b : BtIconArrowRightFill)
2799
2822
  : undefined, iconActive: cta.buttonStyle === "compact"
2800
2823
  ? ((_c = cta.iconActive) !== null && _c !== void 0 ? _c : BtIconArrowRightFill)
2801
2824
  : undefined, iconPosition: (_d = cta.iconPosition) !== null && _d !== void 0 ? _d : "beforeText" })))));
2802
2825
  };
2803
2826
 
2804
- var styles$7 = {"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"};
2827
+ var styles$c = {"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"};
2828
+
2829
+ /**
2830
+ * Do not edit directly
2831
+ * Generated file
2832
+ */
2833
+
2834
+ const ArcIconSocialLinkedin =
2835
+ "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M25.856 25.86H21.71v-6.496c0-1.55-.032-3.544-2.161-3.544-2.162 0-2.492 1.686-2.492 3.43v6.61H12.91V12.5h3.983v1.821h.053c.557-1.05 1.91-2.158 3.932-2.158 4.201 0 4.978 2.765 4.978 6.364v7.334zM8.226 10.673a2.406 2.406 0 0 1-2.406-2.41 2.408 2.408 0 1 1 2.407 2.41zm2.08 15.189H6.148V12.5h4.158v13.36zM27.929 2H4.066C2.924 2 2 2.903 2 4.017v23.966C2 29.098 2.924 30 4.066 30h23.86c1.14 0 2.074-.902 2.074-2.017V4.017C30 2.903 29.067 2 27.926 2z'/%3e%3c/svg%3e";
2836
+
2837
+ /**
2838
+ * Do not edit directly
2839
+ * Generated file
2840
+ */
2841
+
2842
+ const ArcIconSocialX =
2843
+ "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M24.034 3h4.278l-9.343 10.639L30 28.103h-8.64l-6.781-8.768-7.739 8.768H2.563L12.58 16.738 2 3h8.864l6.107 8.014zm-1.491 22.562h2.364L9.57 5.402H7.009z'/%3e%3c/svg%3e";
2844
+
2845
+ /**
2846
+ * Do not edit directly
2847
+ * Generated file
2848
+ */
2849
+
2850
+ const BtIconArrowAltRight =
2851
+ "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M18.854 11.646a.5.5 0 0 0-.707.707l3.146 3.147H9.5a.5.5 0 0 0 0 1h11.793l-3.146 3.146a.5.5 0 1 0 .707.707L23.207 16Z'/%3e%3c/svg%3e";
2852
+
2853
+ /**
2854
+ * Do not edit directly
2855
+ * Generated file
2856
+ */
2857
+
2858
+ const BtIconEmailUnread =
2859
+ "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M29 6H3a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h26a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1m0 1v1.716l-11 7.616a3.52 3.52 0 0 1-3.984 0L3 8.705V7Zm0 2.933v12.15l-8.775-6.075Zm-17.208 6.075L3 22.095V9.922ZM3 25v-1.689l9.67-6.695.777.538a4.52 4.52 0 0 0 5.123 0l.776-.538L29 23.3V25Z'/%3e%3c/svg%3e";
2860
+
2861
+ /**
2862
+ * Do not edit directly
2863
+ * Generated file
2864
+ */
2865
+
2866
+ const BtIconLink =
2867
+ "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath d='M9.959 10.013h2.417a5.99 5.99 0 0 1 5.226 8.915.5.5 0 1 0 .872.49 6.99 6.99 0 0 0-6.098-10.405H9.959a6.989 6.989 0 0 0 0 13.977h1.54a.5.5 0 1 0 0-1h-1.54a5.989 5.989 0 0 1 0-11.977'/%3e%3cpath d='M22.063 9.013h-1.54a.5.5 0 0 0 0 1h1.54a5.989 5.989 0 0 1 0 11.977h-2.417a5.99 5.99 0 0 1-5.227-8.915.5.5 0 1 0-.871-.49 6.99 6.99 0 0 0 6.097 10.405h2.417a6.989 6.989 0 0 0 0-13.977'/%3e%3c/svg%3e";
2868
+
2869
+ /**
2870
+ * Do not edit directly
2871
+ * Generated file
2872
+ */
2873
+
2874
+ const BtIconTickAlt2Px =
2875
+ "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='m13.5 21.914-4.707-4.707a1 1 0 0 1 0-1.414 1.024 1.024 0 0 1 1.414 0l3.293 3.293 8.293-8.293a1 1 0 1 1 1.414 1.414Z'/%3e%3c/svg%3e";
2805
2876
 
2806
2877
  /**
2807
2878
  * Use `PromoListing` to give supporting information about a page or proposition in the form of the card components (`ImpactCard`, `InformationCard`, `MediaCard` and `TypographyCard`).
2808
2879
  */
2809
2880
  var PromoListing = function (_a) {
2810
- var heading = _a.heading, content = _a.content, _b = _a.isCarousel, isCarousel = _b === void 0 ? false : _b, cards = _a.cards, headingLevel = _a.headingLevel, _c = _a.columns, columns = _c === void 0 ? "2" : _c;
2811
- var id = React.useId();
2881
+ var heading = _a.heading, content = _a.content, id = _a.id, _b = _a.isCarousel, isCarousel = _b === void 0 ? false : _b, cards = _a.cards, headingLevel = _a.headingLevel, isHeadingWordWrap = _a.isHeadingWordWrap, _c = _a.columns, columns = _c === void 0 ? "2" : _c, _d = _a.button, button = _d === void 0 ? { buttonStyle: "secondary" } : _d, overlineHeadingLevel = _a.overlineHeadingLevel, overlineLabel = _a.overlineLabel;
2882
+ var componentId = React.useId();
2812
2883
  var isMinWidthArcBreakpointL = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsL, ")"));
2813
2884
  var isMinWidthArcBreakpointM = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsM, ")"));
2814
2885
  var cardAspectRatios = columns === "3" ? "10-16" : "3-4";
@@ -2839,46 +2910,52 @@ var PromoListing = function (_a) {
2839
2910
  var CardComponent = CARD_COMPONENTS[card.type];
2840
2911
  return React.createElement(CardComponent, __assign({}, card, commonProps));
2841
2912
  };
2842
- return (React.createElement("div", { className: styles$7.PromoListing },
2843
- React.createElement(SectionHeading, { isPadded: true, "data-testid": "PromoListing-header", heading: heading, headingLevel: headingLevel, content: content }),
2844
- isCarousel && !isMinWidthArcBreakpointL ? (React.createElement("div", { className: styles$7.promolistingCarouselWrapper },
2845
- React.createElement(Carousel.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(id, "-").concat(i), className: (styles$7.cardWrapperCarousel) }, getCard(card))); })))) : (React.createElement("ul", { className: classNames(styles$7.cardGrid, styles$7["columns-".concat(columns)]) }, cards === null || cards === void 0 ? void 0 : cards.map(function (card, index) { return (React.createElement("li", { key: "promolist-card--".concat(id, "-").concat(index) },
2846
- React.createElement("div", { "data-testid": "promoList-card".concat(index), className: styles$7.cardWrapper }, getCard(card)))); })))));
2913
+ return (React.createElement("div", { className: styles$c.PromoListing },
2914
+ overlineLabel && (React.createElement(React.Fragment, null,
2915
+ React.createElement(Heading.Heading, { level: overlineHeadingLevel, fontStyle: "overline" }, overlineLabel),
2916
+ React.createElement(VerticalSpace.VerticalSpace, { size: "12" }))),
2917
+ React.createElement(SectionHeading, { isPadded: true, id: id, "data-testid": "PromoListing-header", heading: heading, isHeadingWordWrap: isHeadingWordWrap, headingLevel: headingLevel, content: content }),
2918
+ button.label && (React.createElement(React.Fragment, null,
2919
+ React.createElement(ButtonV2.ButtonV2, __assign({}, button, { icon: button.buttonStyle == "compact" ? BtIconArrowRightFill : undefined, size: "m" })),
2920
+ React.createElement(VerticalSpace.VerticalSpace, { size: "40" }))),
2921
+ isCarousel && !isMinWidthArcBreakpointL ? (React.createElement("div", { className: styles$c.promolistingCarouselWrapper },
2922
+ React.createElement(Carousel.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$c.cardWrapperCarousel) }, getCard(card))); })))) : (React.createElement("ul", { className: classNames(styles$c.cardGrid, styles$c["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) },
2923
+ React.createElement("div", { "data-testid": "promoList-card".concat(index), className: styles$c.cardWrapper }, getCard(card)))); })))));
2847
2924
  };
2848
2925
 
2849
- var styles$6 = {"blockQuote":"Quote-module_blockQuote__STj-z","quoteContent":"Quote-module_quoteContent__kWc51","quoteDefault":"Quote-module_quoteDefault__tU5db","quoteSecondary":"Quote-module_quoteSecondary__3Rk3f","quoteIcon":"Quote-module_quoteIcon__HK1TV"};
2926
+ var styles$b = {"blockQuote":"Quote-module_blockQuote__STj-z","quoteContent":"Quote-module_quoteContent__kWc51","quoteDefault":"Quote-module_quoteDefault__tU5db","quoteSecondary":"Quote-module_quoteSecondary__3Rk3f","quoteIcon":"Quote-module_quoteIcon__HK1TV"};
2850
2927
 
2851
2928
  /**
2852
2929
  * Use `Quote` where a quote or testimonial from an existing customer or stakeholder would help build trust and credibility with potential new customers. It's commonly used on product pages where customers would learn about a product or service that we offer.*/
2853
2930
  var Quote = function (_a) {
2854
2931
  var author = _a.author, _b = _a.styling, styling = _b === void 0 ? "Default" : _b, content = _a.content, citeUrl = _a.citeUrl, props = __rest(_a, ["author", "styling", "content", "citeUrl"]);
2855
- return (React.createElement("div", __assign({ className: "community-component--quote", "data-testid": "quote-test" }, filterDataAttrs(props)),
2856
- React.createElement("blockquote", { "data-testid": "style-test", className: classNames(styles$6.blockQuote, styles$6["quote".concat(styling)]), cite: citeUrl },
2857
- React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 100 77", className: styles$6.quoteIcon, "aria-hidden": "true" },
2932
+ return (React.createElement("div", __assign({ className: "community-component--quote", "data-testid": "quote-test" }, filterAttrs(props)),
2933
+ React.createElement("blockquote", { "data-testid": "style-test", className: classNames(styles$b.blockQuote, styles$b["quote".concat(styling)]), cite: citeUrl },
2934
+ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 100 77", className: styles$b.quoteIcon, "aria-hidden": "true" },
2858
2935
  React.createElement("path", { d: "M21.8085 76.4706C15.9574 76.4706 10.8156 74.2732 6.38298 69.8783C2.12766 65.4834 0 58.979 0 50.3651C0 40.5206 3.10284 31.1156 9.30851 22.1501C15.6915 13.1846 25.3546 5.80122 38.2979 0L44.1489 11.3387C37.4113 14.3272 31.7376 18.0189 27.1277 22.4138C22.5177 26.6329 19.6809 31.4672 18.617 36.9168C19.8582 36.741 21.0106 36.6531 22.0745 36.6531C27.7482 36.6531 32.4468 38.499 36.1702 42.1907C40.0709 45.8824 42.0213 50.7167 42.0213 56.6937C42.0213 62.4949 39.9823 67.2414 35.9043 70.9331C32.0035 74.6247 27.305 76.4706 21.8085 76.4706ZM77.6596 76.4706C71.8085 76.4706 66.6667 74.2732 62.234 69.8783C57.9787 65.4834 55.8511 58.979 55.8511 50.3651C55.8511 40.5206 58.9539 31.1156 65.1596 22.1501C71.5425 13.1846 81.2057 5.80122 94.1489 0L100 11.3387C93.2624 14.3272 87.5886 18.0189 82.9787 22.4138C78.3688 26.6329 75.5319 31.4672 74.4681 36.9168C75.7092 36.741 76.8617 36.6531 77.9255 36.6531C83.5993 36.6531 88.2979 38.499 92.0213 42.1907C95.922 45.8824 97.8723 50.7167 97.8723 56.6937C97.8723 62.4949 95.8333 67.2414 91.7553 70.9331C87.8546 74.6247 83.156 76.4706 77.6596 76.4706Z" })),
2859
- React.createElement("p", { className: styles$6.quoteContent }, content)),
2936
+ React.createElement("p", { className: styles$b.quoteContent }, content)),
2860
2937
  author && (React.createElement(Author, { name: author.name, title: author.title, avatar: author.avatar }))));
2861
2938
  };
2862
2939
 
2863
- var styles$5 = {"ruleContainer":"Summary-module_ruleContainer__ydWlG","row":"Summary-module_row__SKV--"};
2940
+ var styles$a = {"ruleContainer":"Summary-module_ruleContainer__ydWlG","row":"Summary-module_row__SKV--"};
2864
2941
 
2865
2942
  var Summary = function (_a) {
2866
2943
  var content = _a.content, _b = _a.noBorder, noBorder = _b === void 0 ? false : _b, _c = _a.headingLevel, headingLevel = _c === void 0 ? "3" : _c;
2867
2944
  var isMinWidthArcBreakpointM = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsM, ")"));
2868
2945
  return (React.createElement(Box.Box, __assign({ isBorderRadius: true }, (!noBorder ? { borderWidth: "thin" } : { elevationLevel: "1" }), { padding: "24" }),
2869
- React.createElement("div", { className: styles$5.row }, content.map(function (_a, i) {
2946
+ React.createElement("div", { className: styles$a.row }, content.map(function (_a, i) {
2870
2947
  var heading = _a.heading, text = _a.text;
2871
2948
  return (React.createElement(React.Fragment, null,
2872
- React.createElement("div", { className: styles$5.col },
2949
+ React.createElement("div", { className: styles$a.col },
2873
2950
  React.createElement(Heading.Heading, { size: "s", level: headingLevel }, heading),
2874
2951
  React.createElement(VerticalSpace.VerticalSpace, { size: "8" }),
2875
2952
  React.createElement(Text.Text, { size: "s" }, text)),
2876
- i !== content.length - 1 && (React.createElement("div", { className: styles$5.ruleContainer },
2953
+ i !== content.length - 1 && (React.createElement("div", { className: styles$a.ruleContainer },
2877
2954
  React.createElement(Rule.Rule, { orientation: isMinWidthArcBreakpointM ? "vertical" : "horizontal" })))));
2878
2955
  }))));
2879
2956
  };
2880
2957
 
2881
- var styles$4 = {"list":"Statistics-module_list__BI-eQ","mutedText":"Statistics-module_mutedText__MR1JM","statWrapper":"Statistics-module_statWrapper__83OnM"};
2958
+ var styles$9 = {"list":"Statistics-module_list__BI-eQ","mutedText":"Statistics-module_mutedText__MR1JM","statWrapper":"Statistics-module_statWrapper__83OnM"};
2882
2959
 
2883
2960
  var getLinkProps = function (link) {
2884
2961
  return link.openInNewTab
@@ -2890,16 +2967,16 @@ var getLinkProps = function (link) {
2890
2967
  };
2891
2968
 
2892
2969
  var Statistics = function (_a) {
2893
- var headingLevel = _a.headingLevel, heading = _a.heading, content = _a.content, statistics = _a.statistics;
2894
- var id = React.useId();
2970
+ var id = _a.id, isHeadingWordWrap = _a.isHeadingWordWrap, headingLevel = _a.headingLevel, heading = _a.heading, content = _a.content, statistics = _a.statistics;
2971
+ var componentId = React.useId();
2895
2972
  return (React.createElement(Columns.Columns, null,
2896
2973
  React.createElement(Columns.ColumnsCol, { spanM: 9 },
2897
- React.createElement(SectionHeading, { heading: heading, headingLevel: headingLevel, content: content }),
2974
+ React.createElement(SectionHeading, { id: id, heading: heading, isHeadingWordWrap: isHeadingWordWrap, headingLevel: headingLevel, content: content }),
2898
2975
  React.createElement(VerticalSpace.VerticalSpace, { size: "16" })),
2899
2976
  React.createElement(Columns.ColumnsCol, { spanL: 9 },
2900
- React.createElement("ul", { className: styles$4.list }, statistics.map(function (_a, i) {
2977
+ React.createElement("ul", { className: styles$9.list }, statistics.map(function (_a, i) {
2901
2978
  var stat = _a.stat, copy = _a.copy, link = _a.link, source = _a.source, sourceUrl = _a.sourceUrl;
2902
- return (React.createElement("li", { key: "statistic-".concat(id, "-").concat(i) },
2979
+ return (React.createElement("li", { key: "statistic-".concat(componentId, "-").concat(i) },
2903
2980
  i !== 0 && (React.createElement(React.Fragment, null,
2904
2981
  React.createElement(VerticalSpace.VerticalSpace, { size: "24", sizeS: "32", sizeXL: "40" }),
2905
2982
  React.createElement(Rule.Rule, null),
@@ -2907,7 +2984,7 @@ var Statistics = function (_a) {
2907
2984
  React.createElement(Columns.Columns, null,
2908
2985
  React.createElement(Columns.ColumnsCol, { spanS: 6, spanM: 8 },
2909
2986
  React.createElement(Align.Align, { vertical: "center" },
2910
- React.createElement("div", { className: styles$4.statWrapper },
2987
+ React.createElement("div", { className: styles$9.statWrapper },
2911
2988
  React.createElement(Heading.Heading, { color: "brand", size: "xxl" }, stat)))),
2912
2989
  React.createElement(Columns.ColumnsCol, { spanS: 6, spanM: 4 },
2913
2990
  React.createElement(Text.Text, null, copy),
@@ -2917,66 +2994,35 @@ var Statistics = function (_a) {
2917
2994
  source && (React.createElement(React.Fragment, null,
2918
2995
  React.createElement(VerticalSpace.VerticalSpace, { size: "12" }),
2919
2996
  React.createElement(Text.Text, { size: "xs" },
2920
- React.createElement("span", { className: styles$4.mutedText }, source)))),
2997
+ React.createElement("span", { className: styles$9.mutedText }, source)))),
2921
2998
  sourceUrl && (React.createElement(Text.Text, { size: "xs" },
2922
- React.createElement("a", { className: styles$4.mutedText, href: sourceUrl }, sourceUrl)))))));
2999
+ React.createElement("a", { className: styles$9.mutedText, href: sourceUrl }, sourceUrl)))))));
2923
3000
  })))));
2924
3001
  };
2925
3002
 
2926
- var styles$3 = {"bannerWithTabsHeadingCentered":"BannerWithTabs-module_bannerWithTabsHeadingCentered__upqEO"};
3003
+ var styles$8 = {"bannerWithTabsHeadingCentered":"BannerWithTabs-module_bannerWithTabsHeadingCentered__upqEO"};
2927
3004
 
2928
3005
  var BannerWithTabs = function (_a) {
2929
3006
  var _b;
2930
- var tabs = _a.tabs, defaultValue = _a.defaultValue, heading = _a.heading, content = _a.content, _c = _a.alignTypography, alignTypography = _c === void 0 ? "left" : _c, minHeight = _a.minHeight, minHeightM = _a.minHeightM;
3007
+ var tabs = _a.tabs, defaultValue = _a.defaultValue, heading = _a.heading, content = _a.content, id = _a.id, isHeadingWordWrap = _a.isHeadingWordWrap, _c = _a.alignTypography, alignTypography = _c === void 0 ? "left" : _c, minHeight = _a.minHeight, minHeightM = _a.minHeightM;
2931
3008
  return (React.createElement(React.Fragment, null,
2932
3009
  React.createElement("div", { className: classNames((_b = {},
2933
- _b[styles$3.bannerWithTabsHeadingCentered] = alignTypography === "center",
3010
+ _b[styles$8.bannerWithTabsHeadingCentered] = alignTypography === "center",
2934
3011
  _b)) },
2935
- React.createElement(SectionHeading, { heading: heading, content: content, isPadded: alignTypography === "left" ? true : false })),
3012
+ React.createElement(SectionHeading, { id: id, isHeadingWordWrap: isHeadingWordWrap, heading: heading, content: content, isPadded: alignTypography === "left" ? true : false })),
2936
3013
  React.createElement(TabbedBanner.TabbedBanner, { minHeight: minHeight, minHeightM: minHeightM, tabs: tabs, defaultValue: defaultValue })));
2937
3014
  };
2938
3015
 
2939
- /**
2940
- * Do not edit directly
2941
- * Generated file
2942
- */
2943
-
2944
- const ArcIconSocialLinkedin =
2945
- "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M25.856 25.86H21.71v-6.496c0-1.55-.032-3.544-2.161-3.544-2.162 0-2.492 1.686-2.492 3.43v6.61H12.91V12.5h3.983v1.821h.053c.557-1.05 1.91-2.158 3.932-2.158 4.201 0 4.978 2.765 4.978 6.364v7.334zM8.226 10.673a2.406 2.406 0 0 1-2.406-2.41 2.408 2.408 0 1 1 2.407 2.41zm2.08 15.189H6.148V12.5h4.158v13.36zM27.929 2H4.066C2.924 2 2 2.903 2 4.017v23.966C2 29.098 2.924 30 4.066 30h23.86c1.14 0 2.074-.902 2.074-2.017V4.017C30 2.903 29.067 2 27.926 2z'/%3e%3c/svg%3e";
2946
-
2947
- /**
2948
- * Do not edit directly
2949
- * Generated file
2950
- */
2951
-
2952
- const ArcIconSocialX =
2953
- "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M24.034 3h4.278l-9.343 10.639L30 28.103h-8.64l-6.781-8.768-7.739 8.768H2.563L12.58 16.738 2 3h8.864l6.107 8.014zm-1.491 22.562h2.364L9.57 5.402H7.009z'/%3e%3c/svg%3e";
2954
-
2955
- /**
2956
- * Do not edit directly
2957
- * Generated file
2958
- */
2959
-
2960
- const BtIconLink =
2961
- "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath d='M9.959 10.013h2.417a5.99 5.99 0 0 1 5.226 8.915.5.5 0 1 0 .872.49 6.99 6.99 0 0 0-6.098-10.405H9.959a6.989 6.989 0 0 0 0 13.977h1.54a.5.5 0 1 0 0-1h-1.54a5.989 5.989 0 0 1 0-11.977'/%3e%3cpath d='M22.063 9.013h-1.54a.5.5 0 0 0 0 1h1.54a5.989 5.989 0 0 1 0 11.977h-2.417a5.99 5.99 0 0 1-5.227-8.915.5.5 0 1 0-.871-.49 6.99 6.99 0 0 0 6.097 10.405h2.417a6.989 6.989 0 0 0 0-13.977'/%3e%3c/svg%3e";
2962
-
2963
- /**
2964
- * Do not edit directly
2965
- * Generated file
2966
- */
2967
-
2968
- const BtIconEmailUnread =
2969
- "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='M29 6H3a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h26a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1m0 1v1.716l-11 7.616a3.52 3.52 0 0 1-3.984 0L3 8.705V7Zm0 2.933v12.15l-8.775-6.075Zm-17.208 6.075L3 22.095V9.922ZM3 25v-1.689l9.67-6.695.777.538a4.52 4.52 0 0 0 5.123 0l.776-.538L29 23.3V25Z'/%3e%3c/svg%3e";
2970
-
2971
- var styles$2 = {"tagGroup":"ArticleSidebar-module_tagGroup__rIPQc","textContent":"ArticleSidebar-module_textContent__3nCfG","shareButtonContainer":"ArticleSidebar-module_shareButtonContainer__iAfHL","shareButton":"ArticleSidebar-module_shareButton__rb-1E"};
3016
+ var styles$7 = {"tagGroup":"ArticleSidebar-module_tagGroup__rIPQc","textContent":"ArticleSidebar-module_textContent__3nCfG","additionalContentContainer":"ArticleSidebar-module_additionalContentContainer__91L4n","shareButtonContainer":"ArticleSidebar-module_shareButtonContainer__iAfHL","shareButton":"ArticleSidebar-module_shareButton__rb-1E"};
2972
3017
 
2973
3018
  /**
2974
3019
  * Use `ArticleSidebar` to provide additional information about the article.
2975
3020
  */
2976
3021
  var ArticleSidebar = function (_a) {
3022
+ var _b;
2977
3023
  var author = _a.author, aboutSection = _a.aboutSection, topics = _a.topics, share = _a.share, additionalContent = _a.additionalContent, linkSection = _a.linkSection;
2978
3024
  var id = React.useId();
2979
- var _b = React.useState(false), showToast = _b[0], setShowToast = _b[1];
3025
+ var _c = React.useState(false), showToast = _c[0], setShowToast = _c[1];
2980
3026
  var url = location.href;
2981
3027
  var copyTextToClipBoard = function () { return __awaiter(void 0, void 0, void 0, function () {
2982
3028
  return __generator(this, function (_a) {
@@ -2989,90 +3035,98 @@ var ArticleSidebar = function (_a) {
2989
3035
  }
2990
3036
  });
2991
3037
  }); };
2992
- var shareButtons = __spreadArray(__spreadArray([
2993
- {
2994
- isButton: true,
2995
- label: "Copy url to clipboard",
2996
- onClick: copyTextToClipBoard,
2997
- icon: BtIconLink,
2998
- },
2999
- {
3000
- label: "Share by email",
3001
- href: "mailto:?subject=".concat(share.articleTitle, "&body=").concat(url),
3002
- icon: BtIconEmailUnread,
3003
- }
3004
- ], (share.linkedin
3005
- ? [
3038
+ var shareButtons = share
3039
+ ? __spreadArray(__spreadArray([
3006
3040
  {
3007
- label: "Share on LinkedIn",
3008
- href: "https://www.linkedin.com/sharing/share-offsite/?url=".concat(url),
3009
- icon: ArcIconSocialLinkedin,
3041
+ isButton: true,
3042
+ onClick: copyTextToClipBoard,
3043
+ icon: BtIconLink,
3044
+ ariaLabel: share.clipboardAriaLabel || "Copy url to clipboard",
3010
3045
  },
3011
- ]
3012
- : []), true), (share.x
3013
- ? [
3014
3046
  {
3015
- label: "Share on x",
3016
- href: "https://twitter.com/intent/tweet?url=".concat(url),
3017
- icon: ArcIconSocialX,
3018
- },
3019
- ]
3020
- : []), true);
3047
+ href: "mailto:?subject=".concat(share.articleTitle, "&body=").concat(url),
3048
+ icon: BtIconEmailUnread,
3049
+ ariaLabel: share.emailAriaLabel || "Share by email",
3050
+ }
3051
+ ], (share.linkedin
3052
+ ? [
3053
+ {
3054
+ href: "https://www.linkedin.com/sharing/share-offsite/?url=".concat(url),
3055
+ icon: ArcIconSocialLinkedin,
3056
+ ariaLabel: share.linkedInAriaLabel || "Share on LinkedIn",
3057
+ },
3058
+ ]
3059
+ : []), true), (share.x
3060
+ ? [
3061
+ {
3062
+ href: "https://twitter.com/intent/tweet?url=".concat(url),
3063
+ icon: ArcIconSocialX,
3064
+ ariaLabel: share.xAriaLabel || "Share on x",
3065
+ },
3066
+ ]
3067
+ : []), true) : [];
3068
+ var hasTopContent = Boolean(author || aboutSection || additionalContent);
3069
+ var hasBottomContent = Boolean(linkSection || topics || share);
3021
3070
  return (React.createElement(React.Fragment, null,
3022
- React.createElement("div", { className: styles$2.textContent },
3071
+ React.createElement("div", { className: classNames((_b = {},
3072
+ _b[styles$7.textContent] = hasTopContent,
3073
+ _b)) },
3023
3074
  author && (React.createElement(React.Fragment, null,
3024
3075
  React.createElement(Author, __assign({}, author, { avatar: __assign(__assign({}, author.avatar), { size: "xl" }) })))),
3025
3076
  aboutSection && (React.createElement(React.Fragment, null,
3026
- React.createElement(VerticalSpace.VerticalSpace, { size: "32" }),
3077
+ author && React.createElement(VerticalSpace.VerticalSpace, { size: "32" }),
3027
3078
  React.createElement(Heading.Heading, { level: aboutSection.headingLevel }, aboutSection.heading),
3028
3079
  React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
3029
3080
  React.createElement(Text.Text, { size: "s" }, aboutSection.content))),
3030
- additionalContent &&
3031
- additionalContent.map(function (_a) {
3081
+ additionalContent && (React.createElement(React.Fragment, null,
3082
+ (author || aboutSection) && React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
3083
+ React.createElement("div", { className: styles$7.additionalContentContainer }, additionalContent.map(function (_a) {
3032
3084
  var heading = _a.heading, headingLevel = _a.headingLevel, content = _a.content;
3033
- return (React.createElement(React.Fragment, null,
3034
- React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
3085
+ return (React.createElement("div", { key: "".concat(id, "-").concat(heading) },
3035
3086
  React.createElement(Heading.Heading, { level: headingLevel, size: "xxs" }, heading),
3036
3087
  React.createElement(Text.Text, { size: "s" }, content)));
3037
- })),
3038
- (author || aboutSection || additionalContent) && (React.createElement("div", { "data-testid": "content-rule" },
3088
+ }))))),
3089
+ hasTopContent && hasBottomContent && (React.createElement("div", { "data-testid": "text-content-rule" },
3039
3090
  React.createElement(VerticalSpace.VerticalSpace, { size: "32" }),
3040
3091
  React.createElement(Rule.Rule, null),
3041
3092
  React.createElement(VerticalSpace.VerticalSpace, { size: "32" }))),
3042
- React.createElement(Heading.Heading, { level: linkSection.headingLevel }, linkSection.heading),
3043
- linkSection.links.map(function (_a) {
3044
- var text = _a.text, url = _a.url;
3045
- return (React.createElement(React.Fragment, null,
3046
- React.createElement(VerticalSpace.VerticalSpace, { size: "8" }),
3047
- React.createElement("div", { key: "".concat(id, "-").concat(url) },
3048
- React.createElement(Link.Link, { size: "s", href: url }, text))));
3049
- }),
3050
- React.createElement(VerticalSpace.VerticalSpace, { size: "32" }),
3093
+ linkSection && (React.createElement(React.Fragment, null,
3094
+ React.createElement(Heading.Heading, { level: linkSection.headingLevel }, linkSection.heading),
3095
+ linkSection.links.map(function (_a) {
3096
+ var text = _a.text, url = _a.url, ariaLabel = _a.ariaLabel;
3097
+ return (React.createElement(React.Fragment, null,
3098
+ React.createElement(VerticalSpace.VerticalSpace, { size: "8" }),
3099
+ React.createElement("div", { key: "".concat(id, "-").concat(url) },
3100
+ React.createElement(Link.Link, { "aria-label": ariaLabel, size: "s", href: url }, text))));
3101
+ }))),
3051
3102
  topics && (React.createElement(React.Fragment, null,
3103
+ linkSection && React.createElement(VerticalSpace.VerticalSpace, { size: "32" }),
3052
3104
  React.createElement(Heading.Heading, { level: topics.headingLevel }, topics.heading),
3053
3105
  React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
3054
- React.createElement("div", { className: styles$2.tagGroup }, topics.tags.map(function (tag) { return (React.createElement(Tag.Tag, __assign({ key: "".concat(id, "-").concat(tag.title) }, tag))); })),
3055
- React.createElement(VerticalSpace.VerticalSpace, { size: "32" }))),
3056
- React.createElement(Rule.Rule, null),
3057
- React.createElement(VerticalSpace.VerticalSpace, { size: "32" }),
3058
- React.createElement(Heading.Heading, { level: share.headingLevel }, share.heading),
3059
- React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
3060
- React.createElement("div", { className: styles$2.shareButtonContainer }, shareButtons.map(function (_a) {
3061
- var isButton = _a.isButton, label = _a.label, href = _a.href, icon = _a.icon, onClick = _a.onClick;
3062
- return (React.createElement("a", { key: "".concat(id, "-").concat(label), role: isButton ? "button" : undefined, target: "_blank", rel: "noreferrer", className: styles$2.shareButton, "aria-label": label, href: href, onClick: isButton ? onClick : undefined },
3063
- React.createElement(Icon.Icon, { icon: icon, size: 24 })));
3064
- })),
3106
+ React.createElement("div", { className: styles$7.tagGroup }, topics.tags.map(function (tag) { return (React.createElement(Tag.Tag, __assign({ key: "".concat(id, "-").concat(tag.title) }, tag))); })))),
3107
+ share && (React.createElement(React.Fragment, null,
3108
+ (linkSection || topics) && (React.createElement("div", { "data-testid": "links-topics-content-rule" },
3109
+ React.createElement(VerticalSpace.VerticalSpace, { size: "32" }),
3110
+ React.createElement(Rule.Rule, null),
3111
+ React.createElement(VerticalSpace.VerticalSpace, { size: "32" }))),
3112
+ React.createElement(Heading.Heading, { level: share.headingLevel }, share.heading),
3113
+ React.createElement(VerticalSpace.VerticalSpace, { size: "16" }),
3114
+ React.createElement("div", { className: styles$7.shareButtonContainer }, shareButtons.map(function (_a) {
3115
+ var isButton = _a.isButton, ariaLabel = _a.ariaLabel, href = _a.href, icon = _a.icon, onClick = _a.onClick;
3116
+ return (React.createElement("a", { key: "".concat(id, "-").concat(ariaLabel), role: isButton ? "button" : undefined, target: "_blank", rel: "noreferrer", className: styles$7.shareButton, "aria-label": ariaLabel, href: href, onClick: isButton ? onClick : undefined },
3117
+ React.createElement(Icon.Icon, { icon: icon, size: 24 })));
3118
+ })))),
3065
3119
  React.createElement(Toast.Toast, null,
3066
3120
  React.createElement(Toast.ToastNotification, { status: "success", title: "Copied to clipboard", isOpen: showToast, onOpenChange: function () { return setShowToast(false); } }))));
3067
3121
  };
3068
3122
 
3069
- var styles$1 = {"product-navigation-grid":"ProductNavigation-module_product-navigation-grid__RzFq8","productNavigation-skipLink":"ProductNavigation-module_productNavigation-skipLink__fy8ZJ"};
3123
+ var styles$6 = {"product-navigation-grid":"ProductNavigation-module_product-navigation-grid__RzFq8","productNavigation-skipLink":"ProductNavigation-module_productNavigation-skipLink__fy8ZJ"};
3070
3124
 
3071
3125
  /**
3072
3126
  * Use `ProductNavigation` to give a collection of product information cards collected within a grid that has optional show/hide capability
3073
3127
  */
3074
3128
  var ProductNavigation = function (_a) {
3075
- var heading = _a.heading, headingLevel = _a.headingLevel, content = _a.content, _b = _a.hideButton, hideButton = _b === void 0 ? false : _b, productList = _a.productList, _c = _a.defaultExpanded, defaultExpanded = _c === void 0 ? false : _c, minHeight = _a.minHeight, _d = _a.cardsToDisplay, cardsToDisplay = _d === void 0 ? 3 : _d, _e = _a.listIncrement, listIncrement = _e === void 0 ? 6 : _e, onClickMore = _a.onClickMore, onClickLess = _a.onClickLess, _f = _a.hideShowLess, hideShowLess = _f === void 0 ? false : _f, isLoading = _a.isLoading, image = _a.image, props = __rest(_a, ["heading", "headingLevel", "content", "hideButton", "productList", "defaultExpanded", "minHeight", "cardsToDisplay", "listIncrement", "onClickMore", "onClickLess", "hideShowLess", "isLoading", "image"]);
3129
+ var heading = _a.heading, id = _a.id, headingLevel = _a.headingLevel, isHeadingWordWrap = _a.isHeadingWordWrap, content = _a.content, _b = _a.hideButton, hideButton = _b === void 0 ? false : _b, productList = _a.productList, _c = _a.defaultExpanded, defaultExpanded = _c === void 0 ? false : _c, minHeight = _a.minHeight, _d = _a.cardsToDisplay, cardsToDisplay = _d === void 0 ? 3 : _d, _e = _a.listIncrement, listIncrement = _e === void 0 ? 6 : _e, onClickMore = _a.onClickMore, onClickLess = _a.onClickLess, _f = _a.hideShowLess, hideShowLess = _f === void 0 ? false : _f, isLoading = _a.isLoading, image = _a.image, props = __rest(_a, ["heading", "id", "headingLevel", "isHeadingWordWrap", "content", "hideButton", "productList", "defaultExpanded", "minHeight", "cardsToDisplay", "listIncrement", "onClickMore", "onClickLess", "hideShowLess", "isLoading", "image"]);
3076
3130
  var _g = React.useState(false), hideLessButton = _g[0], setHideLessButton = _g[1];
3077
3131
  var _h = React.useState(cardsToDisplay), skipLinkCard = _h[0], setSkipLinkCard = _h[1];
3078
3132
  var _j = React.useState(productList.slice(0, cardsToDisplay)), displayList = _j[0], setDisplayList = _j[1];
@@ -3108,15 +3162,12 @@ var ProductNavigation = function (_a) {
3108
3162
  }
3109
3163
  };
3110
3164
  var isMinWidthArcBreakpointS = useMediaQuery.useMediaQuery("(min-width: ".concat(ArcSizeBreakpointsS, ")"));
3111
- return (React.createElement("div", __assign({}, filterDataAttrs(props)),
3112
- React.createElement(SectionHeading, { isPadded: true, "data-testid": "ProductNavigation-header", heading: heading, headingLevel: headingLevel, content: content, image: image }),
3113
- React.createElement("ul", { className: classNames(styles$1["product-navigation-grid"]) }, displayList === null || displayList === void 0 ? void 0 : displayList.map(function (_a, i) {
3114
- var label = _a.label, href = _a.href, heading = _a.heading, text = _a.text;
3165
+ return (React.createElement("div", __assign({}, filterAttrs(props)),
3166
+ React.createElement(SectionHeading, { isPadded: true, id: id, "data-testid": "ProductNavigation-header", heading: heading, headingLevel: headingLevel, isHeadingWordWrap: isHeadingWordWrap, content: content, image: image }),
3167
+ React.createElement("ul", { className: classNames(styles$6["product-navigation-grid"]) }, displayList === null || displayList === void 0 ? void 0 : displayList.map(function (cardProps, i) {
3168
+ var _a;
3115
3169
  return (React.createElement("li", { key: "displayList-".concat(i), tabIndex: -1, ref: i === skipLinkCard ? cardRef : undefined, "data-cy": "list-item-".concat(i) },
3116
- React.createElement(InformationCard.InformationCard, { button: {
3117
- label: label,
3118
- href: href,
3119
- }, minHeight: minHeight, heading: heading, headingLevel: "2", text: text })));
3170
+ React.createElement(InformationCard.InformationCard, __assign({}, cardProps, { minHeight: minHeight !== null && minHeight !== void 0 ? minHeight : cardProps.minHeight, headingLevel: (_a = cardProps.headingLevel) !== null && _a !== void 0 ? _a : "2" }))));
3120
3171
  })),
3121
3172
  React.createElement(VerticalSpace.VerticalSpace, { size: "40" }),
3122
3173
  React.createElement("div", { style: { display: "flex" } },
@@ -3124,7 +3175,7 @@ var ProductNavigation = function (_a) {
3124
3175
  ? "Show more"
3125
3176
  : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
3126
3177
  displayList.length > cardsToDisplay && (React.createElement(React.Fragment, null,
3127
- React.createElement("div", { id: "skip-link", className: classNames(styles$1["productNavigation-skipLink"]), tabIndex: -1 },
3178
+ React.createElement("div", { id: "skip-link", className: classNames(styles$6["productNavigation-skipLink"]), tabIndex: -1 },
3128
3179
  React.createElement(ButtonV2.ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true })))),
3129
3180
  React.createElement(VisuallyHidden.VisuallyHidden, null,
3130
3181
  React.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
@@ -3137,18 +3188,114 @@ var ProductNavigation = function (_a) {
3137
3188
  "."))))));
3138
3189
  };
3139
3190
 
3140
- var styles = {"container":"ContentInfoWidget-module_container__yaS-8","text":"ContentInfoWidget-module_text__O1BdZ","icon":"ContentInfoWidget-module_icon__LEww1"};
3191
+ var styles$5 = {"container":"ContentInfoWidget-module_container__yaS-8","text":"ContentInfoWidget-module_text__O1BdZ","icon":"ContentInfoWidget-module_icon__LEww1"};
3141
3192
 
3142
3193
  var ContentInfoWidget = function (_a) {
3143
3194
  var text = _a.text, icon = _a.icon;
3144
- return (React.createElement("div", { className: styles.container },
3145
- React.createElement("div", { className: styles.icon },
3195
+ return (React.createElement("div", { className: styles$5.container },
3196
+ React.createElement("div", { className: styles$5.icon },
3146
3197
  React.createElement(Icon.Icon, { size: 20, icon: icon })),
3147
- React.createElement("div", { className: styles.text },
3198
+ React.createElement("div", { className: styles$5.text },
3148
3199
  React.createElement(Text.Text, { size: "xs", tone: "muted" }, text))));
3149
3200
  };
3150
3201
 
3202
+ var styles$4 = {"heroLink":"HeroLink-module_heroLink__WUqWB","heroLink-inner":"HeroLink-module_heroLink-inner__RE5i8","heroLink-label":"HeroLink-module_heroLink-label__93HPY","heroLink-icon":"HeroLink-module_heroLink-icon__l7o4U","heroLink--emptyLabel":"HeroLink-module_heroLink--emptyLabel__XY2sa"};
3203
+
3204
+ /**
3205
+ * Pill-style HeroLink component with default and hover states
3206
+ */
3207
+ var HeroLink = function (_a) {
3208
+ var _b;
3209
+ var label = _a.label, onClick = _a.onClick, href = _a.href, id = _a.id, rel = _a.rel, target = _a.target, ariaLabel = _a.ariaLabel, ref = _a.ref, props = __rest(_a, ["label", "onClick", "href", "id", "rel", "target", "ariaLabel", "ref"]);
3210
+ var HeroLinkClasses = classNames(styles$4.heroLink, (_b = {},
3211
+ _b[styles$4["heroLink--emptyLabel"]] = !label,
3212
+ _b));
3213
+ var commonProps = __assign({ id: id, onClick: onClick, ref: ref }, props);
3214
+ if (href) {
3215
+ return (React.createElement("a", __assign({}, commonProps, { className: HeroLinkClasses, href: href, rel: rel, "aria-label": ariaLabel, target: target }),
3216
+ React.createElement("span", { className: styles$4["heroLink-inner"] },
3217
+ label && React.createElement("span", { className: styles$4["heroLink-label"] }, label),
3218
+ React.createElement("span", { className: styles$4["heroLink-icon"] },
3219
+ React.createElement(Icon.Icon, { testId: "hero-link-icon", size: 24, icon: BtIconArrowAltRight })))));
3220
+ }
3221
+ return (React.createElement("button", __assign({}, commonProps, { className: HeroLinkClasses, "aria-label": ariaLabel }),
3222
+ React.createElement("span", { className: styles$4["heroLink-inner"] },
3223
+ label && React.createElement("span", { className: styles$4["heroLink-label"] }, label),
3224
+ React.createElement("span", { className: styles$4["heroLink-icon"] },
3225
+ React.createElement(Icon.Icon, { testId: "hero-link-icon", size: 24, icon: BtIconArrowAltRight })))));
3226
+ };
3227
+
3228
+ var styles$3 = {"action-tile":"ActionTile-module_action-tile__JPwGb","action-tile-content":"ActionTile-module_action-tile-content__ZkgHc","action-tile-icon":"ActionTile-module_action-tile-icon__PY1EN","action-tile-heading":"ActionTile-module_action-tile-heading__Uxdu9","action-tile--active":"ActionTile-module_action-tile--active__-aWze","action-tile-tick":"ActionTile-module_action-tile-tick__vhsJE"};
3229
+
3230
+ var ActionTile = function (_a) {
3231
+ var _b;
3232
+ var icon = _a.icon, heading = _a.heading, _c = _a.isActive, isActive = _c === void 0 ? false : _c, onClick = _a.onClick, className = _a.className, props = __rest(_a, ["icon", "heading", "isActive", "onClick", "className"]);
3233
+ var tileClasses = classNames(styles$3["action-tile"], (_b = {},
3234
+ _b[styles$3["action-tile--active"]] = isActive,
3235
+ _b), className);
3236
+ var content = (React.createElement(React.Fragment, null,
3237
+ React.createElement("div", { className: styles$3["action-tile-content"] },
3238
+ icon && (React.createElement("div", { className: styles$3["action-tile-icon"] },
3239
+ React.createElement(Icon.Icon, { icon: icon, size: 48 }))),
3240
+ React.createElement("h3", { className: styles$3["action-tile-heading"] }, heading)),
3241
+ isActive && (React.createElement("div", { className: styles$3["action-tile-tick"] },
3242
+ React.createElement(Icon.Icon, { icon: BtIconTickAlt2Px, size: 20 })))));
3243
+ return (React.createElement("div", __assign({ className: tileClasses, onClick: onClick }, filterAttrs(props)), content));
3244
+ };
3245
+
3246
+ var styles$2 = {"link-tile":"LinkTile-module_link-tile__xVUP3","link-tile-content":"LinkTile-module_link-tile-content__H-QN8","link-tile-text":"LinkTile-module_link-tile-text__0K6zf"};
3247
+
3248
+ var LinkTile = function (_a) {
3249
+ var text = _a.text, href = _a.href, _b = _a.showIcon, showIcon = _b === void 0 ? true : _b, className = _a.className, props = __rest(_a, ["text", "href", "showIcon", "className"]);
3250
+ var Component = href ? "a" : "div";
3251
+ var linkProps = href ? { href: href } : {};
3252
+ return (React.createElement(Component, __assign({ className: classNames(styles$2["link-tile"], className) }, linkProps, filterAttrs(props)), text && (React.createElement("div", { className: styles$2["link-tile-content"] },
3253
+ React.createElement("span", { className: styles$2["link-tile-text"] }, text),
3254
+ showIcon && React.createElement(Icon.Icon, { icon: BtIconArrowAltRight, size: 32 })))));
3255
+ };
3256
+
3257
+ var styles$1 = {"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"};
3258
+
3259
+ /** Use `ThumbnailSignpost` to highlight key information or navigation points with an accompanying thumbnail image or icon. */
3260
+ var ThumbnailSignpost = function (_a) {
3261
+ var _b;
3262
+ var text = _a.text, title = _a.title, img = _a.img, onClick = _a.onClick, buttonLabel = _a.buttonLabel, props = __rest(_a, ["text", "title", "img", "onClick", "buttonLabel"]);
3263
+ return (React.createElement("div", __assign({ className: classNames(styles$1.thumbnailSignpost, (_b = {},
3264
+ _b[styles$1.isLink] = onClick,
3265
+ _b)), onClick: onClick, "aria-label": title, tabIndex: onClick ? 0 : -1 }, (onClick && { role: "button" }), filterAttrs(props)),
3266
+ img && (React.createElement("div", { className: styles$1.image },
3267
+ React.createElement(Image$2.Image, __assign({}, img)))),
3268
+ React.createElement("div", { className: styles$1.content },
3269
+ React.createElement("span", { className: styles$1.heading }, title),
3270
+ React.createElement(VerticalSpace.VerticalSpace, { size: "8" }),
3271
+ text,
3272
+ buttonLabel && onClick && (React.createElement(React.Fragment, null,
3273
+ React.createElement(VerticalSpace.VerticalSpace, { size: "8" }),
3274
+ React.createElement("div", { className: styles$1.thumbnailButton },
3275
+ React.createElement("span", { className: styles$1.buttonIcon, role: "img", style: {
3276
+ height: 24,
3277
+ width: 24,
3278
+ maskImage: "url(\"".concat(BtIconArrowRightFill, "\")"),
3279
+ WebkitMaskImage: "url(\"".concat(BtIconArrowRightFill, "\")"),
3280
+ } }),
3281
+ React.createElement(Heading.Heading, { size: "xxs" }, buttonLabel)))))));
3282
+ };
3283
+
3284
+ var styles = {"PromoListingThumbnailSignpost":"PromoListingThumbnailSignpost-module_PromoListingThumbnailSignpost__0HTPV","list":"PromoListingThumbnailSignpost-module_list__E9l0E"};
3285
+
3286
+ /**
3287
+ * Use `PromoListingThumbnailSignpost` to give supporting information about a page or proposition in the form of the ThumbnailSignposts components.
3288
+ */
3289
+ var PromoListingThumbnailSignpost = function (_a) {
3290
+ var _b = _a.isPadded, isPadded = _b === void 0 ? true : _b, heading = _a.heading, content = _a.content, headingLevel = _a.headingLevel, thumbnailList = _a.thumbnailList, props = __rest(_a, ["isPadded", "heading", "content", "headingLevel", "thumbnailList"]);
3291
+ return (React.createElement("div", __assign({ className: styles.PromoListingThumbnailSignpost }, filterAttrs(props)),
3292
+ React.createElement(SectionHeading, { isPadded: isPadded, "data-testid": "PromoListingThumbnailSignpost-header", heading: heading, headingLevel: headingLevel, content: content }),
3293
+ React.createElement("ul", { className: styles.list }, thumbnailList.map(function (thumbnail, index) { return (React.createElement("li", { key: index },
3294
+ React.createElement(ThumbnailSignpost, __assign({}, thumbnail)))); }))));
3295
+ };
3296
+
3151
3297
  exports.Accordion = Accordion;
3298
+ exports.ActionTile = ActionTile;
3152
3299
  exports.ArticleSidebar = ArticleSidebar;
3153
3300
  exports.Author = Author;
3154
3301
  exports.BannerWithTabs = BannerWithTabs;
@@ -3157,11 +3304,15 @@ exports.CopyLead = CopyLead;
3157
3304
  exports.DownloadList = DownloadList;
3158
3305
  exports.FAQs = FAQs;
3159
3306
  exports.FeaturePost = FeaturePost;
3307
+ exports.HeroLink = HeroLink;
3160
3308
  exports.Highlights = Highlights;
3309
+ exports.LinkTile = LinkTile;
3161
3310
  exports.ProductNavigation = ProductNavigation;
3162
3311
  exports.PromoListing = PromoListing;
3312
+ exports.PromoListingThumbnailSignpost = PromoListingThumbnailSignpost;
3163
3313
  exports.Quote = Quote;
3164
3314
  exports.SectionHeading = SectionHeading;
3165
3315
  exports.Statistics = Statistics;
3166
3316
  exports.Summary = Summary;
3317
+ exports.ThumbnailSignpost = ThumbnailSignpost;
3167
3318
  //# sourceMappingURL=index.cjs.map