TimePickerOptionGroup.story.tsx 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import React, { ComponentType } from 'react';
  2. import { storiesOf } from '@storybook/react';
  3. import { action } from '@storybook/addon-actions';
  4. import { TimePickerOptionGroup } from './TimePickerOptionGroup';
  5. import { TimeRange } from '../../types/time';
  6. import { withRighAlignedStory } from '../../utils/storybook/withRightAlignedStory';
  7. import { popoverOptions } from './TimePicker.story';
  8. import { dateTime } from '../../utils/moment_wrapper';
  9. const TimePickerOptionGroupStories = storiesOf('UI/TimePicker/TimePickerOptionGroup', module);
  10. TimePickerOptionGroupStories.addDecorator(withRighAlignedStory);
  11. const data = {
  12. isPopoverOpen: false,
  13. onPopoverOpen: () => {
  14. action('onPopoverOpen fired')();
  15. },
  16. onPopoverClose: (timeRange: TimeRange) => {
  17. action('onPopoverClose fired')(timeRange);
  18. },
  19. popoverProps: {
  20. value: { from: dateTime(), to: dateTime(), raw: { from: 'now/d', to: 'now/d' } },
  21. options: popoverOptions,
  22. isTimezoneUtc: false,
  23. onChange: (timeRange: TimeRange) => {
  24. action('onChange fired')(timeRange);
  25. },
  26. },
  27. };
  28. TimePickerOptionGroupStories.add('default', () => (
  29. <TimePickerOptionGroup
  30. clearValue={() => {}}
  31. className={''}
  32. cx={() => {}}
  33. getStyles={(name, props) => ({})}
  34. getValue={() => {}}
  35. hasValue
  36. isMulti={false}
  37. options={[]}
  38. selectOption={() => {}}
  39. selectProps={''}
  40. setValue={(value, action) => {}}
  41. label={'Custom'}
  42. children={null}
  43. Heading={(null as any) as ComponentType<any>}
  44. data={data}
  45. />
  46. ));