UNPKG

1.07 kBJavaScriptView Raw
1import { GlIntersperse } from '../../../index';
2import readme from './intersperse.md';
3
4const template = `
5 <div>
6 <gl-intersperse :separator="separator" :lastSeparator="lastSeparator">
7 <span v-for="item in items">{{ item }}</span>
8 </gl-intersperse>
9 </div>
10 `;
11
12const generateProps = ({
13 separator = ', ',
14 lastSeparator = '',
15 items = ['Foo', 'Bar', 'Baz', 'Qaz'],
16} = {}) => ({
17 separator,
18 lastSeparator,
19 items,
20});
21
22const Template = (args, { argTypes }) => ({
23 components: {
24 GlIntersperse,
25 },
26 props: Object.keys(argTypes),
27 template,
28});
29
30export const Default = Template.bind({});
31Default.args = generateProps();
32
33export default {
34 title: 'utilities/intersperse',
35 component: GlIntersperse,
36 parameters: {
37 docs: {
38 description: {
39 component: readme,
40 },
41 },
42 },
43};
44
45export const CustomSeparator = Template.bind({});
46CustomSeparator.args = generateProps({
47 separator: '-',
48});
49
50export const CustomLastSeparator = Template.bind({});
51CustomLastSeparator.args = generateProps({
52 lastSeparator: ' and ',
53});