qpp-style 9.25.2-beta.0 → 9.26.1

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 (213) hide show
  1. package/components/Footer/FooterUI.jsx +2 -3
  2. package/components/Header/ImpersonatorBanner.jsx +1 -2
  3. package/components/Infotip/Infotip.jsx +3 -7
  4. package/components/Infotip/InfotipContent.jsx +46 -0
  5. package/components/Search/index.js +2 -2
  6. package/components/SideNav/Links/NavLinkDrawer.jsx +2 -21
  7. package/components/Tabs/TabPanel.js +2 -38
  8. package/components/Tabs/Tabs.js +73 -0
  9. package/components/index.js +3 -5
  10. package/coverage/clover.xml +266 -256
  11. package/coverage/coverage-final.json +72 -72
  12. package/coverage/lcov-report/components/Accordion/index.html +1 -1
  13. package/coverage/lcov-report/components/Accordion/index.jsx.html +4 -4
  14. package/coverage/lcov-report/components/Button/index.html +116 -0
  15. package/coverage/lcov-report/components/Button/index.js.html +355 -0
  16. package/coverage/lcov-report/components/Error/Collapsible.jsx.html +1 -1
  17. package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +1 -1
  18. package/coverage/lcov-report/components/Error/index.html +1 -1
  19. package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +189 -348
  20. package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +11 -11
  21. package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +11 -11
  22. package/coverage/lcov-report/components/Footer/index.html +29 -44
  23. package/coverage/lcov-report/components/{SideNav/UI → GovBanner}/index.html +27 -42
  24. package/coverage/lcov-report/components/GovBanner/index.js.html +436 -0
  25. package/coverage/lcov-report/components/{SideNav/Links/NavLinkInline.jsx.html → Header/HeaderAccountMenu.jsx.html} +118 -157
  26. package/coverage/lcov-report/components/{SideNav/Details/IndividualDetails.jsx.html → Header/HeaderCancel.jsx.html} +18 -24
  27. package/coverage/lcov-report/components/Header/HeaderContainer.jsx.html +280 -0
  28. package/coverage/lcov-report/components/Header/HeaderLogo.jsx.html +211 -0
  29. package/coverage/lcov-report/components/{SideNav/Links/NavItemInline.jsx.html → Header/HeaderMenuButton.js.html} +63 -75
  30. package/coverage/lcov-report/components/{SideNav/Content/LevelTwoContent.jsx.html → Header/HeaderMenuItem.jsx.html} +305 -236
  31. package/coverage/lcov-report/components/Header/HeaderMenuLink.js.html +253 -0
  32. package/coverage/lcov-report/components/Header/HeaderMenuSignOutButton.js.html +271 -0
  33. package/coverage/lcov-report/components/{SideNav/Links/NavLinkToggle.jsx.html → Header/HeaderMobileButton.js.html} +54 -45
  34. package/coverage/lcov-report/components/{Footer/LegacyFooterUI.jsx.html → Header/HeaderUI.jsx.html} +198 -303
  35. package/coverage/lcov-report/components/Header/HelpIcon.jsx.html +181 -0
  36. package/coverage/lcov-report/components/Header/ImpersonatorBanner.jsx.html +331 -0
  37. package/coverage/lcov-report/components/{SideNav/AnimationGroup/AnimationGroup.jsx.html → Header/NavigationButtonIcon.jsx.html} +48 -48
  38. package/coverage/lcov-report/components/Header/hooks.js.html +283 -0
  39. package/coverage/lcov-report/components/Header/index.html +326 -0
  40. package/coverage/lcov-report/components/{SideNav/Links/index.js.html → Header/utag-helpers.js.html} +28 -40
  41. package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +5 -5
  42. package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +5 -5
  43. package/coverage/lcov-report/components/Infotip/index.html +1 -1
  44. package/coverage/lcov-report/components/Infotip/index.js.html +1 -1
  45. package/coverage/lcov-report/components/Modal/LegacyModal.jsx.html +3 -3
  46. package/coverage/lcov-report/components/Modal/Modal.jsx.html +5 -5
  47. package/coverage/lcov-report/components/Modal/index.html +1 -1
  48. package/coverage/lcov-report/components/Modal/index.jsx.html +5 -5
  49. package/coverage/lcov-report/components/{SideNav/Links/NavLinkContainer.jsx.html → NotificationBanner/CollapsedView.js.html} +61 -58
  50. package/coverage/lcov-report/components/{SideNav/Details/PracticeDetails.jsx.html → NotificationBanner/ExpandedView.js.html} +64 -64
  51. package/coverage/lcov-report/components/{SideNav/Details → NotificationBanner}/index.html +46 -46
  52. package/coverage/lcov-report/components/{SideNav/Content/LevelOneContent.jsx.html → NotificationBanner/index.js.html} +281 -242
  53. package/coverage/lcov-report/components/SanitizedContent/index.html +1 -1
  54. package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +1 -1
  55. package/coverage/lcov-report/components/SessionDialogUI.jsx.html +4 -4
  56. package/coverage/lcov-report/components/SideNav/Chart/ScoreChart.jsx.html +7 -7
  57. package/coverage/lcov-report/components/SideNav/Chart/index.html +1 -16
  58. package/coverage/lcov-report/components/SideNav/{AnimationGroup → Content/SelectRole}/index.html +30 -30
  59. package/coverage/lcov-report/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  60. package/coverage/lcov-report/components/SideNav/helpers.js.html +910 -10
  61. package/coverage/lcov-report/components/SideNav/index.html +17 -17
  62. package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +9 -9
  63. package/coverage/lcov-report/components/Tooltip/index.html +1 -1
  64. package/coverage/lcov-report/components/Tooltip/index.js.html +1 -1
  65. package/coverage/lcov-report/components/Tooltip/position.js.html +1 -1
  66. package/coverage/lcov-report/components/hooks/index.html +5 -5
  67. package/coverage/lcov-report/components/hooks/useGetConfig.js.html +18 -15
  68. package/coverage/lcov-report/components/index.html +1 -1
  69. package/coverage/lcov-report/index.html +32 -32
  70. package/coverage/lcov-report/lib/Chevron.jsx.html +5 -5
  71. package/coverage/lcov-report/lib/SvgComponents.jsx.html +150 -12
  72. package/coverage/lcov-report/lib/index.html +15 -30
  73. package/coverage/lcov-report/react/components/Accordion/index.html +1 -1
  74. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +1 -1
  75. package/coverage/lcov-report/react/components/Button/index.html +1 -1
  76. package/coverage/lcov-report/react/components/Button/index.js.html +1 -1
  77. package/coverage/lcov-report/react/components/Dropdown/index.html +1 -1
  78. package/coverage/lcov-report/react/components/Dropdown/index.js.html +1 -1
  79. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +1 -1
  80. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +1 -1
  81. package/coverage/lcov-report/react/components/Error/error.js.html +1 -1
  82. package/coverage/lcov-report/react/components/Error/index.html +1 -1
  83. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +1 -1
  84. package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +16 -16
  85. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +1 -1
  86. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +1 -1
  87. package/coverage/lcov-report/react/components/Footer/footer.js.html +1 -1
  88. package/coverage/lcov-report/react/components/Footer/index.html +1 -1
  89. package/coverage/lcov-report/react/components/GovBanner/index.html +1 -1
  90. package/coverage/lcov-report/react/components/GovBanner/index.js.html +1 -1
  91. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +1 -1
  92. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +1 -1
  93. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +59 -32
  94. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +1 -1
  95. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +1 -1
  96. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +1 -1
  97. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +1 -1
  98. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +1 -1
  99. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +1 -1
  100. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +40 -16
  101. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +1 -1
  102. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +1 -1
  103. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +1 -1
  104. package/coverage/lcov-report/react/components/Header/header.js.html +1 -1
  105. package/coverage/lcov-report/react/components/Header/hooks.js.html +4 -4
  106. package/coverage/lcov-report/react/components/Header/index.html +25 -25
  107. package/coverage/lcov-report/react/components/Header/utag-helpers.js.html +1 -1
  108. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +1 -1
  109. package/coverage/lcov-report/{components/SideNav/Links/CmsSwitchLink.jsx.html → react/components/Infotip/InfotipContent.jsx.html} +62 -47
  110. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +1 -1
  111. package/coverage/lcov-report/react/components/Infotip/index.html +1 -1
  112. package/coverage/lcov-report/react/components/Infotip/index.js.html +1 -1
  113. package/coverage/lcov-report/react/components/Modal/LegacyModal.jsx.html +1 -1
  114. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +1 -1
  115. package/coverage/lcov-report/react/components/Modal/index.html +1 -1
  116. package/coverage/lcov-report/react/components/Modal/index.jsx.html +1 -1
  117. package/coverage/lcov-report/react/components/NotificationBanner/CollapsedView.js.html +1 -1
  118. package/coverage/lcov-report/react/components/NotificationBanner/ExpandedView.js.html +1 -1
  119. package/coverage/lcov-report/react/components/NotificationBanner/index.html +1 -1
  120. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +1 -1
  121. package/coverage/lcov-report/react/components/SanitizedContent/index.html +1 -1
  122. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +1 -1
  123. package/coverage/lcov-report/react/components/SessionDialog/index.html +1 -1
  124. package/coverage/lcov-report/react/components/SessionDialog/sessionDialog.js.html +1 -1
  125. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +1 -1
  126. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +1 -1
  127. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +1 -1
  128. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +19 -13
  129. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +1 -1
  130. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +2 -2
  131. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +1 -1
  132. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +1 -1
  133. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.html +1 -1
  134. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +1 -1
  135. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +1 -1
  136. package/coverage/lcov-report/react/components/SideNav/Content/index.html +1 -1
  137. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +1 -1
  138. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +1 -1
  139. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +1 -1
  140. package/coverage/lcov-report/react/components/SideNav/Details/index.html +1 -1
  141. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +1 -1
  142. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +1 -1
  143. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +1 -1
  144. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +1 -1
  145. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +1 -1
  146. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +1 -1
  147. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +1 -1
  148. package/coverage/lcov-report/react/components/SideNav/Links/index.html +1 -1
  149. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +1 -1
  150. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +2 -2
  151. package/coverage/lcov-report/react/components/SideNav/UI/index.html +1 -1
  152. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +1 -1
  153. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +23 -8
  154. package/coverage/lcov-report/react/components/SideNav/index.html +11 -11
  155. package/coverage/lcov-report/react/components/SideNav/index.js.html +1 -1
  156. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +2 -2
  157. package/coverage/lcov-report/react/components/Tooltip/index.html +1 -1
  158. package/coverage/lcov-report/react/components/Tooltip/index.js.html +1 -1
  159. package/coverage/lcov-report/react/components/Tooltip/position.js.html +1 -1
  160. package/coverage/lcov-report/react/components/hooks/index.html +1 -1
  161. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +1 -1
  162. package/coverage/lcov-report/react/components/index.html +1 -1
  163. package/coverage/lcov-report/react/index.html +1 -1
  164. package/coverage/lcov-report/react/index.js.html +1 -1
  165. package/coverage/lcov-report/react/lib/Chevron.jsx.html +1 -1
  166. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +63 -18
  167. package/coverage/lcov-report/react/lib/index.html +15 -15
  168. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +1 -1
  169. package/coverage/lcov-report/react/session/index.html +1 -1
  170. package/coverage/lcov-report/react/session/index.js.html +1 -1
  171. package/coverage/lcov-report/react/session/logout.js.html +1 -1
  172. package/coverage/lcov-report/react/session/refresh.js.html +1 -1
  173. package/coverage/lcov-report/react/session/ttl.js.html +1 -1
  174. package/coverage/lcov-report/session/index.html +20 -20
  175. package/coverage/lcov-report/session/index.js.html +1 -1
  176. package/coverage/lcov-report/session/logout.js.html +24 -15
  177. package/coverage/lcov-report/session/refresh.js.html +2 -2
  178. package/coverage/lcov-report/session/ttl.js.html +2 -2
  179. package/coverage/lcov.info +325 -309
  180. package/dist/browser.js +1 -1
  181. package/dist/browser.js.LICENSE.txt +0 -39
  182. package/dist/browser.js.map +1 -1
  183. package/dist/index.js +1 -1
  184. package/dist/index.js.LICENSE.txt +0 -39
  185. package/dist/index.js.map +1 -1
  186. package/dist/react/index.js +1 -1
  187. package/dist/react/index.js.LICENSE.txt +8 -50
  188. package/dist/react/index.js.map +1 -1
  189. package/lib/SvgComponents.jsx +120 -0
  190. package/package.json +5 -10
  191. package/styles/qppds/components/_footer.scss +2 -2
  192. package/test/components/HeaderUI.test.js +1 -1
  193. package/test/components/Infotip.test.js +17 -11
  194. package/components/Accordion/Accordion.stories.js +0 -20
  195. package/components/Alert/Alert.stories.js +0 -61
  196. package/components/Details/Details.stories.js +0 -63
  197. package/components/DropdownButton/DropdownButton.stories.js +0 -127
  198. package/components/Tabs/Tab.js +0 -26
  199. package/components/Tabs/index.js +0 -100
  200. package/components/Tooltip/Tooltip.jsx +0 -88
  201. package/components/Tooltip/Tooltip.stories.js +0 -80
  202. package/components/Tooltip/index.js +0 -3
  203. package/components/Tooltip/position.js +0 -68
  204. package/coverage/lcov-report/components/SideNav/Chart/index.js.html +0 -94
  205. package/coverage/lcov-report/components/SideNav/Content/index.html +0 -146
  206. package/coverage/lcov-report/components/SideNav/Content/index.js.html +0 -97
  207. package/coverage/lcov-report/components/SideNav/Details/index.js.html +0 -97
  208. package/coverage/lcov-report/components/SideNav/Links/NavLinkDrawer.jsx.html +0 -832
  209. package/coverage/lcov-report/components/SideNav/Links/index.html +0 -206
  210. package/coverage/lcov-report/components/SideNav/UI/SideNavUI.jsx.html +0 -1084
  211. package/coverage/lcov-report/components/SideNav/UI/index.js.html +0 -94
  212. package/coverage/lcov-report/lib/svg-definitions.svg.html +0 -460
  213. package/test/components/Tooltip.test.js +0 -147
