qpp-style 0.0.9 → 0.0.10

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 (456) hide show
  1. package/.eslintrc.js +28 -28
  2. package/.husky/pre-commit +5 -0
  3. package/README.md +45 -0
  4. package/components/Accordion/index.jsx +35 -43
  5. package/components/Alert/index.js +53 -0
  6. package/components/Breadcrumb/index.js +4 -4
  7. package/components/Button/index.js +17 -6
  8. package/components/CalloutBox/index.js +109 -0
  9. package/components/Card/index.js +137 -0
  10. package/components/Details/DetailsIcons.js +50 -0
  11. package/components/Details/index.js +53 -0
  12. package/components/Dropdown/index.js +85 -0
  13. package/components/DropdownButton/Menu.js +25 -0
  14. package/components/DropdownButton/MenuButton.js +41 -0
  15. package/components/DropdownButton/MenuItem.js +25 -0
  16. package/components/DropdownButton/MenuItemLink.js +27 -0
  17. package/components/Error/Collapsible.jsx +2 -2
  18. package/components/Footer/FooterUI.jsx +175 -177
  19. package/components/Footer/footer.js +2 -12
  20. package/components/GovBanner/index.js +117 -0
  21. package/components/Header/HeaderAccountMenu.jsx +49 -75
  22. package/components/Header/HeaderContainer.jsx +46 -34
  23. package/components/Header/HeaderLogo.jsx +40 -17
  24. package/components/Header/HeaderMenuButton.js +38 -12
  25. package/components/Header/HeaderMenuItem.jsx +204 -64
  26. package/components/Header/HeaderMenuLink.js +46 -10
  27. package/components/Header/HeaderMenuSignOutButton.js +46 -10
  28. package/components/Header/HeaderMobileButton.js +15 -6
  29. package/components/Header/HeaderUI.jsx +118 -117
  30. package/components/Header/HelpIcon.jsx +7 -5
  31. package/components/Header/ImpersonatorBanner.jsx +81 -0
  32. package/components/Header/header.js +2 -0
  33. package/components/Header/hooks.js +53 -1
  34. package/components/Header/utag-helpers.js +9 -0
  35. package/components/Infotip/Infotip.jsx +6 -10
  36. package/components/Infotip/InfotipContent.jsx +46 -0
  37. package/components/Infotip/InfotipIcon.jsx +3 -3
  38. package/components/Link/index.js +61 -0
  39. package/components/Modal/Modal.jsx +53 -40
  40. package/components/Modal/index.jsx +11 -11
  41. package/components/NotificationBanner/CollapsedView.js +39 -0
  42. package/components/NotificationBanner/ExpandedView.js +45 -0
  43. package/components/NotificationBanner/index.js +219 -30
  44. package/components/Search/index.js +98 -0
  45. package/components/SessionDialog/sessionDialog.js +26 -0
  46. package/components/SessionDialogUI.jsx +34 -26
  47. package/components/SideNav/AnimationGroup/AnimationGroup.jsx +9 -2
  48. package/components/SideNav/Chart/ScoreChart.jsx +1 -1
  49. package/components/SideNav/Chart/__tests__/ScoreChart.test.js +3 -12
  50. package/components/SideNav/Chart/__tests__/__snapshots__/ScoreChart.test.js.snap +144 -35
  51. package/components/SideNav/Chart/index.js +1 -1
  52. package/components/SideNav/Content/LevelOneContent.jsx +145 -255
  53. package/components/SideNav/Content/LevelTwoContent.jsx +12 -10
  54. package/components/SideNav/Content/SelectRole/index.js +77 -0
  55. package/components/SideNav/Content/SelectRole/utils.js +140 -0
  56. package/components/SideNav/Details/PracticeDetails.jsx +4 -0
  57. package/components/SideNav/Links/CmsSwitchLink.jsx +1 -1
  58. package/components/SideNav/Links/NavLinkContainer.jsx +29 -34
  59. package/components/SideNav/Links/NavLinkDrawer.jsx +100 -17
  60. package/components/SideNav/Links/NavLinkInline.jsx +7 -2
  61. package/components/SideNav/SideNav.md +28 -27
  62. package/components/SideNav/UI/SideNavUI.jsx +122 -129
  63. package/components/SideNav/UI/default-content.json +117 -0
  64. package/components/SideNav/helpers.js +316 -4
  65. package/components/Tabs/TabPanel.js +5 -0
  66. package/components/Tabs/Tabs.js +73 -0
  67. package/components/TextInput/index.js +137 -0
  68. package/components/hooks/useGetConfig.js +75 -0
  69. package/components/index.js +103 -9
  70. package/coverage/clover.xml +1465 -41
  71. package/coverage/coverage-final.json +72 -1
  72. package/coverage/lcov-report/block-navigation.js +8 -0
  73. package/coverage/lcov-report/components/Accordion/index.html +26 -21
  74. package/coverage/lcov-report/components/Accordion/index.jsx.html +106 -131
  75. package/coverage/lcov-report/{SideNav/Chart → components/Button}/index.html +29 -24
  76. package/coverage/lcov-report/{Error/Collapsible.jsx.html → components/Button/index.js.html} +125 -114
  77. package/coverage/lcov-report/components/Error/Collapsible.jsx.html +92 -87
  78. package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +32 -33
  79. package/coverage/lcov-report/components/Error/index.html +11 -6
  80. package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +200 -189
  81. package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +24 -61
  82. package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +18 -13
  83. package/coverage/lcov-report/components/Footer/index.html +35 -45
  84. package/coverage/lcov-report/components/{InfoModal → GovBanner}/index.html +27 -22
  85. package/coverage/lcov-report/components/{InfoModal/index.jsx.html → GovBanner/index.js.html} +157 -122
  86. package/coverage/lcov-report/components/Header/HeaderAccountMenu.jsx.html +93 -520
  87. package/coverage/lcov-report/components/Header/HeaderCancel.jsx.html +19 -23
  88. package/coverage/lcov-report/components/Header/HeaderContainer.jsx.html +280 -0
  89. package/coverage/lcov-report/components/{SideNav/Links/NavLinkContainer.jsx.html → Header/HeaderLogo.jsx.html} +78 -67
  90. package/coverage/lcov-report/components/{SideNav/Links/NavItemInline.jsx.html → Header/HeaderMenuButton.js.html} +71 -78
  91. package/coverage/lcov-report/components/{SideNav/Links/NavLinkDrawer.jsx.html → Header/HeaderMenuItem.jsx.html} +291 -268
  92. package/coverage/lcov-report/components/Header/HeaderMenuLink.js.html +253 -0
  93. package/coverage/lcov-report/components/Header/HeaderMenuSignOutButton.js.html +271 -0
  94. package/coverage/lcov-report/components/{SideNav/Links/NavLinkToggle.jsx.html → Header/HeaderMobileButton.js.html} +64 -47
  95. package/coverage/lcov-report/components/Header/HeaderUI.jsx.html +176 -756
  96. package/coverage/lcov-report/components/Header/HelpIcon.jsx.html +181 -0
  97. package/coverage/lcov-report/{Accordion/index.jsx.html → components/Header/ImpersonatorBanner.jsx.html} +109 -167
  98. package/coverage/lcov-report/components/Header/NavigationButtonIcon.jsx.html +24 -19
  99. package/coverage/lcov-report/components/Header/hooks.js.html +283 -0
  100. package/coverage/lcov-report/components/Header/index.html +203 -33
  101. package/coverage/lcov-report/components/{SideNav/Links/index.js.html → Header/utag-helpers.js.html} +35 -42
  102. package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +53 -48
  103. package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +37 -32
  104. package/coverage/lcov-report/components/Infotip/index.html +8 -3
  105. package/coverage/lcov-report/components/Infotip/index.js.html +8 -3
  106. package/coverage/lcov-report/components/Modal/LegacyModal.jsx.html +301 -0
  107. package/coverage/lcov-report/{HeaderUI.jsx.html → components/Modal/Modal.jsx.html} +169 -257
  108. package/coverage/lcov-report/components/Modal/index.html +146 -0
  109. package/coverage/lcov-report/components/{SideNav/Details/IndividualDetails.jsx.html → Modal/index.jsx.html} +50 -42
  110. package/coverage/lcov-report/components/NotificationBanner/CollapsedView.js.html +202 -0
  111. package/coverage/lcov-report/components/NotificationBanner/ExpandedView.js.html +220 -0
  112. package/coverage/lcov-report/components/NotificationBanner/index.html +58 -23
  113. package/coverage/lcov-report/components/{SideNav/Content/LevelTwoContent.jsx.html → NotificationBanner/index.js.html} +292 -272
  114. package/coverage/lcov-report/components/SanitizedContent/index.html +8 -3
  115. package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +475 -50
  116. package/coverage/lcov-report/components/SessionDialogUI.jsx.html +248 -255
  117. package/coverage/lcov-report/components/SideNav/Chart/ScoreChart.jsx.html +272 -408
  118. package/coverage/lcov-report/components/SideNav/Chart/index.html +28 -38
  119. package/coverage/lcov-report/components/SideNav/Content/SelectRole/index.html +116 -0
  120. package/coverage/lcov-report/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  121. package/coverage/lcov-report/components/SideNav/helpers.js.html +987 -46
  122. package/coverage/lcov-report/components/SideNav/index.html +24 -19
  123. package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +70 -65
  124. package/coverage/lcov-report/components/Tooltip/index.html +8 -3
  125. package/coverage/lcov-report/components/Tooltip/index.js.html +8 -3
  126. package/coverage/lcov-report/components/Tooltip/position.js.html +57 -64
  127. package/coverage/lcov-report/components/hooks/index.html +116 -0
  128. package/coverage/lcov-report/components/hooks/useGetConfig.js.html +310 -0
  129. package/coverage/lcov-report/components/index.html +10 -5
  130. package/coverage/lcov-report/index.html +401 -21
  131. package/coverage/lcov-report/{Error/ErrorUI.jsx.html → lib/Chevron.jsx.html} +44 -42
  132. package/coverage/lcov-report/lib/SvgComponents.jsx.html +1840 -0
  133. package/coverage/lcov-report/lib/index.html +34 -14
  134. package/coverage/lcov-report/react/components/Accordion/index.html +26 -21
  135. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +67 -86
  136. package/coverage/lcov-report/react/components/{FlashNotification → Button}/index.html +23 -33
  137. package/coverage/lcov-report/{components/SideNav/Links/NavLinkInline.jsx.html → react/components/Button/index.js.html} +119 -120
  138. package/coverage/lcov-report/react/components/{Tabs → Dropdown}/index.html +23 -33
  139. package/coverage/lcov-report/react/components/{InfoModal/index.jsx.html → Dropdown/index.js.html} +102 -154
  140. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +26 -21
  141. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +11 -6
  142. package/coverage/lcov-report/react/components/Error/error.js.html +8 -3
  143. package/coverage/lcov-report/react/components/Error/index.html +11 -6
  144. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +196 -194
  145. package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +9 -4
  146. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +18 -13
  147. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +18 -13
  148. package/coverage/lcov-report/react/components/Footer/footer.js.html +12 -37
  149. package/coverage/lcov-report/react/components/Footer/index.html +35 -45
  150. package/coverage/lcov-report/react/components/{InfoModal → GovBanner}/index.html +27 -22
  151. package/coverage/lcov-report/react/components/{Tabs/TabsUI.jsx.html → GovBanner/index.js.html} +146 -153
  152. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +81 -154
  153. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +15 -10
  154. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +91 -50
  155. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +105 -31
  156. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +109 -26
  157. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +510 -85
  158. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +137 -24
  159. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +134 -21
  160. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +56 -24
  161. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +172 -179
  162. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +30 -19
  163. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +331 -0
  164. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +9 -4
  165. package/coverage/lcov-report/react/components/Header/header.js.html +15 -4
  166. package/coverage/lcov-report/react/components/Header/hooks.js.html +187 -26
  167. package/coverage/lcov-report/react/components/Header/index.html +157 -122
  168. package/coverage/lcov-report/react/components/{Spinner/index.js.html → Header/utag-helpers.js.html} +26 -21
  169. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +12 -7
  170. package/coverage/lcov-report/react/components/{Tabs/tabs.js.html → Infotip/InfotipContent.jsx.html} +83 -48
  171. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +12 -7
  172. package/coverage/lcov-report/react/components/Infotip/index.html +8 -3
  173. package/coverage/lcov-report/react/components/Infotip/index.js.html +8 -3
  174. package/coverage/lcov-report/react/components/{FlashNotification/FlashNotificationUI.jsx.html → Modal/LegacyModal.jsx.html} +89 -84
  175. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +505 -0
  176. package/coverage/lcov-report/react/components/Modal/index.html +52 -17
  177. package/coverage/lcov-report/react/components/Modal/index.jsx.html +38 -201
  178. package/coverage/lcov-report/{components/SideNav/Links/CmsSwitchLink.jsx.html → react/components/NotificationBanner/CollapsedView.js.html} +52 -50
  179. package/coverage/lcov-report/{components/SideNav/Details/PracticeDetails.jsx.html → react/components/NotificationBanner/ExpandedView.js.html} +74 -57
  180. package/coverage/lcov-report/react/components/NotificationBanner/index.html +56 -21
  181. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +615 -43
  182. package/coverage/lcov-report/react/components/SanitizedContent/index.html +8 -3
  183. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +12 -7
  184. package/coverage/lcov-report/react/components/{Spinner → SessionDialog}/index.html +11 -6
  185. package/coverage/lcov-report/react/components/{FlashNotification/index.js.html → SessionDialog/sessionDialog.js.html} +35 -42
  186. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +80 -51
  187. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +38 -12
  188. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +18 -13
  189. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +67 -56
  190. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +26 -21
  191. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +9 -4
  192. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +189 -514
  193. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +28 -17
  194. package/coverage/lcov-report/{components/SideNav/Details → react/components/SideNav/Content/SelectRole}/index.html +42 -52
  195. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +316 -0
  196. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  197. package/coverage/lcov-report/react/components/SideNav/Content/index.html +32 -27
  198. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +8 -3
  199. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +10 -5
  200. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +26 -9
  201. package/coverage/lcov-report/react/components/SideNav/Details/index.html +23 -18
  202. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +8 -3
  203. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +9 -4
  204. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +8 -3
  205. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +54 -64
  206. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +281 -27
  207. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +66 -46
  208. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +8 -3
  209. package/coverage/lcov-report/react/components/SideNav/Links/index.html +44 -39
  210. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +8 -3
  211. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +165 -181
  212. package/coverage/lcov-report/react/components/SideNav/UI/index.html +28 -23
  213. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +8 -3
  214. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +967 -26
  215. package/coverage/lcov-report/react/components/SideNav/index.html +27 -22
  216. package/coverage/lcov-report/react/components/SideNav/index.js.html +8 -3
  217. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +20 -15
  218. package/coverage/lcov-report/react/components/Tooltip/index.html +8 -3
  219. package/coverage/lcov-report/react/components/Tooltip/index.js.html +8 -3
  220. package/coverage/lcov-report/react/components/Tooltip/position.js.html +22 -17
  221. package/coverage/lcov-report/{components/SideNav/AnimationGroup → react/components/hooks}/index.html +29 -24
  222. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +310 -0
  223. package/coverage/lcov-report/react/components/index.html +10 -5
  224. package/coverage/lcov-report/react/index.html +20 -15
  225. package/coverage/lcov-report/react/index.js.html +29 -9
  226. package/coverage/lcov-report/react/lib/Chevron.jsx.html +181 -0
  227. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +221 -132
  228. package/coverage/lcov-report/react/lib/index.html +32 -27
  229. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +8 -3
  230. package/coverage/lcov-report/react/session/index.html +32 -27
  231. package/coverage/lcov-report/react/session/index.js.html +8 -3
  232. package/coverage/lcov-report/react/session/logout.js.html +122 -18
  233. package/coverage/lcov-report/react/session/refresh.js.html +12 -7
  234. package/coverage/lcov-report/react/session/ttl.js.html +9 -4
  235. package/coverage/lcov-report/session/index.html +50 -45
  236. package/coverage/lcov-report/session/index.js.html +8 -3
  237. package/coverage/lcov-report/session/logout.js.html +144 -49
  238. package/coverage/lcov-report/session/refresh.js.html +41 -36
  239. package/coverage/lcov-report/session/ttl.js.html +34 -29
  240. package/coverage/lcov-report/sorter.js +26 -0
  241. package/coverage/lcov.info +3189 -46
  242. package/dist/browser.js +1 -1
  243. package/dist/browser.js.LICENSE.txt +1 -7
  244. package/dist/browser.js.map +1 -1
  245. package/dist/index.js +1 -1
  246. package/dist/index.js.LICENSE.txt +1 -7
  247. package/dist/index.js.map +1 -1
  248. package/dist/react/index.js +1 -1
  249. package/dist/react/index.js.LICENSE.txt +16 -16
  250. package/dist/react/index.js.map +1 -1
  251. package/fonts/PublicSans-Black.ttf +0 -0
  252. package/fonts/PublicSans-BlackItalic.ttf +0 -0
  253. package/fonts/PublicSans-Bold.ttf +0 -0
  254. package/fonts/PublicSans-BoldItalic.ttf +0 -0
  255. package/fonts/PublicSans-ExtraBold.ttf +0 -0
  256. package/fonts/PublicSans-ExtraBoldItalic.ttf +0 -0
  257. package/fonts/PublicSans-ExtraLight.ttf +0 -0
  258. package/fonts/PublicSans-ExtraLightItalic.ttf +0 -0
  259. package/fonts/PublicSans-Italic.ttf +0 -0
  260. package/fonts/PublicSans-Light.ttf +0 -0
  261. package/fonts/PublicSans-LightItalic.ttf +0 -0
  262. package/fonts/PublicSans-Medium.ttf +0 -0
  263. package/fonts/PublicSans-MediumItalic.ttf +0 -0
  264. package/fonts/PublicSans-Regular.ttf +0 -0
  265. package/fonts/PublicSans-SemiBold.ttf +0 -0
  266. package/fonts/PublicSans-SemiBoldItalic.ttf +0 -0
  267. package/fonts/PublicSans-Thin.ttf +0 -0
  268. package/fonts/PublicSans-ThinItalic.ttf +0 -0
  269. package/images/icon-dot-gov.svg +1 -0
  270. package/images/icon-https.svg +1 -0
  271. package/images/icons/close-x.svg +6 -0
  272. package/images/icons/svg/arrow-down.svg +3 -0
  273. package/images/icons/svg/arrow-download.svg +1 -0
  274. package/images/icons/svg/arrow-right.svg +1 -0
  275. package/images/icons/svg/arrow-up.svg +3 -0
  276. package/images/icons/svg/block.svg +5 -0
  277. package/images/icons/svg/calendar.svg +1 -0
  278. package/images/icons/svg/check-circle.svg +5 -0
  279. package/images/icons/svg/checkmark.svg +7 -0
  280. package/images/icons/svg/chevron-down.svg +11 -0
  281. package/images/icons/svg/chevron-left.svg +12 -0
  282. package/images/icons/svg/chevron-right.svg +12 -0
  283. package/images/icons/svg/chevron-up.svg +12 -0
  284. package/images/icons/svg/clipboard.svg +1 -0
  285. package/images/icons/svg/close.svg +1 -0
  286. package/images/icons/svg/divide.svg +13 -0
  287. package/images/icons/svg/doctors-and-clinicians-preview.svg +10 -0
  288. package/images/icons/svg/download.svg +1 -0
  289. package/images/icons/svg/dropdown-arrow.svg +1 -0
  290. package/images/icons/svg/equals.svg +13 -0
  291. package/images/icons/svg/exclamation.svg +11 -0
  292. package/images/icons/svg/external.svg +1 -0
  293. package/images/icons/svg/file-download.svg +1 -0
  294. package/images/icons/svg/file-upload.svg +1 -0
  295. package/images/icons/svg/info.svg +20 -0
  296. package/images/icons/svg/manage-user-access.svg +8 -0
  297. package/images/icons/svg/multiply.svg +12 -0
  298. package/images/icons/svg/performance-feedback.svg +1 -0
  299. package/images/icons/svg/plus.svg +12 -0
  300. package/images/icons/svg/preview.svg +17 -0
  301. package/images/icons/svg/print.svg +1 -0
  302. package/images/icons/svg/registration.svg +8 -0
  303. package/images/icons/svg/reporting.svg +17 -0
  304. package/images/icons/svg/save-disk.svg +5 -0
  305. package/images/icons/svg/search.svg +1 -0
  306. package/images/icons/svg/subtract.svg +15 -0
  307. package/images/icons/svg/targeted-review.svg +15 -0
  308. package/images/icons/svg/tooltip-question.svg +1 -0
  309. package/images/icons/svg/trash.svg +1 -0
  310. package/images/icons/svg/upload.svg +1 -0
  311. package/images/us_flag_small.png +0 -0
  312. package/index.js +5 -0
  313. package/jest.config.js +139 -132
  314. package/lib/Chevron.jsx +32 -0
  315. package/lib/SvgComponents.jsx +197 -49
  316. package/package.json +60 -78
  317. package/session/logout.js +35 -2
  318. package/styles/_global.scss +63 -62
  319. package/styles/_main.scss +6 -0
  320. package/styles/_qpp-style.scss +0 -3
  321. package/styles/components/_accordion.scss +249 -246
  322. package/styles/components/_autocomplete.scss +0 -3
  323. package/styles/components/_spinner.scss +0 -2
  324. package/styles/components/_tables.scss +77 -67
  325. package/styles/components/_text.scss +102 -102
  326. package/styles/components/_variables.scss +12 -12
  327. package/styles/qppds/base/_backgrounds.scss +1 -6
  328. package/styles/qppds/base/_fonts.scss +24 -0
  329. package/styles/qppds/base/_icon.scss +31 -0
  330. package/styles/qppds/base/_layout.scss +5 -0
  331. package/styles/qppds/base/_typography.scss +77 -43
  332. package/styles/qppds/base/index.scss +3 -6
  333. package/styles/qppds/components/_alert.scss +101 -0
  334. package/styles/qppds/components/_breadcrumbs.scss +42 -10
  335. package/styles/qppds/components/_button.scss +38 -12
  336. package/styles/qppds/components/_card.scss +175 -0
  337. package/styles/qppds/components/_checkbox.scss +199 -0
  338. package/styles/qppds/components/_circular-loader.scss +47 -0
  339. package/styles/qppds/components/_details.scss +90 -0
  340. package/styles/qppds/components/_dropdown-menu.scss +125 -0
  341. package/styles/qppds/components/_dropdown.scss +5 -0
  342. package/styles/qppds/components/_footer.scss +606 -0
  343. package/styles/qppds/components/_gov-banner.scss +344 -0
  344. package/styles/{components → qppds/components}/_header.scss +460 -24
  345. package/styles/qppds/components/_link.scss +32 -9
  346. package/styles/qppds/components/_modal.scss +61 -21
  347. package/styles/qppds/components/_page-header.scss +65 -2
  348. package/styles/qppds/components/_pagination.scss +227 -0
  349. package/styles/qppds/components/_process-list.scss +104 -0
  350. package/styles/qppds/components/_radio-button.scss +184 -0
  351. package/styles/qppds/components/_search.scss +118 -0
  352. package/styles/{components → qppds/components}/_sidebar.scss +2 -0
  353. package/styles/qppds/components/_step-indicator.scss +190 -0
  354. package/styles/qppds/components/_table.scss +157 -0
  355. package/styles/qppds/components/_tabs.scss +197 -0
  356. package/styles/qppds/components/_text-input.scss +60 -0
  357. package/styles/qppds/components/index.scss +18 -0
  358. package/styles/{components → qppds/components}/sidebar/_links.scss +48 -1
  359. package/styles/qppds/components/sidebar/_select-role-dropdown.scss +21 -0
  360. package/styles/{components → qppds/components}/sidebar/_sidebar-animation.scss +4 -0
  361. package/styles/qppds/components/sidebar/_sidebar.scss +146 -0
  362. package/styles/qppds/settings/_functions.scss +3 -1
  363. package/styles/qppds/settings/mixins/_borders.scss +6 -0
  364. package/styles/qppds/settings/mixins/_focus.scss +7 -1
  365. package/styles/qppds/settings/mixins/_icons.scss +39 -4
  366. package/styles/qppds/settings/mixins/_index.scss +3 -0
  367. package/styles/qppds/settings/mixins/_layout.scss +46 -7
  368. package/styles/qppds/settings/mixins/_table.scss +91 -0
  369. package/styles/qppds/settings/mixins/_type.scss +89 -0
  370. package/styles/qppds/settings/variables/_color.scss +47 -1
  371. package/styles/qppds/settings/variables/_index.scss +2 -1
  372. package/styles/qppds/settings/variables/_layout.scss +34 -9
  373. package/styles/qppds/settings/variables/_type.scss +41 -0
  374. package/styles/qppds/settings/variables/_z-index.scss +8 -0
  375. package/styles/qppds/utilities/_background-color.scss +4 -0
  376. package/styles/qppds/utilities/_color.scss +24 -0
  377. package/styles/qppds/utilities/{_display-visability.scss → _display-visibility.scss} +8 -0
  378. package/styles/qppds/utilities/_flexbox.scss +113 -0
  379. package/styles/qppds/utilities/_font-family.scss +4 -0
  380. package/styles/qppds/utilities/_gap.scss +38 -0
  381. package/styles/qppds/utilities/_height.scss +79 -0
  382. package/styles/qppds/utilities/_list-style.scss +18 -0
  383. package/styles/qppds/utilities/_position.scss +24 -0
  384. package/styles/qppds/utilities/_text-align.scss +40 -0
  385. package/styles/qppds/utilities/_text-transform.scss +7 -0
  386. package/styles/qppds/utilities/_truncate.scss +5 -5
  387. package/styles/qppds/utilities/_vertical-align.scss +72 -0
  388. package/styles/qppds/utilities/_width.scss +38 -1
  389. package/styles/qppds/utilities/index.scss +8 -2
  390. package/svgo.config.js +14 -0
  391. package/test/components/Accordion.test.js +4 -13
  392. package/test/components/ErrorUI.test.js +10 -46
  393. package/test/components/FooterUI.test.js +0 -30
  394. package/test/components/HeaderUI.test.js +32 -40
  395. package/test/components/Infotip.test.js +18 -12
  396. package/test/components/SessionDialogUI.test.js +55 -70
  397. package/test-setup.js +0 -8
  398. package/webpack.config.js +29 -39
  399. package/webpack.config.react.js +7 -18
  400. package/.storybook/.babelrc +0 -4
  401. package/.storybook/main.js +0 -88
  402. package/.storybook/preview-head.html +0 -9
  403. package/.storybook/preview.js +0 -5
  404. package/Session.vim +0 -83
  405. package/components/Accordion/Accordion.stories.js +0 -20
  406. package/components/Breadcrumb/Breadcrumb.stories.js +0 -58
  407. package/components/Button/Button.stories.js +0 -125
  408. package/components/Footer/Footer.stories.js +0 -20
  409. package/components/Footer/LegacyFooterUI.jsx +0 -194
  410. package/components/Header/Header.stories.js +0 -32
  411. package/components/InfoModal/InfoModal.stories.js +0 -98
  412. package/components/InfoModal/index.jsx +0 -104
  413. package/components/Infotip/Infotip.stories.js +0 -50
  414. package/components/Modal/Modal.stories.js +0 -159
  415. package/components/NotificationBanner/NotificationBanner.stories.js +0 -22
  416. package/components/NotificationBanner/NotificationBannerUI.jsx +0 -282
  417. package/components/SideNav/SideNav.stories.js +0 -397
  418. package/components/Spinner/index.js +0 -9
  419. package/components/Tabs/TabsUI.jsx +0 -118
  420. package/components/Tabs/tabs.js +0 -36
  421. package/components/Tooltip/Tooltip.jsx +0 -88
  422. package/components/Tooltip/Tooltip.stories.js +0 -80
  423. package/components/Tooltip/index.js +0 -3
  424. package/components/Tooltip/position.js +0 -68
  425. package/components/UnwrappedSpinner/index.js +0 -8
  426. package/components/UnwrappedTabs/TabPanelUI.jsx +0 -16
  427. package/components/UnwrappedTabs/TabsUI.jsx +0 -82
  428. package/coverage/lcov-report/Accordion/index.html +0 -111
  429. package/coverage/lcov-report/Error/index.html +0 -126
  430. package/coverage/lcov-report/ScoreChart.jsx.html +0 -1025
  431. package/coverage/lcov-report/SideNav/Chart/ScoreChart.jsx.html +0 -1025
  432. package/coverage/lcov-report/components/Footer/LegacyFooterUI.jsx.html +0 -668
  433. package/coverage/lcov-report/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -1010
  434. package/coverage/lcov-report/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -131
  435. package/coverage/lcov-report/components/SideNav/Chart/index.js.html +0 -89
  436. package/coverage/lcov-report/components/SideNav/Content/LevelOneContent.jsx.html +0 -1007
  437. package/coverage/lcov-report/components/SideNav/Content/index.html +0 -141
  438. package/coverage/lcov-report/components/SideNav/Content/index.js.html +0 -92
  439. package/coverage/lcov-report/components/SideNav/Details/index.js.html +0 -92
  440. package/coverage/lcov-report/components/SideNav/Links/index.html +0 -201
  441. package/coverage/lcov-report/components/SideNav/UI/SideNavUI.jsx.html +0 -1298
  442. package/coverage/lcov-report/components/SideNav/UI/index.html +0 -126
  443. package/coverage/lcov-report/components/SideNav/UI/index.js.html +0 -89
  444. package/coverage/lcov-report/lib/svg-definitions.svg.html +0 -1319
  445. package/coverage/lcov-report/react/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -926
  446. package/styles/components/_footer.scss +0 -593
  447. package/styles/components/_header_backup.scss +0 -574
  448. package/styles/components/sidebar/_sidebar.scss +0 -141
  449. package/test/components/Tooltip.test.js +0 -147
  450. package/test/components/__snapshots__/Accordion.test.js.snap +0 -11439
  451. package/test/components/__snapshots__/HeaderUI.test.js.snap +0 -3
  452. /package/styles/{components → qppds/components}/sidebar/_animations.scss +0 -0
  453. /package/styles/{components → qppds/components}/sidebar/_cms.scss +0 -0
  454. /package/styles/{components → qppds/components}/sidebar/_details.scss +0 -0
  455. /package/styles/{components → qppds/components}/sidebar/_sidebar-tooltip.scss +0 -0
  456. /package/styles/{components → qppds/components}/sidebar/project-specific/_wi.scss +0 -0
