comand-component-library 4.0.16 → 4.0.18
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 +3080 -2894
- package/dist/comand-component-library.umd.cjs +3 -3
- package/dist/style.css +1 -1
- package/package.json +2 -2
- package/src/ComponentLibrary.vue +15 -5
- package/src/assets/data/address-data.json +2 -0
- package/src/assets/data/listOfComponents.json +1 -0
- package/src/assets/data/main-navigation.json +3 -3
- package/src/componentSettingsDataAndControls.vue +2 -1
- package/src/components/CmdAddressData.vue +40 -11
- package/src/components/CmdAddressDataItem.vue +20 -13
- package/src/{pages/BasicForm.vue → components/CmdBasicForm.vue} +109 -26
- package/src/components/CmdBreadcrumbs.vue +2 -2
- package/src/components/CmdFancyBox.vue +3 -3
- package/src/components/CmdFormElement.vue +6 -1
- package/src/components/CmdHeadline.vue +4 -4
- package/src/components/CmdLoginForm.vue +1 -1
- package/src/components/CmdMainNavigation.vue +1 -1
- package/src/components/CmdPageFooter.vue +36 -0
- package/src/components/CmdPageHeader.vue +2 -2
- package/src/components/CmdSiteFooter.vue +1 -3
- package/src/components/CmdSiteHeader.vue +5 -4
- package/src/components/CmdSlideButton.vue +1 -1
- package/src/components/CmdSwitchLanguage.vue +1 -1
- package/src/index.js +1 -1
- package/src/mixins/{pages/BasicForm → CmdBasicForm}/DefaultMessageProperties.js +5 -2
- package/src/pages/PageOverview.vue +1 -43
@@ -1,18 +1,23 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="cmd-pages-basic-form">
|
3
|
-
<!--
|
4
|
-
<
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
<!-- begin CmdHeadline -->
|
4
|
+
<CmdHeadline v-if="cmdHeadline" v-bind="cmdHeadline" />
|
5
|
+
<!-- end CmdHeadline -->
|
6
|
+
|
7
|
+
<!-- begin CmdForm -->
|
8
|
+
<CmdForm
|
9
|
+
@submit="onSubmit"
|
10
|
+
novalidate="novalidate"
|
11
|
+
:textLegend="getMessage('basic_form.legend')"
|
12
|
+
:submitButton="submitButton"
|
8
13
|
>
|
9
|
-
<div v-if="configuration.salutation" class="flex-container no-flex">
|
14
|
+
<div v-if="configuration.salutation" class="flex-container no-flex order-male-female">
|
10
15
|
<!-- begin cmd-form-element -->
|
11
16
|
<CmdFormElement
|
12
17
|
element="input"
|
13
18
|
type="radio"
|
14
19
|
:labelText="getMessage('basic_form.labeltext.salutation_male')"
|
15
|
-
:name="configuration.salutation?.name || salutation"
|
20
|
+
:name="configuration.salutation?.name || 'salutation'"
|
16
21
|
inputValue="m"
|
17
22
|
:replaceInputType="configuration.salutation?.replaceInputType"
|
18
23
|
v-model="formData.salutation"
|
@@ -25,7 +30,7 @@
|
|
25
30
|
element="input"
|
26
31
|
type="radio"
|
27
32
|
:labelText="getMessage('basic_form.labeltext.salutation_female')"
|
28
|
-
:name="configuration.salutation?.name || salutation"
|
33
|
+
:name="configuration.salutation?.name || 'salutation'"
|
29
34
|
inputValue="f"
|
30
35
|
:replaceInputType="configuration.salutation?.replaceInputType"
|
31
36
|
v-model="formData.salutation"
|
@@ -38,7 +43,7 @@
|
|
38
43
|
<slot name="top"></slot>
|
39
44
|
<!-- end slot (top) -->
|
40
45
|
|
41
|
-
<div v-if="configuration.lastName || configuration.firstName" class="flex-container">
|
46
|
+
<div v-if="configuration.lastName || configuration.firstName" class="flex-container order-lastname-firstname">
|
42
47
|
<!-- begin cmd-form-element -->
|
43
48
|
<CmdFormElement
|
44
49
|
v-if="configuration.lastName"
|
@@ -71,7 +76,7 @@
|
|
71
76
|
/>
|
72
77
|
<!-- end cmd-form-element -->
|
73
78
|
</div>
|
74
|
-
<div v-if="configuration.email || configuration.phone" class="flex-container">
|
79
|
+
<div v-if="configuration.email || configuration.phone" class="flex-container order-phone-email">
|
75
80
|
<!-- begin cmd-form-element -->
|
76
81
|
<CmdFormElement
|
77
82
|
v-if="configuration.email"
|
@@ -105,7 +110,22 @@
|
|
105
110
|
<!-- end cmd-form-element -->
|
106
111
|
</div>
|
107
112
|
|
108
|
-
<div v-if="configuration.streetNo || configuration.
|
113
|
+
<div v-if="configuration.streetNo || configuration.streetNo || (configuration.zip && configuration.city)" class="flex-container">
|
114
|
+
<!-- begin cmd-form-element -->
|
115
|
+
<CmdFormElement
|
116
|
+
v-if="configuration.country"
|
117
|
+
element="select"
|
118
|
+
:labelText="getMessage('basic_form.labeltext.country')"
|
119
|
+
:selectOptions="configuration.country?.selectOptions"
|
120
|
+
:required="configuration.country?.required"
|
121
|
+
:name="configuration.country?.name || 'country'"
|
122
|
+
v-model="formData.country.value"
|
123
|
+
:status="formData.country.error ? 'error' : ''"
|
124
|
+
@validate="onValidate"
|
125
|
+
@update:modelValue="onCountrySelect"
|
126
|
+
/>
|
127
|
+
<!-- end cmd-form-element -->
|
128
|
+
|
109
129
|
<!-- begin cmd-form-element -->
|
110
130
|
<CmdFormElement
|
111
131
|
v-if="configuration.streetNo"
|
@@ -121,11 +141,27 @@
|
|
121
141
|
/>
|
122
142
|
<!-- end cmd-form-element -->
|
123
143
|
|
124
|
-
|
144
|
+
<!-- begin cmd-form-element -->
|
145
|
+
<CmdFormElement
|
146
|
+
v-if="configuration.pobox"
|
147
|
+
element="input"
|
148
|
+
:type="configuration.pobox?.type || 'text'"
|
149
|
+
:labelText="getMessage('basic_form.labeltext.pobox')"
|
150
|
+
:placeholder="getMessage('basic_form.placeholder.pobox')"
|
151
|
+
:required="configuration.pobox?.required"
|
152
|
+
:name="configuration.pobox?.name || 'pobox'"
|
153
|
+
v-model="formData.pobox.value"
|
154
|
+
:status="formData.pobox.error ? 'error' : ''"
|
155
|
+
@validate="onValidate"
|
156
|
+
/>
|
157
|
+
<!-- end cmd-form-element -->
|
158
|
+
|
159
|
+
<div class="input-wrapper" :class="cityBeforeZip ? 'order-city-zip' : 'order-zip-city'">
|
125
160
|
<!-- begin cmd-form-element -->
|
126
161
|
<CmdFormElement
|
127
162
|
v-if="configuration.zip"
|
128
163
|
element="input"
|
164
|
+
class="input-zip"
|
129
165
|
:type="configuration.zip?.type || 'number'"
|
130
166
|
:labelText="getMessage('basic_form.labeltext.zip')"
|
131
167
|
:placeholder="getMessage('basic_form.placeholder.zip')"
|
@@ -210,9 +246,9 @@
|
|
210
246
|
|
211
247
|
<script>
|
212
248
|
// import mixins
|
213
|
-
import I18n from "../mixins/I18n"
|
214
|
-
import DefaultMessageProperties from "../mixins/
|
215
|
-
import FieldValidation from "../mixins/FieldValidation"
|
249
|
+
import I18n from "../mixins/I18n.js"
|
250
|
+
import DefaultMessageProperties from "../mixins/CmdBasicForm/DefaultMessageProperties.js"
|
251
|
+
import FieldValidation from "../mixins/FieldValidation.js"
|
216
252
|
|
217
253
|
export default {
|
218
254
|
mixins: [
|
@@ -227,7 +263,6 @@ export default {
|
|
227
263
|
},
|
228
264
|
data() {
|
229
265
|
return {
|
230
|
-
//validator: new ContactFormValidator(name => this.label(name)),
|
231
266
|
formData: {
|
232
267
|
salutation: this.configuration.salutation.default,
|
233
268
|
lastName: {value: ''},
|
@@ -237,18 +272,13 @@ export default {
|
|
237
272
|
streetNo: {value: ''},
|
238
273
|
zip: {value: ''},
|
239
274
|
city: {value: ''},
|
275
|
+
pobox: {value: ''},
|
276
|
+
country: {value: ''},
|
240
277
|
additionalAddressInfo: {value: ''},
|
241
278
|
additionalText: {value: ''},
|
242
279
|
acceptPrivacy: {value: false}
|
243
280
|
},
|
244
|
-
|
245
|
-
icon: {
|
246
|
-
show: true,
|
247
|
-
iconClass: "icon-message-send",
|
248
|
-
tooltip: "Send message"
|
249
|
-
},
|
250
|
-
text: "Send"
|
251
|
-
}
|
281
|
+
cityBeforeZip: this.showCityBeforeZip
|
252
282
|
}
|
253
283
|
},
|
254
284
|
props: {
|
@@ -281,6 +311,24 @@ export default {
|
|
281
311
|
required: false,
|
282
312
|
type: "phone"
|
283
313
|
},
|
314
|
+
country: {
|
315
|
+
required: false,
|
316
|
+
element: "select",
|
317
|
+
selectOptions: [
|
318
|
+
{
|
319
|
+
text: "Please select...",
|
320
|
+
value: ""
|
321
|
+
},
|
322
|
+
{
|
323
|
+
text: "United States",
|
324
|
+
value: "us"
|
325
|
+
},
|
326
|
+
{
|
327
|
+
text: "Germany",
|
328
|
+
value: "de"
|
329
|
+
},
|
330
|
+
]
|
331
|
+
},
|
284
332
|
streetNo: {
|
285
333
|
required: false,
|
286
334
|
type: "text"
|
@@ -308,6 +356,13 @@ export default {
|
|
308
356
|
}
|
309
357
|
}
|
310
358
|
},
|
359
|
+
/**
|
360
|
+
* activate to show city first/left then zip next/right
|
361
|
+
*/
|
362
|
+
showCityBeforeZip: {
|
363
|
+
type: Boolean,
|
364
|
+
default: false
|
365
|
+
},
|
311
366
|
/**
|
312
367
|
* receiver e-mail-address the form is sent to
|
313
368
|
*/
|
@@ -329,12 +384,24 @@ export default {
|
|
329
384
|
primary: true
|
330
385
|
}
|
331
386
|
}
|
387
|
+
},
|
388
|
+
/**
|
389
|
+
* properties for CmdHeadline-component
|
390
|
+
*/
|
391
|
+
cmdHeadline: {
|
392
|
+
type: Object,
|
393
|
+
default() {
|
394
|
+
return {
|
395
|
+
headlineText: "Basic Form",
|
396
|
+
headlineLevel: 3
|
397
|
+
}
|
398
|
+
}
|
332
399
|
}
|
333
400
|
},
|
334
401
|
mounted() {
|
335
|
-
this.$refs.dataPrivacy?.querySelector(
|
402
|
+
this.$refs.dataPrivacy?.querySelector(".fancybox")?.addEventListener("click", event => {
|
336
403
|
event.preventDefault()
|
337
|
-
openFancyBox({url: event.target.getAttribute(
|
404
|
+
openFancyBox({url: event.target.getAttribute("href")})
|
338
405
|
})
|
339
406
|
},
|
340
407
|
methods: {
|
@@ -349,6 +416,9 @@ export default {
|
|
349
416
|
|
350
417
|
event.preventDefault();
|
351
418
|
},
|
419
|
+
onCountrySelect(event) {
|
420
|
+
this.cityBeforeZip = event === 'us' || event === 'uk';
|
421
|
+
},
|
352
422
|
onValidate() {
|
353
423
|
this.formData = Object.assign({}, this.validator.validate(this.formData));
|
354
424
|
},
|
@@ -361,6 +431,11 @@ export default {
|
|
361
431
|
openDataPrivacy(url) {
|
362
432
|
openFancyBox({url})
|
363
433
|
}
|
434
|
+
},
|
435
|
+
watch: {
|
436
|
+
showCityBeforeZip() {
|
437
|
+
this.cityBeforeZip = this.showCityBeforeZip
|
438
|
+
}
|
364
439
|
}
|
365
440
|
}
|
366
441
|
</script>
|
@@ -369,6 +444,14 @@ export default {
|
|
369
444
|
.cmd-pages-basic-form {
|
370
445
|
fieldset {
|
371
446
|
margin: 0;
|
447
|
+
|
448
|
+
.order-city-zip {
|
449
|
+
flex-direction: row-reverse;
|
450
|
+
}
|
451
|
+
|
452
|
+
.input-zip {
|
453
|
+
max-width: 30%;
|
454
|
+
}
|
372
455
|
}
|
373
456
|
}
|
374
457
|
</style>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<ul class="cmd-breadcrumbs">
|
3
|
-
<li v-if="breadcrumbLabel">{{ breadcrumbLabel }}</li>
|
3
|
+
<li v-if="breadcrumbLabel" class="breadcrumb-label">{{ breadcrumbLabel }}</li>
|
4
4
|
<li v-for="(link, index) in breadcrumbLinks || []" :key="index">
|
5
5
|
<!-- begin type 'href' -->
|
6
6
|
<a v-if="link.type === 'href'" :href="link.path">
|
@@ -84,7 +84,7 @@ export default {
|
|
84
84
|
padding: 0 calc(var(--default-padding) / 2);
|
85
85
|
}
|
86
86
|
|
87
|
-
|
87
|
+
&.breadcrumb-label {
|
88
88
|
margin-right: calc(var(--default-margin) / 2);
|
89
89
|
}
|
90
90
|
|
@@ -73,7 +73,7 @@
|
|
73
73
|
<!-- end CmdImage -->
|
74
74
|
</div>
|
75
75
|
<div v-else-if="fancyBoxContent" class="content" v-html="fancyBoxContent"></div>
|
76
|
-
<div v-else-if="fancyBoxElements" class="content"></div>
|
76
|
+
<div v-else-if="fancyBoxElements" class="content" ref="elements"></div>
|
77
77
|
<div v-else-if="fancyBoxGallery" class="content">
|
78
78
|
<!-- begin CmdSlideButton -->
|
79
79
|
<CmdSlideButton @click.prevent="showPrevItem" slideButtonType="prev"/>
|
@@ -259,7 +259,7 @@ const FancyBox = defineComponent({
|
|
259
259
|
required: false
|
260
260
|
},
|
261
261
|
/**
|
262
|
-
* list of
|
262
|
+
* list of shown elements (not images)
|
263
263
|
*/
|
264
264
|
elements: {
|
265
265
|
type: Array,
|
@@ -382,7 +382,7 @@ const FancyBox = defineComponent({
|
|
382
382
|
} else if (this.elements) {
|
383
383
|
this.fancyBoxElements = this.elements.map(el => el.cloneNode(true))
|
384
384
|
this.$nextTick(() => {
|
385
|
-
this.$
|
385
|
+
this.$refs.elements.append(...this.fancyBoxElements)
|
386
386
|
})
|
387
387
|
}
|
388
388
|
},
|
@@ -874,7 +874,6 @@ export default {
|
|
874
874
|
}
|
875
875
|
|
876
876
|
&.has-state, & + .cmd-tooltip {
|
877
|
-
|
878
877
|
&.error {
|
879
878
|
* {
|
880
879
|
--status-color: var(--error-color);
|
@@ -902,6 +901,12 @@ export default {
|
|
902
901
|
~ .label-text span {
|
903
902
|
color: var(--hyperlink-color);
|
904
903
|
}
|
904
|
+
|
905
|
+
&:hover, &:active, &:focus {
|
906
|
+
~ .label-text span {
|
907
|
+
color: var(--hyperlink-color-highlighted);
|
908
|
+
}
|
909
|
+
}
|
905
910
|
}
|
906
911
|
|
907
912
|
&.inline {
|
@@ -14,7 +14,7 @@
|
|
14
14
|
<!-- end pre-headline-text -->
|
15
15
|
|
16
16
|
<span>
|
17
|
-
<!--
|
17
|
+
<!-- begin slot -->
|
18
18
|
<slot>{{ headlineText }}</slot>
|
19
19
|
<!-- end slot -->
|
20
20
|
</span>
|
@@ -27,7 +27,7 @@
|
|
27
27
|
<!-- end CmdIcon -->
|
28
28
|
|
29
29
|
<span>
|
30
|
-
<!--
|
30
|
+
<!-- begin slot -->
|
31
31
|
<slot>{{ headlineText }}</slot>
|
32
32
|
<!-- end slot -->
|
33
33
|
</span>
|
@@ -74,13 +74,13 @@
|
|
74
74
|
<span class="pre-headline-text">{{ preHeadlineText }}</span>
|
75
75
|
<!-- end pre-headline-text -->
|
76
76
|
|
77
|
-
<!--
|
77
|
+
<!-- begin slot -->
|
78
78
|
<slot>{{ headlineText }}</slot>
|
79
79
|
<!-- end slot -->
|
80
80
|
</component>
|
81
81
|
</template>
|
82
82
|
<component v-else-if="headlineText" :is="headlineTag">
|
83
|
-
<!--
|
83
|
+
<!-- begin slot -->
|
84
84
|
<slot>{{ headlineText }}</slot>
|
85
85
|
<!-- end slot -->
|
86
86
|
</component>
|
@@ -96,7 +96,7 @@
|
|
96
96
|
<!-- end type === router -->
|
97
97
|
|
98
98
|
<!-- begin sub-level 2 -->
|
99
|
-
<ul v-if="navigationSubEntry.subentries" :aria-expanded="openSubentry ? 'true' : 'false'">
|
99
|
+
<ul v-if="navigationSubEntry.subentries?.length" :aria-expanded="openSubentry ? 'true' : 'false'">
|
100
100
|
<li v-for="(navigationSubSubEntry, subsubindex) in navigationSubEntry.subentries"
|
101
101
|
:key="subsubindex">
|
102
102
|
<!-- begin type === href -->
|
@@ -16,6 +16,7 @@
|
|
16
16
|
v-if="buttonPrintView.show"
|
17
17
|
:class="['button', {'primary': buttonPrintView.primary}]"
|
18
18
|
:title="buttonPrintView.text ? buttonPrintView.icon?.tooltip : null"
|
19
|
+
@click="showFancyBox"
|
19
20
|
>
|
20
21
|
<span v-if="buttonPrintView.icon?.show" :class="buttonPrintView.icon?.iconClass"></span>
|
21
22
|
<span v-if="buttonPrintView.text">{{buttonPrintView.text}}</span>
|
@@ -26,6 +27,8 @@
|
|
26
27
|
</template>
|
27
28
|
|
28
29
|
<script>
|
30
|
+
import { openFancyBox } from "./CmdFancyBox.vue"
|
31
|
+
|
29
32
|
export default {
|
30
33
|
name: "CmdPageFooter",
|
31
34
|
props: {
|
@@ -60,6 +63,38 @@ export default {
|
|
60
63
|
cmdSocialNetworks: {
|
61
64
|
type: Array,
|
62
65
|
required: false
|
66
|
+
},
|
67
|
+
/**
|
68
|
+
* properties for CmdFancyBox-component
|
69
|
+
*/
|
70
|
+
cmdFancyBox: {
|
71
|
+
type: Object,
|
72
|
+
default() {
|
73
|
+
return {
|
74
|
+
showPrintButtons: true,
|
75
|
+
defaultAriaLabelText: "print-preview"
|
76
|
+
}
|
77
|
+
}
|
78
|
+
}
|
79
|
+
},
|
80
|
+
methods: {
|
81
|
+
showFancyBox() {
|
82
|
+
let elements = []
|
83
|
+
if(typeof this.cmdFancyBox.elements === "function") {
|
84
|
+
elements = this.cmdFancyBox.elements()
|
85
|
+
} else {
|
86
|
+
elements = [document.querySelector("main")]
|
87
|
+
}
|
88
|
+
|
89
|
+
openFancyBox({
|
90
|
+
elements: elements,
|
91
|
+
showPrintButtons: this.cmdFancyBox.showPrintButtons,
|
92
|
+
defaultAriaLabelText: this.cmdFancyBox.defaultAriaLabelText,
|
93
|
+
cmdHeadline: this.cmdFancyBox.cmdHeadline,
|
94
|
+
showOverlay: this.cmdFancyBox.showOverlay,
|
95
|
+
showSubmitButtons: this.cmdFancyBox.showSubmitButtons,
|
96
|
+
allowEscapeKey: this.cmdFancyBox.allowEscapeKey
|
97
|
+
})
|
63
98
|
}
|
64
99
|
}
|
65
100
|
}
|
@@ -90,6 +125,7 @@ export default {
|
|
90
125
|
justify-content: flex-end;
|
91
126
|
margin-left: auto;
|
92
127
|
gap: calc(var(--default-gap) / 2);
|
128
|
+
flex: none;
|
93
129
|
}
|
94
130
|
}
|
95
131
|
/* end cmd-page-footer -------------------------------------------------------------------------------------------- */
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<template>
|
2
|
-
<header class="cmd-page-header flex-container">
|
2
|
+
<header v-if="cmdBreadcrumbs || cmdHeadline || $slots.default" class="cmd-page-header flex-container">
|
3
3
|
<div v-if="cmdBreadcrumbs || cmdHeadline" class="headline-wrapper flex-container vertical">
|
4
4
|
<!-- begin CmdBreadcrumbs -->
|
5
5
|
<CmdBreadcrumbs v-if="cmdBreadcrumbs" v-bind="cmdBreadcrumbs" />
|
@@ -11,7 +11,7 @@
|
|
11
11
|
</div>
|
12
12
|
|
13
13
|
<!-- begin slot -->
|
14
|
-
<slot></slot>
|
14
|
+
<slot v-if="$slots.default"></slot>
|
15
15
|
<!-- end slot -->
|
16
16
|
</header>
|
17
17
|
</template>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<template>
|
2
|
-
<div class="cmd-site-footer">
|
2
|
+
<div class="cmd-site-footer site-footer">
|
3
3
|
<footer :class="['flex-container', {vertical: orientation === 'vertical'}]">
|
4
4
|
<slot></slot>
|
5
5
|
</footer>
|
@@ -31,8 +31,6 @@ export default {
|
|
31
31
|
/* begin cmd-site-footer ---------------------------------------------------------------------------------------- */
|
32
32
|
.cmd-site-footer {
|
33
33
|
padding: var(--grid-gap) 0;
|
34
|
-
border-top: var(--default-border);
|
35
|
-
background: var(--default-background);
|
36
34
|
margin-top: auto;
|
37
35
|
flex: none;
|
38
36
|
|
@@ -178,12 +178,12 @@ export default {
|
|
178
178
|
<style>
|
179
179
|
/* begin cmd-site-header ---------------------------------------------------------------------------------------- */
|
180
180
|
.cmd-site-header {
|
181
|
+
--logo-width-on-scroll: 50%;
|
182
|
+
|
181
183
|
grid-area: site-header;
|
182
184
|
display: flex;
|
183
185
|
flex-direction: column;
|
184
186
|
flex: none;
|
185
|
-
border-bottom: var(--default-border);
|
186
|
-
background: var(--color-scheme-background);
|
187
187
|
|
188
188
|
&.sticky {
|
189
189
|
position: sticky;
|
@@ -199,6 +199,7 @@ export default {
|
|
199
199
|
transform-origin: top left;
|
200
200
|
transition: var(--header-scroll-animation);
|
201
201
|
margin: 0;
|
202
|
+
width: 100%;
|
202
203
|
}
|
203
204
|
}
|
204
205
|
}
|
@@ -212,7 +213,7 @@ export default {
|
|
212
213
|
figure {
|
213
214
|
img {
|
214
215
|
transition: var(--header-scroll-animation);
|
215
|
-
|
216
|
+
width: var(--logo-width-on-scroll);
|
216
217
|
}
|
217
218
|
}
|
218
219
|
}
|
@@ -223,12 +224,12 @@ export default {
|
|
223
224
|
header, .cmd-main-navigation nav, .cmd-list-of-links {
|
224
225
|
max-width: var(--max-width);
|
225
226
|
width: 100%; /* stretch flex-item */
|
226
|
-
margin: 0 auto;
|
227
227
|
padding: 0 var(--default-padding);
|
228
228
|
}
|
229
229
|
|
230
230
|
.cmd-main-navigation nav {
|
231
231
|
width: auto;
|
232
|
+
margin: 0 0 0 auto; /* align nav to right */
|
232
233
|
}
|
233
234
|
|
234
235
|
.top-header {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
@click.prevent
|
4
4
|
:class="['cmd-slide-button', 'button', 'keep-behavior-on-small-devices', slideButtonType]"
|
5
5
|
:title="getDirection.tooltip">
|
6
|
-
<!--
|
6
|
+
<!-- begin CmdIcon -->
|
7
7
|
<CmdIcon :iconClass="getDirection.iconClass || 'next'" />
|
8
8
|
<!-- end CmdIcon -->
|
9
9
|
</a>
|
@@ -95,7 +95,7 @@ export default {
|
|
95
95
|
a:not([class*="active"]) {
|
96
96
|
filter: contrast(.5);
|
97
97
|
|
98
|
-
&:hover, &:focus-visible, &:active, &.active {
|
98
|
+
&:hover, &:focus-visible, &:active, &.active, &.router-link-active {
|
99
99
|
filter: none;
|
100
100
|
padding: 0; /* overwrite default settings from frontend-framework for .active */
|
101
101
|
background: none; /* overwrite default settings from frontend-framework for .active */
|
package/src/index.js
CHANGED
@@ -51,7 +51,7 @@ export { default as CmdWidthLimitationWrapper } from '@/components/CmdWidthLimit
|
|
51
51
|
export { default as EditComponentWrapper } from '@/components/EditComponentWrapper.vue'
|
52
52
|
|
53
53
|
// export page-components
|
54
|
-
export { default as BasicForm } from '@/
|
54
|
+
export { default as BasicForm } from '@/components/CmdBasicForm.vue'
|
55
55
|
export { default as ContactInformation } from '@/pages/ContactInformation.vue'
|
56
56
|
export { default as MultipleBoxWrapper } from '@/pages/MultipleBoxWrapper.vue'
|
57
57
|
export { default as MultipleListsOfLinks } from '@/pages/MultipleListsOfLinks.vue'
|
@@ -19,9 +19,12 @@ export default {
|
|
19
19
|
"basic_form.placeholder.zip": "Zip:",
|
20
20
|
"basic_form.labeltext.city": "City:",
|
21
21
|
"basic_form.placeholder.city": "City:",
|
22
|
-
"basic_form.labeltext.
|
22
|
+
"basic_form.labeltext.pobox": "PO Box:",
|
23
|
+
"basic_form.placeholder.pobox": "PO Box:",
|
24
|
+
"basic_form.labeltext.country": "Country:",
|
25
|
+
"basic_form.labeltext.additional_address_info": "Additional address information:",
|
23
26
|
"basic_form.placeholder.additional_address_info": "Additional address information",
|
24
|
-
"basic_form.labeltext.additional_text": "Additional text",
|
27
|
+
"basic_form.labeltext.additional_text": "Additional text:",
|
25
28
|
"basic_form.placeholder.additional_text": "Additional text",
|
26
29
|
"basic_form.labeltext.data_privacy": "I accept handling and saving of my personal data a mentioned in the <a href='/content/data-privacy-en.html' class='fancybox'>private policy</a>."
|
27
30
|
}
|
@@ -1,12 +1,4 @@
|
|
1
1
|
<template>
|
2
|
-
<!-- begin basic-form ------------------------------------------------------------------------------------------------------------------------------------------------------->
|
3
|
-
<CmdWidthLimitationWrapper>
|
4
|
-
<h2 class="headline-demopage" id="section-basic-form">
|
5
|
-
<span>Basic Form</span>
|
6
|
-
</h2>
|
7
|
-
<BasicForm :formAction="basicForm.formAction" />
|
8
|
-
</CmdWidthLimitationWrapper>
|
9
|
-
<!-- end basic-form ------------------------------------------------------------------------------------------------------------------------------------------------------->
|
10
2
|
|
11
3
|
<!-- begin basic-form ------------------------------------------------------------------------------------------------------------------------------------------------------->
|
12
4
|
<CmdWidthLimitationWrapper>
|
@@ -66,41 +58,7 @@ export default {
|
|
66
58
|
faqsData,
|
67
59
|
boxesTeamOverviewData,
|
68
60
|
listOfDownloadsData,
|
69
|
-
listOfSiteLinksData
|
70
|
-
basicForm: {
|
71
|
-
configuration: {
|
72
|
-
salutation: {
|
73
|
-
name: "salutation",
|
74
|
-
default: "m",
|
75
|
-
replaceInputType: true
|
76
|
-
},
|
77
|
-
lastName: {
|
78
|
-
name: "surname",
|
79
|
-
required: true,
|
80
|
-
type: "text"
|
81
|
-
},
|
82
|
-
firstName: {
|
83
|
-
required: false,
|
84
|
-
type: "text"
|
85
|
-
},
|
86
|
-
email: {
|
87
|
-
required: true,
|
88
|
-
type: "email"
|
89
|
-
},
|
90
|
-
phone: {
|
91
|
-
required: false,
|
92
|
-
type: "phone"
|
93
|
-
},
|
94
|
-
additionalText: {
|
95
|
-
required: false,
|
96
|
-
element: "textarea"
|
97
|
-
},
|
98
|
-
acceptPrivacy: {
|
99
|
-
required: true,
|
100
|
-
replaceInputType: true
|
101
|
-
}
|
102
|
-
}
|
103
|
-
}
|
61
|
+
listOfSiteLinksData
|
104
62
|
}
|
105
63
|
}
|
106
64
|
}
|