@laerdal/life-react-components 1.2.2-dev.1.full → 1.2.2-dev.11.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.
Files changed (168) hide show
  1. package/dist/esm/Breadcrumb/Breadcrumb.js.map +1 -1
  2. package/dist/esm/Button/Iconbutton.js +11 -4
  3. package/dist/esm/Button/Iconbutton.js.map +1 -1
  4. package/dist/esm/Dropdown/CommonStyling.js +2 -1
  5. package/dist/esm/Dropdown/CommonStyling.js.map +1 -1
  6. package/dist/esm/Dropdown/DropdownContent.js +13 -1
  7. package/dist/esm/Dropdown/DropdownContent.js.map +1 -1
  8. package/dist/esm/GlobalNavigationBar/ExtendedMainMenu.js +2 -1
  9. package/dist/esm/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  10. package/dist/esm/GlobalNavigationBar/GlobalNavigationBar.js +6 -2
  11. package/dist/esm/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  12. package/dist/esm/GlobalNavigationBar/UserMenu/MobileUserMenu.js +2 -1
  13. package/dist/esm/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
  14. package/dist/esm/GlobalNavigationBar/UserMenu/UserMenu.js +2 -1
  15. package/dist/esm/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  16. package/dist/esm/GlobalNavigationBar/mobile/CommonStyles.js +8 -1
  17. package/dist/esm/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  18. package/dist/esm/InputFields/Checkbox.js +0 -1
  19. package/dist/esm/InputFields/Checkbox.js.map +1 -1
  20. package/dist/esm/InputFields/DatepickerField.js +6 -0
  21. package/dist/esm/InputFields/DatepickerField.js.map +1 -1
  22. package/dist/esm/InputFields/PasswordField.js +1 -1
  23. package/dist/esm/InputFields/PasswordField.js.map +1 -1
  24. package/dist/esm/InputFields/SearchBar.js +28 -31
  25. package/dist/esm/InputFields/SearchBar.js.map +1 -1
  26. package/dist/esm/List/ListRow.js +4 -1
  27. package/dist/esm/List/ListRow.js.map +1 -1
  28. package/dist/esm/Modals/ModalContainer.js +3 -1
  29. package/dist/esm/Modals/ModalContainer.js.map +1 -1
  30. package/dist/esm/NavItem/NavItem.js +4 -0
  31. package/dist/esm/NavItem/NavItem.js.map +1 -1
  32. package/dist/esm/NotificationDot/NotificationDot.js +1 -1
  33. package/dist/esm/NotificationDot/NotificationDot.js.map +1 -1
  34. package/dist/esm/NotificationDot/__tests__/NotificationDot.test.js +40 -0
  35. package/dist/esm/NotificationDot/__tests__/NotificationDot.test.js.map +1 -0
  36. package/dist/esm/Paginator/Paginator.js +60 -48
  37. package/dist/esm/Paginator/Paginator.js.map +1 -1
  38. package/dist/esm/Paginator/__tests__/Paginator.test.js +4 -4
  39. package/dist/esm/Paginator/__tests__/Paginator.test.js.map +1 -1
  40. package/dist/esm/Switcher/MobileSwitcherMenu.js +2 -1
  41. package/dist/esm/Switcher/MobileSwitcherMenu.js.map +1 -1
  42. package/dist/esm/Switcher/SwitcherMenuItem.js +5 -0
  43. package/dist/esm/Switcher/SwitcherMenuItem.js.map +1 -1
  44. package/dist/esm/Tabs/HorizontalTabs.js +10 -4
  45. package/dist/esm/Tabs/HorizontalTabs.js.map +1 -1
  46. package/dist/esm/Tabs/TabLink.js +15 -4
  47. package/dist/esm/Tabs/TabLink.js.map +1 -1
  48. package/dist/esm/Toasters/Toast.js +5 -1
  49. package/dist/esm/Toasters/Toast.js.map +1 -1
  50. package/dist/esm/Toasters/ToastContext.js +2 -1
  51. package/dist/esm/Toasters/ToastContext.js.map +1 -1
  52. package/dist/esm/Tooltips/TooltipStyles.js +3 -2
  53. package/dist/esm/Tooltips/TooltipStyles.js.map +1 -1
  54. package/dist/esm/styles/z-indexes.js +14 -0
  55. package/dist/esm/styles/z-indexes.js.map +1 -0
  56. package/dist/js/Breadcrumb/Breadcrumb.js.map +1 -1
  57. package/dist/js/Button/Iconbutton.d.ts +2 -1
  58. package/dist/js/Button/Iconbutton.js +22 -11
  59. package/dist/js/Button/Iconbutton.js.map +1 -1
  60. package/dist/js/Dropdown/CommonStyling.js +3 -1
  61. package/dist/js/Dropdown/CommonStyling.js.map +1 -1
  62. package/dist/js/Dropdown/DropdownContent.js +5 -3
  63. package/dist/js/Dropdown/DropdownContent.js.map +1 -1
  64. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js +3 -1
  65. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  66. package/dist/js/GlobalNavigationBar/GlobalNavigationBar.js +5 -3
  67. package/dist/js/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  68. package/dist/js/GlobalNavigationBar/UserMenu/MobileUserMenu.js +3 -1
  69. package/dist/js/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
  70. package/dist/js/GlobalNavigationBar/UserMenu/UserMenu.js +3 -1
  71. package/dist/js/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  72. package/dist/js/GlobalNavigationBar/mobile/CommonStyles.js +4 -2
  73. package/dist/js/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  74. package/dist/js/InputFields/Checkbox.js +0 -1
  75. package/dist/js/InputFields/Checkbox.js.map +1 -1
  76. package/dist/js/InputFields/DatepickerField.js +3 -1
  77. package/dist/js/InputFields/DatepickerField.js.map +1 -1
  78. package/dist/js/InputFields/PasswordField.js +1 -1
  79. package/dist/js/InputFields/PasswordField.js.map +1 -1
  80. package/dist/js/InputFields/SearchBar.js +28 -34
  81. package/dist/js/InputFields/SearchBar.js.map +1 -1
  82. package/dist/js/List/ListRow.js +3 -1
  83. package/dist/js/List/ListRow.js.map +1 -1
  84. package/dist/js/Modals/ModalContainer.js +3 -1
  85. package/dist/js/Modals/ModalContainer.js.map +1 -1
  86. package/dist/js/NavItem/NavItem.js +3 -1
  87. package/dist/js/NavItem/NavItem.js.map +1 -1
  88. package/dist/js/NotificationDot/NotificationDot.js +1 -1
  89. package/dist/js/NotificationDot/NotificationDot.js.map +1 -1
  90. package/dist/js/NotificationDot/__tests__/NotificationDot.test.js +86 -0
  91. package/dist/js/NotificationDot/__tests__/NotificationDot.test.js.map +1 -0
  92. package/dist/js/Paginator/Paginator.js +39 -38
  93. package/dist/js/Paginator/Paginator.js.map +1 -1
  94. package/dist/js/Paginator/__tests__/Paginator.test.js +6 -6
  95. package/dist/js/Paginator/__tests__/Paginator.test.js.map +1 -1
  96. package/dist/js/Switcher/MobileSwitcherMenu.js +3 -1
  97. package/dist/js/Switcher/MobileSwitcherMenu.js.map +1 -1
  98. package/dist/js/Switcher/SwitcherMenuItem.js +3 -1
  99. package/dist/js/Switcher/SwitcherMenuItem.js.map +1 -1
  100. package/dist/js/Tabs/HorizontalTabs.js +4 -2
  101. package/dist/js/Tabs/HorizontalTabs.js.map +1 -1
  102. package/dist/js/Tabs/TabLink.js +4 -2
  103. package/dist/js/Tabs/TabLink.js.map +1 -1
  104. package/dist/js/Toasters/Toast.js +8 -4
  105. package/dist/js/Toasters/Toast.js.map +1 -1
  106. package/dist/js/Toasters/ToastContext.js +3 -1
  107. package/dist/js/Toasters/ToastContext.js.map +1 -1
  108. package/dist/js/Tooltips/TooltipStyles.js +4 -2
  109. package/dist/js/Tooltips/TooltipStyles.js.map +1 -1
  110. package/dist/js/styles/z-indexes.d.ts +13 -0
  111. package/dist/js/styles/z-indexes.js +21 -0
  112. package/dist/js/styles/z-indexes.js.map +1 -0
  113. package/dist/umd/Breadcrumb/Breadcrumb.js.map +1 -1
  114. package/dist/umd/Button/Iconbutton.js +22 -61
  115. package/dist/umd/Button/Iconbutton.js.map +1 -1
  116. package/dist/umd/Dropdown/CommonStyling.js +5 -5
  117. package/dist/umd/Dropdown/CommonStyling.js.map +1 -1
  118. package/dist/umd/Dropdown/DropdownContent.js +16 -5
  119. package/dist/umd/Dropdown/DropdownContent.js.map +1 -1
  120. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js +5 -5
  121. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  122. package/dist/umd/GlobalNavigationBar/GlobalNavigationBar.js +9 -6
  123. package/dist/umd/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  124. package/dist/umd/GlobalNavigationBar/UserMenu/MobileUserMenu.js +5 -5
  125. package/dist/umd/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
  126. package/dist/umd/GlobalNavigationBar/UserMenu/UserMenu.js +5 -5
  127. package/dist/umd/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  128. package/dist/umd/GlobalNavigationBar/mobile/CommonStyles.js +11 -5
  129. package/dist/umd/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  130. package/dist/umd/InputFields/Checkbox.js +0 -1
  131. package/dist/umd/InputFields/Checkbox.js.map +1 -1
  132. package/dist/umd/InputFields/DatepickerField.js +9 -4
  133. package/dist/umd/InputFields/DatepickerField.js.map +1 -1
  134. package/dist/umd/InputFields/PasswordField.js +1 -1
  135. package/dist/umd/InputFields/PasswordField.js.map +1 -1
  136. package/dist/umd/InputFields/SearchBar.js +33 -34
  137. package/dist/umd/InputFields/SearchBar.js.map +1 -1
  138. package/dist/umd/List/ListRow.js +7 -5
  139. package/dist/umd/List/ListRow.js.map +1 -1
  140. package/dist/umd/Modals/ModalContainer.js +6 -5
  141. package/dist/umd/Modals/ModalContainer.js.map +1 -1
  142. package/dist/umd/NavItem/NavItem.js +7 -4
  143. package/dist/umd/NavItem/NavItem.js.map +1 -1
  144. package/dist/umd/NotificationDot/NotificationDot.js +1 -1
  145. package/dist/umd/NotificationDot/NotificationDot.js.map +1 -1
  146. package/dist/umd/NotificationDot/__tests__/NotificationDot.test.js +61 -0
  147. package/dist/umd/NotificationDot/__tests__/NotificationDot.test.js.map +1 -0
  148. package/dist/umd/Paginator/Paginator.js +60 -51
  149. package/dist/umd/Paginator/Paginator.js.map +1 -1
  150. package/dist/umd/Paginator/__tests__/Paginator.test.js +4 -4
  151. package/dist/umd/Paginator/__tests__/Paginator.test.js.map +1 -1
  152. package/dist/umd/Switcher/MobileSwitcherMenu.js +5 -5
  153. package/dist/umd/Switcher/MobileSwitcherMenu.js.map +1 -1
  154. package/dist/umd/Switcher/SwitcherMenuItem.js +8 -4
  155. package/dist/umd/Switcher/SwitcherMenuItem.js.map +1 -1
  156. package/dist/umd/Tabs/HorizontalTabs.js +12 -7
  157. package/dist/umd/Tabs/HorizontalTabs.js.map +1 -1
  158. package/dist/umd/Tabs/TabLink.js +18 -8
  159. package/dist/umd/Tabs/TabLink.js.map +1 -1
  160. package/dist/umd/Toasters/Toast.js +5 -1
  161. package/dist/umd/Toasters/Toast.js.map +1 -1
  162. package/dist/umd/Toasters/ToastContext.js +5 -5
  163. package/dist/umd/Toasters/ToastContext.js.map +1 -1
  164. package/dist/umd/Tooltips/TooltipStyles.js +6 -6
  165. package/dist/umd/Tooltips/TooltipStyles.js.map +1 -1
  166. package/dist/umd/styles/z-indexes.js +33 -0
  167. package/dist/umd/styles/z-indexes.js.map +1 -0
  168. package/package.json +10 -19
