/
MutationButton.stories.tsx
41 lines (39 loc) · 1.09 KB
/
MutationButton.stories.tsx
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
import React from "react";
import { Story, Meta } from "@storybook/react";
import { MutationButton, MutationButtonProps } from "../MutationButton";
import { gql } from "graphql-tag";
import { VulcanComponentsProvider } from "../VulcanComponents";
export default {
component: MutationButton,
title: "MutationButton",
decorators: [
(Story) => (
<VulcanComponentsProvider>
<Story />
</VulcanComponentsProvider>
),
],
args: {
mutation: gql`
mutation sampleMutation($input: Input) {
hello
}
`,
mutationArguments: { input: { foo: "bar" } },
loadingButtonProps: {
label: "Click me",
},
},
parameters: { actions: { argTypesRegex: "^.*Callback$" } },
} as Meta<MutationButtonProps>;
const MutationButtonTemplate: Story<MutationButtonProps> = (args) => (
<MutationButton {...args} />
);
export const DefaultMutationButton = MutationButtonTemplate.bind({});
export const WithClassName = MutationButtonTemplate.bind({});
WithClassName.args = {
loadingButtonProps: {
label: "Click me",
className: "btn btn-primary",
},
};