@@ -3,15 +3,15 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for components/SideNav/Links/NavLinkDrawer.jsx</title>
6
+ <title>Code coverage report for components/Header/HeaderMenuItem.jsx</title>
7
7
  <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../../prettify.css" />
9
- <link rel="stylesheet" href="../../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
11
  <meta name="viewport" content="width=device-width, initial-scale=1" />
12
12
  <style type='text/css'>
13
13
  .coverage-summary .sorter {
14
- background-image: url(../../../sort-arrow-sprite.png);
14
+ background-image: url(../../sort-arrow-sprite.png);
15
15
  }
16
16
  </style>
17
17
  </head>
@@ -19,34 +19,34 @@
19
19
  <body>
20
20
  <div class='wrapper'>
21
21
  <div class='pad1'>
22
- <h1><a href="../../../index.html">All files</a> / <a href="index.html">components/SideNav/Links</a> NavLinkDrawer.jsx</h1>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">components/Header</a> HeaderMenuItem.jsx</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">2.33% </span>
26
+ <span class="strong">57.77% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>1/43</span>
28
+ <span class='fraction'>26/45</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
33
+ <span class="strong">27.77% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/69</span>
35
+ <span class='fraction'>10/36</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
40
+ <span class="strong">38.46% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/14</span>
42
+ <span class='fraction'>5/13</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">2.56% </span>
47
+ <span class="strong">56.81% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>1/39</span>
49
+ <span class='fraction'>25/44</span>
50
50
  </div>
