@manamerge/mana-atomic-ui 1.0.164 → 1.0.165

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/index.d.ts +4 -2
  2. package/dist/index.js +76 -45
  3. package/dist/index.js.map +1 -1
  4. package/dist/themes/themes/ManamergeTheme.ts +5 -0
  5. package/dist/themes/themes/davidWeb/miscellaneous/colorpalette.ts +7 -6
  6. package/dist/themes/themes/manamerge/atoms/gradient.ts +2 -2
  7. package/dist/themes/themes/manamerge/atoms/icon.ts +47 -17
  8. package/dist/themes/themes/manamerge/atoms/link.ts +19 -47
  9. package/dist/themes/themes/manamerge/fonts/Gilmer-Bold.woff2 +0 -0
  10. package/dist/themes/themes/manamerge/fonts/Gilmer-Heavy.woff2 +0 -0
  11. package/dist/themes/themes/manamerge/fonts/Gilmer-Light.woff2 +0 -0
  12. package/dist/themes/themes/manamerge/fonts/Gilmer-Medium.woff2 +0 -0
  13. package/dist/themes/themes/manamerge/fonts/Gilmer-Regular.woff2 +0 -0
  14. package/dist/themes/themes/manamerge/miscellaneous/colorpalette.ts +7 -6
  15. package/dist/themes/themes/manamerge/molecules/accordion.ts +1 -1
  16. package/dist/themes/themes/manamerge/molecules/breakerTape.ts +1 -1
  17. package/dist/themes/themes/manamerge/molecules/cardBanner.ts +1 -1
  18. package/dist/themes/themes/manamerge/molecules/cardSimpleRender.ts +1 -1
  19. package/dist/themes/themes/manamerge/molecules/cardTeaser.ts +1 -1
  20. package/dist/themes/themes/manamerge/molecules/footer.ts +6 -7
  21. package/dist/themes/themes/manamerge/molecules/header.ts +19 -9
  22. package/dist/themes/themes/manamerge/molecules/navigation.ts +18 -9
  23. package/dist/types/components/Atoms/Icon/Icon.css.d.ts +3 -0
  24. package/dist/types/components/Atoms/Icon/Icon.d.ts +4 -1
  25. package/dist/types/components/Atoms/Icon/Icon.stories.d.ts +6 -0
  26. package/dist/types/components/Molecules/CardSimpleRender/CardSimpleRender.stories copy.d.ts +11 -0
  27. package/dist/types/components/Molecules/Footer/Footer.css.d.ts +3 -0
  28. package/dist/types/components/Molecules/Header/Header.css.d.ts +3 -0
  29. package/dist/types/components/Molecules/Navigation/Navigation.d.ts +0 -1
  30. package/dist/types/themes/ManamergeTheme.d.ts +95 -50
  31. package/dist/types/themes/davidWeb/miscellaneous/colorpalette.d.ts +1 -0
  32. package/dist/types/themes/manamerge/atoms/icon.d.ts +36 -8
  33. package/dist/types/themes/manamerge/atoms/link.d.ts +9 -37
  34. package/dist/types/themes/manamerge/miscellaneous/colorpalette.d.ts +1 -0
  35. package/dist/types/themes/manamerge/molecules/footer.d.ts +2 -3
  36. package/dist/types/themes/manamerge/molecules/header.d.ts +9 -1
  37. package/dist/types/themes/manamerge/molecules/navigation.d.ts +8 -1
  38. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -37,11 +37,14 @@ declare const Heading: React.FC<HeadingTypes>;
