@@ -9,15 +9,29 @@ import { Select } from '@smooth-ui/core-sc'
99
1010# Select
1111
12+ ``` js
13+ import { Select } from ' @smooth-ui/core-sc'
14+ ```
15+
1216## Sizes
1317
1418Set sizes using ` size ` prop like ` "sm" ` , ` "md" ` or ` "lg" ` .
1519
1620<Playground >
1721 <BlockList >
18- <Select size = " sm" placeholder = " Small" options = { [' One' , ' Two' ]} />
19- <Select size = " md" placeholder = " Medium" options = { [' Yes' , ' No' , ' Maybe' ]} />
20- <Select size = " lg" placeholder = " Large" options = { [' Amazing' , ' Great' ]} />
22+ <Select size = " sm" placeholder = " Small" >
23+ <option value = " one" >One</option >
24+ <option value = " two" >Two</option >
25+ </Select >
26+ <Select size = " md" placeholder = " Medium" >
27+ <option value = " yes" >Yes</option >
28+ <option value = " no" >No</option >
29+ <option value = " maybe" >Maybe</option >
30+ </Select >
31+ <Select size = " lg" placeholder = " Large" >
32+ <option value = " amazing" >Amazing</option >
33+ <option value = " great" >Great</option >
34+ </Select >
2135 </BlockList >
2236</Playground >
2337
@@ -26,39 +40,24 @@ Set sizes using `size` prop like `"sm"`, `"md"` or `"lg"`.
2640Disable using ` disabled ` prop.
2741
2842<Playground >
29- <Select disabled placeholder = " Disabled" options = { [' Disabled' ]} />
30- </Playground >
31-
32- ## Custom labels
33-
34- Specify custom labels by passing an object to ` options ` .
35-
36- <Playground >
37- <Select
38- options = { [{ label: ' One' , value: ' one' }, { label: ' Two' , value: ' two' }]}
39- />
43+ <Select disabled placeholder = " Disabled" >
44+ <option >Disabled</option >
45+ </Select >
4046</Playground >
4147
4248## Groups
4349
44- Define groups in ` options ` props.
45-
4650<Playground >
47- <Select
48- options = { [
49- {
50- label: ' Group 1' ,
51- options: [{ label: ' One' , value: ' one' }, { label: ' Two' , value: ' two' }],
52- },
53- {
54- label: ' Group 2' ,
55- options: [
56- { label: ' Three' , value: ' three' },
57- { label: ' Four' , value: ' four' },
58- ],
59- },
60- ]}
61- />
51+ <Select >
52+ <optgroup label = " Group 1" >
53+ <option value = " one" >One</option >
54+ <option value = " two" >Two</option >
55+ </optgroup >
56+ <optgroup label = " Group 2" >
57+ <option value = " three" >Three</option >
58+ <option value = " four" >Four</option >
59+ </optgroup >
60+ </Select >
6261</Playground >
6362
6463## Control & Validation
@@ -68,29 +67,18 @@ Define groups in `options` props.
6867
6968<Playground >
7069 <BlockList >
71- <Select
72- control
73- options = { [
74- { label: ' Control' , value: ' one' },
75- { label: ' Two' , value: ' two' },
76- ]}
77- />
78- <Select
79- control
80- valid
81- options = { [
82- { label: ' Valid' , value: ' one' },
83- { label: ' Two' , value: ' two' },
84- ]}
85- />
86- <Select
87- control
88- valid = { false }
89- options = { [
90- { label: ' Invalid' , value: ' one' },
91- { label: ' Two' , value: ' two' },
92- ]}
93- />
70+ <Select control >
71+ <option >Control</option >
72+ <option >Other</option >
73+ </Select >
74+ <Select control valid >
75+ <option >Valid</option >
76+ <option >Other</option >
77+ </Select >
78+ <Select control valid = { false } >
79+ <option >Invalid</option >
80+ <option >Other</option >
81+ </Select >
9482 </BlockList >
9583</Playground >
9684
@@ -103,7 +91,6 @@ Define groups in `options` props.
10391 arrow: PropDesc .bool ,
10492 children: PropDesc .node ,
10593 control: PropDesc .bool ,
106- options: PropDesc .array ,
10794 size: PropDesc .oneOf ([' sm' , ' lg' ]),
10895 valid: PropDesc .bool ,
10996 ... getSystemPropDesc (Select ),
0 commit comments