qpp-style 9.18.1 → 9.18.2

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 (194) hide show
  1. package/components/NotificationBanner/CollapsedView.js +29 -22
  2. package/components/SideNav/Links/NavLinkDrawer.jsx +1 -1
  3. package/coverage/clover.xml +78 -79
  4. package/coverage/coverage-final.json +73 -73
  5. package/coverage/lcov-report/index.html +10 -10
  6. package/coverage/lcov-report/react/components/Accordion/index.html +1 -1
  7. package/coverage/lcov-report/react/components/Accordion/index.jsx.html +1 -1
  8. package/coverage/lcov-report/react/components/Button/index.html +1 -1
  9. package/coverage/lcov-report/react/components/Button/index.js.html +1 -1
  10. package/coverage/lcov-report/react/components/Dropdown/index.html +1 -1
  11. package/coverage/lcov-report/react/components/Dropdown/index.js.html +1 -1
  12. package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +1 -1
  13. package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +1 -1
  14. package/coverage/lcov-report/react/components/Error/error.js.html +1 -1
  15. package/coverage/lcov-report/react/components/Error/index.html +1 -1
  16. package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +2 -2
  17. package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +1 -1
  18. package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +1 -1
  19. package/coverage/lcov-report/react/components/Footer/footer.js.html +1 -1
  20. package/coverage/lcov-report/react/components/Footer/index.html +1 -1
  21. package/coverage/lcov-report/react/components/GovBanner/index.html +1 -1
  22. package/coverage/lcov-report/react/components/GovBanner/index.js.html +1 -1
  23. package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +1 -1
  24. package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +1 -1
  25. package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +1 -1
  26. package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +1 -1
  27. package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +1 -1
  28. package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +1 -1
  29. package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +1 -1
  30. package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +1 -1
  31. package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +1 -1
  32. package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +1 -1
  33. package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +1 -1
  34. package/coverage/lcov-report/react/components/Header/ImpersonatorBanner.jsx.html +1 -1
  35. package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +1 -1
  36. package/coverage/lcov-report/react/components/Header/header.js.html +1 -1
  37. package/coverage/lcov-report/react/components/Header/hooks.js.html +1 -1
  38. package/coverage/lcov-report/react/components/Header/index.html +1 -1
  39. package/coverage/lcov-report/react/components/Header/utag-helpers.js.html +1 -1
  40. package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +1 -1
  41. package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +1 -1
  42. package/coverage/lcov-report/react/components/Infotip/index.html +1 -1
  43. package/coverage/lcov-report/react/components/Infotip/index.js.html +1 -1
  44. package/coverage/lcov-report/react/components/Modal/LegacyModal.jsx.html +1 -1
  45. package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +1 -1
  46. package/coverage/lcov-report/react/components/Modal/index.html +1 -1
  47. package/coverage/lcov-report/react/components/Modal/index.jsx.html +1 -1
  48. package/coverage/lcov-report/react/components/NotificationBanner/CollapsedView.js.html +10 -10
  49. package/coverage/lcov-report/react/components/NotificationBanner/ExpandedView.js.html +1 -1
  50. package/coverage/lcov-report/react/components/NotificationBanner/index.html +11 -11
  51. package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +1 -1
  52. package/coverage/lcov-report/react/components/SanitizedContent/index.html +1 -1
  53. package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +1 -1
  54. package/coverage/lcov-report/react/components/SessionDialog/index.html +1 -1
  55. package/coverage/lcov-report/react/components/SessionDialog/sessionDialog.js.html +1 -1
  56. package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +1 -1
  57. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +1 -1
  58. package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +1 -1
  59. package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +1 -1
  60. package/coverage/lcov-report/react/components/SideNav/Chart/index.html +1 -1
  61. package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +1 -1
  62. package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +1 -1
  63. package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +1 -1
  64. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.html +1 -1
  65. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/index.js.html +1 -1
  66. package/coverage/lcov-report/react/components/SideNav/Content/SelectRole/utils.js.html +1 -1
  67. package/coverage/lcov-report/react/components/SideNav/Content/index.html +1 -1
  68. package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +1 -1
  69. package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +1 -1
  70. package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +1 -1
  71. package/coverage/lcov-report/react/components/SideNav/Details/index.html +1 -1
  72. package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +1 -1
  73. package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +1 -1
  74. package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +1 -1
  75. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +1 -1
  76. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +1 -1
  77. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +1 -1
  78. package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +1 -1
  79. package/coverage/lcov-report/react/components/SideNav/Links/index.html +1 -1
  80. package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +1 -1
  81. package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +1 -1
  82. package/coverage/lcov-report/react/components/SideNav/UI/index.html +1 -1
  83. package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +1 -1
  84. package/coverage/lcov-report/react/components/SideNav/helpers.js.html +1 -1
  85. package/coverage/lcov-report/react/components/SideNav/index.html +1 -1
  86. package/coverage/lcov-report/react/components/SideNav/index.js.html +1 -1
  87. package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +1 -1
  88. package/coverage/lcov-report/react/components/Tooltip/index.html +1 -1
  89. package/coverage/lcov-report/react/components/Tooltip/index.js.html +1 -1
  90. package/coverage/lcov-report/react/components/Tooltip/position.js.html +1 -1
  91. package/coverage/lcov-report/react/components/hooks/index.html +1 -1
  92. package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +1 -1
  93. package/coverage/lcov-report/react/components/index.html +1 -1
  94. package/coverage/lcov-report/react/index.html +1 -1
  95. package/coverage/lcov-report/react/index.js.html +1 -1
  96. package/coverage/lcov-report/react/lib/Chevron.jsx.html +1 -1
  97. package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +1 -1
  98. package/coverage/lcov-report/react/lib/index.html +1 -1
  99. package/coverage/lcov-report/react/lib/svg-definitions.svg.html +1 -1
  100. package/coverage/lcov-report/react/session/index.html +1 -1
  101. package/coverage/lcov-report/react/session/index.js.html +1 -1
  102. package/coverage/lcov-report/react/session/logout.js.html +1 -1
  103. package/coverage/lcov-report/react/session/refresh.js.html +1 -1
  104. package/coverage/lcov-report/react/session/ttl.js.html +1 -1
  105. package/coverage/lcov.info +2 -3
  106. package/dist/browser.js +1 -1
  107. package/dist/browser.js.map +1 -1
  108. package/dist/index.js +1 -1
  109. package/dist/index.js.map +1 -1
  110. package/dist/react/index.js +1 -1
  111. package/dist/react/index.js.map +1 -1
  112. package/package.json +13 -15
  113. package/styles/qppds/base/_typography.scss +12 -0
  114. package/styles/qppds/components/_checkbox.scss +199 -0
  115. package/styles/qppds/components/_radio-button.scss +184 -0
  116. package/styles/qppds/components/index.scss +2 -0
  117. package/styles/qppds/settings/variables/_layout.scss +5 -3
  118. package/styles/qppds/utilities/_list-style.scss +18 -0
  119. package/styles/qppds/utilities/index.scss +1 -0
  120. package/coverage/lcov-report/components/Accordion/index.html +0 -116
  121. package/coverage/lcov-report/components/Accordion/index.jsx.html +0 -364
  122. package/coverage/lcov-report/components/Error/Collapsible.jsx.html +0 -349
  123. package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +0 -178
  124. package/coverage/lcov-report/components/Error/index.html +0 -131
  125. package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +0 -880
  126. package/coverage/lcov-report/components/Footer/LegacyFooterUI.jsx.html +0 -667
  127. package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +0 -265
  128. package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +0 -187
  129. package/coverage/lcov-report/components/Footer/index.html +0 -161
  130. package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +0 -310
  131. package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +0 -208
  132. package/coverage/lcov-report/components/Infotip/index.html +0 -146
  133. package/coverage/lcov-report/components/Infotip/index.js.html +0 -94
  134. package/coverage/lcov-report/components/Modal/LegacyModal.jsx.html +0 -301
  135. package/coverage/lcov-report/components/Modal/Modal.jsx.html +0 -505
  136. package/coverage/lcov-report/components/Modal/index.html +0 -146
  137. package/coverage/lcov-report/components/Modal/index.jsx.html +0 -151
  138. package/coverage/lcov-report/components/SanitizedContent/index.html +0 -116
  139. package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +0 -685
  140. package/coverage/lcov-report/components/SessionDialogUI.jsx.html +0 -868
  141. package/coverage/lcov-report/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -166
  142. package/coverage/lcov-report/components/SideNav/AnimationGroup/index.html +0 -116
  143. package/coverage/lcov-report/components/SideNav/Chart/ScoreChart.jsx.html +0 -889
  144. package/coverage/lcov-report/components/SideNav/Chart/index.html +0 -131
  145. package/coverage/lcov-report/components/SideNav/Chart/index.js.html +0 -94
  146. package/coverage/lcov-report/components/SideNav/Content/LevelOneContent.jsx.html +0 -709
  147. package/coverage/lcov-report/components/SideNav/Content/LevelTwoContent.jsx.html +0 -733
  148. package/coverage/lcov-report/components/SideNav/Content/index.html +0 -146
  149. package/coverage/lcov-report/components/SideNav/Content/index.js.html +0 -97
  150. package/coverage/lcov-report/components/SideNav/Details/IndividualDetails.jsx.html +0 -139
  151. package/coverage/lcov-report/components/SideNav/Details/PracticeDetails.jsx.html +0 -220
  152. package/coverage/lcov-report/components/SideNav/Details/index.html +0 -146
  153. package/coverage/lcov-report/components/SideNav/Details/index.js.html +0 -97
  154. package/coverage/lcov-report/components/SideNav/Links/CmsSwitchLink.jsx.html +0 -208
  155. package/coverage/lcov-report/components/SideNav/Links/NavItemInline.jsx.html +0 -247
  156. package/coverage/lcov-report/components/SideNav/Links/NavLinkContainer.jsx.html +0 -199
  157. package/coverage/lcov-report/components/SideNav/Links/NavLinkDrawer.jsx.html +0 -832
  158. package/coverage/lcov-report/components/SideNav/Links/NavLinkInline.jsx.html +0 -406
  159. package/coverage/lcov-report/components/SideNav/Links/NavLinkToggle.jsx.html +0 -187
  160. package/coverage/lcov-report/components/SideNav/Links/index.html +0 -206
  161. package/coverage/lcov-report/components/SideNav/Links/index.js.html +0 -124
  162. package/coverage/lcov-report/components/SideNav/UI/SideNavUI.jsx.html +0 -1084
  163. package/coverage/lcov-report/components/SideNav/UI/index.html +0 -131
  164. package/coverage/lcov-report/components/SideNav/UI/index.js.html +0 -94
  165. package/coverage/lcov-report/components/SideNav/helpers.js.html +0 -238
  166. package/coverage/lcov-report/components/SideNav/index.html +0 -116
  167. package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +0 -349
  168. package/coverage/lcov-report/components/Tooltip/index.html +0 -146
  169. package/coverage/lcov-report/components/Tooltip/index.js.html +0 -94
  170. package/coverage/lcov-report/components/Tooltip/position.js.html +0 -289
  171. package/coverage/lcov-report/components/hooks/index.html +0 -116
  172. package/coverage/lcov-report/components/hooks/useGetConfig.js.html +0 -307
  173. package/coverage/lcov-report/components/index.html +0 -116
  174. package/coverage/lcov-report/lib/Chevron.jsx.html +0 -181
  175. package/coverage/lcov-report/lib/SvgComponents.jsx.html +0 -1702
  176. package/coverage/lcov-report/lib/index.html +0 -146
  177. package/coverage/lcov-report/lib/svg-definitions.svg.html +0 -460
  178. package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +0 -667
  179. package/coverage/lcov-report/session/index.html +0 -161
  180. package/coverage/lcov-report/session/index.js.html +0 -100
  181. package/coverage/lcov-report/session/logout.js.html +0 -298
  182. package/coverage/lcov-report/session/refresh.js.html +0 -232
  183. package/coverage/lcov-report/session/ttl.js.html +0 -196
  184. package/styles/components/_footer.scss +0 -593
  185. package/styles/components/_header.scss +0 -890
  186. package/styles/components/_sidebar.scss +0 -8
  187. package/styles/components/sidebar/_animations.scss +0 -38
  188. package/styles/components/sidebar/_cms.scss +0 -61
  189. package/styles/components/sidebar/_details.scss +0 -58
  190. package/styles/components/sidebar/_links.scss +0 -415
  191. package/styles/components/sidebar/_sidebar-animation.scss +0 -121
  192. package/styles/components/sidebar/_sidebar-tooltip.scss +0 -33
  193. package/styles/components/sidebar/_sidebar.scss +0 -141
  194. package/styles/components/sidebar/project-specific/_wi.scss +0 -42
@@ -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">2x</span>
340
- <span class="cline-any cline-yes">2x</span>
341
- <span class="cline-any cline-yes">2x</span>
342
- <span class="cline-any cline-yes">2x</span>
343
- <span class="cline-any cline-neutral">&nbsp;</span>
344
- <span class="cline-any cline-yes">2x</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">2x</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 Fri Apr 29 2022 13:58:50 GMT-0400 (Eastern 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
-