51
51
 
52
52
 
@@ -54,8 +54,14 @@
54
54
  <p class="quiet">
55
55
  Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
- <div class='status-line low'></div>
64
+ <div class='status-line medium'></div>
59
65
  <pre><table class="coverage">
60
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
61
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -290,33 +296,30 @@
290
296
  <a name='L231'></a><a href='#L231'>231</a>
291
297
  <a name='L232'></a><a href='#L232'>232</a>
292
298
  <a name='L233'></a><a href='#L233'>233</a>
293
- <a name='L234'></a><a href='#L234'>234</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
294
306
  <span class="cline-any cline-neutral">&nbsp;</span>
295
307
  <span class="cline-any cline-neutral">&nbsp;</span>
296
308
  <span class="cline-any cline-neutral">&nbsp;</span>
297
309
  <span class="cline-any cline-neutral">&nbsp;</span>
298
310
  <span class="cline-any cline-neutral">&nbsp;</span>
299
311
  <span class="cline-any cline-neutral">&nbsp;</span>
300
- <span class="cline-any cline-no">&nbsp;</span>
301
- <span class="cline-any cline-no">&nbsp;</span>
302
- <span class="cline-any cline-no">&nbsp;</span>
303
- <span class="cline-any cline-no">&nbsp;</span>
304
- <span class="cline-any cline-no">&nbsp;</span>
305
312
  <span class="cline-any cline-neutral">&nbsp;</span>
