qpp-style 0.0.8 → 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 (462) 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/Breadcrumb.md +28 -0
  7. package/components/Breadcrumb/index.js +69 -11
  8. package/components/Button/index.js +90 -0
  9. package/components/CalloutBox/index.js +109 -0
  10. package/components/Card/index.js +137 -0
  11. package/components/Details/DetailsIcons.js +50 -0
  12. package/components/Details/index.js +53 -0
  13. package/components/Dropdown/index.js +85 -0
  14. package/components/DropdownButton/Menu.js +25 -0
  15. package/components/DropdownButton/MenuButton.js +41 -0
  16. package/components/DropdownButton/MenuItem.js +25 -0
  17. package/components/DropdownButton/MenuItemLink.js +27 -0
  18. package/components/Error/Collapsible.jsx +2 -2
  19. package/components/Footer/FooterUI.jsx +175 -177
  20. package/components/Footer/footer.js +2 -12
  21. package/components/GovBanner/index.js +117 -0
  22. package/components/Header/HeaderAccountMenu.jsx +63 -234
  23. package/components/Header/HeaderCancel.jsx +5 -10
  24. package/components/Header/HeaderContainer.jsx +74 -0
  25. package/components/Header/HeaderLogo.jsx +42 -0
  26. package/components/Header/HeaderMenuButton.js +50 -0
  27. package/components/Header/HeaderMenuItem.jsx +239 -0
  28. package/components/Header/HeaderMenuLink.js +56 -0
  29. package/components/Header/HeaderMenuSignOutButton.js +62 -0
  30. package/components/Header/HeaderMobileButton.js +37 -0
  31. package/components/Header/HeaderUI.jsx +130 -361
  32. package/components/Header/HelpIcon.jsx +32 -0
  33. package/components/Header/ImpersonatorBanner.jsx +81 -0
  34. package/components/Header/default-content.json +158 -87
  35. package/components/Header/header.js +2 -0
  36. package/components/Header/hooks.js +66 -0
  37. package/components/Header/utag-helpers.js +9 -0
  38. package/components/Infotip/Infotip.jsx +6 -10
  39. package/components/Infotip/InfotipContent.jsx +46 -0
  40. package/components/Infotip/InfotipIcon.jsx +3 -3
  41. package/components/Link/index.js +61 -0
  42. package/components/Modal/LegacyModal.jsx +72 -0
  43. package/components/Modal/Modal.jsx +140 -0
  44. package/components/Modal/index.jsx +13 -63
  45. package/components/NotificationBanner/CollapsedView.js +39 -0
  46. package/components/NotificationBanner/ExpandedView.js +45 -0
  47. package/components/NotificationBanner/index.js +219 -30
  48. package/components/Search/index.js +98 -0
  49. package/components/SessionDialog/sessionDialog.js +26 -0
  50. package/components/SessionDialogUI.jsx +34 -26
  51. package/components/SideNav/AnimationGroup/AnimationGroup.jsx +10 -4
  52. package/components/SideNav/Chart/ScoreChart.jsx +81 -109
  53. package/components/SideNav/Chart/__tests__/ScoreChart.test.js +3 -12
  54. package/components/SideNav/Chart/__tests__/__snapshots__/ScoreChart.test.js.snap +144 -35
  55. package/components/SideNav/Chart/index.js +1 -1
  56. package/components/SideNav/Content/LevelOneContent.jsx +146 -258
  57. package/components/SideNav/Content/LevelTwoContent.jsx +6 -4
  58. package/components/SideNav/Content/SelectRole/index.js +77 -0
  59. package/components/SideNav/Content/SelectRole/utils.js +140 -0
  60. package/components/SideNav/Details/PracticeDetails.jsx +4 -0
  61. package/components/SideNav/Links/CmsSwitchLink.jsx +1 -1
  62. package/components/SideNav/Links/NavLinkContainer.jsx +29 -34
  63. package/components/SideNav/Links/NavLinkDrawer.jsx +192 -124
  64. package/components/SideNav/Links/NavLinkInline.jsx +7 -2
  65. package/components/SideNav/Links/NavLinkToggle.jsx +1 -1
  66. package/components/SideNav/SideNav.md +28 -27
  67. package/components/SideNav/UI/SideNavUI.jsx +198 -268
  68. package/components/SideNav/UI/default-content.json +117 -0
  69. package/components/SideNav/helpers.js +316 -4
  70. package/components/Tabs/TabPanel.js +5 -0
  71. package/components/Tabs/Tabs.js +73 -0
  72. package/components/TextInput/index.js +137 -0
  73. package/components/hooks/useGetConfig.js +75 -0
  74. package/components/index.js +106 -9
  75. package/coverage/clover.xml +1194 -748
  76. package/coverage/coverage-final.json +72 -50
  77. package/coverage/lcov-report/block-navigation.js +8 -0
  78. package/coverage/lcov-report/components/Accordion/index.html +26 -21
  79. package/coverage/lcov-report/components/Accordion/index.jsx.html +106 -131
  80. package/coverage/lcov-report/{SideNav/Chart → components/Button}/index.html +29 -24
  81. package/coverage/lcov-report/{Error/Collapsible.jsx.html → components/Button/index.js.html} +125 -114
  82. package/coverage/lcov-report/components/Error/Collapsible.jsx.html +92 -87
  83. package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +32 -33
  84. package/coverage/lcov-report/components/Error/index.html +11 -6
  85. package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +200 -189
  86. package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +24 -61
  87. package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +18 -13
  88. package/coverage/lcov-report/components/Footer/index.html +35 -45
  89. package/coverage/lcov-report/components/{InfoModal → GovBanner}/index.html +27 -22
  90. package/coverage/lcov-report/components/{InfoModal/index.jsx.html → GovBanner/index.js.html} +157 -122
  91. package/coverage/lcov-report/components/Header/HeaderAccountMenu.jsx.html +93 -520
  92. package/coverage/lcov-report/components/Header/HeaderCancel.jsx.html +19 -23
  93. package/coverage/lcov-report/components/Header/HeaderContainer.jsx.html +280 -0
  94. package/coverage/lcov-report/components/Header/HeaderLogo.jsx.html +211 -0
  95. package/coverage/lcov-report/components/Header/HeaderMenuButton.js.html +235 -0
  96. package/coverage/lcov-report/components/{Footer/LegacyFooterUI.jsx.html → Header/HeaderMenuItem.jsx.html} +334 -200
  97. package/coverage/lcov-report/components/Header/HeaderMenuLink.js.html +253 -0
  98. package/coverage/lcov-report/components/Header/HeaderMenuSignOutButton.js.html +271 -0
  99. package/coverage/lcov-report/components/Header/HeaderMobileButton.js.html +196 -0
  100. package/coverage/lcov-report/components/Header/HeaderUI.jsx.html +176 -756
  101. package/coverage/lcov-report/components/Header/HelpIcon.jsx.html +181 -0
  102. package/coverage/lcov-report/{Accordion/index.jsx.html → components/Header/ImpersonatorBanner.jsx.html} +109 -167
  103. package/coverage/lcov-report/components/Header/NavigationButtonIcon.jsx.html +24 -19
  104. package/coverage/lcov-report/components/Header/hooks.js.html +283 -0
  105. package/coverage/lcov-report/components/Header/index.html +203 -33
  106. package/coverage/lcov-report/components/{SideNav/Links/index.js.html → Header/utag-helpers.js.html} +35 -42
  107. package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +53 -48
  108. package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +37 -32
  109. package/coverage/lcov-report/components/Infotip/index.html +8 -3
  110. package/coverage/lcov-report/components/Infotip/index.js.html +8 -3
  111. package/coverage/lcov-report/components/Modal/LegacyModal.jsx.html +301 -0
  112. package/coverage/lcov-report/components/Modal/Modal.jsx.html +505 -0
  113. package/coverage/lcov-report/components/Modal/index.html +146 -0
  114. package/coverage/lcov-report/components/{SideNav/Details/IndividualDetails.jsx.html → Modal/index.jsx.html} +50 -42
  115. package/coverage/lcov-report/components/NotificationBanner/CollapsedView.js.html +202 -0
  116. package/coverage/lcov-report/components/NotificationBanner/ExpandedView.js.html +220 -0
  117. package/coverage/lcov-report/components/NotificationBanner/index.html +58 -23
  118. package/coverage/lcov-report/components/{SideNav/Content/LevelTwoContent.jsx.html → NotificationBanner/index.js.html} +292 -272
  119. package/coverage/lcov-report/components/SanitizedContent/index.html +8 -3
  120. package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +475 -50
  121. package/coverage/lcov-report/components/SessionDialogUI.jsx.html +248 -255
  122. package/coverage/lcov-report/components/SideNav/Chart/ScoreChart.jsx.html +272 -408
  123. package/coverage/lcov-report/components/SideNav/Chart/index.html +28 -38
  124. package/coverage/lcov-report/components/SideNav/Content/SelectRole/index.html +116 -0
  125. package/coverage/lcov-report/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  126. package/coverage/lcov-report/components/SideNav/helpers.js.html +987 -46
  127. package/coverage/lcov-report/components/SideNav/index.html +24 -19
  128. package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +70 -65
  129. package/coverage/lcov-report/components/Tooltip/index.html +8 -3
  130. package/coverage/lcov-report/components/Tooltip/index.js.html +8 -3
  131. package/coverage/lcov-report/components/Tooltip/position.js.html +57 -64
  132. package/coverage/lcov-report/components/hooks/index.html +116 -0
  133. package/coverage/lcov-report/components/hooks/useGetConfig.js.html +310 -0
  134. package/coverage/lcov-report/components/index.html +10 -5
  135. package/coverage/lcov-report/index.html +249 -154
  136. package/coverage/lcov-report/{Error/ErrorUI.jsx.html → lib/Chevron.jsx.html} +44 -42
  137. package/coverage/lcov-report/lib/SvgComponents.jsx.html +1840 -0
  138. package/coverage/lcov-report/lib/index.html +34 -14
  139. package/coverage/lcov-report/react/components/Accordion/index.html +26 -21
  140. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +106 -131
  141. package/coverage/lcov-report/react/components/{FlashNotification → Button}/index.html +23 -33
  142. package/coverage/lcov-report/{components/SideNav/Links/NavLinkInline.jsx.html → react/components/Button/index.js.html} +119 -120
  143. package/coverage/lcov-report/react/components/{Tabs → Dropdown}/index.html +23 -33
  144. package/coverage/lcov-report/react/components/{InfoModal/index.jsx.html → Dropdown/index.js.html} +103 -155
  145. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +92 -87
  146. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +32 -33
  147. package/coverage/lcov-report/react/components/Error/error.js.html +25 -20
  148. package/coverage/lcov-report/react/components/Error/index.html +11 -6
  149. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +200 -189
  150. package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +14 -15
  151. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +18 -13
  152. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +18 -13
  153. package/coverage/lcov-report/react/components/Footer/footer.js.html +12 -34
  154. package/coverage/lcov-report/react/components/Footer/index.html +35 -45
  155. package/coverage/lcov-report/react/components/{InfoModal → GovBanner}/index.html +27 -22
  156. package/coverage/lcov-report/react/components/{Tabs/TabsUI.jsx.html → GovBanner/index.js.html} +146 -153
  157. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +93 -520
  158. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +19 -23
  159. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +307 -0
  160. package/coverage/lcov-report/{components/SideNav/Links/CmsSwitchLink.jsx.html → react/components/Header/HeaderLogo.jsx.html} +64 -53
  161. package/coverage/lcov-report/{components/SideNav/Links/NavItemInline.jsx.html → react/components/Header/HeaderMenuButton.js.html} +64 -71
  162. package/coverage/lcov-report/{components/SideNav/Links/NavLinkDrawer.jsx.html → react/components/Header/HeaderMenuItem.jsx.html} +284 -261
  163. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +253 -0
  164. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +271 -0
  165. package/coverage/lcov-report/{components/SideNav/Links/NavLinkToggle.jsx.html → react/components/Header/HeaderMobileButton.js.html} +58 -41
  166. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +189 -745
  167. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +181 -0
  168. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +331 -0
  169. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +18 -13
  170. package/coverage/lcov-report/react/components/Header/header.js.html +18 -4
  171. package/coverage/lcov-report/react/components/Header/hooks.js.html +283 -0
  172. package/coverage/lcov-report/react/components/Header/index.html +205 -35
  173. package/coverage/lcov-report/react/components/{Spinner/index.js.html → Header/utag-helpers.js.html} +26 -21
  174. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +53 -48
  175. package/coverage/lcov-report/{components/SideNav/Links/NavLinkContainer.jsx.html → react/components/Infotip/InfotipContent.jsx.html} +83 -60
  176. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +37 -32
  177. package/coverage/lcov-report/react/components/Infotip/index.html +8 -3
  178. package/coverage/lcov-report/react/components/Infotip/index.js.html +8 -3
  179. package/coverage/lcov-report/react/components/{FlashNotification/FlashNotificationUI.jsx.html → Modal/LegacyModal.jsx.html} +89 -84
  180. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +505 -0
  181. package/coverage/lcov-report/react/components/Modal/index.html +52 -17
  182. package/coverage/lcov-report/react/components/Modal/index.jsx.html +38 -201
  183. package/coverage/lcov-report/react/components/{Tabs/tabs.js.html → NotificationBanner/CollapsedView.js.html} +61 -47
  184. package/coverage/lcov-report/{components/SideNav/Details/PracticeDetails.jsx.html → react/components/NotificationBanner/ExpandedView.js.html} +74 -57
  185. package/coverage/lcov-report/react/components/NotificationBanner/index.html +58 -23
  186. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +615 -43
  187. package/coverage/lcov-report/react/components/SanitizedContent/index.html +8 -3
  188. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +478 -53
  189. package/coverage/lcov-report/react/components/{Spinner → SessionDialog}/index.html +11 -6
  190. package/coverage/lcov-report/react/components/{FlashNotification/index.js.html → SessionDialog/sessionDialog.js.html} +35 -42
  191. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +248 -255
  192. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +53 -18
  193. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +18 -13
  194. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +272 -402
  195. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +28 -23
  196. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +9 -4
  197. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +190 -521
  198. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +23 -12
  199. package/coverage/lcov-report/{components/SideNav/Details → react/components/SideNav/Content/SelectRole}/index.html +42 -52
  200. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +316 -0
  201. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  202. package/coverage/lcov-report/react/components/SideNav/Content/index.html +32 -27
  203. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +8 -3
  204. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +20 -24
  205. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +54 -37
  206. package/coverage/lcov-report/react/components/SideNav/Details/index.html +23 -18
  207. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +8 -3
  208. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +9 -4
  209. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +8 -3
  210. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +56 -57
  211. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +351 -142
  212. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +60 -40
  213. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +9 -4
  214. package/coverage/lcov-report/react/components/SideNav/Links/index.html +44 -39
  215. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +8 -3
  216. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +243 -433
  217. package/coverage/lcov-report/react/components/SideNav/UI/index.html +28 -23
  218. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +8 -3
  219. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +958 -17
  220. package/coverage/lcov-report/react/components/SideNav/index.html +27 -22
  221. package/coverage/lcov-report/react/components/SideNav/index.js.html +8 -3
  222. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +70 -65
  223. package/coverage/lcov-report/react/components/Tooltip/index.html +8 -3
  224. package/coverage/lcov-report/react/components/Tooltip/index.js.html +8 -3
  225. package/coverage/lcov-report/react/components/Tooltip/position.js.html +57 -64
  226. package/coverage/lcov-report/{components/SideNav/AnimationGroup → react/components/hooks}/index.html +29 -24
  227. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +310 -0
  228. package/coverage/lcov-report/react/components/index.html +10 -5
  229. package/coverage/lcov-report/react/index.html +20 -15
  230. package/coverage/lcov-report/react/index.js.html +29 -9
  231. package/coverage/lcov-report/react/lib/Chevron.jsx.html +181 -0
  232. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +195 -106
  233. package/coverage/lcov-report/react/lib/index.html +37 -17
  234. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +57 -916
  235. package/coverage/lcov-report/react/session/index.html +32 -27
  236. package/coverage/lcov-report/react/session/index.js.html +8 -3
  237. package/coverage/lcov-report/react/session/logout.js.html +121 -17
  238. package/coverage/lcov-report/react/session/refresh.js.html +11 -6
  239. package/coverage/lcov-report/react/session/ttl.js.html +8 -3
  240. package/coverage/lcov-report/session/index.html +50 -45
  241. package/coverage/lcov-report/session/index.js.html +8 -3
  242. package/coverage/lcov-report/session/logout.js.html +144 -49
  243. package/coverage/lcov-report/session/refresh.js.html +41 -36
  244. package/coverage/lcov-report/session/ttl.js.html +34 -29
  245. package/coverage/lcov-report/sorter.js +26 -0
  246. package/coverage/lcov.info +2427 -1491
  247. package/dist/browser.js +1 -1
  248. package/dist/browser.js.LICENSE.txt +1 -7
  249. package/dist/browser.js.map +1 -1
  250. package/dist/index.js +1 -1
  251. package/dist/index.js.LICENSE.txt +1 -7
  252. package/dist/index.js.map +1 -1
  253. package/dist/react/index.js +1 -1
  254. package/dist/react/index.js.LICENSE.txt +16 -16
  255. package/dist/react/index.js.map +1 -1
  256. package/fonts/PublicSans-Black.ttf +0 -0
  257. package/fonts/PublicSans-BlackItalic.ttf +0 -0
  258. package/fonts/PublicSans-Bold.ttf +0 -0
  259. package/fonts/PublicSans-BoldItalic.ttf +0 -0
  260. package/fonts/PublicSans-ExtraBold.ttf +0 -0
  261. package/fonts/PublicSans-ExtraBoldItalic.ttf +0 -0
  262. package/fonts/PublicSans-ExtraLight.ttf +0 -0
  263. package/fonts/PublicSans-ExtraLightItalic.ttf +0 -0
  264. package/fonts/PublicSans-Italic.ttf +0 -0
  265. package/fonts/PublicSans-Light.ttf +0 -0
  266. package/fonts/PublicSans-LightItalic.ttf +0 -0
  267. package/fonts/PublicSans-Medium.ttf +0 -0
  268. package/fonts/PublicSans-MediumItalic.ttf +0 -0
  269. package/fonts/PublicSans-Regular.ttf +0 -0
  270. package/fonts/PublicSans-SemiBold.ttf +0 -0
  271. package/fonts/PublicSans-SemiBoldItalic.ttf +0 -0
  272. package/fonts/PublicSans-Thin.ttf +0 -0
  273. package/fonts/PublicSans-ThinItalic.ttf +0 -0
  274. package/images/icon-dot-gov.svg +1 -0
  275. package/images/icon-https.svg +1 -0
  276. package/images/icons/close-x.svg +6 -0
  277. package/images/icons/svg/arrow-down.svg +3 -0
  278. package/images/icons/svg/arrow-download.svg +1 -0
  279. package/images/icons/svg/arrow-right.svg +1 -0
  280. package/images/icons/svg/arrow-up.svg +3 -0
  281. package/images/icons/svg/block.svg +5 -0
  282. package/images/icons/svg/calendar.svg +1 -0
  283. package/images/icons/svg/check-circle.svg +5 -0
  284. package/images/icons/svg/checkmark.svg +7 -0
  285. package/images/icons/svg/chevron-down.svg +11 -0
  286. package/images/icons/svg/chevron-left.svg +12 -0
  287. package/images/icons/svg/chevron-right.svg +12 -0
  288. package/images/icons/svg/chevron-up.svg +12 -0
  289. package/images/icons/svg/clipboard.svg +1 -0
  290. package/images/icons/svg/close.svg +1 -0
  291. package/images/icons/svg/divide.svg +13 -0
  292. package/images/icons/svg/doctors-and-clinicians-preview.svg +10 -0
  293. package/images/icons/svg/download.svg +1 -0
  294. package/images/icons/svg/dropdown-arrow.svg +1 -0
  295. package/images/icons/svg/equals.svg +13 -0
  296. package/images/icons/svg/exclamation.svg +11 -0
  297. package/images/icons/svg/external.svg +1 -0
  298. package/images/icons/svg/file-download.svg +1 -0
  299. package/images/icons/svg/file-upload.svg +1 -0
  300. package/images/icons/svg/info.svg +20 -0
  301. package/images/icons/svg/manage-user-access.svg +8 -0
  302. package/images/icons/svg/multiply.svg +12 -0
  303. package/images/icons/svg/performance-feedback.svg +1 -0
  304. package/images/icons/svg/plus.svg +12 -0
  305. package/images/icons/svg/preview.svg +17 -0
  306. package/images/icons/svg/print.svg +1 -0
  307. package/images/icons/svg/registration.svg +8 -0
  308. package/images/icons/svg/reporting.svg +17 -0
  309. package/images/icons/svg/save-disk.svg +5 -0
  310. package/images/icons/svg/search.svg +1 -0
  311. package/images/icons/svg/subtract.svg +15 -0
  312. package/images/icons/svg/targeted-review.svg +15 -0
  313. package/images/icons/svg/tooltip-question.svg +1 -0
  314. package/images/icons/svg/trash.svg +1 -0
  315. package/images/icons/svg/upload.svg +1 -0
  316. package/images/us_flag_small.png +0 -0
  317. package/index.js +5 -0
  318. package/jest.config.js +138 -134
  319. package/lib/Chevron.jsx +32 -0
  320. package/lib/SvgComponents.jsx +197 -49
  321. package/package.json +62 -77
  322. package/session/logout.js +35 -2
  323. package/styles/_global.scss +63 -62
  324. package/styles/_main.scss +6 -0
  325. package/styles/_qpp-style.scss +0 -3
  326. package/styles/components/_accordion.scss +249 -246
  327. package/styles/components/_autocomplete.scss +0 -3
  328. package/styles/components/_modals.scss +9 -9
  329. package/styles/components/_spinner.scss +0 -2
  330. package/styles/components/_tables.scss +77 -67
  331. package/styles/components/_text.scss +102 -102
  332. package/styles/components/_variables.scss +12 -12
  333. package/styles/qppds/base/_backgrounds.scss +7 -0
  334. package/styles/qppds/base/_fonts.scss +24 -0
  335. package/styles/qppds/base/_icon.scss +31 -0
  336. package/styles/qppds/base/_layout.scss +5 -0
  337. package/styles/qppds/base/_typography.scss +78 -44
  338. package/styles/qppds/base/index.scss +4 -5
  339. package/styles/qppds/components/_alert.scss +101 -0
  340. package/styles/qppds/components/_breadcrumbs.scss +42 -6
  341. package/styles/qppds/components/_button.scss +129 -11
  342. package/styles/qppds/components/_card.scss +175 -0
  343. package/styles/qppds/components/_checkbox.scss +199 -0
  344. package/styles/qppds/components/_circular-loader.scss +47 -0
  345. package/styles/qppds/components/_details.scss +90 -0
  346. package/styles/qppds/components/_dropdown-menu.scss +125 -0
  347. package/styles/qppds/components/_dropdown.scss +7 -1
  348. package/styles/qppds/components/_footer.scss +606 -0
  349. package/styles/qppds/components/_gov-banner.scss +344 -0
  350. package/styles/qppds/components/_header.scss +913 -0
  351. package/styles/qppds/components/_link.scss +52 -0
  352. package/styles/qppds/components/_modal.scss +118 -0
  353. package/styles/qppds/components/_page-header.scss +65 -2
  354. package/styles/qppds/components/_pagination.scss +227 -0
  355. package/styles/qppds/components/_process-list.scss +104 -0
  356. package/styles/qppds/components/_radio-button.scss +184 -0
  357. package/styles/qppds/components/_search.scss +118 -0
  358. package/styles/{components → qppds/components}/_sidebar.scss +2 -0
  359. package/styles/qppds/components/_step-indicator.scss +190 -0
  360. package/styles/qppds/components/_table.scss +157 -0
  361. package/styles/qppds/components/_tabs.scss +197 -0
  362. package/styles/qppds/components/_text-input.scss +60 -0
  363. package/styles/qppds/components/index.scss +20 -0
  364. package/styles/{components → qppds/components}/sidebar/_links.scss +48 -1
  365. package/styles/qppds/components/sidebar/_select-role-dropdown.scss +21 -0
  366. package/styles/qppds/components/sidebar/_sidebar-animation.scss +125 -0
  367. package/styles/qppds/components/sidebar/_sidebar.scss +146 -0
  368. package/styles/{components → qppds/components}/sidebar/project-specific/_wi.scss +1 -37
  369. package/styles/qppds/settings/_functions.scss +3 -1
  370. package/styles/qppds/settings/mixins/_borders.scss +6 -0
  371. package/styles/qppds/settings/mixins/_focus.scss +28 -0
  372. package/styles/qppds/settings/mixins/_icons.scss +39 -4
  373. package/styles/qppds/settings/mixins/_index.scss +4 -0
  374. package/styles/qppds/settings/mixins/_layout.scss +46 -7
  375. package/styles/qppds/settings/mixins/_table.scss +91 -0
  376. package/styles/qppds/settings/mixins/_type.scss +89 -0
  377. package/styles/qppds/settings/variables/_color.scss +47 -1
  378. package/styles/qppds/settings/variables/_index.scss +2 -1
  379. package/styles/qppds/settings/variables/_layout.scss +34 -9
  380. package/styles/qppds/settings/variables/_type.scss +41 -0
  381. package/styles/qppds/settings/variables/_z-index.scss +8 -0
  382. package/styles/qppds/utilities/_background-color.scss +4 -0
  383. package/styles/qppds/utilities/_color.scss +28 -0
  384. package/styles/qppds/utilities/{_display-visability.scss → _display-visibility.scss} +8 -0
  385. package/styles/qppds/utilities/_flexbox.scss +113 -0
  386. package/styles/qppds/utilities/_font-family.scss +4 -0
  387. package/styles/qppds/utilities/_gap.scss +38 -0
  388. package/styles/qppds/utilities/_height.scss +79 -0
  389. package/styles/qppds/utilities/_list-style.scss +18 -0
  390. package/styles/qppds/utilities/_position.scss +24 -0
  391. package/styles/qppds/utilities/_text-align.scss +40 -0
  392. package/styles/qppds/utilities/_text-transform.scss +7 -0
  393. package/styles/qppds/utilities/_truncate.scss +5 -5
  394. package/styles/qppds/utilities/_vertical-align.scss +72 -0
  395. package/styles/qppds/utilities/_width.scss +38 -1
  396. package/styles/qppds/utilities/index.scss +8 -2
  397. package/styles/third-party/legacy-bootstrap/_dropdowns.scss +0 -1
  398. package/svgo.config.js +14 -0
  399. package/test/components/Accordion.test.js +4 -13
  400. package/test/components/ErrorUI.test.js +10 -46
  401. package/test/components/FooterUI.test.js +0 -30
  402. package/test/components/HeaderUI.test.js +33 -15
  403. package/test/components/Infotip.test.js +18 -12
  404. package/test/components/SessionDialogUI.test.js +55 -70
  405. package/test/components/SideNavUI.test.js +6 -13
  406. package/test-setup.js +1 -3
  407. package/webpack.config.js +29 -39
  408. package/webpack.config.react.js +7 -18
  409. package/.storybook/.babelrc +0 -4
  410. package/.storybook/main.js +0 -89
  411. package/.storybook/preview-head.html +0 -9
  412. package/.storybook/preview.js +0 -16
  413. package/components/Accordion/Accordion.stories.js +0 -20
  414. package/components/Breadcrumb/Breadcrumb.js +0 -58
  415. package/components/Breadcrumb/Breadcrumb.stories.js +0 -62
  416. package/components/Breadcrumb/LegacyBreadcrumb.js +0 -46
  417. package/components/Footer/Footer.stories.js +0 -22
  418. package/components/Footer/LegacyFooterUI.jsx +0 -194
  419. package/components/Header/Header.stories.js +0 -32
  420. package/components/InfoModal/InfoModal.stories.js +0 -98
  421. package/components/InfoModal/index.jsx +0 -104
  422. package/components/Infotip/Infotip.stories.js +0 -58
  423. package/components/NotificationBanner/NotificationBanner.stories.js +0 -24
  424. package/components/NotificationBanner/NotificationBannerUI.jsx +0 -282
  425. package/components/SideNav/SideNav.stories.js +0 -320
  426. package/components/Spinner/index.js +0 -9
  427. package/components/Tabs/TabsUI.jsx +0 -118
  428. package/components/Tabs/tabs.js +0 -36
  429. package/components/Tooltip/Tooltip.jsx +0 -88
  430. package/components/Tooltip/Tooltip.stories.js +0 -90
  431. package/components/Tooltip/index.js +0 -3
  432. package/components/Tooltip/position.js +0 -68
  433. package/components/UnwrappedSpinner/index.js +0 -8
  434. package/components/UnwrappedTabs/TabPanelUI.jsx +0 -16
  435. package/components/UnwrappedTabs/TabsUI.jsx +0 -82
  436. package/coverage/lcov-report/Accordion/index.html +0 -111
  437. package/coverage/lcov-report/Error/index.html +0 -126
  438. package/coverage/lcov-report/ScoreChart.jsx.html +0 -1025
  439. package/coverage/lcov-report/SideNav/Chart/ScoreChart.jsx.html +0 -1025
  440. package/coverage/lcov-report/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -1010
  441. package/coverage/lcov-report/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -131
  442. package/coverage/lcov-report/components/SideNav/Chart/index.js.html +0 -89
  443. package/coverage/lcov-report/components/SideNav/Content/LevelOneContent.jsx.html +0 -1007
  444. package/coverage/lcov-report/components/SideNav/Content/index.html +0 -141
  445. package/coverage/lcov-report/components/SideNav/Content/index.js.html +0 -92
  446. package/coverage/lcov-report/components/SideNav/Details/index.js.html +0 -92
  447. package/coverage/lcov-report/components/SideNav/Links/index.html +0 -201
  448. package/coverage/lcov-report/components/SideNav/UI/SideNavUI.jsx.html +0 -1298
  449. package/coverage/lcov-report/components/SideNav/UI/index.html +0 -126
  450. package/coverage/lcov-report/components/SideNav/UI/index.js.html +0 -89
  451. package/coverage/lcov-report/lib/svg-definitions.svg.html +0 -1319
  452. package/coverage/lcov-report/react/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -926
  453. package/styles/components/_footer.scss +0 -593
  454. package/styles/components/_header.scss +0 -526
  455. package/styles/components/sidebar/_sidebar-animation.scss +0 -85
  456. package/styles/components/sidebar/_sidebar.scss +0 -141
  457. package/test/components/Tooltip.test.js +0 -147
  458. package/test/components/__snapshots__/Accordion.test.js.snap +0 -11439
  459. /package/styles/{components → qppds/components}/sidebar/_animations.scss +0 -0
  460. /package/styles/{components → qppds/components}/sidebar/_cms.scss +0 -0
  461. /package/styles/{components → qppds/components}/sidebar/_details.scss +0 -0
  462. /package/styles/{components → qppds/components}/sidebar/_sidebar-tooltip.scss +0 -0
