hr-design-system-handlebars 1.1.4 → 1.1.6

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 (33) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/assets/index.css +93 -34
  3. package/dist/assets/js/components/event/filtererDs.feature.js +42 -38
  4. package/dist/views/components/event/calendar/event_calendar_event_teaser.hbs +2 -2
  5. package/dist/views/components/grid/grid_group_highlight.hbs +1 -1
  6. package/dist/views/components/grid/grid_group_tabbed.hbs +1 -1
  7. package/dist/views/components/grid/grid_group_wrapper_classes.hbs +1 -1
  8. package/dist/views/components/teaser/teaser_stage.hbs +1 -1
  9. package/dist/views/components/teaser/teaser_standard.hbs +2 -2
  10. package/package.json +1 -1
  11. package/src/assets/css/custom-utilities.css +46 -33
  12. package/src/stories/views/components/event/calendar/event_calendar_components.stories.mdx +1 -1
  13. package/src/stories/views/components/event/calendar/event_calendar_event_teaser.hbs +2 -2
  14. package/src/stories/views/components/event/filtererDs.feature.js +42 -38
  15. package/src/stories/views/components/grid/grid_group_highlight.hbs +1 -1
  16. package/src/stories/views/components/grid/grid_group_tabbed.hbs +1 -1
  17. package/src/stories/views/components/grid/grid_group_wrapper_classes.hbs +1 -1
  18. package/src/stories/views/components/teaser/cluster/teaser_cluster.stories.mdx +10 -12
  19. package/src/stories/views/components/teaser/content_nav/teaser_content_nav.stories.mdx +4 -5
  20. package/src/stories/views/components/teaser/group_teaser/group.stories.mdx +51 -59
  21. package/src/stories/views/components/teaser/podcast/podcast.stories.mdx +26 -28
  22. package/src/stories/views/components/teaser/teaser_alternativ.stories.mdx +15 -6
  23. package/src/stories/views/components/teaser/teaser_alternativ_av.stories.mdx +1 -1
  24. package/src/stories/views/components/teaser/teaser_event_calendar.stories.mdx +1 -1
  25. package/src/stories/views/components/teaser/teaser_indextext.stories.mdx +26 -14
  26. package/src/stories/views/components/teaser/teaser_logic/teaser_logic.stories.mdx +17 -17
  27. package/src/stories/views/components/teaser/teaser_poster.stories.mdx +38 -19
  28. package/src/stories/views/components/teaser/teaser_stage.hbs +1 -1
  29. package/src/stories/views/components/teaser/teaser_standard.hbs +2 -2
  30. package/src/stories/views/components/teaser/teaser_standard.stories.mdx +40 -26
  31. package/src/stories/views/components/teaser/teaser_standard_av.stories.mdx +3 -3
  32. package/src/stories/views/components/teaser/teaser_standard_event.stories.mdx +3 -3
  33. package/tailwind.config.js +1 -0
@@ -38,7 +38,7 @@ import dataTeserIndextext50Accented from './fixtures/teaser_indextext_50_accente
38
38
  }}
