49 lines
1.6 KiB
JavaScript
Raw Normal View History

2019-10-12 18:15:39 +02:00
import { withActions, decorate } from '@storybook/addon-actions';
import { html } from 'lit-html';
const pickTarget = decorate([args => [args[0].target]]);
const button = () => html`
<button type="button">Hello World</button>
`;
export default {
title: 'Addons/Actions',
2019-10-12 18:15:39 +02:00
};
export const Story1 = () => withActions('click')(button);
Story1.story = { name: 'Hello World' };
export const Story2 = () => withActions('click', 'contextmenu')(button);
Story2.story = { name: 'Multiple actions' };
2019-10-12 18:15:39 +02:00
export const Story3 = () =>
2019-10-12 18:15:39 +02:00
withActions('click', 'contextmenu', { clearOnStoryChange: false })(button);
Story3.story = { name: 'Multiple actions + config' };
2019-10-12 18:15:39 +02:00
export const Story4 = () => withActions({ click: 'clicked', contextmenu: 'right clicked' })(button);
Story4.story = { name: 'Multiple actions, object' };
2019-10-12 18:15:39 +02:00
export const Story5 = () =>
2019-10-12 18:15:39 +02:00
withActions({ 'click .btn': 'clicked', contextmenu: 'right clicked' })(
() => html`
<div>
Clicks on this button will be logged: <button class="btn" type="button">Button</button>
</div>
`
);
Story5.story = { name: 'Multiple actions, selector' };
2019-10-12 18:15:39 +02:00
export const Story6 = () =>
2019-11-15 21:48:31 +01:00
withActions(
{ click: 'clicked', contextmenu: 'right clicked' },
{ clearOnStoryChange: false }
)(button);
Story6.story = { name: 'Multiple actions, object + config' };
2019-10-12 18:15:39 +02:00
export const Story7 = () => pickTarget.withActions('click', 'contextmenu')(button);
Story7.story = { name: 'Decorated actions' };
2019-10-12 18:15:39 +02:00
export const Story8 = () =>
2019-10-12 18:15:39 +02:00
pickTarget.withActions('click', 'contextmenu', { clearOnStoryChange: false })(button);
Story8.story = { name: 'Decorated actions + config' };