@zajno/common 1.6.2 → 1.6.4
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 +93 -26
- package/coverage/coverage-final.json +6 -3
- package/coverage/lcov-report/__tests__/helpers/expect.ts.html +94 -0
- package/coverage/lcov-report/__tests__/helpers/index.html +131 -0
- package/coverage/lcov-report/__tests__/helpers/main.ts.html +121 -0
- package/coverage/lcov-report/async/arrays.ts.html +199 -0
- package/coverage/lcov-report/async/index.html +19 -19
- package/coverage/lcov-report/async/timeout.ts.html +121 -19
- package/coverage/lcov-report/dates/calc.ts.html +301 -0
- package/coverage/lcov-report/dates/convert.ts.html +658 -0
- package/coverage/lcov-report/dates/datex.ts.html +211 -0
- package/coverage/lcov-report/dates/format.ts.html +403 -0
- package/coverage/lcov-report/dates/index.html +251 -0
- package/coverage/lcov-report/dates/index.ts.html +112 -0
- package/coverage/lcov-report/dates/parse.ts.html +157 -0
- package/coverage/lcov-report/dates/period.ts.html +154 -0
- package/coverage/lcov-report/dates/shift.ts.html +355 -0
- package/coverage/lcov-report/dates/types.ts.html +181 -0
- package/coverage/lcov-report/dates/yearDate.ts.html +193 -0
- package/coverage/lcov-report/fields/index.html +116 -0
- package/coverage/lcov-report/fields/update.ts.html +457 -0
- package/coverage/lcov-report/functions/disposer.ts.html +376 -0
- package/coverage/lcov-report/functions/index.html +116 -0
- package/coverage/lcov-report/functions/safeCall.ts.html +103 -0
- package/coverage/lcov-report/index.html +36 -36
- package/coverage/lcov-report/lazy/index.html +131 -0
- package/coverage/lcov-report/lazy/light.ts.html +172 -0
- package/coverage/lcov-report/lazy/promise.ts.html +241 -0
- package/coverage/lcov-report/lazy/singleton.ts.html +181 -0
- package/coverage/lcov-report/logger/batch.ts.html +112 -0
- package/coverage/lcov-report/logger/console.ts.html +241 -0
- package/coverage/lcov-report/logger/index.html +80 -20
- package/coverage/lcov-report/logger/index.ts.html +49 -49
- package/coverage/lcov-report/logger/named.ts.html +226 -0
- package/coverage/lcov-report/logger/proxy.ts.html +172 -0
- package/coverage/lcov-report/math/arrays.ts.html +907 -0
- package/coverage/lcov-report/math/calc.ts.html +292 -0
- package/coverage/lcov-report/math/distribution.ts.html +145 -0
- package/coverage/lcov-report/math/index.html +161 -0
- package/coverage/lcov-report/math/index.ts.html +166 -0
- package/coverage/lcov-report/observing/event.ts.html +358 -0
- package/coverage/lcov-report/observing/index.html +116 -0
- package/coverage/lcov-report/observing/transition.ts.html +634 -0
- package/coverage/lcov-report/queue/index.html +18 -18
- package/coverage/lcov-report/queue/tasks.ts.html +358 -0
- package/coverage/lcov-report/src/__tests__/helpers/expect.ts.html +1 -1
- 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/async/timeout.ts.html +13 -13
- 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 +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 +13 -13
- package/coverage/lcov-report/src/index.html +16 -16
- package/coverage/lcov-report/src/lazy/index.html +1 -1
- package/coverage/lcov-report/src/lazy/light.ts.html +1 -1
- package/coverage/lcov-report/src/lazy/observable.ts.html +1 -1
- package/coverage/lcov-report/src/lazy/promise.ts.html +1 -1
- package/coverage/lcov-report/src/lazy/singleton.ts.html +1 -1
- 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/observersMap.ts.html +1 -1
- package/coverage/lcov-report/src/observingCache.ts.html +1 -1
- package/coverage/lcov-report/src/queue/index.html +24 -9
- package/coverage/lcov-report/src/queue/parallel.ts.html +1 -1
- package/coverage/lcov-report/src/queue/tasks.ts.html +358 -0
- package/coverage/lcov-report/src/tempoCache.ts.html +1 -1
- package/coverage/lcov-report/src/transitionObserver.ts.html +1 -1
- package/coverage/lcov-report/src/types/comparator.ts.html +103 -0
- package/coverage/lcov-report/src/types/getter.ts.html +127 -0
- package/coverage/lcov-report/src/types/index.html +146 -0
- package/coverage/lcov-report/src/types/index.ts.html +112 -0
- package/coverage/lcov-report/src/types.ts.html +5 -5
- 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 +1 -1
- 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/CommonModel.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/FlagModel.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/LoadingModel.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/Model.ts.html +163 -0
- package/coverage/lcov-report/src/viewModels/MultiSelectModel.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/NumberModel.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/SelectModel.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/TextModel.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/Validatable.ts.html +1 -1
- package/coverage/lcov-report/src/viewModels/ValueModel.ts.html +127 -0
- package/coverage/lcov-report/src/viewModels/index.html +39 -9
- package/coverage/lcov-report/src/viewModels/wrappers.ts.html +1 -1
- package/coverage/lcov-report/structures/helpers/enum.ts.html +454 -0
- package/coverage/lcov-report/structures/helpers/index.html +116 -0
- package/coverage/lcov-report/structures/index.html +116 -0
- package/coverage/lcov-report/structures/promiseCache.ts.html +628 -0
- package/coverage/lcov-report/structures/queue/index.html +131 -0
- package/coverage/lcov-report/structures/queue/parallel.ts.html +511 -0
- package/coverage/lcov-report/structures/queue/tasks.ts.html +358 -0
- package/coverage/lcov-report/structures/subscribersMap.ts.html +400 -0
- package/coverage/lcov-report/structures/subscribersPromiseCache.ts.html +562 -0
- package/coverage/lcov-report/structures/tempoCache.ts.html +139 -0
- package/coverage/lcov-report/tasks.ts.html +355 -0
- package/coverage/lcov-report/types/comparator.ts.html +103 -0
- package/coverage/lcov-report/types/getter.ts.html +127 -0
- package/coverage/lcov-report/types/index.html +146 -0
- package/coverage/lcov-report/types/index.ts.html +136 -0
- package/coverage/lcov-report/validation/ValidationErrors.ts.html +163 -0
- package/coverage/lcov-report/validation/creditCard.ts.html +160 -0
- package/coverage/lcov-report/validation/helpers.ts.html +226 -0
- package/coverage/lcov-report/validation/index.html +8 -3
- package/coverage/lcov-report/validation/index.ts.html +13 -8
- package/coverage/lcov-report/validation/types.ts.html +139 -0
- package/coverage/lcov-report/validation/validators.ts.html +250 -0
- package/coverage/lcov-report/validation/wrappers.ts.html +163 -0
- package/coverage/lcov-report/viewModels/CommonModel.ts.html +10 -5
- package/coverage/lcov-report/viewModels/LoadingModel.ts.html +11 -6
- package/coverage/lcov-report/viewModels/Model.ts.html +163 -0
- package/coverage/lcov-report/viewModels/SelectModel.ts.html +121 -116
- package/coverage/lcov-report/viewModels/TextModel.ts.html +16 -11
- package/coverage/lcov-report/viewModels/ValueModel.ts.html +127 -0
- package/coverage/lcov-report/viewModels/index.html +65 -30
- package/coverage/lcov.info +171 -30
- package/lib/queue/tasks.d.ts +17 -0
- package/lib/queue/tasks.d.ts.map +1 -0
- package/lib/queue/tasks.js +76 -0
- package/lib/queue/tasks.js.map +1 -0
- package/lib/viewModels/Model.d.ts +12 -0
- package/lib/viewModels/Model.d.ts.map +1 -0
- package/lib/viewModels/Model.js +23 -0
- package/lib/viewModels/Model.js.map +1 -0
- package/lib/viewModels/ValueModel.d.ts +2 -8
- package/lib/viewModels/ValueModel.d.ts.map +1 -1
- package/lib/viewModels/ValueModel.js +3 -16
- package/lib/viewModels/ValueModel.js.map +1 -1
- package/package.json +1 -1
- package/src/.DS_Store +0 -0
- package/src/queue/__tests__/tasks.test.ts +87 -0
- package/src/queue/tasks.ts +91 -0
- package/src/viewModels/Model.ts +26 -0
- package/src/viewModels/ValueModel.ts +3 -23
- package/src/viewModels/__tests__/common.test.ts +27 -1
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<title>Code coverage report for viewModels/Model.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">viewModels</a> Model.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'>11/11</span>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
<div class='fl pad1y space-right2'>
|
|
33
|
+
<span class="strong">66.67% </span>
|
|
34
|
+
<span class="quiet">Branches</span>
|
|
35
|
+
<span class='fraction'>2/3</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'>5/5</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'>11/11</span>
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
</div>
|
|
54
|
+
<p class="quiet">
|
|
55
|
+
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
+
</p>
|
|
57
|
+
<template id="filterTemplate">
|
|
58
|
+
<div class="quiet">
|
|
59
|
+
Filter:
|
|
60
|
+
<input oninput="onInput()" type="search" id="fileSearch">
|
|
61
|
+
</div>
|
|
62
|
+
</template>
|
|
63
|
+
</div>
|
|
64
|
+
<div class='status-line high'></div>
|
|
65
|
+
<pre><table class="coverage">
|
|
66
|
+
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
|
+
<a name='L2'></a><a href='#L2'>2</a>
|
|
68
|
+
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
|
+
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
|
+
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
+
<a name='L6'></a><a href='#L6'>6</a>
|
|
72
|
+
<a name='L7'></a><a href='#L7'>7</a>
|
|
73
|
+
<a name='L8'></a><a href='#L8'>8</a>
|
|
74
|
+
<a name='L9'></a><a href='#L9'>9</a>
|
|
75
|
+
<a name='L10'></a><a href='#L10'>10</a>
|
|
76
|
+
<a name='L11'></a><a href='#L11'>11</a>
|
|
77
|
+
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
|
+
<a name='L13'></a><a href='#L13'>13</a>
|
|
79
|
+
<a name='L14'></a><a href='#L14'>14</a>
|
|
80
|
+
<a name='L15'></a><a href='#L15'>15</a>
|
|
81
|
+
<a name='L16'></a><a href='#L16'>16</a>
|
|
82
|
+
<a name='L17'></a><a href='#L17'>17</a>
|
|
83
|
+
<a name='L18'></a><a href='#L18'>18</a>
|
|
84
|
+
<a name='L19'></a><a href='#L19'>19</a>
|
|
85
|
+
<a name='L20'></a><a href='#L20'>20</a>
|
|
86
|
+
<a name='L21'></a><a href='#L21'>21</a>
|
|
87
|
+
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
|
+
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
|
+
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
+
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
+
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
|
+
<a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
93
|
+
<span class="cline-any cline-yes">1x</span>
|
|
94
|
+
<span class="cline-any cline-neutral"> </span>
|
|
95
|
+
<span class="cline-any cline-yes">1x</span>
|
|
96
|
+
<span class="cline-any cline-neutral"> </span>
|
|
97
|
+
<span class="cline-any cline-neutral"> </span>
|
|
98
|
+
<span class="cline-any cline-yes">2x</span>
|
|
99
|
+
<span class="cline-any cline-neutral"> </span>
|
|
100
|
+
<span class="cline-any cline-neutral"> </span>
|
|
101
|
+
<span class="cline-any cline-yes">2x</span>
|
|
102
|
+
<span class="cline-any cline-yes">2x</span>
|
|
103
|
+
<span class="cline-any cline-neutral"> </span>
|
|
104
|
+
<span class="cline-any cline-neutral"> </span>
|
|
105
|
+
<span class="cline-any cline-yes">3x</span>
|
|
106
|
+
<span class="cline-any cline-neutral"> </span>
|
|
107
|
+
<span class="cline-any cline-yes">1x</span>
|
|
108
|
+
<span class="cline-any cline-neutral"> </span>
|
|
109
|
+
<span class="cline-any cline-neutral"> </span>
|
|
110
|
+
<span class="cline-any cline-yes">2x</span>
|
|
111
|
+
<span class="cline-any cline-yes">2x</span>
|
|
112
|
+
<span class="cline-any cline-neutral"> </span>
|
|
113
|
+
<span class="cline-any cline-neutral"> </span>
|
|
114
|
+
<span class="cline-any cline-yes">2x</span>
|
|
115
|
+
<span class="cline-any cline-yes">1x</span>
|
|
116
|
+
<span class="cline-any cline-neutral"> </span>
|
|
117
|
+
<span class="cline-any cline-neutral"> </span>
|
|
118
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import type { IValueModel } from './types';
|
|
119
|
+
import { Getter } from '../types';
|
|
120
|
+
|
|
121
|
+
export class Model<T> implements IValueModel<T> {
|
|
122
|
+
private _value: T;
|
|
123
|
+
|
|
124
|
+
private readonly _defaultValue: Getter<T> = null;
|
|
125
|
+
|
|
126
|
+
constructor(v: Getter<T> = <span class="branch-0 cbranch-no" title="branch not covered" >null)</span> {
|
|
127
|
+
this._value = Getter.getValue(v) || null;
|
|
128
|
+
this._defaultValue = v;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
public get value() { return this._value; }
|
|
132
|
+
public set value(v: T) {
|
|
133
|
+
this.setValue(v);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
public readonly setValue = (value: T) => {
|
|
137
|
+
this._value = value;
|
|
138
|
+
};
|
|
139
|
+
|
|
140
|
+
public readonly reset = () => {
|
|
141
|
+
this.setValue(Getter.getValue(this._defaultValue));
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
</pre></td></tr></table></pre>
|
|
145
|
+
|
|
146
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
147
|
+
</div><!-- /wrapper -->
|
|
148
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
149
|
+
Code coverage generated by
|
|
150
|
+
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
151
|
+
at 2022-11-16T15:21:12.153Z
|
|
152
|
+
</div>
|
|
153
|
+
<script src="../prettify.js"></script>
|
|
154
|
+
<script>
|
|
155
|
+
window.onload = function () {
|
|
156
|
+
prettyPrint();
|
|
157
|
+
};
|
|
158
|
+
</script>
|
|
159
|
+
<script src="../sorter.js"></script>
|
|
160
|
+
<script src="../block-navigation.js"></script>
|
|
161
|
+
</body>
|
|
162
|
+
</html>
|
|
163
|
+
|
|
@@ -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">33.33% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>22/66</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">8.33% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>1/12</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">7.69% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>2/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">36.07% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>22/61</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -54,8 +54,14 @@
|
|
|
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
|
-
<div class='status-line
|
|
64
|
+
<div class='status-line low'></div>
|
|
59
65
|
<pre><table class="coverage">
|
|
60
66
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
61
67
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -209,38 +215,38 @@
|
|
|
209
215
|
<a name='L150'></a><a href='#L150'>150</a>
|
|
210
216
|
<a name='L151'></a><a href='#L151'>151</a>
|
|
211
217
|
<a name='L152'></a><a href='#L152'>152</a>
|
|
212
|
-
<a name='L153'></a><a href='#L153'>153</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
213
|
-
<span class="cline-any cline-yes">
|
|
214
|
-
<span class="cline-any cline-yes">
|
|
215
|
-
<span class="cline-any cline-yes">
|
|
218
|
+
<a name='L153'></a><a href='#L153'>153</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
219
|
+
<span class="cline-any cline-yes">1x</span>
|
|
220
|
+
<span class="cline-any cline-yes">1x</span>
|
|
221
|
+
<span class="cline-any cline-yes">1x</span>
|
|
216
222
|
<span class="cline-any cline-neutral"> </span>
|
|
217
|
-
<span class="cline-any cline-yes">
|
|
223
|
+
<span class="cline-any cline-yes">1x</span>
|
|
218
224
|
<span class="cline-any cline-neutral"> </span>
|
|
219
|
-
<span class="cline-any cline-yes">
|
|
225
|
+
<span class="cline-any cline-yes">1x</span>
|
|
220
226
|
<span class="cline-any cline-neutral"> </span>
|
|
221
|
-
<span class="cline-any cline-yes">
|
|
227
|
+
<span class="cline-any cline-yes">1x</span>
|
|
222
228
|
<span class="cline-any cline-neutral"> </span>
|
|
223
|
-
<span class="cline-any cline-yes">
|
|
229
|
+
<span class="cline-any cline-yes">1x</span>
|
|
224
230
|
<span class="cline-any cline-neutral"> </span>
|
|
225
231
|
<span class="cline-any cline-neutral"> </span>
|
|
226
232
|
<span class="cline-any cline-neutral"> </span>
|
|
227
|
-
<span class="cline-any cline-yes">
|
|
228
|
-
<span class="cline-any cline-yes">
|
|
233
|
+
<span class="cline-any cline-yes">1x</span>
|
|
234
|
+
<span class="cline-any cline-yes">1x</span>
|
|
229
235
|
<span class="cline-any cline-neutral"> </span>
|
|
230
|
-
<span class="cline-any cline-yes">
|
|
236
|
+
<span class="cline-any cline-yes">1x</span>
|
|
231
237
|
<span class="cline-any cline-neutral"> </span>
|
|
232
|
-
<span class="cline-any cline-yes">
|
|
238
|
+
<span class="cline-any cline-yes">1x</span>
|
|
233
239
|
<span class="cline-any cline-neutral"> </span>
|
|
234
240
|
<span class="cline-any cline-neutral"> </span>
|
|
235
241
|
<span class="cline-any cline-neutral"> </span>
|
|
236
|
-
<span class="cline-any cline-yes">
|
|
242
|
+
<span class="cline-any cline-yes">1x</span>
|
|
237
243
|
<span class="cline-any cline-neutral"> </span>
|
|
238
244
|
<span class="cline-any cline-neutral"> </span>
|
|
239
|
-
<span class="cline-any cline-yes">
|
|
245
|
+
<span class="cline-any cline-yes">1x</span>
|
|
240
246
|
<span class="cline-any cline-neutral"> </span>
|
|
241
|
-
<span class="cline-any cline-yes">
|
|
247
|
+
<span class="cline-any cline-yes">1x</span>
|
|
242
248
|
<span class="cline-any cline-neutral"> </span>
|
|
243
|
-
<span class="cline-any cline-yes">
|
|
249
|
+
<span class="cline-any cline-yes">1x</span>
|
|
244
250
|
<span class="cline-any cline-neutral"> </span>
|
|
245
251
|
<span class="cline-any cline-neutral"> </span>
|
|
246
252
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -248,121 +254,121 @@
|
|
|
248
254
|
<span class="cline-any cline-neutral"> </span>
|
|
249
255
|
<span class="cline-any cline-neutral"> </span>
|
|
250
256
|
<span class="cline-any cline-neutral"> </span>
|
|
251
|
-
<span class="cline-any cline-yes">
|
|
252
|
-
<span class="cline-any cline-yes">
|
|
257
|
+
<span class="cline-any cline-yes">1x</span>
|
|
258
|
+
<span class="cline-any cline-yes">1x</span>
|
|
253
259
|
<span class="cline-any cline-neutral"> </span>
|
|
254
260
|
<span class="cline-any cline-neutral"> </span>
|
|
255
261
|
<span class="cline-any cline-no"> </span>
|
|
256
262
|
<span class="cline-any cline-neutral"> </span>
|
|
257
263
|
<span class="cline-any cline-neutral"> </span>
|
|
258
264
|
<span class="cline-any cline-neutral"> </span>
|
|
259
|
-
<span class="cline-any cline-
|
|
265
|
+
<span class="cline-any cline-no"> </span>
|
|
260
266
|
<span class="cline-any cline-neutral"> </span>
|
|
261
267
|
<span class="cline-any cline-neutral"> </span>
|
|
262
268
|
<span class="cline-any cline-neutral"> </span>
|
|
263
|
-
<span class="cline-any cline-
|
|
269
|
+
<span class="cline-any cline-no"> </span>
|
|
264
270
|
<span class="cline-any cline-neutral"> </span>
|
|
265
271
|
<span class="cline-any cline-neutral"> </span>
|
|
266
272
|
<span class="cline-any cline-neutral"> </span>
|
|
267
273
|
<span class="cline-any cline-neutral"> </span>
|
|
268
|
-
<span class="cline-any cline-
|
|
274
|
+
<span class="cline-any cline-no"> </span>
|
|
269
275
|
<span class="cline-any cline-neutral"> </span>
|
|
270
276
|
<span class="cline-any cline-neutral"> </span>
|
|
271
277
|
<span class="cline-any cline-no"> </span>
|
|
272
278
|
<span class="cline-any cline-neutral"> </span>
|
|
273
|
-
<span class="cline-any cline-
|
|
274
|
-
<span class="cline-any cline-
|
|
279
|
+
<span class="cline-any cline-no"> </span>
|
|
280
|
+
<span class="cline-any cline-no"> </span>
|
|
275
281
|
<span class="cline-any cline-neutral"> </span>
|
|
276
282
|
<span class="cline-any cline-neutral"> </span>
|
|
277
283
|
<span class="cline-any cline-no"> </span>
|
|
278
284
|
<span class="cline-any cline-neutral"> </span>
|
|
279
|
-
<span class="cline-any cline-
|
|
280
|
-
<span class="cline-any cline-
|
|
281
|
-
<span class="cline-any cline-
|
|
285
|
+
<span class="cline-any cline-no"> </span>
|
|
286
|
+
<span class="cline-any cline-no"> </span>
|
|
287
|
+
<span class="cline-any cline-no"> </span>
|
|
282
288
|
<span class="cline-any cline-neutral"> </span>
|
|
283
289
|
<span class="cline-any cline-neutral"> </span>
|
|
284
290
|
<span class="cline-any cline-neutral"> </span>
|
|
285
291
|
<span class="cline-any cline-neutral"> </span>
|
|
286
|
-
<span class="cline-any cline-
|
|
287
|
-
<span class="cline-any cline-
|
|
292
|
+
<span class="cline-any cline-no"> </span>
|
|
293
|
+
<span class="cline-any cline-no"> </span>
|
|
288
294
|
<span class="cline-any cline-neutral"> </span>
|
|
289
295
|
<span class="cline-any cline-neutral"> </span>
|
|
290
296
|
<span class="cline-any cline-neutral"> </span>
|
|
291
|
-
<span class="cline-any cline-
|
|
292
|
-
<span class="cline-any cline-
|
|
293
|
-
<span class="cline-any cline-
|
|
297
|
+
<span class="cline-any cline-no"> </span>
|
|
298
|
+
<span class="cline-any cline-no"> </span>
|
|
299
|
+
<span class="cline-any cline-no"> </span>
|
|
294
300
|
<span class="cline-any cline-neutral"> </span>
|
|
295
301
|
<span class="cline-any cline-neutral"> </span>
|
|
296
302
|
<span class="cline-any cline-neutral"> </span>
|
|
297
303
|
<span class="cline-any cline-no"> </span>
|
|
298
304
|
<span class="cline-any cline-neutral"> </span>
|
|
299
305
|
<span class="cline-any cline-neutral"> </span>
|
|
300
|
-
<span class="cline-any cline-
|
|
306
|
+
<span class="cline-any cline-no"> </span>
|
|
301
307
|
<span class="cline-any cline-neutral"> </span>
|
|
302
308
|
<span class="cline-any cline-neutral"> </span>
|
|
303
309
|
<span class="cline-any cline-neutral"> </span>
|
|
304
|
-
<span class="cline-any cline-
|
|
310
|
+
<span class="cline-any cline-no"> </span>
|
|
305
311
|
<span class="cline-any cline-neutral"> </span>
|
|
306
312
|
<span class="cline-any cline-neutral"> </span>
|
|
307
313
|
<span class="cline-any cline-neutral"> </span>
|
|
308
|
-
<span class="cline-any cline-yes">
|
|
309
|
-
<span class="cline-any cline-
|
|
314
|
+
<span class="cline-any cline-yes">1x</span>
|
|
315
|
+
<span class="cline-any cline-no"> </span>
|
|
310
316
|
<span class="cline-any cline-no"> </span>
|
|
311
317
|
<span class="cline-any cline-neutral"> </span>
|
|
312
318
|
<span class="cline-any cline-neutral"> </span>
|
|
313
|
-
<span class="cline-any cline-
|
|
319
|
+
<span class="cline-any cline-no"> </span>
|
|
314
320
|
<span class="cline-any cline-neutral"> </span>
|
|
315
|
-
<span class="cline-any cline-
|
|
321
|
+
<span class="cline-any cline-no"> </span>
|
|
316
322
|
<span class="cline-any cline-no"> </span>
|
|
317
323
|
<span class="cline-any cline-neutral"> </span>
|
|
318
324
|
<span class="cline-any cline-neutral"> </span>
|
|
319
325
|
<span class="cline-any cline-neutral"> </span>
|
|
320
|
-
<span class="cline-any cline-
|
|
321
|
-
<span class="cline-any cline-
|
|
326
|
+
<span class="cline-any cline-no"> </span>
|
|
327
|
+
<span class="cline-any cline-no"> </span>
|
|
322
328
|
<span class="cline-any cline-neutral"> </span>
|
|
323
|
-
<span class="cline-any cline-
|
|
324
|
-
<span class="cline-any cline-
|
|
329
|
+
<span class="cline-any cline-no"> </span>
|
|
330
|
+
<span class="cline-any cline-no"> </span>
|
|
325
331
|
<span class="cline-any cline-neutral"> </span>
|
|
326
332
|
<span class="cline-any cline-neutral"> </span>
|
|
327
|
-
<span class="cline-any cline-
|
|
333
|
+
<span class="cline-any cline-no"> </span>
|
|
328
334
|
<span class="cline-any cline-neutral"> </span>
|
|
329
335
|
<span class="cline-any cline-neutral"> </span>
|
|
330
336
|
<span class="cline-any cline-neutral"> </span>
|
|
331
|
-
<span class="cline-any cline-yes">6x</span>
|
|
332
|
-
<span class="cline-any cline-yes">1x</span>
|
|
333
337
|
<span class="cline-any cline-yes">1x</span>
|
|
338
|
+
<span class="cline-any cline-no"> </span>
|
|
339
|
+
<span class="cline-any cline-no"> </span>
|
|
334
340
|
<span class="cline-any cline-neutral"> </span>
|
|
335
341
|
<span class="cline-any cline-neutral"> </span>
|
|
336
342
|
<span class="cline-any cline-neutral"> </span>
|
|
337
|
-
<span class="cline-any cline-
|
|
343
|
+
<span class="cline-any cline-no"> </span>
|
|
338
344
|
<span class="cline-any cline-neutral"> </span>
|
|
339
|
-
<span class="cline-any cline-
|
|
345
|
+
<span class="cline-any cline-no"> </span>
|
|
340
346
|
<span class="cline-any cline-neutral"> </span>
|
|
341
|
-
<span class="cline-any cline-
|
|
347
|
+
<span class="cline-any cline-no"> </span>
|
|
342
348
|
<span class="cline-any cline-neutral"> </span>
|
|
343
349
|
<span class="cline-any cline-neutral"> </span>
|
|
344
350
|
<span class="cline-any cline-neutral"> </span>
|
|
345
|
-
<span class="cline-any cline-
|
|
346
|
-
<span class="cline-any cline-
|
|
347
|
-
<span class="cline-any cline-
|
|
351
|
+
<span class="cline-any cline-no"> </span>
|
|
352
|
+
<span class="cline-any cline-no"> </span>
|
|
353
|
+
<span class="cline-any cline-no"> </span>
|
|
348
354
|
<span class="cline-any cline-neutral"> </span>
|
|
349
355
|
<span class="cline-any cline-neutral"> </span>
|
|
350
356
|
<span class="cline-any cline-neutral"> </span>
|
|
351
|
-
<span class="cline-any cline-
|
|
357
|
+
<span class="cline-any cline-no"> </span>
|
|
352
358
|
<span class="cline-any cline-neutral"> </span>
|
|
353
359
|
<span class="cline-any cline-neutral"> </span>
|
|
354
|
-
<span class="cline-any cline-
|
|
360
|
+
<span class="cline-any cline-no"> </span>
|
|
355
361
|
<span class="cline-any cline-neutral"> </span>
|
|
356
362
|
<span class="cline-any cline-neutral"> </span>
|
|
357
363
|
<span class="cline-any cline-neutral"> </span>
|
|
358
364
|
<span class="cline-any cline-neutral"> </span>
|
|
359
|
-
<span class="cline-any cline-yes">
|
|
365
|
+
<span class="cline-any cline-yes">1x</span>
|
|
360
366
|
<span class="cline-any cline-neutral"> </span>
|
|
361
|
-
<span class="cline-any cline-yes">
|
|
367
|
+
<span class="cline-any cline-yes">1x</span>
|
|
362
368
|
<span class="cline-any cline-neutral"> </span>
|
|
363
369
|
<span class="cline-any cline-neutral"> </span>
|
|
364
370
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { observable, computed, makeObservable, reaction, action } from 'mobx';
|
|
365
|
-
import { createLazy } from '../lazy
|
|
371
|
+
import { createLazy } from '../lazy/light';
|
|
366
372
|
import { FlagModel, ILabeledFlagModel } from './FlagModel';
|
|
367
373
|
import { ValidatableModel } from './Validatable';
|
|
368
374
|
import { IValueModel } from './types';
|
|
@@ -379,14 +385,14 @@ export class Select<T = any> extends ValidatableModel<T> implements
|
|
|
379
385
|
private _indexLocked = false;
|
|
380
386
|
private _initialIndex: number = null;
|
|
381
387
|
|
|
382
|
-
private readonly _flags = createLazy(()
|
|
388
|
+
private readonly _flags = createLazy(<span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >this.createFlags())</span>;
|
|
383
389
|
|
|
384
390
|
public readonly opened = new FlagModel();
|
|
385
391
|
|
|
386
392
|
constructor(
|
|
387
393
|
items: Getter<readonly T[]>,
|
|
388
394
|
private readonly _accessor: (item: T) => string,
|
|
389
|
-
initialIndex: number = 0
|
|
395
|
+
initialIndex: number = <span class="branch-0 cbranch-no" title="branch not covered" >0,</span>
|
|
390
396
|
) {
|
|
391
397
|
super();
|
|
392
398
|
|
|
@@ -407,110 +413,110 @@ export class Select<T = any> extends ValidatableModel<T> implements
|
|
|
407
413
|
<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>}
|
|
408
414
|
|
|
409
415
|
// @computed
|
|
410
|
-
get
|
|
411
|
-
return this.items.map(i
|
|
416
|
+
<span class="fstat-no" title="function not covered" > get v</span>alues(): readonly string[] {
|
|
417
|
+
<span class="cstat-no" title="statement not covered" > return this.items.map(<span class="fstat-no" title="function not covered" >i </span>=> <span class="cstat-no" title="statement not covered" >this._accessor(i))</span>;</span>
|
|
412
418
|
}
|
|
413
419
|
|
|
414
|
-
get
|
|
415
|
-
return this._flags.value
|
|
420
|
+
<span class="fstat-no" title="function not covered" > get f</span>lags() {
|
|
421
|
+
<span class="cstat-no" title="statement not covered" > return this._flags.value;</span>
|
|
416
422
|
}
|
|
417
423
|
|
|
418
424
|
// @computed
|
|
419
|
-
get
|
|
420
|
-
return Getter.getValue(this._items)
|
|
425
|
+
<span class="fstat-no" title="function not covered" > get i</span>tems(): readonly T[] {
|
|
426
|
+
<span class="cstat-no" title="statement not covered" > return Getter.getValue(this._items);</span>
|
|
421
427
|
}
|
|
422
428
|
|
|
423
429
|
<span class="fstat-no" title="function not covered" > get v</span>alue() { <span class="cstat-no" title="statement not covered" >return this.selectedValue; </span>}
|
|
424
|
-
get
|
|
425
|
-
const vs = this.values
|
|
426
|
-
return vs.length ? vs[this._index] : null
|
|
430
|
+
<span class="fstat-no" title="function not covered" > get s</span>electedValue() {
|
|
431
|
+
const vs = <span class="cstat-no" title="statement not covered" >this.values;</span>
|
|
432
|
+
<span class="cstat-no" title="statement not covered" > return vs.length ? vs[this._index] : null;</span>
|
|
427
433
|
}
|
|
428
434
|
|
|
429
435
|
<span class="fstat-no" title="function not covered" > set v</span>alue(v: string) { <span class="cstat-no" title="statement not covered" >this.selectedValue = v; </span>}
|
|
430
|
-
set
|
|
431
|
-
const index = this.values.indexOf(value)
|
|
432
|
-
if (index >= 0) {
|
|
433
|
-
this.index = index
|
|
436
|
+
<span class="fstat-no" title="function not covered" > set s</span>electedValue(value: string) {
|
|
437
|
+
const index = <span class="cstat-no" title="statement not covered" >this.values.indexOf(value);</span>
|
|
438
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (index >= 0) {</span>
|
|
439
|
+
<span class="cstat-no" title="statement not covered" > this.index = index;</span>
|
|
434
440
|
}
|
|
435
441
|
}
|
|
436
442
|
|
|
437
|
-
get
|
|
438
|
-
const items = this.items
|
|
439
|
-
|
|
443
|
+
<span class="fstat-no" title="function not covered" > get s</span>electedItem(): T {
|
|
444
|
+
const items = <span class="cstat-no" title="statement not covered" >this.items;</span>
|
|
445
|
+
<span class="cstat-no" title="statement not covered" > return items.length ? items[this._index] : null;</span>
|
|
440
446
|
}
|
|
441
447
|
|
|
442
|
-
set
|
|
443
|
-
const index = this.items.indexOf(item)
|
|
444
|
-
if (index >= 0) {
|
|
445
|
-
this.index = index
|
|
448
|
+
<span class="fstat-no" title="function not covered" > set s</span>electedItem(item: T) {
|
|
449
|
+
const index = <span class="cstat-no" title="statement not covered" >this.items.indexOf(item);</span>
|
|
450
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (index >= 0) {</span>
|
|
451
|
+
<span class="cstat-no" title="statement not covered" > this.index = index;</span>
|
|
446
452
|
}
|
|
447
453
|
}
|
|
448
454
|
|
|
449
455
|
<span class="fstat-no" title="function not covered" > get i</span>sDefault() { <span class="cstat-no" title="statement not covered" >return this._index === this._initialIndex; </span>}
|
|
450
456
|
|
|
451
|
-
get
|
|
452
|
-
return this._index
|
|
457
|
+
<span class="fstat-no" title="function not covered" > get i</span>ndex() {
|
|
458
|
+
<span class="cstat-no" title="statement not covered" > return this._index;</span>
|
|
453
459
|
}
|
|
454
460
|
|
|
455
|
-
set
|
|
456
|
-
this.setIndex(val)
|
|
461
|
+
<span class="fstat-no" title="function not covered" > set i</span>ndex(val: number) {
|
|
462
|
+
<span class="cstat-no" title="statement not covered" > this.setIndex(val);</span>
|
|
457
463
|
}
|
|
458
464
|
|
|
459
465
|
// @action
|
|
460
|
-
public setIndex = (
|
|
461
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (this._indexLocked) {
|
|
466
|
+
public setIndex = <span class="fstat-no" title="function not covered" >(v</span>al: number) => {
|
|
467
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this._indexLocked) {</span>
|
|
462
468
|
<span class="cstat-no" title="statement not covered" > return;</span>
|
|
463
469
|
}
|
|
464
470
|
|
|
465
|
-
this._index = val
|
|
471
|
+
<span class="cstat-no" title="statement not covered" > this._index = val;</span>
|
|
466
472
|
|
|
467
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (this._validateOnChange) {
|
|
473
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this._validateOnChange) {</span>
|
|
468
474
|
<span class="cstat-no" title="statement not covered" > this.validate();</span>
|
|
469
475
|
}
|
|
470
476
|
|
|
471
477
|
// update all flags to be properly selected
|
|
472
|
-
try {
|
|
473
|
-
this._indexLocked = true
|
|
478
|
+
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
479
|
+
<span class="cstat-no" title="statement not covered" > this._indexLocked = true;</span>
|
|
474
480
|
|
|
475
|
-
if (this._flags.hasValue) {
|
|
476
|
-
this._flags.value.forEach((f
|
|
481
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this._flags.hasValue) {</span>
|
|
482
|
+
<span class="cstat-no" title="statement not covered" > this._flags.value.forEach(<span class="fstat-no" title="function not covered" >(f</span>, i) => <span class="cstat-no" title="statement not covered" >f.value = (i === this._index))</span>;</span>
|
|
477
483
|
}
|
|
478
484
|
} finally {
|
|
479
|
-
this._indexLocked = false
|
|
485
|
+
<span class="cstat-no" title="statement not covered" > this._indexLocked = false;</span>
|
|
480
486
|
}
|
|
481
487
|
};
|
|
482
488
|
|
|
483
|
-
public reset = ()
|
|
484
|
-
super.reset()
|
|
485
|
-
this.index = this._initialIndex
|
|
489
|
+
public reset = <span class="fstat-no" title="function not covered" >() =</span>> {
|
|
490
|
+
<span class="cstat-no" title="statement not covered" > super.reset();</span>
|
|
491
|
+
<span class="cstat-no" title="statement not covered" > this.index = this._initialIndex;</span>
|
|
486
492
|
};
|
|
487
493
|
|
|
488
|
-
private createFlags() {
|
|
489
|
-
const flags: ReadonlyArray<ILabeledFlagModel> = this.items
|
|
490
|
-
.map((
|
|
491
|
-
const flag: ILabeledFlagModel = withLabel(
|
|
494
|
+
private <span class="fstat-no" title="function not covered" >createFlags(</span>) {
|
|
495
|
+
const flags: ReadonlyArray<ILabeledFlagModel> = <span class="cstat-no" title="statement not covered" >this.items</span>
|
|
496
|
+
.map(<span class="fstat-no" title="function not covered" >(i</span>tem, index) => {
|
|
497
|
+
const flag: ILabeledFlagModel = <span class="cstat-no" title="statement not covered" >withLabel(</span>
|
|
492
498
|
new FlagModel(index === this.index),
|
|
493
|
-
()
|
|
499
|
+
<span class="fstat-no" title="function not covered" > () =</span>> <span class="cstat-no" title="statement not covered" >this._accessor(item),</span>
|
|
494
500
|
);
|
|
495
501
|
|
|
496
502
|
// react on every flag is changed directly
|
|
497
|
-
reaction(()
|
|
498
|
-
if (isSelected) {
|
|
499
|
-
this.index = index
|
|
503
|
+
<span class="cstat-no" title="statement not covered" > reaction(<span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >flag.value,</span> <span class="fstat-no" title="function not covered" >isSelected </span>=> {</span>
|
|
504
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (isSelected) {</span>
|
|
505
|
+
<span class="cstat-no" title="statement not covered" > this.index = index;</span>
|
|
500
506
|
}
|
|
501
507
|
});
|
|
502
508
|
|
|
503
|
-
return flag
|
|
509
|
+
<span class="cstat-no" title="statement not covered" > return flag;</span>
|
|
504
510
|
});
|
|
505
511
|
|
|
506
|
-
return flags
|
|
512
|
+
<span class="cstat-no" title="statement not covered" > return flags;</span>
|
|
507
513
|
}
|
|
508
514
|
}
|
|
509
515
|
|
|
510
516
|
|
|
511
517
|
export class SelectString<T extends string = string> extends Select<T> {
|
|
512
518
|
constructor(items: readonly T[], initialIndex: number = 0) {
|
|
513
|
-
super(items, v
|
|
519
|
+
super(items, <span class="fstat-no" title="function not covered" >v </span>=> <span class="cstat-no" title="statement not covered" >v,</span> initialIndex);
|
|
514
520
|
}
|
|
515
521
|
}
|
|
516
522
|
</pre></td></tr></table></pre>
|
|
@@ -519,10 +525,9 @@ export class SelectString<T extends string = string> extends Select<T&g
|
|
|
519
525
|
</div><!-- /wrapper -->
|
|
520
526
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
521
527
|
Code coverage generated by
|
|
522
|
-
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
523
|
-
at
|
|
528
|
+
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
529
|
+
at 2022-11-16T15:21:12.153Z
|
|
524
530
|
</div>
|
|
525
|
-
</div>
|
|
526
531
|
<script src="../prettify.js"></script>
|
|
527
532
|
<script>
|
|
528
533
|
window.onload = function () {
|