1
1
import React from 'react'
2
- import { ComponentMeta , ComponentStory } from '@storybook/react'
2
+ import { Meta , StoryFn } from '@storybook/react'
3
3
import { INITIAL_VIEWPORTS } from '@storybook/addon-viewport'
4
4
import { Prose } from './Prose'
5
5
import placeholderImage from '../fixtures/images/placeholder-600x400.png'
6
+ import { ThemeProvider } from '../ThemeProvider'
7
+ import { Box } from '../Box'
6
8
7
9
export default {
8
10
title : 'Components/Prose/Features' ,
@@ -13,7 +15,7 @@ export default {
13
15
viewports : INITIAL_VIEWPORTS ,
14
16
} ,
15
17
} ,
16
- } as ComponentMeta < typeof Prose >
18
+ } as Meta
17
19
18
20
const ExampleHtmlMarkup = `
19
21
<h2>Heading level 2</h2>
@@ -59,24 +61,53 @@ const ExampleHtmlMarkup = `
59
61
<p>Nunc velit odio, posuere eu felis eget, consectetur fermentum nisi. Aenean tempor odio id ornare ultrices. Quisque blandit condimentum tellus, semper efficitur sapien dapibus nec. </p>
60
62
`
61
63
62
- export const FullWidth : ComponentStory < typeof Prose > = ( ) => < Prose enableFullWidth html = { ExampleHtmlMarkup } />
64
+ export const FullWidth : StoryFn = ( ) => < Prose enableFullWidth html = { ExampleHtmlMarkup } />
63
65
64
- export const NarrowViewFullWidth : ComponentStory < typeof Prose > = ( ) => (
65
- < Prose enableFullWidth html = { ExampleHtmlMarkup } />
66
- )
66
+ export const NarrowViewFullWidth : StoryFn = ( ) => < Prose enableFullWidth html = { ExampleHtmlMarkup } />
67
67
NarrowViewFullWidth . parameters = {
68
68
viewport : {
69
69
defaultViewport : 'iphonexr' ,
70
70
} ,
71
71
}
72
72
NarrowViewFullWidth . storyName = 'Narrow view, full width (mobile)'
73
73
74
- export const RegularViewFullWidth : ComponentStory < typeof Prose > = ( ) => (
75
- < Prose enableFullWidth html = { ExampleHtmlMarkup } />
76
- )
74
+ export const RegularViewFullWidth : StoryFn = ( ) => < Prose enableFullWidth html = { ExampleHtmlMarkup } />
77
75
RegularViewFullWidth . parameters = {
78
76
viewport : {
79
77
defaultViewport : 'ipad10p' ,
80
78
} ,
81
79
}
82
80
RegularViewFullWidth . storyName = 'Regular view, full width (tablet)'
81
+
82
+ const UnorderedListHtmlMarkup = `
83
+ <ul>
84
+ <li>
85
+ Vivamus eu risus nec lectus consequat rutrum at vel lacus.
86
+ </li>
87
+ <li>
88
+ Donec at dolor ut metus imperdiet congue vel porta nunc.
89
+ </li>
90
+ <li>
91
+ Quisque eu tortor suscipit, congue quam in, bibendum tellus.
92
+ </li>
93
+ </ul>
94
+ `
95
+ const UnorderedListStory : StoryFn = args => < Prose { ...args } html = { UnorderedListHtmlMarkup } />
96
+ export const UnorderedList = UnorderedListStory . bind ( { } )
97
+ UnorderedList . args = {
98
+ darkMode : true ,
99
+ }
100
+ UnorderedList . argTypes = {
101
+ colorMode : {
102
+ darkMode : 'boolean' ,
103
+ } ,
104
+ }
105
+ UnorderedList . decorators = [
106
+ ( Story , { args : { darkMode} } ) => (
107
+ < ThemeProvider colorMode = { darkMode ? 'dark' : 'light' } >
108
+ < Box backgroundColor = "default" >
109
+ < Story />
110
+ </ Box >
111
+ </ ThemeProvider >
112
+ ) ,
113
+ ]
0 commit comments