@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.
@@ -1,21 +1,22 @@
1
1
 
2
- > @arc-ui/community-components@3.9.0 build /builds/enterprise/frontend/arc-community/packages/components
2
+ > @arc-ui/community-components@3.11.0 build /builds/enterprise/frontend/arc-community/packages/components
3
3
  > rimraf lib dist && rollup -c && generate-subpath-css && pnpm run build:clean
4
4
 
5
- Browserslist: browsers data (caniuse-lite) is 9 months old. Please run:
5
+ Browserslist: browsers data (caniuse-lite) is 10 months old. Please run:
6
6
  npx update-browserslist-db@latest
7
7
  Why you should do it regularly: https://github.com/browserslist/update-db#readme
8
8
  
9
9
  src/index.ts → lib/index.cjs, lib/index.mjs...
10
- created lib/index.cjs, lib/index.mjs in 5.1s
10
+ created lib/index.cjs, lib/index.mjs in 7.8s
11
11
  
12
12
  ./lib/types/index.d.ts → lib/index.d.mts, lib/index.d.cts...
13
13
  (!) Unresolved dependencies
14
14
  https://rollupjs.org/troubleshooting/#warning-treating-module-as-external-dependency
15
+ @arc-ui/components/NavigationHeader (imported by "lib/types/components/HeaderBarNotification/HeaderBarNotification.d.ts")
15
16
  @arc-ui/components/MediaCard (imported by "lib/types/components/ArticleCarousel/ArticleCarousel.d.ts", "lib/types/components/PromoListing/PromoListing.d.ts" and "lib/types/components/BusinessSegmentSwitcher/types/types.d.ts")
17
+ @arc-ui/components/Download (imported by "lib/types/components/DownloadList/DownloadList.d.ts")
16
18
  @arc-ui/components/Heading (imported by "lib/types/components/CopyLead/CopyLead.d.ts", "lib/types/components/FeaturePost/FeaturePost.d.ts", "lib/types/components/PromoListing/PromoListing.d.ts", "lib/types/components/Summary/Summary.d.ts", "lib/types/components/BannerWithTabs/BannerWithTabs.d.ts", "lib/types/components/SectionHeading/SectionHeading.d.ts", "lib/types/components/PartnerBrandLogos/PartnerBrandLogos.d.ts", "lib/types/components/Accordion/components/AccordionHeading/AccordionHeading.d.ts", "lib/types/components/ArticleSidebar/types/text-section.d.ts", "lib/types/components/ArticleSidebar/types/link-section.d.ts", "lib/types/components/ArticleSidebar/types/topic.d.ts", "lib/types/components/ArticleSidebar/types/share.d.ts" and "lib/types/components/PartnerBrandLogos/components/PartnerLogoSubgroup/PartnerLogoSubgroup.d.ts")
17
19
  @arc-ui/components/VideoPlayer (imported by "lib/types/components/CopyLead/CopyLead.d.ts" and "lib/types/components/FeaturePost/FeaturePost.d.ts")
18
- @arc-ui/components/Download (imported by "lib/types/components/DownloadList/DownloadList.d.ts")
19
20
  @arc-ui/components/Avatar (imported by "lib/types/components/Author/Author.d.ts")
20
21
  @arc-ui/components/ButtonV2 (imported by "lib/types/components/Highlights/Highlights.d.ts" and "lib/types/components/PromoListing/PromoListing.d.ts")
21
22
  @arc-ui/components/ImpactCard (imported by "lib/types/components/PromoListing/PromoListing.d.ts")
@@ -30,17 +31,17 @@ Browserslist: browsers data (caniuse-lite) is 9 months old. Please run:
30
31
  @arc-ui/components/AppButton (imported by "lib/types/components/FeaturePost/types/feature-post-app-button-footer.d.ts")
31
32
  react-player/types (imported by "lib/types/internal/VideoCardPlayer/VideoCardPlayer.d.ts" and "lib/types/internal/VideoCardPlayer/types/player-props.d.ts")
32
33
  @arc-ui/components/Visible (imported by "lib/types/internal/VideoCardPlayer/components/VideoCardThumbnail/VideoCardThumbnail.d.ts")
33
- created lib/index.d.mts, lib/index.d.cts in 130ms
34
+ created lib/index.d.mts, lib/index.d.cts in 212ms
34
35
  
