@digital-b2c/coreui-kit 0.10.1 → 0.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/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var clsx25 = require('clsx');
3
+ var clsx15 = require('clsx');
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var React62 = require('react');
6
6
  var gsap = require('gsap');
@@ -12,7 +12,7 @@ require('swiper/css');
12
12
 
13
13
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
14
14
 
15
- var clsx25__default = /*#__PURE__*/_interopDefault(clsx25);
15
+ var clsx15__default = /*#__PURE__*/_interopDefault(clsx15);
16
16
  var React62__default = /*#__PURE__*/_interopDefault(React62);
17
17
  var gsap__default = /*#__PURE__*/_interopDefault(gsap);
18
18
 
@@ -66,7 +66,7 @@ var Picture = (_a) => {
66
66
  __spreadValues({
67
67
  src: desktop.src,
68
68
  alt: desktop.alt,
69
- className: clsx25__default.default(className, Picture_module_default["image-desktop"])
69
+ className: clsx15__default.default(className, Picture_module_default["image-desktop"])
70
70
  }, rest)
71
71
  ),
72
72
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -74,21 +74,19 @@ var Picture = (_a) => {
74
74
  __spreadValues({
75
75
  src: (_b2 = mobile == null ? void 0 : mobile.src) != null ? _b2 : desktop.src,
76
76
  alt: (_c = mobile == null ? void 0 : mobile.alt) != null ? _c : desktop.alt,
77
- className: clsx25__default.default(className, Picture_module_default["image-mobile"])
77
+ className: clsx15__default.default(className, Picture_module_default["image-mobile"])
78
78
  }, rest)
79
79
  )
80
80
  ] });
81
81
  };
82
82
  var Anchor = (_a) => {
83
- var _b = _a, { children, isExternal } = _b, props = __objRest(_b, ["children", "isExternal"]);
84
- return /* @__PURE__ */ jsxRuntime.jsx(
85
- "a",
86
- __spreadProps(__spreadValues({}, props), {
87
- target: isExternal ? "_blank" : void 0,
88
- rel: isExternal ? "noopener noreferrer" : void 0,
89
- children
90
- })
91
- );
83
+ var _b = _a, { children, isExternal, renderLink } = _b, props = __objRest(_b, ["children", "isExternal", "renderLink"]);
84
+ const anchorProps = __spreadProps(__spreadValues({}, props), {
85
+ target: isExternal ? "_blank" : void 0,
86
+ rel: isExternal ? "noopener noreferrer" : void 0
87
+ });
88
+ if (renderLink) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: renderLink(__spreadProps(__spreadValues({}, anchorProps), { children })) });
89
+ return /* @__PURE__ */ jsxRuntime.jsx("a", __spreadProps(__spreadValues({}, anchorProps), { children }));
92
90
  };
93
91
  var ConditionalWrapper = (_a) => {
94
92
  var _b = _a, {
@@ -419,7 +417,8 @@ var Button = (_a) => {
419
417
  isExternal,
420
418
  icon,
421
419
  logo,
422
- isActive
420
+ isActive,
421
+ renderLink
423
422
  } = _b, rest = __objRest(_b, [
424
423
  "className",
425
424
  "children",
@@ -429,18 +428,19 @@ var Button = (_a) => {
429
428
  "isExternal",
430
429
  "icon",
431
430
  "logo",
432
- "isActive"
431
+ "isActive",
432
+ "renderLink"
433
433
  ]);
434
434
  const isLink = !!href;
435
435
  const props = __spreadValues(__spreadValues({
436
- className: clsx25__default.default(
436
+ className: clsx15__default.default(
437
437
  Button_module_default.button,
438
438
  variant ? Button_module_default[variant] : null,
439
439
  { [Button_module_default.fullWidth]: !!fullWidth },
440
440
  { [Button_module_default.active]: !!isActive },
441
441
  className
442
442
  )
443
- }, isLink ? { href, isExternal } : {}), rest);
443
+ }, isLink ? { href, isExternal, renderLink } : {}), rest);
444
444
  return /* @__PURE__ */ jsxRuntime.jsxs(ConditionalWrapper, __spreadProps(__spreadValues({ wrapper: Anchor, fallback: "button", condition: isLink }, props), { children: [
445
445
  children,
446
446
  isExternal && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "(opens in a new tab)" }),
@@ -665,7 +665,7 @@ var BrandsStrip = ({
665
665
  "div",
666
666
  {
667
667
  ref: containerRef,
668
- className: clsx25__default.default(
668
+ className: clsx15__default.default(
669
669
  BrandsStrip_module_default.brandsStrip,
670
670
  BrandsStrip_module_default[variant],
671
671
  { [BrandsStrip_module_default.small]: size === "small" },
@@ -674,13 +674,13 @@ var BrandsStrip = ({
674
674
  onMouseEnter: handleMouseEnter,
675
675
  onMouseLeave: handleMouseLeave,
676
676
  children: [
677
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(BrandsStrip_module_default.container, { [BrandsStrip_module_default.blurred]: show && logos.length > 1 }), children: [
678
- title && logos.length === 1 && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: clsx25__default.default("body", BrandsStrip_module_default.title), children: title }),
677
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(BrandsStrip_module_default.container, { [BrandsStrip_module_default.blurred]: show && logos.length > 1 }), children: [
678
+ title && logos.length === 1 && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: clsx15__default.default("body", BrandsStrip_module_default.title), children: title }),
679
679
  logos.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
680
680
  "div",
681
681
  {
682
682
  ref: marqueeRef,
683
- className: clsx25__default.default(BrandsStrip_module_default.logos, { [BrandsStrip_module_default.marqueeGSAP]: shouldAnimate }),
683
+ className: clsx15__default.default(BrandsStrip_module_default.logos, { [BrandsStrip_module_default.marqueeGSAP]: shouldAnimate }),
684
684
  children: duplicatedLogos.map((logo, index) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: BrandsStrip_module_default.logoWrapper, children: /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: BrandsStrip_module_default.logo }, logo)) }, `${logo.alt}-${index}`))
685
685
  }
686
686
  )
@@ -727,7 +727,7 @@ var Container_module_default = {
727
727
  var Container = React62.forwardRef(
728
728
  (_a, ref) => {
729
729
  var _b = _a, { children, className } = _b, props = __objRest(_b, ["children", "className"]);
730
- return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadProps(__spreadValues({ ref, className: clsx25__default.default(Container_module_default.container, className) }, props), { children }));
730
+ return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadProps(__spreadValues({ ref, className: clsx15__default.default(Container_module_default.container, className) }, props), { children }));
731
731
  }
732
732
  );
733
733
  Container.displayName = "Container";
@@ -768,14 +768,14 @@ var Card = ({
768
768
  ConditionalWrapper,
769
769
  __spreadProps(__spreadValues({
770
770
  ref,
771
- className: clsx25__default.default(Card_module_default.card, Card_module_default[variant], className),
771
+ className: clsx15__default.default(Card_module_default.card, Card_module_default[variant], className),
772
772
  wrapper: Anchor,
773
773
  fallback: "div",
774
774
  condition: isLink
775
775
  }, href ? { href, isExternal } : {}), {
776
776
  children: [
777
777
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Card_module_default.logoContainer, children: [
778
- (logo == null ? void 0 : logo.src) ? /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: clsx25__default.default(Card_module_default.logo, isLink && Card_module_default.hideLogo) }, logo)) : icon && /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: icon, className: clsx25__default.default(Card_module_default.logo, isLink && Card_module_default.hideLogo) }),
778
+ (logo == null ? void 0 : logo.src) ? /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: clsx15__default.default(Card_module_default.logo, isLink && Card_module_default.hideLogo) }, logo)) : icon && /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: icon, className: clsx15__default.default(Card_module_default.logo, isLink && Card_module_default.hideLogo) }),
779
779
  isLink && /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "tiltedRightWhite", className: Card_module_default.logoHover })
780
780
  ] }),
781
781
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Card_module_default.content, children: [
@@ -810,10 +810,10 @@ var CountingCard = ({ className, title, count, image, children }) => {
810
810
  title: CountingCardTitle
811
811
  });
812
812
  const titleNode = (_a = slots.title) != null ? _a : title;
813
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(CountingCard_module_default["counting-card"], className), children: [
813
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(CountingCard_module_default["counting-card"], className), children: [
814
814
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: CountingCard_module_default.content, children: [
815
815
  titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "body", children: titleNode }),
816
- count && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(CountingCard_module_default.count, "h1"), children: count })
816
+ count && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(CountingCard_module_default.count, "h1"), children: count })
817
817
  ] }),
818
818
  image && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: CountingCard_module_default.logo }, image))
819
819
  ] });
@@ -839,7 +839,8 @@ var FilterBar_module_default = {
839
839
  searchInput: "FilterBar_module_searchInput",
840
840
  searchClear: "FilterBar_module_searchClear",
841
841
  dropdownPanel: "FilterBar_module_dropdownPanel",
842
- searchPanel: "FilterBar_module_searchPanel",
842
+ filterFaded: "FilterBar_module_filterFaded",
843
+ filterFading: "FilterBar_module_filterFading",
843
844
  dropdownOption: "FilterBar_module_dropdownOption",
844
845
  selected: "FilterBar_module_selected"
845
846
  };
@@ -868,7 +869,6 @@ function FilterBar({
868
869
  const [searchState, setSearchState] = React62.useState("closed");
869
870
  const filterRef = React62.useRef(null);
870
871
  const sortRef = React62.useRef(null);
871
- const searchRef = React62.useRef(null);
872
872
  const searchInputRef = React62.useRef(null);
873
873
  const closeSearch = () => {
874
874
  setSearchState("closing");
@@ -881,10 +881,9 @@ function FilterBar({
881
881
  };
882
882
  React62.useEffect(() => {
883
883
  const handleMouseDown = (e) => {
884
- var _a, _b, _c;
884
+ var _a, _b;
885
885
  const target = e.target;
886
- if (((_a = filterRef.current) == null ? void 0 : _a.contains(target)) || ((_b = sortRef.current) == null ? void 0 : _b.contains(target)) || ((_c = searchRef.current) == null ? void 0 : _c.contains(target)))
887
- return;
886
+ if (((_a = filterRef.current) == null ? void 0 : _a.contains(target)) || ((_b = sortRef.current) == null ? void 0 : _b.contains(target))) return;
888
887
  setOpenDropdown(null);
889
888
  };
890
889
  document.addEventListener("mousedown", handleMouseDown);
@@ -894,17 +893,13 @@ function FilterBar({
894
893
  var _a;
895
894
  if (searchState === "open") (_a = searchInputRef.current) == null ? void 0 : _a.focus();
896
895
  }, [searchState]);
897
- React62.useEffect(() => {
898
- var _a;
899
- if (openDropdown === "search") (_a = searchInputRef.current) == null ? void 0 : _a.focus();
900
- }, [openDropdown]);
901
896
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FilterBar_module_default.filterBar, children: [
902
897
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FilterBar_module_default.viewToggle, children: [
903
898
  /* @__PURE__ */ jsxRuntime.jsxs(
904
899
  "button",
905
900
  {
906
901
  type: "button",
907
- className: clsx25__default.default(FilterBar_module_default.chip, view === "grid" && FilterBar_module_default.active),
902
+ className: clsx15__default.default(FilterBar_module_default.chip, view === "grid" && FilterBar_module_default.active),
908
903
  onClick: () => onViewChange("grid"),
909
904
  "aria-pressed": view === "grid",
910
905
  children: [
@@ -917,7 +912,7 @@ function FilterBar({
917
912
  "button",
918
913
  {
919
914
  type: "button",
920
- className: clsx25__default.default(FilterBar_module_default.chip, view === "list" && FilterBar_module_default.active),
915
+ className: clsx15__default.default(FilterBar_module_default.chip, view === "list" && FilterBar_module_default.active),
921
916
  onClick: () => onViewChange("list"),
922
917
  "aria-pressed": view === "list",
923
918
  children: [
@@ -928,90 +923,108 @@ function FilterBar({
928
923
  )
929
924
  ] }),
930
925
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FilterBar_module_default.filterActions, children: [
931
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FilterBar_module_default.dropdownWrapper, ref: filterRef, children: [
932
- /* @__PURE__ */ jsxRuntime.jsxs(
933
- "button",
934
- {
935
- type: "button",
936
- className: clsx25__default.default(FilterBar_module_default.chip, filterValue !== "all" && FilterBar_module_default.active),
937
- onClick: () => setOpenDropdown(openDropdown === "filter" ? null : "filter"),
938
- "aria-expanded": openDropdown === "filter",
939
- children: [
940
- /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "filter", size: 20, "aria-hidden": "true" }),
941
- !isMobile && /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.chipLabel, children: "Filter" })
942
- ]
943
- }
944
- ),
945
- openDropdown === "filter" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: FilterBar_module_default.dropdownPanel, role: "listbox", "aria-label": "Filter by type", children: FILTER_OPTIONS.map((opt) => /* @__PURE__ */ jsxRuntime.jsxs(
946
- "button",
947
- {
948
- type: "button",
949
- role: "option",
950
- "aria-selected": filterValue === opt.value,
951
- className: clsx25__default.default(
952
- FilterBar_module_default.dropdownOption,
953
- filterValue === opt.value && FilterBar_module_default.selected
926
+ /* @__PURE__ */ jsxRuntime.jsxs(
927
+ "div",
928
+ {
929
+ className: clsx15__default.default(
930
+ FilterBar_module_default.dropdownWrapper,
931
+ isMobile && searchState === "open" && FilterBar_module_default.filterFaded,
932
+ isMobile && searchState === "closing" && FilterBar_module_default.filterFading
933
+ ),
934
+ ref: filterRef,
935
+ children: [
936
+ /* @__PURE__ */ jsxRuntime.jsxs(
937
+ "button",
938
+ {
939
+ type: "button",
940
+ className: clsx15__default.default(FilterBar_module_default.chip, filterValue !== "all" && FilterBar_module_default.active),
941
+ onClick: () => setOpenDropdown(openDropdown === "filter" ? null : "filter"),
942
+ "aria-expanded": openDropdown === "filter",
943
+ children: [
944
+ /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "filter", size: 20, "aria-hidden": "true" }),
945
+ !isMobile && /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.chipLabel, children: "Filter" })
946
+ ]
947
+ }
954
948
  ),
955
- onClick: () => {
956
- onFilterChange(filterValue === opt.value ? "all" : opt.value);
957
- setOpenDropdown(null);
958
- },
959
- children: [
960
- /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: opt.icon, size: 20, "aria-hidden": "true" }),
961
- opt.label
962
- ]
963
- },
964
- opt.value
965
- )) })
966
- ] }),
967
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FilterBar_module_default.dropdownWrapper, ref: sortRef, children: [
968
- /* @__PURE__ */ jsxRuntime.jsxs(
969
- "button",
970
- {
971
- type: "button",
972
- className: FilterBar_module_default.chip,
973
- onClick: () => setOpenDropdown(openDropdown === "sort" ? null : "sort"),
974
- "aria-expanded": openDropdown === "sort",
975
- children: [
976
- /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "internalFilter", size: 20, "aria-hidden": "true" }),
977
- !isMobile && /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.chipLabel, children: "Sort" })
978
- ]
979
- }
980
- ),
981
- openDropdown === "sort" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: FilterBar_module_default.dropdownPanel, role: "listbox", "aria-label": "Sort by", children: SORT_OPTIONS.map((opt) => /* @__PURE__ */ jsxRuntime.jsx(
982
- "button",
983
- {
984
- type: "button",
985
- role: "option",
986
- "aria-selected": sortValue === opt.value,
987
- className: clsx25__default.default(
988
- FilterBar_module_default.dropdownOption,
989
- sortValue === opt.value && FilterBar_module_default.selected
949
+ openDropdown === "filter" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: FilterBar_module_default.dropdownPanel, role: "listbox", "aria-label": "Filter by type", children: FILTER_OPTIONS.map((opt) => /* @__PURE__ */ jsxRuntime.jsxs(
950
+ "button",
951
+ {
952
+ type: "button",
953
+ role: "option",
954
+ "aria-selected": filterValue === opt.value,
955
+ className: clsx15__default.default(
956
+ FilterBar_module_default.dropdownOption,
957
+ filterValue === opt.value && FilterBar_module_default.selected
958
+ ),
959
+ onClick: () => {
960
+ onFilterChange(filterValue === opt.value ? "all" : opt.value);
961
+ setOpenDropdown(null);
962
+ },
963
+ children: [
964
+ /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: opt.icon, size: 20, "aria-hidden": "true" }),
965
+ opt.label
966
+ ]
967
+ },
968
+ opt.value
969
+ )) })
970
+ ]
971
+ }
972
+ ),
973
+ /* @__PURE__ */ jsxRuntime.jsxs(
974
+ "div",
975
+ {
976
+ className: clsx15__default.default(
977
+ FilterBar_module_default.dropdownWrapper,
978
+ isMobile && searchState === "open" && FilterBar_module_default.filterFaded,
979
+ isMobile && searchState === "closing" && FilterBar_module_default.filterFading
980
+ ),
981
+ ref: sortRef,
982
+ children: [
983
+ /* @__PURE__ */ jsxRuntime.jsxs(
984
+ "button",
985
+ {
986
+ type: "button",
987
+ className: FilterBar_module_default.chip,
988
+ onClick: () => setOpenDropdown(openDropdown === "sort" ? null : "sort"),
989
+ "aria-expanded": openDropdown === "sort",
990
+ children: [
991
+ /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "internalFilter", size: 20, "aria-hidden": "true" }),
992
+ !isMobile && /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.chipLabel, children: "Sort" })
993
+ ]
994
+ }
990
995
  ),
