qpp-style 0.0.9 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (456) hide show
  1. package/.eslintrc.js +28 -28
  2. package/.husky/pre-commit +5 -0
  3. package/README.md +45 -0
  4. package/components/Accordion/index.jsx +35 -43
  5. package/components/Alert/index.js +53 -0
  6. package/components/Breadcrumb/index.js +4 -4
  7. package/components/Button/index.js +17 -6
  8. package/components/CalloutBox/index.js +109 -0
  9. package/components/Card/index.js +137 -0
  10. package/components/Details/DetailsIcons.js +50 -0
  11. package/components/Details/index.js +53 -0
  12. package/components/Dropdown/index.js +85 -0
  13. package/components/DropdownButton/Menu.js +25 -0
  14. package/components/DropdownButton/MenuButton.js +41 -0
  15. package/components/DropdownButton/MenuItem.js +25 -0
  16. package/components/DropdownButton/MenuItemLink.js +27 -0
  17. package/components/Error/Collapsible.jsx +2 -2
  18. package/components/Footer/FooterUI.jsx +175 -177
  19. package/components/Footer/footer.js +2 -12
  20. package/components/GovBanner/index.js +117 -0
  21. package/components/Header/HeaderAccountMenu.jsx +49 -75
  22. package/components/Header/HeaderContainer.jsx +46 -34
  23. package/components/Header/HeaderLogo.jsx +40 -17
  24. package/components/Header/HeaderMenuButton.js +38 -12
  25. package/components/Header/HeaderMenuItem.jsx +204 -64
  26. package/components/Header/HeaderMenuLink.js +46 -10
  27. package/components/Header/HeaderMenuSignOutButton.js +46 -10
  28. package/components/Header/HeaderMobileButton.js +15 -6
  29. package/components/Header/HeaderUI.jsx +118 -117
  30. package/components/Header/HelpIcon.jsx +7 -5
  31. package/components/Header/ImpersonatorBanner.jsx +81 -0
  32. package/components/Header/header.js +2 -0
  33. package/components/Header/hooks.js +53 -1
  34. package/components/Header/utag-helpers.js +9 -0
  35. package/components/Infotip/Infotip.jsx +6 -10
  36. package/components/Infotip/InfotipContent.jsx +46 -0
  37. package/components/Infotip/InfotipIcon.jsx +3 -3
  38. package/components/Link/index.js +61 -0
  39. package/components/Modal/Modal.jsx +53 -40
  40. package/components/Modal/index.jsx +11 -11
  41. package/components/NotificationBanner/CollapsedView.js +39 -0
  42. package/components/NotificationBanner/ExpandedView.js +45 -0
  43. package/components/NotificationBanner/index.js +219 -30
  44. package/components/Search/index.js +98 -0
  45. package/components/SessionDialog/sessionDialog.js +26 -0
  46. package/components/SessionDialogUI.jsx +34 -26
  47. package/components/SideNav/AnimationGroup/AnimationGroup.jsx +9 -2
  48. package/components/SideNav/Chart/ScoreChart.jsx +1 -1
  49. package/components/SideNav/Chart/__tests__/ScoreChart.test.js +3 -12
  50. package/components/SideNav/Chart/__tests__/__snapshots__/ScoreChart.test.js.snap +144 -35
  51. package/components/SideNav/Chart/index.js +1 -1
  52. package/components/SideNav/Content/LevelOneContent.jsx +145 -255
  53. package/components/SideNav/Content/LevelTwoContent.jsx +12 -10
  54. package/components/SideNav/Content/SelectRole/index.js +77 -0
  55. package/components/SideNav/Content/SelectRole/utils.js +140 -0
  56. package/components/SideNav/Details/PracticeDetails.jsx +4 -0
  57. package/components/SideNav/Links/CmsSwitchLink.jsx +1 -1
  58. package/components/SideNav/Links/NavLinkContainer.jsx +29 -34
  59. package/components/SideNav/Links/NavLinkDrawer.jsx +100 -17
  60. package/components/SideNav/Links/NavLinkInline.jsx +7 -2
  61. package/components/SideNav/SideNav.md +28 -27
  62. package/components/SideNav/UI/SideNavUI.jsx +122 -129
  63. package/components/SideNav/UI/default-content.json +117 -0
  64. package/components/SideNav/helpers.js +316 -4
  65. package/components/Tabs/TabPanel.js +5 -0
  66. package/components/Tabs/Tabs.js +73 -0
  67. package/components/TextInput/index.js +137 -0
  68. package/components/hooks/useGetConfig.js +75 -0
  69. package/components/index.js +103 -9
  70. package/coverage/clover.xml +1465 -41
  71. package/coverage/coverage-final.json +72 -1
  72. package/coverage/lcov-report/block-navigation.js +8 -0
  73. package/coverage/lcov-report/components/Accordion/index.html +26 -21
  74. package/coverage/lcov-report/components/Accordion/index.jsx.html +106 -131
  75. package/coverage/lcov-report/{SideNav/Chart → components/Button}/index.html +29 -24
  76. package/coverage/lcov-report/{Error/Collapsible.jsx.html → components/Button/index.js.html} +125 -114
  77. package/coverage/lcov-report/components/Error/Collapsible.jsx.html +92 -87
  78. package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +32 -33
  79. package/coverage/lcov-report/components/Error/index.html +11 -6
  80. package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +200 -189
  81. package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +24 -61
  82. package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +18 -13
  83. package/coverage/lcov-report/components/Footer/index.html +35 -45
  84. package/coverage/lcov-report/components/{InfoModal → GovBanner}/index.html +27 -22
  85. package/coverage/lcov-report/components/{InfoModal/index.jsx.html → GovBanner/index.js.html} +157 -122
  86. package/coverage/lcov-report/components/Header/HeaderAccountMenu.jsx.html +93 -520
  87. package/coverage/lcov-report/components/Header/HeaderCancel.jsx.html +19 -23
  88. package/coverage/lcov-report/components/Header/HeaderContainer.jsx.html +280 -0
  89. package/coverage/lcov-report/components/{SideNav/Links/NavLinkContainer.jsx.html → Header/HeaderLogo.jsx.html} +78 -67
  90. package/coverage/lcov-report/components/{SideNav/Links/NavItemInline.jsx.html → Header/HeaderMenuButton.js.html} +71 -78
  91. package/coverage/lcov-report/components/{SideNav/Links/NavLinkDrawer.jsx.html → Header/HeaderMenuItem.jsx.html} +291 -268
  92. package/coverage/lcov-report/components/Header/HeaderMenuLink.js.html +253 -0
  93. package/coverage/lcov-report/components/Header/HeaderMenuSignOutButton.js.html +271 -0
  94. package/coverage/lcov-report/components/{SideNav/Links/NavLinkToggle.jsx.html → Header/HeaderMobileButton.js.html} +64 -47
  95. package/coverage/lcov-report/components/Header/HeaderUI.jsx.html +176 -756
  96. package/coverage/lcov-report/components/Header/HelpIcon.jsx.html +181 -0
  97. package/coverage/lcov-report/{Accordion/index.jsx.html → components/Header/ImpersonatorBanner.jsx.html} +109 -167
  98. package/coverage/lcov-report/components/Header/NavigationButtonIcon.jsx.html +24 -19
  99. package/coverage/lcov-report/components/Header/hooks.js.html +283 -0
  100. package/coverage/lcov-report/components/Header/index.html +203 -33
  101. package/coverage/lcov-report/components/{SideNav/Links/index.js.html → Header/utag-helpers.js.html} +35 -42
  102. package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +53 -48
  103. package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +37 -32
  104. package/coverage/lcov-report/components/Infotip/index.html +8 -3
  105. package/coverage/lcov-report/components/Infotip/index.js.html +8 -3
  106. package/coverage/lcov-report/components/Modal/LegacyModal.jsx.html +301 -0
  107. package/coverage/lcov-report/{HeaderUI.jsx.html → components/Modal/Modal.jsx.html} +169 -257
  108. package/coverage/lcov-report/components/Modal/index.html +146 -0
  109. package/coverage/lcov-report/components/{SideNav/Details/IndividualDetails.jsx.html → Modal/index.jsx.html} +50 -42
  110. package/coverage/lcov-report/components/NotificationBanner/CollapsedView.js.html +202 -0
  111. package/coverage/lcov-report/components/NotificationBanner/ExpandedView.js.html +220 -0
  112. package/coverage/lcov-report/components/NotificationBanner/index.html +58 -23
  113. package/coverage/lcov-report/components/{SideNav/Content/LevelTwoContent.jsx.html → NotificationBanner/index.js.html} +292 -272
  114. package/coverage/lcov-report/components/SanitizedContent/index.html +8 -3
  115. package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +475 -50
  116. package/coverage/lcov-report/components/SessionDialogUI.jsx.html +248 -255
  117. package/coverage/lcov-report/components/SideNav/Chart/ScoreChart.jsx.html +272 -408
  118. package/coverage/lcov-report/components/SideNav/Chart/index.html +28 -38
  119. package/coverage/lcov-report/components/SideNav/Content/SelectRole/index.html +116 -0
  120. package/coverage/lcov-report/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  121. package/coverage/lcov-report/components/SideNav/helpers.js.html +987 -46
  122. package/coverage/lcov-report/components/SideNav/index.html +24 -19
  123. package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +70 -65
  124. package/coverage/lcov-report/components/Tooltip/index.html +8 -3
  125. package/coverage/lcov-report/components/Tooltip/index.js.html +8 -3
  126. package/coverage/lcov-report/components/Tooltip/position.js.html +57 -64
  127. package/coverage/lcov-report/components/hooks/index.html +116 -0
  128. package/coverage/lcov-report/components/hooks/useGetConfig.js.html +310 -0
  129. package/coverage/lcov-report/components/index.html +10 -5
  130. package/coverage/lcov-report/index.html +401 -21
  131. package/coverage/lcov-report/{Error/ErrorUI.jsx.html → lib/Chevron.jsx.html} +44 -42
  132. package/coverage/lcov-report/lib/SvgComponents.jsx.html +1840 -0
  133. package/coverage/lcov-report/lib/index.html +34 -14
  134. package/coverage/lcov-report/react/components/Accordion/index.html +26 -21
  135. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +67 -86
  136. package/coverage/lcov-report/react/components/{FlashNotification → Button}/index.html +23 -33
  137. package/coverage/lcov-report/{components/SideNav/Links/NavLinkInline.jsx.html → react/components/Button/index.js.html} +119 -120
  138. package/coverage/lcov-report/react/components/{Tabs → Dropdown}/index.html +23 -33
  139. package/coverage/lcov-report/react/components/{InfoModal/index.jsx.html → Dropdown/index.js.html} +102 -154
  140. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +26 -21
  141. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +11 -6
  142. package/coverage/lcov-report/react/components/Error/error.js.html +8 -3
  143. package/coverage/lcov-report/react/components/Error/index.html +11 -6
  144. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +196 -194
  145. package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +9 -4
  146. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +18 -13
  147. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +18 -13
  148. package/coverage/lcov-report/react/components/Footer/footer.js.html +12 -37
  149. package/coverage/lcov-report/react/components/Footer/index.html +35 -45
  150. package/coverage/lcov-report/react/components/{InfoModal → GovBanner}/index.html +27 -22
  151. package/coverage/lcov-report/react/components/{Tabs/TabsUI.jsx.html → GovBanner/index.js.html} +146 -153
  152. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +81 -154
  153. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +15 -10
  154. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +91 -50
  155. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +105 -31
  156. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +109 -26
  157. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +510 -85
  158. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +137 -24
  159. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +134 -21
  160. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +56 -24
  161. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +172 -179
  162. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +30 -19
  163. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +331 -0
  164. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +9 -4
  165. package/coverage/lcov-report/react/components/Header/header.js.html +15 -4
  166. package/coverage/lcov-report/react/components/Header/hooks.js.html +187 -26
  167. package/coverage/lcov-report/react/components/Header/index.html +157 -122
  168. package/coverage/lcov-report/react/components/{Spinner/index.js.html → Header/utag-helpers.js.html} +26 -21
  169. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +12 -7
  170. package/coverage/lcov-report/react/components/{Tabs/tabs.js.html → Infotip/InfotipContent.jsx.html} +83 -48
  171. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +12 -7
  172. package/coverage/lcov-report/react/components/Infotip/index.html +8 -3
  173. package/coverage/lcov-report/react/components/Infotip/index.js.html +8 -3
  174. package/coverage/lcov-report/react/components/{FlashNotification/FlashNotificationUI.jsx.html → Modal/LegacyModal.jsx.html} +89 -84
  175. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +505 -0
  176. package/coverage/lcov-report/react/components/Modal/index.html +52 -17
  177. package/coverage/lcov-report/react/components/Modal/index.jsx.html +38 -201
  178. package/coverage/lcov-report/{components/SideNav/Links/CmsSwitchLink.jsx.html → react/components/NotificationBanner/CollapsedView.js.html} +52 -50
  179. package/coverage/lcov-report/{components/SideNav/Details/PracticeDetails.jsx.html → react/components/NotificationBanner/ExpandedView.js.html} +74 -57
  180. package/coverage/lcov-report/react/components/NotificationBanner/index.html +56 -21
  181. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +615 -43
  182. package/coverage/lcov-report/react/components/SanitizedContent/index.html +8 -3
  183. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +12 -7
  184. package/coverage/lcov-report/react/components/{Spinner → SessionDialog}/index.html +11 -6
  185. package/coverage/lcov-report/react/components/{FlashNotification/index.js.html → SessionDialog/sessionDialog.js.html} +35 -42
  186. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +80 -51
  187. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +38 -12
  188. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +18 -13
  189. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +67 -56
  190. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +26 -21
  191. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +9 -4
  192. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +189 -514
  193. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +28 -17
  194. package/coverage/lcov-report/{components/SideNav/Details → react/components/SideNav/Content/SelectRole}/index.html +42 -52
  195. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +316 -0
  196. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +505 -0
  197. package/coverage/lcov-report/react/components/SideNav/Content/index.html +32 -27
  198. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +8 -3
  199. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +10 -5
  200. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +26 -9
  201. package/coverage/lcov-report/react/components/SideNav/Details/index.html +23 -18
  202. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +8 -3
  203. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +9 -4
  204. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +8 -3
  205. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +54 -64
  206. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +281 -27
  207. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +66 -46
  208. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +8 -3
  209. package/coverage/lcov-report/react/components/SideNav/Links/index.html +44 -39
  210. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +8 -3
  211. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +165 -181
  212. package/coverage/lcov-report/react/components/SideNav/UI/index.html +28 -23
  213. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +8 -3
  214. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +967 -26
  215. package/coverage/lcov-report/react/components/SideNav/index.html +27 -22
  216. package/coverage/lcov-report/react/components/SideNav/index.js.html +8 -3
  217. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +20 -15
  218. package/coverage/lcov-report/react/components/Tooltip/index.html +8 -3
  219. package/coverage/lcov-report/react/components/Tooltip/index.js.html +8 -3
  220. package/coverage/lcov-report/react/components/Tooltip/position.js.html +22 -17
  221. package/coverage/lcov-report/{components/SideNav/AnimationGroup → react/components/hooks}/index.html +29 -24
  222. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +310 -0
  223. package/coverage/lcov-report/react/components/index.html +10 -5
  224. package/coverage/lcov-report/react/index.html +20 -15
  225. package/coverage/lcov-report/react/index.js.html +29 -9
  226. package/coverage/lcov-report/react/lib/Chevron.jsx.html +181 -0
  227. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +221 -132
  228. package/coverage/lcov-report/react/lib/index.html +32 -27
  229. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +8 -3
  230. package/coverage/lcov-report/react/session/index.html +32 -27
  231. package/coverage/lcov-report/react/session/index.js.html +8 -3
  232. package/coverage/lcov-report/react/session/logout.js.html +122 -18
  233. package/coverage/lcov-report/react/session/refresh.js.html +12 -7
  234. package/coverage/lcov-report/react/session/ttl.js.html +9 -4
  235. package/coverage/lcov-report/session/index.html +50 -45
  236. package/coverage/lcov-report/session/index.js.html +8 -3
  237. package/coverage/lcov-report/session/logout.js.html +144 -49
  238. package/coverage/lcov-report/session/refresh.js.html +41 -36
  239. package/coverage/lcov-report/session/ttl.js.html +34 -29
  240. package/coverage/lcov-report/sorter.js +26 -0
  241. package/coverage/lcov.info +3189 -46
  242. package/dist/browser.js +1 -1
  243. package/dist/browser.js.LICENSE.txt +1 -7
  244. package/dist/browser.js.map +1 -1
  245. package/dist/index.js +1 -1
  246. package/dist/index.js.LICENSE.txt +1 -7
  247. package/dist/index.js.map +1 -1
  248. package/dist/react/index.js +1 -1
  249. package/dist/react/index.js.LICENSE.txt +16 -16
  250. package/dist/react/index.js.map +1 -1
  251. package/fonts/PublicSans-Black.ttf +0 -0
  252. package/fonts/PublicSans-BlackItalic.ttf +0 -0
  253. package/fonts/PublicSans-Bold.ttf +0 -0
  254. package/fonts/PublicSans-BoldItalic.ttf +0 -0
  255. package/fonts/PublicSans-ExtraBold.ttf +0 -0
  256. package/fonts/PublicSans-ExtraBoldItalic.ttf +0 -0
  257. package/fonts/PublicSans-ExtraLight.ttf +0 -0
  258. package/fonts/PublicSans-ExtraLightItalic.ttf +0 -0
  259. package/fonts/PublicSans-Italic.ttf +0 -0
  260. package/fonts/PublicSans-Light.ttf +0 -0
  261. package/fonts/PublicSans-LightItalic.ttf +0 -0
  262. package/fonts/PublicSans-Medium.ttf +0 -0
  263. package/fonts/PublicSans-MediumItalic.ttf +0 -0
  264. package/fonts/PublicSans-Regular.ttf +0 -0
  265. package/fonts/PublicSans-SemiBold.ttf +0 -0
  266. package/fonts/PublicSans-SemiBoldItalic.ttf +0 -0
  267. package/fonts/PublicSans-Thin.ttf +0 -0
  268. package/fonts/PublicSans-ThinItalic.ttf +0 -0
  269. package/images/icon-dot-gov.svg +1 -0
  270. package/images/icon-https.svg +1 -0
  271. package/images/icons/close-x.svg +6 -0
  272. package/images/icons/svg/arrow-down.svg +3 -0
  273. package/images/icons/svg/arrow-download.svg +1 -0
  274. package/images/icons/svg/arrow-right.svg +1 -0
  275. package/images/icons/svg/arrow-up.svg +3 -0
  276. package/images/icons/svg/block.svg +5 -0
  277. package/images/icons/svg/calendar.svg +1 -0
  278. package/images/icons/svg/check-circle.svg +5 -0
  279. package/images/icons/svg/checkmark.svg +7 -0
  280. package/images/icons/svg/chevron-down.svg +11 -0
  281. package/images/icons/svg/chevron-left.svg +12 -0
  282. package/images/icons/svg/chevron-right.svg +12 -0
  283. package/images/icons/svg/chevron-up.svg +12 -0
  284. package/images/icons/svg/clipboard.svg +1 -0
  285. package/images/icons/svg/close.svg +1 -0
  286. package/images/icons/svg/divide.svg +13 -0
  287. package/images/icons/svg/doctors-and-clinicians-preview.svg +10 -0
  288. package/images/icons/svg/download.svg +1 -0
  289. package/images/icons/svg/dropdown-arrow.svg +1 -0
  290. package/images/icons/svg/equals.svg +13 -0
  291. package/images/icons/svg/exclamation.svg +11 -0
  292. package/images/icons/svg/external.svg +1 -0
  293. package/images/icons/svg/file-download.svg +1 -0
  294. package/images/icons/svg/file-upload.svg +1 -0
  295. package/images/icons/svg/info.svg +20 -0
  296. package/images/icons/svg/manage-user-access.svg +8 -0
  297. package/images/icons/svg/multiply.svg +12 -0
  298. package/images/icons/svg/performance-feedback.svg +1 -0
  299. package/images/icons/svg/plus.svg +12 -0
  300. package/images/icons/svg/preview.svg +17 -0
  301. package/images/icons/svg/print.svg +1 -0
  302. package/images/icons/svg/registration.svg +8 -0
  303. package/images/icons/svg/reporting.svg +17 -0
  304. package/images/icons/svg/save-disk.svg +5 -0
  305. package/images/icons/svg/search.svg +1 -0
  306. package/images/icons/svg/subtract.svg +15 -0
  307. package/images/icons/svg/targeted-review.svg +15 -0
  308. package/images/icons/svg/tooltip-question.svg +1 -0
  309. package/images/icons/svg/trash.svg +1 -0
  310. package/images/icons/svg/upload.svg +1 -0
  311. package/images/us_flag_small.png +0 -0
  312. package/index.js +5 -0
  313. package/jest.config.js +139 -132
  314. package/lib/Chevron.jsx +32 -0
  315. package/lib/SvgComponents.jsx +197 -49
  316. package/package.json +60 -78
  317. package/session/logout.js +35 -2
  318. package/styles/_global.scss +63 -62
  319. package/styles/_main.scss +6 -0
  320. package/styles/_qpp-style.scss +0 -3
  321. package/styles/components/_accordion.scss +249 -246
  322. package/styles/components/_autocomplete.scss +0 -3
  323. package/styles/components/_spinner.scss +0 -2
  324. package/styles/components/_tables.scss +77 -67
  325. package/styles/components/_text.scss +102 -102
  326. package/styles/components/_variables.scss +12 -12
  327. package/styles/qppds/base/_backgrounds.scss +1 -6
  328. package/styles/qppds/base/_fonts.scss +24 -0
  329. package/styles/qppds/base/_icon.scss +31 -0
  330. package/styles/qppds/base/_layout.scss +5 -0
  331. package/styles/qppds/base/_typography.scss +77 -43
  332. package/styles/qppds/base/index.scss +3 -6
  333. package/styles/qppds/components/_alert.scss +101 -0
  334. package/styles/qppds/components/_breadcrumbs.scss +42 -10
  335. package/styles/qppds/components/_button.scss +38 -12
  336. package/styles/qppds/components/_card.scss +175 -0
  337. package/styles/qppds/components/_checkbox.scss +199 -0
  338. package/styles/qppds/components/_circular-loader.scss +47 -0
  339. package/styles/qppds/components/_details.scss +90 -0
  340. package/styles/qppds/components/_dropdown-menu.scss +125 -0
  341. package/styles/qppds/components/_dropdown.scss +5 -0
  342. package/styles/qppds/components/_footer.scss +606 -0
  343. package/styles/qppds/components/_gov-banner.scss +344 -0
  344. package/styles/{components → qppds/components}/_header.scss +460 -24
  345. package/styles/qppds/components/_link.scss +32 -9
  346. package/styles/qppds/components/_modal.scss +61 -21
  347. package/styles/qppds/components/_page-header.scss +65 -2
  348. package/styles/qppds/components/_pagination.scss +227 -0
  349. package/styles/qppds/components/_process-list.scss +104 -0
  350. package/styles/qppds/components/_radio-button.scss +184 -0
  351. package/styles/qppds/components/_search.scss +118 -0
  352. package/styles/{components → qppds/components}/_sidebar.scss +2 -0
  353. package/styles/qppds/components/_step-indicator.scss +190 -0
  354. package/styles/qppds/components/_table.scss +157 -0
  355. package/styles/qppds/components/_tabs.scss +197 -0
  356. package/styles/qppds/components/_text-input.scss +60 -0
  357. package/styles/qppds/components/index.scss +18 -0
  358. package/styles/{components → qppds/components}/sidebar/_links.scss +48 -1
  359. package/styles/qppds/components/sidebar/_select-role-dropdown.scss +21 -0
  360. package/styles/{components → qppds/components}/sidebar/_sidebar-animation.scss +4 -0
  361. package/styles/qppds/components/sidebar/_sidebar.scss +146 -0
  362. package/styles/qppds/settings/_functions.scss +3 -1
  363. package/styles/qppds/settings/mixins/_borders.scss +6 -0
  364. package/styles/qppds/settings/mixins/_focus.scss +7 -1
  365. package/styles/qppds/settings/mixins/_icons.scss +39 -4
  366. package/styles/qppds/settings/mixins/_index.scss +3 -0
  367. package/styles/qppds/settings/mixins/_layout.scss +46 -7
  368. package/styles/qppds/settings/mixins/_table.scss +91 -0
  369. package/styles/qppds/settings/mixins/_type.scss +89 -0
  370. package/styles/qppds/settings/variables/_color.scss +47 -1
  371. package/styles/qppds/settings/variables/_index.scss +2 -1
  372. package/styles/qppds/settings/variables/_layout.scss +34 -9
  373. package/styles/qppds/settings/variables/_type.scss +41 -0
  374. package/styles/qppds/settings/variables/_z-index.scss +8 -0
  375. package/styles/qppds/utilities/_background-color.scss +4 -0
  376. package/styles/qppds/utilities/_color.scss +24 -0
  377. package/styles/qppds/utilities/{_display-visability.scss → _display-visibility.scss} +8 -0
  378. package/styles/qppds/utilities/_flexbox.scss +113 -0
  379. package/styles/qppds/utilities/_font-family.scss +4 -0
  380. package/styles/qppds/utilities/_gap.scss +38 -0
  381. package/styles/qppds/utilities/_height.scss +79 -0
  382. package/styles/qppds/utilities/_list-style.scss +18 -0
  383. package/styles/qppds/utilities/_position.scss +24 -0
  384. package/styles/qppds/utilities/_text-align.scss +40 -0
  385. package/styles/qppds/utilities/_text-transform.scss +7 -0
  386. package/styles/qppds/utilities/_truncate.scss +5 -5
  387. package/styles/qppds/utilities/_vertical-align.scss +72 -0
  388. package/styles/qppds/utilities/_width.scss +38 -1
  389. package/styles/qppds/utilities/index.scss +8 -2
  390. package/svgo.config.js +14 -0
  391. package/test/components/Accordion.test.js +4 -13
  392. package/test/components/ErrorUI.test.js +10 -46
  393. package/test/components/FooterUI.test.js +0 -30
  394. package/test/components/HeaderUI.test.js +32 -40
  395. package/test/components/Infotip.test.js +18 -12
  396. package/test/components/SessionDialogUI.test.js +55 -70
  397. package/test-setup.js +0 -8
  398. package/webpack.config.js +29 -39
  399. package/webpack.config.react.js +7 -18
  400. package/.storybook/.babelrc +0 -4
  401. package/.storybook/main.js +0 -88
  402. package/.storybook/preview-head.html +0 -9
  403. package/.storybook/preview.js +0 -5
  404. package/Session.vim +0 -83
  405. package/components/Accordion/Accordion.stories.js +0 -20
  406. package/components/Breadcrumb/Breadcrumb.stories.js +0 -58
  407. package/components/Button/Button.stories.js +0 -125
  408. package/components/Footer/Footer.stories.js +0 -20
  409. package/components/Footer/LegacyFooterUI.jsx +0 -194
  410. package/components/Header/Header.stories.js +0 -32
  411. package/components/InfoModal/InfoModal.stories.js +0 -98
  412. package/components/InfoModal/index.jsx +0 -104
  413. package/components/Infotip/Infotip.stories.js +0 -50
  414. package/components/Modal/Modal.stories.js +0 -159
  415. package/components/NotificationBanner/NotificationBanner.stories.js +0 -22
  416. package/components/NotificationBanner/NotificationBannerUI.jsx +0 -282
  417. package/components/SideNav/SideNav.stories.js +0 -397
  418. package/components/Spinner/index.js +0 -9
  419. package/components/Tabs/TabsUI.jsx +0 -118
  420. package/components/Tabs/tabs.js +0 -36
  421. package/components/Tooltip/Tooltip.jsx +0 -88
  422. package/components/Tooltip/Tooltip.stories.js +0 -80
  423. package/components/Tooltip/index.js +0 -3
  424. package/components/Tooltip/position.js +0 -68
  425. package/components/UnwrappedSpinner/index.js +0 -8
  426. package/components/UnwrappedTabs/TabPanelUI.jsx +0 -16
  427. package/components/UnwrappedTabs/TabsUI.jsx +0 -82
  428. package/coverage/lcov-report/Accordion/index.html +0 -111
  429. package/coverage/lcov-report/Error/index.html +0 -126
  430. package/coverage/lcov-report/ScoreChart.jsx.html +0 -1025
  431. package/coverage/lcov-report/SideNav/Chart/ScoreChart.jsx.html +0 -1025
  432. package/coverage/lcov-report/components/Footer/LegacyFooterUI.jsx.html +0 -668
  433. package/coverage/lcov-report/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -1010
  434. package/coverage/lcov-report/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -131
  435. package/coverage/lcov-report/components/SideNav/Chart/index.js.html +0 -89
  436. package/coverage/lcov-report/components/SideNav/Content/LevelOneContent.jsx.html +0 -1007
  437. package/coverage/lcov-report/components/SideNav/Content/index.html +0 -141
  438. package/coverage/lcov-report/components/SideNav/Content/index.js.html +0 -92
  439. package/coverage/lcov-report/components/SideNav/Details/index.js.html +0 -92
  440. package/coverage/lcov-report/components/SideNav/Links/index.html +0 -201
  441. package/coverage/lcov-report/components/SideNav/UI/SideNavUI.jsx.html +0 -1298
  442. package/coverage/lcov-report/components/SideNav/UI/index.html +0 -126
  443. package/coverage/lcov-report/components/SideNav/UI/index.js.html +0 -89
  444. package/coverage/lcov-report/lib/svg-definitions.svg.html +0 -1319
  445. package/coverage/lcov-report/react/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -926
  446. package/styles/components/_footer.scss +0 -593
  447. package/styles/components/_header_backup.scss +0 -574
  448. package/styles/components/sidebar/_sidebar.scss +0 -141
  449. package/test/components/Tooltip.test.js +0 -147
  450. package/test/components/__snapshots__/Accordion.test.js.snap +0 -11439
  451. package/test/components/__snapshots__/HeaderUI.test.js.snap +0 -3
  452. /package/styles/{components → qppds/components}/sidebar/_animations.scss +0 -0
  453. /package/styles/{components → qppds/components}/sidebar/_cms.scss +0 -0
  454. /package/styles/{components → qppds/components}/sidebar/_details.scss +0 -0
  455. /package/styles/{components → qppds/components}/sidebar/_sidebar-tooltip.scss +0 -0
  456. /package/styles/{components → qppds/components}/sidebar/project-specific/_wi.scss +0 -0