35
- ./src/components/Accordion/index.ts, ./src/components/ActionTile/index.ts, ./src/components/ArticleCarousel/index.ts, ./src/components/ArticleSidebar/index.ts, ./src/components/Author/index.ts, ./src/components/BannerWithTabs/index.ts, ./src/components/BusinessSegmentSwitcher/index.ts, ./src/components/ContentInfoWidget/index.ts, ./src/components/CopyLead/index.ts, ./src/components/DownloadList/index.ts, ./src/components/FAQs/index.ts, ./src/components/FeaturePost/index.ts, ./src/components/Highlights/index.ts, ./src/components/InlineLinkGroup/index.ts, ./src/components/LinkTile/index.ts, ./src/components/PartnerBrandLogos/index.ts, ./src/components/ProductNavigation/index.ts, ./src/components/PromoListing/index.ts, ./src/components/PromoListingThumbnailSignpost/index.ts, ./src/components/Quote/index.ts, ./src/components/SectionHeading/index.ts, ./src/components/Statistics/index.ts, ./src/components/Summary/index.ts, ./src/components/ThumbnailSignpost/index.ts, ./src/components/VideoHeroCard/index.ts, ./src/components/VideoPortraitCard/index.ts → lib...
36
- created lib in 5.9s
36
+ ./src/components/Accordion/index.ts, ./src/components/ActionTile/index.ts, ./src/components/ArticleCarousel/index.ts, ./src/components/ArticleSidebar/index.ts, ./src/components/Author/index.ts, ./src/components/BannerWithTabs/index.ts, ./src/components/BusinessSegmentSwitcher/index.ts, ./src/components/ContentInfoWidget/index.ts, ./src/components/CopyLead/index.ts, ./src/components/DownloadList/index.ts, ./src/components/FAQs/index.ts, ./src/components/FeaturePost/index.ts, ./src/components/HeaderBarNotification/index.ts, ./src/components/Highlights/index.ts, ./src/components/InlineLinkGroup/index.ts, ./src/components/LinkTile/index.ts, ./src/components/PartnerBrandLogos/index.ts, ./src/components/ProductNavigation/index.ts, ./src/components/PromoListing/index.ts, ./src/components/PromoListingThumbnailSignpost/index.ts, ./src/components/Quote/index.ts, ./src/components/SectionHeading/index.ts, ./src/components/Statistics/index.ts, ./src/components/Summary/index.ts, ./src/components/ThumbnailSignpost/index.ts, ./src/components/VideoHeroCard/index.ts, ./src/components/VideoPortraitCard/index.ts → lib...
37
+ created lib in 9.1s
37
38
  
38
- ./src/components/Accordion/index.ts, ./src/components/ActionTile/index.ts, ./src/components/ArticleCarousel/index.ts, ./src/components/ArticleSidebar/index.ts, ./src/components/Author/index.ts, ./src/components/BannerWithTabs/index.ts, ./src/components/BusinessSegmentSwitcher/index.ts, ./src/components/ContentInfoWidget/index.ts, ./src/components/CopyLead/index.ts, ./src/components/DownloadList/index.ts, ./src/components/FAQs/index.ts, ./src/components/FeaturePost/index.ts, ./src/components/Highlights/index.ts, ./src/components/InlineLinkGroup/index.ts, ./src/components/LinkTile/index.ts, ./src/components/PartnerBrandLogos/index.ts, ./src/components/ProductNavigation/index.ts, ./src/components/PromoListing/index.ts, ./src/components/PromoListingThumbnailSignpost/index.ts, ./src/components/Quote/index.ts, ./src/components/SectionHeading/index.ts, ./src/components/Statistics/index.ts, ./src/components/Summary/index.ts, ./src/components/ThumbnailSignpost/index.ts, ./src/components/VideoHeroCard/index.ts, ./src/components/VideoPortraitCard/index.ts → lib...
39
- created lib in 5.1s
40
- Browserslist: browsers data (caniuse-lite) is 9 months old. Please run:
39
+ ./src/components/Accordion/index.ts, ./src/components/ActionTile/index.ts, ./src/components/ArticleCarousel/index.ts, ./src/components/ArticleSidebar/index.ts, ./src/components/Author/index.ts, ./src/components/BannerWithTabs/index.ts, ./src/components/BusinessSegmentSwitcher/index.ts, ./src/components/ContentInfoWidget/index.ts, ./src/components/CopyLead/index.ts, ./src/components/DownloadList/index.ts, ./src/components/FAQs/index.ts, ./src/components/FeaturePost/index.ts, ./src/components/HeaderBarNotification/index.ts, ./src/components/Highlights/index.ts, ./src/components/InlineLinkGroup/index.ts, ./src/components/LinkTile/index.ts, ./src/components/PartnerBrandLogos/index.ts, ./src/components/ProductNavigation/index.ts, ./src/components/PromoListing/index.ts, ./src/components/PromoListingThumbnailSignpost/index.ts, ./src/components/Quote/index.ts, ./src/components/SectionHeading/index.ts, ./src/components/Statistics/index.ts, ./src/components/Summary/index.ts, ./src/components/ThumbnailSignpost/index.ts, ./src/components/VideoHeroCard/index.ts, ./src/components/VideoPortraitCard/index.ts → lib...
40
+ created lib in 8s
41
+ Browserslist: browsers data (caniuse-lite) is 10 months old. Please run:
41
42
  npx update-browserslist-db@latest
42
43
  Why you should do it regularly: https://github.com/browserslist/update-db#readme
43
44
 
44
- > @arc-ui/community-components@3.9.0 build:clean /builds/enterprise/frontend/arc-community/packages/components
45
+ > @arc-ui/community-components@3.11.0 build:clean /builds/enterprise/frontend/arc-community/packages/components
45
46
  > rimraf ./lib/types ./lib/styles.js ./lib/index.js ./lib/index.js.map
46
47
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @arc-ui/community-components
2
2
 