991
- onClick: () => {
992
- onSortChange(opt.value);
993
- setOpenDropdown(null);
994
- },
995
- children: opt.label
996
- },
997
- opt.value
998
- )) })
999
- ] }),
1000
- isMobile ? (
1001
- /* Mobile — popup panel, mirroring the Filter/Sort dropdowns */
1002
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FilterBar_module_default.dropdownWrapper, ref: searchRef, children: [
1003
- /* @__PURE__ */ jsxRuntime.jsx(
1004
- "button",
1005
- {
1006
- type: "button",
1007
- className: clsx25__default.default(FilterBar_module_default.chip, searchValue !== "" && FilterBar_module_default.active),
1008
- onClick: () => setOpenDropdown(openDropdown === "search" ? null : "search"),
1009
- "aria-expanded": openDropdown === "search",
1010
- "aria-label": "Search",
1011
- children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "search", size: 20, "aria-hidden": "true" })
1012
- }
996
+ openDropdown === "sort" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: FilterBar_module_default.dropdownPanel, role: "listbox", "aria-label": "Sort by", children: SORT_OPTIONS.map((opt) => /* @__PURE__ */ jsxRuntime.jsx(
997
+ "button",
998
+ {
999
+ type: "button",
1000
+ role: "option",
1001
+ "aria-selected": sortValue === opt.value,
1002
+ className: clsx15__default.default(
1003
+ FilterBar_module_default.dropdownOption,
1004
+ sortValue === opt.value && FilterBar_module_default.selected
1005
+ ),
1006
+ onClick: () => {
1007
+ onSortChange(opt.value);
1008
+ setOpenDropdown(null);
1009
+ },
1010
+ children: opt.label
1011
+ },
1012
+ opt.value
1013
+ )) })
1014
+ ]
1015
+ }
1016
+ ),
1017
+ searchState !== "closed" ? /* @__PURE__ */ jsxRuntime.jsxs(
1018
+ "div",
1019
+ {
1020
+ className: clsx15__default.default(
1021
+ FilterBar_module_default.searchExpanded,
1022
+ searchState === "closing" && FilterBar_module_default.searchCollapsing
1013
1023
  ),
1014
- openDropdown === "search" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: FilterBar_module_default.searchPanel, children: [
1024
+ onAnimationEnd: () => {
1025
+ if (searchState === "closing") setSearchState("closed");
1026
+ },
1027
+ children: [
1015
1028
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.searchIconInner, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "search", size: 20, "aria-hidden": "true" }) }),
1016
1029
  /* @__PURE__ */ jsxRuntime.jsx(
1017
1030
  "input",
@@ -1025,8 +1038,11 @@ function FilterBar({
1025
1038
  onKeyDown: (e) => {
1026
1039
  if (e.key === "Escape") {
1027
1040
  if (searchValue) clearSearch();
1028
- else setOpenDropdown(null);
1041
+ else closeSearch();
1029
1042
  }
1043
+ },
1044
+ onBlur: () => {
1045
+ if (!searchValue) closeSearch();
1030
1046
  }
1031
1047
  }
1032
1048
  ),
@@ -1036,64 +1052,28 @@ function FilterBar({
1036
1052
  type: "button",
1037
1053
  className: FilterBar_module_default.searchClear,
1038
1054
  "aria-label": "Clear search",
1055
+ onMouseDown: (e) => e.preventDefault(),
1039
1056
  onClick: clearSearch,
1040
1057
  children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "xBlack", size: 16, "aria-hidden": "true" })
1041
1058
  }
1042
1059
  )
1043
- ] })
1044
- ] })
1045
- ) : searchState !== "closed" ? (
1046
- /* Desktop — animated inline expand */
1047
- /* @__PURE__ */ jsxRuntime.jsxs(
1048
- "div",
1049
- {
1050
- className: clsx25__default.default(
1051
- FilterBar_module_default.searchExpanded,
1052
- searchState === "closing" && FilterBar_module_default.searchCollapsing
1053
- ),
1054
- onAnimationEnd: () => {
1055
- if (searchState === "closing") setSearchState("closed");
1056
- },
1057
- children: [
1058
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.searchIconInner, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "search", size: 20, "aria-hidden": "true" }) }),
1059
- /* @__PURE__ */ jsxRuntime.jsx(
1060
- "input",
1061
- {
1062
- ref: searchInputRef,
1063
- type: "text",
1064
- className: FilterBar_module_default.searchInput,
1065
- placeholder: "Search\u2026",
1066
- value: searchValue,
1067
- onChange: (e) => onSearchChange(e.target.value),
1068
- onKeyDown: (e) => {
1069
- if (e.key === "Escape") {
1070
- if (searchValue) clearSearch();
1071
- else closeSearch();
1072
- }
1073
- },
1074
- onBlur: () => {
1075
- if (!searchValue) closeSearch();
1076
- }
1077
- }
1078
- ),
1079
- searchValue && /* @__PURE__ */ jsxRuntime.jsx(
1080
- "button",
1081
- {
1082
- type: "button",
1083
- className: FilterBar_module_default.searchClear,
1084
- "aria-label": "Clear search",
1085
- onMouseDown: (e) => e.preventDefault(),
1086
- onClick: clearSearch,
1087
- children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "xBlack", size: 16, "aria-hidden": "true" })
1088
- }
1089
- )
1090
- ]
1091
- }
1092
- )
1093
- ) : /* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", className: FilterBar_module_default.chip, onClick: () => setSearchState("open"), children: [
1094
- /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "search", size: 20, "aria-hidden": "true" }),
1095
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.chipLabel, children: "Search" })
1096
- ] })
1060
+ ]
1061
+ }
1062
+ ) : /* @__PURE__ */ jsxRuntime.jsxs(
1063
+ "button",
1064
+ {
1065
+ type: "button",
1066
+ className: FilterBar_module_default.chip,
1067
+ onClick: () => {
1068
+ setOpenDropdown(null);
1069
+ setSearchState("open");
1070
+ },
1071
+ children: [
1072
+ /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "search", size: 20, "aria-hidden": "true" }),
1073
+ !isMobile && /* @__PURE__ */ jsxRuntime.jsx("span", { className: FilterBar_module_default.chipLabel, children: "Search" })
1074
+ ]
1075
+ }
1076
+ )
1097
1077
  ] })
1098
1078
  ] });
1099
1079
  }
@@ -1119,9 +1099,9 @@ var InfoCard = ({ className, title, subtitle, icon, badge, children }) => {
1119
1099
  });
1120
1100
  const titleNode = (_a = slots.title) != null ? _a : title;
1121
1101
  const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
1122
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(InfoCard_module_default["info-card"], { [InfoCard_module_default.hasIcon]: !!icon }, className), children: [
1102
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(InfoCard_module_default["info-card"], { [InfoCard_module_default.hasIcon]: !!icon }, className), children: [
1123
1103
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: InfoCard_module_default.header, children: [
1124
- icon ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: icon }) : badge ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(InfoCard_module_default.badge, "h4"), children: badge }) : null,
1104
+ icon ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: icon }) : badge ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(InfoCard_module_default.badge, "h4"), children: badge }) : null,
1125
1105
  titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h4", children: titleNode })
1126
1106
  ] }),
1127
1107
  subtitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "body", children: subtitleNode })