@@ -12,10 +12,14 @@ import { Menu } from '../icons/systemicons/SystemIcons';
12
12
  import UserMenu from './UserMenu/UserMenu';
13
13
  import useClickOutside from '../hooks/useClickOutside';
14
14
  import { Menu as MobileMenuWrapper } from './mobile/CommonStyles';
15
+ import { Z_INDEXES } from '../styles/z-indexes';
15
16
  const HeaderWrapper = styled.header`
16
17
  background: white;
17
18
  border-bottom: 1px solid ${COLORS.neutral_200};
18
-
19
+
20
+ z-index: ${Z_INDEXES.sticky_menu};
21
+ position: relative;
22
+
19
23
  height: 48px;
20
24
 
21
25
  ${BREAKPOINTS.SMALL} {
@@ -51,7 +55,7 @@ const MenuWrapper = styled.div`
51
55
  overflow-y: hidden;
52
56
  bottom: 0;
53
57
  right: 0;
54
- z-index: 1;
58
+ z-index: ${Z_INDEXES.backdrop};
55
59
  `;
56
60
  const UserMenuWrapper = styled.div`
57
61
  background-color: ${COLORS.white};
@@ -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","HeaderWrapper","header","neutral_200","SMALL","MEDIUM","RowLayout","div","RightSide","MenuWrapper","props","isVisible","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","showMenu","setShowMenu","useState","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';\n\nconst HeaderWrapper = styled.header`\n background: white;\n border-bottom: 1px solid ${COLORS.neutral_200};\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: 1;\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","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","showMenu","setShowMenu","useState","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"}
@@ -7,6 +7,7 @@ import { Button, IconButton } from '../../Button';
7
7
  import { ArrowLineLeft, Close } from '../../icons/systemicons/SystemIcons';
8
8
  import { flowDown, Right, UserMenuSectionListStyling } from '../mobile/CommonStyles';
9
9
  import { ComponentSStyling } from '../../styles/typography';
10
+ import { Z_INDEXES } from '../../styles/z-indexes';
10
11
  const Menu = styled.ul`
11
12
  list-style: none;
12
13
  margin: 0;
@@ -17,7 +18,7 @@ const Menu = styled.ul`
17
18
  animation: ${flowDown} 0.2s ease-in-out;
18
19
  position: absolute;
19
20
  border-radius: 4px;
20
- z-index: 100;
21
+ z-index: ${Z_INDEXES.fixed_menu};
21
22
  height: 100%;
22
23
  width: 320px;
23
24
  padding-inline-start: 0;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/GlobalNavigationBar/UserMenu/MobileUserMenu.tsx"],"names":["React","styled","BREAKPOINTS","COLORS","ComponentTextStyle","scrollBarStyling","MenuLink","Button","IconButton","ArrowLineLeft","Close","flowDown","Right","UserMenuSectionListStyling","ComponentSStyling","Menu","ul","white","SMALL","MenuSection","li","MenuSectionList","Top","div","neutral_600","Regular","LabelLine","span","neutral_20","StyledMenulink","MobileUserMenu","accountMenuHeader","firstName","lastName","email","organizationName","clickMenuAction","accountSection","organizationSection","supportSection","signOut","signOutLabel","useEffect","handleKeyPress","e","keyCode","document","addEventListener","removeEventListener","length","map","element","to","label","isExternal","display","margin","width","preventDefault"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, scrollBarStyling} from '../../styles';\n\nimport MenuLink from './MenuLink';\nimport {UserMenuItem} from '../../types';\nimport {Button, IconButton} from '../../Button';\nimport {ArrowLineLeft, Close} from '../../icons/systemicons/SystemIcons';\nimport {flowDown, Right, UserMenuSectionListStyling} from '../mobile/CommonStyles';\nimport {ComponentSStyling} from '../../styles/typography';\n\nconst Menu = styled.ul`\n list-style: none;\n margin: 0;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n -webkit-animation: ${flowDown} 0.2s ease-in-out;\n animation: ${flowDown} 0.2s ease-in-out;\n position: absolute;\n border-radius: 4px;\n z-index: 100;\n height: 100%;\n width: 320px;\n padding-inline-start: 0;\n overflow-y: scroll;\n ${BREAKPOINTS.SMALL} {\n min-width: 360px;\n }\n\n .open & {\n display: flex;\n flex-direction: column;\n }\n\n .signOutButton {\n height: 40px !important;\n width: 288px !important;\n\n ${BREAKPOINTS.SMALL} {\n width: 328px !important;\n }\n }\n\n ${scrollBarStyling};\n`;\n\nconst MenuSection = styled.li`\n padding: 8px 0;\n position: relative;\n\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nconst MenuSectionList = styled.ul`\n list-style: none;\n margin: 0;\n overflow-y: unset !important;\n padding-inline-start: 0;\n ${UserMenuSectionListStyling};\n`;\n\nconst Top = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 22px 12px 0 12px;\n color: ${COLORS.neutral_600};\n\n h3 {\n margin-block-start: 0 !important;\n margin-block-end: 0 !important;\n margin-inline-start: 0;\n margin-inline-end: 0;\n margin-left: 24px;\n\n ${ComponentSStyling(ComponentTextStyle.Regular, 'inherit')}\n }\n`;\n\nconst LabelLine = styled.span`\n height: 32px;\n background-color: ${COLORS.neutral_20};\n padding-left: 24px;\n display: flex;\n line-height: 32px;\n`;\n\nconst StyledMenulink = styled(MenuLink)`\n width: 100%;\n height: 48px;\n margin: 0;\n \n & a {\n height: 100%;\n }\n`;\n\ninterface Props {\n accountMenuHeader: string;\n firstName: string;\n lastName: string;\n email: string;\n organizationName: string;\n clickMenuAction: () => void;\n accountSection?: UserMenuItem[];\n organizationSection?: UserMenuItem[];\n supportSection?: UserMenuItem[];\n signOut?: (e: any) => void;\n signOutLabel?: string;\n}\n\nconst MobileUserMenu = ({\n accountMenuHeader,\n firstName,\n lastName,\n email,\n organizationName,\n clickMenuAction,\n accountSection,\n organizationSection,\n supportSection,\n signOut,\n signOutLabel,\n}: Props) => {\n React.useEffect(() => {\n function handleKeyPress(e: any) {\n if (e.keyCode === 27) {\n clickMenuAction();\n }\n }\n\n document.addEventListener('keydown', handleKeyPress, false);\n return () => {\n document.removeEventListener('keydown', handleKeyPress, false);\n };\n }, [clickMenuAction]);\n\n return (\n <Menu onClick={() => {}} role=\"menu\" aria-labelledby=\"UserMenuButton\">\n <Top key=\"MobileUserMenuTopSection\">\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <ArrowLineLeft size=\"24px\" color={COLORS.neutral_600} />\n </IconButton>\n <h3>{accountMenuHeader}</h3>\n <Right>\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <Close size=\"24px\" />\n </IconButton>\n </Right>\n </Top>\n {accountSection && accountSection?.length > 0 && (\n <MenuSection key=\"MobileAccountSection\">\n <LabelLine data-hj-suppress>{`${firstName} ${lastName}`}</LabelLine>\n <MenuSectionList>\n {accountSection?.map((element) => (\n <StyledMenulink key={element?.to} to={element?.to} menuText={element?.label} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n {organizationSection && organizationSection?.length > 0 && (\n <MenuSection key=\"MObileOrganizationSection\">\n <LabelLine>{organizationName || ''}</LabelLine>\n <MenuSectionList>\n {organizationSection?.map((element) => (\n <StyledMenulink key={element?.to} to={element?.to} menuText={element?.label} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n\n {supportSection && supportSection?.length > 0 && (\n <MenuSection key=\"MobileSupportSection\">\n <LabelLine>{''}</LabelLine>\n <MenuSectionList>\n {supportSection?.map((element) => (\n <StyledMenulink key={element?.to} isExternal={element.isExternal} to={element?.to} menuText={element?.label} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n {signOut && (\n <div key=\"SignoutButton\" style={{ display: 'flex', margin: 'auto 0 12px 0' }}>\n <Button\n style={{ width: '90%', margin: '0 auto' }}\n variant=\"secondary\"\n onClick={(e) => {\n e.preventDefault();\n signOut(e);\n }}>\n {signOutLabel}\n </Button>\n </div>\n )}\n </Menu>\n );\n};\n\nexport default MobileUserMenu;\n"],"file":"MobileUserMenu.js"}