3
+ ## 3.11.0
4
+
5
+ ### Minor Changes
6
+
7
+ - e30e127: New abandoned cart notification
8
+
9
+ ## 3.10.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 7a1af63: Update storybook to show and hide icon
14
+ - 7d5d2ae: New abandoned cart notification
15
+ - 7a1af63: re add filterAttrs
16
+ - 7a1af63: use classNames utility to conditionally render title class
17
+ - 7a1af63: Updated ActionTile to behave more like a native button, with improved keyboard activation, visible focus styling, and full-width layout while preserving a 230px minimum width. The component props were tightened by removing arbitrary attribute forwarding and custom className support, and tests were added for keyboard interaction and sizing. Storybook now wraps the tile in a 230px container to reflect the intended layout.
18
+
19
+ ### Patch Changes
20
+
21
+ - b05ab9d: fix: fixed storybook version selector
22
+
3
23
  ## 3.9.0
4
24
 
5
25
  ### Minor Changes
@@ -1,5 +1,6 @@
1
1
  import path from "node:path";
2
2
  import fs from "node:fs";
3
+ import { execSync } from "node:child_process";
3
4
 
4
5
  import semverRsort from "semver/functions/rsort.js";
5
6
 
@@ -10,10 +11,56 @@ let contents = changelog.toString().split("\n");
10
11
  const regexp =
11
12
  /^##\s(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/g;
12
13
 
14
+ // We extract versions from the changelog rather than relying solely on git tags
15
+ // because some versions don't have deployments. This keeps the data true to our changelog.
13
16
  const versions = contents
14
17
  .filter((line) => line && regexp.test(line))
15
18
  .map((v) => v.replace("## ", "v"));
16
19
 
