@zajno/common 1.4.11 → 1.4.14
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.
- package/coverage/clover.xml +487 -401
- package/coverage/coverage-final.json +31 -28
- package/coverage/lcov-report/CommonModel.ts.html +215 -0
- package/coverage/lcov-report/FlagModel.ts.html +290 -0
- package/coverage/lcov-report/MultiSelectModel.ts.html +614 -0
- package/coverage/lcov-report/NumberModel.ts.html +230 -0
- package/coverage/lcov-report/SelectModel.ts.html +503 -0
- package/coverage/lcov-report/Validatable.ts.html +386 -0
- package/coverage/lcov-report/async/index.html +111 -0
- package/coverage/lcov-report/async/timeout.ts.html +230 -0
- package/coverage/lcov-report/index.html +33 -33
- package/coverage/lcov-report/src/__tests__/helpers/index.html +1 -1
- package/coverage/lcov-report/src/__tests__/helpers/main.ts.html +1 -1
- package/coverage/lcov-report/src/async/arrays.ts.html +5 -5
- package/coverage/lcov-report/src/async/index.html +1 -1
- package/coverage/lcov-report/src/async/timeout.ts.html +12 -12
- package/coverage/lcov-report/src/cache.ts.html +1 -1
- package/coverage/lcov-report/src/dates/calc.ts.html +1 -1
- package/coverage/lcov-report/src/dates/convert.ts.html +1 -1
- package/coverage/lcov-report/src/dates/datex.ts.html +1 -1
- package/coverage/lcov-report/src/dates/format.ts.html +1 -1
- package/coverage/lcov-report/src/dates/index.html +1 -1
- package/coverage/lcov-report/src/dates/index.ts.html +1 -1
- package/coverage/lcov-report/src/dates/parse.ts.html +1 -1
- package/coverage/lcov-report/src/dates/period.ts.html +1 -1
- package/coverage/lcov-report/src/dates/shift.ts.html +1 -1
- package/coverage/lcov-report/src/dates/types.ts.html +1 -1
- package/coverage/lcov-report/src/dates/yearDate.ts.html +1 -1
- package/coverage/lcov-report/src/disposer.ts.html +1 -1
- package/coverage/lcov-report/src/enumHelper.ts.html +10 -10
- package/coverage/lcov-report/src/event.ts.html +1 -1
- package/coverage/lcov-report/src/fields/index.html +1 -1
- package/coverage/lcov-report/src/fields/update.ts.html +1 -1
- package/coverage/lcov-report/src/functions.ts.html +1 -1
- package/coverage/lcov-report/src/index.html +19 -19
- package/coverage/lcov-report/src/lazy.light.ts.html +6 -6
- package/coverage/lcov-report/src/logger/batch.ts.html +2 -2
- package/coverage/lcov-report/src/logger/console.ts.html +5 -5
- package/coverage/lcov-report/src/logger/index.html +1 -1
- package/coverage/lcov-report/src/logger/index.ts.html +22 -22
- package/coverage/lcov-report/src/logger/named.ts.html +13 -13
- package/coverage/lcov-report/src/logger/proxy.ts.html +7 -7
- package/coverage/lcov-report/src/math/arrays.ts.html +23 -23
- package/coverage/lcov-report/src/math/calc.ts.html +9 -9
- package/coverage/lcov-report/src/math/distribution.ts.html +2 -2
- package/coverage/lcov-report/src/math/index.html +1 -1
- package/coverage/lcov-report/src/math/index.ts.html +6 -6
- package/coverage/lcov-report/src/observersMap.ts.html +1 -1
- package/coverage/lcov-report/src/observingCache.ts.html +26 -11
- package/coverage/lcov-report/src/transitionObserver.ts.html +1 -1
- package/coverage/lcov-report/src/types.ts.html +8 -8
- package/coverage/lcov-report/src/validation/ValidationErrors.ts.html +22 -22
- package/coverage/lcov-report/src/validation/creditCard.ts.html +4 -4
- package/coverage/lcov-report/src/validation/helpers.ts.html +6 -6
- package/coverage/lcov-report/src/validation/index.html +16 -16
- package/coverage/lcov-report/src/validation/index.ts.html +6 -6
- package/coverage/lcov-report/src/validation/types.ts.html +16 -16
- package/coverage/lcov-report/src/validation/validators.ts.html +5 -5
- package/coverage/lcov-report/src/validation/wrappers.ts.html +5 -5
- package/coverage/lcov-report/src/viewModels/CommonModel.ts.html +215 -0
- package/coverage/lcov-report/src/viewModels/FlagModel.ts.html +41 -20
- package/coverage/lcov-report/src/viewModels/LoadingModel.ts.html +128 -0
- package/coverage/lcov-report/src/viewModels/MultiSelectModel.ts.html +50 -20
- package/coverage/lcov-report/src/viewModels/NumberModel.ts.html +41 -23
- package/coverage/lcov-report/src/viewModels/SelectModel.ts.html +42 -30
- package/coverage/lcov-report/src/viewModels/TextModel.ts.html +461 -0
- package/coverage/lcov-report/src/viewModels/Validatable.ts.html +72 -63
- package/coverage/lcov-report/src/viewModels/index.html +84 -39
- package/coverage/lcov-report/src/viewModels/wrappers.ts.html +6 -6
- package/coverage/lcov-report/validation/index.html +111 -0
- package/coverage/lcov-report/validation/index.ts.html +107 -0
- package/coverage/lcov-report/viewModels/CommonModel.ts.html +215 -0
- package/coverage/lcov-report/viewModels/FlagModel.ts.html +290 -0
- package/coverage/lcov-report/viewModels/LoadingModel.ts.html +128 -0
- package/coverage/lcov-report/viewModels/MultiSelectModel.ts.html +614 -0
- package/coverage/lcov-report/viewModels/NumberModel.ts.html +230 -0
- package/coverage/lcov-report/viewModels/SelectModel.ts.html +503 -0
- package/coverage/lcov-report/viewModels/TextModel.ts.html +461 -0
- package/coverage/lcov-report/viewModels/Validatable.ts.html +386 -0
- package/coverage/lcov-report/viewModels/index.html +216 -0
- package/coverage/lcov.info +862 -665
- package/lib/observingCache.d.ts +1 -0
- package/lib/observingCache.d.ts.map +1 -1
- package/lib/observingCache.js +5 -1
- package/lib/observingCache.js.map +1 -1
- package/lib/services/localization/LocalizationManager.d.ts +1 -0
- package/lib/services/localization/LocalizationManager.d.ts.map +1 -1
- package/lib/services/localization/LocalizationManager.js +7 -3
- package/lib/services/localization/LocalizationManager.js.map +1 -1
- package/lib/viewModels/FlagModel.d.ts.map +1 -1
- package/lib/viewModels/FlagModel.js +14 -26
- package/lib/viewModels/FlagModel.js.map +1 -1
- package/lib/viewModels/LoadingModel.d.ts +6 -0
- package/lib/viewModels/LoadingModel.d.ts.map +1 -0
- package/lib/viewModels/LoadingModel.js +19 -0
- package/lib/viewModels/LoadingModel.js.map +1 -0
- package/lib/viewModels/MultiSelectModel.d.ts.map +1 -1
- package/lib/viewModels/MultiSelectModel.js +20 -43
- package/lib/viewModels/MultiSelectModel.js.map +1 -1
- package/lib/viewModels/NumberModel.d.ts.map +1 -1
- package/lib/viewModels/NumberModel.js +12 -22
- package/lib/viewModels/NumberModel.js.map +1 -1
- package/lib/viewModels/SelectModel.d.ts.map +1 -1
- package/lib/viewModels/SelectModel.js +8 -15
- package/lib/viewModels/SelectModel.js.map +1 -1
- package/lib/viewModels/TextModel.d.ts.map +1 -1
- package/lib/viewModels/TextModel.js +10 -17
- package/lib/viewModels/TextModel.js.map +1 -1
- package/lib/viewModels/Validatable.d.ts +2 -2
- package/lib/viewModels/Validatable.d.ts.map +1 -1
- package/lib/viewModels/Validatable.js +6 -12
- package/lib/viewModels/Validatable.js.map +1 -1
- package/package.json +1 -1
- package/src/observingCache.ts +6 -1
- package/src/services/localization/LocalizationManager.ts +8 -3
- package/src/viewModels/FlagModel.ts +14 -7
- package/src/viewModels/LoadingModel.ts +16 -0
- package/src/viewModels/MultiSelectModel.ts +20 -10
- package/src/viewModels/NumberModel.ts +12 -6
- package/src/viewModels/SelectModel.ts +8 -4
- package/src/viewModels/TextModel.ts +10 -5
- package/src/viewModels/Validatable.ts +9 -6
- package/src/viewModels/__tests__/common.test.ts +88 -0
- package/yarn.lock +3 -3
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">54.55% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>48/88</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -37,16 +37,16 @@
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">17.24% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>5/29</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">55.17% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>48/87</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -133,18 +133,18 @@
|
|
|
133
133
|
</tr>
|
|
134
134
|
|
|
135
135
|
<tr>
|
|
136
|
-
<td class="file
|
|
137
|
-
<td data-value="
|
|
138
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
136
|
+
<td class="file high" data-value="types.ts"><a href="types.ts.html">types.ts</a></td>
|
|
137
|
+
<td data-value="100" class="pic high">
|
|
138
|
+
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
|
139
139
|
</td>
|
|
140
|
-
<td data-value="
|
|
141
|
-
<td data-value="4" class="abs
|
|
140
|
+
<td data-value="100" class="pct high">100%</td>
|
|
141
|
+
<td data-value="4" class="abs high">4/4</td>
|
|
142
142
|
<td data-value="100" class="pct high">100%</td>
|
|
143
143
|
<td data-value="0" class="abs high">0/0</td>
|
|
144
|
-
<td data-value="
|
|
145
|
-
<td data-value="1" class="abs
|
|
146
|
-
<td data-value="
|
|
147
|
-
<td data-value="4" class="abs
|
|
144
|
+
<td data-value="100" class="pct high">100%</td>
|
|
145
|
+
<td data-value="1" class="abs high">1/1</td>
|
|
146
|
+
<td data-value="100" class="pct high">100%</td>
|
|
147
|
+
<td data-value="4" class="abs high">4/4</td>
|
|
148
148
|
</tr>
|
|
149
149
|
|
|
150
150
|
<tr>
|
|
@@ -185,7 +185,7 @@
|
|
|
185
185
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
186
186
|
Code coverage generated by
|
|
187
187
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
188
|
-
at
|
|
188
|
+
at Sat Mar 26 2022 23:24:40 GMT+0000 (Coordinated Universal Time)
|
|
189
189
|
</div>
|
|
190
190
|
</div>
|
|
191
191
|
<script src="../../prettify.js"></script>
|
|
@@ -66,11 +66,11 @@
|
|
|
66
66
|
<a name='L7'></a><a href='#L7'>7</a>
|
|
67
67
|
<a name='L8'></a><a href='#L8'>8</a>
|
|
68
68
|
<a name='L9'></a><a href='#L9'>9</a>
|
|
69
|
-
<a name='L10'></a><a href='#L10'>10</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
70
|
-
<span class="cline-any cline-yes">
|
|
71
|
-
<span class="cline-any cline-yes">
|
|
72
|
-
<span class="cline-any cline-yes">
|
|
73
|
-
<span class="cline-any cline-yes">
|
|
69
|
+
<a name='L10'></a><a href='#L10'>10</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">5x</span>
|
|
70
|
+
<span class="cline-any cline-yes">5x</span>
|
|
71
|
+
<span class="cline-any cline-yes">5x</span>
|
|
72
|
+
<span class="cline-any cline-yes">5x</span>
|
|
73
|
+
<span class="cline-any cline-yes">5x</span>
|
|
74
74
|
<span class="cline-any cline-neutral"> </span>
|
|
75
75
|
<span class="cline-any cline-neutral"> </span>
|
|
76
76
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -91,7 +91,7 @@ export * from './helpers';
|
|
|
91
91
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
92
92
|
Code coverage generated by
|
|
93
93
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
94
|
-
at
|
|
94
|
+
at Sat Mar 26 2022 23:24:40 GMT+0000 (Coordinated Universal Time)
|
|
95
95
|
</div>
|
|
96
96
|
</div>
|
|
97
97
|
<script src="../../prettify.js"></script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>4/4</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -37,16 +37,16 @@
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>1/1</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>4/4</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -55,7 +55,7 @@
|
|
|
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
57
|
</div>
|
|
58
|
-
<div class='status-line
|
|
58
|
+
<div class='status-line high'></div>
|
|
59
59
|
<pre><table class="coverage">
|
|
60
60
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
61
61
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -79,12 +79,12 @@
|
|
|
79
79
|
<span class="cline-any cline-neutral"> </span>
|
|
80
80
|
<span class="cline-any cline-neutral"> </span>
|
|
81
81
|
<span class="cline-any cline-neutral"> </span>
|
|
82
|
-
<span class="cline-any cline-yes">
|
|
83
|
-
<span class="cline-any cline-
|
|
82
|
+
<span class="cline-any cline-yes">5x</span>
|
|
83
|
+
<span class="cline-any cline-yes">2x</span>
|
|
84
84
|
<span class="cline-any cline-neutral"> </span>
|
|
85
85
|
<span class="cline-any cline-neutral"> </span>
|
|
86
|
-
<span class="cline-any cline-
|
|
87
|
-
<span class="cline-any cline-
|
|
86
|
+
<span class="cline-any cline-yes">2x</span>
|
|
87
|
+
<span class="cline-any cline-yes">2x</span>
|
|
88
88
|
<span class="cline-any cline-neutral"> </span>
|
|
89
89
|
<span class="cline-any cline-neutral"> </span>
|
|
90
90
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { ValidationErrors } from './ValidationErrors';
|
|
@@ -95,11 +95,11 @@ export type ValidatorFunctionAsync<T = string, TErrors = ValidationErrors>
|
|
|
95
95
|
export type WrapperFunction = (val: ValidatorFunction) => ValidatorFunction;
|
|
96
96
|
|
|
97
97
|
export class ValidationError<TErrors = ValidationErrors> extends Error {
|
|
98
|
-
readonly
|
|
98
|
+
readonly code: TErrors = null;
|
|
99
99
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
100
|
+
constructor(message: string, code: TErrors) {
|
|
101
|
+
super(message);
|
|
102
|
+
this.code = code;
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
105
|
</pre></td></tr></table></pre>
|
|
@@ -109,7 +109,7 @@ export class ValidationError<TErrors = ValidationErrors> extends Error {
|
|
|
109
109
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
110
110
|
Code coverage generated by
|
|
111
111
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
112
|
-
at
|
|
112
|
+
at Sat Mar 26 2022 23:24:40 GMT+0000 (Coordinated Universal Time)
|
|
113
113
|
</div>
|
|
114
114
|
</div>
|
|
115
115
|
<script src="../../prettify.js"></script>
|
|
@@ -112,10 +112,10 @@
|
|
|
112
112
|
<a name='L53'></a><a href='#L53'>53</a>
|
|
113
113
|
<a name='L54'></a><a href='#L54'>54</a>
|
|
114
114
|
<a name='L55'></a><a href='#L55'>55</a>
|
|
115
|
-
<a name='L56'></a><a href='#L56'>56</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
116
|
-
<span class="cline-any cline-yes">
|
|
115
|
+
<a name='L56'></a><a href='#L56'>56</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">5x</span>
|
|
116
|
+
<span class="cline-any cline-yes">5x</span>
|
|
117
117
|
<span class="cline-any cline-neutral"> </span>
|
|
118
|
-
<span class="cline-any cline-yes">
|
|
118
|
+
<span class="cline-any cline-yes">5x</span>
|
|
119
119
|
<span class="cline-any cline-neutral"> </span>
|
|
120
120
|
<span class="cline-any cline-neutral"> </span>
|
|
121
121
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
<span class="cline-any cline-neutral"> </span>
|
|
141
141
|
<span class="cline-any cline-neutral"> </span>
|
|
142
142
|
<span class="cline-any cline-neutral"> </span>
|
|
143
|
-
<span class="cline-any cline-yes">
|
|
143
|
+
<span class="cline-any cline-yes">5x</span>
|
|
144
144
|
<span class="cline-any cline-neutral"> </span>
|
|
145
145
|
<span class="cline-any cline-yes">1x</span>
|
|
146
146
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -229,7 +229,7 @@ export const Validators = {
|
|
|
229
229
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
230
230
|
Code coverage generated by
|
|
231
231
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
232
|
-
at
|
|
232
|
+
at Sat Mar 26 2022 23:24:40 GMT+0000 (Coordinated Universal Time)
|
|
233
233
|
</div>
|
|
234
234
|
</div>
|
|
235
235
|
<script src="../../prettify.js"></script>
|
|
@@ -83,12 +83,12 @@
|
|
|
83
83
|
<a name='L24'></a><a href='#L24'>24</a>
|
|
84
84
|
<a name='L25'></a><a href='#L25'>25</a>
|
|
85
85
|
<a name='L26'></a><a href='#L26'>26</a>
|
|
86
|
-
<a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
86
|
+
<a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">5x</span>
|
|
87
87
|
<span class="cline-any cline-neutral"> </span>
|
|
88
|
-
<span class="cline-any cline-yes">
|
|
89
|
-
<span class="cline-any cline-yes">
|
|
88
|
+
<span class="cline-any cline-yes">5x</span>
|
|
89
|
+
<span class="cline-any cline-yes">5x</span>
|
|
90
90
|
<span class="cline-any cline-neutral"> </span>
|
|
91
|
-
<span class="cline-any cline-yes">
|
|
91
|
+
<span class="cline-any cline-yes">5x</span>
|
|
92
92
|
<span class="cline-any cline-neutral"> </span>
|
|
93
93
|
<span class="cline-any cline-no"> </span>
|
|
94
94
|
<span class="cline-any cline-no"> </span>
|
|
@@ -142,7 +142,7 @@ export const Wrappers = {
|
|
|
142
142
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
143
|
Code coverage generated by
|
|
144
144
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
145
|
-
at
|
|
145
|
+
at Sat Mar 26 2022 23:24:40 GMT+0000 (Coordinated Universal Time)
|
|
146
146
|
</div>
|
|
147
147
|
</div>
|
|
148
148
|
<script src="../../prettify.js"></script>
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<title>Code coverage report for src/viewModels/CommonModel.ts</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/viewModels</a> CommonModel.ts</h1>
|
|
23
|
+
<div class='clearfix'>
|
|
24
|
+
|
|
25
|
+
<div class='fl pad1y space-right2'>
|
|
26
|
+
<span class="strong">100% </span>
|
|
27
|
+
<span class="quiet">Statements</span>
|
|
28
|
+
<span class='fraction'>19/19</span>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
<div class='fl pad1y space-right2'>
|
|
33
|
+
<span class="strong">50% </span>
|
|
34
|
+
<span class="quiet">Branches</span>
|
|
35
|
+
<span class='fraction'>4/8</span>
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<div class='fl pad1y space-right2'>
|
|
40
|
+
<span class="strong">100% </span>
|
|
41
|
+
<span class="quiet">Functions</span>
|
|
42
|
+
<span class='fraction'>6/6</span>
|
|
43
|
+
</div>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
<div class='fl pad1y space-right2'>
|
|
47
|
+
<span class="strong">100% </span>
|
|
48
|
+
<span class="quiet">Lines</span>
|
|
49
|
+
<span class='fraction'>19/19</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
|
+
</div>
|
|
58
|
+
<div class='status-line high'></div>
|
|
59
|
+
<pre><table class="coverage">
|
|
60
|
+
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
61
|
+
<a name='L2'></a><a href='#L2'>2</a>
|
|
62
|
+
<a name='L3'></a><a href='#L3'>3</a>
|
|
63
|
+
<a name='L4'></a><a href='#L4'>4</a>
|
|
64
|
+
<a name='L5'></a><a href='#L5'>5</a>
|
|
65
|
+
<a name='L6'></a><a href='#L6'>6</a>
|
|
66
|
+
<a name='L7'></a><a href='#L7'>7</a>
|
|
67
|
+
<a name='L8'></a><a href='#L8'>8</a>
|
|
68
|
+
<a name='L9'></a><a href='#L9'>9</a>
|
|
69
|
+
<a name='L10'></a><a href='#L10'>10</a>
|
|
70
|
+
<a name='L11'></a><a href='#L11'>11</a>
|
|
71
|
+
<a name='L12'></a><a href='#L12'>12</a>
|
|
72
|
+
<a name='L13'></a><a href='#L13'>13</a>
|
|
73
|
+
<a name='L14'></a><a href='#L14'>14</a>
|
|
74
|
+
<a name='L15'></a><a href='#L15'>15</a>
|
|
75
|
+
<a name='L16'></a><a href='#L16'>16</a>
|
|
76
|
+
<a name='L17'></a><a href='#L17'>17</a>
|
|
77
|
+
<a name='L18'></a><a href='#L18'>18</a>
|
|
78
|
+
<a name='L19'></a><a href='#L19'>19</a>
|
|
79
|
+
<a name='L20'></a><a href='#L20'>20</a>
|
|
80
|
+
<a name='L21'></a><a href='#L21'>21</a>
|
|
81
|
+
<a name='L22'></a><a href='#L22'>22</a>
|
|
82
|
+
<a name='L23'></a><a href='#L23'>23</a>
|
|
83
|
+
<a name='L24'></a><a href='#L24'>24</a>
|
|
84
|
+
<a name='L25'></a><a href='#L25'>25</a>
|
|
85
|
+
<a name='L26'></a><a href='#L26'>26</a>
|
|
86
|
+
<a name='L27'></a><a href='#L27'>27</a>
|
|
87
|
+
<a name='L28'></a><a href='#L28'>28</a>
|
|
88
|
+
<a name='L29'></a><a href='#L29'>29</a>
|
|
89
|
+
<a name='L30'></a><a href='#L30'>30</a>
|
|
90
|
+
<a name='L31'></a><a href='#L31'>31</a>
|
|
91
|
+
<a name='L32'></a><a href='#L32'>32</a>
|
|
92
|
+
<a name='L33'></a><a href='#L33'>33</a>
|
|
93
|
+
<a name='L34'></a><a href='#L34'>34</a>
|
|
94
|
+
<a name='L35'></a><a href='#L35'>35</a>
|
|
95
|
+
<a name='L36'></a><a href='#L36'>36</a>
|
|
96
|
+
<a name='L37'></a><a href='#L37'>37</a>
|
|
97
|
+
<a name='L38'></a><a href='#L38'>38</a>
|
|
98
|
+
<a name='L39'></a><a href='#L39'>39</a>
|
|
99
|
+
<a name='L40'></a><a href='#L40'>40</a>
|
|
100
|
+
<a name='L41'></a><a href='#L41'>41</a>
|
|
101
|
+
<a name='L42'></a><a href='#L42'>42</a>
|
|
102
|
+
<a name='L43'></a><a href='#L43'>43</a>
|
|
103
|
+
<a name='L44'></a><a href='#L44'>44</a>
|
|
104
|
+
<a name='L45'></a><a href='#L45'>45</a>
|
|
105
|
+
<a name='L46'></a><a href='#L46'>46</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
106
|
+
<span class="cline-any cline-yes">1x</span>
|
|
107
|
+
<span class="cline-any cline-yes">1x</span>
|
|
108
|
+
<span class="cline-any cline-neutral"> </span>
|
|
109
|
+
<span class="cline-any cline-yes">1x</span>
|
|
110
|
+
<span class="cline-any cline-neutral"> </span>
|
|
111
|
+
<span class="cline-any cline-neutral"> </span>
|
|
112
|
+
<span class="cline-any cline-neutral"> </span>
|
|
113
|
+
<span class="cline-any cline-neutral"> </span>
|
|
114
|
+
<span class="cline-any cline-yes">1x</span>
|
|
115
|
+
<span class="cline-any cline-neutral"> </span>
|
|
116
|
+
<span class="cline-any cline-neutral"> </span>
|
|
117
|
+
<span class="cline-any cline-yes">1x</span>
|
|
118
|
+
<span class="cline-any cline-yes">1x</span>
|
|
119
|
+
<span class="cline-any cline-yes">1x</span>
|
|
120
|
+
<span class="cline-any cline-neutral"> </span>
|
|
121
|
+
<span class="cline-any cline-yes">1x</span>
|
|
122
|
+
<span class="cline-any cline-neutral"> </span>
|
|
123
|
+
<span class="cline-any cline-neutral"> </span>
|
|
124
|
+
<span class="cline-any cline-neutral"> </span>
|
|
125
|
+
<span class="cline-any cline-neutral"> </span>
|
|
126
|
+
<span class="cline-any cline-neutral"> </span>
|
|
127
|
+
<span class="cline-any cline-neutral"> </span>
|
|
128
|
+
<span class="cline-any cline-yes">3x</span>
|
|
129
|
+
<span class="cline-any cline-neutral"> </span>
|
|
130
|
+
<span class="cline-any cline-neutral"> </span>
|
|
131
|
+
<span class="cline-any cline-yes">2x</span>
|
|
132
|
+
<span class="cline-any cline-neutral"> </span>
|
|
133
|
+
<span class="cline-any cline-yes">2x</span>
|
|
134
|
+
<span class="cline-any cline-neutral"> </span>
|
|
135
|
+
<span class="cline-any cline-neutral"> </span>
|
|
136
|
+
<span class="cline-any cline-neutral"> </span>
|
|
137
|
+
<span class="cline-any cline-yes">1x</span>
|
|
138
|
+
<span class="cline-any cline-yes">2x</span>
|
|
139
|
+
<span class="cline-any cline-neutral"> </span>
|
|
140
|
+
<span class="cline-any cline-yes">2x</span>
|
|
141
|
+
<span class="cline-any cline-yes">1x</span>
|
|
142
|
+
<span class="cline-any cline-neutral"> </span>
|
|
143
|
+
<span class="cline-any cline-neutral"> </span>
|
|
144
|
+
<span class="cline-any cline-neutral"> </span>
|
|
145
|
+
<span class="cline-any cline-yes">1x</span>
|
|
146
|
+
<span class="cline-any cline-yes">2x</span>
|
|
147
|
+
<span class="cline-any cline-yes">2x</span>
|
|
148
|
+
<span class="cline-any cline-neutral"> </span>
|
|
149
|
+
<span class="cline-any cline-neutral"> </span>
|
|
150
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { action, makeObservable, observable } from 'mobx';
|
|
151
|
+
import { Getter } from '../types';
|
|
152
|
+
import { ValidatableModel } from './Validatable';
|
|
153
|
+
|
|
154
|
+
export class CommonModel<T = any> extends ValidatableModel<T> {
|
|
155
|
+
|
|
156
|
+
// observable[.ref]
|
|
157
|
+
private _value: T;
|
|
158
|
+
|
|
159
|
+
private _defaultValue: Getter<T> = null;
|
|
160
|
+
|
|
161
|
+
constructor(v: Getter<T> = <span class="branch-0 cbranch-no" title="branch not covered" >null,</span> useRefObservable = <span class="branch-0 cbranch-no" title="branch not covered" >true)</span> {
|
|
162
|
+
super();
|
|
163
|
+
this._value = Getter.getValue(v) || <span class="branch-1 cbranch-no" title="branch not covered" >null;</span>
|
|
164
|
+
this._defaultValue = v;
|
|
165
|
+
|
|
166
|
+
makeObservable<CommonModel<T>, '_value'>(this, {
|
|
167
|
+
_value: useRefObservable ? observable.ref : <span class="branch-1 cbranch-no" title="branch not covered" >observable,</span>
|
|
168
|
+
setValue: action,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
protected get valueToValidate(): Readonly<T> {
|
|
173
|
+
return this._value;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
public get value() { return this._value; }
|
|
177
|
+
public set value(v: T) {
|
|
178
|
+
this.setValue(v);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
// action
|
|
182
|
+
public readonly setValue = (value: T) => {
|
|
183
|
+
this._value = value;
|
|
184
|
+
|
|
185
|
+
if (this._validateOnChange) {
|
|
186
|
+
this.validate();
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
reset = () => {
|
|
191
|
+
this._value = Getter.getValue(this._defaultValue);
|
|
192
|
+
super.reset();
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
</pre></td></tr></table></pre>
|
|
196
|
+
|
|
197
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
198
|
+
</div><!-- /wrapper -->
|
|
199
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
200
|
+
Code coverage generated by
|
|
201
|
+
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
202
|
+
at Sat Mar 26 2022 23:24:40 GMT+0000 (Coordinated Universal Time)
|
|
203
|
+
</div>
|
|
204
|
+
</div>
|
|
205
|
+
<script src="../../prettify.js"></script>
|
|
206
|
+
<script>
|
|
207
|
+
window.onload = function () {
|
|
208
|
+
prettyPrint();
|
|
209
|
+
};
|
|
210
|
+
</script>
|
|
211
|
+
<script src="../../sorter.js"></script>
|
|
212
|
+
<script src="../../block-navigation.js"></script>
|
|
213
|
+
</body>
|
|
214
|
+
</html>
|
|
215
|
+
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">59.09% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>13/22</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -120,28 +120,42 @@
|
|
|
120
120
|
<a name='L61'></a><a href='#L61'>61</a>
|
|
121
121
|
<a name='L62'></a><a href='#L62'>62</a>
|
|
122
122
|
<a name='L63'></a><a href='#L63'>63</a>
|
|
123
|
-
<a name='L64'></a><a href='#L64'>64</a
|
|
123
|
+
<a name='L64'></a><a href='#L64'>64</a>
|
|
124
|
+
<a name='L65'></a><a href='#L65'>65</a>
|
|
125
|
+
<a name='L66'></a><a href='#L66'>66</a>
|
|
126
|
+
<a name='L67'></a><a href='#L67'>67</a>
|
|
127
|
+
<a name='L68'></a><a href='#L68'>68</a>
|
|
128
|
+
<a name='L69'></a><a href='#L69'>69</a>
|
|
129
|
+
<a name='L70'></a><a href='#L70'>70</a>
|
|
130
|
+
<a name='L71'></a><a href='#L71'>71</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">4x</span>
|
|
131
|
+
<span class="cline-any cline-neutral"> </span>
|
|
132
|
+
<span class="cline-any cline-neutral"> </span>
|
|
133
|
+
<span class="cline-any cline-neutral"> </span>
|
|
134
|
+
<span class="cline-any cline-neutral"> </span>
|
|
135
|
+
<span class="cline-any cline-neutral"> </span>
|
|
136
|
+
<span class="cline-any cline-neutral"> </span>
|
|
137
|
+
<span class="cline-any cline-neutral"> </span>
|
|
124
138
|
<span class="cline-any cline-neutral"> </span>
|
|
125
139
|
<span class="cline-any cline-neutral"> </span>
|
|
126
140
|
<span class="cline-any cline-neutral"> </span>
|
|
127
141
|
<span class="cline-any cline-neutral"> </span>
|
|
128
142
|
<span class="cline-any cline-neutral"> </span>
|
|
129
143
|
<span class="cline-any cline-neutral"> </span>
|
|
144
|
+
<span class="cline-any cline-yes">4x</span>
|
|
130
145
|
<span class="cline-any cline-neutral"> </span>
|
|
131
146
|
<span class="cline-any cline-neutral"> </span>
|
|
147
|
+
<span class="cline-any cline-yes">18x</span>
|
|
132
148
|
<span class="cline-any cline-neutral"> </span>
|
|
133
149
|
<span class="cline-any cline-neutral"> </span>
|
|
150
|
+
<span class="cline-any cline-yes">18x</span>
|
|
134
151
|
<span class="cline-any cline-neutral"> </span>
|
|
135
152
|
<span class="cline-any cline-neutral"> </span>
|
|
136
153
|
<span class="cline-any cline-neutral"> </span>
|
|
137
|
-
<span class="cline-any cline-yes">3x</span>
|
|
138
154
|
<span class="cline-any cline-neutral"> </span>
|
|
139
155
|
<span class="cline-any cline-neutral"> </span>
|
|
140
|
-
<span class="cline-any cline-yes">17x</span>
|
|
141
156
|
<span class="cline-any cline-neutral"> </span>
|
|
142
157
|
<span class="cline-any cline-neutral"> </span>
|
|
143
|
-
<span class="cline-any cline-yes">
|
|
144
|
-
<span class="cline-any cline-yes">17x</span>
|
|
158
|
+
<span class="cline-any cline-yes">18x</span>
|
|
145
159
|
<span class="cline-any cline-neutral"> </span>
|
|
146
160
|
<span class="cline-any cline-neutral"> </span>
|
|
147
161
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -153,33 +167,33 @@
|
|
|
153
167
|
<span class="cline-any cline-neutral"> </span>
|
|
154
168
|
<span class="cline-any cline-neutral"> </span>
|
|
155
169
|
<span class="cline-any cline-neutral"> </span>
|
|
156
|
-
<span class="cline-any cline-yes">
|
|
170
|
+
<span class="cline-any cline-yes">18x</span>
|
|
157
171
|
<span class="cline-any cline-yes">50x</span>
|
|
158
172
|
<span class="cline-any cline-neutral"> </span>
|
|
159
173
|
<span class="cline-any cline-neutral"> </span>
|
|
160
174
|
<span class="cline-any cline-no"> </span>
|
|
161
175
|
<span class="cline-any cline-neutral"> </span>
|
|
162
176
|
<span class="cline-any cline-neutral"> </span>
|
|
163
|
-
<span class="cline-any cline-yes">
|
|
177
|
+
<span class="cline-any cline-yes">18x</span>
|
|
164
178
|
<span class="cline-any cline-no"> </span>
|
|
165
179
|
<span class="cline-any cline-no"> </span>
|
|
166
180
|
<span class="cline-any cline-no"> </span>
|
|
167
181
|
<span class="cline-any cline-neutral"> </span>
|
|
168
182
|
<span class="cline-any cline-neutral"> </span>
|
|
169
183
|
<span class="cline-any cline-neutral"> </span>
|
|
170
|
-
<span class="cline-any cline-yes">
|
|
184
|
+
<span class="cline-any cline-yes">18x</span>
|
|
171
185
|
<span class="cline-any cline-no"> </span>
|
|
172
186
|
<span class="cline-any cline-no"> </span>
|
|
173
187
|
<span class="cline-any cline-no"> </span>
|
|
174
188
|
<span class="cline-any cline-neutral"> </span>
|
|
175
189
|
<span class="cline-any cline-neutral"> </span>
|
|
176
190
|
<span class="cline-any cline-neutral"> </span>
|
|
177
|
-
<span class="cline-any cline-yes">
|
|
191
|
+
<span class="cline-any cline-yes">18x</span>
|
|
178
192
|
<span class="cline-any cline-no"> </span>
|
|
179
193
|
<span class="cline-any cline-neutral"> </span>
|
|
180
194
|
<span class="cline-any cline-neutral"> </span>
|
|
181
195
|
<span class="cline-any cline-neutral"> </span>
|
|
182
|
-
<span class="cline-any cline-yes">
|
|
196
|
+
<span class="cline-any cline-yes">18x</span>
|
|
183
197
|
<span class="cline-any cline-no"> </span>
|
|
184
198
|
<span class="cline-any cline-neutral"> </span>
|
|
185
199
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -199,11 +213,18 @@ export type ILabeledFlagModel = IFlagModel & ILabel<string>;
|
|
|
199
213
|
|
|
200
214
|
export class FlagModel implements IFlagModel, IFlagModelReadonly {
|
|
201
215
|
|
|
202
|
-
@observable
|
|
216
|
+
// @observable
|
|
203
217
|
private _value: boolean = false;
|
|
204
218
|
|
|
205
219
|
constructor(initial = false) {
|
|
206
|
-
makeObservable(this
|
|
220
|
+
makeObservable<FlagModel, '_value'>(this, {
|
|
221
|
+
_value: observable,
|
|
222
|
+
setValue: action,
|
|
223
|
+
setTrue: action,
|
|
224
|
+
setFalse: action,
|
|
225
|
+
toggle: action,
|
|
226
|
+
reset: action,
|
|
227
|
+
});
|
|
207
228
|
this._value = initial;
|
|
208
229
|
}
|
|
209
230
|
|
|
@@ -215,33 +236,33 @@ export class FlagModel implements IFlagModel, IFlagModelReadonly {
|
|
|
215
236
|
this.setValue(value);
|
|
216
237
|
}
|
|
217
238
|
|
|
218
|
-
@action
|
|
239
|
+
// @action
|
|
219
240
|
public readonly setValue = (value: boolean) => {
|
|
220
241
|
this._value = value;
|
|
221
242
|
};
|
|
222
243
|
|
|
223
244
|
<span class="fstat-no" title="function not covered" > get i</span>sDefault() { <span class="cstat-no" title="statement not covered" >return this._value === false; </span>}
|
|
224
245
|
|
|
225
|
-
@action
|
|
246
|
+
// @action
|
|
226
247
|
setTrue = <span class="fstat-no" title="function not covered" >() =</span>> {
|
|
227
248
|
const v = <span class="cstat-no" title="statement not covered" >this.value;</span>
|
|
228
249
|
<span class="cstat-no" title="statement not covered" > this.value = true;</span>
|
|
229
250
|
<span class="cstat-no" title="statement not covered" > return !v;</span>
|
|
230
251
|
};
|
|
231
252
|
|
|
232
|
-
@action
|
|
253
|
+
// @action
|
|
233
254
|
setFalse = <span class="fstat-no" title="function not covered" >() =</span>> {
|
|
234
255
|
const v = <span class="cstat-no" title="statement not covered" >this.value;</span>
|
|
235
256
|
<span class="cstat-no" title="statement not covered" > this.value = false;</span>
|
|
236
257
|
<span class="cstat-no" title="statement not covered" > return v;</span>
|
|
237
258
|
};
|
|
238
259
|
|
|
239
|
-
@action
|
|
260
|
+
// @action
|
|
240
261
|
toggle = <span class="fstat-no" title="function not covered" >() =</span>> {
|
|
241
262
|
<span class="cstat-no" title="statement not covered" > this._value = !this._value;</span>
|
|
242
263
|
};
|
|
243
264
|
|
|
244
|
-
@action
|
|
265
|
+
// @action
|
|
245
266
|
reset = <span class="fstat-no" title="function not covered" >() =</span>> {
|
|
246
267
|
<span class="cstat-no" title="statement not covered" > this._value = false;</span>
|
|
247
268
|
};
|
|
@@ -253,7 +274,7 @@ export class FlagModel implements IFlagModel, IFlagModelReadonly {
|
|
|
253
274
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
254
275
|
Code coverage generated by
|
|
255
276
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
256
|
-
at
|
|
277
|
+
at Sat Mar 26 2022 23:24:40 GMT+0000 (Coordinated Universal Time)
|
|
257
278
|
</div>
|
|
258
279
|
</div>
|
|
259
280
|
<script src="../../prettify.js"></script>
|