comand-component-library 4.2.52 → 4.2.53

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.
Files changed (39) hide show
  1. package/dist/comand-component-library.js +3325 -2972
  2. package/dist/style.css +1 -1
  3. package/package.json +2 -2
  4. package/src/ComponentLibrary.vue +52 -8
  5. package/src/assets/data/list-description-list.json +74 -0
  6. package/src/assets/data/listOfComponents.json +2 -0
  7. package/src/assets/styles/component-library-global-styles.scss +0 -14
  8. package/src/componentSettingsDataAndControls.vue +49 -0
  9. package/src/components/CmdCodeOutput.vue +0 -2
  10. package/src/components/CmdLink.vue +1 -0
  11. package/src/components/CmdList.vue +82 -27
  12. package/src/components/CmdMultistepFormProgressBar.vue +19 -4
  13. package/src/components/CmdNewsletterSubscription.vue +2 -0
  14. package/src/components/CmdOpeningHours.vue +2 -0
  15. package/src/components/CmdOpeningHoursItem.vue +2 -0
  16. package/src/components/CmdPageFooter.vue +2 -0
  17. package/src/components/CmdPageHeader.vue +2 -0
  18. package/src/components/CmdPagination.vue +2 -0
  19. package/src/components/CmdParagraph.vue +50 -0
  20. package/src/components/CmdSection.vue +2 -0
  21. package/src/components/CmdSidebar.vue +2 -0
  22. package/src/components/CmdSiteFooter.vue +2 -0
  23. package/src/components/CmdSiteHeader.vue +2 -0
  24. package/src/components/CmdSiteSearch.vue +2 -0
  25. package/src/components/CmdSlideButton.vue +2 -0
  26. package/src/components/CmdSocialNetworks.vue +2 -0
  27. package/src/components/CmdSocialNetworksItem.vue +2 -0
  28. package/src/components/CmdSwitchLanguage.vue +2 -0
  29. package/src/components/CmdSystemMessage.vue +2 -0
  30. package/src/components/CmdTable.vue +2 -0
  31. package/src/components/CmdTabs.vue +2 -0
  32. package/src/components/CmdTag.vue +101 -0
  33. package/src/components/CmdTextImageBlock.vue +2 -0
  34. package/src/components/CmdThumbnailScroller.vue +2 -0
  35. package/src/components/CmdToggleDarkMode.vue +2 -0
  36. package/src/components/CmdTooltip.vue +2 -0
  37. package/src/components/CmdTooltipForFormElements.vue +2 -0
  38. package/src/components/CmdUploadForm.vue +2 -0
  39. package/src/components/CmdWidthLimitationWrapper.vue +2 -0
@@ -1157,7 +1157,7 @@
1157
1157
  </CmdWidthLimitationWrapper>
1158
1158
  <!-- end link --------------------------------------------------------------------------------------------------->
1159
1159
 
1160
- <!-- begin list --------------------------------------------------------------------------------------------------->
1160
+ <!-- begin lists --------------------------------------------------------------------------------------------------->
1161
1161
  <CmdWidthLimitationWrapper>
1162
1162
  <h2 class="headline-demopage" id="section-list">
1163
1163
  <span>List</span>
@@ -1165,7 +1165,7 @@
1165
1165
  @click.prevent="openSettingsSidebar('CmdList')"></a>
1166
1166
  </h2>
1167
1167
  <CmdList :cmdHeadline="{ headlineText: 'List of links', headlineLevel: 3 }" ref="CmdList"
1168
- v-bind="cmdListSettingsData" :items="listData" listType="links" @click="cmdLinkOutput" />
1168
+ v-bind="cmdListSettingsData" :items="listData" listContentType="links" @click="cmdLinkOutput" />
1169
1169
  <dl class="output">
1170
1170
  <dt>Event:</dt>
1171
1171
  <dd>{{ outputCmdLink?.event?.originalEvent }}</dd>
@@ -1175,38 +1175,57 @@
1175
1175
  <dd>{{ outputCmdLink?.event?.linkType }}</dd>
1176
1176
  </dl>
1177
1177
  <CmdList :cmdHeadline="{ headlineText: 'List of images', headlineLevel: 3 }" :items="imageGalleryData"
1178
- orientation="horizontal" listType="images" />
1178
+ orientation="horizontal" listContentType="images" />
1179
1179
  <div class="flex-container">