1
+ {"version":3,"sources":["../../../../src/GlobalNavigationBar/UserMenu/MobileUserMenu.tsx"],"names":["React","styled","BREAKPOINTS","COLORS","ComponentTextStyle","scrollBarStyling","MenuLink","Button","IconButton","ArrowLineLeft","Close","flowDown","Right","UserMenuSectionListStyling","ComponentSStyling","Z_INDEXES","Menu","ul","white","fixed_menu","SMALL","MenuSection","li","MenuSectionList","Top","div","neutral_600","Regular","LabelLine","span","neutral_20","StyledMenulink","MobileUserMenu","accountMenuHeader","firstName","lastName","email","organizationName","clickMenuAction","accountSection","organizationSection","supportSection","signOut","signOutLabel","useEffect","handleKeyPress","e","keyCode","document","addEventListener","removeEventListener","length","map","element","to","label","isExternal","display","margin","width","preventDefault"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, scrollBarStyling} from '../../styles';\n\nimport MenuLink from './MenuLink';\nimport {UserMenuItem} from '../../types';\nimport {Button, IconButton} from '../../Button';\nimport {ArrowLineLeft, Close} from '../../icons/systemicons/SystemIcons';\nimport {flowDown, Right, UserMenuSectionListStyling} from '../mobile/CommonStyles';\nimport {ComponentSStyling} from '../../styles/typography';\nimport {Z_INDEXES} from '../../styles/z-indexes';\n\nconst Menu = styled.ul`\n list-style: none;\n margin: 0;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n -webkit-animation: ${flowDown} 0.2s ease-in-out;\n animation: ${flowDown} 0.2s ease-in-out;\n position: absolute;\n border-radius: 4px;\n z-index: ${Z_INDEXES.fixed_menu};\n height: 100%;\n width: 320px;\n padding-inline-start: 0;\n overflow-y: scroll;\n ${BREAKPOINTS.SMALL} {\n min-width: 360px;\n }\n\n .open & {\n display: flex;\n flex-direction: column;\n }\n\n .signOutButton {\n height: 40px !important;\n width: 288px !important;\n\n ${BREAKPOINTS.SMALL} {\n width: 328px !important;\n }\n }\n\n ${scrollBarStyling};\n`;\n\nconst MenuSection = styled.li`\n padding: 8px 0;\n position: relative;\n\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nconst MenuSectionList = styled.ul`\n list-style: none;\n margin: 0;\n overflow-y: unset !important;\n padding-inline-start: 0;\n ${UserMenuSectionListStyling};\n`;\n\nconst Top = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 22px 12px 0 12px;\n color: ${COLORS.neutral_600};\n\n h3 {\n margin-block-start: 0 !important;\n margin-block-end: 0 !important;\n margin-inline-start: 0;\n margin-inline-end: 0;\n margin-left: 24px;\n\n ${ComponentSStyling(ComponentTextStyle.Regular, 'inherit')}\n }\n`;\n\nconst LabelLine = styled.span`\n height: 32px;\n background-color: ${COLORS.neutral_20};\n padding-left: 24px;\n display: flex;\n line-height: 32px;\n`;\n\nconst StyledMenulink = styled(MenuLink)`\n width: 100%;\n height: 48px;\n margin: 0;\n \n & a {\n height: 100%;\n }\n`;\n\ninterface Props {\n accountMenuHeader: string;\n firstName: string;\n lastName: string;\n email: string;\n organizationName: string;\n clickMenuAction: () => void;\n accountSection?: UserMenuItem[];\n organizationSection?: UserMenuItem[];\n supportSection?: UserMenuItem[];\n signOut?: (e: any) => void;\n signOutLabel?: string;\n}\n\nconst MobileUserMenu = ({\n accountMenuHeader,\n firstName,\n lastName,\n email,\n organizationName,\n clickMenuAction,\n accountSection,\n organizationSection,\n supportSection,\n signOut,\n signOutLabel,\n}: Props) => {\n React.useEffect(() => {\n function handleKeyPress(e: any) {\n if (e.keyCode === 27) {\n clickMenuAction();\n }\n }\n\n document.addEventListener('keydown', handleKeyPress, false);\n return () => {\n document.removeEventListener('keydown', handleKeyPress, false);\n };\n }, [clickMenuAction]);\n\n return (\n <Menu onClick={() => {}} role=\"menu\" aria-labelledby=\"UserMenuButton\">\n <Top key=\"MobileUserMenuTopSection\">\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <ArrowLineLeft size=\"24px\" color={COLORS.neutral_600} />\n </IconButton>\n <h3>{accountMenuHeader}</h3>\n <Right>\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <Close size=\"24px\" />\n </IconButton>\n </Right>\n </Top>\n {accountSection && accountSection?.length > 0 && (\n <MenuSection key=\"MobileAccountSection\">\n <LabelLine data-hj-suppress>{`${firstName} ${lastName}`}</LabelLine>\n <MenuSectionList>\n {accountSection?.map((element) => (\n <StyledMenulink key={element?.to} to={element?.to} menuText={element?.label} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n {organizationSection && organizationSection?.length > 0 && (\n <MenuSection key=\"MObileOrganizationSection\">\n <LabelLine>{organizationName || ''}</LabelLine>\n <MenuSectionList>\n {organizationSection?.map((element) => (\n <StyledMenulink key={element?.to} to={element?.to} menuText={element?.label} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n\n {supportSection && supportSection?.length > 0 && (\n <MenuSection key=\"MobileSupportSection\">\n <LabelLine>{''}</LabelLine>\n <MenuSectionList>\n {supportSection?.map((element) => (\n <StyledMenulink key={element?.to} isExternal={element.isExternal} to={element?.to} menuText={element?.label} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n {signOut && (\n <div key=\"SignoutButton\" style={{ display: 'flex', margin: 'auto 0 12px 0' }}>\n <Button\n style={{ width: '90%', margin: '0 auto' }}\n variant=\"secondary\"\n onClick={(e) => {\n e.preventDefault();\n signOut(e);\n }}>\n {signOutLabel}\n </Button>\n </div>\n )}\n </Menu>\n );\n};\n\nexport default MobileUserMenu;\n"],"file":"MobileUserMenu.js"}
@@ -8,6 +8,7 @@ import MenuLink from './MenuLink';
8
8
  import { Size } from '../../types';
9
9
  import { flowDown, UserMenuSectionListStyling } from '../mobile/CommonStyles';
10
10
  import { ComponentXSStyling, HeadlineXXSStyling } from '../../styles/typography';
11
+ import { Z_INDEXES } from '../../styles/z-indexes';
11
12
  const Menu = styled.ul`
12
13
  list-style: none;
13
14
  margin: 0;
@@ -22,7 +23,7 @@ const Menu = styled.ul`
22
23
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
23
24
  border-radius: 4px;
24
25
  border: 1px solid ${COLORS.neutral_200};
25
- z-index: 100;
26
+ z-index: ${Z_INDEXES.fixed_menu};
26
27
 
27
28
  .open & {
28
29
  display: block;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/GlobalNavigationBar/UserMenu/UserMenu.tsx"],"names":["React","styled","Button","COLORS","ComponentTextStyle","Avatar","AvatarContainer","MenuLink","Size","flowDown","UserMenuSectionListStyling","ComponentXSStyling","HeadlineXXSStyling","Menu","ul","white","neutral_200","MenuSection","li","neutral_100","MenuSectionList","StyledAvatarContainer","AvatarAndName","div","neutral_600","Regular","NameAndEmail","OrganizationName","span","Bold","UserMenu","firstName","lastName","email","organizationName","clickMenuAction","accountSection","organizationSection","supportSection","signOut","signOutLabel","useEffect","handleKeyPress","e","keyCode","document","addEventListener","removeEventListener","primary_500","length","map","element","to","label","icon","onClick","isExternal","Large","preventDefault"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {Button} from '../../Button';\nimport {COLORS, ComponentTextStyle} from '../../styles';\nimport Avatar, {AvatarContainer} from '../Avatar';\nimport MenuLink from './MenuLink';\nimport { UserMenuItem, Size } from '../../types';\nimport {flowDown, UserMenuSectionListStyling} from '../mobile/CommonStyles';\nimport {ComponentXSStyling, HeadlineXXSStyling} from '../../styles/typography';\n\nconst Menu = styled.ul`\n list-style: none;\n margin: 0;\n padding: 0;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n min-width: 312px;\n -webkit-animation: ${flowDown} 0.2s ease-in-out;\n animation: ${flowDown} 0.2s ease-in-out;\n position: absolute;\n box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n border: 1px solid ${COLORS.neutral_200};\n z-index: 100;\n\n .open & {\n display: block;\n }\n \n .sign-out{\n width: 90%;\n box-sizing: border-box;\n display: flex;\n justify-content: center;\n align-items: center;\n margin: 8px auto 12px auto;\n }\n`;\n\nconst MenuSection = styled.li`\n padding: 8px 0;\n position: relative;\n\n &:not(:first-of-type)::before {\n content: '';\n position: absolute;\n background: ${COLORS.neutral_100};\n height: 1px;\n top: 0;\n left: 16px;\n right: 16px;\n }\n\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nconst MenuSectionList = styled.ul`\n list-style: none;\n margin: 0;\n padding: 0;\n\n ${UserMenuSectionListStyling};\n`;\n\nconst StyledAvatarContainer = styled(AvatarContainer)`\n margin: 25px 0 0 25px;\n pointer-events: none;\n`;\n\nconst AvatarAndName = styled.div`\n display: flex;\n flex-direction: row;\n\n h5 {\n margin: 28px 0 0 20px;\n ${HeadlineXXSStyling(COLORS.neutral_600)}\n }\n span {\n margin: 0 0 0 20px;\n ${ComponentXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n`;\n\nconst NameAndEmail = styled.div`\n display: flex;\n flex-direction: column;\n`;\n\nconst OrganizationName = styled.span`\n margin-left: 25px;\n ${ComponentXSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n`;\n\ninterface Props {\n firstName: string;\n lastName: string;\n email: string;\n organizationName: string;\n clickMenuAction: () => void;\n accountSection?: UserMenuItem[];\n organizationSection?: UserMenuItem[];\n supportSection?: UserMenuItem[];\n signOut?: (e: any) => void;\n signOutLabel?: string;\n}\n\nconst UserMenu = ({ firstName, lastName, email, organizationName, clickMenuAction, accountSection, organizationSection, supportSection, signOut, signOutLabel }: Props) => {\n React.useEffect(() => {\n function handleKeyPress(e: any) {\n if (e.keyCode === 27) {\n clickMenuAction();\n }\n }\n\n document.addEventListener('keydown', handleKeyPress, false);\n return () => {\n document.removeEventListener('keydown', handleKeyPress, false);\n };\n }, [clickMenuAction]);\n\n return (\n <Menu onClick={clickMenuAction} role=\"menu\" aria-labelledby=\"UserMenuButton\">\n <AvatarAndName key=\"AvatarAndNameSection\">\n <StyledAvatarContainer hidePadding={true}>\n <Avatar size={48} firstName={firstName} lastName={lastName} color={COLORS.primary_500} profileMenuLink=\"#TODO\" />\n </StyledAvatarContainer>\n <NameAndEmail>\n <h5 data-hj-suppress>{`${firstName} ${lastName}`}</h5>\n <span data-hj-suppress>{email}</span>\n </NameAndEmail>\n </AvatarAndName>\n {accountSection && accountSection?.length > 0 && (\n <MenuSection key=\"MobileAccountSection\">\n <MenuSectionList>\n {accountSection?.map(element => (\n <MenuLink key={element?.to} to={element?.to} menuText={element?.label} Icon={element?.icon} onClick={element?.onClick} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n\n {organizationSection && organizationSection?.length > 0 && (\n <MenuSection key=\"MobileOrganizationSection\">\n <OrganizationName>{organizationName || ''}</OrganizationName>\n <MenuSectionList>\n {organizationSection?.map(element => (\n <MenuLink key={element?.to} to={element?.to} menuText={element?.label} Icon={element?.icon} onClick={element?.onClick} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n\n <MenuSection key=\"MobileSupportSection\">\n <MenuSectionList>\n {supportSection?.map(element => (\n <MenuLink key={element?.to} isExternal={element.isExternal} to={element?.to} menuText={element?.label} Icon={element?.icon} onClick={element?.onClick} />\n ))}\n {signOut && (\n <Button\n width=\"90%\"\n className=\"UserMenuLink sign-out\"\n variant=\"secondary\"\n size={Size.Large}\n onClick={e => {\n e.preventDefault();\n signOut(e);\n }}>\n {signOutLabel}\n </Button>\n )}\n </MenuSectionList>\n </MenuSection>\n </Menu>\n );\n};\n\nexport default UserMenu;\n"],"file":"UserMenu.js"}