@@ -1,10 +1,9 @@
1
1
  import React from 'react';
2
- import OpenInNewIcon from '@material-ui/icons/OpenInNew';
3
-
4
2
  import InfoTip from '../Infotip/Infotip';
5
3
  import Subscribe from './Subscribe';
6
4
  import SocialLinks from './SocialLinks';
7
5
  import pjson from '../../package.json';
6
+ import { OpenInNewIcon } from '../../lib/SvgComponents';
8
7
 
9
8
  const infoTipLabel =
10
9
  'When dialing 711, you will automatically be connected to a TRS Communications Assistant who will relay your conversation to the help desk agent with strict confidentiality.';
@@ -126,7 +125,7 @@ const FooterUI = () => (
126
125
  rel="noopener noreferrer"
127
126
  >
128
127
  <strong>Create or Track a QPP Service Center Ticket</strong>
129
- <OpenInNewIcon classes={{ root: 'ccsq-link-icon' }} />
128
+ <OpenInNewIcon className="ccsq-link-icon" />
130
129
  </a>
131
130
  </h3>
132
131
  </div>
@@ -1,8 +1,7 @@
1
1
  import React from 'react';
2
2
  import cookie from 'cookie';
3
3
  import axios from 'axios';
4
- import CloseIcon from '@material-ui/icons/Close';
5
-
4
+ import { CloseIcon } from '../../lib/SvgComponents';
6
5
  import { TextButton } from '../Button';
7
6
  import {
8
7
  deleteImpersonatedUser,
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import Tooltip from '../Tooltip';
3
+ import InfotipContent from './InfotipContent';
4
4
  import InfotipIcon from './InfotipIcon';
5
5
 
6
6
  const BUTTON_SIZE = '16px';
@@ -16,10 +16,6 @@ const buttonStyle = {
16
16
  userSelect: 'none',
17
17
  };
18
18
 
19
- // Use basic touch handlers for mobile "tap-to-open" ui. Mobile touch
20
- // is currently not supported by @reach/tooltip; this may change in future.
21
- // Leverages @reach/tooltip "focus" behavior to open tooltip on tap,
22
- // and close tooltip on second tap or loss of focus.
23
19
  // TODO: We may want to improve this by tracking touch positions to ensure
24
20
  // that a 'touchend' event must be reasonably close to the tooltip target.
25
21
  const touchHandlers = {
@@ -41,7 +37,7 @@ const touchHandlers = {
41
37
  * Tooltip with styled information icon
42
38
  */
43
39
  const Infotip = ({ ariaLabel, label, lightIcon, ...props }) => (
44
- <Tooltip label={label} {...props}>
40
+ <InfotipContent label={label} {...props}>
45
41
  <button
46
42
  type="button"
47
43
  aria-label={ariaLabel}
@@ -56,7 +52,7 @@ const Infotip = ({ ariaLabel, label, lightIcon, ...props }) => (
56
52
  style={{ float: 'left' }}
57
53
  />
58
54
  </button>
59
- </Tooltip>
55
+ </InfotipContent>
60
56
  );
61
57
 
62
58
  Infotip.propTypes = {
@@ -0,0 +1,46 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import {
4
+ Tooltip as TooltipAriaKit,
5
+ TooltipAnchor,
6
+ TooltipArrow,
7
+ useTooltipState,
8
+ } from 'ariakit/tooltip';
9
+
10
+ const TEXT_COLOR = '#FFF';
11
+ const BACKGROUND_COLOR = '#333';
12
+
13
+ const InfotipContent = ({ children, label }) => {
14
+ const tooltip = useTooltipState();
15
+
16
+ const cssStyles = {
17
+ maxWidth: '300px',
18
+ padding: '8px',
19
+ borderRadius: '4px',
20
+ fontSize: '0.9rem',
21
+ backgroundColor: BACKGROUND_COLOR,
22
+ color: TEXT_COLOR,
23
+ };
24
+ return (
25
+ <>
26
+ <TooltipAnchor as={'span'} state={tooltip} className="tooltip-anchor">
27
+ {children}
28
+ </TooltipAnchor>
29
+ <TooltipAriaKit
30
+ state={tooltip}
31
+ className="tooltip-content"
32
+ style={cssStyles}
33
+ >
34
+ {label}
35
+ <TooltipArrow />
36
+ </TooltipAriaKit>
37
+ </>
38
+ );
39
+ };
40
+
41
+ InfotipContent.propTypes = {
42
+ children: PropTypes.node.isRequired,
43
+ label: PropTypes.node.isRequired,
44
+ };
45
+
46
+ export default InfotipContent;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import SearchIcon from '@material-ui/icons/Search';
3
+ import { SearchIcon } from '../../lib/SvgComponents';
4
4
 
5
5
  const Search = ({
6
6
  id,
@@ -55,7 +55,7 @@ const Search = ({
55
55
  className="qpp-c-search__submit qpp-c-button qpp-c-button--text"
56
56
  >
57
57
  <span className="qpp-u-visually-hidden">Search</span>
58
- <SearchIcon classes={{ root: 'qpp-icon-mat' }} />
58
+ <SearchIcon viewBox="0 0 45 50" />
59
59
  </button>
60
60
  </div>
61
61
  </form>
@@ -28,9 +28,6 @@ const NavLinkDrawer = ({
28
28
  }) => {
29
29
  const [isOpen, setIsOpen] = useState(openByDefault);
30
30
  const MANAGE_ACCESS = '/user/manage-access';
31
- const ELIGIBILITY_REPORTING = '/user/dashboard';
32
- const REGISTRATION = '/user/registration';
33
- const SUBMISSION_FEEDBACK = '/user/submissions/feedback';
34
31
 
35
32
  const toggleDrawer = () => {
36
33
  if (!isExpanded && typeof sidebarExpand === 'function') {
@@ -47,25 +44,9 @@ const NavLinkDrawer = ({
47
44
  };
48
45
 
49
46
  const reRouteHandler = () => {
50
- if (url) {
51
- window.location.href = url;
52
- }
53
- };
54
-
55
- const parentReroute = (url) => {
56
47
  if (url === MANAGE_ACCESS) {
57
- return false;
58
- }
59
- if (url === ELIGIBILITY_REPORTING) {
60
- return false;
61
- }
62
- if (url === REGISTRATION) {
63
- return false;
64
- }
65
- if (url === SUBMISSION_FEEDBACK) {
66
- return false;
48
+ return (window.location.href = MANAGE_ACCESS);
67
49
  }
68
- return true;
69
50
  };
70
51
 
71
52
  const isLinkActive = (link, func) => {
@@ -220,7 +201,7 @@ const NavLinkDrawer = ({
220
201
  {...(!isAlwaysOpen ? { 'aria-pressed': isOpen } : {})}
221
202
  tabIndex="0"
222
203
  aria-label={label}
223
- {...((parentReroute(url) && isAlwaysOpen) || disabled
204
+ {...((url !== MANAGE_ACCESS && isAlwaysOpen) || disabled
224
205
  ? { disabled: isAlwaysOpen || disabled }
225
206
  : {})}
226
207
  className={`${className} ${expandedClass} ${highlightTitle(
@@ -1,41 +1,5 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
-
4
- export const TabPanel = ({
5
- children,
6
- value,
7
- id,
8
- index,
9
- className,
10
- disabled,
11
- }) => {
12
- const classes = ['qpp-c-tabs__panel', className].filter(Boolean).join(' ');
13
- return (
14
- <div
15
- role="tabpanel"
16
- id={id}
17
- aria-hidden={value !== index}
18
- aria-labelledby={`qpp-c-tabs__item--${id}`}
19
- aria-disabled={disabled}
20
- className={classes}
21
- >
22
- {value === index && children}
23
- </div>
24
- );
25
- };
26
-
27
- TabPanel.propTypes = {
28
- children: PropTypes.node,
29
- className: PropTypes.string,
30
- index: PropTypes.number.isRequired,
31
- id: PropTypes.string,
32
- value: PropTypes.number.isRequired,
33
- disabled: PropTypes.bool,
34
- };
35
-
36
- TabPanel.defaultProps = {
37
- index: 0,
38
- value: 0,
1
+ const TabPanel = ({ children }) => {
2
+ return children;
39
3
  };
40
4
 
41
5
  export default TabPanel;
@@ -0,0 +1,73 @@
1
+ import React, { Children } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { TabList, Tab, TabPanel, useTabState } from 'ariakit/tab';
4
+
5
+ function Tabs({ defaultSelectedId, children, onChange, selected }) {
6
+ const tab = useTabState({
7
+ defaultSelectedId: selected ?? defaultSelectedId,
8
+ selectOnMove: false,
9
+ });
10
+
11
+ const onTabClick = (tabHref, id) => {
12
+ if (tabHref) {
13
+ const currentUrl = new URL(window.location.href);
14
+ const newParams = new URLSearchParams(tabHref);
15
+ newParams.forEach((value, key) => {
16
+ currentUrl.searchParams.set(key, value);
17
+ });
18
+ window.history.replaceState(null, '', currentUrl);
19
+ }
20
+
21
+ if (onChange) {
22
+ onChange(id);
23
+ }
24
+ };
25
+
26
+ return (
27
+ <>
28
+ <div className="qpp-c-tabs qpp-c-tabs--mui">
29
+ <TabList state={tab} aria-label="qpp tabs">
30
+ {Children.map(children, (child) => (
31
+ <Tab
32
+ key={child.props.id}
33
+ id={child.props.id}
34
+ className="qpp-c-tabs__item"
35
+ disabled={child.props.disabled}
36
+ onClick={() => onTabClick(child.props.tabHref, child.props.id)}
37
+ >
38
+ {child.props.tab}
39
+ </Tab>
40
+ ))}
41
+ </TabList>
42
+ </div>
43
+ <div className="qpp-c-tabs__panel">
44
+ {Children.map(children, (child) => (
45
+ <TabPanel
46
+ key={child.props.id}
47
+ state={tab}
48
+ tabId={child.props.id}
49
+ className={child.props.className}
50
+ disabled={child.props.disabled}
51
+ >
52
+ {child.props.children}
53
+ </TabPanel>
54
+ ))}
55
+ </div>
56
+ </>
57
+ );
58
+ }
59
+
60
+ Tabs.propTypes = {
61
+ defaultSelectedId: PropTypes.string,
62
+ children: PropTypes.node.isRequired,
63
+ onChange: PropTypes.func,
64
+ selected: PropTypes.string,
65
+ };
66
+
67
+ Tabs.defaultProps = {
68
+ defaultSelectedId: undefined,
69
+ onChange: undefined,
70
+ selected: undefined,
71
+ };
72
+
73
+ export default Tabs;
@@ -9,14 +9,13 @@ import Footer from './Footer/FooterUI';
9
9
  import Header from './Header/HeaderUI';
10
10
  import Modal from './Modal';
11
11
  import SideNav from './SideNav/UI/SideNavUI';
12
+ import Tabs from './Tabs/Tabs';
12
13
  import TabPanel from './Tabs/TabPanel';
13
- import Tabs from './Tabs/index';
14
- import Tooltip from './Tooltip';
15
14
  import Infotip from './Infotip';
16
15
  import Search from './Search';
17
16
  import TextInput from './TextInput';
18
17
  import Dropdown from './Dropdown';
19
- import Details from './Details';
18
+ import Details from './Details/index';
20
19
  import DSLink from './Link';
21
20
  import {
22
21
  MyApplicationsIcon,
@@ -117,12 +116,11 @@ export {
117
116
  Modal,
118
117
  Search,
119
118
  SideNav,
120
- TabPanel,
121
119
  Tabs,
120
+ TabPanel,
122
121
  TextButton,
123
122
  TextInput,
124
123
  Dropdown,
125
124
  Details,
126
- Tooltip,
127
125
  DSLink,
128
126
  };