comand-component-library 3.1.84 → 3.1.85
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/dist/comand-component-library.css +1 -1
- package/dist/comand-component-library.umd.min.js +1 -1
- package/package.json +1 -1
- package/src/App.vue +5 -0
- package/src/assets/data/address-data.json +2 -1
- package/src/components/CmdAddressData.vue +37 -29
- package/src/components/CmdFakeSelect.vue +5 -1
- package/src/components/CmdFormElement.vue +41 -22
- package/src/components/CmdMainNavigation.vue +2 -2
- package/src/components/CmdSlideButton.vue +1 -1
- package/src/components/CmdTable.vue +0 -7
- package/src/components/CmdTooltip.vue +1 -1
- package/src/components/CmdTooltipForInputElements.vue +20 -54
- package/src/documentation/generated/CmdFormElementPropertyDescriptions.json +9 -4
- package/src/documentation/generated/CmdTooltipForInputElementsPropertyDescriptions.json +2 -27
package/package.json
CHANGED
package/src/App.vue
CHANGED
@@ -50,6 +50,7 @@
|
|
50
50
|
<li><a href="#section-tabs">Tabs</a></li>
|
51
51
|
<li><a href="#section-thumbnail-scroller">Thumbnail-Scroller</a></li>
|
52
52
|
<li><a href="#section-toggle-darkmode">ToggleDarkMode</a></li>
|
53
|
+
<li><a href="#section-tooltip">Tooltip</a></li>
|
53
54
|
<li><a href="#section-upload-form">Upload-Form</a></li>
|
54
55
|
</ul>
|
55
56
|
</div>
|
@@ -459,10 +460,14 @@
|
|
459
460
|
checkbox with boolean: {{ checkboxValue }}<br/>
|
460
461
|
checkboxes with values: {{ checkboxValues }}
|
461
462
|
</p>
|
463
|
+
|
462
464
|
<h3>Toggle Dark-Mode</h3>
|
463
465
|
<a id="section-toggle-darkmode"></a>
|
466
|
+
<h4>Toggle Dark-Mode (with label, not styled)</h4>
|
464
467
|
<CmdToggleDarkMode :showLabel="true"/>
|
468
|
+
<h4>Toggle Dark-Mode (without label, styled)</h4>
|
465
469
|
<CmdToggleDarkMode :showLabel="false" :use-styled-layout="true" />
|
470
|
+
|
466
471
|
<h2>Checkboxes and Radiobuttons</h2>
|
467
472
|
<h3>Checkboxes [native]</h3>
|
468
473
|
<div class="label inline">
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"company": {
|
3
|
-
"iconClass": "icon-
|
3
|
+
"iconClass": "icon-company",
|
4
4
|
"value": "Your company name"
|
5
5
|
},
|
6
6
|
"address": {
|
@@ -8,6 +8,7 @@
|
|
8
8
|
"streetNo": "Your Street/No",
|
9
9
|
"zip": "Your zip",
|
10
10
|
"city": "Your city",
|
11
|
+
"miscInfo": "",
|
11
12
|
"country": "Your country",
|
12
13
|
"longitude": "0.0",
|
13
14
|
"latitude": "0.0",
|
@@ -17,25 +17,28 @@
|
|
17
17
|
<!-- end company -->
|
18
18
|
|
19
19
|
<!-- begin address -->
|
20
|
-
<
|
21
|
-
<
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
<
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
<
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
20
|
+
<template v-if="addressData.address && addressData.address !== undefined">
|
21
|
+
<dt class="address">
|
22
|
+
<span v-if="addressData.address.iconClass && showLabelIcons" :class="addressData.address.iconClass" :title="getMessage('cmdaddressdata.labeltext.address')"></span>
|
23
|
+
<span v-if="showLabelTexts">{{ getMessage('cmdaddressdata.labeltext.address')}}</span>
|
24
|
+
</dt>
|
25
|
+
<dd v-if="addressData.address">
|
26
|
+
<a v-if="linkGoogleMaps" :href="locateAddress" target="google-maps" :title="getMessage('cmdaddressdata.title.open_address_on_google_maps')">
|
27
|
+
<span v-if="addressData.address.streetNo" class="street-address">{{ addressData.address.streetNo }}</span><br/>
|
28
|
+
<span v-if="addressData.address.zip" class="postal-code">{{ addressData.address.zip }} </span>
|
29
|
+
<span v-if="addressData.address.city" class="locality">{{ addressData.address.city }}</span><br/>
|
30
|
+
<span v-if="addressData.address.miscInfo">{{ addressData.address.miscInfo }}</span><br/>
|
31
|
+
<span v-if="addressData.address.country" class="country-name">{{ addressData.address.country }}</span>
|
32
|
+
</a>
|
33
|
+
<template v-else>
|
34
|
+
<span v-if="addressData.address.streetNo" class="street-address">{{addressData.address.streetNo }}</span><br/>
|
35
|
+
<span v-if="addressData.address.zip" class="postal-code">{{ addressData.address.zip }} </span>
|
36
|
+
<span v-if="addressData.address.city" class="locality">{{ addressData.address.city }}</span><br/>
|
37
|
+
<span v-if="addressData.address.miscInfo">{{ addressData.address.miscInfo }}</span><br/>
|
38
|
+
<span v-if="addressData.address.country" class="country-name">{{ addressData.address.country }}</span>
|
39
|
+
</template>
|
40
|
+
</dd>
|
41
|
+
</template>
|
39
42
|
<!-- end address -->
|
40
43
|
|
41
44
|
<!-- begin telephone -->
|
@@ -84,18 +87,19 @@
|
|
84
87
|
<span class="org">{{ addressData.company.value }}</span>
|
85
88
|
</li>
|
86
89
|
<li>
|
87
|
-
<a :href="locateAddress" target="google-maps"
|
88
|
-
|
89
|
-
<span
|
90
|
-
<span
|
91
|
-
<span
|
92
|
-
<span
|
90
|
+
<a v-if="linkGoogleMaps" :href="locateAddress" target="google-maps" :title="getMessage('cmdaddressdata.title.open_address_on_google_maps')">
|
91
|
+
<span v-if="addressData.address.streetNo" class="street-address">{{ addressData.address.streetNo }}</span><br/>
|
92
|
+
<span v-if="addressData.address.zip" class="postal-code">{{ addressData.address.zip }} </span>
|
93
|
+
<span v-if="addressData.address.city" class="locality">{{ addressData.address.city }}</span><br/>
|
94
|
+
<span v-if="addressData.address.miscInfo">{{ addressData.address.miscInfo }}</span><br/>
|
95
|
+
<span v-if="addressData.address.country" class="country-name">{{ addressData.address.country }}</span>
|
93
96
|
</a>
|
94
97
|
<template v-else>
|
95
|
-
<span
|
96
|
-
<span
|
97
|
-
<span
|
98
|
-
<span
|
98
|
+
<span v-if="addressData.address.streetNo" class="street-address">{{ addressData.address.streetNo }}</span><br/>
|
99
|
+
<span v-if="addressData.address.zip" class="postal-code">{{ addressData.address.zip }} </span>
|
100
|
+
<span v-if="addressData.address.city" class="locality">{{ addressData.address.city }}</span><br/>
|
101
|
+
<span v-if="addressData.address.miscInfo">{{ addressData.address.miscInfo }}</span><br/>
|
102
|
+
<span v-if="addressData.address.country" class="country-name">{{ addressData.address.country }}</span>
|
99
103
|
</template>
|
100
104
|
</li>
|
101
105
|
<li v-if="addressData.telephone?.value">
|
@@ -189,6 +193,10 @@ export default {
|
|
189
193
|
dt {
|
190
194
|
display: flex;
|
191
195
|
align-items: center;
|
196
|
+
|
197
|
+
&.address {
|
198
|
+
align-items: flex-start;
|
199
|
+
}
|
192
200
|
}
|
193
201
|
}
|
194
202
|
|
@@ -478,6 +478,10 @@ export default {
|
|
478
478
|
margin-left: auto;
|
479
479
|
font-size: 1rem;
|
480
480
|
}
|
481
|
+
|
482
|
+
&:hover, &:active, &:focus {
|
483
|
+
background: var(--primary-color);
|
484
|
+
}
|
481
485
|
}
|
482
486
|
}
|
483
487
|
}
|
@@ -605,7 +609,7 @@ export default {
|
|
605
609
|
}
|
606
610
|
|
607
611
|
&:hover, &:active, &:focus {
|
608
|
-
background: var(--
|
612
|
+
background: var(--color-scheme-background-color);
|
609
613
|
|
610
614
|
span {
|
611
615
|
color: var(--status-color);
|
@@ -29,16 +29,11 @@
|
|
29
29
|
<CmdTooltipForInputElements
|
30
30
|
v-if="useCustomTooltip && (validationStatus === '' || validationStatus === 'error')"
|
31
31
|
ref="tooltip"
|
32
|
-
:showRequirements="showRequirements"
|
33
|
-
:inputRequirements="inputRequirements"
|
34
32
|
:validationStatus="validationStatus"
|
35
33
|
:validationMessage="getValidationMessage"
|
36
34
|
:validationTooltip="validationTooltip"
|
37
|
-
:inputAttributes="$attrs"
|
38
|
-
:inputModelValue="modelValue"
|
39
|
-
:helplink="helplink"
|
40
35
|
:relatedId="tooltipId"
|
41
|
-
:
|
36
|
+
:cmdListOfRequirements="listOfRequirements"
|
42
37
|
/>
|
43
38
|
<!-- end CmdTooltipForInputElements -->
|
44
39
|
|
@@ -102,18 +97,18 @@
|
|
102
97
|
<!-- begin checkbox and radiobutton -->
|
103
98
|
<template v-else-if="element === 'input' && ($attrs.type === 'checkbox' || $attrs.type === 'radio')">
|
104
99
|
<template v-if="!(onLabel && offLabel)">
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
100
|
+
<input
|
101
|
+
v-bind="elementAttributes"
|
102
|
+
@change="onChange"
|
103
|
+
@blur="onBlur"
|
104
|
+
:checked="isChecked"
|
105
|
+
:value="inputValue"
|
106
|
+
:class="[inputClass, validationStatus, toggleSwitchIconClass, { 'replace-input-type': replaceInputType, 'toggle-switch': toggleSwitch }]"
|
107
|
+
:id="labelId"
|
108
|
+
:disabled="$attrs.disabled"
|
109
|
+
:aria-invalid="validationStatus === 'error'"
|
110
|
+
/>
|
111
|
+
<span v-if="labelText" :class="['label-text', { hidden: !showLabel }]"><span>{{ labelText }}<sup v-if="$attrs.required">*</sup></span></span>
|
117
112
|
</template>
|
118
113
|
|
119
114
|
<!-- begin labels for toggle-switch with switch-label -->
|
@@ -479,7 +474,7 @@ export default {
|
|
479
474
|
* icon for error-validated items in list-of-requirements
|
480
475
|
*
|
481
476
|
* element-property must me set to 'input'
|
482
|
-
* showRequirements-
|
477
|
+
* showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'
|
483
478
|
*
|
484
479
|
*/
|
485
480
|
iconHasStateError: {
|
@@ -496,7 +491,7 @@ export default {
|
|
496
491
|
* icon for warning-validated items in list-of-requirements
|
497
492
|
*
|
498
493
|
* element-property must me set to 'input'
|
499
|
-
* showRequirements-
|
494
|
+
* showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'
|
500
495
|
*
|
501
496
|
*/
|
502
497
|
iconHasStateWarning: {
|
@@ -513,7 +508,7 @@ export default {
|
|
513
508
|
* icon for success-validated items in list-of-requirements
|
514
509
|
*
|
515
510
|
* element-property must me set to 'input'
|
516
|
-
* showRequirements-
|
511
|
+
* showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'
|
517
512
|
*
|
518
513
|
*/
|
519
514
|
iconHasStateSuccess: {
|
@@ -530,7 +525,7 @@ export default {
|
|
530
525
|
* icon for info-validated items in list-of-requirements
|
531
526
|
*
|
532
527
|
* element-property must me set to 'input'
|
533
|
-
* showRequirements-
|
528
|
+
* showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'
|
534
529
|
*
|
535
530
|
*/
|
536
531
|
iconHasStateInfo: {
|
@@ -602,9 +597,33 @@ export default {
|
|
602
597
|
iconClass: "icon-not-visible",
|
603
598
|
}
|
604
599
|
}
|
600
|
+
},
|
601
|
+
/**
|
602
|
+
* properties for CmdListOfRequirements-component
|
603
|
+
*/
|
604
|
+
cmdListOfRequirements: {
|
605
|
+
type: Object,
|
606
|
+
default() {
|
607
|
+
return {}
|
608
|
+
}
|
605
609
|
}
|
606
610
|
},
|
607
611
|
computed: {
|
612
|
+
listOfRequirements() {
|
613
|
+
if (this.cmdListOfRequirements === undefined) {
|
614
|
+
return {
|
615
|
+
showRequirements: true,
|
616
|
+
showHeadline: true,
|
617
|
+
validationTooltip: this.validationTooltip,
|
618
|
+
inputRequirements: [],
|
619
|
+
inputAttributes: this.$attrs,
|
620
|
+
inputModelValue: this.modelValue,
|
621
|
+
helplink: {},
|
622
|
+
labelText: this.labelText
|
623
|
+
}
|
624
|
+
}
|
625
|
+
return this.cmdListOfRequirements
|
626
|
+
},
|
608
627
|
elementAttributes() {
|
609
628
|
const commonAttributes = ["name", "required", "readonly", "disabled", "autofocus"]
|
610
629
|
const attributes = {
|
@@ -439,7 +439,7 @@ export default {
|
|
439
439
|
> a {
|
440
440
|
span {
|
441
441
|
+ span[class*="icon"]::before {
|
442
|
-
|
442
|
+
|
443
443
|
}
|
444
444
|
}
|
445
445
|
}
|
@@ -448,7 +448,7 @@ export default {
|
|
448
448
|
> a {
|
449
449
|
span {
|
450
450
|
+ span[class*="icon"]::before {
|
451
|
-
|
451
|
+
|
452
452
|
}
|
453
453
|
}
|
454
454
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<template>
|
2
2
|
<a href="#"
|
3
3
|
@click.prevent
|
4
|
-
:class="['cmd-slide-button', 'button', slideButtonType
|
4
|
+
:class="['cmd-slide-button', 'button', slideButtonType]"
|
5
5
|
:title="getDirection.tooltip">
|
6
6
|
<span :class="getDirection.iconClass || 'next'"></span>
|
7
7
|
</a>
|
@@ -194,19 +194,12 @@ export default {
|
|
194
194
|
gap: calc(var(--default-gap) / 2);
|
195
195
|
|
196
196
|
.button {
|
197
|
-
background: none;
|
198
197
|
padding: 0;
|
199
198
|
min-width: 2rem;
|
200
199
|
min-height: 2rem;
|
201
|
-
background: var(--pure-white);
|
202
200
|
|
203
201
|
span[class*="icon"] {
|
204
|
-
color: var(--primary-color);
|
205
202
|
font-size: 1rem;
|
206
|
-
|
207
|
-
&:hover, &:active, &:focus {
|
208
|
-
color: var(--hyperlink-color-highlighted);
|
209
|
-
}
|
210
203
|
}
|
211
204
|
}
|
212
205
|
}
|
@@ -177,7 +177,7 @@ export default {
|
|
177
177
|
line-height: 100%;
|
178
178
|
font-size: 1.1rem;
|
179
179
|
position: fixed;
|
180
|
-
background: var(--
|
180
|
+
background: var(--color-scheme-background-color);
|
181
181
|
z-index: 100;
|
182
182
|
border: var(--default-border);
|
183
183
|
border-color: hsl(220, 2%, 25%);
|
@@ -18,13 +18,14 @@
|
|
18
18
|
|
19
19
|
<!-- begin CmdListOfRequirements -->
|
20
20
|
<CmdListOfRequirements
|
21
|
-
v-if="showRequirements"
|
22
|
-
:
|
23
|
-
:
|
24
|
-
:
|
25
|
-
:
|
26
|
-
:
|
27
|
-
:
|
21
|
+
v-if="cmdListOfRequirements.showRequirements"
|
22
|
+
:showHeadline="cmdListOfRequirements.showHeadline"
|
23
|
+
:inputRequirements="cmdListOfRequirements.inputRequirements"
|
24
|
+
:helplink="cmdListOfRequirements.helplink"
|
25
|
+
:inputModelValue="cmdListOfRequirements.inputModelValue"
|
26
|
+
:inputAttributes="cmdListOfRequirements.inputAttributes"
|
27
|
+
:validationTooltip="cmdListOfRequirements.validationTooltip"
|
28
|
+
:labelText="cmdListOfRequirements.labelText"
|
28
29
|
/>
|
29
30
|
<!-- end CmdListOfRequirements -->
|
30
31
|
</CmdTooltip>
|
@@ -45,13 +46,6 @@ export default {
|
|
45
46
|
CmdTooltip
|
46
47
|
},
|
47
48
|
props: {
|
48
|
-
/**
|
49
|
-
* text for label (used in headline)
|
50
|
-
*/
|
51
|
-
labelText: {
|
52
|
-
type: String,
|
53
|
-
required: false
|
54
|
-
},
|
55
49
|
/**
|
56
50
|
* related-id for CmdTooltip-component
|
57
51
|
*/
|
@@ -74,50 +68,22 @@ export default {
|
|
74
68
|
default: ""
|
75
69
|
},
|
76
70
|
/**
|
77
|
-
*
|
78
|
-
*/
|
79
|
-
showRequirements: {
|
80
|
-
type: Boolean,
|
81
|
-
default: false
|
82
|
-
},
|
83
|
-
/**
|
84
|
-
* validation-tooltip for CmdListOfRequirements-component
|
71
|
+
* properties for CmdListOfRequirements-component
|
85
72
|
*/
|
86
|
-
|
87
|
-
type: String,
|
88
|
-
default: ""
|
89
|
-
},
|
90
|
-
/**
|
91
|
-
* list of input-requirements for CmdListOfRequirements-component
|
92
|
-
*/
|
93
|
-
inputRequirements: {
|
94
|
-
type: Array,
|
95
|
-
default() {
|
96
|
-
return []
|
97
|
-
}
|
98
|
-
},
|
99
|
-
/**
|
100
|
-
* input-attributes for CmdListOfRequirements-component
|
101
|
-
*/
|
102
|
-
inputAttributes: {
|
73
|
+
cmdListOfRequirements: {
|
103
74
|
type: Object,
|
104
75
|
default() {
|
105
|
-
return {
|
76
|
+
return {
|
77
|
+
showRequirements: true,
|
78
|
+
validationTooltip: "",
|
79
|
+
inputRequirements: [],
|
80
|
+
inputAttributes: {},
|
81
|
+
showHeadline: true,
|
82
|
+
inputModelValue: "",
|
83
|
+
helplink: {},
|
84
|
+
labelText: ""
|
85
|
+
}
|
106
86
|
}
|
107
|
-
},
|
108
|
-
/**
|
109
|
-
* input-model-value for CmdListOfRequirements-component
|
110
|
-
*/
|
111
|
-
inputModelValue: {
|
112
|
-
type: [String, Boolean, Array, Number],
|
113
|
-
default: ""
|
114
|
-
},
|
115
|
-
/**
|
116
|
-
* helplink for CmdListOfRequirements-component
|
117
|
-
*/
|
118
|
-
helplink: {
|
119
|
-
type: Object,
|
120
|
-
required: false
|
121
87
|
}
|
122
88
|
},
|
123
89
|
methods: {
|
@@ -193,7 +193,7 @@
|
|
193
193
|
"icon for error-validated items in list-of-requirements",
|
194
194
|
"",
|
195
195
|
"element-property must me set to 'input'",
|
196
|
-
"showRequirements-
|
196
|
+
"showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'",
|
197
197
|
""
|
198
198
|
]
|
199
199
|
},
|
@@ -202,7 +202,7 @@
|
|
202
202
|
"icon for warning-validated items in list-of-requirements",
|
203
203
|
"",
|
204
204
|
"element-property must me set to 'input'",
|
205
|
-
"showRequirements-
|
205
|
+
"showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'",
|
206
206
|
""
|
207
207
|
]
|
208
208
|
},
|
@@ -211,7 +211,7 @@
|
|
211
211
|
"icon for success-validated items in list-of-requirements",
|
212
212
|
"",
|
213
213
|
"element-property must me set to 'input'",
|
214
|
-
"showRequirements-
|
214
|
+
"showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'",
|
215
215
|
""
|
216
216
|
]
|
217
217
|
},
|
@@ -220,7 +220,7 @@
|
|
220
220
|
"icon for info-validated items in list-of-requirements",
|
221
221
|
"",
|
222
222
|
"element-property must me set to 'input'",
|
223
|
-
"showRequirements-
|
223
|
+
"showRequirements-subproperty (of CmdListOfRequirements) must be set to 'true'",
|
224
224
|
""
|
225
225
|
]
|
226
226
|
},
|
@@ -262,5 +262,10 @@
|
|
262
262
|
"type-property must be set to 'password'",
|
263
263
|
""
|
264
264
|
]
|
265
|
+
},
|
266
|
+
"cmdListOfRequirements": {
|
267
|
+
"comments": [
|
268
|
+
"properties for CmdListOfRequirements-component"
|
269
|
+
]
|
265
270
|
}
|
266
271
|
}
|
@@ -1,9 +1,4 @@
|
|
1
1
|
{
|
2
|
-
"labelText": {
|
3
|
-
"comments": [
|
4
|
-
"text for label (used in headline)"
|
5
|
-
]
|
6
|
-
},
|
7
2
|
"relatedId": {
|
8
3
|
"comments": [
|
9
4
|
"related-id for CmdTooltip-component"
|
@@ -19,29 +14,9 @@
|
|
19
14
|
"validation-message for CmdSystemMessage-component"
|
20
15
|
]
|
21
16
|
},
|
22
|
-
"
|
23
|
-
"comments": [
|
24
|
-
"toggle visibility for CmdListOfRequirements-component"
|
25
|
-
]
|
26
|
-
},
|
27
|
-
"validationTooltip": {
|
28
|
-
"comments": [
|
29
|
-
"validation-tooltip for CmdListOfRequirements-component"
|
30
|
-
]
|
31
|
-
},
|
32
|
-
"inputRequirements": {
|
33
|
-
"comments": [
|
34
|
-
"list of input-requirements for CmdListOfRequirements-component"
|
35
|
-
]
|
36
|
-
},
|
37
|
-
"inputAttributes": {
|
38
|
-
"comments": [
|
39
|
-
"helplink for CmdListOfRequirements-component"
|
40
|
-
]
|
41
|
-
},
|
42
|
-
"methods": {
|
17
|
+
"cmdListOfRequirements": {
|
43
18
|
"comments": [
|
44
|
-
"
|
19
|
+
"properties for CmdListOfRequirements-component"
|
45
20
|
]
|
46
21
|
}
|
47
22
|
}
|