@@ -23,30 +23,30 @@
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">3.07% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>1/43</span>
28
+ <span class='fraction'>2/65</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/69</span>
35
+ <span class='fraction'>0/96</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">0% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/14</span>
42
+ <span class='fraction'>0/20</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">3.07% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>1/39</span>
49
+ <span class='fraction'>2/65</span>
50
50
  </div>
51
51
 
52
52
 
@@ -54,6 +54,12 @@
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
64
  <div class='status-line low'></div>
59
65
  <pre><table class="coverage">
@@ -265,7 +271,96 @@
265
271
  <a name='L206'></a><a href='#L206'>206</a>
266
272
  <a name='L207'></a><a href='#L207'>207</a>
267
273
  <a name='L208'></a><a href='#L208'>208</a>
268
- <a name='L209'></a><a href='#L209'>209</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
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>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a>
324
+ <a name='L259'></a><a href='#L259'>259</a>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a>
327
+ <a name='L262'></a><a href='#L262'>262</a>
328
+ <a name='L263'></a><a href='#L263'>263</a>
329
+ <a name='L264'></a><a href='#L264'>264</a>
330
+ <a name='L265'></a><a href='#L265'>265</a>
331
+ <a name='L266'></a><a href='#L266'>266</a>
332
+ <a name='L267'></a><a href='#L267'>267</a>
333
+ <a name='L268'></a><a href='#L268'>268</a>
334
+ <a name='L269'></a><a href='#L269'>269</a>
335
+ <a name='L270'></a><a href='#L270'>270</a>
336
+ <a name='L271'></a><a href='#L271'>271</a>
337
+ <a name='L272'></a><a href='#L272'>272</a>
338
+ <a name='L273'></a><a href='#L273'>273</a>
339
+ <a name='L274'></a><a href='#L274'>274</a>
340
+ <a name='L275'></a><a href='#L275'>275</a>
341
+ <a name='L276'></a><a href='#L276'>276</a>
342
+ <a name='L277'></a><a href='#L277'>277</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
343
+ <span class="cline-any cline-neutral">&nbsp;</span>
344
+ <span class="cline-any cline-neutral">&nbsp;</span>
345
+ <span class="cline-any cline-neutral">&nbsp;</span>
346
+ <span class="cline-any cline-neutral">&nbsp;</span>
347
+ <span class="cline-any cline-neutral">&nbsp;</span>
348
+ <span class="cline-any cline-yes">2x</span>
349
+ <span class="cline-any cline-neutral">&nbsp;</span>
350
+ <span class="cline-any cline-neutral">&nbsp;</span>
351
+ <span class="cline-any cline-neutral">&nbsp;</span>
352
+ <span class="cline-any cline-neutral">&nbsp;</span>
353
+ <span class="cline-any cline-neutral">&nbsp;</span>
354
+ <span class="cline-any cline-neutral">&nbsp;</span>
355
+ <span class="cline-any cline-neutral">&nbsp;</span>
356
+ <span class="cline-any cline-neutral">&nbsp;</span>
357
+ <span class="cline-any cline-neutral">&nbsp;</span>
358
+ <span class="cline-any cline-neutral">&nbsp;</span>
359
+ <span class="cline-any cline-neutral">&nbsp;</span>
360
+ <span class="cline-any cline-neutral">&nbsp;</span>
361
+ <span class="cline-any cline-neutral">&nbsp;</span>
362
+ <span class="cline-any cline-neutral">&nbsp;</span>
363
+ <span class="cline-any cline-neutral">&nbsp;</span>
269
364
  <span class="cline-any cline-neutral">&nbsp;</span>
