aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/atoms/links/link.stories.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/atoms/links/link.stories.tsx')
-rw-r--r--src/components/atoms/links/link.stories.tsx79
1 files changed, 79 insertions, 0 deletions
diff --git a/src/components/atoms/links/link.stories.tsx b/src/components/atoms/links/link.stories.tsx
new file mode 100644
index 0000000..569c874
--- /dev/null
+++ b/src/components/atoms/links/link.stories.tsx
@@ -0,0 +1,79 @@
+import { ComponentMeta, ComponentStory } from '@storybook/react';
+import LinkComponent from './link';
+
+export default {
+ title: 'Atoms/Links',
+ component: LinkComponent,
+ argTypes: {
+ children: {
+ control: {
+ type: 'text',
+ },
+ description: 'The link body.',
+ type: {
+ name: 'string',
+ required: true,
+ },
+ },
+ className: {
+ control: {
+ type: 'text',
+ },
+ description: 'Set additional classnames.',
+ table: {
+ category: 'Styles',
+ },
+ type: {
+ name: 'string',
+ required: false,
+ },
+ },
+ external: {
+ control: {
+ type: 'boolean',
+ },
+ table: {
+ category: 'Options',
+ },
+ description: 'Determine if the link is external of the current website.',
+ type: {
+ name: 'boolean',
+ required: false,
+ },
+ },
+ href: {
+ control: {
+ type: 'text',
+ },
+ description: 'The link target.',
+ type: {
+ name: 'string',
+ required: true,
+ },
+ },
+ lang: {
+ control: {
+ type: 'text',
+ },
+ table: {
+ category: 'Options',
+ },
+ description: 'The target language as code language.',
+ type: {
+ name: 'string',
+ required: false,
+ },
+ },
+ },
+} as ComponentMeta<typeof LinkComponent>;
+
+const Template: ComponentStory<typeof LinkComponent> = (args) => (
+ <LinkComponent {...args} />
+);
+
+export const Link = Template.bind({});
+Link.args = {
+ children: 'A link',
+ href: '#',
+ external: false,
+};