1180
1180
  <CmdList
1181
1181
  :cmdHeadline="{ headlineText: 'List of tags (default)', headlineLevel: 3 }"
1182
1182
  :items="listOfTagsData"
1183
1183
  orientation="horizontal"
1184
- listType="tags"
1184
+ listContentType="tags"
1185
1185
  />
1186
1186
  <CmdList
1187
1187
  :cmdHeadline="{ headlineText: 'List of tags (primary)', headlineLevel: 3 }"
1188
1188
  :items="listOfTagsData"
1189
1189
  orientation="horizontal"
1190
- listType="tags"
1190
+ listContentType="tags"
1191
1191
  highlightLevel="primary"
1192
1192
  />
1193
1193
  <CmdList
1194
1194
  :cmdHeadline="{ headlineText: 'List of tags (secondary)', headlineLevel: 3 }"
1195
1195
  :items="listOfTagsData"
1196
1196
  orientation="horizontal"
1197
- listType="tags"
1197
+ listContentType="tags"
1198
1198
  highlightLevel="secondary"
1199
1199
  />
1200
1200
  <CmdList
1201
1201
  :cmdHeadline="{ headlineText: 'List of tags (tertiary)', headlineLevel: 3 }"
1202
1202
  :items="listOfTagsData"
1203
1203
  orientation="horizontal"
1204
- listType="tags"
1204
+ listContentType="tags"
1205
1205
  highlightLevel="tertiary"
1206
1206
  />
1207
1207
  </div>
1208
+ <h3>Description Lists</h3>
1209
+ <div class="flex-container">
1210
+ <CmdList
1211
+ listType="description"
1212
+ :cmdHeadline="{ headlineText: 'List with text', headlineLevel: 4 }"
1213
+ :items="descriptionListData.text"
1214
+ />
1215
+ <CmdList
1216
+ listType="description"
1217
+ :cmdHeadline="{ headlineText: 'List with text (term right aligned)', headlineLevel: 4 }"
1218
+ :alignDescriptionTermRight="true"
1219
+ :items="descriptionListData.text"
1220
+ />
1221
+ <CmdList
1222
+ listType="description"
1223
+ :cmdHeadline="{ headlineText: 'List with icons', headlineLevel: 4 }"
1224
+ :items="descriptionListData.icons"
1225
+ />
1226
+ </div>
1208
1227
  </CmdWidthLimitationWrapper>
1209
- <!-- end list --------------------------------------------------------------------------------------------------->
1228
+ <!-- end lists --------------------------------------------------------------------------------------------------->
1210
1229
 
1211
1230
  <!-- begin login-form --------------------------------------------------------------------------------------------------->
1212
1231
  <CmdWidthLimitationWrapper>
@@ -1340,6 +1359,17 @@
1340
1359
  </CmdWidthLimitationWrapper>
1341
1360
  <!-- end pagination --------------------------------------------------------------------------------------------------->
1342
1361
 
1362
+ <!-- begin paragraph --------------------------------------------------------------------------------------------------->
1363
+ <CmdWidthLimitationWrapper>
1364
+ <h2 class="headline-demopage" id="section-paragraph">
1365
+ <span>Paragraph</span>
1366
+ <a href="#" class="button small icon-cog" title="Open Component Settings"
1367
+ @click.prevent="openSettingsSidebar('CmdParagraph')"></a>
1368
+ </h2>
1369
+ <CmdParagraph ref="CmdParagraph" v-bind="cmdParagraphSettingsData" />
1370
+ </CmdWidthLimitationWrapper>
1371
+ <!-- end paragraph --------------------------------------------------------------------------------------------------->
1372
+
1343
1373
  <!-- begin section --------------------------------------------------------------------------------------------------->
1344
1374
  <CmdWidthLimitationWrapper>
1345
1375
  <h2 class="headline-demopage" id="section-section">
@@ -1514,6 +1544,18 @@
1514
1544
  </CmdWidthLimitationWrapper>
1515
1545
  <!-- end tabs --------------------------------------------------------------------------------------------------->
1516
1546
 