39
39
  decorators={[
40
40
  (Story) => {
41
- return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-8 sm:col-main">
41
+ return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
42
42
  ${Story()}
43
43
  </div></div>`
44
44
  },
@@ -53,47 +53,59 @@ export const Template = (args, { globals: { customConditionalToolbar } }) => {
53
53
  return teaser({ brand, ...args })
54
54
  }
55
55
 
56
- # Indextext-Teaser
56
+ # Indextext-Teaser
57
57
 
58
58
  ## Beschreibung
59
59
 
60
-
61
60
  ## Props
62
61
 
63
62
  Die Indextext-Teaser-Komponente benötigt die folgenden json-Daten (enthalten im Teaser-Json im Objekt <b>logicItem.includeModel</b>):
64
63
 
65
64
  <ul>
66
- <li><b>title</b></li>
67
- <li><b>shorttext</b></li>
68
- <li><b>teaserSize</b></li>
69
- <li><b>teaserType</b></li>
65
+ <li>
66
+ <b>title</b>
67
+ </li>
68
+ <li>
69
+ <b>shorttext</b>
70
+ </li>
71
+ <li>
72
+ <b>teaserSize</b>
73
+ </li>
74
+ <li>
75
+ <b>teaserType</b>
76
+ </li>
70
77
  </ul>
71
78
 
72
-
73
79
  ## Verwendung
74
80
 
75
81
  Die Indextext-Teaser-Komponente wird in handlebars wie folgt eingebaut:
76
82
 
77
83
  ```html
78
- {{> components/teaser/teaser_indextext}}
84
+ {{> components/teaser/teaser_indextext}}
79
85
  ```
80
86
 
81
-
82
87
  <Preview withToolbar>
83
- <Story name="Text mit Hintergrund 100" args={dataTeserIndextext100Accented.logicItem.includeModel}>
88
+ <Story
89
+ name="Text mit Hintergrund 100"
90
+ args={dataTeserIndextext100Accented.logicItem.includeModel}
91
+ >
84
92
  {Template.bind({})}
85
93
  </Story>
86
94
  <Story name="Text mit Box 100" args={dataTeserIndextext100Boxed.logicItem.includeModel}>
87
95
  {Template.bind({})}
88
96
  </Story>
89
97
  <Story
90
- name="Hintergrund orange 100" args={dataTeserIndextext100Highlighted.logicItem.includeModel}
98
+ name="Hintergrund orange 100"
99
+ args={dataTeserIndextext100Highlighted.logicItem.includeModel}
91
100
  >
92
101
  {Template.bind({})}
93
102
  </Story>
94
- <Story name="Text mit Hintergrund 50" args={dataTeserIndextext50Accented.logicItem.includeModel}>
103
+ <Story
104
+ name="Text mit Hintergrund 50"
105
+ args={dataTeserIndextext50Accented.logicItem.includeModel}
106
+ >
95
107
  {Template.bind({})}
96
108
  </Story>
97
109
  </Preview>
98
110
 
99
- <ArgsTable story="Text mit Hintergrund 100" />
111
+ <ArgsTable story="Text mit Hintergrund 100" />
@@ -1,24 +1,24 @@
1
1
  import { ArgsTable, Meta, Story, Canvas, Preview } from '@storybook/addon-docs'
2
2
 
3
3
  import teaser from './teaser_logic.hbs'
4
- import index_site from '../fixtures/teaser_index.json'
4
+ import index_site from '../fixtures/teaser_index.json'
5
5
 
6
- <Meta title="Komponenten/Teaser/Logic"
7
- parameters={{
8
- layout: 'fullscreen',
9
- }}
10
- argTypes={{
11
- }}
12
- decorators={[
13
- (Story) => {
14
- return `<div class="grid bg-white grid-page">
15
- <div class="grid grid-cols-12 py-6 bg-white sm:px-8 col-full sm:col-main gap-x-6 gap-y-6">
6
+ <Meta
7
+ title="Komponenten/Teaser/Logic"
8
+ parameters={{
9
+ layout: 'fullscreen',
10
+ }}
11
+ argTypes={{}}
12
+ decorators={[
13
+ (Story) => {
14
+ return `<div class="grid bg-white grid-page">
15
+ <div class="grid grid-cols-12 py-6 bg-white sm:px-9.5 col-full sm:col-main gap-x-6 gap-y-6">
16
16
  ${Story()}
17
17
  </div>
18
18
  </div>`
19
- },
20
- ]}
21
- />
19
+ },
20
+ ]}
21
+ />
22
22
 