37
37
  interface IconTypes {
38
38
  variant?: string;
39
39
  svg: FunctionComponent<SVGProps<SVGSVGElement>>;
40
- color?: string;
41
40
  size?: string;
41
+ color?: string;
42
+ fill?: string;
42
43
  stroke?: string;
43
44
  hoverColor?: string;
45
+ hoverFill?: string;
44
46
  hoverStroke?: string;
47
+ hoverOpacity?: string;
45
48
  onClick?: () => void;
46
49
  onKeyDown?: (event: React.KeyboardEvent<SVGSVGElement>) => void;
47
50
  tabIndex?: number;
@@ -129,7 +132,6 @@ interface NavigationTypes {
129
132
  to: string;
130
133
  }[];
131
134
  onLogoClick?: () => void;
132
- onTabClick: (label: string) => void;
133
135
  }
134
136
  declare const Navigation: React.FC<NavigationTypes>;
135
137
 
package/dist/index.js CHANGED
@@ -231,41 +231,44 @@ const Heading = (_a) => {
231
231
 
232
232
  const StyledSvg = styled.svg `
233
233
  ${(_a) => {
234
- var _b, _c;
234
+ var _b, _c, _d, _e;
235
235
  var { variant, theme } = _a, props = __rest(_a, ["variant", "theme"]);
236
236
  const iconStyles = (theme === null || theme === void 0 ? void 0 : theme.icon[variant]) || {};
237
237
  return css `
238
- width: ${props.size || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.size) || "auto"};
239
- height: ${props.size || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.size) || "auto"};
240
- fill: ${props.color || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.color)};
241
- color: ${props.color || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.color)};
242
- stroke: ${props.stroke || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.stroke)};
238
+ width: ${(props === null || props === void 0 ? void 0 : props.size) || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.size) || "auto"};
239
+ height: ${(props === null || props === void 0 ? void 0 : props.size) || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.size) || "auto"};
240
+ color: ${(props === null || props === void 0 ? void 0 : props.color) || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.color)};
241
+ fill: ${(props === null || props === void 0 ? void 0 : props.fill) || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.fill)};
242
+ stroke: ${(props === null || props === void 0 ? void 0 : props.stroke) || (iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.stroke)};
243
243
  &:hover {
244
- /* opacity: 0.8; */
245
- stroke: ${props.hoverStroke || ((_b = iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.hover) === null || _b === void 0 ? void 0 : _b.stroke)};
246
- fill: ${props.hoverColor || ((_c = iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.hover) === null || _c === void 0 ? void 0 : _c.color)};
244
+ color: ${(props === null || props === void 0 ? void 0 : props.hoverColor) || ((_b = iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.hover) === null || _b === void 0 ? void 0 : _b.color)};
245
+ fill: ${(props === null || props === void 0 ? void 0 : props.hoverFill) || ((_c = iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.hover) === null || _c === void 0 ? void 0 : _c.fill)};
246
+ stroke: ${(props === null || props === void 0 ? void 0 : props.hoverStroke) || ((_d = iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.hover) === null || _d === void 0 ? void 0 : _d.stroke)};
247
+ opacity: ${(props === null || props === void 0 ? void 0 : props.hoverOpacity) || ((_e = iconStyles === null || iconStyles === void 0 ? void 0 : iconStyles.hover) === null || _e === void 0 ? void 0 : _e.opacity)};
247
248
  }
248
249
  `;
249
250
  }}
250
251
  `;
251
252
 
