@itwin/reports-config-widget-react 0.0.8 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/.rush/temp/package-deps_rebuild.json +23 -13
  2. package/.rush/temp/shrinkwrap-deps.json +1 -1
  3. package/CHANGELOG.json +12 -0
  4. package/CHANGELOG.md +8 -1
  5. package/coverage/clover.xml +354 -128
  6. package/coverage/coverage-final.json +17 -8
  7. package/coverage/lcov-report/index.html +36 -21
  8. package/coverage/lcov-report/src/ReportsConfigWidget.ts.html +2 -2
  9. package/coverage/lcov-report/src/index.html +1 -1
  10. package/coverage/lcov-report/src/test/index.html +1 -1
  11. package/coverage/lcov-report/src/test/test-utils.tsx.html +1 -1
  12. package/coverage/lcov-report/src/widget/ReportsConfigUiProvider.tsx.html +1 -1
  13. package/coverage/lcov-report/src/widget/components/ActionPanel.tsx.html +1 -1
  14. package/coverage/lcov-report/src/widget/components/AddMappingsModal.tsx.html +1 -1
  15. package/coverage/lcov-report/src/widget/components/BulkExtractor.ts.html +553 -0
  16. package/coverage/lcov-report/src/widget/components/Constants.ts.html +106 -0
  17. package/coverage/lcov-report/src/widget/components/DeleteModal.tsx.html +4 -4
  18. package/coverage/lcov-report/src/widget/components/Extraction.tsx.html +1 -1
  19. package/coverage/lcov-report/src/widget/components/ExtractionStates/FailedExtractionState.tsx.html +187 -0
  20. package/coverage/lcov-report/src/widget/components/ExtractionStates/QueuedExtractionState.tsx.html +145 -0
  21. package/coverage/lcov-report/src/widget/components/ExtractionStates/RunningExtractionState.tsx.html +139 -0
  22. package/coverage/lcov-report/src/widget/components/ExtractionStates/StartingExtractionState.tsx.html +151 -0
  23. package/coverage/lcov-report/src/widget/components/ExtractionStates/SucceededExtractionState.tsx.html +187 -0
  24. package/coverage/lcov-report/src/widget/components/ExtractionStates/index.html +176 -0
  25. package/coverage/lcov-report/src/widget/components/ExtractionStatus.tsx.html +295 -0
  26. package/coverage/lcov-report/src/widget/components/HorizontalTile.tsx.html +73 -40
  27. package/coverage/lcov-report/src/widget/components/LocalizedTablePaginator.tsx.html +1 -1
  28. package/coverage/lcov-report/src/widget/components/ReportAction.tsx.html +1 -1
  29. package/coverage/lcov-report/src/widget/components/ReportHorizontalTile.tsx.html +478 -0
  30. package/coverage/lcov-report/src/widget/components/ReportMappings.tsx.html +6 -24
  31. package/coverage/lcov-report/src/widget/components/Reports.tsx.html +129 -111
  32. package/coverage/lcov-report/src/widget/components/ReportsContainer.tsx.html +1 -1
  33. package/coverage/lcov-report/src/widget/components/SearchBar.tsx.html +5 -5
  34. package/coverage/lcov-report/src/widget/components/SelectIModel.tsx.html +1 -1
  35. package/coverage/lcov-report/src/widget/components/index.html +83 -23
  36. package/coverage/lcov-report/src/widget/components/utils.tsx.html +3 -3
  37. package/coverage/lcov-report/src/widget/context/ReportsApiConfigContext.tsx.html +4 -4
  38. package/coverage/lcov-report/src/widget/context/index.html +1 -1
  39. package/coverage/lcov-report/src/widget/hooks/index.html +1 -1
  40. package/coverage/lcov-report/src/widget/hooks/useValidator.ts.html +1 -1
  41. package/coverage/lcov-report/src/widget/index.html +1 -1
  42. package/coverage/lcov.info +699 -287
  43. package/jest.config.js +1 -0
  44. package/lib/cjs/tsconfig.tsbuildinfo +1 -1
  45. package/lib/cjs/widget/components/BulkExtractor.d.ts +28 -0
  46. package/lib/cjs/widget/components/BulkExtractor.d.ts.map +1 -0
  47. package/lib/cjs/widget/components/BulkExtractor.js +126 -0
  48. package/lib/cjs/widget/components/BulkExtractor.js.map +1 -0
  49. package/lib/cjs/widget/components/Constants.d.ts +4 -0
  50. package/lib/cjs/widget/components/Constants.d.ts.map +1 -0
  51. package/lib/cjs/widget/components/Constants.js +11 -0
  52. package/lib/cjs/widget/components/Constants.js.map +1 -0
  53. package/lib/cjs/widget/components/ExtractionStates/FailedExtractionState.d.ts +8 -0
  54. package/lib/cjs/widget/components/ExtractionStates/FailedExtractionState.d.ts.map +1 -0
  55. package/lib/cjs/widget/components/ExtractionStates/FailedExtractionState.js +23 -0
  56. package/lib/cjs/widget/components/ExtractionStates/FailedExtractionState.js.map +1 -0
  57. package/lib/cjs/widget/components/ExtractionStates/QueuedExtractionState.d.ts +3 -0
  58. package/lib/cjs/widget/components/ExtractionStates/QueuedExtractionState.d.ts.map +1 -0
  59. package/lib/cjs/widget/components/ExtractionStates/QueuedExtractionState.js +18 -0
  60. package/lib/cjs/widget/components/ExtractionStates/QueuedExtractionState.js.map +1 -0
  61. package/lib/cjs/widget/components/ExtractionStates/RunningExtractionState.d.ts +3 -0
  62. package/lib/cjs/widget/components/ExtractionStates/RunningExtractionState.d.ts.map +1 -0
  63. package/lib/cjs/widget/components/ExtractionStates/RunningExtractionState.js +17 -0
  64. package/lib/cjs/widget/components/ExtractionStates/RunningExtractionState.js.map +1 -0
  65. package/lib/cjs/widget/components/ExtractionStates/StartingExtractionState.d.ts +3 -0
  66. package/lib/cjs/widget/components/ExtractionStates/StartingExtractionState.d.ts.map +1 -0
  67. package/lib/cjs/widget/components/ExtractionStates/StartingExtractionState.js +18 -0
  68. package/lib/cjs/widget/components/ExtractionStates/StartingExtractionState.js.map +1 -0
  69. package/lib/cjs/widget/components/ExtractionStates/SucceededExtractionState.d.ts +8 -0
  70. package/lib/cjs/widget/components/ExtractionStates/SucceededExtractionState.d.ts.map +1 -0
  71. package/lib/cjs/widget/components/ExtractionStates/SucceededExtractionState.js +23 -0
  72. package/lib/cjs/widget/components/ExtractionStates/SucceededExtractionState.js.map +1 -0
  73. package/lib/cjs/widget/components/ExtractionStatus.d.ts +17 -0
  74. package/lib/cjs/widget/components/ExtractionStatus.d.ts.map +1 -0
  75. package/lib/cjs/widget/components/ExtractionStatus.js +76 -0
  76. package/lib/cjs/widget/components/ExtractionStatus.js.map +1 -0
  77. package/lib/cjs/widget/components/ExtractionStatus.scss +27 -0
  78. package/lib/cjs/widget/components/HorizontalTile.d.ts +8 -7
  79. package/lib/cjs/widget/components/HorizontalTile.d.ts.map +1 -1
  80. package/lib/cjs/widget/components/HorizontalTile.js +10 -6
  81. package/lib/cjs/widget/components/HorizontalTile.js.map +1 -1
  82. package/lib/cjs/widget/components/HorizontalTile.scss +42 -22
  83. package/lib/cjs/widget/components/ReportHorizontalTile.d.ts +16 -0
  84. package/lib/cjs/widget/components/ReportHorizontalTile.d.ts.map +1 -0
  85. package/lib/cjs/widget/components/ReportHorizontalTile.js +72 -0
  86. package/lib/cjs/widget/components/ReportHorizontalTile.js.map +1 -0
  87. package/lib/cjs/widget/components/ReportMappings.d.ts.map +1 -1
  88. package/lib/cjs/widget/components/ReportMappings.js +1 -1
  89. package/lib/cjs/widget/components/ReportMappings.js.map +1 -1
  90. package/lib/cjs/widget/components/Reports.d.ts.map +1 -1
  91. package/lib/cjs/widget/components/Reports.js +34 -26
  92. package/lib/cjs/widget/components/Reports.js.map +1 -1
  93. package/lib/cjs/widget/components/Reports.scss +7 -3
  94. package/lib/cjs/widget/components/SearchBar.js +1 -1
  95. package/lib/cjs/widget/components/SearchBar.js.map +1 -1
  96. package/lib/cjs/widget/components/SearchBar.scss +6 -0
  97. package/lib/esm/tsconfig.tsbuildinfo +1 -1
  98. package/lib/esm/widget/components/BulkExtractor.d.ts +28 -0
  99. package/lib/esm/widget/components/BulkExtractor.d.ts.map +1 -0
  100. package/lib/esm/widget/components/BulkExtractor.js +123 -0
  101. package/lib/esm/widget/components/BulkExtractor.js.map +1 -0
  102. package/lib/esm/widget/components/Constants.d.ts +4 -0
  103. package/lib/esm/widget/components/Constants.d.ts.map +1 -0
  104. package/lib/esm/widget/components/Constants.js +8 -0
  105. package/lib/esm/widget/components/Constants.js.map +1 -0
  106. package/lib/esm/widget/components/ExtractionStates/FailedExtractionState.d.ts +8 -0
  107. package/lib/esm/widget/components/ExtractionStates/FailedExtractionState.d.ts.map +1 -0
  108. package/lib/esm/widget/components/ExtractionStates/FailedExtractionState.js +16 -0
  109. package/lib/esm/widget/components/ExtractionStates/FailedExtractionState.js.map +1 -0
  110. package/lib/esm/widget/components/ExtractionStates/QueuedExtractionState.d.ts +3 -0
  111. package/lib/esm/widget/components/ExtractionStates/QueuedExtractionState.d.ts.map +1 -0
  112. package/lib/esm/widget/components/ExtractionStates/QueuedExtractionState.js +11 -0
  113. package/lib/esm/widget/components/ExtractionStates/QueuedExtractionState.js.map +1 -0
  114. package/lib/esm/widget/components/ExtractionStates/RunningExtractionState.d.ts +3 -0
  115. package/lib/esm/widget/components/ExtractionStates/RunningExtractionState.d.ts.map +1 -0
  116. package/lib/esm/widget/components/ExtractionStates/RunningExtractionState.js +10 -0
  117. package/lib/esm/widget/components/ExtractionStates/RunningExtractionState.js.map +1 -0
  118. package/lib/esm/widget/components/ExtractionStates/StartingExtractionState.d.ts +3 -0
  119. package/lib/esm/widget/components/ExtractionStates/StartingExtractionState.d.ts.map +1 -0
  120. package/lib/esm/widget/components/ExtractionStates/StartingExtractionState.js +11 -0
  121. package/lib/esm/widget/components/ExtractionStates/StartingExtractionState.js.map +1 -0
  122. package/lib/esm/widget/components/ExtractionStates/SucceededExtractionState.d.ts +8 -0
  123. package/lib/esm/widget/components/ExtractionStates/SucceededExtractionState.d.ts.map +1 -0
  124. package/lib/esm/widget/components/ExtractionStates/SucceededExtractionState.js +16 -0
  125. package/lib/esm/widget/components/ExtractionStates/SucceededExtractionState.js.map +1 -0
  126. package/lib/esm/widget/components/ExtractionStatus.d.ts +17 -0
  127. package/lib/esm/widget/components/ExtractionStatus.d.ts.map +1 -0
  128. package/lib/esm/widget/components/ExtractionStatus.js +53 -0
  129. package/lib/esm/widget/components/ExtractionStatus.js.map +1 -0
  130. package/lib/esm/widget/components/ExtractionStatus.scss +27 -0
  131. package/lib/esm/widget/components/HorizontalTile.d.ts +8 -7
  132. package/lib/esm/widget/components/HorizontalTile.d.ts.map +1 -1
  133. package/lib/esm/widget/components/HorizontalTile.js +10 -6
  134. package/lib/esm/widget/components/HorizontalTile.js.map +1 -1
  135. package/lib/esm/widget/components/HorizontalTile.scss +42 -22
  136. package/lib/esm/widget/components/ReportHorizontalTile.d.ts +16 -0
  137. package/lib/esm/widget/components/ReportHorizontalTile.d.ts.map +1 -0
  138. package/lib/esm/widget/components/ReportHorizontalTile.js +65 -0
  139. package/lib/esm/widget/components/ReportHorizontalTile.js.map +1 -0
  140. package/lib/esm/widget/components/ReportMappings.d.ts.map +1 -1
  141. package/lib/esm/widget/components/ReportMappings.js +1 -1
  142. package/lib/esm/widget/components/ReportMappings.js.map +1 -1
  143. package/lib/esm/widget/components/Reports.d.ts.map +1 -1
  144. package/lib/esm/widget/components/Reports.js +36 -28
  145. package/lib/esm/widget/components/Reports.js.map +1 -1
  146. package/lib/esm/widget/components/Reports.scss +7 -3
  147. package/lib/esm/widget/components/SearchBar.js +1 -1
  148. package/lib/esm/widget/components/SearchBar.js.map +1 -1
  149. package/lib/esm/widget/components/SearchBar.scss +6 -0
  150. package/lib/public/locales/en/ReportsConfigWidget.json +2 -1
  151. package/package.json +5 -2
  152. package/public/locales/en/ReportsConfigWidget.json +2 -1
  153. package/reports-config-widget-react.build.error.log +4 -4
  154. package/reports-config-widget-react.build.log +44 -34
  155. package/src/widget/components/BulkExtractor.ts +156 -0
  156. package/src/widget/components/Constants.ts +7 -0
  157. package/src/widget/components/ExtractionStates/FailedExtractionState.tsx +34 -0
  158. package/src/widget/components/ExtractionStates/QueuedExtractionState.tsx +20 -0
  159. package/src/widget/components/ExtractionStates/RunningExtractionState.tsx +18 -0
  160. package/src/widget/components/ExtractionStates/StartingExtractionState.tsx +22 -0
  161. package/src/widget/components/ExtractionStates/SucceededExtractionState.tsx +34 -0
  162. package/src/widget/components/ExtractionStatus.scss +27 -0
  163. package/src/widget/components/ExtractionStatus.tsx +70 -0
  164. package/src/widget/components/HorizontalTile.scss +42 -22
  165. package/src/widget/components/HorizontalTile.tsx +45 -34
  166. package/src/widget/components/ReportHorizontalTile.tsx +131 -0
  167. package/src/widget/components/ReportMappings.tsx +4 -10
  168. package/src/widget/components/Reports.scss +7 -3
  169. package/src/widget/components/Reports.tsx +66 -60
  170. package/src/widget/components/SearchBar.scss +6 -0
  171. package/src/widget/components/SearchBar.tsx +1 -1