306
313
  <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-no">&nbsp;</span>
308
314
  <span class="cline-any cline-neutral">&nbsp;</span>
315
+ <span class="cline-any cline-yes">1x</span>
309
316
  <span class="cline-any cline-neutral">&nbsp;</span>
310
317
  <span class="cline-any cline-neutral">&nbsp;</span>
311
318
  <span class="cline-any cline-neutral">&nbsp;</span>
312
319
  <span class="cline-any cline-neutral">&nbsp;</span>
313
- <span class="cline-any cline-no">&nbsp;</span>
314
- <span class="cline-any cline-no">&nbsp;</span>
315
- <span class="cline-any cline-no">&nbsp;</span>
316
320
  <span class="cline-any cline-neutral">&nbsp;</span>
317
321
  <span class="cline-any cline-neutral">&nbsp;</span>
318
- <span class="cline-any cline-no">&nbsp;</span>
319
- <span class="cline-any cline-no">&nbsp;</span>
322
+ <span class="cline-any cline-yes">1x</span>
320
323
  <span class="cline-any cline-neutral">&nbsp;</span>
321
324
  <span class="cline-any cline-neutral">&nbsp;</span>
322
325
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -326,71 +329,77 @@
326
329
  <span class="cline-any cline-neutral">&nbsp;</span>
