1 | declare namespace FomanticUI {
|
2 | interface Dropdown {
|
3 | settings: DropdownSettings;
|
4 |
|
5 | |
6 |
|
7 |
|
8 |
|
9 | (behavior: 'setup menu', values: object): void;
|
10 |
|
11 | |
12 |
|
13 |
|
14 |
|
15 | (behavior: 'change values', values: object): void;
|
16 |
|
17 | |
18 |
|
19 |
|
20 | (behavior: 'refresh'): void;
|
21 |
|
22 | |
23 |
|
24 |
|
25 | (behavior: 'toggle'): void;
|
26 |
|
27 | |
28 |
|
29 |
|
30 |
|
31 |
|
32 | (behavior: 'show', callback: Function, preventFocus: boolean): void;
|
33 |
|
34 | |
35 |
|
36 |
|
37 |
|
38 |
|
39 | (behavior: 'hide', callback:Function, preventBlur: boolean): void;
|
40 |
|
41 | |
42 |
|
43 |
|
44 |
|
45 | (behavior: 'clear', preventChangeTrigger: boolean): void;
|
46 |
|
47 | |
48 |
|
49 |
|
50 | (behavior: 'hide others'): void;
|
51 |
|
52 | |
53 |
|
54 |
|
55 |
|
56 | (behavior: 'restore defaults', preventChangeTrigger: boolean): void;
|
57 |
|
58 | |
59 |
|
60 |
|
61 | (behavior: 'restore default text'): void;
|
62 |
|
63 | |
64 |
|
65 |
|
66 | (behavior: 'restore placeholder text'): void;
|
67 |
|
68 | |
69 |
|
70 |
|
71 | (behavior: 'restore default value'): void;
|
72 |
|
73 | |
74 |
|
75 |
|
76 | (behavior: 'save defaults'): void;
|
77 |
|
78 | |
79 |
|
80 |
|
81 |
|
82 | (behavior: 'set selected', value: string, preventChangeTrigger: boolean): void;
|
83 |
|
84 | |
85 |
|
86 |
|
87 | (behavior: 'remove selected', value: string): void;
|
88 |
|
89 | |
90 |
|
91 |
|
92 | (behavior: 'set selected', values: string[]): void;
|
93 |
|
94 | |
95 |
|
96 |
|
97 | (behavior: 'set exactly', values: string[]): void;
|
98 |
|
99 | |
100 |
|
101 |
|
102 | (behavior: 'text', text: string): void;
|
103 |
|
104 | |
105 |
|
106 |
|
107 |
|
108 | (behavior: 'set value', value: string, preventChangeTrigger: boolean): void;
|
109 |
|
110 | |
111 |
|
112 |
|
113 | (behavior: 'get text'): string;
|
114 |
|
115 | |
116 |
|
117 |
|
118 |
|
119 | (behavior: 'get value'): string | string[];
|
120 |
|
121 | |
122 |
|
123 |
|
124 |
|
125 | (behavior: 'get values'): string[];
|
126 |
|
127 | |
128 |
|
129 |
|
130 | (behavior: 'get item', value: string): HTMLElement;
|
131 |
|
132 | |
133 |
|
134 |
|
135 | (behavior: 'get query'): string;
|
136 |
|
137 | |
138 |
|
139 |
|
140 | (behavior: 'bind touch events'): void;
|
141 |
|
142 | |
143 |
|
144 |
|
145 | (behavior: 'bind mouse events'): void;
|
146 |
|
147 | |
148 |
|
149 |
|
150 | (behavior: 'bind intent'): void;
|
151 |
|
152 | |
153 |
|
154 |
|
155 | (behavior: 'unbind intent'): void;
|
156 |
|
157 | |
158 |
|
159 |
|
160 | (behavior: 'determine eventInModule'): boolean;
|
161 |
|
162 | |
163 |
|
164 |
|
165 | (behavior: 'determine select action', text: string, value: string): void;
|
166 |
|
167 | |
168 |
|
169 |
|
170 | (behavior: 'set active'): void;
|
171 |
|
172 | |
173 |
|
174 |
|
175 | (behavior: 'set visible'): void;
|
176 |
|
177 | |
178 |
|
179 |
|
180 | (behavior: 'remove active'): void;
|
181 |
|
182 | |
183 |
|
184 |
|
185 | (behavior: 'remove visible'): void;
|
186 |
|
187 | |
188 |
|
189 |
|
190 | (behavior: 'is selection'): boolean;
|
191 |
|
192 | |
193 |
|
194 |
|
195 | (behavior: 'is animated'): boolean;
|
196 |
|
197 | |
198 |
|
199 |
|
200 | (behavior: 'is visible'): boolean;
|
201 |
|
202 | |
203 |
|
204 |
|
205 | (behavior: 'is hidden'): boolean;
|
206 |
|
207 | |
208 |
|
209 |
|
210 | (behavior: 'get default text'): string;
|
211 |
|
212 | |
213 |
|
214 |
|
215 | (behavior: 'get placeholder text'): string;
|
216 |
|
217 | (behavior: 'destroy'): JQuery;
|
218 | <K extends keyof DropdownSettings>(behavior: 'setting', name: K, value?: undefined, ): Partial<Pick<DropdownSettings, keyof DropdownSettings>>;
|
219 | <K extends keyof DropdownSettings>(behavior: 'setting', name: K, value: DropdownSettings[K]): JQuery;
|
220 | (behavior: 'setting', value: Partial<Pick<DropdownSettings, keyof DropdownSettings>>): JQuery;
|
221 | (settings?: Partial<Pick<DropdownSettings, keyof DropdownSettings>>): JQuery;
|
222 | }
|
223 |
|
224 | |
225 |
|
226 |
|
227 | interface DropdownSettings {
|
228 |
|
229 |
|
230 | |
231 |
|
232 |
|
233 |
|
234 | on: string;
|
235 |
|
236 | |
237 |
|
238 |
|
239 |
|
240 |
|
241 | action:
|
242 | | 'auto'
|
243 | | 'activate'
|
244 | | 'select'
|
245 | | 'combo'
|
246 | | 'nothing'
|
247 | | 'hide'
|
248 | | ((this: JQuery, text: string, value: string | false, element: JQuery) => void);
|
249 |
|
250 | /**
|
251 | * When specified allows you to initialize dropdown with specific values.
|
252 | * @see {@link https://fomantic-ui.com/modules/dropdown.html#/usage}
|
253 | * @default false
|
254 | */
|
255 | values: any;
|
256 |
|
257 | /**
|
258 | * Whether the dropdown value can be cleared by the user after being selected.
|
259 | * @default false
|
260 | */
|
261 | clearable: boolean;
|
262 |
|
263 | /**
|
264 | * Can be set to an object to specify API settings for retrieving remote selection menu content from an API endpoint.
|
265 | * @see {@link https://fomantic-ui.com/behaviors/api.html#/settings}
|
266 | * @default false
|
267 | */
|
268 | apiSettings: false | APISettings | JQueryAjaxSettings;
|
269 |
|
270 | /**
|
271 | * Whether dropdown should select new option when using keyboard shortcuts.
|
272 | * Setting to 'false' will require 'enter' or left click to confirm a choice.
|
273 | * @default true
|
274 | */
|
275 | selectOnKeydown: boolean;
|
276 |
|
277 | /**
|
278 | * The minimum characters for a search to begin showing results.
|
279 | * @default 0
|
280 | */
|
281 | minCharacters: number;
|
282 |
|
283 | /**
|
284 | * Whether results returned from API should be filtered by query before being displayed.
|
285 | * @default false
|
286 | */
|
287 | filterRemoteData: boolean;
|
288 |
|
289 | /**
|
290 | * When enabled, will automatically store selected name/value pairs in 'sessionStorage' to preserve user selection on page refresh.
|
291 | * Disabling will clear remote dropdown values on refresh.
|
292 | * @default true
|
293 | */
|
294 | saveRemoteData: boolean;
|
295 |
|
296 | /**
|
297 | * How long to wait after last user input to search remotely.
|
298 | * @default 200
|
299 | */
|
300 | throttle: number;
|
301 |
|
302 | /**
|
303 | * Element context to use when checking whether can show when 'keepOnScreen: true'.
|
304 | * @default 'window'
|
305 | */
|
306 | context: string | JQuery;
|
307 |
|
308 | /**
|
309 | * When set to 'auto' determines direction based on whether dropdown can fit on screen.
|
310 | * Set to 'upward' or 'downward' to always force a direction.
|
311 | * @default 'auto'
|
312 | */
|
313 | direction: 'auto' | 'upward' | 'downward';
|
314 |
|
315 | /**
|
316 | * Whether dropdown should try to keep itself on screen by checking whether menus display position in its 'context' (Default context is page).
|
317 | * @default true
|
318 | */
|
319 | keepOnScreen: boolean;
|
320 |
|
321 | /**
|
322 | * When using 'search selection' specifies how to match values.
|
323 | * @default 'both'
|
324 | */
|
325 | match: 'both' | 'value' | 'text';
|
326 |
|
327 | /**
|
328 | * Specifying to "true" will use a fuzzy full text search, setting to "exact" will force the exact search to be matched somewhere in the string, setting to "false" will only match start of string.
|
329 | * @default 'exact'
|
330 | */
|
331 | fullTextSearch: boolean | 'exact';
|
332 |
|
333 | /**
|
334 | * When activated, searches will also match results for base diacritic letters.
|
335 | * For example when searching for 'a', it will also match 'á' or 'â' or 'å' and so on...
|
336 | * It will also ignore diacritics for the searchterm, so if searching for 'ó', it will match 'ó', but also 'o', 'ô' or 'õ' and so on...
|
337 | * @default false
|
338 | */
|
339 | ignoreDiacritics: boolean;
|
340 |
|
341 | /**
|
342 | * How to handle dividers in the dropdown while searching.
|
343 | * Dividers are defined as all siblings of items that match the 'divider selector'.
|
344 | * @see {@link https://fomantic-ui.com/modules/dropdown.html#dom-settings}
|
345 | * @default false
|
346 | */
|
347 | hideDividers: boolean | 'empty';
|
348 |
|
349 | /**
|
350 | *
|
351 | * @default 'auto'
|
352 | */
|
353 | placeholder: 'auto' | String | false;
|
354 |
|
355 | /**
|
356 | * Whether HTML included in dropdown values should be preserved.
|
357 | * Allows icons to show up in selected value.
|
358 | * @default true
|
359 | */
|
360 | preserveHTML: boolean;
|
361 |
|
362 | /**
|
363 | * Whether to sort values when creating a dropdown automatically from a select element.
|
364 | * @default false
|
365 | */
|
366 | sortSelect: boolean | 'natural' | Function;
|
367 |
|
368 | /**
|
369 | * Whether search selection will force currently selected choice when element is blurred.
|
370 | * If a 'select' tag with a required attribute was used, the 'forceSelection' setting will be set to 'true' automatically.
|
371 | * @default false
|
372 | */
|
373 | forceSelection: boolean;
|
374 |
|
375 | /**
|
376 | * Whether search selection should allow users to add their own selections, works for single or multiselect.
|
377 | * @default false
|
378 | */
|
379 | allowAdditions: boolean;
|
380 |
|
381 | /**
|
382 | * Whether values with non matching cases should be treated as identical when adding them to a dropdown.
|
383 | * @default false
|
384 | */
|
385 | ignoreCase: boolean;
|
386 |
|
387 | /**
|
388 | * Whether values with non matching cases should be treated as identical when filtering the items.
|
389 | * @default true
|
390 | */
|
391 | ignoreSearchCase: boolean;
|
392 |
|
393 | /**
|
394 | * If disabled user additions will appear in the dropdown's menu using a specially formatted selection item formatted by 'templates.addition'.
|
395 | * @default true
|
396 | */
|
397 | hideAdditions: boolean;
|
398 |
|
399 | /**
|
400 | * When set to a number, sets the maximum number of selections.
|
401 | * @default false
|
402 | */
|
403 | maxSelections: false | number;
|
404 |
|
405 | /**
|
406 | * Whether multiselect should use labels. Must be set to 'true' when 'allowAdditions' is 'true'.
|
407 | * @default true
|
408 | */
|
409 | useLabels: boolean;
|
410 |
|
411 | /**
|
412 | * When multiselect uses normal input tag, the values will be delimited with this character.
|
413 | * Also used as the keyboard shortcut while entering multiple values.
|
414 | * @default ','
|
415 | */
|
416 | delimiter: string;
|
417 |
|
418 | /**
|
419 | * Whether to show dropdown menu automatically on element focus.
|
420 | * @default false
|
421 | */
|
422 | showOnFocus: boolean;
|
423 |
|
424 | /**
|
425 | * When set to 'true' will fire 'onChange' even when the value a user select matches the currently selected value.
|
426 | * @default false
|
427 | */
|
428 | allowReselection: boolean;
|
429 |
|
430 | /**
|
431 | * Whether to allow the element to be navigable by keyboard, by automatically creating a 'tabindex'.
|
432 | * @default true
|
433 | */
|
434 | allowTab: boolean;
|
435 |
|
436 | /**
|
437 | * Whether menu items with sub-menus (categories) should be selectable.
|
438 | * @default false
|
439 | */
|
440 | allowCategorySelection: boolean;
|
441 |
|
442 | /**
|
443 | * Whether callbacks should fire when initializing dropdown values.
|
444 | * @default false
|
445 | */
|
446 | fireOnInit: boolean;
|
447 |
|
448 | /**
|
449 | * Named transition to use when animating menu in and out.
|
450 | * Defaults to 'slide down' or 'slide up' depending on dropdown direction. Fade and slide down are available without including 'ui transitions'.
|
451 | *
|
452 | * Alternatively you can provide an 'object' to set individual values for hide/show transitions as well as hide/show duration.
|
453 | * @default 'auto'
|
454 | */
|
455 | transition: boolean | object;
|
456 |
|
457 | /**
|
458 | * Duration of animation events.
|
459 | * The value will be ignored when individual hide/show duration values are provided via the 'transition' setting.
|
460 | * @default 200
|
461 | */
|
462 | duration: number;
|
463 |
|
464 | /**
|
465 | * Specify the final transition display type ('block', 'inline-block' etc) so that it doesn't have to be calculated.
|
466 | * @default false
|
467 | */
|
468 | displayType: false | string;
|
469 |
|
470 | /**
|
471 | * Maximum glyph width, used to calculate search size.
|
472 | * This is usually size of a "W" in your font in 'em'.
|
473 | * @default 1.037
|
474 | */
|
475 | glyphWidth: number;
|
476 |
|
477 | /**
|
478 | * Whether option headers should have an additional divider line underneath when converted from '<select><optgroup>'.
|
479 | * @default true
|
480 | */
|
481 | headerDivider: boolean;
|
482 |
|
483 | /**
|
484 | * Whether the dropdown should collapse upon selection of an actionable item.
|
485 | * @default true
|
486 | */
|
487 | collapseOnActionable: boolean;
|
488 |
|
489 | /**
|
490 | * Allows customization of multi-select labels.
|
491 | * @default true
|
492 | */
|
493 | label: object;
|
494 |
|
495 | /**
|
496 | * Time in milliseconds to debounce show or hide behavior when 'on: hover' is used, or when 'touch' is used..
|
497 | * @default true
|
498 | */
|
499 | delay: object;
|
500 |
|
501 | // endregion
|
502 |
|
503 | // region Callbacks
|
504 |
|
505 | /**
|
506 | * Is called after a dropdown value changes.
|
507 | * Receives the name and value of selection and the active menu element.
|
508 | */
|
509 | onChange(value: string, text: string, $choice: JQuery): void;
|
510 |
|
511 | /**
|
512 | * Is called after a dropdown selection is added using a multiple select dropdown, only receives the added value.
|
513 | */
|
514 | onAdd(addedValue: string, addedText: string, $addedChoice: JQuery): void;
|
515 |
|
516 | /**
|
517 | * Is called after a dropdown selection is removed using a multiple select dropdown, only receives the removed value.
|
518 | */
|
519 | onRemove(removedValue: string, removedText: string, $removedChoice: JQuery): void;
|
520 |
|
521 | /**
|
522 | * Is called after an actionable item has been selected.
|
523 | */
|
524 | onActionable(value: string, text: string, $choice: JQuery): void;
|
525 |
|
526 | /**
|
527 | * Is called before a search takes place to filter the items list.
|
528 | * If 'false' is returned, the search and item filtering is cancelled.
|
529 | */
|
530 | onSearch(): void;
|
531 |
|
532 | /**
|
533 | * Is called after a label is selected by a user.
|
534 | */
|
535 | onLabelSelect($selectedLabels: JQuery): void;
|
536 |
|
537 | /**
|
538 | * Allows you to modify a label before it is added.
|
539 | * Expects the jQ DOM element for a label to be returned.
|
540 | */
|
541 | onLabelCreate(value: string, text: string): void;
|
542 |
|
543 | /**
|
544 | * Called when a label is remove, 'return false;' will prevent the label from being removed.
|
545 | */
|
546 | onLabelRemove(value: string): void;
|
547 |
|
548 | /**
|
549 | * Is called after a dropdown is searched with no matching values.
|
550 | */
|
551 | onNoResults(searchValue: string): void;
|
552 |
|
553 | /**
|
554 | * Is called before a dropdown is shown.
|
555 | * If 'false' is returned, dropdown will not be shown.
|
556 | */
|
557 | onShow(searchValue: string): void;
|
558 |
|
559 | /**
|
560 | * Is called before a dropdown is hidden.
|
561 | * If 'false' is returned, dropdown will not be hidden.
|
562 | */
|
563 | onHide(): void;
|
564 |
|
565 | // endregion
|
566 |
|
567 | // region DOM Settings
|
568 |
|
569 | /**
|
570 | * Selectors used to find parts of a module.
|
571 | */
|
572 | selector: Dropdown.SelectorSettings;
|
573 |
|
574 | /**
|
575 | * Class names used to determine element state.
|
576 | */
|
577 | className: Dropdown.ClassNameSettings;
|
578 |
|
579 | /**
|
580 | * Class names used to determine element messages.
|
581 | */
|
582 | message: Dropdown.MessageSettings;
|
583 |
|
584 | /**
|
585 | *
|
586 | */
|
587 | regExp: Dropdown.RegExpSettings;
|
588 |
|
589 | /**
|
590 | *
|
591 | */
|
592 | metadata: Dropdown.MetadataSettings;
|
593 |
|
594 | /**
|
595 | *
|
596 | */
|
597 | fields: Dropdown.FieldsSettings;
|
598 |
|
599 | /**
|
600 | *
|
601 | */
|
602 | keys: Dropdown.KeysSettings;
|
603 |
|
604 | // endregion
|
605 |
|
606 | // region Debug Settings
|
607 |
|
608 | /**
|
609 | * Name used in log statements
|
610 | * @default 'Dropdown'
|
611 | */
|
612 | name: string;
|
613 |
|
614 | /**
|
615 | * Event namespace. Makes sure module teardown does not effect other events attached to an element.
|
616 | * @default 'dropdown'
|
617 | */
|
618 | namespace: string;
|
619 |
|
620 | /**
|
621 | * Silences all console output including error messages, regardless of other debug settings.
|
622 | * @default false
|
623 | */
|
624 | silent: boolean;
|
625 |
|
626 | /**
|
627 | * Debug output to console
|
628 | * @default false
|
629 | */
|
630 | debug: boolean;
|
631 |
|
632 | /**
|
633 | * Show console.table output with performance metrics
|
634 | * @default true
|
635 | */
|
636 | performance: boolean;
|
637 |
|
638 | /**
|
639 | * Debug output includes all internal behaviors
|
640 | * @default false
|
641 | */
|
642 | verbose: boolean;
|
643 |
|
644 | error: Dropdown.ErrorSettings;
|
645 |
|
646 | // endregion
|
647 | }
|
648 |
|
649 | namespace Dropdown {
|
650 | type SelectorSettings = Partial<Pick<Settings.Selectors, keyof Settings.Selectors>>;
|
651 | type ClassNameSettings = Partial<Pick<Settings.ClassNames, keyof Settings.ClassNames>>;
|
652 | type MessageSettings = Partial<Pick<Settings.Messages, keyof Settings.Messages>>;
|
653 | type RegExpSettings = Partial<Pick<Settings.RegExps, keyof Settings.RegExps>>;
|
654 | type MetadataSettings = Partial<Pick<Settings.Metadatas, keyof Settings.Metadatas>>;
|
655 | type FieldsSettings = Partial<Pick<Settings.Fields, keyof Settings.Fields>>;
|
656 | type KeysSettings = Partial<Pick<Settings.Keys, keyof Settings.Keys>>;
|
657 | type ErrorSettings = Partial<Pick<Settings.Errors, keyof Settings.Errors>>;
|
658 |
|
659 | namespace Settings {
|
660 | interface Selectors {
|
661 | /**
|
662 | * @default '.addition'
|
663 | */
|
664 | addition: string;
|
665 |
|
666 | /**
|
667 | * @default '.divider, .header'
|
668 | */
|
669 | divider: string;
|
670 |
|
671 | /**
|
672 | * @default '.ui.dropdown'
|
673 | */
|
674 | dropdown: string;
|
675 |
|
676 | /**
|
677 | * @default '> .dropdown.icon'
|
678 | */
|
679 | icon: string;
|
680 |
|
681 | /**
|
682 | * @default '> input[type="hidden"], > select'
|
683 | */
|
684 | input: string;
|
685 |
|
686 | /**
|
687 | * @default '.item'
|
688 | */
|
689 | item: string;
|
690 |
|
691 | /**
|
692 | * @default '> .label'
|
693 | */
|
694 | label: string;
|
695 |
|
696 | /**
|
697 | * @default '> .label > .delete.icon'
|
698 | */
|
699 | remove: string;
|
700 |
|
701 | /**
|
702 | * @default '.label'
|
703 | */
|
704 | siblingLabel: string;
|
705 |
|
706 | /**
|
707 | * @default '.menu'
|
708 | */
|
709 | menu: string;
|
710 |
|
711 | /**
|
712 | * @default '.message'
|
713 | */
|
714 | message: string;
|
715 |
|
716 | /**
|
717 | * @default '.dropdown.icon'
|
718 | */
|
719 | menuIcon: string;
|
720 |
|
721 | /**
|
722 | * @default 'input.search, .menu > .search > input'
|
723 | */
|
724 | search: string;
|
725 |
|
726 | /**
|
727 | * @default '> span.sizer'
|
728 | */
|
729 | sizer: string;
|
730 |
|
731 | /**
|
732 | * @default '> .text:not(.icon)'
|
733 | */
|
734 | text: string;
|
735 |
|
736 | /**
|
737 | * @default '.disabled, .filtered'
|
738 | */
|
739 | unselectable: string;
|
740 |
|
741 | /**
|
742 | * @default '> .remove.icon'
|
743 | */
|
744 | clearIcon: string;
|
745 | }
|
746 |
|
747 | interface ClassNames {
|
748 | /**
|
749 | * @default 'active'
|
750 | */
|
751 | active: string;
|
752 |
|
753 | /**
|
754 | * @default 'addition'
|
755 | */
|
756 | addition: string;
|
757 |
|
758 | /**
|
759 | * @default 'animating'
|
760 | */
|
761 | animating: string;
|
762 |
|
763 | /**
|
764 | * @default 'description'
|
765 | */
|
766 | description: string;
|
767 |
|
768 | /**
|
769 | * @default 'vertical'
|
770 | */
|
771 | descriptionVertical: string;
|
772 |
|
773 | /**
|
774 | * @default 'disabled'
|
775 | */
|
776 | disabled: string;
|
777 |
|
778 | /**
|
779 | * @default 'empty'
|
780 | */
|
781 | empty: string;
|
782 |
|
783 | /**
|
784 | * @default 'ui dropdown'
|
785 | */
|
786 | dropdown: string;
|
787 |
|
788 | /**
|
789 | * @default 'filtered'
|
790 | */
|
791 | filtered: string;
|
792 |
|
793 | /**
|
794 | * @default 'hidden transition'
|
795 | */
|
796 | hidden: string;
|
797 |
|
798 | /**
|
799 | * @default 'icon'
|
800 | */
|
801 | icon: string;
|
802 |
|
803 | /**
|
804 | * @default 'image'
|
805 | */
|
806 | image: string;
|
807 |
|
808 | /**
|
809 | * @default 'item'
|
810 | */
|
811 | item: string;
|
812 |
|
813 | /**
|
814 | * @default 'ui label'
|
815 | */
|
816 | label: string;
|
817 |
|
818 | /**
|
819 | * @default 'loading'
|
820 | */
|
821 | loading: string;
|
822 |
|
823 | /**
|
824 | * @default 'menu'
|
825 | */
|
826 | menu: string;
|
827 |
|
828 | /**
|
829 | * @default 'message'
|
830 | */
|
831 | message: string;
|
832 |
|
833 | /**
|
834 | * @default 'multiple'
|
835 | */
|
836 | multiple: string;
|
837 |
|
838 | /**
|
839 | * @default 'default'
|
840 | */
|
841 | placeholder: string;
|
842 |
|
843 | /**
|
844 | * @default 'sizer'
|
845 | */
|
846 | sizer: string;
|
847 |
|
848 | /**
|
849 | * @default 'search'
|
850 | */
|
851 | search: string;
|
852 |
|
853 | /**
|
854 | * @default 'selected'
|
855 | */
|
856 | selected: string;
|
857 |
|
858 | /**
|
859 | * @default 'selection'
|
860 | */
|
861 | selection: string;
|
862 |
|
863 | /**
|
864 | * @default 'text'
|
865 | */
|
866 | text: string;
|
867 |
|
868 | /**
|
869 | * @default 'upward'
|
870 | */
|
871 | upward: string;
|
872 |
|
873 | /**
|
874 | * @default 'left'
|
875 | */
|
876 | leftward: string;
|
877 |
|
878 | /**
|
879 | * @default 'visible'
|
880 | */
|
881 | visible: string;
|
882 |
|
883 | /**
|
884 | * @default 'clearable'
|
885 | */
|
886 | clearable: string;
|
887 |
|
888 | /**
|
889 | * @default 'noselection'
|
890 | */
|
891 | noselection: string;
|
892 |
|
893 | /**
|
894 | * @default 'delete'
|
895 | */
|
896 | delete: string;
|
897 |
|
898 | /**
|
899 | * @default 'header'
|
900 | */
|
901 | header: string;
|
902 |
|
903 | /**
|
904 | * @default 'divider'
|
905 | */
|
906 | divider: string;
|
907 |
|
908 | /**
|
909 | * @default ''
|
910 | */
|
911 | groupIcon: string;
|
912 |
|
913 | /**
|
914 | * @default 'unfilterable'
|
915 | */
|
916 | unfilterable: string;
|
917 |
|
918 | /**
|
919 | * @default 'actionable'
|
920 | */
|
921 | actionable: string;
|
922 | }
|
923 |
|
924 | interface Messages {
|
925 | /**
|
926 | * @default 'Add <b>{term}</b>'
|
927 | */
|
928 | addResult: string;
|
929 |
|
930 | /**
|
931 | * @default '{count} selected'
|
932 | */
|
933 | count: string;
|
934 |
|
935 | /**
|
936 | * @default 'Max {maxCount} selections'
|
937 | */
|
938 | maxSelections: string;
|
939 |
|
940 | /**
|
941 | * @default 'No results found.'
|
942 | */
|
943 | noResults: string;
|
944 |
|
945 | /**
|
946 | * @default 'There was an error contacting the server'
|
947 | */
|
948 | serverError: string;
|
949 | }
|
950 |
|
951 | interface RegExps {
|
952 | /**
|
953 | * @default '/[-[\]{}()*+?.,\\^$|#\s]/g'
|
954 | */
|
955 | escape: string;
|
956 | }
|
957 |
|
958 | interface Metadatas {
|
959 | /**
|
960 | * @default 'defaultText'
|
961 | */
|
962 | defaultText: string;
|
963 |
|
964 | /**
|
965 | * @default 'defaultValue'
|
966 | */
|
967 | defaultValue: string;
|
968 |
|
969 | /**
|
970 | * @default 'placeholderText'
|
971 | */
|
972 | placeholderText: string;
|
973 |
|
974 | /**
|
975 | * @default 'text'
|
976 | */
|
977 | text: string;
|
978 |
|
979 | /**
|
980 | * @default 'value'
|
981 | */
|
982 | value: string;
|
983 | }
|
984 |
|
985 | interface Fields {
|
986 | /**
|
987 | * Grouping for api results
|
988 | * @default 'results'
|
989 | */
|
990 | remoteValues: string;
|
991 |
|
992 | /**
|
993 | * Grouping for all dropdown values
|
994 | * @default 'values'
|
995 | */
|
996 | values: string;
|
997 |
|
998 | /**
|
999 | * Whether value should be disabled
|
1000 | * @default 'disabled'
|
1001 | */
|
1002 | disabled: string;
|
1003 |
|
1004 | /**
|
1005 | * Displayed dropdown text
|
1006 | * @default 'name'
|
1007 | */
|
1008 | name: string;
|
1009 |
|
1010 | /**
|
1011 | * Displayed dropdown description
|
1012 | * @default 'description'
|
1013 | */
|
1014 | description: string;
|
1015 |
|
1016 | /**
|
1017 | * Whether description should be vertical
|
1018 | * @default 'descriptionVertical'
|
1019 | */
|
1020 | descriptionVertical: string;
|
1021 |
|
1022 | /**
|
1023 | * Actual dropdown value
|
1024 | * @default 'value'
|
1025 | */
|
1026 | value: string;
|
1027 |
|
1028 | /**
|
1029 | * Displayed text when selected
|
1030 | * @default 'text'
|
1031 | */
|
1032 | text: string;
|
1033 |
|
1034 | /**
|
1035 | * Type of dropdown element
|
1036 | * @default 'type'
|
1037 | */
|
1038 | type: string;
|
1039 |
|
1040 | /**
|
1041 | * Optional image path
|
1042 | * @default 'image'
|
1043 | */
|
1044 | image: string;
|
1045 |
|
1046 | /**
|
1047 | * Optional individual class for image
|
1048 | * @default 'imageClass'
|
1049 | */
|
1050 | imageClass: string;
|
1051 |
|
1052 | /**
|
1053 | * Optional icon name
|
1054 | * @default 'icon'
|
1055 | */
|
1056 | icon: string;
|
1057 |
|
1058 | /**
|
1059 | * Optional individual class for icon (for example to use flag instead)
|
1060 | * @default 'iconClass'
|
1061 | */
|
1062 | iconClass: string;
|
1063 |
|
1064 | /**
|
1065 | * Optional individual class for item/header
|
1066 | * @default 'class'
|
1067 | */
|
1068 | class: string;
|
1069 |
|
1070 | /**
|
1071 | * Optional divider append for group headers
|
1072 | * @default 'divider'
|
1073 | */
|
1074 | divider: string;
|
1075 |
|
1076 | /**
|
1077 | * Optional actionable item
|
1078 | * @default 'actionable'
|
1079 | */
|
1080 | actionable: string;
|
1081 | }
|
1082 |
|
1083 | interface Keys {
|
1084 | /**
|
1085 | * @default 8
|
1086 | */
|
1087 | backspace: number;
|
1088 |
|
1089 | /**
|
1090 | * @default 46
|
1091 | */
|
1092 | deleteKey: number;
|
1093 |
|
1094 | /**
|
1095 | * @default 13
|
1096 | */
|
1097 | enter: number;
|
1098 |
|
1099 | /**
|
1100 | * @default 27
|
1101 | */
|
1102 | escape: number;
|
1103 |
|
1104 | /**
|
1105 | * @default 33
|
1106 | */
|
1107 | pageUp: number;
|
1108 |
|
1109 | /**
|
1110 | * @default 34
|
1111 | */
|
1112 | pageDown: number;
|
1113 |
|
1114 | /**
|
1115 | * @default 37
|
1116 | */
|
1117 | leftArrow: number;
|
1118 |
|
1119 | /**
|
1120 | * @default 38
|
1121 | */
|
1122 | upArrow: number;
|
1123 |
|
1124 | /**
|
1125 | * @default 39
|
1126 | */
|
1127 | rightArrow: number;
|
1128 |
|
1129 | /**
|
1130 | * @default 40
|
1131 | */
|
1132 | downArrow: number;
|
1133 | }
|
1134 |
|
1135 | interface Errors {
|
1136 | /**
|
1137 | * @default 'You called a dropdown action that was not defined'
|
1138 | */
|
1139 | action: string;
|
1140 |
|
1141 | /**
|
1142 | * @default 'Once a select has been initialized behaviors must be called on the created ui dropdown'
|
1143 | */
|
1144 | alreadySetup: string;
|
1145 |
|
1146 | /**
|
1147 | * @default 'Allowing user additions currently requires the use of labels.'
|
1148 | */
|
1149 | labels: string;
|
1150 |
|
1151 | /**
|
1152 | * @default '<select> requires multiple property to be set to correctly preserve multiple values'
|
1153 | */
|
1154 | missingMultiple: string;
|
1155 |
|
1156 | /**
|
1157 | * @default 'The method you called is not defined.'
|
1158 | */
|
1159 | method: string;
|
1160 |
|
1161 | /**
|
1162 | * @default 'The API module is required to load resources remotely'
|
1163 | */
|
1164 | noAPI: string;
|
1165 |
|
1166 | /**
|
1167 | * @default 'Saving remote data requires session storage'
|
1168 | */
|
1169 | noStorage: string;
|
1170 |
|
1171 | /**
|
1172 | * @default 'This module requires ui transitions'
|
1173 | */
|
1174 | noTransition: string;
|
1175 |
|
1176 | /**
|
1177 | * @default '"ignoreDiacritics" setting will be ignored. Browser does not support String().normalize(). You may consider including as a polyfill.'
|
1178 | */
|
1179 | noNormalize: string;
|
1180 | }
|
1181 | }
|
1182 | }
|
1183 | }
|
1184 |
|
\ | No newline at end of file |