270
365
  <span class="cline-any cline-neutral">&nbsp;</span>
271
366
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -274,51 +369,79 @@
274
369
  <span class="cline-any cline-neutral">&nbsp;</span>
275
370
  <span class="cline-any cline-no">&nbsp;</span>
276
371
  <span class="cline-any cline-no">&nbsp;</span>
372
+ <span class="cline-any cline-neutral">&nbsp;</span>
373
+ <span class="cline-any cline-no">&nbsp;</span>
374
+ <span class="cline-any cline-no">&nbsp;</span>
277
375
  <span class="cline-any cline-no">&nbsp;</span>
278
376
  <span class="cline-any cline-no">&nbsp;</span>
279
377
  <span class="cline-any cline-no">&nbsp;</span>
280
378
  <span class="cline-any cline-neutral">&nbsp;</span>
281
379
  <span class="cline-any cline-neutral">&nbsp;</span>
282
380
  <span class="cline-any cline-no">&nbsp;</span>
381
+ <span class="cline-any cline-no">&nbsp;</span>
283
382
  <span class="cline-any cline-neutral">&nbsp;</span>
284
383
  <span class="cline-any cline-neutral">&nbsp;</span>
384
+ <span class="cline-any cline-no">&nbsp;</span>
285
385
  <span class="cline-any cline-neutral">&nbsp;</span>
