hr-design-system-handlebars 1.114.30 β†’ 1.114.32

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 (29) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/assets/index.css +8 -3
  3. package/dist/assets/js/components/voting/js/votingDs.feature.js +13 -2
  4. package/dist/views/components/forms/components/backgroundBox.hbs +1 -1
  5. package/dist/views/components/teaser/teaser_voting.hbs +7 -0
  6. package/dist/views/components/voting/components/voting_header.hbs +1 -1
  7. package/dist/views/components/voting/voting.hbs +7 -3
  8. package/dist/views/components/voting/voting_result.hbs +2 -2
  9. package/dist/views_static/components/forms/components/backgroundBox.hbs +1 -1
  10. package/dist/views_static/components/teaser/teaser_voting.hbs +7 -0
  11. package/dist/views_static/components/voting/components/voting_header.hbs +1 -1
  12. package/dist/views_static/components/voting/voting.hbs +7 -3
  13. package/dist/views_static/components/voting/voting_result.hbs +2 -2
  14. package/package.json +1 -1
  15. package/src/assets/fixtures/voting/voting.json +19 -1
  16. package/src/assets/fixtures/voting/voting_result.inc.json +47 -0
  17. package/src/assets/fixtures/voting/voting_result_absolute.json +7 -3
  18. package/src/assets/fixtures/voting/voting_teaser_50.json +10 -0
  19. package/src/stories/views/components/forms/components/backgroundBox.hbs +1 -1
  20. package/src/stories/views/components/teaser/teaser_voting.hbs +7 -0
  21. package/src/stories/views/components/voting/components/voting_header.hbs +1 -1
  22. package/src/stories/views/components/voting/fixtures/voting.json +1 -1
  23. package/src/stories/views/components/voting/fixtures/voting_result.json +1 -0
  24. package/src/stories/views/components/voting/fixtures/voting_result_absolute.json +1 -1
  25. package/src/stories/views/components/voting/fixtures/voting_teaser_50.json +1 -0
  26. package/src/stories/views/components/voting/js/votingDs.feature.js +13 -2
  27. package/src/stories/views/components/voting/voting.hbs +7 -3
  28. package/src/stories/views/components/voting/voting.stories.js +34 -16
  29. package/src/stories/views/components/voting/voting_result.hbs +2 -2
