hr-design-system-handlebars 1.102.2 → 1.102.4
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/CHANGELOG.md +25 -0
- package/dist/assets/index.css +79 -8
- package/dist/views/components/forms/choice.hbs +9 -34
- package/dist/views/components/forms/choiceGroup.hbs +41 -0
- package/dist/views/components/forms/fields.hbs +2 -1
- package/dist/views/components/teaser/teaser_poster.hbs +12 -7
- package/dist/views_static/components/forms/choice.hbs +9 -34
- package/dist/views_static/components/forms/choiceGroup.hbs +41 -0
- package/dist/views_static/components/forms/fields.hbs +2 -1
- package/dist/views_static/components/teaser/teaser_poster.hbs +12 -7
- package/package.json +1 -1
- package/src/assets/fixtures/forms/form_checkbox_grouped.json +8 -0
- package/src/assets/fixtures/forms/form_fields.inc.json +56 -3
- package/src/stories/views/components/forms/choice.hbs +9 -34
- package/src/stories/views/components/forms/choiceGroup.hbs +41 -0
- package/src/stories/views/components/forms/fields.hbs +2 -1
- package/src/stories/views/components/forms/fixtures/form_checkbox.json +1 -1
- package/src/stories/views/components/forms/fixtures/form_checkbox_grouped.json +1 -0
- package/src/stories/views/components/forms/form_checkbox_grouped.stories.js +34 -0
- package/src/stories/views/components/teaser/teaser_poster.hbs +12 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
# v1.102.4 (Fri Sep 27 2024)
|
|
2
|
+
|
|
3
|
+
#### 🐛 Bug Fix
|
|
4
|
+
|
|
5
|
+
- DPE-3306-b: add checkbox group [#1079](https://github.com/mumprod/hr-design-system-handlebars/pull/1079) (saad.elbaciri@hr.de [@selbaciri](https://github.com/selbaciri))
|
|
6
|
+
|
|
7
|
+
#### Authors: 2
|
|
8
|
+
|
|
9
|
+
- Saad El Baciri ([@selbaciri](https://github.com/selbaciri))
|
|
10
|
+
- selbaciri (saad.elbaciri@hr.de)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# v1.102.3 (Tue Sep 24 2024)
|
|
15
|
+
|
|
16
|
+
#### 🐛 Bug Fix
|
|
17
|
+
|
|
18
|
+
- modify Posterteaser [#1077](https://github.com/mumprod/hr-design-system-handlebars/pull/1077) ([@hanswurstsalat](https://github.com/hanswurstsalat))
|
|
19
|
+
|
|
20
|
+
#### Authors: 1
|
|
21
|
+
|
|
22
|
+
- Geraldo ([@hanswurstsalat](https://github.com/hanswurstsalat))
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
1
26
|
# v1.102.2 (Tue Sep 24 2024)
|
|
2
27
|
|
|
3
28
|
#### 🐛 Bug Fix
|
package/dist/assets/index.css
CHANGED
|
@@ -1393,9 +1393,6 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
1393
1393
|
.-mt-6 {
|
|
1394
1394
|
margin-top: -1.5rem;
|
|
1395
1395
|
}
|
|
1396
|
-
.-mt-8 {
|
|
1397
|
-
margin-top: -2rem;
|
|
1398
|
-
}
|
|
1399
1396
|
.-mt-\[33px\] {
|
|
1400
1397
|
margin-top: -33px;
|
|
1401
1398
|
}
|
|
@@ -2115,6 +2112,9 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
2115
2112
|
.gap-y-3 {
|
|
2116
2113
|
row-gap: 0.75rem;
|
|
2117
2114
|
}
|
|
2115
|
+
.gap-y-4 {
|
|
2116
|
+
row-gap: 1rem;
|
|
2117
|
+
}
|
|
2118
2118
|
.gap-y-5 {
|
|
2119
2119
|
row-gap: 1.25rem;
|
|
2120
2120
|
}
|
|
@@ -2655,6 +2655,9 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
2655
2655
|
--tw-gradient-to: rgba(255, 255, 255, 0) var(--tw-gradient-to-position);
|
|
2656
2656
|
--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
|
|
2657
2657
|
}
|
|
2658
|
+
.to-80\% {
|
|
2659
|
+
--tw-gradient-to-position: 80%;
|
|
2660
|
+
}
|
|
2658
2661
|
.fill-\[\#006dc1\] {
|
|
2659
2662
|
fill: #006dc1;
|
|
2660
2663
|
}
|
|
@@ -2853,6 +2856,9 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
2853
2856
|
.pb-10 {
|
|
2854
2857
|
padding-bottom: 2.5rem;
|
|
2855
2858
|
}
|
|
2859
|
+
.pb-16 {
|
|
2860
|
+
padding-bottom: 4rem;
|
|
2861
|
+
}
|
|
2856
2862
|
.pb-2 {
|
|
2857
2863
|
padding-bottom: 0.5rem;
|
|
2858
2864
|
}
|
|
@@ -2877,6 +2883,9 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
2877
2883
|
.pb-9 {
|
|
2878
2884
|
padding-bottom: 2.25rem;
|
|
2879
2885
|
}
|
|
2886
|
+
.pb-\[70px\] {
|
|
2887
|
+
padding-bottom: 70px;
|
|
2888
|
+
}
|
|
2880
2889
|
.pb-footer-padding-bottom {
|
|
2881
2890
|
padding-bottom: 16px;
|
|
2882
2891
|
padding-bottom: var(--footer-padding-bottom);
|
|
@@ -3486,7 +3495,7 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
3486
3495
|
border-bottom-color: var(--color-secondary-ds);
|
|
3487
3496
|
}
|
|
3488
3497
|
.counter-reset {
|
|
3489
|
-
counter-reset:
|
|
3498
|
+
counter-reset: cnt1727451245610;
|
|
3490
3499
|
}
|
|
3491
3500
|
.hyphens-auto {
|
|
3492
3501
|
-webkit-hyphens: auto;
|
|
@@ -3894,7 +3903,7 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
3894
3903
|
--tw-ring-color: rgba(255, 255, 255, 0.5);
|
|
3895
3904
|
}
|
|
3896
3905
|
.-ordered {
|
|
3897
|
-
counter-increment:
|
|
3906
|
+
counter-increment: cnt1727451245610 1;
|
|
3898
3907
|
}
|
|
3899
3908
|
.-ordered::before {
|
|
3900
3909
|
position: absolute;
|
|
@@ -3910,7 +3919,7 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
3910
3919
|
letter-spacing: .0125em;
|
|
3911
3920
|
--tw-text-opacity: 1;
|
|
3912
3921
|
color: rgba(0, 0, 0, var(--tw-text-opacity));
|
|
3913
|
-
content: counter(
|
|
3922
|
+
content: counter(cnt1727451245610);
|
|
3914
3923
|
}
|
|
3915
3924
|
/*! ****************************/
|
|
3916
3925
|
/*! DataPolicy stuff */
|
|
@@ -6346,6 +6355,14 @@ input[type="checkbox"]:checked::after {
|
|
|
6346
6355
|
width: 2rem;
|
|
6347
6356
|
}
|
|
6348
6357
|
|
|
6358
|
+
.sm480\:pb-24 {
|
|
6359
|
+
padding-bottom: 6rem;
|
|
6360
|
+
}
|
|
6361
|
+
|
|
6362
|
+
.sm480\:pb-\[86px\] {
|
|
6363
|
+
padding-bottom: 86px;
|
|
6364
|
+
}
|
|
6365
|
+
|
|
6349
6366
|
.sm480\:align-top {
|
|
6350
6367
|
vertical-align: top;
|
|
6351
6368
|
}
|
|
@@ -6539,10 +6556,18 @@ input[type="checkbox"]:checked::after {
|
|
|
6539
6556
|
margin-bottom: 3.5rem;
|
|
6540
6557
|
}
|
|
6541
6558
|
|
|
6559
|
+
.sm\:mb-3 {
|
|
6560
|
+
margin-bottom: 0.75rem;
|
|
6561
|
+
}
|
|
6562
|
+
|
|
6542
6563
|
.sm\:mb-5 {
|
|
6543
6564
|
margin-bottom: 1.25rem;
|
|
6544
6565
|
}
|
|
6545
6566
|
|
|
6567
|
+
.sm\:mb-7 {
|
|
6568
|
+
margin-bottom: 1.75rem;
|
|
6569
|
+
}
|
|
6570
|
+
|
|
6546
6571
|
.sm\:mb-8 {
|
|
6547
6572
|
margin-bottom: 2rem;
|
|
6548
6573
|
}
|
|
@@ -6734,10 +6759,22 @@ input[type="checkbox"]:checked::after {
|
|
|
6734
6759
|
padding-bottom: 0px;
|
|
6735
6760
|
}
|
|
6736
6761
|
|
|
6762
|
+
.sm\:pb-16 {
|
|
6763
|
+
padding-bottom: 4rem;
|
|
6764
|
+
}
|
|
6765
|
+
|
|
6737
6766
|
.sm\:pb-2 {
|
|
6738
6767
|
padding-bottom: 0.5rem;
|
|
6739
6768
|
}
|
|
6740
6769
|
|
|
6770
|
+
.sm\:pb-24 {
|
|
6771
|
+
padding-bottom: 6rem;
|
|
6772
|
+
}
|
|
6773
|
+
|
|
6774
|
+
.sm\:pb-\[86px\] {
|
|
6775
|
+
padding-bottom: 86px;
|
|
6776
|
+
}
|
|
6777
|
+
|
|
6741
6778
|
.sm\:pl-0 {
|
|
6742
6779
|
padding-left: 0px;
|
|
6743
6780
|
}
|
|
@@ -6949,6 +6986,10 @@ input[type="checkbox"]:checked::after {
|
|
|
6949
6986
|
margin-bottom: 0px;
|
|
6950
6987
|
}
|
|
6951
6988
|
|
|
6989
|
+
.md\:mb-12 {
|
|
6990
|
+
margin-bottom: 3rem;
|
|
6991
|
+
}
|
|
6992
|
+
|
|
6952
6993
|
.md\:mb-16 {
|
|
6953
6994
|
margin-bottom: 4rem;
|
|
6954
6995
|
}
|
|
@@ -7143,17 +7184,27 @@ input[type="checkbox"]:checked::after {
|
|
|
7143
7184
|
justify-content: space-between;
|
|
7144
7185
|
}
|
|
7145
7186
|
|
|
7187
|
+
.md\:gap-x-3 {
|
|
7188
|
+
-moz-column-gap: 0.75rem;
|
|
7189
|
+
column-gap: 0.75rem;
|
|
7190
|
+
}
|
|
7191
|
+
|
|
7146
7192
|
.md\:gap-x-6 {
|
|
7147
7193
|
-moz-column-gap: 1.5rem;
|
|
7148
7194
|
column-gap: 1.5rem;
|
|
7149
7195
|
}
|
|
7150
7196
|
|
|
7197
|
+
.md\:gap-x-7 {
|
|
7198
|
+
-moz-column-gap: 1.75rem;
|
|
7199
|
+
column-gap: 1.75rem;
|
|
7200
|
+
}
|
|
7201
|
+
|
|
7151
7202
|
.md\:gap-y-14 {
|
|
7152
7203
|
row-gap: 3.5rem;
|
|
7153
7204
|
}
|
|
7154
7205
|
|
|
7155
|
-
.md\:gap-y-
|
|
7156
|
-
row-gap:
|
|
7206
|
+
.md\:gap-y-5 {
|
|
7207
|
+
row-gap: 1.25rem;
|
|
7157
7208
|
}
|
|
7158
7209
|
|
|
7159
7210
|
.md\:space-x-3 > :not([hidden]) ~ :not([hidden]) {
|
|
@@ -7277,6 +7328,22 @@ input[type="checkbox"]:checked::after {
|
|
|
7277
7328
|
padding-bottom: 1.75rem;
|
|
7278
7329
|
}
|
|
7279
7330
|
|
|
7331
|
+
.md\:pb-16 {
|
|
7332
|
+
padding-bottom: 4rem;
|
|
7333
|
+
}
|
|
7334
|
+
|
|
7335
|
+
.md\:pb-24 {
|
|
7336
|
+
padding-bottom: 6rem;
|
|
7337
|
+
}
|
|
7338
|
+
|
|
7339
|
+
.md\:pb-32 {
|
|
7340
|
+
padding-bottom: 8rem;
|
|
7341
|
+
}
|
|
7342
|
+
|
|
7343
|
+
.md\:pb-\[70px\] {
|
|
7344
|
+
padding-bottom: 70px;
|
|
7345
|
+
}
|
|
7346
|
+
|
|
7280
7347
|
.md\:pl-0 {
|
|
7281
7348
|
padding-left: 0px;
|
|
7282
7349
|
}
|
|
@@ -7348,6 +7415,10 @@ input[type="checkbox"]:checked::after {
|
|
|
7348
7415
|
line-height: 1.6875rem;
|
|
7349
7416
|
}
|
|
7350
7417
|
|
|
7418
|
+
.md\:leading-10 {
|
|
7419
|
+
line-height: 2.5rem;
|
|
7420
|
+
}
|
|
7421
|
+
|
|
7351
7422
|
.md\:leading-4 {
|
|
7352
7423
|
line-height: 1rem;
|
|
7353
7424
|
}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
<div class="relative flex flex-col w-full mb-6 gap-y-
|
|
1
|
+
<div class="relative flex flex-col w-full {{#unless _inGroup}} mb-6 md:mb-12{{/unless}} gap-y-4 md:gap-y-5"
|
|
2
2
|
ax-load
|
|
3
3
|
x-data="inputHandler('input{{nextRandom}}','{{_errorMandatory}}','{{_type}}')"
|
|
4
4
|
x-ignore
|
|
5
5
|
>
|
|
6
|
-
|
|
7
|
-
<div class="flex flex-row items-center w-full gap-x-4">
|
|
8
|
-
|
|
6
|
+
<div class="flex flex-row items-center w-full gap-x-2 md:gap-x-3">
|
|
9
7
|
<input class="relative self-start flex-shrink-0 w-6 h-6 bg-white border appearance-none cursor-pointer border-blue-science-hex checked:bg-blue-congress-hex checked:border-transparent"
|
|
10
8
|
:class="{' border-blue-science-hex': hideError(),'border-red-700': hideDescription() }"
|
|
11
9
|
@change="validateInput"
|
|
@@ -47,32 +45,22 @@
|
|
|
47
45
|
{{/if}}
|
|
48
46
|
{{/if~}}
|
|
49
47
|
>
|
|
50
|
-
|
|
51
48
|
<label for="input{{getRandom}}" class="items-center justify-center text-xs text-black md:text-sm font-headingSerif ">
|
|
52
49
|
{{#if _hasBody}}
|
|
53
|
-
{{decorator_body}}{{#if _required}}*{{/if}}
|
|
50
|
+
{{decorator_body}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
54
51
|
{{else}}
|
|
55
52
|
{{#if _locaKey}}
|
|
56
|
-
{{loca _locaKey}}{{#if _required}}*{{/if}}
|
|
53
|
+
{{loca _locaKey}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
57
54
|
{{else}}
|
|
58
55
|
{{#if _label}}
|
|
59
|
-
{{{_label}}}{{#if _required}}*{{/if}}
|
|
56
|
+
{{{_label}}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
60
57
|
{{/if}}
|
|
61
58
|
{{/if}}
|
|
62
59
|
{{/if}}
|
|
63
60
|
</label>
|
|
64
|
-
|
|
65
|
-
{{#
|
|
66
|
-
|
|
67
|
-
<div class="hidden w-5 h-5 font-bold" :class="{'hidden': hideError() }">
|
|
68
|
-
{{> components/base/image/icon _icon="info2" _addClass="w-5 h-5 fill-red-700"}}
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
{{/if}}
|
|
72
|
-
|
|
73
|
-
</div>
|
|
74
|
-
|
|
75
|
-
<div class="flex items-end justify-between h-5 font-heading">
|
|
61
|
+
</div>
|
|
62
|
+
{{#unless _inGroup}}
|
|
63
|
+
<div class="font-heading">
|
|
76
64
|
{{#if _description}}
|
|
77
65
|
<div class="text-xs text-gray-500" {{#if _required}}:class="{'hidden': hideDescription() }"{{/if}}>{{_description}}</div>
|
|
78
66
|
{{/if}}
|
|
@@ -80,18 +68,5 @@
|
|
|
80
68
|
<div class="hidden text-xs text-red-700" :class="{'hidden': hideError()}" x-text="errorMessage"></div>
|
|
81
69
|
{{/if}}
|
|
82
70
|
</div>
|
|
83
|
-
|
|
84
|
-
<div class="hidden" >
|
|
85
|
-
<b>DEBUGG</b>
|
|
86
|
-
<div>isChecked:<span x-text="isChecked" class="font-bold" :class="isChecked ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
87
|
-
<div>isFocused:<span x-text="isFocused" class="font-bold" :class="isFocused ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
88
|
-
<div>wasFocused:<span x-text="wasFocused" class="font-bold" :class="wasFocused ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
89
|
-
<div>valid:<span x-text="valid" class="font-bold" :class="valid ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
90
|
-
<div>hideDescription:<span x-text="hideDescription()" class="font-bold" :class="hideDescription() ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
91
|
-
<div>hideError:<span x-text="hideError()" class="font-bold" :class="hideError() ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
92
|
-
<div>errorMessage:<span x-text="errorMessage" class="font-bold" ></span></div>
|
|
93
|
-
</div>
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
71
|
+
{{/unless}}
|
|
97
72
|
</div>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<fieldset>
|
|
2
|
+
<div class="relative flex flex-col w-full mb-6 md:mb-12 gap-y-4 md:gap-y-5">
|
|
3
|
+
<legend class="text-lg font-bold text-black md:text-xl font-heading">
|
|
4
|
+
{{#if _hasBody}}
|
|
5
|
+
{{decorator_body}}{{#if _required}}*{{/if}}
|
|
6
|
+
{{else}}
|
|
7
|
+
{{#if _locaKey}}
|
|
8
|
+
{{loca _locaKey}}{{#if _required}}*{{/if}}
|
|
9
|
+
{{else}}
|
|
10
|
+
{{#if _label}}
|
|
11
|
+
{{{_label}}}{{#if _required}}*{{/if}}
|
|
12
|
+
{{/if}}
|
|
13
|
+
{{/if}}
|
|
14
|
+
{{/if}}
|
|
15
|
+
</legend>
|
|
16
|
+
<div class="flex flex-row flex-wrap gap-x-6 md:gap-x-7 gap-y-5" >
|
|
17
|
+
{{#each _items}}
|
|
18
|
+
<div class=" c-form__option">
|
|
19
|
+
{{> components/forms/choice
|
|
20
|
+
_type=../_type
|
|
21
|
+
_name=../_name
|
|
22
|
+
_value=this.value
|
|
23
|
+
_inGroup=true
|
|
24
|
+
_label=this.label
|
|
25
|
+
_selected=this.selected
|
|
26
|
+
_title=this.title
|
|
27
|
+
_multipleChoice=../_multipleChoice
|
|
28
|
+
}}
|
|
29
|
+
</div>
|
|
30
|
+
{{/each}}
|
|
31
|
+
</div>
|
|
32
|
+
<div class="font-heading">
|
|
33
|
+
{{#if _description}}
|
|
34
|
+
<div class="text-xs text-gray-500" {{#if _required}}:class="{'hidden': hideDescription() }"{{/if}}>{{_description}}</div>
|
|
35
|
+
{{/if}}
|
|
36
|
+
{{#if _required}}
|
|
37
|
+
<div class="hidden text-xs text-red-700" :class="{'hidden': hideError()}" x-text="errorMessage"></div>
|
|
38
|
+
{{/if}}
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</fieldset>
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
}}
|
|
57
57
|
{{else if this.type.isChoice}}
|
|
58
58
|
{{#if this.isGrouped }}
|
|
59
|
-
{{~>
|
|
59
|
+
{{~> components/forms/choiceGroup
|
|
60
60
|
_type=this.type.asString
|
|
61
61
|
_name=this.name
|
|
62
62
|
_label=this.label
|
|
@@ -65,6 +65,7 @@
|
|
|
65
65
|
_required=this.isRequired
|
|
66
66
|
_multipleChoice=../_multipleChoice
|
|
67
67
|
_addClass=../_addClass
|
|
68
|
+
_errorMandatory="Bitte füllen Sie dieses Pflichtfeld aus"
|
|
68
69
|
|
|
69
70
|
}}
|
|
70
71
|
{{else}}
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
{{~> components/base/image/responsive_image this.teaserImage _type=this.teaserType _variant=this.content.imageVariant _noDelay=../_noDelay _addClassImg="rounded-tl-hr rounded-br-hr" ~}}
|
|
15
15
|
{{/if}}
|
|
16
16
|
</figure>
|
|
17
|
-
<div class="absolute flex flex-col justify-
|
|
17
|
+
<div class="absolute flex flex-col justify-end w-full h-full {{#if _isCopytext~}}{{#if this.showFullSize.isTrue~}}{{inline-switch this.showStretched.isTrue '["false","true"]' '["pb-[70px] sm480:pb-24 md:pb-32","pb-[70px] sm480:pb-[86px] sm:pb-16 md:pb-[70px]","pb-[70px] sm480:pb-24 md:pb-32"]'}}{{else}}pb-[70px] sm480:pb-24 sm:pb-[86px] md:pb-24{{/if}}{{else}}{{inline-switch this.realTeaserSize '["33","50"]' '["pb-16 sm:pb-24 md:pb-16","pb-16 sm:pb-24 md:pb-24"]'}}{{/if}} bg-gradient-to-t to-80% from-black rounded-tl-hr rounded-br-hr">
|
|
18
18
|
{{#>components/base/link _link=this.link _css="ds-teaser-focus flex items-center flex-col before:rounded-tl-hr before:rounded-br-hr hover:text-toplineColor"}}
|
|
19
|
-
<div class="
|
|
19
|
+
<div class="line-clamp-4 xs:line-clamp-5 md:line-clamp-4 {{#if ../this.showStretched.isTrue}}lg:line-clamp-4{{else}}lg:line-clamp-5{{/if}}">
|
|
20
20
|
{{#> components/teaser/components/teaser_header _css="text-center"}}
|
|
21
21
|
{{#with this.label}}
|
|
22
22
|
{{#> components/label/label_group}}
|
|
@@ -24,11 +24,15 @@
|
|
|
24
24
|
<span class="text-white">{{> components/label/label_byline _css="ml-2" _text=../../../this.tickerTopic}}</span>
|
|
25
25
|
{{/components/label/label_group}}
|
|
26
26
|
{{/with~}}
|
|
27
|
-
{{#> components/teaser/components/teaser_headline _headlineTag=(if ../../_isCopytext-adjust_context "h3" "h2") _css="text-shadow text-center text-white
|
|
27
|
+
{{#> components/teaser/components/teaser_headline _headlineTag=(if ../../_isCopytext-adjust_context "h3" "h2") _css="text-shadow text-center text-white mx-2 xs:mx-6 sm:mx-8 md:mx-5 lg:mx-8"}}
|
|
28
28
|
{{#if this.topline}}
|
|
29
29
|
{{> components/teaser/components/teaser_topline _css="!text-white" _text=this.topline}}
|
|
30
30
|
{{/if}}
|
|
31
|
-
{{
|
|
31
|
+
{{#if ../../_isCopytext-adjust_context}}
|
|
32
|
+
{{> components/teaser/components/teaser_title _css=(if this.showFullSize.isTrue "md:leading-10 whitespace-pre-wrap" "whitespace-pre-wrap") _text=this.title _size=this.realTeaserSize _teaserType="poster" _isCopytext=../../_isCopytext-adjust_context}}
|
|
33
|
+
{{else}}
|
|
34
|
+
{{> components/teaser/components/teaser_title _css=(inline-switch this.realTeaserSize '["33","50"]' '["whitespace-pre-wrap","md:leading-10 whitespace-pre-wrap"]') _text=this.title _size=this.realTeaserSize _teaserType="poster" _isCopytext=../../_isCopytext-adjust_context}}
|
|
35
|
+
{{/if}}
|
|
32
36
|
{{#if this.extendedTitle}}
|
|
33
37
|
{{> components/teaser/components/teaser_subline _text=this.extendedTitle}}
|
|
34
38
|
{{/if}}
|
|
@@ -36,10 +40,11 @@
|
|
|
36
40
|
{{/components/teaser/components/teaser_header}}
|
|
37
41
|
</div>
|
|
38
42
|
{{/components/base/link}}
|
|
43
|
+
</div>
|
|
39
44
|
<span class="absolute flex items-end justify-center w-full h-full ds-cta">
|
|
40
45
|
{{#if _isCopytext~}}
|
|
41
46
|
{{#if this.showFullSize.isTrue~}}
|
|
42
|
-
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.showStretched.isTrue '["false","true"]' '["z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white","z-20 mb-4 sm480:mb-7
|
|
47
|
+
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.showStretched.isTrue '["false","true"]' '["z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white","z-20 mb-4 sm480:mb-7 sm:mb-3 hover:bg-white","z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white"]') _variant="secondary" _isAriaHidden=true _onBackground=true}}
|
|
43
48
|
{{> components/button/components/button_label _css="" _label=this.link.readMoreText.readMoreLong}}
|
|
44
49
|
{{/components/button/link_button}}
|
|
45
50
|
{{else}}
|
|
@@ -48,10 +53,10 @@
|
|
|
48
53
|
{{/components/button/link_button}}
|
|
49
54
|
{{/if}}
|
|
50
55
|
{{else}}
|
|
51
|
-
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.realTeaserSize '["33","50"]' '["z-20 mb-7 hover:bg-white","z-20 mb-
|
|
56
|
+
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.realTeaserSize '["33","50"]' '["z-20 mb-3 sm:mb-7 md:mb-3 hover:bg-white","z-20 mb-3 sm:mb-7 hover:bg-white"]') _variant="secondary" _isAriaHidden=true _onBackground=true}}
|
|
52
57
|
{{> components/button/components/button_label _css="" _label=this.link.readMoreText.readMoreLong}}
|
|
53
58
|
{{/components/button/link_button}}
|
|
54
59
|
{{/if}}
|
|
55
60
|
</span>
|
|
56
|
-
|
|
61
|
+
|
|
57
62
|
</article>
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
<div class="relative flex flex-col w-full mb-6 gap-y-
|
|
1
|
+
<div class="relative flex flex-col w-full {{#unless _inGroup}} mb-6 md:mb-12{{/unless}} gap-y-4 md:gap-y-5"
|
|
2
2
|
ax-load
|
|
3
3
|
x-data="inputHandler('input{{nextRandom}}','{{_errorMandatory}}','{{_type}}')"
|
|
4
4
|
x-ignore
|
|
5
5
|
>
|
|
6
|
-
|
|
7
|
-
<div class="flex flex-row items-center w-full gap-x-4">
|
|
8
|
-
|
|
6
|
+
<div class="flex flex-row items-center w-full gap-x-2 md:gap-x-3">
|
|
9
7
|
<input class="relative self-start flex-shrink-0 w-6 h-6 bg-white border appearance-none cursor-pointer border-blue-science-hex checked:bg-blue-congress-hex checked:border-transparent"
|
|
10
8
|
:class="{' border-blue-science-hex': hideError(),'border-red-700': hideDescription() }"
|
|
11
9
|
@change="validateInput"
|
|
@@ -47,32 +45,22 @@
|
|
|
47
45
|
{{/if}}
|
|
48
46
|
{{/if~}}
|
|
49
47
|
>
|
|
50
|
-
|
|
51
48
|
<label for="input{{getRandom}}" class="items-center justify-center text-xs text-black md:text-sm font-headingSerif ">
|
|
52
49
|
{{#if _hasBody}}
|
|
53
|
-
{{decorator_body}}{{#if _required}}*{{/if}}
|
|
50
|
+
{{decorator_body}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
54
51
|
{{else}}
|
|
55
52
|
{{#if _locaKey}}
|
|
56
|
-
{{loca _locaKey}}{{#if _required}}*{{/if}}
|
|
53
|
+
{{loca _locaKey}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
57
54
|
{{else}}
|
|
58
55
|
{{#if _label}}
|
|
59
|
-
{{{_label}}}{{#if _required}}*{{/if}}
|
|
56
|
+
{{{_label}}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
60
57
|
{{/if}}
|
|
61
58
|
{{/if}}
|
|
62
59
|
{{/if}}
|
|
63
60
|
</label>
|
|
64
|
-
|
|
65
|
-
{{#
|
|
66
|
-
|
|
67
|
-
<div class="hidden w-5 h-5 font-bold" :class="{'hidden': hideError() }">
|
|
68
|
-
{{> components/base/image/icon _icon="info2" _addClass="w-5 h-5 fill-red-700"}}
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
{{/if}}
|
|
72
|
-
|
|
73
|
-
</div>
|
|
74
|
-
|
|
75
|
-
<div class="flex items-end justify-between h-5 font-heading">
|
|
61
|
+
</div>
|
|
62
|
+
{{#unless _inGroup}}
|
|
63
|
+
<div class="font-heading">
|
|
76
64
|
{{#if _description}}
|
|
77
65
|
<div class="text-xs text-gray-500" {{#if _required}}:class="{'hidden': hideDescription() }"{{/if}}>{{_description}}</div>
|
|
78
66
|
{{/if}}
|
|
@@ -80,18 +68,5 @@
|
|
|
80
68
|
<div class="hidden text-xs text-red-700" :class="{'hidden': hideError()}" x-text="errorMessage"></div>
|
|
81
69
|
{{/if}}
|
|
82
70
|
</div>
|
|
83
|
-
|
|
84
|
-
<div class="hidden" >
|
|
85
|
-
<b>DEBUGG</b>
|
|
86
|
-
<div>isChecked:<span x-text="isChecked" class="font-bold" :class="isChecked ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
87
|
-
<div>isFocused:<span x-text="isFocused" class="font-bold" :class="isFocused ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
88
|
-
<div>wasFocused:<span x-text="wasFocused" class="font-bold" :class="wasFocused ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
89
|
-
<div>valid:<span x-text="valid" class="font-bold" :class="valid ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
90
|
-
<div>hideDescription:<span x-text="hideDescription()" class="font-bold" :class="hideDescription() ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
91
|
-
<div>hideError:<span x-text="hideError()" class="font-bold" :class="hideError() ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
92
|
-
<div>errorMessage:<span x-text="errorMessage" class="font-bold" ></span></div>
|
|
93
|
-
</div>
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
71
|
+
{{/unless}}
|
|
97
72
|
</div>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<fieldset>
|
|
2
|
+
<div class="relative flex flex-col w-full mb-6 md:mb-12 gap-y-4 md:gap-y-5">
|
|
3
|
+
<legend class="text-lg font-bold text-black md:text-xl font-heading">
|
|
4
|
+
{{#if _hasBody}}
|
|
5
|
+
{{decorator_body}}{{#if _required}}*{{/if}}
|
|
6
|
+
{{else}}
|
|
7
|
+
{{#if _locaKey}}
|
|
8
|
+
{{loca _locaKey}}{{#if _required}}*{{/if}}
|
|
9
|
+
{{else}}
|
|
10
|
+
{{#if _label}}
|
|
11
|
+
{{{_label}}}{{#if _required}}*{{/if}}
|
|
12
|
+
{{/if}}
|
|
13
|
+
{{/if}}
|
|
14
|
+
{{/if}}
|
|
15
|
+
</legend>
|
|
16
|
+
<div class="flex flex-row flex-wrap gap-x-6 md:gap-x-7 gap-y-5" >
|
|
17
|
+
{{#each _items}}
|
|
18
|
+
<div class=" c-form__option">
|
|
19
|
+
{{> components/forms/choice
|
|
20
|
+
_type=../_type
|
|
21
|
+
_name=../_name
|
|
22
|
+
_value=this.value
|
|
23
|
+
_inGroup=true
|
|
24
|
+
_label=this.label
|
|
25
|
+
_selected=this.selected
|
|
26
|
+
_title=this.title
|
|
27
|
+
_multipleChoice=../_multipleChoice
|
|
28
|
+
}}
|
|
29
|
+
</div>
|
|
30
|
+
{{/each}}
|
|
31
|
+
</div>
|
|
32
|
+
<div class="font-heading">
|
|
33
|
+
{{#if _description}}
|
|
34
|
+
<div class="text-xs text-gray-500" {{#if _required}}:class="{'hidden': hideDescription() }"{{/if}}>{{_description}}</div>
|
|
35
|
+
{{/if}}
|
|
36
|
+
{{#if _required}}
|
|
37
|
+
<div class="hidden text-xs text-red-700" :class="{'hidden': hideError()}" x-text="errorMessage"></div>
|
|
38
|
+
{{/if}}
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</fieldset>
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
}}
|
|
57
57
|
{{else if this.type.isChoice}}
|
|
58
58
|
{{#if this.isGrouped }}
|
|
59
|
-
{{~>
|
|
59
|
+
{{~> components/forms/choiceGroup
|
|
60
60
|
_type=this.type.asString
|
|
61
61
|
_name=this.name
|
|
62
62
|
_label=this.label
|
|
@@ -65,6 +65,7 @@
|
|
|
65
65
|
_required=this.isRequired
|
|
66
66
|
_multipleChoice=../_multipleChoice
|
|
67
67
|
_addClass=../_addClass
|
|
68
|
+
_errorMandatory="Bitte füllen Sie dieses Pflichtfeld aus"
|
|
68
69
|
|
|
69
70
|
}}
|
|
70
71
|
{{else}}
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
{{~> components/base/image/responsive_image this.teaserImage _type=this.teaserType _variant=this.content.imageVariant _noDelay=../_noDelay _addClassImg="rounded-tl-hr rounded-br-hr" ~}}
|
|
15
15
|
{{/if}}
|
|
16
16
|
</figure>
|
|
17
|
-
<div class="absolute flex flex-col justify-
|
|
17
|
+
<div class="absolute flex flex-col justify-end w-full h-full {{#if _isCopytext~}}{{#if this.showFullSize.isTrue~}}{{inline-switch this.showStretched.isTrue '["false","true"]' '["pb-[70px] sm480:pb-24 md:pb-32","pb-[70px] sm480:pb-[86px] sm:pb-16 md:pb-[70px]","pb-[70px] sm480:pb-24 md:pb-32"]'}}{{else}}pb-[70px] sm480:pb-24 sm:pb-[86px] md:pb-24{{/if}}{{else}}{{inline-switch this.realTeaserSize '["33","50"]' '["pb-16 sm:pb-24 md:pb-16","pb-16 sm:pb-24 md:pb-24"]'}}{{/if}} bg-gradient-to-t to-80% from-black rounded-tl-hr rounded-br-hr">
|
|
18
18
|
{{#>components/base/link _link=this.link _css="ds-teaser-focus flex items-center flex-col before:rounded-tl-hr before:rounded-br-hr hover:text-toplineColor"}}
|
|
19
|
-
<div class="
|
|
19
|
+
<div class="line-clamp-4 xs:line-clamp-5 md:line-clamp-4 {{#if ../this.showStretched.isTrue}}lg:line-clamp-4{{else}}lg:line-clamp-5{{/if}}">
|
|
20
20
|
{{#> components/teaser/components/teaser_header _css="text-center"}}
|
|
21
21
|
{{#with this.label}}
|
|
22
22
|
{{#> components/label/label_group}}
|
|
@@ -24,11 +24,15 @@
|
|
|
24
24
|
<span class="text-white">{{> components/label/label_byline _css="ml-2" _text=../../../this.tickerTopic}}</span>
|
|
25
25
|
{{/components/label/label_group}}
|
|
26
26
|
{{/with~}}
|
|
27
|
-
{{#> components/teaser/components/teaser_headline _headlineTag=(if _isCopytext "h3" "h2") _css="text-shadow text-center text-white
|
|
27
|
+
{{#> components/teaser/components/teaser_headline _headlineTag=(if _isCopytext "h3" "h2") _css="text-shadow text-center text-white mx-2 xs:mx-6 sm:mx-8 md:mx-5 lg:mx-8"}}
|
|
28
28
|
{{#if this.topline}}
|
|
29
29
|
{{> components/teaser/components/teaser_topline _css="!text-white" _text=this.topline}}
|
|
30
30
|
{{/if}}
|
|
31
|
-
{{
|
|
31
|
+
{{#if _isCopytext}}
|
|
32
|
+
{{> components/teaser/components/teaser_title _css=(if this.showFullSize.isTrue "md:leading-10 whitespace-pre-wrap" "whitespace-pre-wrap") _text=this.title _size=this.realTeaserSize _teaserType="poster" _isCopytext=_isCopytext}}
|
|
33
|
+
{{else}}
|
|
34
|
+
{{> components/teaser/components/teaser_title _css=(inline-switch this.realTeaserSize '["33","50"]' '["whitespace-pre-wrap","md:leading-10 whitespace-pre-wrap"]') _text=this.title _size=this.realTeaserSize _teaserType="poster" _isCopytext=_isCopytext}}
|
|
35
|
+
{{/if}}
|
|
32
36
|
{{#if this.extendedTitle}}
|
|
33
37
|
{{> components/teaser/components/teaser_subline _text=this.extendedTitle}}
|
|
34
38
|
{{/if}}
|
|
@@ -36,10 +40,11 @@
|
|
|
36
40
|
{{/components/teaser/components/teaser_header}}
|
|
37
41
|
</div>
|
|
38
42
|
{{/components/base/link}}
|
|
43
|
+
</div>
|
|
39
44
|
<span class="absolute flex items-end justify-center w-full h-full ds-cta">
|
|
40
45
|
{{#if _isCopytext~}}
|
|
41
46
|
{{#if this.showFullSize.isTrue~}}
|
|
42
|
-
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.showStretched.isTrue '["false","true"]' '["z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white","z-20 mb-4 sm480:mb-7
|
|
47
|
+
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.showStretched.isTrue '["false","true"]' '["z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white","z-20 mb-4 sm480:mb-7 sm:mb-3 hover:bg-white","z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white"]') _variant="secondary" _isAriaHidden=true _onBackground=true}}
|
|
43
48
|
{{> components/button/components/button_label _css="" _label=this.link.readMoreText.readMoreLong}}
|
|
44
49
|
{{/components/button/link_button}}
|
|
45
50
|
{{else}}
|
|
@@ -48,10 +53,10 @@
|
|
|
48
53
|
{{/components/button/link_button}}
|
|
49
54
|
{{/if}}
|
|
50
55
|
{{else}}
|
|
51
|
-
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.realTeaserSize '["33","50"]' '["z-20 mb-7 hover:bg-white","z-20 mb-
|
|
56
|
+
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.realTeaserSize '["33","50"]' '["z-20 mb-3 sm:mb-7 md:mb-3 hover:bg-white","z-20 mb-3 sm:mb-7 hover:bg-white"]') _variant="secondary" _isAriaHidden=true _onBackground=true}}
|
|
52
57
|
{{> components/button/components/button_label _css="" _label=this.link.readMoreText.readMoreLong}}
|
|
53
58
|
{{/components/button/link_button}}
|
|
54
59
|
{{/if}}
|
|
55
60
|
</span>
|
|
56
|
-
|
|
61
|
+
|
|
57
62
|
</article>
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"repository": "https://github.com/szuelch/hr-design-system-handlebars",
|
|
9
|
-
"version": "1.102.
|
|
9
|
+
"version": "1.102.4",
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
12
|
"storybook": "storybook dev -p 6006 public",
|
|
@@ -91,14 +91,67 @@
|
|
|
91
91
|
"label":"Ich bin damit einverstanden.",
|
|
92
92
|
"isMeta":false,
|
|
93
93
|
"description":"Das ist der Beschreibungstext von Checkbox",
|
|
94
|
-
"isRequired":true
|
|
94
|
+
"isRequired":true
|
|
95
|
+
},
|
|
96
|
+
"checkbox-group":
|
|
97
|
+
{
|
|
98
|
+
"isGrouped":true,
|
|
99
|
+
"type":{
|
|
100
|
+
"isChoice":true,
|
|
101
|
+
"asString":"checkbox"
|
|
102
|
+
},
|
|
103
|
+
"name":"interessen",
|
|
104
|
+
"label":"Wählen Sie Ihre Interessen:",
|
|
105
|
+
"isMeta":false,
|
|
106
|
+
"description":"Bitte kreuzen Sie alle Interessen an, die auf Sie zutreffen. Ihre Auswahl hilft uns, Ihnen relevante Inhalte anzubieten.",
|
|
107
|
+
"isRequired":false,
|
|
95
108
|
"options":[
|
|
96
109
|
{
|
|
97
|
-
"value":"
|
|
110
|
+
"value":"sport",
|
|
111
|
+
"label":"sport",
|
|
112
|
+
"title":"sport",
|
|
113
|
+
"isSelected":false
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"value":"musik",
|
|
117
|
+
"label":"musik",
|
|
118
|
+
"title":"musik",
|
|
119
|
+
"isSelected":false
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"value":"lesen",
|
|
123
|
+
"label":"lesen",
|
|
124
|
+
"title":"lesen",
|
|
125
|
+
"isSelected":false
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"value":"reisen",
|
|
129
|
+
"label":"reisen",
|
|
130
|
+
"title":"reisen",
|
|
131
|
+
"isSelected":false
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"value":"kochen",
|
|
135
|
+
"label":"kochen",
|
|
136
|
+
"title":"kochen",
|
|
137
|
+
"isSelected":false
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"value":"filme",
|
|
141
|
+
"label":"filme",
|
|
142
|
+
"title":"filme",
|
|
143
|
+
"isSelected":false
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"value":"tanzen",
|
|
147
|
+
"label":"tanzen",
|
|
148
|
+
"title":"tanzen",
|
|
98
149
|
"isSelected":false
|
|
99
150
|
},
|
|
100
151
|
{
|
|
101
|
-
"value":"
|
|
152
|
+
"value":"fotografie",
|
|
153
|
+
"label":"fotografie",
|
|
154
|
+
"title":"fotografie",
|
|
102
155
|
"isSelected":false
|
|
103
156
|
}
|
|
104
157
|
]
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
<div class="relative flex flex-col w-full mb-6 gap-y-
|
|
1
|
+
<div class="relative flex flex-col w-full {{#unless _inGroup}} mb-6 md:mb-12{{/unless}} gap-y-4 md:gap-y-5"
|
|
2
2
|
ax-load
|
|
3
3
|
x-data="inputHandler('input{{nextRandom}}','{{_errorMandatory}}','{{_type}}')"
|
|
4
4
|
x-ignore
|
|
5
5
|
>
|
|
6
|
-
|
|
7
|
-
<div class="flex flex-row items-center w-full gap-x-4">
|
|
8
|
-
|
|
6
|
+
<div class="flex flex-row items-center w-full gap-x-2 md:gap-x-3">
|
|
9
7
|
<input class="relative self-start flex-shrink-0 w-6 h-6 bg-white border appearance-none cursor-pointer border-blue-science-hex checked:bg-blue-congress-hex checked:border-transparent"
|
|
10
8
|
:class="{' border-blue-science-hex': hideError(),'border-red-700': hideDescription() }"
|
|
11
9
|
@change="validateInput"
|
|
@@ -47,32 +45,22 @@
|
|
|
47
45
|
{{/if}}
|
|
48
46
|
{{/if~}}
|
|
49
47
|
>
|
|
50
|
-
|
|
51
48
|
<label for="input{{getRandom}}" class="items-center justify-center text-xs text-black md:text-sm font-headingSerif ">
|
|
52
49
|
{{#if _hasBody}}
|
|
53
|
-
{{decorator_body}}{{#if _required}}*{{/if}}
|
|
50
|
+
{{decorator_body}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
54
51
|
{{else}}
|
|
55
52
|
{{#if _locaKey}}
|
|
56
|
-
{{loca _locaKey}}{{#if _required}}*{{/if}}
|
|
53
|
+
{{loca _locaKey}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
57
54
|
{{else}}
|
|
58
55
|
{{#if _label}}
|
|
59
|
-
{{{_label}}}{{#if _required}}*{{/if}}
|
|
56
|
+
{{{_label}}}{{#unless _inGroup}}{{#if _required}}*{{/if}}{{/unless}}
|
|
60
57
|
{{/if}}
|
|
61
58
|
{{/if}}
|
|
62
59
|
{{/if}}
|
|
63
60
|
</label>
|
|
64
|
-
|
|
65
|
-
{{#
|
|
66
|
-
|
|
67
|
-
<div class="hidden w-5 h-5 font-bold" :class="{'hidden': hideError() }">
|
|
68
|
-
{{> components/base/image/icon _icon="info2" _addClass="w-5 h-5 fill-red-700"}}
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
{{/if}}
|
|
72
|
-
|
|
73
|
-
</div>
|
|
74
|
-
|
|
75
|
-
<div class="flex items-end justify-between h-5 font-heading">
|
|
61
|
+
</div>
|
|
62
|
+
{{#unless _inGroup}}
|
|
63
|
+
<div class="font-heading">
|
|
76
64
|
{{#if _description}}
|
|
77
65
|
<div class="text-xs text-gray-500" {{#if _required}}:class="{'hidden': hideDescription() }"{{/if}}>{{_description}}</div>
|
|
78
66
|
{{/if}}
|
|
@@ -80,18 +68,5 @@
|
|
|
80
68
|
<div class="hidden text-xs text-red-700" :class="{'hidden': hideError()}" x-text="errorMessage"></div>
|
|
81
69
|
{{/if}}
|
|
82
70
|
</div>
|
|
83
|
-
|
|
84
|
-
<div class="hidden" >
|
|
85
|
-
<b>DEBUGG</b>
|
|
86
|
-
<div>isChecked:<span x-text="isChecked" class="font-bold" :class="isChecked ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
87
|
-
<div>isFocused:<span x-text="isFocused" class="font-bold" :class="isFocused ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
88
|
-
<div>wasFocused:<span x-text="wasFocused" class="font-bold" :class="wasFocused ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
89
|
-
<div>valid:<span x-text="valid" class="font-bold" :class="valid ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
90
|
-
<div>hideDescription:<span x-text="hideDescription()" class="font-bold" :class="hideDescription() ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
91
|
-
<div>hideError:<span x-text="hideError()" class="font-bold" :class="hideError() ? 'text-green-800' : 'text-red-700'"></span></div>
|
|
92
|
-
<div>errorMessage:<span x-text="errorMessage" class="font-bold" ></span></div>
|
|
93
|
-
</div>
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
71
|
+
{{/unless}}
|
|
97
72
|
</div>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<fieldset>
|
|
2
|
+
<div class="relative flex flex-col w-full mb-6 md:mb-12 gap-y-4 md:gap-y-5">
|
|
3
|
+
<legend class="text-lg font-bold text-black md:text-xl font-heading">
|
|
4
|
+
{{#if _hasBody}}
|
|
5
|
+
{{decorator_body}}{{#if _required}}*{{/if}}
|
|
6
|
+
{{else}}
|
|
7
|
+
{{#if _locaKey}}
|
|
8
|
+
{{loca _locaKey}}{{#if _required}}*{{/if}}
|
|
9
|
+
{{else}}
|
|
10
|
+
{{#if _label}}
|
|
11
|
+
{{{_label}}}{{#if _required}}*{{/if}}
|
|
12
|
+
{{/if}}
|
|
13
|
+
{{/if}}
|
|
14
|
+
{{/if}}
|
|
15
|
+
</legend>
|
|
16
|
+
<div class="flex flex-row flex-wrap gap-x-6 md:gap-x-7 gap-y-5" >
|
|
17
|
+
{{#each _items}}
|
|
18
|
+
<div class=" c-form__option">
|
|
19
|
+
{{> components/forms/choice
|
|
20
|
+
_type=../_type
|
|
21
|
+
_name=../_name
|
|
22
|
+
_value=this.value
|
|
23
|
+
_inGroup=true
|
|
24
|
+
_label=this.label
|
|
25
|
+
_selected=this.selected
|
|
26
|
+
_title=this.title
|
|
27
|
+
_multipleChoice=../_multipleChoice
|
|
28
|
+
}}
|
|
29
|
+
</div>
|
|
30
|
+
{{/each}}
|
|
31
|
+
</div>
|
|
32
|
+
<div class="font-heading">
|
|
33
|
+
{{#if _description}}
|
|
34
|
+
<div class="text-xs text-gray-500" {{#if _required}}:class="{'hidden': hideDescription() }"{{/if}}>{{_description}}</div>
|
|
35
|
+
{{/if}}
|
|
36
|
+
{{#if _required}}
|
|
37
|
+
<div class="hidden text-xs text-red-700" :class="{'hidden': hideError()}" x-text="errorMessage"></div>
|
|
38
|
+
{{/if}}
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</fieldset>
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
}}
|
|
57
57
|
{{else if this.type.isChoice}}
|
|
58
58
|
{{#if this.isGrouped }}
|
|
59
|
-
{{~>
|
|
59
|
+
{{~> components/forms/choiceGroup
|
|
60
60
|
_type=this.type.asString
|
|
61
61
|
_name=this.name
|
|
62
62
|
_label=this.label
|
|
@@ -65,6 +65,7 @@
|
|
|
65
65
|
_required=this.isRequired
|
|
66
66
|
_multipleChoice=../_multipleChoice
|
|
67
67
|
_addClass=../_addClass
|
|
68
|
+
_errorMandatory="Bitte füllen Sie dieses Pflichtfeld aus"
|
|
68
69
|
|
|
69
70
|
}}
|
|
70
71
|
{{else}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"fields":[{"isGrouped":false,"type":{"isChoice":true,"asString":"checkbox"},"name":"checkbox","label":"Ich bin damit einverstanden.","isMeta":false,"description":"Das ist der Beschreibungstext von Checkbox","isRequired":true
|
|
1
|
+
{"fields":[{"isGrouped":false,"type":{"isChoice":true,"asString":"checkbox"},"name":"checkbox","label":"Ich bin damit einverstanden.","isMeta":false,"description":"Das ist der Beschreibungstext von Checkbox","isRequired":true},{"isGrouped":false,"type":{"isChoice":true,"asString":"checkbox"},"name":"checkbox","label":"Ich bin damit einverstanden, dass der hr die von mir im vorstehenden Formular angegebenen personenbezogenen Daten für den Zweck der Kontaktaufnahme mit Upload verarbeitet. Eine Weitergabe an Dritte findet nicht statt, es sei denn, es wird ausdrücklich darauf hingewiesen. Unsere Datenschutzerklärung mit sämtlichen Informationen gemäß Art 13 DSGVO zur Datenverarbeitung durch den hr und zu Ihren Rechten können Sie unter Datenschutzerklärung einsehen. Den Datenschutzbeauftragten des hr erreichen Sie unter datenschutz@hr.de.","isMeta":false,"description":"Das ist der Beschreibungstext von Checkbox","isRequired":true}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fields":[{"isGrouped":true,"type":{"isChoice":true,"asString":"checkbox"},"name":"interessen","label":"Wählen Sie Ihre Interessen:","isMeta":false,"description":"Bitte kreuzen Sie alle Interessen an, die auf Sie zutreffen. Ihre Auswahl hilft uns, Ihnen relevante Inhalte anzubieten.","isRequired":false,"options":[{"value":"sport","label":"sport","title":"sport","isSelected":false},{"value":"musik","label":"musik","title":"musik","isSelected":false},{"value":"lesen","label":"lesen","title":"lesen","isSelected":false},{"value":"reisen","label":"reisen","title":"reisen","isSelected":false},{"value":"kochen","label":"kochen","title":"kochen","isSelected":false},{"value":"filme","label":"filme","title":"filme","isSelected":false},{"value":"tanzen","label":"tanzen","title":"tanzen","isSelected":false},{"value":"fotografie","label":"fotografie","title":"fotografie","isSelected":false}]}]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
|
|
2
|
+
import checkboxGroupJson from './fixtures/form_checkbox_grouped.json'
|
|
3
|
+
|
|
4
|
+
const handlebars = require('hrHandlebars')
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
title: 'Komponenten/Formulare',
|
|
9
|
+
decorators: [
|
|
10
|
+
(Story) => {
|
|
11
|
+
return `<div class="grid grid-page">
|
|
12
|
+
<div class="grid bg-white grid-article">
|
|
13
|
+
${Story()}
|
|
14
|
+
</div>
|
|
15
|
+
</div>`
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
}
|
|
19
|
+
const Template = (args) => {
|
|
20
|
+
let hbsTemplate = handlebars.compile(`
|
|
21
|
+
{{#>components/forms/backgroundBox }}
|
|
22
|
+
<form class="relative flex flex-col justify-center overflow-hidden group" id="form--{{nextRandom}}" action="{{this.url}}" method="post" enctype="{{if this.isMultipart 'multipart/form-data' 'application/x-www-form-urlencoded'}}" accept-charset="utf-8" >
|
|
23
|
+
{{> components/forms/fields }}
|
|
24
|
+
</form>
|
|
25
|
+
{{/components/forms/backgroundBox }}
|
|
26
|
+
`)
|
|
27
|
+
return hbsTemplate({ ...args })
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export const Checkbox_gruppe = {
|
|
31
|
+
render: Template.bind({}),
|
|
32
|
+
name: 'Checkbox Gruppe',
|
|
33
|
+
args: checkboxGroupJson,
|
|
34
|
+
}
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
{{~> components/base/image/responsive_image this.teaserImage _type=this.teaserType _variant=this.content.imageVariant _noDelay=../_noDelay _addClassImg="rounded-tl-hr rounded-br-hr" ~}}
|
|
15
15
|
{{/if}}
|
|
16
16
|
</figure>
|
|
17
|
-
<div class="absolute flex flex-col justify-
|
|
17
|
+
<div class="absolute flex flex-col justify-end w-full h-full {{#if _isCopytext~}}{{#if this.showFullSize.isTrue~}}{{inline-switch this.showStretched.isTrue '["false","true"]' '["pb-[70px] sm480:pb-24 md:pb-32","pb-[70px] sm480:pb-[86px] sm:pb-16 md:pb-[70px]","pb-[70px] sm480:pb-24 md:pb-32"]'}}{{else}}pb-[70px] sm480:pb-24 sm:pb-[86px] md:pb-24{{/if}}{{else}}{{inline-switch this.realTeaserSize '["33","50"]' '["pb-16 sm:pb-24 md:pb-16","pb-16 sm:pb-24 md:pb-24"]'}}{{/if}} bg-gradient-to-t to-80% from-black rounded-tl-hr rounded-br-hr">
|
|
18
18
|
{{#>components/base/link _link=this.link _css="ds-teaser-focus flex items-center flex-col before:rounded-tl-hr before:rounded-br-hr hover:text-toplineColor"}}
|
|
19
|
-
<div class="
|
|
19
|
+
<div class="line-clamp-4 xs:line-clamp-5 md:line-clamp-4 {{#if ../this.showStretched.isTrue}}lg:line-clamp-4{{else}}lg:line-clamp-5{{/if}}">
|
|
20
20
|
{{#> components/teaser/components/teaser_header _css="text-center"}}
|
|
21
21
|
{{#with this.label}}
|
|
22
22
|
{{#> components/label/label_group}}
|
|
@@ -24,11 +24,15 @@
|
|
|
24
24
|
<span class="text-white">{{> components/label/label_byline _css="ml-2" _text=../../../this.tickerTopic}}</span>
|
|
25
25
|
{{/components/label/label_group}}
|
|
26
26
|
{{/with~}}
|
|
27
|
-
{{#> components/teaser/components/teaser_headline _headlineTag=(if _isCopytext-adjust_context "h3" "h2") _css="text-shadow text-center text-white
|
|
27
|
+
{{#> components/teaser/components/teaser_headline _headlineTag=(if _isCopytext-adjust_context "h3" "h2") _css="text-shadow text-center text-white mx-2 xs:mx-6 sm:mx-8 md:mx-5 lg:mx-8"}}
|
|
28
28
|
{{#if this.topline}}
|
|
29
29
|
{{> components/teaser/components/teaser_topline _css="!text-white" _text=this.topline}}
|
|
30
30
|
{{/if}}
|
|
31
|
-
{{
|
|
31
|
+
{{#if _isCopytext-adjust_context}}
|
|
32
|
+
{{> components/teaser/components/teaser_title _css=(if this.showFullSize.isTrue "md:leading-10 whitespace-pre-wrap" "whitespace-pre-wrap") _text=this.title _size=this.realTeaserSize _teaserType="poster" _isCopytext=_isCopytext-adjust_context}}
|
|
33
|
+
{{else}}
|
|
34
|
+
{{> components/teaser/components/teaser_title _css=(inline-switch this.realTeaserSize '["33","50"]' '["whitespace-pre-wrap","md:leading-10 whitespace-pre-wrap"]') _text=this.title _size=this.realTeaserSize _teaserType="poster" _isCopytext=_isCopytext-adjust_context}}
|
|
35
|
+
{{/if}}
|
|
32
36
|
{{#if this.extendedTitle}}
|
|
33
37
|
{{> components/teaser/components/teaser_subline _text=this.extendedTitle}}
|
|
34
38
|
{{/if}}
|
|
@@ -36,10 +40,11 @@
|
|
|
36
40
|
{{/components/teaser/components/teaser_header}}
|
|
37
41
|
</div>
|
|
38
42
|
{{/components/base/link}}
|
|
43
|
+
</div>
|
|
39
44
|
<span class="absolute flex items-end justify-center w-full h-full ds-cta">
|
|
40
45
|
{{#if _isCopytext~}}
|
|
41
46
|
{{#if this.showFullSize.isTrue~}}
|
|
42
|
-
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.showStretched.isTrue '["false","true"]' '["z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white","z-20 mb-4 sm480:mb-7
|
|
47
|
+
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.showStretched.isTrue '["false","true"]' '["z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white","z-20 mb-4 sm480:mb-7 sm:mb-3 hover:bg-white","z-20 mb-4 sm480:mb-7 md:mb-16 hover:bg-white"]') _variant="secondary" _isAriaHidden=true _onBackground=true}}
|
|
43
48
|
{{> components/button/components/button_label _css="" _label=this.link.readMoreText.readMoreLong}}
|
|
44
49
|
{{/components/button/link_button}}
|
|
45
50
|
{{else}}
|
|
@@ -48,10 +53,10 @@
|
|
|
48
53
|
{{/components/button/link_button}}
|
|
49
54
|
{{/if}}
|
|
50
55
|
{{else}}
|
|
51
|
-
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.realTeaserSize '["33","50"]' '["z-20 mb-7 hover:bg-white","z-20 mb-
|
|
56
|
+
{{#> components/button/link_button _link=this.link _size="lg" _css=(inline-switch this.realTeaserSize '["33","50"]' '["z-20 mb-3 sm:mb-7 md:mb-3 hover:bg-white","z-20 mb-3 sm:mb-7 hover:bg-white"]') _variant="secondary" _isAriaHidden=true _onBackground=true}}
|
|
52
57
|
{{> components/button/components/button_label _css="" _label=this.link.readMoreText.readMoreLong}}
|
|
53
58
|
{{/components/button/link_button}}
|
|
54
59
|
{{/if}}
|
|
55
60
|
</span>
|
|
56
|
-
|
|
61
|
+
|
|
57
62
|
</article>
|