@grantbii/design-system 1.18.1 → 1.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/core/archive/index.d.ts +0 -1
- package/core/archive/index.js +0 -1
- package/core/archive/index.js.map +1 -1
- package/core/atoms/Color.d.ts +45 -0
- package/core/atoms/Color.js +6 -0
- package/core/atoms/Color.js.map +1 -1
- package/core/atoms/Responsive.js +1 -0
- package/core/atoms/Responsive.js.map +1 -1
- package/core/atoms/Typography.d.ts +2 -1
- package/core/atoms/Typography.js.map +1 -1
- package/core/molecules/Button.d.ts +35 -12
- package/core/molecules/Button.js +139 -5
- package/core/molecules/Button.js.map +1 -1
- package/core/organisms/GrantMatch/ActiveQueryFiles.js +2 -2
- package/core/organisms/GrantMatch/ActiveQueryFiles.js.map +1 -1
- package/core/organisms/GrantMatch/GrantMatchModal.js +1 -1
- package/core/organisms/GrantMatch/GrantMatchModal.js.map +1 -1
- package/core/organisms/Modal.js +1 -1
- package/core/organisms/Modal.js.map +1 -1
- package/core/shared.d.ts +0 -13
- package/core/shared.js +0 -23
- package/core/shared.js.map +1 -1
- package/core/templates/ErrorFallback.js +1 -1
- package/core/templates/ErrorFallback.js.map +1 -1
- package/package.json +1 -1
- package/stories/molecules/Button.stories.d.ts +21 -3
- package/stories/molecules/Button.stories.js +149 -31
- package/stories/molecules/Button.stories.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/core/archive/LinkButton.d.ts +0 -20
- package/core/archive/LinkButton.js +0 -23
- package/core/archive/LinkButton.js.map +0 -1
- package/stories/archive/LinkButton.stories.d.ts +0 -10
- package/stories/archive/LinkButton.stories.js +0 -41
- package/stories/archive/LinkButton.stories.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorFallback.js","sourceRoot":"","sources":["../../../core/templates/ErrorFallback.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,SAAS,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAQtC,MAAM,aAAa,GAAG,CAAC,EACrB,YAAY,GAAG,qBAAqB,EACpC,gBAAgB,EAChB,aAAa,GACM,EAAE,EAAE,CAAC,CACxB,MAAC,iBAAiB,eAChB,KAAC,SAAS,IAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,GAAI,EAEzE,KAAC,SAAS,IACR,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,gBAAgB,GAClC,EAED,aAAa,CAAC,CAAC,CAAC,CACf,KAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"ErrorFallback.js","sourceRoot":"","sources":["../../../core/templates/ErrorFallback.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,SAAS,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAQtC,MAAM,aAAa,GAAG,CAAC,EACrB,YAAY,GAAG,qBAAqB,EACpC,gBAAgB,EAChB,aAAa,GACM,EAAE,EAAE,CAAC,CACxB,MAAC,iBAAiB,eAChB,KAAC,SAAS,IAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,GAAI,EAEzE,KAAC,SAAS,IACR,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,gBAAgB,GAClC,EAED,aAAa,CAAC,CAAC,CAAC,CACf,KAAC,MAAM,IAAC,KAAK,EAAC,WAAW,EAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAC,SAAS,GAAG,CACvE,CAAC,CAAC,CAAC,CACF,mBAAK,CACN,IACiB,CACrB,CAAC;AAEF,eAAe,aAAa,CAAC;AAE7B,MAAM,qBAAqB,GAAG,sBAAsB,CAAC;AAErD,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;sBAUd,KAAK,CAAC,OAAO,CAAC,KAAK;;oBAErB,UAAU,CAAC,iBAAiB,CAAC,MAAM;;;;;;;qBAOlC,UAAU,CAAC,iBAAiB,CAAC,MAAM;;;wBAGhC,KAAK,CAAC,OAAO,CAAC,KAAK;;;CAG1C,CAAC;AAEF,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;oBACX,UAAU,CAAC,iBAAiB,CAAC,MAAM;;;;;qBAKlC,UAAU,CAAC,iBAAiB,CAAC,MAAM;;;;CAIvD,CAAC;AAOF,MAAM,SAAS,GAAG,CAAC,EACjB,YAAY,EACZ,gBAAgB,GACO,EAAE,EAAE,CAAC,CAC5B,MAAC,aAAa,eACZ,KAAC,YAAY,cAAE,YAAY,GAAgB,EAE1C,gBAAgB,CAAC,CAAC,CAAC,CAClB,KAAC,gBAAgB,cAAE,gBAAgB,GAAoB,CACxD,CAAC,CAAC,CAAC,CACF,mBAAK,CACN,IACa,CACjB,CAAC;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;CAO/B,CAAC;AAEF,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAA;IACzB,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC;CACvC,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAA;IAC/B,eAAe,CAAC,UAAU,CAAC,kBAAkB,CAAC;CACjD,CAAC","sourcesContent":["import Image from \"next/image\";\nimport type { MouseEventHandler, ReactNode } from \"react\";\nimport styled from \"styled-components\";\nimport errorLogo from \"../assets/logos/error_logo.webp\";\nimport { Color, Responsive, Typography } from \"../atoms\";\nimport { applyTypography } from \"../integrations\";\nimport { Button } from \"../molecules\";\n\ntype ErrorFallbackProps = {\n errorMessage?: string;\n errorDescription?: ReactNode;\n onClickReload?: MouseEventHandler<HTMLButtonElement>;\n};\n\nconst ErrorFallback = ({\n errorMessage = DEFAULT_ERROR_MESSAGE,\n errorDescription,\n onClickReload,\n}: ErrorFallbackProps) => (\n <BaseErrorFallback>\n <ErrorLogo src={errorLogo} width={693} height={641} alt={errorMessage} />\n\n <ErrorText\n errorMessage={errorMessage}\n errorDescription={errorDescription}\n />\n\n {onClickReload ? (\n <Button label=\"Try Again\" onClick={onClickReload} variant=\"outline\" />\n ) : (\n <></>\n )}\n </BaseErrorFallback>\n);\n\nexport default ErrorFallback;\n\nconst DEFAULT_ERROR_MESSAGE = \"Something went wrong\";\n\nconst BaseErrorFallback = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n\n width: 100%;\n height: 100%;\n padding: 24px;\n\n background-color: ${Color.neutral.white};\n\n @media (width < ${Responsive.WIDTH_BREAKPOINTS.laptop}) {\n gap: 16px;\n\n border: none;\n border-radius: 0px;\n }\n\n @media (width >= ${Responsive.WIDTH_BREAKPOINTS.laptop}) {\n gap: 24px;\n\n border: 1px solid ${Color.neutral.grey3};\n border-radius: 12px;\n }\n`;\n\nconst ErrorLogo = styled(Image)`\n @media (width < ${Responsive.WIDTH_BREAKPOINTS.laptop}) {\n width: 151px;\n height: 140px;\n }\n\n @media (width >= ${Responsive.WIDTH_BREAKPOINTS.laptop}) {\n width: 173px;\n height: 160px;\n }\n`;\n\ntype LoadingFailedTextProps = {\n errorMessage: string;\n errorDescription?: ReactNode;\n};\n\nconst ErrorText = ({\n errorMessage,\n errorDescription,\n}: LoadingFailedTextProps) => (\n <BaseErrorText>\n <ErrorMessage>{errorMessage}</ErrorMessage>\n\n {errorDescription ? (\n <ErrorDescription>{errorDescription}</ErrorDescription>\n ) : (\n <></>\n )}\n </BaseErrorText>\n);\n\nconst BaseErrorText = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n\n text-align: center;\n`;\n\nconst ErrorMessage = styled.p`\n ${applyTypography(Typography.heading3)}\n`;\n\nconst ErrorDescription = styled.div`\n ${applyTypography(Typography.bodyPrimaryRegular)}\n`;\n"]}
|
package/package.json
CHANGED
|
@@ -3,9 +3,27 @@ import type { Meta, StoryObj } from "@storybook/nextjs-vite";
|
|
|
3
3
|
declare const meta: Meta<typeof Button>;
|
|
4
4
|
export default meta;
|
|
5
5
|
type Story = StoryObj<typeof meta>;
|
|
6
|
+
export declare const Primary: Story;
|
|
7
|
+
export declare const DisabledPrimary: Story;
|
|
8
|
+
export declare const Secondary: Story;
|
|
9
|
+
export declare const DisabledSecondary: Story;
|
|
10
|
+
export declare const Tertiary: Story;
|
|
11
|
+
export declare const DisabledTertiary: Story;
|
|
12
|
+
export declare const Outline: Story;
|
|
13
|
+
export declare const DisabledOutline: Story;
|
|
14
|
+
export declare const Ghost: Story;
|
|
15
|
+
export declare const DisabledGhost: Story;
|
|
16
|
+
export declare const Text: Story;
|
|
17
|
+
export declare const DisabledText: Story;
|
|
18
|
+
export declare const Danger: Story;
|
|
19
|
+
export declare const DisabledDanger: Story;
|
|
20
|
+
export declare const Small: Story;
|
|
21
|
+
export declare const Medium: Story;
|
|
22
|
+
export declare const Large: Story;
|
|
6
23
|
export declare const TextOnly: Story;
|
|
7
24
|
export declare const LeftIcon: Story;
|
|
8
25
|
export declare const RightIcon: Story;
|
|
9
|
-
export declare const
|
|
10
|
-
export declare const
|
|
11
|
-
export declare const
|
|
26
|
+
export declare const ActionIcon: Story;
|
|
27
|
+
export declare const WithHref: Story;
|
|
28
|
+
export declare const HrefDisabled: Story;
|
|
29
|
+
export declare const CustomLabel: Story;
|
|
@@ -1,59 +1,177 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Button,
|
|
3
|
-
import styled from "styled-components";
|
|
2
|
+
import { Button, SystemIcon, Flags } from "@/.";
|
|
4
3
|
const meta = {
|
|
5
4
|
title: "Molecules/Button",
|
|
6
5
|
component: Button,
|
|
7
6
|
tags: ["autodocs"],
|
|
8
7
|
};
|
|
9
8
|
export default meta;
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
const onClick = () => alert("Button Clicked");
|
|
10
|
+
export const Primary = {
|
|
11
|
+
args: {
|
|
12
|
+
onClick,
|
|
13
|
+
label: "Primary",
|
|
14
|
+
variant: "primary",
|
|
15
|
+
Icon: SystemIcon.PlusIcon,
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
export const DisabledPrimary = {
|
|
19
|
+
args: {
|
|
20
|
+
onClick,
|
|
21
|
+
label: "Primary (Disabled)",
|
|
22
|
+
variant: "primary",
|
|
23
|
+
Icon: SystemIcon.PlusIcon,
|
|
24
|
+
disabled: true,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
export const Secondary = {
|
|
28
|
+
args: {
|
|
29
|
+
onClick,
|
|
30
|
+
label: "Secondary",
|
|
31
|
+
variant: "secondary",
|
|
32
|
+
Icon: SystemIcon.PlusIcon,
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
export const DisabledSecondary = {
|
|
36
|
+
args: {
|
|
37
|
+
onClick,
|
|
38
|
+
label: "Secondary (Disabled)",
|
|
39
|
+
variant: "secondary",
|
|
40
|
+
Icon: SystemIcon.PlusIcon,
|
|
41
|
+
disabled: true,
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
export const Tertiary = {
|
|
45
|
+
args: {
|
|
46
|
+
onClick,
|
|
47
|
+
label: "Tertiary",
|
|
48
|
+
variant: "tertiary",
|
|
49
|
+
Icon: SystemIcon.PlusIcon,
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
export const DisabledTertiary = {
|
|
53
|
+
args: {
|
|
54
|
+
onClick,
|
|
55
|
+
label: "Tertiary (Disabled)",
|
|
56
|
+
variant: "tertiary",
|
|
57
|
+
Icon: SystemIcon.PlusIcon,
|
|
58
|
+
disabled: true,
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
export const Outline = {
|
|
62
|
+
args: {
|
|
63
|
+
onClick,
|
|
64
|
+
label: "Outline",
|
|
65
|
+
variant: "outline",
|
|
66
|
+
Icon: SystemIcon.PlusIcon,
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
export const DisabledOutline = {
|
|
70
|
+
args: {
|
|
71
|
+
onClick,
|
|
72
|
+
label: "Outline (Disabled)",
|
|
73
|
+
variant: "outline",
|
|
74
|
+
Icon: SystemIcon.PlusIcon,
|
|
75
|
+
disabled: true,
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
export const Ghost = {
|
|
79
|
+
args: {
|
|
80
|
+
onClick,
|
|
81
|
+
label: "Ghost",
|
|
82
|
+
variant: "ghost",
|
|
83
|
+
Icon: SystemIcon.PlusIcon,
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
export const DisabledGhost = {
|
|
87
|
+
args: {
|
|
88
|
+
onClick,
|
|
89
|
+
label: "Ghost (Disabled)",
|
|
90
|
+
variant: "ghost",
|
|
91
|
+
Icon: SystemIcon.PlusIcon,
|
|
92
|
+
disabled: true,
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
export const Text = {
|
|
96
|
+
args: { onClick, label: "Text", variant: "text", Icon: SystemIcon.PlusIcon },
|
|
97
|
+
};
|
|
98
|
+
export const DisabledText = {
|
|
99
|
+
args: {
|
|
100
|
+
onClick,
|
|
101
|
+
label: "Text (Disabled)",
|
|
102
|
+
variant: "text",
|
|
103
|
+
Icon: SystemIcon.PlusIcon,
|
|
104
|
+
disabled: true,
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
export const Danger = {
|
|
108
|
+
args: {
|
|
109
|
+
onClick,
|
|
110
|
+
label: "Danger",
|
|
111
|
+
variant: "danger",
|
|
112
|
+
Icon: SystemIcon.PlusIcon,
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
export const DisabledDanger = {
|
|
116
|
+
args: {
|
|
117
|
+
onClick,
|
|
118
|
+
label: "Danger (Disabled)",
|
|
119
|
+
variant: "danger",
|
|
120
|
+
Icon: SystemIcon.PlusIcon,
|
|
121
|
+
disabled: true,
|
|
122
|
+
},
|
|
123
|
+
};
|
|
124
|
+
export const Small = {
|
|
125
|
+
args: { onClick, label: "Small", size: "small", Icon: SystemIcon.PlusIcon },
|
|
126
|
+
};
|
|
127
|
+
export const Medium = {
|
|
128
|
+
args: { onClick, label: "Medium", size: "medium", Icon: SystemIcon.PlusIcon },
|
|
129
|
+
};
|
|
130
|
+
export const Large = {
|
|
131
|
+
args: { onClick, label: "Large", size: "large", Icon: SystemIcon.PlusIcon },
|
|
13
132
|
};
|
|
14
133
|
export const TextOnly = {
|
|
15
|
-
args:
|
|
134
|
+
args: { onClick, label: "Text Only" },
|
|
16
135
|
};
|
|
17
136
|
export const LeftIcon = {
|
|
18
137
|
args: {
|
|
19
|
-
|
|
20
|
-
|
|
138
|
+
onClick,
|
|
139
|
+
label: "Left Icon",
|
|
140
|
+
Icon: SystemIcon.PlusIcon,
|
|
141
|
+
iconRight: false,
|
|
21
142
|
},
|
|
22
143
|
};
|
|
23
144
|
export const RightIcon = {
|
|
24
145
|
args: {
|
|
25
|
-
|
|
26
|
-
|
|
146
|
+
onClick,
|
|
147
|
+
label: "Right Icon",
|
|
148
|
+
Icon: SystemIcon.PlusIcon,
|
|
149
|
+
iconRight: true,
|
|
27
150
|
},
|
|
28
151
|
};
|
|
29
|
-
export const
|
|
152
|
+
export const ActionIcon = {
|
|
153
|
+
args: { onClick, Icon: SystemIcon.PlusIcon },
|
|
154
|
+
};
|
|
155
|
+
export const WithHref = {
|
|
30
156
|
args: {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
157
|
+
label: "Opens grantbii.com",
|
|
158
|
+
href: "https://grantbii.com",
|
|
159
|
+
target: "_blank",
|
|
34
160
|
},
|
|
35
161
|
};
|
|
36
|
-
export const
|
|
162
|
+
export const HrefDisabled = {
|
|
37
163
|
args: {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
164
|
+
label: "Opens grantbii.com",
|
|
165
|
+
href: "https://grantbii.com",
|
|
166
|
+
target: "_blank",
|
|
167
|
+
disabled: true,
|
|
41
168
|
},
|
|
42
169
|
};
|
|
43
|
-
const
|
|
44
|
-
display: flex;
|
|
45
|
-
align-items: center;
|
|
46
|
-
justify-content: space-between;
|
|
47
|
-
|
|
48
|
-
width: 200px;
|
|
49
|
-
`;
|
|
50
|
-
export const GrantObjectivesFilter = {
|
|
170
|
+
export const CustomLabel = {
|
|
51
171
|
args: {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
onClick: () => alert("You have clicked on the button."),
|
|
56
|
-
label: (_jsxs(Content, { children: [_jsx("p", { children: "Select grant objectives" }), _jsx(SystemIcon.CaretRightIcon, { size: 20 })] })),
|
|
172
|
+
onClick,
|
|
173
|
+
label: (_jsxs("span", { children: [_jsx(Flags.SG, { width: 20 }), " Singapore"] })),
|
|
174
|
+
variant: "outline",
|
|
57
175
|
},
|
|
58
176
|
};
|
|
59
177
|
//# sourceMappingURL=Button.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.stories.js","sourceRoot":"","sources":["../../../stories/molecules/Button.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"Button.stories.js","sourceRoot":"","sources":["../../../stories/molecules/Button.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Button, SystemIcon, Flags } from \"@/.\";\nimport type { Meta, StoryObj } from \"@storybook/nextjs-vite\";\n\nconst meta: Meta<typeof Button> = {\n title: \"Molecules/Button\",\n component: Button,\n tags: [\"autodocs\"],\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nconst onClick = () => alert(\"Button Clicked\");\n\nexport const Primary: Story = {\n args: {\n onClick,\n label: \"Primary\",\n variant: \"primary\",\n Icon: SystemIcon.PlusIcon,\n },\n};\n\nexport const DisabledPrimary: Story = {\n args: {\n onClick,\n label: \"Primary (Disabled)\",\n variant: \"primary\",\n Icon: SystemIcon.PlusIcon,\n disabled: true,\n },\n};\n\nexport const Secondary: Story = {\n args: {\n onClick,\n label: \"Secondary\",\n variant: \"secondary\",\n Icon: SystemIcon.PlusIcon,\n },\n};\n\nexport const DisabledSecondary: Story = {\n args: {\n onClick,\n label: \"Secondary (Disabled)\",\n variant: \"secondary\",\n Icon: SystemIcon.PlusIcon,\n disabled: true,\n },\n};\n\nexport const Tertiary: Story = {\n args: {\n onClick,\n label: \"Tertiary\",\n variant: \"tertiary\",\n Icon: SystemIcon.PlusIcon,\n },\n};\n\nexport const DisabledTertiary: Story = {\n args: {\n onClick,\n label: \"Tertiary (Disabled)\",\n variant: \"tertiary\",\n Icon: SystemIcon.PlusIcon,\n disabled: true,\n },\n};\n\nexport const Outline: Story = {\n args: {\n onClick,\n label: \"Outline\",\n variant: \"outline\",\n Icon: SystemIcon.PlusIcon,\n },\n};\n\nexport const DisabledOutline: Story = {\n args: {\n onClick,\n label: \"Outline (Disabled)\",\n variant: \"outline\",\n Icon: SystemIcon.PlusIcon,\n disabled: true,\n },\n};\n\nexport const Ghost: Story = {\n args: {\n onClick,\n label: \"Ghost\",\n variant: \"ghost\",\n Icon: SystemIcon.PlusIcon,\n },\n};\n\nexport const DisabledGhost: Story = {\n args: {\n onClick,\n label: \"Ghost (Disabled)\",\n variant: \"ghost\",\n Icon: SystemIcon.PlusIcon,\n disabled: true,\n },\n};\n\nexport const Text: Story = {\n args: { onClick, label: \"Text\", variant: \"text\", Icon: SystemIcon.PlusIcon },\n};\n\nexport const DisabledText: Story = {\n args: {\n onClick,\n label: \"Text (Disabled)\",\n variant: \"text\",\n Icon: SystemIcon.PlusIcon,\n disabled: true,\n },\n};\n\nexport const Danger: Story = {\n args: {\n onClick,\n label: \"Danger\",\n variant: \"danger\",\n Icon: SystemIcon.PlusIcon,\n },\n};\n\nexport const DisabledDanger: Story = {\n args: {\n onClick,\n label: \"Danger (Disabled)\",\n variant: \"danger\",\n Icon: SystemIcon.PlusIcon,\n disabled: true,\n },\n};\n\nexport const Small: Story = {\n args: { onClick, label: \"Small\", size: \"small\", Icon: SystemIcon.PlusIcon },\n};\n\nexport const Medium: Story = {\n args: { onClick, label: \"Medium\", size: \"medium\", Icon: SystemIcon.PlusIcon },\n};\n\nexport const Large: Story = {\n args: { onClick, label: \"Large\", size: \"large\", Icon: SystemIcon.PlusIcon },\n};\n\nexport const TextOnly: Story = {\n args: { onClick, label: \"Text Only\" },\n};\n\nexport const LeftIcon: Story = {\n args: {\n onClick,\n label: \"Left Icon\",\n Icon: SystemIcon.PlusIcon,\n iconRight: false,\n },\n};\n\nexport const RightIcon: Story = {\n args: {\n onClick,\n label: \"Right Icon\",\n Icon: SystemIcon.PlusIcon,\n iconRight: true,\n },\n};\n\nexport const ActionIcon: Story = {\n args: { onClick, Icon: SystemIcon.PlusIcon },\n};\n\nexport const WithHref: Story = {\n args: {\n label: \"Opens grantbii.com\",\n href: \"https://grantbii.com\",\n target: \"_blank\",\n },\n};\n\nexport const HrefDisabled: Story = {\n args: {\n label: \"Opens grantbii.com\",\n href: \"https://grantbii.com\",\n target: \"_blank\",\n disabled: true,\n },\n};\n\nexport const CustomLabel: Story = {\n args: {\n onClick,\n label: (\n <span>\n <Flags.SG width={20} /> Singapore\n </span>\n ),\n variant: \"outline\",\n },\n};\n"]}
|