@digital-b2c/coreui-kit 0.14.4 → 0.14.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  var clsx43 = require('clsx');
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
- var React68 = require('react');
5
+ var React69 = require('react');
6
6
  var gsap = require('gsap');
7
7
  var react = require('@gsap/react');
8
8
  var ScrollTrigger = require('gsap/ScrollTrigger');
@@ -14,7 +14,7 @@ var ReactPlayer = require('react-player');
14
14
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
15
15
 
16
16
  var clsx43__default = /*#__PURE__*/_interopDefault(clsx43);
17
- var React68__default = /*#__PURE__*/_interopDefault(React68);
17
+ var React69__default = /*#__PURE__*/_interopDefault(React69);
18
18
  var gsap__default = /*#__PURE__*/_interopDefault(gsap);
19
19
  var ReactPlayer__default = /*#__PURE__*/_interopDefault(ReactPlayer);
20
20
 
@@ -321,6 +321,11 @@ var SvgIconPlay = (props) => /* @__PURE__ */ jsxRuntime.jsxs("svg", __spreadProp
321
321
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M53.4617 90.7285L90.7305 66.9993L53.4617 43.2702V90.7285ZM67.0013 122.833C59.3707 122.833 52.1589 121.367 45.3659 118.436C38.5728 115.505 32.6405 111.503 27.569 106.432C22.4975 101.36 18.4961 95.4278 15.5648 88.6348C12.6336 81.8417 11.168 74.6299 11.168 66.9993C11.168 59.2757 12.6336 52.0174 15.5648 45.2243C18.4961 38.4313 22.4975 32.5223 27.569 27.4973C32.6405 22.4723 38.5728 18.4941 45.3659 15.5629C52.1589 12.6316 59.3707 11.166 67.0013 11.166C74.7249 11.166 81.9833 12.6316 88.7763 15.5629C95.5694 18.4941 101.478 22.4723 106.503 27.4973C111.528 32.5223 115.507 38.4313 118.438 45.2243C121.369 52.0174 122.835 59.2757 122.835 66.9993C122.835 74.6299 121.369 81.8417 118.438 88.6348C115.507 95.4278 111.528 101.36 106.503 106.432C101.478 111.503 95.5694 115.505 88.7763 118.436C81.9833 121.367 74.7249 122.833 67.0013 122.833Z", fill: "#080808" })
322
322
  ] }));
323
323
  var icon_play_default = SvgIconPlay;
