@materializecss/materialize 2.2.0 → 2.2.2

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.
Files changed (51) hide show
  1. package/README.md +8 -11
  2. package/dist/css/materialize.css +9471 -0
  3. package/dist/css/materialize.min.css +6 -0
  4. package/dist/css/materialize.min.css.map +1 -0
  5. package/dist/js/materialize.cjs.js +8239 -0
  6. package/dist/js/materialize.d.ts +2593 -0
  7. package/dist/js/materialize.js +8244 -0
  8. package/dist/js/materialize.min.js +6 -0
  9. package/dist/js/materialize.mjs +8211 -0
  10. package/package.json +7 -4
  11. package/sass/components/_badges.scss +1 -1
  12. package/sass/components/_breadcrumb.scss +27 -0
  13. package/sass/components/_buttons.scss +60 -167
  14. package/sass/components/_cards.scss +36 -17
  15. package/sass/components/_carousel.scss +16 -18
  16. package/sass/components/_chips.scss +6 -14
  17. package/sass/components/_collapsible.scss +8 -5
  18. package/sass/components/_collection.scss +2 -3
  19. package/sass/components/_color-variables.scss +35 -3
  20. package/sass/components/_datepicker.scss +95 -48
  21. package/sass/components/_dropdown.scss +11 -7
  22. package/sass/components/_global.scss +22 -111
  23. package/sass/components/_grid.scss +3 -1
  24. package/sass/components/_materialbox.scss +5 -6
  25. package/sass/components/_modal.scss +11 -4
  26. package/sass/components/_navbar.scss +17 -16
  27. package/sass/components/_pagination.scss +47 -0
  28. package/sass/components/_preloader.scss +3 -1
  29. package/sass/components/_pulse.scss +3 -3
  30. package/sass/components/_sidenav.scss +15 -17
  31. package/sass/components/_slider.scss +2 -4
  32. package/sass/components/_tabs.scss +45 -33
  33. package/sass/components/_tapTarget.scss +10 -11
  34. package/sass/components/_timepicker.scss +62 -47
  35. package/sass/components/_toast.scss +3 -0
  36. package/sass/components/_tooltip.scss +0 -8
  37. package/sass/components/_transitions.scss +2 -3
  38. package/sass/components/_typography.scss +5 -5
  39. package/sass/components/_variables.scss +3 -2
  40. package/sass/components/forms/_checkboxes.scss +1 -2
  41. package/sass/components/forms/_file-input.scss +7 -9
  42. package/sass/components/forms/_forms.scss +8 -14
  43. package/sass/components/forms/_input-fields.scss +17 -11
  44. package/sass/components/forms/_range.scss +6 -1
  45. package/sass/components/forms/_select.scss +11 -103
  46. package/sass/components/forms/_switches.scss +2 -0
  47. package/sass/components/mixins.module.scss +159 -0
  48. package/sass/materialize.scss +39 -43
  49. package/dist/materialize-src-v2.2.0.zip +0 -0
  50. package/dist/materialize-v2.2.0.zip +0 -0
  51. package/sass/components/_color-classes.scss +0 -32