252
253
  const Icon = (_a) => {
253
- var { variant = "medium", svg: SvgIcon, color, size, stroke, hoverColor, hoverStroke, onClick, onKeyDown, tabIndex, role } = _a, props = __rest(_a, ["variant", "svg", "color", "size", "stroke", "hoverColor", "hoverStroke", "onClick", "onKeyDown", "tabIndex", "role"]);
254
+ var { variant = "md", svg: SvgIcon, size, color, fill, stroke, hoverColor, hoverFill, hoverStroke, hoverOpacity, onClick, onKeyDown, tabIndex, role } = _a, props = __rest(_a, ["variant", "svg", "size", "color", "fill", "stroke", "hoverColor", "hoverFill", "hoverStroke", "hoverOpacity", "onClick", "onKeyDown", "tabIndex", "role"]);
254
255
  if (!SvgIcon) {
255
256
  console.error("No SVG provided to the Icon component.");
256
257
  return null;
257
258
  }
258
- return (jsx(StyledSvg, Object.assign({ className: classNames("Icon-" + variant), variant: "Icon-" + variant, as: SvgIcon, size: size, color: color, stroke: stroke, hoverColor: hoverColor, hoverStroke: hoverStroke, onClick: onClick, onKeyDown: onKeyDown, tabIndex: tabIndex, role: role }, props)));
259
+ return (jsx(StyledSvg, Object.assign({ className: classNames("Icon-" + variant), variant: "Icon-" + variant, as: SvgIcon, size: size, color: color, fill: fill, stroke: stroke, hoverColor: hoverColor, hoverFill: hoverFill, hoverStroke: hoverStroke, hoverOpacity: hoverOpacity, onClick: onClick, onKeyDown: onKeyDown, tabIndex: tabIndex, role: role }, props)));
259
260
  };
260
261
 
261
262
  const StyledLink$2 = styled.a `
262
- ${({ variant = "primary-regular", theme, underline, hoverUnderline }) => {
263
+ ${({ variant, theme, underline, hoverUnderline }) => {
263
264
  var _a, _b;
264
265
  const linkStyles = ((_a = theme === null || theme === void 0 ? void 0 : theme.link) === null || _a === void 0 ? void 0 : _a[variant]) || {};
265
266
  return css `
266
- font-size: ${linkStyles.fontSize};
267
- line-height: ${linkStyles.lineHeight};
268
- font-weight: ${linkStyles.fontWeight || "regular"};
267
+ font-size: ${linkStyles === null || linkStyles === void 0 ? void 0 : linkStyles.fontSize};
268
+ line-height: ${linkStyles === null || linkStyles === void 0 ? void 0 : linkStyles.lineHeight};
269
+ font-weight: ${(linkStyles === null || linkStyles === void 0 ? void 0 : linkStyles.fontWeight) || "regular"};
270
+ font-family: ${linkStyles === null || linkStyles === void 0 ? void 0 : linkStyles.fontFamily};
271
+ font-style: ${linkStyles === null || linkStyles === void 0 ? void 0 : linkStyles.fontStyle};
269
272
  color: ${linkStyles === null || linkStyles === void 0 ? void 0 : linkStyles.color};
270
273
  display: inline-block;
271
274
  text-decoration: ${underline ? "underline" : "none"};
@@ -276,7 +279,7 @@ const StyledLink$2 = styled.a `
276
279
  ? "underline"
277
280
  : "none"
278
281
  : "underline"};
279
- color: ${(_b = linkStyles.hover) === null || _b === void 0 ? void 0 : _b.color};
282
+ color: ${(_b = linkStyles === null || linkStyles === void 0 ? void 0 : linkStyles.hover) === null || _b === void 0 ? void 0 : _b.color};
280
283
  }
281
284
 
282
285
  &:disabled {
@@ -605,6 +608,13 @@ const AtomIconDot = styled(Icon).attrs(({ theme, moleculeVariant }) => {
605
608
  `;
606
609
  }}