@@ -0,0 +1,53 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Add, Remove } from './DetailsIcons';
4
+
5
+ const Details = ({ children, title, variant, className, ...rest }) => {
6
+ if (variant === 'header') {
7
+ return (
8
+ <details className="qpp-c-details qpp-c-details--header">
9
+ <summary>
10
+ {title}
11
+ <span className="qpp-c-details--icon-closed" aria-hidden="true">
12
+ <Add iconText="View" />
13
+ </span>
14
+ <span className="qpp-c-details--icon-open" aria-hidden="true">
15
+ <Remove iconText="Hide" />
16
+ </span>
17
+ </summary>
18
+ {children}
19
+ </details>
20
+ );
21
+ }
22
+
23
+ return (
24
+ <details className={`qpp-c-details ${className}`} {...rest}>
25
+ <summary
26
+ className={
27
+ variant === 'text-button' ? 'qpp-c-button qpp-c-button--text' : ''
28
+ }
29
+ >
30
+ <Add />
31
+ <Remove />
32
+ {title}
33
+ </summary>
34
+ {children}
35
+ </details>
36
+ );
37
+ };
38
+
39
+ Details.propTypes = {
40
+ children: PropTypes.node,
41
+ title: PropTypes.node,
42
+ variant: PropTypes.oneOf(['header', 'text-button']),
43
+ className: PropTypes.string,
44
+ };
45
+
46
+ Details.defaultProps = {
47
+ children: false,
48
+ title: null,
49
+ variant: null,
50
+ className: '',
51
+ };
52
+
53
+ export default Details;
@@ -0,0 +1,85 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+
4
+ const Dropdown = ({
5
+ className,
6
+ id,
7
+ ariaLabelledBy,
8
+ ariaLabel,
9
+ onChange,
10
+ dataTestId,
11
+ name,
12
+ dataType,
13
+ disabled,
14
+ size,
15
+ options,
16
+ children,
17
+ parentElement,
18
+ ...rest
19
+ }) => {
20
+ const dropdownClass = [
21
+ 'qpp-c-dropdown',
22
+ size === 'big' && 'qpp-c-dropdown--big',
23
+ className,
24
+ ]
25
+ .filter(Boolean)
26
+ .join(' ');
27
+
28
+ return (
29
+ <select
30
+ id={id}
31
+ aria-labelledby={ariaLabelledBy}
32
+ aria-label={ariaLabel}
33
+ className={dropdownClass || ''}
34
+ onChange={onChange}
35
+ data-testid={dataTestId}
36
+ name={name}
37
+ disabled={disabled}
38
+ data-type={dataType}
39
+ {...rest}
40
+ >
41
+ {children}
42
+ {options.map(({ disabled, name, value }) => (
43
+ <option disabled={disabled} key={value} value={value}>
44
+ {name}
45
+ </option>
46
+ ))}
47
+ </select>
48
+ );
49
+ };
50
+
51
+ Dropdown.propTypes = {
52
+ children: PropTypes.node,
53
+ className: PropTypes.string,
54
+ id: PropTypes.string,
55
+ ariaLabelledBy: PropTypes.string,
56
+ ariaLabel: PropTypes.string,
57
+ onChange: PropTypes.func,
58
+ value: PropTypes.string,
59
+ defaultValue: PropTypes.string,
60
+ dataTestId: PropTypes.string,
61
+ name: PropTypes.string,
62
+ dataType: PropTypes.string,
63
+ disabled: PropTypes.bool,
64
+ size: PropTypes.oneOf(['big']),
65
+ options: PropTypes.array,
66
+ parentElement: PropTypes.string,
67
+ };
68
+
69
+ Dropdown.defaultProps = {
70
+ children: false,
71
+ className: 'qpp-u-width--100',
72
+ id: null,
73
+ ariaLabelledBy: null,
74
+ ariaLabel: null,
75
+ onChange: () => null,
76
+ dataTestId: null,
77
+ name: null,
78
+ dataType: null,
79
+ disabled: false,
80
+ size: null,
81
+ options: [],
82
+ parentElement: 'span',
83
+ };
84
+
85
+ export default Dropdown;
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Menu as AriaKitMenu } from 'ariakit/menu';
4
+
5
+ function Menu({ state, className, children, ...props }) {
6
+ return (
7
+ <AriaKitMenu as="ul" state={state} className={className} {...props}>
8
+ {children}
9
+ </AriaKitMenu>
10
+ );
11
+ }
12
+
13
+ Menu.propTypes = {
14
+ state: PropTypes.object.isRequired,
15
+ className: PropTypes.string,
16
+ children: PropTypes.node,
17
+ };
18
+
19
+ Menu.defaultProps = {
20
+ className:
21
+ 'qpp-c-dropdown-menu qpp-c-dropdown-menu__box qpp-c-dropdown-menu__list',
22
+ children: null,
23
+ };
24
+
25
+ export default Menu;
@@ -0,0 +1,41 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { MenuButton as AriaKitButton } from 'ariakit/menu';
4
+
5
+ function MenuButton({ state, className, iconExist, children, ...props }) {
6
+ const dropDownIsOpen = state.open;
7
+
8
+ const CheveronUpIcon = 'M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z';
9
+ const CheveronDownIcon = 'M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z';
10
+
11
+ return (
12
+ <AriaKitButton state={state} className={className} {...props}>
13
+ {children}{' '}
14
+ {iconExist && (
15
+ <svg
16
+ className="qpp-icon-mat qpp-icon-inline--lg"
17
+ focusable="false"
18
+ viewBox="0 0 24 24"
19
+ aria-hidden="true"
20
+ >
21
+ <path d={dropDownIsOpen ? CheveronUpIcon : CheveronDownIcon} />
22
+ </svg>
23
+ )}
24
+ </AriaKitButton>
25
+ );
26
+ }
27
+
28
+ MenuButton.propTypes = {
29
+ state: PropTypes.object.isRequired,
30
+ className: PropTypes.string,
31
+ iconExist: PropTypes.bool,
32
+ children: PropTypes.node,
33
+ };
34
+
35
+ MenuButton.defaultProps = {
36
+ className: 'qpp-c-button',
37
+ iconExist: true,
38
+ children: null,
39
+ };
40
+
41
+ export default MenuButton;
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { MenuItem as AriaKitMenuItem } from 'ariakit/menu';
4
+
5
+ function MenuItem({ as, className, children, ...props }) {
6
+ return (
7
+ <AriaKitMenuItem as={as} className={className} {...props}>
8
+ {children}
9
+ </AriaKitMenuItem>
10
+ );
11
+ }
12
+
13
+ MenuItem.propTypes = {
14
+ as: PropTypes.string,
15
+ className: PropTypes.string,
16
+ children: PropTypes.node,
17
+ };
18
+
19
+ MenuItem.defaultProps = {
20
+ as: 'li',
21
+ className: 'qpp-c-dropdown-menu__item',
22
+ children: null,
23
+ };
24
+
25
+ export default MenuItem;
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { MenuItem as AriaKitMenuItem } from 'ariakit/menu';
4
+
5
+ function MenuItemLink({ as, className, children, ...props }) {
6
+ return (
7
+ <li role="none">
8
+ <AriaKitMenuItem as={as} className={className} {...props}>
9
+ {children}
10
+ </AriaKitMenuItem>
11
+ </li>
12
+ );
13
+ }
14
+
15
+ MenuItemLink.propTypes = {
16
+ as: PropTypes.string,
17
+ className: PropTypes.string,
18
+ children: PropTypes.node,
19
+ };
20
+
21
+ MenuItemLink.defaultProps = {
22
+ as: 'a',
23
+ className: 'qpp-c-dropdown-menu__item',
24
+ children: null,
25
+ };
26
+
27
+ export default MenuItemLink;
@@ -38,7 +38,7 @@ class Collapsible extends Component {
38
38
 
39
39
  render() {
40
40
  const isArray = Array.isArray(this.props.content);
41
- const isHidden = this.state.isExpanded ? undefined : 'true';
41
+ const isHidden = this.state.isExpanded ? undefined : true;
42
42
 
43
43
  return (
44
44
  <div className="collapsible-container">
@@ -46,7 +46,7 @@ class Collapsible extends Component {
46
46
  onClick={this._toggleExpanded}
47
47
  className="collapsible-summary"
48
48
  type="button"
49
- aria-expanded={this.state.isExpanded ? 'true' : 'false'}
49
+ aria-expanded={this.state.isExpanded ? true : false}
50
50
  >
51
51
  {this._renderShowButton()}
52
52
  {this._renderHideButton()}
@@ -1,213 +1,211 @@
1
1
  import React from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import InfoTip from '../Infotip/Infotip';
4
- import LegacyFooterUI from './LegacyFooterUI';
5
3
  import Subscribe from './Subscribe';
6
4
  import SocialLinks from './SocialLinks';
5
+ import pjson from '../../package.json';
6
+ import { OpenInNewIcon } from '../../lib/SvgComponents';
7
7
 
8
8
  const infoTipLabel =
9
9
  'When dialing 711, you will automatically be connected to a TRS Communications Assistant who will relay your conversation to the help desk agent with strict confidentiality.';
10
+ const { version: buildVersion } = pjson;
10
11
 
11
- const FooterUI = (props) => {
12
- const isNewFooter = props.isNewFooter;
13
- const signUpNowLink = props.showHcdResearch
14
- ? '/about/hcd-research'
15
- : 'mailto:QPPUserResearch@cms.hhs.gov?subject=Sign up for feedback sessions&body=Please let us know your role and how many Tax Identification Numbers (TINs) you represent. Don’t send us your actual TINs, that is confidential information that should not be shared with this email address. If you do not represent a practice, let us know what work you do in connection to QPP.';
16
-
17
- if (isNewFooter) {
18
- return (
19
- <>
20
- <div className="feedback-session-sign-up">
21
- <div className="responsive-container">
22
- <hr />
23
- <p>
24
- <strong>Help shape the future of QPP.</strong> Participate in a
25
- user feedback session.{' '}
26
- <a className="email-note-link" href={signUpNowLink}>
27
- Sign up now
28
- </a>
29
- </p>
30
- </div>
31
- </div>
32
- <footer className="global-footer">
33
- <div className="build-version" id="build-version">
34
- {props.buildVersion}
35
- </div>
36
-
37
- <div className="responsive-container">
38
- <div className="global-footer-container">
39
- <div className="footer-resources">
40
- <p className="sub-title">Resources</p>
41
- <ul>
42
- <li>
43
- <a
44
- href="/about/resource-library"
45
- aria-label="Resource Library"
46
- data-track-category="FooterNav"
47
- data-track-action="OpenEducationAndTools"
48
- data-track-label="Education and Tools"
49
- >
50
- Resource Library
51
- </a>
52
- </li>
53
- <li>
54
- <a
55
- href="/resources/help-and-support"
56
- aria-label="Help and Support"
57
- data-track-category="FooterNav"
58
- data-track-action="OpenHelpAndSupport"
59
- data-track-label="Help and Support"
60
- >
61
- Help and Support
62
- </a>
63
- </li>
64
- <li>
65
- <a
66
- href="/about/small-underserved-rural-practices"
67
- aria-label="Support for Small Practices"
68
- data-track-category="FooterNav"
69
- data-track-action="OpenSupportSmallPractices"
70
- data-track-label="Support for Small Practices"
71
- >
72
- Support for Small Practices
73
- </a>
74
- </li>
75
- <li>
76
- <a
77
- href="/developers"
78
- aria-label="Developer Tools"
79
- data-track-category="FooterNav"
80
- data-track-action="OpenDeveloperTools"
81
- data-track-label="Quality Payment Program"
82
- >
83
- Developer Tools
84
- </a>
85
- </li>
86
- <li>
87
- <a
88
- href="/glossary"
89
- aria-label="Glossary"
90
- data-track-category="FooterNav"
91
- data-track-action="OpenGlossary"
92
- data-track-label="Glossary"
93
- >
94
- Glossary
95
- </a>
96
- </li>
97
- </ul>
98
- </div>
99
- <div className="footer-contact-cms">
100
- <p className="sub-title">Contact CMS</p>
101
- <p className="contact-title">By Phone:</p>
102
- <p>Monday - Friday 8 a.m - 8 p.m ET</p>
103
- <p>
104
- 1-866-288-8292 (TRS: 711)
105
- <span className="footer-trs-infotip">
106
- <InfoTip label={infoTipLabel} />
107
- </span>
108
- </p>
109
- <p className="contact-title">By Email:</p>
110
- <p>
12
+ const FooterUI = () => (
13
+ <>
14
+ <div className="feedback-session-sign-up">
15
+ <div className="responsive-container">
16
+ <hr />
17
+ <p>
18
+ <strong>Help shape the future of QPP.</strong> Participate in a user
19
+ feedback session.{' '}
20
+ <a className="email-note-link" href="/about/hcd-research">
21
+ Sign up now
22
+ </a>
23
+ </p>
24
+ </div>
25
+ </div>
26
+ <footer className="global-footer">
27
+ <div className="build-version" id="build-version">
28
+ {buildVersion}
29
+ </div>
30
+ <div className="responsive-container">
31
+ <>
32
+ <div className="global-footer-container">
33
+ <div className="footer-resources">
34
+ <h3 className="sub-title">Resources</h3>
35
+ <ul>
36
+ <li>
111
37
  <a
112
- aria-label="QPP@cms.hhs.gov"
113
- href="mailto:QPP@cms.hhs.gov"
114
- className="email-link"
38
+ href="/about/resource-library"
39
+ aria-label="Resource Library"
40
+ data-track-category="FooterNav"
41
+ data-track-action="OpenEducationAndTools"
42
+ data-track-label="Education and Tools"
115
43
  >
116
- QPP@cms.hhs.gov
44
+ Resource Library
117
45
  </a>
118
- </p>
119
- </div>
120
- <div className="footer-social-newsletter">
121
- <p className="sub-title">Stay Connected</p>
122
- <SocialLinks />
123
- <p className="sub-title">Sign Up for the QPP Newsletter</p>
124
- <Subscribe />
125
- </div>
126
- </div>
127
- <hr />
128
- <div className="other-links">
129
- <ul className="small">
46
+ </li>
47
+ <li>
48
+ <a
49
+ href="/resources/help-and-support"
50
+ aria-label="Help and Support"
51
+ data-track-category="FooterNav"
52
+ data-track-action="OpenHelpAndSupport"
53
+ data-track-label="Help and Support"
54
+ >
55
+ Help and Support
56
+ </a>
57
+ </li>
130
58
  <li>
131
59
  <a
132
- href="/privacy"
133
- aria-label="Notice of Privacy and Disclaimer"
60
+ href="/about/small-underserved-rural-practices"
61
+ aria-label="Support for Small Practices"
134
62
  data-track-category="FooterNav"
135
- data-track-action="OpenPrivacyDisclaimer"
136
- data-track-label="Notice of Privacy and Disclaimer"
63
+ data-track-action="OpenSupportSmallPractices"
64
+ data-track-label="Support for Small Practices"
137
65
  >
138
- CMS Privacy Notice
66
+ Support for Small Practices
139
67
  </a>
140
68
  </li>
141
- <li className="divider"></li>{' '}
142
69
  <li>
143
70
  <a
144
- href="/accessibility"
145
- aria-label="Accessibility"
71
+ href="/developers"
72
+ aria-label="Developer Tools"
146
73
  data-track-category="FooterNav"
147
- data-track-action="OpenAccessibility"
148
- data-track-label="Accessibility"
74
+ data-track-action="OpenDeveloperTools"
75
+ data-track-label="Quality Payment Program"
149
76
  >
150
- Accessibility
77
+ Developer Tools
151
78
  </a>
152
79
  </li>
153
- <li className="divider"></li>{' '}
154
80
  <li>
155
81
  <a
156
- aria-label="Download Adobe Reader"
157
- className="adobe-link"
158
- rel="noopener noreferrer"
159
- target="_blank"
160
- href="https://get.adobe.com/reader"
82
+ href="/glossary"
83
+ aria-label="Glossary"
161
84
  data-track-category="FooterNav"
162
- data-track-action="DownloadAdobeReader"
163
- data-track-label="AdobeReader"
85
+ data-track-action="OpenGlossary"
86
+ data-track-label="Glossary"
164
87
  >
165
- Download Adobe Reader
88
+ Glossary
166
89
  </a>
167
90
  </li>
168
91
  </ul>
169
- <hr />
170
92
  </div>
171
- <div className="qpp-hhs-logo-container">
172
- <div className="qpp-logo-container">
173
- <img
174
- className="qpp-logo"
175
- src="/images/qpp_logo_rgb_color.png"
176
- alt="qpp logo"
177
- />
178
- </div>
179
- <div className="hhs-logo-container">
180
- <img
181
- className="hhs-logo"
182
- alt="Department of Health &amp; Human Services USA"
183
- src="/images/hhs-logo-black.svg"
184
- />
185
- <p>
186
- A federal government website managed and paid for by the U.S
187
- Centers for Medicare &amp; Medicaid Services. 7500 Security
188
- Boulevard, Baltimore MD 21244
189
- </p>
190
- </div>
93
+ <div className="footer-contact-cms">
94
+ <h3 className="sub-title">Contact CMS</h3>
95
+ <p className="contact-title">Phone:</p>
96
+ <p>Monday - Friday 8 a.m - 8 p.m ET</p>
97
+ <p>
98
+ 1-866-288-8292 (TRS: 711)
99
+ <span className="footer-trs-infotip">
100
+ <InfoTip
101
+ ariaLabel="TRS Communications Assistant Information"
102
+ label={infoTipLabel}
103
+ />
104
+ </span>
105
+ </p>
106
+
107
+ <p className="contact-title">Email:</p>
108
+ <p>
109
+ <a
110
+ aria-label="QPP@cms.hhs.gov"
111
+ href="mailto:QPP@cms.hhs.gov"
112
+ className="email-link"
113
+ >
114
+ QPP@cms.hhs.gov
115
+ </a>
116
+ </p>
117
+
118
+ <p className="contact-title">QPP Service Center:</p>
119
+ <h3 className="sub-title qpp-u-margin-y--0">
120
+ <a
121
+ href="https://cmsqualitysupport.servicenowservices.com/ccsq_support_central"
122
+ aria-label="CCSQ Support Central"
123
+ className="email-link"
124
+ target="__blank"
125
+ rel="noopener noreferrer"
126
+ >
127
+ <strong>Create or Track a QPP Service Center Ticket</strong>
128
+ <OpenInNewIcon className="ccsq-link-icon" />
129
+ </a>
130
+ </h3>
131
+ </div>
132
+ <div className="footer-social-newsletter">
133
+ <h3 className="sub-title">Stay Connected</h3>
134
+ <SocialLinks />
135
+ <h3 className="sub-title">Sign Up for the QPP Listserv</h3>
136
+ <Subscribe />
191
137
  </div>
192
138
  </div>
193
- </footer>
194
- </>
195
- );
196
- }
197
- return (
198
- <LegacyFooterUI
199
- buildVersion={props.buildVersion}
200
- isFullWidth={props.isFullWidth}
201
- signUpNowLink={signUpNowLink}
202
- />
203
- );
204
- };
139
+ <hr />
140
+ </>
205
141
 
206
- FooterUI.propTypes = {
207
- buildVersion: PropTypes.string,
208
- isFullWidth: PropTypes.bool,
209
- isNewFooter: PropTypes.bool,
210
- showHcdResearch: PropTypes.bool,
211
- };
142
+ <div className="other-links">
143
+ <ul className="small">
144
+ <li>
145
+ <a
146
+ href="/privacy"
147
+ aria-label="Notice of Privacy and Disclaimer"
148
+ data-track-category="FooterNav"
149
+ data-track-action="OpenPrivacyDisclaimer"
150
+ data-track-label="Notice of Privacy and Disclaimer"
151
+ >
152
+ CMS Privacy Notice
153
+ </a>
154
+ </li>
155
+ <li className="divider"></li>{' '}
156
+ <li>
157
+ <a
158
+ href="/accessibility"
159
+ aria-label="Accessibility"
160
+ data-track-category="FooterNav"
161
+ data-track-action="OpenAccessibility"
162
+ data-track-label="Accessibility"
163
+ >
164
+ Accessibility
165
+ </a>
166
+ </li>
167
+ <li className="divider"></li>{' '}
168
+ <li>
169
+ <a
170
+ aria-label="Download Adobe Reader"
171
+ className="adobe-link"
172
+ rel="noopener noreferrer"
173
+ target="_blank"
174
+ href="https://get.adobe.com/reader"
175
+ data-track-category="FooterNav"
176
+ data-track-action="DownloadAdobeReader"
177
+ data-track-label="AdobeReader"
178
+ >
179
+ Download Adobe Reader
180
+ </a>
181
+ </li>
182
+ </ul>
183
+ <hr />
184
+ </div>
185
+ <div className="qpp-hhs-logo-container">
186
+ <div className="qpp-logo-container">
187
+ <img
188
+ className="qpp-logo"
189
+ src="/images/qpp_logo_rgb_color.png"
190
+ alt="qpp logo"
191
+ />
192
+ </div>
193
+ <div className="hhs-logo-container">
194
+ <img
195
+ className="hhs-logo"
196
+ alt="Department of Health &amp; Human Services USA"
197
+ src="/images/hhs-logo-black.svg"
198
+ />
199
+ <p>
200
+ A federal government website managed and paid for by the U.S
201
+ Centers for Medicare &amp; Medicaid Services. 7500 Security
202
+ Boulevard, Baltimore MD 21244
203
+ </p>
204
+ </div>
205
+ </div>
206
+ </div>
207
+ </footer>
208
+ </>
209
+ );
212
210
 
213
211
  export default FooterUI;