23
23
  export const Template = (args, { globals: { customConditionalToolbar } }) => {
24
24
  // You can either use a function to create DOM elements or use a plain html string!
@@ -33,7 +33,7 @@ export const Template = (args, { globals: { customConditionalToolbar } }) => {
33
33
  Ein toller Einleitungstext für unsere `Teaser` Komponente:
34
34
 
35
35
  <Preview withToolbar>
36
- <Story name="logic" args={index_site}>
37
- {Template.bind({})}
38
- </Story>
36
+ <Story name="logic" args={index_site}>
37
+ {Template.bind({})}
38
+ </Story>
39
39
  </Preview>
@@ -9,7 +9,7 @@ import teserPosterMdLabel from './fixtures/teaser_poster_md_label.json'
9
9
  parameters={{
10
10
  layout: 'fullscreen',
11
11
  chromatic: {
12
- diffThreshold: 0.5
12
+ diffThreshold: 0.5,
13
13
  },
14
14
  }}
15
15
  argTypes={{
@@ -28,7 +28,7 @@ import teserPosterMdLabel from './fixtures/teaser_poster_md_label.json'
28
28
  }}
29
29
  decorators={[
30
30
  (Story) => {
31
- return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-8 sm:col-main">
31
+ return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
32
32
  ${Story()}
33
33
  </div></div>`
34
34
  },
@@ -43,7 +43,7 @@ export const Template = (args, { globals: { customConditionalToolbar } }) => {
43
43
  return teaser({ brand, ...args })
44
44
  }
45
45
 
46
- # Poster-Teaser
46
+ # Poster-Teaser
47
47
 
48
48
  ## Beschreibung
49
49
 
@@ -60,40 +60,59 @@ Inhalt dieses spans: Zusatztext + ": " + Titel
60
60
 
61
61
  Der Poster-Teaser soll nur als 50%- bzw. 33%-Teaser verwendet werden. Diese Restriktion muss cms-seitig implementiert werden.
62
62
 
63
-
64
63
  ## Sub-Komponenten
65
64
 
66
65
  Die Poster-Teaser-Komponente inkludiert folgende Komponenten:
67
66
 
68
67
  <ul>
69
- <li>components/base/image/<b>responsive_image</b></li>
70
- <li>components/base/<b>link</b></li>
71
- <li>components/teaser/components/<b>teaser_heading</b></li>
68
+ <li>
69
+ components/base/image/<b>responsive_image</b>
70
+ </li>
71
+ <li>
72
+ components/base/<b>link</b>
73
+ </li>
74
+ <li>
75
+ components/teaser/components/<b>teaser_heading</b>
76
+ </li>
72
77
  </ul>
73
78
 
74
-
75
79
  ## Props
76
80
 
77
81
  Die Poster-Teaser-Komponente benötigt die folgenden json-Daten (enthalten im Teaser-Json im Objekt <b>logicItem.includeModel</b>):
78
82
 
79
83
  <ul>
80
- <li><b>topline</b></li>
81
- <li><b>title</b></li>
82
- <li><b>teaserSize</b></li>
83
- <li><b>teaserType</b></li>
84
- <li><b>teaserImage</b></li>
85
- <li><b>content.imageVariant</b></li>
86
- <li><b>isSerifHeading</b></li>
87
- <li><b>link.readMoreText.readMoreLong</b></li>
84
+ <li>
85
+ <b>topline</b>
86
+ </li>
87
+ <li>
88
+ <b>title</b>
89
+ </li>
90
+ <li>
91
+ <b>teaserSize</b>
92
+ </li>
93
+ <li>
94
+ <b>teaserType</b>
95
+ </li>
96
+ <li>
97
+ <b>teaserImage</b>
98
+ </li>
99
+ <li>
100
+ <b>content.imageVariant</b>
101
+ </li>
102
+ <li>
103
+ <b>isSerifHeading</b>
104
+ </li>
105
+ <li>
106
+ <b>link.readMoreText.readMoreLong</b>
107
+ </li>
88
108
  </ul>
89
109
 
90
-
91
110
  ## Verwendung
92
111
 
93
112
  Die Poster-Teaser-Komponente wird in handlebars wie folgt eingebaut:
94
113
 
95
114
  ```html
96
- {{> components/teaser/teaser_poster}}
115
+ {{> components/teaser/teaser_poster}}
97
116
  ```
98
117
 
99
118
  <Preview withToolbar>
@@ -108,4 +127,4 @@ Die Poster-Teaser-Komponente wird in handlebars wie folgt eingebaut:
108
127
  </Story>
109
128
  </Preview>
110
129
 
111
- <ArgsTable story="Poster 50" />
130
+ <ArgsTable story="Poster 50" />
@@ -6,7 +6,7 @@
6
6
  {{> components/base/image/responsive_image this.teaserImage _type="stage" _variant="default" _addClassImg="w-full blur-2xl"}}
7
7
  </div>
8
8
  {{/unless}}
9
- <div class="col-full lg:col-main lg:px-8 relative">
9
+ <div class="col-full lg:col-main lg:px-9.5 relative">
10
10
  <div class="relative max-h-stage overflow-visible before:content-[''] before:block before:w-full before:pt-3/4 sm:before:pt-stage">
11
11
  <div class="{{#if this.isWide}}lg:absolute lg:h-full lg:w-full-hd lg:left-1/2 lg:top-0 lg:-ml-240{{else}}absolute h-full w-full top-0{{/if}}">
12
12
  {{#if this.isWide}}
@@ -15,10 +15,10 @@
15
15
  </figure>
16
16
  {{#if this.displayTeaserBodyAsImageOverlay}}
17
17
  {{#decorator 'components/teaser/components/teaser_image_overlay' _noOverlayInMobileViewports=true _cssClasses=" relative md:absolute w-full bottom-0"}}
18
- <div class="flex flex-col items-center justify-center p-4 border-r border-gray-400 border-dashed">
18
+ <div class="basis-1/12 flex flex-col items-center justify-center p-4 border-r border-gray-400 border-dashed">
19
19
  {{> components/event/instant_dates}}
20
20
  </div>
21
- {{> components/teaser/components/teaser_body _outerCssClasses=(if this.isMobile1to1 'py-4 md:px-4 basis-3/5 w-3/5 md:basis-full md:w-full' 'py-4 md:px-4')}}
21
+ {{> components/teaser/components/teaser_body _outerCssClasses=(if this.isMobile1to1 'basis-11/12 py-4 sm:px-4 basis-3/5 w-3/5 md:basis-full md:w-full' 'basis-11/12 py-4 sm:px-4')}}
22
22
  {{/decorator}}
23
23
  {{else}}
24
24
  {{> components/teaser/components/teaser_body _outerCssClasses=(if this.isMobile1to1 'basis-3/5 w-3/5 md:basis-full md:w-full')}}
@@ -22,10 +22,10 @@ import teaser33LongGeotag from './fixtures/teaser_standard_33_long_geotag.json'
22
22
  title="Komponenten/Teaser/Standard"
23
23
  parameters={{
24
24
  layout: 'fullscreen',
25
- chromatic: {
25
+ chromatic: {
26
26
  viewports: [360, 1024],
27
- diffThreshold: 0.5
28
- }
27
+ diffThreshold: 0.5,
28
+ },
29
29
  }}
30
30
  argTypes={{
31
31
  teaserSize: {
@@ -43,7 +43,7 @@ import teaser33LongGeotag from './fixtures/teaser_standard_33_long_geotag.json'
43
43
  }}
44
44
  decorators={[
45
45
  (Story) => {
46
- return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-8 sm:col-main">
46
+ return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
47
47
  ${Story()}
48
48
  </div></div>`
49
49
  },
@@ -58,35 +58,44 @@ export const Template = (args, { globals: { customConditionalToolbar } }) => {
58
58
  return teaser({ brand, ...args })
59
59
  }
60
60
 
61
- # Standard-Teaser
61
+ # Standard-Teaser
62
62
 
63
63
  ## Beschreibung
64
64
 
65
-
66
65
  Der Standard-Teaser besteht aus 2 Hauptelemente: <b>Bild</b> und <b>Text</b> (Label, Dachzeile, Titel, Teasertext, Zusatzinformationen)
67
66
 
68
- <b>Standard Hero:</b> <br/>
69
- Desktop = Text unter dem Bild <br/>
70
- Mobile = Text unter dem Bild <b>ohne</b> Teasertext <br/>
67
+ <b>Standard Hero:</b> <br />
68
+ Desktop = Text unter dem Bild <br />
69
+ Mobile = Text unter dem Bild <b>ohne</b> Teasertext <br />
71
70
 
72
- <b>Standard 100%, 50%, 33%:</b> <br/>
73
- Desktop = Text unter dem Bild <br/>
74
- Mobile = Text unter dem Bild ohne Teasertext <br/>
71
+ <b>Standard 100%, 50%, 33%:</b> <br />
72
+ Desktop = Text unter dem Bild <br />
73
+ Mobile = Text unter dem Bild ohne Teasertext <br />
75
74
 
76
- <b>Standard 25%:</b> <br/>
77
- Desktop = Text unter dem Bild ohne Teasertext <br/>
78
- Mobile = Bild(1x1) neben Text ohne Teasertext <br/>
75
+ <b>Standard 25%:</b> <br />
76
+ Desktop = Text unter dem Bild ohne Teasertext <br />
77
+ Mobile = Bild(1x1) neben Text ohne Teasertext <br />
79
78
 
80
79
  ## Sub-Komponenten
81
80
 
82
81
  Die Standard-Teaser-Komponente inkludiert folgende Komponenten:
83
82
 
84
83
  <ul>
85
- <li>components/teaser/components/<b>teaser_lead</b></li>
86
- <li>components/base/<b>link</b></li>
87
- <li>components/teaser/components/<b>teaser_heading</b></li>
88
- <li>components/teaser/components/<b>teaser_text</b></li>
89
- <li>components/teaser/components/<b>teaser_byline</b></li>
84
+ <li>
85
+ components/teaser/components/<b>teaser_lead</b>
86
+ </li>
87
+ <li>
88
+ components/base/<b>link</b>
89
+ </li>
90
+ <li>
91
+ components/teaser/components/<b>teaser_heading</b>
92
+ </li>
93
+ <li>
94
+ components/teaser/components/<b>teaser_text</b>
95
+ </li>
96
+ <li>
97
+ components/teaser/components/<b>teaser_byline</b>
98
+ </li>
90
99
  </ul>
91
100
 
92
101
  ## Verwendung
@@ -94,7 +103,7 @@ Die Standard-Teaser-Komponente inkludiert folgende Komponenten:
94
103
  Die Standard-Teaser-Komponente wird in handlebars wie folgt eingebaut:
95
104
 
96
105
  ```html
97
- {{> components/teaser/teaser_standard}}
106
+ {{> components/teaser/teaser_standard}}
98
107
  ```
99
108
 
100
109
  <Preview withToolbar>
@@ -119,16 +128,19 @@ Die Standard-Teaser-Komponente wird in handlebars wie folgt eingebaut:
119
128
  <Story name="Standard 100 mit externem Link" args={teaser100Link.logicItem.includeModel}>
120
129
  {Template.bind({})}
121
130
  </Story>
122
- <Story name="Standard 100 mit Sendungsdokument" args={teaser100Program.logicItem.includeModel}>
131
+ <Story name="Standard 100 mit Sendungsdokument" args={teaser100Program.logicItem.includeModel}>
123
132
  {Template.bind({})}
124
133
  </Story>
125
134
  <Story name="Standard 50" args={teaser50Serif.logicItem.includeModel}>
126
135
  {Template.bind({})}
127
136
  </Story>
128
- <Story name="Standard 50 ohne Teaserbild" args={teaser50SerifWithoutTeaserImage.logicItem.includeModel}>
137
+ <Story
138
+ name="Standard 50 ohne Teaserbild"
139
+ args={teaser50SerifWithoutTeaserImage.logicItem.includeModel}
140
+ >
129
141
  {Template.bind({})}
130
142
  </Story>
131
- <Story name="Standard 50 mit externem Link" args={teaser50Link.logicItem.includeModel}>
143
+ <Story name="Standard 50 mit externem Link" args={teaser50Link.logicItem.includeModel}>
132
144
  {Template.bind({})}
133
145
  </Story>
134
146
  <Story name="Standard 33" args={teaser33Serif.logicItem.includeModel}>
@@ -140,7 +152,10 @@ Die Standard-Teaser-Komponente wird in handlebars wie folgt eingebaut:
140
152
  <Story name="Standard 25" args={teaser25Serif.logicItem.includeModel}>
141
153
  {Template.bind({})}
142
154
  </Story>
143
- <Story name="Standard 25 ohne Teaserbild" args={teaser25SerifWithoutTeaserimage.logicItem.includeModel}>
155
+ <Story
156
+ name="Standard 25 ohne Teaserbild"
157
+ args={teaser25SerifWithoutTeaserimage.logicItem.includeModel}
158
+ >
144
159
  {Template.bind({})}
145
160
  </Story>
146
161
  <Story name="Standard 25 mit externem Link" args={teaser25Link.logicItem.includeModel}>
@@ -153,4 +168,3 @@ Die Standard-Teaser-Komponente wird in handlebars wie folgt eingebaut:
153
168
  {Template.bind({})}
154
169
  </Story>
155
170
  </Preview>
156
-
@@ -17,8 +17,8 @@ import teaser25live from './fixtures/teaser_standard_25_serif_live.json'
17
17
  parameters={{
18
18
  layout: 'fullscreen',
19
19
  chromatic: {
20
- diffThreshold: 0.5
21
- }
20
+ diffThreshold: 0.5,
21
+ },
22
22
  }}
23
23
  argTypes={{
24
24
  teaserSize: {
@@ -36,7 +36,7 @@ import teaser25live from './fixtures/teaser_standard_25_serif_live.json'
36
36
  }}
37
37
  decorators={[
38
38
  (Story) => {
39
- return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-8 sm:col-main">
39
+ return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
40
40
  ${Story()}
41
41
  </div></div>`
42
42
  },
@@ -15,8 +15,8 @@ import teaserAlternative100TwoEventsSerif from './fixtures/teaser_alternative_10
15
15
  parameters={{
16
16
  layout: 'fullscreen',
17
17
  chromatic: {
18
- diffThreshold: 0.5
19
- }
18
+ diffThreshold: 0.5,
19
+ },
20
20
  }}
21
21
  argTypes={{
22
22
  teaserSize: {
@@ -34,7 +34,7 @@ import teaserAlternative100TwoEventsSerif from './fixtures/teaser_alternative_10
34
34
  }}
35
35
  decorators={[
36
36
  (Story) => {
37
- return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-8 sm:col-main">
37
+ return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
38
38
  ${Story()}
39
39
  </div></div>`
40
40
  },
@@ -111,6 +111,7 @@ module.exports = {
111
111
  '-1000': '-1000',
112
112
  },
113
113
  spacing: {
114
+ '9.5': '2.375rem',
114
115
  '22': '5.5rem',
115
116
  '135': '33.75rem',
116
117
  'stage': '56%',