qpp-style 9.20.2 → 9.20.4

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 (111) hide show
  1. package/components/Footer/FooterUI.jsx +16 -14
  2. package/coverage/clover.xml +407 -355
  3. package/coverage/coverage-final.json +24 -23
  4. package/coverage/lcov-report/index.html +75 -75
  5. package/coverage/lcov-report/react/components/Accordion/index.html +1 -1
  6. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +1 -1
  7. package/coverage/lcov-report/react/components/Button/index.html +1 -1
  8. package/coverage/lcov-report/react/components/Button/index.js.html +1 -1
  9. package/coverage/lcov-report/react/components/Dropdown/index.html +1 -1
  10. package/coverage/lcov-report/react/components/Dropdown/index.js.html +1 -1
  11. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +1 -1
  12. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +1 -1
  13. package/coverage/lcov-report/react/components/Error/error.js.html +1 -1
  14. package/coverage/lcov-report/react/components/Error/index.html +1 -1
  15. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +22 -16
  16. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +1 -1
  17. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +1 -1
  18. package/coverage/lcov-report/react/components/Footer/footer.js.html +1 -1
  19. package/coverage/lcov-report/react/components/Footer/index.html +1 -1
  20. package/coverage/lcov-report/react/components/GovBanner/index.html +1 -1
  21. package/coverage/lcov-report/react/components/GovBanner/index.js.html +3 -3
  22. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +26 -251
  23. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +1 -1
  24. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +2 -2
  25. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +4 -4
  26. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +1 -1
  27. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +19 -19
  28. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +26 -8
  29. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +1 -1
  30. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +2 -2
  31. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +89 -113
  32. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +2 -2
  33. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +5 -5
  34. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +1 -1
  35. package/coverage/lcov-report/react/components/Header/header.js.html +1 -1
  36. package/coverage/lcov-report/react/components/Header/hooks.js.html +59 -17
  37. package/coverage/lcov-report/react/components/Header/index.html +36 -36
  38. package/coverage/lcov-report/react/components/Header/utag-helpers.js.html +1 -1
  39. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +1 -1
  40. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +1 -1
  41. package/coverage/lcov-report/react/components/Infotip/index.html +1 -1
  42. package/coverage/lcov-report/react/components/Infotip/index.js.html +1 -1
  43. package/coverage/lcov-report/react/components/Modal/LegacyModal.jsx.html +1 -1
  44. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +1 -1
  45. package/coverage/lcov-report/react/components/Modal/index.html +1 -1
  46. package/coverage/lcov-report/react/components/Modal/index.jsx.html +1 -1
  47. package/coverage/lcov-report/react/components/NotificationBanner/CollapsedView.js.html +202 -0
  48. package/coverage/lcov-report/react/components/NotificationBanner/ExpandedView.js.html +220 -0
  49. package/coverage/lcov-report/react/components/NotificationBanner/index.html +51 -21
  50. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +168 -300
  51. package/coverage/lcov-report/react/components/SanitizedContent/index.html +1 -1
  52. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +1 -1
  53. package/coverage/lcov-report/react/components/SessionDialog/index.html +1 -1
  54. package/coverage/lcov-report/react/components/SessionDialog/sessionDialog.js.html +1 -1
  55. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +1 -1
  56. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +1 -1
  57. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +1 -1
  58. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +1 -1
  59. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +1 -1
  60. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +1 -1
  61. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +109 -31
  62. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +1 -1
  63. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.html +15 -15
  64. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +10 -16
  65. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +104 -44
  66. package/coverage/lcov-report/react/components/SideNav/Content/index.html +19 -19
  67. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +1 -1
  68. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +1 -1
  69. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +1 -1
  70. package/coverage/lcov-report/react/components/SideNav/Details/index.html +1 -1
  71. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +1 -1
  72. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +1 -1
  73. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +1 -1
  74. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +1 -1
  75. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +3 -3
  76. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +1 -1
  77. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +1 -1
  78. package/coverage/lcov-report/react/components/SideNav/Links/index.html +1 -1
  79. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +1 -1
  80. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +4 -16
  81. package/coverage/lcov-report/react/components/SideNav/UI/index.html +1 -1
  82. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +1 -1
  83. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +264 -18
  84. package/coverage/lcov-report/react/components/SideNav/index.html +19 -19
  85. package/coverage/lcov-report/react/components/SideNav/index.js.html +1 -1
  86. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +1 -1
  87. package/coverage/lcov-report/react/components/Tooltip/index.html +1 -1
  88. package/coverage/lcov-report/react/components/Tooltip/index.js.html +1 -1
  89. package/coverage/lcov-report/react/components/Tooltip/position.js.html +1 -1
  90. package/coverage/lcov-report/react/components/hooks/index.html +19 -19
  91. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +37 -37
  92. package/coverage/lcov-report/react/components/index.html +1 -1
  93. package/coverage/lcov-report/react/index.html +1 -1
  94. package/coverage/lcov-report/react/index.js.html +1 -1
  95. package/coverage/lcov-report/react/lib/Chevron.jsx.html +2 -2
  96. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +61 -10
  97. package/coverage/lcov-report/react/lib/index.html +14 -29
  98. package/coverage/lcov-report/react/session/index.html +1 -1
  99. package/coverage/lcov-report/react/session/index.js.html +1 -1
  100. package/coverage/lcov-report/react/session/logout.js.html +1 -1
  101. package/coverage/lcov-report/react/session/refresh.js.html +1 -1
  102. package/coverage/lcov-report/react/session/ttl.js.html +1 -1
  103. package/coverage/lcov.info +808 -718
  104. package/dist/browser.js +1 -1
  105. package/dist/browser.js.map +1 -1
  106. package/dist/index.js +1 -1
  107. package/dist/index.js.map +1 -1
  108. package/dist/react/index.js +1 -1
  109. package/dist/react/index.js.map +1 -1
  110. package/package.json +10 -10
  111. package/styles/qppds/components/_footer.scss +2 -0
