Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 

154 Zeilen
3.4 KiB

  1. import {createTeaser} from "./TeaserComponent";
  2. export default {
  3. title: 'Components/Teaser',
  4. args: {
  5. type: 'regular',
  6. kicker: 'Fachkräfte',
  7. headline: 'Anteil der Frauen im Bereich Engineering steigt',
  8. copy: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita, no sea takimata sanctus est.',
  9. imageSrc: './dummy/placeholder-3-2.svg',
  10. copyright: '@ shutterstock.com',
  11. showReadingTime: false,
  12. link: '#',
  13. imageSize: 'large',
  14. chartTitle: 'Chart-Titel des Teasers',
  15. linkType: null,
  16. },
  17. argTypes: {
  18. type: {
  19. name: 'Teaser-Typ',
  20. control: 'select',
  21. options: ['regular', 'hero', 'text', 'fullwidth', 'chart', 'picto', 'pictoHero'],
  22. },
  23. link: {
  24. name: 'Link',
  25. },
  26. imageSrc: {
  27. name: 'Bild-Url',
  28. },
  29. copyright: {
  30. name: 'Copyright-Text',
  31. },
  32. kicker: {
  33. name: 'Dachzeile',
  34. },
  35. headline: {
  36. name: 'Überschrift',
  37. },
  38. copy: {
  39. name: 'Kurztext',
  40. },
  41. showReadingTime: {
  42. name: 'Lesezeit anzeigen',
  43. },
  44. imageSize: {
  45. name: 'Bildgröße',
  46. control: 'select',
  47. options: ['large', 'medium', 'small'],
  48. },
  49. chartTitle: {
  50. name: 'Chart Titel',
  51. },
  52. linkType: {
  53. name: 'Link Typ',
  54. control: 'select',
  55. options: ['extern', 'download', 'intranet', 'extranet'],
  56. }
  57. }
  58. }
  59. const Template = ({...args}) => {
  60. return createTeaser({...args});
  61. };
  62. export const RegularTeaser = Template.bind({});
  63. RegularTeaser.args = {
  64. type: 'regular',
  65. };
  66. export const HeroTeaser = Template.bind({});
  67. HeroTeaser.args = {
  68. type: 'hero',
  69. };
  70. export const TextTeaser = Template.bind({});
  71. TextTeaser.args = {
  72. type: 'text',
  73. };
  74. export const ChartTeaser = Template.bind({});
  75. ChartTeaser.args = {
  76. type: 'chart',
  77. imageSrc: null,
  78. };
  79. export const PictoTeaser = Template.bind({});
  80. PictoTeaser.args = {
  81. type: 'picto',
  82. picto: 'pictogram-bueroklammer',
  83. };
  84. export const PictoTeaserWithText = Template.bind({});
  85. PictoTeaserWithText.args = {
  86. type: 'picto',
  87. picto: 'pictogram-bueroklammer',
  88. pictoText: true
  89. };
  90. export const PictoHeroTeaser = Template.bind({});
  91. PictoHeroTeaser.args = {
  92. type: 'pictoHero',
  93. picto: 'pictogram-bueroklammer',
  94. };
  95. export const PictoHeroTeaserWithText = Template.bind({});
  96. PictoHeroTeaserWithText.args = {
  97. type: 'pictoHero',
  98. picto: 'pictogram-bueroklammer',
  99. pictoText: true
  100. };
  101. export const ExternalTeaser = Template.bind({});
  102. ExternalTeaser.args = {
  103. linkType: 'extern',
  104. };
  105. export const GalleryTeaser = Template.bind({});
  106. GalleryTeaser.args = {
  107. linkType: 'gallery',
  108. };
  109. export const InteractionTeaser = Template.bind({});
  110. InteractionTeaser.args = {
  111. linkType: 'interaction',
  112. };
  113. export const VideoTeaser = Template.bind({});
  114. VideoTeaser.args = {
  115. linkType: 'video',
  116. };
  117. export const FullwidthTeaserLarge = Template.bind({});
  118. FullwidthTeaserLarge.args = {
  119. type: 'fullwidth',
  120. showReadingTime: true,
  121. imageSize: 'large',
  122. };
  123. export const FullwidthTeaserMedium = Template.bind({});
  124. FullwidthTeaserMedium.args = {
  125. type: 'fullwidth',
  126. showReadingTime: true,
  127. imageSize: 'medium',
  128. };
  129. export const FullwidthTeaserSmall = Template.bind({});
  130. FullwidthTeaserSmall.args = {
  131. type: 'fullwidth',
  132. showReadingTime: true,
  133. imageSize: 'small',
  134. };