comand-component-library 3.1.71 → 3.1.74

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 (56) hide show
  1. package/dist/comand-component-library.css +1 -1
  2. package/dist/comand-component-library.umd.min.js +1 -1
  3. package/package.json +2 -2
  4. package/src/App.vue +314 -189
  5. package/src/assets/data/cookie-disclaimer.json +7 -6
  6. package/src/assets/styles/global-styles.scss +10 -40
  7. package/src/components/CmdBox.vue +7 -5
  8. package/src/components/CmdCookieDisclaimer.vue +76 -8
  9. package/src/components/CmdFakeSelect.vue +40 -50
  10. package/src/components/CmdFormElement.vue +32 -41
  11. package/src/components/CmdInputGroup.vue +158 -12
  12. package/src/components/CmdListOfRequirements.vue +128 -0
  13. package/src/components/CmdMainNavigation.vue +2 -2
  14. package/src/components/CmdToggleDarkMode.vue +27 -10
  15. package/src/components/CmdTooltip.vue +1 -1
  16. package/src/documentation/generated/CmdAddressDataPropertyDescriptions.json +32 -0
  17. package/src/documentation/generated/CmdBackToTopButtonPropertyDescriptions.json +12 -0
  18. package/src/documentation/generated/CmdBankAccountDataPropertyDescriptions.json +34 -0
  19. package/src/documentation/generated/CmdBoxPropertyDescriptions.json +96 -0
  20. package/src/documentation/generated/CmdBoxSiteSearchPropertyDescriptions.json +79 -0
  21. package/src/documentation/generated/CmdBoxWrapperPropertyDescriptions.json +47 -0
  22. package/src/documentation/generated/CmdBreadcrumbsPropertyDescriptions.json +17 -0
  23. package/src/documentation/generated/CmdCompanyLogoPropertyDescriptions.json +27 -0
  24. package/src/documentation/generated/CmdCookieDisclaimerPropertyDescriptions.json +37 -0
  25. package/src/documentation/generated/CmdCustomHeadlinePropertyDescriptions.json +22 -0
  26. package/src/documentation/generated/CmdFakeSelectPropertyDescriptions.json +84 -0
  27. package/src/documentation/generated/CmdFancyBoxPropertyDescriptions.json +62 -0
  28. package/src/documentation/generated/CmdFormElementPropertyDescriptions.json +253 -0
  29. package/src/documentation/generated/CmdFormFiltersPropertyDescriptions.json +32 -0
  30. package/src/documentation/generated/CmdFormPropertyDescriptions.json +40 -0
  31. package/src/documentation/generated/CmdGoogleMapsPropertyDescriptions.json +7 -0
  32. package/src/documentation/generated/CmdImageGalleryPropertyDescriptions.json +22 -0
  33. package/src/documentation/generated/CmdImageZoomPropertyDescriptions.json +12 -0
  34. package/src/documentation/generated/CmdInputGroupPropertyDescriptions.json +122 -0
  35. package/src/documentation/generated/CmdListOfLinksPropertyDescriptions.json +60 -0
  36. package/src/documentation/generated/CmdListOfRequirementsPropertyDescriptions.json +22 -0
  37. package/src/documentation/generated/CmdLoginFormPropertyDescriptions.json +90 -0
  38. package/src/documentation/generated/CmdMainNavigationPropertyDescriptions.json +62 -0
  39. package/src/documentation/generated/CmdMultistepFormProgressBarPropertyDescriptions.json +17 -0
  40. package/src/documentation/generated/CmdOpeningHoursPropertyDescriptions.json +42 -0
  41. package/src/documentation/generated/CmdPagerPropertyDescriptions.json +37 -0
  42. package/src/documentation/generated/CmdProgressBarPropertyDescriptions.json +32 -0
  43. package/src/documentation/generated/CmdShareButtonsPropertyDescriptions.json +34 -0
  44. package/src/documentation/generated/CmdSiteHeaderPropertyDescriptions.json +27 -0
  45. package/src/documentation/generated/CmdSlideButtonPropertyDescriptions.json +25 -0
  46. package/src/documentation/generated/CmdSlideshowPropertyDescriptions.json +42 -0
  47. package/src/documentation/generated/CmdSwitchLanguagePropertyDescriptions.json +7 -0
  48. package/src/documentation/generated/CmdSystemMessagePropertyDescriptions.json +40 -0
  49. package/src/documentation/generated/CmdTablePropertyDescriptions.json +72 -0
  50. package/src/documentation/generated/CmdTabsPropertyDescriptions.json +27 -0
  51. package/src/documentation/generated/CmdThumbnailScrollerPropertyDescriptions.json +32 -0
  52. package/src/documentation/generated/CmdTooltipPropertyDescriptions.json +17 -0
  53. package/src/documentation/generated/CmdUploadFormPropertyDescriptions.json +175 -0
  54. package/src/documentation/generated/CmdWidthLimitationWrapperPropertyDescriptions.json +41 -0
  55. package/src/mixins/CmdCookieDisclaimer/DefaultMessageProperties.js +10 -0
  56. package/src/mixins/FieldValidation.js +1 -1
