import React from "react"; import type { Meta, StoryObj } from "@storybook/react"; import { Link, LinkTarget, LinkType } from "."; const meta = { title: "Components/Link", component: Link, parameters: { docs: { description: { component: `It is a link with 2 types: 1. page - simple link which refer to other pages and parts of current page; 2. action - link, which usually hasn't hyperlink and do anything on click - open dropdown, filter data, etc`, }, }, }, argTypes: { color: { control: "color" }, onClick: { action: "clickActionLink" }, }, } satisfies Meta; type Story = StoryObj; export default meta; export const Default: Story = { render: ({ label, onClick, href, ...args }) => { const actionProps = href && href.length > 0 ? { href } : { onClick }; return ( {label} ); }, args: { href: "http://github.com", label: "Simple label", type: LinkType.page, fontSize: "13px", fontWeight: "400", isBold: false, target: LinkTarget.blank, isHovered: false, noHover: false, isSemitransparent: false, isTextOverflow: false, }, }; export const AllTemplate: Story = { render: () => { const rowStyle = { marginTop: 8, fontSize: 12 }; const headerStyle = { padding: "8px 0 0 40px", fontSize: 16, }; return (
Page links:
Bold black page link
Black page link
Black hovered page link
Semitransparent black page link
Action links:
Bold black action link
Black action link
Black hovered action link
Semitransparent black action link
); }, };