327
330
  <span class="cline-any cline-neutral">&nbsp;</span>
328
331
  <span class="cline-any cline-neutral">&nbsp;</span>
329
- <span class="cline-any cline-no">&nbsp;</span>
330
332
  <span class="cline-any cline-neutral">&nbsp;</span>
331
- <span class="cline-any cline-no">&nbsp;</span>
332
- <span class="cline-any cline-no">&nbsp;</span>
333
- <span class="cline-any cline-no">&nbsp;</span>
334
- <span class="cline-any cline-no">&nbsp;</span>
335
333
  <span class="cline-any cline-neutral">&nbsp;</span>
336
334
  <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-no">&nbsp;</span>
338
- <span class="cline-any cline-no">&nbsp;</span>
339
335
  <span class="cline-any cline-neutral">&nbsp;</span>
340
336
  <span class="cline-any cline-neutral">&nbsp;</span>
341
337
  <span class="cline-any cline-neutral">&nbsp;</span>
338
+ <span class="cline-any cline-yes">1x</span>
342
339
  <span class="cline-any cline-neutral">&nbsp;</span>
343
- <span class="cline-any cline-no">&nbsp;</span>
344
- <span class="cline-any cline-no">&nbsp;</span>
345
340
  <span class="cline-any cline-neutral">&nbsp;</span>
346
341
  <span class="cline-any cline-neutral">&nbsp;</span>
347
- <span class="cline-any cline-no">&nbsp;</span>
348
342
  <span class="cline-any cline-neutral">&nbsp;</span>
349
343
  <span class="cline-any cline-neutral">&nbsp;</span>
350
344
  <span class="cline-any cline-neutral">&nbsp;</span>
351
- <span class="cline-any cline-no">&nbsp;</span>
352
345
  <span class="cline-any cline-neutral">&nbsp;</span>
353
- <span class="cline-any cline-no">&nbsp;</span>
354
- <span class="cline-any cline-no">&nbsp;</span>
355
346
  <span class="cline-any cline-neutral">&nbsp;</span>
356
347
  <span class="cline-any cline-neutral">&nbsp;</span>
357
- <span class="cline-any cline-no">&nbsp;</span>
348
+ <span class="cline-any cline-yes">2x</span>
349
+ <span class="cline-any cline-yes">2x</span>
358
350
  <span class="cline-any cline-neutral">&nbsp;</span>
359
- <span class="cline-any cline-no">&nbsp;</span>
351
+ <span class="cline-any cline-yes">2x</span>
352
+ <span class="cline-any cline-yes">2x</span>
353
+ <span class="cline-any cline-yes">2x</span>
360
354
  <span class="cline-any cline-neutral">&nbsp;</span>
355
+ <span class="cline-any cline-yes">2x</span>
356
+ <span class="cline-any cline-yes">2x</span>
361
357
  <span class="cline-any cline-neutral">&nbsp;</span>
358
+ <span class="cline-any cline-yes">2x</span>
359
+ <span class="cline-any cline-yes">2x</span>
362
360
  <span class="cline-any cline-neutral">&nbsp;</span>
361
+ <span class="cline-any cline-yes">2x</span>
362
+ <span class="cline-any cline-yes">2x</span>
363
+ <span class="cline-any cline-yes">2x</span>
363
364
  <span class="cline-any cline-neutral">&nbsp;</span>
365
+ <span class="cline-any cline-no">&nbsp;</span>
364
366
  <span class="cline-any cline-neutral">&nbsp;</span>
365
367
  <span class="cline-any cline-neutral">&nbsp;</span>
366
368
  <span class="cline-any cline-no">&nbsp;</span>
367
- <span class="cline-any cline-no">&nbsp;</span>
368
369
  <span class="cline-any cline-neutral">&nbsp;</span>
369
- <span class="cline-any cline-no">&nbsp;</span>
370
370
  <span class="cline-any cline-neutral">&nbsp;</span>
371
371
  <span class="cline-any cline-neutral">&nbsp;</span>
372
- <span class="cline-any cline-no">&nbsp;</span>
372
+ <span class="cline-any cline-yes">2x</span>
373
+ <span class="cline-any cline-yes">1x</span>
373
374
  <span class="cline-any cline-no">&nbsp;</span>
374
375
  <span class="cline-any cline-neutral">&nbsp;</span>
375
376
  <span class="cline-any cline-neutral">&nbsp;</span>
376
377
  <span class="cline-any cline-neutral">&nbsp;</span>
377
378
  <span class="cline-any cline-neutral">&nbsp;</span>
379
+ <span class="cline-any cline-no">&nbsp;</span>
378
380
  <span class="cline-any cline-neutral">&nbsp;</span>
379
381
  <span class="cline-any cline-neutral">&nbsp;</span>
380
382
  <span class="cline-any cline-no">&nbsp;</span>
381
383
  <span class="cline-any cline-neutral">&nbsp;</span>
384
+ <span class="cline-any cline-no">&nbsp;</span>
385
+ <span class="cline-any cline-no">&nbsp;</span>
382
386
  <span class="cline-any cline-neutral">&nbsp;</span>
387
+ <span class="cline-any cline-yes">1x</span>
388
+ <span class="cline-any cline-yes">1x</span>
383
389
  <span class="cline-any cline-neutral">&nbsp;</span>
384
390
  <span class="cline-any cline-neutral">&nbsp;</span>
391
+ <span class="cline-any cline-yes">2x</span>
392
+ <span class="cline-any cline-yes">1x</span>
393
+ <span class="cline-any cline-yes">1x</span>
385
394
  <span class="cline-any cline-neutral">&nbsp;</span>
386
395
  <span class="cline-any cline-neutral">&nbsp;</span>
387
396
  <span class="cline-any cline-neutral">&nbsp;</span>
397
+ <span class="cline-any cline-yes">2x</span>
388
398
  <span class="cline-any cline-neutral">&nbsp;</span>
389
399
  <span class="cline-any cline-neutral">&nbsp;</span>
390
400
  <span class="cline-any cline-neutral">&nbsp;</span>
391
401
  <span class="cline-any cline-neutral">&nbsp;</span>
392
402
  <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-no">&nbsp;</span>
394
403
  <span class="cline-any cline-neutral">&nbsp;</span>
395
404
  <span class="cline-any cline-neutral">&nbsp;</span>
396
405
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -400,6 +409,7 @@
400
409
  <span class="cline-any cline-neutral">&nbsp;</span>
401
410
  <span class="cline-any cline-neutral">&nbsp;</span>
402
411
  <span class="cline-any cline-neutral">&nbsp;</span>
412
+ <span class="cline-any cline-no">&nbsp;</span>
403
413
  <span class="cline-any cline-neutral">&nbsp;</span>
404
414
  <span class="cline-any cline-neutral">&nbsp;</span>
405
415
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -419,8 +429,10 @@
419
429
  <span class="cline-any cline-neutral">&nbsp;</span>
420
430
  <span class="cline-any cline-neutral">&nbsp;</span>
421
431
  <span class="cline-any cline-neutral">&nbsp;</span>
432
+ <span class="cline-any cline-no">&nbsp;</span>
422
433
  <span class="cline-any cline-neutral">&nbsp;</span>
423
434
  <span class="cline-any cline-neutral">&nbsp;</span>
435
+ <span class="cline-any cline-no">&nbsp;</span>
424
436
  <span class="cline-any cline-neutral">&nbsp;</span>
425
437
  <span class="cline-any cline-neutral">&nbsp;</span>
426
438
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -428,18 +440,16 @@
428
440
  <span class="cline-any cline-neutral">&nbsp;</span>
429
441
  <span class="cline-any cline-neutral">&nbsp;</span>
430
442
  <span class="cline-any cline-neutral">&nbsp;</span>