286
386
  <span class="cline-any cline-neutral">&nbsp;</span>
387
+ <span class="cline-any cline-no">&nbsp;</span>
388
+ <span class="cline-any cline-no">&nbsp;</span>
389
+ <span class="cline-any cline-no">&nbsp;</span>
390
+ <span class="cline-any cline-neutral">&nbsp;</span>
287
391
  <span class="cline-any cline-neutral">&nbsp;</span>
392
+ <span class="cline-any cline-neutral">&nbsp;</span>
393
+ <span class="cline-any cline-no">&nbsp;</span>
288
394
  <span class="cline-any cline-no">&nbsp;</span>
289
395
  <span class="cline-any cline-no">&nbsp;</span>
396
+ <span class="cline-any cline-neutral">&nbsp;</span>
290
397
  <span class="cline-any cline-no">&nbsp;</span>
291
398
  <span class="cline-any cline-neutral">&nbsp;</span>
292
399
  <span class="cline-any cline-neutral">&nbsp;</span>
293
400
  <span class="cline-any cline-no">&nbsp;</span>
294
401
  <span class="cline-any cline-no">&nbsp;</span>
402
+ <span class="cline-any cline-no">&nbsp;</span>
403
+ <span class="cline-any cline-no">&nbsp;</span>
295
404
  <span class="cline-any cline-neutral">&nbsp;</span>
