@laerdal/life-react-components 1.8.0 → 1.9.0-dev.1.full
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/Breadcrumb/Breadcrumb.cjs +1 -0
- package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.js +1 -0
- package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/Button/Button.cjs +4 -4
- package/dist/Button/Button.cjs.map +1 -1
- package/dist/Button/Button.d.ts +1 -1
- package/dist/Button/Button.js +4 -4
- package/dist/Button/Button.js.map +1 -1
- package/dist/Button/DualFunctionButton.cjs +1 -1
- package/dist/Button/DualFunctionButton.cjs.map +1 -1
- package/dist/Button/DualFunctionButton.js +1 -1
- package/dist/Button/DualFunctionButton.js.map +1 -1
- package/dist/Button/Iconbutton.cjs +8 -2
- package/dist/Button/Iconbutton.cjs.map +1 -1
- package/dist/Button/Iconbutton.d.ts +3 -0
- package/dist/Button/Iconbutton.js +8 -2
- package/dist/Button/Iconbutton.js.map +1 -1
- package/dist/Chips/ChipStyles.cjs +1 -1
- package/dist/Chips/ChipStyles.cjs.map +1 -1
- package/dist/Chips/ChipStyles.js +1 -1
- package/dist/Chips/ChipStyles.js.map +1 -1
- package/dist/Chips/ChipTypes.d.ts +3 -3
- package/dist/Chips/ChoiceChips.cjs +1 -1
- package/dist/Chips/ChoiceChips.cjs.map +1 -1
- package/dist/Chips/ChoiceChips.js +1 -1
- package/dist/Chips/ChoiceChips.js.map +1 -1
- package/dist/Chips/FilterChip.cjs +2 -2
- package/dist/Chips/FilterChip.cjs.map +1 -1
- package/dist/Chips/FilterChip.js +2 -2
- package/dist/Chips/FilterChip.js.map +1 -1
- package/dist/Chips/InputChip.cjs.map +1 -1
- package/dist/Chips/InputChip.js +1 -1
- package/dist/Chips/InputChip.js.map +1 -1
- package/dist/ChipsInput/ChipDropdownInput.cjs +5 -6
- package/dist/ChipsInput/ChipDropdownInput.cjs.map +1 -1
- package/dist/ChipsInput/ChipDropdownInput.d.ts +0 -1
- package/dist/ChipsInput/ChipDropdownInput.js +6 -7
- package/dist/ChipsInput/ChipDropdownInput.js.map +1 -1
- package/dist/ChipsInput/ChipInput.cjs +0 -2
- package/dist/ChipsInput/ChipInput.cjs.map +1 -1
- package/dist/ChipsInput/ChipInput.js +0 -2
- package/dist/ChipsInput/ChipInput.js.map +1 -1
- package/dist/ChipsInput/ChipInputField.cjs +11 -18
- package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
- package/dist/ChipsInput/ChipInputField.d.ts +1 -1
- package/dist/ChipsInput/ChipInputField.js +13 -20
- package/dist/ChipsInput/ChipInputField.js.map +1 -1
- package/dist/ChipsInput/ChipInputTypes.d.ts +1 -1
- package/dist/Dropdown/BasicDropdown.cjs +9 -11
- package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
- package/dist/Dropdown/BasicDropdown.d.ts +2 -2
- package/dist/Dropdown/BasicDropdown.js +10 -12
- package/dist/Dropdown/BasicDropdown.js.map +1 -1
- package/dist/Dropdown/CommonStyling.cjs +25 -13
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.d.ts +7 -6
- package/dist/Dropdown/CommonStyling.js +11 -11
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownButton.cjs +76 -18
- package/dist/Dropdown/DropdownButton.cjs.map +1 -1
- package/dist/Dropdown/DropdownButton.d.ts +1 -1
- package/dist/Dropdown/DropdownButton.js +73 -19
- package/dist/Dropdown/DropdownButton.js.map +1 -1
- package/dist/Dropdown/DropdownButtonTypes.d.ts +16 -5
- package/dist/Dropdown/DropdownFilter.cjs +93 -151
- package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
- package/dist/Dropdown/DropdownFilter.d.ts +9 -15
- package/dist/Dropdown/DropdownFilter.js +94 -152
- package/dist/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs +107 -176
- package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs.map +1 -1
- package/dist/GlobalNavigationBar/GlobalNavigationBar.d.ts +13 -27
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js +106 -176
- package/dist/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
- package/dist/GlobalNavigationBar/Logo.cjs +3 -5
- 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/NavigationHelper.cjs +38 -0
- package/dist/GlobalNavigationBar/NavigationHelper.cjs.map +1 -0
- package/dist/GlobalNavigationBar/NavigationHelper.d.ts +4 -0
- package/dist/GlobalNavigationBar/NavigationHelper.js +27 -0
- package/dist/GlobalNavigationBar/NavigationHelper.js.map +1 -0
- package/dist/GlobalNavigationBar/desktop/DesktopActions.cjs +129 -0
- package/dist/GlobalNavigationBar/desktop/DesktopActions.cjs.map +1 -0
- package/dist/GlobalNavigationBar/desktop/DesktopActions.d.ts +15 -0
- package/dist/GlobalNavigationBar/desktop/DesktopActions.js +99 -0
- package/dist/GlobalNavigationBar/desktop/DesktopActions.js.map +1 -0
- package/dist/GlobalNavigationBar/{ExtendedMainMenu.cjs → desktop/ExtendedMainMenu.cjs} +7 -9
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/{ExtendedMainMenu.d.ts → desktop/ExtendedMainMenu.d.ts} +2 -2
- package/dist/GlobalNavigationBar/{ExtendedMainMenu.js → desktop/ExtendedMainMenu.js} +6 -6
- package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/{MainMenu.cjs → desktop/MainMenu.cjs} +17 -21
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/desktop/MainMenu.d.ts +8 -0
- package/dist/GlobalNavigationBar/{MainMenu.js → desktop/MainMenu.js} +17 -21
- package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/{RightSideNav.cjs → desktop/RightSideNav.cjs} +22 -26
- package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs.map +1 -0
- package/dist/GlobalNavigationBar/desktop/RightSideNav.d.ts +8 -0
- package/dist/GlobalNavigationBar/desktop/RightSideNav.js +59 -0
- package/dist/GlobalNavigationBar/desktop/RightSideNav.js.map +1 -0
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +204 -0
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -0
- package/dist/GlobalNavigationBar/desktop/UserMenu.d.ts +7 -0
- package/dist/GlobalNavigationBar/desktop/UserMenu.js +163 -0
- package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -0
- package/dist/GlobalNavigationBar/index.cjs +15 -18
- 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 +15 -21
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.d.ts +3 -6
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js +14 -15
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +117 -221
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.d.ts +6 -25
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js +116 -216
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs +221 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs.map +1 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.d.ts +11 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js +184 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js.map +1 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs +160 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs.map +1 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.d.ts +12 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js +139 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js.map +1 -0
- package/dist/GlobalNavigationBar/types.cjs +6 -0
- package/dist/GlobalNavigationBar/types.cjs.map +1 -0
- package/dist/GlobalNavigationBar/types.d.ts +120 -0
- package/dist/GlobalNavigationBar/types.js +2 -0
- package/dist/GlobalNavigationBar/types.js.map +1 -0
- package/dist/InputFields/Checkbox.cjs +10 -10
- package/dist/InputFields/Checkbox.cjs.map +1 -1
- package/dist/InputFields/Checkbox.d.ts +3 -3
- package/dist/InputFields/Checkbox.js +10 -10
- package/dist/InputFields/Checkbox.js.map +1 -1
- package/dist/InputFields/DatepickerField.cjs +15 -17
- package/dist/InputFields/DatepickerField.cjs.map +1 -1
- package/dist/InputFields/DatepickerField.d.ts +3 -3
- package/dist/InputFields/DatepickerField.js +15 -21
- package/dist/InputFields/DatepickerField.js.map +1 -1
- package/dist/InputFields/Label.cjs +24 -14
- package/dist/InputFields/Label.cjs.map +1 -1
- package/dist/InputFields/Label.js +24 -16
- package/dist/InputFields/Label.js.map +1 -1
- package/dist/InputFields/NumberField.cjs +288 -0
- package/dist/InputFields/NumberField.cjs.map +1 -0
- package/dist/InputFields/NumberField.d.ts +21 -0
- package/dist/InputFields/NumberField.js +252 -0
- package/dist/InputFields/NumberField.js.map +1 -0
- package/dist/InputFields/PasswordField.cjs +23 -18
- package/dist/InputFields/PasswordField.cjs.map +1 -1
- package/dist/InputFields/PasswordField.d.ts +2 -3
- package/dist/InputFields/PasswordField.js +21 -16
- package/dist/InputFields/PasswordField.js.map +1 -1
- package/dist/InputFields/QuickSearch.cjs +2 -3
- package/dist/InputFields/QuickSearch.cjs.map +1 -1
- package/dist/InputFields/QuickSearch.js +2 -3
- package/dist/InputFields/QuickSearch.js.map +1 -1
- package/dist/InputFields/RadioButton.cjs +5 -7
- package/dist/InputFields/RadioButton.cjs.map +1 -1
- package/dist/InputFields/RadioButton.d.ts +1 -1
- package/dist/InputFields/RadioButton.js +5 -5
- package/dist/InputFields/RadioButton.js.map +1 -1
- package/dist/InputFields/SearchBar.cjs +2 -2
- package/dist/InputFields/SearchBar.cjs.map +1 -1
- package/dist/InputFields/SearchBar.js +3 -3
- package/dist/InputFields/SearchBar.js.map +1 -1
- package/dist/InputFields/TextField.cjs +35 -40
- package/dist/InputFields/TextField.cjs.map +1 -1
- package/dist/InputFields/TextField.d.ts +6 -6
- package/dist/InputFields/TextField.js +35 -41
- package/dist/InputFields/TextField.js.map +1 -1
- package/dist/InputFields/Textarea.cjs +26 -31
- package/dist/InputFields/Textarea.cjs.map +1 -1
- package/dist/InputFields/Textarea.d.ts +1 -12
- package/dist/InputFields/Textarea.js +31 -33
- package/dist/InputFields/Textarea.js.map +1 -1
- package/dist/InputFields/components/SearchBarInput.cjs +1 -1
- package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
- package/dist/InputFields/components/SearchBarInput.js +1 -1
- package/dist/InputFields/components/SearchBarInput.js.map +1 -1
- package/dist/InputFields/components/SearchField.cjs +1 -3
- package/dist/InputFields/components/SearchField.cjs.map +1 -1
- package/dist/InputFields/components/SearchField.js +1 -2
- package/dist/InputFields/components/SearchField.js.map +1 -1
- package/dist/InputFields/index.cjs +8 -0
- package/dist/InputFields/index.cjs.map +1 -1
- package/dist/InputFields/index.d.ts +2 -1
- package/dist/InputFields/index.js +2 -1
- package/dist/InputFields/index.js.map +1 -1
- package/dist/InputFields/styling.cjs +22 -28
- package/dist/InputFields/styling.cjs.map +1 -1
- package/dist/InputFields/styling.d.ts +7 -7
- package/dist/InputFields/styling.js +19 -23
- package/dist/InputFields/styling.js.map +1 -1
- package/dist/InputFields/types.cjs +6 -0
- package/dist/InputFields/types.cjs.map +1 -0
- package/dist/InputFields/types.d.ts +38 -0
- package/dist/InputFields/types.js +2 -0
- package/dist/InputFields/types.js.map +1 -0
- package/dist/List/ListRow.cjs +1 -0
- package/dist/List/ListRow.cjs.map +1 -1
- package/dist/List/ListRow.js +1 -0
- package/dist/List/ListRow.js.map +1 -1
- package/dist/MenuItem/MenuItem.cjs +26 -11
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.d.ts +6 -4
- package/dist/MenuItem/MenuItem.js +26 -11
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/MenuItem/index.cjs.map +1 -1
- package/dist/MenuItem/index.js.map +1 -1
- package/dist/Modals/ModalNote.cjs +1 -1
- package/dist/Modals/ModalNote.cjs.map +1 -1
- package/dist/Modals/ModalNote.js +2 -2
- package/dist/Modals/ModalNote.js.map +1 -1
- package/dist/Popover/Popover.cjs +267 -0
- package/dist/Popover/Popover.cjs.map +1 -0
- package/dist/Popover/Popover.d.ts +26 -0
- package/dist/Popover/Popover.js +231 -0
- package/dist/Popover/Popover.js.map +1 -0
- package/dist/Popover/index.cjs +16 -0
- package/dist/Popover/index.cjs.map +1 -0
- package/dist/Popover/index.d.ts +1 -0
- package/dist/Popover/index.js +2 -0
- package/dist/Popover/index.js.map +1 -0
- package/dist/ProfileButton/ProfileButton.cjs +105 -0
- package/dist/ProfileButton/ProfileButton.cjs.map +1 -0
- package/dist/ProfileButton/ProfileButton.d.ts +14 -0
- package/dist/ProfileButton/ProfileButton.js +79 -0
- package/dist/ProfileButton/ProfileButton.js.map +1 -0
- package/dist/ProfileButton/index.cjs +16 -0
- package/dist/ProfileButton/index.cjs.map +1 -0
- package/dist/ProfileButton/index.d.ts +1 -0
- package/dist/ProfileButton/index.js +2 -0
- package/dist/ProfileButton/index.js.map +1 -0
- package/dist/QuizButton/QuizButton.cjs +1 -1
- package/dist/QuizButton/QuizButton.cjs.map +1 -1
- package/dist/QuizButton/QuizButton.js +1 -1
- package/dist/QuizButton/QuizButton.js.map +1 -1
- package/dist/Switcher/MobileSwitcherMenu.cjs +24 -78
- package/dist/Switcher/MobileSwitcherMenu.cjs.map +1 -1
- package/dist/Switcher/MobileSwitcherMenu.d.ts +6 -5
- package/dist/Switcher/MobileSwitcherMenu.js +26 -70
- package/dist/Switcher/MobileSwitcherMenu.js.map +1 -1
- package/dist/Table/Table.cjs +22 -22
- package/dist/Table/Table.cjs.map +1 -1
- package/dist/Table/Table.js +22 -22
- package/dist/Table/Table.js.map +1 -1
- package/dist/Table/TableBody.cjs +1 -1
- package/dist/Table/TableBody.cjs.map +1 -1
- package/dist/Table/TableBody.js +1 -1
- package/dist/Table/TableBody.js.map +1 -1
- package/dist/Table/TableFooter.cjs +12 -14
- package/dist/Table/TableFooter.cjs.map +1 -1
- package/dist/Table/TableFooter.js +13 -15
- package/dist/Table/TableFooter.js.map +1 -1
- package/dist/Table/TableHeaders.cjs +1 -0
- package/dist/Table/TableHeaders.cjs.map +1 -1
- package/dist/Table/TableHeaders.js +1 -0
- package/dist/Table/TableHeaders.js.map +1 -1
- package/dist/Tabs/TabLink.cjs +2 -3
- package/dist/Tabs/TabLink.cjs.map +1 -1
- package/dist/Tabs/TabLink.d.ts +1 -2
- package/dist/Tabs/TabLink.js +2 -3
- package/dist/Tabs/TabLink.js.map +1 -1
- package/dist/Tile/Tile.cjs +61 -0
- package/dist/Tile/Tile.cjs.map +1 -0
- package/dist/Tile/Tile.d.ts +4 -0
- package/dist/Tile/Tile.js +43 -0
- package/dist/Tile/Tile.js.map +1 -0
- package/dist/Tile/TileBody.cjs +37 -0
- package/dist/Tile/TileBody.cjs.map +1 -0
- package/dist/Tile/TileBody.d.ts +6 -0
- package/dist/Tile/TileBody.js +22 -0
- package/dist/Tile/TileBody.js.map +1 -0
- package/dist/Tile/TileCommonItems.cjs +165 -0
- package/dist/Tile/TileCommonItems.cjs.map +1 -0
- package/dist/Tile/TileCommonItems.d.ts +9 -0
- package/dist/Tile/TileCommonItems.js +126 -0
- package/dist/Tile/TileCommonItems.js.map +1 -0
- package/dist/Tile/TileFooter.cjs +48 -0
- package/dist/Tile/TileFooter.cjs.map +1 -0
- package/dist/Tile/TileFooter.d.ts +7 -0
- package/dist/Tile/TileFooter.js +32 -0
- package/dist/Tile/TileFooter.js.map +1 -0
- package/dist/Tile/TileHeader.cjs +90 -0
- package/dist/Tile/TileHeader.cjs.map +1 -0
- package/dist/Tile/TileHeader.d.ts +7 -0
- package/dist/Tile/TileHeader.js +68 -0
- package/dist/Tile/TileHeader.js.map +1 -0
- package/dist/Tile/TileTypes.cjs +6 -0
- package/dist/Tile/TileTypes.cjs.map +1 -0
- package/dist/Tile/TileTypes.d.ts +57 -0
- package/dist/Tile/TileTypes.js +2 -0
- package/dist/Tile/TileTypes.js.map +1 -0
- package/dist/Tile/index.cjs +33 -0
- package/dist/Tile/index.cjs.map +1 -0
- package/dist/Tile/index.d.ts +3 -0
- package/dist/Tile/index.js +4 -0
- package/dist/Tile/index.js.map +1 -0
- package/dist/common/StackState.cjs +47 -0
- package/dist/common/StackState.cjs.map +1 -0
- package/dist/common/StackState.d.ts +7 -0
- package/dist/common/StackState.js +30 -0
- package/dist/common/StackState.js.map +1 -0
- package/dist/hooks/useClickOutside.cjs +6 -2
- package/dist/hooks/useClickOutside.cjs.map +1 -1
- package/dist/hooks/useClickOutside.d.ts +1 -1
- package/dist/hooks/useClickOutside.js +6 -2
- package/dist/hooks/useClickOutside.js.map +1 -1
- package/dist/icons/contenticons/ContentIcons.cjs +3214 -3182
- package/dist/icons/contenticons/ContentIcons.cjs.map +1 -1
- package/dist/icons/contenticons/ContentIcons.d.ts +17 -0
- package/dist/icons/contenticons/ContentIcons.js +3341 -3365
- package/dist/icons/contenticons/ContentIcons.js.map +1 -1
- package/dist/icons/index.cjs +22 -69
- package/dist/icons/index.cjs.map +1 -1
- package/dist/icons/index.d.ts +1 -4
- package/dist/icons/index.js +19 -64
- package/dist/icons/index.js.map +1 -1
- package/dist/icons/systemicons/SystemIcons.cjs +3216 -2433
- package/dist/icons/systemicons/SystemIcons.cjs.map +1 -1
- package/dist/icons/systemicons/SystemIcons.d.ts +12 -2
- package/dist/icons/systemicons/SystemIcons.js +3016 -2267
- package/dist/icons/systemicons/SystemIcons.js.map +1 -1
- package/dist/index.cjs +56 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/styles/colors.cjs +1 -0
- package/dist/styles/colors.cjs.map +1 -1
- package/dist/styles/colors.d.ts +1 -0
- package/dist/styles/colors.js +1 -0
- package/dist/styles/colors.js.map +1 -1
- package/dist/styles/z-indexes.cjs +2 -1
- package/dist/styles/z-indexes.cjs.map +1 -1
- package/dist/styles/z-indexes.d.ts +1 -0
- package/dist/styles/z-indexes.js +2 -1
- package/dist/styles/z-indexes.js.map +1 -1
- package/dist/types.cjs +20 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.ts +10 -31
- package/dist/types.js +17 -0
- package/dist/types.js.map +1 -1
- package/package.json +13 -9
- package/dist/GlobalNavigationBar/Actions.cjs +0 -185
- package/dist/GlobalNavigationBar/Actions.cjs.map +0 -1
- package/dist/GlobalNavigationBar/Actions.d.ts +0 -13
- package/dist/GlobalNavigationBar/Actions.js +0 -160
- package/dist/GlobalNavigationBar/Actions.js.map +0 -1
- package/dist/GlobalNavigationBar/Avatar.cjs +0 -104
- package/dist/GlobalNavigationBar/Avatar.cjs.map +0 -1
- package/dist/GlobalNavigationBar/Avatar.d.ts +0 -15
- package/dist/GlobalNavigationBar/Avatar.js +0 -77
- package/dist/GlobalNavigationBar/Avatar.js.map +0 -1
- package/dist/GlobalNavigationBar/ExtendedMainMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/ExtendedMainMenu.js.map +0 -1
- package/dist/GlobalNavigationBar/MainMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/MainMenu.d.ts +0 -8
- package/dist/GlobalNavigationBar/MainMenu.js.map +0 -1
- package/dist/GlobalNavigationBar/RightSideNav.cjs.map +0 -1
- package/dist/GlobalNavigationBar/RightSideNav.d.ts +0 -8
- package/dist/GlobalNavigationBar/RightSideNav.js +0 -61
- package/dist/GlobalNavigationBar/RightSideNav.js.map +0 -1
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.cjs +0 -112
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.cjs.map +0 -1
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.d.ts +0 -11
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.js +0 -86
- package/dist/GlobalNavigationBar/UserMenu/MenuLink.js.map +0 -1
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.cjs +0 -178
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.d.ts +0 -16
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.js +0 -146
- package/dist/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +0 -1
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.cjs +0 -168
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.d.ts +0 -15
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.js +0 -135
- package/dist/GlobalNavigationBar/UserMenu/UserMenu.js.map +0 -1
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.cjs +0 -49
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.cjs.map +0 -1
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.d.ts +0 -6
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.js +0 -27
- package/dist/GlobalNavigationBar/mobile/ExitMenuButton.js.map +0 -1
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.cjs +0 -91
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.cjs.map +0 -1
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.d.ts +0 -13
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.js +0 -70
- package/dist/GlobalNavigationBar/mobile/MobileActionMenu.js.map +0 -1
|
@@ -1,38 +1,41 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
1
2
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
2
3
|
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
3
4
|
import _pt from "prop-types";
|
|
4
5
|
|
|
5
6
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
|
|
6
7
|
|
|
8
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
9
|
+
|
|
10
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
11
|
+
|
|
7
12
|
import * as React from 'react';
|
|
8
13
|
import styled from 'styled-components';
|
|
9
14
|
import Logo from './Logo';
|
|
10
|
-
import MainMenu from './MainMenu';
|
|
11
|
-
import Actions from './Actions';
|
|
15
|
+
import MainMenu from './desktop/MainMenu';
|
|
12
16
|
import { PageWidth } from '../Layouts';
|
|
13
17
|
import { COLORS, BREAKPOINTS } from '../styles';
|
|
14
|
-
import RightSideNav from './RightSideNav';
|
|
18
|
+
import RightSideNav from './desktop/RightSideNav';
|
|
15
19
|
import MobileMenu from './mobile/MobileMenu';
|
|
16
20
|
import { Menu } from '../icons/systemicons/SystemIcons';
|
|
17
|
-
import UserMenu from './
|
|
21
|
+
import UserMenu from './desktop/UserMenu';
|
|
18
22
|
import useClickOutside from '../hooks/useClickOutside';
|
|
19
|
-
import { Menu as MobileMenuWrapper } from './mobile/CommonStyles';
|
|
20
|
-
import { Z_INDEXES } from '../styles
|
|
23
|
+
import { fadeIn, fadeOut, Menu as MobileMenuWrapper } from './mobile/CommonStyles';
|
|
24
|
+
import { Z_INDEXES } from '../styles';
|
|
25
|
+
import { IconButton } from '../Button';
|
|
26
|
+
import DesktopActions from './desktop/DesktopActions';
|
|
27
|
+
import { usePreviousImmediate } from 'rooks';
|
|
21
28
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
22
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
23
29
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
|
-
|
|
30
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
31
|
+
var HeaderWrapper = styled.header(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n background: white;\n border-bottom: 1px solid ", ";\n\n z-index: ", ";\n position: relative;\n\n height: 48px;\n\n ", " {\n height: 56px;\n }\n\n ", " {\n height: 64px;\n }\n\n @media all and (-ms-high-contrast: none) {\n height: auto;\n }\n\n @media print {\n border-bottom: none;\n }\n"])), COLORS.neutral_200, Z_INDEXES.sticky_menu, BREAKPOINTS.SMALL, BREAKPOINTS.MEDIUM);
|
|
25
32
|
var RowLayout = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n"])));
|
|
26
|
-
var
|
|
27
|
-
var
|
|
28
|
-
|
|
29
|
-
},
|
|
30
|
-
var UserMenuWrapper = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n background-color: ", ";\n display: flex;\n margin-left: ", ";\n position: absolute;\n right: ", ";\n top: 56px;\n\n &:focus-within,\n &:hover,\n &.open {\n background: ", ";\n }\n"])), COLORS.white, function (props) {
|
|
31
|
-
return props.floatRight ? 'auto' : 'unset';
|
|
32
|
-
}, function (props) {
|
|
33
|
+
var HamburgerButton = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n ", " button {\n height: 56px;\n }\n\n ", " {\n display: none;\n }\n"])), BREAKPOINTS.SMALL, BREAKPOINTS.MEDIUM);
|
|
34
|
+
var RightSide = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n margin: 0 0 0 auto;\n\n &.reverse {\n ", " {\n order: -1;\n }\n\n flex-direction: row-reverse;\n }\n"])), HamburgerButton);
|
|
35
|
+
var MobileMenuBackdrop = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n background: rgba(0, 0, 0, 0.5);\n display: flex;\n position: fixed;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n height: 100vh;\n width: 100vw;\n overflow: hidden;\n z-index: ", ";\n visibility: hidden;\n\n\n &.open {\n visibility: visible;\n animation: ", " 0.3s ease-in-out;\n }\n\n &.closed {\n visibility: hidden;\n animation: ", " 0.3s ease-in-out;\n }\n\n ", " {\n visibility: hidden !important;\n }\n"])), Z_INDEXES.backdrop, fadeIn, fadeOut, BREAKPOINTS.MEDIUM);
|
|
36
|
+
var UserMenuWrapper = styled.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n background-color: ", ";\n display: flex;\n position: absolute;\n\n ", " {\n top: 56px;\n right: ", ";\n }\n"])), COLORS.white, BREAKPOINTS.MEDIUM, function (props) {
|
|
33
37
|
return props.offsetRight ? "".concat(window.innerWidth - props.offsetRight + 296, "px") : '10%';
|
|
34
|
-
}
|
|
35
|
-
var HamburgerButton = styled.button(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n border-width: 0;\n background-color: ", ";\n height: 48px;\n\n ", " {\n height: 56px;\n }\n ", " {\n height: 64px;\n }\n &:hover {\n cursor: pointer;\n }\n\n ", " {\n display: none;\n }\n"])), COLORS.white, BREAKPOINTS.SMALL, BREAKPOINTS.MEDIUM, BREAKPOINTS.MEDIUM);
|
|
38
|
+
});
|
|
36
39
|
|
|
37
40
|
/**
|
|
38
41
|
* @param props
|
|
@@ -40,91 +43,67 @@ var HamburgerButton = styled.button(_templateObject6 || (_templateObject6 = _tag
|
|
|
40
43
|
* @description This component is a global navigation header bar
|
|
41
44
|
*/
|
|
42
45
|
var GlobalNavigationBar = function GlobalNavigationBar(_ref) {
|
|
43
|
-
var
|
|
46
|
+
var _actionsRef$current, _actionsRef$current$b, _actionsRef$current$b2, _actionsRef$current$b3, _desktop$items, _desktop$buttons;
|
|
44
47
|
|
|
45
48
|
var name = _ref.name,
|
|
46
|
-
mainNavigationOptions = _ref.mainNavigationOptions,
|
|
47
|
-
secondaryNavigationOptions = _ref.secondaryNavigationOptions,
|
|
48
|
-
secondaryButton = _ref.secondaryButton,
|
|
49
|
-
actions = _ref.actions,
|
|
50
|
-
firstName = _ref.firstName,
|
|
51
|
-
lastName = _ref.lastName,
|
|
52
|
-
email = _ref.email,
|
|
53
|
-
organizationName = _ref.organizationName,
|
|
54
|
-
signout = _ref.signout,
|
|
55
49
|
isAuthenticated = _ref.isAuthenticated,
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
reverseRightSideOrder = _ref$reverseRightSide === void 0 ? false : _ref$reverseRightSide,
|
|
61
|
-
showBetaTag = _ref.showBetaTag,
|
|
62
|
-
accountSection = _ref.accountSection,
|
|
63
|
-
organizationSection = _ref.organizationSection,
|
|
64
|
-
supportSection = _ref.supportSection,
|
|
65
|
-
accountMenuHeader = _ref.accountMenuHeader,
|
|
66
|
-
signOutLabel = _ref.signOutLabel,
|
|
67
|
-
useUserMenu = _ref.useUserMenu,
|
|
68
|
-
mainLogoTo = _ref.mainLogoTo,
|
|
69
|
-
trackLogoClick = _ref.trackLogoClick,
|
|
50
|
+
logo = _ref.logo,
|
|
51
|
+
profile = _ref.profile,
|
|
52
|
+
mobile = _ref.mobile,
|
|
53
|
+
desktop = _ref.desktop,
|
|
70
54
|
testId = _ref.testId,
|
|
71
55
|
_ref$useMaxWidth = _ref.useMaxWidth,
|
|
72
56
|
useMaxWidth = _ref$useMaxWidth === void 0 ? true : _ref$useMaxWidth;
|
|
73
57
|
|
|
74
58
|
var _React$useState = React.useState(false),
|
|
75
59
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
76
|
-
|
|
77
|
-
|
|
60
|
+
showMobileMenu = _React$useState2[0],
|
|
61
|
+
setShowMobileMenu = _React$useState2[1];
|
|
62
|
+
|
|
63
|
+
var wasMobileMenuOpen = usePreviousImmediate(showMobileMenu);
|
|
78
64
|
|
|
79
65
|
var _React$useState3 = React.useState(false),
|
|
80
66
|
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
81
67
|
showUserMenu = _React$useState4[0],
|
|
82
68
|
setShowUserMenu = _React$useState4[1];
|
|
83
69
|
|
|
84
|
-
var
|
|
85
|
-
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
86
|
-
showMobileUserMenu = _React$useState6[0],
|
|
87
|
-
setShowMobileUserMenu = _React$useState6[1];
|
|
88
|
-
|
|
89
|
-
var menuRef = React.useRef(null);
|
|
70
|
+
var mobileMenuRef = React.useRef(null);
|
|
90
71
|
var userMenuRef = React.useRef(null);
|
|
72
|
+
var actionsRef = React.useRef(null);
|
|
73
|
+
var profileButtonRef = React.useRef();
|
|
74
|
+
profileButtonRef.current = actionsRef === null || actionsRef === void 0 ? void 0 : (_actionsRef$current = actionsRef.current) === null || _actionsRef$current === void 0 ? void 0 : (_actionsRef$current$b = _actionsRef$current.buttons) === null || _actionsRef$current$b === void 0 ? void 0 : (_actionsRef$current$b2 = _actionsRef$current$b.find(function (a) {
|
|
75
|
+
return a.type === 'profile';
|
|
76
|
+
})) === null || _actionsRef$current$b2 === void 0 ? void 0 : (_actionsRef$current$b3 = _actionsRef$current$b2.ref) === null || _actionsRef$current$b3 === void 0 ? void 0 : _actionsRef$current$b3.current;
|
|
77
|
+
var mobileMenuButtonRef = React.useRef(null);
|
|
91
78
|
var rightSideRef = React.useRef(null);
|
|
92
79
|
|
|
93
|
-
var _React$
|
|
94
|
-
_React$
|
|
95
|
-
avatarRight = _React$
|
|
96
|
-
setAvatarRight = _React$
|
|
97
|
-
|
|
98
|
-
var handleClickMenuAction = function handleClickMenuAction() {
|
|
99
|
-
setShowMenu(false);
|
|
100
|
-
};
|
|
80
|
+
var _React$useState5 = React.useState(0),
|
|
81
|
+
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
82
|
+
avatarRight = _React$useState6[0],
|
|
83
|
+
setAvatarRight = _React$useState6[1];
|
|
101
84
|
|
|
102
85
|
useClickOutside(userMenuRef, function () {
|
|
103
|
-
return
|
|
104
|
-
});
|
|
105
|
-
useClickOutside(
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
setShowMenu(false);
|
|
109
|
-
}
|
|
110
|
-
});
|
|
86
|
+
return setShowUserMenu(false);
|
|
87
|
+
}, [profileButtonRef]);
|
|
88
|
+
useClickOutside(mobileMenuRef, function () {
|
|
89
|
+
return setShowMobileMenu(false);
|
|
90
|
+
}, [mobileMenuButtonRef]);
|
|
111
91
|
React.useEffect(function () {
|
|
112
|
-
|
|
113
|
-
var _document, _document$getElementB, _document$getElementB2;
|
|
92
|
+
if (!profileButtonRef.current) return;
|
|
114
93
|
|
|
115
|
-
|
|
94
|
+
var handleResize = function handleResize() {
|
|
95
|
+
var _profileButtonRef$cur, _profileButtonRef$cur2;
|
|
116
96
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
}
|
|
97
|
+
var profileRightOffset = (_profileButtonRef$cur = profileButtonRef.current) === null || _profileButtonRef$cur === void 0 ? void 0 : (_profileButtonRef$cur2 = _profileButtonRef$cur.getBoundingClientRect()) === null || _profileButtonRef$cur2 === void 0 ? void 0 : _profileButtonRef$cur2.right;
|
|
98
|
+
setAvatarRight(profileRightOffset || 0);
|
|
120
99
|
};
|
|
121
100
|
|
|
122
101
|
handleResize();
|
|
123
102
|
window.addEventListener('resize', handleResize);
|
|
124
103
|
return function () {
|
|
125
104
|
return window.removeEventListener('resize', handleResize);
|
|
126
|
-
};
|
|
127
|
-
}, [
|
|
105
|
+
};
|
|
106
|
+
}, [profileButtonRef.current]);
|
|
128
107
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
129
108
|
children: [/*#__PURE__*/_jsx(HeaderWrapper, {
|
|
130
109
|
"data-testid": testId,
|
|
@@ -133,135 +112,86 @@ var GlobalNavigationBar = function GlobalNavigationBar(_ref) {
|
|
|
133
112
|
children: /*#__PURE__*/_jsxs(RowLayout, {
|
|
134
113
|
children: [/*#__PURE__*/_jsx(Logo, {
|
|
135
114
|
name: name || '',
|
|
136
|
-
showBetaTag: showBetaTag,
|
|
137
|
-
onClick:
|
|
138
|
-
to:
|
|
115
|
+
showBetaTag: logo === null || logo === void 0 ? void 0 : logo.showBetaTag,
|
|
116
|
+
onClick: logo === null || logo === void 0 ? void 0 : logo.onClick,
|
|
117
|
+
to: logo === null || logo === void 0 ? void 0 : logo.to
|
|
139
118
|
}), isAuthenticated && /*#__PURE__*/_jsx(MainMenu, {
|
|
140
|
-
|
|
119
|
+
items: (desktop === null || desktop === void 0 ? void 0 : desktop.items.filter(function (a) {
|
|
120
|
+
return !a.pinned;
|
|
121
|
+
})) || [],
|
|
141
122
|
rightSideRef: rightSideRef
|
|
142
123
|
}), /*#__PURE__*/_jsxs(RightSide, {
|
|
143
|
-
className: "
|
|
124
|
+
className: "".concat(desktop !== null && desktop !== void 0 && desktop.reverseRightSideOrder ? 'reverse' : ''),
|
|
144
125
|
ref: rightSideRef,
|
|
145
|
-
children: [
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
secondaryButton: secondaryButton
|
|
156
|
-
})]
|
|
157
|
-
}) : /*#__PURE__*/_jsxs(_Fragment, {
|
|
158
|
-
children: [/*#__PURE__*/_jsx(RightSideNav, {
|
|
159
|
-
navigationOptions: secondaryNavigationOptions,
|
|
160
|
-
secondaryButton: secondaryButton
|
|
161
|
-
}), /*#__PURE__*/_jsx(Actions, {
|
|
162
|
-
actions: actions,
|
|
163
|
-
firstName: firstName || '',
|
|
164
|
-
lastName: lastName || '',
|
|
165
|
-
hideOnLowWidth: true,
|
|
166
|
-
useUserMenu: useUserMenu,
|
|
167
|
-
setShowUserMenu: setShowUserMenu
|
|
168
|
-
})]
|
|
169
|
-
}), /*#__PURE__*/_jsx(HamburgerButton, {
|
|
170
|
-
onClick: function onClick() {
|
|
171
|
-
return setShowMenu(!showMenu);
|
|
126
|
+
children: [/*#__PURE__*/_jsx(RightSideNav, {
|
|
127
|
+
items: desktop === null || desktop === void 0 ? void 0 : (_desktop$items = desktop.items) === null || _desktop$items === void 0 ? void 0 : _desktop$items.filter(function (a) {
|
|
128
|
+
return a.pinned;
|
|
129
|
+
}),
|
|
130
|
+
action: desktop === null || desktop === void 0 ? void 0 : desktop.action
|
|
131
|
+
}), /*#__PURE__*/_jsx(DesktopActions, {
|
|
132
|
+
ref: actionsRef,
|
|
133
|
+
buttons: desktop === null || desktop === void 0 ? void 0 : desktop.buttons,
|
|
134
|
+
onShowUserMenu: function onShowUserMenu() {
|
|
135
|
+
return setShowUserMenu(!showUserMenu);
|
|
172
136
|
},
|
|
137
|
+
user: profile === null || profile === void 0 ? void 0 : profile.user
|
|
138
|
+
}), /*#__PURE__*/_jsx(HamburgerButton, {
|
|
173
139
|
hidden: !isAuthenticated,
|
|
174
|
-
children: /*#__PURE__*/_jsx(
|
|
175
|
-
|
|
140
|
+
children: /*#__PURE__*/_jsx(IconButton, {
|
|
141
|
+
action: function action() {
|
|
142
|
+
return setShowMobileMenu(!showMobileMenu);
|
|
143
|
+
},
|
|
144
|
+
ref: mobileMenuButtonRef,
|
|
145
|
+
shape: 'circular',
|
|
146
|
+
variant: 'secondary',
|
|
147
|
+
children: /*#__PURE__*/_jsx(Menu, {
|
|
148
|
+
size: "24px"
|
|
149
|
+
})
|
|
176
150
|
})
|
|
177
151
|
})]
|
|
178
152
|
})]
|
|
179
153
|
})
|
|
180
154
|
})
|
|
181
|
-
}), /*#__PURE__*/_jsx(
|
|
182
|
-
className:
|
|
183
|
-
isVisible: showMenu,
|
|
155
|
+
}), /*#__PURE__*/_jsx(MobileMenuBackdrop, {
|
|
156
|
+
className: showMobileMenu ? 'open' : !showUserMenu && wasMobileMenuOpen ? 'closed' : '',
|
|
184
157
|
children: /*#__PURE__*/_jsx(MobileMenuWrapper, {
|
|
185
|
-
ref:
|
|
186
|
-
onClick: function onClick() {},
|
|
158
|
+
ref: mobileMenuRef,
|
|
187
159
|
role: "menu",
|
|
188
160
|
"aria-labelledby": "UserMenuButton",
|
|
189
|
-
children: /*#__PURE__*/_jsx(MobileMenu, {
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
handleClickMenuAction();
|
|
161
|
+
children: /*#__PURE__*/_jsx(MobileMenu, _objectSpread(_objectSpread({}, mobile), {}, {
|
|
162
|
+
show: showMobileMenu,
|
|
163
|
+
onClose: function onClose() {
|
|
164
|
+
return setShowMobileMenu(false);
|
|
194
165
|
},
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
secondaryButton: secondaryButton,
|
|
198
|
-
firstName: firstName || '',
|
|
199
|
-
lastName: lastName || '',
|
|
200
|
-
email: email || '',
|
|
201
|
-
signout: signout,
|
|
202
|
-
notifications: notifications,
|
|
203
|
-
actions: mobileActions,
|
|
204
|
-
switcherAction: switcherAction,
|
|
205
|
-
isAuthenticated: isAuthenticated,
|
|
206
|
-
accountSection: accountSection || [],
|
|
207
|
-
organizationSection: organizationSection || [],
|
|
208
|
-
supportSection: supportSection || [],
|
|
209
|
-
accountMenuHeader: accountMenuHeader || '',
|
|
210
|
-
signOutLabel: signOutLabel || '',
|
|
211
|
-
organizationName: organizationName || '',
|
|
212
|
-
useUserMenu: useUserMenu,
|
|
213
|
-
showUserMenu: showMobileUserMenu,
|
|
214
|
-
setShowUserMenu: setShowMobileUserMenu
|
|
215
|
-
})
|
|
166
|
+
profile: profile
|
|
167
|
+
}))
|
|
216
168
|
})
|
|
217
|
-
}),
|
|
169
|
+
}), (desktop === null || desktop === void 0 ? void 0 : (_desktop$buttons = desktop.buttons) === null || _desktop$buttons === void 0 ? void 0 : _desktop$buttons.some(function (a) {
|
|
170
|
+
return a.type === 'profile';
|
|
171
|
+
})) && !!profile && /*#__PURE__*/_jsx(UserMenuWrapper, {
|
|
218
172
|
ref: userMenuRef,
|
|
219
|
-
className: showUserMenu ? 'open' : 'closed',
|
|
220
|
-
floatRight: false,
|
|
221
173
|
offsetRight: avatarRight,
|
|
222
174
|
"data-testid": "testUserMenuWrapper",
|
|
223
|
-
children: /*#__PURE__*/_jsx(UserMenu, {
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
email: email || '',
|
|
227
|
-
organizationName: organizationName || '',
|
|
228
|
-
clickMenuAction: function clickMenuAction() {
|
|
175
|
+
children: /*#__PURE__*/_jsx(UserMenu, _objectSpread(_objectSpread({}, profile), {}, {
|
|
176
|
+
show: showUserMenu,
|
|
177
|
+
onHideUserMenu: function onHideUserMenu() {
|
|
229
178
|
return setShowUserMenu(false);
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
organizationSection: organizationSection,
|
|
233
|
-
supportSection: supportSection,
|
|
234
|
-
signOut: signout,
|
|
235
|
-
signOutLabel: signOutLabel || ''
|
|
236
|
-
})
|
|
179
|
+
}
|
|
180
|
+
}))
|
|
237
181
|
})]
|
|
238
182
|
});
|
|
239
183
|
};
|
|
240
184
|
|
|
241
185
|
GlobalNavigationBar.propTypes = {
|
|
242
|
-
name: _pt.string,
|
|
243
|
-
mainNavigationOptions: _pt.array,
|
|
244
|
-
secondaryNavigationOptions: _pt.array,
|
|
245
|
-
firstName: _pt.string,
|
|
246
|
-
lastName: _pt.string,
|
|
247
|
-
email: _pt.string,
|
|
248
|
-
organizationName: _pt.string,
|
|
249
|
-
signout: _pt.func,
|
|
250
186
|
isAuthenticated: _pt.bool,
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
signOutLabel: _pt.string,
|
|
260
|
-
useUserMenu: _pt.bool,
|
|
261
|
-
trackLogoClick: _pt.func,
|
|
262
|
-
mainLogoTo: _pt.string,
|
|
263
|
-
testId: _pt.string,
|
|
264
|
-
useMaxWidth: _pt.bool
|
|
187
|
+
useMaxWidth: _pt.bool,
|
|
188
|
+
name: _pt.string,
|
|
189
|
+
logo: _pt.shape({
|
|
190
|
+
onClick: _pt.func,
|
|
191
|
+
to: _pt.string,
|
|
192
|
+
showBetaTag: _pt.bool
|
|
193
|
+
}),
|
|
194
|
+
testId: _pt.string
|
|
265
195
|
};
|
|
266
196
|
export default GlobalNavigationBar;
|
|
267
197
|
//# sourceMappingURL=GlobalNavigationBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/GlobalNavigationBar/GlobalNavigationBar.tsx"],"names":["React","styled","Logo","MainMenu","Actions","PageWidth","COLORS","BREAKPOINTS","RightSideNav","MobileMenu","Menu","UserMenu","useClickOutside","MobileMenuWrapper","Z_INDEXES","HeaderWrapper","header","neutral_200","sticky_menu","SMALL","MEDIUM","RowLayout","div","RightSide","MenuWrapper","props","isVisible","backdrop","UserMenuWrapper","white","floatRight","offsetRight","window","innerWidth","HamburgerButton","button","GlobalNavigationBar","name","mainNavigationOptions","secondaryNavigationOptions","secondaryButton","actions","firstName","lastName","email","organizationName","signout","isAuthenticated","mobileActions","notifications","switcherAction","reverseRightSideOrder","showBetaTag","accountSection","organizationSection","supportSection","accountMenuHeader","signOutLabel","useUserMenu","mainLogoTo","trackLogoClick","testId","useMaxWidth","useState","showMenu","setShowMenu","showUserMenu","setShowUserMenu","showMobileUserMenu","setShowMobileUserMenu","menuRef","useRef","userMenuRef","rightSideRef","avatarRight","setAvatarRight","handleClickMenuAction","useEffect","handleResize","right","document","getElementById","getBoundingClientRect","addEventListener","removeEventListener"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport Logo from './Logo';\nimport MainMenu from './MainMenu';\nimport Actions from './Actions';\nimport { PageWidth } from '../Layouts';\nimport { COLORS, BREAKPOINTS } from '../styles';\nimport RightSideNav from './RightSideNav';\nimport { NavOption, NavButton, ActionOptions, UserMenuItem } from '../types';\nimport MobileMenu from './mobile/MobileMenu';\nimport { Menu } from '../icons/systemicons/SystemIcons';\nimport UserMenu from './UserMenu/UserMenu';\nimport useClickOutside from '../hooks/useClickOutside';\nimport { Menu as MobileMenuWrapper } from './mobile/CommonStyles';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\nconst HeaderWrapper = styled.header`\n background: white;\n border-bottom: 1px solid ${COLORS.neutral_200};\n \n z-index: ${Z_INDEXES.sticky_menu};\n position: relative;\n \n height: 48px;\n\n ${BREAKPOINTS.SMALL} {\n height: 56px;\n }\n ${BREAKPOINTS.MEDIUM} {\n height: 64px;\n }\n\n @media all and (-ms-high-contrast: none) {\n height: auto;\n }\n\n @media print {\n border-bottom: none;\n }\n`;\n\nconst RowLayout = styled.div`\n display: flex;\n`;\n\nconst RightSide = styled.div`\n display: flex;\n margin: 0 0 0 auto;\n`;\n\nconst MenuWrapper = styled.div<MenuWrapperProps>`\n background: rgba(0, 0, 0, 0.5);\n display: ${(props) => (props.isVisible ? 'flex' : 'none')};\n position: fixed;\n left: 0;\n top: 0;\n height: 100%;\n width: 100%;\n overflow-y: hidden;\n bottom: 0;\n right: 0;\n z-index: ${Z_INDEXES.backdrop};\n`;\n\nconst UserMenuWrapper = styled.div<UserMenuWrapperProps>`\n background-color: ${COLORS.white};\n display: flex;\n margin-left: ${(props) => (props.floatRight ? 'auto' : 'unset')};\n position: absolute;\n right: ${(props) => (props.offsetRight ? `${window.innerWidth - props.offsetRight + 296}px` : '10%')};\n top: 56px;\n\n &:focus-within,\n &:hover,\n &.open {\n background: ${COLORS.white};\n }\n`;\n\ninterface UserMenuWrapperProps {\n floatRight: boolean;\n offsetRight: number | null | undefined;\n}\n\nconst HamburgerButton = styled.button`\n border-width: 0;\n background-color: ${COLORS.white};\n height: 48px;\n\n ${BREAKPOINTS.SMALL} {\n height: 56px;\n }\n ${BREAKPOINTS.MEDIUM} {\n height: 64px;\n }\n &:hover {\n cursor: pointer;\n }\n\n ${BREAKPOINTS.MEDIUM} {\n display: none;\n }\n`;\n\ninterface MenuWrapperProps {\n isVisible: boolean;\n}\n\ntype Props = {\n name?: string;\n mainNavigationOptions?: NavOption[];\n secondaryNavigationOptions?: NavOption[];\n secondaryButton?: NavButton;\n actions?: ActionOptions;\n firstName?: string;\n lastName?: string;\n email?: string;\n organizationName?: string;\n signout?: (e: any) => void;\n isAuthenticated?: boolean;\n mobileActions?: ActionOptions;\n notifications?: NavOption[];\n switcherAction?: () => void;\n reverseRightSideOrder?: boolean;\n showBetaTag?: boolean;\n accountSection?: UserMenuItem[];\n organizationSection?: UserMenuItem[];\n supportSection?: UserMenuItem[];\n accountMenuHeader?: string;\n signOutLabel?: string;\n useUserMenu?: boolean;\n trackLogoClick?: () => void;\n mainLogoTo?: string;\n testId?: string;\n useMaxWidth?: boolean;\n};\n\n/**\n * @param props\n * @constructor\n * @description This component is a global navigation header bar\n */\nconst GlobalNavigationBar = ({\n name,\n mainNavigationOptions,\n secondaryNavigationOptions,\n secondaryButton,\n actions,\n firstName,\n lastName,\n email,\n organizationName,\n signout,\n isAuthenticated,\n mobileActions,\n notifications,\n switcherAction,\n reverseRightSideOrder = false,\n showBetaTag,\n accountSection,\n organizationSection,\n supportSection,\n accountMenuHeader,\n signOutLabel,\n useUserMenu,\n mainLogoTo,\n trackLogoClick,\n testId,\n useMaxWidth = true,\n}: Props): React.ReactElement<Props> => {\n const [showMenu, setShowMenu] = React.useState(false);\n const [showUserMenu, setShowUserMenu] = React.useState(false);\n const [showMobileUserMenu, setShowMobileUserMenu] = React.useState<boolean>(false);\n const menuRef = React.useRef(null);\n const userMenuRef = React.useRef<HTMLDivElement>(null);\n const rightSideRef = React.useRef(null);\n const [avatarRight, setAvatarRight] = React.useState<number>(0);\n\n const handleClickMenuAction = () => {\n setShowMenu(false);\n };\n\n useClickOutside(userMenuRef, () => (showUserMenu ? setShowUserMenu(false) : null));\n useClickOutside(menuRef, () => {\n if (showMenu) {\n setShowMobileUserMenu(false);\n setShowMenu(false);\n }\n });\n\n React.useEffect(() => {\n const handleResize = () => {\n const right = document?.getElementById('avatarContainer')?.getBoundingClientRect()?.right;\n if (right) {\n setAvatarRight(right);\n }\n };\n\n handleResize();\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [document?.getElementById('avatarContainer')?.getBoundingClientRect()?.right]);\n\n return (\n <>\n <HeaderWrapper data-testid={testId}>\n <PageWidth useMaxWidth={useMaxWidth}>\n <RowLayout>\n <Logo name={name || ''} showBetaTag={showBetaTag} onClick={trackLogoClick} to={mainLogoTo} />\n {isAuthenticated && <MainMenu navigationOptions={mainNavigationOptions || []} rightSideRef={rightSideRef} />}\n <RightSide className=\"GlobalNavigationRightSide\" ref={rightSideRef}>\n {reverseRightSideOrder ? (\n <>\n <Actions\n actions={actions}\n firstName={firstName || ''}\n lastName={lastName || ''}\n hideOnLowWidth={true}\n useUserMenu={useUserMenu}\n setShowUserMenu={setShowUserMenu}\n />\n <RightSideNav navigationOptions={secondaryNavigationOptions} secondaryButton={secondaryButton} />\n </>\n ) : (\n <>\n <RightSideNav navigationOptions={secondaryNavigationOptions} secondaryButton={secondaryButton} />\n <Actions\n actions={actions}\n firstName={firstName || ''}\n lastName={lastName || ''}\n hideOnLowWidth={true}\n useUserMenu={useUserMenu}\n setShowUserMenu={setShowUserMenu}\n />\n </>\n )}\n <HamburgerButton onClick={() => setShowMenu(!showMenu)} hidden={!isAuthenticated}>\n <Menu size=\"24px\" />\n </HamburgerButton>\n </RightSide>\n </RowLayout>\n </PageWidth>\n </HeaderWrapper>\n <MenuWrapper className={showMenu ? 'open' : 'closed'} isVisible={showMenu}>\n <MobileMenuWrapper ref={menuRef} onClick={() => {}} role=\"menu\" aria-labelledby=\"UserMenuButton\">\n <MobileMenu\n name={name || ''}\n clickMenuAction={() => {\n setShowMobileUserMenu(false);\n handleClickMenuAction();\n }}\n navigationOptions={mainNavigationOptions || []}\n secondaryNavigationOptions={secondaryNavigationOptions}\n secondaryButton={secondaryButton}\n firstName={firstName || ''}\n lastName={lastName || ''}\n email={email || ''}\n signout={signout}\n notifications={notifications}\n actions={mobileActions}\n switcherAction={switcherAction}\n isAuthenticated={isAuthenticated}\n accountSection={accountSection || []}\n organizationSection={organizationSection || []}\n supportSection={supportSection || []}\n accountMenuHeader={accountMenuHeader || ''}\n signOutLabel={signOutLabel || ''}\n organizationName={organizationName || ''}\n useUserMenu={useUserMenu}\n showUserMenu={showMobileUserMenu}\n setShowUserMenu={setShowMobileUserMenu}\n />\n </MobileMenuWrapper>\n </MenuWrapper>\n {useUserMenu && (\n <UserMenuWrapper ref={userMenuRef} className={showUserMenu ? 'open' : 'closed'} floatRight={false} offsetRight={avatarRight} data-testid=\"testUserMenuWrapper\">\n <UserMenu\n firstName={firstName || ''}\n lastName={lastName || ''}\n email={email || ''}\n organizationName={organizationName || ''}\n clickMenuAction={() => setShowUserMenu(false)}\n accountSection={accountSection}\n organizationSection={organizationSection}\n supportSection={supportSection}\n signOut={signout}\n signOutLabel={signOutLabel || ''}\n />\n </UserMenuWrapper>\n )}\n </>\n );\n};\n\nexport default GlobalNavigationBar;\n"],"file":"GlobalNavigationBar.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/GlobalNavigationBar.tsx"],"names":["React","styled","Logo","MainMenu","PageWidth","COLORS","BREAKPOINTS","RightSideNav","MobileMenu","Menu","UserMenu","useClickOutside","fadeIn","fadeOut","MobileMenuWrapper","Z_INDEXES","IconButton","DesktopActions","usePreviousImmediate","HeaderWrapper","header","neutral_200","sticky_menu","SMALL","MEDIUM","RowLayout","div","HamburgerButton","RightSide","MobileMenuBackdrop","backdrop","UserMenuWrapper","white","props","offsetRight","window","innerWidth","GlobalNavigationBar","name","isAuthenticated","logo","profile","mobile","desktop","testId","useMaxWidth","useState","showMobileMenu","setShowMobileMenu","wasMobileMenuOpen","showUserMenu","setShowUserMenu","mobileMenuRef","useRef","userMenuRef","actionsRef","profileButtonRef","current","buttons","find","a","type","ref","mobileMenuButtonRef","rightSideRef","avatarRight","setAvatarRight","useEffect","handleResize","profileRightOffset","getBoundingClientRect","right","addEventListener","removeEventListener","showBetaTag","onClick","to","items","filter","pinned","reverseRightSideOrder","action","user","some"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport Logo from './Logo';\nimport MainMenu from './desktop/MainMenu';\nimport {PageWidth} from '../Layouts';\nimport {COLORS, BREAKPOINTS} from '../styles';\nimport RightSideNav from './desktop/RightSideNav';\nimport MobileMenu from './mobile/MobileMenu';\nimport {Menu} from '../icons/systemicons/SystemIcons';\nimport UserMenu from './desktop/UserMenu';\nimport useClickOutside from '../hooks/useClickOutside';\nimport {fadeIn, fadeOut, Menu as MobileMenuWrapper} from './mobile/CommonStyles';\nimport {Z_INDEXES} from '../styles';\nimport {\n DesktopNavigationMenuProps, MenuProfileButton,\n MobileNavigationMenuProps,\n ProfileMenu\n} from './types';\nimport {IconButton} from '../Button';\nimport DesktopActions, {DesktopActionsRef} from './desktop/DesktopActions';\nimport {usePreviousImmediate} from 'rooks';\n\nconst HeaderWrapper = styled.header`\n background: white;\n border-bottom: 1px solid ${COLORS.neutral_200};\n\n z-index: ${Z_INDEXES.sticky_menu};\n position: relative;\n\n height: 48px;\n\n ${BREAKPOINTS.SMALL} {\n height: 56px;\n }\n\n ${BREAKPOINTS.MEDIUM} {\n height: 64px;\n }\n\n @media all and (-ms-high-contrast: none) {\n height: auto;\n }\n\n @media print {\n border-bottom: none;\n }\n`;\n\nconst RowLayout = styled.div`\n display: flex;\n`;\n\n\nconst HamburgerButton = styled.div`\n ${BREAKPOINTS.SMALL} button {\n height: 56px;\n }\n\n ${BREAKPOINTS.MEDIUM} {\n display: none;\n }\n`;\n\nconst RightSide = styled.div`\n display: flex;\n margin: 0 0 0 auto;\n\n &.reverse {\n ${HamburgerButton} {\n order: -1;\n }\n\n flex-direction: row-reverse;\n }\n`;\n\nconst MobileMenuBackdrop = styled.div`\n background: rgba(0, 0, 0, 0.5);\n display: flex;\n position: fixed;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n height: 100vh;\n width: 100vw;\n overflow: hidden;\n z-index: ${Z_INDEXES.backdrop};\n visibility: hidden;\n\n\n &.open {\n visibility: visible;\n animation: ${fadeIn} 0.3s ease-in-out;\n }\n\n &.closed {\n visibility: hidden;\n animation: ${fadeOut} 0.3s ease-in-out;\n }\n\n ${BREAKPOINTS.MEDIUM} {\n visibility: hidden !important;\n }\n`;\n\nconst UserMenuWrapper = styled.div<{ offsetRight?: number }>`\n background-color: ${COLORS.white};\n display: flex;\n position: absolute;\n\n ${BREAKPOINTS.MEDIUM} {\n top: 56px;\n right: ${(props) => (props.offsetRight ? `${window.innerWidth - props.offsetRight + 296}px` : '10%')};\n }\n`;\n\n\ntype GlobalNavigationBarProps = {\n isAuthenticated?: boolean;\n useMaxWidth?: boolean;\n\n name?: string;\n logo?: { onClick?: () => void; to?: string; showBetaTag?: boolean; };\n\n profile?: ProfileMenu;\n\n mobile?: MobileNavigationMenuProps;\n desktop?: DesktopNavigationMenuProps;\n\n testId?: string;\n};\n\n/**\n * @param props\n * @constructor\n * @description This component is a global navigation header bar\n */\nconst GlobalNavigationBar = ({\n name,\n isAuthenticated,\n logo,\n profile,\n mobile,\n desktop,\n testId,\n useMaxWidth = true,\n }: GlobalNavigationBarProps): React.ReactElement<GlobalNavigationBarProps> => {\n const [showMobileMenu, setShowMobileMenu] = React.useState(false);\n const wasMobileMenuOpen = usePreviousImmediate(showMobileMenu);\n\n const [showUserMenu, setShowUserMenu] = React.useState(false);\n const mobileMenuRef = React.useRef(null);\n const userMenuRef = React.useRef<HTMLDivElement>(null);\n\n const actionsRef = React.useRef<DesktopActionsRef>(null);\n const profileButtonRef = React.useRef<HTMLButtonElement | null>() as React.MutableRefObject<HTMLButtonElement | null | undefined>;\n profileButtonRef.current = actionsRef?.current?.buttons?.find(a => a.type === 'profile')?.ref?.current;\n\n const mobileMenuButtonRef = React.useRef<HTMLButtonElement>(null);\n\n const rightSideRef = React.useRef(null);\n const [avatarRight, setAvatarRight] = React.useState<number>(0);\n\n\n useClickOutside(userMenuRef, () => setShowUserMenu(false), [profileButtonRef]);\n useClickOutside(mobileMenuRef, () => setShowMobileMenu(false), [mobileMenuButtonRef]);\n\n React.useEffect(() => {\n if (!profileButtonRef.current) return;\n\n const handleResize = () => {\n const profileRightOffset = profileButtonRef.current?.getBoundingClientRect()?.right;\n setAvatarRight(profileRightOffset || 0);\n };\n\n handleResize();\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, [profileButtonRef.current]);\n\n\n return (\n <>\n <HeaderWrapper data-testid={testId}>\n <PageWidth useMaxWidth={useMaxWidth}>\n <RowLayout>\n <Logo name={name || ''} showBetaTag={logo?.showBetaTag} onClick={logo?.onClick} to={logo?.to}/>\n {\n isAuthenticated &&\n <MainMenu items={desktop?.items.filter(a => !a.pinned) || []} rightSideRef={rightSideRef}/>\n }\n <RightSide className={`${desktop?.reverseRightSideOrder ? 'reverse' : ''}`}\n ref={rightSideRef}>\n <RightSideNav items={desktop?.items?.filter(a => a.pinned)} action={desktop?.action}/>\n <DesktopActions ref={actionsRef}\n buttons={desktop?.buttons}\n onShowUserMenu={() => setShowUserMenu(!showUserMenu)}\n user={profile?.user}/>\n <HamburgerButton hidden={!isAuthenticated}>\n <IconButton action={() => setShowMobileMenu(!showMobileMenu)}\n ref={mobileMenuButtonRef}\n shape={'circular'}\n variant={'secondary'}>\n <Menu size=\"24px\"/>\n </IconButton>\n </HamburgerButton>\n </RightSide>\n </RowLayout>\n </PageWidth>\n </HeaderWrapper>\n <MobileMenuBackdrop className={showMobileMenu ? 'open' : !showUserMenu && wasMobileMenuOpen ? 'closed' : ''}>\n <MobileMenuWrapper ref={mobileMenuRef}\n role=\"menu\"\n aria-labelledby=\"UserMenuButton\">\n <MobileMenu {...mobile}\n show={showMobileMenu}\n onClose={() => setShowMobileMenu(false)}\n profile={profile}/>\n </MobileMenuWrapper>\n </MobileMenuBackdrop>\n {\n desktop?.buttons?.some(a => a.type === 'profile') && !!profile &&\n <UserMenuWrapper ref={userMenuRef}\n offsetRight={avatarRight}\n data-testid=\"testUserMenuWrapper\">\n <UserMenu {...profile}\n show={showUserMenu}\n onHideUserMenu={() => setShowUserMenu(false)}/>\n </UserMenuWrapper>\n }\n </>\n );\n};\n\nexport default GlobalNavigationBar;\n"],"file":"GlobalNavigationBar.js"}
|
|
@@ -23,8 +23,6 @@ var _assets = require("../assets");
|
|
|
23
23
|
|
|
24
24
|
var _styles = require("../styles");
|
|
25
25
|
|
|
26
|
-
var _typography = require("../styles/typography");
|
|
27
|
-
|
|
28
26
|
var _common = require("../common");
|
|
29
27
|
|
|
30
28
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -44,15 +42,15 @@ var LogoContainer = _styledComponents.default.div(_templateObject2 || (_template
|
|
|
44
42
|
var Name = _styledComponents.default.span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n margin-left: 8px;\n padding-left: 8px;\n border-left: 1px solid ", ";\n letter-spacing: -0.02em;\n\n ", "\n\n font-weight: 300 !important;\n line-height: 24px !important;\n\n ", " {\n margin-left: 12px;\n padding-left: 12px;\n ", "\n }\n"])), function (props) {
|
|
45
43
|
return props.$color || _styles.COLORS.black;
|
|
46
44
|
}, function (props) {
|
|
47
|
-
return props.noSizeChangeOnMobile ? (0,
|
|
45
|
+
return props.noSizeChangeOnMobile ? (0, _styles.ComponentMStyling)(_styles.ComponentTextStyle.Regular, props.$color || _styles.COLORS.black) : (0, _styles.ComponentXSStyling)(_styles.ComponentTextStyle.Regular, props.$color || _styles.COLORS.black);
|
|
48
46
|
}, _styles.BREAKPOINTS.MEDIUM, function (props) {
|
|
49
|
-
return (0,
|
|
47
|
+
return (0, _styles.ComponentMStyling)(_styles.ComponentTextStyle.Regular, props.$color || _styles.COLORS.black);
|
|
50
48
|
});
|
|
51
49
|
|
|
52
50
|
var BetaTag = _styledComponents.default.span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n background-color: ", ";\n padding: 4px 8px;\n margin-left: 8px;\n margin-top: 2px;\n border-left: none;\n border-radius: 2px;\n\n ", "\n"])), function (props) {
|
|
53
51
|
return props.backgroundColor || _styles.COLORS.accent2_500;
|
|
54
52
|
}, function (props) {
|
|
55
|
-
return (0,
|
|
53
|
+
return (0, _styles.ComponentXSStyling)(_styles.ComponentTextStyle.UppercaseBold, props.$color || _styles.COLORS.white);
|
|
56
54
|
});
|
|
57
55
|
|
|
58
56
|
var Logo = function Logo(_ref) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"names":["StyledLink","Link","props","$color","BREAKPOINTS","MEDIUM","LogoContainer","styled","div","focusStyles","invertedFocusStyles","Name","span","COLORS","black","noSizeChangeOnMobile","ComponentTextStyle","Regular","BetaTag","backgroundColor","accent2_500","UppercaseBold","white","Logo","name","showBetaTag","onClick","to","color","betaTagBackgroundColor","betaTagColor","inverted","defaultOnMouseDownHandler"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"names":["StyledLink","Link","props","$color","BREAKPOINTS","MEDIUM","LogoContainer","styled","div","focusStyles","invertedFocusStyles","Name","span","COLORS","black","noSizeChangeOnMobile","ComponentTextStyle","Regular","BetaTag","backgroundColor","accent2_500","UppercaseBold","white","Logo","name","showBetaTag","onClick","to","color","betaTagBackgroundColor","betaTagColor","inverted","defaultOnMouseDownHandler"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;;;;;AAEA,IAAMA,UAAU,GAAG,+BAAOC,oBAAP,CAAH,+VAWH,UAACC,KAAD;AAAA,SAAWA,KAAK,CAACC,MAAjB;AAAA,CAXG,EAYVC,oBAAYC,MAZF,CAAhB;;AAmBA,IAAMC,aAAa,GAAGC,0BAAOC,GAAV,4WAQfJ,oBAAYC,MARG,EAcbI,mBAda,EAkBbC,2BAlBa,CAAnB;;AAsBA,IAAMC,IAAI,GAAGJ,0BAAOK,IAAV,wVAGiB,UAACV,KAAD;AAAA,SAAWA,KAAK,CAACC,MAAN,IAAgBU,eAAOC,KAAlC;AAAA,CAHjB,EAMN,UAACZ,KAAD;AAAA,SACAA,KAAK,CAACa,oBAAN,GACI,+BAAkBC,2BAAmBC,OAArC,EAA8Cf,KAAK,CAACC,MAAN,IAAgBU,eAAOC,KAArE,CADJ,GAEI,gCAAmBE,2BAAmBC,OAAtC,EAA+Cf,KAAK,CAACC,MAAN,IAAgBU,eAAOC,KAAtE,CAHJ;AAAA,CANM,EAcNV,oBAAYC,MAdN,EAiBJ,UAACH,KAAD;AAAA,SAAW,+BAAkBc,2BAAmBC,OAArC,EAA8Cf,KAAK,CAACC,MAAN,IAAgBU,eAAOC,KAArE,CAAX;AAAA,CAjBI,CAAV;;AAqBA,IAAMI,OAAO,GAAGX,0BAAOK,IAAV,wOACS,UAACV,KAAD;AAAA,SAAWA,KAAK,CAACiB,eAAN,IAAyBN,eAAOO,WAA3C;AAAA,CADT,EAQT,UAAClB,KAAD;AAAA,SAAW,gCAAmBc,2BAAmBK,aAAtC,EAAqDnB,KAAK,CAACC,MAAN,IAAgBU,eAAOS,KAA5E,CAAX;AAAA,CARS,CAAb;;AAuBA,IAAMC,IAAI,GAAG,SAAPA,IAAO,OAA+J;AAAA,MAA5JC,IAA4J,QAA5JA,IAA4J;AAAA,MAAtJC,WAAsJ,QAAtJA,WAAsJ;AAAA,MAAzIC,QAAyI,QAAzIA,OAAyI;AAAA,MAAhIC,EAAgI,QAAhIA,EAAgI;AAAA,MAA5HC,KAA4H,QAA5HA,KAA4H;AAAA,MAArHb,oBAAqH,QAArHA,oBAAqH;AAAA,MAA/Fc,sBAA+F,QAA/FA,sBAA+F;AAAA,MAAvEC,YAAuE,QAAvEA,YAAuE;AAAA,MAAzDC,QAAyD,QAAzDA,QAAyD;AAC1K,sBACE,qBAAC,aAAD;AAAe,IAAA,SAAS,EAAEA,QAAQ,GAAG,UAAH,GAAgB,EAAlD;AAAA,2BACE,sBAAC,UAAD;AACE,MAAA,EAAE,EAAEJ,EAAE,IAAI,GADZ;AAEE,MAAA,WAAW,EAAEK,iCAFf;AAGE,MAAA,OAAO,EAAE,mBAAM;AACb,YAAIN,QAAJ,EAAa;AACXA,UAAAA,QAAO;AACR;AACF,OAPH;AAQE,MAAA,MAAM,EAAEE,KARV;AAAA,iBASGA,KAAK,KAAKf,eAAOS,KAAjB,gBAAyB,qBAAC,wBAAD,KAAzB,gBAAgD,qBAAC,mBAAD,KATnD,eAUE,qBAAC,IAAD;AAAM,QAAA,MAAM,EAAEM,KAAd;AAAqB,QAAA,oBAAoB,EAAEb,oBAAoB,IAAI,KAAnE;AAAA,kBACGS;AADH,QAVF,EAaGC,WAAW,iBACV,qBAAC,OAAD;AAAS,QAAA,eAAe,EAAEI,sBAA1B;AAAkD,QAAA,MAAM,EAAEC,YAA1D;AAAA;AAAA,QAdJ;AAAA;AADF,IADF;AAuBD,CAxBD;;;AAXEN,EAAAA,I;AACAC,EAAAA,W;AACAC,EAAAA,O;AACAC,EAAAA,E;AACAC,EAAAA,K;AACAb,EAAAA,oB;AACAc,EAAAA,sB;AACAC,EAAAA,Y;AACAC,EAAAA,Q;;eA6BaR,I","sourcesContent":["import * as React from 'react';\nimport { Link } from 'react-router-dom';\nimport styled from 'styled-components';\nimport { LaerdalLogo, LaerdalWhiteLogo } from '../assets';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles, invertedFocusStyles} from '../styles';\nimport { ComponentMStyling, ComponentXSStyling } from '../styles';\nimport {defaultOnMouseDownHandler} from '../common';\n\nconst StyledLink = styled(Link)<{ $color?: string }>`\n text-align: center;\n text-decoration: none;\n display: flex;\n align-items: center;\n &:focus-within {\n outline: none;\n }\n svg {\n width: 66px;\n height: 36px;\n color: ${(props) => props.$color};\n ${BREAKPOINTS.MEDIUM} {\n width: 88px;\n height: 48px;\n }\n }\n`;\n\nconst LogoContainer = styled.div`\n display: flex;\n align-items: center;\n height: 40px;\n margin-right: 16px;\n box-sizing: border-box;\n padding: 24px 0;\n\n ${BREAKPOINTS.MEDIUM} {\n margin-top: 8px;\n margin-bottom: 7px;\n }\n\n &:focus-within {\n ${focusStyles}\n }\n\n &.inverted:focus-within {\n ${invertedFocusStyles}\n }\n`;\n\nconst Name = styled.span<{ $color?: string; noSizeChangeOnMobile: boolean }>`\n margin-left: 8px;\n padding-left: 8px;\n border-left: 1px solid ${(props) => props.$color || COLORS.black};\n letter-spacing: -0.02em;\n\n ${(props) =>\n props.noSizeChangeOnMobile\n ? ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.black)\n : ComponentXSStyling(ComponentTextStyle.Regular, props.$color || COLORS.black)}\n\n font-weight: 300 !important;\n line-height: 24px !important;\n\n ${BREAKPOINTS.MEDIUM} {\n margin-left: 12px;\n padding-left: 12px;\n ${(props) => ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.black)}\n }\n`;\n\nconst BetaTag = styled.span<{ backgroundColor?: string; $color?: string }>`\n background-color: ${(props) => props.backgroundColor || COLORS.accent2_500};\n padding: 4px 8px;\n margin-left: 8px;\n margin-top: 2px;\n border-left: none;\n border-radius: 2px;\n\n ${(props) => ComponentXSStyling(ComponentTextStyle.UppercaseBold, props.$color || COLORS.white)}\n`;\n\ntype LogoProps = {\n name: string;\n showBetaTag?: boolean;\n onClick?: () => void;\n to?: string;\n color?: string;\n noSizeChangeOnMobile?: boolean;\n betaTagBackgroundColor?: string;\n betaTagColor?: string;\n inverted?: boolean;\n};\n\nconst Logo = ({ name, showBetaTag, onClick, to, color, noSizeChangeOnMobile, betaTagBackgroundColor, betaTagColor, inverted }: LogoProps): React.ReactElement<LogoProps> => {\n return (\n <LogoContainer className={inverted ? 'inverted' : ''}>\n <StyledLink\n to={to || '/'}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (onClick) {\n onClick();\n }\n }}\n $color={color}>\n {color === COLORS.white ? <LaerdalWhiteLogo /> : <LaerdalLogo />}\n <Name $color={color} noSizeChangeOnMobile={noSizeChangeOnMobile || false}>\n {name}\n </Name>\n {showBetaTag && (\n <BetaTag backgroundColor={betaTagBackgroundColor} $color={betaTagColor}>\n BETA\n </BetaTag>\n )}\n </StyledLink>\n </LogoContainer>\n );\n};\n\nexport default Logo;\n"],"file":"Logo.cjs"}
|
|
@@ -8,7 +8,7 @@ import { Link } from 'react-router-dom';
|
|
|
8
8
|
import styled from 'styled-components';
|
|
9
9
|
import { LaerdalLogo, LaerdalWhiteLogo } from '../assets';
|
|
10
10
|
import { BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles, invertedFocusStyles } from '../styles';
|
|
11
|
-
import { ComponentMStyling, ComponentXSStyling } from '../styles
|
|
11
|
+
import { ComponentMStyling, ComponentXSStyling } from '../styles';
|
|
12
12
|
import { defaultOnMouseDownHandler } from '../common';
|
|
13
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
14
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"names":["React","Link","styled","LaerdalLogo","LaerdalWhiteLogo","BREAKPOINTS","COLORS","ComponentTextStyle","focusStyles","invertedFocusStyles","ComponentMStyling","ComponentXSStyling","defaultOnMouseDownHandler","StyledLink","props","$color","MEDIUM","LogoContainer","div","Name","span","black","noSizeChangeOnMobile","Regular","BetaTag","backgroundColor","accent2_500","UppercaseBold","white","Logo","name","showBetaTag","onClick","to","color","betaTagBackgroundColor","betaTagColor","inverted"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,QAAqB,kBAArB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,SAASC,WAAT,EAAsBC,gBAAtB,QAA8C,WAA9C;AACA,SAAQC,WAAR,EAAqBC,MAArB,EAA6BC,kBAA7B,EAAiDC,WAAjD,EAA8DC,mBAA9D,QAAwF,WAAxF;AACA,SAASC,iBAAT,EAA4BC,kBAA5B,QAAsD,
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/Logo.tsx"],"names":["React","Link","styled","LaerdalLogo","LaerdalWhiteLogo","BREAKPOINTS","COLORS","ComponentTextStyle","focusStyles","invertedFocusStyles","ComponentMStyling","ComponentXSStyling","defaultOnMouseDownHandler","StyledLink","props","$color","MEDIUM","LogoContainer","div","Name","span","black","noSizeChangeOnMobile","Regular","BetaTag","backgroundColor","accent2_500","UppercaseBold","white","Logo","name","showBetaTag","onClick","to","color","betaTagBackgroundColor","betaTagColor","inverted"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,QAAqB,kBAArB;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,SAASC,WAAT,EAAsBC,gBAAtB,QAA8C,WAA9C;AACA,SAAQC,WAAR,EAAqBC,MAArB,EAA6BC,kBAA7B,EAAiDC,WAAjD,EAA8DC,mBAA9D,QAAwF,WAAxF;AACA,SAASC,iBAAT,EAA4BC,kBAA5B,QAAsD,WAAtD;AACA,SAAQC,yBAAR,QAAwC,WAAxC;;;AAEA,IAAMC,UAAU,GAAGX,MAAM,CAACD,IAAD,CAAT,iVAWH,UAACa,KAAD;AAAA,SAAWA,KAAK,CAACC,MAAjB;AAAA,CAXG,EAYVV,WAAW,CAACW,MAZF,CAAhB;AAmBA,IAAMC,aAAa,GAAGf,MAAM,CAACgB,GAAV,8VAQfb,WAAW,CAACW,MARG,EAcbR,WAda,EAkBbC,mBAlBa,CAAnB;AAsBA,IAAMU,IAAI,GAAGjB,MAAM,CAACkB,IAAV,0UAGiB,UAACN,KAAD;AAAA,SAAWA,KAAK,CAACC,MAAN,IAAgBT,MAAM,CAACe,KAAlC;AAAA,CAHjB,EAMN,UAACP,KAAD;AAAA,SACAA,KAAK,CAACQ,oBAAN,GACIZ,iBAAiB,CAACH,kBAAkB,CAACgB,OAApB,EAA6BT,KAAK,CAACC,MAAN,IAAgBT,MAAM,CAACe,KAApD,CADrB,GAEIV,kBAAkB,CAACJ,kBAAkB,CAACgB,OAApB,EAA6BT,KAAK,CAACC,MAAN,IAAgBT,MAAM,CAACe,KAApD,CAHtB;AAAA,CANM,EAcNhB,WAAW,CAACW,MAdN,EAiBJ,UAACF,KAAD;AAAA,SAAWJ,iBAAiB,CAACH,kBAAkB,CAACgB,OAApB,EAA6BT,KAAK,CAACC,MAAN,IAAgBT,MAAM,CAACe,KAApD,CAA5B;AAAA,CAjBI,CAAV;AAqBA,IAAMG,OAAO,GAAGtB,MAAM,CAACkB,IAAV,0NACS,UAACN,KAAD;AAAA,SAAWA,KAAK,CAACW,eAAN,IAAyBnB,MAAM,CAACoB,WAA3C;AAAA,CADT,EAQT,UAACZ,KAAD;AAAA,SAAWH,kBAAkB,CAACJ,kBAAkB,CAACoB,aAApB,EAAmCb,KAAK,CAACC,MAAN,IAAgBT,MAAM,CAACsB,KAA1D,CAA7B;AAAA,CARS,CAAb;;AAuBA,IAAMC,IAAI,GAAG,SAAPA,IAAO,OAA+J;AAAA,MAA5JC,IAA4J,QAA5JA,IAA4J;AAAA,MAAtJC,WAAsJ,QAAtJA,WAAsJ;AAAA,MAAzIC,QAAyI,QAAzIA,OAAyI;AAAA,MAAhIC,EAAgI,QAAhIA,EAAgI;AAAA,MAA5HC,KAA4H,QAA5HA,KAA4H;AAAA,MAArHZ,oBAAqH,QAArHA,oBAAqH;AAAA,MAA/Fa,sBAA+F,QAA/FA,sBAA+F;AAAA,MAAvEC,YAAuE,QAAvEA,YAAuE;AAAA,MAAzDC,QAAyD,QAAzDA,QAAyD;AAC1K,sBACE,KAAC,aAAD;AAAe,IAAA,SAAS,EAAEA,QAAQ,GAAG,UAAH,GAAgB,EAAlD;AAAA,2BACE,MAAC,UAAD;AACE,MAAA,EAAE,EAAEJ,EAAE,IAAI,GADZ;AAEE,MAAA,WAAW,EAAErB,yBAFf;AAGE,MAAA,OAAO,EAAE,mBAAM;AACb,YAAIoB,QAAJ,EAAa;AACXA,UAAAA,QAAO;AACR;AACF,OAPH;AAQE,MAAA,MAAM,EAAEE,KARV;AAAA,iBASGA,KAAK,KAAK5B,MAAM,CAACsB,KAAjB,gBAAyB,KAAC,gBAAD,KAAzB,gBAAgD,KAAC,WAAD,KATnD,eAUE,KAAC,IAAD;AAAM,QAAA,MAAM,EAAEM,KAAd;AAAqB,QAAA,oBAAoB,EAAEZ,oBAAoB,IAAI,KAAnE;AAAA,kBACGQ;AADH,QAVF,EAaGC,WAAW,iBACV,KAAC,OAAD;AAAS,QAAA,eAAe,EAAEI,sBAA1B;AAAkD,QAAA,MAAM,EAAEC,YAA1D;AAAA;AAAA,QAdJ;AAAA;AADF,IADF;AAuBD,CAxBD;;;AAXEN,EAAAA,I;AACAC,EAAAA,W;AACAC,EAAAA,O;AACAC,EAAAA,E;AACAC,EAAAA,K;AACAZ,EAAAA,oB;AACAa,EAAAA,sB;AACAC,EAAAA,Y;AACAC,EAAAA,Q;;AA6BF,eAAeR,IAAf","sourcesContent":["import * as React from 'react';\nimport { Link } from 'react-router-dom';\nimport styled from 'styled-components';\nimport { LaerdalLogo, LaerdalWhiteLogo } from '../assets';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles, invertedFocusStyles} from '../styles';\nimport { ComponentMStyling, ComponentXSStyling } from '../styles';\nimport {defaultOnMouseDownHandler} from '../common';\n\nconst StyledLink = styled(Link)<{ $color?: string }>`\n text-align: center;\n text-decoration: none;\n display: flex;\n align-items: center;\n &:focus-within {\n outline: none;\n }\n svg {\n width: 66px;\n height: 36px;\n color: ${(props) => props.$color};\n ${BREAKPOINTS.MEDIUM} {\n width: 88px;\n height: 48px;\n }\n }\n`;\n\nconst LogoContainer = styled.div`\n display: flex;\n align-items: center;\n height: 40px;\n margin-right: 16px;\n box-sizing: border-box;\n padding: 24px 0;\n\n ${BREAKPOINTS.MEDIUM} {\n margin-top: 8px;\n margin-bottom: 7px;\n }\n\n &:focus-within {\n ${focusStyles}\n }\n\n &.inverted:focus-within {\n ${invertedFocusStyles}\n }\n`;\n\nconst Name = styled.span<{ $color?: string; noSizeChangeOnMobile: boolean }>`\n margin-left: 8px;\n padding-left: 8px;\n border-left: 1px solid ${(props) => props.$color || COLORS.black};\n letter-spacing: -0.02em;\n\n ${(props) =>\n props.noSizeChangeOnMobile\n ? ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.black)\n : ComponentXSStyling(ComponentTextStyle.Regular, props.$color || COLORS.black)}\n\n font-weight: 300 !important;\n line-height: 24px !important;\n\n ${BREAKPOINTS.MEDIUM} {\n margin-left: 12px;\n padding-left: 12px;\n ${(props) => ComponentMStyling(ComponentTextStyle.Regular, props.$color || COLORS.black)}\n }\n`;\n\nconst BetaTag = styled.span<{ backgroundColor?: string; $color?: string }>`\n background-color: ${(props) => props.backgroundColor || COLORS.accent2_500};\n padding: 4px 8px;\n margin-left: 8px;\n margin-top: 2px;\n border-left: none;\n border-radius: 2px;\n\n ${(props) => ComponentXSStyling(ComponentTextStyle.UppercaseBold, props.$color || COLORS.white)}\n`;\n\ntype LogoProps = {\n name: string;\n showBetaTag?: boolean;\n onClick?: () => void;\n to?: string;\n color?: string;\n noSizeChangeOnMobile?: boolean;\n betaTagBackgroundColor?: string;\n betaTagColor?: string;\n inverted?: boolean;\n};\n\nconst Logo = ({ name, showBetaTag, onClick, to, color, noSizeChangeOnMobile, betaTagBackgroundColor, betaTagColor, inverted }: LogoProps): React.ReactElement<LogoProps> => {\n return (\n <LogoContainer className={inverted ? 'inverted' : ''}>\n <StyledLink\n to={to || '/'}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => {\n if (onClick) {\n onClick();\n }\n }}\n $color={color}>\n {color === COLORS.white ? <LaerdalWhiteLogo /> : <LaerdalLogo />}\n <Name $color={color} noSizeChangeOnMobile={noSizeChangeOnMobile || false}>\n {name}\n </Name>\n {showBetaTag && (\n <BetaTag backgroundColor={betaTagBackgroundColor} $color={betaTagColor}>\n BETA\n </BetaTag>\n )}\n </StyledLink>\n </LogoContainer>\n );\n};\n\nexport default Logo;\n"],"file":"Logo.js"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useNavigationHelper = void 0;
|
|
7
|
+
|
|
8
|
+
var _reactRouterDom = require("react-router-dom");
|
|
9
|
+
|
|
10
|
+
var _reactRouter = require("react-router");
|
|
11
|
+
|
|
12
|
+
var useNavigationHelper = function useNavigationHelper() {
|
|
13
|
+
var history = (0, _reactRouter.useHistory)();
|
|
14
|
+
var location = (0, _reactRouterDom.useLocation)();
|
|
15
|
+
|
|
16
|
+
var navigate = function navigate(url, isExternal) {
|
|
17
|
+
if (isExternal) {
|
|
18
|
+
window.location.href = url;
|
|
19
|
+
} else {
|
|
20
|
+
history.push(url);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
var isActiveRoute = function isActiveRoute(url, exact) {
|
|
25
|
+
return !!(0, _reactRouterDom.matchPath)(location.pathname, {
|
|
26
|
+
exact: exact,
|
|
27
|
+
path: url
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
return {
|
|
32
|
+
navigate: navigate,
|
|
33
|
+
isActiveRoute: isActiveRoute
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
exports.useNavigationHelper = useNavigationHelper;
|
|
38
|
+
//# sourceMappingURL=NavigationHelper.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/GlobalNavigationBar/NavigationHelper.ts"],"names":["useNavigationHelper","history","location","navigate","url","isExternal","window","href","push","isActiveRoute","exact","pathname","path"],"mappings":";;;;;;;AAAA;;AACA;;AAGO,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,GAAM;AACvC,MAAMC,OAAO,GAAG,8BAAhB;AACA,MAAMC,QAAQ,GAAG,kCAAjB;;AAEA,MAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,GAAD,EAAcC,UAAd,EAAsC;AACrD,QAAIA,UAAJ,EAAgB;AACdC,MAAAA,MAAM,CAACJ,QAAP,CAAgBK,IAAhB,GAAuBH,GAAvB;AACD,KAFD,MAEO;AACLH,MAAAA,OAAO,CAACO,IAAR,CAAaJ,GAAb;AACD;AACF,GAND;;AAQA,MAAMK,aAAa,GAAG,SAAhBA,aAAgB,CAACL,GAAD,EAAcM,KAAd;AAAA,WACpB,CAAC,CAAC,+BAAUR,QAAQ,CAACS,QAAnB,EAA6B;AAC7BD,MAAAA,KAAK,EAAEA,KADsB;AAE7BE,MAAAA,IAAI,EAAER;AAFuB,KAA7B,CADkB;AAAA,GAAtB;;AAMA,SAAO;AAACD,IAAAA,QAAQ,EAARA,QAAD;AAAWM,IAAAA,aAAa,EAAbA;AAAX,GAAP;AACD,CAnBM","sourcesContent":["import {matchPath, useLocation} from 'react-router-dom';\nimport {useHistory} from 'react-router';\n\n\nexport const useNavigationHelper = () => {\n const history = useHistory();\n const location = useLocation();\n\n const navigate = (url: string, isExternal: boolean) => {\n if (isExternal) {\n window.location.href = url;\n } else {\n history.push(url);\n }\n };\n\n const isActiveRoute = (url: string, exact: boolean): boolean =>\n !!matchPath(location.pathname, {\n exact: exact,\n path: url\n });\n\n return {navigate, isActiveRoute};\n}\n"],"file":"NavigationHelper.cjs"}
|