@laerdal/life-react-components 1.8.0-dev.16 → 1.8.0-dev.18
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/Dropdown/CommonStyling.cjs +1 -1
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.js +1 -1
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownFilter.cjs +7 -3
- package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
- package/dist/Dropdown/DropdownFilter.js +7 -3
- package/dist/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/GlobalNavigationBar/Actions.cjs +185 -0
- package/dist/GlobalNavigationBar/Actions.cjs.map +1 -0
- package/dist/GlobalNavigationBar/Actions.d.ts +13 -0
- package/dist/GlobalNavigationBar/Actions.js +160 -0
- package/dist/GlobalNavigationBar/Actions.js.map +1 -0
- package/dist/GlobalNavigationBar/Avatar.cjs +104 -0
- package/dist/GlobalNavigationBar/Avatar.cjs.map +1 -0
- package/dist/GlobalNavigationBar/Avatar.d.ts +15 -0
- package/dist/GlobalNavigationBar/Avatar.js +77 -0
- package/dist/GlobalNavigationBar/Avatar.js.map +1 -0
- package/dist/GlobalNavigationBar/{desktop/ExtendedMainMenu.cjs → ExtendedMainMenu.cjs} +9 -7
- package/dist/GlobalNavigationBar/ExtendedMainMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/{desktop/ExtendedMainMenu.d.ts → ExtendedMainMenu.d.ts} +2 -2
- package/dist/GlobalNavigationBar/{desktop/ExtendedMainMenu.js → ExtendedMainMenu.js} +6 -6
- package/dist/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs +176 -107
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs.map +1 -1
- package/dist/GlobalNavigationBar/GlobalNavigationBar.d.ts +27 -13
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js +176 -106
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
- package/dist/GlobalNavigationBar/Logo.cjs +5 -3
- package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
- package/dist/GlobalNavigationBar/Logo.js +1 -1
- package/dist/GlobalNavigationBar/Logo.js.map +1 -1
- package/dist/GlobalNavigationBar/{desktop/MainMenu.cjs → MainMenu.cjs} +21 -17
- package/dist/GlobalNavigationBar/MainMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/MainMenu.d.ts +8 -0
- package/dist/GlobalNavigationBar/{desktop/MainMenu.js → MainMenu.js} +21 -17
- package/dist/GlobalNavigationBar/MainMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/{desktop/RightSideNav.cjs → RightSideNav.cjs} +26 -22
- package/dist/GlobalNavigationBar/RightSideNav.cjs.map +1 -0
- package/dist/GlobalNavigationBar/RightSideNav.d.ts +8 -0
- package/dist/GlobalNavigationBar/RightSideNav.js +61 -0
- package/dist/GlobalNavigationBar/RightSideNav.js.map +1 -0
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.cjs +112 -0
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.cjs.map +1 -0
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.d.ts +11 -0
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.js +86 -0
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.js.map +1 -0
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.cjs +178 -0
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.d.ts +16 -0
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.js +146 -0
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.cjs +168 -0
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.d.ts +15 -0
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.js +135 -0
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/index.cjs +18 -15
- package/dist/GlobalNavigationBar/index.cjs.map +1 -1
- package/dist/GlobalNavigationBar/index.d.ts +2 -2
- package/dist/GlobalNavigationBar/index.js +2 -2
- package/dist/GlobalNavigationBar/index.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs +21 -15
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.d.ts +6 -3
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js +15 -14
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.cjs +49 -0
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.cjs.map +1 -0
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.d.ts +6 -0
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.js +27 -0
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.js.map +1 -0
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.cjs +91 -0
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.d.ts +13 -0
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.js +70 -0
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +221 -114
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.d.ts +25 -6
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js +216 -113
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
- package/dist/MenuItem/MenuItem.cjs +10 -16
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.d.ts +3 -3
- package/dist/MenuItem/MenuItem.js +8 -14
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/ProfileButton/ProfileButton.cjs +11 -20
- package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
- package/dist/ProfileButton/ProfileButton.d.ts +1 -3
- package/dist/ProfileButton/ProfileButton.js +10 -18
- package/dist/ProfileButton/ProfileButton.js.map +1 -1
- package/dist/Switcher/MobileSwitcherMenu.cjs +78 -24
- package/dist/Switcher/MobileSwitcherMenu.cjs.map +1 -1
- package/dist/Switcher/MobileSwitcherMenu.d.ts +5 -6
- package/dist/Switcher/MobileSwitcherMenu.js +70 -26
- package/dist/Switcher/MobileSwitcherMenu.js.map +1 -1
- package/dist/Tile/TileBody.cjs +1 -1
- package/dist/Tile/TileBody.cjs.map +1 -1
- package/dist/Tile/TileBody.js +1 -1
- package/dist/Tile/TileBody.js.map +1 -1
- package/dist/Tile/TileCommonItems.cjs +1 -1
- package/dist/Tile/TileCommonItems.cjs.map +1 -1
- package/dist/Tile/TileCommonItems.js +1 -1
- package/dist/Tile/TileCommonItems.js.map +1 -1
- package/dist/Tile/TileFooter.cjs +1 -1
- package/dist/Tile/TileFooter.cjs.map +1 -1
- package/dist/Tile/TileFooter.js +1 -1
- package/dist/Tile/TileFooter.js.map +1 -1
- package/dist/Tile/TileHeader.cjs +1 -1
- package/dist/Tile/TileHeader.cjs.map +1 -1
- package/dist/Tile/TileHeader.js +2 -2
- package/dist/Tile/TileHeader.js.map +1 -1
- package/dist/hooks/useClickOutside.cjs +2 -6
- package/dist/hooks/useClickOutside.cjs.map +1 -1
- package/dist/hooks/useClickOutside.d.ts +1 -1
- package/dist/hooks/useClickOutside.js +2 -6
- package/dist/hooks/useClickOutside.js.map +1 -1
- package/dist/index.cjs +8 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.ts +32 -0
- package/dist/types.js.map +1 -1
- package/package.json +8 -10
- package/dist/GlobalNavigationBar/NavigationHelper.cjs +0 -38
- package/dist/GlobalNavigationBar/NavigationHelper.cjs.map +0 -1
- package/dist/GlobalNavigationBar/NavigationHelper.d.ts +0 -4
- package/dist/GlobalNavigationBar/NavigationHelper.js +0 -27
- package/dist/GlobalNavigationBar/NavigationHelper.js.map +0 -1
- package/dist/GlobalNavigationBar/desktop/DesktopActions.cjs +0 -127
- package/dist/GlobalNavigationBar/desktop/DesktopActions.cjs.map +0 -1
- package/dist/GlobalNavigationBar/desktop/DesktopActions.d.ts +0 -15
- package/dist/GlobalNavigationBar/desktop/DesktopActions.js +0 -98
- package/dist/GlobalNavigationBar/desktop/DesktopActions.js.map +0 -1
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.js.map +0 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.d.ts +0 -8
- package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +0 -1
- package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs.map +0 -1
- package/dist/GlobalNavigationBar/desktop/RightSideNav.d.ts +0 -8
- package/dist/GlobalNavigationBar/desktop/RightSideNav.js +0 -59
- package/dist/GlobalNavigationBar/desktop/RightSideNav.js.map +0 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +0 -204
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.d.ts +0 -7
- package/dist/GlobalNavigationBar/desktop/UserMenu.js +0 -163
- package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +0 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs +0 -221
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs.map +0 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.d.ts +0 -11
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js +0 -184
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js.map +0 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs +0 -160
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs.map +0 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.d.ts +0 -12
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js +0 -139
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js.map +0 -1
- package/dist/GlobalNavigationBar/types.cjs +0 -6
- package/dist/GlobalNavigationBar/types.cjs.map +0 -1
- package/dist/GlobalNavigationBar/types.d.ts +0 -120
- package/dist/GlobalNavigationBar/types.js +0 -2
- package/dist/GlobalNavigationBar/types.js.map +0 -1
- package/dist/common/StackState.cjs +0 -47
- package/dist/common/StackState.cjs.map +0 -1
- package/dist/common/StackState.d.ts +0 -7
- package/dist/common/StackState.js +0 -30
- package/dist/common/StackState.js.map +0 -1
|
@@ -21,17 +21,17 @@ var _reactRouterDom = require("react-router-dom");
|
|
|
21
21
|
|
|
22
22
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
23
23
|
|
|
24
|
-
var _NavItem = require("
|
|
24
|
+
var _NavItem = require("../NavItem");
|
|
25
25
|
|
|
26
|
-
var _SystemIcons = require("
|
|
26
|
+
var _SystemIcons = require("../icons/systemicons/SystemIcons");
|
|
27
27
|
|
|
28
|
-
var _styles = require("
|
|
28
|
+
var _styles = require("../styles");
|
|
29
29
|
|
|
30
30
|
var _ExtendedMainMenu = _interopRequireDefault(require("./ExtendedMainMenu"));
|
|
31
31
|
|
|
32
|
-
var _Button = require("
|
|
32
|
+
var _Button = require("../Button");
|
|
33
33
|
|
|
34
|
-
var _common = require("
|
|
34
|
+
var _common = require("../common");
|
|
35
35
|
|
|
36
36
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
37
37
|
|
|
@@ -52,7 +52,7 @@ var ExtendedMenuWrapper = _styledComponents.default.div(_templateObject3 || (_te
|
|
|
52
52
|
var ExtendedSection = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n"])));
|
|
53
53
|
|
|
54
54
|
var MainMenu = function MainMenu(_ref) {
|
|
55
|
-
var
|
|
55
|
+
var navigationOptions = _ref.navigationOptions,
|
|
56
56
|
rightSideRef = _ref.rightSideRef;
|
|
57
57
|
|
|
58
58
|
var _React$useState = React.useState(false),
|
|
@@ -110,27 +110,31 @@ var MainMenu = function MainMenu(_ref) {
|
|
|
110
110
|
className: "GlobalNavigationMainMenu",
|
|
111
111
|
ref: mainMenuRef,
|
|
112
112
|
open: showExtendedMenu,
|
|
113
|
-
children: [
|
|
113
|
+
children: [navigationOptions === null || navigationOptions === void 0 ? void 0 : navigationOptions.map(function (no, index) {
|
|
114
114
|
return index > numberOfItemsAllowed - 2 ? null : no !== null && no !== void 0 && no.disabled ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavItem.NavItem, {
|
|
115
115
|
as: NavButton,
|
|
116
|
-
exact: no.exact,
|
|
116
|
+
exact: no === null || no === void 0 ? void 0 : no.exact,
|
|
117
117
|
className: "disabled",
|
|
118
118
|
onMouseDown: _common.defaultOnMouseDownHandler,
|
|
119
119
|
onClick: function onClick() {
|
|
120
|
-
|
|
120
|
+
if (no !== null && no !== void 0 && no.onClick) {
|
|
121
|
+
no === null || no === void 0 ? void 0 : no.onClick();
|
|
122
|
+
}
|
|
121
123
|
},
|
|
122
124
|
children: no === null || no === void 0 ? void 0 : no.label
|
|
123
|
-
}, no.label) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavItem.NavItem, {
|
|
125
|
+
}, no === null || no === void 0 ? void 0 : no.label) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavItem.NavItem, {
|
|
124
126
|
as: _reactRouterDom.NavLink,
|
|
125
|
-
exact: no.exact,
|
|
126
|
-
to: no.to || '',
|
|
127
|
+
exact: no === null || no === void 0 ? void 0 : no.exact,
|
|
128
|
+
to: (no === null || no === void 0 ? void 0 : no.to) || '',
|
|
127
129
|
onMouseDown: _common.defaultOnMouseDownHandler,
|
|
128
130
|
onClick: function onClick() {
|
|
129
|
-
|
|
131
|
+
if (no !== null && no !== void 0 && no.onClick) {
|
|
132
|
+
no === null || no === void 0 ? void 0 : no.onClick();
|
|
133
|
+
}
|
|
130
134
|
},
|
|
131
135
|
children: no === null || no === void 0 ? void 0 : no.label
|
|
132
|
-
}, no.label);
|
|
133
|
-
}),
|
|
136
|
+
}, no === null || no === void 0 ? void 0 : no.label);
|
|
137
|
+
}), navigationOptions.length + 1 > numberOfItemsAllowed && /*#__PURE__*/(0, _jsxRuntime.jsxs)(ExtendedSection, {
|
|
134
138
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.IconButton, {
|
|
135
139
|
ref: menuButtonRef,
|
|
136
140
|
variant: 'secondary',
|
|
@@ -147,7 +151,7 @@ var MainMenu = function MainMenu(_ref) {
|
|
|
147
151
|
floatRight: false,
|
|
148
152
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExtendedMainMenu.default, {
|
|
149
153
|
clickMenuAction: handleClickExtendedMenuAction,
|
|
150
|
-
navigationOptions:
|
|
154
|
+
navigationOptions: navigationOptions.slice(numberOfItemsAllowed - 1)
|
|
151
155
|
})
|
|
152
156
|
})]
|
|
153
157
|
})]
|
|
@@ -155,7 +159,7 @@ var MainMenu = function MainMenu(_ref) {
|
|
|
155
159
|
};
|
|
156
160
|
|
|
157
161
|
MainMenu.propTypes = {
|
|
158
|
-
|
|
162
|
+
navigationOptions: _propTypes.default.array.isRequired
|
|
159
163
|
};
|
|
160
164
|
var _default = MainMenu;
|
|
161
165
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/MainMenu.tsx"],"names":["NavContainer","styled","div","BREAKPOINTS","MEDIUM","NavButton","button","COLORS","white","ExtendedMenuWrapper","props","floatRight","ExtendedSection","MainMenu","navigationOptions","rightSideRef","React","useState","showExtendedMenu","setShowExtendedMenu","extendedMenuRef","useRef","menuButtonRef","mainMenuRef","numberOfItemsAllowed","setNumberOfItemsAllowed","widthOfItem","recalculateNumberOfItemsAllowed","current","number","Math","floor","offsetLeft","handleClickExtendedMenuAction","handleClickOutside","e","contains","target","useEffect","document","addEventListener","window","removeEventListener","map","no","index","disabled","exact","defaultOnMouseDownHandler","onClick","label","NavLink","to","length","slice"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { NavLink } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { NavItem } from '../NavItem';\nimport { MoreHorizontal } from '../icons/systemicons/SystemIcons';\nimport { COLORS, BREAKPOINTS } from '../styles';\nimport { NavOption } from '../types';\nimport ExtendedMainMenu from './ExtendedMainMenu';\nimport {IconButton} from '../Button';\nimport {defaultOnMouseDownHandler} from '../common';\n\nconst NavContainer = styled.div<{ open: boolean }>`\n display: none;\n justify-content: center;\n align-items: center;\n\n ${BREAKPOINTS.MEDIUM} {\n display: flex;\n }\n\n a {\n text-decoration: none;\n }\n`;\n\nconst NavButton = styled.button`\n background: ${COLORS.white};\n border: 0;\n`;\n\ninterface ExtendedMenuWrapperProps {\n floatRight: boolean;\n}\n\nconst ExtendedMenuWrapper = styled.div<ExtendedMenuWrapperProps>`\n display: flex;\n margin-left: ${props => (props.floatRight ? 'auto' : 'unset')};\n\n position: absolute;\n flex-direction: column;\n left: 290px;\n top: 22px;\n\n height: 0;\n width: 0;\n\n &:focus-within,\n &:hover,\n &.open {\n background: ${COLORS.white};\n }\n`;\n\nconst ExtendedSection = styled.div`\n position: relative;\n`;\n\ntype Props = {\n navigationOptions: NavOption[];\n rightSideRef?: React.RefObject<HTMLDivElement> | null | undefined;\n};\n\nconst MainMenu = ({ navigationOptions, rightSideRef }: Props): React.ReactElement<Props> => {\n const [showExtendedMenu, setShowExtendedMenu] = React.useState(false);\n const extendedMenuRef = React.useRef<any>(null);\n const menuButtonRef = React.useRef<HTMLButtonElement>(null);\n const mainMenuRef: React.RefObject<HTMLDivElement> | null | undefined = React.useRef(null);\n const [numberOfItemsAllowed, setNumberOfItemsAllowed] = React.useState<number>(1);\n\n const widthOfItem = 150;\n const recalculateNumberOfItemsAllowed = () => {\n if (rightSideRef?.current && mainMenuRef?.current) {\n const number = Math.floor((rightSideRef?.current?.offsetLeft - mainMenuRef?.current?.offsetLeft) / widthOfItem);\n if (number !== numberOfItemsAllowed) {\n setNumberOfItemsAllowed(number);\n }\n }\n };\n\n const handleClickExtendedMenuAction = () => {\n setShowExtendedMenu(false);\n };\n\n const handleClickOutside = (e: any) => {\n if (!extendedMenuRef?.current?.contains(e.target) && !menuButtonRef?.current?.contains(e.target)) {\n setShowExtendedMenu(false);\n }\n };\n\n React.useEffect(() => {\n recalculateNumberOfItemsAllowed();\n // Bind the event listener\n document.addEventListener('click', handleClickOutside);\n window.addEventListener('resize', recalculateNumberOfItemsAllowed);\n return () => {\n // Unbind the event listener on clean up\n document.removeEventListener('click', handleClickOutside);\n window.removeEventListener('resize', recalculateNumberOfItemsAllowed);\n };\n });\n\n return (\n <NavContainer className=\"GlobalNavigationMainMenu\" ref={mainMenuRef} open={showExtendedMenu}>\n {navigationOptions?.map((no: NavOption, index: number) =>\n index > numberOfItemsAllowed - 2 ? null : no?.disabled ? (\n <NavItem\n as={NavButton}\n exact={no?.exact}\n className=\"disabled\"\n key={no?.label}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (no?.onClick) {\n no?.onClick();\n }\n }}>\n {no?.label}\n </NavItem>\n ) : (\n <NavItem\n as={NavLink}\n exact={no?.exact}\n to={no?.to || ''}\n key={no?.label}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (no?.onClick) {\n no?.onClick();\n }\n }}>\n {no?.label}\n </NavItem>\n ),\n )}\n {navigationOptions.length + 1 > numberOfItemsAllowed && (\n <ExtendedSection>\n <IconButton\n ref={menuButtonRef}\n variant={'secondary'}\n shape={'circular'}\n action={() => {\n setShowExtendedMenu(!showExtendedMenu)\n }}>\n <MoreHorizontal size=\"24px\" />\n </IconButton>\n <ExtendedMenuWrapper ref={extendedMenuRef} className={showExtendedMenu ? 'open' : ''} floatRight={false}>\n <ExtendedMainMenu clickMenuAction={handleClickExtendedMenuAction} navigationOptions={navigationOptions.slice(numberOfItemsAllowed - 1)} />\n </ExtendedMenuWrapper>\n </ExtendedSection>\n )}\n </NavContainer>\n );\n};\n\nexport default MainMenu;\n"],"file":"MainMenu.cjs"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { NavOption } from '../types';
|
|
3
|
+
declare type Props = {
|
|
4
|
+
navigationOptions: NavOption[];
|
|
5
|
+
rightSideRef?: React.RefObject<HTMLDivElement> | null | undefined;
|
|
6
|
+
};
|
|
7
|
+
declare const MainMenu: ({ navigationOptions, rightSideRef }: Props) => React.ReactElement<Props>;
|
|
8
|
+
export default MainMenu;
|
|
@@ -7,12 +7,12 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
|
7
7
|
import * as React from 'react';
|
|
8
8
|
import { NavLink } from 'react-router-dom';
|
|
9
9
|
import styled from 'styled-components';
|
|
10
|
-
import { NavItem } from '
|
|
11
|
-
import { MoreHorizontal } from '
|
|
12
|
-
import { COLORS, BREAKPOINTS } from '
|
|
10
|
+
import { NavItem } from '../NavItem';
|
|
11
|
+
import { MoreHorizontal } from '../icons/systemicons/SystemIcons';
|
|
12
|
+
import { COLORS, BREAKPOINTS } from '../styles';
|
|
13
13
|
import ExtendedMainMenu from './ExtendedMainMenu';
|
|
14
|
-
import { IconButton } from '
|
|
15
|
-
import { defaultOnMouseDownHandler } from '
|
|
14
|
+
import { IconButton } from '../Button';
|
|
15
|
+
import { defaultOnMouseDownHandler } from '../common';
|
|
16
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
17
17
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
18
|
var NavContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: none;\n justify-content: center;\n align-items: center;\n\n ", " {\n display: flex;\n }\n\n a {\n text-decoration: none;\n }\n"])), BREAKPOINTS.MEDIUM);
|
|
@@ -23,7 +23,7 @@ var ExtendedMenuWrapper = styled.div(_templateObject3 || (_templateObject3 = _ta
|
|
|
23
23
|
var ExtendedSection = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n position: relative;\n"])));
|
|
24
24
|
|
|
25
25
|
var MainMenu = function MainMenu(_ref) {
|
|
26
|
-
var
|
|
26
|
+
var navigationOptions = _ref.navigationOptions,
|
|
27
27
|
rightSideRef = _ref.rightSideRef;
|
|
28
28
|
|
|
29
29
|
var _React$useState = React.useState(false),
|
|
@@ -81,27 +81,31 @@ var MainMenu = function MainMenu(_ref) {
|
|
|
81
81
|
className: "GlobalNavigationMainMenu",
|
|
82
82
|
ref: mainMenuRef,
|
|
83
83
|
open: showExtendedMenu,
|
|
84
|
-
children: [
|
|
84
|
+
children: [navigationOptions === null || navigationOptions === void 0 ? void 0 : navigationOptions.map(function (no, index) {
|
|
85
85
|
return index > numberOfItemsAllowed - 2 ? null : no !== null && no !== void 0 && no.disabled ? /*#__PURE__*/_jsx(NavItem, {
|
|
86
86
|
as: NavButton,
|
|
87
|
-
exact: no.exact,
|
|
87
|
+
exact: no === null || no === void 0 ? void 0 : no.exact,
|
|
88
88
|
className: "disabled",
|
|
89
89
|
onMouseDown: defaultOnMouseDownHandler,
|
|
90
90
|
onClick: function onClick() {
|
|
91
|
-
|
|
91
|
+
if (no !== null && no !== void 0 && no.onClick) {
|
|
92
|
+
no === null || no === void 0 ? void 0 : no.onClick();
|
|
93
|
+
}
|
|
92
94
|
},
|
|
93
95
|
children: no === null || no === void 0 ? void 0 : no.label
|
|
94
|
-
}, no.label) : /*#__PURE__*/_jsx(NavItem, {
|
|
96
|
+
}, no === null || no === void 0 ? void 0 : no.label) : /*#__PURE__*/_jsx(NavItem, {
|
|
95
97
|
as: NavLink,
|
|
96
|
-
exact: no.exact,
|
|
97
|
-
to: no.to || '',
|
|
98
|
+
exact: no === null || no === void 0 ? void 0 : no.exact,
|
|
99
|
+
to: (no === null || no === void 0 ? void 0 : no.to) || '',
|
|
98
100
|
onMouseDown: defaultOnMouseDownHandler,
|
|
99
101
|
onClick: function onClick() {
|
|
100
|
-
|
|
102
|
+
if (no !== null && no !== void 0 && no.onClick) {
|
|
103
|
+
no === null || no === void 0 ? void 0 : no.onClick();
|
|
104
|
+
}
|
|
101
105
|
},
|
|
102
106
|
children: no === null || no === void 0 ? void 0 : no.label
|
|
103
|
-
}, no.label);
|
|
104
|
-
}),
|
|
107
|
+
}, no === null || no === void 0 ? void 0 : no.label);
|
|
108
|
+
}), navigationOptions.length + 1 > numberOfItemsAllowed && /*#__PURE__*/_jsxs(ExtendedSection, {
|
|
105
109
|
children: [/*#__PURE__*/_jsx(IconButton, {
|
|
106
110
|
ref: menuButtonRef,
|
|
107
111
|
variant: 'secondary',
|
|
@@ -118,7 +122,7 @@ var MainMenu = function MainMenu(_ref) {
|
|
|
118
122
|
floatRight: false,
|
|
119
123
|
children: /*#__PURE__*/_jsx(ExtendedMainMenu, {
|
|
120
124
|
clickMenuAction: handleClickExtendedMenuAction,
|
|
121
|
-
navigationOptions:
|
|
125
|
+
navigationOptions: navigationOptions.slice(numberOfItemsAllowed - 1)
|
|
122
126
|
})
|
|
123
127
|
})]
|
|
124
128
|
})]
|
|
@@ -126,7 +130,7 @@ var MainMenu = function MainMenu(_ref) {
|
|
|
126
130
|
};
|
|
127
131
|
|
|
128
132
|
MainMenu.propTypes = {
|
|
129
|
-
|
|
133
|
+
navigationOptions: _pt.array.isRequired
|
|
130
134
|
};
|
|
131
135
|
export default MainMenu;
|
|
132
136
|
//# sourceMappingURL=MainMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/MainMenu.tsx"],"names":["React","NavLink","styled","NavItem","MoreHorizontal","COLORS","BREAKPOINTS","ExtendedMainMenu","IconButton","defaultOnMouseDownHandler","NavContainer","div","MEDIUM","NavButton","button","white","ExtendedMenuWrapper","props","floatRight","ExtendedSection","MainMenu","navigationOptions","rightSideRef","useState","showExtendedMenu","setShowExtendedMenu","extendedMenuRef","useRef","menuButtonRef","mainMenuRef","numberOfItemsAllowed","setNumberOfItemsAllowed","widthOfItem","recalculateNumberOfItemsAllowed","current","number","Math","floor","offsetLeft","handleClickExtendedMenuAction","handleClickOutside","e","contains","target","useEffect","document","addEventListener","window","removeEventListener","map","no","index","disabled","exact","onClick","label","to","length","slice"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { NavLink } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { NavItem } from '../NavItem';\nimport { MoreHorizontal } from '../icons/systemicons/SystemIcons';\nimport { COLORS, BREAKPOINTS } from '../styles';\nimport { NavOption } from '../types';\nimport ExtendedMainMenu from './ExtendedMainMenu';\nimport {IconButton} from '../Button';\nimport {defaultOnMouseDownHandler} from '../common';\n\nconst NavContainer = styled.div<{ open: boolean }>`\n display: none;\n justify-content: center;\n align-items: center;\n\n ${BREAKPOINTS.MEDIUM} {\n display: flex;\n }\n\n a {\n text-decoration: none;\n }\n`;\n\nconst NavButton = styled.button`\n background: ${COLORS.white};\n border: 0;\n`;\n\ninterface ExtendedMenuWrapperProps {\n floatRight: boolean;\n}\n\nconst ExtendedMenuWrapper = styled.div<ExtendedMenuWrapperProps>`\n display: flex;\n margin-left: ${props => (props.floatRight ? 'auto' : 'unset')};\n\n position: absolute;\n flex-direction: column;\n left: 290px;\n top: 22px;\n\n height: 0;\n width: 0;\n\n &:focus-within,\n &:hover,\n &.open {\n background: ${COLORS.white};\n }\n`;\n\nconst ExtendedSection = styled.div`\n position: relative;\n`;\n\ntype Props = {\n navigationOptions: NavOption[];\n rightSideRef?: React.RefObject<HTMLDivElement> | null | undefined;\n};\n\nconst MainMenu = ({ navigationOptions, rightSideRef }: Props): React.ReactElement<Props> => {\n const [showExtendedMenu, setShowExtendedMenu] = React.useState(false);\n const extendedMenuRef = React.useRef<any>(null);\n const menuButtonRef = React.useRef<HTMLButtonElement>(null);\n const mainMenuRef: React.RefObject<HTMLDivElement> | null | undefined = React.useRef(null);\n const [numberOfItemsAllowed, setNumberOfItemsAllowed] = React.useState<number>(1);\n\n const widthOfItem = 150;\n const recalculateNumberOfItemsAllowed = () => {\n if (rightSideRef?.current && mainMenuRef?.current) {\n const number = Math.floor((rightSideRef?.current?.offsetLeft - mainMenuRef?.current?.offsetLeft) / widthOfItem);\n if (number !== numberOfItemsAllowed) {\n setNumberOfItemsAllowed(number);\n }\n }\n };\n\n const handleClickExtendedMenuAction = () => {\n setShowExtendedMenu(false);\n };\n\n const handleClickOutside = (e: any) => {\n if (!extendedMenuRef?.current?.contains(e.target) && !menuButtonRef?.current?.contains(e.target)) {\n setShowExtendedMenu(false);\n }\n };\n\n React.useEffect(() => {\n recalculateNumberOfItemsAllowed();\n // Bind the event listener\n document.addEventListener('click', handleClickOutside);\n window.addEventListener('resize', recalculateNumberOfItemsAllowed);\n return () => {\n // Unbind the event listener on clean up\n document.removeEventListener('click', handleClickOutside);\n window.removeEventListener('resize', recalculateNumberOfItemsAllowed);\n };\n });\n\n return (\n <NavContainer className=\"GlobalNavigationMainMenu\" ref={mainMenuRef} open={showExtendedMenu}>\n {navigationOptions?.map((no: NavOption, index: number) =>\n index > numberOfItemsAllowed - 2 ? null : no?.disabled ? (\n <NavItem\n as={NavButton}\n exact={no?.exact}\n className=\"disabled\"\n key={no?.label}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (no?.onClick) {\n no?.onClick();\n }\n }}>\n {no?.label}\n </NavItem>\n ) : (\n <NavItem\n as={NavLink}\n exact={no?.exact}\n to={no?.to || ''}\n key={no?.label}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (no?.onClick) {\n no?.onClick();\n }\n }}>\n {no?.label}\n </NavItem>\n ),\n )}\n {navigationOptions.length + 1 > numberOfItemsAllowed && (\n <ExtendedSection>\n <IconButton\n ref={menuButtonRef}\n variant={'secondary'}\n shape={'circular'}\n action={() => {\n setShowExtendedMenu(!showExtendedMenu)\n }}>\n <MoreHorizontal size=\"24px\" />\n </IconButton>\n <ExtendedMenuWrapper ref={extendedMenuRef} className={showExtendedMenu ? 'open' : ''} floatRight={false}>\n <ExtendedMainMenu clickMenuAction={handleClickExtendedMenuAction} navigationOptions={navigationOptions.slice(numberOfItemsAllowed - 1)} />\n </ExtendedMenuWrapper>\n </ExtendedSection>\n )}\n </NavContainer>\n );\n};\n\nexport default MainMenu;\n"],"file":"MainMenu.js"}
|
|
@@ -19,13 +19,15 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
19
19
|
|
|
20
20
|
var _reactRouterDom = require("react-router-dom");
|
|
21
21
|
|
|
22
|
-
var _NavItem = require("
|
|
22
|
+
var _NavItem = require("../NavItem");
|
|
23
23
|
|
|
24
|
-
var _styles = require("
|
|
24
|
+
var _styles = require("../styles");
|
|
25
25
|
|
|
26
|
-
var _Button = require("
|
|
26
|
+
var _Button = require("../Button");
|
|
27
27
|
|
|
28
|
-
var
|
|
28
|
+
var _typography = require("../styles/typography");
|
|
29
|
+
|
|
30
|
+
var _common = require("../common");
|
|
29
31
|
|
|
30
32
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
31
33
|
|
|
@@ -35,48 +37,50 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
35
37
|
|
|
36
38
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
39
|
|
|
38
|
-
var NavContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n margin: auto 0 auto auto;\n align-items: center;\n height: 48px;\n\n a {\n text-decoration: none;\n }\n\n ", " {\n height: 56px;\n }\n
|
|
40
|
+
var NavContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n margin: auto 0 auto auto;\n align-items: center;\n height: 48px;\n \n a {\n text-decoration: none;\n }\n\n ", " {\n height: 56px;\n }\n ", " {\n height: 64px;\n }\n\n button,\n div {\n &:hover {\n cursor: pointer;\n }\n }\n"])), _styles.BREAKPOINTS.SMALL, _styles.BREAKPOINTS.MEDIUM);
|
|
39
41
|
|
|
40
|
-
var SecondaryButton = (0, _styledComponents.default)(_Button.Button)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n height: 40px;\n margin: 0 8px;\n\n ", "\n"])), (0,
|
|
42
|
+
var SecondaryButton = (0, _styledComponents.default)(_Button.Button)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n height: 40px;\n margin: 0 8px;\n\n ", "\n"])), (0, _typography.ComponentMStyling)(_styles.ComponentTextStyle.Bold, 'unset'));
|
|
41
43
|
|
|
42
44
|
var RightSideNav = function RightSideNav(_ref) {
|
|
43
|
-
var
|
|
44
|
-
|
|
45
|
+
var navigationOptions = _ref.navigationOptions,
|
|
46
|
+
secondaryButton = _ref.secondaryButton;
|
|
45
47
|
|
|
46
|
-
var getNavItem = function getNavItem(
|
|
47
|
-
if (
|
|
48
|
+
var getNavItem = function getNavItem(navOption) {
|
|
49
|
+
if (navOption !== null && navOption !== void 0 && navOption.disabled) {
|
|
48
50
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavItem.NavItem, {
|
|
49
51
|
as: _Button.Button,
|
|
50
52
|
className: "disabled",
|
|
51
|
-
children:
|
|
52
|
-
},
|
|
53
|
+
children: navOption === null || navOption === void 0 ? void 0 : navOption.label
|
|
54
|
+
}, navOption === null || navOption === void 0 ? void 0 : navOption.label);
|
|
53
55
|
} else {
|
|
54
56
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavItem.NavItem, {
|
|
55
57
|
as: _reactRouterDom.NavLink,
|
|
56
|
-
exact:
|
|
57
|
-
to: (
|
|
58
|
+
exact: navOption === null || navOption === void 0 ? void 0 : navOption.exact,
|
|
59
|
+
to: (navOption === null || navOption === void 0 ? void 0 : navOption.to) || '',
|
|
58
60
|
onMouseDown: _common.defaultOnMouseDownHandler,
|
|
59
61
|
onClick: function onClick() {
|
|
60
|
-
|
|
62
|
+
if (navOption !== null && navOption !== void 0 && navOption.onClick) {
|
|
63
|
+
navOption === null || navOption === void 0 ? void 0 : navOption.onClick();
|
|
64
|
+
}
|
|
61
65
|
},
|
|
62
|
-
children:
|
|
63
|
-
},
|
|
66
|
+
children: navOption === null || navOption === void 0 ? void 0 : navOption.label
|
|
67
|
+
}, navOption === null || navOption === void 0 ? void 0 : navOption.label);
|
|
64
68
|
}
|
|
65
69
|
};
|
|
66
70
|
|
|
67
71
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(NavContainer, {
|
|
68
|
-
children: [
|
|
72
|
+
children: [navigationOptions === null || navigationOptions === void 0 ? void 0 : navigationOptions.reverse().map(function (no) {
|
|
69
73
|
return getNavItem(no);
|
|
70
|
-
}),
|
|
74
|
+
}), secondaryButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(SecondaryButton, {
|
|
71
75
|
variant: "secondary",
|
|
72
|
-
onClick:
|
|
73
|
-
children:
|
|
76
|
+
onClick: secondaryButton === null || secondaryButton === void 0 ? void 0 : secondaryButton.action,
|
|
77
|
+
children: secondaryButton.label
|
|
74
78
|
})]
|
|
75
79
|
});
|
|
76
80
|
};
|
|
77
81
|
|
|
78
82
|
RightSideNav.propTypes = {
|
|
79
|
-
|
|
83
|
+
navigationOptions: _propTypes.default.array
|
|
80
84
|
};
|
|
81
85
|
var _default = RightSideNav;
|
|
82
86
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/RightSideNav.tsx"],"names":["NavContainer","styled","div","BREAKPOINTS","SMALL","MEDIUM","SecondaryButton","Button","ComponentTextStyle","Bold","RightSideNav","navigationOptions","secondaryButton","getNavItem","navOption","disabled","label","NavLink","exact","to","defaultOnMouseDownHandler","onClick","reverse","map","no","action"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,YAAY,GAAGC,0BAAOC,GAAV,yWAUdC,oBAAYC,KAVE,EAadD,oBAAYE,MAbE,CAAlB;;AAyBA,IAAMC,eAAe,GAAG,+BAAOC,cAAP,CAAH,qIAIjB,mCAAkBC,2BAAmBC,IAArC,EAA2C,OAA3C,CAJiB,CAArB;;AAYA,IAAMC,YAAY,GAAG,SAAfA,YAAe,OAA8E;AAAA,MAA3EC,iBAA2E,QAA3EA,iBAA2E;AAAA,MAAxDC,eAAwD,QAAxDA,eAAwD;;AACjG,MAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,SAAD,EAA0B;AAC3C,QAAIA,SAAJ,aAAIA,SAAJ,eAAIA,SAAS,CAAEC,QAAf,EAAyB;AACvB,0BACE,qBAAC,gBAAD;AAAS,QAAA,EAAE,EAAER,cAAb;AAAqB,QAAA,SAAS,EAAC,UAA/B;AAAA,kBACGO,SADH,aACGA,SADH,uBACGA,SAAS,CAAEE;AADd,SAA+CF,SAA/C,aAA+CA,SAA/C,uBAA+CA,SAAS,CAAEE,KAA1D,CADF;AAKD,KAND,MAMO;AACL,0BACE,qBAAC,gBAAD;AACE,QAAA,EAAE,EAAEC,uBADN;AAEE,QAAA,KAAK,EAAEH,SAAF,aAAEA,SAAF,uBAAEA,SAAS,CAAEI,KAFpB;AAGE,QAAA,EAAE,EAAE,CAAAJ,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAEK,EAAX,KAAiB,EAHvB;AAKE,QAAA,WAAW,EAAEC,iCALf;AAME,QAAA,OAAO,EAAE,mBAAM;AACb,cAAIN,SAAJ,aAAIA,SAAJ,eAAIA,SAAS,CAAEO,OAAf,EAAwB;AACtBP,YAAAA,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAEO,OAAX;AACD;AACF,SAVH;AAAA,kBAWGP,SAXH,aAWGA,SAXH,uBAWGA,SAAS,CAAEE;AAXd,SAIOF,SAJP,aAIOA,SAJP,uBAIOA,SAAS,CAAEE,KAJlB,CADF;AAeD;AACF,GAxBD;;AAyBA,sBACE,sBAAC,YAAD;AAAA,eACGL,iBADH,aACGA,iBADH,uBACGA,iBAAiB,CAAEW,OAAnB,GAA6BC,GAA7B,CAAiC,UAAAC,EAAE;AAAA,aAAIX,UAAU,CAACW,EAAD,CAAd;AAAA,KAAnC,CADH,EAGGZ,eAAe,iBACd,qBAAC,eAAD;AAAiB,MAAA,OAAO,EAAC,WAAzB;AAAqC,MAAA,OAAO,EAAEA,eAAF,aAAEA,eAAF,uBAAEA,eAAe,CAAEa,MAA/D;AAAA,gBACGb,eAAe,CAACI;AADnB,MAJJ;AAAA,IADF;AAWD,CArCD;;;AAJEL,EAAAA,iB;;eA2CaD,Y","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {NavLink} from 'react-router-dom';\n\nimport {NavItem} from '../NavItem';\nimport {NavButton, NavOption} from '../types';\nimport {BREAKPOINTS, ComponentTextStyle} from '../styles';\nimport {Button} from '../Button';\nimport {ComponentMStyling} from '../styles/typography';\nimport {defaultOnMouseDownHandler} from '../common';\n\nconst NavContainer = styled.div`\n display: flex;\n margin: auto 0 auto auto;\n align-items: center;\n height: 48px;\n \n a {\n text-decoration: none;\n }\n\n ${BREAKPOINTS.SMALL} {\n height: 56px;\n }\n ${BREAKPOINTS.MEDIUM} {\n height: 64px;\n }\n\n button,\n div {\n &:hover {\n cursor: pointer;\n }\n }\n`;\n\nconst SecondaryButton = styled(Button)`\n height: 40px;\n margin: 0 8px;\n\n ${ComponentMStyling(ComponentTextStyle.Bold, 'unset')}\n`;\n\ntype Props = {\n navigationOptions?: NavOption[];\n secondaryButton?: NavButton;\n};\n\nconst RightSideNav = ({ navigationOptions, secondaryButton }: Props): React.ReactElement<Props> => {\n const getNavItem = (navOption: NavOption) => {\n if (navOption?.disabled) {\n return (\n <NavItem as={Button} className=\"disabled\" key={navOption?.label}>\n {navOption?.label}\n </NavItem>\n );\n } else {\n return (\n <NavItem\n as={NavLink}\n exact={navOption?.exact}\n to={navOption?.to || ''}\n key={navOption?.label}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (navOption?.onClick) {\n navOption?.onClick();\n }\n }}>\n {navOption?.label}\n </NavItem>\n );\n }\n };\n return (\n <NavContainer>\n {navigationOptions?.reverse().map(no => getNavItem(no))}\n\n {secondaryButton && (\n <SecondaryButton variant=\"secondary\" onClick={secondaryButton?.action}>\n {secondaryButton.label}\n </SecondaryButton>\n )}\n </NavContainer>\n );\n};\n\nexport default RightSideNav;\n"],"file":"RightSideNav.cjs"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { NavButton, NavOption } from '../types';
|
|
3
|
+
declare type Props = {
|
|
4
|
+
navigationOptions?: NavOption[];
|
|
5
|
+
secondaryButton?: NavButton;
|
|
6
|
+
};
|
|
7
|
+
declare const RightSideNav: ({ navigationOptions, secondaryButton }: Props) => React.ReactElement<Props>;
|
|
8
|
+
export default RightSideNav;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
2
|
+
import _pt from "prop-types";
|
|
3
|
+
|
|
4
|
+
var _templateObject, _templateObject2;
|
|
5
|
+
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
import styled from 'styled-components';
|
|
8
|
+
import { NavLink } from 'react-router-dom';
|
|
9
|
+
import { NavItem } from '../NavItem';
|
|
10
|
+
import { BREAKPOINTS, ComponentTextStyle } from '../styles';
|
|
11
|
+
import { Button } from '../Button';
|
|
12
|
+
import { ComponentMStyling } from '../styles/typography';
|
|
13
|
+
import { defaultOnMouseDownHandler } from '../common';
|
|
14
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
|
+
var NavContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n margin: auto 0 auto auto;\n align-items: center;\n height: 48px;\n \n a {\n text-decoration: none;\n }\n\n ", " {\n height: 56px;\n }\n ", " {\n height: 64px;\n }\n\n button,\n div {\n &:hover {\n cursor: pointer;\n }\n }\n"])), BREAKPOINTS.SMALL, BREAKPOINTS.MEDIUM);
|
|
17
|
+
var SecondaryButton = styled(Button)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n height: 40px;\n margin: 0 8px;\n\n ", "\n"])), ComponentMStyling(ComponentTextStyle.Bold, 'unset'));
|
|
18
|
+
|
|
19
|
+
var RightSideNav = function RightSideNav(_ref) {
|
|
20
|
+
var navigationOptions = _ref.navigationOptions,
|
|
21
|
+
secondaryButton = _ref.secondaryButton;
|
|
22
|
+
|
|
23
|
+
var getNavItem = function getNavItem(navOption) {
|
|
24
|
+
if (navOption !== null && navOption !== void 0 && navOption.disabled) {
|
|
25
|
+
return /*#__PURE__*/_jsx(NavItem, {
|
|
26
|
+
as: Button,
|
|
27
|
+
className: "disabled",
|
|
28
|
+
children: navOption === null || navOption === void 0 ? void 0 : navOption.label
|
|
29
|
+
}, navOption === null || navOption === void 0 ? void 0 : navOption.label);
|
|
30
|
+
} else {
|
|
31
|
+
return /*#__PURE__*/_jsx(NavItem, {
|
|
32
|
+
as: NavLink,
|
|
33
|
+
exact: navOption === null || navOption === void 0 ? void 0 : navOption.exact,
|
|
34
|
+
to: (navOption === null || navOption === void 0 ? void 0 : navOption.to) || '',
|
|
35
|
+
onMouseDown: defaultOnMouseDownHandler,
|
|
36
|
+
onClick: function onClick() {
|
|
37
|
+
if (navOption !== null && navOption !== void 0 && navOption.onClick) {
|
|
38
|
+
navOption === null || navOption === void 0 ? void 0 : navOption.onClick();
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
children: navOption === null || navOption === void 0 ? void 0 : navOption.label
|
|
42
|
+
}, navOption === null || navOption === void 0 ? void 0 : navOption.label);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
return /*#__PURE__*/_jsxs(NavContainer, {
|
|
47
|
+
children: [navigationOptions === null || navigationOptions === void 0 ? void 0 : navigationOptions.reverse().map(function (no) {
|
|
48
|
+
return getNavItem(no);
|
|
49
|
+
}), secondaryButton && /*#__PURE__*/_jsx(SecondaryButton, {
|
|
50
|
+
variant: "secondary",
|
|
51
|
+
onClick: secondaryButton === null || secondaryButton === void 0 ? void 0 : secondaryButton.action,
|
|
52
|
+
children: secondaryButton.label
|
|
53
|
+
})]
|
|
54
|
+
});
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
RightSideNav.propTypes = {
|
|
58
|
+
navigationOptions: _pt.array
|
|
59
|
+
};
|
|
60
|
+
export default RightSideNav;
|
|
61
|
+
//# sourceMappingURL=RightSideNav.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/RightSideNav.tsx"],"names":["React","styled","NavLink","NavItem","BREAKPOINTS","ComponentTextStyle","Button","ComponentMStyling","defaultOnMouseDownHandler","NavContainer","div","SMALL","MEDIUM","SecondaryButton","Bold","RightSideNav","navigationOptions","secondaryButton","getNavItem","navOption","disabled","label","exact","to","onClick","reverse","map","no","action"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,SAAQC,OAAR,QAAsB,kBAAtB;AAEA,SAAQC,OAAR,QAAsB,YAAtB;AAEA,SAAQC,WAAR,EAAqBC,kBAArB,QAA8C,WAA9C;AACA,SAAQC,MAAR,QAAqB,WAArB;AACA,SAAQC,iBAAR,QAAgC,sBAAhC;AACA,SAAQC,yBAAR,QAAwC,WAAxC;;;AAEA,IAAMC,YAAY,GAAGR,MAAM,CAACS,GAAV,2VAUdN,WAAW,CAACO,KAVE,EAadP,WAAW,CAACQ,MAbE,CAAlB;AAyBA,IAAMC,eAAe,GAAGZ,MAAM,CAACK,MAAD,CAAT,uHAIjBC,iBAAiB,CAACF,kBAAkB,CAACS,IAApB,EAA0B,OAA1B,CAJA,CAArB;;AAYA,IAAMC,YAAY,GAAG,SAAfA,YAAe,OAA8E;AAAA,MAA3EC,iBAA2E,QAA3EA,iBAA2E;AAAA,MAAxDC,eAAwD,QAAxDA,eAAwD;;AACjG,MAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,SAAD,EAA0B;AAC3C,QAAIA,SAAJ,aAAIA,SAAJ,eAAIA,SAAS,CAAEC,QAAf,EAAyB;AACvB,0BACE,KAAC,OAAD;AAAS,QAAA,EAAE,EAAEd,MAAb;AAAqB,QAAA,SAAS,EAAC,UAA/B;AAAA,kBACGa,SADH,aACGA,SADH,uBACGA,SAAS,CAAEE;AADd,SAA+CF,SAA/C,aAA+CA,SAA/C,uBAA+CA,SAAS,CAAEE,KAA1D,CADF;AAKD,KAND,MAMO;AACL,0BACE,KAAC,OAAD;AACE,QAAA,EAAE,EAAEnB,OADN;AAEE,QAAA,KAAK,EAAEiB,SAAF,aAAEA,SAAF,uBAAEA,SAAS,CAAEG,KAFpB;AAGE,QAAA,EAAE,EAAE,CAAAH,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAEI,EAAX,KAAiB,EAHvB;AAKE,QAAA,WAAW,EAAEf,yBALf;AAME,QAAA,OAAO,EAAE,mBAAM;AACb,cAAIW,SAAJ,aAAIA,SAAJ,eAAIA,SAAS,CAAEK,OAAf,EAAwB;AACtBL,YAAAA,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAEK,OAAX;AACD;AACF,SAVH;AAAA,kBAWGL,SAXH,aAWGA,SAXH,uBAWGA,SAAS,CAAEE;AAXd,SAIOF,SAJP,aAIOA,SAJP,uBAIOA,SAAS,CAAEE,KAJlB,CADF;AAeD;AACF,GAxBD;;AAyBA,sBACE,MAAC,YAAD;AAAA,eACGL,iBADH,aACGA,iBADH,uBACGA,iBAAiB,CAAES,OAAnB,GAA6BC,GAA7B,CAAiC,UAAAC,EAAE;AAAA,aAAIT,UAAU,CAACS,EAAD,CAAd;AAAA,KAAnC,CADH,EAGGV,eAAe,iBACd,KAAC,eAAD;AAAiB,MAAA,OAAO,EAAC,WAAzB;AAAqC,MAAA,OAAO,EAAEA,eAAF,aAAEA,eAAF,uBAAEA,eAAe,CAAEW,MAA/D;AAAA,gBACGX,eAAe,CAACI;AADnB,MAJJ;AAAA,IADF;AAWD,CArCD;;;AAJEL,EAAAA,iB;;AA2CF,eAAeD,YAAf","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {NavLink} from 'react-router-dom';\n\nimport {NavItem} from '../NavItem';\nimport {NavButton, NavOption} from '../types';\nimport {BREAKPOINTS, ComponentTextStyle} from '../styles';\nimport {Button} from '../Button';\nimport {ComponentMStyling} from '../styles/typography';\nimport {defaultOnMouseDownHandler} from '../common';\n\nconst NavContainer = styled.div`\n display: flex;\n margin: auto 0 auto auto;\n align-items: center;\n height: 48px;\n \n a {\n text-decoration: none;\n }\n\n ${BREAKPOINTS.SMALL} {\n height: 56px;\n }\n ${BREAKPOINTS.MEDIUM} {\n height: 64px;\n }\n\n button,\n div {\n &:hover {\n cursor: pointer;\n }\n }\n`;\n\nconst SecondaryButton = styled(Button)`\n height: 40px;\n margin: 0 8px;\n\n ${ComponentMStyling(ComponentTextStyle.Bold, 'unset')}\n`;\n\ntype Props = {\n navigationOptions?: NavOption[];\n secondaryButton?: NavButton;\n};\n\nconst RightSideNav = ({ navigationOptions, secondaryButton }: Props): React.ReactElement<Props> => {\n const getNavItem = (navOption: NavOption) => {\n if (navOption?.disabled) {\n return (\n <NavItem as={Button} className=\"disabled\" key={navOption?.label}>\n {navOption?.label}\n </NavItem>\n );\n } else {\n return (\n <NavItem\n as={NavLink}\n exact={navOption?.exact}\n to={navOption?.to || ''}\n key={navOption?.label}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (navOption?.onClick) {\n navOption?.onClick();\n }\n }}>\n {navOption?.label}\n </NavItem>\n );\n }\n };\n return (\n <NavContainer>\n {navigationOptions?.reverse().map(no => getNavItem(no))}\n\n {secondaryButton && (\n <SecondaryButton variant=\"secondary\" onClick={secondaryButton?.action}>\n {secondaryButton.label}\n </SecondaryButton>\n )}\n </NavContainer>\n );\n};\n\nexport default RightSideNav;\n"],"file":"RightSideNav.js"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.default = void 0;
|
|
11
|
+
|
|
12
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
+
|
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
+
|
|
16
|
+
var React = _interopRequireWildcard(require("react"));
|
|
17
|
+
|
|
18
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
|
+
|
|
20
|
+
var _reactRouterDom = require("react-router-dom");
|
|
21
|
+
|
|
22
|
+
var _styles = require("../../styles");
|
|
23
|
+
|
|
24
|
+
var _SystemIcons = require("../../icons/systemicons/SystemIcons");
|
|
25
|
+
|
|
26
|
+
var _typography = require("../../styles/typography");
|
|
27
|
+
|
|
28
|
+
var _common = require("../../common");
|
|
29
|
+
|
|
30
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
31
|
+
|
|
32
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
33
|
+
|
|
34
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
35
|
+
|
|
36
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
|
+
|
|
38
|
+
var LinkStyles = (0, _styledComponents.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n border: none;\n background: transparent;\n padding: 16px 25px;\n\n text-decoration: none;\n text-align: left;\n align-items: center;\n display: flex;\n\n ", "\n svg {\n margin-right: 15px;\n color: ", ";\n }\n"])), (0, _typography.ComponentMStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.neutral_600), _styles.COLORS.neutral_600);
|
|
39
|
+
var InternalLink = (0, _styledComponents.default)(_reactRouterDom.NavLink)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n"])), LinkStyles);
|
|
40
|
+
|
|
41
|
+
var ExternalLink = _styledComponents.default.a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n"])), LinkStyles);
|
|
42
|
+
|
|
43
|
+
var IconsRightSide = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n margin: 0 0 0 auto;\n align-items: center;\n svg {\n margin-right: 0;\n }\n"])));
|
|
44
|
+
|
|
45
|
+
var MenuLink = function MenuLink(_ref) {
|
|
46
|
+
var to = _ref.to,
|
|
47
|
+
isExternal = _ref.isExternal,
|
|
48
|
+
menuText = _ref.menuText,
|
|
49
|
+
Icon = _ref.Icon,
|
|
50
|
+
notification = _ref.notification,
|
|
51
|
+
extendedMenu = _ref.extendedMenu,
|
|
52
|
+
_onClick = _ref.onClick;
|
|
53
|
+
|
|
54
|
+
var getRightSide = function getRightSide() {
|
|
55
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(IconsRightSide, {
|
|
56
|
+
children: [notification ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.Bullet, {
|
|
57
|
+
size: "24px",
|
|
58
|
+
color: _styles.COLORS.critical_500
|
|
59
|
+
}) : null, extendedMenu ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ChevronRight, {
|
|
60
|
+
size: "24px",
|
|
61
|
+
color: _styles.COLORS.neutral_600
|
|
62
|
+
}) : null]
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
|
|
67
|
+
children: isExternal ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(ExternalLink, {
|
|
68
|
+
href: to,
|
|
69
|
+
role: "menuitem",
|
|
70
|
+
className: "UserMenuLink",
|
|
71
|
+
onMouseDown: _common.defaultOnMouseDownHandler,
|
|
72
|
+
onClick: function onClick() {
|
|
73
|
+
if (_onClick) {
|
|
74
|
+
_onClick();
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
children: [Icon && /*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, {
|
|
78
|
+
size: "24px"
|
|
79
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
80
|
+
children: menuText
|
|
81
|
+
}), getRightSide()]
|
|
82
|
+
}, "ExternalLink_".concat(to)) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(InternalLink, {
|
|
83
|
+
to: to,
|
|
84
|
+
role: "menuitem",
|
|
85
|
+
className: "UserMenuLink",
|
|
86
|
+
onMouseDown: _common.defaultOnMouseDownHandler,
|
|
87
|
+
onClick: function onClick() {
|
|
88
|
+
if (_onClick) {
|
|
89
|
+
_onClick();
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
children: [Icon && /*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, {
|
|
93
|
+
size: "24px"
|
|
94
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
95
|
+
children: menuText
|
|
96
|
+
}), getRightSide()]
|
|
97
|
+
}, "InternalLink_".concat(to))
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
MenuLink.propTypes = {
|
|
102
|
+
to: _propTypes.default.string.isRequired,
|
|
103
|
+
menuText: _propTypes.default.string.isRequired,
|
|
104
|
+
isExternal: _propTypes.default.bool,
|
|
105
|
+
Icon: _propTypes.default.any,
|
|
106
|
+
notification: _propTypes.default.bool,
|
|
107
|
+
extendedMenu: _propTypes.default.bool,
|
|
108
|
+
onClick: _propTypes.default.func
|
|
109
|
+
};
|
|
110
|
+
var _default = MenuLink;
|
|
111
|
+
exports.default = _default;
|
|
112
|
+
//# sourceMappingURL=MenuLink.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/GlobalNavigationBar/UserMenu/MenuLink.tsx"],"names":["LinkStyles","css","ComponentTextStyle","Regular","COLORS","neutral_600","InternalLink","NavLink","ExternalLink","styled","a","IconsRightSide","div","MenuLink","to","isExternal","menuText","Icon","notification","extendedMenu","onClick","getRightSide","critical_500","defaultOnMouseDownHandler"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,UAAU,OAAGC,qBAAH,yTAUZ,mCAAkBC,2BAAmBC,OAArC,EAA8CC,eAAOC,WAArD,CAVY,EAaHD,eAAOC,WAbJ,CAAhB;AAiBA,IAAMC,YAAY,GAAG,+BAAOC,uBAAP,CAAH,iGACdP,UADc,CAAlB;;AAIA,IAAMQ,YAAY,GAAGC,0BAAOC,CAAV,iGACdV,UADc,CAAlB;;AAIA,IAAMW,cAAc,GAAGF,0BAAOG,GAAV,0KAApB;;AAkBA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,OAA4F;AAAA,MAAzFC,EAAyF,QAAzFA,EAAyF;AAAA,MAArFC,UAAqF,QAArFA,UAAqF;AAAA,MAAzEC,QAAyE,QAAzEA,QAAyE;AAAA,MAA/DC,IAA+D,QAA/DA,IAA+D;AAAA,MAAzDC,YAAyD,QAAzDA,YAAyD;AAAA,MAA3CC,YAA2C,QAA3CA,YAA2C;AAAA,MAA7BC,QAA6B,QAA7BA,OAA6B;;AAC3G,MAAMC,YAAY,GAAG,SAAfA,YAAe;AAAA,wBACnB,sBAAC,cAAD;AAAA,iBACGH,YAAY,gBAAG,qBAAC,mBAAD;AAAQ,QAAA,IAAI,EAAC,MAAb;AAAoB,QAAA,KAAK,EAAEd,eAAOkB;AAAlC,QAAH,GAAwD,IADvE,EAEGH,YAAY,gBAAG,qBAAC,yBAAD;AAAc,QAAA,IAAI,EAAC,MAAnB;AAA0B,QAAA,KAAK,EAAEf,eAAOC;AAAxC,QAAH,GAA6D,IAF5E;AAAA,MADmB;AAAA,GAArB;;AAMA,sBACE;AAAA,cACGU,UAAU,gBACT,sBAAC,YAAD;AAEE,MAAA,IAAI,EAAED,EAFR;AAGE,MAAA,IAAI,EAAC,UAHP;AAIE,MAAA,SAAS,EAAC,cAJZ;AAKE,MAAA,WAAW,EAAES,iCALf;AAME,MAAA,OAAO,EAAE,mBAAM;AACb,YAAIH,QAAJ,EAAa;AACXA,UAAAA,QAAO;AACR;AACF,OAVH;AAAA,iBAWGH,IAAI,iBAAI,qBAAC,IAAD;AAAM,QAAA,IAAI,EAAC;AAAX,QAXX,eAYE;AAAA,kBAAOD;AAAP,QAZF,EAaGK,YAAY,EAbf;AAAA,8BACuBP,EADvB,EADS,gBAiBT,sBAAC,YAAD;AAEE,MAAA,EAAE,EAAEA,EAFN;AAGE,MAAA,IAAI,EAAC,UAHP;AAIE,MAAA,SAAS,EAAC,cAJZ;AAKE,MAAA,WAAW,EAAES,iCALf;AAME,MAAA,OAAO,EAAE,mBAAM;AACb,YAAIH,QAAJ,EAAa;AACXA,UAAAA,QAAO;AACR;AACF,OAVH;AAAA,iBAWGH,IAAI,iBAAI,qBAAC,IAAD;AAAM,QAAA,IAAI,EAAC;AAAX,QAXX,eAYE;AAAA,kBAAOD;AAAP,QAZF,EAaGK,YAAY,EAbf;AAAA,8BACuBP,EADvB;AAlBJ,IADF;AAqCD,CA5CD;;;AATEA,EAAAA,E;AACAE,EAAAA,Q;AACAD,EAAAA,U;AACAE,EAAAA,I;AACAC,EAAAA,Y;AACAC,EAAAA,Y;AACAC,EAAAA,O;;eAiDaP,Q","sourcesContent":["import * as React from 'react';\nimport styled, {css} from 'styled-components';\nimport {NavLink} from 'react-router-dom';\nimport {COLORS, ComponentTextStyle} from '../../styles';\nimport {Bullet, ChevronRight} from '../../icons/systemicons/SystemIcons';\nimport {ComponentMStyling} from '../../styles/typography';\nimport {defaultOnMouseDownHandler} from '../../common';\n\nconst LinkStyles = css`\n border: none;\n background: transparent;\n padding: 16px 25px;\n\n text-decoration: none;\n text-align: left;\n align-items: center;\n display: flex;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n svg {\n margin-right: 15px;\n color: ${COLORS.neutral_600};\n }\n`;\n\nconst InternalLink = styled(NavLink)`\n ${LinkStyles};\n`;\n\nconst ExternalLink = styled.a`\n ${LinkStyles};\n`;\n\nconst IconsRightSide = styled.div`\n margin: 0 0 0 auto;\n align-items: center;\n svg {\n margin-right: 0;\n }\n`;\n\ninterface MenuLinkProps {\n to: string;\n menuText: string;\n isExternal?: boolean;\n Icon?: any;\n notification?: boolean;\n extendedMenu?: boolean;\n onClick?: () => void;\n}\n\nconst MenuLink = ({ to, isExternal, menuText, Icon, notification, extendedMenu, onClick }: MenuLinkProps) => {\n const getRightSide = () => (\n <IconsRightSide>\n {notification ? <Bullet size=\"24px\" color={COLORS.critical_500} /> : null}\n {extendedMenu ? <ChevronRight size=\"24px\" color={COLORS.neutral_600} /> : null}\n </IconsRightSide>\n );\n return (\n <li>\n {isExternal ? (\n <ExternalLink\n key={`ExternalLink_${to}`}\n href={to}\n role=\"menuitem\"\n className=\"UserMenuLink\"\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (onClick) {\n onClick();\n }\n }}>\n {Icon && <Icon size=\"24px\" />}\n <span>{menuText}</span>\n {getRightSide()}\n </ExternalLink>\n ) : (\n <InternalLink\n key={`InternalLink_${to}`}\n to={to}\n role=\"menuitem\"\n className=\"UserMenuLink\"\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (onClick) {\n onClick();\n }\n }}>\n {Icon && <Icon size=\"24px\" />}\n <span>{menuText}</span>\n {getRightSide()}\n </InternalLink>\n )}\n </li>\n );\n};\n\nexport default MenuLink;\n"],"file":"MenuLink.cjs"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface MenuLinkProps {
|
|
2
|
+
to: string;
|
|
3
|
+
menuText: string;
|
|
4
|
+
isExternal?: boolean;
|
|
5
|
+
Icon?: any;
|
|
6
|
+
notification?: boolean;
|
|
7
|
+
extendedMenu?: boolean;
|
|
8
|
+
onClick?: () => void;
|
|
9
|
+
}
|
|
10
|
+
declare const MenuLink: ({ to, isExternal, menuText, Icon, notification, extendedMenu, onClick }: MenuLinkProps) => JSX.Element;
|
|
11
|
+
export default MenuLink;
|