324
+ var SvgIconLock = (props) => /* @__PURE__ */ jsxRuntime.jsxs("svg", __spreadProps(__spreadValues({ width: 37, height: 38, viewBox: "0 0 37 38", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props), { children: [
325
+ /* @__PURE__ */ jsxRuntime.jsx("g", { clipPath: "url(#clip0_11156_23256)", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M9.24935 34.832C8.40143 34.832 7.67556 34.522 7.07174 33.9018C6.46793 33.2817 6.16602 32.5362 6.16602 31.6654V15.832C6.16602 14.9612 6.46793 14.2157 7.07174 13.5956C7.67556 12.9754 8.40143 12.6654 9.24935 12.6654H10.791V9.4987C10.791 7.30842 11.5426 5.44141 13.0457 3.89766C14.5488 2.35391 16.3667 1.58203 18.4993 1.58203C20.632 1.58203 22.4499 2.35391 23.953 3.89766C25.4561 5.44141 26.2077 7.30842 26.2077 9.4987V12.6654H27.7493C28.5973 12.6654 29.3231 12.9754 29.927 13.5956C30.5308 14.2157 30.8327 14.9612 30.8327 15.832V31.6654C30.8327 32.5362 30.5308 33.2817 29.927 33.9018C29.3231 34.522 28.5973 34.832 27.7493 34.832H9.24935ZM9.24935 31.6654H27.7493V15.832H9.24935V31.6654ZM20.677 25.9852C21.2808 25.365 21.5827 24.6195 21.5827 23.7487C21.5827 22.8779 21.2808 22.1324 20.677 21.5122C20.0731 20.8921 19.3473 20.582 18.4993 20.582C17.6514 20.582 16.9256 20.8921 16.3217 21.5122C15.7179 22.1324 15.416 22.8779 15.416 23.7487C15.416 24.6195 15.7179 25.365 16.3217 25.9852C16.9256 26.6053 17.6514 26.9154 18.4993 26.9154C19.3473 26.9154 20.0731 26.6053 20.677 25.9852ZM13.8743 12.6654H23.1243V9.4987C23.1243 8.17925 22.6747 7.05773 21.7754 6.13411C20.8761 5.2105 19.7841 4.7487 18.4993 4.7487C17.2146 4.7487 16.1226 5.2105 15.2233 6.13411C14.324 7.05773 13.8743 8.17925 13.8743 9.4987V12.6654Z", fill: "#DBDBDB" }) }),
326
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "clip0_11156_23256", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: 37, height: 38, fill: "white" }) }) })
327
+ ] }));
328
+ var icon_lock_default = SvgIconLock;
324
329
  var svgs = {
325
330
  /* Card */
326
331
  ads: icon_ads_default,
@@ -345,6 +350,7 @@ var svgs = {
345
350
  externalLink: icon_external_link_default,
346
351
  newIcon: icon_new_default,
347
352
  play: icon_play_default,
353
+ lock: icon_lock_default,
348
354
  /* Button */
349
355
  blankCheckbox: icon_blank_checkbox_default,
350
356
  blankCheckboxWhite: icon_blank_checkbox_white_default,
@@ -390,7 +396,7 @@ var svgs = {
390
396
  xBlack: icon_x_black_default,
391
397
  xWhite: icon_x_white_default
392
398
  };
393
- var Icon = React68__default.default.memo(
399
+ var Icon = React69__default.default.memo(
394
400
  (_a) => {
395
401
  var _b = _a, { type, size } = _b, props = __objRest(_b, ["type", "size"]);
396
402
  if (type) {
@@ -504,21 +510,21 @@ var getDeviceType = (width) => {
504
510
  return "desktop";
505
511
  };
506
512
  var useViewPort = () => {
507
- const [device, setDevice] = React68.useState(
513
+ const [device, setDevice] = React69.useState(
508
514
  () => typeof window !== "undefined" ? getDeviceType(window.innerWidth) : "desktop"
509
515
  );
510
- const getOtherDevices = React68.useCallback(
516
+ const getOtherDevices = React69.useCallback(
511
517
  (list, what, includeSelf = false) => {
512
518
  const deviceIndex = list.indexOf(what) + (!includeSelf ? 1 : 0);
513
519
  return [...list].slice(deviceIndex);
514
520
  },
515
521
  []
516
522
  );
517
- const onWindowResize = React68.useCallback(() => {
523
+ const onWindowResize = React69.useCallback(() => {
518
524
  setDevice(getDeviceType(window.innerWidth));
519
525
  }, []);
520
526
  const onWindowResizeDebounce = useDebounce_default(onWindowResize, 100);
521
- React68.useEffect(() => {
527
+ React69.useEffect(() => {
522
528
  window.addEventListener("resize", onWindowResizeDebounce);
523
529
  return () => window.removeEventListener("resize", onWindowResizeDebounce);
524
530
  }, [onWindowResizeDebounce]);
@@ -571,13 +577,13 @@ var BrandsStrip = ({
571
577
  cta,
572
578
  size
573
579
  }) => {
574
- const [show, setShow] = React68.useState(false);
575
- const [shouldAnimate, setShouldAnimate] = React68.useState(false);
580
+ const [show, setShow] = React69.useState(false);
581
+ const [shouldAnimate, setShouldAnimate] = React69.useState(false);
576
582
  const { is } = useViewPort_default();
577
583
  const isTabletBelow = is("tablet", "below");
578
- const containerRef = React68.useRef(null);
579
- const marqueeRef = React68.useRef(null);
580
- const timeline = React68.useRef(null);
584
+ const containerRef = React69.useRef(null);
585
+ const marqueeRef = React69.useRef(null);
586
+ const timeline = React69.useRef(null);
581
587
  const horizontalLoop = (items, config) => {
582
588
  const itemsArray = gsap__default.default.utils.toArray(items);
583
589
  const cfg = config || {};
@@ -671,7 +677,7 @@ var BrandsStrip = ({
671
677
  timeline.current.play();
672
678
  }
673
679
  };
674
- const duplicatedLogos = React68.useMemo(() => {
680
+ const duplicatedLogos = React69.useMemo(() => {
675
681
  if (logos.length === 0) return [];
676
682
  if (!shouldAnimate) return [...logos];
677
683
  return [...logos, ...logos];
@@ -724,8 +730,8 @@ var CardSubtitle = ({ children }) => {
724
730
  };
725
731
  function resolveCompoundSlots(children, slots) {
726
732
  const resolved = {};
727
- React68.Children.forEach(children, (child) => {
728
- if (!React68.isValidElement(child)) return;
733
+ React69.Children.forEach(children, (child) => {
734
+ if (!React69.isValidElement(child)) return;
729
735
  Object.entries(slots).forEach(([key, Component]) => {
730
736
  if (child.type === Component) {
731
737
  resolved[key] = child.props.children;
@@ -739,7 +745,7 @@ function resolveCompoundSlots(children, slots) {
739
745
  var Container_module_default = {
740
746
  container: "Container_module_container"
741
747
  };
742
- var Container = React68.forwardRef(
748
+ var Container = React69.forwardRef(
743
749
  (_a, ref) => {
744
750
  var _b = _a, { children, className } = _b, props = __objRest(_b, ["children", "className"]);
745
751
  return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadProps(__spreadValues({ ref, className: clsx43__default.default(Container_module_default.container, className) }, props), { children }));
@@ -880,11 +886,11 @@ function FilterBar({
880
886
  searchValue,
881
887
  onSearchChange
882
888
  }) {
883
- const [openDropdown, setOpenDropdown] = React68.useState(null);
884
- const [searchState, setSearchState] = React68.useState("closed");
885
- const filterRef = React68.useRef(null);
886
- const sortRef = React68.useRef(null);
887
- const searchInputRef = React68.useRef(null);
889
+ const [openDropdown, setOpenDropdown] = React69.useState(null);
890
+ const [searchState, setSearchState] = React69.useState("closed");
891
+ const filterRef = React69.useRef(null);
892
+ const sortRef = React69.useRef(null);
893
+ const searchInputRef = React69.useRef(null);
888
894
  const closeSearch = () => {
889
895
  setSearchState("closing");
890
896
  onSearchChange("");
@@ -894,7 +900,7 @@ function FilterBar({
894
900
  onSearchChange("");
895
901
  (_a = searchInputRef.current) == null ? void 0 : _a.focus();
896
902
  };
897
- React68.useEffect(() => {
903
+ React69.useEffect(() => {
898
904
  const handleMouseDown = (e) => {
899
905
  var _a, _b;
900
906
  const target = e.target;
@@ -904,7 +910,7 @@ function FilterBar({
904
910
  document.addEventListener("mousedown", handleMouseDown);
905
911
  return () => document.removeEventListener("mousedown", handleMouseDown);
906
912
  }, []);
907
- React68.useEffect(() => {
913
+ React69.useEffect(() => {
908
914
  var _a;
909
915
  if (searchState === "open") (_a = searchInputRef.current) == null ? void 0 : _a.focus();
910
916
  }, [searchState]);
@@ -1180,7 +1186,7 @@ var Pagination = ({
1180
1186
  hidePagesBorder = false,
1181
1187
  renderLink
1182
1188
  }) => {
1183
- const [activePage, setActivePage] = React68.useState(currentPage);
1189
+ const [activePage, setActivePage] = React69.useState(currentPage);
1184
1190
  const goToPage = (page) => {
1185
1191
  if (page < 1 || page > totalPages) return;
1186
1192
  setActivePage(page);
@@ -1239,7 +1245,7 @@ var Pagination = ({
1239
1245
  [Pagination_module_default.number]: hasNumber,
1240
1246
  [Pagination_module_default["no-border"]]: hidePagesBorder
1241
1247
  });
1242
- return renderLink ? /* @__PURE__ */ jsxRuntime.jsx(React68.Fragment, { children: renderLink({
1248
+ return renderLink ? /* @__PURE__ */ jsxRuntime.jsx(React69.Fragment, { children: renderLink({
1243
1249
  page,
1244
1250
  className: pageClassName,
1245
1251
  "aria-label": `Go to page ${page}`,
@@ -1313,6 +1319,7 @@ var ResourceCardItem_module_default = {
1313
1319
  cardLink: "ResourceCardItem_module_cardLink",
1314
1320
  "global-search": "ResourceCardItem_module_global-search",
1315
1321
  cardGrid: "ResourceCardItem_module_cardGrid",
1322
+ restricted: "ResourceCardItem_module_restricted",
1316
1323
  cardBody: "ResourceCardItem_module_cardBody",
1317
1324
  cardIconTitle: "ResourceCardItem_module_cardIconTitle",
1318
1325
  cardTitle: "ResourceCardItem_module_cardTitle",
@@ -1331,12 +1338,13 @@ var ResourceCardItem_module_default = {
1331
1338
  var ResourceCardItem = ({ item, view, variant, renderLink }) => {
1332
1339
  const hasHref = Boolean(item.href);
1333
1340
  const isGlobalSearchVariant = variant === "global-search";
1341
+ const isRestricted = (item == null ? void 0 : item.type) === "restricted";
1334
1342
  const linkProps = hasHref ? {
1335
1343
  href: item.href,
1336
1344
  target: "_blank",
1337
1345
  rel: "noopener noreferrer",
1338
- className: clsx43__default.default("news-card-link", ResourceCardItem_module_default["news-card-link"]),
1339
- "aria-label": item.title
1346
+ "aria-label": item.title,
1347
+ "aria-disabled": isRestricted
1340
1348
  } : null;
1341
1349
  const cardLink = linkProps && isGlobalSearchVariant ? renderLink ? renderLink(__spreadProps(__spreadValues({}, linkProps), {
1342
1350
  className: clsx43__default.default(ResourceCardItem_module_default.cardLink, isGlobalSearchVariant && ResourceCardItem_module_default[variant]),
@@ -1347,24 +1355,51 @@ var ResourceCardItem = ({ item, view, variant, renderLink }) => {
1347
1355
  className: clsx43__default.default(ResourceCardItem_module_default.cardLink, isGlobalSearchVariant && ResourceCardItem_module_default[variant])
1348
1356
  })
1349
1357
  ) : null;
1350
- const linkWrapper = ({ children }) => /* @__PURE__ */ jsxRuntime.jsx("a", __spreadProps(__spreadValues({}, linkProps), { tabIndex: isGlobalSearchVariant ? -1 : 0, children }));
1358
+ const linkWrapper = ({ children }) => /* @__PURE__ */ jsxRuntime.jsx("a", __spreadProps(__spreadValues({}, linkProps), { tabIndex: isGlobalSearchVariant ? -1 : 0, className: clsx43__default.default(ResourceCardItem_module_default.cardLink), children }));
1359
+ function getIcon() {
1360
+ switch (item.type) {
1361
+ case "pdf":
1362
+ return "pdf";
1363
+ case "externalLink":
1364
+ return "externalLink";
1365
+ case "restricted":
1366
+ return "lock";
1367
+ default:
1368
+ return "externalLink";
1369
+ }
1370
+ }
1351
1371
  if (view === "grid") {
1352
- return /* @__PURE__ */ jsxRuntime.jsxs("article", { className: clsx43__default.default(ResourceCardItem_module_default.cardGrid, isGlobalSearchVariant && ResourceCardItem_module_default[variant]), children: [
1353
- cardLink,
1354
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardBody, children: [
1355
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1356
- /* @__PURE__ */ jsxRuntime.jsx(ConditionalWrapper, { condition: hasHref, wrapper: linkWrapper, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardIconTitle, children: [
1357
- /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: item.type === "pdf" ? "pdf" : "externalLink", size: 33 }),
1358
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.cardTitle, children: item.title })
1359
- ] }) }),
1360
- item.bodyText && /* @__PURE__ */ jsxRuntime.jsx("div", { className: ResourceCardItem_module_default.cardBodyTextGrid, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.cardBodyText, children: item.bodyText }) })
1361
- ] }),
1362
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardMeta, children: [
1363
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.cardDate, children: item.date }),
1364
- item.hasNotification && /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.notificationDot, "aria-label": "New" })
1365
- ] })
1366
- ] })
1367
- ] });
1372
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1373
+ "article",
1374
+ {
1375
+ className: clsx43__default.default(
1376
+ ResourceCardItem_module_default.cardGrid,
1377
+ isGlobalSearchVariant && ResourceCardItem_module_default[variant],
1378
+ isGlobalSearchVariant && isRestricted ? ResourceCardItem_module_default["restricted"] : null
1379
+ ),
1380
+ "aria-labelledby": `title-${item.id}`,
1381
+ "aria-describedby": isRestricted ? `restricted-${item.id}` : void 0,
1382
+ children: [
1383
+ cardLink,
1384
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardBody, children: [
1385
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1386
+ /* @__PURE__ */ jsxRuntime.jsx(ConditionalWrapper, { condition: hasHref, wrapper: linkWrapper, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardIconTitle, children: [
1387
+ /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: getIcon(), size: 33 }),
1388
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.cardTitle, id: `title-${item.id}`, children: item.title })
1389
+ ] }) }),
1390
+ item.bodyText && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardBodyTextGrid, children: [
1391
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.cardBodyText, children: item.bodyText }),
1392
+ isRestricted && /* @__PURE__ */ jsxRuntime.jsx("p", { id: `restricted-${item.id}`, className: "sr-only", children: "This resource is restricted. You do not have permission to access it." })
1393
+ ] })
1394
+ ] }),
1395
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardMeta, children: [
1396
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.cardDate, children: item.date }),
1397
+ item.hasNotification && /* @__PURE__ */ jsxRuntime.jsx("span", { className: ResourceCardItem_module_default.notificationDot, "aria-label": "New" })
1398
+ ] })
1399
+ ] })
1400
+ ]
1401
+ }
1402
+ );
1368
1403
  }
1369
1404
  return /* @__PURE__ */ jsxRuntime.jsxs("article", { className: ResourceCardItem_module_default.cardList, children: [
1370
1405
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ResourceCardItem_module_default.cardListLeft, children: [
@@ -1550,7 +1585,7 @@ var Badge_module_default = {
1550
1585
  icon: "Badge_module_icon",
1551
1586
  iconOnly: "Badge_module_iconOnly"
1552
1587
  };
1553
- var Badge = React68.forwardRef(
1588
+ var Badge = React69.forwardRef(
1554
1589
  (_a, ref) => {
1555
1590
  var _b = _a, {
1556
1591
  children,
@@ -1624,7 +1659,7 @@ var Input_module_default = {
1624
1659
  error: "Input_module_error",
1625
1660
  "input-field--error": "Input_module_input-field--error",
1626
1661
  "input-field--disabled": "Input_module_input-field--disabled"};
1627
- var Input = React68.forwardRef(
1662
+ var Input = React69.forwardRef(
1628
1663
  (_a, ref) => {
1629
1664
  var _b = _a, {
1630
1665
  id,
@@ -1655,7 +1690,7 @@ var Input = React68.forwardRef(
1655
1690
  "hideLabel",
1656
1691
  "type"
1657
1692
  ]);
1658
- const generatedId = React68.useId();
1693
+ const generatedId = React69.useId();
1659
1694
  const inputId = id || generatedId;
1660
1695
  const helperTextId = `${inputId}-helper`;
1661
1696
  const errorId = `${inputId}-error`;
@@ -1860,10 +1895,10 @@ var CardCollection = ({
1860
1895
  children
1861
1896
  }) => {
1862
1897
  var _a, _b;
1863
- const container = React68.useRef(null);
1864
- const revealWrapper = React68.useRef(null);
1865
- const extraCard = React68.useRef(null);
1866
- const [isExpanded, setIsExpanded] = React68.useState(false);
1898
+ const container = React69.useRef(null);
1899
+ const revealWrapper = React69.useRef(null);
1900
+ const extraCard = React69.useRef(null);
1901
+ const [isExpanded, setIsExpanded] = React69.useState(false);
1867
1902
  const slots = resolveCompoundSlots(children, {
1868
1903
  title: CardCollectionTitle,
1869
1904
  subtitle: CardCollectionSubtitle
@@ -1874,7 +1909,7 @@ var CardCollection = ({
1874
1909
  const visibleCards = isExamCard ? cards.slice(0, 8) : cards;
1875
1910
  const hiddenCards = isExamCard ? cards.slice(8) : [];
1876
1911
  const { contextSafe } = react.useGSAP({ scope: container });
1877
- const handleShowMore = React68.useCallback(() => {
1912
+ const handleShowMore = React69.useCallback(() => {
1878
1913
  contextSafe(() => {
1879
1914
  setIsExpanded(true);
1880
1915
  const tl = gsap__default.default.timeline({ defaults: { ease: "power3.inOut" } });
@@ -1978,8 +2013,8 @@ var ContactModule = ({
1978
2013
  animateBlur = true
1979
2014
  }) => {
1980
2015
  var _a, _b;
1981
- const containerRef = React68.useRef(null);
1982
- const blurRef = React68.useRef(null);
2016
+ const containerRef = React69.useRef(null);
2017
+ const blurRef = React69.useRef(null);
1983
2018
  const slots = resolveCompoundSlots(children, {
1984
2019
  title: ContactModuleTitle,
1985
2020
  subtitle: ContactModuleSubtitle
@@ -2318,8 +2353,8 @@ var HeroBannerCarousel = ({
2318
2353
  }) => {
2319
2354
  const { is } = useViewPort_default();
2320
2355
  const isMobile = is("tablet", "below");
2321
- const [swiperInstance, setSwiperInstance] = React68.useState(null);
2322
- const [activeIndex, setActiveIndex] = React68.useState(0);
2356
+ const [swiperInstance, setSwiperInstance] = React69.useState(null);
2357
+ const [activeIndex, setActiveIndex] = React69.useState(0);
2323
2358
  if (!items.length) return null;
2324
2359
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx43__default.default(HeroBannerCarousel_module_default.heroBannerCarousel, className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: HeroBannerCarousel_module_default.inner, children: [
2325
2360
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: HeroBannerCarousel_module_default.swiperContainer, children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -2408,16 +2443,16 @@ var AccordionItem = ({
2408
2443
  onToggle,
2409
2444
  className
2410
2445
  }) => {
2411
- const contentRef = React68.useRef(null);
2412
- const contentInnerRef = React68.useRef(null);
2413
- const timelineRef = React68.useRef(null);
2414
- const [contentHeight, setContentHeight] = React68.useState(0);
2415
- React68.useEffect(() => {
2446
+ const contentRef = React69.useRef(null);
2447
+ const contentInnerRef = React69.useRef(null);
2448
+ const timelineRef = React69.useRef(null);
2449
+ const [contentHeight, setContentHeight] = React69.useState(0);
2450
+ React69.useEffect(() => {
2416
2451
  if (contentInnerRef.current) {
2417
2452
  setContentHeight(contentInnerRef.current.scrollHeight);
2418
2453
  }
2419
2454
  }, [children]);
2420
- React68.useEffect(() => {
2455
+ React69.useEffect(() => {
2421
2456
  if (contentRef.current && contentHeight > 0) {
2422
2457
  if (timelineRef.current) {
2423
2458
  timelineRef.current.kill();
@@ -2502,7 +2537,7 @@ var Accordion = ({
2502
2537
  allowMultiple = false,
2503
2538
  onItemToggle
2504
2539
  }) => {
2505
- const [openIds, setOpenIds] = React68.useState(defaultOpenIds);
2540
+ const [openIds, setOpenIds] = React69.useState(defaultOpenIds);
2506
2541
  const handleToggle = (id) => {
2507
2542
  setOpenIds((prev) => {
2508
2543
  let newOpenIds;
@@ -2563,10 +2598,10 @@ var InternalBrandsTab_module_default = {
2563
2598
  var InternalBrandsTab = (props) => {
2564
2599
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A;
2565
2600
  const { title, subTitle, className, tabs } = props;
2566
- const [activeIndex, setActiveIndex] = React68.useState(0);
2601
+ const [activeIndex, setActiveIndex] = React69.useState(0);
2567
2602
  const { is } = useViewPort_default();
2568
2603
  const isTabletBelow = is("tablet", "below");
2569
- const accordionItems = React68.useMemo(() => {
2604
+ const accordionItems = React69.useMemo(() => {
2570
2605
  return (tabs == null ? void 0 : tabs.map((tab, index) => {
2571
2606
  var _a2, _b2, _c2, _d2, _e2, _f2, _g2, _h2, _i2, _j2, _k2, _l2, _m2, _n2;
2572
2607
  return {
@@ -2733,7 +2768,7 @@ var MiniBanner = ({
2733
2768
  (logo == null ? void 0 : logo.src) && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: MiniBanner_module_default.logo }, logo)),
2734
2769
  pretitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx43__default.default(MiniBanner_module_default.pretitle, "small"), children: pretitleNode }),
2735
2770
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: MiniBanner_module_default.headingWrapper, children: [
2736
- goBackNode ? React68__default.default.cloneElement(goBackNode, {
2771
+ goBackNode ? React69__default.default.cloneElement(goBackNode, {
2737
2772
  className: clsx43__default.default("back-button", MiniBanner_module_default["back-button"])
2738
2773
  }) : null,
2739
2774
  titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx43__default.default(MiniBanner_module_default.title, isMiniBannerTextLeft ? "h1" : "h4"), children: titleNode })
@@ -2851,13 +2886,13 @@ function useIntersectionObserver({
2851
2886
  animateOnce = false,
2852
2887
  options = {}
2853
2888
  } = {}) {
2854
- const observeRef = React68.useRef(null);
2855
- const [isVisible, setIsVisible] = React68.useState(false);
2889
+ const observeRef = React69.useRef(null);
2890
+ const [isVisible, setIsVisible] = React69.useState(false);
2856
2891
  if (typeof IntersectionObserver === "undefined") {
2857
2892
  console.warn("IntersectionObserver is not supported in this browser.");
2858
2893
  return { observeRef, isVisible: true };
2859
2894
  }
2860
- React68.useEffect(() => {
2895
+ React69.useEffect(() => {
2861
2896
  const currentRef = observeRef.current;
2862
2897
  if (!currentRef) return;
2863
2898
  const observer = new IntersectionObserver((entries) => {
@@ -2876,8 +2911,8 @@ function useIntersectionObserver({
2876
2911
  return { observeRef, isVisible };
2877
2912
  }
2878
2913
  var useIsAtTop = () => {
2879
- const [isAtTop, setIsAtTop] = React68.useState(true);
2880
- React68.useEffect(() => {
2914
+ const [isAtTop, setIsAtTop] = React69.useState(true);
2915
+ React69.useEffect(() => {
2881
2916
  const handleScroll = () => setIsAtTop(window.scrollY === 0);
2882
2917
  window.addEventListener("scroll", handleScroll, { passive: true });
2883
2918
  return () => window.removeEventListener("scroll", handleScroll);
@@ -2933,10 +2968,10 @@ var NavigationDesktop = ({
2933
2968
  onDropdownOpenChange
2934
2969
  }) => {
2935
2970
  var _a;
2936
- const [activeDropdown, setActiveDropdown] = React68.useState(null);
2937
- const closeTimer = React68.useRef(null);
2938
- const dropdownWrapperRefs = React68.useRef([]);
2939
- const baseId = React68.useId();
2971
+ const [activeDropdown, setActiveDropdown] = React69.useState(null);
2972
+ const closeTimer = React69.useRef(null);
2973
+ const dropdownWrapperRefs = React69.useRef([]);
2974
+ const baseId = React69.useId();
2940
2975
  const setDropdown = (index) => {
2941
2976
  setActiveDropdown(index);
2942
2977
  onDropdownOpenChange == null ? void 0 : onDropdownOpenChange(index !== null);
@@ -3071,8 +3106,8 @@ var NavigationMobile = ({
3071
3106
  onClose
3072
3107
  }) => {
3073
3108
  var _a;
3074
- const [expanded, setExpanded] = React68.useState([]);
3075
- const baseId = React68.useId();
3109
+ const [expanded, setExpanded] = React69.useState([]);
3110
+ const baseId = React69.useId();
3076
3111
  const toggleExpanded = (index) => {
3077
3112
  setExpanded((prev) => prev.includes(index) ? prev.filter((i) => i !== index) : [...prev, index]);
3078
3113
  };
@@ -3174,15 +3209,15 @@ var NavigationMobile = ({
3174
3209
  };
3175
3210
  var Navigation2 = (props) => {
3176
3211
  const { className, variant, homeCta, loginCta, mainLogo, rightButton, navigationItems } = props;
3177
- const [isHovered, setIsHovered] = React68.useState(false);
3178
- const [hasOpenDropdown, setHasOpenDropdown] = React68.useState(false);
3179
- const [isMobileMenuOpen, setIsMobileMenuOpen] = React68.useState(false);
3212
+ const [isHovered, setIsHovered] = React69.useState(false);
3213
+ const [hasOpenDropdown, setHasOpenDropdown] = React69.useState(false);
3214
+ const [isMobileMenuOpen, setIsMobileMenuOpen] = React69.useState(false);
3180
3215
  const isAtTop = useIsAtTop();
3181
3216
  const { is } = useViewPort_default();
3182
- const mobileMenuId = React68.useId();
3217
+ const mobileMenuId = React69.useId();
3183
3218
  const isTabletBelow = is("tablet", "below");
3184
3219
  const isTransparent = variant === "transparent" && isAtTop && !isHovered && !hasOpenDropdown;
3185
- React68.useEffect(() => {
3220
+ React69.useEffect(() => {
3186
3221
  document.body.style.overflow = isMobileMenuOpen ? "hidden" : "";
3187
3222
  return () => {
3188
3223
  document.body.style.overflow = "";
@@ -3615,7 +3650,7 @@ var EventList = ({
3615
3650
  }
3616
3651
  )
3617
3652
  ] }),
3618
- !isNotEmpty && emptyNode ? React68__default.default.cloneElement(emptyNode, {
3653
+ !isNotEmpty && emptyNode ? React69__default.default.cloneElement(emptyNode, {
3619
3654
  className: clsx43__default.default("empty-search-result", EventList_module_default["empty-search-result"])
3620
3655
  }) : null
3621
3656
  ] })
@@ -3798,17 +3833,17 @@ var ResourcesGridList = ({
3798
3833
  defaultSort = "latest"
3799
3834
  }) => {
3800
3835
  var _a;
3801
- const [view, setView] = React68.useState(defaultView);
3802
- const [isSidebarOpen, setIsSidebarOpen] = React68.useState(false);
3803
- const [filterValue, setFilterValue] = React68.useState(defaultFilter);
3804
- const [sortValue, setSortValue] = React68.useState(defaultSort);
3805
- const [searchQuery, setSearchQuery] = React68.useState("");
3806
- const [currentPage, setCurrentPage] = React68.useState(1);
3807
- const [selectedCategory, setSelectedCategory] = React68.useState(() => {
3836
+ const [view, setView] = React69.useState(defaultView);
3837
+ const [isSidebarOpen, setIsSidebarOpen] = React69.useState(false);
3838
+ const [filterValue, setFilterValue] = React69.useState(defaultFilter);
3839
+ const [sortValue, setSortValue] = React69.useState(defaultSort);
3840
+ const [searchQuery, setSearchQuery] = React69.useState("");
3841
+ const [currentPage, setCurrentPage] = React69.useState(1);
3842
+ const [selectedCategory, setSelectedCategory] = React69.useState(() => {
3808
3843
  const activeIndex = categories.findIndex((cat) => cat.active);
3809
3844
  return activeIndex === -1 ? 0 : activeIndex;
3810
3845
  });
3811
- const widgetRef = React68.useRef(null);
3846
+ const widgetRef = React69.useRef(null);
3812
3847
  const { is } = useViewPort_default();
3813
3848
  const isMobile = is("tablet", "below");
3814
3849
  const selectedValue = (_a = categories[selectedCategory]) == null ? void 0 : _a.value;
@@ -4271,7 +4306,7 @@ var NewsCardList = ({
4271
4306
  /* @__PURE__ */ jsxRuntime.jsx(BlogCardGrid2, { items: cards, hasContainer: false, renderLink })
4272
4307
  ] })
4273
4308
  ] }),
4274
- paginationNode ? React68__default.default.cloneElement(paginationNode, {
4309
+ paginationNode ? React69__default.default.cloneElement(paginationNode, {
4275
4310
  className: clsx43__default.default("pagination", NewsCardList_module_default["pagination"])
4276
4311
  }) : null
4277
4312
  ] })
@@ -4387,7 +4422,7 @@ var BlogSearchResultsList = ({
4387
4422
  const searchNode = (_a = slots.search) != null ? _a : searchResult;
4388
4423
  const paginationNode = slots.pagination;
4389
4424
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx43__default.default("search-results-list", BlogSearchResultsList_module_default["search-results-list"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx43__default.default("container", BlogSearchResultsList_module_default["container"]), children: [
4390
- typeof searchNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx43__default.default("search-result", BlogSearchResultsList_module_default["search-result"]), children: searchNode }) : React68__default.default.isValidElement(searchNode) ? React68__default.default.cloneElement(searchNode, {
4425
+ typeof searchNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx43__default.default("search-result", BlogSearchResultsList_module_default["search-result"]), children: searchNode }) : React69__default.default.isValidElement(searchNode) ? React69__default.default.cloneElement(searchNode, {
4391
4426
  className: clsx43__default.default("search-result", BlogSearchResultsList_module_default["search-result"])
4392
4427
  }) : null,
4393
4428
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx43__default.default("wrapper", BlogSearchResultsList_module_default["wrapper"]), children: [
@@ -4415,7 +4450,7 @@ var BlogSearchResultsList = ({
4415
4450
  ),
4416
4451
  /* @__PURE__ */ jsxRuntime.jsx(BlogCardGrid2, { items, hasContainer: false, renderLink })
4417
4452
  ] }),
4418
- paginationNode ? React68__default.default.cloneElement(paginationNode, {
4453
+ paginationNode ? React69__default.default.cloneElement(paginationNode, {
4419
4454
  className: clsx43__default.default("pagination", BlogSearchResultsList_module_default["pagination"])
4420
4455
  }) : null
4421
4456
  ] }) });
@@ -4458,22 +4493,30 @@ var GlobalSearchResultsList = ({
4458
4493
  const searchNode = (_a = slots.search) != null ? _a : searchResult;
4459
4494
  const paginationNode = slots.pagination;
4460
4495
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx43__default.default("search-results-list", GlobalSearchResultsList_module_default["search-results-list"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx43__default.default("container", GlobalSearchResultsList_module_default["container"]), children: [
4461
- typeof searchNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx43__default.default("search-result", GlobalSearchResultsList_module_default["search-result"]), children: searchNode }) : React68__default.default.isValidElement(searchNode) ? React68__default.default.cloneElement(searchNode, {
4496
+ typeof searchNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx43__default.default("search-result", GlobalSearchResultsList_module_default["search-result"]), children: searchNode }) : React69__default.default.isValidElement(searchNode) ? React69__default.default.cloneElement(searchNode, {
4462
4497
  className: clsx43__default.default("search-result", GlobalSearchResultsList_module_default["search-result"])
4463
4498
  }) : null,
4464
4499
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx43__default.default("wrapper", GlobalSearchResultsList_module_default["wrapper"]), children: /* @__PURE__ */ jsxRuntime.jsx(Grid, { role: "list", columns: 3, children: items.map((item, index) => {
4465
4500
  var _a2;
4466
- return /* @__PURE__ */ jsxRuntime.jsx(GridItem, { colSpan: { md: 3 }, role: "listitem", children: /* @__PURE__ */ jsxRuntime.jsx(
4467
- ResourceCardItem,
4501
+ return /* @__PURE__ */ jsxRuntime.jsx(
4502
+ GridItem,
4468
4503
  {
4469
- item,
4470
- view: "grid",
4471
- variant: "global-search",
4472
- renderLink
4473
- }
4474
- ) }, (_a2 = item.title) != null ? _a2 : index);
4504
+ colSpan: { md: 3 },
4505
+ role: "listitem",
4506
+ children: /* @__PURE__ */ jsxRuntime.jsx(
4507
+ ResourceCardItem,
4508
+ {
4509
+ item,
4510
+ view: "grid",
4511
+ variant: "global-search",
4512
+ renderLink
4513
+ }
4514
+ )
4515
+ },
4516
+ item.title ? `${item.title}-${(_a2 = item == null ? void 0 : item.id) != null ? _a2 : index}` : index
4517
+ );
4475
4518
  }) }) }),
4476
- paginationNode ? React68__default.default.cloneElement(paginationNode, {
4519
+ paginationNode ? React69__default.default.cloneElement(paginationNode, {
4477
4520
  className: clsx43__default.default("pagination", GlobalSearchResultsList_module_default["pagination"])
4478
4521
  }) : null
4479
4522
  ] }) });
@@ -4512,10 +4555,10 @@ var TextCenterWithMedia = ({
4512
4555
  children
4513
4556
  }) => {
4514
4557
  var _a;
4515
- const [isOpen, setIsOpen] = React68.useState(false);
4516
- const dialogRef = React68.useRef(null);
4517
- const videoRef = React68.useRef(null);
4518
- React68.useEffect(() => {
4558
+ const [isOpen, setIsOpen] = React69.useState(false);
4559
+ const dialogRef = React69.useRef(null);
4560
+ const videoRef = React69.useRef(null);
4561
+ React69.useEffect(() => {
4519
4562
  var _a2, _b;
4520
4563
  if (isOpen) {
4521
4564
  (_a2 = dialogRef.current) == null ? void 0 : _a2.showModal();