443
+ <span class="cline-any cline-no">&nbsp;</span>
444
+ <span class="cline-any cline-no">&nbsp;</span>
431
445
  <span class="cline-any cline-neutral">&nbsp;</span>
432
446
  <span class="cline-any cline-neutral">&nbsp;</span>
433
447
  <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-no">&nbsp;</span>
435
- <span class="cline-any cline-no">&nbsp;</span>
436
448
  <span class="cline-any cline-neutral">&nbsp;</span>
437
449
  <span class="cline-any cline-neutral">&nbsp;</span>
438
450
  <span class="cline-any cline-no">&nbsp;</span>
439
451
  <span class="cline-any cline-no">&nbsp;</span>
440
452
  <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-no">&nbsp;</span>
442
- <span class="cline-any cline-neutral">&nbsp;</span>
443
453
  <span class="cline-any cline-neutral">&nbsp;</span>
444
454
  <span class="cline-any cline-neutral">&nbsp;</span>
445
455
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -463,6 +473,7 @@
463
473
  <span class="cline-any cline-neutral">&nbsp;</span>
464
474
  <span class="cline-any cline-neutral">&nbsp;</span>
465
475
  <span class="cline-any cline-neutral">&nbsp;</span>
476
+ <span class="cline-any cline-no">&nbsp;</span>
466
477
  <span class="cline-any cline-neutral">&nbsp;</span>
467
478
  <span class="cline-any cline-neutral">&nbsp;</span>
468
479
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -474,12 +485,16 @@
474
485
  <span class="cline-any cline-neutral">&nbsp;</span>
475
486
  <span class="cline-any cline-neutral">&nbsp;</span>
476
487
  <span class="cline-any cline-neutral">&nbsp;</span>
488
+ <span class="cline-any cline-no">&nbsp;</span>
489
+ <span class="cline-any cline-no">&nbsp;</span>
477
490
  <span class="cline-any cline-neutral">&nbsp;</span>
478
491
  <span class="cline-any cline-neutral">&nbsp;</span>
479
492
  <span class="cline-any cline-neutral">&nbsp;</span>
480
493
  <span class="cline-any cline-neutral">&nbsp;</span>
481
494
  <span class="cline-any cline-neutral">&nbsp;</span>
482
495
  <span class="cline-any cline-neutral">&nbsp;</span>
496
+ <span class="cline-any cline-no">&nbsp;</span>
497
+ <span class="cline-any cline-no">&nbsp;</span>
483
498
  <span class="cline-any cline-neutral">&nbsp;</span>
484
499
  <span class="cline-any cline-neutral">&nbsp;</span>
485
500
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -518,262 +533,270 @@
518
533
  <span class="cline-any cline-neutral">&nbsp;</span>
519
534
  <span class="cline-any cline-neutral">&nbsp;</span>
520
535
  <span class="cline-any cline-neutral">&nbsp;</span>
536
+ <span class="cline-any cline-yes">1x</span>
537
+ <span class="cline-any cline-neutral">&nbsp;</span>
538
+ <span class="cline-any cline-neutral">&nbsp;</span>
521
539
  <span class="cline-any cline-neutral">&nbsp;</span>
522
540
  <span class="cline-any cline-neutral">&nbsp;</span>
523
541
  <span class="cline-any cline-neutral">&nbsp;</span>
524
542
  <span class="cline-any cline-neutral">&nbsp;</span>
525
543
  <span class="cline-any cline-neutral">&nbsp;</span>
526
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { Component } from 'react';
527
- import { handleNavigation } from '../helpers';
528
- import AnimationGroup from '../AnimationGroup/AnimationGroup';
544
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { Fragment, useRef, useEffect, useState } from 'react';
529
545
  import PropTypes from 'prop-types';
530
546
  &nbsp;
531
- export default class NavLinkDrawer extends Component {
532
- <span class="fstat-no" title="function not covered" > co</span>nstructor(props) {
533
- <span class="cstat-no" title="statement not covered" > super(props);</span>
534
- <span class="cstat-no" title="statement not covered" > this._toggleDrawer = this.toggleDrawer.bind(this);</span>
535
- <span class="cstat-no" title="statement not covered" > this._isLinkActive = this.isLinkActive.bind(this);</span>
536
- <span class="cstat-no" title="statement not covered" > this._isCurrentPage = this.isCurrentPage.bind(this);</span>
537
- <span class="cstat-no" title="statement not covered" > this._renderDrawerLinksRecursively = this.renderDrawerLinksRecursively.bind(</span>
538
- this
539
- );
540
- <span class="cstat-no" title="statement not covered" > this.state = {</span>
541
- isOpen: !!props.openByDefault
542
- };
543
- }
547
+ import { useWindowWidth, useHeaderState } from './hooks';
548
+ import HeaderMenuLink from './HeaderMenuLink';
549
+ import HeaderMenuButton from './HeaderMenuButton';
550
+ import HeaderMenuSignOutButton from './HeaderMenuSignOutButton';
551
+ import Accordion from '../Accordion';
552
+ import { Chevron } from '../../lib/Chevron.jsx';
544
553
  &nbsp;
545
- <span class="fstat-no" title="function not covered" > UN</span>SAFE_componentWillMount() {
546
- const { isAlwaysOpen, disabled } = <span class="cstat-no" title="statement not covered" >this.props;</span>
547
- <span class="cstat-no" title="statement not covered" > if (disabled) {</span>
548
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >st</span>ate =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: false })</span>);</span>
549
- }
550
- &nbsp;
551
- <span class="cstat-no" title="statement not covered" > if (isAlwaysOpen) {</span>
552
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >st</span>ate =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: isAlwaysOpen })</span>);</span>
553
- }
554
- }
554
+ const menuSizes = {
555
+ 1: 315,
556
+ 2: 650,
557
+ 3: 890,
558
+ 4: 1200,
559
+ };
555
560
  &nbsp;
556
- <span class="fstat-no" title="function not covered" > to</span>ggleDrawer() {
557
- const {
558
- isAlwaysOpen,
559
- disabled,
560
- isExpanded,
561
- sidebarExpand
562
- } = <span class="cstat-no" title="statement not covered" >this.props;</span>
561
+ const excludedClickOutClasses = [
562
+ 'menu-dropdown-toggle',
563
+ 'nav-link',
564
+ 'nav-link-li',
565
+ 'dropdown-description',
566
+ 'dropdown-title',
567
+ 'dropdown-title-chevron-container',
568
+ 'signout-button',
569
+ 'submenu-section',
570
+ 'accordion',
571
+ 'accordion-title',
572
+ 'accordion-left-title',
573
+ 'header-menu-btn',
574
+ 'btn-navigation-icon',
575
+ ];
563
576
  &nbsp;
564
- <span class="cstat-no" title="statement not covered" > if (!isExpanded &amp;&amp; typeof sidebarExpand === 'function') {</span>
565
- <span class="cstat-no" title="statement not covered" > sidebarExpand();</span>
566
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >st</span>ate =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: true })</span>);</span>
567
- <span class="cstat-no" title="statement not covered" > return;</span>
568
- }
577
+ const HeaderMenuItem = ({
578
+ handleClick,
579
+ isMobileMenuExpanded,
580
+ columns,
581
+ menuName,
582
+ rows,
583
+ name,
584
+ subtitle,
585
+ className,
586
+ }) =&gt; {
587
+ const [isSubMenuFullWidth, setSubMenuFullWidth] = useState(false);
588
+ const [openMobileSubMenu, setOpenMobileSubMenu] = useState('');
569
589
  &nbsp;
570
- <span class="cstat-no" title="statement not covered" > if (!isAlwaysOpen &amp;&amp; !disabled) {</span>
571
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >st</span>ate =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: !state.isOpen })</span>);</span>
572
- }
573
- }
590
+ const windowWidth = useWindowWidth();
591
+ const menuButtonRef = useRef(null);
592
+ const menuRef = useRef(null);
593
+ const { RouterLink, handleToggleMenu, currentOpenMenu, closeMenus } =
594
+ useHeaderState();
595
+ const numColumns = (columns || <span class="branch-1 cbranch-no" title="branch not covered" >[])</span>.length;
574
596
  &nbsp;
