decentraland-ui2 0.6.1-11707170874.commit-b70b9eb → 0.6.2-11914812722.commit-6240a47

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,10 +1,27 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useState } from "react";
2
3
  import { config } from "../../../config";
3
4
  import { MenuItem } from "../MenuItem/MenuItem";
4
5
  import { NavbarPages } from "../Navbar.types";
6
+ import { getExtraButton } from "../utils";
5
7
  import { MainMenuContainer } from "./MainMenu.styled";
6
8
  export const MainMenu = (props) => {
7
9
  const { i18n, isOpenOnMobile, ...menuItemProps } = props;
8
- return (_jsxs(MainMenuContainer, { isOpenOnMobile: isOpenOnMobile, children: [_jsx(MenuItem, { ...menuItemProps, section: NavbarPages.MARKETPLACE, title: i18n.marketplace, mainUrl: config.get("MARKETPLACE_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.CREATE, title: i18n.create, mainUrl: config.get("CREATE_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.LEARN, title: i18n.learn, mainUrl: config.get("LEARN_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.GOVERNANCE, title: i18n.governance, mainUrl: config.get("GOVERNANCE_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.EXPLORE, title: i18n.explore, mainUrl: config.get("EVENTS_URL") })] }));
10
+ const isMounted = useRef(false);
11
+ const [extraButton, setExtraButton] = useState(null);
12
+ useEffect(() => {
13
+ isMounted.current = true;
14
+ if (!extraButton) {
15
+ getExtraButton().then((button) => {
16
+ if (!isMounted.current)
17
+ return;
18
+ setExtraButton(button);
19
+ });
20
+ }
21
+ return () => {
22
+ isMounted.current = false;
23
+ };
24
+ }, [extraButton, isMounted, setExtraButton]);
25
+ return (_jsxs(MainMenuContainer, { isOpenOnMobile: isOpenOnMobile, children: [_jsx(MenuItem, { ...menuItemProps, section: NavbarPages.MARKETPLACE, title: i18n.marketplace, mainUrl: config.get("MARKETPLACE_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.CREATE, title: i18n.create, mainUrl: config.get("CREATE_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.LEARN, title: i18n.learn, mainUrl: config.get("LEARN_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.GOVERNANCE, title: i18n.governance, mainUrl: config.get("GOVERNANCE_URL") }), _jsx(MenuItem, { ...menuItemProps, section: NavbarPages.EXPLORE, title: i18n.explore, mainUrl: config.get("EVENTS_URL") }), extraButton && extraButton.visible ? (_jsx(MenuItem, { ...menuItemProps, section: NavbarPages.EXTRA, title: extraButton.text, mainUrl: extraButton.link, textColor: extraButton.textColor, backgroundColor: extraButton.backgroundColor })) : null] }));
9
26
  };
10
27
  //# sourceMappingURL=MainMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MainMenu.js","sourceRoot":"","sources":["../../../../src/components/Navbar/MainMenu/MainMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC/C,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,aAAa,EAAE,GAAG,KAAK,CAAA;IACxD,OAAO,CACL,MAAC,iBAAiB,IAAC,cAAc,EAAE,cAAc,aAC/C,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,WAAW,EAChC,KAAK,EAAE,IAAI,CAAC,WAAW,EACvB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,GACtC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,MAAM,EAC3B,KAAK,EAAE,IAAI,CAAC,MAAM,EAClB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GACjC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,KAAK,EAC1B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,GAChC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,UAAU,EAC/B,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,GACrC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,KAAK,EAAE,IAAI,CAAC,OAAO,EACnB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GACjC,IACgB,CACrB,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"MainMenu.js","sourceRoot":"","sources":["../../../../src/components/Navbar/MainMenu/MainMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAqB,cAAc,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC/C,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,aAAa,EAAE,GAAG,KAAK,CAAA;IAExD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC/B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAA2B,IAAI,CAAC,CAAA;IAC9E,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,CAAC,OAAO,GAAG,IAAI,CAAA;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC/B,IAAI,CAAC,SAAS,CAAC,OAAO;oBAAE,OAAM;gBAC9B,cAAc,CAAC,MAAM,CAAC,CAAA;YACxB,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,GAAG,EAAE;YACV,SAAS,CAAC,OAAO,GAAG,KAAK,CAAA;QAC3B,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAA;IAE5C,OAAO,CACL,MAAC,iBAAiB,IAAC,cAAc,EAAE,cAAc,aAC/C,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,WAAW,EAChC,KAAK,EAAE,IAAI,CAAC,WAAW,EACvB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,GACtC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,MAAM,EAC3B,KAAK,EAAE,IAAI,CAAC,MAAM,EAClB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GACjC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,KAAK,EAC1B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,GAChC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,UAAU,EAC/B,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,GACrC,EACF,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,KAAK,EAAE,IAAI,CAAC,OAAO,EACnB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GACjC,EACD,WAAW,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CACpC,KAAC,QAAQ,OACH,aAAa,EACjB,OAAO,EAAE,WAAW,CAAC,KAAK,EAC1B,KAAK,EAAE,WAAW,CAAC,IAAI,EACvB,OAAO,EAAE,WAAW,CAAC,IAAI,EACzB,SAAS,EAAE,WAAW,CAAC,SAAS,EAChC,eAAe,EAAE,WAAW,CAAC,eAAe,GAC5C,CACH,CAAC,CAAC,CAAC,IAAI,IACU,CACrB,CAAA;AACH,CAAC,CAAA"}
@@ -3,13 +3,13 @@ import { useCallback } from "react";
3
3
  import ArrowForwardRoundedIcon from "@mui/icons-material/ArrowForwardRounded";
4
4
  import { MenuItemContainer, MenuItemTitle } from "./MenuItem.styled";
5
5
  const MenuItem = (props) => {
6
- const { activePage, section, title, onToggleShowSubMenu, mainUrl, isMobile } = props;
6
+ const { activePage, section, title, onToggleShowSubMenu, mainUrl, isMobile, textColor, backgroundColor, } = props;
7
7
  const mainRedirect = useCallback(() => {
8
8
  mainUrl && window.open(mainUrl, "_self");
9
9
  }, [mainUrl]);
10
10
  return (_jsxs(MenuItemContainer, { active: activePage === section, onClick: (e) => {
11
11
  isMobile && onToggleShowSubMenu(e, true, section);
12
- }, onMouseEnter: (e) => !isMobile && onToggleShowSubMenu(e, true, section), onMouseLeave: (e) => !isMobile && onToggleShowSubMenu(e, false, section), children: [_jsx(MenuItemTitle, { variant: "subtitle1", onClick: mainRedirect, children: title }), isMobile && _jsx(ArrowForwardRoundedIcon, {})] }));
12
+ }, onMouseEnter: (e) => !isMobile && onToggleShowSubMenu(e, true, section), onMouseLeave: (e) => !isMobile && onToggleShowSubMenu(e, false, section), backgroundColor: backgroundColor, children: [_jsx(MenuItemTitle, { variant: "subtitle1", onClick: mainRedirect, textColor: textColor, children: title }), isMobile && _jsx(ArrowForwardRoundedIcon, {})] }));
13
13
  };
14
14
  export { MenuItem };
15
15
  //# sourceMappingURL=MenuItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../../../../src/components/Navbar/MenuItem/MenuItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,uBAAuB,MAAM,yCAAyC,CAAA;AAE7E,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEpE,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IACxC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,QAAQ,EAAE,GAC1E,KAAK,CAAA;IAEP,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC1C,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEb,OAAO,CACL,MAAC,iBAAiB,IAChB,MAAM,EAAE,UAAU,KAAK,OAAO,EAC9B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,QAAQ,IAAI,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QACnD,CAAC,EACD,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,IAAI,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,EACvE,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,IAAI,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,aAExE,KAAC,aAAa,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,YAAY,YACrD,KAAK,GACQ,EACf,QAAQ,IAAI,KAAC,uBAAuB,KAAG,IACtB,CACrB,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
1
+ {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../../../../src/components/Navbar/MenuItem/MenuItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,uBAAuB,MAAM,yCAAyC,CAAA;AAE7E,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEpE,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IACxC,MAAM,EACJ,UAAU,EACV,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,SAAS,EACT,eAAe,GAChB,GAAG,KAAK,CAAA;IAET,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC1C,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEb,OAAO,CACL,MAAC,iBAAiB,IAChB,MAAM,EAAE,UAAU,KAAK,OAAO,EAC9B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,QAAQ,IAAI,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QACnD,CAAC,EACD,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,IAAI,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,EACvE,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,IAAI,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EACxE,eAAe,EAAE,eAAe,aAEhC,KAAC,aAAa,IACZ,OAAO,EAAC,WAAW,EACnB,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,SAAS,YAEnB,KAAK,GACQ,EACf,QAAQ,IAAI,KAAC,uBAAuB,KAAG,IACtB,CACrB,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -4,10 +4,13 @@ declare const MenuItemContainer: import("@emotion/styled").StyledComponent<impor
4
4
  theme?: import("@emotion/react").Theme;
5
5
  } & {
6
6
  active: boolean;
7
+ backgroundColor?: string;
7
8
  }, {}, {}>;
8
9
  declare const MenuItemTitle: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
9
10
  ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
10
11
  }, "p" | "style" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxShadow" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "zIndex" | "border" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "classes" | "className" | "children" | "sx" | "variant" | "align" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & {
11
12
  theme?: import("@emotion/react").Theme;
13
+ } & {
14
+ textColor?: string;
12
15
  }, {}, {}>;
13
16
  export { MenuItemContainer, MenuItemTitle };
@@ -1,7 +1,7 @@
1
1
  import styled from "@emotion/styled";
2
2
  import { Box, Typography, useTheme } from "@mui/material";
3
3
  const MenuItemContainer = styled(Box)((props) => {
4
- const { active } = props;
4
+ const { active, backgroundColor } = props;
5
5
  const theme = useTheme();
6
6
  let modifiedStyles;
7
7
  if (active) {
@@ -11,7 +11,7 @@ const MenuItemContainer = styled(Box)((props) => {
11
11
  };
12
12
  }
13
13
  return {
14
- backgroundColor: "transparent",
14
+ backgroundColor: backgroundColor ? backgroundColor : "transparent",
15
15
  display: "flex",
16
16
  cursor: "pointer",
17
17
  alignItems: "center",
@@ -40,13 +40,15 @@ const MenuItemContainer = styled(Box)((props) => {
40
40
  },
41
41
  };
42
42
  });
43
- const MenuItemTitle = styled(Typography)(() => {
43
+ const MenuItemTitle = styled(Typography)((props) => {
44
+ const { textColor } = props;
44
45
  const theme = useTheme();
45
46
  return {
46
47
  textTransform: "capitalize",
47
48
  fontWeight: "inherit",
49
+ color: textColor ? textColor : theme.palette.text.secondary,
48
50
  [theme.breakpoints.down("sm")]: {
49
- color: theme.palette.text.primary,
51
+ color: textColor ? textColor : theme.palette.text.primary,
50
52
  },
51
53
  };
52
54
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.styled.js","sourceRoot":"","sources":["../../../../src/components/Navbar/MenuItem/MenuItem.styled.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAEzD,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAA0B,EAAE,EAAE;IACnE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAExB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,IAAI,cAAc,CAAA;IAClB,IAAI,MAAM,EAAE,CAAC;QACX,cAAc,GAAG;YACf,UAAU,EAAE,MAAM;YAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;SAClC,CAAA;IACH,CAAC;IAED,OAAO;QACL,eAAe,EAAE,aAAa;QAC9B,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;QACnC,UAAU,EAAE,QAAQ;QACpB,GAAG,cAAc;QACjB,UAAU,EAAE;YACV,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;SAClC;QACD,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;YAC9B,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,QAAQ;YACnB,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,MAAM;YAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;YACjC,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;YAC7C,iBAAiB,EAAE,OAAgB;YACnC,iBAAiB,EAAE,KAAK;YACxB,KAAK,EAAE,mBAAmB;YAC1B,MAAM,EAAE,QAAQ;YAChB,cAAc,EAAE,eAAe;SAChC;KACF,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE;IAC5C,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,OAAO;QACL,aAAa,EAAE,YAAqB;QACpC,UAAU,EAAE,SAAS;QACrB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;YAC9B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;SAClC;KACF,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"MenuItem.styled.js","sourceRoot":"","sources":["../../../../src/components/Navbar/MenuItem/MenuItem.styled.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAEzD,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAGtC,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,KAAK,CAAA;IAEzC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,IAAI,cAAc,CAAA;IAClB,IAAI,MAAM,EAAE,CAAC;QACX,cAAc,GAAG;YACf,UAAU,EAAE,MAAM;YAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;SAClC,CAAA;IACH,CAAC;IAED,OAAO;QACL,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa;QAClE,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;QACnC,UAAU,EAAE,QAAQ;QACpB,GAAG,cAAc;QACjB,UAAU,EAAE;YACV,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;SAClC;QACD,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;YAC9B,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,QAAQ;YACnB,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,MAAM;YAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;YACjC,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;YAC7C,iBAAiB,EAAE,OAAgB;YACnC,iBAAiB,EAAE,KAAK;YACxB,KAAK,EAAE,mBAAmB;YAC1B,MAAM,EAAE,QAAQ;YAChB,cAAc,EAAE,eAAe;SAChC;KACF,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAA6B,EAAE,EAAE;IACzE,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IAC3B,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,OAAO;QACL,aAAa,EAAE,YAAqB;QACpC,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;QAC3D,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;YAC9B,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;SAC1D;KACF,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAA"}
@@ -6,4 +6,6 @@ export type MenuItemProps = {
6
6
  onToggleShowSubMenu: (e: React.MouseEvent<HTMLElement>, show: boolean, section: NavbarPages) => void;
7
7
  mainUrl?: string;
8
8
  isMobile?: boolean;
9
+ textColor?: string;
10
+ backgroundColor?: string;
9
11
  };
@@ -5,7 +5,8 @@ declare enum NavbarPages {
5
5
  CREATE = "create",
6
6
  EXPLORE = "explore",
7
7
  LEARN = "learn",
8
- GOVERNANCE = "governance"
8
+ GOVERNANCE = "governance",
9
+ EXTRA = "extra"
9
10
  }
10
11
  type NavbarMenuI18nProps = Record<NavbarPages, string>;
11
12
  type NavbarSubMenuItemsProps = {
@@ -5,6 +5,7 @@ var NavbarPages;
5
5
  NavbarPages["EXPLORE"] = "explore";
6
6
  NavbarPages["LEARN"] = "learn";
7
7
  NavbarPages["GOVERNANCE"] = "governance";
8
+ NavbarPages["EXTRA"] = "extra";
8
9
  })(NavbarPages || (NavbarPages = {}));
9
10
  export { NavbarPages };
10
11
  //# sourceMappingURL=Navbar.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Navbar.types.js","sourceRoot":"","sources":["../../../src/components/Navbar/Navbar.types.ts"],"names":[],"mappings":"AAMA,IAAK,WAMJ;AAND,WAAK,WAAW;IACd,0CAA2B,CAAA;IAC3B,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;IACnB,8BAAe,CAAA;IACf,wCAAyB,CAAA;AAC3B,CAAC,EANI,WAAW,KAAX,WAAW,QAMf;AAoDD,OAAO,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"Navbar.types.js","sourceRoot":"","sources":["../../../src/components/Navbar/Navbar.types.ts"],"names":[],"mappings":"AAMA,IAAK,WAOJ;AAPD,WAAK,WAAW;IACd,0CAA2B,CAAA;IAC3B,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;IACnB,8BAAe,CAAA;IACf,wCAAyB,CAAA;IACzB,8BAAe,CAAA;AACjB,CAAC,EAPI,WAAW,KAAX,WAAW,QAOf;AAoDD,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,16 @@
1
+ type NavbarExtraButton = {
2
+ text: string;
3
+ link: string;
4
+ visible: boolean;
5
+ textColor?: `#${string}`;
6
+ backgroundColor?: `#${string}`;
7
+ id?: string;
8
+ ttl: number;
9
+ };
10
+ type LocalStorageNavbarExtraButton = {
11
+ button: NavbarExtraButton;
12
+ expiresAt: number;
13
+ };
14
+ declare const getExtraButton: () => Promise<NavbarExtraButton | null>;
15
+ export { getExtraButton };
16
+ export type { NavbarExtraButton, LocalStorageNavbarExtraButton };
@@ -0,0 +1,34 @@
1
+ import { config } from "../../config";
2
+ const getExtraButton = async () => {
3
+ const cachedExtraButton = localStorage.getItem("navbarExtraButton");
4
+ if (cachedExtraButton) {
5
+ try {
6
+ const parsed = JSON.parse(cachedExtraButton);
7
+ if (parsed.expiresAt > Date.now()) {
8
+ return parsed.button;
9
+ }
10
+ }
11
+ catch (error) {
12
+ // error parsing cached data, ignore and fetch from Contentful
13
+ }
14
+ }
15
+ try {
16
+ const SPACE_ID = config.get("CONTENTFUL_SPACE_ID");
17
+ const ENV = config.get("CONTENTFUL_ENV");
18
+ const ACCESS_TOKEN = config.get("CONTENTFUL_NAVBAR_ACCESS_TOKEN");
19
+ const ENTRY_ID = config.get("CONTENTFUL_NAVBAR_ENTRY_ID");
20
+ const CONTENTFUL_CDN_URL = config.get("CONTENTFUL_CONTENTFUL_CDN_URL");
21
+ const CONTENTFUL_URL = `${CONTENTFUL_CDN_URL}/spaces/${SPACE_ID}/environments/${ENV}/entries/${ENTRY_ID}?access_token=${ACCESS_TOKEN}`;
22
+ const response = await fetch(CONTENTFUL_URL);
23
+ const entry = await response.json();
24
+ const button = entry.fields;
25
+ localStorage.setItem("navbarExtraButton", JSON.stringify({ button, expiresAt: Date.now() + button.ttl * 1000 }));
26
+ return button;
27
+ }
28
+ catch (error) {
29
+ console.error(error);
30
+ return null;
31
+ }
32
+ };
33
+ export { getExtraButton };
34
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/Navbar/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAiBrC,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;IAChC,MAAM,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACnE,IAAI,iBAAiB,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,iBAAiB,CACe,CAAA;YAClC,IAAI,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAClC,OAAO,MAAM,CAAC,MAAM,CAAA;YACtB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8DAA8D;QAChE,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;QAClD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;QACxC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;QACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;QACzD,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAA;QACtE,MAAM,cAAc,GAAG,GAAG,kBAAkB,WAAW,QAAQ,iBAAiB,GAAG,YAAY,QAAQ,iBAAiB,YAAY,EAAE,CAAA;QACtI,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,CAAA;QAC5C,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACnC,MAAM,MAAM,GAAG,KAAK,CAAC,MAA2B,CAAA;QAChD,YAAY,CAAC,OAAO,CAClB,mBAAmB,EACnB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC,CACtE,CAAA;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -11,5 +11,10 @@
11
11
  "CREATE_URL": "https://decentraland.org/create/",
12
12
  "LEARN_URL": "https://docs.decentraland.org/player/",
13
13
  "CREATOR_HUB_URL": "https://decentraland.zone/download/creator-hub/",
14
- "DOWNLOAD_URL": "https://decentraland.zone/download/"
14
+ "DOWNLOAD_URL": "https://decentraland.zone/download/",
15
+ "CONTENTFUL_SPACE_ID": "ea2ybdmmn1kv",
16
+ "CONTENTFUL_ENV": "master",
17
+ "CONTENTFUL_NAVBAR_ACCESS_TOKEN": "9dieh3AHS6uwb_YNMjxlO6FCibAFFJVdg2YzA5t6U-Y",
18
+ "CONTENTFUL_NAVBAR_ENTRY_ID": "18g1DzIyBxvu0steSwKyQr",
19
+ "CONTENTFUL_CONTENTFUL_CDN_URL": "https://cdn.contentful.com"
15
20
  }
@@ -11,5 +11,10 @@
11
11
  "CREATE_URL": "https://decentraland.org/create/",
12
12
  "LEARN_URL": "https://docs.decentraland.org/player/",
13
13
  "CREATOR_HUB_URL": "https://decentraland.org/download/creator-hub/",
14
- "DOWNLOAD_URL": "https://decentraland.org/download/"
14
+ "DOWNLOAD_URL": "https://decentraland.org/download/",
15
+ "CONTENTFUL_SPACE_ID": "ea2ybdmmn1kv",
16
+ "CONTENTFUL_ENV": "master",
17
+ "CONTENTFUL_NAVBAR_ACCESS_TOKEN": "9dieh3AHS6uwb_YNMjxlO6FCibAFFJVdg2YzA5t6U-Y",
18
+ "CONTENTFUL_NAVBAR_ENTRY_ID": "18g1DzIyBxvu0steSwKyQr",
19
+ "CONTENTFUL_CONTENTFUL_CDN_URL": "https://cdn.contentful.com"
15
20
  }
@@ -11,5 +11,10 @@
11
11
  "CREATE_URL": "https://decentraland.today/create/",
12
12
  "LEARN_URL": "https://docs.decentraland.org/player/",
13
13
  "CREATOR_HUB_URL": "https://decentraland.today/download/creator-hub/",
14
- "DOWNLOAD_URL": "https://decentraland.todat/download/"
14
+ "DOWNLOAD_URL": "https://decentraland.today/download/",
15
+ "CONTENTFUL_SPACE_ID": "ea2ybdmmn1kv",
16
+ "CONTENTFUL_ENV": "master",
17
+ "CONTENTFUL_NAVBAR_ACCESS_TOKEN": "9dieh3AHS6uwb_YNMjxlO6FCibAFFJVdg2YzA5t6U-Y",
18
+ "CONTENTFUL_NAVBAR_ENTRY_ID": "18g1DzIyBxvu0steSwKyQr",
19
+ "CONTENTFUL_CONTENTFUL_CDN_URL": "https://cdn.contentful.com"
15
20
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "decentraland-ui2",
3
- "version": "0.6.1-11707170874.commit-b70b9eb",
3
+ "version": "0.6.2-11914812722.commit-6240a47",
4
4
  "description": "Decentraland's UI components and styles",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -90,5 +90,5 @@
90
90
  "files": [
91
91
  "dist"
92
92
  ],
93
- "commit": "b70b9eb42f14d938c924a8d86f10c9a3c34e3ccb"
93
+ "commit": "6240a475b38818a8635be8d42f04483e8ec6960e"
94
94
  }