comand-component-library 3.1.72 → 3.1.75

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) 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 +3 -3
  4. package/src/App.vue +112 -79
  5. package/src/assets/data/cookie-disclaimer.json +7 -6
  6. package/src/assets/data/input-group-radiobuttons.json +23 -0
  7. package/src/assets/data/input-group-replaced-radiobuttons.json +23 -0
  8. package/src/assets/data/input-group-toggle-switch-radiobuttons.json +23 -0
  9. package/src/assets/styles/global-styles.scss +20 -59
  10. package/src/components/CmdAddressData.vue +7 -7
  11. package/src/components/CmdBankAccountData.vue +7 -7
  12. package/src/components/CmdBox.vue +25 -31
  13. package/src/components/CmdBoxSiteSearch.vue +9 -9
  14. package/src/components/CmdCookieDisclaimer.vue +93 -25
  15. package/src/components/CmdFakeSelect.vue +36 -52
  16. package/src/components/CmdFormElement.vue +36 -57
  17. package/src/components/{CmdCustomHeadline.vue → CmdHeadline.vue} +1 -1
  18. package/src/components/CmdInputGroup.vue +156 -24
  19. package/src/components/CmdListOfLinks.vue +8 -8
  20. package/src/components/CmdListOfRequirements.vue +150 -0
  21. package/src/components/CmdLoginForm.vue +17 -17
  22. package/src/components/CmdMainNavigation.vue +2 -2
  23. package/src/components/CmdOpeningHours.vue +5 -5
  24. package/src/components/CmdSiteFooter.vue +76 -0
  25. package/src/components/CmdSiteHeader.vue +2 -1
  26. package/src/components/CmdSystemMessage.vue +28 -11
  27. package/src/components/CmdTabs.vue +8 -8
  28. package/src/components/CmdToggleDarkMode.vue +42 -5
  29. package/src/components/CmdTooltip.vue +13 -13
  30. package/src/components/CmdTooltipForInputElements.vue +122 -0
  31. package/src/components/CmdUploadForm.vue +32 -32
  32. package/src/components/CmdWidthLimitationWrapper.vue +0 -17
  33. package/src/documentation/generated/CmdAddressDataPropertyDescriptions.json +32 -0
  34. package/src/documentation/generated/CmdBackToTopButtonPropertyDescriptions.json +12 -0
  35. package/src/documentation/generated/CmdBankAccountDataPropertyDescriptions.json +34 -0
  36. package/src/documentation/generated/CmdBoxPropertyDescriptions.json +96 -0
  37. package/src/documentation/generated/CmdBoxSiteSearchPropertyDescriptions.json +79 -0
  38. package/src/documentation/generated/CmdBoxWrapperPropertyDescriptions.json +47 -0
  39. package/src/documentation/generated/CmdBreadcrumbsPropertyDescriptions.json +17 -0
  40. package/src/documentation/generated/CmdCompanyLogoPropertyDescriptions.json +27 -0
  41. package/src/documentation/generated/CmdCookieDisclaimerPropertyDescriptions.json +37 -0
  42. package/src/documentation/generated/CmdCustomHeadlinePropertyDescriptions.json +22 -0
  43. package/src/documentation/generated/CmdFakeSelectPropertyDescriptions.json +84 -0
  44. package/src/documentation/generated/CmdFancyBoxPropertyDescriptions.json +62 -0
  45. package/src/documentation/generated/CmdFormElementPropertyDescriptions.json +258 -0
  46. package/src/documentation/generated/CmdFormFiltersPropertyDescriptions.json +32 -0
  47. package/src/documentation/generated/CmdFormPropertyDescriptions.json +40 -0
  48. package/src/documentation/generated/CmdGoogleMapsPropertyDescriptions.json +7 -0
  49. package/src/documentation/generated/CmdHeadlinePropertyDescriptions.json +22 -0
  50. package/src/documentation/generated/CmdImageGalleryPropertyDescriptions.json +22 -0
  51. package/src/documentation/generated/CmdImageZoomPropertyDescriptions.json +12 -0
  52. package/src/documentation/generated/CmdInputGroupPropertyDescriptions.json +117 -0
  53. package/src/documentation/generated/CmdListOfLinksPropertyDescriptions.json +60 -0
  54. package/src/documentation/generated/CmdListOfRequirementsPropertyDescriptions.json +32 -0
  55. package/src/documentation/generated/CmdLoginFormPropertyDescriptions.json +90 -0
  56. package/src/documentation/generated/CmdMainNavigationPropertyDescriptions.json +62 -0
  57. package/src/documentation/generated/CmdMultistepFormProgressBarPropertyDescriptions.json +17 -0
  58. package/src/documentation/generated/CmdOpeningHoursPropertyDescriptions.json +42 -0
  59. package/src/documentation/generated/CmdPagerPropertyDescriptions.json +37 -0
  60. package/src/documentation/generated/CmdProgressBarPropertyDescriptions.json +32 -0
  61. package/src/documentation/generated/CmdShareButtonsPropertyDescriptions.json +34 -0
  62. package/src/documentation/generated/CmdSiteFooterPropertyDescriptions.json +12 -0
  63. package/src/documentation/generated/CmdSiteHeaderPropertyDescriptions.json +27 -0
  64. package/src/documentation/generated/CmdSlideButtonPropertyDescriptions.json +25 -0
  65. package/src/documentation/generated/CmdSlideshowPropertyDescriptions.json +42 -0
  66. package/src/documentation/generated/CmdSwitchLanguagePropertyDescriptions.json +7 -0
  67. package/src/documentation/generated/CmdSystemMessagePropertyDescriptions.json +45 -0
  68. package/src/documentation/generated/CmdTablePropertyDescriptions.json +72 -0
  69. package/src/documentation/generated/CmdTabsPropertyDescriptions.json +27 -0
  70. package/src/documentation/generated/CmdThumbnailScrollerPropertyDescriptions.json +32 -0
  71. package/src/documentation/generated/CmdTooltipForInputElementsPropertyDescriptions.json +42 -0
  72. package/src/documentation/generated/CmdTooltipPropertyDescriptions.json +17 -0
  73. package/src/documentation/generated/CmdUploadFormPropertyDescriptions.json +175 -0
  74. package/src/documentation/generated/CmdWidthLimitationWrapperPropertyDescriptions.json +41 -0
  75. package/src/index.js +2 -1
  76. package/src/mixins/CmdCookieDisclaimer/DefaultMessageProperties.js +10 -0
  77. package/src/mixins/FieldValidation.js +16 -6
  78. package/src/mixins/Tooltip.js +1 -1
