comand-component-library 4.2.9 → 4.2.11
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.js +1478 -1424
- package/dist/style.css +1 -1
- package/package.json +3 -2
- package/src/ComponentLibrary.vue +24 -5
- package/src/assets/data/form-elements.json +3 -7
- package/src/assets/lists-of-data/.htaccess +1 -0
- package/src/assets/lists-of-data/casual-01.json +113 -0
- package/src/assets/lists-of-data/founder-01.json +111 -0
- package/src/assets/lists-of-data/investor-01.json +114 -0
- package/src/componentSettingsDataAndControls.vue +1 -1
- package/src/components/CmdBox.vue +7 -4
- package/src/components/CmdFakeSelect.vue +18 -5
- package/src/components/CmdForm.vue +11 -9
- package/src/components/CmdFormElement.vue +6 -0
- package/src/components/CmdInputGroup.vue +3 -4
- package/src/components/CmdListOfRequirements.vue +6 -6
- package/src/components/CmdLoginForm.vue +96 -86
- package/src/components/CmdTooltip.vue +42 -26
- package/src/index.js +1 -0
- package/src/main.js +5 -1
- package/dist/media/images/flags/flag-cn.svg +0 -2524
- package/dist/media/images/flags/flag-de.svg +0 -76
- package/dist/media/images/flags/flag-dk.svg +0 -5
- package/dist/media/images/flags/flag-en.svg +0 -76
- package/dist/media/images/flags/flag-es.svg +0 -2530
- package/dist/media/images/flags/flag-fi.svg +0 -5
- package/dist/media/images/flags/flag-fr.svg +0 -76
- package/dist/media/images/flags/flag-it.svg +0 -76
- package/dist/media/images/flags/flag-no.svg +0 -7
- package/dist/media/images/flags/flag-ru.svg +0 -76
- package/dist/media/images/flags/flag-se.svg +0 -5
- package/src/components/CmdTooltipForInputElements.vue +0 -64
@@ -0,0 +1,113 @@
|
|
1
|
+
{
|
2
|
+
"person": {
|
3
|
+
"id": 1,
|
4
|
+
"type": "casual",
|
5
|
+
"imgSrc": "https://comand-ui.com/samples/images/user-images/fake-user-2.jpg",
|
6
|
+
"bgImgSrc": "/images/background-images/background-matrix.jpg",
|
7
|
+
"lastName": "Casual",
|
8
|
+
"middleName": "",
|
9
|
+
"firstName": "Jackson",
|
10
|
+
"birthdate": "1975-07-11",
|
11
|
+
"gender": "m",
|
12
|
+
"profession": "Developer",
|
13
|
+
"countryIso": "de",
|
14
|
+
"companyName": "Big Tech Company",
|
15
|
+
"about": "I am the best developer in my home office",
|
16
|
+
"group": "Friends"
|
17
|
+
},
|
18
|
+
"account": {
|
19
|
+
"online": true,
|
20
|
+
"type": "premium",
|
21
|
+
"created": "2023-03-17"
|
22
|
+
},
|
23
|
+
"tags": [
|
24
|
+
{
|
25
|
+
"name": "Backend Development"
|
26
|
+
},
|
27
|
+
{
|
28
|
+
"name": "Frontend Development",
|
29
|
+
"description": "Frontend Development embraces the visible part of development. This includes primary the structure and its styling of websites combined by some basic logic."
|
30
|
+
},
|
31
|
+
{
|
32
|
+
"name": "Data Migration"
|
33
|
+
}
|
34
|
+
],
|
35
|
+
"contact": [
|
36
|
+
{
|
37
|
+
"name": "companyName",
|
38
|
+
"iconClass": "icon-company",
|
39
|
+
"data": "Your company name",
|
40
|
+
"labelText": "companyName"
|
41
|
+
},
|
42
|
+
{
|
43
|
+
"name": "address",
|
44
|
+
"iconClass": "icon-home",
|
45
|
+
"labelText": "Address",
|
46
|
+
"streetNo": "Your Street/No",
|
47
|
+
"zip": "Your zip",
|
48
|
+
"city": "Duisburg",
|
49
|
+
"miscInfo": "Misc. info",
|
50
|
+
"country": "de"
|
51
|
+
},
|
52
|
+
{
|
53
|
+
"name": "phone",
|
54
|
+
"iconClass": "icon-phone",
|
55
|
+
"data": "Your phone number",
|
56
|
+
"labelText": "Telephone",
|
57
|
+
"tooltip": "Call number",
|
58
|
+
"href": "0123456789"
|
59
|
+
},
|
60
|
+
{
|
61
|
+
"name": "phone",
|
62
|
+
"iconClass": "icon-device-smartphone",
|
63
|
+
"data": "Your mobile phone number",
|
64
|
+
"labelText": "Mobile phone",
|
65
|
+
"tooltip": "Call number",
|
66
|
+
"href": "0123456789"
|
67
|
+
},
|
68
|
+
{
|
69
|
+
"name": "email",
|
70
|
+
"iconClass": "icon-mail",
|
71
|
+
"data": "Your email address",
|
72
|
+
"labelText": "Email",
|
73
|
+
"tooltip": "Send mail",
|
74
|
+
"href": "mail@provider.de"
|
75
|
+
},
|
76
|
+
{
|
77
|
+
"name": "url",
|
78
|
+
"iconClass": "icon-globe",
|
79
|
+
"data": "Your website",
|
80
|
+
"labelText": "Website",
|
81
|
+
"tooltip": "Open website in new tab",
|
82
|
+
"href": "https://www.domain.toplevel"
|
83
|
+
}
|
84
|
+
],
|
85
|
+
"networks": [
|
86
|
+
{
|
87
|
+
"buttonClass": "social-network-facebook",
|
88
|
+
"iconClass": "icon-facebook",
|
89
|
+
"linkText": "facebook",
|
90
|
+
"path": "https://www.facebook.com",
|
91
|
+
"tooltip": "Visit profile on facebook"
|
92
|
+
},
|
93
|
+
{
|
94
|
+
"buttonClass": "social-network-instagram",
|
95
|
+
"iconClass": "icon-instagram",
|
96
|
+
"linkText": "instagram",
|
97
|
+
"path": "https://www.instagram.com",
|
98
|
+
"tooltip": "Visit profile on instagram"
|
99
|
+
},
|
100
|
+
{
|
101
|
+
"buttonClass": "social-network-linkedin",
|
102
|
+
"iconClass": "icon-linkedin",
|
103
|
+
"linkText": "linkedin",
|
104
|
+
"path": "https://www.linkedin.com",
|
105
|
+
"tooltip": "Visit profile on linkedin"
|
106
|
+
}
|
107
|
+
],
|
108
|
+
"profileVisibility": {
|
109
|
+
"casual": [],
|
110
|
+
"founder": ["canSeeLocation"],
|
111
|
+
"investor": ["canSeeLocation"]
|
112
|
+
}
|
113
|
+
}
|
@@ -0,0 +1,111 @@
|
|
1
|
+
{
|
2
|
+
"person": {
|
3
|
+
"id": 1,
|
4
|
+
"type": "founder",
|
5
|
+
"imgSrc": "https://comand-ui.com/samples/images/user-images/fake-user-6.jpg",
|
6
|
+
"bgImgSrc": "/images/background-images/background-abstract-1.jpg",
|
7
|
+
"lastName": "Founder",
|
8
|
+
"middleName": "",
|
9
|
+
"firstName": "Michael",
|
10
|
+
"birthdate": "1985-08-12",
|
11
|
+
"gender": "m",
|
12
|
+
"profession": "Marketing",
|
13
|
+
"countryIso": "de",
|
14
|
+
"companyName": "The Next Unicorn Inc.",
|
15
|
+
"about": "Making the world better step by step!",
|
16
|
+
"group": "Friends"
|
17
|
+
},
|
18
|
+
"account": {
|
19
|
+
"online": true,
|
20
|
+
"type": "premium",
|
21
|
+
"created": "2023-03-17"
|
22
|
+
},
|
23
|
+
"tags": [
|
24
|
+
{
|
25
|
+
"name": "Marketing"
|
26
|
+
},
|
27
|
+
{
|
28
|
+
"name": "Sales"
|
29
|
+
},
|
30
|
+
{
|
31
|
+
"name": "Procurement"
|
32
|
+
}
|
33
|
+
],
|
34
|
+
"contact": [
|
35
|
+
{
|
36
|
+
"name": "companyName",
|
37
|
+
"iconClass": "icon-company",
|
38
|
+
"data": "Your company name",
|
39
|
+
"labelText": "companyName"
|
40
|
+
},
|
41
|
+
{
|
42
|
+
"name": "address",
|
43
|
+
"iconClass": "icon-location-set",
|
44
|
+
"labelText": "Address",
|
45
|
+
"streetNo": "Your Street/No",
|
46
|
+
"zip": "Your zip",
|
47
|
+
"city": "Grevenbroich",
|
48
|
+
"miscInfo": "Misc. info",
|
49
|
+
"country": "de",
|
50
|
+
"tooltip": "Open address on GoogleMaps™ (in new tab)"
|
51
|
+
},
|
52
|
+
{
|
53
|
+
"name": "phone",
|
54
|
+
"iconClass": "icon-phone",
|
55
|
+
"data": "Your phone number",
|
56
|
+
"labelText": "Telephone",
|
57
|
+
"tooltip": "Call number",
|
58
|
+
"href": "00492181818123"
|
59
|
+
},
|
60
|
+
{
|
61
|
+
"name": "phone",
|
62
|
+
"iconClass": "icon-device-smartphone",
|
63
|
+
"data": "Your mobile phone number",
|
64
|
+
"labelText": "Mobile phone",
|
65
|
+
"tooltip": "Call number",
|
66
|
+
"href": "00491721055725"
|
67
|
+
},
|
68
|
+
{
|
69
|
+
"name": "email",
|
70
|
+
"iconClass": "icon-mail",
|
71
|
+
"data": "Your email address",
|
72
|
+
"labelText": "Email",
|
73
|
+
"tooltip": "Send mail",
|
74
|
+
"href": "biock@biock.com"
|
75
|
+
},
|
76
|
+
{
|
77
|
+
"name": "url",
|
78
|
+
"iconClass": "icon-globe",
|
79
|
+
"data": "Your web site",
|
80
|
+
"labelText": "Web site",
|
81
|
+
"tooltip": "Open website in browser",
|
82
|
+
"href": "https://www.biock.com"
|
83
|
+
}
|
84
|
+
],
|
85
|
+
"networks": [
|
86
|
+
{
|
87
|
+
"buttonClass": "social-network-facebook",
|
88
|
+
"iconClass": "icon-facebook",
|
89
|
+
"type": "href",
|
90
|
+
"path": "https://www.facebook.com",
|
91
|
+
"target": "_blank",
|
92
|
+
"tooltip": "Visit profile on facebook"
|
93
|
+
},
|
94
|
+
{
|
95
|
+
"buttonClass": "social-network-x",
|
96
|
+
"iconClass": "icon-x",
|
97
|
+
"type": "href",
|
98
|
+
"path": "https://www.twitter.com",
|
99
|
+
"target": "_blank",
|
100
|
+
"tooltip": "Visit profile on X"
|
101
|
+
},
|
102
|
+
{
|
103
|
+
"buttonClass": "social-network-linkedin",
|
104
|
+
"iconClass": "icon-linkedin",
|
105
|
+
"type": "href",
|
106
|
+
"path": "https://www.linkedin.com",
|
107
|
+
"target": "_blank",
|
108
|
+
"tooltip": "Visit profile on linkedin"
|
109
|
+
}
|
110
|
+
]
|
111
|
+
}
|
@@ -0,0 +1,114 @@
|
|
1
|
+
{
|
2
|
+
"person": {
|
3
|
+
"id": 1,
|
4
|
+
"type": "investor",
|
5
|
+
"imgSrc": "/images/user-images/fake-user-1.jpg",
|
6
|
+
"bgImgSrc": "/images/background-images/golden-gate-bridge.jpg",
|
7
|
+
"imgStyle": "color",
|
8
|
+
"lastName": "Investor",
|
9
|
+
"middleName": "",
|
10
|
+
"firstName": "Julia",
|
11
|
+
"birthdate": "1980-12-22",
|
12
|
+
"gender": "f",
|
13
|
+
"countryIso": "de",
|
14
|
+
"gmt": "+1",
|
15
|
+
"profession": "Owner",
|
16
|
+
"companyName": "VC Investments",
|
17
|
+
"companyLink": "",
|
18
|
+
"about": "I am a great investor!"
|
19
|
+
},
|
20
|
+
"account": {
|
21
|
+
"online": true,
|
22
|
+
"type": "premium",
|
23
|
+
"isMyAccount": true,
|
24
|
+
"created": "2023-03-18"
|
25
|
+
},
|
26
|
+
"tags": [
|
27
|
+
{
|
28
|
+
"name": "Trainings"
|
29
|
+
},
|
30
|
+
{
|
31
|
+
"name": "Investment"
|
32
|
+
},
|
33
|
+
{
|
34
|
+
"name": "Fundings"
|
35
|
+
}
|
36
|
+
],
|
37
|
+
"contact": [
|
38
|
+
{
|
39
|
+
"name": "companyName",
|
40
|
+
"iconClass": "icon-company",
|
41
|
+
"data": "Your company name",
|
42
|
+
"labelText": "companyName"
|
43
|
+
},
|
44
|
+
{
|
45
|
+
"name": "address",
|
46
|
+
"iconClass": "icon-location-set",
|
47
|
+
"labelText": "Address",
|
48
|
+
"streetNo": "Your Street/No",
|
49
|
+
"zip": "Your zip",
|
50
|
+
"city": "San Francisco",
|
51
|
+
"miscInfo": "Misc. info",
|
52
|
+
"country": "de",
|
53
|
+
"tooltip": "Open address on GoogleMaps™ (in new tab)"
|
54
|
+
},
|
55
|
+
{
|
56
|
+
"name": "phone",
|
57
|
+
"iconClass": "icon-phone",
|
58
|
+
"data": "Your phone number",
|
59
|
+
"labelText": "Telephone",
|
60
|
+
"tooltip": "Call number",
|
61
|
+
"href": "00492181818123"
|
62
|
+
},
|
63
|
+
{
|
64
|
+
"name": "phone",
|
65
|
+
"iconClass": "icon-device-smartphone",
|
66
|
+
"data": "Your mobile phone number",
|
67
|
+
"labelText": "Mobile phone",
|
68
|
+
"tooltip": "Call number",
|
69
|
+
"href": "00491721055725"
|
70
|
+
},
|
71
|
+
{
|
72
|
+
"name": "email",
|
73
|
+
"iconClass": "icon-mail",
|
74
|
+
"data": "Your email address",
|
75
|
+
"labelText": "Email",
|
76
|
+
"tooltip": "Send mail",
|
77
|
+
"href": "biock@biock.com"
|
78
|
+
},
|
79
|
+
{
|
80
|
+
"name": "url",
|
81
|
+
"iconClass": "icon-globe",
|
82
|
+
"data": "Your web site",
|
83
|
+
"labelText": "Web site",
|
84
|
+
"tooltip": "Open website in browser",
|
85
|
+
"href": "https://www.biock.com"
|
86
|
+
}
|
87
|
+
],
|
88
|
+
"networks": [
|
89
|
+
{
|
90
|
+
"buttonClass": "social-network-facebook",
|
91
|
+
"iconClass": "icon-facebook",
|
92
|
+
"type": "href",
|
93
|
+
"path": "https://www.facebook.com",
|
94
|
+
"target": "_blank",
|
95
|
+
"tooltip": "Visit profile on facebook"
|
96
|
+
},
|
97
|
+
{
|
98
|
+
"buttonClass": "social-network-x",
|
99
|
+
"iconClass": "icon-x",
|
100
|
+
"type": "href",
|
101
|
+
"path": "https://www.twitter.com",
|
102
|
+
"target": "_blank",
|
103
|
+
"tooltip": "Visit profile on X"
|
104
|
+
},
|
105
|
+
{
|
106
|
+
"buttonClass": "social-network-linkedin",
|
107
|
+
"iconClass": "icon-linkedin",
|
108
|
+
"type": "href",
|
109
|
+
"path": "https://www.linkedin.com",
|
110
|
+
"target": "_blank",
|
111
|
+
"tooltip": "Visit profile on linkedin"
|
112
|
+
}
|
113
|
+
]
|
114
|
+
}
|
@@ -582,11 +582,14 @@ export default {
|
|
582
582
|
align-self: auto;
|
583
583
|
}
|
584
584
|
|
585
|
-
.box-header
|
586
|
-
|
585
|
+
.box-header {
|
586
|
+
.cmd-headline {
|
587
|
+
margin-bottom: 0;
|
588
|
+
text-decoration: none;
|
587
589
|
|
588
|
-
|
589
|
-
|
590
|
+
&:only-child {
|
591
|
+
width: 100% /* stretch in flex-container */
|
592
|
+
}
|
590
593
|
}
|
591
594
|
}
|
592
595
|
|
@@ -359,11 +359,11 @@ export default {
|
|
359
359
|
|
360
360
|
// set default-tooltip if customTooltip is not set
|
361
361
|
if (this.validationStatus === 'error') {
|
362
|
-
return this.getMessage("
|
362
|
+
return this.getMessage("form_element.validation_tooltip.an_error_occurred")
|
363
363
|
} else if (this.validationStatus === 'success') {
|
364
|
-
return this.getMessage("
|
364
|
+
return this.getMessage("form_element.validation_tooltip.information_is_filled_correctly")
|
365
365
|
}
|
366
|
-
return this.getMessage("
|
366
|
+
return this.getMessage("form_element.validation_tooltip.open_field_requirements")
|
367
367
|
},
|
368
368
|
// get the displayed option name
|
369
369
|
optionName() {
|
@@ -533,6 +533,18 @@ export default {
|
|
533
533
|
}
|
534
534
|
}
|
535
535
|
|
536
|
+
a {
|
537
|
+
gap: calc(var(--icon-and-text-gap) / 2) !important;
|
538
|
+
|
539
|
+
span {
|
540
|
+
text-decoration: none !important;
|
541
|
+
|
542
|
+
&[class*="icon"]:last-child {
|
543
|
+
margin-left: auto !important; /* overwrite default settings from frontend-framework */
|
544
|
+
}
|
545
|
+
}
|
546
|
+
}
|
547
|
+
|
536
548
|
> ul {
|
537
549
|
height: var(--form-input-height);
|
538
550
|
margin: 0;
|
@@ -567,7 +579,7 @@ export default {
|
|
567
579
|
}
|
568
580
|
|
569
581
|
> [class*="icon-"]:last-child {
|
570
|
-
margin-left: auto;
|
582
|
+
margin-left: auto !important; /* overwrite default settings from frontend-framework */
|
571
583
|
font-size: var(--icon-size-small);
|
572
584
|
}
|
573
585
|
|
@@ -584,7 +596,6 @@ export default {
|
|
584
596
|
}
|
585
597
|
|
586
598
|
&.open {
|
587
|
-
border-bottom: 0;
|
588
599
|
ul {
|
589
600
|
border-bottom-left-radius: var(--default-border-radius);
|
590
601
|
border-bottom-right-radius: var(--default-border-radius);
|
@@ -730,9 +741,11 @@ export default {
|
|
730
741
|
> ul {
|
731
742
|
> li:first-child {
|
732
743
|
> a {
|
744
|
+
text-decoration: none !important;
|
733
745
|
border-color: var(--status-color);
|
734
746
|
|
735
747
|
> span, [class*="icon-"] {
|
748
|
+
text-decoration: none !important;
|
736
749
|
color: var(--status-color);
|
737
750
|
}
|
738
751
|
|
@@ -3,8 +3,8 @@
|
|
3
3
|
:class="{error: errorOccurred}" :novalidate="novalidate" :method="formMethod">
|
4
4
|
<template v-if="useFieldset">
|
5
5
|
<fieldset class="flex-container">
|
6
|
-
<legend :class="{hidden : !
|
7
|
-
|
6
|
+
<legend :class="{hidden : !legendOptions.show, 'align-left': legendOptions.align === 'left'}">{{
|
7
|
+
legendOptions.text
|
8
8
|
}}
|
9
9
|
</legend>
|
10
10
|
<CmdSystemMessage v-if="systemMessage.show && systemMessage.message" :validationStatus="systemMessage.validationStatus" :systemMessage="systemMessage.message"/>
|
@@ -120,13 +120,7 @@ export default {
|
|
120
120
|
*/
|
121
121
|
legend: {
|
122
122
|
type: Object,
|
123
|
-
|
124
|
-
return {
|
125
|
-
show: true,
|
126
|
-
align: "left",
|
127
|
-
text: "Legend"
|
128
|
-
}
|
129
|
-
}
|
123
|
+
required: false
|
130
124
|
},
|
131
125
|
/**
|
132
126
|
* activate if form-elements should be given by slot
|
@@ -183,6 +177,14 @@ export default {
|
|
183
177
|
}
|
184
178
|
},
|
185
179
|
computed: {
|
180
|
+
legendOptions() {
|
181
|
+
return {
|
182
|
+
show: true,
|
183
|
+
align: "left",
|
184
|
+
text: "Legend",
|
185
|
+
...this.legend
|
186
|
+
}
|
187
|
+
},
|
186
188
|
submitButtonOptions() {
|
187
189
|
return {
|
188
190
|
iconClass: "icon-check",
|
@@ -272,11 +272,11 @@ export default {
|
|
272
272
|
|
273
273
|
// set default-tooltip if customTooltip is not set
|
274
274
|
if (this.validationStatus === 'error') {
|
275
|
-
return this.getMessage("
|
275
|
+
return this.getMessage("form_element.validation_tooltip.an_error_occurred")
|
276
276
|
} else if (this.validationStatus === 'success') {
|
277
|
-
return this.getMessage("
|
277
|
+
return this.getMessage("form_element.validation_tooltip.information_is_filled_correctly")
|
278
278
|
}
|
279
|
-
return this.getMessage("
|
279
|
+
return this.getMessage("form_element.validation_tooltip.open_field_requirements")
|
280
280
|
},
|
281
281
|
inputValue: {
|
282
282
|
// read inputValue
|
@@ -322,7 +322,6 @@ export default {
|
|
322
322
|
/* overwrite default behavior from frontend-framework */
|
323
323
|
> .label-text {
|
324
324
|
display: inline-flex;
|
325
|
-
margin: 0;
|
326
325
|
|
327
326
|
> span + a:has([class*="icon-"]) {
|
328
327
|
margin-left: calc(var(--default-margin) / 2);
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<div class="cmd-list-of-requirements">
|
3
3
|
<!-- begin CmdHeadline -->
|
4
4
|
<CmdHeadline v-if="showHeadline" :headline-level="cmdHeadline.headlineLevel">
|
5
|
-
{{ headlineRequirements }}<template v-if="labelText"><br
|
5
|
+
{{ headlineRequirements }}<template v-if="labelText"><br/>"{{ labelText }}"</template>
|
6
6
|
</CmdHeadline>
|
7
7
|
<!-- end CmdHeadline -->
|
8
8
|
|
@@ -159,22 +159,22 @@ export default {
|
|
159
159
|
}
|
160
160
|
|
161
161
|
.error, .error span {
|
162
|
-
--status-color: var(--error-color);
|
162
|
+
--status-color: var(--error-color) !important; /* assure status-color is not overwritten by form-element-status */
|
163
163
|
}
|
164
164
|
|
165
165
|
.warning, .warning span {
|
166
|
-
--status-color: var(--warning-color);
|
166
|
+
--status-color: var(--warning-color) !important; /* assure status-color is not overwritten by form-element-status */
|
167
167
|
}
|
168
168
|
|
169
169
|
.success, .success span {
|
170
|
-
--status-color: var(--success-color);
|
170
|
+
--status-color: var(--success-color) !important; /* assure status-color is not overwritten by form-element-status */
|
171
171
|
}
|
172
172
|
|
173
173
|
.info, .info span {
|
174
|
-
--status-color: var(--info-color);
|
174
|
+
--status-color: var(--info-color) !important; /* assure status-color is not overwritten by form-element-status */
|
175
175
|
}
|
176
176
|
|
177
|
-
dt {
|
177
|
+
dt, dt span[class*="icon-"] {
|
178
178
|
color: var(--status-color);
|
179
179
|
}
|
180
180
|
|