@arc-ui/community-components 3.9.0 → 3.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.cts CHANGED
@@ -1,4 +1,5 @@
1
1
  import React$1, { ReactNode, FC } from 'react';
2
+ import { NavigationHeaderActionProps } from '@arc-ui/components/NavigationHeader';
2
3
  import { HeadingLevel, HeadingProps } from '@arc-ui/components/Heading';
3
4
  import { ImageProps, ImageSourceProps } from '@arc-ui/components/Image';
4
5
  import { DisclosureProps } from '@arc-ui/components/Disclosure';
@@ -17,6 +18,53 @@ import { TagProps } from '@arc-ui/components/Tag';
17
18
  import { ReactPlayerProps } from 'react-player/types';
18
19
  import { VerticalSpaceProps } from '@arc-ui/components/VerticalSpace';
19
20
 
21
+ declare const HeaderBarNotification: React$1.FC<HeaderBarNotificationProps>;
22
+ interface HeaderBarNotificationProps {
23
+ /**
24
+ * Header Element to attach the notifcation too.
25
+ */
26
+ headerActionProps: NavigationHeaderActionProps;
27
+ /**
28
+ * Nofication ID used to store dismissal in users session
29
+ */
30
+ notificationId: string;
31
+ /**
32
+ * Always show on every reload, ignore saving dismissal to users session
33
+ */
34
+ isPersistant?: boolean;
35
+ /**
36
+ * Notification Icon
37
+ */
38
+ icon?: string;
39
+ /**
40
+ * Notification Image
41
+ */
42
+ image?: string;
43
+ /**
44
+ * Notification Heading
45
+ */
46
+ heading: string;
47
+ /**
48
+ * Notification tagline
49
+ */
50
+ tagline?: string;
51
+ /**
52
+ * Notification content
53
+ */
54
+ children?: React$1.ReactNode;
55
+ /**
56
+ * Data for the button, click events and text
57
+ */
58
+ button?: {
59
+ handleClick: () => void;
60
+ text: string;
61
+ };
62
+ /**
63
+ * Specify a size or mutliple sizes where the notification only appears.
64
+ */
65
+ showAtSize?: ("s" | "m" | "l" | "xl")[];
66
+ }
67
+
20
68
  interface AccordionHeadingProps {
21
69
  /**
22
70
  * heading for `AccordionHeading`.
@@ -612,7 +660,7 @@ interface ContentInfoWidgetProps {
612
660
  }
613
661
 
614
662
  declare const ActionTile: React$1.FC<ActionTileProps>;
615
- interface ActionTileProps extends React$1.HTMLAttributes<HTMLDivElement> {
663
+ interface ActionTileProps {
616
664
  /**
617
665
  * Icon to display in default state
618
666
  */
@@ -632,7 +680,7 @@ interface ActionTileProps extends React$1.HTMLAttributes<HTMLDivElement> {
632
680
  /**
633
681
  * Click handler
634
682
  */
635
- onClick?: () => void;
683
+ onClick?: React$1.MouseEventHandler<HTMLButtonElement>;
636
684
  }
637
685
 
638
686
  declare const LinkTile: React$1.FC<LinkTileProps>;
@@ -875,5 +923,5 @@ interface PartnerBrandLogosProps {
875
923
  subgroups: PartnerLogosSubgroup[];
876
924
  }
877
925
 
878
- export { Accordion, ActionTile, ArticleCarousel, ArticleSidebar, Author, BannerWithTabs, BusinessSegmentSwitcher, ContentInfoWidget, CopyLead, DownloadList, FAQs, FeaturePost, Highlights, InlineLinkGroup, LinkTile, PartnerBrandLogos, ProductNavigation, PromoListing, PromoListingThumbnailSignpost, Quote, SectionHeading, Statistics, Summary, ThumbnailSignpost, VideoHeroCard, VideoPortraitCard };
879
- export type { AccordionProps, ActionTileProps, ArticleCarouselProps, ArticleSidebarProps, AuthorProps, BannerWithTabsProps, BentoGridContent, BentoInformationCard, BentoMediaCard, BusinessSegmentSwitcherProps, ContentInfoWidgetProps, CopyLeadProps, DownloadListProps, FAQsProps, FeaturePostProps, HighlightsProps, InlineLinkGroupItem, InlineLinkGroupProps, LinkTileProps, ListProps, LogoTileItem, PartnerBrandLogosProps, PartnerLogosSubgroup, ProductNavigationProps, PromoListingProps, PromoListingThumbnailSignpostProps, QuoteProps, SectionHeadingProps, StatisticsProps, SummaryProps, ThumbnailSignpostProps, VideoHeroCardProps, VideoPortraitCardProps };
926
+ export { Accordion, ActionTile, ArticleCarousel, ArticleSidebar, Author, BannerWithTabs, BusinessSegmentSwitcher, ContentInfoWidget, CopyLead, DownloadList, FAQs, FeaturePost, HeaderBarNotification, Highlights, InlineLinkGroup, LinkTile, PartnerBrandLogos, ProductNavigation, PromoListing, PromoListingThumbnailSignpost, Quote, SectionHeading, Statistics, Summary, ThumbnailSignpost, VideoHeroCard, VideoPortraitCard };
927
+ export type { AccordionProps, ActionTileProps, ArticleCarouselProps, ArticleSidebarProps, AuthorProps, BannerWithTabsProps, BentoGridContent, BentoInformationCard, BentoMediaCard, BusinessSegmentSwitcherProps, ContentInfoWidgetProps, CopyLeadProps, DownloadListProps, FAQsProps, FeaturePostProps, HeaderBarNotificationProps, HighlightsProps, InlineLinkGroupItem, InlineLinkGroupProps, LinkTileProps, ListProps, LogoTileItem, PartnerBrandLogosProps, PartnerLogosSubgroup, ProductNavigationProps, PromoListingProps, PromoListingThumbnailSignpostProps, QuoteProps, SectionHeadingProps, StatisticsProps, SummaryProps, ThumbnailSignpostProps, VideoHeroCardProps, VideoPortraitCardProps };
package/lib/index.d.mts CHANGED
@@ -1,4 +1,5 @@
1
1
  import React$1, { ReactNode, FC } from 'react';
2
+ import { NavigationHeaderActionProps } from '@arc-ui/components/NavigationHeader';
2
3
  import { HeadingLevel, HeadingProps } from '@arc-ui/components/Heading';
3
4
  import { ImageProps, ImageSourceProps } from '@arc-ui/components/Image';
4
5
  import { DisclosureProps } from '@arc-ui/components/Disclosure';
@@ -17,6 +18,53 @@ import { TagProps } from '@arc-ui/components/Tag';
17
18
  import { ReactPlayerProps } from 'react-player/types';
18
19
  import { VerticalSpaceProps } from '@arc-ui/components/VerticalSpace';
19
20
 
21
+ declare const HeaderBarNotification: React$1.FC<HeaderBarNotificationProps>;
22
+ interface HeaderBarNotificationProps {
23
+ /**
24
+ * Header Element to attach the notifcation too.
25
+ */
26
+ headerActionProps: NavigationHeaderActionProps;
27
+ /**
28
+ * Nofication ID used to store dismissal in users session
29
+ */
30
+ notificationId: string;
31
+ /**
32
+ * Always show on every reload, ignore saving dismissal to users session
33
+ */
34
+ isPersistant?: boolean;
35
+ /**
36
+ * Notification Icon
37
+ */
38
+ icon?: string;
39
+ /**
40
+ * Notification Image
41
+ */
42
+ image?: string;
43
+ /**
44
+ * Notification Heading
45
+ */
46
+ heading: string;
47
+ /**
48
+ * Notification tagline
49
+ */
50
+ tagline?: string;
51
+ /**
52
+ * Notification content
53
+ */
54
+ children?: React$1.ReactNode;
55
+ /**
56
+ * Data for the button, click events and text
57
+ */
58
+ button?: {
59
+ handleClick: () => void;
60
+ text: string;
61
+ };
62
+ /**
63
+ * Specify a size or mutliple sizes where the notification only appears.
64
+ */
65
+ showAtSize?: ("s" | "m" | "l" | "xl")[];
66
+ }
67
+
20
68
  interface AccordionHeadingProps {
21
69
  /**
22
70
  * heading for `AccordionHeading`.
@@ -612,7 +660,7 @@ interface ContentInfoWidgetProps {
612
660
  }
613
661
 
614
662
  declare const ActionTile: React$1.FC<ActionTileProps>;
615
- interface ActionTileProps extends React$1.HTMLAttributes<HTMLDivElement> {
663
+ interface ActionTileProps {
616
664
  /**
617
665
  * Icon to display in default state
618
666
  */
@@ -632,7 +680,7 @@ interface ActionTileProps extends React$1.HTMLAttributes<HTMLDivElement> {
632
680
  /**
633
681
  * Click handler
634
682
  */
635
- onClick?: () => void;
683
+ onClick?: React$1.MouseEventHandler<HTMLButtonElement>;
636
684
  }
637
685
 
638
686
  declare const LinkTile: React$1.FC<LinkTileProps>;
@@ -875,5 +923,5 @@ interface PartnerBrandLogosProps {
875
923
  subgroups: PartnerLogosSubgroup[];
876
924
  }
877
925
 
878
- export { Accordion, ActionTile, ArticleCarousel, ArticleSidebar, Author, BannerWithTabs, BusinessSegmentSwitcher, ContentInfoWidget, CopyLead, DownloadList, FAQs, FeaturePost, Highlights, InlineLinkGroup, LinkTile, PartnerBrandLogos, ProductNavigation, PromoListing, PromoListingThumbnailSignpost, Quote, SectionHeading, Statistics, Summary, ThumbnailSignpost, VideoHeroCard, VideoPortraitCard };
879
- export type { AccordionProps, ActionTileProps, ArticleCarouselProps, ArticleSidebarProps, AuthorProps, BannerWithTabsProps, BentoGridContent, BentoInformationCard, BentoMediaCard, BusinessSegmentSwitcherProps, ContentInfoWidgetProps, CopyLeadProps, DownloadListProps, FAQsProps, FeaturePostProps, HighlightsProps, InlineLinkGroupItem, InlineLinkGroupProps, LinkTileProps, ListProps, LogoTileItem, PartnerBrandLogosProps, PartnerLogosSubgroup, ProductNavigationProps, PromoListingProps, PromoListingThumbnailSignpostProps, QuoteProps, SectionHeadingProps, StatisticsProps, SummaryProps, ThumbnailSignpostProps, VideoHeroCardProps, VideoPortraitCardProps };
926
+ export { Accordion, ActionTile, ArticleCarousel, ArticleSidebar, Author, BannerWithTabs, BusinessSegmentSwitcher, ContentInfoWidget, CopyLead, DownloadList, FAQs, FeaturePost, HeaderBarNotification, Highlights, InlineLinkGroup, LinkTile, PartnerBrandLogos, ProductNavigation, PromoListing, PromoListingThumbnailSignpost, Quote, SectionHeading, Statistics, Summary, ThumbnailSignpost, VideoHeroCard, VideoPortraitCard };
927
+ export type { AccordionProps, ActionTileProps, ArticleCarouselProps, ArticleSidebarProps, AuthorProps, BannerWithTabsProps, BentoGridContent, BentoInformationCard, BentoMediaCard, BusinessSegmentSwitcherProps, ContentInfoWidgetProps, CopyLeadProps, DownloadListProps, FAQsProps, FeaturePostProps, HeaderBarNotificationProps, HighlightsProps, InlineLinkGroupItem, InlineLinkGroupProps, LinkTileProps, ListProps, LogoTileItem, PartnerBrandLogosProps, PartnerLogosSubgroup, ProductNavigationProps, PromoListingProps, PromoListingThumbnailSignpostProps, QuoteProps, SectionHeadingProps, StatisticsProps, SummaryProps, ThumbnailSignpostProps, VideoHeroCardProps, VideoPortraitCardProps };
package/lib/index.mjs CHANGED
@@ -1,8 +1,13 @@
1
- import React, { useId, useState, useEffect, Suspense, useRef, useContext } from 'react';
1
+ import React, { useState, useEffect, useId, Suspense, useRef, useContext } from 'react';
2
+ import { NavigationHeaderAction } from '@arc-ui/components/NavigationHeader';
3
+ import { Popover } from '@arc-ui/components/Popover';
4
+ import { Icon } from '@arc-ui/components/Icon';
5
+ import { Image as Image$2 } from '@arc-ui/components/Image';
2
6
  import { Heading } from '@arc-ui/components/Heading';
3
7
  import { Text } from '@arc-ui/components/Text';
8
+ import { Tooltip } from '@arc-ui/components/Tooltip';
9
+ import { ButtonV2 } from '@arc-ui/components/ButtonV2';
4
10
  import { VerticalSpace } from '@arc-ui/components/VerticalSpace';
5
- import { Image as Image$2 } from '@arc-ui/components/Image';
6
11
  import { Disclosure } from '@arc-ui/components/Disclosure';
7
12
  import { Carousel } from '@arc-ui/components/Carousel';
8
13
  import { Columns, ColumnsCol } from '@arc-ui/components/Columns';
@@ -10,8 +15,6 @@ import { MediaCard } from '@arc-ui/components/MediaCard';
10
15
  import { useMediaQuery } from '@arc-ui/components/use-media-query';
11
16
  import { Grid, GridRow, GridCol } from '@arc-ui/components/Grid';
12
17
  import { Avatar } from '@arc-ui/components/Avatar';
13
- import { Icon } from '@arc-ui/components/Icon';
14
- import { ButtonV2 } from '@arc-ui/components/ButtonV2';
15
18
  import { Download } from '@arc-ui/components/Download';
16
19
  import { Link } from '@arc-ui/components/Link';
17
20
  import { Tabs, TabsList, TabsItem, TabsContent } from '@arc-ui/components/Tabs';
@@ -127,30 +130,6 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
127
130
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
128
131
  };
129
132
 
130
- /**
131
- * Filters out attributes from the given props object based on a pattern.
132
- *
133
- * This function extracts all properties that match either the `data-*` or `aria-*` attribute patterns
134
- * and returns a new object containing only those properties.
135
- *
136
- * @param props - The object containing properties to filter.
137
- * @returns A new object containing only the matched attributes (`data-*` and `aria-*`) from the input props.
138
- */
139
- var attributePrefixes = ["data-", "aria-"];
140
- var filterAttrs = function (props) {
141
- var filteredProps = {};
142
- var _loop_1 = function (prop) {
143
- if (Object.prototype.hasOwnProperty.call(props, prop) &&
144
- attributePrefixes.some(function (prefix) { return prop.startsWith(prefix); })) {
145
- filteredProps[prop] = props[prop];
146
- }
147
- };
148
- for (var prop in props) {
149
- _loop_1(prop);
150
- }
151
- return filteredProps;
152
- };
153
-
154
133
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
155
134
 
156
135
  function getDefaultExportFromCjs (x) {
@@ -244,6 +223,73 @@ function requireClassnames () {
244
223
  var classnamesExports = requireClassnames();
245
224
  var classNames = /*@__PURE__*/getDefaultExportFromCjs(classnamesExports);
246
225
 
226
+ /**
227
+ * Filters out attributes from the given props object based on a pattern.
228
+ *
229
+ * This function extracts all properties that match either the `data-*` or `aria-*` attribute patterns
230
+ * and returns a new object containing only those properties.
231
+ *
232
+ * @param props - The object containing properties to filter.
233
+ * @returns A new object containing only the matched attributes (`data-*` and `aria-*`) from the input props.
234
+ */
235
+ var attributePrefixes = ["data-", "aria-"];
236
+ var filterAttrs = function (props) {
237
+ var filteredProps = {};
238
+ var _loop_1 = function (prop) {
239
+ if (Object.prototype.hasOwnProperty.call(props, prop) &&
240
+ attributePrefixes.some(function (prefix) { return prop.startsWith(prefix); })) {
241
+ filteredProps[prop] = props[prop];
242
+ }
243
+ };
244
+ for (var prop in props) {
245
+ _loop_1(prop);
246
+ }
247
+ return filteredProps;
248
+ };
249
+
250
+ /**
251
+ * Do not edit directly
252
+ * Generated file
253
+ */
254
+
255
+ const BtIconCrossAlt =
256
+ "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3e%3cpath fill='currentColor' d='m16.707 16.02 4.482-4.494a.5.5 0 1 0-.707-.706l-4.48 4.493-4.482-4.493a.5.5 0 1 0-.707.706l4.483 4.494-4.483 4.494a.5.5 0 1 0 .707.706l4.481-4.493 4.481 4.493a.5.5 0 1 0 .707-.706Z'/%3e%3c/svg%3e";
257
+
258
+ var styles$v = {"popupNotification":"HeaderBarNotification-module_popupNotification__HAxod","hiddenByDefault":"HeaderBarNotification-module_hiddenByDefault__JHbUy","s":"HeaderBarNotification-module_s__HofMM","m":"HeaderBarNotification-module_m__ZUdjq","l":"HeaderBarNotification-module_l__wlZ1Z","xl":"HeaderBarNotification-module_xl__z7DBP","container":"HeaderBarNotification-module_container__18nau","content":"HeaderBarNotification-module_content__SUo-l","image":"HeaderBarNotification-module_image__uV-nD","details":"HeaderBarNotification-module_details__S5Rrx","closeButtonContainer":"HeaderBarNotification-module_closeButtonContainer__b1UDI"};
259
+
260
+ var HeaderBarNotification = function (_a) {
261
+ var _b;
262
+ var headerActionProps = _a.headerActionProps, notificationId = _a.notificationId, _c = _a.isPersistant, isPersistant = _c === void 0 ? false : _c, icon = _a.icon, image = _a.image, heading = _a.heading, tagline = _a.tagline, children = _a.children, button = _a.button, showAtSize = _a.showAtSize, props = __rest(_a, ["headerActionProps", "notificationId", "isPersistant", "icon", "image", "heading", "tagline", "children", "button", "showAtSize"]);
263
+ var _d = useState(isPersistant), showNotification = _d[0], setShowNotification = _d[1];
264
+ var localStorageId = "hide".concat(notificationId.replace(/[^a-zA-Z0-9\-_]/g, ""));
265
+ // Check to see if the notication has been hidden or not and show it if so
266
+ useEffect(function () {
267
+ if (typeof window !== "undefined" && !isPersistant) {
268
+ setShowNotification(!localStorage.getItem(localStorageId));
269
+ }
270
+ }, []);
271
+ // Handle the closure of the notification, store it in the session so we don't keep showing it.
272
+ var handleClosePopup = function () {
273
+ if (!isPersistant)
274
+ localStorage.setItem(localStorageId, "true");
275
+ setShowNotification(false);
276
+ };
277
+ return (React.createElement(Popover, __assign({ open: showNotification, side: "bottom", sideOffset: 12, maxWidth: 900, arrow: true, asChild: true, className: classNames(styles$v.popupNotification, (_b = {}, _b[styles$v.hiddenByDefault] = showAtSize, _b), showAtSize === null || showAtSize === void 0 ? void 0 : showAtSize.map(function (s) { return styles$v[s]; })), content: React.createElement("div", { className: styles$v.container },
278
+ React.createElement("div", { className: styles$v.content },
279
+ (image || icon) && (React.createElement("div", { className: styles$v.image },
280
+ image && (React.createElement(Image$2, { src: image, alt: heading, fit: "cover", width: 55 })),
281
+ icon && React.createElement(Icon, { icon: icon, size: 35 }))),
282
+ React.createElement("div", { className: styles$v.details },
283
+ tagline && (React.createElement(Text, { size: "m", tone: "muted" }, tagline)),
284
+ React.createElement(Heading, { size: "s", level: "3" }, heading),
285
+ children)),
286
+ button && (React.createElement(ButtonV2, { onClick: button.handleClick, label: button.text, buttonStyle: "secondary", isFullWidth: true })),
287
+ React.createElement("div", { className: styles$v.closeButtonContainer },
288
+ React.createElement(Tooltip, { side: "bottom", title: "Dismiss Notification", asChild: true },
289
+ React.createElement(ButtonV2, { "data-testid": localStorageId, buttonStyle: "tertiary", "aria-label": "Close ".concat(notificationId, " popup"), onClick: handleClosePopup, icon: BtIconCrossAlt })))) }, filterAttrs(props)),
290
+ React.createElement(NavigationHeaderAction, __assign({ isAttention: true }, headerActionProps))));
291
+ };
292
+
247
293
  var styles$u = {"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"};
248
294
 
249
295
  var AccordionHeading = function (_a) {
@@ -3940,23 +3986,23 @@ var ProductNavigation = function (_a) {
3940
3986
  return (React.createElement("li", { key: "displayList-".concat(i), tabIndex: -1, ref: i === skipLinkCard ? cardRef : undefined, "data-cy": "list-item-".concat(i) },
3941
3987
  React.createElement(InformationCard, __assign({}, cardProps, { minHeight: minHeight !== null && minHeight !== void 0 ? minHeight : cardProps.minHeight, headingLevel: (_a = cardProps.headingLevel) !== null && _a !== void 0 ? _a : "2" }))));
3942
3988
  })),
3943
- React.createElement(VerticalSpace, { size: "40" }),
3944
- React.createElement("div", { style: { display: "flex" } },
3945
- !hideButton && !hideLessButton && (React.createElement(ButtonV2, { label: displayList.length < productList.length
3946
- ? "Show more"
3947
- : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
3948
- hideButton ||
3949
- (displaySkipButton && displayList.length > cardsToDisplay && (React.createElement("div", { id: "skip-link", className: classNames(styles$d["productNavigation-skipLink"]), tabIndex: -1 },
3950
- React.createElement(ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true })))),
3951
- React.createElement(VisuallyHidden, null,
3952
- React.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
3953
- React.createElement("p", null,
3954
- "Total products listed ",
3955
- displayList.length,
3956
- ". Total products hidden",
3957
- " ",
3958
- productList.length - displayList.length,
3959
- "."))))));
3989
+ !hideButton &&
3990
+ !(defaultExpanded && displayList.length === productList.length) && (React.createElement(React.Fragment, null,
3991
+ React.createElement(VerticalSpace, { size: "40" }),
3992
+ React.createElement("div", { style: { display: "flex" } },
3993
+ !hideLessButton && (React.createElement(ButtonV2, { label: displayList.length < productList.length
3994
+ ? "Show more"
3995
+ : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
3996
+ displaySkipButton && displayList.length > cardsToDisplay && (React.createElement("div", { id: "skip-link", className: classNames(styles$d["productNavigation-skipLink"]), tabIndex: -1 },
3997
+ React.createElement(ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true }))),
3998
+ React.createElement(VisuallyHidden, null,
3999
+ React.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
4000
+ React.createElement("p", null,
4001
+ "Total products listed ",
4002
+ displayList.length,
4003
+ ". Total products hidden ",
4004
+ productList.length - displayList.length,
4005
+ "."))))))));
3960
4006
  };