575
- <span class="fstat-no" title="function not covered" > is</span>LinkActive(link, func) {
576
- <span class="cstat-no" title="statement not covered" > if (typeof func === 'function') {</span>
577
- <span class="cstat-no" title="statement not covered" > return func(link);</span>
578
- }
597
+ const menuIdentifier = menuName || name;
598
+ const isOpen = menuIdentifier === currentOpenMenu;
579
599
  &nbsp;
580
- <span class="cstat-no" title="statement not covered" > return window.location.href.indexOf(link.url) &gt; 0;</span>
600
+ useEffect(() =&gt; {
601
+ const isMobile = windowWidth &lt; 768;
602
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (isOpen) {
603
+ const shouldSetFullWidth =
604
+ <span class="cstat-no" title="statement not covered" > isMobile ||</span>
605
+ menuSizes[numColumns] &gt;
606
+ menuButtonRef.current.getBoundingClientRect().right;
607
+ <span class="cstat-no" title="statement not covered" > setSubMenuFullWidth(shouldSetFullWidth);</span>
581
608
  }
609
+ }, [windowWidth, isOpen]);
582
610
  &nbsp;
583
- <span class="fstat-no" title="function not covered" > is</span>CurrentPage(link, linkActiveFunc) {
584
- const items = <span class="cstat-no" title="statement not covered" >link.items || link.listOfLinks;</span>
611
+ useEffect(() =&gt; {
612
+ const listener = <span class="fstat-no" title="function not covered" >(e</span>vent) =&gt; {
613
+ <span class="cstat-no" title="statement not covered" > if (</span>
614
+ !menuRef ||
615
+ !menuRef.current ||
616
+ menuRef.current.contains(event.target) ||
617
+ excludedClickOutClasses.some(<span class="fstat-no" title="function not covered" >(c</span>lassName) =&gt;
618
+ <span class="cstat-no" title="statement not covered" > event?.target?.classList.contains(className)</span>
619
+ )
620
+ ) {
621
+ <span class="cstat-no" title="statement not covered" > return;</span>
622
+ }
623
+ <span class="cstat-no" title="statement not covered" > setOpenMobileSubMenu('');</span>
624
+ <span class="cstat-no" title="statement not covered" > closeMenus();</span>
625
+ };
626
+ document.addEventListener('mousedown', listener);
627
+ return () =&gt; document.removeEventListener('mousedown', listener);
628
+ }, [menuRef]);
585
629
  &nbsp;
586
- <span class="cstat-no" title="statement not covered" > if (link.url &amp;&amp; this._isLinkActive(link, linkActiveFunc)) {</span>
587
- <span class="cstat-no" title="statement not covered" > return true;</span>
588
- }
589
- &nbsp;
590
- <span class="cstat-no" title="statement not covered" > return (</span>
591
- items &amp;&amp;
592
- items.some(<span class="fstat-no" title="function not covered" >it</span>em =&gt; <span class="cstat-no" title="statement not covered" >this._isCurrentPage(item, linkActiveFunc))</span>
593
- );
630
+ useEffect(() =&gt; {
631
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (!isMobileMenuExpanded || <span class="branch-1 cbranch-no" title="branch not covered" >!isOpen)</span> {
632
+ setOpenMobileSubMenu('');
594
633
  }
634
+ }, [isMobileMenuExpanded, isOpen]);
595
635
  &nbsp;
596
- // Render the links recursively. This will theoretically allow for an infinite number of nested link items.
597
- // className will either be empty, parent-link - top most node, or child-link.
598
- <span class="fstat-no" title="function not covered" > re</span>nderDrawerLinksRecursively(navLinks, className = <span class="branch-0 cbranch-no" title="branch not covered" >'')</span> {
599
- const { linkActiveFunc, linkCallback } = <span class="cstat-no" title="statement not covered" >this.props;</span>
600
- const { isOpen } = <span class="cstat-no" title="statement not covered" >this.state;</span>
601
- &nbsp;
602
- <span class="cstat-no" title="statement not covered" > return (</span>
603
- navLinks &amp;&amp;
604
- navLinks.map(<span class="fstat-no" title="function not covered" >li</span>nk =&gt; {
605
- <span class="cstat-no" title="statement not covered" > if (link.type === 'divider') {</span>
606
- <span class="cstat-no" title="statement not covered" > return (</span>
607
- &lt;AnimationGroup display={true}&gt;
608
- &lt;hr /&gt;
609
- &lt;/AnimationGroup&gt;
610
- );
611
- }
636
+ return (
637
+ &lt;li
638
+ key={`header-item-${menuIdentifier}`}
639
+ className={`header-item-${menuIdentifier}${
640
+ isSubMenuFullWidth ? <span class="branch-0 cbranch-no" title="branch not covered" >' full-width-menu' </span>: ''
641
+ }${className ? <span class="branch-0 cbranch-no" title="branch not covered" >` ${className}` </span>: ''}`}
642
+ ref={menuRef}
643
+ &gt;
644
+ &lt;button
645
+ ref={menuButtonRef}
646
+ className="menu-dropdown-toggle"
647
+ aria-label={`${name} navigation dropdown`}
648
+ aria-expanded={isOpen}
649
+ aria-controls={`nav-section-${menuIdentifier}`}
650
+ data-toggle="dropdown"
651
+ onClick={<span class="fstat-no" title="function not covered" >()</span> =&gt; <span class="cstat-no" title="statement not covered" >handleToggleMenu(menuIdentifier)}</span>
652
+ &gt;
653
+ &lt;div className="dropdown-title-chevron-container"&gt;
654
+ &lt;span className="dropdown-title"&gt;{name}&lt;/span&gt;
655
+ &lt;div className="chevron-container"&gt;
656
+ &lt;Chevron focusable="false" /&gt;
657
+ &lt;/div&gt;
658
+ &lt;/div&gt;
612
659
  &nbsp;
660
+ &lt;span className={`dropdown-description ${isOpen ? <span class="branch-0 cbranch-no" title="branch not covered" >'active' </span>: ''}`}&gt;
661
+ {subtitle}
662
+ &lt;/span&gt;
663
+ &lt;/button&gt;
664
+ &lt;div
665
+ className={`nav-section${isOpen ? <span class="branch-0 cbranch-no" title="branch not covered" >' open' </span>: ''}`}
666
+ id={`nav-section-${menuIdentifier}`}
667
+ hidden={!isOpen}
668
+ data-columns={numColumns}
669
+ &gt;
670
+ {rows.map(<span class="fstat-no" title="function not covered" >(c</span>olumnContent, index) =&gt; {
671
+ <span class="cstat-no" title="statement not covered" > return (</span>
672
+ &lt;ul key={`${menuIdentifier}-${index}`} className="nav-column"&gt;
673
+ {columnContent.map(<span class="fstat-no" title="function not covered" >(c</span>, cIndex) =&gt; {
613
674
  <span class="cstat-no" title="statement not covered" > return (</span>
614
- &lt;li
615
- key={link.label}
616
- className={
617
- this._isLinkActive(link, linkActiveFunc)
618
- ? `active-link ${className}`
619
- : className
620
- }
621
- role="none"
622
- &gt;
623
- {link.url ? (
624
- &lt;a
625
- href={link.url}
626
- onClick={<span class="fstat-no" title="function not covered" >e </span>=&gt; <span class="cstat-no" title="statement not covered" >handleNavigation(e, linkCallback)}</span>
627
- tabIndex={isOpen ? '0' : '-1'}
628
- data-track-category="SidebarNav"
629
- data-track-action={`GoTo${
630
- link.label
631
- ? link.label.split(' ').join('')
632
- : ''
633
- }`}
634
- data-track-label={link.label}
635
- target="_self"
675
+ &lt;Fragment key={`${menuIdentifier}-${index}-${cIndex}`}&gt;
676
+ &lt;li className="submenu-section"&gt;
677
+ {c.heading &amp;&amp; (
678
+ &lt;h3 className="submenu-heading"&gt;{c.heading}&lt;/h3&gt;
679
+ )}
680
+ &lt;ul&gt;
681
+ {c.items.map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; {
682
+ const isSubLink = <span class="cstat-no" title="statement not covered" >item.type === 'sublink';</span>
683
+ const componentsByType = <span class="cstat-no" title="statement not covered" >{</span>
684
+ button: HeaderMenuButton,
685
+ signout: HeaderMenuSignOutButton,
686
+ link: HeaderMenuLink,
687
+ sublink: HeaderMenuLink,
688
+ };
689
+ const SubMenuComponent = <span class="cstat-no" title="statement not covered" >componentsByType[item.type];</span>
690
+ <span class="cstat-no" title="statement not covered" > return (</span>
691
+ &lt;li
692
+ onClick={handleClick}
693
+ key={`item-link-${item.name}`}
694
+ className={
695
+ isSubLink
696
+ ? 'nav-link-li sublink'
697
+ : 'nav-link-li'
698
+ }
636
699
  &gt;
637
- {link.label}
638
- &lt;/a&gt;
639
- ) : (
640
- &lt;div&gt;{link.label}&lt;/div&gt;
641
- )}
642
- {link.items &amp;&amp; link.items.length &gt; 0 &amp;&amp; (
643
- &lt;ul aria-hidden={!isOpen} role="none"&gt;
644
- {this._renderDrawerLinksRecursively(
645
- link.items,
646
- 'child-link'
647
- )}
648
- &lt;/ul&gt;
649
- )}
700
+ &lt;SubMenuComponent
701
+ href={item.href}
702
+ name={item.name}
703
+ RouterLink={RouterLink}
704
+ /&gt;
705
+ &lt;/li&gt;
706
+ );
707
+ })}
708
+ &lt;/ul&gt;
650
709
  &lt;/li&gt;
651
- );
652
- })
653
- );
654
- }
655
- &nbsp;
656
- <span class="fstat-no" title="function not covered" > re</span>nder() {
657
- const {
658
- isExpanded,
659
- disabled,
660
- isAlwaysOpen,
661
- className,
662
- rightIcon,
663
- leftIcon,
664
- label,
665
- linkActiveFunc,
666
- listOfLinks
667
- } = <span class="cstat-no" title="statement not covered" >this.props;</span>
668
- const { isOpen } = <span class="cstat-no" title="statement not covered" >this.state;</span>
669
- &nbsp;
670
- // Classes for the link drawer button
671
- const currentPage = <span class="cstat-no" title="statement not covered" >this._isCurrentPage(this.props, linkActiveFunc);</span>
672
- const expandedClass = <span class="cstat-no" title="statement not covered" >currentPage ? 'expanded' : '';</span>
673
- &nbsp;
674
- <span class="cstat-no" title="statement not covered" > return (</span>
675
- &lt;div
676
- className={
677
- this.props.staticDrawer
678
- ? 'static-drawer link-drawer'
679
- : 'link-drawer'
680
- }
681
- &gt;
682
- &lt;button
683
- onClick={this._toggleDrawer}
684
- {...(!isAlwaysOpen ? { 'aria-pressed': isOpen } : {})}
685
- tabIndex="0"
686
- aria-label={label}
687
- {...(isAlwaysOpen || disabled
688
- ? { disabled: isAlwaysOpen || disabled }
689
- : {})}
690
- className={`${className} ${expandedClass} ${
691
- currentPage ? 'currentPage' : ''
692
- }`}
693
- &gt;
694
- &lt;div
695
- className={
696
- isExpanded ? 'link-body' : 'link-body collapsed'
697
- }
698
- &gt;
699
- &lt;svg
700
- className={`left-icon${
701
- isAlwaysOpen ? ' always-open' : ''
702
- }`}
703
- aria-hidden="true"
704
- focusable="false"
710
+ {name === 'MIPS' &amp;&amp; (
711
+ &lt;li
712
+ key={`${menuIdentifier}-mobile-${index}-${cIndex}`}
713
+ className="submenu-section-mips-mobile"
714
+ onClick={<span class="fstat-no" title="function not covered" >()</span> =&gt; {
715
+ <span class="cstat-no" title="statement not covered" > setOpenMobileSubMenu(c.heading);</span>
716
+ }}
717
+ &gt;
718
+ &lt;Accordion
719
+ title={c.heading}
720
+ isOpen={
721
+ isMobileMenuExpanded &amp;&amp;
722
+ openMobileSubMenu === c.heading
723
+ }
705
724
  &gt;
706
- &lt;use xlinkHref={`#${leftIcon}`} /&gt;
707
- &lt;/svg&gt;
708
- &lt;AnimationGroup display={isExpanded}&gt;
709
- &lt;span&gt;{label}&lt;/span&gt;
710
- &lt;/AnimationGroup&gt;
711
- &lt;/div&gt;
712
- {isExpanded &amp;&amp; !isAlwaysOpen &amp;&amp; (
713
- &lt;svg
714
- className={`${
715
- isOpen ? 'right-icon rotated' : 'right-icon'
716
- }`}
717
- focusable="false"
718
- aria-hidden="true"
719
- &gt;
720
- &lt;use xlinkHref={`#${rightIcon}`} /&gt;
721
- &lt;/svg&gt;
725
+ &lt;ul&gt;
726
+ {c.items.map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; {
727
+ const isSubLink = <span class="cstat-no" title="statement not covered" >item.type === 'sublink';</span>
728
+ const componentsByType = <span class="cstat-no" title="statement not covered" >{</span>
729
+ button: HeaderMenuButton,
730
+ signout: HeaderMenuSignOutButton,
731
+ link: HeaderMenuLink,
732
+ sublink: HeaderMenuLink,
733
+ };
734
+ const SubMenuComponent =
735
+ <span class="cstat-no" title="statement not covered" > componentsByType[item.type];</span>
736
+ <span class="cstat-no" title="statement not covered" > return (</span>
737
+ &lt;li
738
+ onClick={handleClick}
739
+ key={`item-link-${item.name}`}
740
+ className={isSubLink ? 'sublink' : ''}
741
+ &gt;
742
+ &lt;SubMenuComponent
743
+ href={item.href}
744
+ name={item.name}
745
+ RouterLink={RouterLink}
746
+ /&gt;
747
+ &lt;/li&gt;
748
+ );
749
+ })}
750
+ &lt;/ul&gt;
751
+ &lt;/Accordion&gt;
752
+ &lt;/li&gt;
722
753
  )}
723
- &lt;/button&gt;
724
- &lt;AnimationGroup display={isExpanded}&gt;
725
- &lt;div
726
- className={`${currentPage ? 'currentPage' : ''} ${
727
- isOpen &amp;&amp; !disabled ? 'drawer open' : 'drawer'
728
- }`}
729
- &gt;
730
- &lt;ul aria-hidden={!isOpen} role="none"&gt;
731
- {listOfLinks &amp;&amp;
732
- this._renderDrawerLinksRecursively(
733
- listOfLinks,
734
- 'parent-link'
735
- )}
736
- &lt;/ul&gt;
737
- &lt;/div&gt;
738
- &lt;/AnimationGroup&gt;
739
- &lt;/div&gt;
740
- );
741
- }
742
- }
754
+ &lt;/Fragment&gt;
755
+ );
756
+ })}
757
+ &lt;/ul&gt;
758
+ );
759
+ })}
760
+ &lt;/div&gt;
761
+ &lt;/li&gt;
762
+ );
763
+ };
743
764
  &nbsp;