@@ -397,13 +397,7 @@
397
397
  <a name='L332'></a><a href='#L332'>332</a>
398
398
  <a name='L333'></a><a href='#L333'>333</a>
399
399
  <a name='L334'></a><a href='#L334'>334</a>
400
- <a name='L335'></a><a href='#L335'>335</a>
401
- <a name='L336'></a><a href='#L336'>336</a>
402
- <a name='L337'></a><a href='#L337'>337</a>
403
- <a name='L338'></a><a href='#L338'>338</a>
404
- <a name='L339'></a><a href='#L339'>339</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
400
+ <a name='L335'></a><a href='#L335'>335</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
407
401
  <span class="cline-any cline-neutral">&nbsp;</span>
408
402
  <span class="cline-any cline-neutral">&nbsp;</span>
409
403
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -435,7 +429,6 @@
435
429
  <span class="cline-any cline-neutral">&nbsp;</span>
436
430
  <span class="cline-any cline-neutral">&nbsp;</span>
437
431
  <span class="cline-any cline-neutral">&nbsp;</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
432
  <span class="cline-any cline-yes">1x</span>
440
433
  <span class="cline-any cline-yes">1x</span>
441
434
  <span class="cline-any cline-yes">1x</span>
@@ -688,7 +681,6 @@
688
681
  <span class="cline-any cline-neutral">&nbsp;</span>
689
682
  <span class="cline-any cline-neutral">&nbsp;</span>
690
683
  <span class="cline-any cline-neutral">&nbsp;</span>
691
- <span class="cline-any cline-neutral">&nbsp;</span>
692
684
  <span class="cline-any cline-yes">2x</span>
693
685
  <span class="cline-any cline-neutral">&nbsp;</span>
694
686
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -741,7 +733,6 @@
741
733
  <span class="cline-any cline-neutral">&nbsp;</span>
742
734
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { useState, useEffect, useRef } from 'react';
743
735
  import PropTypes from 'prop-types';
744
- import SVGInline from 'react-svg-inline';
745
736
  &nbsp;
746
737
  import { withGetConfig } from '../../hooks/useGetConfig';
747
738
  import { LevelOneContent, LevelTwoContent } from '../Content';
@@ -756,7 +747,6 @@ import { PracticeDetails, IndividualDetails } from '../Details';
756
747
  import { ScoreChart } from '../Chart';
757
748
  import SanitizedContent from '../../SanitizedContent';
758
749
  import * as SvgComponents from '../../../lib/SvgComponents.jsx';
759
- import SVGIcons from '../../../lib/svg-definitions.svg';
760
750
  import CmsSwitchLink from '../Links/CmsSwitchLink';
761
751
  import defaultContent from './default-content';
762
752
  &nbsp;