@@ -0,0 +1,478 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/widget/components/ReportHorizontalTile.tsx</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">src/widget/components</a> ReportHorizontalTile.tsx</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">70.73% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>29/41</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">56% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>14/25</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">72.72% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>8/11</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">69.23% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>27/39</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></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
198
+ <span class="cline-any cline-neutral">&nbsp;</span>
199
+ <span class="cline-any cline-neutral">&nbsp;</span>
200
+ <span class="cline-any cline-neutral">&nbsp;</span>
201
+ <span class="cline-any cline-yes">4x</span>
202
+ <span class="cline-any cline-yes">4x</span>
203
+ <span class="cline-any cline-neutral">&nbsp;</span>
204
+ <span class="cline-any cline-yes">4x</span>
205
+ <span class="cline-any cline-neutral">&nbsp;</span>
206
+ <span class="cline-any cline-yes">4x</span>
207
+ <span class="cline-any cline-neutral">&nbsp;</span>
208
+ <span class="cline-any cline-yes">4x</span>
209
+ <span class="cline-any cline-yes">4x</span>
210
+ <span class="cline-any cline-neutral">&nbsp;</span>
211
+ <span class="cline-any cline-neutral">&nbsp;</span>
212
+ <span class="cline-any cline-neutral">&nbsp;</span>
213
+ <span class="cline-any cline-neutral">&nbsp;</span>
214
+ <span class="cline-any cline-yes">4x</span>
215
+ <span class="cline-any cline-neutral">&nbsp;</span>
216
+ <span class="cline-any cline-neutral">&nbsp;</span>
217
+ <span class="cline-any cline-neutral">&nbsp;</span>
218
+ <span class="cline-any cline-neutral">&nbsp;</span>
219
+ <span class="cline-any cline-yes">4x</span>
220
+ <span class="cline-any cline-neutral">&nbsp;</span>
221
+ <span class="cline-any cline-neutral">&nbsp;</span>
222
+ <span class="cline-any cline-neutral">&nbsp;</span>
223
+ <span class="cline-any cline-neutral">&nbsp;</span>
224
+ <span class="cline-any cline-neutral">&nbsp;</span>
225
+ <span class="cline-any cline-neutral">&nbsp;</span>
226
+ <span class="cline-any cline-neutral">&nbsp;</span>
227
+ <span class="cline-any cline-neutral">&nbsp;</span>
228
+ <span class="cline-any cline-neutral">&nbsp;</span>
229
+ <span class="cline-any cline-neutral">&nbsp;</span>
230
+ <span class="cline-any cline-neutral">&nbsp;</span>
231
+ <span class="cline-any cline-neutral">&nbsp;</span>
232
+ <span class="cline-any cline-yes">4x</span>
233
+ <span class="cline-any cline-yes">209x</span>
234
+ <span class="cline-any cline-yes">209x</span>
235
+ <span class="cline-any cline-yes">209x</span>
236
+ <span class="cline-any cline-neutral">&nbsp;</span>
237
+ <span class="cline-any cline-yes">209x</span>
238
+ <span class="cline-any cline-yes">29x</span>
239
+ <span class="cline-any cline-no">&nbsp;</span>
240
+ <span class="cline-any cline-no">&nbsp;</span>
241
+ <span class="cline-any cline-no">&nbsp;</span>
242
+ <span class="cline-any cline-neutral">&nbsp;</span>
243
+ <span class="cline-any cline-neutral">&nbsp;</span>
244
+ <span class="cline-any cline-yes">29x</span>
245
+ <span class="cline-any cline-neutral">&nbsp;</span>
246
+ <span class="cline-any cline-yes">29x</span>
247
+ <span class="cline-any cline-yes">29x</span>
248
+ <span class="cline-any cline-neutral">&nbsp;</span>
249
+ <span class="cline-any cline-neutral">&nbsp;</span>
250
+ <span class="cline-any cline-neutral">&nbsp;</span>
251
+ <span class="cline-any cline-yes">209x</span>
252
+ <span class="cline-any cline-yes">29x</span>
253
+ <span class="cline-any cline-no">&nbsp;</span>
254
+ <span class="cline-any cline-no">&nbsp;</span>
255
+ <span class="cline-any cline-no">&nbsp;</span>
256
+ <span class="cline-any cline-no">&nbsp;</span>
257
+ <span class="cline-any cline-no">&nbsp;</span>
258
+ <span class="cline-any cline-no">&nbsp;</span>
259
+ <span class="cline-any cline-no">&nbsp;</span>
260
+ <span class="cline-any cline-neutral">&nbsp;</span>
261
+ <span class="cline-any cline-neutral">&nbsp;</span>
262
+ <span class="cline-any cline-neutral">&nbsp;</span>
263
+ <span class="cline-any cline-neutral">&nbsp;</span>
264
+ <span class="cline-any cline-yes">29x</span>
265
+ <span class="cline-any cline-neutral">&nbsp;</span>
266
+ <span class="cline-any cline-neutral">&nbsp;</span>
267
+ <span class="cline-any cline-yes">209x</span>
268
+ <span class="cline-any cline-yes">4x</span>
269
+ <span class="cline-any cline-yes">4x</span>
270
+ <span class="cline-any cline-neutral">&nbsp;</span>
271
+ <span class="cline-any cline-neutral">&nbsp;</span>
272
+ <span class="cline-any cline-neutral">&nbsp;</span>
273
+ <span class="cline-any cline-yes">209x</span>
274
+ <span class="cline-any cline-neutral">&nbsp;</span>
275
+ <span class="cline-any cline-neutral">&nbsp;</span>
276
+ <span class="cline-any cline-neutral">&nbsp;</span>
277
+ <span class="cline-any cline-neutral">&nbsp;</span>
278
+ <span class="cline-any cline-neutral">&nbsp;</span>
279
+ <span class="cline-any cline-neutral">&nbsp;</span>
280
+ <span class="cline-any cline-neutral">&nbsp;</span>
281
+ <span class="cline-any cline-neutral">&nbsp;</span>
282
+ <span class="cline-any cline-neutral">&nbsp;</span>
283
+ <span class="cline-any cline-neutral">&nbsp;</span>
284
+ <span class="cline-any cline-neutral">&nbsp;</span>
285
+ <span class="cline-any cline-neutral">&nbsp;</span>
286
+ <span class="cline-any cline-neutral">&nbsp;</span>
287
+ <span class="cline-any cline-yes">209x</span>
288
+ <span class="cline-any cline-neutral">&nbsp;</span>
289
+ <span class="cline-any cline-neutral">&nbsp;</span>
290
+ <span class="cline-any cline-neutral">&nbsp;</span>
291
+ <span class="cline-any cline-neutral">&nbsp;</span>
292
+ <span class="cline-any cline-neutral">&nbsp;</span>
293
+ <span class="cline-any cline-neutral">&nbsp;</span>
294
+ <span class="cline-any cline-neutral">&nbsp;</span>
295
+ <span class="cline-any cline-neutral">&nbsp;</span>
296
+ <span class="cline-any cline-neutral">&nbsp;</span>
297
+ <span class="cline-any cline-neutral">&nbsp;</span>
298
+ <span class="cline-any cline-neutral">&nbsp;</span>
299
+ <span class="cline-any cline-neutral">&nbsp;</span>
300
+ <span class="cline-any cline-yes">1x</span>
301
+ <span class="cline-any cline-yes">1x</span>
302
+ <span class="cline-any cline-neutral">&nbsp;</span>
303
+ <span class="cline-any cline-neutral">&nbsp;</span>
304
+ <span class="cline-any cline-neutral">&nbsp;</span>
305
+ <span class="cline-any cline-neutral">&nbsp;</span>
306
+ <span class="cline-any cline-neutral">&nbsp;</span>
307
+ <span class="cline-any cline-neutral">&nbsp;</span>
308
+ <span class="cline-any cline-neutral">&nbsp;</span>
309
+ <span class="cline-any cline-neutral">&nbsp;</span>
310
+ <span class="cline-any cline-neutral">&nbsp;</span>
311
+ <span class="cline-any cline-neutral">&nbsp;</span>
312
+ <span class="cline-any cline-neutral">&nbsp;</span>
313
+ <span class="cline-any cline-neutral">&nbsp;</span>
314
+ <span class="cline-any cline-neutral">&nbsp;</span>
315
+ <span class="cline-any cline-neutral">&nbsp;</span>
316
+ <span class="cline-any cline-neutral">&nbsp;</span>
317
+ <span class="cline-any cline-neutral">&nbsp;</span>
318
+ <span class="cline-any cline-neutral">&nbsp;</span>
319
+ <span class="cline-any cline-neutral">&nbsp;</span>
320
+ <span class="cline-any cline-no">&nbsp;</span>
321
+ <span class="cline-any cline-no">&nbsp;</span>
322
+ <span class="cline-any cline-neutral">&nbsp;</span>
323
+ <span class="cline-any cline-neutral">&nbsp;</span>
324
+ <span class="cline-any cline-neutral">&nbsp;</span>
325
+ <span class="cline-any cline-neutral">&nbsp;</span>
326
+ <span class="cline-any cline-neutral">&nbsp;</span>
327
+ <span class="cline-any cline-neutral">&nbsp;</span>
328
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/*---------------------------------------------------------------------------------------------
329
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
330
+ * See LICENSE.md in the project root for license terms and full copyright notice.
331
+ *--------------------------------------------------------------------------------------------*/
332
+ import { useEffect, useRef, useState } from "react";
333
+ import React from "react";
334
+ import type BulkExtractor from "./BulkExtractor";
335
+ import { ExtractionStates, ExtractionStatus } from "./ExtractionStatus";
336
+ import type { BeEvent } from "@itwin/core-bentley";
337
+ import { STATUS_CHECK_INTERVAL } from "./Constants";
338
+ import type { Report } from "@itwin/insights-client";
339
+ import { ReportsConfigWidget } from "../../ReportsConfigWidget";
340
+ import {
341
+ DropdownMenu,
342
+ IconButton,
343
+ MenuItem,
344
+ } from "@itwin/itwinui-react";
345
+ import {
346
+ SvgDelete,
347
+ SvgEdit,
348
+ SvgMore,
349
+ } from "@itwin/itwinui-icons-react";
350
+ import { HorizontalTile } from "./HorizontalTile";
351
+ import type { HorizontalTileProps } from "./HorizontalTile";
352
+ &nbsp;
353
+ export interface ReportHorizontalTileProps extends Pick&lt;HorizontalTileProps, "onClickTitle"&gt; {
354
+ selected: boolean;
355
+ onSelectionChange: (reportId: string, controlPressed: boolean) =&gt; void;
356
+ bulkExtractor: BulkExtractor;
357
+ jobStartEvent: BeEvent&lt;(reportId: string) =&gt; void&gt;;
358
+ report: Report;
359
+ onClickDelete: () =&gt; void;
360
+ onClickModify: () =&gt; void;
361
+ }
362
+ &nbsp;
363
+ export const ReportHorizontalTile = (props: ReportHorizontalTileProps) =&gt; {
364
+ const [jobStarted, setJobStarted] = useState&lt;boolean&gt;(false);
365
+ const [extractionState, setExtractionState] = useState&lt;ExtractionStates&gt;(ExtractionStates.None);
366
+ const interval = useRef&lt;number&gt;();
367
+ &nbsp;
368
+ useEffect(() =&gt; {
369
+ const listener = <span class="fstat-no" title="function not covered" >(s</span>tartedReportId: string) =&gt; {
370
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (startedReportId === props.report.id) {</span>
371
+ <span class="cstat-no" title="statement not covered" > setExtractionState(ExtractionStates.Starting);</span>
372
+ <span class="cstat-no" title="statement not covered" > setJobStarted(true);</span>
373
+ }
374
+ };
375
+ props.jobStartEvent.addListener(listener);
376
+ &nbsp;
377
+ return () =&gt; {
378
+ props.jobStartEvent.removeListener(listener);
379
+ };
380
+ }, [props.jobStartEvent, props.report.id]);
381
+ &nbsp;
382
+ useEffect(() =&gt; {
383
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (jobStarted) {
384
+ <span class="cstat-no" title="statement not covered" > window.clearInterval(interval.current);</span>
385
+ <span class="cstat-no" title="statement not covered" > interval.current = window.setInterval(<span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
386
+ const state = <span class="cstat-no" title="statement not covered" >props.bulkExtractor.getState(props.report.id);</span>
387
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (state) {</span>
388
+ <span class="cstat-no" title="statement not covered" > setExtractionState(state);</span>
389
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (state === ExtractionStates.Failed || state === ExtractionStates.Succeeded) {</span>
390
+ <span class="cstat-no" title="statement not covered" > setJobStarted(false);</span>
391
+ }
392
+ }
393
+ }, STATUS_CHECK_INTERVAL);
394
+ }
395
+ return () =&gt; window.clearInterval(interval.current);
396
+ }, [props.report.id, props.bulkExtractor, jobStarted]);
397
+ &nbsp;
398
+ const onClickTile = (e: React.MouseEvent) =&gt; {
399
+ if (e<span class="branch-0 cbranch-no" title="branch not covered" >?.c</span>urrentTarget.className<span class="branch-0 cbranch-no" title="branch not covered" >?.t</span>oString().split(" ").includes("rcw-horizontal-tile-container")) {
400
+ props.onSelectionChange(props.report.id, e.ctrlKey);
401
+ }
402
+ };
403
+ &nbsp;
404
+ return (
405
+ &lt;HorizontalTile
406
+ title={props.report.displayName}
407
+ subText={props.report.description ?? <span class="branch-1 cbranch-no" title="branch not covered" >""}</span>
408
+ subtextToolTip={props.report.description ?? <span class="branch-1 cbranch-no" title="branch not covered" >""}</span>
409
+ titleTooltip={props.report.displayName}
410
+ onClick={onClickTile}
411
+ onClickTitle={props.onClickTitle}
412
+ selected={props.selected}
413
+ actionGroup={extractionState === ExtractionStates.None ? (
414
+ &lt;div
415
+ className="rcw-action-button"
416
+ data-testid="tile-action-button"&gt;
417
+ &lt;DropdownMenu
418
+ menuItems={(close: () =&gt; void) =&gt; [
419
+ &lt;MenuItem
420
+ key={0}
421
+ onClick={props.onClickModify}
422
+ icon={&lt;SvgEdit /&gt;}
423
+ &gt;
424
+ {ReportsConfigWidget.localization.getLocalizedString(
425
+ "ReportsConfigWidget:Modify"
426
+ )}
427
+ &lt;/MenuItem&gt;,
428
+ &lt;MenuItem
429
+ key={1}
430
+ onClick={() =&gt; {
431
+ props.onClickDelete();
432
+ close();
433
+ }}
434
+ icon={&lt;SvgDelete /&gt;}
435
+ &gt;
436
+ {ReportsConfigWidget.localization.getLocalizedString(
437
+ "ReportsConfigWidget:Remove"
438
+ )}
439
+ &lt;/MenuItem&gt;,
440
+ ]}
441
+ &gt;
442
+ &lt;IconButton styleType="borderless"&gt;
443
+ &lt;SvgMore /&gt;
444
+ &lt;/IconButton&gt;
445
+ &lt;/DropdownMenu&gt;
446
+ &lt;/div&gt;
447
+ ) : (
448
+ <span class="branch-1 cbranch-no" title="branch not covered" > &lt;ExtractionStatus</span>
449
+ state={extractionState}
450
+ clearExtractionState={<span class="fstat-no" title="function not covered" >() =</span>&gt; {
451
+ <span class="cstat-no" title="statement not covered" > props.bulkExtractor.clearJob(props.report.id);</span>
452
+ <span class="cstat-no" title="statement not covered" > setExtractionState(ExtractionStates.None);</span>
453
+ }}
454
+ &gt;&lt;/ExtractionStatus&gt;
455
+ )}
456
+ &gt;&lt;/HorizontalTile&gt;
457
+ );
458
+ };
459
+ &nbsp;</pre></td></tr></table></pre>
460
+
461
+ <div class='push'></div><!-- for sticky footer -->
462
+ </div><!-- /wrapper -->
463
+ <div class='footer quiet pad2 space-top1 center small'>
464
+ Code coverage generated by
465
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
466
+ at Mon Oct 31 2022 19:03:26 GMT+0000 (Coordinated Universal Time)
467
+ </div>
468
+ <script src="../../../prettify.js"></script>
469
+ <script>
470
+ window.onload = function () {
471
+ prettyPrint();
472
+ };
473
+ </script>
474
+ <script src="../../../sorter.js"></script>
475
+ <script src="../../../block-navigation.js"></script>
476
+ </body>
477
+ </html>
478
+
@@ -410,13 +410,7 @@
410
410
  <a name='L345'></a><a href='#L345'>345</a>