3961
4007
 
3962
4008
  var styles$c = {"container":"ContentInfoWidget-module_container__yaS-8","text":"ContentInfoWidget-module_text__O1BdZ","icon":"ContentInfoWidget-module_icon__LEww1"};
@@ -3970,23 +4016,24 @@ var ContentInfoWidget = function (_a) {
3970
4016
  React.createElement(Text, { size: "xs", tone: "muted" }, text))));
3971
4017
  };
3972
4018
 
3973
- var styles$b = {"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"};
4019
+ var styles$b = {"action-tile":"ActionTile-module_action-tile__JPwGb","action-tile-content":"ActionTile-module_action-tile-content__ZkgHc","action-tile-content--without-icon":"ActionTile-module_action-tile-content--without-icon__7F5xj","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"};
3974
4020
 
3975
4021
  var ActionTile = function (_a) {
3976
- var _b;
3977
- var icon = _a.icon, activeIcon = _a.activeIcon, heading = _a.heading, _c = _a.isActive, isActive = _c === void 0 ? false : _c, onClick = _a.onClick, className = _a.className, props = __rest(_a, ["icon", "activeIcon", "heading", "isActive", "onClick", "className"]);
3978
- var tileClasses = classNames(styles$b["action-tile"], (_b = {},
3979
- _b[styles$b["action-tile--active"]] = isActive,
3980
- _b), className);
4022
+ var _b, _c;
4023
+ var icon = _a.icon, activeIcon = _a.activeIcon, heading = _a.heading, _d = _a.isActive, isActive = _d === void 0 ? false : _d, onClick = _a.onClick, props = __rest(_a, ["icon", "activeIcon", "heading", "isActive", "onClick"]);
3981
4024
  var displayIcon = isActive && activeIcon ? activeIcon : icon;
3982
4025
  var content = (React.createElement(React.Fragment, null,
3983
- React.createElement("div", { className: styles$b["action-tile-content"] },
4026
+ React.createElement("div", { className: classNames(styles$b["action-tile-content"], (_b = {},
4027
+ _b[styles$b["action-tile-content--without-icon"]] = !displayIcon,
4028
+ _b)) },
3984
4029
  displayIcon && (React.createElement("div", { className: styles$b["action-tile-icon"] },
3985
4030
  React.createElement(Icon, { icon: displayIcon, size: 48 }))),
3986
4031
  React.createElement("span", { className: styles$b["action-tile-heading"] }, heading)),
3987
4032
  isActive && (React.createElement("div", { className: styles$b["action-tile-tick"] },
3988
4033
  React.createElement(Icon, { icon: BtIconTickAlt2Px, size: 28 })))));
3989
- return (React.createElement("button", __assign({ type: "button", className: tileClasses, onClick: onClick, "aria-pressed": isActive }, filterAttrs(props)), content));
4034
+ return (React.createElement("button", __assign({ type: "button", className: classNames(styles$b["action-tile"], (_c = {},
4035
+ _c[styles$b["action-tile--active"]] = isActive,
4036
+ _c)), onClick: onClick, "aria-pressed": isActive }, filterAttrs(props)), content));
3990
4037
  };
3991
4038
 
3992
4039
  var styles$a = {"link-tile":"LinkTile-module_link-tile__xVUP3","link-tile-content":"LinkTile-module_link-tile-content__H-QN8","link-tile-icon":"LinkTile-module_link-tile-icon__kTMfH","link-tile-text":"LinkTile-module_link-tile-text__0K6zf"};
@@ -4251,5 +4298,5 @@ var PartnerBrandLogos = function (_a) {
4251
4298
  React.createElement(PartnerLogoSubgroup, { subheading: subgroup.subheading, text: subgroup.text, headingLevel: getSubheadingLevel(headingLevel, subgroup.subheadingLevel), logos: subgroup.logos, tileHeight: subgroup.tileHeight }))); }))));
4252
4299
  };
4253
4300
 
4254
- export { Accordion, ActionTile, ArticleCarousel, ArticleSidebar, Author, BannerWithTabs, BusinessSegmentSwitcher, ContentInfoWidget, CopyLead, DownloadList, FAQs, FeaturePost, Highlights, InlineLinkGroup, LinkTile, PartnerBrandLogos, ProductNavigation, PromoListing, PromoListingThumbnailSignpost, Quote, SectionHeading, Statistics, Summary, ThumbnailSignpost, VideoHeroCard, VideoPortraitCard };
4301
+ export { Accordion, ActionTile, ArticleCarousel, ArticleSidebar, Author, BannerWithTabs, BusinessSegmentSwitcher, ContentInfoWidget, CopyLead, DownloadList, FAQs, FeaturePost, HeaderBarNotification, Highlights, InlineLinkGroup, LinkTile, PartnerBrandLogos, ProductNavigation, PromoListing, PromoListingThumbnailSignpost, Quote, SectionHeading, Statistics, Summary, ThumbnailSignpost, VideoHeroCard, VideoPortraitCard };
4255
4302
  //# sourceMappingURL=index.mjs.map