1547
+ <!-- begin tags --------------------------------------------------------------------------------------------------->
1548
+ <CmdWidthLimitationWrapper>
1549
+ <h2 class="headline-demopage" id="section-tag">
1550
+ <span>Tag</span>
1551
+ <a href="#" class="button small icon-cog" title="Open Component Settings"
1552
+ @click.prevent="openSettingsSidebar('CmdTag')">
1553
+ </a>
1554
+ </h2>
1555
+ <CmdTag ref="CmdTag" v-bind="cmdTagSettingsData" />
1556
+ </CmdWidthLimitationWrapper>
1557
+ <!-- end tags --------------------------------------------------------------------------------------------------->
1558
+
1517
1559
  <!-- begin text-image-block --------------------------------------------------------------------------------------------------->
1518
1560
  <CmdWidthLimitationWrapper>
1519
1561
  <h2 class="headline-demopage" id="section-text-image-block">
@@ -1711,6 +1753,7 @@ import inputGroupRadiobuttonsData from '@/assets/data/input-group-radiobuttons.j
1711
1753
  import inputGroupReplacedRadiobuttonsData from '@/assets/data/input-group-replaced-radiobuttons.json'
1712
1754
  import inputGroupToggleSwitchRadiobuttonsData from '@/assets/data/input-group-toggle-switch-radiobuttons.json'
1713
1755
  import listData from '@/assets/data/list.json'
1756
+ import descriptionListData from '@/assets/data/list-description-list.json'
1714
1757
  import listOfTagsData from '@/assets/data/list-of-tags.json'
1715
1758
  import switchLanguage from '@/assets/data/switch-language.json'
1716
1759
  import mailToolData from '@/assets/data/mail-tool.json'
@@ -1910,6 +1953,7 @@ export default {
1910
1953
  switchLanguage,
1911
1954
  listData,
1912
1955
  listOfTagsData,
1956
+ descriptionListData,
1913
1957
  multistepsData,
1914
1958
  mailToolData,
1915
1959
  navigationData,
@@ -0,0 +1,74 @@
1
+ {
2
+ "text": [
3
+ {
4
+ "descriptionTerm": {
5
+ "text": "Description Term #1"
6
+ },
7
+ "descriptionData": {
8
+ "text": "Description Data #1"
9
+ }
10
+ },
11
+ {
12
+ "descriptionTerm": {
13
+ "text": "Description Term #2"
14
+ },
15
+ "descriptionData": {
16
+ "text": "Description Data #2"
17
+ }
18
+ },
19
+ {
20
+ "descriptionTerm": {
21
+ "text": "Description Term #3"
22
+ },
23
+ "descriptionData": {
24
+ "text": "Description Data #3"
25
+ }
26
+ }
27
+ ],
28
+ "icons": [
29
+ {
30
+ "descriptionTerm": {
31
+ "cmdIcon": {
32
+ "show": true,
33
+ "iconClass": "icon-home",
34
+ "tooltip": "Href with anchor"
35
+ }
36
+ },
37
+ "descriptionData": {
38
+ "cmdLink": {
39
+ "linkType": "href",
40
+ "text": "Description data in link ",
41
+ "path": "#anchor-back-to-top"
42
+ }
43
+ }
44
+ },
45
+ {
46
+ "descriptionTerm": {
47
+ "cmdIcon": {
48
+ "show": true,
49
+ "iconClass": "icon-user-profile",
50
+ "tooltip": "Href with anchor"
51
+ }
52
+ },
53
+ "descriptionData": {
54
+ "text": "Data without link"
55
+ }
56
+ },
57
+ {
58
+ "descriptionTerm": {
59
+ "cmdIcon": {
60
+ "show": true,
61
+ "iconClass": "icon-phone",
62
+ "tooltip": "Href with anchor"
63
+ }
64
+ },
65
+ "descriptionData": {
66
+ "cmdLink": {
67
+ "linkType": "href",
68
+ "text": "Description data in link",
69
+ "path": "#anchor-back-to-top"
70
+ }
71
+ }
72
+ }
73
+ ]
74
+ }
@@ -29,6 +29,7 @@
29
29
  "PageFooter",
30
30
  "PageHeader",
31
31
  "Pagination",
32
+ "Paragraph",
32
33
  "Section",
33
34
  "SiteFooter",
34
35
  "SiteHeader",
@@ -40,6 +41,7 @@
40
41
  "SystemMessage",
41
42
  "Tables",
42
43
  "Tabs",
44
+ "Tag",
43
45
  "TextImageBlock",
44
46
  "ThumbnailScroller",
45
47
  "ToggleDarkMode",
@@ -284,22 +284,8 @@ a img.flag {
284
284
  border-color: var(--status-color);
285
285
  }
286
286
  }