@@ -1183,7 +1163,7 @@ var Pagination = ({
1183
1163
  setActivePage(page);
1184
1164
  onPageChange == null ? void 0 : onPageChange(page);
1185
1165
  };
1186
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(Pagination_module_default.pagination, className), children: [
1166
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(Pagination_module_default.pagination, className), children: [
1187
1167
  !disableArrows && /* @__PURE__ */ jsxRuntime.jsx(
1188
1168
  "button",
1189
1169
  {
@@ -1200,7 +1180,7 @@ var Pagination = ({
1200
1180
  "button",
1201
1181
  {
1202
1182
  onClick: () => goToPage(page),
1203
- className: clsx25__default.default(Pagination_module_default.page, {
1183
+ className: clsx15__default.default(Pagination_module_default.page, {
1204
1184
  [Pagination_module_default.active]: activePage === page,
1205
1185
  [Pagination_module_default.number]: hasNumber
1206
1186
  }),
@@ -1236,7 +1216,7 @@ var PracticeCard_module_default = {
1236
1216
  };
1237
1217
  var PracticeCard = ({ className, title, cta, image }) => {
1238
1218
  const { url: href, isExternal } = cta != null ? cta : {};
1239
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(PracticeCard_module_default["practice-card"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(
1219
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(PracticeCard_module_default["practice-card"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(
1240
1220
  ConditionalWrapper,
1241
1221
  __spreadProps(__spreadValues({
1242
1222
  className: PracticeCard_module_default.wrapper,
@@ -1247,7 +1227,7 @@ var PracticeCard = ({ className, title, cta, image }) => {
1247
1227
  children: [
1248
1228
  image && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: PracticeCard_module_default.background }, image)),
1249
1229
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PracticeCard_module_default.container, children: [
1250
- title && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(PracticeCard_module_default.title, "h3"), children: title }),
1230
+ title && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(PracticeCard_module_default.title, "h3"), children: title }),
1251
1231
  href && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PracticeCard_module_default.cta, children: [
1252
1232
  /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: PracticeCard_module_default.ctaRest, type: "right" }),
1253
1233
  /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: PracticeCard_module_default.ctaHover, type: "tiltedRight" })
@@ -1337,7 +1317,7 @@ var Sidebar = ({
1337
1317
  return /* @__PURE__ */ jsxRuntime.jsxs(
1338
1318
  "li",
1339
1319
  {
1340
- className: clsx25__default.default(Sidebar_module_default.sidebarItem, i === selectedIndex && Sidebar_module_default.active),
1320
+ className: clsx15__default.default(Sidebar_module_default.sidebarItem, i === selectedIndex && Sidebar_module_default.active),
1341
1321
  role: "button",
1342
1322
  tabIndex: 0,
1343
1323
  "aria-pressed": i === selectedIndex,
@@ -1358,126 +1338,480 @@ var Sidebar = ({
1358
1338
  }) }) });
1359
1339
  };
1360
1340
 
1361
- // src/components/LogoBar/LogoBar.module.scss
1362
- var LogoBar_module_default = {
1363
- logoBar: "LogoBar_module_logoBar",
1364
- logoWrapper: "LogoBar_module_logoWrapper",
1365
- logo: "LogoBar_module_logo",
1366
- logoHover: "LogoBar_module_logoHover"
1367
- };
1368
- var LogoBar = ({ className, items }) => {
1369
- if (!items || items.length === 0) return null;
1370
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(LogoBar_module_default.logoBar, className), children: items.map((item, key) => {
1371
- return /* @__PURE__ */ jsxRuntime.jsx(Anchor, { href: item.url, isExternal: item.isExternal, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: LogoBar_module_default.logoWrapper, children: [
1372
- item.logo && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: LogoBar_module_default.logo }, item.logo)),
1373
- item.hoverLogo && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: LogoBar_module_default.logoHover }, item.hoverLogo))
1374
- ] }) }, key);
1375
- }) });
1376
- };
1377
- var CardCollectionTitle = ({ children }) => {
1378
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
1379
- };
1380
- var CardCollectionSubtitle = ({ children }) => {
1381
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
1382
- };
1383
-
1384
- // src/widgets/CardCollection/CardCollection.module.scss
1385
- var CardCollection_module_default = {
1386
- "card-collection": "CardCollection_module_card-collection",
1387
- content: "CardCollection_module_content",
1388
- wrapper: "CardCollection_module_wrapper",
1389
- cardWrapper: "CardCollection_module_cardWrapper",
1390
- threeCols: "CardCollection_module_threeCols",
1391
- fourCols: "CardCollection_module_fourCols",
1392
- examCard: "CardCollection_module_examCard",
1393
- "reveal-wrapper": "CardCollection_module_reveal-wrapper",
1394
- "reveal-inner": "CardCollection_module_reveal-inner",
1395
- card: "CardCollection_module_card",
1396
- "is-expanded": "CardCollection_module_is-expanded",
1397
- cta: "CardCollection_module_cta"
1341
+ // src/components/UpcomingEventCard/UpcomingEventCard.module.scss
1342
+ var UpcomingEventCard_module_default = {
1343
+ "event-card": "UpcomingEventCard_module_event-card",
1344
+ "event-card-content": "UpcomingEventCard_module_event-card-content",
1345
+ "event-card-image": "UpcomingEventCard_module_event-card-image",
1346
+ "event-card-text-content": "UpcomingEventCard_module_event-card-text-content",
1347
+ date: "UpcomingEventCard_module_date",
1348
+ location: "UpcomingEventCard_module_location",
1349
+ description: "UpcomingEventCard_module_description",
1350
+ "event-card-footer": "UpcomingEventCard_module_event-card-footer",
1351
+ horizontal: "UpcomingEventCard_module_horizontal",
1352
+ "event-card-show-image": "UpcomingEventCard_module_event-card-show-image",
1353
+ "event-card-cta": "UpcomingEventCard_module_event-card-cta",
1354
+ hidden: "UpcomingEventCard_module_hidden",
1355
+ "cta-without-image": "UpcomingEventCard_module_cta-without-image",
1356
+ vertical: "UpcomingEventCard_module_vertical"
1398
1357
  };
1399
- var CardCollection = ({
1358
+ var UpcomingEventCard = ({
1400
1359
  className,
1401
- variant = "default",
1402
- theme = "dark",
1360
+ image,
1361
+ date,
1403
1362
  title,
1404
- subtitle,
1405
- cards = [],
1406
- ctaLabel,
1407
- children
1363
+ location,
1364
+ description,
1365
+ cta,
1366
+ direction = "horizontal",
1367
+ showImage = true
1408
1368
  }) => {
1409
- var _a, _b;
1410
- const container = React62.useRef(null);
1411
- const revealWrapper = React62.useRef(null);
1412
- const extraCard = React62.useRef(null);
1413
- const [isExpanded, setIsExpanded] = React62.useState(false);
1414
- const slots = resolveCompoundSlots(children, {
1415
- title: CardCollectionTitle,
1416
- subtitle: CardCollectionSubtitle
1417
- });
1418
- const titleNode = (_a = slots.title) != null ? _a : title;
1419
- const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
1420
- const isExamCard = variant === "examCard";
1421
- const visibleCards = isExamCard ? cards.slice(0, 8) : cards;
1422
- const hiddenCards = isExamCard ? cards.slice(8) : [];
1423
- const { contextSafe } = react.useGSAP({ scope: container });
1424
- const handleShowMore = React62.useCallback(() => {
1425
- contextSafe(() => {
1426
- setIsExpanded(true);
1427
- const tl = gsap__default.default.timeline({ defaults: { ease: "power3.inOut" } });
1428
- tl.to(`.${CardCollection_module_default.cta}`, {
1429
- opacity: 0,
1430
- y: 20,
1431
- duration: 0.3,
1432
- display: "none"
1433
- }).to(`.${CardCollection_module_default.cardWrapper}`, { height: "auto", duration: 0.2 }, "<").to(
1434
- revealWrapper.current,
1435
- {
1436
- height: "auto",
1437
- duration: 0.3
1438
- },
1439
- "-=0.1"
1440
- ).from(
1441
- extraCard.current,
1442
- {
1443
- opacity: 0,
1444
- y: 30,
1445
- duration: 0.3,
1446
- clearProps: "all"
1447
- },
1448
- "-=0.3"
1449
- );
1450
- })();
1451
- }, [contextSafe]);
1369
+ const { is } = useViewPort_default();
1370
+ const hasCtaWithoutImage = cta && cta.url && !image;
1371
+ const hasCTAandImage = Boolean(cta && cta.url && image);
1372
+ const hasImage = Boolean(image);
1373
+ const isBelowMobile = is("mobile-l", "below");
1452
1374
  return /* @__PURE__ */ jsxRuntime.jsxs(
1453
- Container,
1375
+ "article",
1454
1376
  {
1455
- ref: container,
1456
- className: clsx25__default.default(CardCollection_module_default["card-collection"], CardCollection_module_default[variant], className),
1377
+ className: clsx15__default.default(
1378
+ "card",
1379
+ UpcomingEventCard_module_default["event-card"],
1380
+ UpcomingEventCard_module_default[direction],
1381
+ hasCtaWithoutImage && UpcomingEventCard_module_default["cta-without-image"],
1382
+ className
1383
+ ),
1457
1384
  children: [
1458
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: CardCollection_module_default.content, children: [
1459
- titleNode && /* @__PURE__ */ jsxRuntime.jsx("h2", { children: titleNode }),
1460
- subtitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "subheading", children: subtitleNode })
1461
- ] }),
1462
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: CardCollection_module_default.wrapper, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(CardCollection_module_default.cardWrapper, { [CardCollection_module_default["is-expanded"]]: isExpanded }), children: [
1463
- visibleCards.map((card, key) => /* @__PURE__ */ jsxRuntime.jsx(Card2, __spreadValues({ className: CardCollection_module_default.card, variant: theme }, card), key)),
1464
- isExamCard && hiddenCards.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { ref: revealWrapper, className: CardCollection_module_default["reveal-wrapper"], children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: CardCollection_module_default["reveal-inner"], children: hiddenCards.map((card, key) => /* @__PURE__ */ jsxRuntime.jsx(
1465
- Card2,
1466
- __spreadValues({
1467
- ref: extraCard,
1468
- className: CardCollection_module_default.card,
1469
- variant: theme
1470
- }, card),
1471
- key
1472
- )) }) }),
1473
- isExamCard && !isExpanded && ctaLabel && /* @__PURE__ */ jsxRuntime.jsx(
1474
- Button,
1385
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("card-content", UpcomingEventCard_module_default["event-card-content"]), children: [
1386
+ showImage && image && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadProps(__spreadValues({}, image), { className: clsx15__default.default("card-image", UpcomingEventCard_module_default["event-card-image"]) })),
1387
+ /* @__PURE__ */ jsxRuntime.jsxs(
1388
+ "div",
1475
1389
  {
1476
- variant: "secondary",
1477
- icon: "downChevronBlack",
1478
- className: CardCollection_module_default.cta,
1479
- onClick: handleShowMore,
1480
- children: ctaLabel
1390
+ className: clsx15__default.default(
1391
+ "card-text-content",
1392
+ UpcomingEventCard_module_default["event-card-text-content"],
1393
+ (!showImage || !hasImage) && UpcomingEventCard_module_default["event-card-show-image"]
1394
+ ),
1395
+ children: [
1396
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: UpcomingEventCard_module_default.date, children: date }),
1397
+ title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: clsx15__default.default("card-text-title"), children: title }),
1398
+ location && /* @__PURE__ */ jsxRuntime.jsx("span", { className: UpcomingEventCard_module_default.location, children: location }),
1399
+ description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("card-text-description", UpcomingEventCard_module_default.description), children: description }),
1400
+ cta && cta.url && /* @__PURE__ */ jsxRuntime.jsx(
1401
+ Button,
1402
+ {
1403
+ variant: "secondary",
1404
+ className: clsx15__default.default(
1405
+ "card-cta",
1406
+ UpcomingEventCard_module_default["event-card-cta"],
1407
+ !hasCTAandImage && UpcomingEventCard_module_default.hidden
1408
+ ),
1409
+ fullWidth: isBelowMobile,
1410
+ href: cta.url,
1411
+ icon: cta.icon,
1412
+ isExternal: cta == null ? void 0 : cta.isExternal,
1413
+ children: cta.label
1414
+ }
1415
+ )
1416
+ ]
1417
+ }
1418
+ )
1419
+ ] }),
1420
+ cta && cta.url && /* @__PURE__ */ jsxRuntime.jsx(
1421
+ "div",
1422
+ {
1423
+ className: clsx15__default.default("card-footer", UpcomingEventCard_module_default["event-card-footer"], hasImage && UpcomingEventCard_module_default.hidden),
1424
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1425
+ Button,
1426
+ {
1427
+ variant: "secondary",
1428
+ className: clsx15__default.default("card-cta", UpcomingEventCard_module_default["event-card-cta"]),
1429
+ fullWidth: isBelowMobile,
1430
+ href: cta.url,
1431
+ icon: cta.icon,
1432
+ isExternal: cta == null ? void 0 : cta.isExternal,
1433
+ children: cta.label
1434
+ }
1435
+ )
1436
+ }
1437
+ )
1438
+ ]
1439
+ }
1440
+ );
1441
+ };
1442
+
1443
+ // src/components/Badge/Badge.module.scss
1444
+ var Badge_module_default = {
1445
+ badge: "Badge_module_badge",
1446
+ default: "Badge_module_default",
1447
+ sm: "Badge_module_sm",
1448
+ "badge-icon": "Badge_module_badge-icon",
1449
+ md: "Badge_module_md",
1450
+ clickable: "Badge_module_clickable",
1451
+ label: "Badge_module_label",
1452
+ icon: "Badge_module_icon",
1453
+ iconOnly: "Badge_module_iconOnly"
1454
+ };
1455
+ var Badge = React62.forwardRef(
1456
+ (_a, ref) => {
1457
+ var _b = _a, {
1458
+ children,
1459
+ className,
1460
+ variant = "default",
1461
+ size = "md",
1462
+ icon,
1463
+ iconOnly = false,
1464
+ live = "off",
1465
+ clickable = false
1466
+ } = _b, props = __objRest(_b, [
1467
+ "children",
1468
+ "className",
1469
+ "variant",
1470
+ "size",
1471
+ "icon",
1472
+ "iconOnly",
1473
+ "live",
1474
+ "clickable"
1475
+ ]);
1476
+ const classes = clsx15__default.default(
1477
+ Badge_module_default.badge,
1478
+ Badge_module_default[variant],
1479
+ Badge_module_default[size],
1480
+ {
1481
+ [Badge_module_default.iconOnly]: iconOnly,
1482
+ [Badge_module_default.clickable]: clickable
1483
+ },
1484
+ className
1485
+ );
1486
+ const content = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1487
+ icon && /* @__PURE__ */ jsxRuntime.jsx(Icon, __spreadValues({ className: clsx15__default.default("badge-icon", Badge_module_default["badge-icon"]) }, icon)),
1488
+ !iconOnly && /* @__PURE__ */ jsxRuntime.jsx("span", { className: Badge_module_default.label, children })
1489
+ ] });
1490
+ if (clickable) {
1491
+ return /* @__PURE__ */ jsxRuntime.jsx(
1492
+ "button",
1493
+ __spreadProps(__spreadValues({
1494
+ ref,
1495
+ type: "button",
1496
+ className: classes
1497
+ }, props), {
1498
+ children: content
1499
+ })
1500
+ );
1501
+ }
1502
+ return /* @__PURE__ */ jsxRuntime.jsx(
1503
+ "span",
1504
+ __spreadProps(__spreadValues({
1505
+ ref,
1506
+ className: classes,
1507
+ role: "status",
1508
+ "aria-live": live
1509
+ }, props), {
1510
+ children: content
1511
+ })
1512
+ );
1513
+ }
1514
+ );
1515
+ Badge.displayName = "Badge";
1516
+
1517
+ // src/components/Input/Input.module.scss
1518
+ var Input_module_default = {
1519
+ "input-field": "Input_module_input-field",
1520
+ label: "Input_module_label",
1521
+ required: "Input_module_required",
1522
+ wrapper: "Input_module_wrapper",
1523
+ input: "Input_module_input",
1524
+ adornment: "Input_module_adornment",
1525
+ "helper-text": "Input_module_helper-text",
1526
+ error: "Input_module_error",
1527
+ "input-field--error": "Input_module_input-field--error",
1528
+ "input-field--disabled": "Input_module_input-field--disabled"};
1529
+ var Input = React62.forwardRef(
1530
+ (_a, ref) => {
1531
+ var _b = _a, {
1532
+ id,
1533
+ label,
1534
+ helperText,
1535
+ error,
1536
+ required,
1537
+ disabled,
1538
+ className,
1539
+ inputClassName,
1540
+ startAdornment,
1541
+ endAdornment,
1542
+ endAction,
1543
+ hideLabel = false,
1544
+ type = "text"
1545
+ } = _b, props = __objRest(_b, [
1546
+ "id",
1547
+ "label",
1548
+ "helperText",
1549
+ "error",
1550
+ "required",
1551
+ "disabled",
1552
+ "className",
1553
+ "inputClassName",
1554
+ "startAdornment",
1555
+ "endAdornment",
1556
+ "endAction",
1557
+ "hideLabel",
1558
+ "type"
1559
+ ]);
1560
+ const generatedId = React62.useId();
1561
+ const inputId = id || generatedId;
1562
+ const helperTextId = `${inputId}-helper`;
1563
+ const errorId = `${inputId}-error`;
1564
+ const describedBy = [helperText ? helperTextId : null, error ? errorId : null].filter(Boolean).join(" ");
1565
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1566
+ "div",
1567
+ {
1568
+ className: clsx15__default.default(
1569
+ "input-field",
1570
+ Input_module_default["input-field"],
1571
+ {
1572
+ [Input_module_default["input-field--disabled"]]: disabled,
1573
+ [Input_module_default["input-field--error"]]: !!error
1574
+ },
1575
+ className
1576
+ ),
1577
+ children: [
1578
+ label && /* @__PURE__ */ jsxRuntime.jsxs(
1579
+ "label",
1580
+ {
1581
+ htmlFor: inputId,
1582
+ className: clsx15__default.default("input-label", Input_module_default.label, {
1583
+ ["sr-only"]: hideLabel
1584
+ }),
1585
+ children: [
1586
+ label,
1587
+ required && /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx15__default.default("input-required", Input_module_default.required), "aria-hidden": "true", children: "*" })
1588
+ ]
1589
+ }
1590
+ ),
1591
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("input-wrapper", Input_module_default.wrapper), children: [
1592
+ startAdornment && /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx15__default.default("input-adornment", Input_module_default.adornment), "aria-hidden": "true", children: startAdornment }),
1593
+ /* @__PURE__ */ jsxRuntime.jsx(
1594
+ "input",
1595
+ __spreadValues({
1596
+ ref,
1597
+ id: inputId,
1598
+ type,
1599
+ required,
1600
+ disabled,
1601
+ "aria-invalid": !!error,
1602
+ "aria-describedby": describedBy || void 0,
1603
+ className: clsx15__default.default(
1604
+ "input",
1605
+ Input_module_default.input,
1606
+ {
1607
+ [Input_module_default["input--with-start-adornment"]]: !!startAdornment,
1608
+ [Input_module_default["input--with-end-adornment"]]: !!endAdornment
1609
+ },
1610
+ inputClassName
1611
+ )
1612
+ }, props)
1613
+ ),
1614
+ endAdornment && /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx15__default.default("input-adornment", Input_module_default.adornment), "aria-hidden": "true", children: endAdornment }),
1615
+ endAction && /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx15__default.default("input-end-action"), children: endAction })
1616
+ ] }),
1617
+ helperText && !error && /* @__PURE__ */ jsxRuntime.jsx("p", { id: helperTextId, className: clsx15__default.default("input-helper-text", Input_module_default["helper-text"]), children: helperText }),
1618
+ error && /* @__PURE__ */ jsxRuntime.jsx("p", { id: errorId, className: clsx15__default.default("input-error", Input_module_default.error), role: "alert", children: error })
1619
+ ]
1620
+ }
1621
+ );
1622
+ }
1623
+ );
1624
+ Input.displayName = "Input";
1625
+
1626
+ // src/components/NewsCard/NewsCard.module.scss
1627
+ var NewsCard_module_default = {
1628
+ "news-card": "NewsCard_module_news-card",
1629
+ "news-card-link": "NewsCard_module_news-card-link",
1630
+ "news-card-cta": "NewsCard_module_news-card-cta",
1631
+ "news-card-image": "NewsCard_module_news-card-image",
1632
+ "news-card-content": "NewsCard_module_news-card-content",
1633
+ "news-card-top-content": "NewsCard_module_news-card-top-content",
1634
+ "news-card-badge": "NewsCard_module_news-card-badge",
1635
+ "news-card-date": "NewsCard_module_news-card-date",
1636
+ "news-card-main-content": "NewsCard_module_news-card-main-content",
1637
+ "news-card-title": "NewsCard_module_news-card-title",
1638
+ "news-card-description": "NewsCard_module_news-card-description",
1639
+ "news-card-cta-wrapper": "NewsCard_module_news-card-cta-wrapper",
1640
+ "news-card--vertical": "NewsCard_module_news-card--vertical",
1641
+ "news-card--horizontal": "NewsCard_module_news-card--horizontal"
1642
+ };
1643
+ var NewsCard = ({
1644
+ className,
1645
+ image,
1646
+ date,
1647
+ description,
1648
+ tag,
1649
+ title,
1650
+ cta,
1651
+ direction = "vertical",
1652
+ renderLink
1653
+ }) => {
1654
+ const linkProps = cta && cta.url ? {
1655
+ href: cta.url,
1656
+ target: cta.isExternal ? "_blank" : void 0,
1657
+ rel: cta.isExternal ? "noopener noreferrer" : void 0,
1658
+ className: clsx15__default.default("news-card-link", NewsCard_module_default["news-card-link"]),
1659
+ "aria-label": `${title}${cta.label ? ` \u2014 ${cta.label}` : ""}`
1660
+ } : null;
1661
+ const cardLink = linkProps ? renderLink ? renderLink(__spreadProps(__spreadValues({}, linkProps), { children: null })) : /* @__PURE__ */ jsxRuntime.jsx("a", __spreadValues({}, linkProps)) : null;
1662
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1663
+ "article",
1664
+ {
1665
+ className: clsx15__default.default(
1666
+ "news-card",
1667
+ NewsCard_module_default["news-card"],
1668
+ NewsCard_module_default[`news-card--${direction}`],
1669
+ className
1670
+ ),
1671
+ children: [
1672
+ cardLink,
1673
+ image && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadProps(__spreadValues({}, image), { className: clsx15__default.default("news-card-image", NewsCard_module_default["news-card-image"]) })),
1674
+ /* @__PURE__ */ jsxRuntime.jsxs(
1675
+ "div",
1676
+ {
1677
+ className: clsx15__default.default("news-card-content", NewsCard_module_default["news-card-content"]),
1678
+ style: {
1679
+ "--no-image-padding": image && image.src ? 0 : "1rem"
1680
+ },
1681
+ children: [
1682
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("news-card-top-content", NewsCard_module_default["news-card-top-content"]), children: [
1683
+ /* @__PURE__ */ jsxRuntime.jsx(Badge, { className: clsx15__default.default("news-card-badge", NewsCard_module_default["news-card-badge"]), children: tag }),
1684
+ /* @__PURE__ */ jsxRuntime.jsx("time", { dateTime: date.value, className: clsx15__default.default("news-card-date", NewsCard_module_default["news-card-date"]), children: date.label })
1685
+ ] }),
1686
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("news-card-main-content", NewsCard_module_default["news-card-main-content"]), children: [
1687
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: clsx15__default.default("news-card-title", NewsCard_module_default["news-card-title"]), children: title }),
1688
+ typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: clsx15__default.default("news-card-description", NewsCard_module_default["news-card-description"]), children: description }) : description
1689
+ ] }),
1690
+ cta && cta.url && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("news-card-cta-wrapper", NewsCard_module_default["news-card-cta-wrapper"]), children: /* @__PURE__ */ jsxRuntime.jsx(
1691
+ Button,
1692
+ {
1693
+ variant: "secondary",
1694
+ className: clsx15__default.default("news-card-cta", NewsCard_module_default["news-card-cta"]),
1695
+ href: cta.url,
1696
+ icon: cta.icon,
1697
+ isExternal: cta == null ? void 0 : cta.isExternal,
1698
+ "aria-hidden": "true",
1699
+ tabIndex: -1,
1700
+ renderLink: renderLink ? (props) => renderLink(__spreadProps(__spreadValues({}, props), { tabIndex: -1 })) : void 0,
1701
+ children: cta.label
1702
+ }
1703
+ ) })
1704
+ ]
1705
+ }
1706
+ )
1707
+ ]
1708
+ }
1709
+ );
1710
+ };
1711
+ var CardCollectionTitle = ({ children }) => {
1712
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
1713
+ };
1714
+ var CardCollectionSubtitle = ({ children }) => {
1715
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
1716
+ };
1717
+
1718
+ // src/widgets/CardCollection/CardCollection.module.scss
1719
+ var CardCollection_module_default = {
1720
+ "card-collection": "CardCollection_module_card-collection",
1721
+ content: "CardCollection_module_content",
1722
+ wrapper: "CardCollection_module_wrapper",
1723
+ cardWrapper: "CardCollection_module_cardWrapper",
1724
+ threeCols: "CardCollection_module_threeCols",
1725
+ fourCols: "CardCollection_module_fourCols",
1726
+ examCard: "CardCollection_module_examCard",
1727
+ "reveal-wrapper": "CardCollection_module_reveal-wrapper",
1728
+ "reveal-inner": "CardCollection_module_reveal-inner",
1729
+ card: "CardCollection_module_card",
1730
+ "is-expanded": "CardCollection_module_is-expanded",
1731
+ cta: "CardCollection_module_cta"
1732
+ };
1733
+ var CardCollection = ({
1734
+ className,
1735
+ variant = "default",
1736
+ theme = "dark",
1737
+ title,
1738
+ subtitle,
1739
+ cards = [],
1740
+ ctaLabel,
1741
+ children
1742
+ }) => {
1743
+ var _a, _b;
1744
+ const container = React62.useRef(null);
1745
+ const revealWrapper = React62.useRef(null);
1746
+ const extraCard = React62.useRef(null);
1747
+ const [isExpanded, setIsExpanded] = React62.useState(false);
1748
+ const slots = resolveCompoundSlots(children, {
1749
+ title: CardCollectionTitle,
1750
+ subtitle: CardCollectionSubtitle
1751
+ });
1752
+ const titleNode = (_a = slots.title) != null ? _a : title;
1753
+ const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
1754
+ const isExamCard = variant === "examCard";
1755
+ const visibleCards = isExamCard ? cards.slice(0, 8) : cards;
1756
+ const hiddenCards = isExamCard ? cards.slice(8) : [];
1757
+ const { contextSafe } = react.useGSAP({ scope: container });
1758
+ const handleShowMore = React62.useCallback(() => {
1759
+ contextSafe(() => {
1760
+ setIsExpanded(true);
1761
+ const tl = gsap__default.default.timeline({ defaults: { ease: "power3.inOut" } });
1762
+ tl.to(`.${CardCollection_module_default.cta}`, {
1763
+ opacity: 0,
1764
+ y: 20,
1765
+ duration: 0.3,
1766
+ display: "none"
1767
+ }).to(`.${CardCollection_module_default.cardWrapper}`, { height: "auto", duration: 0.2 }, "<").to(
1768
+ revealWrapper.current,
1769
+ {
1770
+ height: "auto",
1771
+ duration: 0.3
1772
+ },
1773
+ "-=0.1"
1774
+ ).from(
1775
+ extraCard.current,
1776
+ {
1777
+ opacity: 0,
1778
+ y: 30,
1779
+ duration: 0.3,
1780
+ clearProps: "all"
1781
+ },
1782
+ "-=0.3"
1783
+ );
1784
+ })();
1785
+ }, [contextSafe]);
1786
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1787
+ Container,
1788
+ {
1789
+ ref: container,
1790
+ className: clsx15__default.default(CardCollection_module_default["card-collection"], CardCollection_module_default[variant], className),
1791
+ children: [
1792
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: CardCollection_module_default.content, children: [
1793
+ titleNode && /* @__PURE__ */ jsxRuntime.jsx("h2", { children: titleNode }),
1794
+ subtitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "subheading", children: subtitleNode })
1795
+ ] }),
1796
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: CardCollection_module_default.wrapper, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(CardCollection_module_default.cardWrapper, { [CardCollection_module_default["is-expanded"]]: isExpanded }), children: [
1797
+ visibleCards.map((card, key) => /* @__PURE__ */ jsxRuntime.jsx(Card2, __spreadValues({ className: CardCollection_module_default.card, variant: theme }, card), key)),
1798
+ isExamCard && hiddenCards.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { ref: revealWrapper, className: CardCollection_module_default["reveal-wrapper"], children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: CardCollection_module_default["reveal-inner"], children: hiddenCards.map((card, key) => /* @__PURE__ */ jsxRuntime.jsx(
1799
+ Card2,
1800
+ __spreadValues({
1801
+ ref: extraCard,
1802
+ className: CardCollection_module_default.card,
1803
+ variant: theme
1804
+ }, card),
1805
+ key
1806
+ )) }) }),
1807
+ isExamCard && !isExpanded && ctaLabel && /* @__PURE__ */ jsxRuntime.jsx(
1808
+ Button,
1809
+ {
1810
+ variant: "secondary",
1811
+ icon: "downChevronBlack",
1812
+ className: CardCollection_module_default.cta,
1813
+ onClick: handleShowMore,
1814
+ children: ctaLabel
1481
1815
  }
1482
1816
  )