@@ -771,7 +761,6 @@ const SideNavUI = ({
771
761
  onExpanded,
772
762
  performanceYear,
773
763
  showReportingLinks,
774
- svgIcons,
775
764
  result,
776
765
  }) =&gt; {
777
766
  const [isExpandedState, setIsExpandedState] = useState(isExpanded);
@@ -1015,7 +1004,6 @@ const SideNavUI = ({
1015
1004
  config.navClassName
1016
1005
  }`}
1017
1006
  &gt;
1018
- &lt;SVGInline svg={svgIcons} /&gt;
1019
1007
  {content}
1020
1008
  &lt;NavLinkToggle
1021
1009
  isAltStyle={isAltStyle}
@@ -1038,13 +1026,13 @@ SideNavUI.propTypes = {
1038
1026
  isAltStyle: PropTypes.bool,
1039
1027
  showReportingLinks: PropTypes.bool,
1040
1028
  performanceYear: PropTypes.string,
1041
- svgIcons: PropTypes.string,
1042
1029
  result: PropTypes.shape({
1043
1030
  content: PropTypes.shape({
1044
1031
  default: PropTypes.arrayOf(PropTypes.object),
1045
1032
  devPre: PropTypes.arrayOf(PropTypes.object),
1046
1033
  internalReviewers: PropTypes.arrayOf(PropTypes.object),
1047
1034
  viewer: PropTypes.arrayOf(PropTypes.object),
1035
+ contentManager: PropTypes.arrayOf(PropTypes.object),
1048
1036
  }),
1049
1037
  }),
1050
1038
  };
@@ -1060,13 +1048,13 @@ SideNavUI.defaultProps = {
1060
1048
  isAltStyle: false,
1061
1049
  showReportingLinks: false,
1062
1050
  performanceYear: '2017',
1063
- svgIcons: SVGIcons,
1064
1051
  result: {
1065
1052
  content: {
1066
1053
  default: [],
1067
1054
  devPre: [],
1068
1055
  internalReviewers: [],
1069
1056
  viewer: [],
1057
+ contentManager: [],
1070
1058
  },
1071
1059
  },
1072
1060
  };
@@ -1084,7 +1072,7 @@ export default withGetConfig(SideNavUI, {
1084
1072
  <div class='footer quiet pad2 space-top1 center small'>
1085
1073
  Code coverage generated by
1086
1074
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1087
- at Tue Aug 30 2022 10:59:35 GMT-0400 (Eastern Daylight Time)
1075
+ at Wed Oct 19 2022 10:43:33 GMT-0400 (Eastern Daylight Time)
1088
1076
  </div>
1089
1077
  <script src="../../../../prettify.js"></script>
1090
1078
  <script>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at Tue Aug 30 2022 10:59:35 GMT-0400 (Eastern Daylight Time)
119
+ at Wed Oct 19 2022 10:43:33 GMT-0400 (Eastern Daylight Time)
120
120
  </div>
121
121
  <script src="../../../../prettify.js"></script>
122
122
  <script>
@@ -79,7 +79,7 @@ export { SideNavUI };
79
79
  <div class='footer quiet pad2 space-top1 center small'>
80
80
  Code coverage generated by
81
81
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
82
- at Tue Aug 30 2022 10:59:35 GMT-0400 (Eastern Daylight Time)
82
+ at Wed Oct 19 2022 10:43:33 GMT-0400 (Eastern Daylight Time)
83
83
  </div>
84
84
  <script src="../../../../prettify.js"></script>
85
85
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">64.4% </span>
26
+ <span class="strong">66.66% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>38/59</span>
28
+ <span class='fraction'>54/81</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">25% </span>
33
+ <span class="strong">32.25% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>5/20</span>
35
+ <span class='fraction'>10/31</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">38.46% </span>
40
+ <span class="strong">47.05% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>5/13</span>
42
+ <span class='fraction'>8/17</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">65.51% </span>
47
+ <span class="strong">68.35% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>38/58</span>
49
+ <span class='fraction'>54/79</span>
50
50
  </div>
51
51
 
52
52
 
@@ -327,7 +327,89 @@
327
327
  <a name='L262'></a><a href='#L262'>262</a>
328
328
  <a name='L263'></a><a href='#L263'>263</a>
329
329
  <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
330
+ <a name='L265'></a><a href='#L265'>265</a>
331
+ <a name='L266'></a><a href='#L266'>266</a>
332
+ <a name='L267'></a><a href='#L267'>267</a>
333
+ <a name='L268'></a><a href='#L268'>268</a>
334
+ <a name='L269'></a><a href='#L269'>269</a>
335
+ <a name='L270'></a><a href='#L270'>270</a>
336
+ <a name='L271'></a><a href='#L271'>271</a>
337
+ <a name='L272'></a><a href='#L272'>272</a>
338
+ <a name='L273'></a><a href='#L273'>273</a>
339
+ <a name='L274'></a><a href='#L274'>274</a>
340
+ <a name='L275'></a><a href='#L275'>275</a>
341
+ <a name='L276'></a><a href='#L276'>276</a>
342
+ <a name='L277'></a><a href='#L277'>277</a>
343
+ <a name='L278'></a><a href='#L278'>278</a>
344
+ <a name='L279'></a><a href='#L279'>279</a>
345
+ <a name='L280'></a><a href='#L280'>280</a>
346
+ <a name='L281'></a><a href='#L281'>281</a>
347
+ <a name='L282'></a><a href='#L282'>282</a>
348
+ <a name='L283'></a><a href='#L283'>283</a>
349
+ <a name='L284'></a><a href='#L284'>284</a>
350
+ <a name='L285'></a><a href='#L285'>285</a>
351
+ <a name='L286'></a><a href='#L286'>286</a>
352
+ <a name='L287'></a><a href='#L287'>287</a>
353
+ <a name='L288'></a><a href='#L288'>288</a>
354
+ <a name='L289'></a><a href='#L289'>289</a>
355
+ <a name='L290'></a><a href='#L290'>290</a>
356
+ <a name='L291'></a><a href='#L291'>291</a>
357
+ <a name='L292'></a><a href='#L292'>292</a>
358
+ <a name='L293'></a><a href='#L293'>293</a>
359
+ <a name='L294'></a><a href='#L294'>294</a>
360
+ <a name='L295'></a><a href='#L295'>295</a>
361
+ <a name='L296'></a><a href='#L296'>296</a>
362
+ <a name='L297'></a><a href='#L297'>297</a>
363
+ <a name='L298'></a><a href='#L298'>298</a>
364
+ <a name='L299'></a><a href='#L299'>299</a>
365
+ <a name='L300'></a><a href='#L300'>300</a>
366
+ <a name='L301'></a><a href='#L301'>301</a>
367
+ <a name='L302'></a><a href='#L302'>302</a>
368
+ <a name='L303'></a><a href='#L303'>303</a>
369
+ <a name='L304'></a><a href='#L304'>304</a>
370
+ <a name='L305'></a><a href='#L305'>305</a>
371
+ <a name='L306'></a><a href='#L306'>306</a>
372
+ <a name='L307'></a><a href='#L307'>307</a>
373
+ <a name='L308'></a><a href='#L308'>308</a>
374
+ <a name='L309'></a><a href='#L309'>309</a>
375
+ <a name='L310'></a><a href='#L310'>310</a>
376
+ <a name='L311'></a><a href='#L311'>311</a>
377
+ <a name='L312'></a><a href='#L312'>312</a>
378
+ <a name='L313'></a><a href='#L313'>313</a>
379
+ <a name='L314'></a><a href='#L314'>314</a>
380
+ <a name='L315'></a><a href='#L315'>315</a>
381
+ <a name='L316'></a><a href='#L316'>316</a>
382
+ <a name='L317'></a><a href='#L317'>317</a>
383
+ <a name='L318'></a><a href='#L318'>318</a>
384
+ <a name='L319'></a><a href='#L319'>319</a>
385
+ <a name='L320'></a><a href='#L320'>320</a>
386
+ <a name='L321'></a><a href='#L321'>321</a>
387
+ <a name='L322'></a><a href='#L322'>322</a>
388
+ <a name='L323'></a><a href='#L323'>323</a>
389
+ <a name='L324'></a><a href='#L324'>324</a>
390
+ <a name='L325'></a><a href='#L325'>325</a>
391
+ <a name='L326'></a><a href='#L326'>326</a>
392
+ <a name='L327'></a><a href='#L327'>327</a>
393
+ <a name='L328'></a><a href='#L328'>328</a>
394
+ <a name='L329'></a><a href='#L329'>329</a>
395
+ <a name='L330'></a><a href='#L330'>330</a>
396
+ <a name='L331'></a><a href='#L331'>331</a>
397
+ <a name='L332'></a><a href='#L332'>332</a>
398
+ <a name='L333'></a><a href='#L333'>333</a>
399
+ <a name='L334'></a><a href='#L334'>334</a>
400
+ <a name='L335'></a><a href='#L335'>335</a>
401
+ <a name='L336'></a><a href='#L336'>336</a>
402
+ <a name='L337'></a><a href='#L337'>337</a>
403
+ <a name='L338'></a><a href='#L338'>338</a>
404
+ <a name='L339'></a><a href='#L339'>339</a>
405
+ <a name='L340'></a><a href='#L340'>340</a>
406
+ <a name='L341'></a><a href='#L341'>341</a>
407
+ <a name='L342'></a><a href='#L342'>342</a>
408
+ <a name='L343'></a><a href='#L343'>343</a>
409
+ <a name='L344'></a><a href='#L344'>344</a>
410
+ <a name='L345'></a><a href='#L345'>345</a>
411
+ <a name='L346'></a><a href='#L346'>346</a>
412
+ <a name='L347'></a><a href='#L347'>347</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
331
413
  <span class="cline-any cline-neutral">&nbsp;</span>
332
414
  <span class="cline-any cline-neutral">&nbsp;</span>
333
415
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -344,6 +426,10 @@
344
426
  <span class="cline-any cline-neutral">&nbsp;</span>
345
427
  <span class="cline-any cline-neutral">&nbsp;</span>
346
428
  <span class="cline-any cline-neutral">&nbsp;</span>
429
+ <span class="cline-any cline-neutral">&nbsp;</span>
430
+ <span class="cline-any cline-neutral">&nbsp;</span>
431
+ <span class="cline-any cline-neutral">&nbsp;</span>
432
+ <span class="cline-any cline-yes">3x</span>
347
433
  <span class="cline-any cline-yes">3x</span>
348
434
  <span class="cline-any cline-yes">3x</span>
349
435
  <span class="cline-any cline-yes">3x</span>
@@ -409,15 +495,70 @@
409
495
  <span class="cline-any cline-neutral">&nbsp;</span>
410
496
  <span class="cline-any cline-neutral">&nbsp;</span>
411
497
  <span class="cline-any cline-neutral">&nbsp;</span>
498
+ <span class="cline-any cline-neutral">&nbsp;</span>
499
+ <span class="cline-any cline-neutral">&nbsp;</span>
500
+ <span class="cline-any cline-neutral">&nbsp;</span>
501
+ <span class="cline-any cline-neutral">&nbsp;</span>
502
+ <span class="cline-any cline-neutral">&nbsp;</span>
503
+ <span class="cline-any cline-no">&nbsp;</span>
412
504
  <span class="cline-any cline-no">&nbsp;</span>
413
505
  <span class="cline-any cline-neutral">&nbsp;</span>
414
506
  <span class="cline-any cline-neutral">&nbsp;</span>
507
+ <span class="cline-any cline-yes">3x</span>
508
+ <span class="cline-any cline-neutral">&nbsp;</span>
509
+ <span class="cline-any cline-neutral">&nbsp;</span>
510
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
+ <span class="cline-any cline-neutral">&nbsp;</span>
512
+ <span class="cline-any cline-neutral">&nbsp;</span>
513
+ <span class="cline-any cline-neutral">&nbsp;</span>
514
+ <span class="cline-any cline-neutral">&nbsp;</span>
515
+ <span class="cline-any cline-neutral">&nbsp;</span>
516
+ <span class="cline-any cline-neutral">&nbsp;</span>
517
+ <span class="cline-any cline-neutral">&nbsp;</span>
518
+ <span class="cline-any cline-neutral">&nbsp;</span>
519
+ <span class="cline-any cline-yes">3x</span>
520
+ <span class="cline-any cline-neutral">&nbsp;</span>
521
+ <span class="cline-any cline-neutral">&nbsp;</span>
522
+ <span class="cline-any cline-neutral">&nbsp;</span>
523
+ <span class="cline-any cline-neutral">&nbsp;</span>
524
+ <span class="cline-any cline-yes">3x</span>
525
+ <span class="cline-any cline-yes">1x</span>
526
+ <span class="cline-any cline-yes">1x</span>
527
+ <span class="cline-any cline-neutral">&nbsp;</span>
528
+ <span class="cline-any cline-neutral">&nbsp;</span>
529
+ <span class="cline-any cline-neutral">&nbsp;</span>
530
+ <span class="cline-any cline-yes">1x</span>
531
+ <span class="cline-any cline-neutral">&nbsp;</span>
532
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
+ <span class="cline-any cline-neutral">&nbsp;</span>
534
+ <span class="cline-any cline-neutral">&nbsp;</span>
535
+ <span class="cline-any cline-neutral">&nbsp;</span>
536
+ <span class="cline-any cline-neutral">&nbsp;</span>
537
+ <span class="cline-any cline-neutral">&nbsp;</span>
538
+ <span class="cline-any cline-neutral">&nbsp;</span>
539
+ <span class="cline-any cline-neutral">&nbsp;</span>
540
+ <span class="cline-any cline-neutral">&nbsp;</span>
541
+ <span class="cline-any cline-neutral">&nbsp;</span>
542
+ <span class="cline-any cline-yes">1x</span>
543
+ <span class="cline-any cline-neutral">&nbsp;</span>
544
+ <span class="cline-any cline-neutral">&nbsp;</span>
545
+ <span class="cline-any cline-neutral">&nbsp;</span>
546
+ <span class="cline-any cline-neutral">&nbsp;</span>
415
547
  <span class="cline-any cline-neutral">&nbsp;</span>
416
548
  <span class="cline-any cline-neutral">&nbsp;</span>
417
549
  <span class="cline-any cline-neutral">&nbsp;</span>
418
550
  <span class="cline-any cline-neutral">&nbsp;</span>
419
551
  <span class="cline-any cline-neutral">&nbsp;</span>
420
552
  <span class="cline-any cline-yes">3x</span>
553
+ <span class="cline-any cline-yes">1x</span>
554
+ <span class="cline-any cline-yes">1x</span>
555
+ <span class="cline-any cline-yes">1x</span>
556
+ <span class="cline-any cline-neutral">&nbsp;</span>
557
+ <span class="cline-any cline-neutral">&nbsp;</span>
558
+ <span class="cline-any cline-yes">1x</span>
559
+ <span class="cline-any cline-yes">1x</span>
560
+ <span class="cline-any cline-yes">1x</span>
561
+ <span class="cline-any cline-neutral">&nbsp;</span>
421
562
  <span class="cline-any cline-no">&nbsp;</span>
422
563
  <span class="cline-any cline-neutral">&nbsp;</span>
423
564
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -425,6 +566,7 @@
425
566
  <span class="cline-any cline-neutral">&nbsp;</span>
426
567
  <span class="cline-any cline-neutral">&nbsp;</span>
427
568
  <span class="cline-any cline-neutral">&nbsp;</span>
569
+ <span class="cline-any cline-neutral">&nbsp;</span>
428
570
  <span class="cline-any cline-yes">3x</span>
429
571
  <span class="cline-any cline-yes">1x</span>
430
572
  <span class="cline-any cline-yes">1x</span>
@@ -441,6 +583,7 @@
441
583
  <span class="cline-any cline-yes">1x</span>
442
584
  <span class="cline-any cline-yes">1x</span>
443
585
  <span class="cline-any cline-yes">1x</span>
586
+ <span class="cline-any cline-yes">1x</span>
444
587
  <span class="cline-any cline-no">&nbsp;</span>
445
588
  <span class="cline-any cline-neutral">&nbsp;</span>
446
589
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -450,6 +593,14 @@
450
593
  <span class="cline-any cline-neutral">&nbsp;</span>
451
594
  <span class="cline-any cline-neutral">&nbsp;</span>
452
595
  <span class="cline-any cline-neutral">&nbsp;</span>
596
+ <span class="cline-any cline-neutral">&nbsp;</span>
597
+ <span class="cline-any cline-yes">1x</span>
598
+ <span class="cline-any cline-no">&nbsp;</span>
599
+ <span class="cline-any cline-no">&nbsp;</span>
600
+ <span class="cline-any cline-neutral">&nbsp;</span>
601
+ <span class="cline-any cline-no">&nbsp;</span>
602
+ <span class="cline-any cline-neutral">&nbsp;</span>
603
+ <span class="cline-any cline-neutral">&nbsp;</span>
453
604
  <span class="cline-any cline-yes">1x</span>
454
605
  <span class="cline-any cline-neutral">&nbsp;</span>
455
606
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -508,6 +659,11 @@
508
659
  <span class="cline-any cline-neutral">&nbsp;</span>
509
660
  <span class="cline-any cline-neutral">&nbsp;</span>
510
661
  <span class="cline-any cline-neutral">&nbsp;</span>
662
+ <span class="cline-any cline-neutral">&nbsp;</span>
663
+ <span class="cline-any cline-neutral">&nbsp;</span>
664
+ <span class="cline-any cline-neutral">&nbsp;</span>
665
+ <span class="cline-any cline-neutral">&nbsp;</span>
666
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
667
  <span class="cline-any cline-yes">3x</span>
512
668
  <span class="cline-any cline-no">&nbsp;</span>
513
669
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -560,6 +716,14 @@
560
716
  <span class="cline-any cline-neutral">&nbsp;</span>
561
717
  <span class="cline-any cline-neutral">&nbsp;</span>
562
718
  <span class="cline-any cline-neutral">&nbsp;</span>
719
+ <span class="cline-any cline-no">&nbsp;</span>
720
+ <span class="cline-any cline-neutral">&nbsp;</span>
721
+ <span class="cline-any cline-neutral">&nbsp;</span>
722
+ <span class="cline-any cline-neutral">&nbsp;</span>
723
+ <span class="cline-any cline-neutral">&nbsp;</span>
724
+ <span class="cline-any cline-neutral">&nbsp;</span>
725
+ <span class="cline-any cline-neutral">&nbsp;</span>
726
+ <span class="cline-any cline-neutral">&nbsp;</span>
563
727
  <span class="cline-any cline-neutral">&nbsp;</span>
564
728
  <span class="cline-any cline-neutral">&nbsp;</span>
565
729
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -606,7 +770,10 @@ import {
606
770
  StarIcon,
607
771
  TargetIcon,
608
772
  IndividualReporting,
773
+ ManageDocumentsIcon,
774
+ AuthorContentIcon,
609
775
  } from '../../lib/SvgComponents';
776
+ import { isReviewerRole } from './Content/SelectRole/utils';
610
777
  &nbsp;
611
778
  const submissionsUrl = '/user/submissions';
612
779
  const dashboardUrl = '/user/dashboard';
@@ -616,6 +783,7 @@ const physicianCompareUrl = `${submissionsUrl}/doctors-clinicians-preview`;
616
783
  const reportsPortalUrl = `${submissionsUrl}/reports`;
617
784
  const facilityBasedPreviewBaseUrl = `${submissionsUrl}/facility-based-preview`;
618
785
  const viewingToolUrl = '/user/helpdesk-viewing-tool';
786
+ const contentMgrDashboardUrl = '/user/content-management';
619
787
  &nbsp;
620
788
  const performanceFeedbackUrl = <span class="fstat-no" title="function not covered" >(p</span>erformanceYear) =&gt; {
621
789
  <span class="cstat-no" title="statement not covered" > if (performanceYear) {</span>
@@ -651,7 +819,7 @@ const handleNavigation = <span class="fstat-no" title="function not covered" >(e
651
819
  * @param {string} url
652
820
  * @returns svg icon
653
821
  */
654
- const getIcon = <span class="fstat-no" title="function not covered" >(u</span>rl) =&gt; {
822
+ const getIcon = <span class="fstat-no" title="function not covered" >(u</span>rl, linkLabel) =&gt; {
655
823
  const icons = <span class="cstat-no" title="statement not covered" >{</span>
656
824
  [dashboardUrl]: DashboardIcon,
657
825
  [feedbackUrl]: StarIcon,
@@ -672,17 +840,73 @@ const getIcon = <span class="fstat-no" title="function not covered" >(u</span>rl
672
840
  '/reviewer/exception': HardshipIcon,
673
841
  '/reviewer/targeted-review': TargetIcon,
674
842
  '/self-nomination': IndividualReporting,
843
+ '/cases/needs-review': FacilityBasedPreviewIcon,
844
+ [contentMgrDashboardUrl]: AccountHomeIcon,
845
+ 'Manage Documents': ManageDocumentsIcon,
846
+ 'Author Content': AuthorContentIcon,
675
847
  };
848
+ &nbsp;
849
+ <span class="cstat-no" title="statement not covered" > if (linkLabel) <span class="cstat-no" title="statement not covered" >return icons[linkLabel];</span></span>
676
850
  <span class="cstat-no" title="statement not covered" > return icons[url];</span>
677
851
  };
678
852
  &nbsp;
853
+ const singleRoleContentMap = {
854
+ 'QPP Content Management - Author': 'contentManager',
855
+ 'QPP Content Management - Approver': 'contentManager',
856
+ 'QPP Content Management - Admin': 'contentManager',
857
+ 'QPP Front-end - Author': 'contentManager',
858
+ 'QPP Self-Nomination': 'internalReviewers',
859
+ 'QPP Targeted Review &amp; Exceptions': 'internalReviewers',
860
+ 'QPP Case Management - PIMMS Reviewer': 'internalReviewers',
861
+ 'QPP Case Management - ACO PAC Reviewer': 'internalReviewers',
862
+ 'QPP Case Management - CMS Reviewer': 'internalReviewers',
863
+ };
864
+ &nbsp;
865
+ const multiRoleContentMap = {
866
+ Reviewer: 'internalReviewers',
867
+ 'Content Manager': 'contentManager',
868
+ };
869
+ &nbsp;
870
+ const replaceDefaultContentMgrLinks = (defaultContent) =&gt; {
871
+ const host = window.location.host;
872
+ const updatedDefaultContent = {
873
+ ...defaultContent,
874
+ contentManager: [
875
+ defaultContent.contentManager.find(
876
+ (obj) =&gt; obj.label === 'Dashboard Home'
877
+ ),
878
+ {
879
+ url: `${host}.qpp.cms.gov/cm/`,
880
+ label: 'Manage Documents',
881
+ },
882
+ {
883
+ url: `${host}.qpp.cms.gov/content-management/`,
884
+ label: 'Author Content',
885
+ },
886
+ ],
887
+ };
888
+ return updatedDefaultContent;
889
+ };
890
+ &nbsp;
679
891
  /**
680
- * Check if Reviewer or Self-Nom role
681
- * @param {string} name
682
- * @returns {boolean}
892
+ * Load the side nav content for the given role
893
+ * @param {string} roleName role of given user from internalReviewerNames
894
+ * @param {object} navContent object of side nav links by role (levelOneContent &amp; defaultContent)
895
+ * @returns {array} returns an array of objects (side nav menu links) from levelOneContent
896
+ * || defaultContent
683
897
  */
684
- const isReviewerOrSelfNomRole = <span class="fstat-no" title="function not covered" >(n</span>ame) =&gt;
685
- <span class="cstat-no" title="statement not covered" > name === 'QPP Self-Nomination' || name === 'QPP Targeted Review &amp; Exceptions';</span>
898
+ const loadSideNavContent = (roleName, navContent, isMultiRoleUser = false) =&gt; {
899
+ const { levelOneContent, defaultContent } = navContent;
900
+ const updatedDefaultContent = replaceDefaultContentMgrLinks(defaultContent);
901
+ const roleContentMap = isMultiRoleUser
902
+ ? <span class="branch-0 cbranch-no" title="branch not covered" >multiRoleContentMap</span>
903
+ : singleRoleContentMap;
904
+ const contentByRole = roleContentMap[roleName];
905
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (levelOneContent) {
906
+ return levelOneContent[contentByRole] || levelOneContent.default;
907
+ }
908
+ <span class="cstat-no" title="statement not covered" > return updatedDefaultContent[contentByRole] || updatedDefaultContent.default;</span>
909
+ };
686
910
  &nbsp;
687
911
  /**
688
912
  * Check if user is currently impersonating
@@ -702,6 +926,7 @@ const isImpersonating = (docCookie) =&gt; {
702
926
  * @returns {boolean}
703
927
  */
704
928
  const isMultiRoleUser = (docCookie) =&gt; {
929
+ const activeRoles = new Set();
705
930
  const { qpp_cms_internal_authorized } = cookie.parse(docCookie);
706
931
  let internalAuthz = [];
707
932
  <span class="missing-if-branch" title="if path not taken" >I</span>if (qpp_cms_internal_authorized) {
@@ -714,7 +939,15 @@ const isMultiRoleUser = (docCookie) =&gt; {
714
939
  internalAuth !== 'Test internalCms Resource 2'
715
940
  );
716
941
  });
717
- return filteredInternalAuthz.length &gt; 1;
942
+ &nbsp;
943
+ filteredInternalAuthz.forEach(<span class="fstat-no" title="function not covered" >(e</span>lement) =&gt; {
944
+ <span class="cstat-no" title="statement not covered" > if (isReviewerRole(element)) {</span>
945
+ <span class="cstat-no" title="statement not covered" > return activeRoles.add('reviewer');</span>
946
+ }
947
+ <span class="cstat-no" title="statement not covered" > return activeRoles.add(element);</span>
948
+ });
949
+ &nbsp;
950
+ return activeRoles.size &gt; 1;
718
951
  };
719
952
  &nbsp;
720
953
  /**
@@ -764,6 +997,11 @@ const permissionsByRole = {
764
997
  Impersonation: {
765
998
  internalReviewerNames: ['QPP Helpdesk'],
766
999
  },
1000
+ 'Content Manager': {
1001
+ hasAuthorizations: false,
1002
+ hasApmPaymentss: false,
1003
+ hasNonRegistryAuthorizations: false,
1004
+ },
767
1005
  };
768
1006
  &nbsp;
769
1007
  /**
@@ -822,6 +1060,14 @@ const getUrlConditionMap = (userPermissions) =&gt; {
822
1060
  '/self-nomination': userPermissions.internalReviewerNames?.includes(
823
1061
  'QPP Self-Nomination'
824
1062
  ),
1063
+ &nbsp;
1064
+ '/cases/needs-review': userPermissions.internalReviewerNames?.some(<span class="fstat-no" title="function not covered" >(v</span>al) =&gt;
1065
+ <span class="cstat-no" title="statement not covered" > [</span>
1066
+ 'QPP Case Management - PIMMS Reviewer',
1067
+ 'QPP Case Management - ACO PAC Reviewer',
1068
+ 'QPP Case Management - CMS Reviewer',
1069
+ ].includes(val)
1070
+ ),
825
1071
  &nbsp;
826
1072
  // dev pre
827
1073
  '/user/applications': userPermissions.ehrAuthorized,
@@ -850,10 +1096,10 @@ module.exports = {
850
1096
  loadUserPermissions,
851
1097
  getUrlConditionMap,
852
1098
  isMultiRoleUser,
853
- isReviewerOrSelfNomRole,
854
1099
  getIcon,
855
1100
  isImpersonating,
856
1101
  isImpersonationLink,
1102
+ loadSideNavContent,
857
1103
  };
858
1104
  &nbsp;</pre></td></tr></table></pre>
859
1105
 
@@ -862,7 +1108,7 @@ module.exports = {
862
1108
  <div class='footer quiet pad2 space-top1 center small'>
863
1109
  Code coverage generated by
864
1110
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
865
- at Tue Aug 30 2022 10:59:35 GMT-0400 (Eastern Daylight Time)
1111
+ at Wed Oct 19 2022 10:43:33 GMT-0400 (Eastern Daylight Time)
866
1112
  </div>
867
1113
  <script src="../../../prettify.js"></script>
868
1114
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">61.9% </span>
26
+ <span class="strong">64.7% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>39/63</span>
28
+ <span class='fraction'>55/85</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">23.8% </span>
33
+ <span class="strong">31.25% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>5/21</span>
35
+ <span class='fraction'>10/32</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">35.71% </span>
40
+ <span class="strong">44.44% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>5/14</span>
42
+ <span class='fraction'>8/18</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">62.9% </span>
47
+ <span class="strong">66.26% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>39/62</span>
49
+ <span class='fraction'>55/83</span>
50
50
  </div>
51
51
 
52
52
 
@@ -80,17 +80,17 @@
80
80
  </thead>
81
81
  <tbody><tr>
82
82
  <td class="file medium" data-value="helpers.js"><a href="helpers.js.html">helpers.js</a></td>
83
- <td data-value="64.4" class="pic medium">
84
- <div class="chart"><div class="cover-fill" style="width: 64%"></div><div class="cover-empty" style="width: 36%"></div></div>
83
+ <td data-value="66.66" class="pic medium">
84
+ <div class="chart"><div class="cover-fill" style="width: 66%"></div><div class="cover-empty" style="width: 34%"></div></div>
85
85
  </td>
86
- <td data-value="64.4" class="pct medium">64.4%</td>
87
- <td data-value="59" class="abs medium">38/59</td>
88
- <td data-value="25" class="pct low">25%</td>
89
- <td data-value="20" class="abs low">5/20</td>
90
- <td data-value="38.46" class="pct low">38.46%</td>
91
- <td data-value="13" class="abs low">5/13</td>
92
- <td data-value="65.51" class="pct medium">65.51%</td>
93
- <td data-value="58" class="abs medium">38/58</td>
86
+ <td data-value="66.66" class="pct medium">66.66%</td>
87
+ <td data-value="81" class="abs medium">54/81</td>
88
+ <td data-value="32.25" class="pct low">32.25%</td>
89
+ <td data-value="31" class="abs low">10/31</td>
90
+ <td data-value="47.05" class="pct low">47.05%</td>
91
+ <td data-value="17" class="abs low">8/17</td>
92
+ <td data-value="68.35" class="pct medium">68.35%</td>
93
+ <td data-value="79" class="abs medium">54/79</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at Tue Aug 30 2022 10:59:35 GMT-0400 (Eastern Daylight Time)
119
+ at Wed Oct 19 2022 10:43:33 GMT-0400 (Eastern Daylight Time)
120
120
  </div>
121
121
  <script src="../../../prettify.js"></script>
122
122
  <script>