@syncfusion/ej2-multicolumn-combobox 30.2.4 → 31.1.17
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/dist/ej2-multicolumn-combobox.umd.min.js +2 -2
- package/dist/ej2-multicolumn-combobox.umd.min.js.map +1 -1
- package/dist/es6/ej2-multicolumn-combobox.es2015.js +7 -4
- package/dist/es6/ej2-multicolumn-combobox.es2015.js.map +1 -1
- package/dist/es6/ej2-multicolumn-combobox.es5.js +7 -4
- package/dist/es6/ej2-multicolumn-combobox.es5.js.map +1 -1
- package/dist/global/ej2-multicolumn-combobox.min.js +2 -2
- package/dist/global/ej2-multicolumn-combobox.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/dist/ts/index.d.ts +1 -0
- package/dist/ts/index.ts +3 -0
- package/dist/ts/multicolumn-combobox/index.d.ts +5 -0
- package/dist/ts/multicolumn-combobox/index.ts +5 -0
- package/dist/ts/multicolumn-combobox/multi-column-combo-box-model.d.ts +572 -0
- package/dist/ts/multicolumn-combobox/multi-column-combo-box.d.ts +954 -0
- package/dist/ts/multicolumn-combobox/multi-column-combo-box.ts +2521 -0
- package/package.json +49 -14
- package/src/multicolumn-combobox/multi-column-combo-box.js +7 -4
|
@@ -0,0 +1,954 @@
|
|
|
1
|
+
import { Component, INotifyPropertyChanged } from '@syncfusion/ej2-base';
|
|
2
|
+
import { ChildProperty } from '@syncfusion/ej2-base';
|
|
3
|
+
import { NumberFormatOptions, DateFormatOptions, EmitType, AnimationModel, KeyboardEventArgs } from '@syncfusion/ej2-base';
|
|
4
|
+
import { DataManager, Query, Group } from '@syncfusion/ej2-data';
|
|
5
|
+
import { Popup } from '@syncfusion/ej2-popups';
|
|
6
|
+
import { MultiColumnComboBoxModel } from './multi-column-combo-box-model';
|
|
7
|
+
import { ColumnModel, FieldSettingsModel, GridSettingsModel } from './multi-column-combo-box-model';
|
|
8
|
+
export declare class MultiColumnGrid {
|
|
9
|
+
/**
|
|
10
|
+
* Injecting required modules for component.
|
|
11
|
+
*
|
|
12
|
+
* @returns {void}
|
|
13
|
+
* @private
|
|
14
|
+
*/
|
|
15
|
+
InjectModules(): void;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Defines alignments of text, they are
|
|
19
|
+
* ```props
|
|
20
|
+
* * Left :- Defines Left alignment
|
|
21
|
+
* * Right :- Defines Right alignment
|
|
22
|
+
* * Center :- Defines Center alignment
|
|
23
|
+
* * Justify :- Defines Justify alignment
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare type TextAlign = 'Left' | 'Right' | 'Center' | 'Justify';
|
|
27
|
+
/**
|
|
28
|
+
* Defines modes of GridLine, They are
|
|
29
|
+
* ```props
|
|
30
|
+
* * Both :- Displays both the horizontal and vertical grid lines.
|
|
31
|
+
* * None :- No grid lines are displayed.
|
|
32
|
+
* * Horizontal :- Displays the horizontal grid lines only.
|
|
33
|
+
* * Vertical :- Displays the vertical grid lines only.
|
|
34
|
+
* * Default :- Displays grid lines based on the theme.
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export declare type GridLine = 'Both' | 'None' | 'Horizontal' | 'Vertical' | 'Default';
|
|
38
|
+
/**
|
|
39
|
+
* Defines floating label type of the input and decides how the label should float on the input.
|
|
40
|
+
*/
|
|
41
|
+
export declare type FloatLabelType = 'Never' | 'Always' | 'Auto';
|
|
42
|
+
/**
|
|
43
|
+
* Defines the filter type.
|
|
44
|
+
*/
|
|
45
|
+
export declare enum FilterType {
|
|
46
|
+
/**
|
|
47
|
+
* Checks whether a value begins with the specified value.
|
|
48
|
+
*/
|
|
49
|
+
StartsWith = "StartsWith",
|
|
50
|
+
/**
|
|
51
|
+
* Checks whether a value ends with specified value.
|
|
52
|
+
*/
|
|
53
|
+
EndsWith = "EndsWith",
|
|
54
|
+
/**
|
|
55
|
+
* Checks whether a value contains with specified value.
|
|
56
|
+
*/
|
|
57
|
+
Contains = "Contains"
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Specifies the sortOrder to sort the data source.
|
|
61
|
+
*/
|
|
62
|
+
export declare enum SortOrder {
|
|
63
|
+
/**
|
|
64
|
+
* The datasource is not sorting. Default value is None.
|
|
65
|
+
*/
|
|
66
|
+
None = "None",
|
|
67
|
+
/**
|
|
68
|
+
* The datasource is sorting with ascending order.
|
|
69
|
+
*/
|
|
70
|
+
Ascending = "Ascending",
|
|
71
|
+
/**
|
|
72
|
+
* The data source is sorting with descending order.
|
|
73
|
+
*/
|
|
74
|
+
Descending = "Descending"
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Specifies the type of sorting to be applied for the columns.
|
|
78
|
+
*/
|
|
79
|
+
export declare enum SortType {
|
|
80
|
+
/**
|
|
81
|
+
* Allow sorting only one column
|
|
82
|
+
*/
|
|
83
|
+
OneColumn = "OneColumn",
|
|
84
|
+
/**
|
|
85
|
+
* Allow sorting multiple columns
|
|
86
|
+
*/
|
|
87
|
+
MultipleColumns = "MultipleColumns"
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Specifies the type of wrap mode to be applied for the grid cells.
|
|
91
|
+
*/
|
|
92
|
+
export declare enum WrapMode {
|
|
93
|
+
/**
|
|
94
|
+
* Specifies that both header and content text wrapping are enabled.
|
|
95
|
+
*/
|
|
96
|
+
Both = "Both",
|
|
97
|
+
/**
|
|
98
|
+
* Specifies that only content text wrapping is enabled.
|
|
99
|
+
*/
|
|
100
|
+
Content = "Content",
|
|
101
|
+
/**
|
|
102
|
+
* Specifies that only header text wrapping is enabled.
|
|
103
|
+
*/
|
|
104
|
+
Header = "Header"
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* The fields property maps the columns of the data table and binds the data to the component.
|
|
108
|
+
*/
|
|
109
|
+
export declare class FieldSettings extends ChildProperty<FieldSettings> {
|
|
110
|
+
/**
|
|
111
|
+
* Specifies the display text of each list item.
|
|
112
|
+
*
|
|
113
|
+
* @default null
|
|
114
|
+
*/
|
|
115
|
+
text: string;
|
|
116
|
+
/**
|
|
117
|
+
* Specifies the hidden data value mapped to each list item that should contain a unique value.
|
|
118
|
+
*
|
|
119
|
+
* @default null
|
|
120
|
+
*/
|
|
121
|
+
value: string;
|
|
122
|
+
/**
|
|
123
|
+
* Specifies the category under which the list item has to be grouped.
|
|
124
|
+
*
|
|
125
|
+
* @default null
|
|
126
|
+
*/
|
|
127
|
+
groupBy: string;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Specifies the number of columns and its respective fields to be displayed in the dropdown popup.
|
|
131
|
+
*/
|
|
132
|
+
export declare class Column extends ChildProperty<Column> {
|
|
133
|
+
/**
|
|
134
|
+
* Defines the name of the field whose data will be displayed in the column.
|
|
135
|
+
*
|
|
136
|
+
* @default ''
|
|
137
|
+
*/
|
|
138
|
+
field: string;
|
|
139
|
+
/**
|
|
140
|
+
* Defines the header text of column which is used to display in column header.
|
|
141
|
+
* If headerText is not defined, then field name value will be assigned to header text.
|
|
142
|
+
*
|
|
143
|
+
* @default ''
|
|
144
|
+
*/
|
|
145
|
+
header: string;
|
|
146
|
+
/**
|
|
147
|
+
* Defines the width of the column in pixels or percentage.
|
|
148
|
+
*
|
|
149
|
+
* @default ''
|
|
150
|
+
*/
|
|
151
|
+
width: string | number;
|
|
152
|
+
/**
|
|
153
|
+
* Defines the alignment of the column in both header and content cells.
|
|
154
|
+
*
|
|
155
|
+
* @default Left
|
|
156
|
+
*/
|
|
157
|
+
textAlign: TextAlign;
|
|
158
|
+
/**
|
|
159
|
+
* It is used to change display value with the given format and does not affect the original data.
|
|
160
|
+
* Gets the format from the user which can be standard or custom `number` and `date` formats.
|
|
161
|
+
*
|
|
162
|
+
* @default null
|
|
163
|
+
* @aspType string
|
|
164
|
+
*/
|
|
165
|
+
format: string | NumberFormatOptions | DateFormatOptions;
|
|
166
|
+
/**
|
|
167
|
+
* If `displayAsCheckBox` is set to true, it displays the column value as a check box instead of Boolean value.
|
|
168
|
+
*
|
|
169
|
+
* @default false
|
|
170
|
+
*/
|
|
171
|
+
displayAsCheckBox: boolean;
|
|
172
|
+
/**
|
|
173
|
+
* Defines the column template that renders customized element in each cell of the column.
|
|
174
|
+
* It accepts either template or HTML element ID.
|
|
175
|
+
*
|
|
176
|
+
* @default null
|
|
177
|
+
* @angularType string | object
|
|
178
|
+
* @reactType string | function | JSX.Element
|
|
179
|
+
* @vueType string | function
|
|
180
|
+
* @aspType string
|
|
181
|
+
*/
|
|
182
|
+
template: string | Function;
|
|
183
|
+
/**
|
|
184
|
+
* Defines the column template as string or HTML element ID which is used to add customized element in the column header.
|
|
185
|
+
*
|
|
186
|
+
* @default null
|
|
187
|
+
* @angularType string | object
|
|
188
|
+
* @reactType string | function | JSX.Element
|
|
189
|
+
* @vueType string | function
|
|
190
|
+
* @aspType string
|
|
191
|
+
*/
|
|
192
|
+
headerTemplate: string | Function;
|
|
193
|
+
/**
|
|
194
|
+
* The CSS styles and attributes of the content cells of a particular column can be customized.
|
|
195
|
+
*
|
|
196
|
+
* @default null
|
|
197
|
+
*/
|
|
198
|
+
customAttributes: {
|
|
199
|
+
[x: string]: Object;
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Specifies the configuration of the columns in the popup content.
|
|
204
|
+
*/
|
|
205
|
+
export declare class GridSettings extends ChildProperty<GridSettings> {
|
|
206
|
+
/**
|
|
207
|
+
* If `enableAltRow` is set to true, the grid will render with `e-altrow` CSS class to the alternative row elements.
|
|
208
|
+
*
|
|
209
|
+
* @default false
|
|
210
|
+
*/
|
|
211
|
+
enableAltRow: boolean;
|
|
212
|
+
/**
|
|
213
|
+
* Defines the height of rows in the popup content.
|
|
214
|
+
*
|
|
215
|
+
* @default null
|
|
216
|
+
*/
|
|
217
|
+
rowHeight: number;
|
|
218
|
+
/**
|
|
219
|
+
* Defines the mode of grid lines. The available modes are,
|
|
220
|
+
* * `Both`: Displays both horizontal and vertical grid lines.
|
|
221
|
+
* * `None`: No grid lines are displayed.
|
|
222
|
+
* * `Horizontal`: Displays the horizontal grid lines only.
|
|
223
|
+
* * `Vertical`: Displays the vertical grid lines only.
|
|
224
|
+
* * `Default`: Displays grid lines based on the theme.
|
|
225
|
+
*
|
|
226
|
+
* @default Default
|
|
227
|
+
*/
|
|
228
|
+
gridLines: GridLine;
|
|
229
|
+
/**
|
|
230
|
+
* Specifies whether to allow text wrapping of the popup grid content.
|
|
231
|
+
*
|
|
232
|
+
* @default false
|
|
233
|
+
*/
|
|
234
|
+
allowTextWrap: boolean;
|
|
235
|
+
/**
|
|
236
|
+
* Specifies the mode for text wrapping in the popup grid content. Options include 'Both', 'Content', and 'Header'.
|
|
237
|
+
*
|
|
238
|
+
* @isenumeration true
|
|
239
|
+
*
|
|
240
|
+
* @default WrapMode.Both
|
|
241
|
+
* @asptype WrapMode
|
|
242
|
+
*/
|
|
243
|
+
textWrapMode: WrapMode | string;
|
|
244
|
+
/**
|
|
245
|
+
* Specifies whether resizing of columns is enabled in the popup grid content.
|
|
246
|
+
*
|
|
247
|
+
* @default false
|
|
248
|
+
*/
|
|
249
|
+
allowResizing: boolean;
|
|
250
|
+
/**
|
|
251
|
+
* Triggers during the column resizing.
|
|
252
|
+
*
|
|
253
|
+
* @event resizing
|
|
254
|
+
*/
|
|
255
|
+
resizing: EmitType<ResizeArgs>;
|
|
256
|
+
/**
|
|
257
|
+
* Triggers when the column resizing begins.
|
|
258
|
+
*
|
|
259
|
+
* @event resizeStart
|
|
260
|
+
*/
|
|
261
|
+
resizeStart: EmitType<ResizeArgs>;
|
|
262
|
+
/**
|
|
263
|
+
* Triggers when the column resizing ends.
|
|
264
|
+
*
|
|
265
|
+
* @event resizeStop
|
|
266
|
+
*/
|
|
267
|
+
resizeStop: EmitType<ResizeArgs>;
|
|
268
|
+
}
|
|
269
|
+
export interface PopupEventArgs {
|
|
270
|
+
/**
|
|
271
|
+
* Specifies the popup Object.
|
|
272
|
+
*
|
|
273
|
+
* @deprecated
|
|
274
|
+
*/
|
|
275
|
+
popup: Popup;
|
|
276
|
+
/**
|
|
277
|
+
* Illustrates whether the current action needs to be prevented or not.
|
|
278
|
+
*/
|
|
279
|
+
cancel?: boolean;
|
|
280
|
+
/**
|
|
281
|
+
* Specifies the animation for the popup.
|
|
282
|
+
*/
|
|
283
|
+
animation?: AnimationModel;
|
|
284
|
+
/**
|
|
285
|
+
* Specifies the original event arguments
|
|
286
|
+
*/
|
|
287
|
+
event?: MouseEvent | KeyboardEvent | TouchEvent;
|
|
288
|
+
}
|
|
289
|
+
export interface FilteringEventArgs {
|
|
290
|
+
/**
|
|
291
|
+
* To prevent the internal filtering action.
|
|
292
|
+
*/
|
|
293
|
+
preventDefaultAction: boolean;
|
|
294
|
+
/**
|
|
295
|
+
* Gets the `keyup` event arguments.
|
|
296
|
+
*/
|
|
297
|
+
event: Object;
|
|
298
|
+
/**
|
|
299
|
+
* Illustrates whether the current action needs to be prevented or not.
|
|
300
|
+
*/
|
|
301
|
+
cancel: boolean;
|
|
302
|
+
/**
|
|
303
|
+
* Returns the searched text value.
|
|
304
|
+
*/
|
|
305
|
+
text: string;
|
|
306
|
+
/**
|
|
307
|
+
* Opens the popup that displays the list of items.
|
|
308
|
+
*
|
|
309
|
+
* @param {Object[] | DataManager | DataResult } dataSource - Set the data source to filter.
|
|
310
|
+
* @param {Query} query - Specify the query to filter the data.
|
|
311
|
+
* @param {FieldSettingsModel} fields - Specify the fields to map the column in the data table.
|
|
312
|
+
* @returns {void}
|
|
313
|
+
*/
|
|
314
|
+
updateData(dataSource: {
|
|
315
|
+
[key: string]: Object;
|
|
316
|
+
}[] | DataManager | DataResult, query?: Query, fields?: FieldSettingsModel): void;
|
|
317
|
+
}
|
|
318
|
+
export interface SelectEventArgs {
|
|
319
|
+
/**
|
|
320
|
+
* Returns true if the event is triggered by interaction. Otherwise, it returns false.
|
|
321
|
+
*/
|
|
322
|
+
isInteracted: boolean;
|
|
323
|
+
/**
|
|
324
|
+
* Returns the selected row data.
|
|
325
|
+
*/
|
|
326
|
+
item: Object;
|
|
327
|
+
/**
|
|
328
|
+
* Returns the selected item as JSON Object from the data source.
|
|
329
|
+
*
|
|
330
|
+
*/
|
|
331
|
+
itemData: {
|
|
332
|
+
text: string;
|
|
333
|
+
value: string;
|
|
334
|
+
};
|
|
335
|
+
/**
|
|
336
|
+
* Returns the selected row item.
|
|
337
|
+
*
|
|
338
|
+
*/
|
|
339
|
+
itemElement: HTMLElement;
|
|
340
|
+
/**
|
|
341
|
+
* Specifies the original event arguments.
|
|
342
|
+
*/
|
|
343
|
+
event: MouseEvent | KeyboardEvent | TouchEvent;
|
|
344
|
+
/**
|
|
345
|
+
* Specifies whether the current action needs to be prevented or not.
|
|
346
|
+
*/
|
|
347
|
+
cancel?: boolean;
|
|
348
|
+
}
|
|
349
|
+
export interface ChangeEventArgs {
|
|
350
|
+
/**
|
|
351
|
+
* Specifies the original event arguments.
|
|
352
|
+
*/
|
|
353
|
+
event: MouseEvent | KeyboardEvent | TouchEvent;
|
|
354
|
+
/**
|
|
355
|
+
* Specifies whether the current action needs to be prevented or not.
|
|
356
|
+
*/
|
|
357
|
+
cancel?: boolean;
|
|
358
|
+
/**
|
|
359
|
+
* Returns true if the event is triggered by interaction. Otherwise, it returns false.
|
|
360
|
+
*/
|
|
361
|
+
isInteracted: boolean;
|
|
362
|
+
/**
|
|
363
|
+
* Returns the selected tr element.
|
|
364
|
+
*/
|
|
365
|
+
itemElement: HTMLElement;
|
|
366
|
+
/**
|
|
367
|
+
* Returns the selected item as JSON Object from the data source.
|
|
368
|
+
*/
|
|
369
|
+
itemData: {
|
|
370
|
+
text: string;
|
|
371
|
+
value: string;
|
|
372
|
+
};
|
|
373
|
+
/**
|
|
374
|
+
* Returns the previous selected tr element.
|
|
375
|
+
*/
|
|
376
|
+
previousItemElement: HTMLElement;
|
|
377
|
+
/**
|
|
378
|
+
* Returns the previous selected item as JSON Object from the data source.
|
|
379
|
+
*/
|
|
380
|
+
previousItemData: {
|
|
381
|
+
text: string;
|
|
382
|
+
value: string;
|
|
383
|
+
};
|
|
384
|
+
/**
|
|
385
|
+
* Returns the selected value
|
|
386
|
+
*
|
|
387
|
+
* @isGenericType true
|
|
388
|
+
*/
|
|
389
|
+
value: number | string;
|
|
390
|
+
/**
|
|
391
|
+
* Returns the selected row data.
|
|
392
|
+
*/
|
|
393
|
+
item: Object;
|
|
394
|
+
}
|
|
395
|
+
export interface ResizeArgs {
|
|
396
|
+
/**
|
|
397
|
+
* Defines the details about the column that is currently being resized.
|
|
398
|
+
*/
|
|
399
|
+
column: ColumnModel;
|
|
400
|
+
/**
|
|
401
|
+
* Specifies whether to cancel the resizing operation of the columns.
|
|
402
|
+
*
|
|
403
|
+
* @default false
|
|
404
|
+
*/
|
|
405
|
+
cancel: boolean;
|
|
406
|
+
}
|
|
407
|
+
/**
|
|
408
|
+
* @hidden
|
|
409
|
+
*/
|
|
410
|
+
export interface DataResult {
|
|
411
|
+
result: Object[] | Group[];
|
|
412
|
+
count: number;
|
|
413
|
+
aggregates?: object;
|
|
414
|
+
}
|
|
415
|
+
/**
|
|
416
|
+
* The `MultiColumnComboBox` allows the user to search and select values from a list. It provides a list of options that can be selected using a filter input.
|
|
417
|
+
* The selected value will be displayed in the input element.
|
|
418
|
+
*
|
|
419
|
+
* ```html
|
|
420
|
+
* <input type='text' id='multi-column'></input>
|
|
421
|
+
* ```
|
|
422
|
+
* ```typescript
|
|
423
|
+
* let multiColObj: MultiColumnComboBox = new MultiColumnComboBox();
|
|
424
|
+
* multiColObj.appendTo('#multi-column');
|
|
425
|
+
* ```
|
|
426
|
+
*/
|
|
427
|
+
export declare class MultiColumnComboBox extends Component<HTMLElement> implements INotifyPropertyChanged {
|
|
428
|
+
/**
|
|
429
|
+
* Accepts the list items either through local or remote service and binds it to the component.
|
|
430
|
+
* It can be an array of JSON Objects or an instance of `DataManager`.
|
|
431
|
+
*
|
|
432
|
+
* {% codeBlock src='multicolumn-combobox/value/index.md' %}{% endcodeBlock %}
|
|
433
|
+
*
|
|
434
|
+
* @default []
|
|
435
|
+
* @isGenericType true
|
|
436
|
+
*/
|
|
437
|
+
dataSource: Object | DataManager | DataResult;
|
|
438
|
+
/**
|
|
439
|
+
* Gets or sets the display text of the selected item.
|
|
440
|
+
*
|
|
441
|
+
* @default null
|
|
442
|
+
*/
|
|
443
|
+
text: string;
|
|
444
|
+
/**
|
|
445
|
+
* Gets or sets the value of the selected item.
|
|
446
|
+
*
|
|
447
|
+
* {% codeBlock src='multicolumn-combobox/value/index.md' %}{% endcodeBlock %}
|
|
448
|
+
*
|
|
449
|
+
* @default null
|
|
450
|
+
*/
|
|
451
|
+
value: string;
|
|
452
|
+
/**
|
|
453
|
+
* Gets or sets the index of the selected item in the component.
|
|
454
|
+
*
|
|
455
|
+
* @default null
|
|
456
|
+
*/
|
|
457
|
+
index: number | null;
|
|
458
|
+
/**
|
|
459
|
+
* Specifies the width of the component. By default, the component width sets based on the width of its parent container.
|
|
460
|
+
*
|
|
461
|
+
* @default '100%'
|
|
462
|
+
* @aspType string
|
|
463
|
+
*/
|
|
464
|
+
width: string | number;
|
|
465
|
+
/**
|
|
466
|
+
* Specifies the height of the popup list.
|
|
467
|
+
*
|
|
468
|
+
* @default '300px'
|
|
469
|
+
* @aspType string
|
|
470
|
+
*/
|
|
471
|
+
popupHeight: string | number;
|
|
472
|
+
/**
|
|
473
|
+
* Specifies the width of the popup list. By default, the popup width sets based on the width of the component.
|
|
474
|
+
*
|
|
475
|
+
* @default '100%'
|
|
476
|
+
* @aspType string
|
|
477
|
+
*/
|
|
478
|
+
popupWidth: string | number;
|
|
479
|
+
/**
|
|
480
|
+
* Specifies a short hint that describes the expected value of the multicolumn combobox component.
|
|
481
|
+
*
|
|
482
|
+
* @default null
|
|
483
|
+
*/
|
|
484
|
+
placeholder: string;
|
|
485
|
+
/**
|
|
486
|
+
* Specifies the filter action retrieves matched items through the filtering event based on the characters typed in the search TextBox.
|
|
487
|
+
* If no match is found, the value of the noRecordsTemplate property will be displayed.
|
|
488
|
+
*
|
|
489
|
+
* {% codeBlock src='multicolumn-combobox/allowFiltering/index.md' %}{% endcodeBlock %}
|
|
490
|
+
*
|
|
491
|
+
* @default true
|
|
492
|
+
*/
|
|
493
|
+
allowFiltering: boolean;
|
|
494
|
+
/**
|
|
495
|
+
* Specifies whether sorting is allowed for the columns in the dropdown list.
|
|
496
|
+
*
|
|
497
|
+
* @default true
|
|
498
|
+
*/
|
|
499
|
+
allowSorting: boolean;
|
|
500
|
+
/**
|
|
501
|
+
* Specifies whether to show or hide the clear icon in textbox.
|
|
502
|
+
* When the clear button is clicked, `value`, `text` properties will be reset to null.
|
|
503
|
+
*
|
|
504
|
+
* @default false
|
|
505
|
+
*/
|
|
506
|
+
showClearButton: boolean;
|
|
507
|
+
/**
|
|
508
|
+
* Sets CSS classes to the root element of the component that allows customization of appearance.
|
|
509
|
+
*
|
|
510
|
+
* @default ''
|
|
511
|
+
*/
|
|
512
|
+
cssClass: string;
|
|
513
|
+
/**
|
|
514
|
+
* The `fields` property maps the columns of the data table and binds the data to the component.
|
|
515
|
+
* * text - Maps the text column from data table for each list item.
|
|
516
|
+
* * value - Maps the value column from data table for each list item.
|
|
517
|
+
* * groupBy - Group the list items with it's related items by mapping groupBy field.
|
|
518
|
+
*
|
|
519
|
+
* {% codeBlock src='multicolumn-combobox/fields/index.md' %}{% endcodeBlock %}
|
|
520
|
+
*
|
|
521
|
+
* @default {text: null, value: null, groupBy: null}
|
|
522
|
+
*/
|
|
523
|
+
fields: FieldSettingsModel;
|
|
524
|
+
/**
|
|
525
|
+
* Specifies the number of columns and its respective fields to be displayed in the dropdown popup.
|
|
526
|
+
*
|
|
527
|
+
* {% codeBlock src='multicolumn-combobox/fields/index.md' %}{% endcodeBlock %}
|
|
528
|
+
*
|
|
529
|
+
* @default []
|
|
530
|
+
*/
|
|
531
|
+
columns: ColumnModel[];
|
|
532
|
+
/**
|
|
533
|
+
* Specifies the configuration of the columns in the popup content.
|
|
534
|
+
*
|
|
535
|
+
* {% codeBlock src='multicolumn-combobox/gridSettings/index.md' %}{% endcodeBlock %}
|
|
536
|
+
*
|
|
537
|
+
* @default {rowHeight: null, gridLines: Default, enableAltRow: false}
|
|
538
|
+
*/
|
|
539
|
+
gridSettings: GridSettingsModel;
|
|
540
|
+
/**
|
|
541
|
+
* Determines on which filter type, the component needs to be considered on search action.
|
|
542
|
+
* The `FilterType` and its supported data types are
|
|
543
|
+
*
|
|
544
|
+
* <table>
|
|
545
|
+
* <tr>
|
|
546
|
+
* <td colSpan=1 rowSpan=1>
|
|
547
|
+
* FilterType<br/></td><td colSpan=1 rowSpan=1>
|
|
548
|
+
* Description<br/></td><td colSpan=1 rowSpan=1>
|
|
549
|
+
* Supported Types<br/></td></tr>
|
|
550
|
+
* <tr>
|
|
551
|
+
* <td colSpan=1 rowSpan=1>
|
|
552
|
+
* StartsWith<br/></td><td colSpan=1 rowSpan=1>
|
|
553
|
+
* Checks whether a value begins with the specified value.<br/></td><td colSpan=1 rowSpan=1>
|
|
554
|
+
* String<br/></td></tr>
|
|
555
|
+
* <tr>
|
|
556
|
+
* <td colSpan=1 rowSpan=1>
|
|
557
|
+
* EndsWith<br/></td><td colSpan=1 rowSpan=1>
|
|
558
|
+
* Checks whether a value ends with specified value.<br/><br/></td><td colSpan=1 rowSpan=1>
|
|
559
|
+
* <br/>String<br/></td></tr>
|
|
560
|
+
* <tr>
|
|
561
|
+
* <td colSpan=1 rowSpan=1>
|
|
562
|
+
* Contains<br/></td><td colSpan=1 rowSpan=1>
|
|
563
|
+
* Checks whether a value contains with specified value.<br/><br/></td><td colSpan=1 rowSpan=1>
|
|
564
|
+
* <br/>String<br/></td></tr>
|
|
565
|
+
* </table>
|
|
566
|
+
*
|
|
567
|
+
* The default value set to `StartsWith`, all the suggestion items which contain typed characters to listed in the suggestion popup.
|
|
568
|
+
*
|
|
569
|
+
* {% codeBlock src='multicolumn-combobox/allowFiltering/index.md' %}{% endcodeBlock %}
|
|
570
|
+
*
|
|
571
|
+
* @isenumeration true
|
|
572
|
+
* @default FilterType.StartsWith
|
|
573
|
+
* @asptype FilterType
|
|
574
|
+
*/
|
|
575
|
+
filterType: FilterType | string;
|
|
576
|
+
/**
|
|
577
|
+
* Specifies whether to display the floating label above the input element.
|
|
578
|
+
* Possible values are:
|
|
579
|
+
* * Never - The label will never float in the input when the placeholder is available.
|
|
580
|
+
* * Always - The floating label will always float above the input.
|
|
581
|
+
* * Auto - The floating label will float above the input after focusing or entering a value in the input.
|
|
582
|
+
*
|
|
583
|
+
* {% codeBlock src='multicolumn-combobox/floatLabelType/index.md' %}{% endcodeBlock %}
|
|
584
|
+
*
|
|
585
|
+
* @default Never
|
|
586
|
+
*/
|
|
587
|
+
floatLabelType: FloatLabelType;
|
|
588
|
+
/**
|
|
589
|
+
* Specifies the sortOrder to sort the data source.
|
|
590
|
+
* The available type of sort orders are,
|
|
591
|
+
* * `None` - The datasource is not sorting. Default value is None.
|
|
592
|
+
* * `Ascending` - The datasource is sorting with ascending order.
|
|
593
|
+
* * `Descending` - The data source is sorting with descending order.
|
|
594
|
+
*
|
|
595
|
+
* @isenumeration true
|
|
596
|
+
* @default SortOrder.None
|
|
597
|
+
* @asptype SortOrder
|
|
598
|
+
*/
|
|
599
|
+
sortOrder: SortOrder | string;
|
|
600
|
+
/**
|
|
601
|
+
* Specifies the type of sorting to be applied for the columns.
|
|
602
|
+
* * `OneColumn` - Allow sorting only one column.
|
|
603
|
+
* * `MultipleColumns` - Allow sorting multiple columns.
|
|
604
|
+
*
|
|
605
|
+
* @isenumeration true
|
|
606
|
+
* @default SortType.OneColumn
|
|
607
|
+
* @asptype SortType
|
|
608
|
+
*/
|
|
609
|
+
sortType: SortType | string;
|
|
610
|
+
/**
|
|
611
|
+
* Defines whether to enable virtual scrolling in the component.
|
|
612
|
+
*
|
|
613
|
+
* @default false
|
|
614
|
+
*/
|
|
615
|
+
enableVirtualization: boolean;
|
|
616
|
+
/**
|
|
617
|
+
* Specifies a value that indicates whether the component is disabled or not.
|
|
618
|
+
*
|
|
619
|
+
* @default false
|
|
620
|
+
*/
|
|
621
|
+
disabled: boolean;
|
|
622
|
+
/**
|
|
623
|
+
* Specifies the user interactions on the component are disabled.
|
|
624
|
+
*
|
|
625
|
+
* @default false
|
|
626
|
+
*/
|
|
627
|
+
readonly: boolean;
|
|
628
|
+
/**
|
|
629
|
+
* Specifies the component’s state between page reloads. If enabled, the list of states for the value will be persisted.
|
|
630
|
+
*
|
|
631
|
+
* @default false
|
|
632
|
+
*/
|
|
633
|
+
enablePersistence: boolean;
|
|
634
|
+
/**
|
|
635
|
+
* Accepts the external Query that execute along with data processing.
|
|
636
|
+
*
|
|
637
|
+
* {% codeBlock src='multicolumn-combobox/query/index.md' %}{% endcodeBlock %}
|
|
638
|
+
*
|
|
639
|
+
* @default null
|
|
640
|
+
*/
|
|
641
|
+
query: Query;
|
|
642
|
+
/**
|
|
643
|
+
* Accepts the template design and assigns it to each items present in the popup.
|
|
644
|
+
*
|
|
645
|
+
* {% codeBlock src='multicolumn-combobox/itemTemplate/index.md' %}{% endcodeBlock %}
|
|
646
|
+
*
|
|
647
|
+
* @default null
|
|
648
|
+
* @angularType string | object
|
|
649
|
+
* @reactType string | function | JSX.Element
|
|
650
|
+
* @vueType string | function
|
|
651
|
+
* @aspType string
|
|
652
|
+
*/
|
|
653
|
+
itemTemplate: string | Function;
|
|
654
|
+
/**
|
|
655
|
+
* Accepts the template design and assigns it to the footer container of the popup.
|
|
656
|
+
*
|
|
657
|
+
* @default null
|
|
658
|
+
* @angularType string | object
|
|
659
|
+
* @reactType string | function | JSX.Element
|
|
660
|
+
* @vueType string | function
|
|
661
|
+
* @aspType string
|
|
662
|
+
*/
|
|
663
|
+
footerTemplate: string | Function;
|
|
664
|
+
/**
|
|
665
|
+
* Accepts the template design and assigns it to the group headers present in the popup list.
|
|
666
|
+
*
|
|
667
|
+
* @default null
|
|
668
|
+
* @angularType string | object
|
|
669
|
+
* @reactType string | function | JSX.Element
|
|
670
|
+
* @vueType string | function
|
|
671
|
+
* @aspType string
|
|
672
|
+
*/
|
|
673
|
+
groupTemplate: string | Function;
|
|
674
|
+
/**
|
|
675
|
+
* Accepts the template and assigns it to the popup content when the data fetch request from the remote server fails.
|
|
676
|
+
*
|
|
677
|
+
* @default 'Request Failed'
|
|
678
|
+
* @angularType string | object
|
|
679
|
+
* @reactType string | function | JSX.Element
|
|
680
|
+
* @vueType string | function
|
|
681
|
+
* @aspType string
|
|
682
|
+
*/
|
|
683
|
+
actionFailureTemplate: string | Function;
|
|
684
|
+
/**
|
|
685
|
+
* Accepts the template design and assigns it to popup list of component when no data is available on the component.
|
|
686
|
+
*
|
|
687
|
+
* @default 'No records found'
|
|
688
|
+
* @angularType string | object
|
|
689
|
+
* @reactType string | function | JSX.Element
|
|
690
|
+
* @vueType string | function
|
|
691
|
+
* @aspType string
|
|
692
|
+
*/
|
|
693
|
+
noRecordsTemplate: string | Function;
|
|
694
|
+
/**
|
|
695
|
+
* Allows additional HTML attributes such as title, name, etc., and accepts n number of attributes in a key-value pair format.
|
|
696
|
+
*
|
|
697
|
+
* {% codeBlock src='multicolumn-combobox/htmlAttributes/index.md' %}{% endcodeBlock %}
|
|
698
|
+
*
|
|
699
|
+
* @default {}
|
|
700
|
+
*/
|
|
701
|
+
htmlAttributes: {
|
|
702
|
+
[key: string]: string;
|
|
703
|
+
};
|
|
704
|
+
/**
|
|
705
|
+
* Event callback that is raised after rendering the control.
|
|
706
|
+
*
|
|
707
|
+
* @event created
|
|
708
|
+
*/
|
|
709
|
+
created: EmitType<Event>;
|
|
710
|
+
/**
|
|
711
|
+
* Triggers when the popup opens.
|
|
712
|
+
*
|
|
713
|
+
* @event open
|
|
714
|
+
*/
|
|
715
|
+
open: EmitType<PopupEventArgs>;
|
|
716
|
+
/**
|
|
717
|
+
* Triggers when the popup is closed.
|
|
718
|
+
*
|
|
719
|
+
* @event close
|
|
720
|
+
*/
|
|
721
|
+
close: EmitType<PopupEventArgs>;
|
|
722
|
+
/**
|
|
723
|
+
* Triggers when the data fetch request from the remote server fails.
|
|
724
|
+
*
|
|
725
|
+
* @event actionFailure
|
|
726
|
+
*/
|
|
727
|
+
actionFailure: EmitType<Object>;
|
|
728
|
+
/**
|
|
729
|
+
* Triggers before fetching data from the remote server.
|
|
730
|
+
*
|
|
731
|
+
* @event actionBegin
|
|
732
|
+
*/
|
|
733
|
+
actionBegin: EmitType<Object>;
|
|
734
|
+
/**
|
|
735
|
+
* Triggers after data is fetched successfully from the remote server.
|
|
736
|
+
*
|
|
737
|
+
* @event actionComplete
|
|
738
|
+
*/
|
|
739
|
+
actionComplete: EmitType<Object>;
|
|
740
|
+
/**
|
|
741
|
+
* Triggers on typing a character in the component.
|
|
742
|
+
*
|
|
743
|
+
* @event filtering
|
|
744
|
+
*/
|
|
745
|
+
filtering: EmitType<FilteringEventArgs>;
|
|
746
|
+
/**
|
|
747
|
+
* Triggers when an item in the popup is selected by the user either with mouse/tap or with keyboard navigation.
|
|
748
|
+
*
|
|
749
|
+
* @event select
|
|
750
|
+
*/
|
|
751
|
+
select: EmitType<SelectEventArgs>;
|
|
752
|
+
/**
|
|
753
|
+
* Triggers when an item in a popup is selected or when the model value is changed by the user.
|
|
754
|
+
*
|
|
755
|
+
* @event change
|
|
756
|
+
*/
|
|
757
|
+
change: EmitType<ChangeEventArgs>;
|
|
758
|
+
private dropdownElement;
|
|
759
|
+
private inputEle;
|
|
760
|
+
private inputObj;
|
|
761
|
+
private inputWrapper;
|
|
762
|
+
private popupDiv;
|
|
763
|
+
private popupEle;
|
|
764
|
+
private popupObj;
|
|
765
|
+
private gridObj;
|
|
766
|
+
private gridEle;
|
|
767
|
+
private isPopupOpen;
|
|
768
|
+
private footer;
|
|
769
|
+
private l10n;
|
|
770
|
+
private noRecord;
|
|
771
|
+
private previousItemElement;
|
|
772
|
+
private keyboardModule;
|
|
773
|
+
private keyConfigs;
|
|
774
|
+
private gridInject;
|
|
775
|
+
private prevGridHeight;
|
|
776
|
+
private popupRowHeight;
|
|
777
|
+
private matchedRowEle;
|
|
778
|
+
private matchedContent;
|
|
779
|
+
private exactMatchedContent;
|
|
780
|
+
private isDataFiltered;
|
|
781
|
+
private isInitialRender;
|
|
782
|
+
private remoteDataLength;
|
|
783
|
+
private selectedRowIndex;
|
|
784
|
+
private isShowSpinner;
|
|
785
|
+
private hiddenElement;
|
|
786
|
+
private isLocaleChanged;
|
|
787
|
+
private gridData;
|
|
788
|
+
private mainData;
|
|
789
|
+
private isMainDataUpdated;
|
|
790
|
+
private isCustomFilter;
|
|
791
|
+
private customFilterQuery;
|
|
792
|
+
private typedString;
|
|
793
|
+
/**
|
|
794
|
+
* *Constructor for creating the component
|
|
795
|
+
*
|
|
796
|
+
* @param {MultiColumnComboBoxModel} options - Specifies the MultiColumnComboBox model.
|
|
797
|
+
* @param {string | HTMLElement} element - Specifies the element to render as component.
|
|
798
|
+
* @private
|
|
799
|
+
*/
|
|
800
|
+
constructor(options?: MultiColumnComboBoxModel, element?: string | HTMLElement);
|
|
801
|
+
/**
|
|
802
|
+
* Initialize the event handler
|
|
803
|
+
*
|
|
804
|
+
* @private
|
|
805
|
+
* @returns {void}
|
|
806
|
+
*/
|
|
807
|
+
protected preRender(): void;
|
|
808
|
+
protected getDirective(): string;
|
|
809
|
+
/**
|
|
810
|
+
* To get component name.
|
|
811
|
+
*
|
|
812
|
+
* @returns {string} - It returns the current module name.
|
|
813
|
+
* @private
|
|
814
|
+
*/
|
|
815
|
+
getModuleName(): string;
|
|
816
|
+
/**
|
|
817
|
+
* Get the properties to be maintained in the persisted state.
|
|
818
|
+
*
|
|
819
|
+
* @private
|
|
820
|
+
* @returns {string} - It returns the persisted data.
|
|
821
|
+
*/
|
|
822
|
+
protected getPersistData(): string;
|
|
823
|
+
private persistData;
|
|
824
|
+
protected render(): void;
|
|
825
|
+
private setGridData;
|
|
826
|
+
protected getQuery(query: Query): Query;
|
|
827
|
+
private setHiddenValue;
|
|
828
|
+
private renderGrid;
|
|
829
|
+
private handleActionComplete;
|
|
830
|
+
private handleKeyPressed;
|
|
831
|
+
private isRowMatching;
|
|
832
|
+
private updateRowSelection;
|
|
833
|
+
private selectDataRow;
|
|
834
|
+
private findIndex;
|
|
835
|
+
private getGridColumns;
|
|
836
|
+
private updateGroupByField;
|
|
837
|
+
private onDataBound;
|
|
838
|
+
private showHideSpinner;
|
|
839
|
+
private onActionFailure;
|
|
840
|
+
private renderInput;
|
|
841
|
+
private setElementWidth;
|
|
842
|
+
private setHTMLAttributes;
|
|
843
|
+
private setEnable;
|
|
844
|
+
private setAriaDisabled;
|
|
845
|
+
private updateFieldValue;
|
|
846
|
+
private initValue;
|
|
847
|
+
private updateChangeEvent;
|
|
848
|
+
private updateCurrentValues;
|
|
849
|
+
private renderPopup;
|
|
850
|
+
private updateGridHeight;
|
|
851
|
+
private createPopup;
|
|
852
|
+
private setFooterTemplate;
|
|
853
|
+
private l10nUpdate;
|
|
854
|
+
/**
|
|
855
|
+
* Gets template content based on the template property value.
|
|
856
|
+
*
|
|
857
|
+
* @param {string | Function} template - Template property value.
|
|
858
|
+
* @returns {Function} - Return template function.
|
|
859
|
+
* @hidden
|
|
860
|
+
*/
|
|
861
|
+
private getTemplateFunction;
|
|
862
|
+
private getSize;
|
|
863
|
+
private selectedGridRow;
|
|
864
|
+
private updateValues;
|
|
865
|
+
private triggerChangeEvent;
|
|
866
|
+
private inputHandler;
|
|
867
|
+
private updateInputValue;
|
|
868
|
+
private filterDatas;
|
|
869
|
+
private selectFilteredRows;
|
|
870
|
+
private updateGridDataSource;
|
|
871
|
+
private wireEvents;
|
|
872
|
+
private unWireEvents;
|
|
873
|
+
private preventBlur;
|
|
874
|
+
private dropDownClick;
|
|
875
|
+
private onMouseClick;
|
|
876
|
+
private onDocumentClick;
|
|
877
|
+
private updateValuesOnInput;
|
|
878
|
+
private clearText;
|
|
879
|
+
private windowResize;
|
|
880
|
+
private setCssClass;
|
|
881
|
+
private keyActionHandler;
|
|
882
|
+
private gridKeyActionHandler;
|
|
883
|
+
private updateSelectedItem;
|
|
884
|
+
private selectRow;
|
|
885
|
+
private updateClearIconState;
|
|
886
|
+
private updateDynamicDataSource;
|
|
887
|
+
/**
|
|
888
|
+
* Sets the focus to the component for interaction.component for interaction.
|
|
889
|
+
*
|
|
890
|
+
* @param {FocusEvent | MouseEvent | KeyboardEvent | TouchEvent} e - Specifies the event.
|
|
891
|
+
* @returns {void}
|
|
892
|
+
*/
|
|
893
|
+
focusIn(e?: FocusEvent | MouseEvent | KeyboardEvent | TouchEvent): void;
|
|
894
|
+
/**
|
|
895
|
+
* Moves the focus from the component if the component is already focused.
|
|
896
|
+
*
|
|
897
|
+
* @param {MouseEvent | KeyboardEvent} e - Specifies the event.
|
|
898
|
+
* @returns {void}
|
|
899
|
+
*/
|
|
900
|
+
focusOut(e?: MouseEvent | KeyboardEventArgs): void;
|
|
901
|
+
/**
|
|
902
|
+
* Opens the popup that displays the list of items.
|
|
903
|
+
*
|
|
904
|
+
* @param {MouseEvent | KeyboardEventArgs | TouchEvent} e - Specifies the event.
|
|
905
|
+
* @param {boolean} isInputOpen - Specifies whether the input is open or not.
|
|
906
|
+
* @returns {void}
|
|
907
|
+
*/
|
|
908
|
+
showPopup(e?: MouseEvent | KeyboardEventArgs | TouchEvent, isInputOpen?: boolean): void;
|
|
909
|
+
/**
|
|
910
|
+
* Hides the popup if it is in open state.
|
|
911
|
+
*
|
|
912
|
+
* @param {MouseEvent | KeyboardEventArgs | TouchEvent} e - Specifies the event.
|
|
913
|
+
* @returns {void}
|
|
914
|
+
*/
|
|
915
|
+
hidePopup(e?: MouseEvent | KeyboardEventArgs | TouchEvent): void;
|
|
916
|
+
/**
|
|
917
|
+
* Adds a new item to the popup list. By default, new item appends to the list as the last item,
|
|
918
|
+
* but you can insert based on the index parameter.
|
|
919
|
+
*
|
|
920
|
+
* @param { Object[] } items - Specifies an array of JSON data or a JSON data.
|
|
921
|
+
* @param { number } index - Specifies the index to place the newly added item in the popup list.
|
|
922
|
+
* @returns {void}
|
|
923
|
+
*/
|
|
924
|
+
addItems(items: {
|
|
925
|
+
[key: string]: Object;
|
|
926
|
+
}[] | {
|
|
927
|
+
[key: string]: Object;
|
|
928
|
+
}, index?: number): void;
|
|
929
|
+
/**
|
|
930
|
+
* Gets all the list items bound on this component.
|
|
931
|
+
*
|
|
932
|
+
* @returns {Element[]}
|
|
933
|
+
*/
|
|
934
|
+
getItems(): Element[];
|
|
935
|
+
/**
|
|
936
|
+
* Gets the data Object that matches the given value.
|
|
937
|
+
*
|
|
938
|
+
* @param { string } value - Specifies the value of the list item.
|
|
939
|
+
* @returns {Object}
|
|
940
|
+
*/
|
|
941
|
+
getDataByValue(value: string): {
|
|
942
|
+
[key: string]: Object;
|
|
943
|
+
};
|
|
944
|
+
destroy(): void;
|
|
945
|
+
/**
|
|
946
|
+
* Called internally if any of the property value changed.
|
|
947
|
+
*
|
|
948
|
+
* @param {MultiColumnComboBoxModel} newProp - Specifies new properties
|
|
949
|
+
* @param {MultiColumnComboBoxModel} oldProp - Specifies old properties
|
|
950
|
+
* @returns {void}
|
|
951
|
+
* @private
|
|
952
|
+
*/
|
|
953
|
+
onPropertyChanged(newProp: MultiColumnComboBoxModel, oldProp?: MultiColumnComboBoxModel): void;
|
|
954
|
+
}
|