import { storiesOf, moduleMetadata } from '@storybook/angular';
import { action } from '@storybook/addon-actions';
import { withKnobs, text, select, boolean, number } from '@storybook/addon-knobs';
import { ReactiveFormsModule, FormControl } from '@angular/forms';
import { FeiComponentsModule } from '../dist/fei-components';
import { StorybookMetadata } from './util';
const defaultMetadata = {
declarations: [],
imports: [
FeiComponentsModule,
ReactiveFormsModule
]
};
export class OrganismsStories {
static category = 'Organisms';
constructor() {}
importStories(metadata: StorybookMetadata = defaultMetadata) {
storiesOf(`${OrganismsStories.category}/Accounts Group Accordion`, module)
.addDecorator(moduleMetadata(metadata))
.addDecorator(withKnobs)
.add('default', () => ({
template: `
`,
props: {
groupName: 'Group AAAAAAAAAAA',
accounts: [
{ id: 1, name: 'tarou_tanaka', formControl: new FormControl(false) },
{ id: 2, name: 'hanako_hanazawa', formControl: new FormControl(true) },
{ id: 3, name: 'katuo_isono', formControl: new FormControl(true) }
],
onAdded: action('Added'),
onRemoved: action('Removed'),
}
}))
.add('width:150px', () => ({
template: `
`,
props: {
groupName: 'Group AAAAAAAAAAA',
accounts: [
{ name: 'tarou_tanaka', formControl: new FormControl(false) },
{ name: 'hanako_hanazawa', formControl: new FormControl(true) },
{ name: 'katuo_isono', formControl: new FormControl(true) },
{ name: 'hanako_hanazawa', formControl: new FormControl(true) },
{ name: 'katuo_isono', formControl: new FormControl(true) },
{ name: 'hanako_hanazawa', formControl: new FormControl(true) },
{ name: 'katuo_isono', formControl: new FormControl(true) },
{ name: 'hanako_hanazawa', formControl: new FormControl(true) },
{ name: 'katuo_isono', formControl: new FormControl(true) },
{ name: 'hanako_hanazawa', formControl: new FormControl(true) },
{ name: 'katuo_isono', formControl: new FormControl(true) }
]
}
}));
storiesOf(`${OrganismsStories.category}/Dialog - Logout`, module)
.addDecorator(moduleMetadata(metadata))
.addDecorator(withKnobs)
.add('default', () => ({
template: `
`,
props: {
open: boolean('open', true),
onLogout: action('Logout'),
onCancel: action('Cancel')
}
}));
storiesOf(`${OrganismsStories.category}/Navigation Bar`, module)
.addDecorator(moduleMetadata(metadata))
.addDecorator(withKnobs)
.add('default', () => ({
template: `
`,
props: {
onLogout: action('Logout')
}
}));
storiesOf(`${OrganismsStories.category}/Action Panel`, module)
.addDecorator(moduleMetadata(metadata))
.addDecorator(withKnobs)
.add('default', () => ({
template: `
users
calendarEdit
timeSpan
`,
props: {
open: boolean('open', false)
}
}))
.add('use action-panel-contents', () => ({
template: `
`,
props: {
open: boolean('open', false)
}
}));
}
}