@zajno/common 1.5.5 → 1.5.8

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 (169) hide show
  1. package/coverage/clover.xml +427 -345
  2. package/coverage/coverage-final.json +38 -37
  3. package/coverage/lcov-report/async/index.html +12 -7
  4. package/coverage/lcov-report/async/timeout.ts.html +24 -19
  5. package/coverage/lcov-report/block-navigation.js +8 -0
  6. package/coverage/lcov-report/disposer.ts.html +376 -0
  7. package/coverage/lcov-report/enumHelper.ts.html +454 -0
  8. package/coverage/lcov-report/favicon.png +0 -0
  9. package/coverage/lcov-report/index.html +54 -34
  10. package/coverage/lcov-report/logger/index.html +116 -0
  11. package/coverage/lcov-report/logger/index.ts.html +298 -0
  12. package/coverage/lcov-report/parallel.ts.html +550 -0
  13. package/coverage/lcov-report/queue/index.html +116 -0
  14. package/coverage/lcov-report/queue/parallel.ts.html +499 -0
  15. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  16. package/coverage/lcov-report/sorter.js +26 -0
  17. package/coverage/lcov-report/src/__tests__/helpers/index.html +8 -3
  18. package/coverage/lcov-report/src/__tests__/helpers/main.ts.html +8 -3
  19. package/coverage/lcov-report/src/async/arrays.ts.html +15 -10
  20. package/coverage/lcov-report/src/async/index.html +13 -8
  21. package/coverage/lcov-report/src/async/timeout.ts.html +24 -19
  22. package/coverage/lcov-report/src/cache.ts.html +15 -10
  23. package/coverage/lcov-report/src/dates/calc.ts.html +10 -5
  24. package/coverage/lcov-report/src/dates/convert.ts.html +9 -4
  25. package/coverage/lcov-report/src/dates/datex.ts.html +8 -3
  26. package/coverage/lcov-report/src/dates/format.ts.html +10 -5
  27. package/coverage/lcov-report/src/dates/index.html +19 -14
  28. package/coverage/lcov-report/src/dates/index.ts.html +8 -3
  29. package/coverage/lcov-report/src/dates/parse.ts.html +9 -4
  30. package/coverage/lcov-report/src/dates/period.ts.html +8 -3
  31. package/coverage/lcov-report/src/dates/shift.ts.html +9 -4
  32. package/coverage/lcov-report/src/dates/types.ts.html +8 -3
  33. package/coverage/lcov-report/src/dates/yearDate.ts.html +10 -5
  34. package/coverage/lcov-report/src/disposer.ts.html +65 -21
  35. package/coverage/lcov-report/src/enumHelper.ts.html +12 -7
  36. package/coverage/lcov-report/src/event.ts.html +50 -21
  37. package/coverage/lcov-report/src/fields/index.html +12 -7
  38. package/coverage/lcov-report/src/fields/update.ts.html +12 -7
  39. package/coverage/lcov-report/src/functions.ts.html +10 -5
  40. package/coverage/lcov-report/src/index.html +52 -47
  41. package/coverage/lcov-report/src/lazy.light.ts.html +9 -4
  42. package/coverage/lcov-report/src/logger/batch.ts.html +9 -4
  43. package/coverage/lcov-report/src/logger/console.ts.html +16 -11
  44. package/coverage/lcov-report/src/logger/index.html +13 -8
  45. package/coverage/lcov-report/src/logger/index.ts.html +38 -33
  46. package/coverage/lcov-report/src/logger/named.ts.html +26 -21
  47. package/coverage/lcov-report/src/logger/proxy.ts.html +20 -15
  48. package/coverage/lcov-report/src/math/arrays.ts.html +33 -28
  49. package/coverage/lcov-report/src/math/calc.ts.html +18 -13
  50. package/coverage/lcov-report/src/math/distribution.ts.html +10 -5
  51. package/coverage/lcov-report/src/math/index.html +16 -11
  52. package/coverage/lcov-report/src/math/index.ts.html +14 -9
  53. package/coverage/lcov-report/src/observersMap.ts.html +12 -7
  54. package/coverage/lcov-report/src/observingCache.ts.html +12 -7
  55. package/coverage/lcov-report/src/queue/index.html +116 -0
  56. package/coverage/lcov-report/src/queue/parallel.ts.html +499 -0
  57. package/coverage/lcov-report/src/tempoCache.ts.html +9 -4
  58. package/coverage/lcov-report/src/transitionObserver.ts.html +14 -9
  59. package/coverage/lcov-report/src/types.ts.html +13 -8
  60. package/coverage/lcov-report/src/validation/ValidationErrors.ts.html +8 -3
  61. package/coverage/lcov-report/src/validation/creditCard.ts.html +8 -3
  62. package/coverage/lcov-report/src/validation/helpers.ts.html +13 -8
  63. package/coverage/lcov-report/src/validation/index.html +11 -6
  64. package/coverage/lcov-report/src/validation/index.ts.html +8 -3
  65. package/coverage/lcov-report/src/validation/types.ts.html +8 -3
  66. package/coverage/lcov-report/src/validation/validators.ts.html +10 -5
  67. package/coverage/lcov-report/src/validation/wrappers.ts.html +8 -3
  68. package/coverage/lcov-report/src/viewModels/CommonModel.ts.html +10 -5
  69. package/coverage/lcov-report/src/viewModels/FlagModel.ts.html +8 -3
  70. package/coverage/lcov-report/src/viewModels/LoadingModel.ts.html +10 -5
  71. package/coverage/lcov-report/src/viewModels/MultiSelectModel.ts.html +13 -8
  72. package/coverage/lcov-report/src/viewModels/NumberModel.ts.html +8 -3
  73. package/coverage/lcov-report/src/viewModels/SelectModel.ts.html +10 -5
  74. package/coverage/lcov-report/src/viewModels/TextModel.ts.html +13 -8
  75. package/coverage/lcov-report/src/viewModels/Validatable.ts.html +12 -7
  76. package/coverage/lcov-report/src/viewModels/index.html +22 -17
  77. package/coverage/lcov-report/src/viewModels/wrappers.ts.html +8 -3
  78. package/coverage/lcov.info +491 -462
  79. package/jest.config.js +2 -1
  80. package/lib/async/arrays.extend.js +4 -4
  81. package/lib/async/arrays.extend.js.map +1 -1
  82. package/lib/cache.js +6 -6
  83. package/lib/cache.js.map +1 -1
  84. package/lib/dates/calc.js +7 -7
  85. package/lib/dates/calc.js.map +1 -1
  86. package/lib/dates/convert.js +11 -11
  87. package/lib/dates/convert.js.map +1 -1
  88. package/lib/dates/format.js +6 -6
  89. package/lib/dates/format.js.map +1 -1
  90. package/lib/dates/period.js +2 -2
  91. package/lib/dates/period.js.map +1 -1
  92. package/lib/dates/shift.js +5 -5
  93. package/lib/dates/shift.js.map +1 -1
  94. package/lib/dates/yearDate.js +2 -2
  95. package/lib/dates/yearDate.js.map +1 -1
  96. package/lib/disposer.d.ts +4 -2
  97. package/lib/disposer.d.ts.map +1 -1
  98. package/lib/disposer.js +10 -5
  99. package/lib/disposer.js.map +1 -1
  100. package/lib/enumHelper.d.ts +2 -2
  101. package/lib/enumHelper.d.ts.map +1 -1
  102. package/lib/enumHelper.js.map +1 -1
  103. package/lib/event.d.ts.map +1 -1
  104. package/lib/event.js +8 -2
  105. package/lib/event.js.map +1 -1
  106. package/lib/fields/update.js +2 -2
  107. package/lib/fields/update.js.map +1 -1
  108. package/lib/lazy.js +2 -2
  109. package/lib/lazy.js.map +1 -1
  110. package/lib/logger/file.js.map +1 -1
  111. package/lib/logger/index.d.ts +1 -1
  112. package/lib/logger/index.d.ts.map +1 -1
  113. package/lib/logger/index.js +1 -1
  114. package/lib/logger/index.js.map +1 -1
  115. package/lib/math/arrays.js +2 -2
  116. package/lib/math/arrays.js.map +1 -1
  117. package/lib/models/EntityWithStatus.js.map +1 -1
  118. package/lib/observersMap.js +2 -2
  119. package/lib/observersMap.js.map +1 -1
  120. package/lib/observingCache.js +1 -1
  121. package/lib/observingCache.js.map +1 -1
  122. package/lib/pool.js +1 -1
  123. package/lib/pool.js.map +1 -1
  124. package/lib/queue/parallel.d.ts +22 -0
  125. package/lib/queue/parallel.d.ts.map +1 -0
  126. package/lib/queue/parallel.js +117 -0
  127. package/lib/queue/parallel.js.map +1 -0
  128. package/lib/services/localization/LocalizationManager.js +1 -1
  129. package/lib/services/localization/LocalizationManager.js.map +1 -1
  130. package/lib/services/storage/web/localStorage.js +1 -1
  131. package/lib/services/storage/web/localStorage.js.map +1 -1
  132. package/lib/services/storage/web/sessionStorage.js +1 -1
  133. package/lib/services/storage/web/sessionStorage.js.map +1 -1
  134. package/lib/transitionObserver.js +3 -3
  135. package/lib/transitionObserver.js.map +1 -1
  136. package/lib/validation/validators.js +1 -1
  137. package/lib/validation/validators.js.map +1 -1
  138. package/lib/validation/wrappers.js +1 -1
  139. package/lib/validation/wrappers.js.map +1 -1
  140. package/lib/viewModels/CommonModel.js +1 -1
  141. package/lib/viewModels/CommonModel.js.map +1 -1
  142. package/lib/viewModels/FlagModel.js +1 -1
  143. package/lib/viewModels/FlagModel.js.map +1 -1
  144. package/lib/viewModels/MultiSelectModel.js +5 -5
  145. package/lib/viewModels/MultiSelectModel.js.map +1 -1
  146. package/lib/viewModels/NumberModel.js +1 -1
  147. package/lib/viewModels/NumberModel.js.map +1 -1
  148. package/lib/viewModels/PromptModal.js +1 -1
  149. package/lib/viewModels/PromptModal.js.map +1 -1
  150. package/lib/viewModels/SelectModel.js +4 -4
  151. package/lib/viewModels/SelectModel.js.map +1 -1
  152. package/lib/viewModels/TextModel.js +3 -3
  153. package/lib/viewModels/TextModel.js.map +1 -1
  154. package/lib/viewModels/Validatable.js +3 -3
  155. package/lib/viewModels/Validatable.js.map +1 -1
  156. package/lib/viewModels/ValueModel.js +1 -1
  157. package/lib/viewModels/ValueModel.js.map +1 -1
  158. package/package.json +11 -11
  159. package/src/.DS_Store +0 -0
  160. package/src/disposer.ts +19 -6
  161. package/src/enumHelper.ts +2 -2
  162. package/src/event.ts +8 -0
  163. package/src/queue/__tests__/parallel.test.ts +58 -0
  164. package/src/queue/parallel.ts +138 -0
  165. package/src/services/storage/web/localStorage.ts +1 -1
  166. package/src/services/storage/web/sessionStorage.ts +1 -1
  167. package/src/validation/__tests__/validator.test.ts +12 -0
  168. package/src/validation/validators.ts +1 -1
  169. package/yarn.lock +1074 -1441