@@ -1,21 +1,67 @@
1
1
  <template>
2
- <div :class="['cmd-input-group label', {inline: labelInline, 'multiple-switch': multipleSwitch}]">
2
+ <div :class="[
3
+ 'cmd-input-group label',
4
+ validationStatus,
5
+ {inline: labelInline,
6
+ 'multiple-switch': multipleSwitch,
7
+ disabled: disabled,
8
+ 'toggle-switch': toggleSwitch,
9
+ 'has-state': validationStatus
10
+ }
11
+ ]">
3
12
  <span :class="['label-text', { hidden: !showLabel}]" :id="labelId" :aria-labelledby="labelId">
4
- <span>{{ labelText }}<sup v-if="$attrs.required">*</sup></span>
13
+ <span>{{ labelText }}<sup v-if="required">*</sup></span>
14
+
15
+ <!-- begin CmdTooltip -->
16
+ <CmdTooltip v-if="useCustomTooltip" class="box" :class="validationStatus" :relatedId="tooltipId" :toggle-visibility-by-click="true">
17
+ <!-- begin CmdSystemMessage -->
18
+ <CmdSystemMessage
19
+ v-if="getValidationMessage"
20
+ :message="getValidationMessage"
21
+ :validation-status="validationStatus"
22
+ :iconClose="{show: false}"
23
+ />
24
+ <!-- end CmdSystemMessage -->
25
+
26
+ <!-- begin CmdListOfRequirements -->
27
+ <CmdListOfRequirements
28
+ v-if="showRequirements && (validationStatus === '' || validationStatus === 'error')"
29
+ :inputRequirements="inputRequirements"
30
+ :helplink="helplink"
31
+ :inputModelValue="modelValue"
32
+ :inputAttributes="$attrs"
33
+ />
34
+ <!-- end CmdListOfRequirements -->
35
+ </CmdTooltip>
36
+ <!-- end CmdTooltip -->
37
+
38
+ <a v-if="required || inputRequirements.length"
39
+ href="#"
40
+ @click.prevent
41
+ :class="getStatusIconClass"
42
+ :title="validationTooltip"
43
+ :aria-errormessage="getValidationMessage"
44
+ aria-live="assertive"
45
+ :id="tooltipId"
46
+ :role="validationStatus === 'error' ? 'alert' : 'dialog'">
47
+ </a>
5
48
  </span>
6
49
  <span v-if="!useSlot" :class="['flex-container', {'no-flex': !stretchHorizontally, 'no-gap': multipleSwitch}]">
7
50
  <label v-for="(inputElement, index) in inputElements" :key="index" :for="inputElement.id">
8
- <input :type="inputTypes"
9
- :id="inputElement.id"
10
- :name="inputElement.name"
11
- :value="inputElement.value"
12
- v-model="inputValue"
13
- :class="{'replace-input-type': replaceInputType}"
51
+ <input
52
+ :type="inputTypes"
53
+ :id="inputElement.id"
54
+ :name="inputElement.name"
55
+ :value="inputElement.value"
56
+ v-model="inputValue"
57
+ :disabled="disabled"
58
+ :class="{'replace-input-type': replaceInputType, 'toggle-switch': toggleSwitch}"
14
59
  />
15
60
  <span v-if="multipleSwitch && inputElement.iconClass" :class="inputElement.iconClass"></span>
16
61
  <span v-if="inputElement.labelText">{{ inputElement.labelText }}</span>
17
62
  </label>
18
63
  </span>