package/CHANGELOG.md CHANGED
@@ -1,3 +1,27 @@
1
+ # v1.114.32 (Mon Dec 09 2024)
2
+
3
+ #### πŸ› Bug Fix
4
+
5
+ - fix javascript bug in voting [#1181](https://github.com/mumprod/hr-design-system-handlebars/pull/1181) ([@hanswurstsalat](https://github.com/hanswurstsalat))
6
+
7
+ #### Authors: 1
8
+
9
+ - Geraldo ([@hanswurstsalat](https://github.com/hanswurstsalat))
10
+
11
+ ---
12
+
13
+ # v1.114.31 (Thu Dec 05 2024)
14
+
15
+ #### πŸ› Bug Fix
16
+
17
+ - add voting-teaser [#1180](https://github.com/mumprod/hr-design-system-handlebars/pull/1180) ([@hanswurstsalat](https://github.com/hanswurstsalat))
18
+
19
+ #### Authors: 1
20
+
21
+ - Geraldo ([@hanswurstsalat](https://github.com/hanswurstsalat))
22
+
23
+ ---
24
+
1
25
  # v1.114.30 (Tue Dec 03 2024)
2
26
 
3
27
  #### πŸ› Bug Fix
@@ -3689,7 +3689,7 @@ article.indexTextDS .indexTextHighlighted .link {
3689
3689
  border-bottom-color: var(--color-secondary-ds);
3690
3690
  }
3691
3691
  .counter-reset {
3692
- counter-reset: cnt1733221628417;
3692
+ counter-reset: cnt1733751399327;
3693
3693
  }
3694
3694
  .placeholder-text-xs::-webkit-input-placeholder {
3695
3695
  font-size: 0.75rem;
@@ -4103,7 +4103,7 @@ article.indexTextDS .indexTextHighlighted .link {
4103
4103
  --tw-ring-color: rgba(255, 255, 255, 0.5);
4104
4104
  }
4105
4105
  .-ordered {
4106
- counter-increment: cnt1733221628417 1;
4106
+ counter-increment: cnt1733751399327 1;
4107
4107
  }
4108
4108
  .-ordered::before {
4109
4109
  position: absolute;
@@ -4121,7 +4121,7 @@ article.indexTextDS .indexTextHighlighted .link {
4121
4121
  --tw-text-opacity: 1;
4122
4122
  color: rgba(0, 0, 0, 1);
4123
4123
  color: rgba(0, 0, 0, var(--tw-text-opacity));
4124
- content: counter(cnt1733221628417);
4124
+ content: counter(cnt1733751399327);
4125
4125
  }
4126
4126
  /*! ****************************/
4127
4127
  /*! DataPolicy stuff */
@@ -7015,6 +7015,11 @@ ul.restrictedToTwo li:nth-of-type(1n + 2) .timelineBorder {
7015
7015
  line-height: 1.5rem !important;
7016
7016
  }
7017
7017
 
7018
+ .sm\:text-2xl {
7019
+ font-size: 1.375rem;
7020
+ line-height: 1.75rem;
7021
+ }
7022
+
7018
7023
  .sm\:text-3xl {
7019
7024
  font-size: 1.625rem;
7020
7025
  line-height: 2rem;
@@ -1,4 +1,4 @@
1
- import { hr$, listen, replaceAnimated } from 'hrQuery'
1
+ import { hr$, listen, replaceAnimated, reinitializeFeature } from 'hrQuery'
2
2
  import $ from 'zepto-modules'
3
3
 
4
4
  require('zepto-modules/callbacks')
@@ -136,6 +136,17 @@ const Voting = (context) => {
136
136
  })
137
137
  }, 850)
138
138
  }
139
+
140
+ const scrollIntoVotingAndReinitialize = function (vertical) {
141
+ setTimeout(function () {
142
+ rootElement.scrollIntoView({
143
+ behavior: 'smooth',
144
+ block: 'center',
145
+ })
146
+ reinitializeFeature(votingWrapper.parentNode.parentNode)
147
+ }, 850)
148
+ }
149
+
139
150
  /**
140
151
  * Handles click events globally
141
152
  * and delegates to concrete handlers
@@ -151,7 +162,7 @@ const Voting = (context) => {
151
162
 
152
163
  const handleFormReload = function (event) {
153
164
  event.preventDefault()
154
- replaceAnimated(votingWrapper, votingTmpl, true, scrollIntoVoting)
165
+ replaceAnimated(votingWrapper, votingTmpl, true, scrollIntoVotingAndReinitialize)
155
166
  }
156
167
 
157
168
  const handleKeydown = function (event) {
@@ -1,3 +1,3 @@
1
- <div class="relative px-5 pt-6 pb-8 mb-5 mt-7 sm:mt-12 bg-highlight-1 dark:bg-highlight-1-dark sm:rounded-tl-hr sm:rounded-br-hr sm:px-13 sm:pt-12 article-full-width sm:article-narrow" >
1
+ <div class="relative bg-highlight-1 dark:bg-highlight-1-dark sm:rounded-tl-hr sm:rounded-br-hr {{#if _isTeaser}}w-full{{~inline-switch this.teasersize '["100","50"]' '[" px-5 sm:px-13 pb-8 pt-6 sm:pt-12"," px-5 py-6"]'}}{{else}}px-5 sm:px-13 pb-8 pt-6 sm:pt-12 mt-7 sm:mt-12 mb-5 article-full-width sm:article-narrow{{/if}}" >
2
2
  {{> @partial-block }}
3
3
  </div>
@@ -0,0 +1,7 @@
1
+ {{~#if this.isVoting}}
2
+ <div class="items-start relative col-span-12 flex gap-x-4 gap-y-3 flex-col {{~inline-switch this.teasersize '["25","33","50"]' '[" md:col-span-3"," md:col-span-4"," md:col-span-6",""]'}}">
3
+ {{#if this.isMultiVote}}
4
+ {{> components/voting/voting _isTeaser=true}}
5
+ {{/if}}
6
+ </div>
7
+ {{/if~}}
@@ -1,5 +1,5 @@
1
1
  {{> components/label/label _type="media" _text=(loca "label_voting")}}
2
2
 
3
- <h2 class="block clear-both mt-2 text-2xl sm:text-3xl font-headingSerif dark:text-text-dark">
3
+ <h2 class="block clear-both mt-2 text-2xl {{#if _isTeaser}}{{~inline-switch ../../this.teasersize '["100","50"]' '[" sm:text-3xl"," sm:text-2xl"]'}}{{else}} sm:text-3xl {{/if}} font-headingSerif dark:text-text-dark">
4
4
  {{_title}}
5
5
  </h2>
@@ -1,4 +1,4 @@
1
- {{#>components/forms/components/backgroundBox }}
1
+ {{#>components/forms/components/backgroundBox _isTeaser=_isTeaser }}
2
2
  {{#with this.form}}
3
3
  {{#unless this.isVotingOver}}
4
4
  {{#unless ../this.hasRedirect}}
@@ -28,7 +28,7 @@
28
28
  accept-charset="utf-8"
29
29
  autocomplete="off"
30
30
  >
31
- {{> components/voting/components/voting_header _title=../this.title _topline=../this.topline}}
31
+ {{> components/voting/components/voting_header _isTeaser=../../_isTeaser _title=../this.title _topline=../this.topline}}
32
32
 
33
33
  <div class="js-voting-form__bottomWrapper">
34
34
  {{#if this.shorttext}}
@@ -66,6 +66,7 @@
66
66
  _statusDone=true
67
67
  _resultBoxMessageTitle=(loca "votingform2F_title_success")
68
68
  _resultBoxMessageText=(loca "votingform2F_text_success")
69
+ _isTeaser=../../_isTeaser
69
70
  }}
70
71
  {{else}}
71
72
  {{> components/voting/voting_result
@@ -74,6 +75,7 @@
74
75
  _hideVotingResult=this.hideVotingResult
75
76
  _resultBoxMessageTitle=(loca "votingform_title_success")
76
77
  _resultBoxMessageText=../this.votingSuccessText.richtext
78
+ _isTeaser=../../_isTeaser
77
79
  }}
78
80
  {{/if}}
79
81
  </script>
@@ -85,6 +87,7 @@
85
87
  _showBackButton=true
86
88
  _resultBoxMessageTitle=(loca "votingform_title_error")
87
89
  _resultBoxMessageText=(loca "votingform_text_error")
90
+ _isTeaser=../../_isTeaser
88
91
  }}
89
92
  </script>
90
93
  {{#unless this.hideVotingResult}}
@@ -95,6 +98,7 @@
95
98
  _statusDone=true
96
99
  _addClass=../_addClass
97
100
  _hideVotingResult=this.hideVotingResult
101
+ _isTeaser=../../_isTeaser
98
102
  }}
99
103
  {{/unless}}
100
104
  </script>
@@ -103,7 +107,7 @@
103
107
  </div>
104
108
  </div>
105
109
  {{else}}
106
- {{> components/voting/voting_result ../this _hideVotingResult=this.hideVotingResult}}
110
+ {{> components/voting/voting_result _hideVotingResult=this.hideVotingResult}}
107
111
  {{/unless}}
108
112
  {{/with}}
109
113
  {{/components/forms/components/backgroundBox }}
@@ -1,5 +1,5 @@
1
1
  {{#if ../this.is2FSecured}}
2
- {{> components/voting/components/voting_header _title=this.title _topline=this.topline}}
2
+ {{> components/voting/components/voting_header _isTeaser=_isTeaser _title=this.title _topline=this.topline}}
3
3
  {{~> components/base/image/icon _icon=(if _statusDone "status-done" "error-ds") _iconmap="icons" _addClass=(if _statusDone "float-left w-6 h-6 text-success dark:text-success-dark fill-current mt-6 sm:mt-12" "float-left w-6 h-6 text-error dark:text-error-dark fill-current mt-6 sm:mt-12")}}
4
4
  <p class="{{#if _statusDone}}text-success dark:text-success-dark{{else}}text-error dark:text-error-dark{{/if}} mt-6 ml-8 text-base font-bold sm:ml-9 sm:text-xl font-heading sm:mt-12">{{#if _statusDone}}{{{_resultBoxMessageTitle}}}<br/>{{/if}}{{{_resultBoxMessageText}}}</p>
5
5
  {{#if _showBackButton}}
@@ -17,7 +17,7 @@
17
17
  >
18
18
 
19
19
  {{#unless ../this.hasRedirect}}
20
- {{> components/voting/components/voting_header _title=this.title _topline=this.topline}}
20
+ {{> components/voting/components/voting_header _isTeaser=_isTeaser _title=this.title _topline=this.topline}}
21
21
  {{/unless}}
22
22
 
23
23
  {{#if _hideVotingResult}}
@@ -1,3 +1,3 @@
1
- <div class="relative px-5 pt-6 pb-8 mb-5 mt-7 sm:mt-12 bg-highlight-1 dark:bg-highlight-1-dark sm:rounded-tl-hr sm:rounded-br-hr sm:px-13 sm:pt-12 article-full-width sm:article-narrow" >
1
+ <div class="relative bg-highlight-1 dark:bg-highlight-1-dark sm:rounded-tl-hr sm:rounded-br-hr {{#if _isTeaser}}w-full{{~inline-switch this.teasersize '["100","50"]' '[" px-5 sm:px-13 pb-8 pt-6 sm:pt-12"," px-5 py-6"]'}}{{else}}px-5 sm:px-13 pb-8 pt-6 sm:pt-12 mt-7 sm:mt-12 mb-5 article-full-width sm:article-narrow{{/if}}" >
2
2
  {{> @partial-block }}
3
3
  </div>
@@ -0,0 +1,7 @@
1
+ {{~#if this.isVoting}}
2
+ <div class="items-start relative col-span-12 flex gap-x-4 gap-y-3 flex-col {{~inline-switch this.teasersize '["25","33","50"]' '[" md:col-span-3"," md:col-span-4"," md:col-span-6",""]'}}">
3
+ {{#if this.isMultiVote}}
4
+ {{> components/voting/voting _isTeaser=true}}
5
+ {{/if}}
6
+ </div>
7
+ {{/if~}}
@@ -1,5 +1,5 @@
1
1
  {{> components/label/label _type="media" _text=(loca "label_voting")}}
2
2
 
3
- <h2 class="block clear-both mt-2 text-2xl sm:text-3xl font-headingSerif dark:text-text-dark">
3
+ <h2 class="block clear-both mt-2 text-2xl {{#if _isTeaser}}{{~inline-switch ../../this.teasersize '["100","50"]' '[" sm:text-3xl"," sm:text-2xl"]'}}{{else}} sm:text-3xl {{/if}} font-headingSerif dark:text-text-dark">
4
4
  {{_title}}
5
5
  </h2>
@@ -1,4 +1,4 @@
1
- {{#>components/forms/components/backgroundBox }}
1
+ {{#>components/forms/components/backgroundBox _isTeaser=_isTeaser }}
2
2
  {{#with this.form}}
3
3
  {{#unless this.isVotingOver}}
4
4
  {{#unless ../this.hasRedirect}}
@@ -28,7 +28,7 @@
28
28
  accept-charset="utf-8"
29
29
  autocomplete="off"
30
30
  >
31
- {{> components/voting/components/voting_header _title=../this.title _topline=../this.topline}}
31
+ {{> components/voting/components/voting_header _isTeaser=../../_isTeaser _title=../this.title _topline=../this.topline}}
32
32
 
33
33
  <div class="js-voting-form__bottomWrapper">
34
34
  {{#if this.shorttext}}
@@ -66,6 +66,7 @@
66
66
  _statusDone=true
67
67
  _resultBoxMessageTitle=(loca "votingform2F_title_success")
68
68
  _resultBoxMessageText=(loca "votingform2F_text_success")
69
+ _isTeaser=../../_isTeaser
69
70
  }}
70
71
  {{else}}
71
72
  {{> components/voting/voting_result
@@ -74,6 +75,7 @@
74
75
  _hideVotingResult=this.hideVotingResult
75
76
  _resultBoxMessageTitle=(loca "votingform_title_success")
76
77
  _resultBoxMessageText=../this.votingSuccessText.richtext
78
+ _isTeaser=../../_isTeaser
77
79
  }}
78
80
  {{/if}}
79
81
  </script>
@@ -85,6 +87,7 @@
85
87
  _showBackButton=true
86
88
  _resultBoxMessageTitle=(loca "votingform_title_error")
87
89
  _resultBoxMessageText=(loca "votingform_text_error")
90
+ _isTeaser=../../_isTeaser
88
91
  }}
89
92
  </script>
90
93
  {{#unless this.hideVotingResult}}
@@ -95,6 +98,7 @@
95
98
  _statusDone=true
96
99
  _addClass=../_addClass
97
100
  _hideVotingResult=this.hideVotingResult
101
+ _isTeaser=../../_isTeaser
98
102
  }}
99
103
  {{/unless}}
100
104
  </script>
@@ -103,7 +107,7 @@
103
107
  </div>
104
108
  </div>
105
109
  {{else}}
106
- {{> components/voting/voting_result ../this _hideVotingResult=this.hideVotingResult}}
110
+ {{> components/voting/voting_result _hideVotingResult=this.hideVotingResult}}
107
111
  {{/unless}}
108
112
  {{/with}}
109
113
  {{/components/forms/components/backgroundBox }}
@@ -1,5 +1,5 @@
1
1
  {{#if ../this.is2FSecured}}
2
- {{> components/voting/components/voting_header _title=this.title _topline=this.topline}}
2
+ {{> components/voting/components/voting_header _isTeaser=_isTeaser _title=this.title _topline=this.topline}}
3
3
  {{~> components/base/image/icon _icon=(if _statusDone "status-done" "error-ds") _iconmap="icons" _addClass=(if _statusDone "float-left w-6 h-6 text-success dark:text-success-dark fill-current mt-6 sm:mt-12" "float-left w-6 h-6 text-error dark:text-error-dark fill-current mt-6 sm:mt-12")}}
4
4
  <p class="{{#if _statusDone}}text-success dark:text-success-dark{{else}}text-error dark:text-error-dark{{/if}} mt-6 ml-8 text-base font-bold sm:ml-9 sm:text-xl font-heading sm:mt-12">{{#if _statusDone}}{{{_resultBoxMessageTitle}}}<br/>{{/if}}{{{_resultBoxMessageText}}}</p>
5
5
  {{#if _showBackButton}}
@@ -17,7 +17,7 @@
17
17
  >
18
18
 
19
19
  {{#unless ../this.hasRedirect}}
20
- {{> components/voting/components/voting_header _title=this.title _topline=this.topline}}
20
+ {{> components/voting/components/voting_header _isTeaser=_isTeaser _title=this.title _topline=this.topline}}
21
21
  {{/unless}}
22
22
 
23
23
  {{#if _hideVotingResult}}
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.114.30",
9
+ "version": "1.114.32",
10
10
  "scripts": {
11
11
  "test": "echo \"Error: no test specified\" && exit 1",
12
12
  "storybook": "storybook dev -p 6006 public",
@@ -85,13 +85,31 @@
85
85
  "@->jsoninclude": "voting/voting_media_video_horizontal.json"
86
86
  }
87
87
  },
88
+ "voting_teaser_50": {
89
+ "config": {
90
+ "template": "teaser_50",
91
+ "useAsSnapshot": true
92
+ },
93
+ "args": {
94
+ "@->jsoninclude": "voting/voting_teaser_50.json"
95
+ }
96
+ },
88
97
  "voting_error": {
89
98
  "config": {
90
99
  "template": "error",
91
100
  "useAsSnapshot": true
92
101
  },
93
102
  "args": {
94
- "@->jsoninclude": "voting/voting_result_absolute.json"
103
+ "@->jsoninclude": "voting/voting_horizontal.json"
104
+ }
105
+ },
106
+ "voting_success": {
107
+ "config": {
108
+ "template": "success",
109
+ "useAsSnapshot": true
110
+ },
111
+ "args": {
112
+ "@->jsoninclude": "voting/voting_email.json"
95
113
  }
96
114
  }
97
115
  }
@@ -0,0 +1,47 @@
1
+ {
2
+ "result-1": {
3
+ "votingResult": [
4
+ {
5
+ "label": "Gut, beste website ever",
6
+ "count": "27",
7
+ "percentageCount": "4,1",
8
+ "roundedPercentageCount": "4.0"
9
+ },
10
+ {
11
+ "label": "Super, allerbeste website ever",
12
+ "count": "117",
13
+ "percentageCount": "17,6",
14
+ "roundedPercentageCount": "18.0"
15
+ },
16
+ {
17
+ "label": "Mega, allerallerbeste website ever",
18
+ "count": "242",
19
+ "percentageCount": "36,3",
20
+ "roundedPercentageCount": "36.0"
21
+ },
22
+ {
23
+ "label": "Hammer, allerallerbesteste website ever",
24
+ "count": "280",
25
+ "percentageCount": "42,0",
26
+ "roundedPercentageCount": "42.0",
27
+ "isWinner": true
28
+ }
29
+ ],
30
+ "summarizedResult": "666",
31
+ "isMultipleChoice": false,
32
+ "votingDoc": {
33
+ "showAbsoluteResult": false,
34
+ "hasRedirect": false,
35
+ "isVotingOver": false,
36
+ "isSimpleSecured": false,
37
+ "is2FSecured": false,
38
+ "cmsFields": {
39
+ "title": "Wie finden Sie hessenschau.de?",
40
+ "cookieLifetime": "12",
41
+ "sophoraId": "Sophora-Id",
42
+ "showVoteResult": true,
43
+ "_resultBoxMessageText": "Danke fΓΌr Ihre Abstimmung!"
44
+ }
45
+ }
46
+ }
47
+ }
@@ -1,10 +1,14 @@
1
1
  {
2
- "@->jsoninclude": "voting/voting.inc.json",
3
- "@->contentpath": "multivote-1",
2
+ "@->jsoninclude": "voting/voting_result.inc.json",
3
+ "@->contentpath": "result-1",
4
4
  "@->overrides": [
5
5
  {
6
- "@->contentpath": "showAbsoluteResult",
6
+ "@->contentpath": "votingDoc.showAbsoluteResult",
7
7
  "@->value": true
8
+ },
9
+ {
10
+ "@->contentpath": "votingDoc.cmsFields.showVoteResult",
11
+ "@->value": false
8
12
  }
9
13
  ]
10
14
  }
@@ -0,0 +1,10 @@
1
+ {
2
+ "@->jsoninclude": "voting/voting.inc.json",
3
+ "@->contentpath": "multivote-1",
4
+ "@->overrides": [
5
+ {
6
+ "@->contentpath": "teasersize",
7
+ "@->value": "50"
8
+ }
9
+ ]
10
+ }
@@ -1,3 +1,3 @@
1
- <div class="relative px-5 pt-6 pb-8 mb-5 mt-7 sm:mt-12 bg-highlight-1 dark:bg-highlight-1-dark sm:rounded-tl-hr sm:rounded-br-hr sm:px-13 sm:pt-12 article-full-width sm:article-narrow" >
1
+ <div class="relative bg-highlight-1 dark:bg-highlight-1-dark sm:rounded-tl-hr sm:rounded-br-hr {{#if _isTeaser}}w-full{{~inline-switch this.teasersize '["100","50"]' '[" px-5 sm:px-13 pb-8 pt-6 sm:pt-12"," px-5 py-6"]'}}{{else}}px-5 sm:px-13 pb-8 pt-6 sm:pt-12 mt-7 sm:mt-12 mb-5 article-full-width sm:article-narrow{{/if}}" >
2
2
  {{> @partial-block }}
3
3
  </div>
@@ -0,0 +1,7 @@
1
+ {{~#if this.isVoting}}
2
+ <div class="items-start relative col-span-12 flex gap-x-4 gap-y-3 flex-col {{~inline-switch this.teasersize '["25","33","50"]' '[" md:col-span-3"," md:col-span-4"," md:col-span-6",""]'}}">
3
+ {{#if this.isMultiVote}}
4
+ {{> components/voting/voting _isTeaser=true}}
5
+ {{/if}}
6
+ </div>
7
+ {{/if~}}
@@ -1,5 +1,5 @@
1
1
  {{> components/label/label _type="media" _text=(loca "label_voting")}}
2
2
 
3
- <h2 class="block clear-both mt-2 text-2xl sm:text-3xl font-headingSerif dark:text-text-dark">
3
+ <h2 class="block clear-both mt-2 text-2xl {{#if _isTeaser}}{{~inline-switch ../../this.teasersize '["100","50"]' '[" sm:text-3xl"," sm:text-2xl"]'}}{{else}} sm:text-3xl {{/if}} font-headingSerif dark:text-text-dark">
4
4
  {{_title}}
5
5
  </h2>