@@ -0,0 +1,72 @@
1
+ {
2
+ "tableData": {
3
+ "comments": [
4
+ "table data (incl. caption, thead, tbody)"
5
+ ]
6
+ },
7
+ "caption": {
8
+ "comments": [
9
+ "caption for table (shown above table)"
10
+ ],
11
+ "annotations": {
12
+ "requiredForAccessibility": [
13
+ "true"
14
+ ]
15
+ }
16
+ },
17
+ "collapsible": {
18
+ "comments": [
19
+ "activate if table should be collapsible"
20
+ ]
21
+ },
22
+ "fullWidthOnDefault": {
23
+ "comments": [
24
+ "activate if table should be stretched to full width of its parent-container (else table will be as wide as its content)"
25
+ ]
26
+ },
27
+ "userCanToggleWidth": {
28
+ "comments": [
29
+ "user can toggle width (full-width (=100% of parent container or as wide as table content) with button above table)"
30
+ ]
31
+ },
32
+ "iconExpand": {
33
+ "comments": [
34
+ "icon to expand table (vertically)"
35
+ ],
36
+ "annotations": {
37
+ "requiredForAccessibility": [
38
+ "partial"
39
+ ]
40
+ }
41
+ },
42
+ "iconCollapse": {
43
+ "comments": [
44
+ "icon to collapse table (vertically)"
45
+ ],
46
+ "annotations": {
47
+ "requiredForAccessibility": [
48
+ "partial"
49
+ ]
50
+ }
51
+ },
52
+ "iconToggleWidth": {
53
+ "comments": [
54
+ "icon to shrink table (horizontally)"
55
+ ],
56
+ "annotations": {
57
+ "requiredForAccessibility": [
58
+ "partial"
59
+ ]
60
+ }
61
+ },
62
+ "iconStretch": {
63
+ "comments": [
64
+ "icon to stretch table (horizontally)"
65
+ ],
66
+ "annotations": {
67
+ "requiredForAccessibility": [
68
+ "partial"
69
+ ]
70
+ }
71
+ }
72
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "CmdHeadline": {
3
+ "comments": [
4
+ "properties for CmdHeadline-component"
5
+ ]
6
+ },
7
+ "stretchTabs": {
8
+ "comments": [
9
+ "activate if tabs should be (equally) stretched horizontally over full width of tab-content"
10
+ ]
11
+ },
12
+ "tabs": {
13
+ "comments": [
14
+ "list of tabs (incl. tab-name and tab-content (optional))"
15
+ ]
16
+ },
17
+ "useSlot": {
18
+ "comments": [
19
+ "activate if content should be given by slot"
20
+ ]
21
+ },
22
+ "activeTab": {
23
+ "comments": [
24
+ "set default active/shown tab"
25
+ ]
26
+ }
27
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "thumbnailScrollerItems": {
3
+ "comments": [
4
+ "list of thumbnail-scroller-items"
5
+ ]
6
+ },
7
+ "allowOpenFancyBox": {
8
+ "comments": [
9
+ "allow large version of images to be opened in CmdFancyBox-component"
10
+ ]
11
+ },
12
+ "imgIndex": {
13
+ "comments": [
14
+ "set a default index to activate/highlight a specific image/item"
15
+ ]
16
+ },
17
+ "figcaption": {
18
+ "comments": [
19
+ "set figcaption"
20
+ ]
21
+ },
22
+ "cmdSlideButtons": {
23
+ "comments": [
24
+ "properties for CmdSlideButtons-component"
25
+ ],
26
+ "annotations": {
27
+ "requiredForAccessibility": [
28
+ "partial"
29
+ ]
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "relatedId": {
3
+ "comments": [
4
+ "related-id for CmdTooltip-component"
5
+ ]
6
+ },
7
+ "validationStatus": {
8
+ "comments": [
9
+ "validation-status for CmdSystemMessage-component and CmdTooltip-component"
10
+ ]
11
+ },
12
+ "validationMessage": {
13
+ "comments": [
14
+ "validation-message for CmdSystemMessage-component"
15
+ ]
16
+ },
17
+ "showRequirements": {
18
+ "comments": [
19
+ "toggle visibility for CmdListOfRequirements-component"
20
+ ]
21
+ },
22
+ "validationTooltip": {
23
+ "comments": [
24
+ "validation-tooltip for CmdListOfRequirements-component"
25
+ ]
26
+ },
27
+ "inputRequirements": {
28
+ "comments": [
29
+ "list of input-requirements for CmdListOfRequirements-component"
30
+ ]
31
+ },
32
+ "inputAttributes": {
33
+ "comments": [
34
+ "helplink for CmdListOfRequirements-component"
35
+ ]
36
+ },
37
+ "methods": {
38
+ "comments": [
39
+ "helplink for CmdListOfRequirements-component"
40
+ ]
41
+ }
42
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "CmdHeadline": {
3
+ "comments": [
4
+ "enable toggling tooltip-visibility by click"
5
+ ]
6
+ },
7
+ "methods": {
8
+ "comments": [
9
+ "enable toggling tooltip-visibility by click"
10
+ ]
11
+ },
12
+ "watch": {
13
+ "comments": [
14
+ "enable toggling tooltip-visibility by click"
15
+ ]
16
+ }
17
+ }
@@ -0,0 +1,175 @@
1
+ {
2
+ "showTotalUpload": {
3
+ "comments": [
4
+ "toggle visibility of total upload (number of files, total size, total progress"
5
+ ]
6
+ },
7
+ "componentHandlesUpload": {
8
+ "comments": [
9
+ "toggle if upload is handled by component itself or by outer component"
10
+ ]
11
+ },
12
+ "allowedFileExtensions": {
13
+ "comments": [
14
+ "list of allowed file extensions to upload (all can be selected)"
15
+ ]
16
+ },
17
+ "commentRequired": {
18
+ "comments": [
19
+ "activate if the comment given by the user should be mandatory",
20
+ "",
21
+ "enableComment-property must be set to true"
22
+ ]
23
+ },
24
+ "commentStatusMessage": {
25
+ "comments": [
26
+ "show a message if mandatory comment-textarea is not filled",
27
+ "",
28
+ "enableComment-property and commentRequired-property must be set to true"
29
+ ]
30
+ },
31
+ "enableDragAndDrop": {
32
+ "comments": [
33
+ "enable if files can also be dragged (and dropped) into upload-area"
34
+ ]
35
+ },
36
+ "enableComment": {
37
+ "comments": [
38
+ "enable if a comment should be possible to left by the user"
39
+ ]
40
+ },
41
+ "presetComment": {
42
+ "comments": [
43
+ "preset the comment-textarea",
44
+ "",
45
+ "enableComment-property must be set to true"
46
+ ]
47
+ },
48
+ "maxTotalUploadSize": {
49
+ "comments": [
50
+ "set to 0 if no maximum for total upload size should be set"
51
+ ]
52
+ },
53
+ "maxFileUploadSize": {
54
+ "comments": [
55
+ "max file size (in bytes) for each single file"
56
+ ]
57
+ },
58
+ "allowMultipleFileUploads": {
59
+ "comments": [
60
+ "enable if more than file should be enabled to be selected for upload"
61
+ ]
62
+ },
63
+ "uploadOptions": {
64
+ "comments": [
65
+ "defines upload options if component handles upload itself",
66
+ "",
67
+ "componentHandlesUpload-property must be true"
68
+ ]
69
+ },
70
+ "advancedMode": {
71
+ "comments": [
72
+ "activate to use full upload-form-style and -functionality"
73
+ ],
74
+ "annotations": {
75
+ "affectsStyling": [
76
+ "true"
77
+ ]
78
+ }
79
+ },
80
+ "deleteIconClass": {
81
+ "comments": [
82
+ "set icon class for delete-icons"
83
+ ]
84
+ },
85
+ "fileUploadIconClass": {
86
+ "comments": [
87
+ "set icon class for file-upload-icon"
88
+ ]
89
+ },
90
+ "fileIconClass": {
91
+ "comments": [
92
+ "set icon class for file-icon"
93
+ ]
94
+ },
95
+ "invisibleIconClass": {
96
+ "comments": [
97
+ "set icon class for invisible-icon"
98
+ ]
99
+ },
100
+ "visibleIconClass": {
101
+ "comments": [
102
+ "set icon class for visible-icon"
103
+ ]
104
+ },
105
+ "imageIconClass": {
106
+ "comments": [
107
+ "set icon class for image-icon"
108
+ ]
109
+ },
110
+ "uploadIconClass": {
111
+ "comments": [
112
+ "set icon class for upload-icon"
113
+ ]
114
+ },
115
+ "dragAndDropIconClass": {
116
+ "comments": [
117
+ "set icon class for drag-and-drop-icon"
118
+ ]
119
+ },
120
+ "cancelIconClass": {
121
+ "comments": [
122
+ "set icon class for cancel-icon"
123
+ ]
124
+ },
125
+ "CmdHeadlineFieldset": {
126
+ "comments": [
127
+ "properties for CmdHeadline-component at of the fieldset"
128
+ ]
129
+ },
130
+ "CmdHeadlineNoFilesToUpload": {
131
+ "comments": [
132
+ "properties for CmdHeadline-component shown if no files for upload exist"
133
+ ]
134
+ },
135
+ "CmdHeadlineNoFileToUpload": {
136
+ "comments": [
137
+ "properties for CmdHeadline-component shown if no file for upload exist"
138
+ ]
139
+ },
140
+ "CmdHeadlineSummaryOfAllFiles": {
141
+ "comments": [
142
+ "properties for CmdHeadline-component for 'summary of all files'"
143
+ ]
144
+ },
145
+ "CmdHeadlineListOfSelectedFiles": {
146
+ "comments": [
147
+ "properties for CmdHeadline-component for 'list of selected files'"
148
+ ]
149
+ },
150
+ "CmdHeadlineSelectAdditionalFiles": {
151
+ "comments": [
152
+ "properties for CmdHeadline-component for 'select additional files'"
153
+ ]
154
+ },
155
+ "CmdHeadlineSelectNewFile": {
156
+ "comments": [
157
+ "properties for CmdHeadline-component for 'select new file'"
158
+ ]
159
+ },
160
+ "showLegend": {
161
+ "comments": [
162
+ "toggle visibility for legend-text"
163
+ ]
164
+ },
165
+ "textLegend": {
166
+ "comments": [
167
+ "text for legend"
168
+ ],
169
+ "annotations": {
170
+ "requiredForAccessibility": [
171
+ "true"
172
+ ]
173
+ }
174
+ }
175
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "innerComponent": {
3
+ "comments": [
4
+ "set a html-tag as inner tag"
5
+ ],
6
+ "annotations": {
7
+ "allowedValues": [
8
+ "section, div"
9
+ ]
10
+ }
11
+ },
12
+ "innerWrapper": {
13
+ "comments": [
14
+ "activate if the inner content should be wrapped in inner component tag (recommended)",
15
+ "",
16
+ "(if deactivated, content will be directly placed inside cmd-width-limitation-wrapper)",
17
+ ""
18
+ ]
19
+ },
20
+ "sticky": {
21
+ "comments": [
22
+ "activate if wrapper (and its content) should be sticky (=position remains the same if content below is scrolled)",
23
+ "",
24
+ "i.e. use for site-header",
25
+ "",
26
+ "keep attention that more than one sticky-element on same html-level can cause problems, if content below is scrolled"
27
+ ]
28
+ },
29
+ "innerClass": {
30
+ "comments": [
31
+ "set class to inner component",
32
+ "",
33
+ "innerWrapper-property must be true"
34
+ ]
35
+ },
36
+ "anchorId": {
37
+ "comments": [
38
+ "set id for (invisible) anchor to enable shortcuts"
39
+ ]
40
+ }
41
+ }
package/src/index.js CHANGED
@@ -11,7 +11,7 @@ export { default as CmdBreadcrumbs } from '@/components/CmdBreadcrumbs'
11
11
  export { default as CmdCompanyLogo } from '@/components/CmdCompanyLogo'
12
12
  export { default as CmdCookieDisclaimer } from '@/components/CmdCookieDisclaimer'
13
13
  export { default as CmdCopyrightInformation } from '@/components/CmdCopyrightInformation'
14
- export { default as CmdCustomHeadline } from '@/components/CmdCustomHeadline'
14
+ export { default as CmdHeadline } from '@/components/CmdHeadline'
15
15
  export { default as CmdFakeSelect } from '@/components/CmdFakeSelect'
16
16
  export { openFancyBox, default as CmdFancyBox } from '@/components/CmdFancyBox'
17
17
  export { default as CmdForm } from '@/components/CmdForm'
@@ -29,6 +29,7 @@ export { default as CmdOpeningHours } from '@/components/CmdOpeningHours'
29
29
  export { default as CmdPager } from '@/components/CmdPager'
30
30
  export { default as CmdProgressBar } from '@/components/CmdProgressBar'
31
31
  export { default as CmdShareButtons } from '@/components/CmdShareButtons'
32
+ export { default as CmdSiteFooter } from '@/components/CmdSiteFooter'
32
33
  export { default as CmdSiteHeader } from '@/components/CmdSiteHeader'
33
34
  export { default as CmdSlideButton } from '@/components/CmdSlideButton'
34
35
  export { default as CmdSlideshow } from '@/components/CmdSlideshow'
@@ -0,0 +1,10 @@
1
+ export default {
2
+ data() {
3
+ return {
4
+ defaultMessageProperties: {
5
+ "cmdcookiedisclaimer.title.cookie_cannot_be_disabled": "This cookie cannot be disabled, because it is required for functionality!",
6
+ "cmdcookiedisclaimer.title.toggle_to_accept_cookie": "Toggle to accept or reject this cookie!"
7
+ }
8
+ }
9
+ }
10
+ }
@@ -146,8 +146,16 @@ export default {
146
146
  },
147
147
  computed: {
148
148
  getValidationMessage() {
149
+ // check if all requirements are valid
150
+ // const allRequirementsValid = !this.inputRequirements.some((item) => {
151
+ // return !item.valid(this.modelValue, this.$attrs)
152
+ // })
153
+
149
154
  if (this.validationStatus !== "") {
150
- if (this.validationStatus === "error" && !this.validationMessage) {
155
+ if (this.validationStatus === "error") {
156
+ if(this.validationMessage) {
157
+ return this.validationMessage
158
+ }
151
159
  return this.getMessage("cmdfieldvalidation.information_not_filled_correctly")
152
160
  }
153
161
  if (this.validationStatus === "warning" && this.capsLockActivated) {
@@ -157,6 +165,7 @@ export default {
157
165
  return this.getMessage("cmdfieldvalidation.information_filled_correctly")
158
166
  }
159
167
  }
168
+
160
169
  return null
161
170
  },
162
171
  getStatusIconClass() {
@@ -179,15 +188,16 @@ export default {
179
188
  inputRequirements() {
180
189
  const standardRequirements = []
181
190
  // check if field is required
182
- if(this.$attrs.required) {
191
+ if(this.$attrs.required || this.required) {
192
+ const inputRequired = this.required
183
193
  standardRequirements.push({
184
194
  message: this.getRequirementMessage(),
185
195
  valid(value, attributes) {
186
- return !attributes.required || value.length > 0
196
+ return (!attributes.required && !inputRequired) || value.length > 0
187
197
  }
188
198
  })
189
199
  }
190
- // check if filed has a minimum length
200
+ // check if field has a minimum length
191
201
  if(this.$attrs.minlength) {
192
202
  standardRequirements.push({
193
203
  message: "Input has minimum length (" + this.modelValue.length + "/" + this.$attrs.minlength + ")",
@@ -209,7 +219,7 @@ export default {
209
219
  if ((["password", "number", "url", "email"].includes(this.$attrs.type)) && event.getModifierState("CapsLock")) {
210
220
  this.capsLockActivated = true
211
221
  this.validationStatus = "warning"
212
- } else {
222
+ } else if(this.capsLockActivated && this.validationStatus === "warning") {
213
223
  this.capsLockActivated = false
214
224
  this.validationStatus = ""
215
225
  }
@@ -220,7 +230,7 @@ export default {
220
230
  }
221
231
  }
222
232
 
223
- function validateSpecialCharacters(message = "Field contains Special character") {
233
+ function validateSpecialCharacters(message = "Field contains special character") {
224
234
  return {
225
235
  message,
226
236
  valid(value) {
@@ -1,4 +1,4 @@
1
- import {nextSequenceValue} from "../utils/globalSequence";
1
+ import {nextSequenceValue} from "../utils/globalSequence"
2
2
 
3
3
  export default {
4
4
  data() {