607
610
  `;
611
+ const AtomTextBanner = styled(Text).attrs(({ theme, moleculeVariant }) => {
612
+ var _a, _b, _c, _d, _e, _f;
613
+ return ({
614
+ variant: (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.header) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.atomTextBanner) === null || _c === void 0 ? void 0 : _c.variant,
615
+ vColor: (_f = (_e = (_d = theme === null || theme === void 0 ? void 0 : theme.header) === null || _d === void 0 ? void 0 : _d[moleculeVariant]) === null || _e === void 0 ? void 0 : _e.atomTextBanner) === null || _f === void 0 ? void 0 : _f.color
616
+ });
617
+ }) ``;
608
618
  const AtomHeading$3 = styled(Heading).attrs(({ theme, moleculeVariant }) => {
609
619
  var _a, _b, _c, _d, _e, _f;
610
620
  return ({
@@ -613,9 +623,10 @@ const AtomHeading$3 = styled(Heading).attrs(({ theme, moleculeVariant }) => {
613
623
  });
614
624
  }) ``;
615
625
  const AtomTextTitle = styled(Text).attrs(({ theme, moleculeVariant }) => {
616
- var _a, _b, _c;
626
+ var _a, _b, _c, _d, _e, _f;
617
627
  return ({
618
- variant: (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.header) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.atomTextTitle) === null || _c === void 0 ? void 0 : _c.variant
628
+ variant: (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.header) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.atomTextTitle) === null || _c === void 0 ? void 0 : _c.variant,
629
+ vColor: (_f = (_e = (_d = theme === null || theme === void 0 ? void 0 : theme.header) === null || _d === void 0 ? void 0 : _d[moleculeVariant]) === null || _e === void 0 ? void 0 : _e.atomTextTitle) === null || _f === void 0 ? void 0 : _f.color
619
630
  });
620
631
  }) ``;
621
632
  const WrapperLineBottom = styled.div `
@@ -684,7 +695,7 @@ const WrapperTextTitle = styled.div `
684
695
 
685
696
  const Header = ({ moleculeVariant = "primary", iconTop, iconDot, buttonLeftIcon, buttonRightIcon, textBanner, headingTitle, textTitle, buttonLeftText, buttonLeftClick, buttonRightText, buttonRightClick, imageURLBackground, withOverlay }) => {
686
697
  const compVariant = `Header-${moleculeVariant}`;
687
- return (jsx(WrapperBackground, Object.assign({ className: classNames(compVariant), moleculeVariant: compVariant, imageURLBackground: imageURLBackground, withOverlay: withOverlay }, { children: jsxs(WrapperHeader, Object.assign({ moleculeVariant: compVariant }, { children: [jsxs("div", { children: [iconTop && (jsx(AtomIconTop, { moleculeVariant: compVariant, svg: iconTop })), textBanner && (jsxs(WrapperLineTop, Object.assign({ moleculeVariant: compVariant }, { children: [iconDot && (jsx(AtomIconDot, { moleculeVariant: compVariant, svg: iconDot })), jsx(AtomTextTitle, Object.assign({ moleculeVariant: compVariant }, { children: textBanner }))] })))] }), headingTitle && (jsx(AtomHeading$3, Object.assign({ moleculeVariant: compVariant }, { children: headingTitle }))), jsx(WrapperTextTitle, Object.assign({ moleculeVariant: compVariant }, { children: textTitle &&
698
+ return (jsx(WrapperBackground, Object.assign({ className: classNames(compVariant), moleculeVariant: compVariant, imageURLBackground: imageURLBackground, withOverlay: withOverlay }, { children: jsxs(WrapperHeader, Object.assign({ moleculeVariant: compVariant }, { children: [jsxs("div", { children: [iconTop && (jsx(AtomIconTop, { moleculeVariant: compVariant, svg: iconTop })), textBanner && (jsxs(WrapperLineTop, Object.assign({ moleculeVariant: compVariant }, { children: [iconDot && (jsx(AtomIconDot, { moleculeVariant: compVariant, svg: iconDot })), jsx(AtomTextBanner, Object.assign({ moleculeVariant: compVariant }, { children: textBanner }))] })))] }), headingTitle && (jsx(AtomHeading$3, Object.assign({ moleculeVariant: compVariant }, { children: headingTitle }))), jsx(WrapperTextTitle, Object.assign({ moleculeVariant: compVariant }, { children: textTitle &&
688
699
  (textTitle === null || textTitle === void 0 ? void 0 : textTitle.map((text, i) => (jsx(AtomTextTitle, Object.assign({ moleculeVariant: compVariant }, { children: text }), i)))) })), jsxs(WrapperLineBottom, { children: [(buttonLeftIcon || buttonLeftText) && (jsxs(AtomButtonLeft, Object.assign({ moleculeVariant: compVariant, onClick: buttonLeftClick }, { children: [buttonLeftIcon && (jsx(AtomIconLeft, { moleculeVariant: compVariant, svg: buttonLeftIcon })), buttonLeftText] }))), (buttonRightIcon || buttonRightText) && (jsxs(AtomButtonRight, Object.assign({ moleculeVariant: compVariant, onClick: buttonRightClick }, { children: [buttonRightText, buttonRightIcon && (jsx(AtomIconRight, { moleculeVariant: compVariant, svg: buttonRightIcon }))] })))] })] })) })));
689
700
  };
690
701
 
@@ -701,11 +712,10 @@ const NavBar = styled.nav `
701
712
  align-items: center;