411
411
  <a name='L346'></a><a href='#L346'>346</a>
412
412
  <a name='L347'></a><a href='#L347'>347</a>
413
- <a name='L348'></a><a href='#L348'>348</a>
414
- <a name='L349'></a><a href='#L349'>349</a>
415
- <a name='L350'></a><a href='#L350'>350</a>
416
- <a name='L351'></a><a href='#L351'>351</a>
417
- <a name='L352'></a><a href='#L352'>352</a>
418
- <a name='L353'></a><a href='#L353'>353</a>
419
- <a name='L354'></a><a href='#L354'>354</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
413
+ <a name='L348'></a><a href='#L348'>348</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
420
414
  <span class="cline-any cline-neutral">&nbsp;</span>
421
415
  <span class="cline-any cline-neutral">&nbsp;</span>
422
416
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -482,8 +476,6 @@
482
476
  <span class="cline-any cline-neutral">&nbsp;</span>
483
477
  <span class="cline-any cline-neutral">&nbsp;</span>
484
478
  <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-neutral">&nbsp;</span>
487
479
  <span class="cline-any cline-yes">8x</span>
488
480
  <span class="cline-any cline-yes">8x</span>
489
481
  <span class="cline-any cline-yes">8x</span>
@@ -553,8 +545,6 @@
553
545
  <span class="cline-any cline-neutral">&nbsp;</span>
