@ -3,7 +3,7 @@ import { Select, AsyncSelect, MultiSelect, AsyncMultiSelect } from './Select';
import { withCenteredStory , withHorizontallyCenteredStory } from '../../utils/storybook/withCenteredStory' ;
import { SelectableValue } from '@grafana/data' ;
import { getAvailableIcons , IconName } from '../../types' ;
import { select , boolean } from '@storybook/addon-knobs' ;
import { select , boolean , number } from '@storybook/addon-knobs' ;
import { Icon } from '../Icon/Icon' ;
import { Button } from '../Button' ;
import { ButtonSelect } from './ButtonSelect' ;
@ -50,6 +50,7 @@ const getKnobs = () => {
const VISUAL_GROUP = 'Visual options' ;
// ---
const prefix = select ( 'Prefix' , prefixSuffixOpts , null , VISUAL_GROUP ) ;
const width = number ( 'Width' , 0 , undefined , VISUAL_GROUP ) ;
let prefixEl : any = prefix ;
if ( prefix && prefix . match ( /icon-/g ) ) {
@ -57,6 +58,7 @@ const getKnobs = () => {
}
return {
width ,
disabled ,
invalid ,
loading ,
@ -67,6 +69,7 @@ const getKnobs = () => {
const getDynamicProps = ( ) = > {
const knobs = getKnobs ( ) ;
return {
width : knobs.width ,
disabled : knobs.disabled ,
isLoading : knobs.loading ,
invalid : knobs.invalid ,
@ -85,7 +88,6 @@ export const basic = () => {
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
{ . . . getDynamicProps ( ) }
/ >
< / >
@ -105,7 +107,6 @@ export const basicSelectPlainValue = () => {
onChange = { v = > {
setValue ( v . value ) ;
} }
size = "md"
{ . . . getDynamicProps ( ) }
/ >
< / >
@ -138,7 +139,6 @@ export const SelectWithOptionDescriptions = () => {
onChange = { v = > {
setValue ( v . value ) ;
} }
size = "md"
{ . . . getDynamicProps ( ) }
/ >
< / >
@ -159,7 +159,6 @@ export const multiPlainValue = () => {
onChange = { v = > {
setValue ( v . map ( ( v : any ) = > v . value ) ) ;
} }
size = "md"
{ . . . getDynamicProps ( ) }
/ >
< / >
@ -177,7 +176,6 @@ export const multiSelect = () => {
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
{ . . . getDynamicProps ( ) }
/ >
< / >
@ -195,7 +193,6 @@ export const multiSelectAsync = () => {
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
allowCustomValue
{ . . . getDynamicProps ( ) }
/ >
@ -212,7 +209,6 @@ export const buttonSelect = () => {
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
allowCustomValue
icon = { icon }
{ . . . getDynamicProps ( ) }
@ -231,7 +227,6 @@ export const basicSelectAsync = () => {
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
{ . . . getDynamicProps ( ) }
/ >
) ;
@ -247,7 +242,6 @@ export const customizedControl = () => {
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
renderControl = { React . forwardRef ( ( { isOpen , value , . . . otherProps } , ref ) = > {
return (
< Button { ...otherProps } ref = { ref } >
@ -266,14 +260,13 @@ export const autoMenuPlacement = () => {
return (
< >
< div style = { { height : '95vh' , display : 'flex' , alignItems : 'flex-end' } } >
< div style = { { width : '100%' , height : '95vh' , display : 'flex' , alignItems : 'flex-end' } } >
< Select
options = { generateOptions ( ) }
value = { value }
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
{ . . . getDynamicProps ( ) }
/ >
< / div >
@ -293,7 +286,6 @@ export const customValueCreation = () => {
onChange = { v = > {
setValue ( v ) ;
} }
size = "md"
allowCustomValue
onCreateOption = { v = > {
const customValue : SelectableValue < string > = { value : kebabCase ( v ) , label : v } ;