287
-
288
- .cmd-link.button {
289
- &.router-link-active {
290
- background: var(--button-primary-background-highlighted); /* set background for active router-links styled as buttons buttons */
291
- }
292
- }
293
-
294
287
  /* end tooltip for cmd-form-element and cmd-fake-select -------------------------------------------------------------------------------------------------------------------- */
295
288
 
296
- /* begin cmd-link -------------------------------------------------------------------------------------------------------------------- */
297
- .cmd-link.button {
298
- &.router-link-active {
299
- background: var(--button-primary-background-highlighted); /* set background for active router-links styled as buttons */
300
- }
301
- }
302
- /* end cmd-link -------------------------------------------------------------------------------------------------------------------- */
303
289
  /* ----------------------------------------------- END COMPONENTS AND GLOBAL STYLES --------------------------------------------------- */
304
290
 
305
291
  /* ---------------------------------------------- BEGIN MEDIA QUERIES AND BROWSER SPECIFIC STYLES -------------------------------------------------- */
@@ -651,6 +651,31 @@ data() {
651
651
  }
652
652
  ]
653
653
  },
654
+ cmdParagraphSettingsData: {
655
+ content: "This is a paragraph with content provided per property with <dfn title='HyperText Markup Language'>HTML</dfn> inside. Its alignment can be adjusted with the <em>textAlign</em>-property. Additionally the number of columns (1-4) can be defined by <em>numberOfColumns</em>-property.",
656
+ numberOfColumns: 1,
657
+ textAlign: "left",
658
+ },
659
+ cmdParagraphSettingsControls: {
660
+ textAlign: [
661
+ {
662
+ text: "left",
663
+ value: "left"
664
+ },
665
+ {
666
+ text: "center",
667
+ value: "center"
668
+ },
669
+ {
670
+ text: "right",
671
+ value: "right"
672
+ },
673
+ {
674
+ text: "justify",
675
+ value: "justify"
676
+ }
677
+ ]
678
+ },
654
679
  cmdSiteHeaderSettingsData: {
655
680
  sticky: false,
656
681
  navigationInline: false,
@@ -775,6 +800,30 @@ data() {
775
800
  }
776
801
  ]
777
802
  },