554
546
  <span class="cline-any cline-yes">92x</span>
555
547
  <span class="cline-any cline-yes">92x</span>
556
- <span class="cline-any cline-neutral">&nbsp;</span>
557
- <span class="cline-any cline-neutral">&nbsp;</span>
558
548
  <span class="cline-any cline-yes">92x</span>
559
549
  <span class="cline-any cline-yes">92x</span>
560
550
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -565,8 +555,6 @@
565
555
  <span class="cline-any cline-yes">92x</span>
566
556
  <span class="cline-any cline-yes">92x</span>
567
557
  <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
558
  <span class="cline-any cline-yes">92x</span>
571
559
  <span class="cline-any cline-yes">6x</span>
572
560
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -830,9 +818,7 @@ enum ReportMappingsView {
830
818
  }
831
819
  &nbsp;
832
820
  const fetchReportMappings = async (
833
- setReportMappings: React.Dispatch&lt;
834
- React.SetStateAction&lt;ReportMappingAndMapping[]&gt;
835
- &gt;,
821
+ setReportMappings: (mappings: ReportMappingAndMapping[]) =&gt; void,
836
822
  reportId: string,
837
823
  setIsLoading: React.Dispatch&lt;React.SetStateAction&lt;boolean&gt;&gt;,
838
824
  apiContext: ReportsApiConfig
@@ -905,9 +891,7 @@ export const ReportMappings = ({ report, goBack }: ReportMappingsProps) =&gt; {
905
891
  const apiConfig = useReportsApiConfig();
906
892
  const [reportMappingsView, setReportMappingsView] =
907
893
  useState&lt;ReportMappingsView&gt;(ReportMappingsView.REPORTMAPPINGS);
908
- const [selectedReportMapping, setSelectedReportMapping] = useState&lt;
909
- ReportMappingAndMapping | undefined
910
- &gt;(undefined);
894
+ const [selectedReportMapping, setSelectedReportMapping] = useState&lt;ReportMappingAndMapping | undefined&gt;(undefined);
911
895
  const [showDeleteModal, setShowDeleteModal] = useState&lt;boolean&gt;(false);
912
896
  const [isLoading, setIsLoading] = useState&lt;boolean&gt;(true);
913
897
  &nbsp;
@@ -916,9 +900,7 @@ export const ReportMappings = ({ report, goBack }: ReportMappingsProps) =&gt; {
916
900
  );
917
901
  const [runningIModelId, setRunningIModelId] = useState&lt;string&gt;("");
918
902
  const [searchValue, setSearchValue] = useState&lt;string&gt;("");
919
- const [reportMappings, setReportMappings] = useState&lt;
920
- ReportMappingAndMapping[]
921
- &gt;([]);
903
+ const [reportMappings, setReportMappings] = useState&lt;ReportMappingAndMapping[]&gt;([]);
922
904
  &nbsp;
923
905
  useEffect(() =&gt; {
924
906
  void fetchReportMappings(
@@ -1055,7 +1037,7 @@ export const ReportMappings = ({ report, goBack }: ReportMappingsProps) =&gt; {
1055
1037
  title={mapping.mappingName}
1056
1038
  subText={mapping.iModelName}
1057
1039
  titleTooltip={mapping.mappingDescription}
1058
- button={
1040
+ actionGroup={
1059
1041
  &lt;ExtractionStatus
1060
1042
  state={
1061
1043
  mapping.imodelId === runningIModelId
@@ -1129,7 +1111,7 @@ export const ReportMappings = ({ report, goBack }: ReportMappingsProps) =&gt; {
1129
1111
  <div class='footer quiet pad2 space-top1 center small'>
1130
1112
  Code coverage generated by
1131
1113
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1132
- at Thu Sep 29 2022 19:04:40 GMT+0000 (Coordinated Universal Time)
1114
+ at Mon Oct 31 2022 19:03:26 GMT+0000 (Coordinated Universal Time)
1133
1115
  </div>
1134
1116
  <script src="../../../prettify.js"></script>
1135
1117
  <script>