@zajno/common 1.3.14 → 1.4.1
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 +112 -99
- package/coverage/coverage-final.json +7 -7
- package/coverage/lcov-report/index.html +19 -19
- 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 +1 -1
- package/coverage/lcov-report/src/async/index.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/enumHelper.ts.html +1 -1
- 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 +1 -1
- package/coverage/lcov-report/src/lazy.light.ts.html +4 -4
- package/coverage/lcov-report/src/logger/batch.ts.html +1 -1
- package/coverage/lcov-report/src/logger/console.ts.html +1 -1
- package/coverage/lcov-report/src/logger/index.html +1 -1
- package/coverage/lcov-report/src/logger/index.ts.html +1 -1
- package/coverage/lcov-report/src/logger/named.ts.html +1 -1
- package/coverage/lcov-report/src/logger/proxy.ts.html +1 -1
- package/coverage/lcov-report/src/math/arrays.ts.html +1 -1
- package/coverage/lcov-report/src/math/calc.ts.html +1 -1
- package/coverage/lcov-report/src/math/distribution.ts.html +1 -1
- package/coverage/lcov-report/src/math/index.html +1 -1
- package/coverage/lcov-report/src/math/index.ts.html +1 -1
- package/coverage/lcov-report/src/transitionObserver.ts.html +1 -1
- package/coverage/lcov-report/src/types.ts.html +1 -1
- package/coverage/lcov-report/src/validation/ValidationErrors.ts.html +1 -1
- package/coverage/lcov-report/src/validation/creditCard.ts.html +1 -1
- package/coverage/lcov-report/src/validation/helpers.ts.html +1 -1
- package/coverage/lcov-report/src/validation/index.html +1 -1
- package/coverage/lcov-report/src/validation/index.ts.html +1 -1
- package/coverage/lcov-report/src/validation/types.ts.html +6 -6
- package/coverage/lcov-report/src/validation/validators.ts.html +1 -1
- package/coverage/lcov-report/src/validation/wrappers.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/FlagModel.ts.html +25 -10
- package/coverage/lcov-report/src/viewModels/MultiSelectModel.ts.html +20 -8
- package/coverage/lcov-report/src/viewModels/NumberModel.ts.html +24 -9
- package/coverage/lcov-report/src/viewModels/SelectModel.ts.html +51 -24
- package/coverage/lcov-report/src/viewModels/Validatable.ts.html +74 -50
- package/coverage/lcov-report/src/viewModels/index.html +53 -53
- package/coverage/lcov-report/src/viewModels/wrappers.ts.html +1 -1
- package/coverage/lcov.info +278 -250
- package/lib/validation/types.d.ts +5 -5
- package/lib/validation/types.d.ts.map +1 -1
- package/lib/validation/types.js.map +1 -1
- package/lib/validation/wrappers.d.ts +4 -3
- package/lib/validation/wrappers.d.ts.map +1 -1
- package/lib/viewModels/CommonModel.d.ts +12 -0
- package/lib/viewModels/CommonModel.d.ts.map +1 -0
- package/lib/viewModels/CommonModel.js +43 -0
- package/lib/viewModels/CommonModel.js.map +1 -0
- package/lib/viewModels/FlagModel.d.ts +1 -0
- package/lib/viewModels/FlagModel.d.ts.map +1 -1
- package/lib/viewModels/FlagModel.js +8 -1
- package/lib/viewModels/FlagModel.js.map +1 -1
- package/lib/viewModels/MultiSelectModel.d.ts.map +1 -1
- package/lib/viewModels/MultiSelectModel.js +3 -0
- package/lib/viewModels/MultiSelectModel.js.map +1 -1
- package/lib/viewModels/NumberModel.d.ts +1 -0
- package/lib/viewModels/NumberModel.d.ts.map +1 -1
- package/lib/viewModels/NumberModel.js +8 -1
- package/lib/viewModels/NumberModel.js.map +1 -1
- package/lib/viewModels/SelectModel.d.ts +1 -0
- package/lib/viewModels/SelectModel.d.ts.map +1 -1
- package/lib/viewModels/SelectModel.js +24 -14
- package/lib/viewModels/SelectModel.js.map +1 -1
- package/lib/viewModels/TextModel.d.ts +4 -3
- package/lib/viewModels/TextModel.d.ts.map +1 -1
- package/lib/viewModels/TextModel.js +28 -24
- package/lib/viewModels/TextModel.js.map +1 -1
- package/lib/viewModels/Validatable.d.ts +10 -10
- package/lib/viewModels/Validatable.d.ts.map +1 -1
- package/lib/viewModels/Validatable.js +19 -13
- package/lib/viewModels/Validatable.js.map +1 -1
- package/lib/viewModels/index.d.ts +1 -0
- package/lib/viewModels/index.d.ts.map +1 -1
- package/lib/viewModels/index.js +1 -0
- package/lib/viewModels/index.js.map +1 -1
- package/package.json +1 -1
- package/src/validation/types.ts +5 -5
- package/src/viewModels/CommonModel.ts +40 -0
- package/src/viewModels/FlagModel.ts +6 -1
- package/src/viewModels/MultiSelectModel.ts +4 -0
- package/src/viewModels/NumberModel.ts +6 -1
- package/src/viewModels/SelectModel.ts +11 -2
- package/src/viewModels/TextModel.ts +24 -15
- package/src/viewModels/Validatable.ts +29 -21
- package/src/viewModels/index.ts +1 -0
|
@@ -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">67.86% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>19/28</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">44.44% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>4/9</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">59.09% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>13/22</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -115,7 +115,12 @@
|
|
|
115
115
|
<a name='L56'></a><a href='#L56'>56</a>
|
|
116
116
|
<a name='L57'></a><a href='#L57'>57</a>
|
|
117
117
|
<a name='L58'></a><a href='#L58'>58</a>
|
|
118
|
-
<a name='L59'></a><a href='#L59'>59</a
|
|
118
|
+
<a name='L59'></a><a href='#L59'>59</a>
|
|
119
|
+
<a name='L60'></a><a href='#L60'>60</a>
|
|
120
|
+
<a name='L61'></a><a href='#L61'>61</a>
|
|
121
|
+
<a name='L62'></a><a href='#L62'>62</a>
|
|
122
|
+
<a name='L63'></a><a href='#L63'>63</a>
|
|
123
|
+
<a name='L64'></a><a href='#L64'>64</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
|
|
119
124
|
<span class="cline-any cline-neutral"> </span>
|
|
120
125
|
<span class="cline-any cline-neutral"> </span>
|
|
121
126
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -144,7 +149,12 @@
|
|
|
144
149
|
<span class="cline-any cline-neutral"> </span>
|
|
145
150
|
<span class="cline-any cline-neutral"> </span>
|
|
146
151
|
<span class="cline-any cline-neutral"> </span>
|
|
147
|
-
<span class="cline-any cline-yes">
|
|
152
|
+
<span class="cline-any cline-yes">50x</span>
|
|
153
|
+
<span class="cline-any cline-neutral"> </span>
|
|
154
|
+
<span class="cline-any cline-neutral"> </span>
|
|
155
|
+
<span class="cline-any cline-neutral"> </span>
|
|
156
|
+
<span class="cline-any cline-yes">17x</span>
|
|
157
|
+
<span class="cline-any cline-yes">50x</span>
|
|
148
158
|
<span class="cline-any cline-neutral"> </span>
|
|
149
159
|
<span class="cline-any cline-neutral"> </span>
|
|
150
160
|
<span class="cline-any cline-no"> </span>
|
|
@@ -202,8 +212,13 @@ export class FlagModel implements IFlagModel, IFlagModelReadonly {
|
|
|
202
212
|
}
|
|
203
213
|
|
|
204
214
|
set value(value: boolean) {
|
|
205
|
-
this.
|
|
215
|
+
this.setValue(value);
|
|
206
216
|
}
|
|
217
|
+
|
|
218
|
+
@action
|
|
219
|
+
public readonly setValue = (value: boolean) => {
|
|
220
|
+
this._value = value;
|
|
221
|
+
};
|
|
207
222
|
|
|
208
223
|
<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>}
|
|
209
224
|
|
|
@@ -238,7 +253,7 @@ export class FlagModel implements IFlagModel, IFlagModelReadonly {
|
|
|
238
253
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
239
254
|
Code coverage generated by
|
|
240
255
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
241
|
-
at
|
|
256
|
+
at Mon Jan 31 2022 14:31:00 GMT+0000 (Coordinated Universal Time)
|
|
242
257
|
</div>
|
|
243
258
|
</div>
|
|
244
259
|
<script src="../../prettify.js"></script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">77.
|
|
26
|
+
<span class="strong">77.14% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>81/105</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">44.44% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>8/18</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">76.47% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>65/85</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -221,7 +221,11 @@
|
|
|
221
221
|
<a name='L162'></a><a href='#L162'>162</a>
|
|
222
222
|
<a name='L163'></a><a href='#L163'>163</a>
|
|
223
223
|
<a name='L164'></a><a href='#L164'>164</a>
|
|
224
|
-
<a name='L165'></a><a href='#L165'>165</a
|
|
224
|
+
<a name='L165'></a><a href='#L165'>165</a>
|
|
225
|
+
<a name='L166'></a><a href='#L166'>166</a>
|
|
226
|
+
<a name='L167'></a><a href='#L167'>167</a>
|
|
227
|
+
<a name='L168'></a><a href='#L168'>168</a>
|
|
228
|
+
<a name='L169'></a><a href='#L169'>169</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
225
229
|
<span class="cline-any cline-yes">1x</span>
|
|
226
230
|
<span class="cline-any cline-yes">1x</span>
|
|
227
231
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -333,6 +337,10 @@
|
|
|
333
337
|
<span class="cline-any cline-neutral"> </span>
|
|
334
338
|
<span class="cline-any cline-neutral"> </span>
|
|
335
339
|
<span class="cline-any cline-yes">8x</span>
|
|
340
|
+
<span class="cline-any cline-no"> </span>
|
|
341
|
+
<span class="cline-any cline-neutral"> </span>
|
|
342
|
+
<span class="cline-any cline-neutral"> </span>
|
|
343
|
+
<span class="cline-any cline-yes">8x</span>
|
|
336
344
|
<span class="cline-any cline-yes">8x</span>
|
|
337
345
|
<span class="cline-any cline-neutral"> </span>
|
|
338
346
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -495,6 +503,10 @@ export class MultiSelect<T = any> extends ValidatableModel<ReadonlyArra
|
|
|
495
503
|
} else {
|
|
496
504
|
this._indexes.delete(index);
|
|
497
505
|
}
|
|
506
|
+
|
|
507
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (this._validateOnChange) {
|
|
508
|
+
<span class="cstat-no" title="statement not covered" > this.validate();</span>
|
|
509
|
+
}
|
|
498
510
|
|
|
499
511
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (!this._flags.hasValue) {
|
|
500
512
|
return;
|
|
@@ -556,7 +568,7 @@ export class MultiSelectString<T extends string = string> extends MultiSel
|
|
|
556
568
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
557
569
|
Code coverage generated by
|
|
558
570
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
559
|
-
at
|
|
571
|
+
at Mon Jan 31 2022 14:31:00 GMT+0000 (Coordinated Universal Time)
|
|
560
572
|
</div>
|
|
561
573
|
</div>
|
|
562
574
|
<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">83.33% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>20/24</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">50% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>4/8</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">88.24% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>15/17</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -96,7 +96,12 @@
|
|
|
96
96
|
<a name='L37'></a><a href='#L37'>37</a>
|
|
97
97
|
<a name='L38'></a><a href='#L38'>38</a>
|
|
98
98
|
<a name='L39'></a><a href='#L39'>39</a>
|
|
99
|
-
<a name='L40'></a><a href='#L40'>40</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></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
100
105
|
<span class="cline-any cline-neutral"> </span>
|
|
101
106
|
<span class="cline-any cline-neutral"> </span>
|
|
102
107
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -120,6 +125,11 @@
|
|
|
120
125
|
<span class="cline-any cline-yes">2x</span>
|
|
121
126
|
<span class="cline-any cline-yes">1x</span>
|
|
122
127
|
<span class="cline-any cline-neutral"> </span>
|
|
128
|
+
<span class="cline-any cline-neutral"> </span>
|
|
129
|
+
<span class="cline-any cline-yes">3x</span>
|
|
130
|
+
<span class="cline-any cline-yes">1x</span>
|
|
131
|
+
<span class="cline-any cline-neutral"> </span>
|
|
132
|
+
<span class="cline-any cline-neutral"> </span>
|
|
123
133
|
<span class="cline-any cline-no"> </span>
|
|
124
134
|
<span class="cline-any cline-neutral"> </span>
|
|
125
135
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -157,7 +167,12 @@ export class NumberModel implements INumberModel, IValueModel<number> {
|
|
|
157
167
|
}
|
|
158
168
|
|
|
159
169
|
get value() { return this._value; }
|
|
160
|
-
set value(v: number) { this.
|
|
170
|
+
set value(v: number) { this.setValue(v); }
|
|
171
|
+
|
|
172
|
+
@action
|
|
173
|
+
public readonly setValue = (v: number) => {
|
|
174
|
+
this._value = v;
|
|
175
|
+
};
|
|
161
176
|
|
|
162
177
|
<span class="fstat-no" title="function not covered" > get i</span>sDefault() { <span class="cstat-no" title="statement not covered" >return this._value === this._initial; </span>}
|
|
163
178
|
|
|
@@ -181,7 +196,7 @@ export default NumberModel;
|
|
|
181
196
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
182
197
|
Code coverage generated by
|
|
183
198
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
184
|
-
at
|
|
199
|
+
at Mon Jan 31 2022 14:31:00 GMT+0000 (Coordinated Universal Time)
|
|
185
200
|
</div>
|
|
186
201
|
</div>
|
|
187
202
|
<script src="../../prettify.js"></script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">91.04% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>61/67</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">83.33% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>15/
|
|
35
|
+
<span class='fraction'>15/18</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">84.62% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>22/
|
|
42
|
+
<span class='fraction'>22/26</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">90% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>54/60</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -185,7 +185,16 @@
|
|
|
185
185
|
<a name='L126'></a><a href='#L126'>126</a>
|
|
186
186
|
<a name='L127'></a><a href='#L127'>127</a>
|
|
187
187
|
<a name='L128'></a><a href='#L128'>128</a>
|
|
188
|
-
<a name='L129'></a><a href='#L129'>129</a
|
|
188
|
+
<a name='L129'></a><a href='#L129'>129</a>
|
|
189
|
+
<a name='L130'></a><a href='#L130'>130</a>
|
|
190
|
+
<a name='L131'></a><a href='#L131'>131</a>
|
|
191
|
+
<a name='L132'></a><a href='#L132'>132</a>
|
|
192
|
+
<a name='L133'></a><a href='#L133'>133</a>
|
|
193
|
+
<a name='L134'></a><a href='#L134'>134</a>
|
|
194
|
+
<a name='L135'></a><a href='#L135'>135</a>
|
|
195
|
+
<a name='L136'></a><a href='#L136'>136</a>
|
|
196
|
+
<a name='L137'></a><a href='#L137'>137</a>
|
|
197
|
+
<a name='L138'></a><a href='#L138'>138</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
189
198
|
<span class="cline-any cline-yes">1x</span>
|
|
190
199
|
<span class="cline-any cline-yes">1x</span>
|
|
191
200
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -215,7 +224,7 @@
|
|
|
215
224
|
<span class="cline-any cline-yes">5x</span>
|
|
216
225
|
<span class="cline-any cline-neutral"> </span>
|
|
217
226
|
<span class="cline-any cline-neutral"> </span>
|
|
218
|
-
<span class="cline-any cline-
|
|
227
|
+
<span class="cline-any cline-no"> </span>
|
|
219
228
|
<span class="cline-any cline-neutral"> </span>
|
|
220
229
|
<span class="cline-any cline-neutral"> </span>
|
|
221
230
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -245,7 +254,7 @@
|
|
|
245
254
|
<span class="cline-any cline-neutral"> </span>
|
|
246
255
|
<span class="cline-any cline-neutral"> </span>
|
|
247
256
|
<span class="cline-any cline-neutral"> </span>
|
|
248
|
-
<span class="cline-any cline-yes">
|
|
257
|
+
<span class="cline-any cline-yes">4x</span>
|
|
249
258
|
<span class="cline-any cline-neutral"> </span>
|
|
250
259
|
<span class="cline-any cline-neutral"> </span>
|
|
251
260
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -263,20 +272,29 @@
|
|
|
263
272
|
<span class="cline-any cline-neutral"> </span>
|
|
264
273
|
<span class="cline-any cline-neutral"> </span>
|
|
265
274
|
<span class="cline-any cline-yes">16x</span>
|
|
266
|
-
<span class="cline-any cline-yes">4x</span>
|
|
267
275
|
<span class="cline-any cline-neutral"> </span>
|
|
268
276
|
<span class="cline-any cline-neutral"> </span>
|
|
269
|
-
<span class="cline-any cline-
|
|
277
|
+
<span class="cline-any cline-neutral"> </span>
|
|
278
|
+
<span class="cline-any cline-yes">5x</span>
|
|
279
|
+
<span class="cline-any cline-yes">16x</span>
|
|
280
|
+
<span class="cline-any cline-no"> </span>
|
|
281
|
+
<span class="cline-any cline-neutral"> </span>
|
|
282
|
+
<span class="cline-any cline-neutral"> </span>
|
|
283
|
+
<span class="cline-any cline-yes">16x</span>
|
|
284
|
+
<span class="cline-any cline-neutral"> </span>
|
|
285
|
+
<span class="cline-any cline-yes">16x</span>
|
|
286
|
+
<span class="cline-any cline-no"> </span>
|
|
287
|
+
<span class="cline-any cline-neutral"> </span>
|
|
270
288
|
<span class="cline-any cline-neutral"> </span>
|
|
271
289
|
<span class="cline-any cline-neutral"> </span>
|
|
272
|
-
<span class="cline-any cline-yes">
|
|
273
|
-
<span class="cline-any cline-yes">
|
|
290
|
+
<span class="cline-any cline-yes">16x</span>
|
|
291
|
+
<span class="cline-any cline-yes">16x</span>
|
|
274
292
|
<span class="cline-any cline-neutral"> </span>
|
|
275
|
-
<span class="cline-any cline-yes">
|
|
276
|
-
<span class="cline-any cline-yes">
|
|
293
|
+
<span class="cline-any cline-yes">16x</span>
|
|
294
|
+
<span class="cline-any cline-yes">45x</span>
|
|
277
295
|
<span class="cline-any cline-neutral"> </span>
|
|
278
296
|
<span class="cline-any cline-neutral"> </span>
|
|
279
|
-
<span class="cline-any cline-yes">
|
|
297
|
+
<span class="cline-any cline-yes">16x</span>
|
|
280
298
|
<span class="cline-any cline-neutral"> </span>
|
|
281
299
|
<span class="cline-any cline-neutral"> </span>
|
|
282
300
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -314,7 +332,7 @@
|
|
|
314
332
|
<span class="cline-any cline-neutral"> </span>
|
|
315
333
|
<span class="cline-any cline-neutral"> </span>
|
|
316
334
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { createLazy } from '../lazy.light';
|
|
317
|
-
import { observable, computed, makeObservable, reaction } from 'mobx';
|
|
335
|
+
import { observable, computed, makeObservable, reaction, action } from 'mobx';
|
|
318
336
|
import { FlagModel, ILabeledFlagModel } from './FlagModel';
|
|
319
337
|
import { ValidatableModel } from './Validatable';
|
|
320
338
|
import { IValueModel } from './types';
|
|
@@ -343,7 +361,7 @@ export class Select<T = any> extends ValidatableModel<T> implements
|
|
|
343
361
|
this._index = initialIndex;
|
|
344
362
|
}
|
|
345
363
|
|
|
346
|
-
protected get
|
|
364
|
+
<span class="fstat-no" title="function not covered" > protected get v</span>alueToValidate() { <span class="cstat-no" title="statement not covered" >return this.selectedItem; </span>}
|
|
347
365
|
|
|
348
366
|
@computed
|
|
349
367
|
get values(): readonly string[] {
|
|
@@ -390,11 +408,20 @@ export class Select<T = any> extends ValidatableModel<T> implements
|
|
|
390
408
|
}
|
|
391
409
|
|
|
392
410
|
set index(val: number) {
|
|
393
|
-
|
|
394
|
-
|
|
411
|
+
this.setIndex(val);
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
@action
|
|
415
|
+
public setIndex = (val: number) => {
|
|
416
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (this._indexLocked) {
|
|
417
|
+
<span class="cstat-no" title="statement not covered" > return;</span>
|
|
395
418
|
}
|
|
396
419
|
|
|
397
420
|
this._index = val;
|
|
421
|
+
|
|
422
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (this._validateOnChange) {
|
|
423
|
+
<span class="cstat-no" title="statement not covered" > this.validate();</span>
|
|
424
|
+
}
|
|
398
425
|
|
|
399
426
|
// update all flags to be properly selected
|
|
400
427
|
try {
|
|
@@ -406,7 +433,7 @@ export class Select<T = any> extends ValidatableModel<T> implements
|
|
|
406
433
|
} finally {
|
|
407
434
|
this._indexLocked = false;
|
|
408
435
|
}
|
|
409
|
-
}
|
|
436
|
+
};
|
|
410
437
|
|
|
411
438
|
reset = () => {
|
|
412
439
|
super.reset();
|
|
@@ -448,7 +475,7 @@ export class SelectString<T extends string = string> extends Select<T&g
|
|
|
448
475
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
449
476
|
Code coverage generated by
|
|
450
477
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
451
|
-
at
|
|
478
|
+
at Mon Jan 31 2022 14:31:00 GMT+0000 (Coordinated Universal Time)
|
|
452
479
|
</div>
|
|
453
480
|
</div>
|
|
454
481
|
<script src="../../prettify.js"></script>
|