803
+ cmdTagSettingsData: {
804
+ tagText: "Text for Tag",
805
+ removeByClick: false
806
+ },
807
+ cmdTagSettingsControls: {
808
+ highlightLevel: [
809
+ {
810
+ text: "none (default)",
811
+ value: "none"
812
+ },
813
+ {
814
+ text: "primary",
815
+ value: "primary"
816
+ },
817
+ {
818
+ text: "secondary",
819
+ value: "secondary"
820
+ },
821
+ {
822
+ text: "tertiary",
823
+ value: "tertiary"
824
+ }
825
+ ]
826
+ },
778
827
  cmdTextImageBlockSettingsData: {
779
828
  htmlContent: "Text given as html-content",
780
829
  paragraphTextAlign: "left",
@@ -25,8 +25,6 @@
25
25
  </template>
26
26
 
27
27
  <script>
28
- import { ref } from "vue"
29
-
30
28
  export default {
31
29
  name: "CmdCodeOutput",
32
30
  props: {
@@ -21,6 +21,7 @@
21
21
  <!-- begin router-link -->
22
22
  <router-link v-else-if="linkType === 'router'"
23
23
  :to="!disabled ? path : {}"
24
+ exact-active-class="router-link-exact-active active"
24
25
  :class="['cmd-link', highlightLevel, {'button': styleAsButton, 'disabled': disabled, 'box': styleAsBox, 'fancybox': fancybox}]"
25
26
  @click="emitClick($event, 'router')"
26
27
  :title="icon?.tooltip">
@@ -1,4 +1,5 @@
1
1
  <template>
2
+ <!-- begin CmdList ---------------------------------------------------------------------------------------- -->
2
3
  <transition :name="transition">
3
4
  <div :class="['cmd-list',
4
5
  {
@@ -7,16 +8,16 @@
7
8
  'large-icons': largeIcons,
8
9
  'show-list-style-items': showListStyleItems,
9
10
  },
10
- 'list-type-' + listType
11
+ 'list-content-type-' + listContentType
11
12
  ]">
12
13
  <!-- begin cmd-headline -->
13
14
  <CmdHeadline v-if="cmdHeadline?.headlineText || editModeContext" v-bind="cmdHeadline" />
14
15
  <!-- end cmd-headline -->
15
16
 
16
- <!-- begin list of links -->
17
- <component :is="listTag"
17
+ <!-- begin list of links ordered/unordered -->
18
+ <component v-if="listType !== 'description'" :is="listTag"
18
19
  :class="['flex-container', { 'no-gap': !useGap }, 'align-' + align, setStretchClass, { horizontal: orientation === 'horizontal' }]">
19
- <template v-if="listType === 'links'">
20
+ <template v-if="listContentType === 'links'">
20
21
  <slot>
21
22
  <!-- begin CmdListOfLinksItem-->
22
23
  <CmdListOfLinksItem v-if="!editModeContext" v-for="(link, index) in items" :key="index"
@@ -47,7 +48,7 @@
47
48
  </template>
48
49
 
49
50
  <!-- begin list of images -->
50
- <template v-if="listType === 'images'">
51
+ <template v-if="listContentType === 'images'">
51
52
  <slot>
52
53
  <li v-for="(image, index) in items" :key="index">
53
54
  <!-- begin CmdImage with link-->
@@ -65,26 +66,56 @@
65
66
  <!-- end list of images -->
66
67
 
67
68
  <!-- begin tags -->
68
- <template v-if="listType === 'tags'">
69
+ <template v-if="listContentType === 'tags'">
69
70
  <slot>
70
71
  <li v-for="(tag, index) in listOfTagItems" :key="index">
71
- <small :class="['tag flex-container', highlightLevel]">
72
- <span>{{ tag }}</span>
73
- <!-- begin icon 'remove tag' -->
74
- <a v-if="iconRemoveTag.show" href="#" @click.prevent="removeTag(index)"
75
- :title="iconRemoveTag.tooltip" class="flex-none">
76
- <span :class="iconRemoveTag.iconClass"></span>
77
- </a>
78
- <!-- end icon 'remove tag' -->
79
- </small>
72
+ <!-- begin CmdTag -->
73
+ <CmdTag
74
+ :tagText="tag"
75
+ :highlightLevel="highlightLevel"
76
+ :removeTagByClick="true"
77
+ @click.prevent="removeTag(event, index)"
78
+ />
79
+ <!-- end CmdTag -->
80
80
  </li>
81
81
  </slot>
82
82
  </template>
83
83
  <!-- end tags -->
84
84
  </component>
85
- <!-- end list of links -->
85
+ <!-- end list of links ordered/unordered -->
86
+
87
+ <!-- begin description list -->
88
+ <dl v-else>
89
+ <template v-for="(entry, index) in items" :key="index">
90
+ <dt v-if="!alignDescriptionTermRight">
91
+ <CmdIcon
92
+ v-if="entry.descriptionTerm?.cmdIcon?.iconClass"
93
+ v-bind="entry.descriptionTerm.cmdIcon"
94
+ />
95
+ <span v-if="entry.descriptionTerm?.text">{{ entry.descriptionTerm?.text }}</span>
96
+ </dt>
97
+ <dd>
98
+ <CmdLink
99
+ v-if="entry.descriptionData.cmdLink !== undefined"
100
+ v-bind="entry.descriptionData.cmdLink">
101
+ </CmdLink>
102
+ <template v-else>
103
+ {{ entry.descriptionData.text }}
104
+ </template>
105
+ </dd>
106
+ <dt v-if="alignDescriptionTermRight">
107
+ <CmdIcon
108
+ v-if="entry.descriptionTerm?.cmdIcon?.iconClass"
109
+ v-bind="entry.descriptionTerm.cmdIcon"
110
+ />
111
+ <span v-if="entry.descriptionTerm?.text">{{ entry.descriptionTerm?.text }}</span>
112
+ </dt>
113
+ </template>
114
+ </dl>
115
+ <!-- end description list -->
86
116
  </div>
87
117
  </transition>
118
+ <!-- end CmdList ---------------------------------------------------------------------------------------- -->
88
119
  </template>
89
120
 
90
121
  <script>
@@ -120,23 +151,35 @@ export default {
120
151
  */
121
152
  highlightLevel: {
122
153
  type: String,
123
- default() {
124
- return "none"
154
+ default: "none",
155
+ validator(value) {
156
+ return value === "none" ||
157
+ value === "primary" ||
158
+ value === "secondary" ||
159
+ value === "tertiary"
125
160
  }
126
161
  },
127
162
  /**
128
- * define if an order-list should be used (else an unordered one will be used)
163
+ * define the list type
164
+ *
165
+ * @affectsStyling: true
166
+ * @allowedValues: "unordered", "ordered", "description"
129
167
  */
130
- orderedList: {
131
- type: Boolean,
132
- default: false
168
+ listType: {
169
+ typ: String,
170
+ default: "unordered",
171
+ validator(value) {
172
+ return value === "unordered" ||
173
+ value === "ordered" ||
174
+ value === "description"
175
+ }
133
176
  },
134
177
  /**
135
178
  * set list-type
136
179
  *
137
180
  * @allowedValues: links, images, tags
138
181
  */
139
- listType: {
182
+ listContentType: {
140
183
  typ: String,
141
184
  default: "links",
142
185
  validator(value) {
@@ -195,6 +238,15 @@ export default {
195
238
  type: Boolean,
196
239
  default: false
197
240
  },
241
+ /**
242
+ * set if description term should be aligned right
243
+ *
244
+ * @affectsStyling: true
245
+ */
246
+ alignDescriptionTermRight: {
247
+ type: Boolean,
248
+ default: false
249
+ },
198
250
  /**
199
251
  * set horizontal alignment
200
252
  *
@@ -263,7 +315,9 @@ export default {
263
315
  return null
264
316
  },
265
317
  listTag() {
266
- return this.orderedList ? "ol" : "ul"
318
+ if(this.listType !== "description") {
319
+ return this.listType === "ordered" ? "ol" : "ul"
320
+ }
267
321
  }
268
322
  },
269
323
  methods: {
@@ -274,7 +328,8 @@ export default {
274
328
  onAddItem() {
275
329
  this.editModeContext.content.addContent(
276
330
  buildComponentPath(this, 'props', 'links', -1),
277
- this.itemProvider)
331
+ this.itemProvider
332
+ )
278
333
  },
279
334
  itemProvider() {
280
335
  return {
@@ -416,11 +471,11 @@ export default {
416
471
 
417
472
  @media only screen and (max-width: $medium-max-width) {
418
473
  .cmd-list {
419
- >ul {
474
+ > ul {
420
475
  ul {
421
476
  gap: calc(var(--default-gap) / 2);
422
477
 
423
- >li:first-child {
478
+ > li:first-child {
424
479
  margin-top: calc(var(--default-gap) / 2);
425
480
  }
426
481
  }
@@ -1,10 +1,11 @@
1
1
  <template>
2
+ <!-- begin CmdMultistepFormProgressBar ---------------------------------------------------------------------------------------- -->
2
3
  <ol :class="['cmd-multistep-form-progress-bar', {'use-gap': useGap, 'full-width': fullWidth}]">
3
4
  <li v-for="(step, index) in multisteps" :key="index">
4
5
  <!-- begin CmdLink -->
5
6
  <CmdLink
6
7
  :linkType="step.linkType"
7
- :class="['stretch-on-small-devices', activeLinkClass(step.linkType, index)]"
8
+ :class="['stretch-on-small-devices', activeLinkClass(index)]"
8
9
  :styleAsButton="styleAsButtons"
9
10
  :highlightLevel="highlightLevel"
10
11
  :path="step.path"
@@ -25,6 +26,7 @@
25
26
  <!-- end separator -->
26
27
  </li>
27
28
  </ol>
29
+ <!-- end CmdMultistepFormProgressBar ---------------------------------------------------------------------------------------- -->
28
30
  </template>
29
31
 
30
32
  <script>
@@ -55,6 +57,13 @@ export default {
55
57
  value === "tertiary"
56
58
  }
57
59
  },
60
+ /**
61
+ * set active step
62
+ */
63
+ activeStep: {
64
+ type: Number,
65
+ default: 0
66
+ },
58
67
  /**
59
68
  * toggle if steps should be stretched to full-width of parent container (else steps will be centered)
60
69
  */
@@ -100,11 +109,9 @@ export default {
100
109
  }
101
110
  },
102
111
  methods: {
103
- activeLinkClass(linkType, index) {
112
+ activeLinkClass(index) {
104
113
  if(this.activeLink === index) {
105
- if(linkType !== "router") {
106
114
  return "active"
107
- }
108
115
  }
109
116
  return ""
110
117
  },
@@ -115,6 +122,14 @@ export default {
115
122
  getRoute(step) {
116
123
  return getRoute(step)
117
124
  }
125
+ },
126
+ watch: {
127
+ activeStep: {
128
+ handler() {
129
+ this.activeLink = this.activeStep
130
+ },
131
+ immediate: true
132
+ }
118
133
  }
119
134
  }
120
135
  </script>
@@ -1,4 +1,5 @@
1
1
  <template>
2
+ <!-- begin CmdNewsletterSubscription ---------------------------------------------------------------------------------------- -->
2
3
  <fieldset class="cmd-newsletter-subscription flex-container">
3
4
  <!-- begin legend -->
4
5
  <legend :class="{hidden : !legend.show, 'align-left': legend.align === 'left'}">{{ legend.text }}</legend>
@@ -41,6 +42,7 @@
41
42
  <!-- end cmd-form-element -->
42
43
  </div>
43
44
  </fieldset>
45
+ <!-- end CmdNewsletterSubscription ---------------------------------------------------------------------------------------- -->
44
46
  </template>
45
47
 
46
48
  <script>
@@ -1,4 +1,5 @@
1
1
  <template>
2
+ <!-- begin CmdOpeningHours ---------------------------------------------------------------------------------------- -->
2
3
  <div class="cmd-opening-hours">
3
4
  <!-- begin cmd-headline -->
4
5
  <CmdHeadline
@@ -116,6 +117,7 @@
116
117
  </div>
117
118
  <!-- end edit-mode -->
118
119
  </div>
120
+ <!-- end CmdOpeningHours ---------------------------------------------------------------------------------------- -->
119
121
  </template>
120
122
 
121
123
  <script>
@@ -1,4 +1,5 @@
1
1
  <template>
2
+ <!-- begin CmdOpeningHoursItem ---------------------------------------------------------------------------------------- -->
2
3
  <!-- begin opening-days and -hours -->
3
4
  <template v-if="!editing">
4
5
  <dt class="cmd-opening-hours-item">{{ day.day }}</dt>
@@ -120,6 +121,7 @@
120
121
  <!-- end hours -->
121
122
  </template>
122
123
  <!-- end edit-mode -->
124
+ <!-- end CmdOpeningHoursItem ---------------------------------------------------------------------------------------- -->
123
125
  </template>
124
126
 
125
127
  <script>
@@ -1,4 +1,5 @@
1
1
  <template>
2
+ <!-- begin CmdPageFooter ---------------------------------------------------------------------------------------- -->
2
3
  <footer :class="['cmd-page-footer flex-container', {'small-buttons': useSmallButtons}]">
3
4
  <!-- begin CmdSocialNetworks -->
4
5
  <CmdSocialNetworks v-if="cmdSocialNetworks" v-bind="cmdSocialNetworks">
@@ -26,6 +27,7 @@
26
27
  <!-- end button print-preview -->
27
28
  </div>
28
29
  </footer>
30
+ <!-- end CmdPageFooter ---------------------------------------------------------------------------------------- -->
29
31
  </template>
30
32
 
31
33
  <script>
@@ -1,4 +1,5 @@
1
1
  <template>
2
+ <!-- begin CmdPageHeader ---------------------------------------------------------------------------------------- -->
2
3
  <header v-if="cmdBreadcrumbs || cmdHeadline || $slots.default" class="cmd-page-header flex-container">
3
4
  <div v-if="cmdBreadcrumbs || cmdHeadline" class="headline-wrapper flex-container vertical">
4
5
  <!-- begin CmdBreadcrumbs -->
@@ -14,6 +15,7 @@
14
15
  <slot v-if="$slots.default"></slot>
15
16
  <!-- end slot -->
16
17
  </header>
18
+ <!-- end CmdPageHeader ---------------------------------------------------------------------------------------- -->
17
19
  </template>
18
20
 
19
21
  <script>