1483
1817
  ] }) })
@@ -1560,7 +1894,7 @@ var ContactModule = ({
1560
1894
  },
1561
1895
  { scope: containerRef, dependencies: [blurred, animateBlur] }
1562
1896
  );
1563
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: containerRef, className: clsx25__default.default(ContactModule_module_default["contact-module"], className), children: [
1897
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: containerRef, className: clsx15__default.default(ContactModule_module_default["contact-module"], className), children: [
1564
1898
  blurred && /* @__PURE__ */ jsxRuntime.jsx(
1565
1899
  "div",
1566
1900
  {
@@ -1575,8 +1909,8 @@ var ContactModule = ({
1575
1909
  /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: ContactModule_module_default.container, children: [
1576
1910
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ContactModule_module_default.wrapper, children: [
1577
1911
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ContactModule_module_default.content, children: [
1578
- titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(ContactModule_module_default.title, "h1"), children: titleNode }),
1579
- subtitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(ContactModule_module_default.subtitle, "subheading"), children: subtitleNode })
1912
+ titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(ContactModule_module_default.title, "h1"), children: titleNode }),
1913
+ subtitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(ContactModule_module_default.subtitle, "subheading"), children: subtitleNode })
1580
1914
  ] }),
1581
1915
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: ContactModule_module_default["cta-wrapper"], children: ctas == null ? void 0 : ctas.map((cta, key) => /* @__PURE__ */ jsxRuntime.jsx(
1582
1916
  Button,
@@ -1637,7 +1971,7 @@ var Footer = ({
1637
1971
  disclaimer: FooterDisclaimer
1638
1972
  });
1639
1973
  const titleNode = (_a = slots.disclaimer) != null ? _a : disclaimer;
1640
- return /* @__PURE__ */ jsxRuntime.jsx("footer", { className: clsx25__default.default(Footer_module_default.footer, className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: Footer_module_default.container, children: [
1974
+ return /* @__PURE__ */ jsxRuntime.jsx("footer", { className: clsx15__default.default(Footer_module_default.footer, className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: Footer_module_default.container, children: [
1641
1975
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Footer_module_default.bottom, children: [
1642
1976
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Footer_module_default["bottom-left"], children: [
1643
1977
  supporters.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Footer_module_default.supporters, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: Footer_module_default["supporters-logos"], children: supporters.map(
@@ -1653,7 +1987,7 @@ var Footer = ({
1653
1987
  index
1654
1988
  ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: Footer_module_default["supporter-link-primary"], children: /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({}, supporter.image)) }, index)
1655
1989
  ) }) }),
1656
- titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(Footer_module_default.disclaimer, "p"), children: titleNode }),
1990
+ titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(Footer_module_default.disclaimer, "p"), children: titleNode }),
1657
1991
  copyright && /* @__PURE__ */ jsxRuntime.jsx("p", { className: Footer_module_default.copyright, children: copyright })
1658
1992
  ] }),
