comand-component-library 3.3.74 → 3.3.76

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.
@@ -14,11 +14,7 @@
14
14
  },
15
15
  {
16
16
  "image": {
17
- "src": {
18
- "small": "media/images/demo-images/small/landscape-01.jpg",
19
- "medium": "media/images/demo-images/medium/landscape-01.jpg",
20
- "large": "media/images/demo-images/large/landscape-01.jpg"
21
- },
17
+ "src": "media/images/demo-images/large/landscape-02.jpg",
22
18
  "alt": "Alternative text",
23
19
  "tooltip": "Tooltip"
24
20
  },
@@ -41,282 +41,293 @@
41
41
 
42
42
  // assign scss-variables for breakpoints (from variables.scss) to css-variables, to get access to their value in JavaScript by getComputedStyle(document.documentElement).getPropertyValue
43
43
  html {
44
- --medium-max-width: #{$medium-max-width};
45
- --small-max-width: #{$small-max-width};
44
+ --medium-max-width: #{$medium-max-width};
45
+ --small-max-width: #{$small-max-width};
46
46
  }
47
+
47
48
  /* ---------------------------------------------- BEGIN COMPONENTS AND GLOBAL STYLES -------------------------------------------------- */
48
49
  /* begin styles for main structure --------------------------------------------------------------------------------------------------------------------------------------------------- */
49
50
  body {
50
- overflow: hidden;
51
+ overflow: hidden;
51
52
  }
52
53
 
53
54
  #page-wrapper {
54
- scroll-padding-top: 10.5rem;
55
- display: flex;
56
- flex-direction: column;
57
- scroll-snap-type: y mandatory;
58
- overflow-y: scroll;
59
- height: 100vh;
60
- scroll-behavior: smooth;
61
-
62
- .cmd-site-footer {
63
- margin-top: auto;
64
- }
55
+ scroll-padding-top: 10.5rem;
56
+ display: flex;
57
+ flex-direction: column;
58
+ scroll-snap-type: y mandatory;
59
+ overflow-y: scroll;
60
+ width: 100vw;
61
+ height: 100vh;
62
+ scroll-behavior: smooth;
63
+
64
+ .cmd-site-footer {
65
+ margin-top: auto;
66
+ }
65
67
  }
66
68
 
67
69
  #component-library {
68
- /*scroll-padding-top: unset !important;*/
69
- scroll-snap-type: unset !important;
70
+ /*scroll-padding-top: unset !important;*/
71
+ scroll-snap-type: unset !important;
70
72
  }
71
73
 
72
74
  body, .cmd-site-header, .cmd-site-footer, .cmd-copyright-information {
73
- transition: background linear .5s;
75
+ transition: background linear .5s;
74
76
  }
77
+
75
78
  /* end styles for main structure --------------------------------------------------------------------------------------------------------------------------------------------------- */
76
79
 
77
80
  /* begin .avoid-scrolling --------------------------------------------------------------------------------------------------------------------------------------------------- */
78
81
  body.avoid-scrolling {
79
- overflow: hidden;
80
- height: 100%;
82
+ overflow: hidden;
83
+ height: 100%;
81
84
  }
85
+
82
86
  /* end .avoid-scrolling --------------------------------------------------------------------------------------------------------------------------------------------------- */
83
87
 
84
88
  /* begin flags --------------------------------------------------------------------------------------------------------------------------------------------------- */
85
89
  .flag {
86
- width: 3rem;
87
- background-size: 100% 100%;
88
- display: block;
90
+ width: 3rem;
91
+ background-size: 100% 100%;
92
+ display: block;
89
93
  }
94
+
90
95
  /* end flags --------------------------------------------------------------------------------------------------------------------------------------------------- */
91
96
 
92
97
  /* begin input-wrapper for .select --------------------------------------------------------------------------------------------------------------------------------------------------- */
93
98
  .select {
94
- height: var(--input-height); /* forces different browsers to render same height */
99
+ height: var(--input-height); /* forces different browsers to render same height */
95
100
  }