405
+ <span class="cline-any cline-no">&nbsp;</span>
296
406
  <span class="cline-any cline-neutral">&nbsp;</span>
407
+ <span class="cline-any cline-no">&nbsp;</span>
297
408
  <span class="cline-any cline-neutral">&nbsp;</span>
298
409
  <span class="cline-any cline-neutral">&nbsp;</span>
410
+ <span class="cline-any cline-neutral">&nbsp;</span>
411
+ <span class="cline-any cline-no">&nbsp;</span>
299
412
  <span class="cline-any cline-no">&nbsp;</span>
300
413
  <span class="cline-any cline-neutral">&nbsp;</span>
301
414
  <span class="cline-any cline-no">&nbsp;</span>
302
415
  <span class="cline-any cline-no">&nbsp;</span>
416
+ <span class="cline-any cline-neutral">&nbsp;</span>
417
+ <span class="cline-any cline-neutral">&nbsp;</span>
303
418
  <span class="cline-any cline-no">&nbsp;</span>
304
419
  <span class="cline-any cline-no">&nbsp;</span>
305
420
  <span class="cline-any cline-neutral">&nbsp;</span>
306
421
  <span class="cline-any cline-neutral">&nbsp;</span>
307
422
  <span class="cline-any cline-no">&nbsp;</span>
423
+ <span class="cline-any cline-neutral">&nbsp;</span>
424
+ <span class="cline-any cline-neutral">&nbsp;</span>
425
+ <span class="cline-any cline-neutral">&nbsp;</span>
308
426
  <span class="cline-any cline-no">&nbsp;</span>
309
427
  <span class="cline-any cline-neutral">&nbsp;</span>
310
428
  <span class="cline-any cline-neutral">&nbsp;</span>
311
429
  <span class="cline-any cline-neutral">&nbsp;</span>
430
+ <span class="cline-any cline-no">&nbsp;</span>
312
431
  <span class="cline-any cline-neutral">&nbsp;</span>
313
432
  <span class="cline-any cline-no">&nbsp;</span>
314
433
  <span class="cline-any cline-no">&nbsp;</span>
434
+ <span class="cline-any cline-no">&nbsp;</span>
435
+ <span class="cline-any cline-neutral">&nbsp;</span>
436
+ <span class="cline-any cline-neutral">&nbsp;</span>
437
+ <span class="cline-any cline-neutral">&nbsp;</span>
438
+ <span class="cline-any cline-neutral">&nbsp;</span>
439
+ <span class="cline-any cline-neutral">&nbsp;</span>
315
440
  <span class="cline-any cline-neutral">&nbsp;</span>
316
441
  <span class="cline-any cline-neutral">&nbsp;</span>
317
- <span class="cline-any cline-no">&nbsp;</span>
318
442
  <span class="cline-any cline-neutral">&nbsp;</span>
319
443
  <span class="cline-any cline-neutral">&nbsp;</span>
320
444
  <span class="cline-any cline-neutral">&nbsp;</span>
321
- <span class="cline-any cline-no">&nbsp;</span>
322
445
  <span class="cline-any cline-neutral">&nbsp;</span>
323
446
  <span class="cline-any cline-no">&nbsp;</span>
324
447
  <span class="cline-any cline-no">&nbsp;</span>
@@ -328,13 +451,19 @@
328
451
  <span class="cline-any cline-no">&nbsp;</span>
329
452
  <span class="cline-any cline-neutral">&nbsp;</span>
330
453
  <span class="cline-any cline-neutral">&nbsp;</span>
454
+ <span class="cline-any cline-no">&nbsp;</span>
455
+ <span class="cline-any cline-no">&nbsp;</span>
331
456
  <span class="cline-any cline-neutral">&nbsp;</span>
332
457
  <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-no">&nbsp;</span>
459
+ <span class="cline-any cline-no">&nbsp;</span>
333
460
  <span class="cline-any cline-neutral">&nbsp;</span>
334
461
  <span class="cline-any cline-neutral">&nbsp;</span>
335
462
  <span class="cline-any cline-no">&nbsp;</span>
336
463
  <span class="cline-any cline-no">&nbsp;</span>
337
464
  <span class="cline-any cline-neutral">&nbsp;</span>
465
+ <span class="cline-any cline-neutral">&nbsp;</span>
466
+ <span class="cline-any cline-no">&nbsp;</span>
338
467
  <span class="cline-any cline-no">&nbsp;</span>
339
468
  <span class="cline-any cline-neutral">&nbsp;</span>
340
469
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -342,16 +471,27 @@
342
471
  <span class="cline-any cline-no">&nbsp;</span>
343
472
  <span class="cline-any cline-neutral">&nbsp;</span>
344
473
  <span class="cline-any cline-neutral">&nbsp;</span>
474
+ <span class="cline-any cline-no">&nbsp;</span>
475
+ <span class="cline-any cline-no">&nbsp;</span>
345
476
  <span class="cline-any cline-neutral">&nbsp;</span>
346
477
  <span class="cline-any cline-neutral">&nbsp;</span>
478
+ <span class="cline-any cline-no">&nbsp;</span>
479
+ <span class="cline-any cline-no">&nbsp;</span>
480
+ <span class="cline-any cline-no">&nbsp;</span>
347
481
  <span class="cline-any cline-neutral">&nbsp;</span>
348
- <span class="cline-any cline-neutral">&nbsp;</span>
349
482
  <span class="cline-any cline-no">&nbsp;</span>