20
+ const sorted = semverRsort(versions);
21
+
22
+ // Build version-to-date mapping from git tags
23
+ const dateMap = {};
24
+ try {
25
+ const tags = execSync("git tag --sort=-creatordate", { encoding: "utf-8" })
26
+ .trim()
27
+ .split("\n")
28
+ .filter(Boolean);
29
+
30
+ for (const tag of tags) {
31
+ try {
32
+ // For each tag (e.g. "2026-05-22"), retrieve the CHANGELOG.md as it existed
33
+ // at that tag, find the first version heading (## X.Y.Z), and map that
34
+ // version to the tag name — giving us a version-to-release-date mapping.
35
+ const changelogAtTag = execSync(
36
+ `git show ${tag}:packages/components/CHANGELOG.md`,
37
+ { encoding: "utf-8" },
38
+ );
39
+ const firstVersion = changelogAtTag
40
+ .split("\n")
41
+ .find((line) => /^## \d/.test(line));
42
+ if (firstVersion) {
43
+ const version = "v" + firstVersion.replace("## ", "");
44
+ dateMap[version] = tag;
45
+ }
46
+ } catch {
47
+ // tag may not have the file, skip
48
+ }
49
+ }
50
+ } catch {
51
+ console.warn("Warning: could not read git tags for version-date mapping");
52
+ }
53
+
54
+ // Output as array of { version, date } objects
55
+ const versionsWithDates = sorted.map((version) => ({
56
+ version,
57
+ date: dateMap[version] || null,
58
+ }));
59
+
17
60
  const versionsPath = path.join("./versions.json");
18
61
 
19
- fs.writeFileSync(versionsPath, JSON.stringify(semverRsort(versions)));
62
+ fs.writeFileSync(versionsPath, JSON.stringify(versionsWithDates));
63
+
64
+ console.log(versionsWithDates);
65
+
66
+ console.log(`versions.json written with ${versionsWithDates.length} versions`);
@@ -3,10 +3,10 @@
3
3
  var tslib_es6 = require('../_shared/cjs/tslib.es6-BxB9I209.cjs');
4
4
  var React = require('react');
5
5
  var index = require('../_shared/cjs/index-B7Z7sgRq.cjs');
6
- var filterAttrs = require('../_shared/cjs/filter-attrs-BizjMsy0.cjs');
7
6
  var Icon = require('@arc-ui/components/Icon');
7
+ var filterAttrs = require('../_shared/cjs/filter-attrs-BizjMsy0.cjs');
8
8
 
9
- var styles = {"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"};
9
+ var styles = {"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"};
10
10
 
11
11
  /**
12
12
  * Do not edit directly
@@ -17,20 +17,21 @@ const BtIconTickAlt2Px =
17
17
  "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";
18
18
 
19
19
  var ActionTile = function (_a) {
20
- var _b;
21
- 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 = tslib_es6.__rest(_a, ["icon", "activeIcon", "heading", "isActive", "onClick", "className"]);
22
- var tileClasses = index.classNames(styles["action-tile"], (_b = {},
23
- _b[styles["action-tile--active"]] = isActive,
24
- _b), className);
20
+ var _b, _c;
21
+ var icon = _a.icon, activeIcon = _a.activeIcon, heading = _a.heading, _d = _a.isActive, isActive = _d === void 0 ? false : _d, onClick = _a.onClick, props = tslib_es6.__rest(_a, ["icon", "activeIcon", "heading", "isActive", "onClick"]);
25
22
  var displayIcon = isActive && activeIcon ? activeIcon : icon;
26
23
  var content = (React.createElement(React.Fragment, null,
27
- React.createElement("div", { className: styles["action-tile-content"] },
24
+ React.createElement("div", { className: index.classNames(styles["action-tile-content"], (_b = {},
25
+ _b[styles["action-tile-content--without-icon"]] = !displayIcon,
26
+ _b)) },
28
27
  displayIcon && (React.createElement("div", { className: styles["action-tile-icon"] },
29
28
  React.createElement(Icon.Icon, { icon: displayIcon, size: 48 }))),
30
29
  React.createElement("span", { className: styles["action-tile-heading"] }, heading)),
31
30
  isActive && (React.createElement("div", { className: styles["action-tile-tick"] },
32
31
  React.createElement(Icon.Icon, { icon: BtIconTickAlt2Px, size: 28 })))));
33
- return (React.createElement("button", tslib_es6.__assign({ type: "button", className: tileClasses, onClick: onClick, "aria-pressed": isActive }, filterAttrs.filterAttrs(props)), content));
32
+ return (React.createElement("button", tslib_es6.__assign({ type: "button", className: index.classNames(styles["action-tile"], (_c = {},
33
+ _c[styles["action-tile--active"]] = isActive,
34
+ _c)), onClick: onClick, "aria-pressed": isActive }, filterAttrs.filterAttrs(props)), content));
34
35
  };
35
36
 
36
37
  exports.ActionTile = ActionTile;
@@ -1,10 +1,10 @@
1
1
  import { _ as __rest, a as __assign } from '../_shared/esm/tslib.es6-BVXMhEem.mjs';
2
2
  import React__default from 'react';
3
3
  import { c as classNames } from '../_shared/esm/index-BSO2EFem.mjs';
4
- import { f as filterAttrs } from '../_shared/esm/filter-attrs-DZ7RCEZm.mjs';
5
4
  import { Icon } from '@arc-ui/components/Icon';
5
+ import { f as filterAttrs } from '../_shared/esm/filter-attrs-DZ7RCEZm.mjs';
6
6
 
7
- var styles = {"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"};
7
+ var styles = {"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"};
8
8
 
9
9
  /**
10
10
  * Do not edit directly
@@ -15,20 +15,21 @@ const BtIconTickAlt2Px =
15
15
  "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";
16
16
 
17
17
  var ActionTile = function (_a) {
18
- var _b;
19
- 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"]);
20
- var tileClasses = classNames(styles["action-tile"], (_b = {},
21
- _b[styles["action-tile--active"]] = isActive,
22
- _b), className);
18
+ var _b, _c;
19
+ 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"]);
23
20
  var displayIcon = isActive && activeIcon ? activeIcon : icon;
24
21
  var content = (React__default.createElement(React__default.Fragment, null,
25
- React__default.createElement("div", { className: styles["action-tile-content"] },
22
+ React__default.createElement("div", { className: classNames(styles["action-tile-content"], (_b = {},
23
+ _b[styles["action-tile-content--without-icon"]] = !displayIcon,
24
+ _b)) },
26
25
  displayIcon && (React__default.createElement("div", { className: styles["action-tile-icon"] },
27
26
  React__default.createElement(Icon, { icon: displayIcon, size: 48 }))),
28
27
  React__default.createElement("span", { className: styles["action-tile-heading"] }, heading)),
29
28
  isActive && (React__default.createElement("div", { className: styles["action-tile-tick"] },
30
29
  React__default.createElement(Icon, { icon: BtIconTickAlt2Px, size: 28 })))));
31
- return (React__default.createElement("button", __assign({ type: "button", className: tileClasses, onClick: onClick, "aria-pressed": isActive }, filterAttrs(props)), content));
30
+ return (React__default.createElement("button", __assign({ type: "button", className: classNames(styles["action-tile"], (_c = {},
31
+ _c[styles["action-tile--active"]] = isActive,
32
+ _c)), onClick: onClick, "aria-pressed": isActive }, filterAttrs(props)), content));
32
33
  };
33
34
 
34
35
  export { ActionTile };
@@ -1 +1 @@
1
- .ActionTile-module_action-tile__JPwGb{box-sizing:border-box;display:flex;flex-direction:row;justify-content:center;align-items:center;width:230px;height:164px;min-height:132px;padding:var(--sem-space-padding-110);gap:var(--sem-space-padding-70);border-radius:var(--sem-border-radius-xl);border:var(--sem-border-width-xxs) solid var(--sem-color-border-secondary-light-minimal);background:var(--sem-color-bg-secondary-light-default);text-decoration:none;cursor:pointer;transition:border-color 0.2s ease,box-shadow 0.2s ease;position:relative;isolation:isolate;overflow:visible}.ActionTile-module_action-tile-content__ZkgHc{display:flex;flex-direction:column;gap:var(--sem-space-padding-60);flex:1;align-items:flex-start;align-self:stretch}.ActionTile-module_action-tile-icon__PY1EN{display:flex;align-items:center;justify-content:flex-start;width:48px;height:48px;color:var(--sem-color-fg-secondary-light-default);transition:color 0.2s ease}.ActionTile-module_action-tile-heading__Uxdu9{font-family:var(--sem-font-family-heading);font-size:var(--sem-font-size-125);font-weight:var(--sem-font-weight-semi);line-height:var(--sem-line-height-base-scale-m);letter-spacing:0;color:var(--sem-color-fg-secondary-light-default);margin:0;transition:color 0.2s ease;width:100%;word-wrap:break-word;word-wrap:break-word;align-self:stretch;flex-grow:1}.ActionTile-module_action-tile--active__-aWze{background:var(--sem-color-bg-primary-light-subtle-alt);border-color:var(--sem-color-fg-primary-light-minimal);box-shadow:none}.ActionTile-module_action-tile--active__-aWze .ActionTile-module_action-tile-heading__Uxdu9,.ActionTile-module_action-tile--active__-aWze .ActionTile-module_action-tile-icon__PY1EN{color:var(--sem-color-fg-primary-light-minimal)}.ActionTile-module_action-tile-tick__vhsJE{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--sem-border-radius-l);background:var(--sem-color-fg-primary-light-minimal);color:var(--sem-color-fg-secondary-light-alt);flex-shrink:0;position:absolute;top:-4px;right:-4px;z-index:1}.ActionTile-module_action-tile__JPwGb:hover{border-color:var(--button-v2-colors-light-text-hover);box-shadow:0 0 0 1px var(--button-v2-colors-light-text-hover)}.ActionTile-module_action-tile__JPwGb:hover .ActionTile-module_action-tile-heading__Uxdu9,.ActionTile-module_action-tile__JPwGb:hover .ActionTile-module_action-tile-icon__PY1EN{color:var(--button-v2-colors-light-text-hover)}.ActionTile-module_action-tile--active__-aWze:hover{background:var(--sem-color-bg-primary-light-subtle-alt);border-color:var(--sem-color-fg-primary-light-minimal);box-shadow:0 0 0 1px var(--sem-color-fg-primary-light-minimal)}.ActionTile-module_action-tile--active__-aWze:hover .ActionTile-module_action-tile-heading__Uxdu9,.ActionTile-module_action-tile--active__-aWze:hover .ActionTile-module_action-tile-icon__PY1EN{color:var(--sem-color-fg-primary-light-minimal)}
1
+ .ActionTile-module_action-tile__JPwGb{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;display:flex;flex-direction:row;justify-content:center;align-items:center;width:100%;min-width:230px;height:164px;min-height:132px;padding:var(--sem-space-padding-110);gap:var(--sem-space-padding-70);border-radius:var(--sem-border-radius-xl);border:var(--sem-border-width-xxs) solid var(--sem-color-border-secondary-light-minimal);background:var(--sem-color-bg-secondary-light-default);text-decoration:none;cursor:pointer;font:inherit;outline:var(--focus-border-weight-s) solid transparent;outline-offset:2px;transition:border-color 0.2s ease,box-shadow 0.2s ease;position:relative;isolation:isolate;overflow:visible}.ActionTile-module_action-tile-content__ZkgHc{display:flex;flex-direction:column;gap:var(--sem-space-padding-60);flex:1;align-items:flex-start;align-self:stretch}.ActionTile-module_action-tile-content--without-icon__7F5xj{justify-content:center}.ActionTile-module_action-tile-icon__PY1EN{display:flex;align-items:center;justify-content:flex-start;width:48px;height:48px;color:var(--sem-color-fg-secondary-light-default);transition:color 0.2s ease}.ActionTile-module_action-tile-heading__Uxdu9{font-family:var(--sem-font-family-heading);font-size:var(--sem-font-size-125);font-weight:var(--sem-font-weight-semi);line-height:var(--sem-line-height-base-scale-m);letter-spacing:0;color:var(--sem-color-fg-secondary-light-default);margin:0;transition:color 0.2s ease;width:100%;word-wrap:break-word;word-wrap:break-word;align-self:stretch;flex-grow:1;text-align:left}.ActionTile-module_action-tile-content--without-icon__7F5xj .ActionTile-module_action-tile-heading__Uxdu9{flex-grow:0}.ActionTile-module_action-tile--active__-aWze{background:var(--sem-color-bg-primary-light-subtle-alt);border-color:var(--sem-color-fg-primary-light-minimal);box-shadow:none}.ActionTile-module_action-tile--active__-aWze .ActionTile-module_action-tile-heading__Uxdu9,.ActionTile-module_action-tile--active__-aWze .ActionTile-module_action-tile-icon__PY1EN{color:var(--sem-color-fg-primary-light-minimal)}.ActionTile-module_action-tile-tick__vhsJE{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--sem-border-radius-l);background:var(--sem-color-fg-primary-light-minimal);color:var(--sem-color-fg-secondary-light-alt);flex-shrink:0;position:absolute;top:-4px;right:-4px;z-index:1}.ActionTile-module_action-tile__JPwGb:hover{border-color:var(--button-v2-colors-light-text-hover);box-shadow:0 0 0 1px var(--button-v2-colors-light-text-hover)}.ActionTile-module_action-tile__JPwGb:hover .ActionTile-module_action-tile-heading__Uxdu9,.ActionTile-module_action-tile__JPwGb:hover .ActionTile-module_action-tile-icon__PY1EN{color:var(--button-v2-colors-light-text-hover)}.ActionTile-module_action-tile--active__-aWze:hover{background:var(--sem-color-bg-primary-light-subtle-alt);border-color:var(--sem-color-fg-primary-light-minimal);box-shadow:0 0 0 1px var(--sem-color-fg-primary-light-minimal)}.ActionTile-module_action-tile--active__-aWze:hover .ActionTile-module_action-tile-heading__Uxdu9,.ActionTile-module_action-tile--active__-aWze:hover .ActionTile-module_action-tile-icon__PY1EN{color:var(--sem-color-fg-primary-light-minimal)}.ActionTile-module_action-tile__JPwGb:focus-visible{box-shadow:0 0 0 1px var(--card-colors-light-fg-hover);outline-color:var(--focus-colors-light-border-subtle)}
@@ -0,0 +1,59 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('../_shared/cjs/tslib.es6-BxB9I209.cjs');
4
+ var React = require('react');
5
+ var index = require('../_shared/cjs/index-B7Z7sgRq.cjs');
6
+ var filterAttrs = require('../_shared/cjs/filter-attrs-BizjMsy0.cjs');
7
+ var NavigationHeader = require('@arc-ui/components/NavigationHeader');
8
+ var Popover = require('@arc-ui/components/Popover');
9
+ var Icon = require('@arc-ui/components/Icon');
10
+ var Image = require('@arc-ui/components/Image');
11
+ var Heading = require('@arc-ui/components/Heading');
12
+ var Text = require('@arc-ui/components/Text');
13
+ var Tooltip = require('@arc-ui/components/Tooltip');
14
+ var ButtonV2 = require('@arc-ui/components/ButtonV2');
15
+
16
+ /**
17
+ * Do not edit directly
18
+ * Generated file
19
+ */
20
+
21
+ const BtIconCrossAlt =
22
+ "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";
23
+
24
+ var styles = {"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"};
25
+
26
+ var HeaderBarNotification = function (_a) {
27
+ var _b;
28
+ 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 = tslib_es6.__rest(_a, ["headerActionProps", "notificationId", "isPersistant", "icon", "image", "heading", "tagline", "children", "button", "showAtSize"]);
29
+ var _d = React.useState(isPersistant), showNotification = _d[0], setShowNotification = _d[1];
30
+ var localStorageId = "hide".concat(notificationId.replace(/[^a-zA-Z0-9\-_]/g, ""));
31
+ // Check to see if the notication has been hidden or not and show it if so
32
+ React.useEffect(function () {
33
+ if (typeof window !== "undefined" && !isPersistant) {
34
+ setShowNotification(!localStorage.getItem(localStorageId));
35
+ }
36
+ }, []);
37
+ // Handle the closure of the notification, store it in the session so we don't keep showing it.
38
+ var handleClosePopup = function () {
39
+ if (!isPersistant)
40
+ localStorage.setItem(localStorageId, "true");
41
+ setShowNotification(false);
42
+ };
43
+ return (React.createElement(Popover.Popover, tslib_es6.__assign({ open: showNotification, side: "bottom", sideOffset: 12, maxWidth: 900, arrow: true, asChild: true, className: index.classNames(styles.popupNotification, (_b = {}, _b[styles.hiddenByDefault] = showAtSize, _b), showAtSize === null || showAtSize === void 0 ? void 0 : showAtSize.map(function (s) { return styles[s]; })), content: React.createElement("div", { className: styles.container },
44
+ React.createElement("div", { className: styles.content },
45
+ (image || icon) && (React.createElement("div", { className: styles.image },
46
+ image && (React.createElement(Image.Image, { src: image, alt: heading, fit: "cover", width: 55 })),
47
+ icon && React.createElement(Icon.Icon, { icon: icon, size: 35 }))),
48
+ React.createElement("div", { className: styles.details },
49
+ tagline && (React.createElement(Text.Text, { size: "m", tone: "muted" }, tagline)),
50
+ React.createElement(Heading.Heading, { size: "s", level: "3" }, heading),
51
+ children)),
52
+ button && (React.createElement(ButtonV2.ButtonV2, { onClick: button.handleClick, label: button.text, buttonStyle: "secondary", isFullWidth: true })),
53
+ React.createElement("div", { className: styles.closeButtonContainer },
54
+ React.createElement(Tooltip.Tooltip, { side: "bottom", title: "Dismiss Notification", asChild: true },
55
+ React.createElement(ButtonV2.ButtonV2, { "data-testid": localStorageId, buttonStyle: "tertiary", "aria-label": "Close ".concat(notificationId, " popup"), onClick: handleClosePopup, icon: BtIconCrossAlt })))) }, filterAttrs.filterAttrs(props)),
56
+ React.createElement(NavigationHeader.NavigationHeaderAction, tslib_es6.__assign({ isAttention: true }, headerActionProps))));
57
+ };
58
+
59
+ exports.HeaderBarNotification = HeaderBarNotification;
@@ -0,0 +1,57 @@
1
+ import { _ as __rest, a as __assign } from '../_shared/esm/tslib.es6-BVXMhEem.mjs';
2
+ import React__default, { useState, useEffect } from 'react';
3
+ import { c as classNames } from '../_shared/esm/index-BSO2EFem.mjs';
4
+ import { f as filterAttrs } from '../_shared/esm/filter-attrs-DZ7RCEZm.mjs';
5
+ import { NavigationHeaderAction } from '@arc-ui/components/NavigationHeader';
6
+ import { Popover } from '@arc-ui/components/Popover';
7
+ import { Icon } from '@arc-ui/components/Icon';
8
+ import { Image } from '@arc-ui/components/Image';
9
+ import { Heading } from '@arc-ui/components/Heading';
10
+ import { Text } from '@arc-ui/components/Text';
11
+ import { Tooltip } from '@arc-ui/components/Tooltip';
12
+ import { ButtonV2 } from '@arc-ui/components/ButtonV2';
13
+
14
+ /**
15
+ * Do not edit directly
16
+ * Generated file
17
+ */
18
+
19
+ const BtIconCrossAlt =
20
+ "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";
21
+
22
+ var styles = {"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"};
23
+
24
+ var HeaderBarNotification = function (_a) {
25
+ var _b;
26
+ 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"]);
27
+ var _d = useState(isPersistant), showNotification = _d[0], setShowNotification = _d[1];
28
+ var localStorageId = "hide".concat(notificationId.replace(/[^a-zA-Z0-9\-_]/g, ""));
29
+ // Check to see if the notication has been hidden or not and show it if so
30
+ useEffect(function () {
31
+ if (typeof window !== "undefined" && !isPersistant) {
32
+ setShowNotification(!localStorage.getItem(localStorageId));
33
+ }
34
+ }, []);
35
+ // Handle the closure of the notification, store it in the session so we don't keep showing it.
36
+ var handleClosePopup = function () {
37
+ if (!isPersistant)
38
+ localStorage.setItem(localStorageId, "true");
39
+ setShowNotification(false);
40
+ };
41
+ return (React__default.createElement(Popover, __assign({ open: showNotification, side: "bottom", sideOffset: 12, maxWidth: 900, arrow: true, asChild: true, className: classNames(styles.popupNotification, (_b = {}, _b[styles.hiddenByDefault] = showAtSize, _b), showAtSize === null || showAtSize === void 0 ? void 0 : showAtSize.map(function (s) { return styles[s]; })), content: React__default.createElement("div", { className: styles.container },
42
+ React__default.createElement("div", { className: styles.content },
43
+ (image || icon) && (React__default.createElement("div", { className: styles.image },
44
+ image && (React__default.createElement(Image, { src: image, alt: heading, fit: "cover", width: 55 })),
45
+ icon && React__default.createElement(Icon, { icon: icon, size: 35 }))),
46
+ React__default.createElement("div", { className: styles.details },
47
+ tagline && (React__default.createElement(Text, { size: "m", tone: "muted" }, tagline)),
48
+ React__default.createElement(Heading, { size: "s", level: "3" }, heading),
49
+ children)),
50
+ button && (React__default.createElement(ButtonV2, { onClick: button.handleClick, label: button.text, buttonStyle: "secondary", isFullWidth: true })),
51
+ React__default.createElement("div", { className: styles.closeButtonContainer },
52
+ React__default.createElement(Tooltip, { side: "bottom", title: "Dismiss Notification", asChild: true },
53
+ React__default.createElement(ButtonV2, { "data-testid": localStorageId, buttonStyle: "tertiary", "aria-label": "Close ".concat(notificationId, " popup"), onClick: handleClosePopup, icon: BtIconCrossAlt })))) }, filterAttrs(props)),
54
+ React__default.createElement(NavigationHeaderAction, __assign({ isAttention: true }, headerActionProps))));
55
+ };
56
+
57
+ export { HeaderBarNotification };
@@ -0,0 +1 @@
1
+ .HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_hiddenByDefault__JHbUy{display:none}.HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_s__HofMM{display:block}@media (min-width:768px){.HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_s__HofMM{display:none}}@media (min-width:768px){.HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_m__ZUdjq{display:block}}@media (min-width:1024px){.HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_m__ZUdjq{display:none}}@media (min-width:1024px){.HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_l__wlZ1Z{display:block}}@media (min-width:1280px){.HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_l__wlZ1Z{display:none}}@media (min-width:1280px){.HeaderBarNotification-module_popupNotification__HAxod.HeaderBarNotification-module_xl__z7DBP{display:block}}.HeaderBarNotification-module_container__18nau{display:flex;flex-direction:column;gap:16px;padding:20px;background:#ffffff;border-radius:var(--sem-border-radius-m)}@media (min-width:768px){.HeaderBarNotification-module_container__18nau{flex-direction:row;align-items:center}}.HeaderBarNotification-module_content__SUo-l{display:flex;align-items:center;gap:16px;width:100%;min-width:55%;max-width:70vw;margin-right:24px}@media (min-width:768px){.HeaderBarNotification-module_content__SUo-l{width:400px;margin-right:16px}}.HeaderBarNotification-module_image__uV-nD{flex-shrink:0}.HeaderBarNotification-module_details__S5Rrx{display:flex;flex-direction:column;width:100%}.HeaderBarNotification-module_closeButtonContainer__b1UDI{position:absolute;right:20px;top:20px;margin:0}@media (min-width:768px){.HeaderBarNotification-module_closeButtonContainer__b1UDI{position:relative;right:0;top:0}}
@@ -67,23 +67,23 @@ var ProductNavigation = function (_a) {
67
67
  return (React.createElement("li", { key: "displayList-".concat(i), tabIndex: -1, ref: i === skipLinkCard ? cardRef : undefined, "data-cy": "list-item-".concat(i) },
68
68
  React.createElement(InformationCard.InformationCard, tslib_es6.__assign({}, cardProps, { minHeight: minHeight !== null && minHeight !== void 0 ? minHeight : cardProps.minHeight, headingLevel: (_a = cardProps.headingLevel) !== null && _a !== void 0 ? _a : "2" }))));
69
69
  })),
