@madgex/design-system 1.44.3 → 1.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/launch.json +27 -7
- package/__tests__/unit/src/components/multiselect.spec.js +91 -0
- package/coverage/cobertura-coverage.xml +245 -136
- package/coverage/components/accordion/accordion.js.html +1 -1
- package/coverage/components/accordion/index.html +1 -1
- package/coverage/components/inputs/combobox/vue-components/Combobox.vue.html +3 -18
- package/coverage/components/inputs/combobox/vue-components/index.html +1 -1
- package/coverage/components/inputs/multi-select/vue-components/MultiSelect.vue.html +202 -0
- package/coverage/components/inputs/multi-select/vue-components/MultiSelectCheckbox.vue.html +286 -0
- package/coverage/components/inputs/multi-select/vue-components/MultiSelectCheckboxGroup.vue.html +298 -0
- package/coverage/components/inputs/multi-select/vue-components/index.html +140 -0
- package/coverage/components/modal/index.html +1 -1
- package/coverage/components/modal/modal.js.html +1 -1
- package/coverage/components/notification/index.html +1 -1
- package/coverage/components/notification/notification.js.html +1 -1
- package/coverage/components/popover/index.html +1 -1
- package/coverage/components/popover/popover.js.html +1 -1
- package/coverage/components/switch-state/index.html +1 -1
- package/coverage/components/switch-state/switch-state.js.html +1 -1
- package/coverage/components/tabs/index.html +1 -1
- package/coverage/components/tabs/tabs.js.html +1 -1
- package/coverage/index.html +33 -33
- package/coverage/js/common.js.html +1 -1
- package/coverage/js/fractal-scripts/combobox.js.html +7 -10
- package/coverage/js/fractal-scripts/index.html +22 -7
- package/coverage/js/fractal-scripts/multiselect.js.html +190 -0
- package/coverage/js/fractal-scripts/notification.js.html +1 -1
- package/coverage/js/fractal-scripts/switch-state.js.html +1 -1
- package/coverage/js/index-fractal.js.html +10 -4
- package/coverage/js/index-polyfills.js.html +1 -1
- package/coverage/js/index-vue.js.html +73 -7
- package/coverage/js/index.html +18 -18
- package/coverage/js/index.js.html +1 -1
- package/coverage/js/polyfills/closest.js.html +1 -1
- package/coverage/js/polyfills/index.html +1 -1
- package/coverage/js/polyfills/remove.js.html +1 -1
- package/coverage/tokens/_config.js.html +1 -1
- package/coverage/tokens/index.html +1 -1
- package/dist/_tokens/css/_tokens.css +1 -1
- package/dist/_tokens/js/_tokens-module.js +1 -1
- package/dist/_tokens/scss/_tokens.scss +1 -1
- package/dist/assets/icons.json +1 -1
- package/dist/css/index.css +1 -1
- package/dist/js/index.js +6 -6
- package/gulpfile.js +1 -1
- package/package.json +1 -1
- package/src/components/button/button.scss +0 -8
- package/src/components/inputs/_form-elements.scss +129 -0
- package/src/components/inputs/_label/_macro.njk +3 -0
- package/src/components/inputs/_label/_template.njk +37 -0
- package/src/components/inputs/_message/_macro.njk +3 -0
- package/src/components/inputs/_message/_template.njk +24 -0
- package/src/components/inputs/checkbox/README.md +4 -0
- package/src/components/inputs/checkbox/_template.njk +37 -19
- package/src/components/inputs/checkbox/checkbox.config.js +2 -3
- package/src/components/inputs/checkbox/checkbox.njk +10 -8
- package/src/components/inputs/combobox/README.md +5 -1
- package/src/components/inputs/combobox/_template.njk +37 -18
- package/src/components/inputs/combobox/combobox.scss +3 -31
- package/src/components/inputs/combobox/vue-components/Combobox.vue +1 -6
- package/src/components/inputs/combobox/vue-components/ComboboxInput.vue +2 -2
- package/src/components/inputs/input/_template.njk +16 -49
- package/src/components/inputs/input/input.njk +18 -16
- package/src/components/inputs/multi-select/README.md +4 -0
- package/src/components/inputs/multi-select/_template.njk +28 -14
- package/src/components/inputs/multi-select/multi-select.config.js +28 -0
- package/src/components/inputs/multi-select/multi-select.njk +10 -6
- package/src/components/inputs/multi-select/multi-select.scss +16 -26
- package/src/components/inputs/multi-select/vue-components/MultiSelect.vue +41 -0
- package/src/components/inputs/multi-select/vue-components/MultiSelectCheckbox.vue +69 -0
- package/src/components/inputs/multi-select/vue-components/MultiSelectCheckboxGroup.vue +73 -0
- package/src/components/inputs/radio/README.md +4 -0
- package/src/components/inputs/radio/_template.njk +36 -18
- package/src/components/inputs/radio/radio.config.js +7 -28
- package/src/components/inputs/radio/radio.njk +10 -8
- package/src/helpers/animation/README.md +20 -0
- package/src/helpers/animation/animation.njk +8 -0
- package/src/js/fractal-scripts/combobox.js +2 -3
- package/src/js/fractal-scripts/multiselect.js +37 -0
- package/src/js/index-fractal.js +2 -0
- package/src/js/index-vue.js +23 -1
- package/src/layout/containers/04-highlighted-containers.njk +3 -0
- package/src/layout/containers/highlighted-containers.config.json +3 -0
- package/src/layout/forms/README.md +1 -0
- package/src/layout/forms/forms.config.js +74 -0
- package/src/layout/forms/forms.njk +80 -0
- package/src/scss/components/__index.scss +2 -4
- package/src/scss/core/_containers.scss +5 -0
- package/src/scss/helpers/__index.scss +2 -1
- package/src/scss/helpers/_animation.scss +15 -0
- package/src/scss/import.scss +1 -1
- package/coverage/components/inputs/combobox/combobox.js.html +0 -139
- package/coverage/components/inputs/combobox/index.html +0 -110
- package/src/components/inputs/checkbox/checkbox.scss +0 -69
- package/src/components/inputs/combobox/combobox.js +0 -20
- package/src/components/inputs/input/input.scss +0 -89
- package/src/components/inputs/radio/radio.scss +0 -53
|
@@ -261,13 +261,7 @@
|
|
|
261
261
|
<a name='L203'></a><a href='#L203'>203</a>
|
|
262
262
|
<a name='L204'></a><a href='#L204'>204</a>
|
|
263
263
|
<a name='L205'></a><a href='#L205'>205</a>
|
|
264
|
-
<a name='L206'></a><a href='#L206'>206</a>
|
|
265
|
-
<a name='L207'></a><a href='#L207'>207</a>
|
|
266
|
-
<a name='L208'></a><a href='#L208'>208</a>
|
|
267
|
-
<a name='L209'></a><a href='#L209'>209</a>
|
|
268
|
-
<a name='L210'></a><a href='#L210'>210</a>
|
|
269
|
-
<a name='L211'></a><a href='#L211'>211</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
270
|
-
<span class="cline-any cline-neutral"> </span>
|
|
264
|
+
<a name='L206'></a><a href='#L206'>206</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
271
265
|
<span class="cline-any cline-neutral"> </span>
|
|
272
266
|
<span class="cline-any cline-neutral"> </span>
|
|
273
267
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -339,10 +333,6 @@
|
|
|
339
333
|
<span class="cline-any cline-neutral"> </span>
|
|
340
334
|
<span class="cline-any cline-neutral"> </span>
|
|
341
335
|
<span class="cline-any cline-neutral"> </span>
|
|
342
|
-
<span class="cline-any cline-neutral"> </span>
|
|
343
|
-
<span class="cline-any cline-neutral"> </span>
|
|
344
|
-
<span class="cline-any cline-neutral"> </span>
|
|
345
|
-
<span class="cline-any cline-neutral"> </span>
|
|
346
336
|
<span class="cline-any cline-no"> </span>
|
|
347
337
|
<span class="cline-any cline-neutral"> </span>
|
|
348
338
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -478,7 +468,7 @@
|
|
|
478
468
|
<span class="cline-any cline-neutral"> </span>
|
|
479
469
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><template>
|
|
480
470
|
<div
|
|
481
|
-
class="mds-combobox
|
|
471
|
+
class="mds-combobox"
|
|
482
472
|
:class="{ 'mds-combobox--active': !listBoxHidden }"
|
|
483
473
|
@keydown.down="hiddenGuard(onKeyDown)"
|
|
484
474
|
@keydown.up="hiddenGuard(onKeyUp)"
|
|
@@ -487,7 +477,6 @@
|
|
|
487
477
|
@keydown.esc="makeInactive"
|
|
488
478
|
@keydown.enter="chooseOption"
|
|
489
479
|
>
|
|
490
|
-
<label class="mds-combobox__label" :id="labelId" :for="comboboxid">{{ labeltext }}</label>
|
|
491
480
|
<ComboboxInput
|
|
492
481
|
@focus="makeActive"
|
|
493
482
|
@blur="onInputBlur"
|
|
@@ -535,10 +524,6 @@ export default {
|
|
|
535
524
|
type: String,
|
|
536
525
|
required: true,
|
|
537
526
|
},
|
|
538
|
-
labeltext: {
|
|
539
|
-
type: String,
|
|
540
|
-
required: true,
|
|
541
|
-
},
|
|
542
527
|
placeholder: {
|
|
543
528
|
type: String,
|
|
544
529
|
default: 'Please combobox',
|
|
@@ -693,7 +678,7 @@ export default {
|
|
|
693
678
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
694
679
|
Code coverage generated by
|
|
695
680
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
696
|
-
at
|
|
681
|
+
at Tue Apr 21 2020 12:11:23 GMT+0100 (British Summer Time)
|
|
697
682
|
</div>
|
|
698
683
|
</div>
|
|
699
684
|
<script src="../../../../prettify.js"></script>
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
95
95
|
Code coverage generated by
|
|
96
96
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
97
|
-
at
|
|
97
|
+
at Tue Apr 21 2020 12:11:23 GMT+0100 (British Summer Time)
|
|
98
98
|
</div>
|
|
99
99
|
</div>
|
|
100
100
|
<script src="../../../../prettify.js"></script>
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<title>Code coverage report for components/inputs/multi-select/vue-components/MultiSelect.vue</title>
|
|
7
|
+
<meta charset="utf-8" />
|
|
8
|
+
<link rel="stylesheet" href="../../../../prettify.css" />
|
|
9
|
+
<link rel="stylesheet" href="../../../../base.css" />
|
|
10
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
11
|
+
<style type='text/css'>
|
|
12
|
+
.coverage-summary .sorter {
|
|
13
|
+
background-image: url(../../../../sort-arrow-sprite.png);
|
|
14
|
+
}
|
|
15
|
+
</style>
|
|
16
|
+
</head>
|
|
17
|
+
|
|
18
|
+
<body>
|
|
19
|
+
<div class='wrapper'>
|
|
20
|
+
<div class='pad1'>
|
|
21
|
+
<h1><a href="../../../../index.html">All files</a> / <a href="index.html">components/inputs/multi-select/vue-components</a> MultiSelect.vue</h1>
|
|
22
|
+
<div class='clearfix'>
|
|
23
|
+
|
|
24
|
+
<div class='fl pad1y space-right2'>
|
|
25
|
+
<span class="strong">50% </span>
|
|
26
|
+
<span class="quiet">Statements</span>
|
|
27
|
+
<span class='fraction'>2/4</span>
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
<div class='fl pad1y space-right2'>
|
|
32
|
+
<span class="strong">100% </span>
|
|
33
|
+
<span class="quiet">Branches</span>
|
|
34
|
+
<span class='fraction'>0/0</span>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
<div class='fl pad1y space-right2'>
|
|
39
|
+
<span class="strong">33.33% </span>
|
|
40
|
+
<span class="quiet">Functions</span>
|
|
41
|
+
<span class='fraction'>1/3</span>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
<div class='fl pad1y space-right2'>
|
|
46
|
+
<span class="strong">50% </span>
|
|
47
|
+
<span class="quiet">Lines</span>
|
|
48
|
+
<span class='fraction'>2/4</span>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
</div>
|
|
53
|
+
<p class="quiet">
|
|
54
|
+
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.
|
|
55
|
+
</p>
|
|
56
|
+
</div>
|
|
57
|
+
<div class='status-line medium'></div>
|
|
58
|
+
<pre><table class="coverage">
|
|
59
|
+
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
60
|
+
<a name='L2'></a><a href='#L2'>2</a>
|
|
61
|
+
<a name='L3'></a><a href='#L3'>3</a>
|
|
62
|
+
<a name='L4'></a><a href='#L4'>4</a>
|
|
63
|
+
<a name='L5'></a><a href='#L5'>5</a>
|
|
64
|
+
<a name='L6'></a><a href='#L6'>6</a>
|
|
65
|
+
<a name='L7'></a><a href='#L7'>7</a>
|
|
66
|
+
<a name='L8'></a><a href='#L8'>8</a>
|
|
67
|
+
<a name='L9'></a><a href='#L9'>9</a>
|
|
68
|
+
<a name='L10'></a><a href='#L10'>10</a>
|
|
69
|
+
<a name='L11'></a><a href='#L11'>11</a>
|
|
70
|
+
<a name='L12'></a><a href='#L12'>12</a>
|
|
71
|
+
<a name='L13'></a><a href='#L13'>13</a>
|
|
72
|
+
<a name='L14'></a><a href='#L14'>14</a>
|
|
73
|
+
<a name='L15'></a><a href='#L15'>15</a>
|
|
74
|
+
<a name='L16'></a><a href='#L16'>16</a>
|
|
75
|
+
<a name='L17'></a><a href='#L17'>17</a>
|
|
76
|
+
<a name='L18'></a><a href='#L18'>18</a>
|
|
77
|
+
<a name='L19'></a><a href='#L19'>19</a>
|
|
78
|
+
<a name='L20'></a><a href='#L20'>20</a>
|
|
79
|
+
<a name='L21'></a><a href='#L21'>21</a>
|
|
80
|
+
<a name='L22'></a><a href='#L22'>22</a>
|
|
81
|
+
<a name='L23'></a><a href='#L23'>23</a>
|
|
82
|
+
<a name='L24'></a><a href='#L24'>24</a>
|
|
83
|
+
<a name='L25'></a><a href='#L25'>25</a>
|
|
84
|
+
<a name='L26'></a><a href='#L26'>26</a>
|
|
85
|
+
<a name='L27'></a><a href='#L27'>27</a>
|
|
86
|
+
<a name='L28'></a><a href='#L28'>28</a>
|
|
87
|
+
<a name='L29'></a><a href='#L29'>29</a>
|
|
88
|
+
<a name='L30'></a><a href='#L30'>30</a>
|
|
89
|
+
<a name='L31'></a><a href='#L31'>31</a>
|
|
90
|
+
<a name='L32'></a><a href='#L32'>32</a>
|
|
91
|
+
<a name='L33'></a><a href='#L33'>33</a>
|
|
92
|
+
<a name='L34'></a><a href='#L34'>34</a>
|
|
93
|
+
<a name='L35'></a><a href='#L35'>35</a>
|
|
94
|
+
<a name='L36'></a><a href='#L36'>36</a>
|
|
95
|
+
<a name='L37'></a><a href='#L37'>37</a>
|
|
96
|
+
<a name='L38'></a><a href='#L38'>38</a>
|
|
97
|
+
<a name='L39'></a><a href='#L39'>39</a>
|
|
98
|
+
<a name='L40'></a><a href='#L40'>40</a>
|
|
99
|
+
<a name='L41'></a><a href='#L41'>41</a>
|
|
100
|
+
<a name='L42'></a><a href='#L42'>42</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
101
|
+
<span class="cline-any cline-neutral"> </span>
|
|
102
|
+
<span class="cline-any cline-neutral"> </span>
|
|
103
|
+
<span class="cline-any cline-neutral"> </span>
|
|
104
|
+
<span class="cline-any cline-neutral"> </span>
|
|
105
|
+
<span class="cline-any cline-neutral"> </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-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-neutral"> </span>
|
|
115
|
+
<span class="cline-any cline-neutral"> </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>
|
|
119
|
+
<span class="cline-any cline-neutral"> </span>
|
|
120
|
+
<span class="cline-any cline-neutral"> </span>
|
|
121
|
+
<span class="cline-any cline-neutral"> </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-no"> </span>
|
|
126
|
+
<span class="cline-any cline-neutral"> </span>
|
|
127
|
+
<span class="cline-any cline-neutral"> </span>
|
|
128
|
+
<span class="cline-any cline-neutral"> </span>
|
|
129
|
+
<span class="cline-any cline-yes">4x</span>
|
|
130
|
+
<span class="cline-any cline-neutral"> </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-no"> </span>
|
|
137
|
+
<span class="cline-any cline-neutral"> </span>
|
|
138
|
+
<span class="cline-any cline-neutral"> </span>
|
|
139
|
+
<span class="cline-any cline-neutral"> </span>
|
|
140
|
+
<span class="cline-any cline-neutral"> </span>
|
|
141
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><template>
|
|
142
|
+
<div class="mds-multiselect" :data-multiselect-id="name">
|
|
143
|
+
<MultiSelectCheckboxGroup :name="name" :options="availableOptions" :testId="`${name}-group`" />
|
|
144
|
+
</div>
|
|
145
|
+
</template>
|
|
146
|
+
|
|
147
|
+
<script>
|
|
148
|
+
import MultiSelectCheckboxGroup from './MultiSelectCheckboxGroup.vue';
|
|
149
|
+
|
|
150
|
+
export default {
|
|
151
|
+
name: 'MultiSelect',
|
|
152
|
+
components: {
|
|
153
|
+
MultiSelectCheckboxGroup,
|
|
154
|
+
},
|
|
155
|
+
props: {
|
|
156
|
+
name: {
|
|
157
|
+
type: [String, Boolean],
|
|
158
|
+
default: false,
|
|
159
|
+
},
|
|
160
|
+
optional: {
|
|
161
|
+
type: Boolean,
|
|
162
|
+
default: false,
|
|
163
|
+
},
|
|
164
|
+
options: {
|
|
165
|
+
type: Array,
|
|
166
|
+
<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" > default: () => [],</span></span>
|
|
167
|
+
},
|
|
168
|
+
},
|
|
169
|
+
data() {
|
|
170
|
+
return {
|
|
171
|
+
selected: null,
|
|
172
|
+
availableOptions: this.options,
|
|
173
|
+
};
|
|
174
|
+
},
|
|
175
|
+
watch: {
|
|
176
|
+
<span class="fstat-no" title="function not covered" > options(newOptions) {</span>
|
|
177
|
+
<span class="cstat-no" title="statement not covered" > this.availableOptions = newOptions;</span>
|
|
178
|
+
},
|
|
179
|
+
},
|
|
180
|
+
};
|
|
181
|
+
</script>
|
|
182
|
+
</pre></td></tr></table></pre>
|
|
183
|
+
|
|
184
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
185
|
+
</div><!-- /wrapper -->
|
|
186
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
187
|
+
Code coverage generated by
|
|
188
|
+
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
189
|
+
at Tue Apr 21 2020 12:11:23 GMT+0100 (British Summer Time)
|
|
190
|
+
</div>
|
|
191
|
+
</div>
|
|
192
|
+
<script src="../../../../prettify.js"></script>
|
|
193
|
+
<script>
|
|
194
|
+
window.onload = function () {
|
|
195
|
+
prettyPrint();
|
|
196
|
+
};
|
|
197
|
+
</script>
|
|
198
|
+
<script src="../../../../sorter.js"></script>
|
|
199
|
+
<script src="../../../../block-navigation.js"></script>
|
|
200
|
+
</body>
|
|
201
|
+
</html>
|
|
202
|
+
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<title>Code coverage report for components/inputs/multi-select/vue-components/MultiSelectCheckbox.vue</title>
|
|
7
|
+
<meta charset="utf-8" />
|
|
8
|
+
<link rel="stylesheet" href="../../../../prettify.css" />
|
|
9
|
+
<link rel="stylesheet" href="../../../../base.css" />
|
|
10
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
11
|
+
<style type='text/css'>
|
|
12
|
+
.coverage-summary .sorter {
|
|
13
|
+
background-image: url(../../../../sort-arrow-sprite.png);
|
|
14
|
+
}
|
|
15
|
+
</style>
|
|
16
|
+
</head>
|
|
17
|
+
|
|
18
|
+
<body>
|
|
19
|
+
<div class='wrapper'>
|
|
20
|
+
<div class='pad1'>
|
|
21
|
+
<h1><a href="../../../../index.html">All files</a> / <a href="index.html">components/inputs/multi-select/vue-components</a> MultiSelectCheckbox.vue</h1>
|
|
22
|
+
<div class='clearfix'>
|
|
23
|
+
|
|
24
|
+
<div class='fl pad1y space-right2'>
|
|
25
|
+
<span class="strong">100% </span>
|
|
26
|
+
<span class="quiet">Statements</span>
|
|
27
|
+
<span class='fraction'>3/3</span>
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
<div class='fl pad1y space-right2'>
|
|
32
|
+
<span class="strong">100% </span>
|
|
33
|
+
<span class="quiet">Branches</span>
|
|
34
|
+
<span class='fraction'>0/0</span>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
<div class='fl pad1y space-right2'>
|
|
39
|
+
<span class="strong">100% </span>
|
|
40
|
+
<span class="quiet">Functions</span>
|
|
41
|
+
<span class='fraction'>2/2</span>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
<div class='fl pad1y space-right2'>
|
|
46
|
+
<span class="strong">100% </span>
|
|
47
|
+
<span class="quiet">Lines</span>
|
|
48
|
+
<span class='fraction'>3/3</span>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
</div>
|
|
53
|
+
<p class="quiet">
|
|
54
|
+
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.
|
|
55
|
+
</p>
|
|
56
|
+
</div>
|
|
57
|
+
<div class='status-line high'></div>
|
|
58
|
+
<pre><table class="coverage">
|
|
59
|
+
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
60
|
+
<a name='L2'></a><a href='#L2'>2</a>
|
|
61
|
+
<a name='L3'></a><a href='#L3'>3</a>
|
|
62
|
+
<a name='L4'></a><a href='#L4'>4</a>
|
|
63
|
+
<a name='L5'></a><a href='#L5'>5</a>
|
|
64
|
+
<a name='L6'></a><a href='#L6'>6</a>
|
|
65
|
+
<a name='L7'></a><a href='#L7'>7</a>
|
|
66
|
+
<a name='L8'></a><a href='#L8'>8</a>
|
|
67
|
+
<a name='L9'></a><a href='#L9'>9</a>
|
|
68
|
+
<a name='L10'></a><a href='#L10'>10</a>
|
|
69
|
+
<a name='L11'></a><a href='#L11'>11</a>
|
|
70
|
+
<a name='L12'></a><a href='#L12'>12</a>
|
|
71
|
+
<a name='L13'></a><a href='#L13'>13</a>
|
|
72
|
+
<a name='L14'></a><a href='#L14'>14</a>
|
|
73
|
+
<a name='L15'></a><a href='#L15'>15</a>
|
|
74
|
+
<a name='L16'></a><a href='#L16'>16</a>
|
|
75
|
+
<a name='L17'></a><a href='#L17'>17</a>
|
|
76
|
+
<a name='L18'></a><a href='#L18'>18</a>
|
|
77
|
+
<a name='L19'></a><a href='#L19'>19</a>
|
|
78
|
+
<a name='L20'></a><a href='#L20'>20</a>
|
|
79
|
+
<a name='L21'></a><a href='#L21'>21</a>
|
|
80
|
+
<a name='L22'></a><a href='#L22'>22</a>
|
|
81
|
+
<a name='L23'></a><a href='#L23'>23</a>
|
|
82
|
+
<a name='L24'></a><a href='#L24'>24</a>
|
|
83
|
+
<a name='L25'></a><a href='#L25'>25</a>
|
|
84
|
+
<a name='L26'></a><a href='#L26'>26</a>
|
|
85
|
+
<a name='L27'></a><a href='#L27'>27</a>
|
|
86
|
+
<a name='L28'></a><a href='#L28'>28</a>
|
|
87
|
+
<a name='L29'></a><a href='#L29'>29</a>
|
|
88
|
+
<a name='L30'></a><a href='#L30'>30</a>
|
|
89
|
+
<a name='L31'></a><a href='#L31'>31</a>
|
|
90
|
+
<a name='L32'></a><a href='#L32'>32</a>
|
|
91
|
+
<a name='L33'></a><a href='#L33'>33</a>
|
|
92
|
+
<a name='L34'></a><a href='#L34'>34</a>
|
|
93
|
+
<a name='L35'></a><a href='#L35'>35</a>
|
|
94
|
+
<a name='L36'></a><a href='#L36'>36</a>
|
|
95
|
+
<a name='L37'></a><a href='#L37'>37</a>
|
|
96
|
+
<a name='L38'></a><a href='#L38'>38</a>
|
|
97
|
+
<a name='L39'></a><a href='#L39'>39</a>
|
|
98
|
+
<a name='L40'></a><a href='#L40'>40</a>
|
|
99
|
+
<a name='L41'></a><a href='#L41'>41</a>
|
|
100
|
+
<a name='L42'></a><a href='#L42'>42</a>
|
|
101
|
+
<a name='L43'></a><a href='#L43'>43</a>
|
|
102
|
+
<a name='L44'></a><a href='#L44'>44</a>
|
|
103
|
+
<a name='L45'></a><a href='#L45'>45</a>
|
|
104
|
+
<a name='L46'></a><a href='#L46'>46</a>
|
|
105
|
+
<a name='L47'></a><a href='#L47'>47</a>
|
|
106
|
+
<a name='L48'></a><a href='#L48'>48</a>
|
|
107
|
+
<a name='L49'></a><a href='#L49'>49</a>
|
|
108
|
+
<a name='L50'></a><a href='#L50'>50</a>
|
|
109
|
+
<a name='L51'></a><a href='#L51'>51</a>
|
|
110
|
+
<a name='L52'></a><a href='#L52'>52</a>
|
|
111
|
+
<a name='L53'></a><a href='#L53'>53</a>
|
|
112
|
+
<a name='L54'></a><a href='#L54'>54</a>
|
|
113
|
+
<a name='L55'></a><a href='#L55'>55</a>
|
|
114
|
+
<a name='L56'></a><a href='#L56'>56</a>
|
|
115
|
+
<a name='L57'></a><a href='#L57'>57</a>
|
|
116
|
+
<a name='L58'></a><a href='#L58'>58</a>
|
|
117
|
+
<a name='L59'></a><a href='#L59'>59</a>
|
|
118
|
+
<a name='L60'></a><a href='#L60'>60</a>
|
|
119
|
+
<a name='L61'></a><a href='#L61'>61</a>
|
|
120
|
+
<a name='L62'></a><a href='#L62'>62</a>
|
|
121
|
+
<a name='L63'></a><a href='#L63'>63</a>
|
|
122
|
+
<a name='L64'></a><a href='#L64'>64</a>
|
|
123
|
+
<a name='L65'></a><a href='#L65'>65</a>
|
|
124
|
+
<a name='L66'></a><a href='#L66'>66</a>
|
|
125
|
+
<a name='L67'></a><a href='#L67'>67</a>
|
|
126
|
+
<a name='L68'></a><a href='#L68'>68</a>
|
|
127
|
+
<a name='L69'></a><a href='#L69'>69</a>
|
|
128
|
+
<a name='L70'></a><a href='#L70'>70</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
129
|
+
<span class="cline-any cline-neutral"> </span>
|
|
130
|
+
<span class="cline-any cline-neutral"> </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>
|
|
138
|
+
<span class="cline-any cline-neutral"> </span>
|
|
139
|
+
<span class="cline-any cline-neutral"> </span>
|
|
140
|
+
<span class="cline-any cline-neutral"> </span>
|
|
141
|
+
<span class="cline-any cline-neutral"> </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-neutral"> </span>
|
|
146
|
+
<span class="cline-any cline-neutral"> </span>
|
|
147
|
+
<span class="cline-any cline-neutral"> </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>
|
|
151
|
+
<span class="cline-any cline-neutral"> </span>
|
|
152
|
+
<span class="cline-any cline-neutral"> </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-neutral"> </span>
|
|
157
|
+
<span class="cline-any cline-neutral"> </span>
|
|
158
|
+
<span class="cline-any cline-neutral"> </span>
|
|
159
|
+
<span class="cline-any cline-neutral"> </span>
|
|
160
|
+
<span class="cline-any cline-neutral"> </span>
|
|
161
|
+
<span class="cline-any cline-neutral"> </span>
|
|
162
|
+
<span class="cline-any cline-neutral"> </span>
|
|
163
|
+
<span class="cline-any cline-neutral"> </span>
|
|
164
|
+
<span class="cline-any cline-neutral"> </span>
|
|
165
|
+
<span class="cline-any cline-neutral"> </span>
|
|
166
|
+
<span class="cline-any cline-neutral"> </span>
|
|
167
|
+
<span class="cline-any cline-neutral"> </span>
|
|
168
|
+
<span class="cline-any cline-neutral"> </span>
|
|
169
|
+
<span class="cline-any cline-neutral"> </span>
|
|
170
|
+
<span class="cline-any cline-neutral"> </span>
|
|
171
|
+
<span class="cline-any cline-neutral"> </span>
|
|
172
|
+
<span class="cline-any cline-neutral"> </span>
|
|
173
|
+
<span class="cline-any cline-neutral"> </span>
|
|
174
|
+
<span class="cline-any cline-neutral"> </span>
|
|
175
|
+
<span class="cline-any cline-neutral"> </span>
|
|
176
|
+
<span class="cline-any cline-neutral"> </span>
|
|
177
|
+
<span class="cline-any cline-neutral"> </span>
|
|
178
|
+
<span class="cline-any cline-neutral"> </span>
|
|
179
|
+
<span class="cline-any cline-neutral"> </span>
|
|
180
|
+
<span class="cline-any cline-neutral"> </span>
|
|
181
|
+
<span class="cline-any cline-neutral"> </span>
|
|
182
|
+
<span class="cline-any cline-neutral"> </span>
|
|
183
|
+
<span class="cline-any cline-neutral"> </span>
|
|
184
|
+
<span class="cline-any cline-neutral"> </span>
|
|
185
|
+
<span class="cline-any cline-yes">20x</span>
|
|
186
|
+
<span class="cline-any cline-neutral"> </span>
|
|
187
|
+
<span class="cline-any cline-neutral"> </span>
|
|
188
|
+
<span class="cline-any cline-neutral"> </span>
|
|
189
|
+
<span class="cline-any cline-neutral"> </span>
|
|
190
|
+
<span class="cline-any cline-neutral"> </span>
|
|
191
|
+
<span class="cline-any cline-yes">1x</span>
|
|
192
|
+
<span class="cline-any cline-yes">1x</span>
|
|
193
|
+
<span class="cline-any cline-neutral"> </span>
|
|
194
|
+
<span class="cline-any cline-neutral"> </span>
|
|
195
|
+
<span class="cline-any cline-neutral"> </span>
|
|
196
|
+
<span class="cline-any cline-neutral"> </span>
|
|
197
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><!-- Vue doesn't seem to be stripping whitespace from these nodes so it's messing everything up
|
|
198
|
+
Hence these comments. Please feel free to give me pointers -->
|
|
199
|
+
|
|
200
|
+
<template>
|
|
201
|
+
<div class="mds-multiselect__checkbox" :data-multiselect-id="`${name}-checkbox`">
|
|
202
|
+
<input type="checkbox" :name="name" :id="id" :value="value" :checked="checked ? true : false" /><!--
|
|
203
|
+
--><label :for="id" @click="checked = !checked">{{ label }}</label><!--
|
|
204
|
+
--><button
|
|
205
|
+
v-if="this.$slots.default"
|
|
206
|
+
class="mds-button mds-button--plain mds-padding-b0"
|
|
207
|
+
@click="toggleExpansion()"
|
|
208
|
+
@keydown.right="toggleExpansion()"
|
|
209
|
+
@keydown.left="toggleExpansion()"
|
|
210
|
+
:aria-expanded="isShowing ? 'true' : 'false'"
|
|
211
|
+
:ref="`${id}-trigger`"
|
|
212
|
+
>
|
|
213
|
+
<!-- Ideally we would pass this in as a slot in the custom element with MdsIcon, but something is borked
|
|
214
|
+
with passing slots in Chrome https://github.com/karol-f/vue-custom-element/issues/162 -->
|
|
215
|
+
<svg
|
|
216
|
+
aria-hidden="true"
|
|
217
|
+
focusable="true"
|
|
218
|
+
class="mds-icon mds-icon--chevron-right mds-icon--after mds-icon--sm mds-animate-transform-fast"
|
|
219
|
+
:class="isShowing ? ' mds-rotate-cw-90' : ''"
|
|
220
|
+
>
|
|
221
|
+
<use href="/assets/icons.svg#chevron-right" />
|
|
222
|
+
</svg>
|
|
223
|
+
</button>
|
|
224
|
+
<slot />
|
|
225
|
+
</div>
|
|
226
|
+
</template>
|
|
227
|
+
|
|
228
|
+
<script>
|
|
229
|
+
export default {
|
|
230
|
+
name: 'MultiSelectCheckbox',
|
|
231
|
+
props: {
|
|
232
|
+
id: {
|
|
233
|
+
type: String,
|
|
234
|
+
required: true,
|
|
235
|
+
},
|
|
236
|
+
name: {
|
|
237
|
+
type: String,
|
|
238
|
+
required: true,
|
|
239
|
+
},
|
|
240
|
+
checked: {
|
|
241
|
+
type: Boolean,
|
|
242
|
+
default: false,
|
|
243
|
+
},
|
|
244
|
+
label: {
|
|
245
|
+
type: String,
|
|
246
|
+
required: true,
|
|
247
|
+
},
|
|
248
|
+
value: {
|
|
249
|
+
type: [String, Number],
|
|
250
|
+
required: true,
|
|
251
|
+
},
|
|
252
|
+
},
|
|
253
|
+
data() {
|
|
254
|
+
return {
|
|
255
|
+
isShowing: false,
|
|
256
|
+
};
|
|
257
|
+
},
|
|
258
|
+
methods: {
|
|
259
|
+
toggleExpansion() {
|
|
260
|
+
this.isShowing = !this.isShowing;
|
|
261
|
+
this.$emit('expandChild', { state: this.isShowing, id: this.$props.id });
|
|
262
|
+
},
|
|
263
|
+
},
|
|
264
|
+
};
|
|
265
|
+
</script>
|
|
266
|
+
</pre></td></tr></table></pre>
|
|
267
|
+
|
|
268
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
269
|
+
</div><!-- /wrapper -->
|
|
270
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
271
|
+
Code coverage generated by
|
|
272
|
+
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
273
|
+
at Tue Apr 21 2020 12:11:23 GMT+0100 (British Summer Time)
|
|
274
|
+
</div>
|
|
275
|
+
</div>
|
|
276
|
+
<script src="../../../../prettify.js"></script>
|
|
277
|
+
<script>
|
|
278
|
+
window.onload = function () {
|
|
279
|
+
prettyPrint();
|
|
280
|
+
};
|
|
281
|
+
</script>
|
|
282
|
+
<script src="../../../../sorter.js"></script>
|
|
283
|
+
<script src="../../../../block-navigation.js"></script>
|
|
284
|
+
</body>
|
|
285
|
+
</html>
|
|
286
|
+
|