qpp-style 9.34.4 → 9.34.6

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 (201) hide show
  1. package/components/Header/HeaderUI.jsx +2 -2
  2. package/components/Header/ImpersonatorBanner.jsx +12 -6
  3. package/components/SideNav/UI/SideNavUI.jsx +2 -2
  4. package/components/hooks/useGetConfig.js +3 -4
  5. package/dist/browser.js +1 -1
  6. package/dist/browser.js.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/react/index.js +1 -1
  10. package/dist/react/index.js.map +1 -1
  11. package/package.json +1 -2
  12. package/session/logout.js +27 -25
  13. package/styles/qppds/components/sidebar/_sidebar-animation.scss +3 -29
  14. package/coverage/clover.xml +0 -1361
  15. package/coverage/coverage-final.json +0 -71
  16. package/coverage/lcov-report/Infotip.jsx.html +0 -298
  17. package/coverage/lcov-report/InfotipContent.jsx.html +0 -223
  18. package/coverage/lcov-report/InfotipIcon.jsx.html +0 -208
  19. package/coverage/lcov-report/base.css +0 -224
  20. package/coverage/lcov-report/block-navigation.js +0 -87
  21. package/coverage/lcov-report/components/Accordion/index.html +0 -116
  22. package/coverage/lcov-report/components/Accordion/index.jsx.html +0 -376
  23. package/coverage/lcov-report/components/Button/index.html +0 -116
  24. package/coverage/lcov-report/components/Button/index.js.html +0 -355
  25. package/coverage/lcov-report/components/Error/Collapsible.jsx.html +0 -349
  26. package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +0 -178
  27. package/coverage/lcov-report/components/Error/index.html +0 -131
  28. package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +0 -718
  29. package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +0 -265
  30. package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +0 -187
  31. package/coverage/lcov-report/components/Footer/index.html +0 -146
  32. package/coverage/lcov-report/components/GovBanner/index.html +0 -116
  33. package/coverage/lcov-report/components/GovBanner/index.js.html +0 -436
  34. package/coverage/lcov-report/components/Header/HeaderAccountMenu.jsx.html +0 -367
  35. package/coverage/lcov-report/components/Header/HeaderCancel.jsx.html +0 -133
  36. package/coverage/lcov-report/components/Header/HeaderContainer.jsx.html +0 -307
  37. package/coverage/lcov-report/components/Header/HeaderLogo.jsx.html +0 -211
  38. package/coverage/lcov-report/components/Header/HeaderMenuButton.js.html +0 -235
  39. package/coverage/lcov-report/components/Header/HeaderMenuItem.jsx.html +0 -802
  40. package/coverage/lcov-report/components/Header/HeaderMenuLink.js.html +0 -253
  41. package/coverage/lcov-report/components/Header/HeaderMenuSignOutButton.js.html +0 -271
  42. package/coverage/lcov-report/components/Header/HeaderMobileButton.js.html +0 -196
  43. package/coverage/lcov-report/components/Header/HeaderUI.jsx.html +0 -586
  44. package/coverage/lcov-report/components/Header/HelpIcon.jsx.html +0 -181
  45. package/coverage/lcov-report/components/Header/ImpersonatorBanner.jsx.html +0 -328
  46. package/coverage/lcov-report/components/Header/NavigationButtonIcon.jsx.html +0 -166
  47. package/coverage/lcov-report/components/Header/hooks.js.html +0 -283
  48. package/coverage/lcov-report/components/Header/index.html +0 -326
  49. package/coverage/lcov-report/components/Header/utag-helpers.js.html +0 -112
  50. package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +0 -298
  51. package/coverage/lcov-report/components/Infotip/InfotipContent.jsx.html +0 -223
  52. package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +0 -208
  53. package/coverage/lcov-report/components/Infotip/index.html +0 -146
  54. package/coverage/lcov-report/components/Infotip/index.js.html +0 -94
  55. package/coverage/lcov-report/components/Modal/LegacyModal.jsx.html +0 -301
  56. package/coverage/lcov-report/components/Modal/Modal.jsx.html +0 -505
  57. package/coverage/lcov-report/components/Modal/index.html +0 -146
  58. package/coverage/lcov-report/components/Modal/index.jsx.html +0 -151
  59. package/coverage/lcov-report/components/NotificationBanner/CollapsedView.js.html +0 -202
  60. package/coverage/lcov-report/components/NotificationBanner/ExpandedView.js.html +0 -220
  61. package/coverage/lcov-report/components/NotificationBanner/index.html +0 -146
  62. package/coverage/lcov-report/components/NotificationBanner/index.js.html +0 -748
  63. package/coverage/lcov-report/components/SanitizedContent/index.html +0 -116
  64. package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +0 -754
  65. package/coverage/lcov-report/components/SessionDialogUI.jsx.html +0 -868
  66. package/coverage/lcov-report/components/SideNav/Chart/ScoreChart.jsx.html +0 -889
  67. package/coverage/lcov-report/components/SideNav/Chart/index.html +0 -116
  68. package/coverage/lcov-report/components/SideNav/Content/SelectRole/index.html +0 -116
  69. package/coverage/lcov-report/components/SideNav/Content/SelectRole/utils.js.html +0 -532
  70. package/coverage/lcov-report/components/SideNav/helpers.js.html +0 -1309
  71. package/coverage/lcov-report/components/SideNav/index.html +0 -116
  72. package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +0 -349
  73. package/coverage/lcov-report/components/Tooltip/index.html +0 -146
  74. package/coverage/lcov-report/components/Tooltip/index.js.html +0 -94
  75. package/coverage/lcov-report/components/Tooltip/position.js.html +0 -289
  76. package/coverage/lcov-report/components/hooks/index.html +0 -116
  77. package/coverage/lcov-report/components/hooks/useGetConfig.js.html +0 -310
  78. package/coverage/lcov-report/components/index.html +0 -116
  79. package/coverage/lcov-report/favicon.png +0 -0
  80. package/coverage/lcov-report/index.html +0 -446
  81. package/coverage/lcov-report/index.js.html +0 -94
  82. package/coverage/lcov-report/lib/Chevron.jsx.html +0 -181
  83. package/coverage/lcov-report/lib/SvgComponents.jsx.html +0 -2200
  84. package/coverage/lcov-report/lib/index.html +0 -131
  85. package/coverage/lcov-report/prettify.css +0 -1
  86. package/coverage/lcov-report/prettify.js +0 -2
  87. package/coverage/lcov-report/react/components/Accordion/index.html +0 -116
  88. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +0 -376
  89. package/coverage/lcov-report/react/components/Button/index.html +0 -116
  90. package/coverage/lcov-report/react/components/Button/index.js.html +0 -355
  91. package/coverage/lcov-report/react/components/Dropdown/index.html +0 -116
  92. package/coverage/lcov-report/react/components/Dropdown/index.js.html +0 -340
  93. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +0 -349
  94. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +0 -178
  95. package/coverage/lcov-report/react/components/Error/error.js.html +0 -163
  96. package/coverage/lcov-report/react/components/Error/index.html +0 -146
  97. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +0 -718
  98. package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +0 -667
  99. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +0 -265
  100. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +0 -187
  101. package/coverage/lcov-report/react/components/Footer/footer.js.html +0 -145
  102. package/coverage/lcov-report/react/components/Footer/index.html +0 -161
  103. package/coverage/lcov-report/react/components/GovBanner/index.html +0 -116
  104. package/coverage/lcov-report/react/components/GovBanner/index.js.html +0 -436
  105. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +0 -367
  106. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +0 -133
  107. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +0 -313
  108. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +0 -265
  109. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +0 -235
  110. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +0 -802
  111. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +0 -253
  112. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +0 -271
  113. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +0 -196
  114. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +0 -589
  115. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +0 -181
  116. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +0 -328
  117. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +0 -166
  118. package/coverage/lcov-report/react/components/Header/header.js.html +0 -205
  119. package/coverage/lcov-report/react/components/Header/hooks.js.html +0 -283
  120. package/coverage/lcov-report/react/components/Header/index.html +0 -341
  121. package/coverage/lcov-report/react/components/Header/utag-helpers.js.html +0 -112
  122. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +0 -298
  123. package/coverage/lcov-report/react/components/Infotip/InfotipContent.jsx.html +0 -223
  124. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +0 -208
  125. package/coverage/lcov-report/react/components/Infotip/index.html +0 -161
  126. package/coverage/lcov-report/react/components/Infotip/index.js.html +0 -94
  127. package/coverage/lcov-report/react/components/Modal/LegacyModal.jsx.html +0 -301
  128. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +0 -505
  129. package/coverage/lcov-report/react/components/Modal/index.html +0 -146
  130. package/coverage/lcov-report/react/components/Modal/index.jsx.html +0 -151
  131. package/coverage/lcov-report/react/components/NotificationBanner/CollapsedView.js.html +0 -202
  132. package/coverage/lcov-report/react/components/NotificationBanner/ExpandedView.js.html +0 -220
  133. package/coverage/lcov-report/react/components/NotificationBanner/index.html +0 -146
  134. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +0 -748
  135. package/coverage/lcov-report/react/components/SanitizedContent/index.html +0 -116
  136. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +0 -754
  137. package/coverage/lcov-report/react/components/Session/Session.jsx.html +0 -382
  138. package/coverage/lcov-report/react/components/Session/SessionDialogWrapped.jsx.html +0 -121
  139. package/coverage/lcov-report/react/components/Session/index.html +0 -146
  140. package/coverage/lcov-report/react/components/Session/index.jsx.html +0 -94
  141. package/coverage/lcov-report/react/components/SessionDialog/index.html +0 -116
  142. package/coverage/lcov-report/react/components/SessionDialog/sessionDialog.js.html +0 -163
  143. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +0 -808
  144. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -166
  145. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +0 -116
  146. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +0 -889
  147. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +0 -131
  148. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +0 -94
  149. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +0 -232
  150. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +0 -733
  151. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.html +0 -131
  152. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +0 -319
  153. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +0 -532
  154. package/coverage/lcov-report/react/components/SideNav/Content/index.html +0 -131
  155. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +0 -94
  156. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +0 -139
  157. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +0 -238
  158. package/coverage/lcov-report/react/components/SideNav/Details/index.html +0 -146
  159. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +0 -97
  160. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +0 -208
  161. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +0 -247
  162. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +0 -199
  163. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +0 -970
  164. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +0 -415
  165. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +0 -187
  166. package/coverage/lcov-report/react/components/SideNav/Links/index.html +0 -206
  167. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +0 -124
  168. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +0 -1054
  169. package/coverage/lcov-report/react/components/SideNav/UI/default-markup.js.html +0 -97
  170. package/coverage/lcov-report/react/components/SideNav/UI/index.html +0 -146
  171. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +0 -94
  172. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +0 -1282
  173. package/coverage/lcov-report/react/components/SideNav/index.html +0 -131
  174. package/coverage/lcov-report/react/components/SideNav/index.js.html +0 -172
  175. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +0 -349
  176. package/coverage/lcov-report/react/components/Tooltip/index.html +0 -146
  177. package/coverage/lcov-report/react/components/Tooltip/index.js.html +0 -94
  178. package/coverage/lcov-report/react/components/Tooltip/position.js.html +0 -289
  179. package/coverage/lcov-report/react/components/hooks/index.html +0 -116
  180. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +0 -310
  181. package/coverage/lcov-report/react/components/index.html +0 -116
  182. package/coverage/lcov-report/react/index.html +0 -116
  183. package/coverage/lcov-report/react/index.js.html +0 -178
  184. package/coverage/lcov-report/react/lib/Chevron.jsx.html +0 -181
  185. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +0 -2200
  186. package/coverage/lcov-report/react/lib/index.html +0 -131
  187. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +0 -460
  188. package/coverage/lcov-report/react/session/index.html +0 -176
  189. package/coverage/lcov-report/react/session/index.js.html +0 -100
  190. package/coverage/lcov-report/react/session/isAuthV2.js.html +0 -151
  191. package/coverage/lcov-report/react/session/logout.js.html +0 -316
  192. package/coverage/lcov-report/react/session/refresh.js.html +0 -241
  193. package/coverage/lcov-report/react/session/ttl.js.html +0 -160
  194. package/coverage/lcov-report/session/index.html +0 -161
  195. package/coverage/lcov-report/session/index.js.html +0 -100
  196. package/coverage/lcov-report/session/logout.js.html +0 -316
  197. package/coverage/lcov-report/session/refresh.js.html +0 -232
  198. package/coverage/lcov-report/session/ttl.js.html +0 -196
  199. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  200. package/coverage/lcov-report/sorter.js +0 -196
  201. package/coverage/lcov.info +0 -2925