64
+
19
65
  <!-- begin useSlot -->
20
66
  <div v-else class="flex-container no-flex">
21
67
  <!-- begin slot -->
@@ -29,10 +75,29 @@
29
75
  <script>
30
76
  import {createUuid} from "../utils/common"
31
77
 
78
+ // import mixins
79
+ import FieldValidation from "../mixins/FieldValidation.js"
80
+ import Tooltip from "../mixins/Tooltip.js"
81
+
82
+ // import components
83
+ import CmdListOfRequirements from "./CmdListOfRequirements"
84
+ import CmdSystemMessage from "./CmdSystemMessage"
85
+ import CmdTooltip from "./CmdTooltip"
86
+
32
87
  export default {
88
+ components: {
89
+ CmdListOfRequirements,
90
+ CmdSystemMessage,
91
+ CmdTooltip
92
+ },
93
+ mixins: [
94
+ FieldValidation,
95
+ Tooltip
96
+ ],
33
97
  data() {
34
98
  return {
35
- value: ""
99
+ value: "",
100
+ validationStatus: ""
36
101
  }
37
102
  },
38
103
  props: {
@@ -43,14 +108,28 @@ export default {
43
108
  type: [Array, String],
44
109
  required: false
45
110
  },
111
+ /**
112
+ * set if input-group should be required
113
+ */
114
+ required: {
115
+ type: Boolean,
116
+ default: false
117
+ },
118
+ /**
119
+ * tooltip for validation
120
+ */
121
+ validationTooltip: {
122
+ type: String,
123
+ default: ""
124
+ },
46
125
  /**
47
126
  * list of input-elements inside group
48
127
  *
49
128
  * useSlot-property must be set to 'false'
50
129
  */
51
130
  inputElements: {
52
- type: Array,
53
- required: false
131
+ type: Array,
132
+ required: false
54
133
  },
55
134
  /**
56
135
  * set type for inputs in group
@@ -61,15 +140,39 @@ export default {
61
140
  type: String,
62
141
  default: "radio"
63
142
  },
143
+ /**
144
+ * set status for label and inner form-elements
145
+ *
146
+ * @allowedValues: error, warning, success, info
147
+ *
148
+ * @affectsStyling: true
149
+ */
150
+ status: {
151
+ type: String,
152
+ required: false
153
+ },
64
154
  /**
65
155
  * for replacing native checkboxes/radio-buttons by custom ones (based on frontend-framework)
66
156
  *
157
+ * toggleSwitch-property must be set to 'false'
158
+ *
67
159
  * @affectsStyling: true
68
160
  */
69
161
  replaceInputType: {
70
162
  type: Boolean,
71
163
  default: false
72
164
  },
165
+ /**
166
+ * for replacing native checkboxes/radio-buttons by toggle-switches (based on frontend-framework)
167
+ *
168
+ * replaceInputType-property must be set to 'false'
169
+ *
170
+ * @affectsStyling: true
171
+ */
172
+ toggleSwitch: {
173
+ type: Boolean,
174
+ default: false
175
+ },
73
176
  /**
74
177
  * activate if input-elements should be given by slot
75
178
  */
@@ -117,12 +220,21 @@ export default {
117
220
  stretchHorizontally: {
118
221
  type: Boolean,
119
222
  default: false
223
+ },
224
+ /**
225
+ * define disabled-property to set disabled-style
226
+ *
227
+ * component cannot handle native disabled-attribute, because it is no native form-element
228
+ */
229
+ disabled: {
230
+ type: Boolean,
231
+ default: false
120
232
  }
121
233
  },
122
234
  computed: {
123
235
  // get ID for accessibility
124
236
  labelId() {
125
- if(this.$attrs.id !== undefined) {
237
+ if (this.$attrs.id !== undefined) {
126
238
  return this.$attrs.id
127
239
  }
128
240
  return "label-" + createUuid()
@@ -152,6 +264,14 @@ export default {
152
264
  this.$emit("update:modelValue", values)
153
265
  }
154
266
  }
267
+ },
268
+ watch: {
269
+ status: {
270
+ handler() {
271
+ this.validationStatus = this.status
272
+ },
273
+ immediate: true
274
+ }
155
275
  }
156
276
  }
157
277
  </script>
@@ -162,5 +282,31 @@ export default {
162
282
  display: flex;
163
283
  gap: var(--default-gap);
164
284
  }
285
+
286
+ /* overwrite default behavior from frontend-framework */
287
+ &.toggle-switch {
288
+ display: block;
289
+ }
290
+
291
+ /* overwrite default behavior from frontend-framework */
292
+ .label-text {
293
+ display: inline-flex;
294
+
295
+ > a[class*="icon"] {
296
+ margin-left: calc(var(--default-margin) / 2);
297
+ }
298
+ }
299
+
300
+ &.has-state {
301
+ label {
302
+ color: var(--status-color);
303
+ }
304
+
305
+ &.multiple-switch {
306
+ label {
307
+ border-color: var(--status-color);
308
+ }
309
+ }
310
+ }
165
311
  }
166
312
  </style>
@@ -0,0 +1,128 @@
1
+ <template>
2
+ <div class="cmd-list-of-requirements">
3
+ <!-- begin cmd-custom-headline -->
4
+ <CmdCustomHeadline :headline-level="cmdCustomHeadline.headlineLevel">
5
+ <!-- {{ getMessage("cmdfakeselect.headline.requirements_for_input") }}<br/>"{{ labelText }}"-->
6
+ </CmdCustomHeadline>
7
+ <!-- end cmd-custom-headline -->
8
+
9
+ <!-- begin list of requirements -->
10
+ <dl>
11
+ <template v-for="(requirement, index) in inputRequirements" :key="index">
12
+ <dt aria-live="assertive" :class="requirement.valid(inputModelValue, inputAttributes) ? 'success' : 'error'">{{ requirement.message }}:</dt>
13
+ <dd :class="requirement.valid(inputModelValue, inputAttributes) ? 'success' : 'error'">
14
+ <span
15
+ aria-live="assertive"
16
+ :class="requirement.valid(inputModelValue, inputAttributes) ? 'icon-check-circle' : 'icon-error-circle'"
17
+ :title="requirement.valid(inputModelValue, inputAttributes) ? 'success' : 'error'"
18
+ >
19
+ </span>
20
+ </dd>
21
+ </template>
22
+ </dl>
23
+ <!-- end list of requirements -->
24
+
25
+ <!-- begin helplink -->
26
+ <template v-if="helplink">
27
+ <hr v-if="helplink.show"/>
28
+ <a
29
+ v-if="helplink.show && helplink.url"
30
+ :href="helplink.url"
31
+ :target="helplink.target"
32
+ @click.prevent
33
+ >
34
+ <span v-if="helplink.icon?.iconClass"
35
+ :class="helplink.icon?.iconClass"
36
+ :title="helplink.icon?.tooltip">
37
+ </span>
38
+ <span v-if="helplink.text">
39
+ {{ helplink.text }}
40
+ </span>
41
+ </a>
42
+ </template>
43
+ <!-- end helplink -->
44
+ </div>
45
+ </template>
46
+
47
+ <script>
48
+ import CmdCustomHeadline from "./CmdCustomHeadline"
49
+
50
+ export default {
51
+ name: "CmdListOfRequirements.vue",
52
+ components: {CmdCustomHeadline},
53
+ props: {
54
+ inputModelValue: {
55
+ type: [String, Boolean, Array, Number],
56
+ default: ""
57
+ },
58
+ inputAttributes: {
59
+ type: Object,
60
+ required: true
61
+ },
62
+ /**
63
+ * text for label
64
+ */
65
+ labelText: {
66
+ type: String,
67
+ required: false
68
+ },
69
+ inputRequirements: {
70
+ type: Array,
71
+ required: true
72
+ },
73
+ helplink: {
74
+ type: String,
75
+ required: false
76
+ },
77
+ cmdCustomHeadline: {
78
+ type: Object,
79
+ default() {
80
+ return {
81
+ headlineLevel: 4
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+ </script>
88
+
89
+ <style lang="scss">
90
+ /* begin cmd-list-of-requiremnets ------------------------------------------------------------------------------------------ */
91
+ .cmd-list-of-requirements {
92
+ dl {
93
+ .error {
94
+ color: var(--error-color);
95
+ }
96
+
97
+ .warning {
98
+ color: var(--warning-color);
99
+ }
100
+
101
+ .success {
102
+ color: var(--success-color);
103
+ }
104
+
105
+ .info {
106
+ color: var(--info-color);
107
+ }
108
+
109
+ span[class*="icon"] {
110
+ font-size: 1.2rem;
111
+ color: var(--status-color);
112
+ }
113
+
114
+ & ~ a {
115
+ display: flex;
116
+ align-items: center;
117
+ justify-content: center;
118
+ text-align: center;
119
+ text-decoration: none;
120
+
121
+ span[class*="icon"] {
122
+ font-size: 1.2rem;
123
+ }
124
+ }
125
+ }
126
+ }
127
+ /* end cmd-list-of-requirements ------------------------------------------------------------------------------------------ */
128
+ </style>
@@ -305,7 +305,7 @@ export default {
305
305
 
306
306
  /* begin offcanvas-navigation */
307
307
  &:not(.persist-on-mobile) {
308
- transition: (--nav-transition);
308
+ transition: var(--nav-transition);
309
309
 
310
310
  #toggle-offcanvas {
311
311
  display: flex;
@@ -433,7 +433,7 @@ export default {
433
433
  height: auto;
434
434
  display: block;
435
435
  opacity: 1;
436
- transition: (--nav-transition);
436
+ transition: var(--nav-transition);
437
437
 
438
438
  > li {
439
439
  > a {
@@ -6,6 +6,7 @@
6
6
  :labelText="labelText"
7
7
  :showLabel="showLabel"
8
8
  v-model="darkMode"
9
+ :toggle-switch="true"
9
10
  />
10
11
  </div>
11
12
  </template>
@@ -14,19 +15,17 @@
14
15
  import CmdFormElement from "./CmdFormElement"
15
16
 
16
17
  export default {
17
- data() {
18
- return {
19
- darkMode: false
20
- }
21
- },
18
+ name: "ToggleDarkMode",
22
19
  components: {
23
20
  CmdFormElement
24
21
  },
22
+ data() {
23
+ return {
24
+ darkMode: false,
25
+ labelText: "Light mode activated"
26
+ }
27
+ },
25
28
  props: {
26
- labelText: {
27
- type: String,
28
- default: "Toggle Darkmode"
29
- },
30
29
  showLabel: {
31
30
  type: Boolean,
32
31
  default: false
@@ -56,11 +55,29 @@ export default {
56
55
  const htmlTag = document.querySelector('html')
57
56
  if(this.darkMode) {
58
57
  htmlTag.classList.replace("light-mode", "dark-mode");
58
+ this.labelText = "Dark-Mode enabled"
59
59
  } else {
60
60
  htmlTag.classList.replace("dark-mode", "light-mode");
61
+ this.labelText = "Light-Mode enabled"
61
62
  }
62
63
  htmlTag.dispatchEvent(new CustomEvent('toggle-color-scheme', { detail: this.darkMode ? 'dark-mode' : 'light-mode' }))
63
64
  }
64
65
  }
65
66
  }
66
- </script>
67
+ </script>
68
+
69
+ <style lang="scss">
70
+ .cmd-toggle-dark-mode {
71
+ .cmd-form-element {
72
+ input {
73
+ background: blue;
74
+ }
75
+ }
76
+
77
+ &.dark-mode {
78
+ input {
79
+ background: black;
80
+ }
81
+ }
82
+ }
83
+ </style>
@@ -138,7 +138,7 @@ export default {
138
138
  },
139
139
  unmounted() {
140
140
  if(this.relatedId) {
141
- const relatedElement = document.getElementById(this.relatedId)
141
+ const relatedElement = document.getElementById(this.npm )
142
142
 
143
143
  if(relatedElement) {
144
144
  relatedElement.removeEventListener("mouseenter", this.showTooltip)
@@ -0,0 +1,32 @@
1
+ {
2
+ "showLabelIcons": {
3
+ "comments": [
4
+ "show a label-icon (if exists)"
5
+ ]
6
+ },
7
+ "showLabelTexts": {
8
+ "comments": [
9
+ "show a label-text"
10
+ ]
11
+ },
12
+ "cmdCustomHeadline": {
13
+ "comments": [
14
+ "properties for CmdCustomHeadline-component"
15
+ ]
16
+ },
17
+ "showLabels": {
18
+ "comments": [
19
+ "option to toggle labels (i.e. telephone, email etc.) in front/left of data"
20
+ ]
21
+ },
22
+ "addressData": {
23
+ "comments": [
24
+ "all address-data (incl. labels) that will be shown"
25
+ ]
26
+ },
27
+ "linkGoogleMaps": {
28
+ "comments": [
29
+ "link physical address (street, no, zip and city) with Google Maps"
30
+ ]
31
+ }
32
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "iconBackToTop": {
3
+ "comments": [
4
+ "icon-class (and shown tooltip on hover) for back to top button"
5
+ ],
6
+ "annotations": {
7
+ "requiredForAccessibility": [
8
+ "partial"
9
+ ]
10
+ }
11
+ }
12
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "accountData": {
3
+ "comments": [
4
+ "bank account data",
5
+ "",
6
+ "must contain: owner, name of bank, IBAN, SWIFT/BIC"
7
+ ]
8
+ },
9
+ "allowCopyByClick": {
10
+ "comments": [
11
+ "enable if data can be copied by click on icon"
12
+ ]
13
+ },
14
+ "additionalInformation": {
15
+ "comments": [
16
+ "additional information shown in a paragraph below account data"
17
+ ]
18
+ },
19
+ "iconCopy": {
20
+ "comments": [
21
+ "icon 'copy'"
22
+ ],
23
+ "annotations": {
24
+ "requiredForAccessibility": [
25
+ "partial"
26
+ ]
27
+ }
28
+ },
29
+ "cmdCustomHeadline": {
30
+ "comments": [
31
+ "properties for CmdCustomHeadline-component"
32
+ ]
33
+ }
34
+ }
@@ -0,0 +1,96 @@
1
+ {
2
+ "boxType": {
3
+ "comments": [
4
+ "set boyType to show different types of boxes/contents"
5
+ ],
6
+ "annotations": {
7
+ "allowedValues": [
8
+ "content, product, user"
9
+ ],
10
+ "affectsStyling": [
11
+ "true"
12
+ ]
13
+ }
14
+ },
15
+ "collapsible": {
16
+ "comments": [
17
+ "activate if box should be collapsible"
18
+ ]
19
+ },
20
+ "useTransition": {
21
+ "comments": [
22
+ "use transition to expand and collapse box-body",
23
+ "",
24
+ "boyType must be 'content' and 'collapsible' must be activated"
25
+ ]
26
+ },
27
+ "defaultProfileIconClass": {
28
+ "comments": [
29
+ "set default profile-icon (will eb shown if no user-image exists)"
30
+ ]
31
+ },
32
+ "product": {
33
+ "comments": [
34
+ "the shown product (incl. name, price, image, description)"
35
+ ],
36
+ "annotations": {
37
+ "required": [
38
+ "only available for boxtype===product"
39
+ ]
40
+ }
41
+ },
42
+ "user": {
43
+ "comments": [
44
+ "the shown user-profile (incl. name, image, contact-data)"
45
+ ],
46
+ "annotations": {
47
+ "required": [
48
+ "only available for boxtype===user"
49
+ ]
50
+ }
51
+ },
52
+ "useSlots": {
53
+ "comments": [
54
+ "activated if all content (incl. headline) is given by slot",
55
+ "",
56
+ "if false textBody-property must be set"
57
+ ]
58
+ },
59
+ "textBody": {
60
+ "comments": [
61
+ "String used as content (placed in a paragraph-tag) for box-body",
62
+ "",
63
+ "should only be used, if no further html-structure is required for box-body"
64
+ ]
65
+ },
66
+ "iconOpen": {
67
+ "comments": [
68
+ "icon to expand an accordion"
69
+ ],
70
+ "annotations": {
71
+ "requiredForAccessibility": [
72
+ "partial"
73
+ ]
74
+ }
75
+ },
76
+ "iconClosed": {
77
+ "comments": [
78
+ "icon to collapse an accordion"
79
+ ],
80
+ "annotations": {
81
+ "requiredForAccessibility": [
82
+ "partial"
83
+ ]
84
+ }
85
+ },
86
+ "stretchVertically": {
87
+ "comments": [
88
+ "allow box to be stretched as high as parent-element"
89
+ ]
90
+ },
91
+ "cmdCustomHeadline": {
92
+ "comments": [
93
+ "properties for CmdCustomHeadline-component"
94
+ ]
95
+ }
96
+ }