Skip to content

chore: RSP storybook updates #8391

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 22 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@
* governing permissions and limitations under the License.
*/

import {Meta} from '@storybook/react';
import {Meta, StoryObj} from '@storybook/react';
import React from 'react';
import {SpectrumAccordionProps} from '../src/Accordion';
import {Template} from '../chromatic/Accordion.stories';

Expand All @@ -20,7 +21,9 @@ const meta: Meta<SpectrumAccordionProps> = {

export default meta;

export const Default = {
render: Template,
export type AccordionStory = StoryObj<SpectrumAccordionProps>;

export const Default: AccordionStory = {
render: (args) => <Template {...args} />,
args: {defaultExpandedKeys: ['shared']}
};
32 changes: 17 additions & 15 deletions packages/@react-spectrum/accordion/chromatic/Accordion.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
* governing permissions and limitations under the License.
*/

import {Accordion, Disclosure, DisclosurePanel, DisclosureTitle} from '../';
import {Meta} from '@storybook/react';
import React from 'react';
import {Accordion, Disclosure, DisclosurePanel, DisclosureTitle, SpectrumAccordionProps} from '../';
import {Meta, StoryObj} from '@storybook/react';
import React, {JSX} from 'react';

const meta: Meta = {
title: 'Accordion',
Expand All @@ -22,7 +22,9 @@ const meta: Meta = {

export default meta;

export const Template = (args) => (
export type AccordionStory = StoryObj<SpectrumAccordionProps>;

export const Template = (args: SpectrumAccordionProps): JSX.Element => (
<Accordion {...args}>
<Disclosure id="files">
<DisclosureTitle>
Expand Down Expand Up @@ -51,16 +53,16 @@ export const Template = (args) => (
</Accordion>
);

export const Default = {
render: Template
export const Default: AccordionStory = {
render: (args) => <Template {...args} />
};

export const WithExpandedKeys = {
render: Template,
export const WithExpandedKeys: AccordionStory = {
render: (args) => <Template {...args} />,
args: {defaultExpandedKeys: ['shared']}
};

export const WithDisabledDisclosure = {
export const WithDisabledDisclosure: AccordionStory = {
render: (args) => (
<Accordion {...args}>
<Disclosure id="files">
Expand Down Expand Up @@ -90,22 +92,22 @@ export const WithDisabledDisclosure = {
</Accordion>)
};

export const Disabled = {
render: Template,
export const Disabled: AccordionStory = {
render: (args) => <Template {...args} />,
args: {isDisabled: true}
};

export const Quiet = {
render: Template,
export const Quiet: AccordionStory = {
render: (args) => <Template {...args} />,
args: {isQuiet: true}
};

export const WithWrappingTitle = {
export const WithWrappingTitle: AccordionStory = {
render: (args) => (
<Accordion maxWidth="size-3000" {...args}>
<Disclosure id="files">
<DisclosureTitle>
Long long long long long long long long long long long long long long long long wrapping title
Long long long long long long long long long long long long long long long long wrapping title
</DisclosureTitle>
<DisclosurePanel>
Files content
Expand Down
44 changes: 24 additions & 20 deletions packages/@react-spectrum/accordion/chromatic/Disclosure.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
* governing permissions and limitations under the License.
*/

import {Disclosure, DisclosurePanel, DisclosureTitle} from '../';
import {Meta} from '@storybook/react';
import React from 'react';
import {Disclosure, DisclosurePanel, DisclosureTitle, SpectrumDisclosureProps} from '../';
import {Meta, StoryObj} from '@storybook/react';
import React, {JSX} from 'react';

const meta: Meta = {
title: 'Disclosure',
Expand All @@ -22,7 +22,9 @@ const meta: Meta = {

export default meta;

export const Template = (args) => (
export type DisclosureStory = StoryObj<SpectrumDisclosureProps>;

export const Template = (args: SpectrumDisclosureProps): JSX.Element => (
<Disclosure {...args}>
<DisclosureTitle>
Your files
Expand All @@ -33,27 +35,29 @@ export const Template = (args) => (
</Disclosure>
);

export const Default = {
render: Template
export const Default: DisclosureStory = {
render: (args) => <Template {...args} />
};

export const Disabled = {
render: Template,
export const Disabled: DisclosureStory = {
render: (args) => <Template {...args} />,
args: {isDisabled: true}
};

export const Quiet = {
render: Template,
export const Quiet: DisclosureStory = {
render: (args) => <Template {...args} />,
args: {isQuiet: true}
};

export const WrappingTitle = (args) => (
<Disclosure maxWidth="size-3000" {...args}>
<DisclosureTitle>
Long long long long long long long long long long long long long long long long wrapping title
</DisclosureTitle>
<DisclosurePanel>
Files content
</DisclosurePanel>
</Disclosure>
);
export const WrappingTitle: DisclosureStory = {
render: (args) => (
<Disclosure maxWidth="size-3000" {...args}>
<DisclosureTitle>
Long long long long long long long long long long long long long long long long wrapping title
</DisclosureTitle>
<DisclosurePanel>
Files content
</DisclosurePanel>
</Disclosure>
)
};
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,26 @@
* governing permissions and limitations under the License.
*/

import {Default, LargeWidth} from '../chromatic/ActionBar.stories';
import {Example} from '../stories/Example';
import {Flex} from '@react-spectrum/layout';
import React from 'react';
import {StoryFn} from '@storybook/react';

export default {
title: 'ActionBar'
};

export const All = () => (
export type ActionBarStory = StoryFn<typeof Example>;

export const All: ActionBarStory = () => (
<Flex gap="size-100" direction={'column'}>
<h2>Default</h2>
<Default />
<Flex gap="size-250">
<Example />
<Example defaultSelectedKeys={new Set(['Foo 1'])} />
</Flex>
<h2>Large width</h2>
<LargeWidth />
<Example isEmphasized tableWidth={800} isQuiet defaultSelectedKeys={new Set(['Foo 1'])} />
</Flex>
);
All.story = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,15 @@
import {Example, Example2} from '../stories/Example';
import {Flex} from '@react-spectrum/layout';
import React from 'react';
import {StoryFn} from '@storybook/react';

export default {
title: 'ActionBar'
};

export const Default = () => (
export type ActionBarStory = StoryFn<typeof Example>;

export const Default: ActionBarStory = () => (
<Flex gap="size-250">
<Example />
<Example defaultSelectedKeys={new Set(['Foo 1'])} />
Expand All @@ -29,28 +32,28 @@ Default.story = {
name: 'default'
};

export const IsEmphasized = () => <Example isEmphasized defaultSelectedKeys={new Set(['Foo 1'])} />;
export const IsEmphasized: ActionBarStory = () => <Example isEmphasized defaultSelectedKeys={new Set(['Foo 1'])} />;

IsEmphasized.story = {
name: 'isEmphasized'
};

export const LargeWidth = () => (
export const LargeWidth: ActionBarStory = () => (
<Example isEmphasized tableWidth={800} isQuiet defaultSelectedKeys={new Set(['Foo 1'])} />
);

LargeWidth.story = {
name: 'large width'
};

export const CollapsedIcons = () => (
export const CollapsedIcons: ActionBarStory = () => (
<Example isEmphasized tableWidth={500} isQuiet defaultSelectedKeys={new Set(['Foo 1'])} />
);

CollapsedIcons.story = {
name: 'collapsed icons'
};

export const CollapseRounding = () => (
export const CollapseRounding: ActionBarStory = () => (
<Example2 tableWidth={800} defaultSelectedKeys={new Set(['Foo 1'])} />
);
6 changes: 3 additions & 3 deletions packages/@react-spectrum/actionbar/stories/Example.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import Duplicate from '@spectrum-icons/workflow/Duplicate';
import Edit from '@spectrum-icons/workflow/Edit';
import {mergeProps} from '@react-aria/utils';
import Move from '@spectrum-icons/workflow/Move';
import React, {useRef, useState} from 'react';
import React, {JSX, useRef, useState} from 'react';
import {Selection} from '@react-types/shared';
import {Text} from '@react-spectrum/text';

Expand Down Expand Up @@ -48,7 +48,7 @@ let defaultItems = [
{test: 'Test 2', foo: 'Foo 16', bar: 'Bar 2', yay: 'Yay 2', baz: 'Baz 2'}
];

export function Example(props: any = {}) {
export function Example(props: any = {}): JSX.Element {
const [selectedKeys, setSelectedKeys] = useState<Selection>(props.defaultSelectedKeys || new Set());
let [items, setItems] = useState(defaultItems);

Expand Down Expand Up @@ -118,7 +118,7 @@ export function Example(props: any = {}) {
);
}

export function Example2(props: any = {}) {
export function Example2(props: any = {}): JSX.Element {
const [selectedKeys, setSelectedKeys] = useState<Selection>(props.defaultSelectedKeys || new Set());
let [items, setItems] = useState(defaultItems);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,32 +11,41 @@
*/


import {Compact, Default, IsDisabled, IsEmphasized, IsQuiet, StaticColorBlack, StaticColorWhite} from '../chromatic/ActionGroup.stories';
import {docItems, editItems, Render, viewItems} from '../chromatic/ActionGroup.stories';
import {Flex} from '@react-spectrum/layout';
import React from 'react';
import {StoryFn} from '@storybook/react';
import {View} from '@react-spectrum/view';

export default {
title: 'ActionGroup'
};

export const All = () => (
export type ActionGroupStory = StoryFn<typeof Render>;

export const All: ActionGroupStory = () => (
<Flex gap="size-100" direction={'column'}>
<h2>default</h2>
<Default />
<Render items={docItems} />
<h2>isDisabled</h2>
<IsDisabled />
<Render items={docItems} isDisabled defaultSelectedKeys={['1']} />
<h2>compact</h2>
<Compact />
<Render items={viewItems} density="compact" defaultSelectedKeys={['1']} />
<h2>isQuiet</h2>
<IsQuiet />
<Render items={editItems} isQuiet defaultSelectedKeys={['1']} />
<h2>isEmphasized</h2>
<IsEmphasized />
<Render items={docItems} isEmphasized defaultSelectedKeys={['1']} />
<h2>staticColor: black</h2>
<StaticColorBlack />
<View backgroundColor="static-yellow-400" padding="size-1000">
<Render items={viewItems} staticColor="black" defaultSelectedKeys={['1']} />
</View>
<h2>staticColor: white</h2>
<StaticColorWhite />
<View backgroundColor="static-blue-700" padding="size-1000">
<Render items={viewItems} staticColor="white" defaultSelectedKeys={['1']} />
</View>
</Flex>
);

All.story = {
name: 'all'
};
Loading