483
+ <span class="cline-any cline-no">&nbsp;</span>
484
+ <span class="cline-any cline-neutral">&nbsp;</span>
485
+ <span class="cline-any cline-neutral">&nbsp;</span>
350
486
  <span class="cline-any cline-neutral">&nbsp;</span>
351
487
  <span class="cline-any cline-neutral">&nbsp;</span>
352
488
  <span class="cline-any cline-neutral">&nbsp;</span>
489
+ <span class="cline-any cline-no">&nbsp;</span>
490
+ <span class="cline-any cline-no">&nbsp;</span>
353
491
  <span class="cline-any cline-neutral">&nbsp;</span>
354
492
  <span class="cline-any cline-neutral">&nbsp;</span>
493
+ <span class="cline-any cline-no">&nbsp;</span>
494
+ <span class="cline-any cline-no">&nbsp;</span>
355
495
  <span class="cline-any cline-neutral">&nbsp;</span>
356
496
  <span class="cline-any cline-neutral">&nbsp;</span>
357
497
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -370,6 +510,7 @@
370
510
  <span class="cline-any cline-neutral">&nbsp;</span>
371
511
  <span class="cline-any cline-neutral">&nbsp;</span>
372
512
  <span class="cline-any cline-neutral">&nbsp;</span>
513
+ <span class="cline-any cline-no">&nbsp;</span>
373
514
  <span class="cline-any cline-neutral">&nbsp;</span>
374
515
  <span class="cline-any cline-neutral">&nbsp;</span>
375
516
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -395,13 +536,9 @@
395
536
  <span class="cline-any cline-neutral">&nbsp;</span>
396
537
  <span class="cline-any cline-neutral">&nbsp;</span>
397
538
  <span class="cline-any cline-no">&nbsp;</span>
398
- <span class="cline-any cline-no">&nbsp;</span>
399
539
  <span class="cline-any cline-neutral">&nbsp;</span>
400
540
  <span class="cline-any cline-neutral">&nbsp;</span>
401
- <span class="cline-any cline-no">&nbsp;</span>
402
- <span class="cline-any cline-no">&nbsp;</span>
403
541
  <span class="cline-any cline-neutral">&nbsp;</span>
404
- <span class="cline-any cline-no">&nbsp;</span>
405
542
  <span class="cline-any cline-neutral">&nbsp;</span>
406
543
  <span class="cline-any cline-neutral">&nbsp;</span>
407
544
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -454,11 +591,11 @@
454
591
  <span class="cline-any cline-neutral">&nbsp;</span>
455
592
  <span class="cline-any cline-neutral">&nbsp;</span>
456
593
  <span class="cline-any cline-neutral">&nbsp;</span>
594
+ <span class="cline-any cline-yes">2x</span>
457
595
  <span class="cline-any cline-neutral">&nbsp;</span>
458
596
  <span class="cline-any cline-neutral">&nbsp;</span>
459
597
  <span class="cline-any cline-neutral">&nbsp;</span>
460
598
  <span class="cline-any cline-neutral">&nbsp;</span>
461
- <span class="cline-any cline-yes">2x</span>
462
599
  <span class="cline-any cline-neutral">&nbsp;</span>
463
600
  <span class="cline-any cline-neutral">&nbsp;</span>
464
601
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -473,82 +610,165 @@
473
610
  <span class="cline-any cline-neutral">&nbsp;</span>
474
611
  <span class="cline-any cline-neutral">&nbsp;</span>
475
612
  <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { Component } from 'react';
477
- import { handleNavigation } from '../helpers';
478
- import AnimationGroup from '../AnimationGroup/AnimationGroup';
613
+ <span class="cline-any cline-neutral">&nbsp;</span>
614
+ <span class="cline-any cline-neutral">&nbsp;</span>
615
+ <span class="cline-any cline-neutral">&nbsp;</span>
616
+ <span class="cline-any cline-neutral">&nbsp;</span>
617
+ <span class="cline-any cline-neutral">&nbsp;</span>
618
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { useState, useEffect } from 'react';
479
619
  import PropTypes from 'prop-types';
480
620
  &nbsp;
481
- export default class NavLinkDrawer extends Component {
482
- <span class="fstat-no" title="function not covered" > co</span>nstructor(props) {
483
- <span class="cstat-no" title="statement not covered" > super(props);</span>
484
- <span class="cstat-no" title="statement not covered" > this._toggleDrawer = this.toggleDrawer.bind(this);</span>
485
- <span class="cstat-no" title="statement not covered" > this._isLinkActive = this.isLinkActive.bind(this);</span>
486
- <span class="cstat-no" title="statement not covered" > this._isCurrentPage = this.isCurrentPage.bind(this);</span>
487
- <span class="cstat-no" title="statement not covered" > this._renderDrawerLinksRecursively = this.renderDrawerLinksRecursively.bind(</span>
488
- this
489
- );
490
- <span class="cstat-no" title="statement not covered" > this.state = {</span>
491
- isOpen: !!props.openByDefault,
492
- };
493
- }
494
- &nbsp;
495
- <span class="fstat-no" title="function not covered" > UN</span>SAFE_componentWillMount() {
496
- const { isAlwaysOpen, disabled } = <span class="cstat-no" title="statement not covered" >this.props;</span>
497
- <span class="cstat-no" title="statement not covered" > if (disabled) {</span>
498
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >(s</span>tate) =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: false })</span>);</span>
499
- }
500
- &nbsp;
501
- <span class="cstat-no" title="statement not covered" > if (isAlwaysOpen) {</span>
502
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >(s</span>tate) =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: isAlwaysOpen })</span>);</span>
503
- }
504
- }
621
+ import { handleNavigation } from '../helpers';
622
+ import AnimationGroup from '../AnimationGroup/AnimationGroup';
505
623
  &nbsp;
506
- <span class="fstat-no" title="function not covered" > to</span>ggleDrawer() {
507
- const { isAlwaysOpen, disabled, isExpanded, sidebarExpand } = <span class="cstat-no" title="statement not covered" >this.props;</span>
624
+ const NavLinkDrawer = <span class="fstat-no" title="function not covered" >({</span>
625
+ className,
626
+ disabled,
627
+ isAlwaysOpen,
628
+ isExpanded,
629
+ items,
630
+ label,
631
+ leftIcon,
632
+ linkActiveFunc,
633
+ linkCallback,
634
+ listOfLinks,
635
+ openByDefault,
636
+ rightIcon,
637
+ sidebarExpand,
638
+ staticDrawer,
639
+ url,
640
+ isHighlighted,
641
+ darkerBackground,
642
+ leftBorderHighlightDisabled,
643
+ hideLabelSection,
644
+ largerDrawerBottomPadding,
645
+ }) =&gt; {
646
+ const [isOpen, setIsOpen] = <span class="cstat-no" title="statement not covered" >useState(openByDefault);</span>
647
+ const MANAGE_ACCESS = <span class="cstat-no" title="statement not covered" >'/user/manage-access';</span>
508
648
  &nbsp;
649
+ const toggleDrawer = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >()</span> =&gt; {</span>
509
650
  <span class="cstat-no" title="statement not covered" > if (!isExpanded &amp;&amp; typeof sidebarExpand === 'function') {</span>
510
651
  <span class="cstat-no" title="statement not covered" > sidebarExpand();</span>
511
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >(s</span>tate) =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: true })</span>);</span>
652
+ <span class="cstat-no" title="statement not covered" > setIsOpen(true);</span>
512
653
  <span class="cstat-no" title="statement not covered" > return;</span>
513
654
  }
514
655
  &nbsp;
515
656
  <span class="cstat-no" title="statement not covered" > if (!isAlwaysOpen &amp;&amp; !disabled) {</span>
516
- <span class="cstat-no" title="statement not covered" > this.setState(<span class="fstat-no" title="function not covered" >(s</span>tate) =&gt; (<span class="cstat-no" title="statement not covered" >{ isOpen: !state.isOpen })</span>);</span>
657
+ <span class="cstat-no" title="statement not covered" > setIsOpen(!isOpen);</span>
517
658
  }
518
- }
519
659
  &nbsp;