96
101
 
97
102
  .input-wrapper {
98
- .select {
99
- &:first-of-type {
100
- > ul {
101
- > li {
102
- &:first-child {
103
- border-top-right-radius: 0;
104
- border-bottom-right-radius: 0;
105
- }
103
+ .select {
104
+ &:first-of-type {
105
+ > ul {
106
+ > li {
107
+ &:first-child {
108
+ border-top-right-radius: 0;
109
+ border-bottom-right-radius: 0;
110
+ }
111
+ }
112
+ }
106
113
  }
107
- }
108
- }
109
-
110
- &:last-of-type {
111
- > ul {
112
- > li {
113
- &:first-child {
114
- border-top-left-radius: 0;
115
- border-bottom-left-radius: 0;
116
- }
114
+
115
+ &:last-of-type {
116
+ > ul {
117
+ > li {
118
+ &:first-child {
119
+ border-top-left-radius: 0;
120
+ border-bottom-left-radius: 0;
121
+ }
122
+ }
123
+ }
117
124
  }
118
- }
119
125
  }
120
- }
121
126
  }
127
+
122
128
  /* end input-wrapper for .select --------------------------------------------------------------------------------------------------------------------------------------------------- */
123
129
 
124
130
  /* begin product-listing --------------------------------------------------------------------------------------------------------------------------------------------------- */
125
131
  #product-listing-wrapper {
126
- > a {
127
- border: var(--default-border);
128
- text-decoration: none;
129
- display: flex;
130
- flex-direction: column;
131
- grid-column: span var(--grid-small-span);
132
- order: 1;
133
-
134
- &:hover, &:active, &:focus {
135
- border-color: var(--primary-color);
136
- background: var(--default-background-color);
132
+ > a {
133
+ border: var(--default-border);
134
+ text-decoration: none;
135
+ display: flex;
136
+ flex-direction: column;
137
+ grid-column: span var(--grid-small-span);
138
+ order: 1;
139
+
140
+ &:hover, &:active, &:focus {
141
+ border-color: var(--primary-color);
142
+ background: var(--default-background-color);
143
+ }
137
144
  }
138
- }
139
145
 
140
- img {
141
- order: 1;
142
- }
146
+ img {
147
+ order: 1;
148
+ }
143
149
 
144
- &.products-squares {
145
- > a {
146
- grid-column: span calc(var(--grid-columns) / 2);
150
+ &.products-squares {
151
+ > a {
152
+ grid-column: span calc(var(--grid-columns) / 2);
153
+ }
147
154
  }
148
- }
149
155
 
150
- &.products-lines {
151
- > a {
152
- grid-column: span var(--grid-columns);
153
- flex-direction: unset;
156
+ &.products-lines {
157
+ > a {
158
+ grid-column: span var(--grid-columns);
159
+ flex-direction: unset;
160
+
161
+ img {
162
+ margin-left: 0;
163
+ }
164
+ }
165
+
166
+ & .product-information {
167
+ display: flex;
168
+ flex-direction: column;
169
+ padding: calc(var(--default-padding) * 2);
170
+ margin-right: auto;
171
+ }
154
172
 
155
- img {
156
- margin-left: 0;
157
- }
173
+ .description {
174
+ display: block;
175
+ }
158
176
  }
159
177
 
160
- & .product-information {
161
- display: flex;
162
- flex-direction: column;
163
- padding: calc(var(--default-padding) * 2);
164
- margin-right: auto;
178
+ &.product-information {
179
+ order: 2;
165
180
  }
166
181
 
167
182
  .description {
168
- display: block;
183
+ display: none;
184
+ }
185
+
186
+ h3, div {
187
+ padding: var(--default-padding);
188
+ margin: 0;
169
189
  }
170
- }
171
-
172
- &.product-information {
173
- order: 2;
174
- }
175
-
176
- .description {
177
- display: none;
178
- }
179
-
180
- h3, div {
181
- padding: var(--default-padding);
182
- margin: 0;
183
- }
184
-
185
- h3, p {
186
- text-align: center;
187
- }
188
-
189
- .price {
190
- order: 3;
191
- margin-top: auto;
192
- }
193
-
194
- p {
195
- &:last-child {
196
- &, & > span {
197
- margin-bottom: 0;
198
- font-size: 2rem;
199
- }
190
+
191
+ h3, p {
192
+ text-align: center;
200
193
  }
201
194
 
202
- > span {
203
- &:first-child {
204
- text-decoration: line-through;
205
- font-style: italic;
206
- margin-right: var(--default-margin);
207
- opacity: var(--reduced-opacity);
208
- font-size: 1.5rem;
209
- }
195
+ .price {
196
+ order: 3;
197
+ margin-top: auto;
198
+ }
199
+
200
+ p {
201
+ &:last-child {
202
+ &, & > span {
203
+ margin-bottom: 0;
204
+ font-size: 2rem;
205
+ }
206
+ }
207
+
208
+ > span {
209
+ &:first-child {
210
+ text-decoration: line-through;
211
+ font-style: italic;
212
+ margin-right: var(--default-margin);
213
+ opacity: var(--reduced-opacity);
214
+ font-size: 1.5rem;
215
+ }
216
+ }
210
217
  }
211
- }
212
218
  }
219
+
213
220
  /* end product-listing --------------------------------------------------------------------------------------------------------------------------------------------------- */
214
221
 
215
222
  /* begin tooltip for cmd-form-element and cmd-fake-select ---------------------------------------------------------------------------------------------------------------- */
216
223
  .cmd-form-element, .cmd-fake-select, .cmd-input-group {
217
- .cmd-tooltip {
218
- position: absolute;
219
- right: 0;
220
- transform: translateY(calc(-100% - calc(var(--default-margin) / 2)));
221
- left: auto !important; /* overwrite calculated inline-styles from javascript for cmd-tooltip-component */
222
- top: 0 !important; /* overwrite calculated inline-styles from javascript for cmd-tooltip-component */
223
- }
224
-
225
- &.has-state, & + .cmd-tooltip {
226
- .label-text {
227
- > span, > a, sup {
228
- color: var(--status-color);
229
- }
224
+ .cmd-tooltip {
225
+ position: absolute;
226
+ right: 0;
227
+ transform: translateY(calc(-100% - calc(var(--default-margin) / 2)));
228
+ left: auto !important; /* overwrite calculated inline-styles from javascript for cmd-tooltip-component */
229
+ top: 0 !important; /* overwrite calculated inline-styles from javascript for cmd-tooltip-component */
230
230
  }
231
231
 
232
- &.error {
233
- --status-color: var(--error-color);
234
- }
232
+ &.has-state, & + .cmd-tooltip {
233
+ .label-text {
234
+ > span, > a, sup {
235
+ color: var(--status-color);
236
+ }
237
+ }
235
238
 
236
- &.warning {
237
- --status-color: var(--warning-color);
238
- }
239
+ &.error {
240
+ --status-color: var(--error-color);
241
+ }
239
242
 
240
- &.success {
241
- --status-color: var(--success-color);
242
- }
243
+ &.warning {
244
+ --status-color: var(--warning-color);
245
+ }
246
+
247
+ &.success {
248
+ --status-color: var(--success-color);
249
+ }
243
250
 
244
- &.info {
245
- --status-color: var(--info-color);
251
+ &.info {
252
+ --status-color: var(--info-color);
253
+ }
246
254
  }
247
- }
248
255
 
249
- & + .cmd-tooltip {
250
- border-color: var(--status-color);
251
- }
256
+ & + .cmd-tooltip {
257
+ border-color: var(--status-color);
258
+ }
252
259
  }
260
+
253
261
  /* end tooltip for cmd-form-element and cmd-fake-select ------------------------------------------------------------------------------------------------------------------ */
254
262
  /* ---------------------------------------------- END COMPONENTS AND GLOBAL STYLES -------------------------------------------------- */
255
263
 
256
264
  /* ---------------------------------------------- BEGIN MEDIA QUERIES AND BROWSER SPECIFIC STYLES -------------------------------------------------- */
257
265
  /* begin styles for medium screens --------------------------------------------------------------------------------------------------------------------------------------------------- */
258
266
  @media only screen and (max-width: $medium-max-width) {
259
- html {
260
- --grid-small-span: 3; /* default column span smaller part */
261
- --grid-large-span: 3; /* default column span larger part */
262
- }
267
+ html {
268
+ --grid-small-span: 3; /* default column span smaller part */
269
+ --grid-large-span: 3; /* default column span larger part */
270
+ }
263
271
  }
272
+
264
273
  /* end styles for medium screens --------------------------------------------------------------------------------------------------------------------------------------------------- */
265
274
 
266
275
  /* begin styles for small screens --------------------------------------------------------------------------------------------------------------------------------------------------- */
267
276
  @media only screen and (max-width: $small-max-width) {
268
- body, html {
269
- height: auto;
270
- }
271
-
272
- html {
273
- --grid-small-span: 4; /* default column span smaller part */
274
- --grid-large-span: 4; /* default column span larger part */
275
- }
276
-
277
- .section-wrapper {
278
- padding: calc(var(--default-padding) * 2) 0;
279
- }
280
-
281
- a[href^="tel"] {
282
- text-decoration: underline;
283
- }
277
+ body, html {
278
+ height: auto;
279
+ }
280
+
281
+ html {
282
+ --grid-small-span: 4; /* default column span smaller part */
283
+ --grid-large-span: 4; /* default column span larger part */
284
+ }
285
+
286
+ .section-wrapper {
287
+ padding: calc(var(--default-padding) * 2) 0;
288
+ }
289
+
290
+ a[href^="tel"] {
291
+ text-decoration: underline;
292
+ }
284
293
  }
294
+
285
295
  /* end styles for small screens --------------------------------------------------------------------------------------------------------------------------------------------------- */
286
296
  /* ---------------------------------------------- END MEDIA QUERIES AND BROWSER SPECIFIC STYLES -------------------------------------------------- */
287
297
 
288
298
  /* ---------------------------------------------- BEGIN COLORS-SCHEMES (LIGHT-/DARK-MODE) -------------------------------------------------- */
289
299
  html {
290
- &.light-mode {
291
- /* assign default colors for custom light-mode set by class */
292
- --color-scheme-text-color: var(--light-mode-text-color);
293
- --color-scheme-text-color-buttons: var(--light-mode-text-color-buttons);
294
- --color-scheme-background-color: var(--light-mode-background-color);
295
- --color-scheme-text-color-inverted: var(--dark-mode-text-color);
296
- --color-scheme-background-inverted: var(--dark-mode-background-color);
297
- --default-background-color-lightness: 97%;
298
- }
299
-
300
-
301
- --color-scheme-text-color-buttons: var(--dark-mode-text-color-buttons);
302
- --color-scheme-text-color-inverted: var(--light-mode-text-color);
303
- --color-scheme-background: var(--dark-mode-background-color);
304
- --color-scheme-background-inverted: var(--light-mode-background-color);
305
- --default-background-color-lightness: 20%;
306
- --hyperlink-color: var(--hyperlink-color-highlighted);
307
-
308
- &.dark-mode {
309
- /* assign default colors for custom dark-mode set by class */
310
- --color-scheme-text-color: var(--dark-mode-text-color);
300
+ &.light-mode {
301
+ /* assign default colors for custom light-mode set by class */
302
+ --color-scheme-text-color: var(--light-mode-text-color);
303
+ --color-scheme-text-color-buttons: var(--light-mode-text-color-buttons);
304
+ --color-scheme-background-color: var(--light-mode-background-color);
305
+ --color-scheme-text-color-inverted: var(--dark-mode-text-color);
306
+ --color-scheme-background-inverted: var(--dark-mode-background-color);
307
+ --default-background-color-lightness: 97%;
308
+ }
309
+
311
310
  --color-scheme-text-color-buttons: var(--dark-mode-text-color-buttons);
312
- --color-scheme-background-color: var(--dark-mode-background-color);
313
311
  --color-scheme-text-color-inverted: var(--light-mode-text-color);
312
+ --color-scheme-background: var(--dark-mode-background-color);
314
313
  --color-scheme-background-inverted: var(--light-mode-background-color);
315
314
  --default-background-color-lightness: 20%;
316
315
 
317
- :where(label, .label) .label-text > [class*="icon-"] {
318
- background: var(--dark-gray);
316
+ &.dark-mode {
317
+ /* assign default colors for custom dark-mode set by class */
318
+ --color-scheme-text-color: var(--dark-mode-text-color);
319
+ --color-scheme-text-color-buttons: var(--dark-mode-text-color-buttons);
320
+ --color-scheme-background-color: var(--dark-mode-background-color);
321
+ --color-scheme-text-color-inverted: var(--light-mode-text-color);
322
+ --color-scheme-background-inverted: var(--light-mode-background-color);
323
+ --default-background-color-lightness: 20%;
324
+ --hyperlink-color-lightness: 40%; /* hyperlink-color-lightness */
325
+ --hyperlink-color-highlighted-lightness: 50%; /* hyperlink-color-highlighted-lightness (used for highlighted hyperlinks) */
326
+
327
+ :where(label, .label) .label-text > [class*="icon-"] {
328
+ background: var(--dark-gray);
329
+ }
319
330
  }
320
- }
321
331
  }
332
+
322
333
  /* ---------------------------------------------- END COLORS-SCHEMES (LIGHT-/DARK-MODE) -------------------------------------------------- */
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <!-- begin cmd-back-to-top-button -->
3
3
  <transition name="fade">
4
- <a v-if="show" class="cmd-back-to-top-button" href="#" :title="iconBackToTop.tooltip" @click.prevent="onBackToTop">
4
+ <a v-if="show" class="cmd-back-to-top-button button" id="back-to-top-button" href="#" role="button" :title="iconBackToTop.tooltip" @click.prevent="onBackToTop">
5
5
  <!-- begin CmdIcon -->
6
6
  <CmdIcon :iconClass="iconBackToTop.iconClass" :type="iconBackToTop.iconType" />
7
7
  <!-- end CmdIcon -->
@@ -89,31 +89,3 @@ export default {
89
89
  }
90
90
  }
91
91
  </script>
92
-
93
- <style lang="scss">
94
- /* begin cmd-back-to-top-button ---------------------------------------------------------------------------------------- */
95
- .cmd-back-to-top-button {
96
- padding: var(--default-padding);
97
- display: inline-flex;
98
- position: fixed;
99
- right: 2rem;
100
- bottom: 2rem;
101
- text-decoration: none;
102
- z-index: 1000;
103
- border: var(--default-border);
104
- background: var(--color-scheme-background-color);
105
- border-radius: var(--full-circle);
106
- line-height: 100%;
107
-
108
- & [class*="icon-"] {
109
- line-height: 100%; /* avoids icon-bounding-box to be stretched by global line-height */
110
- }
111
-
112
- &:hover, &:active, &:focus {
113
- border-color: var(--primary-color);
114
- transition: var(--default-transition);
115
- }
116
- }
117
-
118
- /* cmd-back-to-top-button ------------------------------------------------------------------------------------------ */
119
- </style>
@@ -466,11 +466,17 @@ export default {
466
466
  }
467
467
  }
468
468
 
469
+ &.open {
470
+ > .box-header {
471
+ border-bottom-left-radius: 0;
472
+ border-bottom-right-radius: 0;
473
+ }
474
+ }
475
+
469
476
  > .box-header {
470
477
  display: flex;
471
478
  align-items: center;
472
- border-top-left-radius: var(--border-radius);
473
- border-top-right-radius: var(--border-radius);
479
+ border-radius: var(--border-radius);
474
480
  padding: calc(var(--default-padding) / 2) var(--default-padding);
475
481
  background: var(--secondary-color);
476
482
  color: var(--pure-white);
@@ -532,12 +538,12 @@ export default {
532
538
 
533
539
  img {
534
540
  display: block;
541
+ border-radius: 0;
535
542
  }
536
543
 
537
544
  .navigation {
538
545
  margin: 0;
539
546
  height: 100%;
540
- background: var(--pure-white);
541
547
 
542
548
  li {
543
549
  list-style-type: none;
@@ -547,7 +553,6 @@ export default {
547
553
  display: block;
548
554
  padding: var(--default-padding);
549
555
  text-decoration: none;
550
- background: var(--pure-white);
551
556
  border-bottom: var(--default-border);
552
557
 
553
558
  &:hover, &:active, &:focus {
@@ -632,6 +637,8 @@ export default {
632
637
 
633
638
  img {
634
639
  border: 0;
640
+ border-bottom-left-radius: 0;
641
+ border-bottom-right-radius: 0;
635
642
  }
636
643
 
637
644
  figcaption {
@@ -532,10 +532,10 @@ export default {
532
532
  height: inherit;
533
533
  border: var(--default-border);
534
534
  background: var(--color-scheme-background-color);
535
- color: var(--text-color);
535
+ color: var(--color-scheme-text-color);
536
536
 
537
537
  span, [class*="icon"] {
538
- color: var(--text-color);
538
+ color: var(--color-scheme-text-color);
539
539
  }
540
540
 
541
541
  .option-name {
@@ -553,7 +553,7 @@ export default {
553
553
  border-color: var(--primary-color);
554
554
 
555
555
  span, [class*="icon"] {
556
- color: var(--text-color);
556
+ color: var(--color-scheme-text-color-inverted);
557
557
  }
558
558
  }
559
559
  }
@@ -611,7 +611,7 @@ export default {
611
611
  background: var(--light-gray);
612
612
 
613
613
  span {
614
- color: var(--text-color);
614
+ color: var(--hyperlink-color);
615
615
  }
616
616
 
617
617
  &:hover, &:active, &:focus {
@@ -22,14 +22,13 @@
22
22
 
23
23
  <!-- begin label-text (+ required asterisk) -->
24
24
  <span v-if="(labelText || $slots.labeltext) && $attrs.type !== 'checkbox' && $attrs.type !== 'radio'"
25
- v-show="showLabel"
26
- class="label-text">
25
+ :class="['label-text', { hidden: !showLabel }]">
27
26
  <span>
28
27
  <template v-if="labelText">{{ labelText }}</template>
29
28
  <!-- begin slot 'labeltext' -->
30
29
  <slot v-else name="labeltext" />
31
30
  <!-- end slot 'labeltext' -->
32
- <sup v-if="$attrs.required">*</sup>
31
+ <sup v-if="$attrs.required" aria-hidden="true">*</sup>
33
32
  </span>
34
33
 
35
34
  <!-- begin CmdTooltipForInputElements -->
@@ -154,7 +153,7 @@
154
153
  <span class="label-text">{{ onLabel }}</span>
155
154
  <span class="label-text">{{ offLabel }}</span>
156
155
  </span>
157
- <span v-if="labelText" class="label-text">
156
+ <span v-if="labelText" :class="['label-text', {hidden: !showLabel}]">
158
157
  <span>{{ labelText }}<sup v-if="$attrs.required">*</sup></span>
159
158
  </span>
160
159
  </template>
@@ -879,12 +878,12 @@ export default {
879
878
  // set styles to avoid overwriting by has-state-colors
880
879
  &.button {
881
880
  span {
882
- color: var(--pure-white);
881
+ color: var(--color-scheme-background-color);
883
882
  }
884
883
 
885
884
  &:hover, &:active, &:focus {
886
885
  span {
887
- color: var(--text-color);
886
+ color: var(--color-scheme-text-color);
888
887
  }
889
888
  }
890
889
  }