@@ -24,6 +24,31 @@ var addSorting = (function() {
24
24
  return getTableHeader().querySelectorAll('th')[n];
25
25
  }
26
26
 
27
+ function onFilterInput() {
28
+ const searchValue = document.getElementById('fileSearch').value;
29
+ const rows = document.getElementsByTagName('tbody')[0].children;
30
+ for (let i = 0; i < rows.length; i++) {
31
+ const row = rows[i];
32
+ if (
33
+ row.textContent
34
+ .toLowerCase()
35
+ .includes(searchValue.toLowerCase())
36
+ ) {
37
+ row.style.display = '';
38
+ } else {
39
+ row.style.display = 'none';
40
+ }
41
+ }
42
+ }
43
+
44
+ // loads the search box
45
+ function addSearchBox() {
46
+ var template = document.getElementById('filterTemplate');
47
+ var templateClone = template.content.cloneNode(true);
48
+ templateClone.getElementById('fileSearch').oninput = onFilterInput;
49
+ template.parentElement.appendChild(templateClone);
50
+ }
51
+
27
52
  // loads all columns
28
53
  function loadColumns() {
29
54
  var colNodes = getTableHeader().querySelectorAll('th'),
@@ -162,6 +187,7 @@ var addSorting = (function() {
162
187
  }
163
188
  cols = loadColumns();
164
189
  loadData();
190
+ addSearchBox();
165
191
  addSortIndicators();
166
192
  enableUI();
167
193
  };
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <div class="pad1">
@@ -94,10 +100,9 @@
94
100
  </div><!-- /wrapper -->
95
101
  <div class='footer quiet pad2 space-top1 center small'>
96
102
  Code coverage generated by
97
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
98
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
103
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
+ at 2022-08-16T15:25:20.438Z
99
105
  </div>
100
- </div>
101
106
  <script src="../../../prettify.js"></script>
102
107
  <script>
103
108
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -99,10 +105,9 @@ export const toArbitrary = (fakerGen) =&gt; {
99
105
  </div><!-- /wrapper -->
100
106
  <div class='footer quiet pad2 space-top1 center small'>
101
107
  Code coverage generated by
102
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
103
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
108
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
109
+ at 2022-08-16T15:25:20.438Z
104
110
  </div>
105
- </div>
106
111
  <script src="../../../prettify.js"></script>
107
112
  <script>
108
113
  window.onload = function () {
@@ -32,7 +32,7 @@
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/4</span>
35
+ <span class='fraction'>0/2</span>
36
36
  </div>
37
37
 
38
38
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line low'></div>
59
65
  <pre><table class="coverage">
@@ -97,7 +103,7 @@
97
103
  <a name='L38'></a><a href='#L38'>38</a>
98
104
  <a name='L39'></a><a href='#L39'>39</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
99
105
  <span class="cline-any cline-neutral">&nbsp;</span>
100
- <span class="cline-any cline-yes">4x</span>
106
+ <span class="cline-any cline-yes">5x</span>
101
107
  <span class="cline-any cline-no">&nbsp;</span>
102
108
  <span class="cline-any cline-no">&nbsp;</span>
103
109
  <span class="cline-any cline-no">&nbsp;</span>
@@ -108,7 +114,7 @@
108
114
  <span class="cline-any cline-no">&nbsp;</span>
109
115
  <span class="cline-any cline-neutral">&nbsp;</span>
110
116
  <span class="cline-any cline-neutral">&nbsp;</span>
111
- <span class="cline-any cline-yes">4x</span>
117
+ <span class="cline-any cline-yes">5x</span>
112
118
  <span class="cline-any cline-no">&nbsp;</span>
113
119
  <span class="cline-any cline-no">&nbsp;</span>
114
120
  <span class="cline-any cline-no">&nbsp;</span>
@@ -119,13 +125,13 @@
119
125
  <span class="cline-any cline-no">&nbsp;</span>
120
126
  <span class="cline-any cline-neutral">&nbsp;</span>
121
127
  <span class="cline-any cline-neutral">&nbsp;</span>
122
- <span class="cline-any cline-yes">4x</span>
128
+ <span class="cline-any cline-yes">5x</span>
123
129
  <span class="cline-any cline-no">&nbsp;</span>
124
130
  <span class="cline-any cline-no">&nbsp;</span>
125
131
  <span class="cline-any cline-neutral">&nbsp;</span>
126
132
  <span class="cline-any cline-neutral">&nbsp;</span>
127
133
  <span class="cline-any cline-neutral">&nbsp;</span>
128
- <span class="cline-any cline-yes">4x</span>
134
+ <span class="cline-any cline-yes">5x</span>
129
135
  <span class="cline-any cline-no">&nbsp;</span>
130
136
  <span class="cline-any cline-no">&nbsp;</span>
131
137
  <span class="cline-any cline-no">&nbsp;</span>
@@ -138,7 +144,7 @@
138
144
  export async function <span class="fstat-no" title="function not covered" >someAsync&lt;</span>T&gt;(target: ReadonlyArray&lt;T&gt;, condition: (v: T, index?: number, arr?: ReadonlyArray&lt;T&gt;) =&gt; Promise&lt;boolean&gt;): Promise&lt;boolean&gt; {
139
145
  <span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0;</span> i &lt; target.length; ++i) {</span>
140
146
  const ok = <span class="cstat-no" title="statement not covered" >await condition(target[i], i, target);</span>
141
- <span class="cstat-no" title="statement not covered" > if (ok) {</span>
147
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (ok) {</span>
142
148
  <span class="cstat-no" title="statement not covered" > return true;</span>
143
149
  }
144
150
  }
@@ -149,7 +155,7 @@ export async function <span class="fstat-no" title="function not covered" >someA
149
155
  export async function <span class="fstat-no" title="function not covered" >everyAsync&lt;</span>T&gt;(target: ReadonlyArray&lt;T&gt;, condition: (v: T, index?: number, arr?: ReadonlyArray&lt;T&gt;) =&gt; Promise&lt;boolean&gt;): Promise&lt;boolean&gt; {
150
156
  <span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0;</span> i &lt; target.length; ++i) {</span>
151
157
  const ok = <span class="cstat-no" title="statement not covered" >await condition(target[i], i, target);</span>
152
- <span class="cstat-no" title="statement not covered" > if (!ok) {</span>
158
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!ok) {</span>
153
159
  <span class="cstat-no" title="statement not covered" > return false;</span>
154
160
  }
155
161
  }
@@ -177,10 +183,9 @@ export async function <span class="fstat-no" title="function not covered" >mapAs
177
183
  </div><!-- /wrapper -->
178
184
  <div class='footer quiet pad2 space-top1 center small'>
179
185
  Code coverage generated by
180
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
181
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
186
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
187
+ at 2022-08-16T15:25:20.438Z
182
188
  </div>
183
- </div>
184
189
  <script src="../../prettify.js"></script>
185
190
  <script>
186
191
  window.onload = function () {
@@ -30,9 +30,9 @@
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">17.65% </span>
33
+ <span class="strong">18.18% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>3/17</span>
35
+ <span class='fraction'>2/11</span>
36
36
  </div>
37
37
 
38
38
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line low'></div>
59
65
  <div class="pad1">
@@ -80,7 +86,7 @@
80
86
  <td data-value="16" class="pct low">16%</td>
81
87
  <td data-value="25" class="abs low">4/25</td>
82
88
  <td data-value="0" class="pct low">0%</td>
83
- <td data-value="4" class="abs low">0/4</td>
89
+ <td data-value="2" class="abs low">0/2</td>
84
90
  <td data-value="0" class="pct low">0%</td>
85
91
  <td data-value="4" class="abs low">0/4</td>
86
92
  <td data-value="19.05" class="pct low">19.05%</td>
@@ -94,8 +100,8 @@
94
100
  </td>
95
101
  <td data-value="42.31" class="pct low">42.31%</td>
96
102
  <td data-value="26" class="abs low">11/26</td>
97
- <td data-value="23.08" class="pct low">23.08%</td>
98
- <td data-value="13" class="abs low">3/13</td>
103
+ <td data-value="22.22" class="pct low">22.22%</td>
104
+ <td data-value="9" class="abs low">2/9</td>
99
105
  <td data-value="42.86" class="pct low">42.86%</td>
100
106
  <td data-value="7" class="abs low">3/7</td>
101
107
  <td data-value="42.31" class="pct low">42.31%</td>
@@ -109,10 +115,9 @@
109
115
  </div><!-- /wrapper -->
110
116
  <div class='footer quiet pad2 space-top1 center small'>
111
117
  Code coverage generated by
112
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
113
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
118
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
+ at 2022-08-16T15:25:20.438Z
114
120
  </div>
115
- </div>
116
121
  <script src="../../prettify.js"></script>
117
122
  <script>
118
123
  window.onload = function () {
@@ -30,9 +30,9 @@
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">23.08% </span>
33
+ <span class="strong">22.22% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>3/13</span>
35
+ <span class='fraction'>2/9</span>
36
36
  </div>
37
37
 
38
38
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line low'></div>
59
65
  <pre><table class="coverage">
@@ -108,21 +114,21 @@
108
114
  <a name='L49'></a><a href='#L49'>49</a>
109
115
  <a name='L50'></a><a href='#L50'>50</a>
110
116
  <a name='L51'></a><a href='#L51'>51</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
111
- <span class="cline-any cline-yes">3x</span>
112
- <span class="cline-any cline-yes">10x</span>
117
+ <span class="cline-any cline-yes">4x</span>
118
+ <span class="cline-any cline-yes">16x</span>
113
119
  <span class="cline-any cline-neutral">&nbsp;</span>
114
120
  <span class="cline-any cline-neutral">&nbsp;</span>
115
- <span class="cline-any cline-yes">10x</span>
116
- <span class="cline-any cline-yes">10x</span>
117
- <span class="cline-any cline-yes">10x</span>
118
- <span class="cline-any cline-yes">10x</span>
119
- <span class="cline-any cline-yes">10x</span>
120
- <span class="cline-any cline-yes">10x</span>
121
+ <span class="cline-any cline-yes">16x</span>
122
+ <span class="cline-any cline-yes">16x</span>
123
+ <span class="cline-any cline-yes">16x</span>
124
+ <span class="cline-any cline-yes">16x</span>
125
+ <span class="cline-any cline-yes">16x</span>
126
+ <span class="cline-any cline-yes">16x</span>
121
127
  <span class="cline-any cline-neutral">&nbsp;</span>
122
128
  <span class="cline-any cline-neutral">&nbsp;</span>
123
129
  <span class="cline-any cline-neutral">&nbsp;</span>
124
130
  <span class="cline-any cline-neutral">&nbsp;</span>
125
- <span class="cline-any cline-yes">10x</span>
131
+ <span class="cline-any cline-yes">16x</span>
126
132
  <span class="cline-any cline-no">&nbsp;</span>
127
133
  <span class="cline-any cline-no">&nbsp;</span>
128
134
  <span class="cline-any cline-no">&nbsp;</span>
@@ -133,12 +139,12 @@
133
139
  <span class="cline-any cline-no">&nbsp;</span>
134
140
  <span class="cline-any cline-neutral">&nbsp;</span>
135
141
  <span class="cline-any cline-neutral">&nbsp;</span>
136
- <span class="cline-any cline-yes">10x</span>
142
+ <span class="cline-any cline-yes">16x</span>
137
143
  <span class="cline-any cline-neutral">&nbsp;</span>
138
144
  <span class="cline-any cline-neutral">&nbsp;</span>
139
145
  <span class="cline-any cline-neutral">&nbsp;</span>
140
146
  <span class="cline-any cline-neutral">&nbsp;</span>
141
- <span class="cline-any cline-yes">3x</span>
147
+ <span class="cline-any cline-yes">4x</span>
142
148
  <span class="cline-any cline-no">&nbsp;</span>
143
149
  <span class="cline-any cline-no">&nbsp;</span>
144
150
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -166,7 +172,7 @@ export function setTimeoutAsync(ms: number, useCancel: (cb: () =&gt; void) =&gt;
166
172
  _reject = reject;
167
173
  token = setTimeout(() =&gt; {
168
174
  _reject = null;
169
- <span class="missing-if-branch" title="else path not taken" >E</span>if (!canceled) {
175
+ if (!canceled) {
170
176
  resolve();
171
177
  }
172
178
  }, ms);
@@ -176,7 +182,7 @@ export function setTimeoutAsync(ms: number, useCancel: (cb: () =&gt; void) =&gt;
176
182
  const cancelCb = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
177
183
  <span class="cstat-no" title="statement not covered" > clearTimeout(token);</span>
178
184
  <span class="cstat-no" title="statement not covered" > canceled = true;</span>
179
- <span class="cstat-no" title="statement not covered" > if (_reject) {</span>
185
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (_reject) {</span>
180
186
  <span class="cstat-no" title="statement not covered" > _reject();</span>
181
187
  }
182
188
  };
@@ -189,7 +195,7 @@ export function setTimeoutAsync(ms: number, useCancel: (cb: () =&gt; void) =&gt;
189
195
  /* global requestAnimationFrame */
190
196
  &nbsp;
191
197
  export function <span class="fstat-no" title="function not covered" >setTimeoutFramesAsync(</span>frames: number) {
192
- <span class="cstat-no" title="statement not covered" > if (typeof requestAnimationFrame === 'undefined') {</span>
198
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (typeof requestAnimationFrame === 'undefined') {</span>
193
199
  <span class="cstat-no" title="statement not covered" > throw new Error('setTimeoutFramesAsync is not supported because "requestAnimationFrame" is not defined.');</span>
194
200
  }
195
201
  &nbsp;
@@ -213,10 +219,9 @@ export function <span class="fstat-no" title="function not covered" >setTimeoutF
213
219
  </div><!-- /wrapper -->
214
220
  <div class='footer quiet pad2 space-top1 center small'>
215
221
  Code coverage generated by
216
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
217
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
222
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
223
+ at 2022-08-16T15:25:20.438Z
218
224
  </div>
219
- </div>
220
225
  <script src="../../prettify.js"></script>
221
226
  <script>
222
227
  window.onload = function () {
@@ -30,9 +30,9 @@
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">56.52% </span>
33
+ <span class="strong">60.53% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>26/46</span>
35
+ <span class='fraction'>23/38</span>
36
36
  </div>
37
37
 
38
38
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -476,11 +482,11 @@ export class PromiseCache&lt;T, K = string&gt; {
476
482
  <span class="cstat-no" title="statement not covered" > throw new Error('PromiseCache: null keys are not supported');</span>
477
483
  }
478
484
  &nbsp;
479
- <span class="missing-if-branch" title="else path not taken" >E</span>if (typeof k === 'string') {
485
+ if (typeof k === 'string') {
480
486
  return k;
481
487
  }
482
488
  &nbsp;
483
- <span class="cstat-no" title="statement not covered" > if (!this.keyAdapter) {</span>
489
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.keyAdapter) {</span>
484
490
  <span class="cstat-no" title="statement not covered" > throw new Error('Provide key adapter for non-string keys');</span>
485
491
  }
486
492
  &nbsp;
@@ -509,7 +515,7 @@ export class PromiseCache&lt;T, K = string&gt; {
509
515
  getCurrent(id: K, initiateFetch = true): T {
510
516
  const key = this._pk(id);
511
517
  const item = this._itemsCache[key];
512
- <span class="missing-if-branch" title="else path not taken" >E</span>if (initiateFetch) {
518
+ if (initiateFetch) {
513
519
  this.get(id);
514
520
  }
515
521
  this._logger<span class="branch-1 cbranch-no" title="branch not covered" ><span class="branch-1 cbranch-no" title="branch not covered" >?.l</span>og(key, 'getCurrent returns', item);</span>
@@ -541,7 +547,7 @@ export class PromiseCache&lt;T, K = string&gt; {
541
547
  try {
542
548
  this._busyCount.increment();
543
549
  const res = await this.fetcher(id);
544
- <span class="missing-if-branch" title="else path not taken" >E</span>if (this._fetchCache[key]) {
550
+ if (this._fetchCache[key]) {
545
551
  this._logger<span class="branch-1 cbranch-no" title="branch not covered" ><span class="branch-1 cbranch-no" title="branch not covered" >?.l</span>og(key, 'item\'s &lt;promise&gt; resolved to', res);</span>
546
552
  const result = res
547
553
  ? (this._observeItems ? <span class="branch-0 cbranch-no" title="branch not covered" >observable.object(res) </span>: res)
@@ -578,7 +584,7 @@ export class PromiseCache&lt;T, K = string&gt; {
578
584
  }
579
585
  &nbsp;
580
586
  <span class="fstat-no" title="function not covered" > keysParsed(</span>) {
581
- <span class="cstat-no" title="statement not covered" > if (!this.keyParser) {</span>
587
+ <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.keyParser) {</span>
582
588
  <span class="cstat-no" title="statement not covered" > return null;</span>
583
589
  }
584
590
  &nbsp;
@@ -606,10 +612,9 @@ function _setX&lt;T&gt;(key: string, obj: Record&lt;string, T&gt;, val: T) {
606
612
  </div><!-- /wrapper -->
607
613
  <div class='footer quiet pad2 space-top1 center small'>
608
614
  Code coverage generated by
609
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
610
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
615
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
616
+ at 2022-08-16T15:25:20.438Z
611
617
  </div>
612
- </div>
613
618
  <script src="../prettify.js"></script>
614
619
  <script>
615
620
  window.onload = function () {
@@ -30,9 +30,9 @@
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">96.67% </span>
33
+ <span class="strong">96.3% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>29/30</span>
35
+ <span class='fraction'>26/27</span>
36
36
  </div>
37
37
 
38
38
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -279,10 +285,9 @@ export function clamp(d: Date, low: Date, high: Date) {
279
285
  </div><!-- /wrapper -->
280
286
  <div class='footer quiet pad2 space-top1 center small'>
281
287
  Code coverage generated by
282
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
283
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
288
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
289
+ at 2022-08-16T15:25:20.438Z
284
290
  </div>
285
- </div>
286
291
  <script src="../../prettify.js"></script>
287
292
  <script>
288
293
  window.onload = function () {
@@ -32,7 +32,7 @@
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>55/55</span>
35
+ <span class='fraction'>40/40</span>
36
36
  </div>
37
37
 
38
38
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -636,10 +642,9 @@ export function getDaysStreak(dates: number[], descentOrder: boolean): number {
636
642
  </div><!-- /wrapper -->
637
643
  <div class='footer quiet pad2 space-top1 center small'>
638
644
  Code coverage generated by
639
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
640
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
645
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
646
+ at 2022-08-16T15:25:20.438Z
641
647
  </div>
642
- </div>
643
648
  <script src="../../prettify.js"></script>
644
649
  <script>
645
650
  window.onload = function () {
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -189,10 +195,9 @@ export namespace DateX {
189
195
  </div><!-- /wrapper -->
190
196
  <div class='footer quiet pad2 space-top1 center small'>
191
197
  Code coverage generated by
192
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
193
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
198
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
199
+ at 2022-08-16T15:25:20.438Z
194
200
  </div>
195
- </div>
196
201
  <script src="../../prettify.js"></script>
197
202
  <script>
198
203
  window.onload = function () {
@@ -30,9 +30,9 @@
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">98.15% </span>
33
+ <span class="strong">97.83% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>53/54</span>
35
+ <span class='fraction'>45/46</span>
36
36
  </div>
37
37
 
38
38
 
@@ -54,6 +54,12 @@
54
54
  <p class="quiet">
55
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
56
  </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
57
63
  </div>
58
64
  <div class='status-line high'></div>
59
65
  <pre><table class="coverage">
@@ -381,10 +387,9 @@ export namespace Format {
381
387
  </div><!-- /wrapper -->
382
388
  <div class='footer quiet pad2 space-top1 center small'>
383
389
  Code coverage generated by
384
- <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
385
- at Sat Jun 18 2022 09:26:04 GMT+0000 (Coordinated Universal Time)
390
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
391
+ at 2022-08-16T15:25:20.438Z
386
392
  </div>
387
- </div>
388
393
  <script src="../../prettify.js"></script>
389
394
  <script>
390
395
  window.onload = function () {