70
- React.createElement(VerticalSpace.VerticalSpace, { size: "40" }),
71
- React.createElement("div", { style: { display: "flex" } },
72
- !hideButton && !hideLessButton && (React.createElement(ButtonV2.ButtonV2, { label: displayList.length < productList.length
73
- ? "Show more"
74
- : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
75
- hideButton ||
76
- (displaySkipButton && displayList.length > cardsToDisplay && (React.createElement("div", { id: "skip-link", className: index.classNames(styles["productNavigation-skipLink"]), tabIndex: -1 },
77
- React.createElement(ButtonV2.ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true })))),
78
- React.createElement(VisuallyHidden.VisuallyHidden, null,
79
- React.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
80
- React.createElement("p", null,
81
- "Total products listed ",
82
- displayList.length,
83
- ". Total products hidden",
84
- " ",
85
- productList.length - displayList.length,
86
- "."))))));
70
+ !hideButton &&
71
+ !(defaultExpanded && displayList.length === productList.length) && (React.createElement(React.Fragment, null,
72
+ React.createElement(VerticalSpace.VerticalSpace, { size: "40" }),
73
+ React.createElement("div", { style: { display: "flex" } },
74
+ !hideLessButton && (React.createElement(ButtonV2.ButtonV2, { label: displayList.length < productList.length
75
+ ? "Show more"
76
+ : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
77
+ displaySkipButton && displayList.length > cardsToDisplay && (React.createElement("div", { id: "skip-link", className: index.classNames(styles["productNavigation-skipLink"]), tabIndex: -1 },
78
+ React.createElement(ButtonV2.ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true }))),
79
+ React.createElement(VisuallyHidden.VisuallyHidden, null,
80
+ React.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
81
+ React.createElement("p", null,
82
+ "Total products listed ",
83
+ displayList.length,
84
+ ". Total products hidden ",
85
+ productList.length - displayList.length,
86
+ "."))))))));
87
87
  };