702
713
  }
703
714
  gap: ${navigationTheme === null || navigationTheme === void 0 ? void 0 : navigationTheme.gap};
704
- background: ${(navigationTheme === null || navigationTheme === void 0 ? void 0 : navigationTheme.background) || "#333"};
715
+ background: ${navigationTheme === null || navigationTheme === void 0 ? void 0 : navigationTheme.background};
716
+ padding: ${navigationTheme === null || navigationTheme === void 0 ? void 0 : navigationTheme.padding};
705
717
  `;
706
718
  }}
707
-
708
- padding: 1rem;
709
719
  `;
710
720
  const BurgerWrapper = styled.div `
711
721
  flex-direction: column;
@@ -768,30 +778,52 @@ const StyledLink$1 = styled(Link).attrs(({ theme, moleculeVariant }) => {
768
778
  variant: (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.navigation) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.atomLink) === null || _c === void 0 ? void 0 : _c.variant
769
779
  });
770
780
  }) `
781
+ position: relative;
782
+
771
783
  ${({ theme, moleculeVariant, currentPath }) => {
772
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
784
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
773
785
  const linkTheme = ((_b = (_a = theme === null || theme === void 0 ? void 0 : theme.navigation) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.atomLink) || {};
774
786
  return css `
775
- color: ${currentPath
776
- ? ((_c = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.currentPath) === null || _c === void 0 ? void 0 : _c.color) || "#f0f"
777
- : (linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.color) || "#0f0"};
778
787
  font-weight: ${currentPath
779
- ? ((_d = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.currentPath) === null || _d === void 0 ? void 0 : _d.fontWeight) || "900"
788
+ ? ((_c = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.currentPath) === null || _c === void 0 ? void 0 : _c.fontWeight) || "900"
780
789
  : (linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.fontWeight) || "700"};
790
+ color: ${currentPath
791
+ ? (_d = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.currentPath) === null || _d === void 0 ? void 0 : _d.color
792
+ : linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.color};
793
+
794
+ /* ---------- CENTER EXPANDING UNDERLINE ---------- */
795
+ &::after {
796
+ content: "";
797
+ position: absolute;
798
+ left: 0;
799
+ bottom: ${((_e = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.underline) === null || _e === void 0 ? void 0 : _e.bottom) || "2px"};
800
+ width: 100%;
801
+ height: ${((_f = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.underline) === null || _f === void 0 ? void 0 : _f.height) || "2px"};
802
+ background: ${(_g = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.underline) === null || _g === void 0 ? void 0 : _g.background};
803
+ transform: scaleX(${currentPath ? 1 : 0});
804
+ transform-origin: ${(_h = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.underline) === null || _h === void 0 ? void 0 : _h.transformOrigin};
805
+ transition: transform ${(_j = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.underline) === null || _j === void 0 ? void 0 : _j.transition};
806
+ }
807
+
808
+ &:hover::after {
809
+ transform: scaleX(1);
810
+ }
811
+
781
812
  &:focus {
782
- color: ${((_e = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.focus) === null || _e === void 0 ? void 0 : _e.color) || "gold"};
783
- box-shadow: ${((_f = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.focus) === null || _f === void 0 ? void 0 : _f.boxShadow) || "none"};
784
- transform: ${((_g = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.focus) === null || _g === void 0 ? void 0 : _g.transform) || "none"};
813
+ color: ${(_k = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.focus) === null || _k === void 0 ? void 0 : _k.color};
814
+ box-shadow: ${((_l = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.focus) === null || _l === void 0 ? void 0 : _l.boxShadow) || "none"};
815
+ transform: ${((_m = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.focus) === null || _m === void 0 ? void 0 : _m.transform) || "none"};
785
816
  }
786
817
  &:hover {
787
- color: ${((_h = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.hover) === null || _h === void 0 ? void 0 : _h.color) || "purple"};
788
- transition: ${((_j = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.hover) === null || _j === void 0 ? void 0 : _j.transition) || "none"};
818
+ color: ${(_o = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.hover) === null || _o === void 0 ? void 0 : _o.color};
819
+ transition: ${((_p = linkTheme === null || linkTheme === void 0 ? void 0 : linkTheme.hover) === null || _p === void 0 ? void 0 : _p.transition) || "none"};
820
+ text-decoration: none;
789
821
  }
790
822
  `;
791
823
  }};
792
824
  `;
793
825
 
794
- const Navigation = ({ moleculeVariant = "primary", logo, onLogoClick, iconBurger, tabs, onTabClick }) => {
826
+ const Navigation = ({ moleculeVariant = "primary", logo, onLogoClick, iconBurger, tabs }) => {
795
827
  const location = useLocation();
796
828
  const currentPath = location.pathname.slice(1);
797
829
  const [isOpen, setIsOpen] = useState(false);
@@ -800,10 +832,7 @@ const Navigation = ({ moleculeVariant = "primary", logo, onLogoClick, iconBurger
800
832
  };
801
833
  const compVariant = `Navigation-${moleculeVariant}`;
802
834
  return (jsxs(NavBar, Object.assign({ className: classNames(compVariant), moleculeVariant: compVariant }, { children: [logo && (jsx(AtomIcon$3, { moleculeVariant: compVariant, svg: logo, onClick: onLogoClick, onKeyDown: onLogoClick, "aria-label": "Logo", tabIndex: 0, role: "button" })), jsxs("div", Object.assign({ style: { width: "100%" } }, { children: [jsx(BurgerWrapper, { children: jsx(AtomIcon$3, { moleculeVariant: compVariant, svg: iconBurger, onClick: handleToggle, onKeyDown: handleToggle, "aria-pressed": isOpen, "aria-label": "Burger", tabIndex: 0, role: "button" }) }), jsx(NavLinks, Object.assign({ isOpen: isOpen, moleculeVariant: compVariant }, { children: tabs.length > 0
803
- ? tabs.map((tab) => (jsx(StyledLink$1, Object.assign({ moleculeVariant: compVariant, to: tab.to, currentPath: tab.label === currentPath, onClick: () => {
804
- onTabClick === null || onTabClick === void 0 ? void 0 : onTabClick(tab.label);
805
- setIsOpen(false);
806
- } }, { children: tab.label }), tab.label)))
835
+ ? tabs.map((tab) => (jsx(StyledLink$1, Object.assign({ moleculeVariant: compVariant, to: tab.to, currentPath: tab.label === currentPath }, { children: tab.label }), tab.label)))
807
836
  : "no tabs available" }))] }))] })));
808
837
  };
809
838
 
@@ -845,6 +874,12 @@ const IconFooter = styled(Icon).attrs(({ theme, moleculeVariant }) => {
845
874
  variant: (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.footer) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.icons) === null || _c === void 0 ? void 0 : _c.variant
846
875
  });
847
876
  }) ``;
877
+ const StyledGradient = styled(Gradient).attrs(({ theme, moleculeVariant }) => {
878
+ var _a, _b, _c;
879
+ return ({
880
+ variant: (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.footer) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.gradient) === null || _c === void 0 ? void 0 : _c.color
881
+ });
882
+ }) ``;
848
883
  const StyledLink = styled(Link).attrs(({ theme, moleculeVariant }) => {
849
884
  var _a, _b, _c;
850
885
  return ({
@@ -877,11 +912,6 @@ const StyledLink = styled(Link).attrs(({ theme, moleculeVariant }) => {
877
912
  `;
878
913
  }}
