qpp-style 2.1.13 → 2.2.0-sm.0

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 (590) hide show
  1. package/.babelrc +10 -0
  2. package/.editorconfig +22 -0
  3. package/.eslintignore +5 -0
  4. package/.eslintrc.js +32 -0
  5. package/.husky/pre-commit +5 -0
  6. package/.prettierrc +1 -0
  7. package/README.md +50 -55
  8. package/components/Accordion/index.jsx +97 -0
  9. package/components/Alert/index.js +53 -0
  10. package/components/Breadcrumb/Breadcrumb.md +28 -0
  11. package/components/Breadcrumb/index.js +83 -0
  12. package/components/Button/index.js +90 -0
  13. package/components/Details/DetailsIcons.js +50 -0
  14. package/components/Details/index.js +53 -0
  15. package/components/Dropdown/index.js +85 -0
  16. package/components/DropdownButton/Menu.js +25 -0
  17. package/components/DropdownButton/MenuButton.js +41 -0
  18. package/components/DropdownButton/MenuItem.js +25 -0
  19. package/components/DropdownButton/MenuItemLink.js +27 -0
  20. package/components/Error/Collapsible.jsx +88 -0
  21. package/components/Error/ErrorUI.jsx +31 -0
  22. package/components/Error/error.js +26 -0
  23. package/components/FlashNotification/FlashNotificationUI.jsx +91 -0
  24. package/components/FlashNotification/index.js +30 -0
  25. package/components/Footer/FooterUI.jsx +210 -0
  26. package/components/Footer/SocialLinks.jsx +60 -0
  27. package/components/Footer/Subscribe.jsx +34 -0
  28. package/components/Footer/footer.js +20 -0
  29. package/components/GovBanner/index.js +117 -0
  30. package/components/Header/Header.md +111 -0
  31. package/components/Header/HeaderAccountMenu.jsx +94 -0
  32. package/components/Header/HeaderCancel.jsx +16 -0
  33. package/components/Header/HeaderContainer.jsx +76 -0
  34. package/components/Header/HeaderLogo.jsx +60 -0
  35. package/components/Header/HeaderMenuButton.js +50 -0
  36. package/components/Header/HeaderMenuItem.jsx +239 -0
  37. package/components/Header/HeaderMenuLink.js +56 -0
  38. package/components/Header/HeaderMenuSignOutButton.js +62 -0
  39. package/components/Header/HeaderMobileButton.js +37 -0
  40. package/components/Header/HeaderUI.jsx +168 -0
  41. package/components/Header/HelpIcon.jsx +32 -0
  42. package/components/Header/ImpersonatorBanner.jsx +81 -0
  43. package/components/Header/NavigationButtonIcon.jsx +27 -0
  44. package/components/Header/default-content.json +280 -0
  45. package/components/Header/header.js +40 -0
  46. package/components/Header/hooks.js +66 -0
  47. package/components/Header/utag-helpers.js +9 -0
  48. package/components/Infotip/Infotip.jsx +71 -0
  49. package/components/Infotip/InfotipContent.jsx +46 -0
  50. package/components/Infotip/InfotipIcon.jsx +41 -0
  51. package/components/Infotip/index.js +3 -0
  52. package/components/Link/index.js +61 -0
  53. package/components/Modal/LegacyModal.jsx +72 -0
  54. package/components/Modal/Modal.jsx +140 -0
  55. package/components/Modal/index.jsx +22 -0
  56. package/components/NotificationBanner/CollapsedView.js +39 -0
  57. package/components/NotificationBanner/ExpandedView.js +45 -0
  58. package/components/NotificationBanner/index.js +221 -0
  59. package/components/SanitizedContent/index.jsx +223 -0
  60. package/components/Search/index.js +98 -0
  61. package/components/Session/Session.jsx +89 -0
  62. package/components/Session/SessionDialogWrapped.jsx +12 -0
  63. package/components/Session/index.jsx +3 -0
  64. package/components/SideNav/AnimationGroup/AnimationGroup.jsx +27 -0
  65. package/components/SideNav/Content/LevelOneContent.jsx +49 -0
  66. package/components/SideNav/Content/SelectRole/index.js +78 -0
  67. package/components/SideNav/Content/SelectRole/utils.js +149 -0
  68. package/components/SideNav/Content/index.js +3 -0
  69. package/components/SideNav/Details/IndividualDetails.jsx +18 -0
  70. package/components/SideNav/Details/PracticeDetails.jsx +51 -0
  71. package/components/SideNav/Details/index.js +4 -0
  72. package/components/SideNav/Links/CmsSwitchLink.jsx +41 -0
  73. package/components/SideNav/Links/NavItemInline.jsx +54 -0
  74. package/components/SideNav/Links/NavLinkContainer.jsx +38 -0
  75. package/components/SideNav/Links/NavLinkDrawer.jsx +295 -0
  76. package/components/SideNav/Links/NavLinkInline.jsx +110 -0
  77. package/components/SideNav/Links/NavLinkToggle.jsx +34 -0
  78. package/components/SideNav/Links/index.js +13 -0
  79. package/components/SideNav/SideNav.md +50 -0
  80. package/components/SideNav/UI/SideNavUI.jsx +323 -0
  81. package/components/SideNav/UI/default-markup.js +4 -0
  82. package/components/SideNav/UI/index.js +3 -0
  83. package/components/SideNav/UI/utils.js +0 -0
  84. package/components/SideNav/helpers.js +399 -0
  85. package/components/SideNav/index.js +29 -0
  86. package/components/Tabs/TabPanel.js +5 -0
  87. package/components/Tabs/Tabs.js +73 -0
  88. package/components/TextInput/index.js +137 -0
  89. package/components/hooks/useGetConfig.js +75 -0
  90. package/components/index.js +122 -0
  91. package/coverage/clover.xml +1324 -0
  92. package/coverage/coverage-final.json +71 -0
  93. package/coverage/lcov-report/Tooltip.jsx.html +232 -0
  94. package/coverage/lcov-report/base.css +224 -0
  95. package/coverage/lcov-report/block-navigation.js +87 -0
  96. package/coverage/lcov-report/components/Accordion/index.html +116 -0
  97. package/coverage/lcov-report/components/Accordion/index.jsx.html +364 -0
  98. package/coverage/lcov-report/components/Button/index.html +116 -0
  99. package/coverage/lcov-report/components/Button/index.js.html +355 -0
  100. package/coverage/lcov-report/components/Error/Collapsible.jsx.html +349 -0
  101. package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +178 -0
  102. package/coverage/lcov-report/components/Error/index.html +131 -0
  103. package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +706 -0
  104. package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +265 -0
  105. package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +187 -0
  106. package/coverage/lcov-report/components/Footer/index.html +146 -0
  107. package/coverage/lcov-report/components/GovBanner/index.html +116 -0
  108. package/coverage/lcov-report/components/GovBanner/index.js.html +436 -0
  109. package/coverage/lcov-report/components/Header/HeaderAccountMenu.jsx.html +367 -0
  110. package/coverage/lcov-report/components/Header/HeaderCancel.jsx.html +133 -0
  111. package/coverage/lcov-report/components/Header/HeaderContainer.jsx.html +307 -0
  112. package/coverage/lcov-report/components/Header/HeaderLogo.jsx.html +211 -0
  113. package/coverage/lcov-report/components/Header/HeaderMenuButton.js.html +235 -0
  114. package/coverage/lcov-report/components/Header/HeaderMenuItem.jsx.html +802 -0
  115. package/coverage/lcov-report/components/Header/HeaderMenuLink.js.html +253 -0
  116. package/coverage/lcov-report/components/Header/HeaderMenuSignOutButton.js.html +271 -0
  117. package/coverage/lcov-report/components/Header/HeaderMobileButton.js.html +196 -0
  118. package/coverage/lcov-report/components/Header/HeaderUI.jsx.html +586 -0
  119. package/coverage/lcov-report/components/Header/HelpIcon.jsx.html +181 -0
  120. package/coverage/lcov-report/components/Header/ImpersonatorBanner.jsx.html +328 -0
  121. package/coverage/lcov-report/components/Header/NavigationButtonIcon.jsx.html +166 -0
  122. package/coverage/lcov-report/components/Header/hooks.js.html +283 -0
  123. package/coverage/lcov-report/components/Header/index.html +326 -0
  124. package/coverage/lcov-report/components/Header/utag-helpers.js.html +112 -0
  125. package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +310 -0
  126. package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +208 -0
  127. package/coverage/lcov-report/components/Infotip/index.html +146 -0
  128. package/coverage/lcov-report/components/Infotip/index.js.html +94 -0
  129. package/coverage/lcov-report/components/Modal/LegacyModal.jsx.html +301 -0
  130. package/coverage/lcov-report/components/Modal/Modal.jsx.html +505 -0
  131. package/coverage/lcov-report/components/Modal/index.html +146 -0
  132. package/coverage/lcov-report/components/Modal/index.jsx.html +151 -0
  133. package/coverage/lcov-report/components/NotificationBanner/CollapsedView.js.html +202 -0
  134. package/coverage/lcov-report/components/NotificationBanner/ExpandedView.js.html +220 -0
  135. package/coverage/lcov-report/components/NotificationBanner/index.html +146 -0
  136. package/coverage/lcov-report/components/NotificationBanner/index.js.html +748 -0
  137. package/coverage/lcov-report/components/SanitizedContent/index.html +116 -0
  138. package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +685 -0
  139. package/coverage/lcov-report/components/SessionDialogUI.jsx.html +868 -0
  140. package/coverage/lcov-report/components/SideNav/Content/SelectRole/index.html +116 -0
  141. package/coverage/lcov-report/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  142. package/coverage/lcov-report/components/SideNav/helpers.js.html +1138 -0
  143. package/coverage/lcov-report/components/SideNav/index.html +116 -0
  144. package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +349 -0
  145. package/coverage/lcov-report/components/Tooltip/index.html +146 -0
  146. package/coverage/lcov-report/components/Tooltip/index.js.html +94 -0
  147. package/coverage/lcov-report/components/Tooltip/position.js.html +289 -0
  148. package/coverage/lcov-report/components/hooks/index.html +116 -0
  149. package/coverage/lcov-report/components/hooks/useGetConfig.js.html +310 -0
  150. package/coverage/lcov-report/components/index.html +116 -0
  151. package/coverage/lcov-report/favicon.png +0 -0
  152. package/coverage/lcov-report/index.html +476 -0
  153. package/coverage/lcov-report/index.js.html +94 -0
  154. package/coverage/lcov-report/lib/Chevron.jsx.html +181 -0
  155. package/coverage/lcov-report/lib/SvgComponents.jsx.html +2200 -0
  156. package/coverage/lcov-report/lib/index.html +131 -0
  157. package/coverage/lcov-report/position.js.html +289 -0
  158. package/coverage/lcov-report/prettify.css +1 -0
  159. package/coverage/lcov-report/prettify.js +2 -0
  160. package/coverage/lcov-report/react/components/Accordion/index.html +116 -0
  161. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +376 -0
  162. package/coverage/lcov-report/react/components/Button/index.html +116 -0
  163. package/coverage/lcov-report/react/components/Button/index.js.html +355 -0
  164. package/coverage/lcov-report/react/components/Dropdown/index.html +116 -0
  165. package/coverage/lcov-report/react/components/Dropdown/index.js.html +340 -0
  166. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +349 -0
  167. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +178 -0
  168. package/coverage/lcov-report/react/components/Error/error.js.html +163 -0
  169. package/coverage/lcov-report/react/components/Error/index.html +146 -0
  170. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +718 -0
  171. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +265 -0
  172. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +187 -0
  173. package/coverage/lcov-report/react/components/Footer/footer.js.html +145 -0
  174. package/coverage/lcov-report/react/components/Footer/index.html +161 -0
  175. package/coverage/lcov-report/react/components/GovBanner/index.html +116 -0
  176. package/coverage/lcov-report/react/components/GovBanner/index.js.html +436 -0
  177. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +367 -0
  178. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +133 -0
  179. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +307 -0
  180. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +211 -0
  181. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +235 -0
  182. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +802 -0
  183. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +253 -0
  184. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +271 -0
  185. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +196 -0
  186. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +586 -0
  187. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +181 -0
  188. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +334 -0
  189. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +166 -0
  190. package/coverage/lcov-report/react/components/Header/header.js.html +205 -0
  191. package/coverage/lcov-report/react/components/Header/hooks.js.html +283 -0
  192. package/coverage/lcov-report/react/components/Header/index.html +341 -0
  193. package/coverage/lcov-report/react/components/Header/utag-helpers.js.html +112 -0
  194. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +298 -0
  195. package/coverage/lcov-report/react/components/Infotip/InfotipContent.jsx.html +223 -0
  196. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +208 -0
  197. package/coverage/lcov-report/react/components/Infotip/index.html +161 -0
  198. package/coverage/lcov-report/react/components/Infotip/index.js.html +94 -0
  199. package/coverage/lcov-report/react/components/Modal/LegacyModal.jsx.html +301 -0
  200. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +505 -0
  201. package/coverage/lcov-report/react/components/Modal/index.html +146 -0
  202. package/coverage/lcov-report/react/components/Modal/index.jsx.html +151 -0
  203. package/coverage/lcov-report/react/components/NotificationBanner/CollapsedView.js.html +202 -0
  204. package/coverage/lcov-report/react/components/NotificationBanner/ExpandedView.js.html +220 -0
  205. package/coverage/lcov-report/react/components/NotificationBanner/index.html +146 -0
  206. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +748 -0
  207. package/coverage/lcov-report/react/components/SanitizedContent/index.html +116 -0
  208. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +754 -0
  209. package/coverage/lcov-report/react/components/SessionDialog/index.html +116 -0
  210. package/coverage/lcov-report/react/components/SessionDialog/sessionDialog.js.html +163 -0
  211. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +868 -0
  212. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +166 -0
  213. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +116 -0
  214. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +889 -0
  215. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +131 -0
  216. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +94 -0
  217. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +199 -0
  218. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +733 -0
  219. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.html +131 -0
  220. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +214 -0
  221. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +139 -0
  222. package/coverage/lcov-report/react/components/SideNav/Content/index.html +131 -0
  223. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +94 -0
  224. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +139 -0
  225. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +220 -0
  226. package/coverage/lcov-report/react/components/SideNav/Details/index.html +146 -0
  227. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +97 -0
  228. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +208 -0
  229. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +247 -0
  230. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +199 -0
  231. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +970 -0
  232. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +415 -0
  233. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +187 -0
  234. package/coverage/lcov-report/react/components/SideNav/Links/index.html +206 -0
  235. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +124 -0
  236. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +1060 -0
  237. package/coverage/lcov-report/react/components/SideNav/UI/default-markup.js.html +97 -0
  238. package/coverage/lcov-report/react/components/SideNav/UI/index.html +146 -0
  239. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +94 -0
  240. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +361 -0
  241. package/coverage/lcov-report/react/components/SideNav/index.html +131 -0
  242. package/coverage/lcov-report/react/components/SideNav/index.js.html +238 -0
  243. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +232 -0
  244. package/coverage/lcov-report/react/components/Tooltip/index.html +146 -0
  245. package/coverage/lcov-report/react/components/Tooltip/index.js.html +94 -0
  246. package/coverage/lcov-report/react/components/Tooltip/position.js.html +289 -0
  247. package/coverage/lcov-report/react/components/hooks/index.html +116 -0
  248. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +310 -0
  249. package/coverage/lcov-report/react/components/index.html +116 -0
  250. package/coverage/lcov-report/react/index.html +116 -0
  251. package/coverage/lcov-report/react/index.js.html +178 -0
  252. package/coverage/lcov-report/react/lib/Chevron.jsx.html +181 -0
  253. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +2200 -0
  254. package/coverage/lcov-report/react/lib/index.html +131 -0
  255. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +460 -0
  256. package/coverage/lcov-report/react/session/index.html +161 -0
  257. package/coverage/lcov-report/react/session/index.js.html +100 -0
  258. package/coverage/lcov-report/react/session/logout.js.html +283 -0
  259. package/coverage/lcov-report/react/session/refresh.js.html +232 -0
  260. package/coverage/lcov-report/react/session/ttl.js.html +196 -0
  261. package/coverage/lcov-report/session/index.html +161 -0
  262. package/coverage/lcov-report/session/index.js.html +100 -0
  263. package/coverage/lcov-report/session/logout.js.html +307 -0
  264. package/coverage/lcov-report/session/refresh.js.html +232 -0
  265. package/coverage/lcov-report/session/ttl.js.html +196 -0
  266. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  267. package/coverage/lcov-report/sorter.js +196 -0
  268. package/coverage/lcov.info +2883 -0
  269. package/dist/browser.js +3 -53
  270. package/dist/browser.js.LICENSE.txt +31 -0
  271. package/dist/browser.js.map +1 -0
  272. package/dist/index.js +3 -53
  273. package/dist/index.js.LICENSE.txt +31 -0
  274. package/dist/index.js.map +1 -0
  275. package/dist/react/index.js +3 -0
  276. package/dist/react/index.js.LICENSE.txt +54 -0
  277. package/dist/react/index.js.map +1 -0
  278. package/fonts/PublicSans-Black.ttf +0 -0
  279. package/fonts/PublicSans-BlackItalic.ttf +0 -0
  280. package/fonts/PublicSans-Bold.ttf +0 -0
  281. package/fonts/PublicSans-BoldItalic.ttf +0 -0
  282. package/fonts/PublicSans-ExtraBold.ttf +0 -0
  283. package/fonts/PublicSans-ExtraBoldItalic.ttf +0 -0
  284. package/fonts/PublicSans-ExtraLight.ttf +0 -0
  285. package/fonts/PublicSans-ExtraLightItalic.ttf +0 -0
  286. package/fonts/PublicSans-Italic.ttf +0 -0
  287. package/fonts/PublicSans-Light.ttf +0 -0
  288. package/fonts/PublicSans-LightItalic.ttf +0 -0
  289. package/fonts/PublicSans-Medium.ttf +0 -0
  290. package/fonts/PublicSans-MediumItalic.ttf +0 -0
  291. package/fonts/PublicSans-Regular.ttf +0 -0
  292. package/fonts/PublicSans-SemiBold.ttf +0 -0
  293. package/fonts/PublicSans-SemiBoldItalic.ttf +0 -0
  294. package/fonts/PublicSans-Thin.ttf +0 -0
  295. package/fonts/PublicSans-ThinItalic.ttf +0 -0
  296. package/images/favicon/manifest.json +3 -3
  297. package/images/hhs-logo-black.svg +10 -0
  298. package/images/icon-dot-gov.svg +1 -0
  299. package/images/icon-https.svg +1 -0
  300. package/images/icons/close-x.svg +6 -0
  301. package/images/icons/svg/arrow-down.svg +3 -0
  302. package/images/icons/svg/arrow-download.svg +1 -0
  303. package/images/icons/svg/arrow-right.svg +1 -0
  304. package/images/icons/svg/arrow-up.svg +3 -0
  305. package/images/icons/svg/block.svg +5 -0
  306. package/images/icons/svg/calendar.svg +1 -0
  307. package/images/icons/svg/check-circle.svg +5 -0
  308. package/images/icons/svg/checkmark.svg +7 -0
  309. package/images/icons/svg/chevron-down.svg +11 -0
  310. package/images/icons/svg/chevron-left.svg +12 -0
  311. package/images/icons/svg/chevron-right.svg +12 -0
  312. package/images/icons/svg/chevron-up.svg +12 -0
  313. package/images/icons/svg/clipboard.svg +1 -0
  314. package/images/icons/svg/close.svg +1 -0
  315. package/images/icons/svg/divide.svg +13 -0
  316. package/images/icons/svg/doctors-and-clinicians-preview.svg +10 -0
  317. package/images/icons/svg/download.svg +1 -0
  318. package/images/icons/svg/dropdown-arrow.svg +1 -0
  319. package/images/icons/svg/equals.svg +13 -0
  320. package/images/icons/svg/exclamation.svg +10 -0
  321. package/images/icons/svg/external.svg +1 -0
  322. package/images/icons/svg/file-download.svg +1 -0
  323. package/images/icons/svg/file-upload.svg +1 -0
  324. package/images/icons/svg/info.svg +17 -0
  325. package/images/icons/svg/manage-user-access.svg +8 -0
  326. package/images/icons/svg/multiply.svg +12 -0
  327. package/images/icons/svg/performance-feedback.svg +1 -0
  328. package/images/icons/svg/plus.svg +12 -0
  329. package/images/icons/svg/preview.svg +15 -0
  330. package/images/icons/svg/print.svg +1 -0
  331. package/images/icons/svg/registration.svg +8 -0
  332. package/images/icons/svg/reporting.svg +15 -0
  333. package/images/icons/svg/save-disk.svg +5 -0
  334. package/images/icons/svg/search.svg +1 -0
  335. package/images/icons/svg/subtract.svg +15 -0
  336. package/images/icons/svg/targeted-review.svg +15 -0
  337. package/images/icons/svg/tooltip-question.svg +1 -0
  338. package/images/icons/svg/trash.svg +1 -0
  339. package/images/icons/svg/upload.svg +1 -0
  340. package/images/us_flag_small.png +0 -0
  341. package/index.js +31 -0
  342. package/jest/mediaFileTransformer.js +9 -0
  343. package/jest.config.js +188 -0
  344. package/lib/Chevron.jsx +32 -0
  345. package/lib/SvgComponents.jsx +705 -0
  346. package/lib/svg-definitions.svg +125 -0
  347. package/package.json +70 -55
  348. package/{js/session → session}/index.js +1 -5
  349. package/session/isAuthV2.js +22 -0
  350. package/session/logout.js +77 -0
  351. package/session/refresh.js +52 -0
  352. package/session/ttl.js +25 -0
  353. package/storybook-static/229.630347465201d1822126.manager.bundle.js +1 -0
  354. package/storybook-static/295.aa3c5122636a27ad7c7b.manager.bundle.js +1 -0
  355. package/storybook-static/468.d976c69e47003b4dcfa3.manager.bundle.js +2 -0
  356. package/storybook-static/468.d976c69e47003b4dcfa3.manager.bundle.js.LICENSE.txt +94 -0
  357. package/storybook-static/51.fc4b02f2a75c894ae64e.manager.bundle.js +2 -0
  358. package/storybook-static/51.fc4b02f2a75c894ae64e.manager.bundle.js.LICENSE.txt +8 -0
  359. package/storybook-static/551.45aead073703cc6fb12b.manager.bundle.js +1 -0
  360. package/storybook-static/807.1a7f4dcf15e4696572ca.manager.bundle.js +2 -0
  361. package/storybook-static/807.1a7f4dcf15e4696572ca.manager.bundle.js.LICENSE.txt +31 -0
  362. package/storybook-static/897.9b5fee8cc7074607c812.manager.bundle.js +2 -0
  363. package/storybook-static/897.9b5fee8cc7074607c812.manager.bundle.js.LICENSE.txt +12 -0
  364. package/storybook-static/935.532759f0652585685af7.manager.bundle.js +1 -0
  365. package/storybook-static/favicon.ico +0 -0
  366. package/storybook-static/index.html +59 -0
  367. package/storybook-static/main.ad4edcd27d527a119d7a.manager.bundle.js +1 -0
  368. package/storybook-static/project.json +1 -0
  369. package/storybook-static/runtime~main.b165398bf7ef3e30d431.manager.bundle.js +1 -0
  370. package/styles/_global.scss +81 -59
  371. package/styles/_main.scss +11 -3
  372. package/styles/_paths.scss +1 -1
  373. package/styles/_qpp-style.scss +7 -4
  374. package/styles/components/_accordion.scss +273 -149
  375. package/styles/components/_alerts.scss +5 -7
  376. package/styles/components/_autocomplete.scss +47 -0
  377. package/styles/components/_breadcrumbs.scss +18 -17
  378. package/styles/components/_buttons.scss +536 -384
  379. package/styles/components/_error-page.scss +56 -0
  380. package/styles/components/_flash-notification.scss +98 -0
  381. package/styles/components/_fonts.scss +12 -13
  382. package/styles/components/_forms.scss +144 -70
  383. package/styles/components/_grid.scss +26 -20
  384. package/styles/components/_info-modal.scss +52 -27
  385. package/styles/components/_links.scss +4 -3
  386. package/styles/components/_modals.scss +10 -9
  387. package/styles/components/_notification-banner.scss +166 -0
  388. package/styles/components/_panels.scss +23 -21
  389. package/styles/components/_pie-chart.scss +3 -3
  390. package/styles/components/_score-chart.scss +135 -105
  391. package/styles/components/_spinner.scss +7 -0
  392. package/styles/components/_tables.scss +96 -72
  393. package/styles/components/_tabs.scss +69 -0
  394. package/styles/components/_text.scss +114 -48
  395. package/styles/components/_tooltip.scss +23 -0
  396. package/styles/components/_variables.scss +84 -58
  397. package/styles/components/_wells.scss +39 -29
  398. package/styles/qppds/README.md +0 -0
  399. package/styles/qppds/base/_backgrounds.scss +7 -0
  400. package/styles/qppds/base/_fonts.scss +50 -0
  401. package/styles/qppds/base/_icon.scss +31 -0
  402. package/styles/qppds/base/_layout.scss +5 -0
  403. package/styles/qppds/base/_typography.scss +97 -0
  404. package/styles/qppds/base/index.scss +8 -0
  405. package/styles/qppds/components/_alert.scss +101 -0
  406. package/styles/qppds/components/_breadcrumbs.scss +93 -0
  407. package/styles/qppds/components/_button.scss +306 -0
  408. package/styles/qppds/components/_card.scss +176 -0
  409. package/styles/qppds/components/_checkbox.scss +201 -0
  410. package/styles/qppds/components/_circular-loader.scss +47 -0
  411. package/styles/qppds/components/_details.scss +91 -0
  412. package/styles/qppds/components/_dropdown-menu.scss +126 -0
  413. package/styles/qppds/components/_dropdown.scss +56 -0
  414. package/styles/qppds/components/_footer.scss +606 -0
  415. package/styles/qppds/components/_gov-banner.scss +342 -0
  416. package/styles/qppds/components/_header.scss +913 -0
  417. package/styles/qppds/components/_link.scss +54 -0
  418. package/styles/qppds/components/_modal.scss +153 -0
  419. package/styles/qppds/components/_page-header.scss +105 -0
  420. package/styles/qppds/components/_pagination.scss +230 -0
  421. package/styles/qppds/components/_process-list.scss +106 -0
  422. package/styles/qppds/components/_radio-button.scss +185 -0
  423. package/styles/qppds/components/_search.scss +163 -0
  424. package/styles/qppds/components/_sidebar.scss +10 -0
  425. package/styles/qppds/components/_step-indicator.scss +193 -0
  426. package/styles/qppds/components/_table.scss +159 -0
  427. package/styles/qppds/components/_tabs.scss +199 -0
  428. package/styles/qppds/components/_text-input.scss +60 -0
  429. package/styles/qppds/components/index.scss +25 -0
  430. package/styles/qppds/components/sidebar/_animations.scss +38 -0
  431. package/styles/{components → qppds/components}/sidebar/_cms.scss +19 -6
  432. package/styles/{components → qppds/components}/sidebar/_details.scss +28 -21
  433. package/styles/qppds/components/sidebar/_links.scss +462 -0
  434. package/styles/qppds/components/sidebar/_select-role-dropdown.scss +21 -0
  435. package/styles/qppds/components/sidebar/_sidebar-animation.scss +117 -0
  436. package/styles/qppds/components/sidebar/_sidebar-tooltip.scss +33 -0
  437. package/styles/qppds/components/sidebar/_sidebar.scss +145 -0
  438. package/styles/qppds/components/sidebar/project-specific/_wi.scss +42 -0
  439. package/styles/qppds/index.scss +4 -0
  440. package/styles/qppds/settings/_functions.scss +6 -0
  441. package/styles/qppds/settings/_index.scss +3 -0
  442. package/styles/qppds/settings/mixins/_borders.scss +6 -0
  443. package/styles/qppds/settings/mixins/_focus.scss +30 -0
  444. package/styles/qppds/settings/mixins/_icons.scss +43 -0
  445. package/styles/qppds/settings/mixins/_index.scss +8 -0
  446. package/styles/qppds/settings/mixins/_layout.scss +74 -0
  447. package/styles/qppds/settings/mixins/_lists.scss +12 -0
  448. package/styles/qppds/settings/mixins/_table.scss +92 -0
  449. package/styles/qppds/settings/mixins/_type.scss +90 -0
  450. package/styles/qppds/settings/mixins/_visually-hidden.scss +30 -0
  451. package/styles/qppds/settings/variables/_color.scss +86 -0
  452. package/styles/qppds/settings/variables/_index.scss +4 -0
  453. package/styles/qppds/settings/variables/_layout.scss +69 -0
  454. package/styles/qppds/settings/variables/_type.scss +135 -0
  455. package/styles/qppds/settings/variables/_z-index.scss +8 -0
  456. package/styles/qppds/utilities/_background-color.scss +134 -0
  457. package/styles/qppds/utilities/_color.scss +40 -0
  458. package/styles/qppds/utilities/_display-visibility.scss +84 -0
  459. package/styles/qppds/utilities/_flexbox.scss +240 -0
  460. package/styles/qppds/utilities/_font-family.scss +10 -0
  461. package/styles/qppds/utilities/_font-size.scss +8 -0
  462. package/styles/qppds/utilities/_font-weight.scss +10 -0
  463. package/styles/qppds/utilities/_gap.scss +38 -0
  464. package/styles/qppds/utilities/_height.scss +81 -0
  465. package/styles/qppds/utilities/_list-style.scss +17 -0
  466. package/styles/qppds/utilities/_margin.scss +136 -0
  467. package/styles/qppds/utilities/_padding.scss +76 -0
  468. package/styles/qppds/utilities/_position.scss +24 -0
  469. package/styles/qppds/utilities/_text-align.scss +40 -0
  470. package/styles/qppds/utilities/_text-transform.scss +7 -0
  471. package/styles/qppds/utilities/_truncate.scss +8 -0
  472. package/styles/qppds/utilities/_vertical-align.scss +72 -0
  473. package/styles/qppds/utilities/_width.scss +82 -0
  474. package/styles/qppds/utilities/index.scss +17 -0
  475. package/styles/qppds.scss +2 -0
  476. package/styles/third-party/_legacy-bootstrap.scss +19 -0
  477. package/styles/third-party/legacy-bootstrap/_buttons.scss +126 -0
  478. package/styles/third-party/legacy-bootstrap/_dropdowns.scss +211 -0
  479. package/styles/third-party/legacy-bootstrap/_forms.scss +510 -0
  480. package/styles/third-party/legacy-bootstrap/_grid.scss +73 -0
  481. package/styles/third-party/legacy-bootstrap/_mixins.scss +27 -0
  482. package/styles/third-party/legacy-bootstrap/_navbar.scss +644 -0
  483. package/styles/third-party/legacy-bootstrap/_navs.scss +193 -0
  484. package/styles/third-party/legacy-bootstrap/_normalize.scss +385 -0
  485. package/styles/third-party/legacy-bootstrap/_scaffolding.scss +116 -0
  486. package/styles/third-party/legacy-bootstrap/_variables.scss +858 -0
  487. package/styles/third-party/legacy-bootstrap/mixins/_buttons.scss +70 -0
  488. package/styles/third-party/legacy-bootstrap/mixins/_clearfix.scss +22 -0
  489. package/styles/third-party/legacy-bootstrap/mixins/_forms.scss +108 -0
  490. package/styles/third-party/legacy-bootstrap/mixins/_grid-framework.scss +86 -0
  491. package/styles/third-party/legacy-bootstrap/mixins/_grid.scss +112 -0
  492. package/styles/third-party/legacy-bootstrap/mixins/_labels.scss +12 -0
  493. package/styles/third-party/legacy-bootstrap/mixins/_nav-divider.scss +10 -0
  494. package/styles/third-party/legacy-bootstrap/mixins/_nav-vertical-align.scss +9 -0
  495. package/styles/third-party/legacy-bootstrap/mixins/_opacity.scss +7 -0
  496. package/styles/third-party/legacy-bootstrap/mixins/_panels.scss +30 -0
  497. package/styles/third-party/legacy-bootstrap/mixins/_reset-filter.scss +7 -0
  498. package/styles/third-party/legacy-bootstrap/mixins/_reset-text.scss +18 -0
  499. package/styles/third-party/legacy-bootstrap/mixins/_resize.scss +6 -0
  500. package/styles/third-party/legacy-bootstrap/mixins/_responsive-visibility.scss +25 -0
  501. package/styles/third-party/legacy-bootstrap/mixins/_size.scss +10 -0
  502. package/styles/third-party/legacy-bootstrap/mixins/_tab-focus.scss +9 -0
  503. package/styles/third-party/legacy-bootstrap/mixins/_table-row.scss +28 -0
  504. package/styles/third-party/legacy-bootstrap/mixins/_text-emphasis.scss +12 -0
  505. package/styles/third-party/legacy-bootstrap/mixins/_text-overflow.scss +8 -0
  506. package/styles/third-party/legacy-bootstrap/mixins/_vendor-prefixes.scss +182 -0
  507. package/styles/utility/_mixins.scss +12 -11
  508. package/styles/utility/_utilities.scss +12 -1
  509. package/svgo.config.js +14 -0
  510. package/test/components/Accordion.test.js +12 -0
  511. package/test/components/ErrorUI.test.js +33 -0
  512. package/test/components/FooterUI.test.js +60 -0
  513. package/test/components/HeaderUI.test.js +35 -0
  514. package/test/components/Infotip.test.js +79 -0
  515. package/test/components/SideNavUI.test.js +23 -0
  516. package/test/index.test.js +8 -0
  517. package/test/session/session.test.js +221 -0
  518. package/test-setup.js +1 -0
  519. package/webpack.config.js +137 -0
  520. package/webpack.config.react.js +75 -0
  521. package/Dockerfile +0 -27
  522. package/Jenkinsfile +0 -22
  523. package/_config.dev.yml +0 -17
  524. package/_layouts/base.html +0 -42
  525. package/css/main.scss +0 -5
  526. package/dist/default.css +0 -2
  527. package/dist/default.css.map +0 -1
  528. package/dist/fonts/FontAwesome.otf +0 -0
  529. package/dist/fonts/Rubik-Bold.ttf +0 -0
  530. package/dist/fonts/Rubik-Light.ttf +0 -0
  531. package/dist/fonts/Rubik-Medium.ttf +0 -0
  532. package/dist/fonts/Rubik-Regular.ttf +0 -0
  533. package/dist/fonts/fontawesome-webfont.eot +0 -0
  534. package/dist/fonts/fontawesome-webfont.ttf +0 -0
  535. package/dist/fonts/fontawesome-webfont.woff +0 -0
  536. package/dist/fonts/fontawesome-webfont.woff2 +0 -0
  537. package/dist/report.html +0 -25
  538. package/js/components/Error/Collapsible.jsx +0 -35
  539. package/js/components/Error/ErrorUI.jsx +0 -24
  540. package/js/components/Error/error.js +0 -11
  541. package/js/components/Footer/FooterUI.jsx +0 -39
  542. package/js/components/Footer/footer.js +0 -17
  543. package/js/components/Header/HeaderAbout.jsx +0 -27
  544. package/js/components/Header/HeaderAccountMenu.jsx +0 -147
  545. package/js/components/Header/HeaderApms.jsx +0 -25
  546. package/js/components/Header/HeaderMips.jsx +0 -43
  547. package/js/components/Header/HeaderUI.jsx +0 -87
  548. package/js/components/Header/header.js +0 -16
  549. package/js/components/InfoModal/index.jsx +0 -64
  550. package/js/components/SessionDialogUI.jsx +0 -199
  551. package/js/components/SideNav/Chart/ScoreChart.jsx +0 -246
  552. package/js/components/SideNav/Chart/__tests__/ScoreChart.test.js +0 -28
  553. package/js/components/SideNav/Chart/__tests__/__snapshots__/ScoreChart.test.js.snap +0 -57
  554. package/js/components/SideNav/Chart/index.js +0 -1
  555. package/js/components/SideNav/Content/CmsContent.jsx +0 -85
  556. package/js/components/SideNav/Content/FeedbackContent.jsx +0 -76
  557. package/js/components/SideNav/Content/LevelOneContent.jsx +0 -64
  558. package/js/components/SideNav/Content/LevelThreeContent.jsx +0 -99
  559. package/js/components/SideNav/Content/LevelTwoContent.jsx +0 -89
  560. package/js/components/SideNav/Content/index.js +0 -5
  561. package/js/components/SideNav/Details/IndividualDetails.jsx +0 -35
  562. package/js/components/SideNav/Details/PracticeDetails.jsx +0 -33
  563. package/js/components/SideNav/Details/index.js +0 -2
  564. package/js/components/SideNav/Links/CmsReportLink.jsx +0 -117
  565. package/js/components/SideNav/Links/NavLinkBack.jsx +0 -8
  566. package/js/components/SideNav/Links/NavLinkContainer.jsx +0 -33
  567. package/js/components/SideNav/Links/NavLinkDrawer.jsx +0 -86
  568. package/js/components/SideNav/Links/NavLinkInline.jsx +0 -22
  569. package/js/components/SideNav/Links/NavLinkSlideOut.jsx +0 -47
  570. package/js/components/SideNav/Links/NavLinkToggle.jsx +0 -25
  571. package/js/components/SideNav/Links/index.js +0 -7
  572. package/js/components/SideNav/UI/SideNavUI.jsx +0 -115
  573. package/js/components/SideNav/UI/index.js +0 -1
  574. package/js/components/SideNav/index.js +0 -25
  575. package/js/components/index.js +0 -11
  576. package/js/index.js +0 -28
  577. package/js/session/logout.js +0 -43
  578. package/js/session/refresh.js +0 -47
  579. package/js/session/ttl.js +0 -32
  580. package/sidebar-demo.html +0 -48
  581. package/styles/components/_footer.scss +0 -157
  582. package/styles/components/_header.scss +0 -393
  583. package/styles/components/_sidebar.scss +0 -6
  584. package/styles/components/_tool-tips.scss +0 -6
  585. package/styles/components/sidebar/_animations.scss +0 -16
  586. package/styles/components/sidebar/_links.scss +0 -284
  587. package/styles/components/sidebar/_sidebar.scss +0 -108
  588. package/styles/guide/_layout.scss +0 -120
  589. package/styles/guide/sidebar-demo.css +0 -121
  590. package/yarn.lock +0 -5694
