aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/molecules/layout/page-header.stories.tsx
blob: ea943bf6d3f0eff004eb201b92fb4cf3650f0463 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
import { ComponentMeta, ComponentStory } from '@storybook/react';
import { PageHeader } from './page-header';

/**
 * Page Header - Storybook Meta
 */
export default {
  title: 'Molecules/Layout/PageHeader',
  component: PageHeader,
  argTypes: {
    className: {
      control: {
        type: 'text',
      },
      description: 'Set additional classnames to the header element.',
      table: {
        category: 'Styles',
      },
      type: {
        name: 'string',
        required: false,
      },
    },
    intro: {
      control: {
        type: 'text',
      },
      description: 'The page introduction.',
      table: {
        category: 'Options',
      },
      type: {
        name: 'string',
        required: false,
      },
    },
    meta: {
      description: 'The page metadata.',
      table: {
        category: 'Options',
      },
      type: {
        name: 'object',
        required: false,
        value: {},
      },
    },
    title: {
      control: {
        type: 'text',
      },
      description: 'The page title.',
      type: {
        name: 'string',
        required: true,
      },
    },
  },
} as ComponentMeta<typeof PageHeader>;

const Template: ComponentStory<typeof PageHeader> = (args) => (
  <PageHeader {...args} />
);

const meta = {
  publication: { date: '2022-04-09' },
  thematics: [
    <a key="category1" href="#">
      Category 1
    </a>,
    <a key="category2" href="#">
      Category 2
    </a>,
  ],
};

/**
 * Page Header Stories - Default
 */
export const Default = Template.bind({});
Default.args = {
  title: 'Excepturi nesciunt illum',
};

/**
 * Page Header Stories - With introduction
 */
export const WithIntro = Template.bind({});
WithIntro.args = {
  intro:
    'Minima dolor nihil. Velit atque odit totam enim. Quisquam reprehenderit ut et inventore et nihil libero exercitationem. Cumque similique magni placeat et. Et sed est cumque labore. Et quia similique.',
  title: 'Excepturi nesciunt illum',
};

/**
 * Page Header Stories - With meta
 */
export const WithMeta = Template.bind({});
WithMeta.args = {
  meta,
  title: 'Excepturi nesciunt illum',
};

/**
 * Page Header Stories - With introduction and meta
 */
export const WithIntroAndMeta = Template.bind({});
WithIntroAndMeta.args = {
  intro:
    'Minima dolor nihil. Velit atque odit totam enim. Quisquam reprehenderit ut et inventore et nihil libero exercitationem. Cumque similique magni placeat et. Et sed est cumque labore. Et quia similique.',
  meta,
  title: 'Excepturi nesciunt illum',
};