88
88
 
89
89
  exports.ProductNavigation = ProductNavigation;
@@ -65,23 +65,23 @@ var ProductNavigation = function (_a) {
65
65
  return (React__default.createElement("li", { key: "displayList-".concat(i), tabIndex: -1, ref: i === skipLinkCard ? cardRef : undefined, "data-cy": "list-item-".concat(i) },
66
66
  React__default.createElement(InformationCard, __assign({}, cardProps, { minHeight: minHeight !== null && minHeight !== void 0 ? minHeight : cardProps.minHeight, headingLevel: (_a = cardProps.headingLevel) !== null && _a !== void 0 ? _a : "2" }))));
67
67
  })),
68
- React__default.createElement(VerticalSpace, { size: "40" }),
69
- React__default.createElement("div", { style: { display: "flex" } },
70
- !hideButton && !hideLessButton && (React__default.createElement(ButtonV2, { label: displayList.length < productList.length
71
- ? "Show more"
72
- : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
73
- hideButton ||
74
- (displaySkipButton && displayList.length > cardsToDisplay && (React__default.createElement("div", { id: "skip-link", className: classNames(styles["productNavigation-skipLink"]), tabIndex: -1 },
75
- React__default.createElement(ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true })))),
76
- React__default.createElement(VisuallyHidden, null,
77
- React__default.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
78
- React__default.createElement("p", null,
79
- "Total products listed ",
80
- displayList.length,
81
- ". Total products hidden",
82
- " ",
83
- productList.length - displayList.length,
84
- "."))))));
68
+ !hideButton &&
69
+ !(defaultExpanded && displayList.length === productList.length) && (React__default.createElement(React__default.Fragment, null,
70
+ React__default.createElement(VerticalSpace, { size: "40" }),
71
+ React__default.createElement("div", { style: { display: "flex" } },
72
+ !hideLessButton && (React__default.createElement(ButtonV2, { label: displayList.length < productList.length
73
+ ? "Show more"
74
+ : "Show less", buttonStyle: "secondary", onClick: clickController, isFullWidth: isMinWidthArcBreakpointS ? false : true, isLoading: isLoading })),
75
+ displaySkipButton && displayList.length > cardsToDisplay && (React__default.createElement("div", { id: "skip-link", className: classNames(styles["productNavigation-skipLink"]), tabIndex: -1 },
76
+ React__default.createElement(ButtonV2, { label: "Move to first new card", buttonStyle: "primary", onClick: moveFocus, isFullWidth: isMinWidthArcBreakpointS ? false : true }))),
77
+ React__default.createElement(VisuallyHidden, null,
78
+ React__default.createElement("div", { "aria-live": "polite", id: "aria-live-region", "aria-atomic": true },
79
+ React__default.createElement("p", null,
80
+ "Total products listed ",
81
+ displayList.length,
82
+ ". Total products hidden ",
83
+ productList.length - displayList.length,
84
+ "."))))))));
85
85
  };
86
86
 
87
87
  export { ProductNavigation };