@@ -0,0 +1,2593 @@
1
+ /**
2
+ * Base options for component initialization.
3
+ */
4
+ interface BaseOptions$1 {
5
+ }
6
+ type MElement = HTMLElement | Element;
7
+ type InitElements<T extends MElement> = NodeListOf<T> | HTMLCollectionOf<T>;
8
+ type ComponentConstructor<T extends Component<O>, O extends BaseOptions$1> = {
9
+ new (el: HTMLElement, options: Partial<O>): T;
10
+ };
11
+ type ComponentType<C extends Component<O>, O extends BaseOptions$1> = ComponentConstructor<C, O> & typeof Component<O>;
12
+ interface I18nOptions {
13
+ cancel: string;
14
+ clear: string;
15
+ done: string;
16
+ }
17
+ interface Openable {
18
+ isOpen: boolean;
19
+ open(): void;
20
+ close(): void;
21
+ }
22
+ /**
23
+ * Base class implementation for Materialize components.
24
+ */
25
+ declare class Component<O extends BaseOptions$1> {
26
+ /**
27
+ * The DOM element the plugin was initialized with.
28
+ */
29
+ el: HTMLElement;
30
+ /**
31
+ * The options the instance was initialized with.
32
+ */
33
+ options: O;
34
+ /**
35
+ * Constructs component instance and set everything up.
36
+ */
37
+ constructor(el: HTMLElement, options: Partial<O>, classDef: ComponentType<Component<O>, O>);
38
+ /**
39
+ * Initializes component instance.
40
+ * @param el HTML element.
41
+ * @param options Component options.
42
+ * @param classDef Class definition.
43
+ */
44
+ protected static init<I extends HTMLElement, O extends BaseOptions$1, C extends Component<O>>(el: I, options: O, classDef: ComponentType<C, O>): C;
45
+ /**
46
+ * Initializes component instances.
47
+ * @param els HTML elements.
48
+ * @param options Component options.
49
+ * @param classDef Class definition.
50
+ */
51
+ protected static init<I extends MElement, O extends BaseOptions$1, C extends Component<O>>(els: InitElements<I>, options: Partial<O>, classDef: ComponentType<C, O>): C[];
52
+ /**
53
+ * Initializes component instances.
54
+ * @param els HTML elements.
55
+ * @param options Component options.
56
+ * @param classDef Class definition.
57
+ */
58
+ protected static init<I extends MElement, O extends BaseOptions$1, C extends Component<O>>(els: I | InitElements<I>, options: Partial<O>, classDef: ComponentType<C, O>): C | C[];
59
+ /**
60
+ * @returns default options for component instance.
61
+ */
62
+ static get defaults(): BaseOptions$1;
63
+ /**
64
+ * Retrieves component instance for the given element.
65
+ * @param el Associated HTML Element.
66
+ */
67
+ static getInstance(el: HTMLElement): Component<BaseOptions$1>;
68
+ /**
69
+ * Destroy plugin instance and teardown.
70
+ */
71
+ destroy(): void;
72
+ }
73
+
74
+ interface DropdownOptions extends BaseOptions$1 {
75
+ /**
76
+ * Defines the edge the menu is aligned to.
77
+ * @default 'left'
78
+ */
79
+ alignment: 'left' | 'right';
80
+ /**
81
+ * If true, automatically focus dropdown el for keyboard.
82
+ * @default true
83
+ */
84
+ autoFocus: boolean;
85
+ /**
86
+ * If true, constrainWidth to the size of the dropdown activator.
87
+ * @default true
88
+ */
89
+ constrainWidth: boolean;
90
+ /**
91
+ * Provide an element that will be the bounding container of the dropdown.
92
+ * @default null
93
+ */
94
+ container: Element;
95
+ /**
96
+ * If false, the dropdown will show below the trigger.
97
+ * @default true
98
+ */
99
+ coverTrigger: boolean;
100
+ /**
101
+ * If true, close dropdown on item click.
102
+ * @default true
103
+ */
104
+ closeOnClick: boolean;
105
+ /**
106
+ * If true, the dropdown will open on hover.
107
+ * @default false
108
+ */
109
+ hover: boolean;
110
+ /**
111
+ * The duration of the transition enter in milliseconds.
112
+ * @default 150
113
+ */
114
+ inDuration: number;
115
+ /**
116
+ * The duration of the transition out in milliseconds.
117
+ * @default 250
118
+ */
119
+ outDuration: number;
120
+ /**
121
+ * Function called when dropdown starts entering.
122
+ * @default null
123
+ */
124
+ onOpenStart: (el: HTMLElement) => void;
125
+ /**
126
+ * Function called when dropdown finishes entering.
127
+ * @default null
128
+ */
129
+ onOpenEnd: (el: HTMLElement) => void;
130
+ /**
131
+ * Function called when dropdown starts exiting.
132
+ * @default null
133
+ */
134
+ onCloseStart: (el: HTMLElement) => void;
135
+ /**
136
+ * Function called when dropdown finishes exiting.
137
+ * @default null
138
+ */
139
+ onCloseEnd: (el: HTMLElement) => void;
140
+ /**
141
+ * Function called when item is clicked.
142
+ * @default null
143
+ */
144
+ onItemClick: (el: HTMLLIElement) => void;
145
+ }
146
+ declare class Dropdown extends Component<DropdownOptions> implements Openable {
147
+ static _dropdowns: Dropdown[];
148
+ /** ID of the dropdown element. */
149
+ id: string;
150
+ /** The DOM element of the dropdown. */
151
+ dropdownEl: HTMLElement;
152
+ /** If the dropdown is open. */
153
+ isOpen: boolean;
154
+ /** If the dropdown content is scrollable. */
155
+ isScrollable: boolean;
156
+ isTouchMoving: boolean;
157
+ /** The index of the item focused. */
158
+ focusedIndex: number;
159
+ filterQuery: string[];
160
+ filterTimeout: NodeJS.Timeout | number;
161
+ constructor(el: HTMLElement, options: Partial<DropdownOptions>);
162
+ static get defaults(): DropdownOptions;
163
+ /**
164
+ * Initializes instance of Dropdown.
165
+ * @param el HTML element.
166
+ * @param options Component options.
167
+ */
168
+ static init(el: HTMLElement, options?: Partial<DropdownOptions>): Dropdown;
169
+ /**
170
+ * Initializes instances of Dropdown.
171
+ * @param els HTML elements.
172
+ * @param options Component options.
173
+ */
174
+ static init(els: InitElements<MElement>, options?: Partial<DropdownOptions>): Dropdown[];
175
+ static getInstance(el: HTMLElement): Dropdown;
176
+ destroy(): void;
177
+ _setupEventHandlers(): void;
178
+ _removeEventHandlers(): void;
179
+ _setupTemporaryEventHandlers(): void;
180
+ _removeTemporaryEventHandlers(): void;
181
+ _handleClick: (e: MouseEvent) => void;
182
+ _handleMouseEnter: () => void;
183
+ _handleMouseLeave: (e: MouseEvent) => void;
184
+ _handleDocumentClick: (e: MouseEvent) => void;
185
+ _handleTriggerKeydown: (e: KeyboardEvent) => void;
186
+ _handleDocumentTouchmove: (e: TouchEvent) => void;
187
+ _handleDropdownClick: (e: MouseEvent) => void;
188
+ _handleDropdownKeydown: (e: KeyboardEvent) => void;
189
+ _handleWindowResize: () => void;
190
+ _resetFilterQuery: () => void;
191
+ _resetDropdownStyles(): void;
192
+ _resetDropdownPositioningStyles(): void;
193
+ _moveDropdownToElement(containerEl?: HTMLElement): void;
194
+ _makeDropdownFocusable(): void;
195
+ _focusFocusedItem(): void;
196
+ _getDropdownPosition(closestOverflowParent: HTMLElement): {
197
+ x: number;
198
+ y: number;
199
+ verticalAlignment: string;
200
+ horizontalAlignment: "left" | "right";
201
+ height: number;
202
+ width: number;
203
+ };
204
+ _animateIn(): void;
205
+ _animateOut(): void;
206
+ private _getClosestAncestor;
207
+ _placeDropdown(): void;
208
+ /**
209
+ * Open dropdown.
210
+ */
211
+ open: () => void;
212
+ /**
213
+ * Close dropdown.
214
+ */
215
+ close: () => void;
216
+ /**
217
+ * While dropdown is open, you can recalculate its dimensions if its contents have changed.
218
+ */
219
+ recalculateDimensions: () => void;
220
+ }
221
+
222
+ interface AutocompleteData {
223
+ /**
224
+ * A primitive value that can be converted to string.
225
+ * If "text" is not provided, it will also be used as "option text" as well
226
+ */
227
+ id: string | number;
228
+ /**
229
+ * This optional attribute is used as "display value" for the current entry.
230
+ * When provided, it will also be taken into consideration by the standard search function.
231
+ */
232
+ text?: string;
233
+ /**
234
+ * This optional attribute is used to provide a valid image URL to the current option.
235
+ */
236
+ image?: string;
237
+ /**
238
+ * Optional attributes which describes the option.
239
+ */
240
+ description?: string;
241
+ }
242
+ interface AutocompleteOptions extends BaseOptions$1 {
243
+ /**
244
+ * Data object defining autocomplete options with
245
+ * optional icon strings.
246
+ */
247
+ data: AutocompleteData[];
248
+ /**
249
+ * Flag which can be set if multiple values can be selected. The Result will be an Array.
250
+ * @default false
251
+ */
252
+ isMultiSelect: boolean;
253
+ /**
254
+ * Callback for when autocompleted.
255
+ */
256
+ onAutocomplete: (entries: AutocompleteData[]) => void;
257
+ /**
258
+ * Minimum number of characters before autocomplete starts.
259
+ * @default 1
260
+ */
261
+ minLength: number;
262
+ /**
263
+ * The height of the Menu which can be set via css-property.
264
+ * @default '300px'
265
+ */
266
+ maxDropDownHeight: string;
267
+ /**
268
+ * Function is called when the input text is altered and data can also be loaded asynchronously.
269
+ * If the results are collected the items in the list can be updated via the function setMenuItems(collectedItems).
270
+ * @param text Searched text.
271
+ * @param autocomplete Current autocomplete instance.
272
+ */
273
+ onSearch: (text: string, autocomplete: Autocomplete) => void;
274
+ /**
275
+ * If true will render the key from each item directly as HTML.
276
+ * User input MUST be properly sanitized first.
277
+ * @default false
278
+ */
279
+ allowUnsafeHTML: boolean;
280
+ /**
281
+ * Pass options object to select dropdown initialization.
282
+ * @default {}
283
+ */
284
+ dropdownOptions: Partial<DropdownOptions>;
285
+ /**
286
+ * Predefined selected values
287
+ */
288
+ selected: number[] | string[];
289
+ }
290
+ declare class Autocomplete extends Component<AutocompleteOptions> {
291
+ el: HTMLInputElement;
292
+ /** If the autocomplete is open. */
293
+ isOpen: boolean;
294
+ /** Number of matching autocomplete options. */
295
+ count: number;
296
+ /** Index of the current selected option. */
297
+ activeIndex: number;
298
+ private oldVal;
299
+ private $active;
300
+ private _mousedown;
301
+ container: HTMLElement;
302
+ /** Instance of the dropdown plugin for this autocomplete. */
303
+ dropdown: Dropdown;
304
+ static _keydown: boolean;
305
+ selectedValues: AutocompleteData[];
306
+ menuItems: AutocompleteData[];
307
+ constructor(el: HTMLInputElement, options: Partial<AutocompleteOptions>);
308
+ static get defaults(): AutocompleteOptions;
309
+ /**
310
+ * Initializes instance of Autocomplete.
311
+ * @param el HTML element.
312
+ * @param options Component options.
313
+ */
314
+ static init(el: HTMLInputElement, options?: Partial<AutocompleteOptions>): Autocomplete;
315
+ /**
316
+ * Initializes instances of Autocomplete.
317
+ * @param els HTML elements.
318
+ * @param options Component options.
319
+ */
320
+ static init(els: InitElements<HTMLInputElement | MElement>, options?: Partial<AutocompleteOptions>): Autocomplete[];
321
+ static getInstance(el: HTMLElement): Autocomplete;
322
+ destroy(): void;
323
+ _setupEventHandlers(): void;
324
+ _removeEventHandlers(): void;
325
+ _setupDropdown(): void;
326
+ _removeDropdown(): void;
327
+ _handleInputBlur: () => void;
328
+ _handleInputKeyup: (e: KeyboardEvent) => void;
329
+ _handleInputFocus: () => void;
330
+ _inputChangeDetection: (value: string) => void;
331
+ _handleInputKeydown: (e: KeyboardEvent) => void;
332
+ _handleInputClick: () => void;
333
+ _handleContainerMousedownAndTouchstart: () => void;
334
+ _handleContainerMouseupAndTouchend: () => void;
335
+ _resetCurrentElementPosition(): void;
336
+ _resetAutocomplete(): void;
337
+ _highlightPartialText(input: string, label: string): string[];
338
+ _createDropdownItem(entry: AutocompleteData): HTMLLIElement;
339
+ _renderDropdown(): void;
340
+ _setStatusLoading(): void;
341
+ _updateSelectedInfo(): void;
342
+ _refreshInputText(): void;
343
+ _triggerChanged(): void;
344
+ /**
345
+ * Show autocomplete.
346
+ */
347
+ open: () => void;
348
+ /**
349
+ * Hide autocomplete.
350
+ */
351
+ close: () => void;
352
+ /**
353
+ * Updates the visible or selectable items shown in the menu.
354
+ * @param menuItems Items to be available.
355
+ * @param selected Selected item ids
356
+ * @param open Option to conditionally open dropdown
357
+ */
358
+ setMenuItems(menuItems: AutocompleteData[], selected?: number[] | string[], open?: boolean): void;
359
+ /**
360
+ * Sets selected values.
361
+ * @deprecated @see https://github.com/materializecss/materialize/issues/552
362
+ * @param entries
363
+ */
364
+ setValues(entries: AutocompleteData[]): void;
365
+ /**
366
+ * Select a specific autocomplete option via id-property.
367
+ * @param id The id of a data-entry.
368
+ */
369
+ selectOption(id: number | string): void;
370
+ selectOptions(ids: []): void;
371
+ }
372
+
373
+ interface FloatingActionButtonOptions extends BaseOptions$1 {
374
+ /**
375
+ * Direction FAB menu opens.
376
+ * @default "top"
377
+ */
378
+ direction: 'top' | 'right' | 'bottom' | 'left';
379
+ /**
380
+ * true: FAB menu appears on hover, false: FAB menu appears on click.
381
+ * @default true
382
+ */
383
+ hoverEnabled: boolean;
384
+ /**
385
+ * Enable transit the FAB into a toolbar on click.
386
+ * @default false
387
+ */
388
+ toolbarEnabled: boolean;
389
+ }
390
+ declare class FloatingActionButton extends Component<FloatingActionButtonOptions> implements Openable {
391
+ /**
392
+ * Describes open/close state of FAB.
393
+ */
394
+ isOpen: boolean;
395
+ private _anchor;
396
+ private _menu;
397
+ private _floatingBtns;
398
+ private _floatingBtnsReverse;
399
+ offsetY: number;
400
+ offsetX: number;
401
+ btnBottom: number;
402
+ btnLeft: number;
403
+ btnWidth: number;
404
+ constructor(el: HTMLElement, options: Partial<FloatingActionButtonOptions>);
405
+ static get defaults(): FloatingActionButtonOptions;
406
+ /**
407
+ * Initializes instance of FloatingActionButton.
408
+ * @param el HTML element.
409
+ * @param options Component options.
410
+ */
411
+ static init(el: HTMLElement, options?: Partial<FloatingActionButtonOptions>): FloatingActionButton;
412
+ /**
413
+ * Initializes instances of FloatingActionButton.
414
+ * @param els HTML elements.
415
+ * @param options Component options.
416
+ */
417
+ static init(els: InitElements<MElement>, options?: Partial<FloatingActionButtonOptions>): FloatingActionButton[];
418
+ static getInstance(el: HTMLElement): FloatingActionButton;
419
+ destroy(): void;
420
+ _setupEventHandlers(): void;
421
+ _removeEventHandlers(): void;
422
+ _handleFABClick: () => void;
423
+ _handleFABKeyPress: (e: any) => void;
424
+ _handleFABToggle: () => void;
425
+ _handleDocumentClick: (e: MouseEvent) => void;
426
+ /**
427
+ * Open FAB.
428
+ */
429
+ open: () => void;
430
+ /**
431
+ * Close FAB.
432
+ */
433
+ close: () => void;
434
+ _animateInFAB(): void;
435
+ _animateOutFAB(): void;
436
+ _animateInToolbar(): void;
437
+ }
438
+
439
+ interface CardsOptions extends BaseOptions$1 {
440
+ onOpen: (el: Element) => void;
441
+ onClose: (el: Element) => void;
442
+ inDuration: number;
443
+ outDuration: number;
444
+ }
445
+ declare class Cards extends Component<CardsOptions> implements Openable {
446
+ isOpen: boolean;
447
+ private readonly cardReveal;
448
+ private readonly initialOverflow;
449
+ private _activators;
450
+ private cardRevealClose;
451
+ constructor(el: HTMLElement, options: Partial<CardsOptions>);
452
+ static get defaults(): CardsOptions;
453
+ /**
454
+ * Initializes instance of Cards.
455
+ * @param el HTML element.
456
+ * @param options Component options.
457
+ */
458
+ static init(el: HTMLElement, options?: Partial<CardsOptions>): Cards;
459
+ /**
460
+ * Initializes instances of Cards.
461
+ * @param els HTML elements.
462
+ * @param options Component options.
463
+ */
464
+ static init(els: InitElements<MElement>, options?: Partial<CardsOptions>): Cards[];
465
+ static getInstance(el: HTMLElement): Cards;
466
+ /**
467
+ * {@inheritDoc}
468
+ */
469
+ destroy(): void;
470
+ _setupEventHandlers: () => void;
471
+ _removeEventHandlers: () => void;
472
+ _handleClickInteraction: () => void;
473
+ _handleKeypressEvent: (e: KeyboardEvent) => void;
474
+ _handleRevealEvent: () => void;
475
+ _setupRevealCloseEventHandlers: () => void;
476
+ _removeRevealCloseEventHandlers: () => void;
477
+ _handleKeypressCloseEvent: (e: KeyboardEvent) => void;
478
+ /**
479
+ * Show card reveal.
480
+ */
481
+ open: () => void;
482
+ /**
483
+ * Hide card reveal.
484
+ */
485
+ close: () => void;
486
+ static Init(): void;
487
+ }
488
+
489
+ interface CarouselOptions extends BaseOptions$1 {
490
+ /**
491
+ * Transition duration in milliseconds.
492
+ * @default 200
493
+ */
494
+ duration: number;
495
+ /**
496
+ * Perspective zoom. If 0, all items are the same size.
497
+ * @default -100
498
+ */
499
+ dist: number;
500
+ /**
501
+ * Set the spacing of the center item.
502
+ * @default 0
503
+ */
504
+ shift: number;
505
+ /**
506
+ * Set the padding between non center items.
507
+ * @default 0
508
+ */
509
+ padding: number;
510
+ /**
511
+ * Set the number of visible items.
512
+ * @default 5
513
+ */
514
+ numVisible: number;
515
+ /**
516
+ * Make the carousel a full width slider like the second example.
517
+ * @default false
518
+ */
519
+ fullWidth: boolean;
520
+ /**
521
+ * Set to true to show indicators.
522
+ * @default false
523
+ */
524
+ indicators: boolean;
525
+ /**
526
+ * Don't wrap around and cycle through items.
527
+ * @default false
528
+ */
529
+ noWrap: boolean;
530
+ /**
531
+ * Callback for when a new slide is cycled to.
532
+ * @default null
533
+ */
534
+ onCycleTo: (current: Element, dragged: boolean) => void;
535
+ }
536
+ declare class Carousel extends Component<CarouselOptions> {
537
+ hasMultipleSlides: boolean;
538
+ showIndicators: boolean;
539
+ noWrap: boolean;
540
+ /** If the carousel is being clicked or tapped. */
541
+ pressed: boolean;
542
+ /** If the carousel is currently being dragged. */
543
+ dragged: boolean;
544
+ offset: number;
545
+ target: number;
546
+ images: HTMLElement[];
547
+ itemWidth: number;
548
+ itemHeight: number;
549
+ dim: number;
550
+ _indicators: HTMLUListElement;
551
+ count: number;
552
+ xform: string;
553
+ verticalDragged: boolean;
554
+ reference: number;
555
+ referenceY: number;
556
+ velocity: number;
557
+ frame: number;
558
+ timestamp: number;
559
+ ticker: string | number | NodeJS.Timeout;
560
+ amplitude: number;
561
+ /** The index of the center carousel item. */
562
+ center: number;
563
+ imageHeight: number;
564
+ scrollingTimeout: number | NodeJS.Timeout;
565
+ oneTimeCallback: (current: Element, dragged: boolean) => void | null;
566
+ constructor(el: HTMLElement, options: Partial<CarouselOptions>);
567
+ static get defaults(): CarouselOptions;
568
+ /**
569
+ * Initializes instance of Carousel.
570
+ * @param el HTML element.
571
+ * @param options Component options.
572
+ */
573
+ static init(el: HTMLElement, options?: Partial<CarouselOptions>): Carousel;
574
+ /**
575
+ * Initializes instances of Carousel.
576
+ * @param els HTML elements.
577
+ * @param options Component options.
578
+ */
579
+ static init(els: InitElements<MElement>, options?: Partial<CarouselOptions>): Carousel[];
580
+ static getInstance(el: HTMLElement): Carousel;
581
+ destroy(): void;
582
+ _setupEventHandlers(): void;
583
+ _removeEventHandlers(): void;
584
+ _handleThrottledResize: () => void;
585
+ _handleCarouselTap: (e: MouseEvent | TouchEvent) => void;
586
+ _handleCarouselDrag: (e: MouseEvent | TouchEvent) => boolean;
587
+ _handleCarouselRelease: (e: MouseEvent | TouchEvent) => boolean;
588
+ _handleCarouselClick: (e: MouseEvent | TouchEvent) => boolean;
589
+ _handleIndicatorClick: (e: Event) => void;
590
+ _handleIndicatorKeyPress: (e: KeyboardEvent) => void;
591
+ _handleIndicatorInteraction: (e: Event) => void;
592
+ _handleResize: () => void;
593
+ _setCarouselHeight(imageOnly?: boolean): void;
594
+ _xpos(e: MouseEvent | TouchEvent): number;
595
+ _ypos(e: MouseEvent | TouchEvent): number;
596
+ _wrap(x: number): any;
597
+ _track: () => void;
598
+ _autoScroll: () => void;
599
+ _scroll(x?: number): void;
600
+ _updateItemStyle(el: HTMLElement, opacity: number, zIndex: number, transform: string): void;
601
+ _cycleTo(n: number, callback?: CarouselOptions['onCycleTo']): void;
602
+ /**
603
+ * Move carousel to next slide or go forward a given amount of slides.
604
+ * @param n How many times the carousel slides.
605
+ */
606
+ next(n?: number): void;
607
+ /**
608
+ * Move carousel to previous slide or go back a given amount of slides.
609
+ * @param n How many times the carousel slides.
610
+ */
611
+ prev(n?: number): void;
612
+ /**
613
+ * Move carousel to nth slide.
614
+ * @param n Index of slide.
615
+ * @param callback "onCycleTo" optional callback.
616
+ */
617
+ set(n: number, callback?: CarouselOptions['onCycleTo']): void;
618
+ }
619
+
620
+ interface ChipData {
621
+ /**
622
+ * Unique identifier.
623
+ */
624
+ id: number | string;
625
+ /**
626
+ * Chip text. If not specified, "id" will be used.
627
+ */
628
+ text?: string;
629
+ /**
630
+ * Chip image (URL).
631
+ */
632
+ image?: string;
633
+ }
634
+ interface ChipsOptions extends BaseOptions$1 {
635
+ /**
636
+ * Set the chip data.
637
+ * @default []
638
+ */
639
+ data: ChipData[];
640
+ /**
641
+ * Set first placeholder when there are no tags.
642
+ * @default ""
643
+ */
644
+ placeholder: string;
645
+ /**
646
+ * Set second placeholder when adding additional tags.
647
+ * @default ""
648
+ */
649
+ secondaryPlaceholder: string;
650
+ /**
651
+ * Set autocomplete options.
652
+ * @default {}
653
+ */
654
+ autocompleteOptions: Partial<AutocompleteOptions>;
655
+ /**
656
+ * Toggles abililty to add custom value not in autocomplete list.
657
+ * @default false
658
+ */
659
+ autocompleteOnly: boolean;
660
+ /**
661
+ * Set chips limit.
662
+ * @default Infinity
663
+ */
664
+ limit: number;
665
+ /**
666
+ * Specifies class to be used in "close" button (useful when working with Material Symbols icon set).
667
+ * @default 'material-icons'
668
+ */
669
+ closeIconClass: string;
670
+ /**
671
+ * Specifies option to render user input field
672
+ * @default false;
673
+ */
674
+ allowUserInput: boolean;
675
+ /**
676
+ * Callback for chip add.
677
+ * @default null
678
+ */
679
+ onChipAdd: (element: HTMLElement, chip: HTMLElement) => void;
680
+ /**
681
+ * Callback for chip select.
682
+ * @default null
683
+ */
684
+ onChipSelect: (element: HTMLElement, chip: HTMLElement) => void;
685
+ /**
686
+ * Callback for chip delete.
687
+ * @default null
688
+ */
689
+ onChipDelete: (element: HTMLElement, chip: HTMLElement) => void;
690
+ }
691
+ declare class Chips extends Component<ChipsOptions> {
692
+ /** Array of the current chips data. */
693
+ chipsData: ChipData[];
694
+ /** If the chips has autocomplete enabled. */
695
+ hasAutocomplete: boolean;
696
+ /** Autocomplete instance, if any. */
697
+ autocomplete: Autocomplete;
698
+ _input: HTMLInputElement;
699
+ _label: HTMLLabelElement;
700
+ _chips: HTMLElement[];
701
+ static _keydown: boolean;
702
+ private _selectedChip;
703
+ constructor(el: HTMLElement, options: Partial<ChipsOptions>);
704
+ static get defaults(): ChipsOptions;
705
+ /**
706
+ * Initializes instance of Chips.
707
+ * @param el HTML element.
708
+ * @param options Component options.
709
+ */
710
+ static init(el: HTMLElement, options?: Partial<ChipsOptions>): Chips;
711
+ /**
712
+ * Initializes instances of Chips.
713
+ * @param els HTML elements.
714
+ * @param options Component options.
715
+ */
716
+ static init(els: InitElements<MElement>, options?: Partial<ChipsOptions>): Chips[];
717
+ static getInstance(el: HTMLElement): Chips;
718
+ getData(): ChipData[];
719
+ destroy(): void;
720
+ _setupEventHandlers(): void;
721
+ _removeEventHandlers(): void;
722
+ _handleChipClick: (e: MouseEvent) => void;
723
+ static _handleChipsKeydown(e: KeyboardEvent): void;
724
+ static _handleChipsKeyup(): void;
725
+ static _handleChipsBlur(e: Event): void;
726
+ _handleInputFocus: () => void;
727
+ _handleInputBlur: () => void;
728
+ _handleInputKeydown: (e: KeyboardEvent) => void;
729
+ _renderChip(chip: ChipData): HTMLDivElement;
730
+ _renderChips(): void;
731
+ _setupAutocomplete(): void;
732
+ _setupInput(): void;
733
+ _setupLabel(): void;
734
+ _setPlaceholder(): void;
735
+ _isValidAndNotExist(chip: ChipData): boolean;
736
+ /**
737
+ * Add chip to input.
738
+ * @param chip Chip data object
739
+ */
740
+ addChip(chip: ChipData): void;
741
+ /**
742
+ * Delete nth chip.
743
+ * @param chipIndex Index of chip
744
+ */
745
+ deleteChip(chipIndex: number): void;
746
+ /**
747
+ * Select nth chip.
748
+ * @param chipIndex Index of chip
749
+ */
750
+ selectChip(chipIndex: number): void;
751
+ static Init(): void;
752
+ }
753
+
754
+ interface CollapsibleOptions extends BaseOptions$1 {
755
+ /**
756
+ * If accordion versus collapsible.
757
+ * @default true
758
+ */
759
+ accordion: boolean;
760
+ /**
761
+ * Transition in duration in milliseconds.
762
+ * @default 300
763
+ */
764
+ inDuration: number;
765
+ /**
766
+ * Transition out duration in milliseconds.
767
+ * @default 300
768
+ */
769
+ outDuration: number;
770
+ /**
771
+ * Callback function called before collapsible is opened.
772
+ * @default null
773
+ */
774
+ onOpenStart: (el: Element) => void;
775
+ /**
776
+ * Callback function called after collapsible is opened.
777
+ * @default null
778
+ */
779
+ onOpenEnd: (el: Element) => void;
780
+ /**
781
+ * Callback function called before collapsible is closed.
782
+ * @default null
783
+ */
784
+ onCloseStart: (el: Element) => void;
785
+ /**
786
+ * Callback function called after collapsible is closed.
787
+ * @default null
788
+ */
789
+ onCloseEnd: (el: Element) => void;
790
+ }
791
+ declare class Collapsible extends Component<CollapsibleOptions> {
792
+ private _headers;
793
+ constructor(el: HTMLElement, options: Partial<CollapsibleOptions>);
794
+ static get defaults(): CollapsibleOptions;
795
+ /**
796
+ * Initializes instance of Collapsible.
797
+ * @param el HTML element.
798
+ * @param options Component options.
799
+ */
800
+ static init(el: HTMLElement, options?: Partial<CollapsibleOptions>): Collapsible;
801
+ /**
802
+ * Initializes instances of Collapsible.
803
+ * @param els HTML elements.
804
+ * @param options Component options.
805
+ */
806
+ static init(els: InitElements<MElement>, options?: Partial<CollapsibleOptions>): Collapsible[];
807
+ static getInstance(el: HTMLElement): Collapsible;
808
+ destroy(): void;
809
+ _setupEventHandlers(): void;
810
+ _removeEventHandlers(): void;
811
+ _handleCollapsibleClick: (e: MouseEvent | KeyboardEvent) => void;
812
+ _handleCollapsibleKeydown: (e: KeyboardEvent) => void;
813
+ private _setExpanded;
814
+ _animateIn(index: number): void;
815
+ _animateOut(index: number): void;
816
+ /**
817
+ * Open collapsible section.
818
+ * @param n Nth section to open.
819
+ */
820
+ open: (index: number) => void;
821
+ /**
822
+ * Close collapsible section.
823
+ * @param n Nth section to close.
824
+ */
825
+ close: (index: number) => void;
826
+ }
827
+
828
+ interface DateI18nOptions extends I18nOptions {
829
+ previousMonth: string;
830
+ nextMonth: string;
831
+ months: string[];
832
+ monthsShort: string[];
833
+ weekdays: string[];
834
+ weekdaysShort: string[];
835
+ weekdaysAbbrev: string[];
836
+ }
837
+ interface DatepickerOptions extends BaseOptions$1 {
838
+ /**
839
+ * The date output format for the input field value
840
+ * or a function taking the date and outputting the
841
+ * formatted date string.
842
+ * @default 'mmm dd, yyyy'
843
+ */
844
+ format: string | ((d: Date) => string);
845
+ /**
846
+ * Used to create date object from current input string.
847
+ * @default null
848
+ */
849
+ parse: ((value: string, format: string) => Date) | null;
850
+ /**
851
+ * The initial condition if the datepicker is based on date range.
852
+ * @default false
853
+ */
854
+ isDateRange: boolean;
855
+ /**
856
+ * The selector of the user specified date range end element
857
+ */
858
+ dateRangeEndEl: string | null;
859
+ /**
860
+ * The initial condition if the datepicker is based on multiple date selection.
861
+ * @default false
862
+ */
863
+ isMultipleSelection: boolean;
864
+ /**
865
+ * The initial date to view when first opened.
866
+ * @default null
867
+ */
868
+ defaultDate: Date | null;
869
+ /**
870
+ * The initial end date to view when first opened.
871
+ * @default null
872
+ */
873
+ defaultEndDate: Date | null;
874
+ /**
875
+ * Make the `defaultDate` the initial selected value.
876
+ * @default false
877
+ */
878
+ setDefaultDate: boolean;
879
+ /**
880
+ * Make the `defaultEndDate` the initial selected value.
881
+ * @default false
882
+ */
883
+ setDefaultEndDate: boolean;
884
+ /**
885
+ * Prevent selection of any date on the weekend.
886
+ * @default false
887
+ */
888
+ disableWeekends: boolean;
889
+ /**
890
+ * Custom function to disable certain days.
891
+ * @default null
892
+ */
893
+ disableDayFn: ((day: Date) => boolean) | null;
894
+ /**
895
+ * First day of week (0: Sunday, 1: Monday etc).
896
+ * @default 0
897
+ */
898
+ firstDay: number;
899
+ /**
900
+ * The earliest date that can be selected.
901
+ * @default null
902
+ */
903
+ minDate: Date | null;
904
+ /**
905
+ * The latest date that can be selected.
906
+ * @default null
907
+ */
908
+ maxDate: Date | null;
909
+ /**
910
+ * Number of years either side, or array of upper/lower range.
911
+ * @default 10
912
+ */
913
+ yearRange: number | number[];
914
+ /**
915
+ * Sort year range in reverse order.
916
+ * @default false
917
+ */
918
+ yearRangeReverse: boolean;
919
+ /**
920
+ * Changes Datepicker to RTL.
921
+ * @default false
922
+ */
923
+ isRTL: boolean;
924
+ /**
925
+ * Show month after year in Datepicker title.
926
+ * @default false
927
+ */
928
+ showMonthAfterYear: boolean;
929
+ /**
930
+ * Render days of the calendar grid that fall in the next
931
+ * or previous month.
932
+ * @default false
933
+ */
934
+ showDaysInNextAndPreviousMonths: boolean;
935
+ /**
936
+ * Specify if the docked datepicker is in open state by default
937
+ */
938
+ openByDefault: boolean;
939
+ /**
940
+ * Specify a DOM element OR selector for a DOM element to render
941
+ * the calendar in, by default it will be placed before the input.
942
+ * @default null
943
+ */
944
+ container: HTMLElement | string | null;
945
+ /**
946
+ * Show the clear button in the datepicker.
947
+ * @default false
948
+ */
949
+ showClearBtn: boolean;
950
+ /**
951
+ * Autosubmit calendar day select to input field
952
+ * @default false
953
+ */
954
+ autoSubmit: true;
955
+ /**
956
+ * Internationalization options.
957
+ */
958
+ i18n: Partial<DateI18nOptions>;
959
+ /**
960
+ * An array of string returned by `Date.toDateString()`,
961
+ * indicating there are events in the specified days.
962
+ * @default []
963
+ */
964
+ events: string[];
965
+ /**
966
+ * Callback function when date is selected,
967
+ * first parameter is the newly selected date.
968
+ * @default null
969
+ */
970
+ onSelect: ((selectedDate: Date) => void) | null;
971
+ /**
972
+ * Callback function when Datepicker is closed.
973
+ * @default null
974
+ */
975
+ /**
976
+ * Callback function when Datepicker HTML is refreshed.
977
+ * @default null
978
+ */
979
+ onDraw: (() => void) | null;
980
+ /**
981
+ * Callback function for interaction with input field.
982
+ * @default null
983
+ */
984
+ onInputInteraction: (() => void) | null;
985
+ /**
986
+ * Callback function for interaction with confirm button.
987
+ * @default null
988
+ */
989
+ onConfirm: (() => void) | null;
990
+ /**
991
+ * Callback function for interaction with close button.
992
+ * @default null
993
+ */
994
+ onCancel: (() => void) | null;
995
+ /** Field used for internal calculations DO NOT CHANGE IT */
996
+ minYear?: number;
997
+ /** Field used for internal calculations DO NOT CHANGE IT */
998
+ maxYear?: number;
999
+ /** Field used for internal calculations DO NOT CHANGE IT */
1000
+ minMonth?: number;
1001
+ /** Field used for internal calculations DO NOT CHANGE IT */
1002
+ maxMonth?: number;
1003
+ /** Field used for internal calculations DO NOT CHANGE IT */
1004
+ startRange?: Date;
1005
+ /** Field used for internal calculations DO NOT CHANGE IT */
1006
+ endRange?: Date;
1007
+ /**
1008
+ * Display plugin
1009
+ */
1010
+ displayPlugin: string;
1011
+ /**
1012
+ * Configurable display plugin options
1013
+ */
1014
+ displayPluginOptions: object;
1015
+ }
1016
+ declare class Datepicker extends Component<DatepickerOptions> {
1017
+ el: HTMLInputElement;
1018
+ id: string;
1019
+ multiple: boolean;
1020
+ calendarEl: HTMLElement;
1021
+ /** CLEAR button instance. */
1022
+ /** DONE button instance */
1023
+ containerEl: HTMLElement;
1024
+ yearTextEl: HTMLElement;
1025
+ dateTextEl: HTMLElement;
1026
+ endDateEl: HTMLInputElement;
1027
+ dateEls: HTMLInputElement[];
1028
+ /** The selected Date. */
1029
+ date: Date;
1030
+ endDate: null | Date;
1031
+ dates: Date[];
1032
+ formats: object;
1033
+ calendars: [{
1034
+ month: number;
1035
+ year: number;
1036
+ }];
1037
+ private _y;
1038
+ private _m;
1039
+ private displayPlugin;
1040
+ private footer;
1041
+ static _template: string;
1042
+ constructor(el: HTMLInputElement, options: Partial<DatepickerOptions>);
1043
+ static get defaults(): DatepickerOptions;
1044
+ /**
1045
+ * Initializes instance of Datepicker.
1046
+ * @param el HTML element.
1047
+ * @param options Component options.
1048
+ */
1049
+ static init(el: HTMLInputElement, options?: Partial<DatepickerOptions>): Datepicker;
1050
+ /**
1051
+ * Initializes instances of Datepicker.
1052
+ * @param els HTML elements.
1053
+ * @param options Component options.
1054
+ */
1055
+ static init(els: InitElements<HTMLInputElement | MElement>, options?: Partial<DatepickerOptions>): Datepicker[];
1056
+ static _isDate(obj: any): boolean;
1057
+ static _isWeekend(date: any): boolean;
1058
+ /**
1059
+ * @deprecated as this function has no effect without any return statement or global parameter setter.
1060
+ */
1061
+ static _setToStartOfDay(date: any): void;
1062
+ static _getDaysInMonth(year: any, month: any): number;
1063
+ static _isLeapYear(year: any): boolean;
1064
+ static _compareDates(a: any, b: any): boolean;
1065
+ static _compareWithinRange(day: Date, date: Date, dateEnd: Date): boolean;
1066
+ static _comparePastDate(a: Date, b: Date): boolean;
1067
+ static getInstance(el: HTMLElement): Datepicker;
1068
+ destroy(): void;
1069
+ destroySelects(): void;
1070
+ _insertHTMLIntoDOM(): void;
1071
+ /**
1072
+ * Renders the date input format
1073
+ */
1074
+ _renderDateInputFormat(el: HTMLInputElement): void;
1075
+ /**
1076
+ * Gets a string representation of the given date.
1077
+ */
1078
+ toString(date?: Date, format?: string | ((d: Date) => string)): string;
1079
+ /**
1080
+ * Returns the formatted date.
1081
+ */
1082
+ formatDate(date: Date, format: string): string;
1083
+ /**
1084
+ * Sets date from input field.
1085
+ */
1086
+ setDateFromInput(el: HTMLInputElement): void;
1087
+ /**
1088
+ * Set a date on the datepicker.
1089
+ * @param date Date to set on the datepicker.
1090
+ * @param preventOnSelect Undocumented as of 5 March 2018.
1091
+ * @param isEndDate
1092
+ * @param fromUserInput
1093
+ */
1094
+ setDate(date?: Date, preventOnSelect?: boolean, isEndDate?: boolean, fromUserInput?: boolean): void;
1095
+ validateDate(date: Date): void | Date;
1096
+ /**
1097
+ * Set a single date on the datepicker.
1098
+ * @param date Date to set on the datepicker.
1099
+ * @param isEndDate
1100
+ */
1101
+ setSingleDate(date: Date, isEndDate: boolean): void;
1102
+ /**
1103
+ * Set a multi date on the datepicker.
1104
+ * @param date Date to set on the datepicker.
1105
+ */
1106
+ setMultiDate(date: Date): void;
1107
+ /**
1108
+ * Sets the data-date attribute on the date input field
1109
+ */
1110
+ setDataDate(el: any, date: any): void;
1111
+ /**
1112
+ * Sets dates on the input values.
1113
+ */
1114
+ setInputValues(): void;
1115
+ setMultipleSelectionInputValues(): void;
1116
+ /**
1117
+ * Sets given date as the input value on the given element.
1118
+ */
1119
+ setInputValue(el: any, date: any): void;
1120
+ /**
1121
+ * Renders the date in the modal head section.
1122
+ */
1123
+ _renderDateDisplay(date: Date, endDate?: Date): void;
1124
+ /**
1125
+ * Change date view to a specific date on the datepicker.
1126
+ * @param date Date to show on the datepicker.
1127
+ */
1128
+ gotoDate(date: Date): void;
1129
+ adjustCalendars(): void;
1130
+ adjustCalendar(calendar: any): any;
1131
+ nextMonth(): void;
1132
+ prevMonth(): void;
1133
+ render(year: any, month: any, randId: any): string;
1134
+ renderDay(opts: any): string;
1135
+ renderRow(days: any, isRTL: any, isRowSelected: any): string;
1136
+ renderTable(opts: any, data: any, randId: any): string;
1137
+ renderHead(opts: any): string;
1138
+ renderBody(rows: any): string;
1139
+ renderTitle(instance: any, c: any, year: any, month: any, refYear: any, randId: any): string;
1140
+ draw(): void;
1141
+ _setupEventHandlers(): void;
1142
+ _setupVariables(): void;
1143
+ _removeEventHandlers(): void;
1144
+ _handleInputClick: (e: any) => void;
1145
+ _handleInputKeydown: (e: KeyboardEvent) => void;
1146
+ _handleCalendarClick: (e: any) => void;
1147
+ _handleDateRangeCalendarClick: (date: Date) => void;
1148
+ _handleClearClick: () => void;
1149
+ _clearDates: () => void;
1150
+ _handleMonthChange: (e: any) => void;
1151
+ _handleYearChange: (e: any) => void;
1152
+ gotoMonth(month: any): void;
1153
+ gotoYear(year: any): void;
1154
+ _handleInputChange: (e: Event) => void;
1155
+ renderDayName(opts: any, day: any, abbr?: boolean): any;
1156
+ createDateInput(): HTMLInputElement;
1157
+ _finishSelection: () => void;
1158
+ _confirm: () => void;
1159
+ _cancel: () => void;
1160
+ open(): this;
1161
+ close(): this;
1162
+ }
1163
+
1164
+ interface MaterialboxOptions extends BaseOptions$1 {
1165
+ /**
1166
+ * Transition in duration in milliseconds.
1167
+ * @default 275
1168
+ */
1169
+ inDuration: number;
1170
+ /**
1171
+ * Transition out duration in milliseconds.
1172
+ * @default 200
1173
+ */
1174
+ outDuration: number;
1175
+ /**
1176
+ * Callback function called before materialbox is opened.
1177
+ * @default null
1178
+ */
1179
+ onOpenStart: (el: Element) => void;
1180
+ /**
1181
+ * Callback function called after materialbox is opened.
1182
+ * @default null
1183
+ */
1184
+ onOpenEnd: (el: Element) => void;
1185
+ /**
1186
+ * Callback function called before materialbox is closed.
1187
+ * @default null
1188
+ */
1189
+ onCloseStart: (el: Element) => void;
1190
+ /**
1191
+ * Callback function called after materialbox is closed.
1192
+ * @default null
1193
+ */
1194
+ onCloseEnd: (el: Element) => void;
1195
+ }
1196
+ declare class Materialbox extends Component<MaterialboxOptions> {
1197
+ /** If the materialbox overlay is showing. */
1198
+ overlayActive: boolean;
1199
+ /** If the materialbox is no longer being animated. */
1200
+ doneAnimating: boolean;
1201
+ /** Caption, if specified. */
1202
+ caption: string;
1203
+ /** Original width of image. */
1204
+ originalWidth: number;
1205
+ /** Original height of image. */
1206
+ originalHeight: number;
1207
+ private originInlineStyles;
1208
+ private placeholder;
1209
+ private _changedAncestorList;
1210
+ private newHeight;
1211
+ private newWidth;
1212
+ private windowWidth;
1213
+ private windowHeight;
1214
+ private attrWidth;
1215
+ private attrHeight;
1216
+ private _overlay;
1217
+ private _photoCaption;
1218
+ constructor(el: HTMLElement, options: Partial<MaterialboxOptions>);
1219
+ static get defaults(): MaterialboxOptions;
1220
+ /**
1221
+ * Initializes instance of MaterialBox.
1222
+ * @param el HTML element.
1223
+ * @param options Component options.
1224
+ */
1225
+ static init(el: HTMLElement, options?: Partial<MaterialboxOptions>): Materialbox;
1226
+ /**
1227
+ * Initializes instances of MaterialBox.
1228
+ * @param els HTML elements.
1229
+ * @param options Component options.
1230
+ */
1231
+ static init(els: InitElements<MElement>, options?: Partial<MaterialboxOptions>): Materialbox[];
1232
+ static getInstance(el: HTMLElement): Materialbox;
1233
+ destroy(): void;
1234
+ private _setupEventHandlers;
1235
+ private _removeEventHandlers;
1236
+ private _handleMaterialboxClick;
1237
+ private _handleMaterialboxKeypress;
1238
+ private _handleMaterialboxToggle;
1239
+ private _handleWindowScroll;
1240
+ private _handleWindowResize;
1241
+ private _handleWindowEscape;
1242
+ private _makeAncestorsOverflowVisible;
1243
+ private _offset;
1244
+ private _updateVars;
1245
+ private _animateImageIn;
1246
+ private _animateImageOut;
1247
+ private _addCaption;
1248
+ private _removeCaption;
1249
+ private _addOverlay;
1250
+ private _removeOverlay;
1251
+ /**
1252
+ * Open materialbox.
1253
+ */
1254
+ open: () => void;
1255
+ /**
1256
+ * Close materialbox.
1257
+ */
1258
+ close: () => void;
1259
+ }
1260
+
1261
+ interface ModalOptions extends BaseOptions$1 {
1262
+ opacity: number;
1263
+ inDuration: number;
1264
+ outDuration: number;
1265
+ preventScrolling: boolean;
1266
+ onOpenStart: (this: Modal, el: HTMLElement) => void;
1267
+ onOpenEnd: (this: Modal, el: HTMLElement) => void;
1268
+ onCloseStart: (el: HTMLElement) => void;
1269
+ onCloseEnd: (el: HTMLElement) => void;
1270
+ dismissible: boolean;
1271
+ startingTop: string;
1272
+ endingTop: string;
1273
+ }
1274
+ declare class Modal extends Component<ModalOptions> {
1275
+ #private;
1276
+ constructor(el: HTMLElement, options: Partial<ModalOptions>);
1277
+ static get defaults(): {
1278
+ opacity: number;
1279
+ inDuration: number;
1280
+ outDuration: number;
1281
+ onOpenStart: any;
1282
+ onOpenEnd: any;
1283
+ onCloseStart: any;
1284
+ onCloseEnd: any;
1285
+ preventScrolling: boolean;
1286
+ dismissible: boolean;
1287
+ startingTop: string;
1288
+ endingTop: string;
1289
+ };
1290
+ static init(el: HTMLElement, options?: Partial<ModalOptions>): Modal;
1291
+ static init(els: InitElements<MElement>, options?: Partial<ModalOptions>): Modal[];
1292
+ static getInstance(el: HTMLElement): Modal;
1293
+ destroy(): void;
1294
+ _setupEventHandlers(): void;
1295
+ _removeEventHandlers(): void;
1296
+ _handleTriggerClick(): void;
1297
+ _handleOverlayClick(): void;
1298
+ _handleModalCloseClick(): void;
1299
+ _handleKeydown(): void;
1300
+ _handleFocus(): void;
1301
+ open(): this;
1302
+ close(): this;
1303
+ static create(config: any): string | HTMLDialogElement;
1304
+ }
1305
+
1306
+ declare class Edges {
1307
+ top: boolean;
1308
+ right: boolean;
1309
+ bottom: boolean;
1310
+ left: boolean;
1311
+ }
1312
+
1313
+ declare class Bounding {
1314
+ left: number;
1315
+ top: number;
1316
+ width: number;
1317
+ height: number;
1318
+ }
1319
+
1320
+ /**
1321
+ * Class with utilitary functions for global usage.
1322
+ */
1323
+ declare class Utils {
1324
+ /** Specifies wether tab is pressed or not. */
1325
+ static tabPressed: boolean;
1326
+ /** Specifies wether there is a key pressed. */
1327
+ static keyDown: boolean;
1328
+ /**
1329
+ * Key maps.
1330
+ */
1331
+ static keys: {
1332
+ TAB: string[];
1333
+ ENTER: string[];
1334
+ ESC: string[];
1335
+ BACKSPACE: string[];
1336
+ ARROW_UP: string[];
1337
+ ARROW_DOWN: string[];
1338
+ ARROW_LEFT: string[];
1339
+ ARROW_RIGHT: string[];
1340
+ DELETE: string[];
1341
+ };
1342
+ /**
1343
+ * Detects when a key is pressed.
1344
+ * @param e Event instance.
1345
+ */
1346
+ static docHandleKeydown(e: KeyboardEvent): void;
1347
+ /**
1348
+ * Detects when a key is released.
1349
+ * @param e Event instance.
1350
+ */
1351
+ static docHandleKeyup(e: KeyboardEvent): void;
1352
+ /**
1353
+ * Detects when document is focused.
1354
+ * @param e Event instance.
1355
+ */
1356
+ static docHandleFocus(e: FocusEvent): void;
1357
+ /**
1358
+ * Detects when document is not focused.
1359
+ * @param e Event instance.
1360
+ */
1361
+ static docHandleBlur(e: FocusEvent): void;
1362
+ /**
1363
+ * Generates a unique string identifier.
1364
+ */
1365
+ static guid(): string;
1366
+ /**
1367
+ * Checks for exceeded edges
1368
+ * @param container Container element.
1369
+ * @param bounding Bounding rect.
1370
+ * @param offset Element offset.
1371
+ */
1372
+ static checkWithinContainer(container: HTMLElement, bounding: Bounding, offset: number): Edges;
1373
+ /**
1374
+ * Checks if element can be aligned in multiple directions.
1375
+ * @param el Element to be inspected.
1376
+ * @param container Container element.
1377
+ * @param bounding Bounding rect.
1378
+ * @param offset Element offset.
1379
+ */
1380
+ static checkPossibleAlignments(el: HTMLElement, container: HTMLElement, bounding: Bounding, offset: number): {
1381
+ top: boolean;
1382
+ right: boolean;
1383
+ bottom: boolean;
1384
+ left: boolean;
1385
+ spaceOnTop: number;
1386
+ spaceOnRight: number;
1387
+ spaceOnBottom: number;
1388
+ spaceOnLeft: number;
1389
+ };
1390
+ /**
1391
+ * Retrieves target element id from trigger.
1392
+ * @param trigger Trigger element.
1393
+ */
1394
+ static getIdFromTrigger(trigger: HTMLElement): string;
1395
+ /**
1396
+ * Retrieves document scroll postion from top.
1397
+ */
1398
+ static getDocumentScrollTop(): number;
1399
+ /**
1400
+ * Retrieves document scroll postion from left.
1401
+ */
1402
+ static getDocumentScrollLeft(): number;
1403
+ /**
1404
+ * Fires the given function after a certain ammount of time.
1405
+ * @param func Function to be fired.
1406
+ * @param wait Wait time.
1407
+ * @param options Additional options.
1408
+ */
1409
+ static throttle(func: (Function: object) => void, wait: number, options?: Partial<{
1410
+ leading: boolean;
1411
+ trailing: boolean;
1412
+ }>): (...args: any[]) => any;
1413
+ /**
1414
+ * Renders confirm/close buttons with callback function
1415
+ */
1416
+ static createConfirmationContainer(container: HTMLElement, confirmText: string, cancelText: string, onConfirm: (Function: object) => void, onCancel: (Function: object) => void): void;
1417
+ /**
1418
+ * Renders a button with optional callback function
1419
+ */
1420
+ static createButton(container: HTMLElement, text: string, className?: string[], visibility?: boolean, callback?: (Function: object) => void): void;
1421
+ static _setAbsolutePosition(origin: HTMLElement, container: HTMLElement, position: string, margin: number, transitionMovement: number, align?: string): {
1422
+ x: number;
1423
+ y: number;
1424
+ };
1425
+ static _repositionWithinScreen(x: number, y: number, width: number, height: number, margin: number, transitionMovement: number, align: string): {
1426
+ x: number;
1427
+ y: number;
1428
+ };
1429
+ }
1430
+
1431
+ interface ParallaxOptions extends BaseOptions$1 {
1432
+ /**
1433
+ * The minimum width of the screen, in pixels, where the parallax functionality starts working.
1434
+ * @default 0
1435
+ */
1436
+ responsiveThreshold: number;
1437
+ }
1438
+ declare class Parallax extends Component<ParallaxOptions> {
1439
+ private _enabled;
1440
+ private _img;
1441
+ static _parallaxes: Parallax[];
1442
+ static _handleScrollThrottled: () => Utils;
1443
+ static _handleWindowResizeThrottled: () => Utils;
1444
+ constructor(el: HTMLElement, options: Partial<ParallaxOptions>);
1445
+ static get defaults(): ParallaxOptions;
1446
+ /**
1447
+ * Initializes instance of Parallax.
1448
+ * @param el HTML element.
1449
+ * @param options Component options.
1450
+ */
1451
+ static init(el: HTMLElement, options?: Partial<ParallaxOptions>): Parallax;
1452
+ /**
1453
+ * Initializes instances of Parallax.
1454
+ * @param els HTML elements.
1455
+ * @param options Component options.
1456
+ */
1457
+ static init(els: InitElements<MElement>, options?: Partial<ParallaxOptions>): Parallax[];
1458
+ static getInstance(el: HTMLElement): Parallax;
1459
+ destroy(): void;
1460
+ static _handleScroll(): void;
1461
+ static _handleWindowResize(): void;
1462
+ _setupEventHandlers(): void;
1463
+ _removeEventHandlers(): void;
1464
+ _setupStyles(): void;
1465
+ _handleImageLoad: () => void;
1466
+ private _offset;
1467
+ _updateParallax(): void;
1468
+ }
1469
+
1470
+ interface PushpinOptions extends BaseOptions$1 {
1471
+ /**
1472
+ * The distance in pixels from the top of the page where
1473
+ * the element becomes fixed.
1474
+ * @default 0
1475
+ */
1476
+ top: number;
1477
+ /**
1478
+ * The distance in pixels from the top of the page where
1479
+ * the elements stops being fixed.
1480
+ * @default Infinity
1481
+ */
1482
+ bottom: number;
1483
+ /**
1484
+ * The offset from the top the element will be fixed at.
1485
+ * @default 0
1486
+ */
1487
+ offset: number;
1488
+ /**
1489
+ * Callback function called when pushpin position changes.
1490
+ * You are provided with a position string.
1491
+ * @default null
1492
+ */
1493
+ onPositionChange: (position: 'pinned' | 'pin-top' | 'pin-bottom') => void;
1494
+ }
1495
+ declare class Pushpin extends Component<PushpinOptions> {
1496
+ static _pushpins: Pushpin[];
1497
+ originalOffset: number;
1498
+ constructor(el: HTMLElement, options: Partial<PushpinOptions>);
1499
+ static get defaults(): PushpinOptions;
1500
+ /**
1501
+ * Initializes instance of Pushpin.
1502
+ * @param el HTML element.
1503
+ * @param options Component options.
1504
+ */
1505
+ static init(el: HTMLElement, options?: Partial<PushpinOptions>): Pushpin;
1506
+ /**
1507
+ * Initializes instances of Pushpin.
1508
+ * @param els HTML elements.
1509
+ * @param options Component options.
1510
+ */
1511
+ static init(els: InitElements<MElement>, options?: Partial<PushpinOptions>): Pushpin[];
1512
+ static getInstance(el: HTMLElement): Pushpin;
1513
+ destroy(): void;
1514
+ static _updateElements(): void;
1515
+ _setupEventHandlers(): void;
1516
+ _removeEventHandlers(): void;
1517
+ _updatePosition(): void;
1518
+ _removePinClasses(): void;
1519
+ }
1520
+
1521
+ interface ScrollSpyOptions extends BaseOptions$1 {
1522
+ /**
1523
+ * Throttle of scroll handler.
1524
+ * @default 100
1525
+ */
1526
+ throttle: number;
1527
+ /**
1528
+ * Offset for centering element when scrolled to.
1529
+ * @default 200
1530
+ */
1531
+ scrollOffset: number;
1532
+ /**
1533
+ * Class applied to active elements.
1534
+ * @default 'active'
1535
+ */
1536
+ activeClass: string;
1537
+ /**
1538
+ * Used to find active element.
1539
+ * @default id => 'a[href="#' + id + '"]'
1540
+ */
1541
+ getActiveElement: (id: string) => string;
1542
+ /**
1543
+ * Used to keep last top element active even if
1544
+ * scrollbar goes outside of scrollspy elements.
1545
+ *
1546
+ * If there is no last top element,
1547
+ * then the active one will be the first element.
1548
+ *
1549
+ * @default false
1550
+ */
1551
+ keepTopElementActive: boolean;
1552
+ /**
1553
+ * Used to set scroll animation duration in milliseconds.
1554
+ * @default null (browser's native animation implementation/duration)
1555
+ */
1556
+ animationDuration: number | null;
1557
+ }
1558
+ declare class ScrollSpy extends Component<ScrollSpyOptions> {
1559
+ static _elements: ScrollSpy[];
1560
+ static _count: number;
1561
+ static _increment: number;
1562
+ static _elementsInView: ScrollSpy[];
1563
+ static _visibleElements: HTMLElement[];
1564
+ static _ticks: number;
1565
+ static _keptTopActiveElement: HTMLElement | null;
1566
+ private tickId;
1567
+ private id;
1568
+ constructor(el: HTMLElement, options: Partial<ScrollSpyOptions>);
1569
+ static get defaults(): ScrollSpyOptions;
1570
+ /**
1571
+ * Initializes instance of ScrollSpy.
1572
+ * @param el HTML element.
1573
+ * @param options Component options.
1574
+ */
1575
+ static init(el: HTMLElement, options?: Partial<ScrollSpyOptions>): ScrollSpy;
1576
+ /**
1577
+ * Initializes instances of ScrollSpy.
1578
+ * @param els HTML elements.
1579
+ * @param options Component options.
1580
+ */
1581
+ static init(els: InitElements<MElement>, options?: Partial<ScrollSpyOptions>): ScrollSpy[];
1582
+ static getInstance(el: HTMLElement): ScrollSpy;
1583
+ destroy(): void;
1584
+ _setupEventHandlers(): void;
1585
+ _removeEventHandlers(): void;
1586
+ _handleThrottledResize: () => void;
1587
+ _handleTriggerClick: (e: MouseEvent) => void;
1588
+ _handleWindowScroll: () => void;
1589
+ static _offset(el: any): {
1590
+ top: number;
1591
+ left: number;
1592
+ };
1593
+ static _findElements(top: number, right: number, bottom: number, left: number): ScrollSpy[];
1594
+ _enter(): void;
1595
+ _exit(): void;
1596
+ private _resetKeptTopActiveElementIfNeeded;
1597
+ private static _getDistanceToViewport;
1598
+ private static _smoothScrollIntoView;
1599
+ }
1600
+
1601
+ interface FormSelectOptions extends BaseOptions$1 {
1602
+ /**
1603
+ * Classes to be added to the select wrapper element.
1604
+ * @default ""
1605
+ */
1606
+ classes: string;
1607
+ /**
1608
+ * Pass options object to select dropdown initialization.
1609
+ * @default {}
1610
+ */
1611
+ dropdownOptions: Partial<DropdownOptions>;
1612
+ }
1613
+ type ValueStruct = {
1614
+ el: HTMLOptionElement;
1615
+ optionEl: HTMLElement;
1616
+ };
1617
+ declare class FormSelect extends Component<FormSelectOptions> {
1618
+ el: HTMLSelectElement;
1619
+ /** If this is a multiple select. */
1620
+ isMultiple: boolean;
1621
+ /**
1622
+ * Label associated with the current select element.
1623
+ * Is "null", if not detected.
1624
+ */
1625
+ labelEl: HTMLLabelElement;
1626
+ /** Dropdown UL element. */
1627
+ dropdownOptions: HTMLUListElement;
1628
+ /** Text input that shows current selected option. */
1629
+ input: HTMLInputElement;
1630
+ /** Instance of the dropdown plugin for this select. */
1631
+ dropdown: Dropdown;
1632
+ /** The select wrapper element. */
1633
+ wrapper: HTMLDivElement;
1634
+ selectOptions: (HTMLOptionElement | HTMLOptGroupElement)[];
1635
+ private _values;
1636
+ nativeTabIndex: number;
1637
+ constructor(el: HTMLSelectElement, options: FormSelectOptions);
1638
+ static get defaults(): FormSelectOptions;
1639
+ /**
1640
+ * Initializes instance of FormSelect.
1641
+ * @param el HTML element.
1642
+ * @param options Component options.
1643
+ */
1644
+ static init(el: HTMLSelectElement, options?: Partial<FormSelectOptions>): FormSelect;
1645
+ /**
1646
+ * Initializes instances of FormSelect.
1647
+ * @param els HTML elements.
1648
+ * @param options Component options.
1649
+ */
1650
+ static init(els: InitElements<HTMLSelectElement | MElement>, options?: Partial<FormSelectOptions>): FormSelect[];
1651
+ static getInstance(el: HTMLElement): FormSelect;
1652
+ destroy(): void;
1653
+ _setupEventHandlers(): void;
1654
+ _removeEventHandlers(): void;
1655
+ _handleSelectChange: () => void;
1656
+ _handleOptionClick: (e: MouseEvent | KeyboardEvent) => void;
1657
+ _arraysEqual<T, E>(a: T[], b: (E | T)[]): boolean;
1658
+ _selectOptionElement(virtualOption: HTMLElement): void;
1659
+ _handleInputClick: () => void;
1660
+ _setupDropdown(): void;
1661
+ _addOptionToValues(realOption: HTMLOptionElement, virtualOption: HTMLElement): void;
1662
+ _removeDropdown(): void;
1663
+ _createAndAppendOptionWithIcon(realOption: HTMLOptionElement | HTMLOptGroupElement, type: string): HTMLLIElement;
1664
+ _selectValue(value: ValueStruct): void;
1665
+ _deselectValue(value: ValueStruct): void;
1666
+ _deselectAll(): void;
1667
+ _isValueSelected(value: ValueStruct): boolean;
1668
+ _toggleEntryFromArray(value: ValueStruct): void;
1669
+ _getSelectedOptions(): HTMLOptionElement[];
1670
+ _setValueToInput(): void;
1671
+ _setSelectedStates(): void;
1672
+ _activateOption(ul: HTMLElement, li: HTMLElement): void;
1673
+ getSelectedValues(): string[];
1674
+ }
1675
+
1676
+ interface SidenavOptions extends BaseOptions$1 {
1677
+ /**
1678
+ * Side of screen on which Sidenav appears.
1679
+ * @default 'left'
1680
+ */
1681
+ edge: 'left' | 'right';
1682
+ /**
1683
+ * Allow swipe gestures to open/close Sidenav.
1684
+ * @default true
1685
+ */
1686
+ draggable: boolean;
1687
+ /**
1688
+ * Width of the area where you can start dragging.
1689
+ * @default '10px'
1690
+ */
1691
+ dragTargetWidth: string;
1692
+ /**
1693
+ * Length in ms of enter transition.
1694
+ * @default 250
1695
+ */
1696
+ inDuration: number;
1697
+ /**
1698
+ * Length in ms of exit transition.
1699
+ * @default 200
1700
+ */
1701
+ outDuration: number;
1702
+ /**
1703
+ * Prevent page from scrolling while sidenav is open.
1704
+ * @default true
1705
+ */
1706
+ preventScrolling: boolean;
1707
+ /**
1708
+ * Function called when sidenav starts entering.
1709
+ */
1710
+ onOpenStart: (elem: HTMLElement) => void;
1711
+ /**
1712
+ * Function called when sidenav finishes entering.
1713
+ */
1714
+ onOpenEnd: (elem: HTMLElement) => void;
1715
+ /**
1716
+ * Function called when sidenav starts exiting.
1717
+ */
1718
+ onCloseStart: (elem: HTMLElement) => void;
1719
+ /**
1720
+ * Function called when sidenav finishes exiting.
1721
+ */
1722
+ onCloseEnd: (elem: HTMLElement) => void;
1723
+ }
1724
+ declare class Sidenav extends Component<SidenavOptions> implements Openable {
1725
+ id: string;
1726
+ /** Describes open/close state of Sidenav. */
1727
+ isOpen: boolean;
1728
+ /** Describes if sidenav is fixed. */
1729
+ isFixed: boolean;
1730
+ /** Describes if Sidenav is being dragged. */
1731
+ isDragged: boolean;
1732
+ lastWindowWidth: number;
1733
+ lastWindowHeight: number;
1734
+ static _sidenavs: Sidenav[];
1735
+ private _overlay;
1736
+ dragTarget: Element;
1737
+ private _startingXpos;
1738
+ private _xPos;
1739
+ private _time;
1740
+ private _width;
1741
+ private _initialScrollTop;
1742
+ private _verticallyScrolling;
1743
+ private deltaX;
1744
+ private velocityX;
1745
+ private percentOpen;
1746
+ constructor(el: HTMLElement, options: Partial<SidenavOptions>);
1747
+ static get defaults(): SidenavOptions;
1748
+ /**
1749
+ * Initializes instance of Sidenav.
1750
+ * @param el HTML element.
1751
+ * @param options Component options.
1752
+ */
1753
+ static init(el: HTMLElement, options?: Partial<SidenavOptions>): Sidenav;
1754
+ /**
1755
+ * Initializes instances of Sidenav.
1756
+ * @param els HTML elements.
1757
+ * @param options Component options.
1758
+ */
1759
+ static init(els: InitElements<MElement>, options?: Partial<SidenavOptions>): Sidenav[];
1760
+ static getInstance(el: HTMLElement): Sidenav;
1761
+ destroy(): void;
1762
+ private _createOverlay;
1763
+ private _setupEventHandlers;
1764
+ private _removeEventHandlers;
1765
+ private _handleTriggerClick;
1766
+ private _startDrag;
1767
+ private _dragMoveUpdate;
1768
+ private _handleDragTargetDrag;
1769
+ private _handleDragTargetRelease;
1770
+ private _handleCloseDrag;
1771
+ private _calculateDelta;
1772
+ private _handleCloseRelease;
1773
+ private _handleCloseTriggerClick;
1774
+ private _handleWindowResize;
1775
+ private _setupClasses;
1776
+ private _removeClasses;
1777
+ private _setupFixed;
1778
+ private _isDraggable;
1779
+ private _isCurrentlyFixed;
1780
+ private _createDragTarget;
1781
+ private _preventBodyScrolling;
1782
+ private _enableBodyScrolling;
1783
+ /**
1784
+ * Opens Sidenav.
1785
+ */
1786
+ open: () => void;
1787
+ /**
1788
+ * Closes Sidenav.
1789
+ */
1790
+ close: () => void;
1791
+ private _animateIn;
1792
+ private _animateOut;
1793
+ private _animateSidenavIn;
1794
+ private _animateSidenavOut;
1795
+ private _animateOverlayIn;
1796
+ private _animateOverlayOut;
1797
+ private _setAriaHidden;
1798
+ private _setTabIndex;
1799
+ }
1800
+
1801
+ interface TabsOptions extends BaseOptions$1 {
1802
+ /**
1803
+ * Transition duration in milliseconds.
1804
+ * @default 300
1805
+ */
1806
+ duration: number;
1807
+ /**
1808
+ * Callback for when a new tab content is shown.
1809
+ * @default null
1810
+ */
1811
+ onShow: (newContent: Element) => void;
1812
+ /**
1813
+ * Set to true to enable swipeable tabs.
1814
+ * This also uses the responsiveThreshold option.
1815
+ * @default false
1816
+ */
1817
+ swipeable: boolean;
1818
+ /**
1819
+ * The maximum width of the screen, in pixels,
1820
+ * where the swipeable functionality initializes.
1821
+ * @default infinity
1822
+ */
1823
+ responsiveThreshold: number;
1824
+ }
1825
+ declare class Tabs extends Component<TabsOptions> {
1826
+ _tabLinks: NodeListOf<HTMLAnchorElement>;
1827
+ _index: number;
1828
+ _indicator: HTMLLIElement;
1829
+ _tabWidth: number;
1830
+ _tabsWidth: number;
1831
+ _tabsCarousel: Carousel;
1832
+ _activeTabLink: HTMLAnchorElement;
1833
+ _content: HTMLElement;
1834
+ constructor(el: HTMLElement, options: Partial<TabsOptions>);
1835
+ static get defaults(): TabsOptions;
1836
+ /**
1837
+ * Initializes instance of Tabs.
1838
+ * @param el HTML element.
1839
+ * @param options Component options.
1840
+ */
1841
+ static init(el: HTMLElement, options?: Partial<TabsOptions>): Tabs;
1842
+ /**
1843
+ * Initializes instances of Tabs.
1844
+ * @param els HTML elements.
1845
+ * @param options Component options.
1846
+ */
1847
+ static init(els: InitElements<MElement>, options?: Partial<TabsOptions>): Tabs[];
1848
+ static getInstance(el: HTMLElement): Tabs;
1849
+ destroy(): void;
1850
+ /**
1851
+ * The index of tab that is currently shown.
1852
+ */
1853
+ get index(): number;
1854
+ _setupEventHandlers(): void;
1855
+ _removeEventHandlers(): void;
1856
+ _handleWindowResize: () => void;
1857
+ _handleTabClick: (e: MouseEvent) => void;
1858
+ _createIndicator(): void;
1859
+ _setupActiveTabLink(): void;
1860
+ _setupSwipeableTabs(): void;
1861
+ _teardownSwipeableTabs(): void;
1862
+ _setupNormalTabs(): void;
1863
+ _teardownNormalTabs(): void;
1864
+ _setTabsAndTabWidth(): void;
1865
+ _calcRightPos(el: any): number;
1866
+ _calcLeftPos(el: any): number;
1867
+ /**
1868
+ * Recalculate tab indicator position. This is useful when
1869
+ * the indicator position is not correct.
1870
+ */
1871
+ updateTabIndicator(): void;
1872
+ _animateIndicator(prevIndex: any): void;
1873
+ /**
1874
+ * Show tab content that corresponds to the tab with the id.
1875
+ * @param tabId The id of the tab that you want to switch to.
1876
+ */
1877
+ select(tabId: string): void;
1878
+ }
1879
+
1880
+ interface TapTargetOptions extends BaseOptions$1 {
1881
+ /**
1882
+ * Callback function called when Tap Target is opened.
1883
+ * @default null
1884
+ */
1885
+ onOpen: (origin: HTMLElement) => void;
1886
+ /**
1887
+ * Callback function called when Tap Target is closed.
1888
+ * @default null
1889
+ */
1890
+ onClose: (origin: HTMLElement) => void;
1891
+ }
1892
+ declare class TapTarget extends Component<TapTargetOptions> implements Openable {
1893
+ /**
1894
+ * If the tap target is open.
1895
+ */
1896
+ isOpen: boolean;
1897
+ static _taptargets: TapTarget[];
1898
+ private wrapper;
1899
+ private originEl;
1900
+ private waveEl;
1901
+ private contentEl;
1902
+ constructor(el: HTMLElement, options: Partial<TapTargetOptions>);
1903
+ static get defaults(): TapTargetOptions;
1904
+ /**
1905
+ * Initializes instance of TapTarget.
1906
+ * @param el HTML element.
1907
+ * @param options Component options.
1908
+ */
1909
+ static init(el: HTMLElement, options?: Partial<TapTargetOptions>): TapTarget;
1910
+ /**
1911
+ * Initializes instances of TapTarget.
1912
+ * @param els HTML elements.
1913
+ * @param options Component options.
1914
+ */
1915
+ static init(els: InitElements<MElement>, options?: Partial<TapTargetOptions>): TapTarget[];
1916
+ static getInstance(el: HTMLElement): TapTarget;
1917
+ destroy(): void;
1918
+ _setupEventHandlers(): void;
1919
+ _removeEventHandlers(): void;
1920
+ _handleThrottledResize: () => void;
1921
+ _handleKeyboardInteraction: (e: KeyboardEvent) => void;
1922
+ _handleTargetToggle: () => void;
1923
+ _handleResize: () => void;
1924
+ _handleDocumentClick: (e: MouseEvent | TouchEvent | KeyboardEvent) => void;
1925
+ _setup(): void;
1926
+ private _offset;
1927
+ _calculatePositioning(): void;
1928
+ /**
1929
+ * Open Tap Target.
1930
+ */
1931
+ open: () => void;
1932
+ /**
1933
+ * Close Tap Target.
1934
+ */
1935
+ close: () => void;
1936
+ }
1937
+
1938
+ type Views = 'hours' | 'minutes';
1939
+ interface TimepickerOptions extends BaseOptions$1 {
1940
+ /**
1941
+ * Dial radius.
1942
+ * @default 135
1943
+ */
1944
+ dialRadius: number;
1945
+ /**
1946
+ * Outer radius.
1947
+ * @default 105
1948
+ */
1949
+ outerRadius: number;
1950
+ /**
1951
+ * Inner radius.
1952
+ * @default 70
1953
+ */
1954
+ innerRadius: number;
1955
+ /**
1956
+ * Tick radius.
1957
+ * @default 20
1958
+ */
1959
+ tickRadius: number;
1960
+ /**
1961
+ * Duration of the transition from/to the hours/minutes view.
1962
+ * @default 350
1963
+ */
1964
+ duration: number;
1965
+ /**
1966
+ * Specify a DOM element OR selector for a DOM element to render
1967
+ * the time picker in, by default it will be placed before the input.
1968
+ * @default null
1969
+ */
1970
+ container: HTMLElement | string | null;
1971
+ /**
1972
+ * Show the clear button in the Timepicker.
1973
+ * @default false
1974
+ */
1975
+ showClearBtn: boolean;
1976
+ /**
1977
+ * Autosubmit timepicker selection to input field
1978
+ * @default true
1979
+ */
1980
+ autoSubmit: true;
1981
+ /**
1982
+ * Default time to set on the timepicker 'now' or '13:14'.
1983
+ * @default 'now';
1984
+ */
1985
+ defaultTime: string;
1986
+ /**
1987
+ * Millisecond offset from the defaultTime.
1988
+ * @default 0
1989
+ */
1990
+ fromNow: number;
1991
+ /**
1992
+ * Internationalization options.
1993
+ */
1994
+ i18n: Partial<I18nOptions>;
1995
+ /**
1996
+ * Use 12 hour AM/PM clock instead of 24 hour clock.
1997
+ * @default true
1998
+ */
1999
+ twelveHour: boolean;
2000
+ /**
2001
+ * Vibrate device when dragging clock hand.
2002
+ * @default true
2003
+ */
2004
+ vibrate: boolean;
2005
+ /**
2006
+ * Callback function when a time is selected.
2007
+ * @default null
2008
+ */
2009
+ onSelect: (hour: number, minute: number) => void;
2010
+ /**
2011
+ * Callback function for interaction with input field.
2012
+ * @default null
2013
+ */
2014
+ onInputInteraction: (() => void) | null;
2015
+ /**
2016
+ * Callback function for done.
2017
+ * @default null
2018
+ */
2019
+ onDone: (() => void) | null;
2020
+ /**
2021
+ * Callback function for cancel.
2022
+ * @default null
2023
+ */
2024
+ onCancel: (() => void) | null;
2025
+ /**
2026
+ * Display plugin
2027
+ */
2028
+ displayPlugin: string;
2029
+ /**
2030
+ * Configurable display plugin options
2031
+ */
2032
+ displayPluginOptions: object;
2033
+ }
2034
+ type Point = {
2035
+ x: number;
2036
+ y: number;
2037
+ };
2038
+ declare class Timepicker extends Component<TimepickerOptions> {
2039
+ el: HTMLInputElement;
2040
+ id: string;
2041
+ containerEl: HTMLElement;
2042
+ plate: HTMLElement;
2043
+ digitalClock: HTMLElement;
2044
+ inputHours: HTMLInputElement;
2045
+ inputMinutes: HTMLInputElement;
2046
+ x0: number;
2047
+ y0: number;
2048
+ moved: boolean;
2049
+ dx: number;
2050
+ dy: number;
2051
+ /**
2052
+ * Current view on the timepicker.
2053
+ * @default 'hours'
2054
+ */
2055
+ currentView: Views;
2056
+ hand: SVGElement;
2057
+ minutesView: HTMLElement;
2058
+ hours: number;
2059
+ minutes: number;
2060
+ /** The selected time. */
2061
+ time: string;
2062
+ /**
2063
+ * If the time is AM or PM on twelve-hour clock.
2064
+ * @default 'PM'
2065
+ */
2066
+ amOrPm: 'AM' | 'PM';
2067
+ static _template: any;
2068
+ /** Vibrate device when dragging clock hand. */
2069
+ vibrate: 'vibrate' | 'webkitVibrate' | null;
2070
+ _canvas: HTMLElement;
2071
+ hoursView: HTMLElement;
2072
+ spanAmPm: HTMLSpanElement;
2073
+ footer: HTMLElement;
2074
+ private _amBtn;
2075
+ private _pmBtn;
2076
+ bg: Element;
2077
+ bearing: Element;
2078
+ g: Element;
2079
+ toggleViewTimer: string | number | NodeJS.Timeout;
2080
+ vibrateTimer: NodeJS.Timeout | number;
2081
+ private displayPlugin;
2082
+ constructor(el: HTMLInputElement, options: Partial<TimepickerOptions>);
2083
+ static get defaults(): TimepickerOptions;
2084
+ /**
2085
+ * Initializes instance of Timepicker.
2086
+ * @param el HTML element.
2087
+ * @param options Component options.
2088
+ */
2089
+ static init(el: HTMLInputElement, options?: Partial<TimepickerOptions>): Timepicker;
2090
+ /**
2091
+ * Initializes instances of Timepicker.
2092
+ * @param els HTML elements.
2093
+ * @param options Component options.
2094
+ */
2095
+ static init(els: InitElements<HTMLInputElement | MElement>, options?: Partial<TimepickerOptions>): Timepicker[];
2096
+ static _addLeadingZero(num: number): string;
2097
+ static _createSVGEl(name: string): SVGElement;
2098
+ static _Pos(e: TouchEvent | MouseEvent): Point;
2099
+ static getInstance(el: HTMLElement): Timepicker;
2100
+ destroy(): void;
2101
+ _setupEventHandlers(): void;
2102
+ _removeEventHandlers(): void;
2103
+ _handleInputClick: () => void;
2104
+ _handleInputKeydown: (e: KeyboardEvent) => void;
2105
+ _handleTimeInputEnterKey: (e: KeyboardEvent) => void;
2106
+ _handleClockClickStart: (e: any) => void;
2107
+ _handleDocumentClickMove: (e: any) => void;
2108
+ _handleDocumentClickEnd: (e: any) => void;
2109
+ _insertHTMLIntoDOM(): void;
2110
+ _setupVariables(): void;
2111
+ _pickerSetup(): void;
2112
+ _clockSetup(): void;
2113
+ _buildSVGClock(): void;
2114
+ _buildHoursView(): void;
2115
+ _buildHoursTick(i: number, radian: number, radius: number): void;
2116
+ _buildMinutesView(): void;
2117
+ _handleAmPmClick: (e: MouseEvent) => void;
2118
+ _handleAmPmKeypress: (e: KeyboardEvent) => void;
2119
+ _handleAmPmInteraction: (e: HTMLElement) => void;
2120
+ _updateAmPmView(): void;
2121
+ _updateTimeFromInput(): void;
2122
+ /**
2123
+ * Show hours or minutes view on timepicker.
2124
+ * @param view The name of the view you want to switch to, 'hours' or 'minutes'.
2125
+ * @param delay
2126
+ */
2127
+ showView: (view: Views, delay?: number) => void;
2128
+ resetClock(delay: any): void;
2129
+ _inputFromTextField: () => void;
2130
+ drawClockFromTimeInput(value: any, isHours: any): void;
2131
+ setHand(x: any, y: any, roundBy5?: boolean): void;
2132
+ setClockAttributes(radian: number, radius: number): void;
2133
+ formatHours(): void;
2134
+ formatMinutes(): void;
2135
+ setHoursDefault(): void;
2136
+ done: (clearValue?: any) => void;
2137
+ confirm: () => void;
2138
+ cancel: () => void;
2139
+ clear: () => void;
2140
+ open(): this;
2141
+ close(): this;
2142
+ }
2143
+
2144
+ type TooltipPosition = 'top' | 'right' | 'bottom' | 'left';
2145
+ interface TooltipOptions extends BaseOptions$1 {
2146
+ /**
2147
+ * Delay time before tooltip disappears.
2148
+ * @default 200
2149
+ */
2150
+ exitDelay: number;
2151
+ /**
2152
+ * Delay time before tooltip appears.
2153
+ * @default 0
2154
+ */
2155
+ enterDelay: number;
2156
+ /**
2157
+ * Element Id for the tooltip.
2158
+ * @default ""
2159
+ */
2160
+ tooltipId?: string;
2161
+ /**
2162
+ * Text string for the tooltip.
2163
+ * @default ""
2164
+ */
2165
+ text: string;
2166
+ /**
2167
+ * Set distance tooltip appears away from its activator
2168
+ * excluding transitionMovement.
2169
+ * @default 5
2170
+ */
2171
+ margin: number;
2172
+ /**
2173
+ * Enter transition duration.
2174
+ * @default 300
2175
+ */
2176
+ inDuration: number;
2177
+ /**
2178
+ * Opacity of the tooltip.
2179
+ * @default 1
2180
+ */
2181
+ opacity: number;
2182
+ /**
2183
+ * Exit transition duration.
2184
+ * @default 250
2185
+ */
2186
+ outDuration: number;
2187
+ /**
2188
+ * Set the direction of the tooltip.
2189
+ * @default 'bottom'
2190
+ */
2191
+ position: TooltipPosition;
2192
+ /**
2193
+ * Amount in px that the tooltip moves during its transition.
2194
+ * @default 10
2195
+ */
2196
+ transitionMovement: number;
2197
+ }
2198
+ declare class Tooltip extends Component<TooltipOptions> {
2199
+ /**
2200
+ * If tooltip is open.
2201
+ */
2202
+ isOpen: boolean;
2203
+ /**
2204
+ * If tooltip is hovered.
2205
+ */
2206
+ isHovered: boolean;
2207
+ /**
2208
+ * If tooltip is focused.
2209
+ */
2210
+ isFocused: boolean;
2211
+ tooltipEl: HTMLElement;
2212
+ private _exitDelayTimeout;
2213
+ private _enterDelayTimeout;
2214
+ xMovement: number;
2215
+ yMovement: number;
2216
+ constructor(el: HTMLElement, options: Partial<TooltipOptions>);
2217
+ static get defaults(): TooltipOptions;
2218
+ /**
2219
+ * Initializes instance of Tooltip.
2220
+ * @param el HTML element.
2221
+ * @param options Component options.
2222
+ */
2223
+ static init(el: HTMLElement, options?: Partial<TooltipOptions>): Tooltip;
2224
+ /**
2225
+ * Initializes instances of Tooltip.
2226
+ * @param els HTML elements.
2227
+ * @param options Component options.
2228
+ */
2229
+ static init(els: InitElements<MElement>, options?: Partial<TooltipOptions>): Tooltip[];
2230
+ static getInstance(el: HTMLElement): Tooltip;
2231
+ destroy(): void;
2232
+ _appendTooltipEl(): void;
2233
+ _setTooltipContent(tooltipContentEl: HTMLElement): void;
2234
+ _updateTooltipContent(): void;
2235
+ _setupEventHandlers(): void;
2236
+ _removeEventHandlers(): void;
2237
+ /**
2238
+ * Show tooltip.
2239
+ */
2240
+ open: (isManual: boolean) => void;
2241
+ /**
2242
+ * Hide tooltip.
2243
+ */
2244
+ close: () => void;
2245
+ _setExitDelayTimeout(): void;
2246
+ _setEnterDelayTimeout(isManual: any): void;
2247
+ _positionTooltip(): void;
2248
+ _repositionWithinScreen(x: number, y: number, width: number, height: number): {
2249
+ x: number;
2250
+ y: number;
2251
+ };
2252
+ _animateIn(): void;
2253
+ _animateOut(): void;
2254
+ _handleMouseEnter: () => void;
2255
+ _handleMouseLeave: () => void;
2256
+ _handleFocus: () => void;
2257
+ _handleBlur: () => void;
2258
+ _getAttributeOptions(): Partial<TooltipOptions>;
2259
+ }
2260
+
2261
+ interface BaseOptions {
2262
+ }
2263
+ type InputElement = HTMLInputElement | HTMLTextAreaElement;
2264
+ declare class CharacterCounter extends Component<object> {
2265
+ el: InputElement;
2266
+ /** Stores the reference to the counter HTML element. */
2267
+ counterEl: HTMLSpanElement;
2268
+ /** Specifies whether the input is valid or not. */
2269
+ isInvalid: boolean;
2270
+ /** Specifies whether the input text has valid length or not. */
2271
+ isValidLength: boolean;
2272
+ constructor(el: HTMLInputElement | HTMLTextAreaElement, options: Partial<BaseOptions>);
2273
+ static get defaults(): BaseOptions;
2274
+ /**
2275
+ * Initializes instance of CharacterCounter.
2276
+ * @param el HTML element.
2277
+ * @param options Component options.
2278
+ */
2279
+ static init(el: InputElement, options?: Partial<BaseOptions>): CharacterCounter;
2280
+ /**
2281
+ * Initializes instances of CharacterCounter.
2282
+ * @param els HTML elements.
2283
+ * @param options Component options.
2284
+ */
2285
+ static init(els: InitElements<InputElement | MElement>, options?: Partial<BaseOptions>): CharacterCounter[];
2286
+ static getInstance(el: InputElement): CharacterCounter;
2287
+ destroy(): void;
2288
+ _setupEventHandlers(): void;
2289
+ _removeEventHandlers(): void;
2290
+ _setupCounter(): void;
2291
+ _removeCounter(): void;
2292
+ updateCounter: () => void;
2293
+ _validateInput(): void;
2294
+ }
2295
+
2296
+ declare class Forms {
2297
+ /**
2298
+ * Checks if the label has validation and apply
2299
+ * the correct class and styles
2300
+ * @param textfield
2301
+ */
2302
+ static validateField(textfield: HTMLInputElement): void;
2303
+ /**
2304
+ * Resizes the given TextArea after updating the
2305
+ * value content dynamically.
2306
+ * @param e EventTarget
2307
+ */
2308
+ static textareaAutoResize(e: EventTarget): void;
2309
+ static Init(): void;
2310
+ static InitTextarea(textarea: HTMLTextAreaElement): void;
2311
+ static InitFileInputPath(fileInput: HTMLInputElement): void;
2312
+ }
2313
+
2314
+ interface SliderOptions extends BaseOptions$1 {
2315
+ /**
2316
+ * Set to false to hide slide indicators.
2317
+ * @default true
2318
+ */
2319
+ indicators: boolean;
2320
+ /**
2321
+ * Set height of slider.
2322
+ * @default 400
2323
+ */
2324
+ height: number;
2325
+ /**
2326
+ * Set the duration of the transition animation in ms.
2327
+ * @default 500
2328
+ */
2329
+ duration: number;
2330
+ /**
2331
+ * Set the duration between transitions in ms.
2332
+ * @default 6000
2333
+ */
2334
+ interval: number;
2335
+ /**
2336
+ * If slider should pause when keyboard focus is received.
2337
+ * @default true
2338
+ */
2339
+ pauseOnFocus: boolean;
2340
+ /**
2341
+ * If slider should pause when is hovered by a pointer.
2342
+ * @default true
2343
+ */
2344
+ pauseOnHover: boolean;
2345
+ /**
2346
+ * Optional function used to generate ARIA label to indicators (for accessibility purposes).
2347
+ * @param index Current index, starting from "1".
2348
+ * @param current A which indicates whether it is the current element or not
2349
+ * @returns a string to be used as label indicator.
2350
+ * @default null
2351
+ */
2352
+ indicatorLabelFunc: (index: number, current: boolean) => string;
2353
+ }
2354
+ declare class Slider extends Component<SliderOptions> {
2355
+ /** Index of current slide. */
2356
+ activeIndex: number;
2357
+ interval: string | number | NodeJS.Timeout;
2358
+ eventPause: boolean;
2359
+ _slider: HTMLUListElement;
2360
+ _slides: HTMLLIElement[];
2361
+ _activeSlide: HTMLLIElement;
2362
+ _indicators: HTMLLIElement[];
2363
+ _hovered: boolean;
2364
+ _focused: boolean;
2365
+ _focusCurrent: boolean;
2366
+ _sliderId: string;
2367
+ constructor(el: HTMLElement, options: Partial<SliderOptions>);
2368
+ static get defaults(): SliderOptions;
2369
+ /**
2370
+ * Initializes instance of Slider.
2371
+ * @param el HTML element.
2372
+ * @param options Component options.
2373
+ */
2374
+ static init(el: HTMLElement, options?: Partial<SliderOptions>): Slider;
2375
+ /**
2376
+ * Initializes instances of Slider.
2377
+ * @param els HTML elements.
2378
+ * @param options Component options.
2379
+ */
2380
+ static init(els: InitElements<MElement>, options?: Partial<SliderOptions>): Slider[];
2381
+ static getInstance(el: HTMLElement): Slider;
2382
+ destroy(): void;
2383
+ private _setupEventHandlers;
2384
+ private _removeEventHandlers;
2385
+ private _handleIndicatorClick;
2386
+ private _handleAutoPauseHover;
2387
+ private _handleAutoPauseFocus;
2388
+ private _handleAutoStartHover;
2389
+ private _handleAutoStartFocus;
2390
+ private _handleInterval;
2391
+ private _animateSlide;
2392
+ private _setSliderHeight;
2393
+ private _setupIndicators;
2394
+ private _removeIndicators;
2395
+ set(index: number): void;
2396
+ _pause(fromEvent: boolean): void;
2397
+ /**
2398
+ * Pause slider autoslide.
2399
+ */
2400
+ pause: () => void;
2401
+ /**
2402
+ * Start slider autoslide.
2403
+ */
2404
+ start: () => void;
2405
+ /**
2406
+ * Move to next slider.
2407
+ */
2408
+ next: () => void;
2409
+ /**
2410
+ * Move to prev slider.
2411
+ */
2412
+ prev: () => void;
2413
+ }
2414
+
2415
+ interface ToastOptions extends BaseOptions$1 {
2416
+ /**
2417
+ * The content of the Toast.
2418
+ * @default ""
2419
+ */
2420
+ text: string;
2421
+ /**
2422
+ * Element Id for the tooltip.
2423
+ * @default ""
2424
+ */
2425
+ toastId?: string;
2426
+ /**
2427
+ * Length in ms the Toast stays before dismissal.
2428
+ * @default 4000
2429
+ */
2430
+ displayLength: number;
2431
+ /**
2432
+ * Transition in duration in milliseconds.
2433
+ * @default 300
2434
+ */
2435
+ inDuration: number;
2436
+ /**
2437
+ * Transition out duration in milliseconds.
2438
+ * @default 375
2439
+ */
2440
+ outDuration: number;
2441
+ /**
2442
+ * Classes to be added to the toast element.
2443
+ * @default ""
2444
+ */
2445
+ classes: string;
2446
+ /**
2447
+ * Callback function called when toast is dismissed.
2448
+ * @default null
2449
+ */
2450
+ completeCallback: () => void;
2451
+ /**
2452
+ * The percentage of the toast's width it takes fora drag
2453
+ * to dismiss a Toast.
2454
+ * @default 0.8
2455
+ */
2456
+ activationPercent: number;
2457
+ }
2458
+ declare class Toast {
2459
+ /** The toast element. */
2460
+ el: HTMLElement;
2461
+ /**
2462
+ * The remaining amount of time in ms that the toast
2463
+ * will stay before dismissal.
2464
+ */
2465
+ timeRemaining: number;
2466
+ /**
2467
+ * Describes the current pan state of the Toast.
2468
+ */
2469
+ panning: boolean;
2470
+ options: ToastOptions;
2471
+ message: string;
2472
+ counterInterval: NodeJS.Timeout | number;
2473
+ wasSwiped: boolean;
2474
+ startingXPos: number;
2475
+ xPos: number;
2476
+ time: number;
2477
+ deltaX: number;
2478
+ velocityX: number;
2479
+ static _toasts: Toast[];
2480
+ static _container: HTMLElement;
2481
+ static _draggedToast: Toast;
2482
+ constructor(options: Partial<ToastOptions>);
2483
+ static get defaults(): ToastOptions;
2484
+ static getInstance(el: HTMLElement): Toast;
2485
+ static _createContainer(): void;
2486
+ static _removeContainer(): void;
2487
+ static _onDragStart(e: TouchEvent | MouseEvent): void;
2488
+ static _onDragMove(e: TouchEvent | MouseEvent): void;
2489
+ static _onDragEnd(): void;
2490
+ static _xPos(e: TouchEvent | MouseEvent): number;
2491
+ /**
2492
+ * dismiss all toasts.
2493
+ */
2494
+ static dismissAll(): void;
2495
+ _createToast(): HTMLElement;
2496
+ _animateIn(): void;
2497
+ /**
2498
+ * Create setInterval which automatically removes toast when timeRemaining >= 0
2499
+ * has been reached.
2500
+ */
2501
+ _setTimer(): void;
2502
+ /**
2503
+ * Dismiss toast with animation.
2504
+ */
2505
+ dismiss(): void;
2506
+ }
2507
+
2508
+ type RGBColor = {
2509
+ r: number;
2510
+ g: number;
2511
+ b: number;
2512
+ };
2513
+ type Position = {
2514
+ x: number;
2515
+ y: number;
2516
+ };
2517
+ declare class Waves {
2518
+ private static _offset;
2519
+ static renderWaveEffect(targetElement: HTMLElement, position?: Position | null, color?: RGBColor | null): void;
2520
+ static Init(): void;
2521
+ }
2522
+
2523
+ interface RangeOptions extends BaseOptions$1 {
2524
+ }
2525
+ declare class Range extends Component<RangeOptions> {
2526
+ el: HTMLInputElement;
2527
+ private _mousedown;
2528
+ value: HTMLElement;
2529
+ thumb: HTMLElement;
2530
+ constructor(el: HTMLInputElement, options: Partial<RangeOptions>);
2531
+ static get defaults(): RangeOptions;
2532
+ /**
2533
+ * Initializes instance of Range.
2534
+ * @param el HTML element.
2535
+ * @param options Component options.
2536
+ */
2537
+ static init(el: HTMLInputElement, options?: Partial<RangeOptions>): Range;
2538
+ /**
2539
+ * Initializes instances of Range.
2540
+ * @param els HTML elements.
2541
+ * @param options Component options.
2542
+ */
2543
+ static init(els: InitElements<HTMLInputElement | MElement>, options?: Partial<RangeOptions>): Range[];
2544
+ static getInstance(el: HTMLInputElement): Range;
2545
+ destroy(): void;
2546
+ _setupEventHandlers(): void;
2547
+ _removeEventHandlers(): void;
2548
+ _handleRangeChange: () => void;
2549
+ _handleRangeMousedownTouchstart: (e: MouseEvent | TouchEvent) => void;
2550
+ _handleRangeInputMousemoveTouchmove: () => void;
2551
+ _handleRangeMouseupTouchend: () => void;
2552
+ _handleRangeBlurMouseoutTouchleave: () => void;
2553
+ _setupThumb(): void;
2554
+ _removeThumb(): void;
2555
+ _showRangeBubble(): void;
2556
+ _calcRangeOffset(): number;
2557
+ /**
2558
+ * Initializes every range input in the current document.
2559
+ */
2560
+ static Init(): void;
2561
+ }
2562
+
2563
+ declare const version = "2.2.2";
2564
+ interface AutoInitOptions {
2565
+ Autocomplete?: Partial<AutocompleteOptions>;
2566
+ Cards?: Partial<CardsOptions>;
2567
+ Carousel?: Partial<CarouselOptions>;
2568
+ Chips?: Partial<ChipsOptions>;
2569
+ Collapsible?: Partial<CollapsibleOptions>;
2570
+ Datepicker?: Partial<DatepickerOptions>;
2571
+ Dropdown?: Partial<DropdownOptions>;
2572
+ Materialbox?: Partial<MaterialboxOptions>;
2573
+ Modal?: Partial<ModalOptions>;
2574
+ Parallax?: Partial<ParallaxOptions>;
2575
+ Pushpin?: Partial<PushpinOptions>;
2576
+ ScrollSpy?: Partial<ScrollSpyOptions>;
2577
+ FormSelect?: Partial<FormSelectOptions>;
2578
+ Sidenav?: Partial<SidenavOptions>;
2579
+ Tabs?: Partial<TabsOptions>;
2580
+ TapTarget?: Partial<TapTargetOptions>;
2581
+ Timepicker?: Partial<TimepickerOptions>;
2582
+ Tooltip?: Partial<TooltipOptions>;
2583
+ FloatingActionButton?: Partial<FloatingActionButtonOptions>;
2584
+ }
2585
+ /**
2586
+ * Automatically initialize components.
2587
+ * @param context Root element to initialize. Defaults to `document.body`.
2588
+ * @param options Options for each component.
2589
+ */
2590
+ declare function AutoInit(context?: HTMLElement, options?: Partial<AutoInitOptions>): void;
2591
+
2592
+ export { AutoInit, Autocomplete, Cards, Carousel, CharacterCounter, Chips, Collapsible, Datepicker, Dropdown, FloatingActionButton, FormSelect, Forms, Materialbox, Modal, Parallax, Pushpin, Range, ScrollSpy, Sidenav, Slider, Tabs, TapTarget, Timepicker, Toast, Tooltip, Waves, version };
2593
+ export type { AutoInitOptions };