@@ -1,889 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for components/SideNav/Chart/ScoreChart.jsx</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../../prettify.css" />
9
- <link rel="stylesheet" href="../../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../../index.html">All files</a> / <a href="index.html">components/SideNav/Chart</a> ScoreChart.jsx</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">68.6% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>59/86</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">47.22% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>17/36</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">59.09% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>13/22</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">68.6% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>59/86</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line medium'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
335
- <span class="cline-any cline-neutral">&nbsp;</span>
336
- <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-neutral">&nbsp;</span>
338
- <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-yes">1x</span>
340
- <span class="cline-any cline-yes">1x</span>
341
- <span class="cline-any cline-yes">1x</span>
342
- <span class="cline-any cline-yes">1x</span>
343
- <span class="cline-any cline-neutral">&nbsp;</span>
344
- <span class="cline-any cline-yes">1x</span>
345
- <span class="cline-any cline-yes">1x</span>
346
- <span class="cline-any cline-yes">1x</span>
347
- <span class="cline-any cline-neutral">&nbsp;</span>
348
- <span class="cline-any cline-neutral">&nbsp;</span>
349
- <span class="cline-any cline-neutral">&nbsp;</span>
350
- <span class="cline-any cline-neutral">&nbsp;</span>
351
- <span class="cline-any cline-neutral">&nbsp;</span>
352
- <span class="cline-any cline-neutral">&nbsp;</span>
353
- <span class="cline-any cline-neutral">&nbsp;</span>
354
- <span class="cline-any cline-yes">1x</span>
355
- <span class="cline-any cline-neutral">&nbsp;</span>
356
- <span class="cline-any cline-neutral">&nbsp;</span>
357
- <span class="cline-any cline-neutral">&nbsp;</span>
358
- <span class="cline-any cline-yes">1x</span>
359
- <span class="cline-any cline-yes">1x</span>
360
- <span class="cline-any cline-no">&nbsp;</span>
361
- <span class="cline-any cline-neutral">&nbsp;</span>
362
- <span class="cline-any cline-neutral">&nbsp;</span>
363
- <span class="cline-any cline-neutral">&nbsp;</span>
364
- <span class="cline-any cline-yes">1x</span>
365
- <span class="cline-any cline-no">&nbsp;</span>
366
- <span class="cline-any cline-no">&nbsp;</span>
367
- <span class="cline-any cline-neutral">&nbsp;</span>
368
- <span class="cline-any cline-neutral">&nbsp;</span>
369
- <span class="cline-any cline-neutral">&nbsp;</span>
370
- <span class="cline-any cline-no">&nbsp;</span>
371
- <span class="cline-any cline-no">&nbsp;</span>
372
- <span class="cline-any cline-neutral">&nbsp;</span>
373
- <span class="cline-any cline-neutral">&nbsp;</span>
374
- <span class="cline-any cline-neutral">&nbsp;</span>
375
- <span class="cline-any cline-neutral">&nbsp;</span>
376
- <span class="cline-any cline-neutral">&nbsp;</span>
377
- <span class="cline-any cline-neutral">&nbsp;</span>
378
- <span class="cline-any cline-no">&nbsp;</span>
379
- <span class="cline-any cline-no">&nbsp;</span>
380
- <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-no">&nbsp;</span>
382
- <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-neutral">&nbsp;</span>
385
- <span class="cline-any cline-yes">1x</span>
386
- <span class="cline-any cline-yes">1x</span>
387
- <span class="cline-any cline-neutral">&nbsp;</span>
388
- <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-yes">1x</span>
390
- <span class="cline-any cline-yes">3x</span>
391
- <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-neutral">&nbsp;</span>
394
- <span class="cline-any cline-yes">1x</span>
395
- <span class="cline-any cline-yes">3x</span>
396
- <span class="cline-any cline-yes">2x</span>
397
- <span class="cline-any cline-neutral">&nbsp;</span>
398
- <span class="cline-any cline-yes">1x</span>
399
- <span class="cline-any cline-no">&nbsp;</span>
400
- <span class="cline-any cline-neutral">&nbsp;</span>
401
- <span class="cline-any cline-neutral">&nbsp;</span>
402
- <span class="cline-any cline-yes">1x</span>
403
- <span class="cline-any cline-neutral">&nbsp;</span>
404
- <span class="cline-any cline-yes">1x</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
407
- <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-yes">1x</span>
409
- <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-neutral">&nbsp;</span>
411
- <span class="cline-any cline-neutral">&nbsp;</span>
412
- <span class="cline-any cline-neutral">&nbsp;</span>
413
- <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-yes">1x</span>
415
- <span class="cline-any cline-no">&nbsp;</span>
416
- <span class="cline-any cline-yes">1x</span>
417
- <span class="cline-any cline-no">&nbsp;</span>
418
- <span class="cline-any cline-no">&nbsp;</span>
419
- <span class="cline-any cline-neutral">&nbsp;</span>
420
- <span class="cline-any cline-yes">1x</span>
421
- <span class="cline-any cline-yes">3x</span>
422
- <span class="cline-any cline-neutral">&nbsp;</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-yes">3x</span>
427
- <span class="cline-any cline-neutral">&nbsp;</span>
428
- <span class="cline-any cline-neutral">&nbsp;</span>
429
- <span class="cline-any cline-yes">1x</span>
430
- <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-yes">1x</span>
432
- <span class="cline-any cline-neutral">&nbsp;</span>
433
- <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-neutral">&nbsp;</span>
435
- <span class="cline-any cline-neutral">&nbsp;</span>
436
- <span class="cline-any cline-neutral">&nbsp;</span>
437
- <span class="cline-any cline-yes">1x</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-neutral">&nbsp;</span>
442
- <span class="cline-any cline-neutral">&nbsp;</span>
443
- <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-neutral">&nbsp;</span>
446
- <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-yes">9x</span>
448
- <span class="cline-any cline-yes">3x</span>
449
- <span class="cline-any cline-yes">6x</span>
450
- <span class="cline-any cline-yes">3x</span>
451
- <span class="cline-any cline-neutral">&nbsp;</span>
452
- <span class="cline-any cline-yes">3x</span>
453
- <span class="cline-any cline-neutral">&nbsp;</span>
454
- <span class="cline-any cline-yes">9x</span>
455
- <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-neutral">&nbsp;</span>
457
- <span class="cline-any cline-neutral">&nbsp;</span>
458
- <span class="cline-any cline-neutral">&nbsp;</span>
459
- <span class="cline-any cline-yes">9x</span>
460
- <span class="cline-any cline-yes">9x</span>
461
- <span class="cline-any cline-yes">3x</span>
462
- <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-yes">9x</span>
464
- <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-yes">9x</span>
468
- <span class="cline-any cline-yes">3x</span>
469
- <span class="cline-any cline-neutral">&nbsp;</span>
470
- <span class="cline-any cline-neutral">&nbsp;</span>
471
- <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-no">&nbsp;</span>
474
- <span class="cline-any cline-no">&nbsp;</span>
475
- <span class="cline-any cline-no">&nbsp;</span>
476
- <span class="cline-any cline-no">&nbsp;</span>
477
- <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-neutral">&nbsp;</span>
479
- <span class="cline-any cline-neutral">&nbsp;</span>
480
- <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-no">&nbsp;</span>
482
- <span class="cline-any cline-no">&nbsp;</span>
483
- <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-yes">1x</span>
487
- <span class="cline-any cline-yes">9x</span>
488
- <span class="cline-any cline-yes">3x</span>
489
- <span class="cline-any cline-yes">3x</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-neutral">&nbsp;</span>
492
- <span class="cline-any cline-neutral">&nbsp;</span>
493
- <span class="cline-any cline-yes">1x</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-neutral">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-no">&nbsp;</span>
499
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
504
- <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-no">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-neutral">&nbsp;</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-no">&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-yes">1x</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-neutral">&nbsp;</span>
520
- <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
525
- <span class="cline-any cline-neutral">&nbsp;</span>
526
- <span class="cline-any cline-neutral">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-yes">1x</span>
529
- <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-neutral">&nbsp;</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-yes">1x</span>
536
- <span class="cline-any cline-no">&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-yes">1x</span>
540
- <span class="cline-any cline-yes">1x</span>
541
- <span class="cline-any cline-yes">1x</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-yes">1x</span>
547
- <span class="cline-any cline-no">&nbsp;</span>
548
- <span class="cline-any cline-neutral">&nbsp;</span>
549
- <span class="cline-any cline-neutral">&nbsp;</span>
550
- <span class="cline-any cline-neutral">&nbsp;</span>
551
- <span class="cline-any cline-neutral">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-neutral">&nbsp;</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span>
555
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
559
- <span class="cline-any cline-no">&nbsp;</span>
560
- <span class="cline-any cline-no">&nbsp;</span>
561
- <span class="cline-any cline-neutral">&nbsp;</span>
562
- <span class="cline-any cline-no">&nbsp;</span>
563
- <span class="cline-any cline-neutral">&nbsp;</span>
564
- <span class="cline-any cline-neutral">&nbsp;</span>
565
- <span class="cline-any cline-neutral">&nbsp;</span>
566
- <span class="cline-any cline-neutral">&nbsp;</span>
567
- <span class="cline-any cline-neutral">&nbsp;</span>
568
- <span class="cline-any cline-neutral">&nbsp;</span>
569
- <span class="cline-any cline-neutral">&nbsp;</span>
570
- <span class="cline-any cline-neutral">&nbsp;</span>
571
- <span class="cline-any cline-neutral">&nbsp;</span>
572
- <span class="cline-any cline-neutral">&nbsp;</span>
573
- <span class="cline-any cline-yes">1x</span>
574
- <span class="cline-any cline-neutral">&nbsp;</span>
575
- <span class="cline-any cline-neutral">&nbsp;</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-neutral">&nbsp;</span>
578
- <span class="cline-any cline-neutral">&nbsp;</span>
579
- <span class="cline-any cline-neutral">&nbsp;</span>
580
- <span class="cline-any cline-neutral">&nbsp;</span>
581
- <span class="cline-any cline-neutral">&nbsp;</span>
582
- <span class="cline-any cline-neutral">&nbsp;</span>
583
- <span class="cline-any cline-yes">1x</span>
584
- <span class="cline-any cline-neutral">&nbsp;</span>
585
- <span class="cline-any cline-neutral">&nbsp;</span>
586
- <span class="cline-any cline-neutral">&nbsp;</span>
587
- <span class="cline-any cline-neutral">&nbsp;</span>
588
- <span class="cline-any cline-neutral">&nbsp;</span>
589
- <span class="cline-any cline-neutral">&nbsp;</span>
590
- <span class="cline-any cline-neutral">&nbsp;</span>
591
- <span class="cline-any cline-neutral">&nbsp;</span>
592
- <span class="cline-any cline-neutral">&nbsp;</span>
593
- <span class="cline-any cline-neutral">&nbsp;</span>
594
- <span class="cline-any cline-neutral">&nbsp;</span>
595
- <span class="cline-any cline-yes">1x</span>
596
- <span class="cline-any cline-neutral">&nbsp;</span>
597
- <span class="cline-any cline-neutral">&nbsp;</span>
598
- <span class="cline-any cline-neutral">&nbsp;</span>
599
- <span class="cline-any cline-neutral">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { useState, useEffect } from 'react';
603
- import { pie, arc } from 'd3-shape';
604
- import { select, event } from 'd3-selection';
605
- import PropTypes from 'prop-types';
606
- &nbsp;
607
- const WIDTH = 210;
608
- const HEIGHT = 210;
609
- const RADIUS = Math.min(WIDTH, HEIGHT) / 2;
610
- const GAP_VALUE = 2.5;
611
- &nbsp;
612
- const ScoreChart = ({ performanceYear, chartData, linkCallback }) =&gt; {
613
- const [hasLegend, setHasLegend] = useState(false);
614
- const [titleMapping, setTitleMapping] = useState({
615
- quality: 'Quality Measures',
616
- aci: 'Advancing Care Info',
617
- pi: 'Promoting Interoperability',
618
- ia: 'Improvement Activities',
619
- cost: 'Cost',
620
- });
621
- &nbsp;
622
- const { categories } = chartData;
623
- let legendToggler;
624
- let legend;
625
- &nbsp;
626
- const getAdvancingCareLabel = () =&gt; {
627
- <span class="missing-if-branch" title="if path not taken" >I</span>if (performanceYear &gt; 2017) {
628
- <span class="cstat-no" title="statement not covered" > setTitleMapping({ ...titleMapping, aci: 'Promoting Interoperability' });</span>
629
- }
630
- };
631
- &nbsp;
632
- const redirectToCategory = <span class="fstat-no" title="function not covered" >(l</span>ink, categoryId) =&gt; {
633
- <span class="cstat-no" title="statement not covered" > if (!link) {</span>
634
- <span class="cstat-no" title="statement not covered" > return;</span>
635
- }
636
- &nbsp;
637
- // track explicitly chart legends
638
- <span class="cstat-no" title="statement not covered" > if (window.utag) {</span>
639
- <span class="cstat-no" title="statement not covered" > window.utag.track('link', {</span>
640
- ga_event_category: 'SidebarNav',
641
- ga_event_action: `GoTo${categoryId}`,
642
- ga_event_label: categoryId,
643
- });
644
- }
645
- &nbsp;
646
- <span class="cstat-no" title="statement not covered" > if (linkCallback) {</span>
647
- <span class="cstat-no" title="statement not covered" > linkCallback(link);</span>
648
- } else {
649
- <span class="cstat-no" title="statement not covered" > window.location.href = link;</span>
650
- }
651
- };
652
- &nbsp;
653
- const draw = (chartData) =&gt; {
654
- const scorePie = pie().sort(null);
655
- &nbsp;
656
- // Removing invalid categories
657
- const categories = chartData.categories.filter(
658
- ({ maxContribution }) =&gt; !!maxContribution
659
- );
660
- &nbsp;
661
- // Calculating the sum of valid categories in order to calculate ratios
662
- const categorySum = categories
663
- .map(({ maxContribution }) =&gt; maxContribution)
664
- .reduce((sum, current) =&gt; sum + current);
665
- &nbsp;
666
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!categorySum) {
667
- <span class="cstat-no" title="statement not covered" > return;</span>
668
- }
669
- &nbsp;
670
- select('.score-chart').selectAll('*').remove();
671
- &nbsp;
672
- const svg = select('.score-chart')
673
- .attr('width', WIDTH)
674
- .attr('height', HEIGHT);
675
- &nbsp;
676
- const chartArc = arc()
677
- .innerRadius(RADIUS - 1.5)
678
- .outerRadius(RADIUS - 25);
679
- &nbsp;
680
- // Preparing the data structure with ratios: [ FILLED, EMPTY, TRANSPARENT, FILLED, EMPTY, ... ]
681
- let data;
682
- <span class="missing-if-branch" title="if path not taken" >I</span>if (categories.length === 0) {
683
- <span class="cstat-no" title="statement not covered" > data = [];</span>
684
- } else <span class="missing-if-branch" title="if path not taken" >I</span>if (categories.length === 1) {
685
- const { value, maxContribution } = <span class="cstat-no" title="statement not covered" >categories[0];</span>
686
- <span class="cstat-no" title="statement not covered" > data = [value || 0, maxContribution - value];</span>
687
- } else {
688
- data = categories
689
- .map(({ value, maxContribution }) =&gt; [
690
- value || <span class="branch-1 cbranch-no" title="branch not covered" >0,</span>
691
- maxContribution - value,
692
- GAP_VALUE * (categorySum / 100),
693
- ])
694
- .reduce((a, b) =&gt; a.concat(b), []);
695
- }
696
- &nbsp;
697
- svg.append('title').attr('id', 'titleID').text('Your submission score');
698
- &nbsp;
699
- svg
700
- .append('desc')
701
- .attr('id', 'descID')
702
- .text(`${chartData.finalScore} out of 100`);
703
- &nbsp;
704
- // Setting up the arcs
705
- let arcs = svg
706
- .append('g')
707
- .attr('class', 'arcs')
708
- .attr('role', 'presentation')
709
- .selectAll('g.arc')
710
- .data(scorePie(data))
711
- .enter()
712
- .append('g')
713
- .attr('class', (d, i) =&gt; {
714
- let role;
715
- if (i % 3 === 0) {
716
- role = 'filled';
717
- } else if (i % 3 === 1) {
718
- role = 'empty';
719
- } else {
720
- role = 'transparent';
721
- }
722
- return `arc ${categories[parseInt(i / 3)].name} ${role}`;
723
- })
724
- .attr('transform', `translate(${RADIUS}, ${RADIUS})`)
725
- // For accessibility, we add keyboard access to the filled slices
726
- .attr('tabindex', (d, i) =&gt; {
727
- let tabindex = -1;
728
- if (i % 3 === 0) {
729
- tabindex = 0;
730
- }
731
- return tabindex;
732
- })
733
- // IE for for focusable svg elements
734
- .attr('focusable', (d, i) =&gt; {
735
- if (i % 3 === 0) {
736
- return true;
737
- }
738
- })
739
- // For accessibility, we add keyboard access to the filled slices
740
- .on('keyup', <span class="fstat-no" title="function not covered" >(d</span>, i) =&gt; {
741
- const code = <span class="cstat-no" title="statement not covered" >event.keyCode || event.which;</span>
742
- <span class="cstat-no" title="statement not covered" > if (code === 13) {</span>
743
- const { name, link } = <span class="cstat-no" title="statement not covered" >categories[parseInt(i / 3)];</span>
744
- <span class="cstat-no" title="statement not covered" > redirectToCategory(link, name);</span>
745
- }
746
- })
747
- // On click - go to category page
748
- .on('click', <span class="fstat-no" title="function not covered" >(d</span>, i) =&gt; {
749
- const { name, link } = <span class="cstat-no" title="statement not covered" >categories[parseInt(i / 3)];</span>
750
- <span class="cstat-no" title="statement not covered" > redirectToCategory(link, name);</span>
751
- });
752
- &nbsp;
753
- // Add accessibility description
754
- arcs.append('desc').text((d, i) =&gt; {
755
- if (i % 3 === 0) {
756
- const { name, value, maxContribution } = categories[parseInt(i / 3)];
757
- return `${titleMapping[name]} ${value} out of ${maxContribution}`;
758
- }
759
- });
760
- &nbsp;
761
- arcs
762
- .append('path')
763
- .attr('d', chartArc)
764
- // On mouse over - show category tooltip
765
- .on('mouseover', <span class="fstat-no" title="function not covered" >(d</span>, i) =&gt; {
766
- const { name, value, maxContribution } = <span class="cstat-no" title="statement not covered" >categories[parseInt(i / 3)];</span>
767
- <span class="cstat-no" title="statement not covered" > select('.chart-tooltip')</span>
768
- .style('opacity', 1)
769
- .text(`${titleMapping[name]} ${value}/${maxContribution}`);
770
- })
771
- // On mouse move - move category tooltip
772
- .on('mousemove', <span class="fstat-no" title="function not covered" >()</span> =&gt; {
773
- <span class="cstat-no" title="statement not covered" > select('.chart-tooltip')</span>
774
- .style('top', event.clientY - HEIGHT + 10 + 'px')
775
- .style('left', event.clientX + 'px');
776
- })
777
- // On mouse out - hide category tooltip
778
- .on('mouseout', <span class="fstat-no" title="function not covered" >()</span> =&gt; {
779
- <span class="cstat-no" title="statement not covered" > select('.chart-tooltip').style('opacity', 0);</span>
780
- });
781
- &nbsp;
782
- // Adding title and subtitle
783
- const text = svg
784
- .append('g')
785
- .attr('text-anchor', 'middle')
786
- .attr('transform', `translate(${WIDTH / 2}, ${HEIGHT / 2})`);
787
- &nbsp;
788
- // Adding title - X%
789
- text
790
- .append('text')
791
- .attr('y', 4)
792
- .attr('class', 'chart-title')
793
- .text(chartData.finalScore);
794
- &nbsp;
795
- // Adding subtitle - OUT OF 100
796
- text
797
- .append('text')
798
- .attr('y', 24)
799
- .attr('class', 'chart-subtitle')
800
- .text('OUT OF 100');
801
- };
802
- &nbsp;
803
- const toggleLegend = <span class="fstat-no" title="function not covered" >()</span> =&gt; {
804
- <span class="cstat-no" title="statement not covered" > setHasLegend(!hasLegend);</span>
805
- };
806
- &nbsp;
807
- useEffect(() =&gt; {
808
- <span class="missing-if-branch" title="else path not taken" >E</span>if (chartData?.finalScore) {
809
- draw(chartData);
810
- getAdvancingCareLabel();
811
- }
812
- }, [chartData?.finalScore]);
813
- &nbsp;
814
- <span class="missing-if-branch" title="if path not taken" >I</span>if (hasLegend) {
815
- <span class="cstat-no" title="statement not covered" > legendToggler = (</span>
816
- &lt;button className="open" type="button" aria-pressed="true"&gt;
817
- Hide Legend
818
- &lt;svg
819
- className="right-icon rotated"
820
- aria-hidden="true"
821
- focusable="false"
822
- &gt;
823
- &lt;use xlinkHref="#chevron-down" /&gt;
824
- &lt;/svg&gt;
825
- &lt;/button&gt;
826
- );
827
- <span class="cstat-no" title="statement not covered" > legend = categories.map(<span class="fstat-no" title="function not covered" >({</span> name, value, maxContribution, link }, index) =&gt; {</span>
828
- <span class="cstat-no" title="statement not covered" > return (</span>
829
- &lt;li key={name} className="legend-axis"&gt;
830
- &lt;button onClick={<span class="fstat-no" title="function not covered" >()</span> =&gt; <span class="cstat-no" title="statement not covered" >redirectToCategory(link, name)}</span>&gt;
831
- &lt;span className={`legend-axis-color ${name}`} /&gt;
832
- &amp;nbsp;
833
- &lt;span className="legend-axis-title"&gt;{titleMapping[name]}&lt;/span&gt;
834
- &amp;nbsp;
835
- &lt;span className="legend-axis-value"&gt;{`${value}/${maxContribution}`}&lt;/span&gt;
836
- &lt;/button&gt;
837
- &lt;/li&gt;
838
- );
839
- });
840
- } else {
841
- legendToggler = (
842
- &lt;button type="button" aria-pressed="false"&gt;
843
- Show Legend
844
- &lt;svg className="right-icon" aria-hidden="true" focusable="false"&gt;
845
- &lt;use xlinkHref="#chevron-down" /&gt;
846
- &lt;/svg&gt;
847
- &lt;/button&gt;
848
- );
849
- }
850
- &nbsp;
851
- return (
852
- &lt;div className="chart"&gt;
853
- &lt;svg className="score-chart" focusable="false" /&gt;
854
- &lt;div className="chart-tooltip off" /&gt;
855
- &lt;div className="chart-legend-toggler" onClick={toggleLegend}&gt;
856
- {legendToggler}
857
- &lt;/div&gt;
858
- &lt;ul className="chart-legend"&gt;{legend}&lt;/ul&gt;
859
- &lt;/div&gt;
860
- );
861
- };
862
- &nbsp;
863
- ScoreChart.propTypes = {
864
- chartData: PropTypes.object,
865
- linkCallback: PropTypes.func,
866
- performanceYear: PropTypes.number,
867
- };
868
- &nbsp;
869
- export default ScoreChart;
870
- &nbsp;</pre></td></tr></table></pre>
871
-
872
- <div class='push'></div><!-- for sticky footer -->
873
- </div><!-- /wrapper -->
874
- <div class='footer quiet pad2 space-top1 center small'>
875
- Code coverage generated by
876
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
877
- at Sun Sep 11 2022 11:18:36 GMT-0700 (Pacific Daylight Time)
878
- </div>
879
- <script src="../../../prettify.js"></script>
880
- <script>
881
- window.onload = function () {
882
- prettyPrint();
883
- };
884
- </script>
885
- <script src="../../../sorter.js"></script>
886
- <script src="../../../block-navigation.js"></script>
887
- </body>
888
- </html>
889
-