520
- <span class="fstat-no" title="function not covered" > is</span>LinkActive(link, func) {
660
+ <span class="cstat-no" title="statement not covered" > reRouteHandler();</span>
661
+ };
662
+ &nbsp;
663
+ const reRouteHandler = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >()</span> =&gt; {</span>
664
+ <span class="cstat-no" title="statement not covered" > if (url === MANAGE_ACCESS) {</span>
665
+ <span class="cstat-no" title="statement not covered" > return (window.location.href = MANAGE_ACCESS);</span>
666
+ }
667
+ };
668
+ &nbsp;
669
+ const isLinkActive = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(l</span>ink, func) =&gt; {</span>
521
670
  <span class="cstat-no" title="statement not covered" > if (typeof func === 'function') {</span>
522
671
  <span class="cstat-no" title="statement not covered" > return func(link);</span>
523
672
  }
524
- &nbsp;
525
673
  <span class="cstat-no" title="statement not covered" > return window.location.href.indexOf(link.url) &gt; 0;</span>
526
- }
674
+ };
527
675
  &nbsp;
528
- <span class="fstat-no" title="function not covered" > is</span>CurrentPage(link, linkActiveFunc) {
529
- const items = <span class="cstat-no" title="statement not covered" >link.items || link.listOfLinks;</span>
530
- &nbsp;
531
- <span class="cstat-no" title="statement not covered" > if (link.url &amp;&amp; this._isLinkActive(link, linkActiveFunc)) {</span>
676
+ const isCurrentPage = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(l</span>ink, linkActiveFunc) =&gt; {</span>
677
+ const targetItems = <span class="cstat-no" title="statement not covered" >link.items || link.listOfLinks;</span>
678
+ <span class="cstat-no" title="statement not covered" > if (link.url &amp;&amp; isLinkActive(link, linkActiveFunc)) {</span>
532
679
  <span class="cstat-no" title="statement not covered" > return true;</span>
533
680
  }
534
- &nbsp;
535
681
  <span class="cstat-no" title="statement not covered" > return (</span>
536
- items &amp;&amp; items.some(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >this._isCurrentPage(item, linkActiveFunc))</span>
682
+ targetItems &amp;&amp;
683
+ targetItems.some(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >isCurrentPage(item, linkActiveFunc))</span>
537
684
  );
538
- }
685
+ };
686
+ &nbsp;
687
+ const buildLeftIconClasses = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >()</span> =&gt; {</span>
688
+ let leftIcon = <span class="cstat-no" title="statement not covered" >`left-icon`;</span>
689
+ &nbsp;
690
+ <span class="cstat-no" title="statement not covered" > if (isAlwaysOpen) {</span>
691
+ <span class="cstat-no" title="statement not covered" > leftIcon += ` always-open`;</span>
692
+ }
693
+ &nbsp;
694
+ <span class="cstat-no" title="statement not covered" > if (isHighlighted) {</span>
695
+ <span class="cstat-no" title="statement not covered" > leftIcon += ' fill-white';</span>
696
+ }
697
+ &nbsp;
698
+ <span class="cstat-no" title="statement not covered" > return leftIcon;</span>
699
+ };
700
+ &nbsp;
701
+ // Classes for the link drawer button
702
+ const currentPage = <span class="cstat-no" title="statement not covered" >isCurrentPage(</span>
703
+ { items, listOfLinks, url },
704
+ linkActiveFunc
705
+ );
706
+ const expandedClass = <span class="cstat-no" title="statement not covered" >currentPage ? 'expanded' : '';</span>
707
+ &nbsp;
708
+ const renderLeftIcon = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(l</span>eftIcon) =&gt; {</span>
709
+ <span class="cstat-no" title="statement not covered" > if (leftIcon) {</span>
710
+ <span class="cstat-no" title="statement not covered" > return (</span>
711
+ &lt;svg
712
+ className={`${buildLeftIconClasses()}`}
713
+ aria-hidden="true"
714
+ focusable="false"
715
+ &gt;
716
+ {leftIcon}
717
+ &lt;/svg&gt;
718
+ );
719
+ }
720
+ };
721
+ &nbsp;
722
+ const hasDarkerBackground = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(d</span>arkerBackground) =&gt; {</span>
723
+ <span class="cstat-no" title="statement not covered" > return darkerBackground ? 'background-highlight' : '';</span>
724
+ };
725
+ &nbsp;
726
+ const hasDarkerTitle = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(d</span>arkerBackground) =&gt; {</span>
727
+ <span class="cstat-no" title="statement not covered" > return darkerBackground ? 'expanded currentPage' : '';</span>
728
+ };
729
+ &nbsp;
730
+ const isLeftBorderHighlightDisabled = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(l</span>eftBorderHighlightDisabled) =&gt; {</span>
731
+ <span class="cstat-no" title="statement not covered" > return leftBorderHighlightDisabled ? 'left-border-disabled' : '';</span>
732
+ };
733
+ &nbsp;
734
+ const isLabelSectionHidden = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(h</span>ideLabelSection) =&gt; {</span>
735
+ <span class="cstat-no" title="statement not covered" > return hideLabelSection ? 'hidden-label-section' : '';</span>
736
+ };
737
+ &nbsp;
738
+ const isHiddenWhileCollapsed = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(i</span>sLeftBorderDisabled, isExpanded) =&gt; {</span>
739
+ <span class="cstat-no" title="statement not covered" > return isLeftBorderDisabled &amp;&amp; !isExpanded ? 'hidden-nav-link-item' : '';</span>
740
+ };
741
+ &nbsp;
742
+ const highlightTitle = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(i</span>sHighlighted) =&gt; {</span>
743
+ <span class="cstat-no" title="statement not covered" > return isHighlighted &amp;&amp; isExpanded ? 'highlight' : '';</span>
744
+ };
745
+ &nbsp;
746
+ const hasLargerDrawBottomPadding = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(l</span>argerDrawerBottomPadding) =&gt; {</span>
747
+ <span class="cstat-no" title="statement not covered" > return largerDrawerBottomPadding ? 'larger-drawer-bottom-padding' : '';</span>
748
+ };
749
+ &nbsp;
750
+ const adjustItemSpacing = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(l</span>argerDrawerBottomPadding) =&gt; {</span>
751
+ <span class="cstat-no" title="statement not covered" > return largerDrawerBottomPadding ? 'larger-item-spacing' : '';</span>
752
+ };
753
+ &nbsp;
754
+ <span class="cstat-no" title="statement not covered" > useEffect(<span class="fstat-no" title="function not covered" >()</span> =&gt; {</span>
755
+ <span class="cstat-no" title="statement not covered" > if (disabled) {</span>
756
+ <span class="cstat-no" title="statement not covered" > setIsOpen(false);</span>
757
+ }
758
+ <span class="cstat-no" title="statement not covered" > if (isAlwaysOpen) {</span>
759
+ <span class="cstat-no" title="statement not covered" > setIsOpen(isAlwaysOpen);</span>
760
+ }
761
+ }, []);
539
762
  &nbsp;
540
763
  // Render the links recursively. This will theoretically allow for an infinite number of nested link items.
541
764
  // className will either be empty, parent-link - top most node, or child-link.
542
- <span class="fstat-no" title="function not covered" > re</span>nderDrawerLinksRecursively(navLinks, className = <span class="branch-0 cbranch-no" title="branch not covered" >'')</span> {
543
- const { linkActiveFunc, linkCallback } = <span class="cstat-no" title="statement not covered" >this.props;</span>
544
- const { isOpen } = <span class="cstat-no" title="statement not covered" >this.state;</span>
545
- &nbsp;
765
+ const renderDrawerLinksRecursively = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(n</span>avLinks, className = <span class="branch-0 cbranch-no" title="branch not covered" >'')</span> =&gt; {</span>
546
766
  <span class="cstat-no" title="statement not covered" > return (</span>
547
767
  navLinks &amp;&amp;
548
- navLinks.map(<span class="fstat-no" title="function not covered" >(l</span>ink) =&gt; {
768
+ navLinks.map(<span class="fstat-no" title="function not covered" >(l</span>ink, index) =&gt; {
549
769
  <span class="cstat-no" title="statement not covered" > if (link.type === 'divider') {</span>
550
770
  <span class="cstat-no" title="statement not covered" > return (</span>
551
- &lt;AnimationGroup display={true}&gt;
771
+ &lt;AnimationGroup display={true} key={index}&gt;
552
772
  &lt;hr /&gt;
553
773
  &lt;/AnimationGroup&gt;
554
774
  );
@@ -558,7 +778,7 @@ export default class NavLinkDrawer extends Component {
558
778
  &lt;li
559
779
  key={link.label}
560
780
  className={
561
- this._isLinkActive(link, linkActiveFunc)
781
+ isLinkActive(link, linkActiveFunc)
562
782
  ? `active-link ${className}`
563
783
  : className
564
784
  }
@@ -566,7 +786,7 @@ export default class NavLinkDrawer extends Component {
566
786
  {link.url ? (
567
787
  &lt;a
568
788
  href={link.url}
569
- onClick={<span class="fstat-no" title="function not covered" >(e</span>) =&gt; <span class="cstat-no" title="statement not covered" >handleNavigation(e, linkCallback)}</span>
789
+ onClick={<span class="fstat-no" title="function not covered" >(e</span>) =&gt; <span class="cstat-no" title="statement not covered" >handleNavigation(e, linkCallback, link.label)}</span>
570
790
  tabIndex={isOpen ? '0' : '-1'}
571
791
  data-track-category="SidebarNav"
572
792
  data-track-action={`GoTo${
@@ -582,89 +802,70 @@ export default class NavLinkDrawer extends Component {
582
802
  )}
583
803
  {link.items &amp;&amp; link.items.length &gt; 0 &amp;&amp; (
584
804
  &lt;ul aria-hidden={!isOpen}&gt;
585
- {this._renderDrawerLinksRecursively(link.items, 'child-link')}
805
+ {renderDrawerLinksRecursively(link.items, 'child-link')}
586
806
  &lt;/ul&gt;
587
807
  )}
588
808
  &lt;/li&gt;
589
809
  );
590
810
  })
591
811
  );
592
- }
593
- &nbsp;
594
- <span class="fstat-no" title="function not covered" > re</span>nder() {
595
- const {
596
- isExpanded,
597
- disabled,
598
- isAlwaysOpen,
599
- className,
600
- rightIcon,
601
- leftIcon,
602
- label,
603
- linkActiveFunc,
604
- listOfLinks,
605
- } = <span class="cstat-no" title="statement not covered" >this.props;</span>
606
- const { isOpen } = <span class="cstat-no" title="statement not covered" >this.state;</span>
812
+ };
607
813
  &nbsp;
608
- // Classes for the link drawer button
609
- const currentPage = <span class="cstat-no" title="statement not covered" >this._isCurrentPage(this.props, linkActiveFunc);</span>
610
- const expandedClass = <span class="cstat-no" title="statement not covered" >currentPage ? 'expanded' : '';</span>
611
- &nbsp;
612
- <span class="cstat-no" title="statement not covered" > return (</span>
613
- &lt;div
614
- className={
615
- this.props.staticDrawer ? 'static-drawer link-drawer' : 'link-drawer'
616
- }
814
+ <span class="cstat-no" title="statement not covered" > return (</span>
815
+ &lt;div className={staticDrawer ? 'static-drawer link-drawer' : 'link-drawer'}&gt;
816
+ &lt;button
817
+ onClick={toggleDrawer}
818
+ {...(!isAlwaysOpen ? { 'aria-pressed': isOpen } : {})}
819
+ tabIndex="0"
820
+ aria-label={label}
821
+ {...((url !== MANAGE_ACCESS &amp;&amp; isAlwaysOpen) || disabled
822
+ ? { disabled: isAlwaysOpen || disabled }
823
+ : {})}
824
+ className={`${className} ${expandedClass} ${highlightTitle(
825
+ isHighlighted
826
+ )} ${hasDarkerTitle(darkerBackground)}
827
+ ${currentPage ? 'currentPage' : ''} ${isLeftBorderHighlightDisabled(
828
+ leftBorderHighlightDisabled
829
+ )}
830
+ ${isLabelSectionHidden(hideLabelSection)}
831
+ ${isHiddenWhileCollapsed(leftBorderHighlightDisabled, isExpanded)}`}
617
832
  &gt;
618
- &lt;button
619
- onClick={this._toggleDrawer}
620
- {...(!isAlwaysOpen ? { 'aria-pressed': isOpen } : {})}
621
- tabIndex="0"
622
- aria-label={label}
623
- {...(isAlwaysOpen || disabled
624
- ? { disabled: isAlwaysOpen || disabled }
625
- : {})}
626
- className={`${className} ${expandedClass} ${
627
- currentPage ? 'currentPage' : ''
628
- }`}
629
- &gt;
630
- &lt;div className={isExpanded ? 'link-body' : 'link-body collapsed'}&gt;
631
- &lt;svg
632
- className={`left-icon${isAlwaysOpen ? ' always-open' : ''}`}
633
- aria-hidden="true"
634
- focusable="false"
635
- &gt;
636
- {leftIcon}
637
- &lt;/svg&gt;
638
- &lt;AnimationGroup display={isExpanded}&gt;
639
- &lt;span&gt;{label}&lt;/span&gt;
640
- &lt;/AnimationGroup&gt;
641
- &lt;/div&gt;
642
- {isExpanded &amp;&amp; !isAlwaysOpen &amp;&amp; (
643
- &lt;svg
644
- className={`${isOpen ? 'right-icon rotated' : 'right-icon'}`}
645
- focusable="false"
646
- aria-hidden="true"
647
- &gt;
648
- {rightIcon}
649
- &lt;/svg&gt;
650
- )}
651
- &lt;/button&gt;
652
- &lt;AnimationGroup display={isExpanded}&gt;
653
- &lt;div
654
- className={`${currentPage ? 'currentPage' : ''} ${
655
- isOpen &amp;&amp; !disabled ? 'drawer open' : 'drawer'
656
- }`}
833
+ &lt;div className={isExpanded ? 'link-body' : 'link-body collapsed'}&gt;
834
+ {renderLeftIcon(leftIcon)}
835
+ &lt;AnimationGroup display={isExpanded}&gt;
836
+ &lt;span className="sidebar-inline-link-label"&gt;{label}&lt;/span&gt;
837
+ &lt;/AnimationGroup&gt;
838
+ &lt;/div&gt;
839
+ {isExpanded &amp;&amp; !isAlwaysOpen &amp;&amp; (
840
+ &lt;svg
841
+ className={`${isOpen ? 'right-icon rotated' : 'right-icon'}`}
842
+ focusable="false"
843
+ aria-hidden="true"
657
844
  &gt;
658
- &lt;ul aria-hidden={!isOpen}&gt;
659
- {listOfLinks &amp;&amp;
660
- this._renderDrawerLinksRecursively(listOfLinks, 'parent-link')}
661
- &lt;/ul&gt;
662
- &lt;/div&gt;
663
- &lt;/AnimationGroup&gt;
664
- &lt;/div&gt;
665
- );
666
- }
667
- }
845
+ {rightIcon}
846
+ &lt;/svg&gt;
847
+ )}
848
+ &lt;/button&gt;
849
+ &lt;AnimationGroup display={isExpanded}&gt;
850
+ &lt;div
851
+ className={`${currentPage ? 'currentPage' : ''} ${
852
+ isOpen &amp;&amp; !disabled ? 'drawer open' : 'drawer'
853
+ } ${hasDarkerBackground(
854
+ darkerBackground
855
+ )} ${hasLargerDrawBottomPadding(largerDrawerBottomPadding)}`}
856
+ &gt;
857
+ &lt;ul aria-hidden={!isOpen}&gt;
858
+ {listOfLinks &amp;&amp;
859
+ renderDrawerLinksRecursively(
860
+ listOfLinks,
861
+ `parent-link ${adjustItemSpacing(largerDrawerBottomPadding)}`
862
+ )}
863
+ &lt;/ul&gt;
864
+ &lt;/div&gt;
865
+ &lt;/AnimationGroup&gt;
866
+ &lt;/div&gt;
867
+ );
868
+ };
668
869
  &nbsp;
669
870
  NavLinkDrawer.propTypes = {
670
871
  isExpanded: PropTypes.bool,
@@ -680,17 +881,25 @@ NavLinkDrawer.propTypes = {
680
881
  disabled: PropTypes.bool,
681
882
  sidebarExpand: PropTypes.func,
682
883
  staticDrawer: PropTypes.bool,
884
+ items: PropTypes.object,
885
+ url: PropTypes.string,
886
+ isHighlighted: PropTypes.bool,
887
+ darkerBackground: PropTypes.bool,
888
+ leftBorderHighlightDisabled: PropTypes.bool,
889
+ hideLabelSection: PropTypes.bool,
890
+ largerDrawerBottomPadding: PropTypes.bool,
683
891
  };
892
+ &nbsp;
893
+ export default NavLinkDrawer;
684
894
  &nbsp;</pre></td></tr></table></pre>
685
895
 
686
896
  <div class='push'></div><!-- for sticky footer -->
687
897
  </div><!-- /wrapper -->
688
898
  <div class='footer quiet pad2 space-top1 center small'>
689
899
  Code coverage generated by
690
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
691
- at Mon Oct 05 2020 11:31:16 GMT-0700 (Pacific Daylight Time)
900
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
901
+ at Mon Mar 06 2023 14:49:52 GMT-0800 (Pacific Standard Time)
692
902
  </div>
693
- </div>
694
903
  <script src="../../../../prettify.js"></script>
695
904
  <script>
696
905
  window.onload = function () {