comand-component-library 4.2.51 → 4.2.52
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 +2444 -2145
- package/dist/style.css +1 -1
- package/package.json +2 -2
- package/src/ComponentLibrary.vue +131 -37
- package/src/assets/data/box-product.json +15 -10
- package/src/assets/data/box-user.json +8 -8
- package/src/assets/data/listOfComponents.json +1 -1
- package/src/assets/data/pages/boxes-team-overview.json +8 -8
- package/src/componentSettingsDataAndControls.vue +82 -10
- package/src/components/CmdAddressData.vue +2 -0
- package/src/components/CmdAddressDataItem.vue +2 -1
- package/src/components/CmdBackToTopButton.vue +12 -3
- package/src/components/CmdBankAccountData.vue +2 -0
- package/src/components/CmdBasicForm.vue +6 -2
- package/src/components/CmdBox.vue +62 -35
- package/src/components/CmdBoxWrapper.vue +6 -0
- package/src/components/CmdBreadcrumbs.vue +2 -0
- package/src/components/CmdCodeOutput.vue +2 -0
- package/src/components/CmdCompanyLogo.vue +2 -0
- package/src/components/CmdContainer.vue +100 -87
- package/src/components/CmdCookieDisclaimer.vue +12 -1
- package/src/components/CmdCopyrightInformation.vue +2 -0
- package/src/components/CmdFakeSelect.vue +10 -6
- package/src/components/CmdFancyBox.vue +2 -0
- package/src/components/CmdFlexibleScrollContainer.vue +2 -0
- package/src/components/CmdForm.vue +2 -0
- package/src/components/CmdFormElement.vue +11 -1
- package/src/components/CmdFormFilters.vue +2 -0
- package/src/components/CmdGoogleMaps.vue +2 -0
- package/src/components/CmdHeadline.vue +23 -1
- package/src/components/CmdIcon.vue +2 -0
- package/src/components/CmdImage.vue +3 -0
- package/src/components/CmdImageGallery.vue +3 -1
- package/src/components/CmdImageZoom.vue +2 -0
- package/src/components/CmdInnerLink.vue +2 -0
- package/src/components/CmdInputGroup.vue +2 -0
- package/src/components/CmdLink.vue +16 -10
- package/src/components/CmdList.vue +136 -99
- package/src/components/CmdListOfLinksItem.vue +2 -0
- package/src/components/CmdListOfRequirements.vue +2 -0
- package/src/components/CmdLoginForm.vue +2 -2
- package/src/components/CmdMailTool.vue +2 -0
- package/src/components/CmdMailToolEntry.vue +2 -1
- package/src/components/CmdMailToolFilter.vue +2 -0
- package/src/components/CmdMainNavigation.vue +2 -0
- package/src/components/CmdMultistepFormProgressBar.vue +16 -10
- package/src/components/CmdProgressBar.vue +1 -1
- package/src/components/CmdSiteSearch.vue +10 -1
- package/src/components/CmdSlideButton.vue +3 -4
- package/src/components/CmdSlideshow.vue +10 -1
- package/src/components/CmdSmartSearch.vue +42 -11
- package/src/components/CmdSystemMessage.vue +8 -5
- package/src/components/CmdTable.vue +8 -6
- package/src/components/CmdTabs.vue +37 -3
- package/src/components/CmdThumbnailScroller.vue +12 -3
- package/src/components/CmdUploadForm.vue +12 -1
- package/src/components/CmdFlexContainer.vue +0 -109
@@ -1,5 +1,5 @@
|
|
1
1
|
<template>
|
2
|
-
<transition :name="
|
2
|
+
<transition :name="transition">
|
3
3
|
<div
|
4
4
|
v-if="showSystemMessage"
|
5
5
|
:class="['cmd-system-message', 'system-message', 'flex-container', 'vertical', { 'full-width': fullWidth }, validationStatus]"
|
@@ -51,11 +51,13 @@ export default {
|
|
51
51
|
},
|
52
52
|
props: {
|
53
53
|
/**
|
54
|
-
*
|
54
|
+
* define the transition when system message disappears
|
55
|
+
*
|
56
|
+
* @allowedValues: "none", "fade", "scroll"
|
55
57
|
*/
|
56
|
-
|
57
|
-
type:
|
58
|
-
default:
|
58
|
+
transition: {
|
59
|
+
type: String,
|
60
|
+
default: "fade"
|
59
61
|
},
|
60
62
|
/**
|
61
63
|
* validation-status for the message-box
|
@@ -156,6 +158,7 @@ export default {
|
|
156
158
|
display: inline-flex;
|
157
159
|
margin: var(--default-margin) 0;
|
158
160
|
align-items: center;
|
161
|
+
align-self: flex-start; /* if used in flex-container component should not be stretched */
|
159
162
|
|
160
163
|
> :last-child {
|
161
164
|
margin-bottom: 0;
|
@@ -48,7 +48,7 @@
|
|
48
48
|
</tr>
|
49
49
|
</thead>
|
50
50
|
</slot>
|
51
|
-
<transition :name="
|
51
|
+
<transition :name="transition">
|
52
52
|
<slot name="table-body">
|
53
53
|
<tbody v-show="showTableData" aria-expanded="true">
|
54
54
|
<tr :class="{'active' : tableData.rowIndexHighlighted === indexRows}"
|
@@ -60,7 +60,7 @@
|
|
60
60
|
</tbody>
|
61
61
|
</slot>
|
62
62
|
</transition>
|
63
|
-
<transition :name="
|
63
|
+
<transition :name="transition">
|
64
64
|
<slot name="table-foot">
|
65
65
|
<tfoot v-if="tableData.tfoot && tableData.tfoot.length && showTableData" aria-expanded="true">
|
66
66
|
<tr>
|
@@ -98,11 +98,13 @@ export default {
|
|
98
98
|
},
|
99
99
|
props: {
|
100
100
|
/**
|
101
|
-
*
|
101
|
+
* define the transition for table-body and -footer when collapsible table-data is used
|
102
|
+
*
|
103
|
+
* @allowedValues: "none", "fade", "scroll"
|
102
104
|
*/
|
103
|
-
|
104
|
-
type:
|
105
|
-
default:
|
105
|
+
transition: {
|
106
|
+
type: String,
|
107
|
+
default: "fade"
|
106
108
|
},
|
107
109
|
/**
|
108
110
|
* table data (incl. caption, thead, tbody)
|
@@ -1,9 +1,9 @@
|
|
1
1
|
<template>
|
2
|
-
<div class="cmd-tabs">
|
2
|
+
<div :class="['cmd-tabs', highlightLevel]">
|
3
3
|
<!-- being tab-list -->
|
4
4
|
<ul :class="{'stretch-tabs' : stretchTabs}" role="tablist">
|
5
5
|
<li v-for="(tab, index) in tabs" :class="{active : showTab === index}" :key="index" role="tab">
|
6
|
-
<a href="#" @click.prevent="setActiveTab(index)" :title="!tab.text ? tab.tooltip : undefined">
|
6
|
+
<a href="#" :class="highlightLevel" @click.prevent="setActiveTab(index)" :title="!tab.text ? tab.tooltip : undefined">
|
7
7
|
<!-- begin CmdIcon -->
|
8
8
|
<CmdIcon v-if="tab.iconClass" :iconClass="tab.iconClass" :type="tab.iconType" />
|
9
9
|
<!-- end CmdIcon -->
|
@@ -88,6 +88,21 @@ export default {
|
|
88
88
|
type: Boolean,
|
89
89
|
default: false
|
90
90
|
},
|
91
|
+
/**
|
92
|
+
* set highlight-level for tabs
|
93
|
+
*
|
94
|
+
* @allowedValues: "none", "primary", "secondary", "tertiary"
|
95
|
+
*/
|
96
|
+
highlightLevel: {
|
97
|
+
type: Boolean,
|
98
|
+
default: "primary",
|
99
|
+
validator(value) {
|
100
|
+
return value === "none" ||
|
101
|
+
value === "primary" ||
|
102
|
+
value === "secondary" ||
|
103
|
+
value === "tertiary"
|
104
|
+
}
|
105
|
+
},
|
91
106
|
/**
|
92
107
|
* set default active/shown tab
|
93
108
|
*/
|
@@ -202,17 +217,36 @@ export default {
|
|
202
217
|
|
203
218
|
> div {
|
204
219
|
padding: var(--default-padding);
|
205
|
-
border: var(--
|
220
|
+
border: var(--default-border);
|
206
221
|
border-radius: var(--default-border-radius);
|
207
222
|
background: var(--color-scheme-background);
|
208
223
|
border-top-left-radius: 0;
|
209
224
|
|
225
|
+
|
210
226
|
> div {
|
211
227
|
*:last-child {
|
212
228
|
margin-bottom: 0;
|
213
229
|
}
|
214
230
|
}
|
215
231
|
}
|
232
|
+
|
233
|
+
&.primary {
|
234
|
+
& > div {
|
235
|
+
border-color: var(--primary-color);
|
236
|
+
}
|
237
|
+
}
|
238
|
+
|
239
|
+
&.secondary {
|
240
|
+
& > div {
|
241
|
+
border-color: var(--secondary-color);
|
242
|
+
}
|
243
|
+
}
|
244
|
+
|
245
|
+
&.tertiary {
|
246
|
+
& > div {
|
247
|
+
border-color: var(--tertiary-color);
|
248
|
+
}
|
249
|
+
}
|
216
250
|
}
|
217
251
|
|
218
252
|
/* end cmd-tabs ------------------------------------------------------------------------------------------ */
|
@@ -25,8 +25,8 @@
|
|
25
25
|
/>
|
26
26
|
<!-- end CmdSlideButton -->
|
27
27
|
|
28
|
-
<!-- begin list of images
|
29
|
-
<transition-group name="
|
28
|
+
<!-- begin list of images -->
|
29
|
+
<transition-group :name="transition" tag="ul">
|
30
30
|
<li v-for="(item, index) in items" :key="index">
|
31
31
|
<a v-if="!editModeContext" :href="executeOnClick === 'url' ? item.url : '#'"
|
32
32
|
@click="executeLink(index, $event)"
|
@@ -78,7 +78,7 @@
|
|
78
78
|
<!-- end show placeholder if no image exists (and component is not edited) -->
|
79
79
|
</li>
|
80
80
|
</transition-group>
|
81
|
-
<!-- end list of images
|
81
|
+
<!-- end list of images -->
|
82
82
|
|
83
83
|
<!-- begin CmdSlideButton -->
|
84
84
|
<CmdSlideButton
|
@@ -117,6 +117,15 @@ export default {
|
|
117
117
|
}
|
118
118
|
},
|
119
119
|
props: {
|
120
|
+
/**
|
121
|
+
* define the transition when thumbnails should change
|
122
|
+
*
|
123
|
+
* @allowedValues: "none", "fade", "scroll"
|
124
|
+
*/
|
125
|
+
transition: {
|
126
|
+
type: String,
|
127
|
+
default: "scroll"
|
128
|
+
},
|
120
129
|
/**
|
121
130
|
* orientation for scroller
|
122
131
|
*
|
@@ -190,7 +190,8 @@
|
|
190
190
|
/>
|
191
191
|
<!-- end CmdIcon -->
|
192
192
|
</a>
|
193
|
-
|
193
|
+
<!-- begin list of file extensions -->
|
194
|
+
<transition :name="transitionListOfFileExtensions">
|
194
195
|
<ul v-if="showListOfFileExtensions" class="list-of-file-extensions">
|
195
196
|
<li
|
196
197
|
v-for="(fileExtension, index) in allowedFileExtensions"
|
@@ -201,6 +202,7 @@
|
|
201
202
|
</li>
|
202
203
|
</ul>
|
203
204
|
</transition>
|
205
|
+
<!-- end list of file extensions -->
|
204
206
|
</dd>
|
205
207
|
</dl>
|
206
208
|
</div>
|
@@ -381,6 +383,15 @@ export default {
|
|
381
383
|
this.resetForm.systemMessageStatus = this.systemMessageStatus
|
382
384
|
},
|
383
385
|
props: {
|
386
|
+
/**
|
387
|
+
* define the transition when the list of file extensions is toggled
|
388
|
+
*
|
389
|
+
* @allowedValues: "none", "fade", "scroll"
|
390
|
+
*/
|
391
|
+
transitionListOfFileExtensions: {
|
392
|
+
type: String,
|
393
|
+
default: "fade"
|
394
|
+
},
|
384
395
|
/**
|
385
396
|
* activate if transition for hiding list of file extensions
|
386
397
|
*/
|
@@ -1,109 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<div :class="['cmd-flex-container', 'flex-container', htmlClasses]">
|
3
|
-
<!-- begin slot-content -->
|
4
|
-
<slot></slot>
|
5
|
-
<!-- end slot-content -->
|
6
|
-
</div>
|
7
|
-
</template>
|
8
|
-
|
9
|
-
<script>
|
10
|
-
export default {
|
11
|
-
name: "CmdFlexContainer",
|
12
|
-
props: {
|
13
|
-
/**
|
14
|
-
* activate if content should be aligned vertically
|
15
|
-
*
|
16
|
-
* @affectsStyling: true
|
17
|
-
*/
|
18
|
-
alignContentVertical: {
|
19
|
-
type: String,
|
20
|
-
required: false
|
21
|
-
},
|
22
|
-
/**
|
23
|
-
* activate if no gap between items should be used
|
24
|
-
*
|
25
|
-
* @affectsStyling: true
|
26
|
-
*/
|
27
|
-
noGap: {
|
28
|
-
type: Boolean,
|
29
|
-
default: true
|
30
|
-
},
|
31
|
-
/**
|
32
|
-
* activate if items should not behave like flex-items (they are now shrunk to their content)
|
33
|
-
*
|
34
|
-
* @affectsStyling: true
|
35
|
-
*/
|
36
|
-
noFlex: {
|
37
|
-
type: Boolean,
|
38
|
-
default: true
|
39
|
-
},
|
40
|
-
/**
|
41
|
-
* define how the items will be aligned vertically
|
42
|
-
*
|
43
|
-
* attention: if alignContentVertical is activated, this property defines the horizontal alignment
|
44
|
-
*
|
45
|
-
* @allowedValues: top, flex-start, center, flex-end, bottom
|
46
|
-
* @affectsStyling: true
|
47
|
-
*/
|
48
|
-
alignItems: {
|
49
|
-
type: String,
|
50
|
-
required: false,
|
51
|
-
validator(value) {
|
52
|
-
return value === "top" ||
|
53
|
-
value === "flex-start" ||
|
54
|
-
value === "center" ||
|
55
|
-
value === "flex-end" ||
|
56
|
-
value === "bottom"
|
57
|
-
}
|
58
|
-
},
|
59
|
-
/**
|
60
|
-
* define how the items will be aligned/justified horizontally.
|
61
|
-
*
|
62
|
-
* attention: if alignContentVertical is activated, this property defines the vertical alignment/justification
|
63
|
-
*
|
64
|
-
* @allowedValues: top, flex-start, center, flex-end, bottom, space-between, space-around
|
65
|
-
* @affectsStyling: true
|
66
|
-
*/
|
67
|
-
justifyContent: {
|
68
|
-
type: String,
|
69
|
-
required: false,
|
70
|
-
validator(value) {
|
71
|
-
return value === "top" ||
|
72
|
-
value === "flex-start" ||
|
73
|
-
value === "center" ||
|
74
|
-
value === "flex-end" ||
|
75
|
-
value === "bottom" ||
|
76
|
-
value === "space-between" ||
|
77
|
-
value === "space-around"
|
78
|
-
}
|
79
|
-
}
|
80
|
-
},
|
81
|
-
computed: {
|
82
|
-
htmlClasses() {
|
83
|
-
const htmlClasses = []
|
84
|
-
|
85
|
-
if (this.alignContentVertical) {
|
86
|
-
htmlClasses.push("vertical")
|
87
|
-
}
|
88
|
-
if (this.useGap) {
|
89
|
-
htmlClasses.push("no-gap")
|
90
|
-
}
|
91
|
-
if (this.noFlex) {
|
92
|
-
htmlClasses.push("flex-none")
|
93
|
-
}
|
94
|
-
if (this.alignItems) {
|
95
|
-
htmlClasses.push("align-items-" + this.alignItems)
|
96
|
-
}
|
97
|
-
if (this.justifyContent) {
|
98
|
-
htmlClasses.push("justify-content-" + this.justifyContent)
|
99
|
-
}
|
100
|
-
|
101
|
-
return htmlClasses.join(" ")
|
102
|
-
}
|
103
|
-
}
|
104
|
-
}
|
105
|
-
</script>
|
106
|
-
|
107
|
-
<style>
|
108
|
-
|
109
|
-
</style>
|