superdesk-ui-framework 3.0.35 → 3.0.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/styles/_sd-tag-input.scss +3 -5
- package/app/styles/_tag-labels.scss +0 -2
- package/app/styles/app.scss +1 -0
- package/app/styles/form-elements/_checkbox.scss +3 -0
- package/app/styles/form-elements/_input-preview.scss +70 -0
- package/app/styles/form-elements/_inputs.scss +10 -14
- package/app/styles/primereact/_pr-tag-input.scss +1 -1
- package/app-typescript/components/DatePicker.tsx +101 -101
- package/app-typescript/components/DurationInput.tsx +76 -76
- package/app-typescript/components/Form/InputNew.tsx +1 -1
- package/app-typescript/components/Form/InputWrapper.tsx +34 -18
- package/app-typescript/components/Input.tsx +38 -62
- package/app-typescript/components/MultiSelect.tsx +49 -47
- package/app-typescript/components/Select.tsx +13 -22
- package/app-typescript/components/SelectPreview.tsx +100 -0
- package/app-typescript/components/SelectWithTemplate.tsx +2 -12
- package/app-typescript/components/TagInput.tsx +25 -24
- package/app-typescript/components/TimePicker.tsx +13 -16
- package/app-typescript/components/TreeSelect.tsx +218 -158
- package/dist/examples.bundle.js +2400 -2258
- package/dist/react/Autocomplete.tsx +32 -31
- package/dist/react/DatePicker.tsx +56 -73
- package/dist/react/DurationInput.tsx +36 -47
- package/dist/react/Inputs.tsx +86 -248
- package/dist/react/MultiSelect.tsx +30 -23
- package/dist/react/Selects.tsx +12 -44
- package/dist/react/TagInputDocs.tsx +15 -21
- package/dist/react/TimePicker.tsx +25 -32
- package/dist/react/TreeSelect.tsx +97 -90
- package/dist/superdesk-ui.bundle.css +85 -18
- package/dist/superdesk-ui.bundle.js +1973 -1816
- package/dist/vendor.bundle.js +14 -14
- package/examples/pages/react/Autocomplete.tsx +32 -31
- package/examples/pages/react/DatePicker.tsx +56 -73
- package/examples/pages/react/DurationInput.tsx +36 -47
- package/examples/pages/react/Inputs.tsx +86 -248
- package/examples/pages/react/MultiSelect.tsx +30 -23
- package/examples/pages/react/Selects.tsx +12 -44
- package/examples/pages/react/TagInputDocs.tsx +15 -21
- package/examples/pages/react/TimePicker.tsx +25 -32
- package/examples/pages/react/TreeSelect.tsx +97 -90
- package/package.json +1 -1
- package/react/components/DatePicker.d.ts +2 -12
- package/react/components/DatePicker.js +14 -8
- package/react/components/DurationInput.d.ts +2 -11
- package/react/components/DurationInput.js +14 -4
- package/react/components/Form/InputNew.d.ts +1 -1
- package/react/components/Form/InputWrapper.d.ts +11 -5
- package/react/components/Form/InputWrapper.js +6 -9
- package/react/components/Input.d.ts +3 -19
- package/react/components/Input.js +8 -21
- package/react/components/MultiSelect.d.ts +4 -13
- package/react/components/MultiSelect.js +6 -2
- package/react/components/Select.d.ts +3 -15
- package/react/components/Select.js +7 -8
- package/react/components/SelectPreview.d.ts +17 -0
- package/react/components/SelectPreview.js +109 -0
- package/react/components/SelectWithTemplate.d.ts +2 -11
- package/react/components/SelectWithTemplate.js +0 -1
- package/react/components/TagInput.d.ts +3 -12
- package/react/components/TagInput.js +6 -2
- package/react/components/TimePicker.d.ts +2 -11
- package/react/components/TimePicker.js +6 -2
- package/react/components/TreeSelect.d.ts +5 -11
- package/react/components/TreeSelect.js +78 -47
package/dist/react/Inputs.tsx
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
import * as React from 'react';
|
2
2
|
import * as Markup from '../../js/react';
|
3
3
|
import { Input, CheckGroup, Checkbox, PropsList, Prop, InputNew } from '../../../app-typescript';
|
4
|
-
import { DurationInput } from '../../../app-typescript/components/DurationInput';
|
5
|
-
|
6
4
|
|
7
5
|
interface IState {
|
8
6
|
inlineLabel: boolean;
|
@@ -11,6 +9,9 @@ interface IState {
|
|
11
9
|
invalid: boolean;
|
12
10
|
value: any;
|
13
11
|
value2: any;
|
12
|
+
value3: any;
|
13
|
+
value4: any;
|
14
|
+
value5: any;
|
14
15
|
}
|
15
16
|
|
16
17
|
export default class InputsDoc extends React.Component<{}, IState> {
|
@@ -21,17 +22,20 @@ export default class InputsDoc extends React.Component<{}, IState> {
|
|
21
22
|
required: true,
|
22
23
|
disabled: false,
|
23
24
|
invalid: false,
|
24
|
-
value:
|
25
|
-
value2:
|
25
|
+
value: '',
|
26
|
+
value2: null,
|
27
|
+
value3: '',
|
28
|
+
value4: '',
|
29
|
+
value5: '',
|
26
30
|
}
|
27
31
|
}
|
28
|
-
|
32
|
+
|
29
33
|
render() {
|
30
34
|
return (
|
31
35
|
<section className='docs-page__container'>
|
32
36
|
<h2 className='docs-page__h2'>Input</h2>
|
33
37
|
<Markup.ReactMarkupCodePreview>{`
|
34
|
-
<Input
|
38
|
+
<Input type='text' onChange={(value) => this.setState({value: value})} />
|
35
39
|
`}
|
36
40
|
</Markup.ReactMarkupCodePreview>
|
37
41
|
<p className='docs-page__paragraph'></p>
|
@@ -42,332 +46,166 @@ export default class InputsDoc extends React.Component<{}, IState> {
|
|
42
46
|
<CheckGroup>
|
43
47
|
<Checkbox checked={this.state.required} label={{text:'Required input'}} onChange={(value) => {this.setState({required: value})}} />
|
44
48
|
<Checkbox checked={this.state.disabled} label={{text:'Disabled input'}} onChange={(value) => {this.setState({disabled: value})}} />
|
45
|
-
<Checkbox checked={this.state.invalid} label={{text:'Invalid input'}} onChange={(value) => {this.setState({invalid: value})}} />
|
46
49
|
<Checkbox checked={this.state.inlineLabel} label={{text:'Label positioned inline'}} onChange={(value) => {this.setState({inlineLabel: value})}} />
|
47
50
|
</CheckGroup>
|
48
51
|
</div>
|
49
|
-
<div className='form__row'>
|
50
|
-
<InputNew
|
51
|
-
label='Label'
|
52
|
-
value=''
|
53
|
-
onChange={(value) => false
|
54
|
-
}
|
55
|
-
|
56
|
-
required={true}
|
57
|
-
info='Nullam Sollicitudin'
|
58
|
-
maxLength={20}
|
59
|
-
//invalid={true}
|
60
|
-
//disabled={true}
|
61
|
-
error='Error message'
|
62
|
-
//inlineLabel={true}
|
63
|
-
//labelHidden={true}
|
64
|
-
type='text' />
|
65
|
-
</div>
|
66
52
|
|
67
53
|
<div className='form__row'>
|
68
|
-
<Input
|
69
|
-
|
70
|
-
|
54
|
+
<Input
|
55
|
+
label='Input label'
|
56
|
+
value={this.state.value}
|
71
57
|
type='text'
|
72
|
-
error='This is error message'
|
73
58
|
info='This is some hint message'
|
74
59
|
inlineLabel={this.state.inlineLabel}
|
75
60
|
required={this.state.required}
|
76
61
|
disabled={this.state.disabled}
|
77
|
-
|
62
|
+
maxLength={30}
|
78
63
|
tabindex={0}
|
79
|
-
onChange={(value) => this.setState({
|
64
|
+
onChange={(value) => this.setState({value: value})}
|
65
|
+
/>
|
80
66
|
</div>
|
67
|
+
|
81
68
|
<div className='form__row'>
|
82
|
-
<Input
|
83
|
-
|
69
|
+
<Input
|
70
|
+
label='Number Input'
|
71
|
+
value={this.state.value2}
|
84
72
|
type='number'
|
85
|
-
error='This is error message'
|
86
73
|
info='Morbi leo risus porta ac consectetur ac.'
|
87
|
-
inlineLabel={this.state.inlineLabel}
|
88
|
-
required={this.state.required}
|
89
|
-
disabled={this.state.disabled}
|
90
|
-
invalid={this.state.invalid}
|
91
74
|
tabindex={0}
|
92
|
-
onChange={(value) => this.setState({
|
75
|
+
onChange={(value) => this.setState({value2: value})}
|
76
|
+
/>
|
93
77
|
</div>
|
78
|
+
|
94
79
|
<p className="docs-page__paragraph">// Hidden label</p>
|
95
80
|
<div className='form__row'>
|
96
|
-
<Input
|
97
|
-
|
98
|
-
|
81
|
+
<Input
|
82
|
+
label='Input label'
|
83
|
+
value={this.state.value3}
|
99
84
|
type='text'
|
100
85
|
placeholder='Placeholder'
|
101
|
-
error='This is error message'
|
102
86
|
info='Donec id elit non mi porta gravida at eget metus.'
|
103
87
|
inlineLabel={true}
|
104
88
|
labelHidden={true}
|
105
|
-
required={this.state.required}
|
106
|
-
disabled={this.state.disabled}
|
107
|
-
invalid={this.state.invalid}
|
108
89
|
tabindex={0}
|
109
|
-
onChange={(value) => this.setState({
|
90
|
+
onChange={(value) => this.setState({value3: value})}
|
91
|
+
/>
|
110
92
|
</div>
|
111
93
|
|
112
|
-
<p className="docs-page__paragraph">// Boxed
|
113
|
-
<div className='form__row'>
|
114
|
-
<Input label='Input label'
|
115
|
-
value={''}
|
116
|
-
boxedStyle={true}
|
117
|
-
maxLength={25}
|
118
|
-
type='text'
|
119
|
-
placeholder='Default boxed input'
|
120
|
-
error='This is error message'
|
121
|
-
inlineLabel={true}
|
122
|
-
labelHidden={true}
|
123
|
-
required={this.state.required}
|
124
|
-
disabled={this.state.disabled}
|
125
|
-
invalid={this.state.invalid}
|
126
|
-
tabindex={0}
|
127
|
-
onChange={(value) => this.setState({value2: value})} />
|
128
|
-
</div>
|
129
|
-
<div className='form__row'>
|
130
|
-
<Input label='Input label'
|
131
|
-
value={''}
|
132
|
-
boxedStyle={true}
|
133
|
-
size='large'
|
134
|
-
maxLength={25}
|
135
|
-
type='text'
|
136
|
-
placeholder='Large boxed input'
|
137
|
-
error='This is error message'
|
138
|
-
inlineLabel={true}
|
139
|
-
labelHidden={true}
|
140
|
-
required={this.state.required}
|
141
|
-
disabled={this.state.disabled}
|
142
|
-
invalid={this.state.invalid}
|
143
|
-
tabindex={0}
|
144
|
-
onChange={(value) => this.setState({value2: value})} />
|
145
|
-
</div>
|
94
|
+
<p className="docs-page__paragraph">// Boxed input</p>
|
146
95
|
<div className='form__row'>
|
147
|
-
<Input
|
148
|
-
|
96
|
+
<Input
|
97
|
+
label='Input label'
|
98
|
+
value={this.state.value4}
|
149
99
|
boxedStyle={true}
|
150
|
-
|
151
|
-
maxLength={25}
|
152
|
-
type='text'
|
153
|
-
placeholder='Extra large boxed input'
|
154
|
-
error='This is error message'
|
155
|
-
inlineLabel={true}
|
156
|
-
labelHidden={true}
|
157
|
-
required={this.state.required}
|
158
|
-
disabled={this.state.disabled}
|
159
|
-
invalid={this.state.invalid}
|
160
|
-
tabindex={0}
|
161
|
-
onChange={(value) => this.setState({value2: value})} />
|
162
|
-
</div>
|
163
|
-
<p className="docs-page__paragraph">// Boxed with default label</p>
|
164
|
-
<div className='form__row'>
|
165
|
-
<Input label='Input label'
|
166
|
-
value={''}
|
167
|
-
boxedStyle={true}
|
168
|
-
size='large'
|
169
|
-
maxLength={25}
|
100
|
+
maxLength={30}
|
170
101
|
placeholder='Placeholder'
|
171
102
|
type='text'
|
172
|
-
error='This is error message'
|
173
|
-
required={this.state.required}
|
174
|
-
disabled={this.state.disabled}
|
175
|
-
invalid={this.state.invalid}
|
176
103
|
tabindex={0}
|
177
|
-
onChange={(value) => this.setState({
|
104
|
+
onChange={(value) => this.setState({value4: value})}
|
105
|
+
/>
|
178
106
|
</div>
|
179
|
-
|
107
|
+
|
108
|
+
<p className="docs-page__paragraph">// Boxed input with boxed label</p>
|
180
109
|
<div className='form__row'>
|
181
|
-
<Input
|
182
|
-
|
110
|
+
<Input
|
111
|
+
label='Input label'
|
112
|
+
value={this.state.value5}
|
183
113
|
boxedStyle={true}
|
184
114
|
boxedLable={true}
|
185
|
-
|
186
|
-
maxLength={25}
|
115
|
+
maxLength={30}
|
187
116
|
placeholder='Placeholder'
|
188
117
|
type='text'
|
189
|
-
error='This is error message'
|
190
|
-
required={this.state.required}
|
191
|
-
disabled={this.state.disabled}
|
192
|
-
invalid={this.state.invalid}
|
193
118
|
tabindex={0}
|
194
|
-
onChange={(value) => this.setState({
|
195
|
-
|
196
|
-
<div className='form__row'>
|
197
|
-
<Input label='Input label'
|
198
|
-
value={''}
|
199
|
-
boxedStyle={true}
|
200
|
-
boxedLable={true}
|
201
|
-
size='large'
|
202
|
-
placeholder='Hide my label'
|
203
|
-
labelHidden={true}
|
204
|
-
type='text'
|
205
|
-
error='This is error message'
|
206
|
-
required={this.state.required}
|
207
|
-
disabled={this.state.disabled}
|
208
|
-
invalid={this.state.invalid}
|
209
|
-
tabindex={0}
|
210
|
-
onChange={(value) => this.setState({value2: value})} />
|
119
|
+
onChange={(value) => this.setState({value5: value})}
|
120
|
+
/>
|
211
121
|
</div>
|
212
122
|
</div>
|
213
123
|
|
214
124
|
</Markup.ReactMarkupPreview>
|
215
125
|
<Markup.ReactMarkupCode>{`
|
216
|
-
<Input
|
217
|
-
|
218
|
-
|
219
|
-
|
126
|
+
<Input
|
127
|
+
label='Input label'
|
128
|
+
value={''}
|
129
|
+
type='text'
|
220
130
|
info='This is some hint message'
|
221
|
-
inlineLabel={
|
222
|
-
required={
|
223
|
-
disabled={
|
224
|
-
|
225
|
-
|
131
|
+
inlineLabel={this.state.inlineLabel}
|
132
|
+
required={this.state.required}
|
133
|
+
disabled={this.state.disabled}
|
134
|
+
maxLength={30}
|
135
|
+
tabindex={0}
|
136
|
+
onChange={(value) => this.setState({value: value})}
|
137
|
+
/>
|
226
138
|
|
227
|
-
<Input
|
139
|
+
<Input
|
140
|
+
label='Number Input'
|
228
141
|
value={this.state.value}
|
229
142
|
type='number'
|
230
|
-
error='This is error message'
|
231
143
|
info='Morbi leo risus porta ac consectetur ac.'
|
232
|
-
inlineLabel={this.state.inlineLabel}
|
233
|
-
required={this.state.required}
|
234
|
-
disabled={this.state.disabled}
|
235
|
-
invalid={this.state.invalid}
|
236
144
|
tabindex={0}
|
237
|
-
onChange={(value) => {}}
|
238
|
-
|
145
|
+
onChange={(value) => this.setState({value2: value})}
|
146
|
+
/>
|
147
|
+
|
239
148
|
// Hidden label
|
240
|
-
<Input
|
149
|
+
<Input
|
150
|
+
label='Input label'
|
241
151
|
value={''}
|
242
|
-
maxLength={25}
|
243
152
|
type='text'
|
244
153
|
placeholder='Placeholder'
|
245
|
-
error='This is error message'
|
246
154
|
info='Donec id elit non mi porta gravida at eget metus.'
|
247
155
|
inlineLabel={true}
|
248
156
|
labelHidden={true}
|
249
|
-
required={this.state.required}
|
250
|
-
disabled={this.state.disabled}
|
251
|
-
invalid={this.state.invalid}
|
252
|
-
tabindex={0}
|
253
|
-
onChange={(value) => {}} />
|
254
|
-
|
255
|
-
// Boxed with hidden label
|
256
|
-
<Input label='Input label'
|
257
|
-
value={''}
|
258
|
-
boxedStyle={true}
|
259
|
-
maxLength={25}
|
260
|
-
type='text'
|
261
|
-
placeholder='Default boxed input'
|
262
|
-
error='This is error message'
|
263
|
-
inlineLabel={true}
|
264
|
-
labelHidden={true}
|
265
|
-
required={this.state.required}
|
266
|
-
disabled={this.state.disabled}
|
267
|
-
invalid={this.state.invalid}
|
268
|
-
tabindex={0}
|
269
|
-
onChange={(value) => {}} />
|
270
|
-
|
271
|
-
<Input label='Input label'
|
272
|
-
value={''}
|
273
|
-
boxedStyle={true}
|
274
|
-
size='large'
|
275
|
-
maxLength={25}
|
276
|
-
type='text'
|
277
|
-
placeholder='Large boxed input'
|
278
|
-
error='This is error message'
|
279
|
-
inlineLabel={true}
|
280
|
-
labelHidden={true}
|
281
|
-
required={this.state.required}
|
282
|
-
disabled={this.state.disabled}
|
283
|
-
invalid={this.state.invalid}
|
284
157
|
tabindex={0}
|
285
|
-
onChange={(value) => {}}
|
158
|
+
onChange={(value) => this.setState({value2: value})}
|
159
|
+
/>
|
286
160
|
|
287
|
-
|
161
|
+
// Boxed input
|
162
|
+
<Input
|
163
|
+
label='Input label'
|
288
164
|
value={''}
|
289
165
|
boxedStyle={true}
|
290
|
-
|
291
|
-
maxLength={25}
|
292
|
-
type='text'
|
293
|
-
placeholder='Extra large boxed input'
|
294
|
-
error='This is error message'
|
295
|
-
inlineLabel={true}
|
296
|
-
labelHidden={true}
|
297
|
-
required={this.state.required}
|
298
|
-
disabled={this.state.disabled}
|
299
|
-
invalid={this.state.invalid}
|
300
|
-
tabindex={0}
|
301
|
-
onChange={(value) => {}} />
|
302
|
-
|
303
|
-
// Boxed with default label
|
304
|
-
<Input label='Input label'
|
305
|
-
value={''}
|
306
|
-
boxedStyle={true}
|
307
|
-
size='large'
|
166
|
+
boxedLable={true}
|
308
167
|
maxLength={25}
|
309
168
|
placeholder='Placeholder'
|
310
169
|
type='text'
|
311
|
-
error='This is error message'
|
312
|
-
required={this.state.required}
|
313
|
-
disabled={this.state.disabled}
|
314
|
-
invalid={this.state.invalid}
|
315
170
|
tabindex={0}
|
316
|
-
onChange={(value) => {}}
|
317
|
-
|
318
|
-
|
319
|
-
|
171
|
+
onChange={(value) => this.setState({value2: value})}
|
172
|
+
/>
|
173
|
+
|
174
|
+
// Boxed input with boxed label
|
175
|
+
<Input
|
176
|
+
label='Input label'
|
320
177
|
value={''}
|
321
178
|
boxedStyle={true}
|
322
179
|
boxedLable={true}
|
323
|
-
size='large'
|
324
180
|
maxLength={25}
|
325
181
|
placeholder='Placeholder'
|
326
182
|
type='text'
|
327
|
-
error='This is error message'
|
328
|
-
required={this.state.required}
|
329
|
-
disabled={this.state.disabled}
|
330
|
-
invalid={this.state.invalid}
|
331
183
|
tabindex={0}
|
332
|
-
onChange={(value) => {}}
|
333
|
-
|
334
|
-
<Input label='Input label'
|
335
|
-
value={''}
|
336
|
-
boxedStyle={true}
|
337
|
-
boxedLable={true}
|
338
|
-
size='large'
|
339
|
-
placeholder='Hide my label'
|
340
|
-
labelHidden={true}
|
341
|
-
type='text'
|
342
|
-
error='This is error message'
|
343
|
-
required={this.state.required}
|
344
|
-
disabled={this.state.disabled}
|
345
|
-
invalid={this.state.invalid}
|
346
|
-
tabindex={0}
|
347
|
-
onChange={(value) => {}} />
|
184
|
+
onChange={(value) => this.setState({value2: value})}
|
185
|
+
/>
|
348
186
|
`}</Markup.ReactMarkupCode>
|
349
187
|
</Markup.ReactMarkup>
|
350
188
|
|
351
189
|
<h3 className='docs-page__h3'>Props</h3>
|
352
190
|
<PropsList>
|
353
|
-
<Prop name='value' isRequired={false} type='string' default='/' description='
|
191
|
+
<Prop name='value' isRequired={false} type='string' default='/' description='Input value.'/>
|
354
192
|
<Prop name='type' isRequired={false} type='text | number | password' default='text' description='Input type. Defaults to type text.'/>
|
355
|
-
<Prop name='
|
356
|
-
<Prop name='maxLength' isRequired={false} type='number' default='/' description='Sets max length for input text'/>
|
357
|
-
<Prop name='info' isRequired={false} type='string' default='/' description='Hint text'/>
|
358
|
-
<Prop name='error' isRequired={false} type='string' default='/' description='Error text'/>
|
359
|
-
<Prop name='inlineLabel' isRequired={false} type='boolean' default='false' description='Position labels as inline'/>
|
360
|
-
<Prop name='required' isRequired={false} type='boolean' default='false' description='Mark field as required'/>
|
361
|
-
<Prop name='disabled' isRequired={false} type='boolean' default='false' description='Mark field as disabled'/>
|
362
|
-
<Prop name='invalid' isRequired={false} type='boolean' default='false' description='Mark field as invalid'/>
|
363
|
-
<Prop name='tabindex' isRequired={false} type='number' default='/' description='Indicates an element can be focused on, and determines how that focus is handled.'/>
|
193
|
+
<Prop name='maxLength' isRequired={false} type='number' default='/' description='Sets max length for input text.'/>
|
364
194
|
<Prop name='placeholder' isRequired={false} type='string' default='/' description='Defines the text for the placeholder pseudo-element.'/>
|
365
195
|
<Prop name='fullWidth' isRequired={false} type='boolean' default='false' description='Forces the input to take 100% of the container width.'/>
|
366
196
|
<Prop name='boxedStyle' isRequired={false} type='boolean' default='false' description='Applies a boxed style to the input. This style should be used only in the authoring enviroment and similar.'/>
|
367
197
|
<Prop name='boxedLable' isRequired={false} type='boolean' default='false' description='Applies a boxed style to the input label. This label style should be used only in combination with the boxedStyle input inside the authoring enviroment.'/>
|
368
198
|
<Prop name='size' isRequired={false} type='medium | large | x-large' default='medium' description='Specifies the size of the input. Defaults to medium and should be changed only in special cases (e.g. titles, headlines etc.).'/>
|
199
|
+
<Prop name='onChange' isRequired={true} type='Function' default='/' description='Callback to invoke when value changes.'/>
|
200
|
+
<Prop name='label' isRequired={false} type='string' default='/' description='Label of component.' />
|
201
|
+
<Prop name='inlineLabel' isRequired={false} type='boolean' default='false' description='Position labels as inline.' />
|
202
|
+
<Prop name='tabindex' isRequired={false} type='number' default='/' description='Indicates an element can be focused on, and determines how that focus is handled.'/>
|
203
|
+
<Prop name='info' isRequired={false} type='string' default='/' description='Info message of component.' />
|
204
|
+
<Prop name='error' isRequired={false} type='string' default='/' description='Error message of component.' />
|
205
|
+
<Prop name='required' isRequired={false} type='boolean' default='false' description='Mark field as required.' />
|
206
|
+
<Prop name='disabled' isRequired={false} type='boolean' default='false' description='Mark field as disabled.' />
|
369
207
|
</PropsList>
|
370
208
|
</section>
|
371
209
|
)
|
372
210
|
}
|
373
|
-
}
|
211
|
+
}
|
@@ -36,8 +36,8 @@ export class MultiselectDocs extends React.Component<{}, IState> {
|
|
36
36
|
constructor(props) {
|
37
37
|
super(props);
|
38
38
|
this.state = {
|
39
|
-
value:
|
40
|
-
value2:
|
39
|
+
value: [{name: 'Red', colorCode: '#FF0000'},],
|
40
|
+
value2: [{name: 'Red', colorCode: '#FF0000'},],
|
41
41
|
}
|
42
42
|
}
|
43
43
|
|
@@ -48,11 +48,11 @@ export class MultiselectDocs extends React.Component<{}, IState> {
|
|
48
48
|
|
49
49
|
<Markup.ReactMarkupCodePreview>{`
|
50
50
|
<MultiSelect
|
51
|
-
value={this.state.
|
51
|
+
value={this.state.value}
|
52
52
|
options={ItemArr}
|
53
|
-
|
54
|
-
placeholder='Select
|
55
|
-
|
53
|
+
optionLabel={(option) => option.name}
|
54
|
+
placeholder='Select a color'
|
55
|
+
onChange={(e: any) => false}
|
56
56
|
/>
|
57
57
|
`}
|
58
58
|
</Markup.ReactMarkupCodePreview>
|
@@ -62,18 +62,17 @@ export class MultiselectDocs extends React.Component<{}, IState> {
|
|
62
62
|
<div className='docs-page__content-row docs-page__content-row--no-margin'>
|
63
63
|
<div className='form__row'>
|
64
64
|
<MultiSelect
|
65
|
+
preview
|
65
66
|
value={this.state.value}
|
66
67
|
options={ItemArr}
|
67
|
-
|
68
|
+
optionLabel={(option) => option.name}
|
69
|
+
label='This is Label'
|
70
|
+
info='This is info'
|
71
|
+
placeholder='Select a color'
|
68
72
|
filter
|
69
73
|
showSelectAll
|
70
74
|
zIndex={2000}
|
71
|
-
|
72
|
-
optionLabel={(option) => `${option.name} :: ${option.colorCode}`}
|
73
|
-
required
|
74
|
-
tabindex={1}
|
75
|
-
label={'This is Label'}
|
76
|
-
info={'This is info'}
|
75
|
+
onChange={(e: any) => this.setState({value: e})}
|
77
76
|
/>
|
78
77
|
</div>
|
79
78
|
</div>
|
@@ -83,15 +82,14 @@ export class MultiselectDocs extends React.Component<{}, IState> {
|
|
83
82
|
<MultiSelect
|
84
83
|
value={this.state.value}
|
85
84
|
options={ItemArr}
|
86
|
-
|
85
|
+
optionLabel={(option) => option.name}
|
86
|
+
label='This is Label'
|
87
|
+
info='This is info'
|
88
|
+
placeholder='Select a color'
|
87
89
|
filter
|
88
90
|
showSelectAll
|
89
|
-
|
90
|
-
|
91
|
-
required
|
92
|
-
tabindex={1}
|
93
|
-
label={'This is Label'}
|
94
|
-
info={'This is info'}
|
91
|
+
zIndex={2000}
|
92
|
+
onChange={(e: any) => this.setState({value: e})}
|
95
93
|
/>
|
96
94
|
`}</Markup.ReactMarkupCode>
|
97
95
|
|
@@ -107,9 +105,11 @@ export class MultiselectDocs extends React.Component<{}, IState> {
|
|
107
105
|
value={this.state.value2}
|
108
106
|
options={ItemArr}
|
109
107
|
optionLabel={(option) => `${option.name} :: ${option.colorCode}`}
|
110
|
-
onChange={(e: any) => this.setState({value2: e})}
|
111
108
|
filter
|
112
109
|
showSelectAll
|
110
|
+
label='This is Label'
|
111
|
+
info='This is info'
|
112
|
+
placeholder='Select a color'
|
113
113
|
itemTemplate={(option) => {
|
114
114
|
if (option) {
|
115
115
|
return (
|
@@ -134,6 +134,7 @@ export class MultiselectDocs extends React.Component<{}, IState> {
|
|
134
134
|
);
|
135
135
|
}
|
136
136
|
}}
|
137
|
+
onChange={(e: any) => this.setState({value2: e})}
|
137
138
|
/>
|
138
139
|
</div>
|
139
140
|
</div>
|
@@ -188,12 +189,18 @@ export class MultiselectDocs extends React.Component<{}, IState> {
|
|
188
189
|
<Prop name='maxSelectedLabels' isRequired={false} type='number' default='/' description='Decides how many selected item labels to show at most. Its necessary to use selectedItemTemplate.'/>
|
189
190
|
<Prop name='selectedItemsLabel' isRequired={false} type='string' default='{0} items selected' description='Label to display after exceeding max selected labels.'/>
|
190
191
|
<Prop name='ariaLabelledBy' isRequired={false} type='string' default='/' description='Establishes relationships between the component and label(s) where its value should be one or more element IDs.'/>
|
191
|
-
<Prop name='tabIndex' isRequired={false} type='string' default="'0'" description='Index of the element in tabbing order.'/>
|
192
192
|
<Prop name='showClear' isRequired={false} type='boolean' default='false' description='When enabled, a clear icon is displayed to clear the value.'/>
|
193
193
|
<Prop name='showSelectAll' isRequired={false} type='boolean' default='false' description='Whether to show the select all checkbox inside the panel header.'/>
|
194
194
|
<Prop name='itemTemplate' isRequired={false} type='function' default='/' description='Function that gets the option and returns the content for it.'/>
|
195
195
|
<Prop name='selectedItemTemplate' isRequired={false} type='function' default='/' description='Function that gets an item in the value and returns the content for it.'/>
|
196
|
-
<Prop name='onChange' isRequired={true} type='
|
196
|
+
<Prop name='onChange' isRequired={true} type='Function' default='/' description='Callback to invoke when value changes.'/>
|
197
|
+
<Prop name='label' isRequired={false} type='string' default='/' description='Label of component.' />
|
198
|
+
<Prop name='inlineLabel' isRequired={false} type='boolean' default='false' description='Position labels as inline.' />
|
199
|
+
<Prop name='tabindex' isRequired={false} type='number' default='/' description='Indicates an element can be focused on, and determines how that focus is handled.'/>
|
200
|
+
<Prop name='info' isRequired={false} type='string' default='/' description='Info message of component.' />
|
201
|
+
<Prop name='error' isRequired={false} type='string' default='/' description='Error message of component.' />
|
202
|
+
<Prop name='required' isRequired={false} type='boolean' default='false' description='Mark field as required.' />
|
203
|
+
<Prop name='disabled' isRequired={false} type='boolean' default='false' description='Mark field as disabled.' />
|
197
204
|
</PropsList>
|
198
205
|
|
199
206
|
</section>
|