@@ -0,0 +1,110 @@
1
+ import React, { useState } from "react";
2
+ import { handleNavigation } from "../helpers";
3
+ import AnimationGroup from "../AnimationGroup/AnimationGroup";
4
+ import PropTypes from "prop-types";
5
+
6
+ const NavLinkInline = ({
7
+ url,
8
+ urlExpressionToMatch,
9
+ className,
10
+ icon,
11
+ rightIcon,
12
+ label,
13
+ isActive,
14
+ showLabel,
15
+ linkCallback,
16
+ disabled,
17
+ target,
18
+ }) => {
19
+ const localUrl = urlExpressionToMatch || url;
20
+ const urlRegExp = new RegExp(`${localUrl}/?$`);
21
+ const path = window.location.href && window.location.href.split("?")[0];
22
+ const currentPage = path && path.match(urlRegExp);
23
+ const svgRef = React.useRef();
24
+ const [showTooltip, setShowTooltip] = useState(false);
25
+ const tooltipRef = React.useRef();
26
+
27
+ React.useEffect(() => {
28
+ if (!showLabel && svgRef.current) {
29
+ const existingMouseenter = svgRef.current.onmouseover;
30
+ const existingMouseout = svgRef.current.onmouseout;
31
+
32
+ svgRef.current.onmouseover = () => {
33
+ if (tooltipRef.current) {
34
+ const svgOffset = svgRef.current.getBoundingClientRect();
35
+ tooltipRef.current.style.top = `${svgOffset.top - 5}px`;
36
+ tooltipRef.current.style.display = "block";
37
+ }
38
+ if (typeof existingMouseenter === "function") {
39
+ existingMouseenter();
40
+ }
41
+ };
42
+
43
+ svgRef.current.onmouseout = () => {
44
+ if (tooltipRef.current) {
45
+ tooltipRef.current.style.display = "none";
46
+ }
47
+ if (typeof existingMouseout === "function") {
48
+ existingMouseout();
49
+ }
50
+ };
51
+ setShowTooltip(true);
52
+ }
53
+ if (showLabel) {
54
+ setShowTooltip(false);
55
+ }
56
+ }, [svgRef.current, showLabel]);
57
+
58
+ return (
59
+ <React.Fragment>
60
+ <a
61
+ href={disabled ? undefined : url}
62
+ onClick={(e) => handleNavigation(e, linkCallback, label)}
63
+ className={`${className} ${currentPage || isActive ? "active" : ""} ${
64
+ disabled ? "disabled" : ""
65
+ }`}
66
+ data-track-category="SidebarNav"
67
+ data-track-action={`GoTo${label ? label.split(" ").join("") : ""}`}
68
+ data-track-label={label}
69
+ aria-label={label}
70
+ target={`${target ? target : "_self"}`}
71
+ >
72
+ <svg
73
+ className={`left-icon ${disabled ? "disabled" : ""}`}
74
+ aria-hidden="true"
75
+ focusable="false"
76
+ ref={svgRef}
77
+ >
78
+ {icon}
79
+ </svg>
80
+ <AnimationGroup display={showLabel}>
81
+ <span tabIndex="-1" className="sidebar-inline-link-label">
82
+ {label}
83
+ {rightIcon}
84
+ </span>
85
+ </AnimationGroup>
86
+ </a>
87
+ {showTooltip && (
88
+ <div ref={tooltipRef} className="sidebar-tooltip">
89
+ <span className="sidebar-tooltip-text">{label}</span>
90
+ </div>
91
+ )}
92
+ </React.Fragment>
93
+ );
94
+ };
95
+
96
+ NavLinkInline.propTypes = {
97
+ urlExpressionToMatch: PropTypes.string,
98
+ url: PropTypes.string,
99
+ className: PropTypes.string,
100
+ icon: PropTypes.element,
101
+ rightIcon: PropTypes.element,
102
+ label: PropTypes.string,
103
+ isActive: PropTypes.bool,
104
+ showLabel: PropTypes.bool,
105
+ linkCallback: PropTypes.func,
106
+ disabled: PropTypes.bool,
107
+ target: PropTypes.string,
108
+ };
109
+
110
+ export default NavLinkInline;
@@ -0,0 +1,34 @@
1
+ import React from "react";
2
+ import PropTypes from "prop-types";
3
+ import { NavCollapse, NavExpand } from "../../../lib/SvgComponents";
4
+
5
+ const NavLinkToggle = ({ isAltStyle, collapseRef, isExpanded, onClick }) => {
6
+ const expandedStyle = isExpanded ? "link-collapse" : "link-expand";
7
+ const altStyle = isAltStyle ? "alt-style" : "";
8
+
9
+ return (
10
+ <button
11
+ type="button"
12
+ aria-label={`Click to ${
13
+ isExpanded ? "collapse" : "expand"
14
+ } the sidebar menu`}
15
+ ref={collapseRef}
16
+ className={`${expandedStyle} ${altStyle}`}
17
+ onClick={onClick}
18
+ >
19
+ <svg className="left-icon" aria-hidden="true" focusable="false">
20
+ {isExpanded ? <NavCollapse /> : <NavExpand />}
21
+ </svg>
22
+ <span>{isExpanded ? "Collapse" : "Expand"}</span>
23
+ </button>
24
+ );
25
+ };
26
+
27
+ NavLinkToggle.propTypes = {
28
+ isAltStyle: PropTypes.bool,
29
+ collapseRef: PropTypes.object,
30
+ isExpanded: PropTypes.bool,
31
+ onClick: PropTypes.func,
32
+ };
33
+
34
+ export default NavLinkToggle;
@@ -0,0 +1,13 @@
1
+ import NavLinkContainer from "./NavLinkContainer";
2
+ import NavLinkDrawer from "./NavLinkDrawer";
3
+ import NavLinkInline from "./NavLinkInline";
4
+ import NavLinkToggle from "./NavLinkToggle";
5
+ import NavItemInline from "./NavItemInline";
6
+
7
+ export {
8
+ NavLinkContainer,
9
+ NavLinkDrawer,
10
+ NavLinkInline,
11
+ NavLinkToggle,
12
+ NavItemInline,
13
+ };
@@ -0,0 +1,50 @@
1
+ # SideNav Component
2
+
3
+ ## Cookies
4
+
5
+ When a user succesfully logs into QPP the user will receive the following
6
+ cookies.
7
+
8
+ | Cookie | Description |
9
+ | ----------------------------------- | --------------------------------------- |
10
+ | qpp_auth_token | auth token |
11
+ | qpp_has_authorizations | user has authorizations |
12
+ | qpp_has_non_registry_authorizations | user has non registry authorizations |
13
+ | user_has_apm_payments | user has at least one APM Payment |
14
+ | qpp_is_dev_pre | user is in Dev Pre environment |
15
+ | qpp_ehr_authorized | user is authorized for at least one EHR |
16
+
17
+ ## Links for authenticated users
18
+
19
+ | Link | Cookie |
20
+ | ---------------------------- | ---------------------------------------- |
21
+ | Account Home | Always visible |
22
+ | Eligibility & Reporting | qpp_has_authorizations=true |
23
+ | Facility Based Preview | qpp_has_authorizations=true |
24
+ | Performance Feedback | qpp_has_authorizations=true |
25
+ | APM Incentive Payments | user_has_apm_payments=true |
26
+ | Doctors & Clinicians Preview | qpp_has_non_registry_authorizations=true |
27
+ | Exceptions Applications | Always visible |
28
+ | Targeted Review | |
29
+ | Reports | |
30
+ | Manage Access | Always visible |
31
+ | Help and Support | Always visible |
32
+
33
+ ## Manage Access - Registry/QCDR Self-Nomination
34
+
35
+ When showSelfNomination property is true the Registry/QCDR Self-Nomination link is available.
36
+
37
+ ## Review Claims-based Submission Link
38
+
39
+ Review Claims-based Submission link has been deleted
40
+
41
+ ## Dev Pre Environment
42
+
43
+ When the application is in Dev Pre mode the sidenav links are as follows.
44
+
45
+ | Link | Cookie |
46
+ | --------------- | ----------------------- |
47
+ | My Applications | qpp_ehr_authorized=true |
48
+ | My Test Data | qpp_ehr_authorized=true |
49
+ | Manage Access | qpp_is_dev_pre=true |
50
+ | Developer Tools | qpp_is_dev_pre=true |
@@ -0,0 +1,323 @@
1
+ import React, { useState, useRef, useEffect } from "react";
2
+ import PropTypes from "prop-types";
3
+ import axios from "axios";
4
+
5
+ import { setSideNavExpanded, isSideNavExpanded } from "../helpers";
6
+ import { LevelOneContent } from "../Content";
7
+ import {
8
+ NavLinkContainer,
9
+ NavLinkInline,
10
+ NavLinkDrawer,
11
+ NavLinkToggle,
12
+ } from "../Links";
13
+ import AnimationGroup from "../AnimationGroup/AnimationGroup";
14
+ import { PracticeDetails, IndividualDetails } from "../Details";
15
+ import SanitizedContent from "../../SanitizedContent";
16
+ import * as SvgComponents from "../../../lib/SvgComponents.jsx";
17
+ import CmsSwitchLink from "../Links/CmsSwitchLink";
18
+ import defaultMarkup from "./default-markup";
19
+
20
+ // TODO: For an SSR version of the SideNavUI we would need to have
21
+ // the whole SideNav markup render on the server. Less reliance on
22
+ // window and document.
23
+ // We can have an API created where we send it certain parameters
24
+ // like items. All of the markup is then returned. The SideNav can
25
+ // just render the markup provided by the Frontend Server.
26
+ // The only code left behind would be triggers to respond to
27
+ // toggling the sidenav's expand state
28
+ // Things to consider when implmenting an SSR version:
29
+ // 1. any buttons will need event listeners to trigger actions.
30
+ // 2. we need a feature flag to roll this out since it will be
31
+ // a breaking change.
32
+ // 3. we may want to consider creating a web component since they
33
+ // are server friendly. https://css-tricks.com/using-web-components-with-next-or-any-ssr-framework/
34
+ // 4. If you do use web components be sure to come up with a
35
+ // strategy to register the web component before React loads
36
+ // the markup on the page. Then the web component renders
37
+ // immediately.
38
+ const SideNavUI = ({
39
+ config,
40
+ isAltStyle,
41
+ isExpanded,
42
+ items,
43
+ onCollapsed,
44
+ onExpanded,
45
+ }) => {
46
+ const isExpandedPropSet = isExpanded !== undefined;
47
+ const [isExpandedState, setIsExpandedState] = useState(() => {
48
+ if (isExpandedPropSet) {
49
+ return isExpanded;
50
+ }
51
+ return isSideNavExpanded(window.document);
52
+ });
53
+ const [sideNavContent, setSideNavContent] = useState("<nav></nav>");
54
+
55
+ const collapseRef = useRef(null);
56
+
57
+ const expand = () => {
58
+ setSideNavExpanded(window.document, "true");
59
+ setIsExpandedState(true);
60
+ if (onExpanded) {
61
+ onExpanded();
62
+ }
63
+ };
64
+
65
+ const collapse = () => {
66
+ setSideNavExpanded(window.document, "false");
67
+ setIsExpandedState(false);
68
+ if (onCollapsed) {
69
+ onCollapsed();
70
+ }
71
+ };
72
+
73
+ const toggleExpanded = () => {
74
+ isExpandedState ? collapse() : expand();
75
+ };
76
+
77
+ useEffect(() => {
78
+ // some applications use the isExpanded prop instead of reading the cookie
79
+ // this will ensure the application ignores the cookie
80
+ if (isExpandedPropSet) {
81
+ setIsExpandedState(isExpanded);
82
+ } else {
83
+ isSideNavExpanded(window.document);
84
+ }
85
+ }, [isExpanded, isExpandedPropSet]);
86
+
87
+ useEffect(() => {
88
+ isSideNavExpanded(window.document);
89
+ let cancelRequest = false;
90
+ const { origin } = window.location;
91
+ const isRunningLocally = origin.includes("localhost");
92
+ let sideNavMenuItems;
93
+
94
+ async function getSideNavConfig() {
95
+ try {
96
+ const { data } = await axios.get(`${origin}/config/side-navigation`);
97
+ sideNavMenuItems = data.markup;
98
+ } catch (error) {
99
+ if (isRunningLocally) {
100
+ sideNavMenuItems = defaultMarkup;
101
+ } else {
102
+ sideNavMenuItems = "<nav></nav>";
103
+ }
104
+ }
105
+ if (!cancelRequest) {
106
+ setSideNavContent(sideNavMenuItems);
107
+ }
108
+ }
109
+ getSideNavConfig();
110
+ return () => {
111
+ cancelRequest = true;
112
+ };
113
+ }, []);
114
+
115
+ const getDynamicContent = (contentItems, className, recursionId) => {
116
+ const { openDrawersByDefault, linkActiveFunc, linkCallback } = config;
117
+ let linkClass = isExpandedState ? "link-inline" : "link-collapsed";
118
+ const containerRecursionId = recursionId || 0;
119
+
120
+ const getDynamicIcon = (icon) => {
121
+ const Component = SvgComponents[icon];
122
+ return Component ? <Component /> : null;
123
+ };
124
+
125
+ const hasDarkerBackground = (darkerBackground) => {
126
+ return darkerBackground ? "hr-smaller-vertical-spacing" : "";
127
+ };
128
+
129
+ const itemsMarkup = (contentItems || []).map((item, index) => {
130
+ const key = `${JSON.stringify(item)}-${index}-${containerRecursionId}`;
131
+
132
+ return (
133
+ {
134
+ divider: (
135
+ <AnimationGroup
136
+ display={isExpandedState}
137
+ key={key}
138
+ darkerBackground={item.darkerBackground}
139
+ >
140
+ <hr className={`${hasDarkerBackground(item.darkerBackground)}`} />
141
+ </AnimationGroup>
142
+ ),
143
+ container: getDynamicContent(
144
+ item.items,
145
+ item.className,
146
+ containerRecursionId + 1
147
+ ),
148
+ linkBack: (
149
+ <AnimationGroup display={isExpandedState} key={key}>
150
+ <NavLinkInline
151
+ className="link-back"
152
+ icon={getDynamicIcon("ChevronLeft")}
153
+ url={item.url}
154
+ label={item.label}
155
+ linkCallback={linkCallback}
156
+ showLabel={true}
157
+ />
158
+ </AnimationGroup>
159
+ ),
160
+ linkHome: (
161
+ <AnimationGroup display={isExpandedState} key={key}>
162
+ <NavLinkInline
163
+ className="account-home-link"
164
+ icon={getDynamicIcon(item?.icon)}
165
+ url={item.url}
166
+ label={item.label}
167
+ linkCallback={linkCallback}
168
+ showLabel={true}
169
+ />
170
+ </AnimationGroup>
171
+ ),
172
+ practiceDetails: (
173
+ <AnimationGroup
174
+ display={isExpandedState}
175
+ className={"details"}
176
+ key={key}
177
+ >
178
+ <PracticeDetails
179
+ practiceName={item.practiceName}
180
+ {...(!item.practiceTin
181
+ ? {}
182
+ : { practiceTin: item.practiceTin })}
183
+ {...(!item.apmEntityId
184
+ ? {}
185
+ : { apmEntityId: item.apmEntityId })}
186
+ {...(!item.vgId ? {} : { vgId: item.vgId })}
187
+ {...(!item.cpcPlusId ? {} : { cpcPlusId: item.cpcPlusId })}
188
+ {...(!item.pcfId ? {} : { pcfId: item.pcfId })}
189
+ {...(!item.subgroupId ? {} : { subgroupId: item.subgroupId })}
190
+ />
191
+ </AnimationGroup>
192
+ ),
193
+ individualDetails: (
194
+ <AnimationGroup display={isExpandedState} key={key}>
195
+ <IndividualDetails
196
+ individualName={item.individualName}
197
+ individualNpi={item.individualNpi}
198
+ />
199
+ </AnimationGroup>
200
+ ),
201
+ linkDrawer: (
202
+ <NavLinkDrawer
203
+ key={key}
204
+ isExpanded={isExpandedState}
205
+ isAlwaysOpen={item.isAlwaysOpen}
206
+ openByDefault={openDrawersByDefault}
207
+ rightIcon="chevron-down"
208
+ leftIcon={getDynamicIcon(item?.icon)}
209
+ className={linkClass}
210
+ label={item.label}
211
+ linkActiveFunc={linkActiveFunc}
212
+ linkCallback={linkCallback}
213
+ listOfLinks={item.items}
214
+ url={item.url}
215
+ sidebarExpand={expand}
216
+ isHighlighted={item.isHighlighted}
217
+ darkerBackground={item.darkerBackground}
218
+ leftBorderHighlightDisabled={item.leftBorderHighlightDisabled}
219
+ hideLabelSection={item.hideLabelSection}
220
+ largerDrawerBottomPadding={item.largerDrawerBottomPadding}
221
+ />
222
+ ),
223
+ custom: (
224
+ <AnimationGroup display={isExpandedState} key={key}>
225
+ <SanitizedContent
226
+ html={item.content}
227
+ customClassName={item.customClassName}
228
+ />
229
+ </AnimationGroup>
230
+ ),
231
+ switchLink: (
232
+ <AnimationGroup display={isExpandedState} key={key}>
233
+ <CmsSwitchLink
234
+ linkCallback={linkCallback}
235
+ label={item.label}
236
+ url={item.url}
237
+ />
238
+ </AnimationGroup>
239
+ ),
240
+ }[item.type] || (
241
+ <NavLinkInline
242
+ key={key}
243
+ icon={getDynamicIcon(item?.icon)}
244
+ className={item.className ? item.className : linkClass}
245
+ url={item.url}
246
+ label={item.label}
247
+ linkCallback={linkCallback}
248
+ showLabel={isExpandedState}
249
+ disabled={item.disabled}
250
+ target={item.target}
251
+ />
252
+ )
253
+ );
254
+ });
255
+
256
+ if (className === "link-container") {
257
+ return (
258
+ <div
259
+ className="animation-flat"
260
+ key={`nav-link-container-${recursionId}`}
261
+ >
262
+ <NavLinkContainer
263
+ listOfLinks={itemsMarkup}
264
+ linkActiveFunc={linkActiveFunc}
265
+ />
266
+ </div>
267
+ );
268
+ } else {
269
+ return <div className={className}>{itemsMarkup}</div>;
270
+ }
271
+ };
272
+
273
+ const content = !items?.length ? (
274
+ <LevelOneContent
275
+ levelOneContent={sideNavContent}
276
+ isExpanded={isExpandedState}
277
+ config={config}
278
+ />
279
+ ) : (
280
+ getDynamicContent(
281
+ items,
282
+ "sidebar-content" + (isAltStyle ? " alt-style" : "")
283
+ )
284
+ );
285
+
286
+ return (
287
+ <aside
288
+ id="qppSidebar"
289
+ tabIndex="-1"
290
+ className={`${isExpandedState ? "sidebar" : "sidebar closed"} sidebar-${
291
+ config.navClassName
292
+ }`}
293
+ >
294
+ {content}
295
+ <NavLinkToggle
296
+ isAltStyle={isAltStyle}
297
+ collapseRef={collapseRef}
298
+ isExpanded={isExpandedState}
299
+ onClick={toggleExpanded}
300
+ />
301
+ </aside>
302
+ );
303
+ };
304
+
305
+ SideNavUI.propTypes = {
306
+ config: PropTypes.object,
307
+ isAltStyle: PropTypes.bool,
308
+ isExpanded: PropTypes.bool,
309
+ items: PropTypes.object,
310
+ onCollapsed: PropTypes.func,
311
+ onExpanded: PropTypes.func,
312
+ };
313
+
314
+ SideNavUI.defaultProps = {
315
+ config: {},
316
+ isAltStyle: false,
317
+ isExpanded: undefined,
318
+ items: null,
319
+ onCollapsed: () => {},
320
+ onExpanded: () => {},
321
+ };
322
+
323
+ export default SideNavUI;
@@ -0,0 +1,4 @@
1
+ const defaultMarkup =
2
+ '<nav><ul><li><div class="link-drawer "><a href="/user/submissions" class="link-inline nav-li " aria-label="Account Home" target="_self" data-track-category="SidebarNav" data-track-action="Go To Account Home" data-track-label="Account Home"><svg class="left-icon " aria-hidden="true" focusable="false"><svg class="account-home-icon" viewBox="0 0 25 25"><path d="M8.5,24 L8.5,15 C8.5,14.7238576 8.72385763,14.5 9,14.5 L16,14.5 C16.2761424,14.5 16.5,14.7238576 16.5,15 L16.5,24 L22.5,24 L22.5,9.238536 L12.5,1.14329791 L2.5,9.238536 L2.5,24 L8.5,24 Z M1.68540089,8.61137756 L12.1854009,0.111377565 C12.3688463,-0.0371258549 12.6311537,-0.0371258549 12.8145991,0.111377565 L23.3145991,8.61137756 C23.4318689,8.70631024 23.5,8.8491212 23.5,9 L23.5,24.5 C23.5,24.7761424 23.2761424,25 23,25 L2,25 C1.72385763,25 1.5,24.7761424 1.5,24.5 L1.5,9 C1.5,8.8491212 1.56813111,8.70631024 1.68540089,8.61137756 Z M9.5,15.5 L9.5,24 L15.5,24 L15.5,15.5 L9.5,15.5 Z"></path></svg></svg><div class="animation-group animation-group-default animation-group-enter"><span tabindex="-1" class="sidebar-inline-link-label">Account Home</span></div></a></div></li><li><div class="link-drawer "><a href="/user/exception/" class="link-inline nav-li " aria-label="Exceptions Application" target="_self" data-track-category="SidebarNav" data-track-action="Go To Exceptions Application" data-track-label="Exceptions Application"><svg class="left-icon " aria-hidden="true" focusable="false"><svg class="hardship-icon" viewBox="0 0 25 25" version="1.1"><g><g transform="translate(2.000000, 0.000000)" fill-rule="nonzero"><path d="M18.7721739,2.6119403 L14.4991304,2.6119403 L12.4813043,2.6119403 C12.5178261,2.44402985 12.5543478,2.2761194 12.5543478,2.0988806 C12.5543478,0.942164179 11.6321739,0 10.5,0 C9.36782609,0 8.44565217,0.942164179 8.44565217,2.0988806 C8.44565217,2.2761194 8.47304348,2.44402985 8.51869565,2.6119403 L6.49173913,2.6119403 L2.21869565,2.6119403 C0.995217391,2.6119403 0,3.62873134 0,4.8880597 L0,22.733209 C0,23.983209 0.995217391,25 2.21869565,25 L18.7721739,25 C19.9956522,25 21,23.983209 21,22.7238806 L21,4.8880597 C21,3.62873134 19.9956522,2.6119403 18.7721739,2.6119403 Z M10.5,0.932835821 C11.13,0.932835821 11.6413043,1.45522388 11.6413043,2.0988806 C11.6413043,2.31343284 11.5682609,2.5 11.4769565,2.66791045 C11.403913,2.7891791 11.3126087,2.9011194 11.2030435,2.99440299 C11.1482609,3.04104478 11.0843478,3.08768657 11.0204348,3.125 C10.9747826,3.14365672 10.9382609,3.17164179 10.8926087,3.19029851 C10.7647826,3.22761194 10.6369565,3.26492537 10.5,3.26492537 C10.3630435,3.26492537 10.2352174,3.22761194 10.1165217,3.18097015 C10.0708696,3.16231343 10.0343478,3.14365672 9.98869565,3.11567164 C9.92478261,3.07835821 9.86086957,3.03171642 9.80608696,2.98507463 C9.6873913,2.89179104 9.59608696,2.77052239 9.52304348,2.63992537 C9.43173913,2.47201493 9.36782609,2.29477612 9.36782609,2.08955224 C9.35869565,1.45522388 9.87,0.932835821 10.5,0.932835821 Z M20.0869565,22.7238806 C20.0869565,23.4608209 19.5026087,24.0671642 18.7721739,24.0671642 L2.21869565,24.0671642 C1.4973913,24.0671642 0.903913043,23.4701493 0.903913043,22.7238806 L0.903913043,4.8880597 C0.913043478,4.14179104 1.4973913,3.54477612 2.21869565,3.54477612 L6.49173913,3.54477612 L6.49173913,4.38432836 C6.49173913,4.95335821 6.93913043,5.41044776 7.49608696,5.41044776 L13.503913,5.41044776 C14.0608696,5.41044776 14.5082609,4.95335821 14.5082609,4.38432836 L14.5082609,3.54477612 L18.7813043,3.54477612 C19.5026087,3.54477612 20.096087,4.14179104 20.096087,4.8880597 L20.096087,22.7238806 L20.0869565,22.7238806 L20.0869565,22.7238806 Z"></path><g transform="translate(4.000000, 9.000000)"><rect x="3.50571429" y="7.24" width="7.97142857" height="1"></rect><rect x="0.848571429" y="7.24" width="1.37142857" height="1"></rect><rect x="6.50571429" y="2.17" width="4.97142857" height="1"></rect><polygon points="2.13428571 4.04 0.402857143 2.01 1.01142857 1.31 2.13428571 2.62 4.03714286 0.41 4.64571429 1.11"></polygon></g></g></g></svg></svg><div class="animation-group animation-group-default animation-group-enter"><span tabindex="-1" class="sidebar-inline-link-label">Exceptions Application</span></div></a></div></li><li><div class="link-drawer "><a href="/user/targeted-review/" class="link-inline nav-li stroke-based-icon " aria-label="Targeted Review" target="_self" data-track-category="SidebarNav" data-track-action="Go To Targeted Review" data-track-label="Targeted Review"><svg class="left-icon " aria-hidden="true" focusable="false"><svg class="target-icon stroke-based-icon" viewBox="0 0 25 25"><g stroke-width="1" fill="none" fill-rule="evenodd"><g transform="translate(1.000000, 1.000000)"><path d="M15.6521739,13.3410862 C14.9799955,14.9155188 13.3391142,15.8471825 11.6426584,15.617619 C9.9462025,15.3880555 8.61194453,14.0537975 8.38238102,12.3573416 C8.15281751,10.6608858 9.08448121,9.0200045 10.6589138,8.34782609" stroke-linecap="round"></path><path d="M19.826087,11.4686261 C19.5475194,15.6524455 16.0240274,18.8752139 11.8318419,18.780577 C7.63965639,18.6859401 4.26519733,15.3074531 4.17572893,11.1153254 C4.08626053,6.92319774 7.31350554,3.40382874 11.4978365,3.13043478" stroke-linecap="round"></path><path d="M22.9565217,10.4801044 C22.9565217,10.8094757 22.9565217,11.1488279 22.9565217,11.4781992 C22.9565217,16.1251852 20.1544991,20.3136359 15.8592987,22.0872623 C11.5640982,23.8608888 6.62327363,22.8696906 3.3445233,19.5766243 C0.065772964,16.283558 -0.903887735,11.3384639 0.888438166,7.05103466 C2.68076407,2.7636054 6.8813862,-0.0200950351 11.5283306,0 C11.867683,0 12.2070354,0 12.5264259,0" stroke-linecap="round"></path><path d="M23.4104348,8.34782609 C23.4626087,8.69217391 23.5147826,9.04695652 23.546087,9.39130435" stroke-linecap="round"></path><path d="M19.0559527,8.3085908 L16.1993898,7.27346855 C15.9679825,7.18675289 15.7867762,7.00255341 15.7042523,6.77015223 L14.6758896,3.9211919 C14.5392501,3.60164864 14.6150694,3.23112279 14.8663271,2.99053153 L17.5610181,0.255529619 C17.7680939,0.0454487694 18.069052,-0.043464617 18.357445,0.020237671 C18.6458381,0.083939959 18.8810085,0.291277194 18.9797777,0.568915255 L19.7415278,2.61067015 C19.8301804,2.85007338 20.017334,3.04018548 20.2557092,3.13297955 L22.4076532,3.94968151 C22.6793557,4.05644917 22.8788566,4.29253202 22.938341,4.57768034 C22.9978255,4.86282867 22.9092906,5.15867892 22.7028314,5.36466513 L19.960531,8.07117744 C19.7289278,8.31564041 19.3782081,8.40768945 19.0559527,8.3085908 Z"></path><line x1="12.5217391" y1="10.4347826" x2="16.6956522" y2="6.26086957" stroke-linecap="round"></line></g></g></svg></svg><div class="animation-group animation-group-default animation-group-enter"><span tabindex="-1" class="sidebar-inline-link-label">Targeted Review</span></div></a></div></li><li><div class="link-drawer "><a href="/user/manage-access" class="link-inline nav-li " aria-label="Manage Access" target="_self" data-track-category="SidebarNav" data-track-action="Go To Manage Access" data-track-label="Manage Access"><svg class="left-icon " aria-hidden="true" focusable="false"><svg class="manage-users-svg" viewBox="0 0 25 25"><g><path d="M4.4,10.8V0.2H3.6v10.7c-1.9,0.2-3.4,1.8-3.4,3.8s1.5,3.6,3.4,3.8v6.4h0.9v-6.4c1.9-0.2,3.4-1.8,3.4-3.8 S6.3,11.1,4.4,10.8z M4,17.6c-1.6,0-3-1.3-3-3s1.3-3,3-3s3,1.3,3,3S5.6,17.6,4,17.6z"></path><path d="M12.9,2.3V0.2h-0.9v2.2c-1.9,0.2-3.4,1.8-3.4,3.8c0,2,1.5,3.6,3.4,3.8v14.9h0.9V9.9c1.9-0.2,3.4-1.8,3.4-3.8 C16.3,4.2,14.8,2.6,12.9,2.3z M12.5,9.1c-1.6,0-3-1.3-3-3s1.3-3,3-3s3,1.3,3,3S14.1,9.1,12.5,9.1z"></path><path d="M24.8,18.9c0-2-1.5-3.6-3.4-3.8V0.2h-0.9v14.9c-1.9,0.2-3.4,1.8-3.4,3.8s1.5,3.6,3.4,3.8v2.2h0.9v-2.2 C23.3,22.4,24.8,20.8,24.8,18.9z M21,21.8c-1.6,0-3-1.3-3-3c0-1.6,1.3-3,3-3s3,1.3,3,3C24,20.5,22.6,21.8,21,21.8z"></path></g></svg></svg><div class="animation-group animation-group-default animation-group-enter"><span tabindex="-1" class="sidebar-inline-link-label">Manage Access</span></div></a><div class="drawer nav-drawer"><ul aria-hidden="false"><li class=" parent-link"><a href="/user/self-nomination/" tabindex="0" data-track-category="SidebarNav" data-track-action="Go To Registry/QCDR Self-Nomination" data-track-label="Registry/QCDR Self-Nomination" target="_self">Registry/QCDR Self-Nomination</a></li></ul></div></div></li><li><div class="link-drawer "><a href="/resources/help-and-support" class="link-inline nav-li " aria-label="Help and Support" target="_self" data-track-category="SidebarNav" data-track-action="Go To Help and Support" data-track-label="Help and Support"><svg class="left-icon " aria-hidden="true" focusable="false"><svg class="help-support" viewBox="0 0 25 25"><g><path d="M12.5,0.3C5.8,0.3,0.3,5.8,0.3,12.5s5.5,12.2,12.2,12.2s12.2-5.5,12.2-12.2S19.2,0.3,12.5,0.3z M12.5,23.8 c-6.2,0-11.3-5.1-11.3-11.3S6.3,1.2,12.5,1.2s11.3,5.1,11.3,11.3S18.7,23.8,12.5,23.8z"></path><path d="M12.5,10.7h-0.4c-0.1,0-0.3,0-0.3,0.1c-0.1,0.1-0.1,0.2-0.1,0.3v8c0,0.1,0,0.3,0.1,0.3 c0.1,0.1,0.2,0.1,0.3,0.1h0.4c0.1,0,0.3,0,0.3-0.1c0.1-0.1,0.1-0.2,0.1-0.3v-8c0-0.1,0-0.3-0.1-0.3C12.8,10.7,12.7,10.7,12.5,10.7z"></path><path d="M12.6,6.7h-0.5c-0.1,0-0.3,0-0.4,0.1c-0.1,0.1-0.1,0.3-0.1,0.4v0.5c0,0.1,0,0.3,0.1,0.3 c0.1,0.1,0.2,0.1,0.3,0.1h0.5c0.1,0,0.3,0,0.4-0.1C13,7.9,13,7.8,13,7.6V7.2c0-0.1,0-0.3-0.1-0.4C12.8,6.7,12.7,6.7,12.6,6.7z"></path></g></svg></svg><div class="animation-group animation-group-default animation-group-enter"><span tabindex="-1" class="sidebar-inline-link-label">Help and Support</span></div></a></div></li></ul></nav>';
3
+
4
+ export default defaultMarkup;
@@ -0,0 +1,3 @@
1
+ import SideNavUI from "./SideNavUI";
2
+
3
+ export { SideNavUI };
File without changes