1
+ {"version":3,"sources":["../../../../src/GlobalNavigationBar/UserMenu/UserMenu.tsx"],"names":["React","styled","Button","COLORS","ComponentTextStyle","Avatar","AvatarContainer","MenuLink","Size","flowDown","UserMenuSectionListStyling","ComponentXSStyling","HeadlineXXSStyling","Z_INDEXES","Menu","ul","white","neutral_200","fixed_menu","MenuSection","li","neutral_100","MenuSectionList","StyledAvatarContainer","AvatarAndName","div","neutral_600","Regular","NameAndEmail","OrganizationName","span","Bold","UserMenu","firstName","lastName","email","organizationName","clickMenuAction","accountSection","organizationSection","supportSection","signOut","signOutLabel","useEffect","handleKeyPress","e","keyCode","document","addEventListener","removeEventListener","primary_500","length","map","element","to","label","icon","onClick","isExternal","Large","preventDefault"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {Button} from '../../Button';\nimport {COLORS, ComponentTextStyle} from '../../styles';\nimport Avatar, {AvatarContainer} from '../Avatar';\nimport MenuLink from './MenuLink';\nimport { UserMenuItem, Size } from '../../types';\nimport {flowDown, UserMenuSectionListStyling} from '../mobile/CommonStyles';\nimport {ComponentXSStyling, HeadlineXXSStyling} from '../../styles/typography';\nimport {Z_INDEXES} from '../../styles/z-indexes';\n\nconst Menu = styled.ul`\n list-style: none;\n margin: 0;\n padding: 0;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n min-width: 312px;\n -webkit-animation: ${flowDown} 0.2s ease-in-out;\n animation: ${flowDown} 0.2s ease-in-out;\n position: absolute;\n box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n border: 1px solid ${COLORS.neutral_200};\n z-index: ${Z_INDEXES.fixed_menu};\n\n .open & {\n display: block;\n }\n \n .sign-out{\n width: 90%;\n box-sizing: border-box;\n display: flex;\n justify-content: center;\n align-items: center;\n margin: 8px auto 12px auto;\n }\n`;\n\nconst MenuSection = styled.li`\n padding: 8px 0;\n position: relative;\n\n &:not(:first-of-type)::before {\n content: '';\n position: absolute;\n background: ${COLORS.neutral_100};\n height: 1px;\n top: 0;\n left: 16px;\n right: 16px;\n }\n\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nconst MenuSectionList = styled.ul`\n list-style: none;\n margin: 0;\n padding: 0;\n\n ${UserMenuSectionListStyling};\n`;\n\nconst StyledAvatarContainer = styled(AvatarContainer)`\n margin: 25px 0 0 25px;\n pointer-events: none;\n`;\n\nconst AvatarAndName = styled.div`\n display: flex;\n flex-direction: row;\n\n h5 {\n margin: 28px 0 0 20px;\n ${HeadlineXXSStyling(COLORS.neutral_600)}\n }\n span {\n margin: 0 0 0 20px;\n ${ComponentXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n`;\n\nconst NameAndEmail = styled.div`\n display: flex;\n flex-direction: column;\n`;\n\nconst OrganizationName = styled.span`\n margin-left: 25px;\n ${ComponentXSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n`;\n\ninterface Props {\n firstName: string;\n lastName: string;\n email: string;\n organizationName: string;\n clickMenuAction: () => void;\n accountSection?: UserMenuItem[];\n organizationSection?: UserMenuItem[];\n supportSection?: UserMenuItem[];\n signOut?: (e: any) => void;\n signOutLabel?: string;\n}\n\nconst UserMenu = ({ firstName, lastName, email, organizationName, clickMenuAction, accountSection, organizationSection, supportSection, signOut, signOutLabel }: Props) => {\n React.useEffect(() => {\n function handleKeyPress(e: any) {\n if (e.keyCode === 27) {\n clickMenuAction();\n }\n }\n\n document.addEventListener('keydown', handleKeyPress, false);\n return () => {\n document.removeEventListener('keydown', handleKeyPress, false);\n };\n }, [clickMenuAction]);\n\n return (\n <Menu onClick={clickMenuAction} role=\"menu\" aria-labelledby=\"UserMenuButton\">\n <AvatarAndName key=\"AvatarAndNameSection\">\n <StyledAvatarContainer hidePadding={true}>\n <Avatar size={48} firstName={firstName} lastName={lastName} color={COLORS.primary_500} profileMenuLink=\"#TODO\" />\n </StyledAvatarContainer>\n <NameAndEmail>\n <h5 data-hj-suppress>{`${firstName} ${lastName}`}</h5>\n <span data-hj-suppress>{email}</span>\n </NameAndEmail>\n </AvatarAndName>\n {accountSection && accountSection?.length > 0 && (\n <MenuSection key=\"MobileAccountSection\">\n <MenuSectionList>\n {accountSection?.map(element => (\n <MenuLink key={element?.to} to={element?.to} menuText={element?.label} Icon={element?.icon} onClick={element?.onClick} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n\n {organizationSection && organizationSection?.length > 0 && (\n <MenuSection key=\"MobileOrganizationSection\">\n <OrganizationName>{organizationName || ''}</OrganizationName>\n <MenuSectionList>\n {organizationSection?.map(element => (\n <MenuLink key={element?.to} to={element?.to} menuText={element?.label} Icon={element?.icon} onClick={element?.onClick} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n\n <MenuSection key=\"MobileSupportSection\">\n <MenuSectionList>\n {supportSection?.map(element => (\n <MenuLink key={element?.to} isExternal={element.isExternal} to={element?.to} menuText={element?.label} Icon={element?.icon} onClick={element?.onClick} />\n ))}\n {signOut && (\n <Button\n width=\"90%\"\n className=\"UserMenuLink sign-out\"\n variant=\"secondary\"\n size={Size.Large}\n onClick={e => {\n e.preventDefault();\n signOut(e);\n }}>\n {signOutLabel}\n </Button>\n )}\n </MenuSectionList>\n </MenuSection>\n </Menu>\n );\n};\n\nexport default UserMenu;\n"],"file":"UserMenu.js"}
@@ -2,6 +2,7 @@ import styled, { css, keyframes } from 'styled-components';
2
2
  import { BREAKPOINTS, COLORS } from '../../styles';
3
3
  import { NavLink } from 'react-router-dom';
4
4
  import { ComponentMStyling, ComponentTextStyle } from '../../styles/typography';
5
+ import { Z_INDEXES } from '../../styles/z-indexes';
5
6
  export const RowLayout = styled.div`
6
7
  display: flex;
7
8
  align-items: center;
@@ -42,7 +43,7 @@ export const Menu = styled.ul`
42
43
  top: 0;
43
44
  min-width: 300px;
44
45
  position: absolute;
45
- z-index: 100;
46
+ z-index: ${Z_INDEXES.off_canvas};
46
47
  align-items: center;
47
48
  width: 320px;
48
49
  padding-inline-start: 0;
@@ -96,7 +97,11 @@ export const MenuSectionList = styled.ul`
96
97
  }
97
98
  `;
98
99
  export const UserMenuSectionListStyling = css`
100
+ li {
101
+ position: relative;
102
+ }
99
103
  li:hover:not(.disabled) {
104
+ z-index: ${Z_INDEXES.hover};
100
105
  background-color: ${COLORS.primary_20};
101
106
  a {
102
107
  color: ${COLORS.primary_600};
@@ -107,6 +112,7 @@ export const UserMenuSectionListStyling = css`
107
112
  }
108
113
 
109
114
  li:focus-within:not(.disabled) {
115
+ z-index: ${Z_INDEXES.focus};
110
116
  box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);
111
117
  a {
112
118
  outline: none;
@@ -114,6 +120,7 @@ export const UserMenuSectionListStyling = css`
114
120
  }
115
121
 
116
122
  li:active:not(.disabled) {
123
+ z-index: ${Z_INDEXES.active};
117
124
  background: ${COLORS.primary_100};
118
125
  box-shadow: none;
119
126
  a {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/GlobalNavigationBar/mobile/CommonStyles.ts"],"names":["styled","css","keyframes","BREAKPOINTS","COLORS","NavLink","ComponentMStyling","ComponentTextStyle","RowLayout","div","Button","button","white","flowLeft","flowRight","Menu","ul","SMALL","Right","SiteName","span","neutral_600","MenuSection","li","MenuSectionList","UserMenuSectionListStyling","primary_20","primary_600","primary_500","primary_100","primary_800","neutral_300","neutral_100","MenuLink","Regular","black","MenuWrapper","props","isVisible","flowDown"],"mappings":"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","sourcesContent":["import styled, { css, keyframes } from 'styled-components';\nimport { BREAKPOINTS, COLORS } from '../../styles';\nimport { NavLink } from 'react-router-dom';\nimport { ComponentMStyling, ComponentTextStyle } from '../../styles/typography';\n\nexport const RowLayout = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const Button = styled.button`\n background-color: ${COLORS.white};\n font-weight: bold;\n border: 0;\n`;\n\nconst flowLeft = keyframes`\n 0% {\n opacity: 0;\n transform: translateX(100%);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n`;\n\nconst flowRight = keyframes`\n 0% {\n opacity: 1;\n transform: translateX(0);\n }\n to {\n opacity: 0;\n transform: translateX(100%);\n }\n`;\n\nexport const Menu = styled.ul`\n height: 100%;\n list-style: none;\n margin: 0 auto 0 auto;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n right: 0;\n top: 0;\n min-width: 300px;\n position: absolute;\n z-index: 100;\n align-items: center;\n width: 320px;\n padding-inline-start: 0;\n\n ${BREAKPOINTS.SMALL} {\n min-width: 360px;\n }\n\n .open & {\n display: block;\n -webkit-animation: ${flowLeft} 0.3s ease-in-out;\n animation: ${flowLeft} 0.3s ease-in-out;\n }\n\n .closed & {\n display: block;\n -webkit-animation: ${flowRight} 0.3s ease-in-out;\n animation: ${flowRight} 0.3s ease-in-out;\n }\n`;\n\nexport const Right = styled.div`\n display: flex;\n margin-left: auto;\n`;\n\nexport const SiteName = styled.span`\n color: ${COLORS.neutral_600};\n font-weight: bold;\n font-size: 14px;\n margin-left: 4px;\n`;\n\nexport const MenuSection = styled.li`\n margin-top: 16px;\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nexport const MenuSectionList = styled.ul`\n list-style: none;\n padding: 0;\n\n li {\n width: 80%;\n height: 48px;\n margin: 0 auto 0 12px;\n \n a {\n height: 100%;\n }\n }\n`;\n\nexport const UserMenuSectionListStyling = css`\n li:hover:not(.disabled) {\n background-color: ${COLORS.primary_20};\n a {\n color: ${COLORS.primary_600};\n }\n svg {\n color: ${COLORS.primary_600};\n }\n }\n\n li:focus-within:not(.disabled) {\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n a {\n outline: none;\n }\n }\n\n li:active:not(.disabled) {\n background: ${COLORS.primary_100};\n box-shadow: none;\n a {\n color: ${COLORS.primary_800};\n }\n svg {\n color: ${COLORS.primary_800};\n }\n }\n\n .disabled {\n a {\n color: ${COLORS.neutral_300};\n }\n svg {\n color: ${COLORS.neutral_300};\n }\n background-color: ${COLORS.neutral_100};\n }\n`;\n\nexport const MenuLink = styled(NavLink)`\n border: none;\n background: transparent;\n margin: auto;\n\n box-sizing: border-box;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n text-decoration: none;\n text-align: center;\n align-items: center;\n display: flex;\n`;\n\nexport const MenuWrapper = styled.div<MenuWrapperProps>`\n background-color: ${COLORS.white};\n display: ${(props) => (props.isVisible ? 'flex' : 'none')};\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n width: 100%;\n\n &:focus-within,\n &:hover,\n &.open {\n background: ${COLORS.white};\n }\n`;\n\ninterface MenuWrapperProps {\n isVisible: boolean;\n}\n\nexport const flowDown = keyframes`\n 0% {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n`;\n"],"file":"CommonStyles.js"}
1
+ {"version":3,"sources":["../../../../src/GlobalNavigationBar/mobile/CommonStyles.ts"],"names":["styled","css","keyframes","BREAKPOINTS","COLORS","NavLink","ComponentMStyling","ComponentTextStyle","Z_INDEXES","RowLayout","div","Button","button","white","flowLeft","flowRight","Menu","ul","off_canvas","SMALL","Right","SiteName","span","neutral_600","MenuSection","li","MenuSectionList","UserMenuSectionListStyling","hover","primary_20","primary_600","focus","primary_500","active","primary_100","primary_800","neutral_300","neutral_100","MenuLink","Regular","black","MenuWrapper","props","isVisible","flowDown"],"mappings":"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","sourcesContent":["import styled, { css, keyframes } from 'styled-components';\nimport { BREAKPOINTS, COLORS } from '../../styles';\nimport { NavLink } from 'react-router-dom';\nimport { ComponentMStyling, ComponentTextStyle } from '../../styles/typography';\nimport {Z_INDEXES} from '../../styles/z-indexes';\n\nexport const RowLayout = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const Button = styled.button`\n background-color: ${COLORS.white};\n font-weight: bold;\n border: 0;\n`;\n\nconst flowLeft = keyframes`\n 0% {\n opacity: 0;\n transform: translateX(100%);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n`;\n\nconst flowRight = keyframes`\n 0% {\n opacity: 1;\n transform: translateX(0);\n }\n to {\n opacity: 0;\n transform: translateX(100%);\n }\n`;\n\nexport const Menu = styled.ul`\n height: 100%;\n list-style: none;\n margin: 0 auto 0 auto;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n right: 0;\n top: 0;\n min-width: 300px;\n position: absolute;\n z-index: ${Z_INDEXES.off_canvas};\n align-items: center;\n width: 320px;\n padding-inline-start: 0;\n\n ${BREAKPOINTS.SMALL} {\n min-width: 360px;\n }\n\n .open & {\n display: block;\n -webkit-animation: ${flowLeft} 0.3s ease-in-out;\n animation: ${flowLeft} 0.3s ease-in-out;\n }\n\n .closed & {\n display: block;\n -webkit-animation: ${flowRight} 0.3s ease-in-out;\n animation: ${flowRight} 0.3s ease-in-out;\n }\n`;\n\nexport const Right = styled.div`\n display: flex;\n margin-left: auto;\n`;\n\nexport const SiteName = styled.span`\n color: ${COLORS.neutral_600};\n font-weight: bold;\n font-size: 14px;\n margin-left: 4px;\n`;\n\nexport const MenuSection = styled.li`\n margin-top: 16px;\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nexport const MenuSectionList = styled.ul`\n list-style: none;\n padding: 0;\n\n li {\n width: 80%;\n height: 48px;\n margin: 0 auto 0 12px;\n \n a {\n height: 100%;\n }\n }\n`;\n\nexport const UserMenuSectionListStyling = css`\n li {\n position: relative;\n }\n li:hover:not(.disabled) {\n z-index: ${Z_INDEXES.hover};\n background-color: ${COLORS.primary_20};\n a {\n color: ${COLORS.primary_600};\n }\n svg {\n color: ${COLORS.primary_600};\n }\n }\n\n li:focus-within:not(.disabled) {\n z-index: ${Z_INDEXES.focus};\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n a {\n outline: none;\n }\n }\n\n li:active:not(.disabled) {\n z-index: ${Z_INDEXES.active};\n background: ${COLORS.primary_100};\n box-shadow: none;\n a {\n color: ${COLORS.primary_800};\n }\n svg {\n color: ${COLORS.primary_800};\n }\n }\n\n .disabled {\n a {\n color: ${COLORS.neutral_300};\n }\n svg {\n color: ${COLORS.neutral_300};\n }\n background-color: ${COLORS.neutral_100};\n }\n`;\n\nexport const MenuLink = styled(NavLink)`\n border: none;\n background: transparent;\n margin: auto;\n\n box-sizing: border-box;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n text-decoration: none;\n text-align: center;\n align-items: center;\n display: flex;\n`;\n\nexport const MenuWrapper = styled.div<MenuWrapperProps>`\n background-color: ${COLORS.white};\n display: ${(props) => (props.isVisible ? 'flex' : 'none')};\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n width: 100%;\n\n &:focus-within,\n &:hover,\n &.open {\n background: ${COLORS.white};\n }\n`;\n\ninterface MenuWrapperProps {\n isVisible: boolean;\n}\n\nexport const flowDown = keyframes`\n 0% {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n`;\n"],"file":"CommonStyles.js"}
@@ -135,7 +135,6 @@ const Checkbox = /*#__PURE__*/React.forwardRef(({
135
135
  };
136
136
 
137
137
  size = size ?? Size.Medium;
138
- console.log('size prop', size.toString().toLowerCase());
139
138
  return /*#__PURE__*/React.createElement(StyledCheckBox, {
140
139
  key: id,
141
140
  ref: ref,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/InputFields/Checkbox.tsx"],"names":["React","styled","CheckboxOff","CheckboxOn","CheckboxSemi","COLORS","ComponentTextStyle","Size","ComponentLStyling","ComponentMStyling","ComponentSStyling","StyledCheckBox","div","props","margin","black","selected","primary_500","showWarning","warning_400","neutral_600","Regular","white","primary_20","primary_700","primary_100","primary_800","neutral_300","Checkbox","forwardRef","id","select","label","iconPointerEventsTransparent","disabled","size","semiSelected","ref","onKeyPress","e","keyCode","handleClick","Medium","console","log","toString","toLowerCase","concat","preventDefault"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {CheckboxOff, CheckboxOn, CheckboxSemi} from '../icons/systemicons/SystemIcons';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport { Size } from '../types';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling} from '../styles/typography';\n\nconst StyledCheckBox = styled.div<{ disabled?: boolean; showWarning?: boolean; selected?: boolean; margin?: string }>`\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ${props => (props.margin ? `margin: ${props.margin};` : '')}\n cursor: pointer;\n\n color: ${COLORS.black};\n\n .pointerTransparent {\n pointer-events: none;\n }\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ${props => (props.selected ? COLORS.primary_500 : props.showWarning ? COLORS.warning_400 : COLORS.neutral_600)};\n }\n }\n\n .label {\n user-select: none;\n cursor: inherit;\n }\n\n &.small {\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.medium {\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.large {\n ${ComponentLStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ${COLORS.white};\n box-shadow: 0 0 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ${COLORS.neutral_600};\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ${COLORS.primary_20};\n\n svg {\n color: ${COLORS.primary_700};\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ${COLORS.primary_100};\n box-shadow: none;\n\n svg {\n color: ${COLORS.primary_800};\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ${COLORS.neutral_300};\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ${COLORS.white};\n }\n\n .icon svg {\n color: ${COLORS.neutral_300};\n }\n }\n`;\n\ninterface Props {\n id: string;\n selected: boolean;\n select: (selected: boolean) => void;\n label?: string;\n showWarning?: boolean;\n disabled?: boolean;\n margin?: string;\n size?: Size;\n iconPointerEventsTransparent?: boolean;\n semiSelected?: boolean;\n}\n\nconst Checkbox = React.forwardRef<HTMLDivElement, Props>(({\n id,\n selected,\n select,\n label,\n showWarning,\n iconPointerEventsTransparent,\n disabled,\n margin,\n size,\n semiSelected\n }: Props, ref) => {\n const onKeyPress = (e: any) => {\n if (e.keyCode === 13 && !disabled) {\n select(!selected);\n }\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n select(!selected);\n };\n\n size = size ?? Size.Medium;\n\n console.log('size prop', size.toString().toLowerCase());\n return (\n <StyledCheckBox key={id}\n ref={ref}\n disabled={disabled}\n className={size.toString().toLowerCase().concat(disabled ? ' disabled' : '')}\n selected={selected}\n tabIndex={disabled ? -1 : 0}\n showWarning={showWarning}\n margin={margin}\n onClick={handleClick}\n onKeyDown={onKeyPress}\n onMouseDown={e => e.preventDefault()}>\n <div id={id} className={'icon'}>\n {\n selected\n ? <CheckboxOn className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n : semiSelected\n ? <CheckboxSemi className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n : <CheckboxOff className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n }\n </div>\n {\n label &&\n (\n <label className={'label'}\n htmlFor={id}>\n {label}\n </label>\n )\n }\n </StyledCheckBox>\n );\n});\n\nexport default Checkbox;\n"],"file":"Checkbox.js"}
1
+ {"version":3,"sources":["../../../src/InputFields/Checkbox.tsx"],"names":["React","styled","CheckboxOff","CheckboxOn","CheckboxSemi","COLORS","ComponentTextStyle","Size","ComponentLStyling","ComponentMStyling","ComponentSStyling","StyledCheckBox","div","props","margin","black","selected","primary_500","showWarning","warning_400","neutral_600","Regular","white","primary_20","primary_700","primary_100","primary_800","neutral_300","Checkbox","forwardRef","id","select","label","iconPointerEventsTransparent","disabled","size","semiSelected","ref","onKeyPress","e","keyCode","handleClick","Medium","toString","toLowerCase","concat","preventDefault"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {CheckboxOff, CheckboxOn, CheckboxSemi} from '../icons/systemicons/SystemIcons';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport { Size } from '../types';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling} from '../styles/typography';\n\nconst StyledCheckBox = styled.div<{ disabled?: boolean; showWarning?: boolean; selected?: boolean; margin?: string }>`\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ${props => (props.margin ? `margin: ${props.margin};` : '')}\n cursor: pointer;\n\n color: ${COLORS.black};\n\n .pointerTransparent {\n pointer-events: none;\n }\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ${props => (props.selected ? COLORS.primary_500 : props.showWarning ? COLORS.warning_400 : COLORS.neutral_600)};\n }\n }\n\n .label {\n user-select: none;\n cursor: inherit;\n }\n\n &.small {\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.medium {\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.large {\n ${ComponentLStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ${COLORS.white};\n box-shadow: 0 0 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ${COLORS.neutral_600};\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ${COLORS.primary_20};\n\n svg {\n color: ${COLORS.primary_700};\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ${COLORS.primary_100};\n box-shadow: none;\n\n svg {\n color: ${COLORS.primary_800};\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ${COLORS.neutral_300};\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ${COLORS.white};\n }\n\n .icon svg {\n color: ${COLORS.neutral_300};\n }\n }\n`;\n\ninterface Props {\n id: string;\n selected: boolean;\n select: (selected: boolean) => void;\n label?: string;\n showWarning?: boolean;\n disabled?: boolean;\n margin?: string;\n size?: Size;\n iconPointerEventsTransparent?: boolean;\n semiSelected?: boolean;\n}\n\nconst Checkbox = React.forwardRef<HTMLDivElement, Props>(({\n id,\n selected,\n select,\n label,\n showWarning,\n iconPointerEventsTransparent,\n disabled,\n margin,\n size,\n semiSelected\n }: Props, ref) => {\n const onKeyPress = (e: any) => {\n if (e.keyCode === 13 && !disabled) {\n select(!selected);\n }\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n select(!selected);\n };\n\n size = size ?? Size.Medium;\n\n return (\n <StyledCheckBox key={id}\n ref={ref}\n disabled={disabled}\n className={size.toString().toLowerCase().concat(disabled ? ' disabled' : '')}\n selected={selected}\n tabIndex={disabled ? -1 : 0}\n showWarning={showWarning}\n margin={margin}\n onClick={handleClick}\n onKeyDown={onKeyPress}\n onMouseDown={e => e.preventDefault()}>\n <div id={id} className={'icon'}>\n {\n selected\n ? <CheckboxOn className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n : semiSelected\n ? <CheckboxSemi className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n : <CheckboxOff className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n }\n </div>\n {\n label &&\n (\n <label className={'label'}\n htmlFor={id}>\n {label}\n </label>\n )\n }\n </StyledCheckBox>\n );\n});\n\nexport default Checkbox;\n"],"file":"Checkbox.js"}
@@ -34,6 +34,7 @@ import { ComponentTextStyle, scrollBarStyling } from '../styles';
34
34
  import { ErrorMessage, InputFieldStyling, InputWrapper } from './styling';
35
35
  import 'react-datepicker/dist/react-datepicker.css';
36
36
  import { ComponentMStyling, ComponentSStyling } from '../styles/typography';
37
+ import { Z_INDEXES } from '../styles/z-indexes';
37
38
  /**
38
39
  * Add custom types.
39
40
  */
@@ -42,6 +43,11 @@ import { ComponentMStyling, ComponentSStyling } from '../styles/typography';
42
43
  * Add custom styles.
43
44
  */
44
45
  const DatePickerContainer = styled.div`
46
+
47
+ .react-datepicker-popper{
48
+ z-index: ${Z_INDEXES.dropdown};
49
+ }
50
+
45
51
  > div {
46
52
  display: block;
47
53
  ${props => props.margin ? `margin: ${props.margin};` : ''}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/InputFields/DatepickerField.tsx"],"names":["React","styled","css","DatePicker","en","moment","COLORS","Calendar","TechnicalWarning","IconButton","DatepickerFieldHeader","ComponentTextStyle","scrollBarStyling","ErrorMessage","InputFieldStyling","InputWrapper","ComponentMStyling","ComponentSStyling","DatePickerContainer","div","props","margin","primary_20","primary_100","focus_25","focus","neutral_20","neutral_200","yearPicker","Bold","neutral_600","Regular","white","primary_700","primary_800","primary_500","neutral_700","neutral_100","DatepickerRow","disabled","locked","primary_600","StyledInputFieldStyling","primary_200","primary_300","neutral_300","DatepickerField","id","onChange","hasError","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearsBeforeCurrentDate","yearsAfterCurrentDate","inputRef","useRef","datepickerRef","tabbedHere","setTabbedHere","useState","activeMonthPage","setActiveMonthPage","yearPickerMode","setYearPickerMode","openAt","setOpenAt","supressFocusRef","useEffect","current","format","selectedDate","document","getElementsByClassName","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","setOpen","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","e","newDate","setMonth","undefined","params","createElement","customHeaderCount","display","critical_400"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,IAAgBC,GAAhB,QAA0B,mBAA1B;AACA,OAAOC,UAAP,MAAuB,kBAAvB;AACA,OAAOC,EAAP,MAAe,uBAAf;AACA,OAAOC,MAAP,MAAmB,QAAnB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,kBAAnB;AACA,SAAQC,QAAR,EAAkBC,gBAAlB,QAAyC,kCAAzC;AACA,SAAQC,UAAR,QAAyB,iBAAzB;AACA,SAAQC,qBAAR,QAAiE,yBAAjE;AACA,SAAQC,kBAAR,EAA4BC,gBAA5B,QAAmD,WAAnD;AAEA;AACA;AACA;;AACA,SAAQC,YAAR,EAAsBC,iBAAtB,EAAyCC,YAAzC,QAA4D,WAA5D;AACA,OAAO,4CAAP;AACA,SAAQC,iBAAR,EAA2BC,iBAA3B,QAAmD,sBAAnD;AAEA;AACA;AACA;;AAmBA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAGjB,MAAM,CAACkB,GAA6C;AAChF;AACA;AACA,MAAOC,KAAD,IAAYA,KAAK,CAACC,MAAN,GAAgB,WAAUD,KAAK,CAACC,MAAO,GAAvC,GAA4C,EAAI;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsBf,MAAM,CAACgB,UAAW;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsBhB,MAAM,CAACiB,WAAY;AACzC,mCAAmCjB,MAAM,CAACkB,QAAS,iBAAgBlB,MAAM,CAACmB,KAAM;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6BnB,MAAM,CAACoB,UAAW;AAC/C;AACA;AACA;AACA,iCAAiCpB,MAAM,CAACqB,WAAY;AACpD,oBAAoBrB,MAAM,CAACoB,UAAW;AACtC,gBAAiBN,KAAD,IAAY,CAACA,KAAK,CAACQ,UAAP,GAAoB,MAApB,GAA6B,MAAQ;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQX,iBAAiB,CAACN,kBAAkB,CAACkB,IAApB,EAA0BvB,MAAM,CAACwB,WAAjC,CAA8C;AACvE;AACA;AACA;AACA;AACA;AACA;AACA,QAAQlB,gBAAiB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQI,iBAAiB,CAACL,kBAAkB,CAACoB,OAApB,EAA6BzB,MAAM,CAACwB,WAApC,CAAiD;AAC1E;AACA;AACA;AACA,oBAAoBxB,MAAM,CAAC0B,KAAM;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQhB,iBAAiB,CAACL,kBAAkB,CAACoB,OAApB,EAA6BzB,MAAM,CAACwB,WAApC,CAAiD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiBxB,MAAM,CAACwB,WAAY;AACpC,sBAAsBxB,MAAM,CAAC0B,KAAM;AACnC;AACA;AACA;AACA;AACA;AACA,iBAAiB1B,MAAM,CAAC2B,WAAY;AACpC,sBAAsB3B,MAAM,CAACgB,UAAW;AACxC;AACA;AACA;AACA,iBAAiBhB,MAAM,CAAC4B,WAAY;AACpC,sBAAsB5B,MAAM,CAACiB,WAAY;AACzC,mCAAmCjB,MAAM,CAACkB,QAAS,iBAAgBlB,MAAM,CAACmB,KAAM;AAChF;AACA;AACA;AACA;AACA,iBAAiBnB,MAAM,CAAC0B,KAAM;AAC9B,sBAAsB1B,MAAM,CAAC6B,WAAY;AACzC;AACA;AACA;AACA;AACA,oBAAoB7B,MAAM,CAAC0B,KAAM;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQhB,iBAAiB,CAACL,kBAAkB,CAACoB,OAApB,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","sourcesContent":["/**\n * Import react libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import third-party libraries.\n */\nimport styled, {css} from 'styled-components';\nimport DatePicker from 'react-datepicker';\nimport en from 'date-fns/locale/en-GB';\nimport moment from 'moment';\n\n/**\n * Import custom components.\n */\nimport COLORS from '../styles/colors';\nimport {Calendar, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {IconButton} from '../Button/index';\nimport {DatepickerFieldHeader, DatepickerFieldHeaderParams} from './DatepickerFieldHeader';\nimport {ComponentTextStyle, scrollBarStyling} from '../styles';\n\n/**\n * Import custom styles.\n */\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport {ComponentMStyling, ComponentSStyling} from '../styles/typography';\n\n/**\n * Add custom types.\n */\ntype DatepickerFieldProps = {\n id: string;\n disabled?: boolean;\n locked?: boolean;\n onChange?: (date: Date) => void;\n hasError?: boolean;\n value?: Date;\n dateFormat?: string;\n validationMessage?: string;\n autoComplete?: string;\n placeholder?: string;\n required?: boolean;\n yearPicker?: boolean;\n yearsBeforeCurrentDate?: number;\n yearsAfterCurrentDate?: number;\n margin?: string;\n};\n\n/**\n * Add custom styles.\n */\nconst DatePickerContainer = styled.div<{ yearPicker: boolean; margin: string }>`\n > div {\n display: block;\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ${COLORS.primary_20};\n\n &.react-datepicker__navigation--previous::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23215369' /%3E%3C/svg%3E\");\n }\n\n &.react-datepicker__navigation--next::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23215369' /%3E%3C/svg%3E\");\n }\n }\n\n &:focus {\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n\n &.react-datepicker__navigation--next::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23163746' /%3E%3C/svg%3E\");\n }\n\n &.react-datepicker__navigation--previous::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23163746' /%3E%3C/svg%3E\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23666666' /%3E%3C/svg%3E\");\n }\n\n &.react-datepicker__navigation--previous::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23666666' /%3E%3C/svg%3E\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ${COLORS.neutral_20};\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ${COLORS.neutral_200};\n background: ${COLORS.neutral_20};\n height: ${(props) => (!props.yearPicker ? '96px' : '54px')};\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ${scrollBarStyling}\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n\n .react-datepicker__year-text {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n color: ${COLORS.primary_800};\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n }\n\n &.react-datepicker__year-text--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n }\n\n .react-datepicker__day {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n color: ${COLORS.primary_800};\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n }\n\n &.react-datepicker__day--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ${COLORS.neutral_700};\n background: ${COLORS.neutral_100};\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n color: ${COLORS.primary_800};\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n }\n }\n }\n }\n`;\n\nconst DatepickerRow = styled.div<{ disabled?: boolean; locked?: boolean }>`\n display: flex;\n flex-direction: row;\n position: relative;\n\n > button {\n position: absolute;\n right: 4px;\n top: 4px;\n\n svg {\n }\n }\n\n ${(props) =>\n props?.disabled || props?.locked\n ? ''\n : css`\n &:hover {\n svg,\n svg path {\n fill: ${COLORS.primary_600} !important;\n }\n }\n `}\n &:focus-within {\n -webkit-box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_800};\n -moz-box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_800};\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_800};\n }\n`;\n\nconst StyledInputFieldStyling = styled(InputFieldStyling)`\n &:hover {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_200};\n ::placeholder {\n color: ${COLORS.primary_600};\n }\n cursor: pointer;\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_600};\n }\n &:active {\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n ::placeholder {\n color: ${COLORS.primary_800};\n }\n }\n &:disabled {\n box-shadow: none;\n background-color: ${COLORS.white};\n span {\n color: ${COLORS.neutral_300};\n }\n &::after {\n background-color: ${COLORS.white};\n }\n }\n`;\n\nconst DatepickerField = ({\n id,\n disabled,\n locked,\n onChange,\n hasError,\n value,\n validationMessage,\n dateFormat,\n autoComplete,\n placeholder,\n required,\n yearPicker,\n yearsBeforeCurrentDate,\n yearsAfterCurrentDate,\n margin,\n}: DatepickerFieldProps) => {\n // Globally used variables within the component\n const inputRef = React.useRef<any>(null);\n const datepickerRef = React.useRef<any>(null);\n const [tabbedHere, setTabbedHere] = React.useState<boolean>(false);\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\n const supressFocusRef = React.useRef<any>(null);\n\n /**\n * Format the date in a specific way.\n */\n React.useEffect(() => {\n if (value) inputRef.current.value = moment(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\n }, [value]);\n\n React.useEffect(() => {\n if (yearPickerMode) {\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\n //we have to touch DOM directly\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\n const dropdownParent = selectedDate?.parentElement?.parentElement;\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\n }\n }, [yearPickerMode]);\n\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\n //otherwise after year selection datepicker will show January month of the selected year\n React.useEffect(() => {\n if (openAt) {\n datepickerRef.current.setOpen(true);\n //setOpenAt(null);\n }\n }, [openAt]);\n\n const handleCalendarOpen = () => {\n if (openAt) setOpenAt(null);\n };\n\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\n\n //itemsNumber - controls number of year select options generated in the dropdown\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\n\n return (\n <>\n {/* Let's render the input itself */}\n <DatePickerContainer yearPicker={yearPickerMode} margin={margin || ''}>\n <DatePicker\n ref={datepickerRef}\n onCalendarOpen={handleCalendarOpen}\n onChange={(e: any) => {\n if (onChange) {\n if (yearPickerMode) {\n const newDate = new Date();\n newDate.setFullYear(e.getFullYear());\n newDate.setMonth(activeMonthPage);\n setOpenAt(newDate);\n } else onChange(e);\n }\n if (yearPickerMode) setYearPickerMode(false);\n }}\n disabled={disabled || locked}\n locale={en}\n showYearPicker={yearPickerMode}\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\n maxDate={yearPickerMode ? maxDate : undefined}\n selected={value}\n openToDate={openAt ?? undefined}\n shouldCloseOnSelect={true}\n renderCustomHeader={\n yearPicker\n ? (params: DatepickerFieldHeaderParams) =>\n React.createElement(\n DatepickerFieldHeader,\n { ...params, setActiveMonthPage, customHeaderCount: 0, yearPickerMode: yearPickerMode, setYearPickerMode: setYearPickerMode },\n null,\n )\n : undefined\n }\n customInput={\n <InputWrapper disabled={disabled} locked={locked} tabIndex={disabled ? -1 : 0}>\n <div style={{ display: 'block' }}>\n <DatepickerRow locked={locked} disabled={disabled}>\n <StyledInputFieldStyling\n id={id}\n ref={inputRef}\n type=\"text\"\n name=\"datepicker\"\n readOnly={true}\n className={hasError ? 'error' : ''}\n tabIndex={0}\n autoComplete={autoComplete}\n placeholder={placeholder}\n disabled={disabled}\n locked={locked}\n required={required}\n tabbedHere={tabbedHere}\n onBlur={() => setTabbedHere(false)}\n onMouseDown={(e: any) => {\n if (!(locked || disabled) && !tabbedHere) supressFocusRef.current = true;\n }}\n onFocus={(e: any) => {\n if (!(locked || disabled)) {\n if (!supressFocusRef.current) setTabbedHere(true);\n else supressFocusRef.current = false;\n }\n }}\n />\n <IconButton variant=\"secondary\" shape=\"square\" tabIndex={-1} action={() => {}} disabled={disabled || locked}>\n <Calendar size=\"24\" />\n </IconButton>\n </DatepickerRow>\n </div>\n </InputWrapper>\n }\n />\n </DatePickerContainer>\n\n {/* If there is an error, let's render the error */}\n {validationMessage && (\n <ErrorMessage>\n <TechnicalWarning size=\"20px\" color={COLORS.critical_400} />\n <span>{validationMessage}</span>\n </ErrorMessage>\n )}\n </>\n );\n};\n\nexport default DatepickerField;\n"],"file":"DatepickerField.js"}
1
+ {"version":3,"sources":["../../../src/InputFields/DatepickerField.tsx"],"names":["React","styled","css","DatePicker","en","moment","COLORS","Calendar","TechnicalWarning","IconButton","DatepickerFieldHeader","ComponentTextStyle","scrollBarStyling","ErrorMessage","InputFieldStyling","InputWrapper","ComponentMStyling","ComponentSStyling","Z_INDEXES","DatePickerContainer","div","dropdown","props","margin","primary_20","primary_100","focus_25","focus","neutral_20","neutral_200","yearPicker","Bold","neutral_600","Regular","white","primary_700","primary_800","primary_500","neutral_700","neutral_100","DatepickerRow","disabled","locked","primary_600","StyledInputFieldStyling","primary_200","primary_300","neutral_300","DatepickerField","id","onChange","hasError","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearsBeforeCurrentDate","yearsAfterCurrentDate","inputRef","useRef","datepickerRef","tabbedHere","setTabbedHere","useState","activeMonthPage","setActiveMonthPage","yearPickerMode","setYearPickerMode","openAt","setOpenAt","supressFocusRef","useEffect","current","format","selectedDate","document","getElementsByClassName","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","setOpen","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","e","newDate","setMonth","undefined","params","createElement","customHeaderCount","display","critical_400"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,IAAgBC,GAAhB,QAA0B,mBAA1B;AACA,OAAOC,UAAP,MAAuB,kBAAvB;AACA,OAAOC,EAAP,MAAe,uBAAf;AACA,OAAOC,MAAP,MAAmB,QAAnB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,kBAAnB;AACA,SAAQC,QAAR,EAAkBC,gBAAlB,QAAyC,kCAAzC;AACA,SAAQC,UAAR,QAAyB,iBAAzB;AACA,SAAQC,qBAAR,QAAiE,yBAAjE;AACA,SAAQC,kBAAR,EAA4BC,gBAA5B,QAAmD,WAAnD;AAEA;AACA;AACA;;AACA,SAAQC,YAAR,EAAsBC,iBAAtB,EAAyCC,YAAzC,QAA4D,WAA5D;AACA,OAAO,4CAAP;AACA,SAAQC,iBAAR,EAA2BC,iBAA3B,QAAmD,sBAAnD;AACA,SAAQC,SAAR,QAAwB,qBAAxB;AAEA;AACA;AACA;;AAmBA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAGlB,MAAM,CAACmB,GAA6C;AAChF;AACA;AACA,eAAeF,SAAS,CAACG,QAAS;AAClC;AACA;AACA;AACA;AACA,MAAOC,KAAD,IAAYA,KAAK,CAACC,MAAN,GAAgB,WAAUD,KAAK,CAACC,MAAO,GAAvC,GAA4C,EAAI;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsBjB,MAAM,CAACkB,UAAW;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsBlB,MAAM,CAACmB,WAAY;AACzC,mCAAmCnB,MAAM,CAACoB,QAAS,iBAAgBpB,MAAM,CAACqB,KAAM;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6BrB,MAAM,CAACsB,UAAW;AAC/C;AACA;AACA;AACA,iCAAiCtB,MAAM,CAACuB,WAAY;AACpD,oBAAoBvB,MAAM,CAACsB,UAAW;AACtC,gBAAiBN,KAAD,IAAY,CAACA,KAAK,CAACQ,UAAP,GAAoB,MAApB,GAA6B,MAAQ;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQb,iBAAiB,CAACN,kBAAkB,CAACoB,IAApB,EAA0BzB,MAAM,CAAC0B,WAAjC,CAA8C;AACvE;AACA;AACA;AACA;AACA;AACA;AACA,QAAQpB,gBAAiB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQI,iBAAiB,CAACL,kBAAkB,CAACsB,OAApB,EAA6B3B,MAAM,CAAC0B,WAApC,CAAiD;AAC1E;AACA;AACA;AACA,oBAAoB1B,MAAM,CAAC4B,KAAM;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQlB,iBAAiB,CAACL,kBAAkB,CAACsB,OAApB,EAA6B3B,MAAM,CAAC0B,WAApC,CAAiD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB1B,MAAM,CAAC0B,WAAY;AACpC,sBAAsB1B,MAAM,CAAC4B,KAAM;AACnC;AACA;AACA;AACA;AACA;AACA,iBAAiB5B,MAAM,CAAC6B,WAAY;AACpC,sBAAsB7B,MAAM,CAACkB,UAAW;AACxC;AACA;AACA;AACA,iBAAiBlB,MAAM,CAAC8B,WAAY;AACpC,sBAAsB9B,MAAM,CAACmB,WAAY;AACzC,mCAAmCnB,MAAM,CAACoB,QAAS,iBAAgBpB,MAAM,CAACqB,KAAM;AAChF;AACA;AACA;AACA;AACA,iBAAiBrB,MAAM,CAAC4B,KAAM;AAC9B,sBAAsB5B,MAAM,CAAC+B,WAAY;AACzC;AACA;AACA;AACA;AACA,oBAAoB/B,MAAM,CAAC4B,KAAM;AACjC;AA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","sourcesContent":["/**\n * Import react libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import third-party libraries.\n */\nimport styled, {css} from 'styled-components';\nimport DatePicker from 'react-datepicker';\nimport en from 'date-fns/locale/en-GB';\nimport moment from 'moment';\n\n/**\n * Import custom components.\n */\nimport COLORS from '../styles/colors';\nimport {Calendar, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {IconButton} from '../Button/index';\nimport {DatepickerFieldHeader, DatepickerFieldHeaderParams} from './DatepickerFieldHeader';\nimport {ComponentTextStyle, scrollBarStyling} from '../styles';\n\n/**\n * Import custom styles.\n */\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport {ComponentMStyling, ComponentSStyling} from '../styles/typography';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\n/**\n * Add custom types.\n */\ntype DatepickerFieldProps = {\n id: string;\n disabled?: boolean;\n locked?: boolean;\n onChange?: (date: Date) => void;\n hasError?: boolean;\n value?: Date;\n dateFormat?: string;\n validationMessage?: string;\n autoComplete?: string;\n placeholder?: string;\n required?: boolean;\n yearPicker?: boolean;\n yearsBeforeCurrentDate?: number;\n yearsAfterCurrentDate?: number;\n margin?: string;\n};\n\n/**\n * Add custom styles.\n */\nconst DatePickerContainer = styled.div<{ yearPicker: boolean; margin: string }>`\n \n .react-datepicker-popper{\n z-index: ${Z_INDEXES.dropdown}; \n }\n\n > div {\n display: block;\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ${COLORS.primary_20};\n\n &.react-datepicker__navigation--previous::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23215369' /%3E%3C/svg%3E\");\n }\n\n &.react-datepicker__navigation--next::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23215369' /%3E%3C/svg%3E\");\n }\n }\n\n &:focus {\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n\n &.react-datepicker__navigation--next::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23163746' /%3E%3C/svg%3E\");\n }\n\n &.react-datepicker__navigation--previous::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23163746' /%3E%3C/svg%3E\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23666666' /%3E%3C/svg%3E\");\n }\n\n &.react-datepicker__navigation--previous::before {\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23666666' /%3E%3C/svg%3E\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ${COLORS.neutral_20};\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ${COLORS.neutral_200};\n background: ${COLORS.neutral_20};\n height: ${(props) => (!props.yearPicker ? '96px' : '54px')};\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ${scrollBarStyling}\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n\n .react-datepicker__year-text {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n color: ${COLORS.primary_800};\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n }\n\n &.react-datepicker__year-text--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n }\n\n .react-datepicker__day {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n color: ${COLORS.primary_800};\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n }\n\n &.react-datepicker__day--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ${COLORS.neutral_700};\n background: ${COLORS.neutral_100};\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n color: ${COLORS.primary_800};\n background: ${COLORS.primary_100};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n }\n }\n }\n }\n`;\n\nconst DatepickerRow = styled.div<{ disabled?: boolean; locked?: boolean }>`\n display: flex;\n flex-direction: row;\n position: relative;\n\n > button {\n position: absolute;\n right: 4px;\n top: 4px;\n\n svg {\n }\n }\n\n ${(props) =>\n props?.disabled || props?.locked\n ? ''\n : css`\n &:hover {\n svg,\n svg path {\n fill: ${COLORS.primary_600} !important;\n }\n }\n `}\n &:focus-within {\n -webkit-box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_800};\n -moz-box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_800};\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_800};\n }\n`;\n\nconst StyledInputFieldStyling = styled(InputFieldStyling)`\n &:hover {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_200};\n ::placeholder {\n color: ${COLORS.primary_600};\n }\n cursor: pointer;\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_600};\n }\n &:active {\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n ::placeholder {\n color: ${COLORS.primary_800};\n }\n }\n &:disabled {\n box-shadow: none;\n background-color: ${COLORS.white};\n span {\n color: ${COLORS.neutral_300};\n }\n &::after {\n background-color: ${COLORS.white};\n }\n }\n`;\n\nconst DatepickerField = ({\n id,\n disabled,\n locked,\n onChange,\n hasError,\n value,\n validationMessage,\n dateFormat,\n autoComplete,\n placeholder,\n required,\n yearPicker,\n yearsBeforeCurrentDate,\n yearsAfterCurrentDate,\n margin,\n}: DatepickerFieldProps) => {\n // Globally used variables within the component\n const inputRef = React.useRef<any>(null);\n const datepickerRef = React.useRef<any>(null);\n const [tabbedHere, setTabbedHere] = React.useState<boolean>(false);\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\n const supressFocusRef = React.useRef<any>(null);\n\n /**\n * Format the date in a specific way.\n */\n React.useEffect(() => {\n if (value) inputRef.current.value = moment(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\n }, [value]);\n\n React.useEffect(() => {\n if (yearPickerMode) {\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\n //we have to touch DOM directly\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\n const dropdownParent = selectedDate?.parentElement?.parentElement;\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\n }\n }, [yearPickerMode]);\n\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\n //otherwise after year selection datepicker will show January month of the selected year\n React.useEffect(() => {\n if (openAt) {\n datepickerRef.current.setOpen(true);\n //setOpenAt(null);\n }\n }, [openAt]);\n\n const handleCalendarOpen = () => {\n if (openAt) setOpenAt(null);\n };\n\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\n\n //itemsNumber - controls number of year select options generated in the dropdown\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\n\n return (\n <>\n {/* Let's render the input itself */}\n <DatePickerContainer yearPicker={yearPickerMode} margin={margin || ''}>\n <DatePicker\n ref={datepickerRef}\n onCalendarOpen={handleCalendarOpen}\n onChange={(e: any) => {\n if (onChange) {\n if (yearPickerMode) {\n const newDate = new Date();\n newDate.setFullYear(e.getFullYear());\n newDate.setMonth(activeMonthPage);\n setOpenAt(newDate);\n } else onChange(e);\n }\n if (yearPickerMode) setYearPickerMode(false);\n }}\n disabled={disabled || locked}\n locale={en}\n showYearPicker={yearPickerMode}\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\n maxDate={yearPickerMode ? maxDate : undefined}\n selected={value}\n openToDate={openAt ?? undefined}\n shouldCloseOnSelect={true}\n renderCustomHeader={\n yearPicker\n ? (params: DatepickerFieldHeaderParams) =>\n React.createElement(\n DatepickerFieldHeader,\n { ...params, setActiveMonthPage, customHeaderCount: 0, yearPickerMode: yearPickerMode, setYearPickerMode: setYearPickerMode },\n null,\n )\n : undefined\n }\n customInput={\n <InputWrapper disabled={disabled} locked={locked} tabIndex={disabled ? -1 : 0}>\n <div style={{ display: 'block' }}>\n <DatepickerRow locked={locked} disabled={disabled}>\n <StyledInputFieldStyling\n id={id}\n ref={inputRef}\n type=\"text\"\n name=\"datepicker\"\n readOnly={true}\n className={hasError ? 'error' : ''}\n tabIndex={0}\n autoComplete={autoComplete}\n placeholder={placeholder}\n disabled={disabled}\n locked={locked}\n required={required}\n tabbedHere={tabbedHere}\n onBlur={() => setTabbedHere(false)}\n onMouseDown={(e: any) => {\n if (!(locked || disabled) && !tabbedHere) supressFocusRef.current = true;\n }}\n onFocus={(e: any) => {\n if (!(locked || disabled)) {\n if (!supressFocusRef.current) setTabbedHere(true);\n else supressFocusRef.current = false;\n }\n }}\n />\n <IconButton variant=\"secondary\" shape=\"square\" tabIndex={-1} action={() => {}} disabled={disabled || locked}>\n <Calendar size=\"24\" />\n </IconButton>\n </DatepickerRow>\n </div>\n </InputWrapper>\n }\n />\n </DatePickerContainer>\n\n {/* If there is an error, let's render the error */}\n {validationMessage && (\n <ErrorMessage>\n <TechnicalWarning size=\"20px\" color={COLORS.critical_400} />\n <span>{validationMessage}</span>\n </ErrorMessage>\n )}\n </>\n );\n};\n\nexport default DatepickerField;\n"],"file":"DatepickerField.js"}
@@ -8,7 +8,7 @@ const StyledPassSwitch = styled.div`
8
8
  margin-left: -40px;
9
9
  margin-top: 8px;
10
10
  position: relative;
11
- z-index: 2;
11
+ z-index: 1;
12
12
  height: 30px;
13
13
  width: 30px;
14
14