879
914
 
880
- &:focus {
881
- outline: 2px solid red;
882
- outline-offset: 4px;
883
- }
884
-
885
915
  ${({ theme }) => theme.media.largeMobileUp} {
886
916
  margin: 0 10px;
887
917
  }
@@ -908,14 +938,15 @@ const FooterChildren = styled(Text).attrs(({ theme, moleculeVariant }) => {
908
938
  const Footer = ({ moleculeVariant = "primary", children, svg, routes }) => {
909
939
  // Memoize sorted routes to prevent redundant sorting
910
940
  const sortedRoutes = useMemo(() => [...routes].sort((a, b) => a.order - b.order), [routes]);
941
+ const compVariant = "Footer-" + moleculeVariant;
911
942
  const renderRouteLink = (route) => {
912
943
  const isExternal = route.type === "external";
913
944
  const href = isExternal ? route.url : undefined;
914
945
  const to = !isExternal ? route.slug : undefined;
915
946
  const target = route.blank ? "_blank" : undefined;
916
- return (jsxs(StyledLink, Object.assign({ moleculeVariant: "Footer-" + moleculeVariant, href: href, to: to, target: target }, { children: [route.label, svg && (jsx(IconFooter, { moleculeVariant: "Footer-" + moleculeVariant, svg: svg }))] }), route.order));
947
+ return (jsxs(StyledLink, Object.assign({ moleculeVariant: compVariant, href: href, to: to, target: target }, { children: [route.label, svg && jsx(IconFooter, { moleculeVariant: compVariant, svg: svg })] }), route.order));
917
948
  };
918
- return (jsxs(FooterWrapper, Object.assign({ className: classNames("Footer-", moleculeVariant), moleculeVariant: "Footer-" + moleculeVariant }, { children: [children && (jsx(FooterChildren, Object.assign({ moleculeVariant: "Footer-" + moleculeVariant }, { children: children }))), jsx(FooterNav, Object.assign({ moleculeVariant: "Footer-" + moleculeVariant }, { children: sortedRoutes.map(renderRouteLink) }))] })));
949
+ return (jsxs(FooterWrapper, Object.assign({ className: classNames(compVariant), moleculeVariant: compVariant }, { children: [children && (jsx(StyledGradient, Object.assign({ moleculeVariant: compVariant }, { children: jsx(FooterChildren, Object.assign({ moleculeVariant: compVariant }, { children: children })) }))), jsx(FooterNav, Object.assign({ moleculeVariant: compVariant }, { children: sortedRoutes.map(renderRouteLink) }))] })));
919
950
  };
920
951
 
921
952
  const CardContainer = styled.div `
@@ -1430,7 +1461,7 @@ const AtomHeading = styled(Heading).attrs(({ theme, moleculeVariant }) => {
1430
1461
  const AtomIcon = styled(Icon).attrs(({ theme, moleculeVariant }) => {
1431
1462
  var _a, _b, _c;
1432
1463
  return ({
1433
- variant: ((_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.accordion) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.atomIcon) === null || _c === void 0 ? void 0 : _c.variant) || "small"
1464
+ variant: ((_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.accordion) === null || _a === void 0 ? void 0 : _a[moleculeVariant]) === null || _b === void 0 ? void 0 : _b.atomIcon) === null || _c === void 0 ? void 0 : _c.variant) || "sm"
1434
1465
  });
1435
1466
  }) `
1436
1467
  min-width: fit-content;