hr-design-system-handlebars 1.83.12 → 1.84.0
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/.storybook/main.js +29 -19
- package/.storybook/manager.js +1 -1
- package/.storybook/preview.js +4 -3
- package/CHANGELOG.md +12 -0
- package/build-storybook.log +34 -2446
- package/chromatic.config.json +5 -0
- package/dist/assets/index.css +3 -3
- package/package.json +138 -136
- package/src/stories/basics/Fixtures.mdx +1 -1
- package/src/stories/basics/conventions-and-datastructure.mdx +4 -12
- package/src/stories/views/components/banner/header.stories.js +4 -5
- package/src/stories/views/components/banner/structure_nav/structureNav.stories.js +3 -4
- package/src/stories/views/components/base/link.mdx +2 -2
- package/src/stories/views/components/button/button.mdx +2 -2
- package/src/stories/views/components/button/button.stories.js +4 -5
- package/src/stories/views/components/button/components/button_icon.mdx +2 -2
- package/src/stories/views/components/button/components/button_label.mdx +2 -2
- package/src/stories/views/components/button/link_button.mdx +2 -2
- package/src/stories/views/components/button/link_button.stories.js +3 -4
- package/src/stories/views/components/content/content_footer/content_footer.mdx +2 -2
- package/src/stories/views/components/content/content_footer/content_footer.stories.js +1 -1
- package/src/stories/views/components/content/copytext/components/accordion/accordion.mdx +2 -2
- package/src/stories/views/components/content/copytext/components/contentbox/contentbox.mdx +2 -2
- package/src/stories/views/components/content/copytext/copytext.mdx +2 -2
- package/src/stories/views/components/content/copytext/copytext.stories.js +2 -2
- package/src/stories/views/components/content/social_media_links/social_media_links.mdx +1 -1
- package/src/stories/views/components/content/social_media_links/social_media_links.stories.js +2 -4
- package/src/stories/views/components/event/calendar/event_calendar_components.mdx +1 -1
- package/src/stories/views/components/externalService/external_service.mdx +1 -1
- package/src/stories/views/components/externalService/external_service.stories.js +10 -13
- package/src/stories/views/components/footer/page_footer.mdx +1 -1
- package/src/stories/views/components/footer/page_footer.stories.js +4 -6
- package/src/stories/views/components/geoTag/geoTag.mdx +1 -1
- package/src/stories/views/components/grid/grid.mdx +2 -2
- package/src/stories/views/components/horizontal_scroll_container/horizontal_scroll_container.stories.js +1 -1
- package/src/stories/views/components/label/label.mdx +1 -1
- package/src/stories/views/components/mediaplayer/mediaplayer.mdx +2 -2
- package/src/stories/views/components/mediaplayer/mediaplayer.stories.js +16 -14
- package/src/stories/views/components/mediaplayer/mediaplayer_button.mdx +2 -2
- package/src/stories/views/components/modal/modal.mdx +2 -2
- package/src/stories/views/components/modal/modal.stories.js +10 -10
- package/src/stories/views/components/navigation/breadcrumb/breadcrumb.mdx +2 -2
- package/src/stories/views/components/page/components/appendix.mdx +2 -2
- package/src/stories/views/components/page/components/metadatabox.mdx +2 -2
- package/src/stories/views/components/page/components/metadatabox.stories.js +2 -3
- package/src/stories/views/components/page/index/page.mdx +2 -2
- package/src/stories/views/components/page/index/page.stories.js +8 -8
- package/src/stories/views/components/page/index/page_offline.stories.js +2 -2
- package/src/stories/views/components/page/index/page_player.mdx +2 -2
- package/src/stories/views/components/page/podcast/podcast_episode_article.mdx +1 -1
- package/src/stories/views/components/page/podcast/podcast_episode_article.stories.js +1 -1
- package/src/stories/views/components/page/podcast/podcast_playlist_article.mdx +1 -1
- package/src/stories/views/components/page/podcast/podcast_playlist_article.stories.js +1 -1
- package/src/stories/views/components/page/story/story_main.mdx +1 -1
- package/src/stories/views/components/page/story/story_main.stories.js +6 -6
- package/src/stories/views/components/pagination/page_pagination.mdx +1 -1
- package/src/stories/views/components/pagination/page_pagination.stories.js +1 -2
- package/src/stories/views/components/podcast/podcast_subscribe_button.mdx +1 -1
- package/src/stories/views/components/podcast/podcast_subscribe_button.stories.js +4 -4
- package/src/stories/views/components/site_header/header.mdx +1 -1
- package/src/stories/views/components/site_header/header.stories.js +2 -3
- package/src/stories/views/components/social_sharing/social_sharing.mdx +1 -1
- package/src/stories/views/components/social_sharing/social_sharing.stories.js +4 -5
- package/src/stories/views/components/teaser/cluster/teaser_cluster.mdx +1 -1
- package/src/stories/views/components/teaser/components/teaser_byline.mdx +2 -2
- package/src/stories/views/components/teaser/components/teaser_featured_content.mdx +2 -2
- package/src/stories/views/components/teaser/components/teaser_featured_content.stories.js +1 -1
- package/src/stories/views/components/teaser/components/teaser_heading.mdx +2 -2
- package/src/stories/views/components/teaser/components/teaser_text.mdx +1 -1
- package/src/stories/views/components/teaser/components/teaser_title.mdx +2 -2
- package/src/stories/views/components/teaser/components/teaser_topline.mdx +2 -2
- package/src/stories/views/components/teaser/content_nav/teaser_content_nav.mdx +1 -1
- package/src/stories/views/components/teaser/group_teaser/group.mdx +2 -2
- package/src/stories/views/components/teaser/podcast/podcast.mdx +1 -1
- package/src/stories/views/components/teaser/podcast/podcast.stories.js +0 -1
- package/src/stories/views/components/teaser/tabbox/teaser_tabbox.mdx +1 -1
- package/src/stories/views/components/teaser/tabbox/teaser_tabbox.stories.js +1 -1
- package/src/stories/views/components/teaser/teaser_alternativ.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_alternativ_av.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_event_calendar.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_indextext.mdx +2 -2
- package/src/stories/views/components/teaser/teaser_logic/teaser_logic.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_poster.mdx +2 -2
- package/src/stories/views/components/teaser/teaser_stage.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_standard.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_standard.stories.js +1 -1
- package/src/stories/views/components/teaser/teaser_standard_av.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_standard_event.mdx +1 -1
- package/src/stories/views/components/teaser/ticker/teaser_ticker_alternativ.mdx +1 -1
- package/src/stories/views/components/teaser/ticker/teaser_ticker_alternativ.stories.js +0 -1
- package/src/stories/views/components/teaser/ticker/teaser_ticker_standard.mdx +1 -1
- package/src/stories/views/components/teaser/ticker/teaser_ticker_standard.stories.js +1 -1
- package/src/stories/views/components/teaser/ticker/teaser_ticker_timeline.mdx +1 -1
- package/src/stories/views/components/teaser/ticker/teaser_ticker_timeline.stories.js +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, ColorPalette, ColorItem } from '@storybook/blocks'
|
|
2
2
|
import * as socialMediaLinksStories from './social_media_links.stories';
|
|
3
3
|
|
|
4
4
|
import socialMediaLinks from './social_media_links.hbs'
|
package/src/stories/views/components/content/social_media_links/social_media_links.stories.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import socialMediaLinks from './social_media_links.hbs'
|
|
2
2
|
import socialMediaLinksData from './fixtures/social_media_links.json'
|
|
3
3
|
|
|
4
|
-
|
|
5
4
|
const Template = ({ ...args }) => {
|
|
6
5
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
7
6
|
// return `<div>${socialMediaLinks}</div>`;
|
|
@@ -11,8 +10,7 @@ const Template = ({ ...args }) => {
|
|
|
11
10
|
export default {
|
|
12
11
|
title: 'Komponenten/Content/SocialMediaLinks',
|
|
13
12
|
|
|
14
|
-
argTypes: {
|
|
15
|
-
},
|
|
13
|
+
argTypes: {},
|
|
16
14
|
|
|
17
15
|
decorators: [
|
|
18
16
|
(Story) => {
|
|
@@ -28,6 +26,6 @@ export const ThreeLinks = {
|
|
|
28
26
|
name: '3 Links',
|
|
29
27
|
|
|
30
28
|
args: {
|
|
31
|
-
...socialMediaLinksData
|
|
29
|
+
...socialMediaLinksData,
|
|
32
30
|
},
|
|
33
31
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas } from '@storybook/blocks'
|
|
2
2
|
import eventCalendarHeading from './event_calendar_heading.hbs'
|
|
3
3
|
import eventCalendarNav from './event_calendar_nav.hbs'
|
|
4
4
|
import eventCalendarContent from './event_calendar_event_teaser.hbs'
|
|
@@ -1,19 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ExternalServiceContent
|
|
3
|
-
} from './external_service.data.js'
|
|
1
|
+
import { ExternalServiceContent } from './external_service.data.js'
|
|
4
2
|
import externalService from './external_service_with_datapolicy_check.hbs'
|
|
5
3
|
import externalServiceNoDatapolicyCheck from './external_service.hbs'
|
|
6
4
|
|
|
7
5
|
const TemplatePageExternalService = (args, { globals: { theme } }) => {
|
|
8
6
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
9
7
|
// return `<div>${label}</div>`;
|
|
10
|
-
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
8
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
11
9
|
return externalService({ brand, ...args })
|
|
12
10
|
}
|
|
13
11
|
const TemplatePageExternalServiceNoDatapolicyCheck = (args, { globals: { theme } }) => {
|
|
14
12
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
15
13
|
// return `<div>${label}</div>`;
|
|
16
|
-
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
14
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
17
15
|
return externalServiceNoDatapolicyCheck({ brand, ...args })
|
|
18
16
|
}
|
|
19
17
|
export default {
|
|
@@ -32,36 +30,35 @@ export default {
|
|
|
32
30
|
export const ExterneDiensteGiphy = {
|
|
33
31
|
render: TemplatePageExternalService.bind({}),
|
|
34
32
|
name: 'Externe Dienste Giphy',
|
|
35
|
-
args: ExternalServiceContent.Giphy,
|
|
33
|
+
args: ExternalServiceContent.Giphy,
|
|
36
34
|
}
|
|
37
35
|
export const ExterneDiensteFlourish = {
|
|
38
36
|
render: TemplatePageExternalService.bind({}),
|
|
39
37
|
name: 'Externe Dienste Flourish',
|
|
40
|
-
args: ExternalServiceContent.Flourish,
|
|
38
|
+
args: ExternalServiceContent.Flourish,
|
|
41
39
|
}
|
|
42
40
|
export const ExterneDiensteDatawrapper = {
|
|
43
41
|
render: TemplatePageExternalService.bind({}),
|
|
44
42
|
name: 'Externe Dienste Datawrapper MIT Responsivem Iframe',
|
|
45
|
-
args: ExternalServiceContent.Datawrapper_CDN,
|
|
43
|
+
args: ExternalServiceContent.Datawrapper_CDN,
|
|
46
44
|
}
|
|
47
45
|
export const ExterneDiensteDatawrapperNoResponsiveFixedHeight = {
|
|
48
46
|
render: TemplatePageExternalService.bind({}),
|
|
49
47
|
name: 'Externe Dienste Datawrapper OHNE Responsivem Iframe (Feste Höhe)',
|
|
50
|
-
args: ExternalServiceContent.Datawrapper_CDN_NoResponsiveFixedHeight,
|
|
48
|
+
args: ExternalServiceContent.Datawrapper_CDN_NoResponsiveFixedHeight,
|
|
51
49
|
}
|
|
52
50
|
export const ExterneDiensteDatawrapperNoResponsiveAspectRatio = {
|
|
53
51
|
render: TemplatePageExternalService.bind({}),
|
|
54
52
|
name: 'Externe Dienste Datawrapper OHNE Responsivem Iframe (Aspect Ratio)',
|
|
55
|
-
args: ExternalServiceContent.Datawrapper_CDN_NoResponsiveAspectRatio,
|
|
53
|
+
args: ExternalServiceContent.Datawrapper_CDN_NoResponsiveAspectRatio,
|
|
56
54
|
}
|
|
57
55
|
export const ExterneDiensteDatawrapperContentRefresher = {
|
|
58
56
|
render: TemplatePageExternalService.bind({}),
|
|
59
57
|
name: 'Externe Dienste Datawrapper mit ContentRefresher',
|
|
60
|
-
args: ExternalServiceContent.Datawrapper_CDN_NoResponsiveFixedHeightReload,
|
|
58
|
+
args: ExternalServiceContent.Datawrapper_CDN_NoResponsiveFixedHeightReload,
|
|
61
59
|
}
|
|
62
60
|
export const WahlGemeindeErgebnis = {
|
|
63
61
|
render: TemplatePageExternalServiceNoDatapolicyCheck.bind({}),
|
|
64
62
|
name: 'Externe Dienste Wahl Gemeinde Ergebnis',
|
|
65
|
-
args: ExternalServiceContent.Wahl_Gemeinde_Ergebnis,
|
|
63
|
+
args: ExternalServiceContent.Wahl_Gemeinde_Ergebnis,
|
|
66
64
|
}
|
|
67
|
-
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
FooterContent
|
|
3
|
-
} from './page_footer.data.js'
|
|
1
|
+
import { FooterContent } from './page_footer.data.js'
|
|
4
2
|
import pageFooter from './page_footer.hbs'
|
|
5
3
|
|
|
6
4
|
const TemplatePageFooter = (args, { globals: { theme } }) => {
|
|
7
5
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
8
6
|
// return `<div>${label}</div>`;
|
|
9
|
-
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
7
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
10
8
|
return pageFooter({ brand, ...args })
|
|
11
9
|
}
|
|
12
10
|
|
|
@@ -26,5 +24,5 @@ export default {
|
|
|
26
24
|
export const Seitenfooter = {
|
|
27
25
|
render: TemplatePageFooter.bind({}),
|
|
28
26
|
name: 'Seitenfooter',
|
|
29
|
-
args: FooterContent,
|
|
30
|
-
}
|
|
27
|
+
args: FooterContent,
|
|
28
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, ColorPalette, ColorItem } from '@storybook/blocks'
|
|
2
2
|
import * as GeoTagStories from './geoTag.stories';
|
|
3
3
|
|
|
4
4
|
import geoTag from './geoTag.hbs'
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas } from '@storybook/blocks'
|
|
2
2
|
import * as GridStories from './grid.stories';
|
|
3
3
|
|
|
4
4
|
import grid_group_100_item_100 from './grid_group_100_item_100.hbs'
|
|
@@ -207,4 +207,4 @@ Mit inversem Aufbau ist gemeint, das die Gruppe die Größe vorgibt und die Obje
|
|
|
207
207
|
<Story of={GridStories.$33} />
|
|
208
208
|
</Canvas>
|
|
209
209
|
|
|
210
|
-
<
|
|
210
|
+
<ArgTypes story="Grid" />
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas } from '@storybook/blocks'
|
|
2
2
|
import * as MediaplayerStories from './mediaplayer.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={MediaplayerStories} />
|
|
@@ -15,7 +15,7 @@ dem eigentlichen Player vorgeschaltet. Erst bei Klick auf den Play-Button wird d
|
|
|
15
15
|
|
|
16
16
|
Zur Konfiguration des Players stehen die im Folgenden beschrieben Parameter zur Verfügung:
|
|
17
17
|
|
|
18
|
-
<
|
|
18
|
+
<ArgTypes story="Videoplayer" />
|
|
19
19
|
|
|
20
20
|
## Varianten
|
|
21
21
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { userEvent, within, waitFor } from '@storybook/
|
|
1
|
+
import { userEvent, within, waitFor } from '@storybook/test'
|
|
2
2
|
import mediaplayerJson from 'components/mediaplayer/fixtures/mediaplayer.json'
|
|
3
3
|
|
|
4
4
|
import mediaPlayer from 'components/mediaplayer/media_player.hbs'
|
|
5
|
-
import { delay } from 'underscore'
|
|
5
|
+
import { delay } from 'underscore'
|
|
6
6
|
|
|
7
7
|
const Template = ({ label, ...args }) => {
|
|
8
8
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
@@ -16,15 +16,17 @@ export default {
|
|
|
16
16
|
argTypes: {
|
|
17
17
|
_isTeaser: {
|
|
18
18
|
control: 'boolean',
|
|
19
|
-
description:
|
|
19
|
+
description:
|
|
20
|
+
'Legt fest, ob der Player in einem Teaser verwendet wird und, falls dies der Fall ist, ein statisches Teaser-Bild vorgeschaltet bekommt.',
|
|
20
21
|
},
|
|
21
22
|
_uiTestHook: {
|
|
22
23
|
control: 'text',
|
|
23
|
-
description:
|
|
24
|
+
description:
|
|
25
|
+
'Hierüber kann eine CSS Hook Klasse gesetzt werden, um den Player Container in einem UI-Test einfach selektieren zu können.',
|
|
24
26
|
defaultValue: {
|
|
25
27
|
summary: 'ui-test-mediaplayer',
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
+
},
|
|
29
|
+
},
|
|
28
30
|
},
|
|
29
31
|
|
|
30
32
|
parameters: {
|
|
@@ -44,7 +46,7 @@ export const Videoplayer = {
|
|
|
44
46
|
</div>`
|
|
45
47
|
},
|
|
46
48
|
],
|
|
47
|
-
args: {
|
|
49
|
+
args: { _isTeaser: false, ...mediaplayerJson.video },
|
|
48
50
|
}
|
|
49
51
|
|
|
50
52
|
export const VideoplayerSettings = {
|
|
@@ -57,13 +59,13 @@ export const VideoplayerSettings = {
|
|
|
57
59
|
</div>`
|
|
58
60
|
},
|
|
59
61
|
],
|
|
60
|
-
args: {
|
|
62
|
+
args: { _isTeaser: false, ...mediaplayerJson.video },
|
|
61
63
|
play: async ({ canvasElement }) => {
|
|
62
|
-
let canvas = within(canvasElement)
|
|
63
|
-
await userEvent.click(await canvas.findByTitle('Wiedergabe [Leertaste]'))
|
|
64
|
+
let canvas = within(canvasElement)
|
|
65
|
+
await userEvent.click(await canvas.findByTitle('Wiedergabe [Leertaste]'))
|
|
64
66
|
userEvent.keyboard('[Space]', { delay: 1000 })
|
|
65
67
|
userEvent.keyboard('{ArrowLeft}', { delay: 1500 })
|
|
66
|
-
await userEvent.click(await canvas.findByTitle('Einstellungen an / aus'), { delay: 2000 })
|
|
68
|
+
await userEvent.click(await canvas.findByTitle('Einstellungen an / aus'), { delay: 2000 })
|
|
67
69
|
},
|
|
68
70
|
}
|
|
69
71
|
|
|
@@ -77,7 +79,7 @@ export const VideoplayerLive = {
|
|
|
77
79
|
},
|
|
78
80
|
],
|
|
79
81
|
name: 'Videoplayer Livestream',
|
|
80
|
-
args: {
|
|
82
|
+
args: { _isTeaser: false, ...mediaplayerJson.video_livestream },
|
|
81
83
|
}
|
|
82
84
|
|
|
83
85
|
export const Audioplayer = {
|
|
@@ -90,7 +92,7 @@ export const Audioplayer = {
|
|
|
90
92
|
</div>`
|
|
91
93
|
},
|
|
92
94
|
],
|
|
93
|
-
args: {
|
|
95
|
+
args: { _isTeaser: false, _isAudioView: true, ...mediaplayerJson.audio },
|
|
94
96
|
}
|
|
95
97
|
|
|
96
98
|
export const AudioplayerLivestream = {
|
|
@@ -103,5 +105,5 @@ export const AudioplayerLivestream = {
|
|
|
103
105
|
},
|
|
104
106
|
],
|
|
105
107
|
name: 'Audioplayer Livestream',
|
|
106
|
-
args: {
|
|
108
|
+
args: { _isTeaser: false, _isAudioView: true, ...mediaplayerJson.audio_event_livestream },
|
|
107
109
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, Preview } from '@storybook/blocks'
|
|
2
2
|
import * as MediaplayerButtonStories from './mediaplayer_button.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={MediaplayerButtonStories} />
|
|
@@ -31,7 +31,7 @@ müssen und können nicht separat gesetzt werden.
|
|
|
31
31
|
|
|
32
32
|
## Eigenschaften
|
|
33
33
|
|
|
34
|
-
<
|
|
34
|
+
<ArgTypes story="Spielplatz" />
|
|
35
35
|
|
|
36
36
|
## Varianten
|
|
37
37
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, Preview } from '@storybook/blocks'
|
|
2
2
|
import * as ModalStories from './modal.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={ModalStories} />
|
|
@@ -24,7 +24,7 @@ Damit auch ältere Browser, die das Dialog Element noch nicht unterstützen, das
|
|
|
24
24
|
|
|
25
25
|
## Eigenschaften
|
|
26
26
|
|
|
27
|
-
<
|
|
27
|
+
<ArgTypes story="Default Modal" />
|
|
28
28
|
|
|
29
29
|
## Varianten
|
|
30
30
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { userEvent, within } from '@storybook/
|
|
1
|
+
import { userEvent, within } from '@storybook/test'
|
|
2
2
|
|
|
3
3
|
const handlebars = require('hrHandlebars')
|
|
4
4
|
|
|
@@ -24,7 +24,7 @@ const defaultModalTemplate = (args, { globals: { customConditionalToolbar } }) =
|
|
|
24
24
|
const userConsentModalTemplate = (args, { globals: { customConditionalToolbar } }) => {
|
|
25
25
|
let brand =
|
|
26
26
|
undefined !== customConditionalToolbar ? customConditionalToolbar['brands'] : 'hessenschau'
|
|
27
|
-
let link = { url:
|
|
27
|
+
let link = { url: 'https://hessenschau.de', isTargetBlank: true }
|
|
28
28
|
let hbsTemplate = handlebars.compile(`
|
|
29
29
|
{{#> components/modal/modal}}
|
|
30
30
|
{{> components/modal/user_consent _headline=(loca "modal_user_consent_headline") _text=(loca "modal_user_consent_text") _labelOk=(loca "modal_user_consent_label_ok") _labelCancel=(loca "modal_user_consent_label_cancel")}}
|
|
@@ -50,7 +50,8 @@ export default {
|
|
|
50
50
|
options: ['default', 'userConsent'],
|
|
51
51
|
},
|
|
52
52
|
|
|
53
|
-
description:
|
|
53
|
+
description:
|
|
54
|
+
'Der Typ des Modals, das geöffnet werden soll. Derzeit lassen sich die Typen "default" und "userConsent" auswählen.',
|
|
54
55
|
},
|
|
55
56
|
},
|
|
56
57
|
|
|
@@ -66,7 +67,7 @@ export const defaultModal = {
|
|
|
66
67
|
name: 'Default Modal',
|
|
67
68
|
args: {
|
|
68
69
|
_trigger: '.js-modal',
|
|
69
|
-
_type: 'default'
|
|
70
|
+
_type: 'default',
|
|
70
71
|
},
|
|
71
72
|
}
|
|
72
73
|
|
|
@@ -75,7 +76,7 @@ export const userConsentModal = {
|
|
|
75
76
|
name: 'User Consent Modal',
|
|
76
77
|
args: {
|
|
77
78
|
_trigger: '.js-user-consent-needed',
|
|
78
|
-
_type: 'userConsent'
|
|
79
|
+
_type: 'userConsent',
|
|
79
80
|
},
|
|
80
81
|
}
|
|
81
82
|
|
|
@@ -84,16 +85,15 @@ export const openedUserConsentModal = {
|
|
|
84
85
|
name: 'User Consent Modal geöffnet',
|
|
85
86
|
args: {
|
|
86
87
|
_trigger: '.js-user-consent-needed',
|
|
87
|
-
_type: 'userConsent'
|
|
88
|
+
_type: 'userConsent',
|
|
88
89
|
},
|
|
89
90
|
play: async ({ canvasElement }) => {
|
|
90
|
-
const canvas = within(canvasElement)
|
|
91
|
+
const canvas = within(canvasElement)
|
|
91
92
|
|
|
92
|
-
const link = canvas.getByTestId('modal-hook')
|
|
93
|
+
const link = canvas.getByTestId('modal-hook')
|
|
93
94
|
|
|
94
95
|
await userEvent.click(link, {
|
|
95
96
|
delay: 3000,
|
|
96
|
-
})
|
|
97
|
+
})
|
|
97
98
|
},
|
|
98
99
|
}
|
|
99
|
-
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, Preview } from '@storybook/blocks'
|
|
2
2
|
import * as BreadcrumbStories from './breadcrumb.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={BreadcrumbStories} />
|
|
@@ -17,7 +17,7 @@ Die einzelnen Einträge der Breadcrumb sind verlinkt.
|
|
|
17
17
|
|
|
18
18
|
## Eigenschaften
|
|
19
19
|
|
|
20
|
-
<
|
|
20
|
+
<ArgTypes story="Breadcrumb 2 Level" />
|
|
21
21
|
|
|
22
22
|
## Varianten
|
|
23
23
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas } from '@storybook/blocks'
|
|
2
2
|
import * as AppendixStories from './appendix.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={AppendixStories} />
|
|
@@ -24,4 +24,4 @@ Die Appendix-Komponente wird in handlebars wie folgt eingebaut:
|
|
|
24
24
|
<Story of={AppendixStories.Default} />
|
|
25
25
|
</Canvas>
|
|
26
26
|
|
|
27
|
-
<
|
|
27
|
+
<ArgTypes story="default" />
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas } from '@storybook/blocks'
|
|
2
2
|
import * as MetadataboxStories from './metadatabox.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={MetadataboxStories} />
|
|
@@ -26,4 +26,4 @@ Die Metadatenbox-Komponente wird in handlebars wie folgt eingebaut:
|
|
|
26
26
|
<Story of={MetadataboxStories.Default} />
|
|
27
27
|
</Canvas>
|
|
28
28
|
|
|
29
|
-
<
|
|
29
|
+
<ArgTypes story="default" />
|
|
@@ -20,7 +20,7 @@ export default {
|
|
|
20
20
|
control: 'boolean',
|
|
21
21
|
description: 'Datum anzeigen',
|
|
22
22
|
},
|
|
23
|
-
},
|
|
23
|
+
},
|
|
24
24
|
decorators: [
|
|
25
25
|
(Story) => {
|
|
26
26
|
return `<div class="max-w-[724px] mx-auto mt-60">
|
|
@@ -54,7 +54,6 @@ export const WithOneAuthorWithoutPicture = {
|
|
|
54
54
|
args: metadatabox_one_author_without_picture_json,
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
|
|
58
57
|
export const WithMoreAuthors = {
|
|
59
58
|
render: Template.bind({}),
|
|
60
59
|
name: 'Mehrere Autoren',
|
|
@@ -71,4 +70,4 @@ export const WithMoreAuthorsAndComments = {
|
|
|
71
70
|
render: Template.bind({}),
|
|
72
71
|
name: 'Mehrere Autoren und Kommentar-Link',
|
|
73
72
|
args: metadatabox_more_authors_comments_json,
|
|
74
|
-
}
|
|
73
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, Preview } from '@storybook/blocks'
|
|
2
2
|
import * as PageStories from './page.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={PageStories} />
|
|
@@ -97,4 +97,4 @@ Teaser-Typ variieren.
|
|
|
97
97
|
|
|
98
98
|
|
|
99
99
|
|
|
100
|
-
<
|
|
100
|
+
<ArgTypes story="Default" />
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
NavigationDataWithTeaser2,
|
|
8
8
|
NavigationDataWithTeaser3,
|
|
9
9
|
NavigationDataWithTeaser4,
|
|
10
|
-
NavigationDataWithBreadcrumb
|
|
10
|
+
NavigationDataWithBreadcrumb,
|
|
11
11
|
} from './page.data.js'
|
|
12
12
|
|
|
13
13
|
import { NavigationDataWithMixedContent } from '../../pagination/page_pagination.data.js'
|
|
@@ -15,21 +15,21 @@ import { NavigationDataWithMixedContent } from '../../pagination/page_pagination
|
|
|
15
15
|
const Template = (args, { globals: { theme } }) => {
|
|
16
16
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
17
17
|
// return `<div>${label}</div>`;
|
|
18
|
-
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
18
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
19
19
|
return page({ brand, ...args })
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
const Template2 = (args, { globals: { theme } }) => {
|
|
23
23
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
24
24
|
// return `<div>${label}</div>`;
|
|
25
|
-
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
25
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
26
26
|
return page_pagination({ brand, ...args })
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
const Template3 = (args, { globals: { theme } }) => {
|
|
30
30
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
31
31
|
// return `<div>${label}</div>`;
|
|
32
|
-
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
32
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
33
33
|
return page_article({ brand, ...args })
|
|
34
34
|
}
|
|
35
35
|
export default {
|
|
@@ -40,7 +40,7 @@ export default {
|
|
|
40
40
|
chromatic: {
|
|
41
41
|
viewports: [360, 768, 1024],
|
|
42
42
|
diffThreshold: 0.3,
|
|
43
|
-
delay: 2000,
|
|
43
|
+
delay: 2000,
|
|
44
44
|
},
|
|
45
45
|
|
|
46
46
|
layout: 'fullscreen',
|
|
@@ -87,6 +87,6 @@ export const MitArtikel = {
|
|
|
87
87
|
name: 'Mit Artikel',
|
|
88
88
|
args: NavigationDataWithBreadcrumb,
|
|
89
89
|
parameters: {
|
|
90
|
-
chromatic: { delay: 2000 }
|
|
91
|
-
}
|
|
92
|
-
}
|
|
90
|
+
chromatic: { delay: 2000 },
|
|
91
|
+
},
|
|
92
|
+
}
|
|
@@ -3,7 +3,7 @@ import page from './page_offline.hbs'
|
|
|
3
3
|
const Template = (args, { globals: { theme } }) => {
|
|
4
4
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
5
5
|
// return `<div>${label}</div>`;
|
|
6
|
-
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
6
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
7
7
|
return page({ brand, ...args })
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -29,4 +29,4 @@ export const Default = {
|
|
|
29
29
|
render: Template.bind({}),
|
|
30
30
|
name: 'Offline Page',
|
|
31
31
|
args: {},
|
|
32
|
-
}
|
|
32
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, Preview } from '@storybook/blocks'
|
|
2
2
|
import * as PagePlayerStories from './page_player.stories'
|
|
3
3
|
|
|
4
4
|
<Meta of={PagePlayerStories} />
|
|
@@ -18,4 +18,4 @@ components/teaser/podcast/podcast this.teaser_podcast_50.logicItem.includeModel}
|
|
|
18
18
|
<Story of={PagePlayerStories.PlayerInteraktion} />
|
|
19
19
|
</Canvas>
|
|
20
20
|
|
|
21
|
-
<
|
|
21
|
+
<ArgTypes story="Default" />
|
|
@@ -21,7 +21,7 @@ export const Default = {
|
|
|
21
21
|
args: data_story,
|
|
22
22
|
parameters: {
|
|
23
23
|
layout: 'fullscreen',
|
|
24
|
-
}
|
|
24
|
+
},
|
|
25
25
|
}
|
|
26
26
|
export const Webview = {
|
|
27
27
|
render: Template.bind({}),
|
|
@@ -40,7 +40,7 @@ export const WithSquareImage = {
|
|
|
40
40
|
args: data_story_with_square_image,
|
|
41
41
|
parameters: {
|
|
42
42
|
layout: 'fullscreen',
|
|
43
|
-
}
|
|
43
|
+
},
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
export const WithLabel = {
|
|
@@ -49,8 +49,8 @@ export const WithLabel = {
|
|
|
49
49
|
args: data_story_with_label,
|
|
50
50
|
parameters: {
|
|
51
51
|
layout: 'fullscreen',
|
|
52
|
-
chromatic: { delay: 1000 }
|
|
53
|
-
}
|
|
52
|
+
chromatic: { delay: 1000 },
|
|
53
|
+
},
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
export const WithVideo = {
|
|
@@ -59,7 +59,7 @@ export const WithVideo = {
|
|
|
59
59
|
args: data_story_with_video,
|
|
60
60
|
parameters: {
|
|
61
61
|
layout: 'fullscreen',
|
|
62
|
-
}
|
|
62
|
+
},
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
|
|
@@ -70,7 +70,7 @@ export const WithLivestream = {
|
|
|
70
70
|
args: data_story_with_livestream,
|
|
71
71
|
parameters: {
|
|
72
72
|
layout: 'fullscreen',
|
|
73
|
-
}
|
|
73
|
+
},
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
export const WithAudio = {
|
|
@@ -76,7 +76,7 @@ const TemplateMoreThanThreeLast = (args, { globals: { customConditionalToolbar }
|
|
|
76
76
|
undefined !== customConditionalToolbar ? customConditionalToolbar['brands'] : 'hessenschau'
|
|
77
77
|
return page({ brand, ...args })
|
|
78
78
|
}
|
|
79
|
-
const TemplateOnlyTwo= (args, { globals: { customConditionalToolbar } }) => {
|
|
79
|
+
const TemplateOnlyTwo = (args, { globals: { customConditionalToolbar } }) => {
|
|
80
80
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
81
81
|
// return `<div>${label}</div>`;
|
|
82
82
|
args['onlyThreePages'] = false
|
|
@@ -104,7 +104,6 @@ const TemplateOnlyThree = (args, { globals: { customConditionalToolbar } }) => {
|
|
|
104
104
|
return page({ brand, ...args })
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
|
|
108
107
|
export default {
|
|
109
108
|
title: 'Komponenten/Pagination',
|
|
110
109
|
argTypes: {},
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ArgTypes, Meta, Story, Canvas, Preview } from '@storybook/blocks'
|
|
2
2
|
import { resetComponents } from '@storybook/components'
|
|
3
3
|
import * as PodcastSubscribeButtonStories from './podcast_subscribe_button.stories'
|
|
4
4
|
|