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.
- package/dist/components/Navbar/MainMenu/MainMenu.js +18 -1
- package/dist/components/Navbar/MainMenu/MainMenu.js.map +1 -1
- package/dist/components/Navbar/MenuItem/MenuItem.js +2 -2
- package/dist/components/Navbar/MenuItem/MenuItem.js.map +1 -1
- package/dist/components/Navbar/MenuItem/MenuItem.styled.d.ts +3 -0
- package/dist/components/Navbar/MenuItem/MenuItem.styled.js +6 -4
- package/dist/components/Navbar/MenuItem/MenuItem.styled.js.map +1 -1
- package/dist/components/Navbar/MenuItem/MenuItem.types.d.ts +2 -0
- package/dist/components/Navbar/Navbar.types.d.ts +2 -1
- package/dist/components/Navbar/Navbar.types.js +1 -0
- package/dist/components/Navbar/Navbar.types.js.map +1 -1
- package/dist/components/Navbar/utils.d.ts +16 -0
- package/dist/components/Navbar/utils.js +34 -0
- package/dist/components/Navbar/utils.js.map +1 -0
- package/dist/config/env/dev.json +6 -1
- package/dist/config/env/prod.json +6 -1
- package/dist/config/env/stg.json +6 -1
- package/package.json +2 -2
@@ -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
|
-
|
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;
|
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,
|
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,
|
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"}
|
@@ -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,
|
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"}
|
package/dist/config/env/dev.json
CHANGED
@@ -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
|
}
|
package/dist/config/env/stg.json
CHANGED
@@ -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.
|
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.
|
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": "
|
93
|
+
"commit": "6240a475b38818a8635be8d42f04483e8ec6960e"
|
94
94
|
}
|