1659
1993
  columns.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("nav", { className: Footer_module_default["bottom-right"], children: columns.map((column, colIndex) => /* @__PURE__ */ jsxRuntime.jsx("ul", { className: Footer_module_default["nav-list"], children: column.map((link) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -1669,6 +2003,23 @@ var Footer = ({
1669
2003
  children
1670
2004
  ] }) });
1671
2005
  };
2006
+
2007
+ // src/components/LogoBar/LogoBar.module.scss
2008
+ var LogoBar_module_default = {
2009
+ logoBar: "LogoBar_module_logoBar",
2010
+ logoWrapper: "LogoBar_module_logoWrapper",
2011
+ logo: "LogoBar_module_logo",
2012
+ logoHover: "LogoBar_module_logoHover"
2013
+ };
2014
+ var LogoBar = ({ className, items }) => {
2015
+ if (!items || items.length === 0) return null;
2016
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(LogoBar_module_default.logoBar, className), children: items.map((item, key) => {
2017
+ return /* @__PURE__ */ jsxRuntime.jsx(Anchor, { href: item.url, isExternal: item.isExternal, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: LogoBar_module_default.logoWrapper, children: [
2018
+ item.logo && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: LogoBar_module_default.logo }, item.logo)),
2019
+ item.hoverLogo && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: LogoBar_module_default.logoHover }, item.hoverLogo))
2020
+ ] }) }, key);
2021
+ }) });
2022
+ };
1672
2023
  var Text = (_a) => {
1673
2024
  var _b = _a, { tag = "p", promoteToH1 = false, ref, children } = _b, props = __objRest(_b, ["tag", "promoteToH1", "ref", "children"]);
1674
2025
  const Component = promoteToH1 ? "h1" : tag;
@@ -1734,7 +2085,7 @@ var HeroBanner = ({
1734
2085
  });
1735
2086
  const titleNode = (_a = slots.title) != null ? _a : title;
1736
2087
  const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
1737
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(HeroBanner_module_default.heroBanner, HeroBanner_module_default[variant], className), children: [
2088
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(HeroBanner_module_default.heroBanner, HeroBanner_module_default[variant], className), children: [
1738
2089
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: HeroBanner_module_default.container, children: [
1739
2090
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: HeroBanner_module_default.banner, children: [
1740
2091
  (titleNode || subtitleNode) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: HeroBanner_module_default.text, children: [
@@ -1744,7 +2095,7 @@ var HeroBanner = ({
1744
2095
  {
1745
2096
  tag: "h2",
1746
2097
  promoteToH1,
1747
- className: clsx25__default.default(HeroBanner_module_default.title, vBannerPodcast ? "h3" : "h1"),
2098
+ className: clsx15__default.default(HeroBanner_module_default.title, vBannerPodcast ? "h3" : "h1"),
1748
2099
  children: titleNode
1749
2100
  }
1750
2101
  ),
@@ -1753,7 +2104,7 @@ var HeroBanner = ({
1753
2104
  {
1754
2105
  tag: "div",
1755
2106
  promoteToH1: promoteToH1 && !titleNode,
1756
- className: clsx25__default.default(HeroBanner_module_default.subtitle, "subheading"),
2107
+ className: clsx15__default.default(HeroBanner_module_default.subtitle, "subheading"),
1757
2108
  children: subtitleNode
1758
2109
  }
1759
2110
  )
@@ -1830,7 +2181,7 @@ var HeroBannerCarousel = ({
1830
2181
  const [swiperInstance, setSwiperInstance] = React62.useState(null);
1831
2182
  const [activeIndex, setActiveIndex] = React62.useState(0);
1832
2183
  if (!items.length) return null;
1833
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(HeroBannerCarousel_module_default.heroBannerCarousel, className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: HeroBannerCarousel_module_default.inner, children: [
2184
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(HeroBannerCarousel_module_default.heroBannerCarousel, className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: HeroBannerCarousel_module_default.inner, children: [
1834
2185
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: HeroBannerCarousel_module_default.swiperContainer, children: /* @__PURE__ */ jsxRuntime.jsx(
1835
2186
  react$1.Swiper,
1836
2187
  {
@@ -1877,7 +2228,7 @@ var HeroBannerCarousel = ({
1877
2228
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: HeroBannerCarousel_module_default.pagination, children: items.map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
1878
2229
  "button",
1879
2230
  {
1880
- className: clsx25__default.default(HeroBannerCarousel_module_default.dot, index === activeIndex && HeroBannerCarousel_module_default.dotActive),
2231
+ className: clsx15__default.default(HeroBannerCarousel_module_default.dot, index === activeIndex && HeroBannerCarousel_module_default.dotActive),
1881
2232
  onClick: () => swiperInstance == null ? void 0 : swiperInstance.slideTo(index),
1882
2233
  "aria-label": `Go to slide ${index + 1}`
1883
2234
  },
@@ -1957,7 +2308,7 @@ var AccordionItem = ({
1957
2308
  return /* @__PURE__ */ jsxRuntime.jsxs(
1958
2309
  "div",
1959
2310
  {
1960
- className: clsx25__default.default(
2311
+ className: clsx15__default.default(
1961
2312
  Accordion_module_default.accordionItem,
1962
2313
  {
1963
2314
  [Accordion_module_default.accordionItemOpen]: isOpen
@@ -1968,18 +2319,18 @@ var AccordionItem = ({
1968
2319
  /* @__PURE__ */ jsxRuntime.jsxs(
1969
2320
  "button",
1970
2321
  {
1971
- className: clsx25__default.default(Accordion_module_default.accordionHeader, {
2322
+ className: clsx15__default.default(Accordion_module_default.accordionHeader, {
1972
2323
  [Accordion_module_default.accordionHeaderOpen]: isOpen
1973
2324
  }),
1974
2325
  onClick: handleToggle,
1975
2326
  "aria-expanded": isOpen,
1976
2327
  "aria-label": `Toggle ${title}`,
1977
2328
  children: [
1978
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: Accordion_module_default.accordionHeaderLeft, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx25__default.default("body", Accordion_module_default.accordionTitle), children: title }) }),
2329
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: Accordion_module_default.accordionHeaderLeft, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx15__default.default("body", Accordion_module_default.accordionTitle), children: title }) }),
1979
2330
  /* @__PURE__ */ jsxRuntime.jsx(
1980
2331
  "span",
1981
2332
  {
1982
- className: clsx25__default.default(Accordion_module_default.accordionChevron, {
2333
+ className: clsx15__default.default(Accordion_module_default.accordionChevron, {
1983
2334
  [Accordion_module_default.accordionChevronOpen]: isOpen
1984
2335
  }),
1985
2336
  children: isOpen ? /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "filledChevronUpBlack", size: 40 }) : /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "circleChevronDown", size: 40 })
@@ -2031,7 +2382,7 @@ var Accordion = ({
2031
2382
  if (items.length === 0) {
2032
2383
  return null;
2033
2384
  }
2034
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(Accordion_module_default.accordion, className), children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
2385
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(Accordion_module_default.accordion, className), children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
2035
2386
  AccordionItem,
2036
2387
  {
2037
2388
  id: item.id,
@@ -2121,7 +2472,7 @@ var InternalBrandsTab = (props) => {
2121
2472
  };
2122
2473
  })) || [];
2123
2474
  }, [tabs]);
2124
- return /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx25__default.default(InternalBrandsTab_module_default.internalBrandsTab, className), children: [
2475
+ return /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default(InternalBrandsTab_module_default.internalBrandsTab, className), children: [
2125
2476
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: InternalBrandsTab_module_default.textsContainer, children: [
2126
2477
  title && /* @__PURE__ */ jsxRuntime.jsx(Text, { tag: "h2", className: InternalBrandsTab_module_default.title, children: title }),
2127
2478
  subTitle && /* @__PURE__ */ jsxRuntime.jsx("div", { className: InternalBrandsTab_module_default.subTitle, children: subTitle })
@@ -2137,7 +2488,7 @@ var InternalBrandsTab = (props) => {
2137
2488
  },
2138
2489
  index
2139
2490
  )) }),
2140
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(InternalBrandsTab_module_default.contentArea), children: ((_a = tabs == null ? void 0 : tabs[activeIndex]) == null ? void 0 : _a.topContent) && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2491
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(InternalBrandsTab_module_default.contentArea), children: ((_a = tabs == null ? void 0 : tabs[activeIndex]) == null ? void 0 : _a.topContent) && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2141
2492
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: InternalBrandsTab_module_default.topContent, children: [
2142
2493
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
2143
2494
  ((_b = tabs[activeIndex].topContent) == null ? void 0 : _b.title) && /* @__PURE__ */ jsxRuntime.jsx("p", { className: InternalBrandsTab_module_default.topContentTitle, children: (_c = tabs[activeIndex].topContent) == null ? void 0 : _c.title }),
@@ -2228,17 +2579,17 @@ var MiniBanner = ({
2228
2579
  const pretitleNode = (_a = slots.pretitle) != null ? _a : pretitle;
2229
2580
  const titleNode = (_b = slots.title) != null ? _b : title;
2230
2581
  const subtitleNode = (_c = slots.subtitle) != null ? _c : subtitle;
2231
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(MiniBanner_module_default.minibanner, MiniBanner_module_default[variant], className), children: [
2582
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(MiniBanner_module_default.minibanner, MiniBanner_module_default[variant], className), children: [
2232
2583
  ((background == null ? void 0 : background.src) || ((_d = background == null ? void 0 : background.desktop) == null ? void 0 : _d.src) || ((_e = background == null ? void 0 : background.mobile) == null ? void 0 : _e.src)) && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: MiniBanner_module_default.background }, background)),
2233
2584
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: MiniBanner_module_default.wrapper, children: [
2234
2585
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: MiniBanner_module_default.textContainer, children: [
2235
2586
  (logo == null ? void 0 : logo.src) && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: MiniBanner_module_default.logo }, logo)),
2236
- pretitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(MiniBanner_module_default.pretitle, "small"), children: pretitleNode }),
2237
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: MiniBanner_module_default.headingWrapper, children: titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(MiniBanner_module_default.title, isMiniBannerTextLeft ? "h1" : "h4"), children: titleNode }) }),
2587
+ pretitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(MiniBanner_module_default.pretitle, "small"), children: pretitleNode }),
2588
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: MiniBanner_module_default.headingWrapper, children: titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(MiniBanner_module_default.title, isMiniBannerTextLeft ? "h1" : "h4"), children: titleNode }) }),
2238
2589
  subtitleNode && /* @__PURE__ */ jsxRuntime.jsx(
2239
2590
  "div",
2240
2591
  {
2241
- className: clsx25__default.default(MiniBanner_module_default.title, {
2592
+ className: clsx15__default.default(MiniBanner_module_default.title, {
2242
2593
  subheading: isMiniBannerNoBG || isMiniBannerTextLeft,
2243
2594
  h1: !isMiniBannerNoBG && !isMiniBannerTextLeft
2244
2595
  }),
@@ -2309,14 +2660,14 @@ var MiniSectionCta = ({
2309
2660
  return /* @__PURE__ */ jsxRuntime.jsx(
2310
2661
  "div",
2311
2662
  {
2312
- className: clsx25__default.default(MiniSectionCta_module_default.miniSectionCta, MiniSectionCta_module_default[variant], theme && MiniSectionCta_module_default[theme], className),
2663
+ className: clsx15__default.default(MiniSectionCta_module_default.miniSectionCta, MiniSectionCta_module_default[variant], theme && MiniSectionCta_module_default[theme], className),
2313
2664
  children: /* @__PURE__ */ jsxRuntime.jsx(Container, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: MiniSectionCta_module_default.wrapper, children: [
2314
2665
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: MiniSectionCta_module_default.col, children: [
2315
2666
  titleNode && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: variant === "BgColorBlack" || variant === "BgColorGrey" ? "h3" : "h2", children: titleNode }),
2316
2667
  subtitleNode && /* @__PURE__ */ jsxRuntime.jsx(
2317
2668
  "div",
2318
2669
  {
2319
- className: clsx25__default.default(MiniSectionCta_module_default.subtitle, variant === "infoCallout" ? "h4" : "subheading"),
2670
+ className: clsx15__default.default(MiniSectionCta_module_default.subtitle, variant === "infoCallout" ? "h4" : "subheading"),
2320
2671
  children: subtitleNode
2321
2672
  }
2322
2673
  )
@@ -2381,7 +2732,7 @@ var PracticePathCards = ({
2381
2732
  const titleNode = (_a = slots.title) != null ? _a : title;
2382
2733
  const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
2383
2734
  const footerNode = (_c = slots.footer) != null ? _c : footer;
2384
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(PracticePathCards_module_default["practice-path-cards"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: PracticePathCards_module_default.container, children: [
2735
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(PracticePathCards_module_default["practice-path-cards"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: PracticePathCards_module_default.container, children: [
2385
2736
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PracticePathCards_module_default.wrapper, children: [
2386
2737
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: PracticePathCards_module_default.content, children: [
2387
2738
  titleNode && /* @__PURE__ */ jsxRuntime.jsx("h2", { children: titleNode }),
@@ -2435,8 +2786,8 @@ var Teaser5050With3Text = ({
2435
2786
  title: Teaser5050With3TextTitle
2436
2787
  });
2437
2788
  const titleNode = (_a = slots.title) != null ? _a : title;
2438
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(Teaser5050With3Text_module_default["teaser5050-3text"], Teaser5050With3Text_module_default[variant], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: Teaser5050With3Text_module_default.container, children: [
2439
- titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(Teaser5050With3Text_module_default.title, "h3"), children: titleNode }),
2789
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(Teaser5050With3Text_module_default["teaser5050-3text"], Teaser5050With3Text_module_default[variant], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: Teaser5050With3Text_module_default.container, children: [
2790
+ titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(Teaser5050With3Text_module_default.title, "h3"), children: titleNode }),
2440
2791
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Teaser5050With3Text_module_default.content, children: [
2441
2792
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: Teaser5050With3Text_module_default.cards, children: cards == null ? void 0 : cards.map((card, key) => /* @__PURE__ */ jsxRuntime.jsx(InfoCard2, __spreadValues({}, card), key)) }),
2442
2793
  image && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadValues({ className: Teaser5050With3Text_module_default.image }, image))
@@ -2486,12 +2837,12 @@ var Teaser5050WithCta = ({
2486
2837
  return /* @__PURE__ */ jsxRuntime.jsx(
2487
2838
  "div",
2488
2839
  {
2489
- className: clsx25__default.default(Teaser5050WithCta_module_default.teaser5050, Teaser5050WithCta_module_default[variant], className),
2840
+ className: clsx15__default.default(Teaser5050WithCta_module_default.teaser5050, Teaser5050WithCta_module_default[variant], className),
2490
2841
  style: { backgroundColor: bgColor ? bgColor : "#ffffff" },
2491
2842
  children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: Teaser5050WithCta_module_default.container, children: [
2492
2843
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Teaser5050WithCta_module_default.wrapper, children: [
2493
2844
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Teaser5050WithCta_module_default.content, children: [
2494
- titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(Teaser5050WithCta_module_default.title, "h3"), children: titleNode }),
2845
+ titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(Teaser5050WithCta_module_default.title, "h3"), children: titleNode }),
2495
2846
  subtitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "subheading", children: subtitleNode })
2496
2847
  ] }),
2497
2848
  (ctas == null ? void 0 : ctas.length) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Teaser5050WithCta_module_default.ctaWrapper, children: ctas.map((cta, key) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -2519,110 +2870,10 @@ var Teaser5050WithCta2 = Object.assign(Teaser5050WithCta, {
2519
2870
  Subtitle: Teaser5050WithCtaSubtitle
2520
2871
  });
2521
2872
 
2522
- // src/components/UpcomingEventCard/UpcomingEventCard.module.scss
2523
- var UpcomingEventCard_module_default = {
2524
- "event-card": "UpcomingEventCard_module_event-card",
2525
- "event-card-content": "UpcomingEventCard_module_event-card-content",
2526
- "event-card-image": "UpcomingEventCard_module_event-card-image",
2527
- "event-card-text-content": "UpcomingEventCard_module_event-card-text-content",
2528
- date: "UpcomingEventCard_module_date",
2529
- location: "UpcomingEventCard_module_location",
2530
- description: "UpcomingEventCard_module_description",
2531
- "event-card-footer": "UpcomingEventCard_module_event-card-footer",
2532
- horizontal: "UpcomingEventCard_module_horizontal",
2533
- "event-card-show-image": "UpcomingEventCard_module_event-card-show-image",
2534
- "event-card-cta": "UpcomingEventCard_module_event-card-cta",
2535
- hidden: "UpcomingEventCard_module_hidden",
2536
- "cta-without-image": "UpcomingEventCard_module_cta-without-image",
2537
- vertical: "UpcomingEventCard_module_vertical"
2873
+ // src/components/Carousel/Carousel.module.scss
2874
+ var Carousel_module_default = {
2875
+ carousel: "Carousel_module_carousel"
2538
2876
  };
2539
- var UpcomingEventCard = ({
2540
- className,
2541
- image,
2542
- date,
2543
- title,
2544
- location,
2545
- description,
2546
- cta,
2547
- direction = "horizontal",
2548
- showImage = true
2549
- }) => {
2550
- const { is } = useViewPort_default();
2551
- const hasCtaWithoutImage = cta && cta.url && !image;
2552
- const hasCTAandImage = Boolean(cta && cta.url && image);
2553
- const hasImage = Boolean(image);
2554
- const isBelowMobile = is("mobile-l", "below");
2555
- return /* @__PURE__ */ jsxRuntime.jsxs(
2556
- "article",
2557
- {
2558
- className: clsx25__default.default(
2559
- "card",
2560
- UpcomingEventCard_module_default["event-card"],
2561
- UpcomingEventCard_module_default[direction],
2562
- hasCtaWithoutImage && UpcomingEventCard_module_default["cta-without-image"],
2563
- className
2564
- ),
2565
- children: [
2566
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default("card-content", UpcomingEventCard_module_default["event-card-content"]), children: [
2567
- showImage && image && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadProps(__spreadValues({}, image), { className: clsx25__default.default("card-image", UpcomingEventCard_module_default["event-card-image"]) })),
2568
- /* @__PURE__ */ jsxRuntime.jsxs(
2569
- "div",
2570
- {
2571
- className: clsx25__default.default(
2572
- "card-text-content",
2573
- UpcomingEventCard_module_default["event-card-text-content"],
2574
- (!showImage || !hasImage) && UpcomingEventCard_module_default["event-card-show-image"]
2575
- ),
2576
- children: [
2577
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: UpcomingEventCard_module_default.date, children: date }),
2578
- title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: clsx25__default.default("card-text-title"), children: title }),
2579
- location && /* @__PURE__ */ jsxRuntime.jsx("span", { className: UpcomingEventCard_module_default.location, children: location }),
2580
- description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default("card-text-description", UpcomingEventCard_module_default.description), children: description }),
2581
- cta && cta.url && /* @__PURE__ */ jsxRuntime.jsx(
2582
- Button,
2583
- {
2584
- variant: "secondary",
2585
- className: clsx25__default.default(
2586
- "card-cta",
2587
- UpcomingEventCard_module_default["event-card-cta"],
2588
- !hasCTAandImage && UpcomingEventCard_module_default.hidden
2589
- ),
2590
- fullWidth: isBelowMobile,
2591
- href: cta.url,
2592
- icon: cta.icon,
2593
- isExternal: cta == null ? void 0 : cta.isExternal,
2594
- children: cta.label
2595
- }
2596
- )
2597
- ]
2598
- }
2599
- )
2600
- ] }),
2601
- cta && cta.url && /* @__PURE__ */ jsxRuntime.jsx(
2602
- "div",
2603
- {
2604
- className: clsx25__default.default("card-footer", UpcomingEventCard_module_default["event-card-footer"], hasImage && UpcomingEventCard_module_default.hidden),
2605
- children: /* @__PURE__ */ jsxRuntime.jsx(
2606
- Button,
2607
- {
2608
- variant: "secondary",
2609
- className: clsx25__default.default("card-cta", UpcomingEventCard_module_default["event-card-cta"]),
2610
- fullWidth: isBelowMobile,
2611
- href: cta.url,
2612
- icon: cta.icon,
2613
- isExternal: cta == null ? void 0 : cta.isExternal,
2614
- children: cta.label
2615
- }
2616
- )
2617
- }
2618
- )
2619
- ]
2620
- }
2621
- );
2622
- };
2623
-
2624
- // src/components/Carousel/Carousel.module.scss
2625
- var Carousel_module_default = {};
2626
2877
  var Carousel = (_a) => {
2627
2878
  var _b = _a, {
2628
2879
  slides,
@@ -2643,7 +2894,7 @@ var Carousel = (_a) => {
2643
2894
  },
2644
2895
  role: "region",
2645
2896
  "aria-label": ariaLabel,
2646
- className: clsx25__default.default(Carousel_module_default.carousel, className),
2897
+ className: clsx15__default.default(Carousel_module_default.carousel, className),
2647
2898
  spaceBetween: 0,
2648
2899
  slidesPerView: "auto",
2649
2900
  modules: [modules.FreeMode, modules.A11y],
@@ -2653,7 +2904,7 @@ var Carousel = (_a) => {
2653
2904
  children: slides.map((slide, index) => /* @__PURE__ */ jsxRuntime.jsx(
2654
2905
  react$1.SwiperSlide,
2655
2906
  {
2656
- className: clsx25__default.default(Carousel_module_default["carousel-item"], props.slideClass),
2907
+ className: clsx15__default.default(Carousel_module_default["carousel-item"], props.slideClass),
2657
2908
  children: slide
2658
2909
  },
2659
2910
  index
@@ -2703,13 +2954,13 @@ var EventList = ({
2703
2954
  return /* @__PURE__ */ jsxRuntime.jsx(
2704
2955
  "div",
2705
2956
  {
2706
- className: clsx25__default.default("event-list-module", EventList_module_default["event-list-module"], className),
2957
+ className: clsx15__default.default("event-list-module", EventList_module_default["event-list-module"], className),
2707
2958
  style: {
2708
2959
  backgroundColor
2709
2960
  },
2710
- children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx25__default.default(EventList_module_default["event-list-container"]), children: [
2961
+ children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default(EventList_module_default["event-list-container"]), children: [
2711
2962
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: EventList_module_default["event-list-header-container"], children: [
2712
- titleNode && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: clsx25__default.default(EventList_module_default["event-list-title"]), children: titleNode }),
2963
+ titleNode && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: clsx15__default.default(EventList_module_default["event-list-title"]), children: titleNode }),
2713
2964
  cta && cta.url && /* @__PURE__ */ jsxRuntime.jsx(
2714
2965
  Button,
2715
2966
  {
@@ -2726,7 +2977,7 @@ var EventList = ({
2726
2977
  Carousel,
2727
2978
  {
2728
2979
  "aria-label": "Upcoming events",
2729
- wrapperClass: clsx25__default.default(EventList_module_default["carousel-wrapper"], EventList_module_default[variant]),
2980
+ wrapperClass: clsx15__default.default(EventList_module_default["carousel-wrapper"], EventList_module_default[variant]),
2730
2981
  slideClass: EventList_module_default["carousel-list-item"],
2731
2982
  spaceBetween: 16,
2732
2983
  slides: items.map((item) => {
@@ -2734,7 +2985,7 @@ var EventList = ({
2734
2985
  return /* @__PURE__ */ jsxRuntime.jsx(
2735
2986
  UpcomingEventCard,
2736
2987
  __spreadValues({
2737
- className: clsx25__default.default(EventList_module_default["event-card"]),
2988
+ className: clsx15__default.default(EventList_module_default["event-card"]),
2738
2989
  direction: "vertical",
2739
2990
  showImage: false
2740
2991
  }, item),
@@ -2747,17 +2998,17 @@ var EventList = ({
2747
2998
  "ul",
2748
2999
  {
2749
3000
  "aria-label": "Upcoming events",
2750
- className: clsx25__default.default(EventList_module_default["event-list-wrapper"], EventList_module_default["horizontal"], EventList_module_default[variant]),
3001
+ className: clsx15__default.default(EventList_module_default["event-list-wrapper"], EventList_module_default["horizontal"], EventList_module_default[variant]),
2751
3002
  children: items == null ? void 0 : items.map((item, index) => {
2752
3003
  var _a2, _b, _c;
2753
3004
  return /* @__PURE__ */ jsxRuntime.jsx(
2754
3005
  "li",
2755
3006
  {
2756
- className: clsx25__default.default(EventList_module_default["card-list-item"]),
3007
+ className: clsx15__default.default(EventList_module_default["card-list-item"]),
2757
3008
  children: /* @__PURE__ */ jsxRuntime.jsx(
2758
3009
  UpcomingEventCard,
2759
3010
  __spreadProps(__spreadValues({}, item), {
2760
- className: clsx25__default.default(EventList_module_default["card-item"]),
3011
+ className: clsx15__default.default(EventList_module_default["card-item"]),
2761
3012
  showImage: false,
2762
3013
  direction: "vertical"
2763
3014
  })
@@ -2772,7 +3023,7 @@ var EventList = ({
2772
3023
  "ul",
2773
3024
  {
2774
3025
  "aria-label": "Upcoming events",
2775
- className: clsx25__default.default(EventList_module_default["event-list-wrapper"], EventList_module_default[listDirection]),
3026
+ className: clsx15__default.default(EventList_module_default["event-list-wrapper"], EventList_module_default[listDirection]),
2776
3027
  children: items == null ? void 0 : items.map((item, index) => {
2777
3028
  var _a2, _b, _c;
2778
3029
  return /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(UpcomingEventCard, __spreadProps(__spreadValues({}, item), { direction: cardDirection })) }, (_c = (_b = (_a2 = item.title) != null ? _a2 : item.date) != null ? _b : item.location) != null ? _c : index);
@@ -2797,6 +3048,7 @@ var TextEvent_module_default = {
2797
3048
  textEvent: "TextEvent_module_textEvent",
2798
3049
  richText: "TextEvent_module_richText",
2799
3050
  h4: "TextEvent_module_h4",
3051
+ h5: "TextEvent_module_h5",
2800
3052
  subheading: "TextEvent_module_subheading",
2801
3053
  body: "TextEvent_module_body",
2802
3054
  small: "TextEvent_module_small",
@@ -2819,9 +3071,9 @@ var TextEvent = (props) => {
2819
3071
  });
2820
3072
  const titleNode = (_a = slots.title) != null ? _a : title;
2821
3073
  const richTextNode = (_b = slots.richText) != null ? _b : richText;
2822
- return /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx25__default.default(TextEvent_module_default.textEvent, className), children: [
3074
+ return /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default(TextEvent_module_default.textEvent, className), children: [
2823
3075
  /* @__PURE__ */ jsxRuntime.jsx(Text, { tag: "h2", className: TextEvent_module_default.title, children: titleNode }),
2824
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(TextEvent_module_default.richText, TextEvent_module_default[variant != null ? variant : ""]), children: richTextNode })
3076
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(TextEvent_module_default.richText, TextEvent_module_default[variant != null ? variant : ""]), children: richTextNode })
2825
3077
  ] });
2826
3078
  };
2827
3079
 
@@ -2852,7 +3104,7 @@ var TextBody = (props) => {
2852
3104
  });
2853
3105
  const titleNode = (_a = slots.title) != null ? _a : title;
2854
3106
  const bodyNode = (_b = slots.body) != null ? _b : body;
2855
- return /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx25__default.default(TextBody_module_default.textBody, className), children: [
3107
+ return /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default(TextBody_module_default.textBody, className), children: [
2856
3108
  titleNode && /* @__PURE__ */ jsxRuntime.jsx(Text, { tag: "h2", className: TextBody_module_default.title, children: titleNode }),
2857
3109
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: TextBody_module_default.body, children: bodyNode })
2858
3110
  ] });
@@ -2895,7 +3147,7 @@ var TextCenterCtaInBottom = ({
2895
3147
  });
2896
3148
  const titleNode = (_a = slots.title) != null ? _a : title;
2897
3149
  const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
2898
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(TextCenterCtaInBottom_module_default.textCenterCta, className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: TextCenterCtaInBottom_module_default.container, children: [
3150
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(TextCenterCtaInBottom_module_default.textCenterCta, className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: TextCenterCtaInBottom_module_default.container, children: [
2899
3151
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: TextCenterCtaInBottom_module_default.content, children: [
2900
3152
  titleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: TextCenterCtaInBottom_module_default.title, children: titleNode }),
2901
3153
  subtitleNode && /* @__PURE__ */ jsxRuntime.jsx("div", { className: TextCenterCtaInBottom_module_default.subtitle, children: subtitleNode })
@@ -2903,7 +3155,7 @@ var TextCenterCtaInBottom = ({
2903
3155
  !!(ctas == null ? void 0 : ctas.length) && /* @__PURE__ */ jsxRuntime.jsx(
2904
3156
  "div",
2905
3157
  {
2906
- className: clsx25__default.default(
3158
+ className: clsx15__default.default(
2907
3159
  TextCenterCtaInBottom_module_default.ctaWrapper,
2908
3160
  ctas.every((cta) => !cta.label && cta.logo) && TextCenterCtaInBottom_module_default.iconOnly
2909
3161
  ),
@@ -3001,7 +3253,7 @@ var ResourcesGridList = ({
3001
3253
  const safeCurrentPage = Math.min(currentPage, totalPages);
3002
3254
  const pageStart = (safeCurrentPage - 1) * ITEMS_PER_PAGE;
3003
3255
  const paginatedItems = displayedItems.slice(pageStart, pageStart + ITEMS_PER_PAGE);
3004
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx25__default.default(ResourcesGridList_module_default.widget, className), children: [
3256
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(ResourcesGridList_module_default.widget, className), children: [
3005
3257
  /* @__PURE__ */ jsxRuntime.jsx(
3006
3258
  FilterBar,
3007
3259
  {
@@ -3020,7 +3272,7 @@ var ResourcesGridList = ({
3020
3272
  isMobile && /* @__PURE__ */ jsxRuntime.jsxs(
3021
3273
  "div",
3022
3274
  {
3023
- className: clsx25__default.default(
3275
+ className: clsx15__default.default(
3024
3276
  ResourcesGridList_module_default.mobileSidebarOverlay,
3025
3277
  isSidebarOpen && ResourcesGridList_module_default.mobileSidebarOverlayOpen
3026
3278
  ),
@@ -3031,7 +3283,7 @@ var ResourcesGridList = ({
3031
3283
  return /* @__PURE__ */ jsxRuntime.jsxs(
3032
3284
  "li",
3033
3285
  {
3034
- className: clsx25__default.default(
3286
+ className: clsx15__default.default(
3035
3287
  ResourcesGridList_module_default.mobileSidebarItem,
3036
3288
  i === selectedCategory && ResourcesGridList_module_default.active
3037
3289
  ),
@@ -3076,7 +3328,7 @@ var ResourcesGridList = ({
3076
3328
  onSelect: handleSelectCategory
3077
3329
  }
3078
3330
  ),
3079
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx25__default.default(ResourcesGridList_module_default.cardsArea, ResourcesGridList_module_default[view]), children: paginatedItems.map((item, i) => {
3331
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(ResourcesGridList_module_default.cardsArea, ResourcesGridList_module_default[view]), children: paginatedItems.map((item, i) => {
3080
3332
  var _a2;
3081
3333
  return /* @__PURE__ */ jsxRuntime.jsx(ResourceCardItem, { item, view }, (_a2 = item.title) != null ? _a2 : i);
3082
3334
  }) })
@@ -3093,6 +3345,466 @@ var ResourcesGridList = ({
3093
3345
  )
3094
3346
  ] });
3095
3347
  };
3348
+
3349
+ // src/components/Grid/Grid.module.scss
3350
+ var Grid_module_default = {
3351
+ grid: "Grid_module_grid",
3352
+ "grid-item": "Grid_module_grid-item"
3353
+ };
3354
+ var Grid = ({
3355
+ children,
3356
+ columns,
3357
+ gap,
3358
+ className,
3359
+ as: Component = "div",
3360
+ role,
3361
+ ariaLabel,
3362
+ ariaLabelledBy
3363
+ }) => {
3364
+ return /* @__PURE__ */ jsxRuntime.jsx(
3365
+ Component,
3366
+ {
3367
+ className: clsx15__default.default("grid", Grid_module_default.grid, className),
3368
+ role,
3369
+ "aria-label": ariaLabel,
3370
+ "aria-labelledby": ariaLabelledBy,
3371
+ style: {
3372
+ "--grid-columns": columns,
3373
+ "--grid-gap": typeof gap === "number" ? `${gap}px` : gap
3374
+ },
3375
+ children
3376
+ }
3377
+ );
3378
+ };
3379
+ var GridItem = ({
3380
+ children,
3381
+ colSpan,
3382
+ rowSpan,
3383
+ className,
3384
+ as: Component = "div",
3385
+ role,
3386
+ ariaLabel,
3387
+ ariaLabelledBy
3388
+ }) => {
3389
+ return /* @__PURE__ */ jsxRuntime.jsx(
3390
+ Component,
3391
+ {
3392
+ className: clsx15__default.default("grid-item", Grid_module_default["grid-item"], className),
3393
+ role,
3394
+ "aria-label": ariaLabel,
3395
+ "aria-labelledby": ariaLabelledBy,
3396
+ style: {
3397
+ "--col-xl": colSpan == null ? void 0 : colSpan.xl,
3398
+ "--col-lg": colSpan == null ? void 0 : colSpan.lg,
3399
+ "--col-md": colSpan == null ? void 0 : colSpan.md,
3400
+ "--col-ml": colSpan == null ? void 0 : colSpan.ml,
3401
+ "--col-mm": colSpan == null ? void 0 : colSpan.mm,
3402
+ "--col-xs": colSpan == null ? void 0 : colSpan.xs,
3403
+ "--row-xl": rowSpan == null ? void 0 : rowSpan.xl,
3404
+ "--row-lg": rowSpan == null ? void 0 : rowSpan.lg,
3405
+ "--row-md": rowSpan == null ? void 0 : rowSpan.md,
3406
+ "--row-ml": rowSpan == null ? void 0 : rowSpan.ml,
3407
+ "--row-mm": rowSpan == null ? void 0 : rowSpan.mm,
3408
+ "--row-xs": rowSpan == null ? void 0 : rowSpan.xs
3409
+ },
3410
+ children
3411
+ }
3412
+ );
3413
+ };
3414
+
3415
+ // src/widgets/BlogCardGrid/BlogCardGrid.module.scss
3416
+ var BlogCardGrid_module_default = {
3417
+ "blog-card-grid": "BlogCardGrid_module_blog-card-grid",
3418
+ wrapper: "BlogCardGrid_module_wrapper"
3419
+ };
3420
+ var BlogCardGridTitle = ({ children }) => {
3421
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
3422
+ };
3423
+ var BlogCardGrid = ({
3424
+ title,
3425
+ items,
3426
+ backgroundColor,
3427
+ cta,
3428
+ className,
3429
+ hasContainer = true,
3430
+ gridProps,
3431
+ gridItemProps,
3432
+ renderLink,
3433
+ children
3434
+ }) => {
3435
+ var _a;
3436
+ const slots = resolveCompoundSlots(children, {
3437
+ title: BlogCardGridTitle
3438
+ });
3439
+ const titleNode = (_a = slots.title) != null ? _a : title;
3440
+ const content = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("wrapper", BlogCardGrid_module_default["wrapper"]), children: [
3441
+ title && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("header-container", BlogCardGrid_module_default["header-container"]), children: [
3442
+ titleNode && typeof titleNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Text, { tag: "h4", className: clsx15__default.default("title", BlogCardGrid_module_default["title"]), children: titleNode }) : titleNode,
3443
+ cta && (cta == null ? void 0 : cta.url) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("cta-wrapper", BlogCardGrid_module_default["cta-wrapper"]), children: /* @__PURE__ */ jsxRuntime.jsx(
3444
+ Button,
3445
+ {
3446
+ className: clsx15__default.default("cta", BlogCardGrid_module_default["cta"]),
3447
+ variant: "nofillblack",
3448
+ href: cta.url,
3449
+ isExternal: cta == null ? void 0 : cta.isExternal,
3450
+ icon: cta == null ? void 0 : cta.icon,
3451
+ children: cta == null ? void 0 : cta.label
3452
+ }
3453
+ ) })
3454
+ ] }),
3455
+ /* @__PURE__ */ jsxRuntime.jsx(Grid, __spreadProps(__spreadValues({ role: "list", columns: 3 }, gridProps), { children: items.map((item, index) => {
3456
+ var _a2;
3457
+ return /* @__PURE__ */ jsxRuntime.jsx(
3458
+ GridItem,
3459
+ __spreadProps(__spreadValues({
3460
+ colSpan: { md: 3 },
3461
+ role: "listitem"
3462
+ }, gridItemProps), {
3463
+ children: /* @__PURE__ */ jsxRuntime.jsx(NewsCard, __spreadProps(__spreadValues({}, item), { renderLink }))
3464
+ }),
3465
+ (_a2 = item.title) != null ? _a2 : index
3466
+ );
3467
+ }) }))
3468
+ ] });
3469
+ return /* @__PURE__ */ jsxRuntime.jsx(
3470
+ "div",
3471
+ {
3472
+ className: clsx15__default.default("blog-card-grid", BlogCardGrid_module_default["blog-card-grid"], className),
3473
+ style: {
3474
+ backgroundColor
3475
+ },
3476
+ children: hasContainer ? /* @__PURE__ */ jsxRuntime.jsx(Container, { className: clsx15__default.default("container", BlogCardGrid_module_default["container"]), children: content }) : content
3477
+ }
3478
+ );
3479
+ };
3480
+
3481
+ // src/widgets/BlogCardGrid/index.ts
3482
+ var BlogCardGrid2 = Object.assign(BlogCardGrid, {
3483
+ Title: BlogCardGridTitle
3484
+ });
3485
+
3486
+ // src/widgets/FeaturedNewsHighlights/FeaturedNewsHighlights.module.scss
3487
+ var FeaturedNewsHighlights_module_default = {
3488
+ "featured-news-higlights": "FeaturedNewsHighlights_module_featured-news-higlights",
3489
+ wrapper: "FeaturedNewsHighlights_module_wrapper",
3490
+ "header-container": "FeaturedNewsHighlights_module_header-container",
3491
+ "content-wrapper": "FeaturedNewsHighlights_module_content-wrapper",
3492
+ "featured-card": "FeaturedNewsHighlights_module_featured-card",
3493
+ "side-content": "FeaturedNewsHighlights_module_side-content",
3494
+ carousel: "FeaturedNewsHighlights_module_carousel",
3495
+ "carousel-wrapper": "FeaturedNewsHighlights_module_carousel-wrapper",
3496
+ "carousel-list-item": "FeaturedNewsHighlights_module_carousel-list-item",
3497
+ "carousel-news-card": "FeaturedNewsHighlights_module_carousel-news-card"
3498
+ };
3499
+ var FeaturedNewsHighlightsTitle = ({ children }) => {
3500
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
3501
+ };
3502
+ var FeaturedNewsHighlights = ({
3503
+ variant,
3504
+ title,
3505
+ items,
3506
+ backgroundColor,
3507
+ cta,
3508
+ className,
3509
+ hasContainer = true,
3510
+ renderLink,
3511
+ children
3512
+ }) => {
3513
+ var _a;
3514
+ const { is } = useViewPort_default();
3515
+ const slots = resolveCompoundSlots(children, {
3516
+ title: FeaturedNewsHighlightsTitle
3517
+ });
3518
+ const titleNode = (_a = slots.title) != null ? _a : title;
3519
+ const featuredCard = items.at(0);
3520
+ const sideCards = items.slice(1);
3521
+ const isVariantHome = variant === "home";
3522
+ const isBelowTablet = is("tablet", "below");
3523
+ const content = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("wrapper", FeaturedNewsHighlights_module_default["wrapper"]), children: [
3524
+ title && cta && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("header-container", FeaturedNewsHighlights_module_default["header-container"]), children: [
3525
+ titleNode && typeof titleNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Text, { tag: "h2", children: titleNode }) : titleNode,
3526
+ cta && (cta == null ? void 0 : cta.url) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("cta-wrapper", FeaturedNewsHighlights_module_default["cta-wrapper"]), children: /* @__PURE__ */ jsxRuntime.jsx(
3527
+ Button,
3528
+ {
3529
+ className: clsx15__default.default("cta", FeaturedNewsHighlights_module_default["cta"]),
3530
+ variant: "nofillblack",
3531
+ href: cta.url,
3532
+ isExternal: cta == null ? void 0 : cta.isExternal,
3533
+ icon: cta == null ? void 0 : cta.icon,
3534
+ children: cta == null ? void 0 : cta.label
3535
+ }
3536
+ ) })
3537
+ ] }),
3538
+ isVariantHome && isBelowTablet && /* @__PURE__ */ jsxRuntime.jsx(
3539
+ Carousel,
3540
+ {
3541
+ className: clsx15__default.default("carousel", FeaturedNewsHighlights_module_default["carousel"]),
3542
+ "aria-label": "featured news",
3543
+ wrapperClass: clsx15__default.default(FeaturedNewsHighlights_module_default["carousel-wrapper"]),
3544
+ slideClass: FeaturedNewsHighlights_module_default["carousel-list-item"],
3545
+ spaceBetween: 16,
3546
+ slides: items.map((item, index) => {
3547
+ var _a2;
3548
+ return /* @__PURE__ */ jsxRuntime.jsx(
3549
+ NewsCard,
3550
+ __spreadProps(__spreadValues({}, item), {
3551
+ direction: "vertical",
3552
+ className: clsx15__default.default("carousel-news-card", FeaturedNewsHighlights_module_default["carousel-news-card"])
3553
+ }),
3554
+ (_a2 = item == null ? void 0 : item.title) != null ? _a2 : index
3555
+ );
3556
+ })
3557
+ }
3558
+ ),
3559
+ (!isVariantHome || isVariantHome && !isBelowTablet) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("content-wrapper", FeaturedNewsHighlights_module_default["content-wrapper"]), children: [
3560
+ featuredCard && /* @__PURE__ */ jsxRuntime.jsx(
3561
+ NewsCard,
3562
+ __spreadProps(__spreadValues({}, featuredCard), {
3563
+ className: clsx15__default.default("featured-card", FeaturedNewsHighlights_module_default["featured-card"]),
3564
+ renderLink
3565
+ })
3566
+ ),
3567
+ sideCards && sideCards.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("side-content", FeaturedNewsHighlights_module_default["side-content"]), children: sideCards.map((card, index) => {
3568
+ var _a2;
3569
+ return /* @__PURE__ */ jsxRuntime.jsx(
3570
+ NewsCard,
3571
+ __spreadProps(__spreadValues({}, card), {
3572
+ direction: "horizontal",
3573
+ renderLink
3574
+ }),
3575
+ (_a2 = card == null ? void 0 : card.title) != null ? _a2 : index
3576
+ );
3577
+ }) })
3578
+ ] })
3579
+ ] });
3580
+ return /* @__PURE__ */ jsxRuntime.jsx(
3581
+ "div",
3582
+ {
3583
+ className: clsx15__default.default("featured-news-higlights", FeaturedNewsHighlights_module_default["featured-news-higlights"], className),
3584
+ style: {
3585
+ backgroundColor
3586
+ },
3587
+ children: hasContainer ? /* @__PURE__ */ jsxRuntime.jsx(Container, { className: clsx15__default.default("container", FeaturedNewsHighlights_module_default["container"]), children: content }) : content
3588
+ }
3589
+ );
3590
+ };
3591
+
3592
+ // src/widgets/FeaturedNewsHighlights/index.ts
3593
+ var FeaturedNewsHighlights2 = Object.assign(FeaturedNewsHighlights, {
3594
+ Title: FeaturedNewsHighlightsTitle
3595
+ });
3596
+
3597
+ // src/widgets/NewsCardList/NewsCardList.module.scss
3598
+ var NewsCardList_module_default = {
3599
+ "news-card-list": "NewsCardList_module_news-card-list",
3600
+ container: "NewsCardList_module_container",
3601
+ wrapper: "NewsCardList_module_wrapper",
3602
+ "search-input": "NewsCardList_module_search-input",
3603
+ "end-action-button": "NewsCardList_module_end-action-button",
3604
+ pagination: "NewsCardList_module_pagination"
3605
+ };
3606
+ var NewsCardList = ({
3607
+ items,
3608
+ backgroundColor,
3609
+ className,
3610
+ currentPage,
3611
+ totalPages = 0,
3612
+ searchValue,
3613
+ onPageChange,
3614
+ onSearchChange,
3615
+ onSearchSubmit,
3616
+ searchInputProps,
3617
+ renderLink
3618
+ }) => {
3619
+ const featuredCards = items.slice(0, 4);
3620
+ const cards = currentPage !== 1 ? items : items.slice(4);
3621
+ return /* @__PURE__ */ jsxRuntime.jsx(
3622
+ "div",
3623
+ {
3624
+ className: clsx15__default.default("news-card-list", NewsCardList_module_default["news-card-list"], className),
3625
+ style: {
3626
+ backgroundColor
3627
+ },
3628
+ children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default("container", NewsCardList_module_default["container"]), children: [
3629
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("wrapper", NewsCardList_module_default["wrapper"]), children: [
3630
+ /* @__PURE__ */ jsxRuntime.jsx(
3631
+ Input,
3632
+ __spreadValues({
3633
+ className: clsx15__default.default("search-input", NewsCardList_module_default["search-input"]),
3634
+ startAdornment: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "search" }),
3635
+ placeholder: "Search News",
3636
+ endAction: /* @__PURE__ */ jsxRuntime.jsx(
3637
+ Button,
3638
+ {
3639
+ variant: "nofillblack",
3640
+ className: clsx15__default.default(NewsCardList_module_default["end-action-button"]),
3641
+ "aria-label": "Search",
3642
+ onClick: onSearchSubmit ? () => onSearchSubmit(searchValue || "") : void 0,
3643
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "rightBlack" })
3644
+ }
3645
+ ),
3646
+ value: searchValue,
3647
+ onChange: onSearchChange ? (e) => {
3648
+ onSearchChange(e.target.value);
3649
+ } : void 0
3650
+ }, searchInputProps)
3651
+ ),
3652
+ currentPage === 1 && /* @__PURE__ */ jsxRuntime.jsx(
3653
+ FeaturedNewsHighlights2,
3654
+ {
3655
+ items: featuredCards,
3656
+ backgroundColor: "#fff",
3657
+ hasContainer: false,
3658
+ renderLink
3659
+ }
3660
+ ),
3661
+ /* @__PURE__ */ jsxRuntime.jsx(BlogCardGrid2, { items: cards, hasContainer: false, renderLink })
3662
+ ] }),
3663
+ totalPages ? /* @__PURE__ */ jsxRuntime.jsx(
3664
+ Pagination,
3665
+ {
3666
+ currentPage: currentPage || 1,
3667
+ totalPages: totalPages || 0,
3668
+ onPageChange,
3669
+ className: clsx15__default.default("pagination", NewsCardList_module_default["pagination"]),
3670
+ hasNumber: true
3671
+ }
3672
+ ) : null
3673
+ ] })
3674
+ }
3675
+ );
3676
+ };
3677
+
3678
+ // src/widgets/BlogPost/BlogPost.module.scss
3679
+ var BlogPost_module_default = {
3680
+ "blog-post": "BlogPost_module_blog-post",
3681
+ container: "BlogPost_module_container",
3682
+ header: "BlogPost_module_header",
3683
+ image: "BlogPost_module_image",
3684
+ content: "BlogPost_module_content",
3685
+ "content-top": "BlogPost_module_content-top",
3686
+ "related-articles": "BlogPost_module_related-articles"
3687
+ };
3688
+ var BlogPostTitle = ({ children }) => {
3689
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
3690
+ };
3691
+ var BlogPostBody = ({ children }) => {
3692
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
3693
+ };
3694
+ var BlogPost = ({
3695
+ title,
3696
+ description: body,
3697
+ image,
3698
+ date,
3699
+ tag,
3700
+ relatedArticles,
3701
+ className,
3702
+ children
3703
+ }) => {
3704
+ var _a, _b;
3705
+ const slots = resolveCompoundSlots(children, {
3706
+ title: BlogPostTitle,
3707
+ body: BlogPostBody
3708
+ });
3709
+ const titleNode = (_a = slots.title) != null ? _a : title;
3710
+ const bodyNode = (_b = slots.body) != null ? _b : body;
3711
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("blog-post", BlogPost_module_default["blog-post"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default("container", BlogPost_module_default["container"]), children: [
3712
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("header", BlogPost_module_default["header"]), children: [
3713
+ titleNode && typeof titleNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Text, { tag: "h1", children: titleNode }) : titleNode,
3714
+ image && /* @__PURE__ */ jsxRuntime.jsx(Picture, __spreadProps(__spreadValues({}, image), { className: clsx15__default.default("image", BlogPost_module_default["image"]) }))
3715
+ ] }),
3716
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("content", BlogPost_module_default["content"]), children: [
3717
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("content-top", BlogPost_module_default["content-top"]), children: [
3718
+ /* @__PURE__ */ jsxRuntime.jsx(Badge, { size: "sm", children: tag }),
3719
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: clsx15__default.default("content-date", BlogPost_module_default["content-date"]), children: [
3720
+ "Published ",
3721
+ /* @__PURE__ */ jsxRuntime.jsx("time", { dateTime: date.value, children: date.label })
3722
+ ] })
3723
+ ] }),
3724
+ bodyNode
3725
+ ] }),
3726
+ relatedArticles && relatedArticles.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
3727
+ BlogCardGrid2,
3728
+ {
3729
+ title: "More News",
3730
+ items: relatedArticles,
3731
+ hasContainer: false,
3732
+ className: clsx15__default.default("related-articles", BlogPost_module_default["related-articles"])
3733
+ }
3734
+ )
3735
+ ] }) });
3736
+ };
3737
+
3738
+ // src/widgets/BlogPost/index.ts
3739
+ var BlogPost2 = Object.assign(BlogPost, {
3740
+ Title: BlogPostTitle,
3741
+ Body: BlogPostBody
3742
+ });
3743
+ var BlogSearchResultsListSearch = ({ children }) => {
3744
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
3745
+ };
3746
+
3747
+ // src/widgets/BlogSearchResultsList/BlogSearchResultsList.module.scss
3748
+ var BlogSearchResultsList_module_default = {
3749
+ "search-results-list": "BlogSearchResultsList_module_search-results-list",
3750
+ container: "BlogSearchResultsList_module_container",
3751
+ "search-result": "BlogSearchResultsList_module_search-result",
3752
+ wrapper: "BlogSearchResultsList_module_wrapper",
3753
+ "search-input": "BlogSearchResultsList_module_search-input",
3754
+ "end-action-button": "BlogSearchResultsList_module_end-action-button"
3755
+ };
3756
+ var BlogSearchResultsList = ({
3757
+ items,
3758
+ searchResult,
3759
+ onSearchChange,
3760
+ onSearchSubmit,
3761
+ searchValue,
3762
+ className,
3763
+ children
3764
+ }) => {
3765
+ var _a;
3766
+ const slots = resolveCompoundSlots(children, {
3767
+ search: BlogSearchResultsListSearch
3768
+ });
3769
+ const searchNode = (_a = slots.search) != null ? _a : searchResult;
3770
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("search-results-list", BlogSearchResultsList_module_default["search-results-list"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default("container", BlogSearchResultsList_module_default["container"]), children: [
3771
+ searchNode && typeof searchNode === "string" ? /* @__PURE__ */ jsxRuntime.jsxs("span", { className: clsx15__default.default("search-result", BlogSearchResultsList_module_default["search-result"]), children: [
3772
+ 'Search results for "',
3773
+ searchNode,
3774
+ '":'
3775
+ ] }) : searchNode,
3776
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("wrapper", BlogSearchResultsList_module_default["wrapper"]), children: [
3777
+ /* @__PURE__ */ jsxRuntime.jsx(
3778
+ Input,
3779
+ {
3780
+ className: clsx15__default.default("search-input", BlogSearchResultsList_module_default["search-input"]),
3781
+ startAdornment: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "search" }),
3782
+ placeholder: "Search News",
3783
+ endAction: /* @__PURE__ */ jsxRuntime.jsx(
3784
+ Button,
3785
+ {
3786
+ variant: "nofillblack",
3787
+ className: clsx15__default.default(BlogSearchResultsList_module_default["end-action-button"]),
3788
+ "aria-label": "Search",
3789
+ onClick: () => onSearchSubmit(searchValue),
3790
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "rightBlack" })
3791
+ }
3792
+ ),
3793
+ value: searchValue,
3794
+ onChange: (e) => {
3795
+ onSearchChange(e.target.value);
3796
+ }
3797
+ }
3798
+ ),
3799
+ /* @__PURE__ */ jsxRuntime.jsx(BlogCardGrid2, { items, hasContainer: false })
3800
+ ] })
3801
+ ] }) });
3802
+ };
3803
+
3804
+ // src/widgets/BlogSearchResultsList/index.ts
3805
+ var BlogSearchResultsList2 = Object.assign(BlogSearchResultsList, {
3806
+ Search: BlogSearchResultsListSearch
3807
+ });
3096
3808
  function useIntersectionObserver({
3097
3809
  animateOnce = false,
3098
3810
  options = {}
@@ -3123,6 +3835,10 @@ function useIntersectionObserver({
3123
3835
  }
3124
3836
 
3125
3837
  exports.Anchor = Anchor;
3838
+ exports.Badge = Badge;
3839
+ exports.BlogCardGrid = BlogCardGrid2;
3840
+ exports.BlogPost = BlogPost2;
3841
+ exports.BlogSearchResultsList = BlogSearchResultsList2;
3126
3842
  exports.BrandsStrip = BrandsStrip;
3127
3843
  exports.Button = Button;
3128
3844
  exports.Card = Card2;
@@ -3132,16 +3848,19 @@ exports.ContactModule = ContactModule2;
3132
3848
  exports.Container = Container;
3133
3849
  exports.CountingCard = CountingCard2;
3134
3850
  exports.EventList = EventList2;
3851
+ exports.FeaturedNewsHighlights = FeaturedNewsHighlights2;
3135
3852
  exports.FilterBar = FilterBar;
3136
3853
  exports.Footer = Footer;
3137
3854
  exports.HeroBanner = HeroBanner2;
3138
3855
  exports.HeroBannerCarousel = HeroBannerCarousel;
3139
3856
  exports.Icon = Icon;
3140
3857
  exports.InfoCard = InfoCard2;
3858
+ exports.Input = Input;
3141
3859
  exports.InternalBrandsTab = InternalBrandsTab2;
3142
- exports.LogoBar = LogoBar;
3143
3860
  exports.MiniBanner = MiniBanner2;
3144
3861
  exports.MiniSectionCta = MiniSectionCta2;
3862
+ exports.NewsCard = NewsCard;
3863
+ exports.NewsCardList = NewsCardList;
3145
3864
  exports.Pagination = Pagination;
3146
3865
  exports.Picture = Picture;
3147
3866
  exports.PracticeCard = PracticeCard;
@@ -3154,6 +3873,7 @@ exports.Teaser5050WithCta = Teaser5050WithCta2;
3154
3873
  exports.TextBody = TextBody2;
3155
3874
  exports.TextCenterCtaInBottom = TextCenterCtaInBottom2;
3156
3875
  exports.TextEvent = TextEvent2;
3876
+ exports.UpcomingEventCard = UpcomingEventCard;
3157
3877
  exports.resolveCompoundSlots = resolveCompoundSlots;
3158
3878
  exports.svgs = svgs;
3159
3879
  exports.useIntersectionObserver = useIntersectionObserver;