744
- NavLinkDrawer.propTypes = {
745
- isExpanded: PropTypes.bool,
746
- isAlwaysOpen: PropTypes.bool,
747
- openByDefault: PropTypes.bool,
748
- className: PropTypes.string,
749
- rightIcon: PropTypes.string,
750
- leftIcon: PropTypes.string,
751
- label: PropTypes.string,
752
- linkActiveFunc: PropTypes.func,
753
- linkCallback: PropTypes.func,
754
- listOfLinks: PropTypes.array,
755
- disabled: PropTypes.bool,
756
- sidebarExpand: PropTypes.func,
757
- staticDrawer: PropTypes.bool
765
+ HeaderMenuItem.propTypes = {
766
+ columns: PropTypes.array,
767
+ menuName: PropTypes.string,
768
+ rows: PropTypes.array,
769
+ name: PropTypes.string.isRequired,
770
+ subtitle: PropTypes.string.isRequired,
771
+ className: PropTypes.string,
772
+ handleClick: PropTypes.func.isRequired,
773
+ isMobileMenuExpanded: PropTypes.bool.isRequired,
774
+ };
775
+ HeaderMenuItem.defaultProps = {
776
+ menuName: '',
777
+ columns: [],
778
+ rows: [],
779
+ className: null,
758
780
  };
781
+ &nbsp;
782
+ export default HeaderMenuItem;
759
783
  &nbsp;</pre></td></tr></table></pre>
760
784
 
761
785
  <div class='push'></div><!-- for sticky footer -->
762
786
  </div><!-- /wrapper -->
763
787
  <div class='footer quiet pad2 space-top1 center small'>
764
788
  Code coverage generated by
765
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
766
- at Tue Aug 04 2020 16:59:07 GMT-0700 (Pacific Daylight Time)
789
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
790
+ at Thu Feb 02 2023 11:23:00 GMT-0800 (Pacific Standard Time)
767
791
  </div>
768
- </div>
769
- <script src="../../../prettify.js"></script>
792
+ <script src="../../prettify.js"></script>
770
793
  <script>
771
794
  window.onload = function () {
772
795
  prettyPrint();
773
796
  };
774
797
  </script>
775
- <script src="../../../sorter.js"></script>
776
- <script src="../../../block-navigation.js"></script>
798
+ <script src="../../sorter.js"></script>
799
+ <script src="../../block-navigation.js"></script>
777
800
  </body>
778
801
  </html>
779
802