@openremote/or-vaadin-components 1.30.0-snapshot.20260902114525 → 1.30.0

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.
@@ -65,12 +65,12 @@ import type { ContextMenuItem } from "/home/runner/work/openremote/openremote/no
65
65
  import type { ContextMenuListBox } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/context-menu/./lib/vaadin-context-menu-list-box.js";
66
66
  import type { ContextMenuOverlay } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/context-menu/./lib/vaadin-context-menu-overlay.js";
67
67
  import type { ContextMenu } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/context-menu/./lib/vaadin-context-menu.js";
68
- import type { DatePickerYear } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/date-picker/./lib/vaadin-date-picker-year.js";
69
- import type { DatePicker } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/date-picker/./lib/vaadin-date-picker.js";
70
- import type { InfiniteScroller } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/date-picker/./lib/vaadin-infinite-scroller.js";
71
68
  import type { DateTimePicker } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/date-time-picker/./lib/vaadin-date-time-picker.js";
72
69
  import type { DialogOverlay } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/dialog/./lib/vaadin-dialog-overlay.js";
73
70
  import type { Dialog } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/dialog/./lib/vaadin-dialog.js";
71
+ import type { DatePickerYear } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/date-picker/./lib/vaadin-date-picker-year.js";
72
+ import type { DatePicker } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/date-picker/./lib/vaadin-date-picker.js";
73
+ import type { InfiniteScroller } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/date-picker/./lib/vaadin-infinite-scroller.js";
74
74
  import type { Icon } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/icon/./lib/vaadin-icon.js";
75
75
  import type { Iconset } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/icon/./lib/vaadin-iconset.js";
76
76
  import type { InputContainer } from "/home/runner/work/openremote/openremote/node_modules/@vaadin/input-container/./lib/vaadin-input-container.js";
@@ -7343,467 +7343,193 @@ and set the `tooltip` property on each item that should have one:
7343
7343
  textContent?: string | number;
7344
7344
  };
7345
7345
 
7346
- export type DatePickerYearProps = {
7347
- /** */
7348
- year?: DatePickerYear["year"];
7349
- /** */
7350
- selectedDate?: DatePickerYear["selectedDate"];
7351
- };
7352
-
7353
- export type DatePickerYearSolidJsProps = {
7354
- /** */
7355
- "prop:year"?: DatePickerYear["year"];
7356
- /** */
7357
- "prop:selectedDate"?: DatePickerYear["selectedDate"];
7358
-
7359
- /** Set the innerHTML of the element */
7360
- innerHTML?: string;
7361
- /** Set the textContent of the element */
7362
- textContent?: string | number;
7363
- };
7364
-
7365
- export type DatePickerProps = {
7366
- /** */
7367
- _positionTarget?: DatePicker["_positionTarget"];
7368
- /** Set when the element is disabled */
7369
- disabled?: unknown;
7346
+ export type DateTimePickerProps = {
7370
7347
  /** Set when the element is disabled */
7348
+ disabled?: DateTimePicker["disabled"];
7349
+ /** Set when the element is focused */
7350
+ focused?: unknown;
7351
+ /** Set when the element is focused */
7371
7352
  undefined?: unknown;
7372
- /** Set when the element has a value */
7373
- "has-value"?: unknown;
7353
+ /** Set when the element is keyboard focused */
7354
+ "focus-ring"?: unknown;
7355
+ /** Set when the element is readonly */
7356
+ readonly?: DateTimePicker["readonly"];
7357
+ /** Set when the element is invalid */
7358
+ invalid?: unknown;
7374
7359
  /** Set when the element has a label */
7375
7360
  "has-label"?: unknown;
7376
- /** Set when the element has helper text or slot */
7361
+ /** Set when the element has a value */
7362
+ "has-value"?: unknown;
7363
+ /** Set when the element has helper text */
7377
7364
  "has-helper"?: unknown;
7378
7365
  /** Set when the element has an error message */
7379
7366
  "has-error-message"?: unknown;
7380
7367
  /** Set when the element has a slotted tooltip */
7381
7368
  "has-tooltip"?: unknown;
7382
- /** Set when the element is invalid */
7383
- invalid?: unknown;
7384
- /** Set when the element is focused */
7385
- focused?: unknown;
7386
- /** Set when the element is keyboard focused */
7387
- "focus-ring"?: unknown;
7388
- /** Set when the element is readonly */
7389
- readonly?: DatePicker["readonly"];
7390
- /** Set when the overlay is opened */
7391
- opened?: DatePicker["opened"];
7392
- /** Set when week numbers are shown in the calendar */
7393
- "week-numbers"?: unknown;
7394
- /** */
7395
- "<vaadin-date-picker>"?: unknown;
7396
- /** */
7397
- "<vaadin-date-picker-overlay-content>"?: unknown;
7398
- /** */
7399
- "<vaadin-date-picker-month-scroller>"?: unknown;
7400
- /** */
7401
- "<vaadin-date-picker-year-scroller>"?: unknown;
7402
- /** */
7403
- "<vaadin-date-picker-year>"?: unknown;
7404
- /** */
7405
- "<vaadin-month-calendar>"?: unknown;
7406
- /** Fullscreen mode years scroller toggle */
7407
- "years-toggle-button"?: unknown;
7408
- /** Toolbar with slotted buttons */
7409
- toolbar?: unknown;
7410
- /** The current selected date. */
7411
- _selectedDate?: DatePicker["_selectedDate"];
7412
- /** */
7413
- _focusedDate?: DatePicker["_focusedDate"];
7414
- /** Selected date.
7369
+ /** The name of the control, which is submitted with the form data. */
7370
+ name?: DateTimePicker["name"];
7371
+ /** The value for this element.
7415
7372
 
7416
- Supported date formats:
7417
- - ISO 8601 `"YYYY-MM-DD"` (default)
7418
- - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
7419
- value?: DatePicker["value"];
7420
- /** Date which should be visible when there is no value selected.
7373
+ Supported date time format is based on ISO 8601 (without a time zone designator):
7374
+ - Minute precision `"YYYY-MM-DDThh:mm"` (default)
7375
+ - Second precision `"YYYY-MM-DDThh:mm:ss"`
7376
+ - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7377
+ value?: DateTimePicker["value"];
7378
+ /** The earliest allowed value (date and time) that can be selected. All earlier values will be disabled.
7421
7379
 
7422
- The same date formats as for the `value` property are supported. */
7423
- initialPosition?: DatePicker["initialPosition"];
7424
- /** Set true to prevent the overlay from opening automatically. */
7425
- autoOpenDisabled?: DatePicker["autoOpenDisabled"];
7380
+ Supported date time format is based on ISO 8601 (without a time zone designator):
7381
+ - Minute precision `"YYYY-MM-DDThh:mm"`
7382
+ - Second precision `"YYYY-MM-DDThh:mm:ss"`
7383
+ - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7384
+ min?: DateTimePicker["min"];
7385
+ /** The latest value (date and time) that can be selected. All later values will be disabled.
7386
+
7387
+ Supported date time format is based on ISO 8601 (without a time zone designator):
7388
+ - Minute precision `"YYYY-MM-DDThh:mm"`
7389
+ - Second precision `"YYYY-MM-DDThh:mm:ss"`
7390
+ - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7391
+ max?: DateTimePicker["max"];
7392
+ /** The earliest value that can be selected. All earlier values will be disabled. */
7393
+ __minDateTime?: DateTimePicker["__minDateTime"];
7394
+ /** The latest value that can be selected. All later values will be disabled. */
7395
+ __maxDateTime?: DateTimePicker["__maxDateTime"];
7396
+ /** A placeholder string for the date field. */
7397
+ datePlaceholder?: DateTimePicker["datePlaceholder"];
7398
+ /** A placeholder string for the time field. */
7399
+ timePlaceholder?: DateTimePicker["timePlaceholder"];
7400
+ /** Defines the time interval (in seconds) between the items displayed
7401
+ in the time selection box. The default is 1 hour (i.e. `3600`).
7402
+
7403
+ It also configures the precision of the time part of the value string. By default
7404
+ the component formats time values as `hh:mm` but setting a step value
7405
+ lower than one minute or one second, format resolution changes to
7406
+ `hh:mm:ss` and `hh:mm:ss.fff` respectively.
7407
+
7408
+ Unit must be set in seconds, and for correctly configuring intervals
7409
+ in the dropdown, it need to evenly divide a day.
7410
+
7411
+ Note: it is possible to define step that is dividing an hour in inexact
7412
+ fragments (i.e. 5760 seconds which equals 1 hour 36 minutes), but it is
7413
+ not recommended to use it for better UX. */
7414
+ step?: DateTimePicker["step"];
7415
+ /** Date which should be visible in the date picker overlay when there is no value selected.
7416
+
7417
+ The same date formats as for the `value` property are supported but without the time part. */
7418
+ initialPosition?: DateTimePicker["initialPosition"];
7426
7419
  /** Set true to display ISO-8601 week numbers in the calendar. Notice that
7427
7420
  displaying week numbers is only supported when `i18n.firstDayOfWeek`
7428
7421
  is 1 (Monday). */
7429
- showWeekNumbers?: DatePicker["showWeekNumbers"];
7430
- /** */
7431
- _fullscreen?: DatePicker["_fullscreen"];
7432
- /** */
7433
- _fullscreenMediaQuery?: DatePicker["_fullscreenMediaQuery"];
7434
- /** The earliest date that can be selected. All earlier dates will be disabled.
7435
-
7436
- Supported date formats:
7437
- - ISO 8601 `"YYYY-MM-DD"` (default)
7438
- - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
7439
- min?: DatePicker["min"];
7440
- /** The latest date that can be selected. All later dates will be disabled.
7441
-
7442
- Supported date formats:
7443
- - ISO 8601 `"YYYY-MM-DD"` (default)
7444
- - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
7445
- max?: DatePicker["max"];
7446
- /** A function to be used to determine whether the user can select a given date.
7447
- Receives a `DatePickerDate` object of the date to be selected and should return a
7448
- boolean. */
7449
- isDateDisabled?: DatePicker["isDateDisabled"];
7450
- /** The earliest date that can be selected. All earlier dates will be disabled. */
7451
- _minDate?: DatePicker["_minDate"];
7452
- /** The latest date that can be selected. All later dates will be disabled. */
7453
- _maxDate?: DatePicker["_maxDate"];
7454
- /** */
7455
- _noInput?: DatePicker["_noInput"];
7456
- /** */
7457
- _ios?: DatePicker["_ios"];
7458
- /** */
7459
- _focusOverlayOnOpen?: DatePicker["_focusOverlayOnOpen"];
7460
- /** */
7461
- _overlayContent?: DatePicker["_overlayContent"];
7462
- /** */
7463
- __enteredDate?: DatePicker["__enteredDate"];
7422
+ showWeekNumbers?: DateTimePicker["showWeekNumbers"];
7423
+ /** Set to true to prevent the overlays from opening automatically. */
7424
+ autoOpenDisabled?: DateTimePicker["autoOpenDisabled"];
7425
+ /** Specify that this control should have input focus when the page loads. */
7426
+ autofocus?: DateTimePicker["autofocus"];
7427
+ /** The current selected date time. */
7428
+ __selectedDateTime?: DateTimePicker["__selectedDateTime"];
7429
+ /** The current slotted date picker. */
7430
+ __datePicker?: DateTimePicker["__datePicker"];
7431
+ /** The current slotted time picker. */
7432
+ __timePicker?: DateTimePicker["__timePicker"];
7464
7433
  /** The object used to localize this component. To change the default
7465
7434
  localization, replace this with an object that provides all properties, or
7466
7435
  just the individual properties you want to change.
7467
7436
 
7468
7437
  Should be overridden by subclasses to provide a custom JSDoc with the
7469
7438
  default I18N properties. */
7470
- i18n?: DatePicker["i18n"];
7439
+ i18n?: DateTimePicker["i18n"];
7471
7440
  /** */
7472
- __effectiveI18n?: DatePicker["__effectiveI18n"];
7473
- /** Specify that this control should have input focus when the page loads. */
7474
- autofocus?: DatePicker["autofocus"];
7475
- /** A reference to the focusable element controlled by the mixin.
7476
- It can be an input, textarea, button or any element with tabindex > -1.
7477
-
7478
- Any component implementing this mixin is expected to provide it
7479
- by using `this._setFocusElement(input)` Polymer API.
7480
-
7481
- Toggling `tabindex` attribute on the host element propagates its value to `focusElement`. */
7482
- focusElement?: DatePicker["focusElement"];
7483
- /** Override the property from `TabIndexMixin`
7484
- to ensure the `tabindex` attribute of the focus element
7485
- will be restored to `0` after re-enabling the element. */
7486
- _lastTabIndex?: DatePicker["_lastTabIndex"];
7487
- /** A pattern matched against individual characters the user inputs.
7488
-
7489
- When set, the field will prevent:
7490
- - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
7491
- - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
7492
- - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
7493
-
7494
- For example, to allow entering only numbers and minus signs, use:
7495
- `allowedCharPattern = "[\\d-]"` */
7496
- allowedCharPattern?: DatePicker["allowedCharPattern"];
7497
- /** If true, the input text gets fully selected when the field is focused using click or touch / tap. */
7498
- autoselect?: DatePicker["autoselect"];
7499
- /** The name of this field. */
7500
- name?: DatePicker["name"];
7501
- /** A hint to the user of what can be entered in the field. */
7502
- placeholder?: DatePicker["placeholder"];
7503
- /** The text usually displayed in a tooltip popup when the mouse is over the field. */
7504
- title?: DatePicker["title"];
7441
+ __effectiveI18n?: DateTimePicker["__effectiveI18n"];
7505
7442
  /** A target element to which ARIA attributes are set. */
7506
- ariaTarget?: DatePicker["ariaTarget"];
7443
+ ariaTarget?: DateTimePicker["ariaTarget"];
7507
7444
  /** Error to show when the field is invalid. */
7508
- errorMessage?: DatePicker["errorMessage"];
7445
+ errorMessage?: DateTimePicker["errorMessage"];
7509
7446
  /** String used for the helper text. */
7510
- helperText?: DatePicker["helperText"];
7447
+ helperText?: DateTimePicker["helperText"];
7511
7448
  /** String used to label the component to screen reader users. */
7512
- accessibleName?: DatePicker["accessibleName"];
7449
+ accessibleName?: DateTimePicker["accessibleName"];
7513
7450
  /** Id of the element used as label of the component to screen reader users. */
7514
- accessibleNameRef?: DatePicker["accessibleNameRef"];
7515
- /** Set to true to display the clear icon which clears the input.
7516
- This also enables clearing the input when pressing Esc key. */
7517
- clearButtonVisible?: DatePicker["clearButtonVisible"];
7518
- /** */
7519
- dir?: DatePicker["dir"];
7520
- /** */
7521
- _inputElementValue?: DatePicker["_inputElementValue"];
7522
- /** */
7523
- _boundOnClick?: DatePicker["_boundOnClick"];
7524
- /** */
7525
- _boundOnScroll?: DatePicker["_boundOnScroll"];
7526
- /** */
7527
- _boundOnBlur?: DatePicker["_boundOnBlur"];
7451
+ accessibleNameRef?: DateTimePicker["accessibleNameRef"];
7528
7452
  /** */
7529
- _boundOnFocus?: DatePicker["_boundOnFocus"];
7453
+ dir?: DateTimePicker["dir"];
7530
7454
  /** */
7531
- _boundOnPaste?: DatePicker["_boundOnPaste"];
7455
+ __defaultDateMinMaxValue?: DateTimePicker["__defaultDateMinMaxValue"];
7532
7456
  /** */
7533
- _boundOnDrop?: DatePicker["_boundOnDrop"];
7457
+ __defaultTimeMinValue?: DateTimePicker["__defaultTimeMinValue"];
7534
7458
  /** */
7535
- _boundOnBeforeInput?: DatePicker["_boundOnBeforeInput"];
7459
+ __defaultTimeMaxValue?: DateTimePicker["__defaultTimeMaxValue"];
7536
7460
  /** */
7537
- _fieldAriaController?: DatePicker["_fieldAriaController"];
7461
+ _fieldAriaController?: DateTimePicker["_fieldAriaController"];
7538
7462
  /** */
7539
- _helperController?: DatePicker["_helperController"];
7463
+ _helperController?: DateTimePicker["_helperController"];
7540
7464
  /** */
7541
- _errorController?: DatePicker["_errorController"];
7465
+ _errorController?: DateTimePicker["_errorController"];
7542
7466
 
7543
7467
  /** Fired when the user commits a value change. */
7544
7468
  onchange?: (e: CustomEvent) => void;
7545
- /** Fired when the user commits an unparsable value change and there is no change event. */
7469
+ /** Fired when the user commits an unparsable or incomplete value change and there is no change event. */
7546
7470
  "onunparsable-change"?: (e: CustomEvent) => void;
7547
7471
  /** Fired when the `invalid` property changes. */
7548
7472
  "oninvalid-changed"?: (e: CustomEvent) => void;
7549
- /** Fired when the `opened` property changes. */
7550
- "onopened-changed"?: (e: CustomEvent) => void;
7551
7473
  /** Fired when the `value` property changes. */
7552
7474
  "onvalue-changed"?: (e: CustomEvent) => void;
7553
7475
  /** Fired whenever the field is validated. */
7554
7476
  onvalidated?: (e: CustomEvent) => void;
7555
7477
  };
7556
7478
 
7557
- export type DatePickerSolidJsProps = {
7558
- /** */
7559
- "prop:_positionTarget"?: DatePicker["_positionTarget"];
7560
- /** Set when the element is disabled */
7561
- "bool:disabled"?: unknown;
7479
+ export type DateTimePickerSolidJsProps = {
7562
7480
  /** Set when the element is disabled */
7563
- "prop:undefined"?: unknown;
7564
- /** Set when the element has a value */
7565
- "bool:has-value"?: unknown;
7566
- /** Set when the element has a label */
7567
- "bool:has-label"?: unknown;
7568
- /** Set when the element has helper text or slot */
7569
- "bool:has-helper"?: unknown;
7570
- /** Set when the element has an error message */
7571
- "bool:has-error-message"?: unknown;
7572
- /** Set when the element has a slotted tooltip */
7573
- "bool:has-tooltip"?: unknown;
7574
- /** Set when the element is invalid */
7575
- "bool:invalid"?: unknown;
7481
+ "prop:disabled"?: DateTimePicker["disabled"];
7576
7482
  /** Set when the element is focused */
7577
7483
  "bool:focused"?: unknown;
7578
- /** Set when the element is keyboard focused */
7579
- "bool:focus-ring"?: unknown;
7580
- /** Set when the element is readonly */
7581
- "prop:readonly"?: DatePicker["readonly"];
7582
- /** Set when the overlay is opened */
7583
- "prop:opened"?: DatePicker["opened"];
7584
- /** Set when week numbers are shown in the calendar */
7585
- "bool:week-numbers"?: unknown;
7586
- /** */
7587
- "bool:<vaadin-date-picker>"?: unknown;
7588
- /** */
7589
- "bool:<vaadin-date-picker-overlay-content>"?: unknown;
7590
- /** */
7591
- "bool:<vaadin-date-picker-month-scroller>"?: unknown;
7592
- /** */
7593
- "bool:<vaadin-date-picker-year-scroller>"?: unknown;
7594
- /** */
7595
- "bool:<vaadin-date-picker-year>"?: unknown;
7596
- /** */
7597
- "bool:<vaadin-month-calendar>"?: unknown;
7598
- /** Fullscreen mode years scroller toggle */
7599
- "bool:years-toggle-button"?: unknown;
7600
- /** Toolbar with slotted buttons */
7601
- "bool:toolbar"?: unknown;
7602
- /** The current selected date. */
7603
- "prop:_selectedDate"?: DatePicker["_selectedDate"];
7604
- /** */
7605
- "prop:_focusedDate"?: DatePicker["_focusedDate"];
7606
- /** Selected date.
7607
-
7608
- Supported date formats:
7609
- - ISO 8601 `"YYYY-MM-DD"` (default)
7610
- - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
7611
- "prop:value"?: DatePicker["value"];
7612
- /** Date which should be visible when there is no value selected.
7613
-
7614
- The same date formats as for the `value` property are supported. */
7615
- "prop:initialPosition"?: DatePicker["initialPosition"];
7616
- /** Set true to prevent the overlay from opening automatically. */
7617
- "prop:autoOpenDisabled"?: DatePicker["autoOpenDisabled"];
7618
- /** Set true to display ISO-8601 week numbers in the calendar. Notice that
7619
- displaying week numbers is only supported when `i18n.firstDayOfWeek`
7620
- is 1 (Monday). */
7621
- "prop:showWeekNumbers"?: DatePicker["showWeekNumbers"];
7622
- /** */
7623
- "prop:_fullscreen"?: DatePicker["_fullscreen"];
7624
- /** */
7625
- "prop:_fullscreenMediaQuery"?: DatePicker["_fullscreenMediaQuery"];
7626
- /** The earliest date that can be selected. All earlier dates will be disabled.
7627
-
7628
- Supported date formats:
7629
- - ISO 8601 `"YYYY-MM-DD"` (default)
7630
- - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
7631
- "prop:min"?: DatePicker["min"];
7632
- /** The latest date that can be selected. All later dates will be disabled.
7633
-
7634
- Supported date formats:
7635
- - ISO 8601 `"YYYY-MM-DD"` (default)
7636
- - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
7637
- "prop:max"?: DatePicker["max"];
7638
- /** A function to be used to determine whether the user can select a given date.
7639
- Receives a `DatePickerDate` object of the date to be selected and should return a
7640
- boolean. */
7641
- "prop:isDateDisabled"?: DatePicker["isDateDisabled"];
7642
- /** The earliest date that can be selected. All earlier dates will be disabled. */
7643
- "prop:_minDate"?: DatePicker["_minDate"];
7644
- /** The latest date that can be selected. All later dates will be disabled. */
7645
- "prop:_maxDate"?: DatePicker["_maxDate"];
7646
- /** */
7647
- "prop:_noInput"?: DatePicker["_noInput"];
7648
- /** */
7649
- "prop:_ios"?: DatePicker["_ios"];
7650
- /** */
7651
- "prop:_focusOverlayOnOpen"?: DatePicker["_focusOverlayOnOpen"];
7652
- /** */
7653
- "prop:_overlayContent"?: DatePicker["_overlayContent"];
7654
- /** */
7655
- "prop:__enteredDate"?: DatePicker["__enteredDate"];
7656
- /** The object used to localize this component. To change the default
7657
- localization, replace this with an object that provides all properties, or
7658
- just the individual properties you want to change.
7659
-
7660
- Should be overridden by subclasses to provide a custom JSDoc with the
7661
- default I18N properties. */
7662
- "prop:i18n"?: DatePicker["i18n"];
7663
- /** */
7664
- "prop:__effectiveI18n"?: DatePicker["__effectiveI18n"];
7665
- /** Specify that this control should have input focus when the page loads. */
7666
- "prop:autofocus"?: DatePicker["autofocus"];
7667
- /** A reference to the focusable element controlled by the mixin.
7668
- It can be an input, textarea, button or any element with tabindex > -1.
7669
-
7670
- Any component implementing this mixin is expected to provide it
7671
- by using `this._setFocusElement(input)` Polymer API.
7672
-
7673
- Toggling `tabindex` attribute on the host element propagates its value to `focusElement`. */
7674
- "prop:focusElement"?: DatePicker["focusElement"];
7675
- /** Override the property from `TabIndexMixin`
7676
- to ensure the `tabindex` attribute of the focus element
7677
- will be restored to `0` after re-enabling the element. */
7678
- "prop:_lastTabIndex"?: DatePicker["_lastTabIndex"];
7679
- /** A pattern matched against individual characters the user inputs.
7680
-
7681
- When set, the field will prevent:
7682
- - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
7683
- - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
7684
- - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
7685
-
7686
- For example, to allow entering only numbers and minus signs, use:
7687
- `allowedCharPattern = "[\\d-]"` */
7688
- "prop:allowedCharPattern"?: DatePicker["allowedCharPattern"];
7689
- /** If true, the input text gets fully selected when the field is focused using click or touch / tap. */
7690
- "prop:autoselect"?: DatePicker["autoselect"];
7691
- /** The name of this field. */
7692
- "prop:name"?: DatePicker["name"];
7693
- /** A hint to the user of what can be entered in the field. */
7694
- "prop:placeholder"?: DatePicker["placeholder"];
7695
- /** The text usually displayed in a tooltip popup when the mouse is over the field. */
7696
- "prop:title"?: DatePicker["title"];
7697
- /** A target element to which ARIA attributes are set. */
7698
- "prop:ariaTarget"?: DatePicker["ariaTarget"];
7699
- /** Error to show when the field is invalid. */
7700
- "prop:errorMessage"?: DatePicker["errorMessage"];
7701
- /** String used for the helper text. */
7702
- "prop:helperText"?: DatePicker["helperText"];
7703
- /** String used to label the component to screen reader users. */
7704
- "prop:accessibleName"?: DatePicker["accessibleName"];
7705
- /** Id of the element used as label of the component to screen reader users. */
7706
- "prop:accessibleNameRef"?: DatePicker["accessibleNameRef"];
7707
- /** Set to true to display the clear icon which clears the input.
7708
- This also enables clearing the input when pressing Esc key. */
7709
- "prop:clearButtonVisible"?: DatePicker["clearButtonVisible"];
7710
- /** */
7711
- "prop:dir"?: DatePicker["dir"];
7712
- /** */
7713
- "prop:_inputElementValue"?: DatePicker["_inputElementValue"];
7714
- /** */
7715
- "prop:_boundOnClick"?: DatePicker["_boundOnClick"];
7716
- /** */
7717
- "prop:_boundOnScroll"?: DatePicker["_boundOnScroll"];
7718
- /** */
7719
- "prop:_boundOnBlur"?: DatePicker["_boundOnBlur"];
7720
- /** */
7721
- "prop:_boundOnFocus"?: DatePicker["_boundOnFocus"];
7722
- /** */
7723
- "prop:_boundOnPaste"?: DatePicker["_boundOnPaste"];
7724
- /** */
7725
- "prop:_boundOnDrop"?: DatePicker["_boundOnDrop"];
7726
- /** */
7727
- "prop:_boundOnBeforeInput"?: DatePicker["_boundOnBeforeInput"];
7728
- /** */
7729
- "prop:_fieldAriaController"?: DatePicker["_fieldAriaController"];
7730
- /** */
7731
- "prop:_helperController"?: DatePicker["_helperController"];
7732
- /** */
7733
- "prop:_errorController"?: DatePicker["_errorController"];
7734
- /** Fired when the user commits a value change. */
7735
- "on:change"?: (e: CustomEvent) => void;
7736
- /** Fired when the user commits an unparsable value change and there is no change event. */
7737
- "on:unparsable-change"?: (e: CustomEvent) => void;
7738
- /** Fired when the `invalid` property changes. */
7739
- "on:invalid-changed"?: (e: CustomEvent) => void;
7740
- /** Fired when the `opened` property changes. */
7741
- "on:opened-changed"?: (e: CustomEvent) => void;
7742
- /** Fired when the `value` property changes. */
7743
- "on:value-changed"?: (e: CustomEvent) => void;
7744
- /** Fired whenever the field is validated. */
7745
- "on:validated"?: (e: CustomEvent) => void;
7746
-
7747
- /** Set the innerHTML of the element */
7748
- innerHTML?: string;
7749
- /** Set the textContent of the element */
7750
- textContent?: string | number;
7751
- };
7752
-
7753
- export type DateTimePickerProps = {
7754
- /** Set when the element is disabled */
7755
- disabled?: DateTimePicker["disabled"];
7756
- /** Set when the element is focused */
7757
- focused?: unknown;
7758
7484
  /** Set when the element is focused */
7759
- undefined?: unknown;
7485
+ "prop:undefined"?: unknown;
7760
7486
  /** Set when the element is keyboard focused */
7761
- "focus-ring"?: unknown;
7487
+ "bool:focus-ring"?: unknown;
7762
7488
  /** Set when the element is readonly */
7763
- readonly?: DateTimePicker["readonly"];
7489
+ "prop:readonly"?: DateTimePicker["readonly"];
7764
7490
  /** Set when the element is invalid */
7765
- invalid?: unknown;
7491
+ "bool:invalid"?: unknown;
7766
7492
  /** Set when the element has a label */
7767
- "has-label"?: unknown;
7493
+ "bool:has-label"?: unknown;
7768
7494
  /** Set when the element has a value */
7769
- "has-value"?: unknown;
7495
+ "bool:has-value"?: unknown;
7770
7496
  /** Set when the element has helper text */
7771
- "has-helper"?: unknown;
7497
+ "bool:has-helper"?: unknown;
7772
7498
  /** Set when the element has an error message */
7773
- "has-error-message"?: unknown;
7499
+ "bool:has-error-message"?: unknown;
7774
7500
  /** Set when the element has a slotted tooltip */
7775
- "has-tooltip"?: unknown;
7501
+ "bool:has-tooltip"?: unknown;
7776
7502
  /** The name of the control, which is submitted with the form data. */
7777
- name?: DateTimePicker["name"];
7503
+ "prop:name"?: DateTimePicker["name"];
7778
7504
  /** The value for this element.
7779
7505
 
7780
7506
  Supported date time format is based on ISO 8601 (without a time zone designator):
7781
7507
  - Minute precision `"YYYY-MM-DDThh:mm"` (default)
7782
7508
  - Second precision `"YYYY-MM-DDThh:mm:ss"`
7783
7509
  - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7784
- value?: DateTimePicker["value"];
7510
+ "prop:value"?: DateTimePicker["value"];
7785
7511
  /** The earliest allowed value (date and time) that can be selected. All earlier values will be disabled.
7786
7512
 
7787
7513
  Supported date time format is based on ISO 8601 (without a time zone designator):
7788
7514
  - Minute precision `"YYYY-MM-DDThh:mm"`
7789
7515
  - Second precision `"YYYY-MM-DDThh:mm:ss"`
7790
7516
  - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7791
- min?: DateTimePicker["min"];
7517
+ "prop:min"?: DateTimePicker["min"];
7792
7518
  /** The latest value (date and time) that can be selected. All later values will be disabled.
7793
7519
 
7794
7520
  Supported date time format is based on ISO 8601 (without a time zone designator):
7795
7521
  - Minute precision `"YYYY-MM-DDThh:mm"`
7796
7522
  - Second precision `"YYYY-MM-DDThh:mm:ss"`
7797
7523
  - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7798
- max?: DateTimePicker["max"];
7524
+ "prop:max"?: DateTimePicker["max"];
7799
7525
  /** The earliest value that can be selected. All earlier values will be disabled. */
7800
- __minDateTime?: DateTimePicker["__minDateTime"];
7526
+ "prop:__minDateTime"?: DateTimePicker["__minDateTime"];
7801
7527
  /** The latest value that can be selected. All later values will be disabled. */
7802
- __maxDateTime?: DateTimePicker["__maxDateTime"];
7528
+ "prop:__maxDateTime"?: DateTimePicker["__maxDateTime"];
7803
7529
  /** A placeholder string for the date field. */
7804
- datePlaceholder?: DateTimePicker["datePlaceholder"];
7530
+ "prop:datePlaceholder"?: DateTimePicker["datePlaceholder"];
7805
7531
  /** A placeholder string for the time field. */
7806
- timePlaceholder?: DateTimePicker["timePlaceholder"];
7532
+ "prop:timePlaceholder"?: DateTimePicker["timePlaceholder"];
7807
7533
  /** Defines the time interval (in seconds) between the items displayed
7808
7534
  in the time selection box. The default is 1 hour (i.e. `3600`).
7809
7535
 
@@ -7818,165 +7544,32 @@ in the dropdown, it need to evenly divide a day.
7818
7544
  Note: it is possible to define step that is dividing an hour in inexact
7819
7545
  fragments (i.e. 5760 seconds which equals 1 hour 36 minutes), but it is
7820
7546
  not recommended to use it for better UX. */
7821
- step?: DateTimePicker["step"];
7547
+ "prop:step"?: DateTimePicker["step"];
7822
7548
  /** Date which should be visible in the date picker overlay when there is no value selected.
7823
7549
 
7824
7550
  The same date formats as for the `value` property are supported but without the time part. */
7825
- initialPosition?: DateTimePicker["initialPosition"];
7551
+ "prop:initialPosition"?: DateTimePicker["initialPosition"];
7826
7552
  /** Set true to display ISO-8601 week numbers in the calendar. Notice that
7827
7553
  displaying week numbers is only supported when `i18n.firstDayOfWeek`
7828
7554
  is 1 (Monday). */
7829
- showWeekNumbers?: DateTimePicker["showWeekNumbers"];
7555
+ "prop:showWeekNumbers"?: DateTimePicker["showWeekNumbers"];
7830
7556
  /** Set to true to prevent the overlays from opening automatically. */
7831
- autoOpenDisabled?: DateTimePicker["autoOpenDisabled"];
7557
+ "prop:autoOpenDisabled"?: DateTimePicker["autoOpenDisabled"];
7832
7558
  /** Specify that this control should have input focus when the page loads. */
7833
- autofocus?: DateTimePicker["autofocus"];
7559
+ "prop:autofocus"?: DateTimePicker["autofocus"];
7834
7560
  /** The current selected date time. */
7835
- __selectedDateTime?: DateTimePicker["__selectedDateTime"];
7561
+ "prop:__selectedDateTime"?: DateTimePicker["__selectedDateTime"];
7836
7562
  /** The current slotted date picker. */
7837
- __datePicker?: DateTimePicker["__datePicker"];
7563
+ "prop:__datePicker"?: DateTimePicker["__datePicker"];
7838
7564
  /** The current slotted time picker. */
7839
- __timePicker?: DateTimePicker["__timePicker"];
7565
+ "prop:__timePicker"?: DateTimePicker["__timePicker"];
7840
7566
  /** The object used to localize this component. To change the default
7841
7567
  localization, replace this with an object that provides all properties, or
7842
7568
  just the individual properties you want to change.
7843
7569
 
7844
7570
  Should be overridden by subclasses to provide a custom JSDoc with the
7845
7571
  default I18N properties. */
7846
- i18n?: DateTimePicker["i18n"];
7847
- /** */
7848
- __effectiveI18n?: DateTimePicker["__effectiveI18n"];
7849
- /** A target element to which ARIA attributes are set. */
7850
- ariaTarget?: DateTimePicker["ariaTarget"];
7851
- /** Error to show when the field is invalid. */
7852
- errorMessage?: DateTimePicker["errorMessage"];
7853
- /** String used for the helper text. */
7854
- helperText?: DateTimePicker["helperText"];
7855
- /** String used to label the component to screen reader users. */
7856
- accessibleName?: DateTimePicker["accessibleName"];
7857
- /** Id of the element used as label of the component to screen reader users. */
7858
- accessibleNameRef?: DateTimePicker["accessibleNameRef"];
7859
- /** */
7860
- dir?: DateTimePicker["dir"];
7861
- /** */
7862
- __defaultDateMinMaxValue?: DateTimePicker["__defaultDateMinMaxValue"];
7863
- /** */
7864
- __defaultTimeMinValue?: DateTimePicker["__defaultTimeMinValue"];
7865
- /** */
7866
- __defaultTimeMaxValue?: DateTimePicker["__defaultTimeMaxValue"];
7867
- /** */
7868
- _fieldAriaController?: DateTimePicker["_fieldAriaController"];
7869
- /** */
7870
- _helperController?: DateTimePicker["_helperController"];
7871
- /** */
7872
- _errorController?: DateTimePicker["_errorController"];
7873
-
7874
- /** Fired when the user commits a value change. */
7875
- onchange?: (e: CustomEvent) => void;
7876
- /** Fired when the user commits an unparsable or incomplete value change and there is no change event. */
7877
- "onunparsable-change"?: (e: CustomEvent) => void;
7878
- /** Fired when the `invalid` property changes. */
7879
- "oninvalid-changed"?: (e: CustomEvent) => void;
7880
- /** Fired when the `value` property changes. */
7881
- "onvalue-changed"?: (e: CustomEvent) => void;
7882
- /** Fired whenever the field is validated. */
7883
- onvalidated?: (e: CustomEvent) => void;
7884
- };
7885
-
7886
- export type DateTimePickerSolidJsProps = {
7887
- /** Set when the element is disabled */
7888
- "prop:disabled"?: DateTimePicker["disabled"];
7889
- /** Set when the element is focused */
7890
- "bool:focused"?: unknown;
7891
- /** Set when the element is focused */
7892
- "prop:undefined"?: unknown;
7893
- /** Set when the element is keyboard focused */
7894
- "bool:focus-ring"?: unknown;
7895
- /** Set when the element is readonly */
7896
- "prop:readonly"?: DateTimePicker["readonly"];
7897
- /** Set when the element is invalid */
7898
- "bool:invalid"?: unknown;
7899
- /** Set when the element has a label */
7900
- "bool:has-label"?: unknown;
7901
- /** Set when the element has a value */
7902
- "bool:has-value"?: unknown;
7903
- /** Set when the element has helper text */
7904
- "bool:has-helper"?: unknown;
7905
- /** Set when the element has an error message */
7906
- "bool:has-error-message"?: unknown;
7907
- /** Set when the element has a slotted tooltip */
7908
- "bool:has-tooltip"?: unknown;
7909
- /** The name of the control, which is submitted with the form data. */
7910
- "prop:name"?: DateTimePicker["name"];
7911
- /** The value for this element.
7912
-
7913
- Supported date time format is based on ISO 8601 (without a time zone designator):
7914
- - Minute precision `"YYYY-MM-DDThh:mm"` (default)
7915
- - Second precision `"YYYY-MM-DDThh:mm:ss"`
7916
- - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7917
- "prop:value"?: DateTimePicker["value"];
7918
- /** The earliest allowed value (date and time) that can be selected. All earlier values will be disabled.
7919
-
7920
- Supported date time format is based on ISO 8601 (without a time zone designator):
7921
- - Minute precision `"YYYY-MM-DDThh:mm"`
7922
- - Second precision `"YYYY-MM-DDThh:mm:ss"`
7923
- - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7924
- "prop:min"?: DateTimePicker["min"];
7925
- /** The latest value (date and time) that can be selected. All later values will be disabled.
7926
-
7927
- Supported date time format is based on ISO 8601 (without a time zone designator):
7928
- - Minute precision `"YYYY-MM-DDThh:mm"`
7929
- - Second precision `"YYYY-MM-DDThh:mm:ss"`
7930
- - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"` */
7931
- "prop:max"?: DateTimePicker["max"];
7932
- /** The earliest value that can be selected. All earlier values will be disabled. */
7933
- "prop:__minDateTime"?: DateTimePicker["__minDateTime"];
7934
- /** The latest value that can be selected. All later values will be disabled. */
7935
- "prop:__maxDateTime"?: DateTimePicker["__maxDateTime"];
7936
- /** A placeholder string for the date field. */
7937
- "prop:datePlaceholder"?: DateTimePicker["datePlaceholder"];
7938
- /** A placeholder string for the time field. */
7939
- "prop:timePlaceholder"?: DateTimePicker["timePlaceholder"];
7940
- /** Defines the time interval (in seconds) between the items displayed
7941
- in the time selection box. The default is 1 hour (i.e. `3600`).
7942
-
7943
- It also configures the precision of the time part of the value string. By default
7944
- the component formats time values as `hh:mm` but setting a step value
7945
- lower than one minute or one second, format resolution changes to
7946
- `hh:mm:ss` and `hh:mm:ss.fff` respectively.
7947
-
7948
- Unit must be set in seconds, and for correctly configuring intervals
7949
- in the dropdown, it need to evenly divide a day.
7950
-
7951
- Note: it is possible to define step that is dividing an hour in inexact
7952
- fragments (i.e. 5760 seconds which equals 1 hour 36 minutes), but it is
7953
- not recommended to use it for better UX. */
7954
- "prop:step"?: DateTimePicker["step"];
7955
- /** Date which should be visible in the date picker overlay when there is no value selected.
7956
-
7957
- The same date formats as for the `value` property are supported but without the time part. */
7958
- "prop:initialPosition"?: DateTimePicker["initialPosition"];
7959
- /** Set true to display ISO-8601 week numbers in the calendar. Notice that
7960
- displaying week numbers is only supported when `i18n.firstDayOfWeek`
7961
- is 1 (Monday). */
7962
- "prop:showWeekNumbers"?: DateTimePicker["showWeekNumbers"];
7963
- /** Set to true to prevent the overlays from opening automatically. */
7964
- "prop:autoOpenDisabled"?: DateTimePicker["autoOpenDisabled"];
7965
- /** Specify that this control should have input focus when the page loads. */
7966
- "prop:autofocus"?: DateTimePicker["autofocus"];
7967
- /** The current selected date time. */
7968
- "prop:__selectedDateTime"?: DateTimePicker["__selectedDateTime"];
7969
- /** The current slotted date picker. */
7970
- "prop:__datePicker"?: DateTimePicker["__datePicker"];
7971
- /** The current slotted time picker. */
7972
- "prop:__timePicker"?: DateTimePicker["__timePicker"];
7973
- /** The object used to localize this component. To change the default
7974
- localization, replace this with an object that provides all properties, or
7975
- just the individual properties you want to change.
7976
-
7977
- Should be overridden by subclasses to provide a custom JSDoc with the
7978
- default I18N properties. */
7979
- "prop:i18n"?: DateTimePicker["i18n"];
7572
+ "prop:i18n"?: DateTimePicker["i18n"];
7980
7573
  /** */
7981
7574
  "prop:__effectiveI18n"?: DateTimePicker["__effectiveI18n"];
7982
7575
  /** A target element to which ARIA attributes are set. */
@@ -8372,70 +7965,477 @@ so that it stays within the viewport. */
8372
7965
  textContent?: string | number;
8373
7966
  };
8374
7967
 
8375
- export type IconProps = {
8376
- /** Set when the icon has a slotted tooltip */
8377
- "has-tooltip"?: unknown;
8378
- /** Set when the icon has a slotted tooltip */
8379
- undefined?: unknown;
7968
+ export type DatePickerYearProps = {
8380
7969
  /** */
8381
- class?: unknown;
8382
- /** The name of the icon to use. The name should be of the form:
8383
- `iconset_name:icon_name`. When using `vaadin-icons` it is possible
8384
- to omit the first part and only use `icon_name` as a value.
8385
-
8386
- Setting the `icon` property updates the `svg` and `size` based on the
8387
- values provided by the corresponding `vaadin-iconset` element.
8388
-
8389
- See also [`name`](#/elements/vaadin-iconset#property-name) property of `vaadin-iconset`. */
8390
- icon?: Icon["icon"];
8391
- /** The SVG icon wrapped in a Lit template literal. */
8392
- svg?: Icon["svg"];
8393
- /** The SVG source to be loaded as the icon. It can be:
8394
- - an URL to a file containing the icon
8395
- - an URL in the format `/path/to/file.svg#objectID`, where the `objectID` refers to an ID attribute contained
8396
- inside the SVG referenced by the path. Note that the file needs to follow the same-origin policy.
8397
- - a string in the format `data:image/svg+xml,<svg>...</svg>`. You may need to use the `encodeURIComponent`
8398
- function for the SVG content passed */
8399
- src?: Icon["src"];
8400
- /** The symbol identifier that references an ID of an element contained in the SVG element assigned to the
8401
- `src` property */
8402
- symbol?: Icon["symbol"];
8403
- /** Class names defining an icon font and/or a specific glyph inside an icon font.
7970
+ year?: DatePickerYear["year"];
7971
+ /** */
7972
+ selectedDate?: DatePickerYear["selectedDate"];
7973
+ };
8404
7974
 
8405
- Example: "fa-solid fa-user" */
8406
- iconClass?: Icon["iconClass"];
8407
- /** A hexadecimal code point that specifies a glyph from an icon font.
7975
+ export type DatePickerYearSolidJsProps = {
7976
+ /** */
7977
+ "prop:year"?: DatePickerYear["year"];
7978
+ /** */
7979
+ "prop:selectedDate"?: DatePickerYear["selectedDate"];
8408
7980
 
8409
- Example: "e001" */
8410
- char?: Icon["char"];
8411
- /** A ligature name that specifies an icon from an icon font with support for ligatures.
7981
+ /** Set the innerHTML of the element */
7982
+ innerHTML?: string;
7983
+ /** Set the textContent of the element */
7984
+ textContent?: string | number;
7985
+ };
8412
7986
 
8413
- Example: "home". */
8414
- ligature?: Icon["ligature"];
8415
- /** The font family to use for the font icon. */
8416
- fontFamily?: Icon["fontFamily"];
8417
- /** The size of an icon, used to set the `viewBox` attribute. */
8418
- size?: Icon["size"];
7987
+ export type DatePickerProps = {
8419
7988
  /** */
8420
- __preserveAspectRatio?: Icon["__preserveAspectRatio"];
7989
+ _positionTarget?: DatePicker["_positionTarget"];
7990
+ /** Set when the element is disabled */
7991
+ disabled?: unknown;
7992
+ /** Set when the element is disabled */
7993
+ undefined?: unknown;
7994
+ /** Set when the element has a value */
7995
+ "has-value"?: unknown;
7996
+ /** Set when the element has a label */
7997
+ "has-label"?: unknown;
7998
+ /** Set when the element has helper text or slot */
7999
+ "has-helper"?: unknown;
8000
+ /** Set when the element has an error message */
8001
+ "has-error-message"?: unknown;
8002
+ /** Set when the element has a slotted tooltip */
8003
+ "has-tooltip"?: unknown;
8004
+ /** Set when the element is invalid */
8005
+ invalid?: unknown;
8006
+ /** Set when the element is focused */
8007
+ focused?: unknown;
8008
+ /** Set when the element is keyboard focused */
8009
+ "focus-ring"?: unknown;
8010
+ /** Set when the element is readonly */
8011
+ readonly?: DatePicker["readonly"];
8012
+ /** Set when the overlay is opened */
8013
+ opened?: DatePicker["opened"];
8014
+ /** Set when week numbers are shown in the calendar */
8015
+ "week-numbers"?: unknown;
8421
8016
  /** */
8422
- __useRef?: Icon["__useRef"];
8017
+ "<vaadin-date-picker>"?: unknown;
8423
8018
  /** */
8424
- __viewBox?: Icon["__viewBox"];
8019
+ "<vaadin-date-picker-overlay-content>"?: unknown;
8425
8020
  /** */
8426
- __fill?: Icon["__fill"];
8021
+ "<vaadin-date-picker-month-scroller>"?: unknown;
8427
8022
  /** */
8428
- __stroke?: Icon["__stroke"];
8023
+ "<vaadin-date-picker-year-scroller>"?: unknown;
8429
8024
  /** */
8430
- __strokeWidth?: Icon["__strokeWidth"];
8025
+ "<vaadin-date-picker-year>"?: unknown;
8431
8026
  /** */
8432
- __strokeLinecap?: Icon["__strokeLinecap"];
8027
+ "<vaadin-month-calendar>"?: unknown;
8028
+ /** Fullscreen mode years scroller toggle */
8029
+ "years-toggle-button"?: unknown;
8030
+ /** Toolbar with slotted buttons */
8031
+ toolbar?: unknown;
8032
+ /** The current selected date. */
8033
+ _selectedDate?: DatePicker["_selectedDate"];
8433
8034
  /** */
8434
- __strokeLinejoin?: Icon["__strokeLinejoin"];
8035
+ _focusedDate?: DatePicker["_focusedDate"];
8036
+ /** Selected date.
8037
+
8038
+ Supported date formats:
8039
+ - ISO 8601 `"YYYY-MM-DD"` (default)
8040
+ - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
8041
+ value?: DatePicker["value"];
8042
+ /** Date which should be visible when there is no value selected.
8043
+
8044
+ The same date formats as for the `value` property are supported. */
8045
+ initialPosition?: DatePicker["initialPosition"];
8046
+ /** Set true to prevent the overlay from opening automatically. */
8047
+ autoOpenDisabled?: DatePicker["autoOpenDisabled"];
8048
+ /** Set true to display ISO-8601 week numbers in the calendar. Notice that
8049
+ displaying week numbers is only supported when `i18n.firstDayOfWeek`
8050
+ is 1 (Monday). */
8051
+ showWeekNumbers?: DatePicker["showWeekNumbers"];
8435
8052
  /** */
8436
- dir?: Icon["dir"];
8053
+ _fullscreen?: DatePicker["_fullscreen"];
8437
8054
  /** */
8438
- __fetch?: Icon["__fetch"];
8055
+ _fullscreenMediaQuery?: DatePicker["_fullscreenMediaQuery"];
8056
+ /** The earliest date that can be selected. All earlier dates will be disabled.
8057
+
8058
+ Supported date formats:
8059
+ - ISO 8601 `"YYYY-MM-DD"` (default)
8060
+ - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
8061
+ min?: DatePicker["min"];
8062
+ /** The latest date that can be selected. All later dates will be disabled.
8063
+
8064
+ Supported date formats:
8065
+ - ISO 8601 `"YYYY-MM-DD"` (default)
8066
+ - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
8067
+ max?: DatePicker["max"];
8068
+ /** A function to be used to determine whether the user can select a given date.
8069
+ Receives a `DatePickerDate` object of the date to be selected and should return a
8070
+ boolean. */
8071
+ isDateDisabled?: DatePicker["isDateDisabled"];
8072
+ /** The earliest date that can be selected. All earlier dates will be disabled. */
8073
+ _minDate?: DatePicker["_minDate"];
8074
+ /** The latest date that can be selected. All later dates will be disabled. */
8075
+ _maxDate?: DatePicker["_maxDate"];
8076
+ /** */
8077
+ _noInput?: DatePicker["_noInput"];
8078
+ /** */
8079
+ _ios?: DatePicker["_ios"];
8080
+ /** */
8081
+ _focusOverlayOnOpen?: DatePicker["_focusOverlayOnOpen"];
8082
+ /** */
8083
+ _overlayContent?: DatePicker["_overlayContent"];
8084
+ /** */
8085
+ __enteredDate?: DatePicker["__enteredDate"];
8086
+ /** The object used to localize this component. To change the default
8087
+ localization, replace this with an object that provides all properties, or
8088
+ just the individual properties you want to change.
8089
+
8090
+ Should be overridden by subclasses to provide a custom JSDoc with the
8091
+ default I18N properties. */
8092
+ i18n?: DatePicker["i18n"];
8093
+ /** */
8094
+ __effectiveI18n?: DatePicker["__effectiveI18n"];
8095
+ /** Specify that this control should have input focus when the page loads. */
8096
+ autofocus?: DatePicker["autofocus"];
8097
+ /** A reference to the focusable element controlled by the mixin.
8098
+ It can be an input, textarea, button or any element with tabindex > -1.
8099
+
8100
+ Any component implementing this mixin is expected to provide it
8101
+ by using `this._setFocusElement(input)` Polymer API.
8102
+
8103
+ Toggling `tabindex` attribute on the host element propagates its value to `focusElement`. */
8104
+ focusElement?: DatePicker["focusElement"];
8105
+ /** Override the property from `TabIndexMixin`
8106
+ to ensure the `tabindex` attribute of the focus element
8107
+ will be restored to `0` after re-enabling the element. */
8108
+ _lastTabIndex?: DatePicker["_lastTabIndex"];
8109
+ /** A pattern matched against individual characters the user inputs.
8110
+
8111
+ When set, the field will prevent:
8112
+ - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
8113
+ - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
8114
+ - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
8115
+
8116
+ For example, to allow entering only numbers and minus signs, use:
8117
+ `allowedCharPattern = "[\\d-]"` */
8118
+ allowedCharPattern?: DatePicker["allowedCharPattern"];
8119
+ /** If true, the input text gets fully selected when the field is focused using click or touch / tap. */
8120
+ autoselect?: DatePicker["autoselect"];
8121
+ /** The name of this field. */
8122
+ name?: DatePicker["name"];
8123
+ /** A hint to the user of what can be entered in the field. */
8124
+ placeholder?: DatePicker["placeholder"];
8125
+ /** The text usually displayed in a tooltip popup when the mouse is over the field. */
8126
+ title?: DatePicker["title"];
8127
+ /** A target element to which ARIA attributes are set. */
8128
+ ariaTarget?: DatePicker["ariaTarget"];
8129
+ /** Error to show when the field is invalid. */
8130
+ errorMessage?: DatePicker["errorMessage"];
8131
+ /** String used for the helper text. */
8132
+ helperText?: DatePicker["helperText"];
8133
+ /** String used to label the component to screen reader users. */
8134
+ accessibleName?: DatePicker["accessibleName"];
8135
+ /** Id of the element used as label of the component to screen reader users. */
8136
+ accessibleNameRef?: DatePicker["accessibleNameRef"];
8137
+ /** Set to true to display the clear icon which clears the input.
8138
+ This also enables clearing the input when pressing Esc key. */
8139
+ clearButtonVisible?: DatePicker["clearButtonVisible"];
8140
+ /** */
8141
+ dir?: DatePicker["dir"];
8142
+ /** */
8143
+ _inputElementValue?: DatePicker["_inputElementValue"];
8144
+ /** */
8145
+ _boundOnClick?: DatePicker["_boundOnClick"];
8146
+ /** */
8147
+ _boundOnScroll?: DatePicker["_boundOnScroll"];
8148
+ /** */
8149
+ _boundOnBlur?: DatePicker["_boundOnBlur"];
8150
+ /** */
8151
+ _boundOnFocus?: DatePicker["_boundOnFocus"];
8152
+ /** */
8153
+ _boundOnPaste?: DatePicker["_boundOnPaste"];
8154
+ /** */
8155
+ _boundOnDrop?: DatePicker["_boundOnDrop"];
8156
+ /** */
8157
+ _boundOnBeforeInput?: DatePicker["_boundOnBeforeInput"];
8158
+ /** */
8159
+ _fieldAriaController?: DatePicker["_fieldAriaController"];
8160
+ /** */
8161
+ _helperController?: DatePicker["_helperController"];
8162
+ /** */
8163
+ _errorController?: DatePicker["_errorController"];
8164
+
8165
+ /** Fired when the user commits a value change. */
8166
+ onchange?: (e: CustomEvent) => void;
8167
+ /** Fired when the user commits an unparsable value change and there is no change event. */
8168
+ "onunparsable-change"?: (e: CustomEvent) => void;
8169
+ /** Fired when the `invalid` property changes. */
8170
+ "oninvalid-changed"?: (e: CustomEvent) => void;
8171
+ /** Fired when the `opened` property changes. */
8172
+ "onopened-changed"?: (e: CustomEvent) => void;
8173
+ /** Fired when the `value` property changes. */
8174
+ "onvalue-changed"?: (e: CustomEvent) => void;
8175
+ /** Fired whenever the field is validated. */
8176
+ onvalidated?: (e: CustomEvent) => void;
8177
+ };
8178
+
8179
+ export type DatePickerSolidJsProps = {
8180
+ /** */
8181
+ "prop:_positionTarget"?: DatePicker["_positionTarget"];
8182
+ /** Set when the element is disabled */
8183
+ "bool:disabled"?: unknown;
8184
+ /** Set when the element is disabled */
8185
+ "prop:undefined"?: unknown;
8186
+ /** Set when the element has a value */
8187
+ "bool:has-value"?: unknown;
8188
+ /** Set when the element has a label */
8189
+ "bool:has-label"?: unknown;
8190
+ /** Set when the element has helper text or slot */
8191
+ "bool:has-helper"?: unknown;
8192
+ /** Set when the element has an error message */
8193
+ "bool:has-error-message"?: unknown;
8194
+ /** Set when the element has a slotted tooltip */
8195
+ "bool:has-tooltip"?: unknown;
8196
+ /** Set when the element is invalid */
8197
+ "bool:invalid"?: unknown;
8198
+ /** Set when the element is focused */
8199
+ "bool:focused"?: unknown;
8200
+ /** Set when the element is keyboard focused */
8201
+ "bool:focus-ring"?: unknown;
8202
+ /** Set when the element is readonly */
8203
+ "prop:readonly"?: DatePicker["readonly"];
8204
+ /** Set when the overlay is opened */
8205
+ "prop:opened"?: DatePicker["opened"];
8206
+ /** Set when week numbers are shown in the calendar */
8207
+ "bool:week-numbers"?: unknown;
8208
+ /** */
8209
+ "bool:<vaadin-date-picker>"?: unknown;
8210
+ /** */
8211
+ "bool:<vaadin-date-picker-overlay-content>"?: unknown;
8212
+ /** */
8213
+ "bool:<vaadin-date-picker-month-scroller>"?: unknown;
8214
+ /** */
8215
+ "bool:<vaadin-date-picker-year-scroller>"?: unknown;
8216
+ /** */
8217
+ "bool:<vaadin-date-picker-year>"?: unknown;
8218
+ /** */
8219
+ "bool:<vaadin-month-calendar>"?: unknown;
8220
+ /** Fullscreen mode years scroller toggle */
8221
+ "bool:years-toggle-button"?: unknown;
8222
+ /** Toolbar with slotted buttons */
8223
+ "bool:toolbar"?: unknown;
8224
+ /** The current selected date. */
8225
+ "prop:_selectedDate"?: DatePicker["_selectedDate"];
8226
+ /** */
8227
+ "prop:_focusedDate"?: DatePicker["_focusedDate"];
8228
+ /** Selected date.
8229
+
8230
+ Supported date formats:
8231
+ - ISO 8601 `"YYYY-MM-DD"` (default)
8232
+ - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
8233
+ "prop:value"?: DatePicker["value"];
8234
+ /** Date which should be visible when there is no value selected.
8235
+
8236
+ The same date formats as for the `value` property are supported. */
8237
+ "prop:initialPosition"?: DatePicker["initialPosition"];
8238
+ /** Set true to prevent the overlay from opening automatically. */
8239
+ "prop:autoOpenDisabled"?: DatePicker["autoOpenDisabled"];
8240
+ /** Set true to display ISO-8601 week numbers in the calendar. Notice that
8241
+ displaying week numbers is only supported when `i18n.firstDayOfWeek`
8242
+ is 1 (Monday). */
8243
+ "prop:showWeekNumbers"?: DatePicker["showWeekNumbers"];
8244
+ /** */
8245
+ "prop:_fullscreen"?: DatePicker["_fullscreen"];
8246
+ /** */
8247
+ "prop:_fullscreenMediaQuery"?: DatePicker["_fullscreenMediaQuery"];
8248
+ /** The earliest date that can be selected. All earlier dates will be disabled.
8249
+
8250
+ Supported date formats:
8251
+ - ISO 8601 `"YYYY-MM-DD"` (default)
8252
+ - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
8253
+ "prop:min"?: DatePicker["min"];
8254
+ /** The latest date that can be selected. All later dates will be disabled.
8255
+
8256
+ Supported date formats:
8257
+ - ISO 8601 `"YYYY-MM-DD"` (default)
8258
+ - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"` */
8259
+ "prop:max"?: DatePicker["max"];
8260
+ /** A function to be used to determine whether the user can select a given date.
8261
+ Receives a `DatePickerDate` object of the date to be selected and should return a
8262
+ boolean. */
8263
+ "prop:isDateDisabled"?: DatePicker["isDateDisabled"];
8264
+ /** The earliest date that can be selected. All earlier dates will be disabled. */
8265
+ "prop:_minDate"?: DatePicker["_minDate"];
8266
+ /** The latest date that can be selected. All later dates will be disabled. */
8267
+ "prop:_maxDate"?: DatePicker["_maxDate"];
8268
+ /** */
8269
+ "prop:_noInput"?: DatePicker["_noInput"];
8270
+ /** */
8271
+ "prop:_ios"?: DatePicker["_ios"];
8272
+ /** */
8273
+ "prop:_focusOverlayOnOpen"?: DatePicker["_focusOverlayOnOpen"];
8274
+ /** */
8275
+ "prop:_overlayContent"?: DatePicker["_overlayContent"];
8276
+ /** */
8277
+ "prop:__enteredDate"?: DatePicker["__enteredDate"];
8278
+ /** The object used to localize this component. To change the default
8279
+ localization, replace this with an object that provides all properties, or
8280
+ just the individual properties you want to change.
8281
+
8282
+ Should be overridden by subclasses to provide a custom JSDoc with the
8283
+ default I18N properties. */
8284
+ "prop:i18n"?: DatePicker["i18n"];
8285
+ /** */
8286
+ "prop:__effectiveI18n"?: DatePicker["__effectiveI18n"];
8287
+ /** Specify that this control should have input focus when the page loads. */
8288
+ "prop:autofocus"?: DatePicker["autofocus"];
8289
+ /** A reference to the focusable element controlled by the mixin.
8290
+ It can be an input, textarea, button or any element with tabindex > -1.
8291
+
8292
+ Any component implementing this mixin is expected to provide it
8293
+ by using `this._setFocusElement(input)` Polymer API.
8294
+
8295
+ Toggling `tabindex` attribute on the host element propagates its value to `focusElement`. */
8296
+ "prop:focusElement"?: DatePicker["focusElement"];
8297
+ /** Override the property from `TabIndexMixin`
8298
+ to ensure the `tabindex` attribute of the focus element
8299
+ will be restored to `0` after re-enabling the element. */
8300
+ "prop:_lastTabIndex"?: DatePicker["_lastTabIndex"];
8301
+ /** A pattern matched against individual characters the user inputs.
8302
+
8303
+ When set, the field will prevent:
8304
+ - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
8305
+ - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
8306
+ - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
8307
+
8308
+ For example, to allow entering only numbers and minus signs, use:
8309
+ `allowedCharPattern = "[\\d-]"` */
8310
+ "prop:allowedCharPattern"?: DatePicker["allowedCharPattern"];
8311
+ /** If true, the input text gets fully selected when the field is focused using click or touch / tap. */
8312
+ "prop:autoselect"?: DatePicker["autoselect"];
8313
+ /** The name of this field. */
8314
+ "prop:name"?: DatePicker["name"];
8315
+ /** A hint to the user of what can be entered in the field. */
8316
+ "prop:placeholder"?: DatePicker["placeholder"];
8317
+ /** The text usually displayed in a tooltip popup when the mouse is over the field. */
8318
+ "prop:title"?: DatePicker["title"];
8319
+ /** A target element to which ARIA attributes are set. */
8320
+ "prop:ariaTarget"?: DatePicker["ariaTarget"];
8321
+ /** Error to show when the field is invalid. */
8322
+ "prop:errorMessage"?: DatePicker["errorMessage"];
8323
+ /** String used for the helper text. */
8324
+ "prop:helperText"?: DatePicker["helperText"];
8325
+ /** String used to label the component to screen reader users. */
8326
+ "prop:accessibleName"?: DatePicker["accessibleName"];
8327
+ /** Id of the element used as label of the component to screen reader users. */
8328
+ "prop:accessibleNameRef"?: DatePicker["accessibleNameRef"];
8329
+ /** Set to true to display the clear icon which clears the input.
8330
+ This also enables clearing the input when pressing Esc key. */
8331
+ "prop:clearButtonVisible"?: DatePicker["clearButtonVisible"];
8332
+ /** */
8333
+ "prop:dir"?: DatePicker["dir"];
8334
+ /** */
8335
+ "prop:_inputElementValue"?: DatePicker["_inputElementValue"];
8336
+ /** */
8337
+ "prop:_boundOnClick"?: DatePicker["_boundOnClick"];
8338
+ /** */
8339
+ "prop:_boundOnScroll"?: DatePicker["_boundOnScroll"];
8340
+ /** */
8341
+ "prop:_boundOnBlur"?: DatePicker["_boundOnBlur"];
8342
+ /** */
8343
+ "prop:_boundOnFocus"?: DatePicker["_boundOnFocus"];
8344
+ /** */
8345
+ "prop:_boundOnPaste"?: DatePicker["_boundOnPaste"];
8346
+ /** */
8347
+ "prop:_boundOnDrop"?: DatePicker["_boundOnDrop"];
8348
+ /** */
8349
+ "prop:_boundOnBeforeInput"?: DatePicker["_boundOnBeforeInput"];
8350
+ /** */
8351
+ "prop:_fieldAriaController"?: DatePicker["_fieldAriaController"];
8352
+ /** */
8353
+ "prop:_helperController"?: DatePicker["_helperController"];
8354
+ /** */
8355
+ "prop:_errorController"?: DatePicker["_errorController"];
8356
+ /** Fired when the user commits a value change. */
8357
+ "on:change"?: (e: CustomEvent) => void;
8358
+ /** Fired when the user commits an unparsable value change and there is no change event. */
8359
+ "on:unparsable-change"?: (e: CustomEvent) => void;
8360
+ /** Fired when the `invalid` property changes. */
8361
+ "on:invalid-changed"?: (e: CustomEvent) => void;
8362
+ /** Fired when the `opened` property changes. */
8363
+ "on:opened-changed"?: (e: CustomEvent) => void;
8364
+ /** Fired when the `value` property changes. */
8365
+ "on:value-changed"?: (e: CustomEvent) => void;
8366
+ /** Fired whenever the field is validated. */
8367
+ "on:validated"?: (e: CustomEvent) => void;
8368
+
8369
+ /** Set the innerHTML of the element */
8370
+ innerHTML?: string;
8371
+ /** Set the textContent of the element */
8372
+ textContent?: string | number;
8373
+ };
8374
+
8375
+ export type IconProps = {
8376
+ /** Set when the icon has a slotted tooltip */
8377
+ "has-tooltip"?: unknown;
8378
+ /** Set when the icon has a slotted tooltip */
8379
+ undefined?: unknown;
8380
+ /** */
8381
+ class?: unknown;
8382
+ /** The name of the icon to use. The name should be of the form:
8383
+ `iconset_name:icon_name`. When using `vaadin-icons` it is possible
8384
+ to omit the first part and only use `icon_name` as a value.
8385
+
8386
+ Setting the `icon` property updates the `svg` and `size` based on the
8387
+ values provided by the corresponding `vaadin-iconset` element.
8388
+
8389
+ See also [`name`](#/elements/vaadin-iconset#property-name) property of `vaadin-iconset`. */
8390
+ icon?: Icon["icon"];
8391
+ /** The SVG icon wrapped in a Lit template literal. */
8392
+ svg?: Icon["svg"];
8393
+ /** The SVG source to be loaded as the icon. It can be:
8394
+ - an URL to a file containing the icon
8395
+ - an URL in the format `/path/to/file.svg#objectID`, where the `objectID` refers to an ID attribute contained
8396
+ inside the SVG referenced by the path. Note that the file needs to follow the same-origin policy.
8397
+ - a string in the format `data:image/svg+xml,<svg>...</svg>`. You may need to use the `encodeURIComponent`
8398
+ function for the SVG content passed */
8399
+ src?: Icon["src"];
8400
+ /** The symbol identifier that references an ID of an element contained in the SVG element assigned to the
8401
+ `src` property */
8402
+ symbol?: Icon["symbol"];
8403
+ /** Class names defining an icon font and/or a specific glyph inside an icon font.
8404
+
8405
+ Example: "fa-solid fa-user" */
8406
+ iconClass?: Icon["iconClass"];
8407
+ /** A hexadecimal code point that specifies a glyph from an icon font.
8408
+
8409
+ Example: "e001" */
8410
+ char?: Icon["char"];
8411
+ /** A ligature name that specifies an icon from an icon font with support for ligatures.
8412
+
8413
+ Example: "home". */
8414
+ ligature?: Icon["ligature"];
8415
+ /** The font family to use for the font icon. */
8416
+ fontFamily?: Icon["fontFamily"];
8417
+ /** The size of an icon, used to set the `viewBox` attribute. */
8418
+ size?: Icon["size"];
8419
+ /** */
8420
+ __preserveAspectRatio?: Icon["__preserveAspectRatio"];
8421
+ /** */
8422
+ __useRef?: Icon["__useRef"];
8423
+ /** */
8424
+ __viewBox?: Icon["__viewBox"];
8425
+ /** */
8426
+ __fill?: Icon["__fill"];
8427
+ /** */
8428
+ __stroke?: Icon["__stroke"];
8429
+ /** */
8430
+ __strokeWidth?: Icon["__strokeWidth"];
8431
+ /** */
8432
+ __strokeLinecap?: Icon["__strokeLinecap"];
8433
+ /** */
8434
+ __strokeLinejoin?: Icon["__strokeLinejoin"];
8435
+ /** */
8436
+ dir?: Icon["dir"];
8437
+ /** */
8438
+ __fetch?: Icon["__fetch"];
8439
8439
  };
8440
8440
 
8441
8441
  export type IconSolidJsProps = {
@@ -17132,266 +17132,18 @@ export type CustomElements = {
17132
17132
  ContextMenuOverlayProps & BaseProps<ContextMenuOverlay> & BaseEvents
17133
17133
  >;
17134
17134
 
17135
- /**
17136
- * `<vaadin-context-menu>` is a Web Component for creating context menus.
17137
- *
17138
- * ### Items
17139
- *
17140
- * Items is a higher level convenience API for defining a (hierarchical) menu structure for the component.
17141
- * If a menu item has a non-empty `children` set, a sub-menu with the child items is opened
17142
- * next to the parent menu on mouseover, tap or a right arrow keypress.
17143
- *
17144
- * When an item is selected, `<vaadin-context-menu>` dispatches an "item-selected" event
17145
- * with the selected item as `event.detail.value` property.
17146
- * If item does not have `keepOpen` property the menu will be closed.
17147
- *
17148
- * ```javascript
17149
- * contextMenu.items = [
17150
- * { text: 'Menu Item 1', theme: 'primary', className: 'first', children:
17151
- * [
17152
- * { text: 'Menu Item 1-1', checked: true, keepOpen: true },
17153
- * { text: 'Menu Item 1-2' }
17154
- * ]
17155
- * },
17156
- * { component: 'hr' },
17157
- * { text: 'Menu Item 2', children:
17158
- * [
17159
- * { text: 'Menu Item 2-1' },
17160
- * { text: 'Menu Item 2-2', disabled: true }
17161
- * ]
17162
- * },
17163
- * { text: 'Menu Item 3', disabled: true, className: 'last' }
17164
- * ];
17165
- *
17166
- * contextMenu.addEventListener('item-selected', e => {
17167
- * const item = e.detail.value;
17168
- * console.log(`${item.text} selected`);
17169
- * });
17170
- * ```
17171
- *
17172
- * **NOTE:** when the `items` array is defined, the renderer cannot be used.
17173
- *
17174
- * #### Disabled menu items
17175
- *
17176
- * When disabled, menu items are rendered as "dimmed".
17177
- *
17178
- * By default, disabled items are not focusable and don't react to hover.
17179
- * As a result, they are hidden from assistive technologies, and it's not
17180
- * possible to show a tooltip to explain why they are disabled. This can
17181
- * be addressed by enabling the feature flag `accessibleDisabledMenuItems`,
17182
- * which makes disabled items focusable and hoverable, while still
17183
- * preventing them from being activated:
17184
- *
17185
- * ```js
17186
- * // Set before any context menu is attached to the DOM.
17187
- * window.Vaadin.featureFlags.accessibleDisabledMenuItems = true;
17188
- * ```
17189
- *
17190
- * #### Item tooltips
17191
- *
17192
- * Menu items can have tooltips that are shown on hover and keyboard
17193
- * focus. To enable them, add a slotted `<vaadin-tooltip>` element
17194
- * and set the `tooltip` property on each item that should have one:
17195
- *
17196
- * ```html
17197
- * <vaadin-context-menu>
17198
- * <vaadin-tooltip slot="tooltip"></vaadin-tooltip>
17199
- * </vaadin-context-menu>
17200
- * ```
17201
- *
17202
- * ### Rendering
17203
- *
17204
- * The content of the menu can be populated by using the renderer callback function.
17205
- *
17206
- * The renderer function provides `root`, `contextMenu`, `model` arguments when applicable.
17207
- * Generate DOM content by using `model` object properties if needed, append it to the `root`
17208
- * element and control the state of the host element by accessing `contextMenu`. Before generating
17209
- * new content, the renderer function should check if there is already content in `root` for reusing it.
17210
- *
17211
- * ```html
17212
- * <vaadin-context-menu id="contextMenu">
17213
- * <p>This paragraph has a context menu.</p>
17214
- * </vaadin-context-menu>
17215
- * ```
17216
- * ```js
17217
- * const contextMenu = document.querySelector('#contextMenu');
17218
- * contextMenu.renderer = (root, contextMenu, context) => {
17219
- * let listBox = root.firstElementChild;
17220
- * if (!listBox) {
17221
- * listBox = document.createElement('vaadin-list-box');
17222
- * root.appendChild(listBox);
17223
- * }
17224
- *
17225
- * let item = listBox.querySelector('vaadin-item');
17226
- * if (!item) {
17227
- * item = document.createElement('vaadin-item');
17228
- * listBox.appendChild(item);
17229
- * }
17230
- * item.textContent = 'Content of the selector: ' + context.target.textContent;
17231
- * };
17232
- * ```
17233
- *
17234
- * You can access the menu context inside the renderer using
17235
- * `context.target` and `context.detail`.
17236
- *
17237
- * Renderer is called on the opening of the context-menu and each time the related context is updated.
17238
- * DOM generated during the renderer call can be reused
17239
- * in the next renderer call and will be provided with the `root` argument.
17240
- * On first call it will be empty.
17241
- *
17242
- * ### `vaadin-contextmenu` Gesture Event
17243
- *
17244
- * `vaadin-contextmenu` is a gesture event (a custom event),
17245
- * which is dispatched after either `contextmenu` or long touch events.
17246
- * This enables support for both mouse and touch environments in a uniform way.
17247
- *
17248
- * `<vaadin-context-menu>` opens the menu overlay on the `vaadin-contextmenu`
17249
- * event by default.
17250
- *
17251
- * ### Menu Listener
17252
- *
17253
- * By default, the `<vaadin-context-menu>` element listens for the menu opening
17254
- * event on itself. In case if you do not want to wrap the target, you can listen for
17255
- * events on an element outside the `<vaadin-context-menu>` by setting the
17256
- * `listenOn` property:
17257
- *
17258
- * ```html
17259
- * <vaadin-context-menu id="contextMenu"></vaadin-context-menu>
17260
- *
17261
- * <div id="menuListener">The element that listens for the contextmenu event.</div>
17262
- * ```
17263
- * ```javascript
17264
- * const contextMenu = document.querySelector('#contextMenu');
17265
- * contextMenu.listenOn = document.querySelector('#menuListener');
17266
- * ```
17267
- *
17268
- * ### Filtering Menu Targets
17269
- *
17270
- * By default, the listener element and all its descendants open the context
17271
- * menu. You can filter the menu targets to a smaller set of elements inside
17272
- * the listener element by setting the `selector` property.
17273
- *
17274
- * In the following example, only the elements matching `.has-menu` will open the context menu:
17275
- *
17276
- * ```html
17277
- * <vaadin-context-menu selector=".has-menu">
17278
- * <p class="has-menu">This paragraph opens the context menu</p>
17279
- * <p>This paragraph does not open the context menu</p>
17280
- * </vaadin-context-menu>
17281
- * ```
17282
- *
17283
- * ### Menu Context
17284
- *
17285
- * The following properties are available in the `context` argument:
17286
- *
17287
- * - `target` is the menu opening event target, which is the element that
17288
- * the user has called the context menu for
17289
- * - `detail` is the menu opening event detail
17290
- *
17291
- * In the following example, the menu item text is composed with the contents
17292
- * of the element that opened the menu:
17293
- *
17294
- * ```html
17295
- * <vaadin-context-menu selector="li" id="contextMenu">
17296
- * <ul>
17297
- * <li>Foo</li>
17298
- * <li>Bar</li>
17299
- * <li>Baz</li>
17300
- * </ul>
17301
- * </vaadin-context-menu>
17302
- * ```
17303
- * ```js
17304
- * const contextMenu = document.querySelector('#contextMenu');
17305
- * contextMenu.renderer = (root, contextMenu, context) => {
17306
- * let listBox = root.firstElementChild;
17307
- * if (!listBox) {
17308
- * listBox = document.createElement('vaadin-list-box');
17309
- * root.appendChild(listBox);
17310
- * }
17311
- *
17312
- * let item = listBox.querySelector('vaadin-item');
17313
- * if (!item) {
17314
- * item = document.createElement('vaadin-item');
17315
- * listBox.appendChild(item);
17316
- * }
17317
- * item.textContent = 'The menu target: ' + context.target.textContent;
17318
- * };
17319
- * ```
17320
- *
17321
- * ### Styling
17322
- *
17323
- * The following shadow DOM parts are available for styling:
17324
- *
17325
- * Part name | Description
17326
- * -----------------|-------------------------------------------
17327
- * `backdrop` | Backdrop of the overlay
17328
- * `overlay` | The overlay container
17329
- * `content` | The overlay content
17330
- *
17331
- * ### Custom CSS Properties
17332
- *
17333
- * The following custom CSS properties are available for styling:
17334
- *
17335
- * Custom CSS property | Description
17336
- * --------------------------------------|-------------
17337
- * `--vaadin-context-menu-offset-top` | Used as an offset when using `position` and the context menu is aligned vertically below the target
17338
- * `--vaadin-context-menu-offset-bottom` | Used as an offset when using `position` and the context menu is aligned vertically above the target
17339
- * `--vaadin-context-menu-offset-start` | Used as an offset when using `position` and the context menu is aligned horizontally after the target
17340
- * `--vaadin-context-menu-offset-end` | Used as an offset when using `position` and the context menu is aligned horizontally before the target
17341
- *
17342
- * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
17343
- *
17344
- * ### Internal components
17345
- *
17346
- * When using `items` API the following internal components are themable:
17347
- *
17348
- * - `<vaadin-context-menu-item>` - has the same API as [`<vaadin-item>`](#/elements/vaadin-item).
17349
- * - `<vaadin-context-menu-list-box>` - has the same API as [`<vaadin-list-box>`](#/elements/vaadin-list-box).
17350
- *
17351
- * The `<vaadin-context-menu-item>` sub-menu elements have the following additional state attributes
17352
- * on top of the built-in `<vaadin-item>` state attributes:
17353
- *
17354
- * Attribute | Description
17355
- * ---------- |-------------
17356
- * `expanded` | Expanded parent item.
17357
- *
17358
- * ## Attributes & Properties
17359
- *
17360
- * Component attributes and properties that can be applied to the element or by using JavaScript.
17361
- *
17362
- * - `position`: Position of the overlay with respect to the target.
17363
- * Supported values: null, `top-start`, `top`, `top-end`,
17364
- * `bottom-start`, `bottom`, `bottom-end`, `start-top`,
17365
- * `start`, `start-bottom`, `end-top`, `end`, `end-bottom`.
17366
- * - `<vaadin-item>`/`undefined`: undefined
17367
- * - `selector`: CSS selector that can be used to target any child element
17368
- * of the context menu to listen for `openOn` events.
17369
- * - `opened`: True if the overlay is currently displayed.
17370
- * - `openOn`: Event name to listen for opening the context menu.
17371
- * - `listenOn`: The target element that's listened to for context menu opening events.
17372
- * By default the vaadin-context-menu listens to the target's `vaadin-contextmenu`
17373
- * events.
17374
- * - `closeOn`: Event name to listen for closing the context menu.
17375
- * - `renderer`: Custom function for rendering the content of the menu overlay.
17376
- * Receives three arguments:
17377
- *
17378
- * - `root` The root container DOM element. Append your content to it.
17379
- * - `contextMenu` The reference to the `<vaadin-context-menu>` element.
17380
- * - `context` The object with the menu context, contains:
17381
- * - `context.target` the target of the menu opening event,
17382
- * - `context.detail` the menu opening event detail.
17383
- * - `_modeless`: When true, the menu overlay is modeless.
17384
- * - `_context`: undefined
17385
- * - `_phone`: undefined
17386
- * - `_fullscreen`: undefined
17387
- * - `_fullscreenMediaQuery`: undefined
17388
- * - `items`: Defines a (hierarchical) menu structure for the component.
17135
+ /**
17136
+ * `<vaadin-context-menu>` is a Web Component for creating context menus.
17137
+ *
17138
+ * ### Items
17139
+ *
17140
+ * Items is a higher level convenience API for defining a (hierarchical) menu structure for the component.
17389
17141
  * If a menu item has a non-empty `children` set, a sub-menu with the child items is opened
17390
17142
  * next to the parent menu on mouseover, tap or a right arrow keypress.
17391
17143
  *
17392
- * The items API can't be used together with a renderer!
17393
- *
17394
- * #### Example
17144
+ * When an item is selected, `<vaadin-context-menu>` dispatches an "item-selected" event
17145
+ * with the selected item as `event.detail.value` property.
17146
+ * If item does not have `keepOpen` property the menu will be closed.
17395
17147
  *
17396
17148
  * ```javascript
17397
17149
  * contextMenu.items = [
@@ -17410,6 +17162,29 @@ export type CustomElements = {
17410
17162
  * },
17411
17163
  * { text: 'Menu Item 3', disabled: true, className: 'last' }
17412
17164
  * ];
17165
+ *
17166
+ * contextMenu.addEventListener('item-selected', e => {
17167
+ * const item = e.detail.value;
17168
+ * console.log(`${item.text} selected`);
17169
+ * });
17170
+ * ```
17171
+ *
17172
+ * **NOTE:** when the `items` array is defined, the renderer cannot be used.
17173
+ *
17174
+ * #### Disabled menu items
17175
+ *
17176
+ * When disabled, menu items are rendered as "dimmed".
17177
+ *
17178
+ * By default, disabled items are not focusable and don't react to hover.
17179
+ * As a result, they are hidden from assistive technologies, and it's not
17180
+ * possible to show a tooltip to explain why they are disabled. This can
17181
+ * be addressed by enabling the feature flag `accessibleDisabledMenuItems`,
17182
+ * which makes disabled items focusable and hoverable, while still
17183
+ * preventing them from being activated:
17184
+ *
17185
+ * ```js
17186
+ * // Set before any context menu is attached to the DOM.
17187
+ * window.Vaadin.featureFlags.accessibleDisabledMenuItems = true;
17413
17188
  * ```
17414
17189
  *
17415
17190
  * #### Item tooltips
@@ -17423,352 +17198,283 @@ export type CustomElements = {
17423
17198
  * <vaadin-tooltip slot="tooltip"></vaadin-tooltip>
17424
17199
  * </vaadin-context-menu>
17425
17200
  * ```
17426
- * - `_positionTarget`: undefined
17427
- * - `dir`: undefined
17428
- * - `_boundOpen`: undefined (property only)
17429
- * - `_boundClose`: undefined (property only)
17430
- * - `_boundPreventDefault`: undefined (property only)
17431
- * - `__itemsOutsideClickListener`: undefined (property only)
17432
- *
17433
- * ## Events
17434
- *
17435
- * Events that will be emitted by the component.
17436
- *
17437
- * - `opened-changed`: Fired when the `opened` property changes.
17438
- * - `item-selected`: Fired when an item is selected when the context menu is populated using the `items` API.
17439
- * - `closed`: Fired when the context menu is closed.
17440
- * - `close-all-menus`: Fired when all menus should close, e.g., after pressing Tab or on submenu close.
17441
- * - `items-outside-click`: Fired when a click happens outside any open sub-menus.
17442
- * - `undefined`: undefined
17443
- *
17444
- * ## Methods
17445
- *
17446
- * Methods that can be called to access component functionality.
17447
- *
17448
- * - `requestContentUpdate() => void`: Requests an update for the content of the menu overlay.
17449
- * While performing the update, it invokes the renderer passed in the `renderer` property.
17450
- *
17451
- * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
17452
- * - `close() => void`: Closes the overlay.
17453
- * - `open(e: !Event | undefined) => void`: Opens the overlay.
17454
- * - `createProperty(name, options) => void`: undefined
17455
- * - `getOrCreateMap(name) => void`: undefined
17456
- * - `addCheckedInitializer(initializer) => void`: undefined
17457
- * - `getPropertyDescriptor(name, key, options) => void`: undefined
17458
17201
  *
17459
- * ## CSS Custom Properties
17202
+ * ### Rendering
17460
17203
  *
17461
- * CSS variables available for styling the component.
17204
+ * The content of the menu can be populated by using the renderer callback function.
17462
17205
  *
17463
- * - `--vaadin-context-menu-offset-top`: Used as an offset when using `position` and the context menu is aligned vertically below the target (default: `undefined`)
17464
- * - `--vaadin-context-menu-offset-bottom`: Used as an offset when using `position` and the context menu is aligned vertically above the target (default: `undefined`)
17465
- * - `--vaadin-context-menu-offset-start`: Used as an offset when using `position` and the context menu is aligned horizontally after the target (default: `undefined`)
17466
- * - `--vaadin-context-menu-offset-end`: Used as an offset when using `position` and the context menu is aligned horizontally before the target (default: `undefined`)
17467
- * - `items`: undefined (default: `undefined`)
17468
- * - `<vaadin-context-menu-item>`: undefined (default: `undefined`)
17469
- * - `<vaadin-item>`: undefined (default: `undefined`)
17470
- * - `<vaadin-context-menu-list-box>`: undefined (default: `undefined`)
17471
- * - `<vaadin-list-box>`: undefined (default: `undefined`)
17472
- * - `<vaadin-context-menu-item>`: undefined (default: `undefined`)
17473
- * - `<vaadin-item>`: undefined (default: `undefined`)
17474
- * - `expanded`: Expanded parent item. (default: `undefined`)
17475
- */
17476
- "vaadin-context-menu": Partial<
17477
- ContextMenuProps & BaseProps<ContextMenu> & BaseEvents
17478
- >;
17479
-
17480
- /**
17481
- * An element used internally by `<vaadin-date-picker>`. Not intended to be used separately.
17206
+ * The renderer function provides `root`, `contextMenu`, `model` arguments when applicable.
17207
+ * Generate DOM content by using `model` object properties if needed, append it to the `root`
17208
+ * element and control the state of the host element by accessing `contextMenu`. Before generating
17209
+ * new content, the renderer function should check if there is already content in `root` for reusing it.
17482
17210
  *
17483
- * ## Attributes & Properties
17211
+ * ```html
17212
+ * <vaadin-context-menu id="contextMenu">
17213
+ * <p>This paragraph has a context menu.</p>
17214
+ * </vaadin-context-menu>
17215
+ * ```
17216
+ * ```js
17217
+ * const contextMenu = document.querySelector('#contextMenu');
17218
+ * contextMenu.renderer = (root, contextMenu, context) => {
17219
+ * let listBox = root.firstElementChild;
17220
+ * if (!listBox) {
17221
+ * listBox = document.createElement('vaadin-list-box');
17222
+ * root.appendChild(listBox);
17223
+ * }
17484
17224
  *
17485
- * Component attributes and properties that can be applied to the element or by using JavaScript.
17225
+ * let item = listBox.querySelector('vaadin-item');
17226
+ * if (!item) {
17227
+ * item = document.createElement('vaadin-item');
17228
+ * listBox.appendChild(item);
17229
+ * }
17230
+ * item.textContent = 'Content of the selector: ' + context.target.textContent;
17231
+ * };
17232
+ * ```
17486
17233
  *
17487
- * - `year`: undefined
17488
- * - `selectedDate`: undefined
17234
+ * You can access the menu context inside the renderer using
17235
+ * `context.target` and `context.detail`.
17489
17236
  *
17490
- * ## Events
17237
+ * Renderer is called on the opening of the context-menu and each time the related context is updated.
17238
+ * DOM generated during the renderer call can be reused
17239
+ * in the next renderer call and will be provided with the `root` argument.
17240
+ * On first call it will be empty.
17491
17241
  *
17492
- * Events that will be emitted by the component.
17242
+ * ### `vaadin-contextmenu` Gesture Event
17493
17243
  *
17494
- * - `undefined`: undefined
17244
+ * `vaadin-contextmenu` is a gesture event (a custom event),
17245
+ * which is dispatched after either `contextmenu` or long touch events.
17246
+ * This enables support for both mouse and touch environments in a uniform way.
17495
17247
  *
17496
- * ## Methods
17248
+ * `<vaadin-context-menu>` opens the menu overlay on the `vaadin-contextmenu`
17249
+ * event by default.
17497
17250
  *
17498
- * Methods that can be called to access component functionality.
17251
+ * ### Menu Listener
17499
17252
  *
17500
- * - `createProperty(name, options) => void`: undefined
17501
- * - `getOrCreateMap(name) => void`: undefined
17502
- * - `addCheckedInitializer(initializer) => void`: undefined
17503
- * - `getPropertyDescriptor(name, key, options) => void`: undefined
17504
- */
17505
- "vaadin-date-picker-year": Partial<
17506
- DatePickerYearProps & BaseProps<DatePickerYear> & BaseEvents
17507
- >;
17508
-
17509
- /**
17510
- * `<vaadin-date-picker>` is an input field that allows to enter a date by typing or by selecting from a calendar overlay.
17253
+ * By default, the `<vaadin-context-menu>` element listens for the menu opening
17254
+ * event on itself. In case if you do not want to wrap the target, you can listen for
17255
+ * events on an element outside the `<vaadin-context-menu>` by setting the
17256
+ * `listenOn` property:
17511
17257
  *
17512
17258
  * ```html
17513
- * <vaadin-date-picker label="Birthday"></vaadin-date-picker>
17514
- * ```
17259
+ * <vaadin-context-menu id="contextMenu"></vaadin-context-menu>
17515
17260
  *
17516
- * ```js
17517
- * datePicker.value = '2016-03-02';
17261
+ * <div id="menuListener">The element that listens for the contextmenu event.</div>
17262
+ * ```
17263
+ * ```javascript
17264
+ * const contextMenu = document.querySelector('#contextMenu');
17265
+ * contextMenu.listenOn = document.querySelector('#menuListener');
17518
17266
  * ```
17519
17267
  *
17520
- * When the selected `value` is changed, a `value-changed` event is triggered.
17521
- *
17522
- * ### Styling
17523
- *
17524
- * The following custom properties are available for styling:
17525
- *
17526
- * Custom property | Description | Default
17527
- * -------------------------------|----------------------------|---------
17528
- * `--vaadin-field-default-width` | Default width of the field | `12em`
17268
+ * ### Filtering Menu Targets
17529
17269
  *
17530
- * The following shadow DOM parts are available for styling:
17270
+ * By default, the listener element and all its descendants open the context
17271
+ * menu. You can filter the menu targets to a smaller set of elements inside
17272
+ * the listener element by setting the `selector` property.
17531
17273
  *
17532
- * Part name | Description
17533
- * ---------------------|----------------
17534
- * `label` | The label element
17535
- * `input-field` | The element that wraps prefix, value and buttons
17536
- * `field-button` | Set on both clear and toggle buttons
17537
- * `clear-button` | The clear button
17538
- * `error-message` | The error message element
17539
- * `helper-text` | The helper text element wrapper
17540
- * `required-indicator` | The `required` state indicator element
17541
- * `toggle-button` | The toggle button
17542
- * `backdrop` | Backdrop of the overlay
17543
- * `overlay` | The overlay container
17544
- * `content` | The overlay content
17274
+ * In the following example, only the elements matching `.has-menu` will open the context menu:
17545
17275
  *
17546
- * The following state attributes are available for styling:
17276
+ * ```html
17277
+ * <vaadin-context-menu selector=".has-menu">
17278
+ * <p class="has-menu">This paragraph opens the context menu</p>
17279
+ * <p>This paragraph does not open the context menu</p>
17280
+ * </vaadin-context-menu>
17281
+ * ```
17547
17282
  *
17548
- * Attribute | Description
17549
- * ---------------------|---------------------------------
17550
- * `disabled` | Set when the element is disabled
17551
- * `has-value` | Set when the element has a value
17552
- * `has-label` | Set when the element has a label
17553
- * `has-helper` | Set when the element has helper text or slot
17554
- * `has-error-message` | Set when the element has an error message
17555
- * `has-tooltip` | Set when the element has a slotted tooltip
17556
- * `invalid` | Set when the element is invalid
17557
- * `focused` | Set when the element is focused
17558
- * `focus-ring` | Set when the element is keyboard focused
17559
- * `readonly` | Set when the element is readonly
17560
- * `opened` | Set when the overlay is opened
17561
- * `week-numbers` | Set when week numbers are shown in the calendar
17283
+ * ### Menu Context
17562
17284
  *
17563
- * ### Internal components
17285
+ * The following properties are available in the `context` argument:
17564
17286
  *
17565
- * In addition to `<vaadin-date-picker>` itself, the following internal
17566
- * components are themable:
17287
+ * - `target` is the menu opening event target, which is the element that
17288
+ * the user has called the context menu for
17289
+ * - `detail` is the menu opening event detail
17567
17290
  *
17568
- * - `<vaadin-date-picker-overlay-content>`
17569
- * - `<vaadin-date-picker-month-scroller>`
17570
- * - `<vaadin-date-picker-year-scroller>`
17571
- * - `<vaadin-date-picker-year>`
17572
- * - `<vaadin-month-calendar>`
17291
+ * In the following example, the menu item text is composed with the contents
17292
+ * of the element that opened the menu:
17573
17293
  *
17574
- * In order to style the overlay content, use `<vaadin-date-picker-overlay-content>` shadow DOM parts:
17294
+ * ```html
17295
+ * <vaadin-context-menu selector="li" id="contextMenu">
17296
+ * <ul>
17297
+ * <li>Foo</li>
17298
+ * <li>Bar</li>
17299
+ * <li>Baz</li>
17300
+ * </ul>
17301
+ * </vaadin-context-menu>
17302
+ * ```
17303
+ * ```js
17304
+ * const contextMenu = document.querySelector('#contextMenu');
17305
+ * contextMenu.renderer = (root, contextMenu, context) => {
17306
+ * let listBox = root.firstElementChild;
17307
+ * if (!listBox) {
17308
+ * listBox = document.createElement('vaadin-list-box');
17309
+ * root.appendChild(listBox);
17310
+ * }
17575
17311
  *
17576
- * Part name | Description
17577
- * ----------------------|--------------------
17578
- * `years-toggle-button` | Fullscreen mode years scroller toggle
17579
- * `toolbar` | Toolbar with slotted buttons
17312
+ * let item = listBox.querySelector('vaadin-item');
17313
+ * if (!item) {
17314
+ * item = document.createElement('vaadin-item');
17315
+ * listBox.appendChild(item);
17316
+ * }
17317
+ * item.textContent = 'The menu target: ' + context.target.textContent;
17318
+ * };
17319
+ * ```
17580
17320
  *
17581
- * The following state attributes are available on the `<vaadin-date-picker-overlay-content>` element:
17321
+ * ### Styling
17582
17322
  *
17583
- * Attribute | Description
17584
- * ----------------|-------------------------------------------------
17585
- * `desktop` | Set when the overlay content is in desktop mode
17586
- * `fullscreen` | Set when the overlay content is in fullscreen mode
17587
- * `years-visible` | Set when the year scroller is visible in fullscreen mode
17323
+ * The following shadow DOM parts are available for styling:
17588
17324
  *
17589
- * In order to style the month calendar, use `<vaadin-month-calendar>` shadow DOM parts:
17325
+ * Part name | Description
17326
+ * -----------------|-------------------------------------------
17327
+ * `backdrop` | Backdrop of the overlay
17328
+ * `overlay` | The overlay container
17329
+ * `content` | The overlay content
17590
17330
  *
17591
- * Part name | Description
17592
- * ----------------------|--------------------
17593
- * `month-header` | Month title
17594
- * `weekdays` | Weekday container
17595
- * `weekday` | Weekday element
17596
- * `week-numbers` | Week numbers container
17597
- * `week-number` | Week number element
17598
- * `date` | Date element
17599
- * `disabled` | Disabled date element
17600
- * `focused` | Focused date element
17601
- * `selected` | Selected date element
17602
- * `today` | Date element corresponding to the current day
17603
- * `past` | Date element corresponding to the date in the past
17604
- * `future` | Date element corresponding to the date in the future
17331
+ * ### Custom CSS Properties
17605
17332
  *
17606
- * In order to style year scroller elements, use `<vaadin-date-picker-year>` shadow DOM parts:
17333
+ * The following custom CSS properties are available for styling:
17607
17334
  *
17608
- * Part name | Description
17609
- * ----------------------|--------------------
17610
- * `year-number` | Year number
17611
- * `year-separator` | Year separator
17335
+ * Custom CSS property | Description
17336
+ * --------------------------------------|-------------
17337
+ * `--vaadin-context-menu-offset-top` | Used as an offset when using `position` and the context menu is aligned vertically below the target
17338
+ * `--vaadin-context-menu-offset-bottom` | Used as an offset when using `position` and the context menu is aligned vertically above the target
17339
+ * `--vaadin-context-menu-offset-start` | Used as an offset when using `position` and the context menu is aligned horizontally after the target
17340
+ * `--vaadin-context-menu-offset-end` | Used as an offset when using `position` and the context menu is aligned horizontally before the target
17612
17341
  *
17613
17342
  * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
17614
17343
  *
17615
- * ### Change events
17344
+ * ### Internal components
17616
17345
  *
17617
- * Depending on the nature of the value change that the user attempts to commit e.g. by pressing Enter,
17618
- * the component can fire either a `change` event or an `unparsable-change` event:
17346
+ * When using `items` API the following internal components are themable:
17619
17347
  *
17620
- * Value change | Event
17621
- * :------------------------|:------------------
17622
- * empty => parsable | change
17623
- * empty => unparsable | unparsable-change
17624
- * parsable => empty | change
17625
- * parsable => parsable | change
17626
- * parsable => unparsable | change
17627
- * unparsable => empty | unparsable-change
17628
- * unparsable => parsable | change
17629
- * unparsable => unparsable | unparsable-change
17348
+ * - `<vaadin-context-menu-item>` - has the same API as [`<vaadin-item>`](#/elements/vaadin-item).
17349
+ * - `<vaadin-context-menu-list-box>` - has the same API as [`<vaadin-list-box>`](#/elements/vaadin-list-box).
17350
+ *
17351
+ * The `<vaadin-context-menu-item>` sub-menu elements have the following additional state attributes
17352
+ * on top of the built-in `<vaadin-item>` state attributes:
17353
+ *
17354
+ * Attribute | Description
17355
+ * ---------- |-------------
17356
+ * `expanded` | Expanded parent item.
17630
17357
  *
17631
17358
  * ## Attributes & Properties
17632
17359
  *
17633
17360
  * Component attributes and properties that can be applied to the element or by using JavaScript.
17634
17361
  *
17635
- * - `_positionTarget`: undefined
17636
- * - `disabled`/`undefined`: Set when the element is disabled
17637
- * - `has-value`/`undefined`: Set when the element has a value
17638
- * - `has-label`/`undefined`: Set when the element has a label
17639
- * - `has-helper`/`undefined`: Set when the element has helper text or slot
17640
- * - `has-error-message`/`undefined`: Set when the element has an error message
17641
- * - `has-tooltip`/`undefined`: Set when the element has a slotted tooltip
17642
- * - `invalid`/`undefined`: Set when the element is invalid
17643
- * - `focused`/`undefined`: Set when the element is focused
17644
- * - `focus-ring`/`undefined`: Set when the element is keyboard focused
17645
- * - `readonly`: Set when the element is readonly
17646
- * - `opened`: Set when the overlay is opened
17647
- * - `week-numbers`/`undefined`: Set when week numbers are shown in the calendar
17648
- * - `<vaadin-date-picker>`/`undefined`: undefined
17649
- * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
17650
- * - `<vaadin-date-picker-month-scroller>`/`undefined`: undefined
17651
- * - `<vaadin-date-picker-year-scroller>`/`undefined`: undefined
17652
- * - `<vaadin-date-picker-year>`/`undefined`: undefined
17653
- * - `<vaadin-month-calendar>`/`undefined`: undefined
17654
- * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
17655
- * - `years-toggle-button`/`undefined`: Fullscreen mode years scroller toggle
17656
- * - `toolbar`/`undefined`: Toolbar with slotted buttons
17657
- * - `_selectedDate`: The current selected date.
17658
- * - `_focusedDate`: undefined
17659
- * - `value`: Selected date.
17660
- *
17661
- * Supported date formats:
17662
- * - ISO 8601 `"YYYY-MM-DD"` (default)
17663
- * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
17664
- * - `initialPosition`: Date which should be visible when there is no value selected.
17362
+ * - `position`: Position of the overlay with respect to the target.
17363
+ * Supported values: null, `top-start`, `top`, `top-end`,
17364
+ * `bottom-start`, `bottom`, `bottom-end`, `start-top`,
17365
+ * `start`, `start-bottom`, `end-top`, `end`, `end-bottom`.
17366
+ * - `<vaadin-item>`/`undefined`: undefined
17367
+ * - `selector`: CSS selector that can be used to target any child element
17368
+ * of the context menu to listen for `openOn` events.
17369
+ * - `opened`: True if the overlay is currently displayed.
17370
+ * - `openOn`: Event name to listen for opening the context menu.
17371
+ * - `listenOn`: The target element that's listened to for context menu opening events.
17372
+ * By default the vaadin-context-menu listens to the target's `vaadin-contextmenu`
17373
+ * events.
17374
+ * - `closeOn`: Event name to listen for closing the context menu.
17375
+ * - `renderer`: Custom function for rendering the content of the menu overlay.
17376
+ * Receives three arguments:
17665
17377
  *
17666
- * The same date formats as for the `value` property are supported.
17667
- * - `autoOpenDisabled`: Set true to prevent the overlay from opening automatically.
17668
- * - `showWeekNumbers`: Set true to display ISO-8601 week numbers in the calendar. Notice that
17669
- * displaying week numbers is only supported when `i18n.firstDayOfWeek`
17670
- * is 1 (Monday).
17378
+ * - `root` The root container DOM element. Append your content to it.
17379
+ * - `contextMenu` The reference to the `<vaadin-context-menu>` element.
17380
+ * - `context` The object with the menu context, contains:
17381
+ * - `context.target` the target of the menu opening event,
17382
+ * - `context.detail` the menu opening event detail.
17383
+ * - `_modeless`: When true, the menu overlay is modeless.
17384
+ * - `_context`: undefined
17385
+ * - `_phone`: undefined
17671
17386
  * - `_fullscreen`: undefined
17672
17387
  * - `_fullscreenMediaQuery`: undefined
17673
- * - `min`: The earliest date that can be selected. All earlier dates will be disabled.
17674
- *
17675
- * Supported date formats:
17676
- * - ISO 8601 `"YYYY-MM-DD"` (default)
17677
- * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
17678
- * - `max`: The latest date that can be selected. All later dates will be disabled.
17388
+ * - `items`: Defines a (hierarchical) menu structure for the component.
17389
+ * If a menu item has a non-empty `children` set, a sub-menu with the child items is opened
17390
+ * next to the parent menu on mouseover, tap or a right arrow keypress.
17679
17391
  *
17680
- * Supported date formats:
17681
- * - ISO 8601 `"YYYY-MM-DD"` (default)
17682
- * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
17683
- * - `isDateDisabled`: A function to be used to determine whether the user can select a given date.
17684
- * Receives a `DatePickerDate` object of the date to be selected and should return a
17685
- * boolean.
17686
- * - `_minDate`: The earliest date that can be selected. All earlier dates will be disabled.
17687
- * - `_maxDate`: The latest date that can be selected. All later dates will be disabled.
17688
- * - `_noInput`: undefined
17689
- * - `_ios`: undefined
17690
- * - `_focusOverlayOnOpen`: undefined
17691
- * - `_overlayContent`: undefined
17692
- * - `__enteredDate`: undefined
17693
- * - `i18n`: The object used to localize this component. To change the default
17694
- * localization, replace this with an object that provides all properties, or
17695
- * just the individual properties you want to change.
17392
+ * The items API can't be used together with a renderer!
17696
17393
  *
17697
- * Should be overridden by subclasses to provide a custom JSDoc with the
17698
- * default I18N properties.
17699
- * - `__effectiveI18n`: undefined
17700
- * - `autofocus`: Specify that this control should have input focus when the page loads.
17701
- * - `focusElement`: A reference to the focusable element controlled by the mixin.
17702
- * It can be an input, textarea, button or any element with tabindex > -1.
17394
+ * #### Example
17703
17395
  *
17704
- * Any component implementing this mixin is expected to provide it
17705
- * by using `this._setFocusElement(input)` Polymer API.
17396
+ * ```javascript
17397
+ * contextMenu.items = [
17398
+ * { text: 'Menu Item 1', theme: 'primary', className: 'first', children:
17399
+ * [
17400
+ * { text: 'Menu Item 1-1', checked: true, keepOpen: true },
17401
+ * { text: 'Menu Item 1-2' }
17402
+ * ]
17403
+ * },
17404
+ * { component: 'hr' },
17405
+ * { text: 'Menu Item 2', children:
17406
+ * [
17407
+ * { text: 'Menu Item 2-1' },
17408
+ * { text: 'Menu Item 2-2', disabled: true }
17409
+ * ]
17410
+ * },
17411
+ * { text: 'Menu Item 3', disabled: true, className: 'last' }
17412
+ * ];
17413
+ * ```
17706
17414
  *
17707
- * Toggling `tabindex` attribute on the host element propagates its value to `focusElement`.
17708
- * - `_lastTabIndex`: Override the property from `TabIndexMixin`
17709
- * to ensure the `tabindex` attribute of the focus element
17710
- * will be restored to `0` after re-enabling the element.
17711
- * - `allowedCharPattern`: A pattern matched against individual characters the user inputs.
17415
+ * #### Item tooltips
17712
17416
  *
17713
- * When set, the field will prevent:
17714
- * - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
17715
- * - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
17716
- * - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
17417
+ * Menu items can have tooltips that are shown on hover and keyboard
17418
+ * focus. To enable them, add a slotted `<vaadin-tooltip>` element
17419
+ * and set the `tooltip` property on each item that should have one:
17717
17420
  *
17718
- * For example, to allow entering only numbers and minus signs, use:
17719
- * `allowedCharPattern = "[\\d-]"`
17720
- * - `autoselect`: If true, the input text gets fully selected when the field is focused using click or touch / tap.
17721
- * - `name`: The name of this field.
17722
- * - `placeholder`: A hint to the user of what can be entered in the field.
17723
- * - `title`: The text usually displayed in a tooltip popup when the mouse is over the field.
17724
- * - `ariaTarget`: A target element to which ARIA attributes are set.
17725
- * - `errorMessage`: Error to show when the field is invalid.
17726
- * - `helperText`: String used for the helper text.
17727
- * - `accessibleName`: String used to label the component to screen reader users.
17728
- * - `accessibleNameRef`: Id of the element used as label of the component to screen reader users.
17729
- * - `clearButtonVisible`: Set to true to display the clear icon which clears the input.
17730
- * This also enables clearing the input when pressing Esc key.
17421
+ * ```html
17422
+ * <vaadin-context-menu>
17423
+ * <vaadin-tooltip slot="tooltip"></vaadin-tooltip>
17424
+ * </vaadin-context-menu>
17425
+ * ```
17426
+ * - `_positionTarget`: undefined
17731
17427
  * - `dir`: undefined
17732
- * - `_inputElementValue`: undefined (property only)
17733
- * - `_boundOnClick`: undefined (property only)
17734
- * - `_boundOnScroll`: undefined (property only)
17735
- * - `_boundOnBlur`: undefined (property only)
17736
- * - `_boundOnFocus`: undefined (property only)
17737
- * - `_boundOnPaste`: undefined (property only)
17738
- * - `_boundOnDrop`: undefined (property only)
17739
- * - `_boundOnBeforeInput`: undefined (property only)
17740
- * - `_fieldAriaController`: undefined (property only)
17741
- * - `_helperController`: undefined (property only)
17742
- * - `_errorController`: undefined (property only)
17428
+ * - `_boundOpen`: undefined (property only)
17429
+ * - `_boundClose`: undefined (property only)
17430
+ * - `_boundPreventDefault`: undefined (property only)
17431
+ * - `__itemsOutsideClickListener`: undefined (property only)
17743
17432
  *
17744
17433
  * ## Events
17745
17434
  *
17746
17435
  * Events that will be emitted by the component.
17747
17436
  *
17748
- * - `change`: Fired when the user commits a value change.
17749
- * - `unparsable-change`: Fired when the user commits an unparsable value change and there is no change event.
17750
- * - `invalid-changed`: Fired when the `invalid` property changes.
17751
17437
  * - `opened-changed`: Fired when the `opened` property changes.
17752
- * - `value-changed`: Fired when the `value` property changes.
17753
- * - `validated`: Fired whenever the field is validated.
17438
+ * - `item-selected`: Fired when an item is selected when the context menu is populated using the `items` API.
17439
+ * - `closed`: Fired when the context menu is closed.
17440
+ * - `close-all-menus`: Fired when all menus should close, e.g., after pressing Tab or on submenu close.
17441
+ * - `items-outside-click`: Fired when a click happens outside any open sub-menus.
17754
17442
  * - `undefined`: undefined
17755
17443
  *
17756
17444
  * ## Methods
17757
17445
  *
17758
17446
  * Methods that can be called to access component functionality.
17759
17447
  *
17760
- * - `open() => void`: Opens the dropdown.
17761
- * - `close() => void`: Closes the dropdown.
17762
- * - `checkValidity() => boolean`: Returns true if the current input value satisfies all constraints (if any)
17448
+ * - `requestContentUpdate() => void`: Requests an update for the content of the menu overlay.
17449
+ * While performing the update, it invokes the renderer passed in the `renderer` property.
17763
17450
  *
17764
- * Override the `checkValidity` method for custom validations.
17451
+ * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
17452
+ * - `close() => void`: Closes the overlay.
17453
+ * - `open(e: !Event | undefined) => void`: Opens the overlay.
17765
17454
  * - `createProperty(name, options) => void`: undefined
17766
17455
  * - `getOrCreateMap(name) => void`: undefined
17767
17456
  * - `addCheckedInitializer(initializer) => void`: undefined
17768
17457
  * - `getPropertyDescriptor(name, key, options) => void`: undefined
17458
+ *
17459
+ * ## CSS Custom Properties
17460
+ *
17461
+ * CSS variables available for styling the component.
17462
+ *
17463
+ * - `--vaadin-context-menu-offset-top`: Used as an offset when using `position` and the context menu is aligned vertically below the target (default: `undefined`)
17464
+ * - `--vaadin-context-menu-offset-bottom`: Used as an offset when using `position` and the context menu is aligned vertically above the target (default: `undefined`)
17465
+ * - `--vaadin-context-menu-offset-start`: Used as an offset when using `position` and the context menu is aligned horizontally after the target (default: `undefined`)
17466
+ * - `--vaadin-context-menu-offset-end`: Used as an offset when using `position` and the context menu is aligned horizontally before the target (default: `undefined`)
17467
+ * - `items`: undefined (default: `undefined`)
17468
+ * - `<vaadin-context-menu-item>`: undefined (default: `undefined`)
17469
+ * - `<vaadin-item>`: undefined (default: `undefined`)
17470
+ * - `<vaadin-context-menu-list-box>`: undefined (default: `undefined`)
17471
+ * - `<vaadin-list-box>`: undefined (default: `undefined`)
17472
+ * - `<vaadin-context-menu-item>`: undefined (default: `undefined`)
17473
+ * - `<vaadin-item>`: undefined (default: `undefined`)
17474
+ * - `expanded`: Expanded parent item. (default: `undefined`)
17769
17475
  */
17770
- "vaadin-date-picker": Partial<
17771
- DatePickerProps & BaseProps<DatePicker> & BaseEvents
17476
+ "vaadin-context-menu": Partial<
17477
+ ContextMenuProps & BaseProps<ContextMenu> & BaseEvents
17772
17478
  >;
17773
17479
 
17774
17480
  /**
@@ -18013,252 +17719,546 @@ export type CustomElements = {
18013
17719
  * - `renderer`: Custom function for rendering the content of the overlay.
18014
17720
  * Receives three arguments:
18015
17721
  *
18016
- * - `root` The root container DOM element. Append your content to it.
18017
- * - `owner` The host element of the renderer function.
18018
- * - `model` The object with the properties related with rendering.
18019
- * - `modeless`: When true the overlay won't disable the main content, showing
18020
- * it doesn't change the functionality of the user interface.
18021
- * - `hidden`: When set to true, the overlay is hidden. This also closes the overlay
18022
- * immediately in case there is a closing animation in progress.
18023
- * - `withBackdrop`: When true the overlay has backdrop on top of content when opened.
18024
- * - `focusTrap`: When true, opening the overlay moves focus to the first focusable child,
18025
- * or to the overlay part with tabindex if there are no focusable children.
18026
- * - `restoreFocusOnClose`: Set to true to enable restoring of focus when overlay is closed.
18027
- * - `restoreFocusNode`: Set to specify the element which should be focused on overlay close,
18028
- * if `restoreFocusOnClose` is set to true.
18029
- * - `dir`: undefined
18030
- * - `_boundMouseDownListener`: undefined (property only)
18031
- * - `_boundMouseUpListener`: undefined (property only)
18032
- * - `_boundOutsideClickListener`: undefined (property only)
18033
- * - `_boundKeydownListener`: undefined (property only)
18034
- * - `__focusTrapController`: undefined (property only)
18035
- * - `__focusRestorationController`: undefined (property only)
17722
+ * - `root` The root container DOM element. Append your content to it.
17723
+ * - `owner` The host element of the renderer function.
17724
+ * - `model` The object with the properties related with rendering.
17725
+ * - `modeless`: When true the overlay won't disable the main content, showing
17726
+ * it doesn't change the functionality of the user interface.
17727
+ * - `hidden`: When set to true, the overlay is hidden. This also closes the overlay
17728
+ * immediately in case there is a closing animation in progress.
17729
+ * - `withBackdrop`: When true the overlay has backdrop on top of content when opened.
17730
+ * - `focusTrap`: When true, opening the overlay moves focus to the first focusable child,
17731
+ * or to the overlay part with tabindex if there are no focusable children.
17732
+ * - `restoreFocusOnClose`: Set to true to enable restoring of focus when overlay is closed.
17733
+ * - `restoreFocusNode`: Set to specify the element which should be focused on overlay close,
17734
+ * if `restoreFocusOnClose` is set to true.
17735
+ * - `dir`: undefined
17736
+ * - `_boundMouseDownListener`: undefined (property only)
17737
+ * - `_boundMouseUpListener`: undefined (property only)
17738
+ * - `_boundOutsideClickListener`: undefined (property only)
17739
+ * - `_boundKeydownListener`: undefined (property only)
17740
+ * - `__focusTrapController`: undefined (property only)
17741
+ * - `__focusRestorationController`: undefined (property only)
17742
+ *
17743
+ * ## Events
17744
+ *
17745
+ * Events that will be emitted by the component.
17746
+ *
17747
+ * - `vaadin-overlay-closed`: undefined
17748
+ * - `vaadin-overlay-closing`: undefined
17749
+ * - `undefined`: undefined
17750
+ *
17751
+ * ## Methods
17752
+ *
17753
+ * Methods that can be called to access component functionality.
17754
+ *
17755
+ * - `requestContentUpdate() => void`: Requests an update for the content of the overlay.
17756
+ * While performing the update, it invokes the renderer passed in the `renderer` property.
17757
+ *
17758
+ * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
17759
+ * - `getBounds() => !DialogOverlayBounds`: Retrieves the coordinates of the overlay.
17760
+ * - `setBounds(bounds, absolute = true) => void`: Override method from OverlayMixin to adjust the position of the overlay if `keepInViewport` is true.
17761
+ * - `close(sourceEvent: Event=) => void`: undefined
17762
+ * - `createProperty(name, options) => void`: undefined
17763
+ * - `getOrCreateMap(name) => void`: undefined
17764
+ * - `addCheckedInitializer(initializer) => void`: undefined
17765
+ * - `getPropertyDescriptor(name, key, options) => void`: undefined
17766
+ */
17767
+ "vaadin-dialog-overlay": Partial<
17768
+ DialogOverlayProps & BaseProps<DialogOverlay> & BaseEvents
17769
+ >;
17770
+
17771
+ /**
17772
+ * `<vaadin-dialog>` is a Web Component for creating customized modal dialogs.
17773
+ *
17774
+ * ### Rendering
17775
+ *
17776
+ * The content of the dialog can be populated by using the renderer callback function.
17777
+ *
17778
+ * The renderer function provides `root`, `dialog` arguments.
17779
+ * Generate DOM content, append it to the `root` element and control the state
17780
+ * of the host element by accessing `dialog`. Before generating new content,
17781
+ * users are able to check if there is already content in `root` for reusing it.
17782
+ *
17783
+ * ```html
17784
+ * <vaadin-dialog id="dialog"></vaadin-dialog>
17785
+ * ```
17786
+ * ```js
17787
+ * const dialog = document.querySelector('#dialog');
17788
+ * dialog.renderer = function(root, dialog) {
17789
+ * root.textContent = "Sample dialog";
17790
+ * };
17791
+ * ```
17792
+ *
17793
+ * Renderer is called on the opening of the dialog.
17794
+ * DOM generated during the renderer call can be reused
17795
+ * in the next renderer call and will be provided with the `root` argument.
17796
+ * On first call it will be empty.
17797
+ *
17798
+ * ### Styling
17799
+ *
17800
+ * The following shadow DOM parts are available for styling:
17801
+ *
17802
+ * Part name | Description
17803
+ * -----------------|-------------------------------------------
17804
+ * `backdrop` | Backdrop of the overlay
17805
+ * `overlay` | The overlay container
17806
+ * `content` | The overlay content
17807
+ * `header` | Element wrapping title and header content
17808
+ * `header-content` | Element wrapping the header content slot
17809
+ * `title` | Element wrapping the title slot
17810
+ * `footer` | Element wrapping the footer slot
17811
+ *
17812
+ * The following state attributes are available for styling:
17813
+ *
17814
+ * Attribute | Description
17815
+ * -----------------|--------------------------------------------
17816
+ * `has-title` | Set when the element has a title
17817
+ * `has-header` | Set when the element has header renderer
17818
+ * `has-footer` | Set when the element has footer renderer
17819
+ * `overflow` | Set to `top`, `bottom`, none or both
17820
+ *
17821
+ * The following custom CSS properties are available for styling:
17822
+ *
17823
+ * Custom CSS property |
17824
+ * :--------------------------------------------|
17825
+ * |`--vaadin-dialog-background` |
17826
+ * |`--vaadin-dialog-border-color` |
17827
+ * |`--vaadin-dialog-border-radius` |
17828
+ * |`--vaadin-dialog-border-width` |
17829
+ * |`--vaadin-dialog-max-width` |
17830
+ * |`--vaadin-dialog-min-width` |
17831
+ * |`--vaadin-dialog-overflow-indicator-color` |
17832
+ * |`--vaadin-dialog-overflow-indicator-height` |
17833
+ * |`--vaadin-dialog-padding` |
17834
+ * |`--vaadin-dialog-shadow` |
17835
+ * |`--vaadin-dialog-text-color` |
17836
+ * |`--vaadin-dialog-title-color` |
17837
+ * |`--vaadin-dialog-title-font-size` |
17838
+ * |`--vaadin-dialog-title-font-weight` |
17839
+ * |`--vaadin-dialog-title-line-height` |
17840
+ * |`--vaadin-overlay-backdrop-background` |
17841
+ *
17842
+ * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
17843
+ *
17844
+ * ## Attributes & Properties
17845
+ *
17846
+ * Component attributes and properties that can be applied to the element or by using JavaScript.
17847
+ *
17848
+ * - `has-title`/`undefined`: Set when the element has a title
17849
+ * - `has-header`/`undefined`: Set when the element has header renderer
17850
+ * - `has-footer`/`undefined`: Set when the element has footer renderer
17851
+ * - `overflow`/`undefined`: Set to `top`, `bottom`, none or both
17852
+ * - `width`: Set the width of the dialog.
17853
+ * If a unitless number is provided, pixels are assumed.
17854
+ * - `height`: Set the height of the dialog.
17855
+ * If a unitless number is provided, pixels are assumed.
17856
+ * - `draggable`: Set to true to enable repositioning the dialog by clicking and dragging.
17857
+ *
17858
+ * By default, only the overlay area can be used to drag the element. But,
17859
+ * a child element can be marked as a draggable area by adding a
17860
+ * "`draggable`" class to it, this will by default make all of its children draggable also.
17861
+ * If you want a child element to be draggable
17862
+ * but still have its children non-draggable (by default), mark it with
17863
+ * "`draggable-leaf-only`" class name.
17864
+ * - `_touchDevice`: undefined
17865
+ * - `__dragHandleClassName`: undefined
17866
+ * - `resizable`: Set to true to enable resizing the dialog by dragging the corners and edges.
17867
+ * - `renderer`: Custom function for rendering the content of the dialog.
17868
+ * Receives two arguments:
17869
+ *
17870
+ * - `root` The root container DOM element. Append your content to it.
17871
+ * - `dialog` The reference to the `<vaadin-dialog>` element.
17872
+ * - `headerTitle`: String used for rendering a dialog title.
17873
+ *
17874
+ * If both `headerTitle` and `headerRenderer` are defined, the title
17875
+ * and the elements created by the renderer will be placed next to
17876
+ * each other, with the title coming first.
17877
+ *
17878
+ * When `headerTitle` is set, the attribute `has-title` is set on the dialog.
17879
+ * - `headerRenderer`: Custom function for rendering the dialog header.
17880
+ * Receives two arguments:
17881
+ *
17882
+ * - `root` The root container DOM element. Append your content to it.
17883
+ * - `dialog` The reference to the `<vaadin-dialog>` element.
17884
+ *
17885
+ * If both `headerTitle` and `headerRenderer` are defined, the title
17886
+ * and the elements created by the renderer will be placed next to
17887
+ * each other, with the title coming first.
17888
+ *
17889
+ * When `headerRenderer` is set, the attribute `has-header` is set on the dialog.
17890
+ * - `footerRenderer`: Custom function for rendering the dialog footer.
17891
+ * Receives two arguments:
17892
+ *
17893
+ * - `root` The root container DOM element. Append your content to it.
17894
+ * - `dialog` The reference to the `<vaadin-dialog>` element.
17895
+ *
17896
+ * When `footerRenderer` is set, the attribute `has-footer` is set on the dialog.
17897
+ * - `opened`: True if the dialog is visible and available for interaction.
17898
+ * - `noCloseOnOutsideClick`: Set to true to disable closing dialog on outside click
17899
+ * - `noCloseOnEsc`: Set to true to disable closing dialog on Escape press
17900
+ * - `modeless`: Set to true to remove backdrop and allow click events on background elements.
17901
+ * - `noFocusTrap`: Set to true to disable focus trapping.
17902
+ * - `top`: Set the distance of the dialog from the top of the viewport.
17903
+ * If a unitless number is provided, pixels are assumed.
17904
+ *
17905
+ * Note that the dialog uses an internal container that has some
17906
+ * additional spacing, which can be overridden by the theme.
17907
+ * - `left`: Set the distance of the dialog from the left of the viewport.
17908
+ * If a unitless number is provided, pixels are assumed.
17909
+ *
17910
+ * Note that the dialog uses an internal container that has some
17911
+ * additional spacing, which can be overridden by the theme.
17912
+ * - `overlayRole`: The `role` attribute value to be set on the dialog. Defaults to "dialog".
17913
+ * - `keepInViewport`: Set to true to prevent the dialog from moving outside the viewport bounds.
17914
+ * When enabled, all four edges of the dialog will remain visible, for example
17915
+ * when dragging the dialog or when the viewport is resized. Note that the
17916
+ * dialog will also adjust any programmatically configured size and position
17917
+ * so that it stays within the viewport.
17918
+ * - `dir`: undefined
17919
+ *
17920
+ * ## Events
17921
+ *
17922
+ * Events that will be emitted by the component.
17923
+ *
17924
+ * - `resize-start`: Fired when the dialog resize is started.
17925
+ * - `resize`: Fired when the dialog resize is finished.
17926
+ * - `drag-start`: Fired when the dialog drag is started.
17927
+ * - `dragged`: Fired when the dialog drag is finished.
17928
+ * - `opened-changed`: Fired when the `opened` property changes.
17929
+ * - `closed`: Fired when the dialog is closed.
17930
+ * - `undefined`: undefined
17931
+ *
17932
+ * ## Methods
17933
+ *
17934
+ * Methods that can be called to access component functionality.
17935
+ *
17936
+ * - `requestContentUpdate() => void`: Requests an update for the content of the dialog.
17937
+ * While performing the update, it invokes the renderer passed in the `renderer` property,
17938
+ * as well as `headerRender` and `footerRenderer` properties, if these are defined.
17939
+ *
17940
+ * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
17941
+ * - `createProperty(name, options) => void`: undefined
17942
+ * - `getOrCreateMap(name) => void`: undefined
17943
+ * - `addCheckedInitializer(initializer) => void`: undefined
17944
+ * - `getPropertyDescriptor(name, key, options) => void`: undefined
17945
+ *
17946
+ * ## CSS Custom Properties
17947
+ *
17948
+ * CSS variables available for styling the component.
17949
+ *
17950
+ * - `--vaadin-dialog-background`: undefined (default: `undefined`)
17951
+ * - `--vaadin-dialog-border-color`: undefined (default: `undefined`)
17952
+ * - `--vaadin-dialog-border-radius`: undefined (default: `undefined`)
17953
+ * - `--vaadin-dialog-border-width`: undefined (default: `undefined`)
17954
+ * - `--vaadin-dialog-max-width`: undefined (default: `undefined`)
17955
+ * - `--vaadin-dialog-min-width`: undefined (default: `undefined`)
17956
+ * - `--vaadin-dialog-overflow-indicator-color`: undefined (default: `undefined`)
17957
+ * - `--vaadin-dialog-overflow-indicator-height`: undefined (default: `undefined`)
17958
+ * - `--vaadin-dialog-padding`: undefined (default: `undefined`)
17959
+ * - `--vaadin-dialog-shadow`: undefined (default: `undefined`)
17960
+ * - `--vaadin-dialog-text-color`: undefined (default: `undefined`)
17961
+ * - `--vaadin-dialog-title-color`: undefined (default: `undefined`)
17962
+ * - `--vaadin-dialog-title-font-size`: undefined (default: `undefined`)
17963
+ * - `--vaadin-dialog-title-font-weight`: undefined (default: `undefined`)
17964
+ * - `--vaadin-dialog-title-line-height`: undefined (default: `undefined`)
17965
+ * - `--vaadin-overlay-backdrop-background`: See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation. (default: `undefined`)
17966
+ */
17967
+ "vaadin-dialog": Partial<DialogProps & BaseProps<Dialog> & BaseEvents>;
17968
+
17969
+ /**
17970
+ * An element used internally by `<vaadin-date-picker>`. Not intended to be used separately.
17971
+ *
17972
+ * ## Attributes & Properties
17973
+ *
17974
+ * Component attributes and properties that can be applied to the element or by using JavaScript.
17975
+ *
17976
+ * - `year`: undefined
17977
+ * - `selectedDate`: undefined
18036
17978
  *
18037
17979
  * ## Events
18038
17980
  *
18039
17981
  * Events that will be emitted by the component.
18040
17982
  *
18041
- * - `vaadin-overlay-closed`: undefined
18042
- * - `vaadin-overlay-closing`: undefined
18043
17983
  * - `undefined`: undefined
18044
17984
  *
18045
17985
  * ## Methods
18046
17986
  *
18047
17987
  * Methods that can be called to access component functionality.
18048
17988
  *
18049
- * - `requestContentUpdate() => void`: Requests an update for the content of the overlay.
18050
- * While performing the update, it invokes the renderer passed in the `renderer` property.
18051
- *
18052
- * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
18053
- * - `getBounds() => !DialogOverlayBounds`: Retrieves the coordinates of the overlay.
18054
- * - `setBounds(bounds, absolute = true) => void`: Override method from OverlayMixin to adjust the position of the overlay if `keepInViewport` is true.
18055
- * - `close(sourceEvent: Event=) => void`: undefined
18056
17989
  * - `createProperty(name, options) => void`: undefined
18057
17990
  * - `getOrCreateMap(name) => void`: undefined
18058
17991
  * - `addCheckedInitializer(initializer) => void`: undefined
18059
17992
  * - `getPropertyDescriptor(name, key, options) => void`: undefined
18060
17993
  */
18061
- "vaadin-dialog-overlay": Partial<
18062
- DialogOverlayProps & BaseProps<DialogOverlay> & BaseEvents
17994
+ "vaadin-date-picker-year": Partial<
17995
+ DatePickerYearProps & BaseProps<DatePickerYear> & BaseEvents
18063
17996
  >;
18064
17997
 
18065
17998
  /**
18066
- * `<vaadin-dialog>` is a Web Component for creating customized modal dialogs.
18067
- *
18068
- * ### Rendering
18069
- *
18070
- * The content of the dialog can be populated by using the renderer callback function.
18071
- *
18072
- * The renderer function provides `root`, `dialog` arguments.
18073
- * Generate DOM content, append it to the `root` element and control the state
18074
- * of the host element by accessing `dialog`. Before generating new content,
18075
- * users are able to check if there is already content in `root` for reusing it.
17999
+ * `<vaadin-date-picker>` is an input field that allows to enter a date by typing or by selecting from a calendar overlay.
18076
18000
  *
18077
18001
  * ```html
18078
- * <vaadin-dialog id="dialog"></vaadin-dialog>
18002
+ * <vaadin-date-picker label="Birthday"></vaadin-date-picker>
18079
18003
  * ```
18004
+ *
18080
18005
  * ```js
18081
- * const dialog = document.querySelector('#dialog');
18082
- * dialog.renderer = function(root, dialog) {
18083
- * root.textContent = "Sample dialog";
18084
- * };
18006
+ * datePicker.value = '2016-03-02';
18085
18007
  * ```
18086
18008
  *
18087
- * Renderer is called on the opening of the dialog.
18088
- * DOM generated during the renderer call can be reused
18089
- * in the next renderer call and will be provided with the `root` argument.
18090
- * On first call it will be empty.
18009
+ * When the selected `value` is changed, a `value-changed` event is triggered.
18091
18010
  *
18092
18011
  * ### Styling
18093
18012
  *
18013
+ * The following custom properties are available for styling:
18014
+ *
18015
+ * Custom property | Description | Default
18016
+ * -------------------------------|----------------------------|---------
18017
+ * `--vaadin-field-default-width` | Default width of the field | `12em`
18018
+ *
18094
18019
  * The following shadow DOM parts are available for styling:
18095
18020
  *
18096
- * Part name | Description
18097
- * -----------------|-------------------------------------------
18098
- * `backdrop` | Backdrop of the overlay
18099
- * `overlay` | The overlay container
18100
- * `content` | The overlay content
18101
- * `header` | Element wrapping title and header content
18102
- * `header-content` | Element wrapping the header content slot
18103
- * `title` | Element wrapping the title slot
18104
- * `footer` | Element wrapping the footer slot
18021
+ * Part name | Description
18022
+ * ---------------------|----------------
18023
+ * `label` | The label element
18024
+ * `input-field` | The element that wraps prefix, value and buttons
18025
+ * `field-button` | Set on both clear and toggle buttons
18026
+ * `clear-button` | The clear button
18027
+ * `error-message` | The error message element
18028
+ * `helper-text` | The helper text element wrapper
18029
+ * `required-indicator` | The `required` state indicator element
18030
+ * `toggle-button` | The toggle button
18031
+ * `backdrop` | Backdrop of the overlay
18032
+ * `overlay` | The overlay container
18033
+ * `content` | The overlay content
18105
18034
  *
18106
18035
  * The following state attributes are available for styling:
18107
18036
  *
18108
- * Attribute | Description
18109
- * -----------------|--------------------------------------------
18110
- * `has-title` | Set when the element has a title
18111
- * `has-header` | Set when the element has header renderer
18112
- * `has-footer` | Set when the element has footer renderer
18113
- * `overflow` | Set to `top`, `bottom`, none or both
18037
+ * Attribute | Description
18038
+ * ---------------------|---------------------------------
18039
+ * `disabled` | Set when the element is disabled
18040
+ * `has-value` | Set when the element has a value
18041
+ * `has-label` | Set when the element has a label
18042
+ * `has-helper` | Set when the element has helper text or slot
18043
+ * `has-error-message` | Set when the element has an error message
18044
+ * `has-tooltip` | Set when the element has a slotted tooltip
18045
+ * `invalid` | Set when the element is invalid
18046
+ * `focused` | Set when the element is focused
18047
+ * `focus-ring` | Set when the element is keyboard focused
18048
+ * `readonly` | Set when the element is readonly
18049
+ * `opened` | Set when the overlay is opened
18050
+ * `week-numbers` | Set when week numbers are shown in the calendar
18114
18051
  *
18115
- * The following custom CSS properties are available for styling:
18052
+ * ### Internal components
18116
18053
  *
18117
- * Custom CSS property |
18118
- * :--------------------------------------------|
18119
- * |`--vaadin-dialog-background` |
18120
- * |`--vaadin-dialog-border-color` |
18121
- * |`--vaadin-dialog-border-radius` |
18122
- * |`--vaadin-dialog-border-width` |
18123
- * |`--vaadin-dialog-max-width` |
18124
- * |`--vaadin-dialog-min-width` |
18125
- * |`--vaadin-dialog-overflow-indicator-color` |
18126
- * |`--vaadin-dialog-overflow-indicator-height` |
18127
- * |`--vaadin-dialog-padding` |
18128
- * |`--vaadin-dialog-shadow` |
18129
- * |`--vaadin-dialog-text-color` |
18130
- * |`--vaadin-dialog-title-color` |
18131
- * |`--vaadin-dialog-title-font-size` |
18132
- * |`--vaadin-dialog-title-font-weight` |
18133
- * |`--vaadin-dialog-title-line-height` |
18134
- * |`--vaadin-overlay-backdrop-background` |
18054
+ * In addition to `<vaadin-date-picker>` itself, the following internal
18055
+ * components are themable:
18056
+ *
18057
+ * - `<vaadin-date-picker-overlay-content>`
18058
+ * - `<vaadin-date-picker-month-scroller>`
18059
+ * - `<vaadin-date-picker-year-scroller>`
18060
+ * - `<vaadin-date-picker-year>`
18061
+ * - `<vaadin-month-calendar>`
18062
+ *
18063
+ * In order to style the overlay content, use `<vaadin-date-picker-overlay-content>` shadow DOM parts:
18064
+ *
18065
+ * Part name | Description
18066
+ * ----------------------|--------------------
18067
+ * `years-toggle-button` | Fullscreen mode years scroller toggle
18068
+ * `toolbar` | Toolbar with slotted buttons
18069
+ *
18070
+ * The following state attributes are available on the `<vaadin-date-picker-overlay-content>` element:
18071
+ *
18072
+ * Attribute | Description
18073
+ * ----------------|-------------------------------------------------
18074
+ * `desktop` | Set when the overlay content is in desktop mode
18075
+ * `fullscreen` | Set when the overlay content is in fullscreen mode
18076
+ * `years-visible` | Set when the year scroller is visible in fullscreen mode
18077
+ *
18078
+ * In order to style the month calendar, use `<vaadin-month-calendar>` shadow DOM parts:
18079
+ *
18080
+ * Part name | Description
18081
+ * ----------------------|--------------------
18082
+ * `month-header` | Month title
18083
+ * `weekdays` | Weekday container
18084
+ * `weekday` | Weekday element
18085
+ * `week-numbers` | Week numbers container
18086
+ * `week-number` | Week number element
18087
+ * `date` | Date element
18088
+ * `disabled` | Disabled date element
18089
+ * `focused` | Focused date element
18090
+ * `selected` | Selected date element
18091
+ * `today` | Date element corresponding to the current day
18092
+ * `past` | Date element corresponding to the date in the past
18093
+ * `future` | Date element corresponding to the date in the future
18094
+ *
18095
+ * In order to style year scroller elements, use `<vaadin-date-picker-year>` shadow DOM parts:
18096
+ *
18097
+ * Part name | Description
18098
+ * ----------------------|--------------------
18099
+ * `year-number` | Year number
18100
+ * `year-separator` | Year separator
18135
18101
  *
18136
18102
  * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
18137
18103
  *
18138
- * ## Attributes & Properties
18104
+ * ### Change events
18139
18105
  *
18140
- * Component attributes and properties that can be applied to the element or by using JavaScript.
18106
+ * Depending on the nature of the value change that the user attempts to commit e.g. by pressing Enter,
18107
+ * the component can fire either a `change` event or an `unparsable-change` event:
18141
18108
  *
18142
- * - `has-title`/`undefined`: Set when the element has a title
18143
- * - `has-header`/`undefined`: Set when the element has header renderer
18144
- * - `has-footer`/`undefined`: Set when the element has footer renderer
18145
- * - `overflow`/`undefined`: Set to `top`, `bottom`, none or both
18146
- * - `width`: Set the width of the dialog.
18147
- * If a unitless number is provided, pixels are assumed.
18148
- * - `height`: Set the height of the dialog.
18149
- * If a unitless number is provided, pixels are assumed.
18150
- * - `draggable`: Set to true to enable repositioning the dialog by clicking and dragging.
18109
+ * Value change | Event
18110
+ * :------------------------|:------------------
18111
+ * empty => parsable | change
18112
+ * empty => unparsable | unparsable-change
18113
+ * parsable => empty | change
18114
+ * parsable => parsable | change
18115
+ * parsable => unparsable | change
18116
+ * unparsable => empty | unparsable-change
18117
+ * unparsable => parsable | change
18118
+ * unparsable => unparsable | unparsable-change
18151
18119
  *
18152
- * By default, only the overlay area can be used to drag the element. But,
18153
- * a child element can be marked as a draggable area by adding a
18154
- * "`draggable`" class to it, this will by default make all of its children draggable also.
18155
- * If you want a child element to be draggable
18156
- * but still have its children non-draggable (by default), mark it with
18157
- * "`draggable-leaf-only`" class name.
18158
- * - `_touchDevice`: undefined
18159
- * - `__dragHandleClassName`: undefined
18160
- * - `resizable`: Set to true to enable resizing the dialog by dragging the corners and edges.
18161
- * - `renderer`: Custom function for rendering the content of the dialog.
18162
- * Receives two arguments:
18120
+ * ## Attributes & Properties
18163
18121
  *
18164
- * - `root` The root container DOM element. Append your content to it.
18165
- * - `dialog` The reference to the `<vaadin-dialog>` element.
18166
- * - `headerTitle`: String used for rendering a dialog title.
18122
+ * Component attributes and properties that can be applied to the element or by using JavaScript.
18167
18123
  *
18168
- * If both `headerTitle` and `headerRenderer` are defined, the title
18169
- * and the elements created by the renderer will be placed next to
18170
- * each other, with the title coming first.
18124
+ * - `_positionTarget`: undefined
18125
+ * - `disabled`/`undefined`: Set when the element is disabled
18126
+ * - `has-value`/`undefined`: Set when the element has a value
18127
+ * - `has-label`/`undefined`: Set when the element has a label
18128
+ * - `has-helper`/`undefined`: Set when the element has helper text or slot
18129
+ * - `has-error-message`/`undefined`: Set when the element has an error message
18130
+ * - `has-tooltip`/`undefined`: Set when the element has a slotted tooltip
18131
+ * - `invalid`/`undefined`: Set when the element is invalid
18132
+ * - `focused`/`undefined`: Set when the element is focused
18133
+ * - `focus-ring`/`undefined`: Set when the element is keyboard focused
18134
+ * - `readonly`: Set when the element is readonly
18135
+ * - `opened`: Set when the overlay is opened
18136
+ * - `week-numbers`/`undefined`: Set when week numbers are shown in the calendar
18137
+ * - `<vaadin-date-picker>`/`undefined`: undefined
18138
+ * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
18139
+ * - `<vaadin-date-picker-month-scroller>`/`undefined`: undefined
18140
+ * - `<vaadin-date-picker-year-scroller>`/`undefined`: undefined
18141
+ * - `<vaadin-date-picker-year>`/`undefined`: undefined
18142
+ * - `<vaadin-month-calendar>`/`undefined`: undefined
18143
+ * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
18144
+ * - `years-toggle-button`/`undefined`: Fullscreen mode years scroller toggle
18145
+ * - `toolbar`/`undefined`: Toolbar with slotted buttons
18146
+ * - `_selectedDate`: The current selected date.
18147
+ * - `_focusedDate`: undefined
18148
+ * - `value`: Selected date.
18171
18149
  *
18172
- * When `headerTitle` is set, the attribute `has-title` is set on the dialog.
18173
- * - `headerRenderer`: Custom function for rendering the dialog header.
18174
- * Receives two arguments:
18150
+ * Supported date formats:
18151
+ * - ISO 8601 `"YYYY-MM-DD"` (default)
18152
+ * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
18153
+ * - `initialPosition`: Date which should be visible when there is no value selected.
18154
+ *
18155
+ * The same date formats as for the `value` property are supported.
18156
+ * - `autoOpenDisabled`: Set true to prevent the overlay from opening automatically.
18157
+ * - `showWeekNumbers`: Set true to display ISO-8601 week numbers in the calendar. Notice that
18158
+ * displaying week numbers is only supported when `i18n.firstDayOfWeek`
18159
+ * is 1 (Monday).
18160
+ * - `_fullscreen`: undefined
18161
+ * - `_fullscreenMediaQuery`: undefined
18162
+ * - `min`: The earliest date that can be selected. All earlier dates will be disabled.
18175
18163
  *
18176
- * - `root` The root container DOM element. Append your content to it.
18177
- * - `dialog` The reference to the `<vaadin-dialog>` element.
18164
+ * Supported date formats:
18165
+ * - ISO 8601 `"YYYY-MM-DD"` (default)
18166
+ * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
18167
+ * - `max`: The latest date that can be selected. All later dates will be disabled.
18178
18168
  *
18179
- * If both `headerTitle` and `headerRenderer` are defined, the title
18180
- * and the elements created by the renderer will be placed next to
18181
- * each other, with the title coming first.
18169
+ * Supported date formats:
18170
+ * - ISO 8601 `"YYYY-MM-DD"` (default)
18171
+ * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
18172
+ * - `isDateDisabled`: A function to be used to determine whether the user can select a given date.
18173
+ * Receives a `DatePickerDate` object of the date to be selected and should return a
18174
+ * boolean.
18175
+ * - `_minDate`: The earliest date that can be selected. All earlier dates will be disabled.
18176
+ * - `_maxDate`: The latest date that can be selected. All later dates will be disabled.
18177
+ * - `_noInput`: undefined
18178
+ * - `_ios`: undefined
18179
+ * - `_focusOverlayOnOpen`: undefined
18180
+ * - `_overlayContent`: undefined
18181
+ * - `__enteredDate`: undefined
18182
+ * - `i18n`: The object used to localize this component. To change the default
18183
+ * localization, replace this with an object that provides all properties, or
18184
+ * just the individual properties you want to change.
18182
18185
  *
18183
- * When `headerRenderer` is set, the attribute `has-header` is set on the dialog.
18184
- * - `footerRenderer`: Custom function for rendering the dialog footer.
18185
- * Receives two arguments:
18186
+ * Should be overridden by subclasses to provide a custom JSDoc with the
18187
+ * default I18N properties.
18188
+ * - `__effectiveI18n`: undefined
18189
+ * - `autofocus`: Specify that this control should have input focus when the page loads.
18190
+ * - `focusElement`: A reference to the focusable element controlled by the mixin.
18191
+ * It can be an input, textarea, button or any element with tabindex > -1.
18186
18192
  *
18187
- * - `root` The root container DOM element. Append your content to it.
18188
- * - `dialog` The reference to the `<vaadin-dialog>` element.
18193
+ * Any component implementing this mixin is expected to provide it
18194
+ * by using `this._setFocusElement(input)` Polymer API.
18189
18195
  *
18190
- * When `footerRenderer` is set, the attribute `has-footer` is set on the dialog.
18191
- * - `opened`: True if the dialog is visible and available for interaction.
18192
- * - `noCloseOnOutsideClick`: Set to true to disable closing dialog on outside click
18193
- * - `noCloseOnEsc`: Set to true to disable closing dialog on Escape press
18194
- * - `modeless`: Set to true to remove backdrop and allow click events on background elements.
18195
- * - `noFocusTrap`: Set to true to disable focus trapping.
18196
- * - `top`: Set the distance of the dialog from the top of the viewport.
18197
- * If a unitless number is provided, pixels are assumed.
18196
+ * Toggling `tabindex` attribute on the host element propagates its value to `focusElement`.
18197
+ * - `_lastTabIndex`: Override the property from `TabIndexMixin`
18198
+ * to ensure the `tabindex` attribute of the focus element
18199
+ * will be restored to `0` after re-enabling the element.
18200
+ * - `allowedCharPattern`: A pattern matched against individual characters the user inputs.
18198
18201
  *
18199
- * Note that the dialog uses an internal container that has some
18200
- * additional spacing, which can be overridden by the theme.
18201
- * - `left`: Set the distance of the dialog from the left of the viewport.
18202
- * If a unitless number is provided, pixels are assumed.
18202
+ * When set, the field will prevent:
18203
+ * - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
18204
+ * - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
18205
+ * - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
18203
18206
  *
18204
- * Note that the dialog uses an internal container that has some
18205
- * additional spacing, which can be overridden by the theme.
18206
- * - `overlayRole`: The `role` attribute value to be set on the dialog. Defaults to "dialog".
18207
- * - `keepInViewport`: Set to true to prevent the dialog from moving outside the viewport bounds.
18208
- * When enabled, all four edges of the dialog will remain visible, for example
18209
- * when dragging the dialog or when the viewport is resized. Note that the
18210
- * dialog will also adjust any programmatically configured size and position
18211
- * so that it stays within the viewport.
18207
+ * For example, to allow entering only numbers and minus signs, use:
18208
+ * `allowedCharPattern = "[\\d-]"`
18209
+ * - `autoselect`: If true, the input text gets fully selected when the field is focused using click or touch / tap.
18210
+ * - `name`: The name of this field.
18211
+ * - `placeholder`: A hint to the user of what can be entered in the field.
18212
+ * - `title`: The text usually displayed in a tooltip popup when the mouse is over the field.
18213
+ * - `ariaTarget`: A target element to which ARIA attributes are set.
18214
+ * - `errorMessage`: Error to show when the field is invalid.
18215
+ * - `helperText`: String used for the helper text.
18216
+ * - `accessibleName`: String used to label the component to screen reader users.
18217
+ * - `accessibleNameRef`: Id of the element used as label of the component to screen reader users.
18218
+ * - `clearButtonVisible`: Set to true to display the clear icon which clears the input.
18219
+ * This also enables clearing the input when pressing Esc key.
18212
18220
  * - `dir`: undefined
18221
+ * - `_inputElementValue`: undefined (property only)
18222
+ * - `_boundOnClick`: undefined (property only)
18223
+ * - `_boundOnScroll`: undefined (property only)
18224
+ * - `_boundOnBlur`: undefined (property only)
18225
+ * - `_boundOnFocus`: undefined (property only)
18226
+ * - `_boundOnPaste`: undefined (property only)
18227
+ * - `_boundOnDrop`: undefined (property only)
18228
+ * - `_boundOnBeforeInput`: undefined (property only)
18229
+ * - `_fieldAriaController`: undefined (property only)
18230
+ * - `_helperController`: undefined (property only)
18231
+ * - `_errorController`: undefined (property only)
18213
18232
  *
18214
18233
  * ## Events
18215
18234
  *
18216
18235
  * Events that will be emitted by the component.
18217
18236
  *
18218
- * - `resize-start`: Fired when the dialog resize is started.
18219
- * - `resize`: Fired when the dialog resize is finished.
18220
- * - `drag-start`: Fired when the dialog drag is started.
18221
- * - `dragged`: Fired when the dialog drag is finished.
18237
+ * - `change`: Fired when the user commits a value change.
18238
+ * - `unparsable-change`: Fired when the user commits an unparsable value change and there is no change event.
18239
+ * - `invalid-changed`: Fired when the `invalid` property changes.
18222
18240
  * - `opened-changed`: Fired when the `opened` property changes.
18223
- * - `closed`: Fired when the dialog is closed.
18241
+ * - `value-changed`: Fired when the `value` property changes.
18242
+ * - `validated`: Fired whenever the field is validated.
18224
18243
  * - `undefined`: undefined
18225
18244
  *
18226
18245
  * ## Methods
18227
18246
  *
18228
18247
  * Methods that can be called to access component functionality.
18229
18248
  *
18230
- * - `requestContentUpdate() => void`: Requests an update for the content of the dialog.
18231
- * While performing the update, it invokes the renderer passed in the `renderer` property,
18232
- * as well as `headerRender` and `footerRenderer` properties, if these are defined.
18249
+ * - `open() => void`: Opens the dropdown.
18250
+ * - `close() => void`: Closes the dropdown.
18251
+ * - `checkValidity() => boolean`: Returns true if the current input value satisfies all constraints (if any)
18233
18252
  *
18234
- * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
18253
+ * Override the `checkValidity` method for custom validations.
18235
18254
  * - `createProperty(name, options) => void`: undefined
18236
18255
  * - `getOrCreateMap(name) => void`: undefined
18237
18256
  * - `addCheckedInitializer(initializer) => void`: undefined
18238
18257
  * - `getPropertyDescriptor(name, key, options) => void`: undefined
18239
- *
18240
- * ## CSS Custom Properties
18241
- *
18242
- * CSS variables available for styling the component.
18243
- *
18244
- * - `--vaadin-dialog-background`: undefined (default: `undefined`)
18245
- * - `--vaadin-dialog-border-color`: undefined (default: `undefined`)
18246
- * - `--vaadin-dialog-border-radius`: undefined (default: `undefined`)
18247
- * - `--vaadin-dialog-border-width`: undefined (default: `undefined`)
18248
- * - `--vaadin-dialog-max-width`: undefined (default: `undefined`)
18249
- * - `--vaadin-dialog-min-width`: undefined (default: `undefined`)
18250
- * - `--vaadin-dialog-overflow-indicator-color`: undefined (default: `undefined`)
18251
- * - `--vaadin-dialog-overflow-indicator-height`: undefined (default: `undefined`)
18252
- * - `--vaadin-dialog-padding`: undefined (default: `undefined`)
18253
- * - `--vaadin-dialog-shadow`: undefined (default: `undefined`)
18254
- * - `--vaadin-dialog-text-color`: undefined (default: `undefined`)
18255
- * - `--vaadin-dialog-title-color`: undefined (default: `undefined`)
18256
- * - `--vaadin-dialog-title-font-size`: undefined (default: `undefined`)
18257
- * - `--vaadin-dialog-title-font-weight`: undefined (default: `undefined`)
18258
- * - `--vaadin-dialog-title-line-height`: undefined (default: `undefined`)
18259
- * - `--vaadin-overlay-backdrop-background`: See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation. (default: `undefined`)
18260
18258
  */
18261
- "vaadin-dialog": Partial<DialogProps & BaseProps<Dialog> & BaseEvents>;
18259
+ "vaadin-date-picker": Partial<
18260
+ DatePickerProps & BaseProps<DatePicker> & BaseEvents
18261
+ >;
18262
18262
 
18263
18263
  /**
18264
18264
  * `<vaadin-icon>` is a Web Component for displaying SVG icons.
@@ -26610,140 +26610,71 @@ export type CustomElementsSolidJs = {
26610
26610
  >;
26611
26611
 
26612
26612
  /**
26613
- * An element used internally by `<vaadin-date-picker>`. Not intended to be used separately.
26614
- *
26615
- * ## Attributes & Properties
26616
- *
26617
- * Component attributes and properties that can be applied to the element or by using JavaScript.
26618
- *
26619
- * - `year`: undefined
26620
- * - `selectedDate`: undefined
26621
- *
26622
- * ## Events
26623
- *
26624
- * Events that will be emitted by the component.
26625
- *
26626
- * - `undefined`: undefined
26627
- *
26628
- * ## Methods
26629
- *
26630
- * Methods that can be called to access component functionality.
26631
- *
26632
- * - `createProperty(name, options) => void`: undefined
26633
- * - `getOrCreateMap(name) => void`: undefined
26634
- * - `addCheckedInitializer(initializer) => void`: undefined
26635
- * - `getPropertyDescriptor(name, key, options) => void`: undefined
26636
- */
26637
- "vaadin-date-picker-year": Partial<
26638
- DatePickerYearProps &
26639
- DatePickerYearSolidJsProps &
26640
- BaseProps<DatePickerYear> &
26641
- BaseEvents
26642
- >;
26643
-
26644
- /**
26645
- * `<vaadin-date-picker>` is an input field that allows to enter a date by typing or by selecting from a calendar overlay.
26613
+ * `<vaadin-date-time-picker>` is a Web Component providing a date time selection field.
26646
26614
  *
26647
26615
  * ```html
26648
- * <vaadin-date-picker label="Birthday"></vaadin-date-picker>
26616
+ * <vaadin-date-time-picker value="2019-09-16T15:00"></vaadin-date-time-picker>
26649
26617
  * ```
26650
26618
  *
26651
26619
  * ```js
26652
- * datePicker.value = '2016-03-02';
26620
+ * dateTimePicker.value = '2019-09-16T15:00';
26653
26621
  * ```
26654
26622
  *
26655
26623
  * When the selected `value` is changed, a `value-changed` event is triggered.
26656
26624
  *
26657
26625
  * ### Styling
26658
26626
  *
26659
- * The following custom properties are available for styling:
26660
- *
26661
- * Custom property | Description | Default
26662
- * -------------------------------|----------------------------|---------
26663
- * `--vaadin-field-default-width` | Default width of the field | `12em`
26664
- *
26665
26627
  * The following shadow DOM parts are available for styling:
26666
26628
  *
26667
26629
  * Part name | Description
26668
26630
  * ---------------------|----------------
26669
- * `label` | The label element
26670
- * `input-field` | The element that wraps prefix, value and buttons
26671
- * `field-button` | Set on both clear and toggle buttons
26672
- * `clear-button` | The clear button
26673
- * `error-message` | The error message element
26674
- * `helper-text` | The helper text element wrapper
26631
+ * `label` | The slotted label element wrapper
26632
+ * `input-fields` | The date and time pickers wrapper
26633
+ * `helper-text` | The slotted helper text element wrapper
26634
+ * `error-message` | The slotted error message element wrapper
26675
26635
  * `required-indicator` | The `required` state indicator element
26676
- * `toggle-button` | The toggle button
26677
- * `backdrop` | Backdrop of the overlay
26678
- * `overlay` | The overlay container
26679
- * `content` | The overlay content
26680
26636
  *
26681
26637
  * The following state attributes are available for styling:
26682
26638
  *
26683
- * Attribute | Description
26684
- * ---------------------|---------------------------------
26685
- * `disabled` | Set when the element is disabled
26686
- * `has-value` | Set when the element has a value
26687
- * `has-label` | Set when the element has a label
26688
- * `has-helper` | Set when the element has helper text or slot
26689
- * `has-error-message` | Set when the element has an error message
26690
- * `has-tooltip` | Set when the element has a slotted tooltip
26691
- * `invalid` | Set when the element is invalid
26692
- * `focused` | Set when the element is focused
26693
- * `focus-ring` | Set when the element is keyboard focused
26694
- * `readonly` | Set when the element is readonly
26695
- * `opened` | Set when the overlay is opened
26696
- * `week-numbers` | Set when week numbers are shown in the calendar
26697
- *
26698
- * ### Internal components
26699
- *
26700
- * In addition to `<vaadin-date-picker>` itself, the following internal
26701
- * components are themable:
26702
- *
26703
- * - `<vaadin-date-picker-overlay-content>`
26704
- * - `<vaadin-date-picker-month-scroller>`
26705
- * - `<vaadin-date-picker-year-scroller>`
26706
- * - `<vaadin-date-picker-year>`
26707
- * - `<vaadin-month-calendar>`
26708
- *
26709
- * In order to style the overlay content, use `<vaadin-date-picker-overlay-content>` shadow DOM parts:
26710
- *
26711
- * Part name | Description
26712
- * ----------------------|--------------------
26713
- * `years-toggle-button` | Fullscreen mode years scroller toggle
26714
- * `toolbar` | Toolbar with slotted buttons
26715
- *
26716
- * The following state attributes are available on the `<vaadin-date-picker-overlay-content>` element:
26639
+ * Attribute | Description
26640
+ * --------------------|---------------------------------
26641
+ * `disabled` | Set when the element is disabled
26642
+ * `focused` | Set when the element is focused
26643
+ * `focus-ring` | Set when the element is keyboard focused
26644
+ * `readonly` | Set when the element is readonly
26645
+ * `invalid` | Set when the element is invalid
26646
+ * `has-label` | Set when the element has a label
26647
+ * `has-value` | Set when the element has a value
26648
+ * `has-helper` | Set when the element has helper text
26649
+ * `has-error-message` | Set when the element has an error message
26650
+ * `has-tooltip` | Set when the element has a slotted tooltip
26717
26651
  *
26718
- * Attribute | Description
26719
- * ----------------|-------------------------------------------------
26720
- * `desktop` | Set when the overlay content is in desktop mode
26721
- * `fullscreen` | Set when the overlay content is in fullscreen mode
26722
- * `years-visible` | Set when the year scroller is visible in fullscreen mode
26652
+ * The following custom CSS properties are available for styling:
26723
26653
  *
26724
- * In order to style the month calendar, use `<vaadin-month-calendar>` shadow DOM parts:
26654
+ * Custom CSS property |
26655
+ * :--------------------------------------------------|
26656
+ * | `--vaadin-date-time-picker-gap` |
26657
+ * | `--vaadin-input-field-error-color` |
26658
+ * | `--vaadin-input-field-error-font-size` |
26659
+ * | `--vaadin-input-field-error-font-weight` |
26660
+ * | `--vaadin-input-field-error-line-height` |
26661
+ * | `--vaadin-input-field-label-color` |
26662
+ * | `--vaadin-input-field-label-font-size` |
26663
+ * | `--vaadin-input-field-label-font-weight` |
26664
+ * | `--vaadin-input-field-label-line-height` |
26665
+ * | `--vaadin-input-field-helper-color` |
26666
+ * | `--vaadin-input-field-helper-font-size` |
26667
+ * | `--vaadin-input-field-helper-font-weight` |
26668
+ * | `--vaadin-input-field-helper-line-height` |
26669
+ * | `--vaadin-input-field-required-indicator-color` |
26670
+ * | `--vaadin-input-field-required-indicator` |
26725
26671
  *
26726
- * Part name | Description
26727
- * ----------------------|--------------------
26728
- * `month-header` | Month title
26729
- * `weekdays` | Weekday container
26730
- * `weekday` | Weekday element
26731
- * `week-numbers` | Week numbers container
26732
- * `week-number` | Week number element
26733
- * `date` | Date element
26734
- * `disabled` | Disabled date element
26735
- * `focused` | Focused date element
26736
- * `selected` | Selected date element
26737
- * `today` | Date element corresponding to the current day
26738
- * `past` | Date element corresponding to the date in the past
26739
- * `future` | Date element corresponding to the date in the future
26672
+ * ### Internal components
26740
26673
  *
26741
- * In order to style year scroller elements, use `<vaadin-date-picker-year>` shadow DOM parts:
26674
+ * The following components are created by `<vaadin-date-time-picker>` and placed in light DOM:
26742
26675
  *
26743
- * Part name | Description
26744
- * ----------------------|--------------------
26745
- * `year-number` | Year number
26746
- * `year-separator` | Year separator
26676
+ * - [`<vaadin-date-picker>`](#/elements/vaadin-date-picker).
26677
+ * - [`<vaadin-time-picker>`](#/elements/vaadin-time-picker).
26747
26678
  *
26748
26679
  * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
26749
26680
  *
@@ -26762,69 +26693,75 @@ export type CustomElementsSolidJs = {
26762
26693
  * unparsable => empty | unparsable-change
26763
26694
  * unparsable => parsable | change
26764
26695
  * unparsable => unparsable | unparsable-change
26696
+ * incomplete => empty | unparsable-change
26697
+ * incomplete => parsable | change
26698
+ * incomplete => unparsable | unparsable-change
26699
+ * empty => incomplete | unparsable-change
26700
+ * parsable => incomplete | change
26701
+ * unparsable => incomplete | unparsable-change
26765
26702
  *
26766
26703
  * ## Attributes & Properties
26767
26704
  *
26768
26705
  * Component attributes and properties that can be applied to the element or by using JavaScript.
26769
26706
  *
26770
- * - `_positionTarget`: undefined
26771
- * - `disabled`/`undefined`: Set when the element is disabled
26772
- * - `has-value`/`undefined`: Set when the element has a value
26773
- * - `has-label`/`undefined`: Set when the element has a label
26774
- * - `has-helper`/`undefined`: Set when the element has helper text or slot
26775
- * - `has-error-message`/`undefined`: Set when the element has an error message
26776
- * - `has-tooltip`/`undefined`: Set when the element has a slotted tooltip
26777
- * - `invalid`/`undefined`: Set when the element is invalid
26707
+ * - `disabled`: Set when the element is disabled
26778
26708
  * - `focused`/`undefined`: Set when the element is focused
26779
26709
  * - `focus-ring`/`undefined`: Set when the element is keyboard focused
26780
26710
  * - `readonly`: Set when the element is readonly
26781
- * - `opened`: Set when the overlay is opened
26782
- * - `week-numbers`/`undefined`: Set when week numbers are shown in the calendar
26783
- * - `<vaadin-date-picker>`/`undefined`: undefined
26784
- * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
26785
- * - `<vaadin-date-picker-month-scroller>`/`undefined`: undefined
26786
- * - `<vaadin-date-picker-year-scroller>`/`undefined`: undefined
26787
- * - `<vaadin-date-picker-year>`/`undefined`: undefined
26788
- * - `<vaadin-month-calendar>`/`undefined`: undefined
26789
- * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
26790
- * - `years-toggle-button`/`undefined`: Fullscreen mode years scroller toggle
26791
- * - `toolbar`/`undefined`: Toolbar with slotted buttons
26792
- * - `_selectedDate`: The current selected date.
26793
- * - `_focusedDate`: undefined
26794
- * - `value`: Selected date.
26711
+ * - `invalid`/`undefined`: Set when the element is invalid
26712
+ * - `has-label`/`undefined`: Set when the element has a label
26713
+ * - `has-value`/`undefined`: Set when the element has a value
26714
+ * - `has-helper`/`undefined`: Set when the element has helper text
26715
+ * - `has-error-message`/`undefined`: Set when the element has an error message
26716
+ * - `has-tooltip`/`undefined`: Set when the element has a slotted tooltip
26717
+ * - `name`: The name of the control, which is submitted with the form data.
26718
+ * - `value`: The value for this element.
26795
26719
  *
26796
- * Supported date formats:
26797
- * - ISO 8601 `"YYYY-MM-DD"` (default)
26798
- * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
26799
- * - `initialPosition`: Date which should be visible when there is no value selected.
26720
+ * Supported date time format is based on ISO 8601 (without a time zone designator):
26721
+ * - Minute precision `"YYYY-MM-DDThh:mm"` (default)
26722
+ * - Second precision `"YYYY-MM-DDThh:mm:ss"`
26723
+ * - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"`
26724
+ * - `min`: The earliest allowed value (date and time) that can be selected. All earlier values will be disabled.
26800
26725
  *
26801
- * The same date formats as for the `value` property are supported.
26802
- * - `autoOpenDisabled`: Set true to prevent the overlay from opening automatically.
26726
+ * Supported date time format is based on ISO 8601 (without a time zone designator):
26727
+ * - Minute precision `"YYYY-MM-DDThh:mm"`
26728
+ * - Second precision `"YYYY-MM-DDThh:mm:ss"`
26729
+ * - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"`
26730
+ * - `max`: The latest value (date and time) that can be selected. All later values will be disabled.
26731
+ *
26732
+ * Supported date time format is based on ISO 8601 (without a time zone designator):
26733
+ * - Minute precision `"YYYY-MM-DDThh:mm"`
26734
+ * - Second precision `"YYYY-MM-DDThh:mm:ss"`
26735
+ * - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"`
26736
+ * - `__minDateTime`: The earliest value that can be selected. All earlier values will be disabled.
26737
+ * - `__maxDateTime`: The latest value that can be selected. All later values will be disabled.
26738
+ * - `datePlaceholder`: A placeholder string for the date field.
26739
+ * - `timePlaceholder`: A placeholder string for the time field.
26740
+ * - `step`: Defines the time interval (in seconds) between the items displayed
26741
+ * in the time selection box. The default is 1 hour (i.e. `3600`).
26742
+ *
26743
+ * It also configures the precision of the time part of the value string. By default
26744
+ * the component formats time values as `hh:mm` but setting a step value
26745
+ * lower than one minute or one second, format resolution changes to
26746
+ * `hh:mm:ss` and `hh:mm:ss.fff` respectively.
26747
+ *
26748
+ * Unit must be set in seconds, and for correctly configuring intervals
26749
+ * in the dropdown, it need to evenly divide a day.
26750
+ *
26751
+ * Note: it is possible to define step that is dividing an hour in inexact
26752
+ * fragments (i.e. 5760 seconds which equals 1 hour 36 minutes), but it is
26753
+ * not recommended to use it for better UX.
26754
+ * - `initialPosition`: Date which should be visible in the date picker overlay when there is no value selected.
26755
+ *
26756
+ * The same date formats as for the `value` property are supported but without the time part.
26803
26757
  * - `showWeekNumbers`: Set true to display ISO-8601 week numbers in the calendar. Notice that
26804
26758
  * displaying week numbers is only supported when `i18n.firstDayOfWeek`
26805
26759
  * is 1 (Monday).
26806
- * - `_fullscreen`: undefined
26807
- * - `_fullscreenMediaQuery`: undefined
26808
- * - `min`: The earliest date that can be selected. All earlier dates will be disabled.
26809
- *
26810
- * Supported date formats:
26811
- * - ISO 8601 `"YYYY-MM-DD"` (default)
26812
- * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
26813
- * - `max`: The latest date that can be selected. All later dates will be disabled.
26814
- *
26815
- * Supported date formats:
26816
- * - ISO 8601 `"YYYY-MM-DD"` (default)
26817
- * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
26818
- * - `isDateDisabled`: A function to be used to determine whether the user can select a given date.
26819
- * Receives a `DatePickerDate` object of the date to be selected and should return a
26820
- * boolean.
26821
- * - `_minDate`: The earliest date that can be selected. All earlier dates will be disabled.
26822
- * - `_maxDate`: The latest date that can be selected. All later dates will be disabled.
26823
- * - `_noInput`: undefined
26824
- * - `_ios`: undefined
26825
- * - `_focusOverlayOnOpen`: undefined
26826
- * - `_overlayContent`: undefined
26827
- * - `__enteredDate`: undefined
26760
+ * - `autoOpenDisabled`: Set to true to prevent the overlays from opening automatically.
26761
+ * - `autofocus`: Specify that this control should have input focus when the page loads.
26762
+ * - `__selectedDateTime`: The current selected date time.
26763
+ * - `__datePicker`: The current slotted date picker.
26764
+ * - `__timePicker`: The current slotted time picker.
26828
26765
  * - `i18n`: The object used to localize this component. To change the default
26829
26766
  * localization, replace this with an object that provides all properties, or
26830
26767
  * just the individual properties you want to change.
@@ -26832,46 +26769,15 @@ export type CustomElementsSolidJs = {
26832
26769
  * Should be overridden by subclasses to provide a custom JSDoc with the
26833
26770
  * default I18N properties.
26834
26771
  * - `__effectiveI18n`: undefined
26835
- * - `autofocus`: Specify that this control should have input focus when the page loads.
26836
- * - `focusElement`: A reference to the focusable element controlled by the mixin.
26837
- * It can be an input, textarea, button or any element with tabindex > -1.
26838
- *
26839
- * Any component implementing this mixin is expected to provide it
26840
- * by using `this._setFocusElement(input)` Polymer API.
26841
- *
26842
- * Toggling `tabindex` attribute on the host element propagates its value to `focusElement`.
26843
- * - `_lastTabIndex`: Override the property from `TabIndexMixin`
26844
- * to ensure the `tabindex` attribute of the focus element
26845
- * will be restored to `0` after re-enabling the element.
26846
- * - `allowedCharPattern`: A pattern matched against individual characters the user inputs.
26847
- *
26848
- * When set, the field will prevent:
26849
- * - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
26850
- * - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
26851
- * - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
26852
- *
26853
- * For example, to allow entering only numbers and minus signs, use:
26854
- * `allowedCharPattern = "[\\d-]"`
26855
- * - `autoselect`: If true, the input text gets fully selected when the field is focused using click or touch / tap.
26856
- * - `name`: The name of this field.
26857
- * - `placeholder`: A hint to the user of what can be entered in the field.
26858
- * - `title`: The text usually displayed in a tooltip popup when the mouse is over the field.
26859
26772
  * - `ariaTarget`: A target element to which ARIA attributes are set.
26860
26773
  * - `errorMessage`: Error to show when the field is invalid.
26861
26774
  * - `helperText`: String used for the helper text.
26862
26775
  * - `accessibleName`: String used to label the component to screen reader users.
26863
26776
  * - `accessibleNameRef`: Id of the element used as label of the component to screen reader users.
26864
- * - `clearButtonVisible`: Set to true to display the clear icon which clears the input.
26865
- * This also enables clearing the input when pressing Esc key.
26866
26777
  * - `dir`: undefined
26867
- * - `_inputElementValue`: undefined (property only)
26868
- * - `_boundOnClick`: undefined (property only)
26869
- * - `_boundOnScroll`: undefined (property only)
26870
- * - `_boundOnBlur`: undefined (property only)
26871
- * - `_boundOnFocus`: undefined (property only)
26872
- * - `_boundOnPaste`: undefined (property only)
26873
- * - `_boundOnDrop`: undefined (property only)
26874
- * - `_boundOnBeforeInput`: undefined (property only)
26778
+ * - `__defaultDateMinMaxValue`: undefined (property only)
26779
+ * - `__defaultTimeMinValue`: undefined (property only)
26780
+ * - `__defaultTimeMaxValue`: undefined (property only)
26875
26781
  * - `_fieldAriaController`: undefined (property only)
26876
26782
  * - `_helperController`: undefined (property only)
26877
26783
  * - `_errorController`: undefined (property only)
@@ -26880,226 +26786,296 @@ export type CustomElementsSolidJs = {
26880
26786
  *
26881
26787
  * Events that will be emitted by the component.
26882
26788
  *
26883
- * - `change`: Fired when the user commits a value change.
26884
- * - `unparsable-change`: Fired when the user commits an unparsable value change and there is no change event.
26885
- * - `invalid-changed`: Fired when the `invalid` property changes.
26886
- * - `opened-changed`: Fired when the `opened` property changes.
26887
- * - `value-changed`: Fired when the `value` property changes.
26888
- * - `validated`: Fired whenever the field is validated.
26789
+ * - `change`: Fired when the user commits a value change.
26790
+ * - `unparsable-change`: Fired when the user commits an unparsable or incomplete value change and there is no change event.
26791
+ * - `invalid-changed`: Fired when the `invalid` property changes.
26792
+ * - `value-changed`: Fired when the `value` property changes.
26793
+ * - `validated`: Fired whenever the field is validated.
26794
+ * - `undefined`: undefined
26795
+ *
26796
+ * ## Methods
26797
+ *
26798
+ * Methods that can be called to access component functionality.
26799
+ *
26800
+ * - `checkValidity() => boolean`: Returns true if the current input value satisfies all constraints (if any)
26801
+ *
26802
+ * You can override the `checkValidity` method for custom validations.
26803
+ * - `createProperty(name, options) => void`: undefined
26804
+ * - `getOrCreateMap(name) => void`: undefined
26805
+ * - `addCheckedInitializer(initializer) => void`: undefined
26806
+ * - `getPropertyDescriptor(name, key, options) => void`: undefined
26807
+ *
26808
+ * ## CSS Custom Properties
26809
+ *
26810
+ * CSS variables available for styling the component.
26811
+ *
26812
+ * - `--vaadin-date-time-picker-gap`: undefined (default: `undefined`)
26813
+ * - `--vaadin-input-field-error-color`: undefined (default: `undefined`)
26814
+ * - `--vaadin-input-field-error-font-size`: undefined (default: `undefined`)
26815
+ * - `--vaadin-input-field-error-font-weight`: undefined (default: `undefined`)
26816
+ * - `--vaadin-input-field-error-line-height`: undefined (default: `undefined`)
26817
+ * - `--vaadin-input-field-label-color`: undefined (default: `undefined`)
26818
+ * - `--vaadin-input-field-label-font-size`: undefined (default: `undefined`)
26819
+ * - `--vaadin-input-field-label-font-weight`: undefined (default: `undefined`)
26820
+ * - `--vaadin-input-field-label-line-height`: undefined (default: `undefined`)
26821
+ * - `--vaadin-input-field-helper-color`: undefined (default: `undefined`)
26822
+ * - `--vaadin-input-field-helper-font-size`: undefined (default: `undefined`)
26823
+ * - `--vaadin-input-field-helper-font-weight`: undefined (default: `undefined`)
26824
+ * - `--vaadin-input-field-helper-line-height`: undefined (default: `undefined`)
26825
+ * - `--vaadin-input-field-required-indicator-color`: undefined (default: `undefined`)
26826
+ * - `--vaadin-input-field-required-indicator`: ### Internal components (default: `undefined`)
26827
+ * - `<vaadin-date-time-picker>`: undefined (default: `undefined`)
26828
+ * - `<vaadin-date-picker>`: undefined (default: `undefined`)
26829
+ * - `<vaadin-time-picker>`: undefined (default: `undefined`)
26830
+ * - `change`: undefined (default: `undefined`)
26831
+ * - `unparsable-change`: undefined (default: `undefined`)
26832
+ */
26833
+ "vaadin-date-time-picker": Partial<
26834
+ DateTimePickerProps &
26835
+ DateTimePickerSolidJsProps &
26836
+ BaseProps<DateTimePicker> &
26837
+ BaseEvents
26838
+ >;
26839
+
26840
+ /**
26841
+ * An element used internally by `<vaadin-dialog>`. Not intended to be used separately.
26842
+ *
26843
+ * ## Attributes & Properties
26844
+ *
26845
+ * Component attributes and properties that can be applied to the element or by using JavaScript.
26846
+ *
26847
+ * - `headerTitle`: String used for rendering a dialog title.
26848
+ * - `headerRenderer`: Custom function for rendering the dialog header.
26849
+ * - `footerRenderer`: Custom function for rendering the dialog footer.
26850
+ * - `keepInViewport`: Whether to keep the overlay within the viewport.
26851
+ * - `opened`: When true, the overlay is visible and attached to body.
26852
+ * - `owner`: Owner element passed with renderer function
26853
+ * - `model`: Object with properties that is passed to `renderer` function
26854
+ * - `renderer`: Custom function for rendering the content of the overlay.
26855
+ * Receives three arguments:
26856
+ *
26857
+ * - `root` The root container DOM element. Append your content to it.
26858
+ * - `owner` The host element of the renderer function.
26859
+ * - `model` The object with the properties related with rendering.
26860
+ * - `modeless`: When true the overlay won't disable the main content, showing
26861
+ * it doesn't change the functionality of the user interface.
26862
+ * - `hidden`: When set to true, the overlay is hidden. This also closes the overlay
26863
+ * immediately in case there is a closing animation in progress.
26864
+ * - `withBackdrop`: When true the overlay has backdrop on top of content when opened.
26865
+ * - `focusTrap`: When true, opening the overlay moves focus to the first focusable child,
26866
+ * or to the overlay part with tabindex if there are no focusable children.
26867
+ * - `restoreFocusOnClose`: Set to true to enable restoring of focus when overlay is closed.
26868
+ * - `restoreFocusNode`: Set to specify the element which should be focused on overlay close,
26869
+ * if `restoreFocusOnClose` is set to true.
26870
+ * - `dir`: undefined
26871
+ * - `_boundMouseDownListener`: undefined (property only)
26872
+ * - `_boundMouseUpListener`: undefined (property only)
26873
+ * - `_boundOutsideClickListener`: undefined (property only)
26874
+ * - `_boundKeydownListener`: undefined (property only)
26875
+ * - `__focusTrapController`: undefined (property only)
26876
+ * - `__focusRestorationController`: undefined (property only)
26877
+ *
26878
+ * ## Events
26879
+ *
26880
+ * Events that will be emitted by the component.
26881
+ *
26882
+ * - `vaadin-overlay-closed`: undefined
26883
+ * - `vaadin-overlay-closing`: undefined
26889
26884
  * - `undefined`: undefined
26890
26885
  *
26891
26886
  * ## Methods
26892
26887
  *
26893
26888
  * Methods that can be called to access component functionality.
26894
26889
  *
26895
- * - `open() => void`: Opens the dropdown.
26896
- * - `close() => void`: Closes the dropdown.
26897
- * - `checkValidity() => boolean`: Returns true if the current input value satisfies all constraints (if any)
26890
+ * - `requestContentUpdate() => void`: Requests an update for the content of the overlay.
26891
+ * While performing the update, it invokes the renderer passed in the `renderer` property.
26898
26892
  *
26899
- * Override the `checkValidity` method for custom validations.
26893
+ * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
26894
+ * - `getBounds() => !DialogOverlayBounds`: Retrieves the coordinates of the overlay.
26895
+ * - `setBounds(bounds, absolute = true) => void`: Override method from OverlayMixin to adjust the position of the overlay if `keepInViewport` is true.
26896
+ * - `close(sourceEvent: Event=) => void`: undefined
26900
26897
  * - `createProperty(name, options) => void`: undefined
26901
26898
  * - `getOrCreateMap(name) => void`: undefined
26902
26899
  * - `addCheckedInitializer(initializer) => void`: undefined
26903
26900
  * - `getPropertyDescriptor(name, key, options) => void`: undefined
26904
26901
  */
26905
- "vaadin-date-picker": Partial<
26906
- DatePickerProps &
26907
- DatePickerSolidJsProps &
26908
- BaseProps<DatePicker> &
26902
+ "vaadin-dialog-overlay": Partial<
26903
+ DialogOverlayProps &
26904
+ DialogOverlaySolidJsProps &
26905
+ BaseProps<DialogOverlay> &
26909
26906
  BaseEvents
26910
26907
  >;
26911
26908
 
26912
26909
  /**
26913
- * `<vaadin-date-time-picker>` is a Web Component providing a date time selection field.
26910
+ * `<vaadin-dialog>` is a Web Component for creating customized modal dialogs.
26911
+ *
26912
+ * ### Rendering
26913
+ *
26914
+ * The content of the dialog can be populated by using the renderer callback function.
26915
+ *
26916
+ * The renderer function provides `root`, `dialog` arguments.
26917
+ * Generate DOM content, append it to the `root` element and control the state
26918
+ * of the host element by accessing `dialog`. Before generating new content,
26919
+ * users are able to check if there is already content in `root` for reusing it.
26914
26920
  *
26915
26921
  * ```html
26916
- * <vaadin-date-time-picker value="2019-09-16T15:00"></vaadin-date-time-picker>
26922
+ * <vaadin-dialog id="dialog"></vaadin-dialog>
26917
26923
  * ```
26918
- *
26919
26924
  * ```js
26920
- * dateTimePicker.value = '2019-09-16T15:00';
26925
+ * const dialog = document.querySelector('#dialog');
26926
+ * dialog.renderer = function(root, dialog) {
26927
+ * root.textContent = "Sample dialog";
26928
+ * };
26921
26929
  * ```
26922
26930
  *
26923
- * When the selected `value` is changed, a `value-changed` event is triggered.
26931
+ * Renderer is called on the opening of the dialog.
26932
+ * DOM generated during the renderer call can be reused
26933
+ * in the next renderer call and will be provided with the `root` argument.
26934
+ * On first call it will be empty.
26924
26935
  *
26925
26936
  * ### Styling
26926
26937
  *
26927
26938
  * The following shadow DOM parts are available for styling:
26928
26939
  *
26929
- * Part name | Description
26930
- * ---------------------|----------------
26931
- * `label` | The slotted label element wrapper
26932
- * `input-fields` | The date and time pickers wrapper
26933
- * `helper-text` | The slotted helper text element wrapper
26934
- * `error-message` | The slotted error message element wrapper
26935
- * `required-indicator` | The `required` state indicator element
26940
+ * Part name | Description
26941
+ * -----------------|-------------------------------------------
26942
+ * `backdrop` | Backdrop of the overlay
26943
+ * `overlay` | The overlay container
26944
+ * `content` | The overlay content
26945
+ * `header` | Element wrapping title and header content
26946
+ * `header-content` | Element wrapping the header content slot
26947
+ * `title` | Element wrapping the title slot
26948
+ * `footer` | Element wrapping the footer slot
26936
26949
  *
26937
26950
  * The following state attributes are available for styling:
26938
26951
  *
26939
- * Attribute | Description
26940
- * --------------------|---------------------------------
26941
- * `disabled` | Set when the element is disabled
26942
- * `focused` | Set when the element is focused
26943
- * `focus-ring` | Set when the element is keyboard focused
26944
- * `readonly` | Set when the element is readonly
26945
- * `invalid` | Set when the element is invalid
26946
- * `has-label` | Set when the element has a label
26947
- * `has-value` | Set when the element has a value
26948
- * `has-helper` | Set when the element has helper text
26949
- * `has-error-message` | Set when the element has an error message
26950
- * `has-tooltip` | Set when the element has a slotted tooltip
26952
+ * Attribute | Description
26953
+ * -----------------|--------------------------------------------
26954
+ * `has-title` | Set when the element has a title
26955
+ * `has-header` | Set when the element has header renderer
26956
+ * `has-footer` | Set when the element has footer renderer
26957
+ * `overflow` | Set to `top`, `bottom`, none or both
26951
26958
  *
26952
26959
  * The following custom CSS properties are available for styling:
26953
26960
  *
26954
- * Custom CSS property |
26955
- * :--------------------------------------------------|
26956
- * | `--vaadin-date-time-picker-gap` |
26957
- * | `--vaadin-input-field-error-color` |
26958
- * | `--vaadin-input-field-error-font-size` |
26959
- * | `--vaadin-input-field-error-font-weight` |
26960
- * | `--vaadin-input-field-error-line-height` |
26961
- * | `--vaadin-input-field-label-color` |
26962
- * | `--vaadin-input-field-label-font-size` |
26963
- * | `--vaadin-input-field-label-font-weight` |
26964
- * | `--vaadin-input-field-label-line-height` |
26965
- * | `--vaadin-input-field-helper-color` |
26966
- * | `--vaadin-input-field-helper-font-size` |
26967
- * | `--vaadin-input-field-helper-font-weight` |
26968
- * | `--vaadin-input-field-helper-line-height` |
26969
- * | `--vaadin-input-field-required-indicator-color` |
26970
- * | `--vaadin-input-field-required-indicator` |
26971
- *
26972
- * ### Internal components
26973
- *
26974
- * The following components are created by `<vaadin-date-time-picker>` and placed in light DOM:
26975
- *
26976
- * - [`<vaadin-date-picker>`](#/elements/vaadin-date-picker).
26977
- * - [`<vaadin-time-picker>`](#/elements/vaadin-time-picker).
26961
+ * Custom CSS property |
26962
+ * :--------------------------------------------|
26963
+ * |`--vaadin-dialog-background` |
26964
+ * |`--vaadin-dialog-border-color` |
26965
+ * |`--vaadin-dialog-border-radius` |
26966
+ * |`--vaadin-dialog-border-width` |
26967
+ * |`--vaadin-dialog-max-width` |
26968
+ * |`--vaadin-dialog-min-width` |
26969
+ * |`--vaadin-dialog-overflow-indicator-color` |
26970
+ * |`--vaadin-dialog-overflow-indicator-height` |
26971
+ * |`--vaadin-dialog-padding` |
26972
+ * |`--vaadin-dialog-shadow` |
26973
+ * |`--vaadin-dialog-text-color` |
26974
+ * |`--vaadin-dialog-title-color` |
26975
+ * |`--vaadin-dialog-title-font-size` |
26976
+ * |`--vaadin-dialog-title-font-weight` |
26977
+ * |`--vaadin-dialog-title-line-height` |
26978
+ * |`--vaadin-overlay-backdrop-background` |
26978
26979
  *
26979
26980
  * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
26980
26981
  *
26981
- * ### Change events
26982
- *
26983
- * Depending on the nature of the value change that the user attempts to commit e.g. by pressing Enter,
26984
- * the component can fire either a `change` event or an `unparsable-change` event:
26985
- *
26986
- * Value change | Event
26987
- * :------------------------|:------------------
26988
- * empty => parsable | change
26989
- * empty => unparsable | unparsable-change
26990
- * parsable => empty | change
26991
- * parsable => parsable | change
26992
- * parsable => unparsable | change
26993
- * unparsable => empty | unparsable-change
26994
- * unparsable => parsable | change
26995
- * unparsable => unparsable | unparsable-change
26996
- * incomplete => empty | unparsable-change
26997
- * incomplete => parsable | change
26998
- * incomplete => unparsable | unparsable-change
26999
- * empty => incomplete | unparsable-change
27000
- * parsable => incomplete | change
27001
- * unparsable => incomplete | unparsable-change
27002
- *
27003
26982
  * ## Attributes & Properties
27004
26983
  *
27005
26984
  * Component attributes and properties that can be applied to the element or by using JavaScript.
27006
26985
  *
27007
- * - `disabled`: Set when the element is disabled
27008
- * - `focused`/`undefined`: Set when the element is focused
27009
- * - `focus-ring`/`undefined`: Set when the element is keyboard focused
27010
- * - `readonly`: Set when the element is readonly
27011
- * - `invalid`/`undefined`: Set when the element is invalid
27012
- * - `has-label`/`undefined`: Set when the element has a label
27013
- * - `has-value`/`undefined`: Set when the element has a value
27014
- * - `has-helper`/`undefined`: Set when the element has helper text
27015
- * - `has-error-message`/`undefined`: Set when the element has an error message
27016
- * - `has-tooltip`/`undefined`: Set when the element has a slotted tooltip
27017
- * - `name`: The name of the control, which is submitted with the form data.
27018
- * - `value`: The value for this element.
26986
+ * - `has-title`/`undefined`: Set when the element has a title
26987
+ * - `has-header`/`undefined`: Set when the element has header renderer
26988
+ * - `has-footer`/`undefined`: Set when the element has footer renderer
26989
+ * - `overflow`/`undefined`: Set to `top`, `bottom`, none or both
26990
+ * - `width`: Set the width of the dialog.
26991
+ * If a unitless number is provided, pixels are assumed.
26992
+ * - `height`: Set the height of the dialog.
26993
+ * If a unitless number is provided, pixels are assumed.
26994
+ * - `draggable`: Set to true to enable repositioning the dialog by clicking and dragging.
27019
26995
  *
27020
- * Supported date time format is based on ISO 8601 (without a time zone designator):
27021
- * - Minute precision `"YYYY-MM-DDThh:mm"` (default)
27022
- * - Second precision `"YYYY-MM-DDThh:mm:ss"`
27023
- * - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"`
27024
- * - `min`: The earliest allowed value (date and time) that can be selected. All earlier values will be disabled.
26996
+ * By default, only the overlay area can be used to drag the element. But,
26997
+ * a child element can be marked as a draggable area by adding a
26998
+ * "`draggable`" class to it, this will by default make all of its children draggable also.
26999
+ * If you want a child element to be draggable
27000
+ * but still have its children non-draggable (by default), mark it with
27001
+ * "`draggable-leaf-only`" class name.
27002
+ * - `_touchDevice`: undefined
27003
+ * - `__dragHandleClassName`: undefined
27004
+ * - `resizable`: Set to true to enable resizing the dialog by dragging the corners and edges.
27005
+ * - `renderer`: Custom function for rendering the content of the dialog.
27006
+ * Receives two arguments:
27025
27007
  *
27026
- * Supported date time format is based on ISO 8601 (without a time zone designator):
27027
- * - Minute precision `"YYYY-MM-DDThh:mm"`
27028
- * - Second precision `"YYYY-MM-DDThh:mm:ss"`
27029
- * - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"`
27030
- * - `max`: The latest value (date and time) that can be selected. All later values will be disabled.
27008
+ * - `root` The root container DOM element. Append your content to it.
27009
+ * - `dialog` The reference to the `<vaadin-dialog>` element.
27010
+ * - `headerTitle`: String used for rendering a dialog title.
27031
27011
  *
27032
- * Supported date time format is based on ISO 8601 (without a time zone designator):
27033
- * - Minute precision `"YYYY-MM-DDThh:mm"`
27034
- * - Second precision `"YYYY-MM-DDThh:mm:ss"`
27035
- * - Millisecond precision `"YYYY-MM-DDThh:mm:ss.fff"`
27036
- * - `__minDateTime`: The earliest value that can be selected. All earlier values will be disabled.
27037
- * - `__maxDateTime`: The latest value that can be selected. All later values will be disabled.
27038
- * - `datePlaceholder`: A placeholder string for the date field.
27039
- * - `timePlaceholder`: A placeholder string for the time field.
27040
- * - `step`: Defines the time interval (in seconds) between the items displayed
27041
- * in the time selection box. The default is 1 hour (i.e. `3600`).
27012
+ * If both `headerTitle` and `headerRenderer` are defined, the title
27013
+ * and the elements created by the renderer will be placed next to
27014
+ * each other, with the title coming first.
27042
27015
  *
27043
- * It also configures the precision of the time part of the value string. By default
27044
- * the component formats time values as `hh:mm` but setting a step value
27045
- * lower than one minute or one second, format resolution changes to
27046
- * `hh:mm:ss` and `hh:mm:ss.fff` respectively.
27016
+ * When `headerTitle` is set, the attribute `has-title` is set on the dialog.
27017
+ * - `headerRenderer`: Custom function for rendering the dialog header.
27018
+ * Receives two arguments:
27047
27019
  *
27048
- * Unit must be set in seconds, and for correctly configuring intervals
27049
- * in the dropdown, it need to evenly divide a day.
27020
+ * - `root` The root container DOM element. Append your content to it.
27021
+ * - `dialog` The reference to the `<vaadin-dialog>` element.
27050
27022
  *
27051
- * Note: it is possible to define step that is dividing an hour in inexact
27052
- * fragments (i.e. 5760 seconds which equals 1 hour 36 minutes), but it is
27053
- * not recommended to use it for better UX.
27054
- * - `initialPosition`: Date which should be visible in the date picker overlay when there is no value selected.
27023
+ * If both `headerTitle` and `headerRenderer` are defined, the title
27024
+ * and the elements created by the renderer will be placed next to
27025
+ * each other, with the title coming first.
27055
27026
  *
27056
- * The same date formats as for the `value` property are supported but without the time part.
27057
- * - `showWeekNumbers`: Set true to display ISO-8601 week numbers in the calendar. Notice that
27058
- * displaying week numbers is only supported when `i18n.firstDayOfWeek`
27059
- * is 1 (Monday).
27060
- * - `autoOpenDisabled`: Set to true to prevent the overlays from opening automatically.
27061
- * - `autofocus`: Specify that this control should have input focus when the page loads.
27062
- * - `__selectedDateTime`: The current selected date time.
27063
- * - `__datePicker`: The current slotted date picker.
27064
- * - `__timePicker`: The current slotted time picker.
27065
- * - `i18n`: The object used to localize this component. To change the default
27066
- * localization, replace this with an object that provides all properties, or
27067
- * just the individual properties you want to change.
27027
+ * When `headerRenderer` is set, the attribute `has-header` is set on the dialog.
27028
+ * - `footerRenderer`: Custom function for rendering the dialog footer.
27029
+ * Receives two arguments:
27030
+ *
27031
+ * - `root` The root container DOM element. Append your content to it.
27032
+ * - `dialog` The reference to the `<vaadin-dialog>` element.
27068
27033
  *
27069
- * Should be overridden by subclasses to provide a custom JSDoc with the
27070
- * default I18N properties.
27071
- * - `__effectiveI18n`: undefined
27072
- * - `ariaTarget`: A target element to which ARIA attributes are set.
27073
- * - `errorMessage`: Error to show when the field is invalid.
27074
- * - `helperText`: String used for the helper text.
27075
- * - `accessibleName`: String used to label the component to screen reader users.
27076
- * - `accessibleNameRef`: Id of the element used as label of the component to screen reader users.
27034
+ * When `footerRenderer` is set, the attribute `has-footer` is set on the dialog.
27035
+ * - `opened`: True if the dialog is visible and available for interaction.
27036
+ * - `noCloseOnOutsideClick`: Set to true to disable closing dialog on outside click
27037
+ * - `noCloseOnEsc`: Set to true to disable closing dialog on Escape press
27038
+ * - `modeless`: Set to true to remove backdrop and allow click events on background elements.
27039
+ * - `noFocusTrap`: Set to true to disable focus trapping.
27040
+ * - `top`: Set the distance of the dialog from the top of the viewport.
27041
+ * If a unitless number is provided, pixels are assumed.
27042
+ *
27043
+ * Note that the dialog uses an internal container that has some
27044
+ * additional spacing, which can be overridden by the theme.
27045
+ * - `left`: Set the distance of the dialog from the left of the viewport.
27046
+ * If a unitless number is provided, pixels are assumed.
27047
+ *
27048
+ * Note that the dialog uses an internal container that has some
27049
+ * additional spacing, which can be overridden by the theme.
27050
+ * - `overlayRole`: The `role` attribute value to be set on the dialog. Defaults to "dialog".
27051
+ * - `keepInViewport`: Set to true to prevent the dialog from moving outside the viewport bounds.
27052
+ * When enabled, all four edges of the dialog will remain visible, for example
27053
+ * when dragging the dialog or when the viewport is resized. Note that the
27054
+ * dialog will also adjust any programmatically configured size and position
27055
+ * so that it stays within the viewport.
27077
27056
  * - `dir`: undefined
27078
- * - `__defaultDateMinMaxValue`: undefined (property only)
27079
- * - `__defaultTimeMinValue`: undefined (property only)
27080
- * - `__defaultTimeMaxValue`: undefined (property only)
27081
- * - `_fieldAriaController`: undefined (property only)
27082
- * - `_helperController`: undefined (property only)
27083
- * - `_errorController`: undefined (property only)
27084
27057
  *
27085
27058
  * ## Events
27086
27059
  *
27087
27060
  * Events that will be emitted by the component.
27088
27061
  *
27089
- * - `change`: Fired when the user commits a value change.
27090
- * - `unparsable-change`: Fired when the user commits an unparsable or incomplete value change and there is no change event.
27091
- * - `invalid-changed`: Fired when the `invalid` property changes.
27092
- * - `value-changed`: Fired when the `value` property changes.
27093
- * - `validated`: Fired whenever the field is validated.
27062
+ * - `resize-start`: Fired when the dialog resize is started.
27063
+ * - `resize`: Fired when the dialog resize is finished.
27064
+ * - `drag-start`: Fired when the dialog drag is started.
27065
+ * - `dragged`: Fired when the dialog drag is finished.
27066
+ * - `opened-changed`: Fired when the `opened` property changes.
27067
+ * - `closed`: Fired when the dialog is closed.
27094
27068
  * - `undefined`: undefined
27095
27069
  *
27096
27070
  * ## Methods
27097
27071
  *
27098
27072
  * Methods that can be called to access component functionality.
27099
27073
  *
27100
- * - `checkValidity() => boolean`: Returns true if the current input value satisfies all constraints (if any)
27074
+ * - `requestContentUpdate() => void`: Requests an update for the content of the dialog.
27075
+ * While performing the update, it invokes the renderer passed in the `renderer` property,
27076
+ * as well as `headerRender` and `footerRenderer` properties, if these are defined.
27101
27077
  *
27102
- * You can override the `checkValidity` method for custom validations.
27078
+ * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
27103
27079
  * - `createProperty(name, options) => void`: undefined
27104
27080
  * - `getOrCreateMap(name) => void`: undefined
27105
27081
  * - `addCheckedInitializer(initializer) => void`: undefined
@@ -27109,301 +27085,325 @@ export type CustomElementsSolidJs = {
27109
27085
  *
27110
27086
  * CSS variables available for styling the component.
27111
27087
  *
27112
- * - `--vaadin-date-time-picker-gap`: undefined (default: `undefined`)
27113
- * - `--vaadin-input-field-error-color`: undefined (default: `undefined`)
27114
- * - `--vaadin-input-field-error-font-size`: undefined (default: `undefined`)
27115
- * - `--vaadin-input-field-error-font-weight`: undefined (default: `undefined`)
27116
- * - `--vaadin-input-field-error-line-height`: undefined (default: `undefined`)
27117
- * - `--vaadin-input-field-label-color`: undefined (default: `undefined`)
27118
- * - `--vaadin-input-field-label-font-size`: undefined (default: `undefined`)
27119
- * - `--vaadin-input-field-label-font-weight`: undefined (default: `undefined`)
27120
- * - `--vaadin-input-field-label-line-height`: undefined (default: `undefined`)
27121
- * - `--vaadin-input-field-helper-color`: undefined (default: `undefined`)
27122
- * - `--vaadin-input-field-helper-font-size`: undefined (default: `undefined`)
27123
- * - `--vaadin-input-field-helper-font-weight`: undefined (default: `undefined`)
27124
- * - `--vaadin-input-field-helper-line-height`: undefined (default: `undefined`)
27125
- * - `--vaadin-input-field-required-indicator-color`: undefined (default: `undefined`)
27126
- * - `--vaadin-input-field-required-indicator`: ### Internal components (default: `undefined`)
27127
- * - `<vaadin-date-time-picker>`: undefined (default: `undefined`)
27128
- * - `<vaadin-date-picker>`: undefined (default: `undefined`)
27129
- * - `<vaadin-time-picker>`: undefined (default: `undefined`)
27130
- * - `change`: undefined (default: `undefined`)
27131
- * - `unparsable-change`: undefined (default: `undefined`)
27088
+ * - `--vaadin-dialog-background`: undefined (default: `undefined`)
27089
+ * - `--vaadin-dialog-border-color`: undefined (default: `undefined`)
27090
+ * - `--vaadin-dialog-border-radius`: undefined (default: `undefined`)
27091
+ * - `--vaadin-dialog-border-width`: undefined (default: `undefined`)
27092
+ * - `--vaadin-dialog-max-width`: undefined (default: `undefined`)
27093
+ * - `--vaadin-dialog-min-width`: undefined (default: `undefined`)
27094
+ * - `--vaadin-dialog-overflow-indicator-color`: undefined (default: `undefined`)
27095
+ * - `--vaadin-dialog-overflow-indicator-height`: undefined (default: `undefined`)
27096
+ * - `--vaadin-dialog-padding`: undefined (default: `undefined`)
27097
+ * - `--vaadin-dialog-shadow`: undefined (default: `undefined`)
27098
+ * - `--vaadin-dialog-text-color`: undefined (default: `undefined`)
27099
+ * - `--vaadin-dialog-title-color`: undefined (default: `undefined`)
27100
+ * - `--vaadin-dialog-title-font-size`: undefined (default: `undefined`)
27101
+ * - `--vaadin-dialog-title-font-weight`: undefined (default: `undefined`)
27102
+ * - `--vaadin-dialog-title-line-height`: undefined (default: `undefined`)
27103
+ * - `--vaadin-overlay-backdrop-background`: See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation. (default: `undefined`)
27132
27104
  */
27133
- "vaadin-date-time-picker": Partial<
27134
- DateTimePickerProps &
27135
- DateTimePickerSolidJsProps &
27136
- BaseProps<DateTimePicker> &
27137
- BaseEvents
27105
+ "vaadin-dialog": Partial<
27106
+ DialogProps & DialogSolidJsProps & BaseProps<Dialog> & BaseEvents
27138
27107
  >;
27139
27108
 
27140
27109
  /**
27141
- * An element used internally by `<vaadin-dialog>`. Not intended to be used separately.
27110
+ * An element used internally by `<vaadin-date-picker>`. Not intended to be used separately.
27142
27111
  *
27143
27112
  * ## Attributes & Properties
27144
27113
  *
27145
27114
  * Component attributes and properties that can be applied to the element or by using JavaScript.
27146
27115
  *
27147
- * - `headerTitle`: String used for rendering a dialog title.
27148
- * - `headerRenderer`: Custom function for rendering the dialog header.
27149
- * - `footerRenderer`: Custom function for rendering the dialog footer.
27150
- * - `keepInViewport`: Whether to keep the overlay within the viewport.
27151
- * - `opened`: When true, the overlay is visible and attached to body.
27152
- * - `owner`: Owner element passed with renderer function
27153
- * - `model`: Object with properties that is passed to `renderer` function
27154
- * - `renderer`: Custom function for rendering the content of the overlay.
27155
- * Receives three arguments:
27156
- *
27157
- * - `root` The root container DOM element. Append your content to it.
27158
- * - `owner` The host element of the renderer function.
27159
- * - `model` The object with the properties related with rendering.
27160
- * - `modeless`: When true the overlay won't disable the main content, showing
27161
- * it doesn't change the functionality of the user interface.
27162
- * - `hidden`: When set to true, the overlay is hidden. This also closes the overlay
27163
- * immediately in case there is a closing animation in progress.
27164
- * - `withBackdrop`: When true the overlay has backdrop on top of content when opened.
27165
- * - `focusTrap`: When true, opening the overlay moves focus to the first focusable child,
27166
- * or to the overlay part with tabindex if there are no focusable children.
27167
- * - `restoreFocusOnClose`: Set to true to enable restoring of focus when overlay is closed.
27168
- * - `restoreFocusNode`: Set to specify the element which should be focused on overlay close,
27169
- * if `restoreFocusOnClose` is set to true.
27170
- * - `dir`: undefined
27171
- * - `_boundMouseDownListener`: undefined (property only)
27172
- * - `_boundMouseUpListener`: undefined (property only)
27173
- * - `_boundOutsideClickListener`: undefined (property only)
27174
- * - `_boundKeydownListener`: undefined (property only)
27175
- * - `__focusTrapController`: undefined (property only)
27176
- * - `__focusRestorationController`: undefined (property only)
27116
+ * - `year`: undefined
27117
+ * - `selectedDate`: undefined
27177
27118
  *
27178
27119
  * ## Events
27179
27120
  *
27180
27121
  * Events that will be emitted by the component.
27181
27122
  *
27182
- * - `vaadin-overlay-closed`: undefined
27183
- * - `vaadin-overlay-closing`: undefined
27184
27123
  * - `undefined`: undefined
27185
27124
  *
27186
27125
  * ## Methods
27187
27126
  *
27188
27127
  * Methods that can be called to access component functionality.
27189
27128
  *
27190
- * - `requestContentUpdate() => void`: Requests an update for the content of the overlay.
27191
- * While performing the update, it invokes the renderer passed in the `renderer` property.
27192
- *
27193
- * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
27194
- * - `getBounds() => !DialogOverlayBounds`: Retrieves the coordinates of the overlay.
27195
- * - `setBounds(bounds, absolute = true) => void`: Override method from OverlayMixin to adjust the position of the overlay if `keepInViewport` is true.
27196
- * - `close(sourceEvent: Event=) => void`: undefined
27197
27129
  * - `createProperty(name, options) => void`: undefined
27198
27130
  * - `getOrCreateMap(name) => void`: undefined
27199
27131
  * - `addCheckedInitializer(initializer) => void`: undefined
27200
27132
  * - `getPropertyDescriptor(name, key, options) => void`: undefined
27201
27133
  */
27202
- "vaadin-dialog-overlay": Partial<
27203
- DialogOverlayProps &
27204
- DialogOverlaySolidJsProps &
27205
- BaseProps<DialogOverlay> &
27134
+ "vaadin-date-picker-year": Partial<
27135
+ DatePickerYearProps &
27136
+ DatePickerYearSolidJsProps &
27137
+ BaseProps<DatePickerYear> &
27206
27138
  BaseEvents
27207
27139
  >;
27208
27140
 
27209
27141
  /**
27210
- * `<vaadin-dialog>` is a Web Component for creating customized modal dialogs.
27211
- *
27212
- * ### Rendering
27213
- *
27214
- * The content of the dialog can be populated by using the renderer callback function.
27215
- *
27216
- * The renderer function provides `root`, `dialog` arguments.
27217
- * Generate DOM content, append it to the `root` element and control the state
27218
- * of the host element by accessing `dialog`. Before generating new content,
27219
- * users are able to check if there is already content in `root` for reusing it.
27142
+ * `<vaadin-date-picker>` is an input field that allows to enter a date by typing or by selecting from a calendar overlay.
27220
27143
  *
27221
27144
  * ```html
27222
- * <vaadin-dialog id="dialog"></vaadin-dialog>
27145
+ * <vaadin-date-picker label="Birthday"></vaadin-date-picker>
27223
27146
  * ```
27147
+ *
27224
27148
  * ```js
27225
- * const dialog = document.querySelector('#dialog');
27226
- * dialog.renderer = function(root, dialog) {
27227
- * root.textContent = "Sample dialog";
27228
- * };
27149
+ * datePicker.value = '2016-03-02';
27229
27150
  * ```
27230
27151
  *
27231
- * Renderer is called on the opening of the dialog.
27232
- * DOM generated during the renderer call can be reused
27233
- * in the next renderer call and will be provided with the `root` argument.
27234
- * On first call it will be empty.
27152
+ * When the selected `value` is changed, a `value-changed` event is triggered.
27235
27153
  *
27236
27154
  * ### Styling
27237
27155
  *
27156
+ * The following custom properties are available for styling:
27157
+ *
27158
+ * Custom property | Description | Default
27159
+ * -------------------------------|----------------------------|---------
27160
+ * `--vaadin-field-default-width` | Default width of the field | `12em`
27161
+ *
27238
27162
  * The following shadow DOM parts are available for styling:
27239
27163
  *
27240
- * Part name | Description
27241
- * -----------------|-------------------------------------------
27242
- * `backdrop` | Backdrop of the overlay
27243
- * `overlay` | The overlay container
27244
- * `content` | The overlay content
27245
- * `header` | Element wrapping title and header content
27246
- * `header-content` | Element wrapping the header content slot
27247
- * `title` | Element wrapping the title slot
27248
- * `footer` | Element wrapping the footer slot
27164
+ * Part name | Description
27165
+ * ---------------------|----------------
27166
+ * `label` | The label element
27167
+ * `input-field` | The element that wraps prefix, value and buttons
27168
+ * `field-button` | Set on both clear and toggle buttons
27169
+ * `clear-button` | The clear button
27170
+ * `error-message` | The error message element
27171
+ * `helper-text` | The helper text element wrapper
27172
+ * `required-indicator` | The `required` state indicator element
27173
+ * `toggle-button` | The toggle button
27174
+ * `backdrop` | Backdrop of the overlay
27175
+ * `overlay` | The overlay container
27176
+ * `content` | The overlay content
27177
+ *
27178
+ * The following state attributes are available for styling:
27179
+ *
27180
+ * Attribute | Description
27181
+ * ---------------------|---------------------------------
27182
+ * `disabled` | Set when the element is disabled
27183
+ * `has-value` | Set when the element has a value
27184
+ * `has-label` | Set when the element has a label
27185
+ * `has-helper` | Set when the element has helper text or slot
27186
+ * `has-error-message` | Set when the element has an error message
27187
+ * `has-tooltip` | Set when the element has a slotted tooltip
27188
+ * `invalid` | Set when the element is invalid
27189
+ * `focused` | Set when the element is focused
27190
+ * `focus-ring` | Set when the element is keyboard focused
27191
+ * `readonly` | Set when the element is readonly
27192
+ * `opened` | Set when the overlay is opened
27193
+ * `week-numbers` | Set when week numbers are shown in the calendar
27194
+ *
27195
+ * ### Internal components
27196
+ *
27197
+ * In addition to `<vaadin-date-picker>` itself, the following internal
27198
+ * components are themable:
27199
+ *
27200
+ * - `<vaadin-date-picker-overlay-content>`
27201
+ * - `<vaadin-date-picker-month-scroller>`
27202
+ * - `<vaadin-date-picker-year-scroller>`
27203
+ * - `<vaadin-date-picker-year>`
27204
+ * - `<vaadin-month-calendar>`
27205
+ *
27206
+ * In order to style the overlay content, use `<vaadin-date-picker-overlay-content>` shadow DOM parts:
27207
+ *
27208
+ * Part name | Description
27209
+ * ----------------------|--------------------
27210
+ * `years-toggle-button` | Fullscreen mode years scroller toggle
27211
+ * `toolbar` | Toolbar with slotted buttons
27212
+ *
27213
+ * The following state attributes are available on the `<vaadin-date-picker-overlay-content>` element:
27214
+ *
27215
+ * Attribute | Description
27216
+ * ----------------|-------------------------------------------------
27217
+ * `desktop` | Set when the overlay content is in desktop mode
27218
+ * `fullscreen` | Set when the overlay content is in fullscreen mode
27219
+ * `years-visible` | Set when the year scroller is visible in fullscreen mode
27220
+ *
27221
+ * In order to style the month calendar, use `<vaadin-month-calendar>` shadow DOM parts:
27222
+ *
27223
+ * Part name | Description
27224
+ * ----------------------|--------------------
27225
+ * `month-header` | Month title
27226
+ * `weekdays` | Weekday container
27227
+ * `weekday` | Weekday element
27228
+ * `week-numbers` | Week numbers container
27229
+ * `week-number` | Week number element
27230
+ * `date` | Date element
27231
+ * `disabled` | Disabled date element
27232
+ * `focused` | Focused date element
27233
+ * `selected` | Selected date element
27234
+ * `today` | Date element corresponding to the current day
27235
+ * `past` | Date element corresponding to the date in the past
27236
+ * `future` | Date element corresponding to the date in the future
27249
27237
  *
27250
- * The following state attributes are available for styling:
27238
+ * In order to style year scroller elements, use `<vaadin-date-picker-year>` shadow DOM parts:
27251
27239
  *
27252
- * Attribute | Description
27253
- * -----------------|--------------------------------------------
27254
- * `has-title` | Set when the element has a title
27255
- * `has-header` | Set when the element has header renderer
27256
- * `has-footer` | Set when the element has footer renderer
27257
- * `overflow` | Set to `top`, `bottom`, none or both
27240
+ * Part name | Description
27241
+ * ----------------------|--------------------
27242
+ * `year-number` | Year number
27243
+ * `year-separator` | Year separator
27258
27244
  *
27259
- * The following custom CSS properties are available for styling:
27245
+ * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
27260
27246
  *
27261
- * Custom CSS property |
27262
- * :--------------------------------------------|
27263
- * |`--vaadin-dialog-background` |
27264
- * |`--vaadin-dialog-border-color` |
27265
- * |`--vaadin-dialog-border-radius` |
27266
- * |`--vaadin-dialog-border-width` |
27267
- * |`--vaadin-dialog-max-width` |
27268
- * |`--vaadin-dialog-min-width` |
27269
- * |`--vaadin-dialog-overflow-indicator-color` |
27270
- * |`--vaadin-dialog-overflow-indicator-height` |
27271
- * |`--vaadin-dialog-padding` |
27272
- * |`--vaadin-dialog-shadow` |
27273
- * |`--vaadin-dialog-text-color` |
27274
- * |`--vaadin-dialog-title-color` |
27275
- * |`--vaadin-dialog-title-font-size` |
27276
- * |`--vaadin-dialog-title-font-weight` |
27277
- * |`--vaadin-dialog-title-line-height` |
27278
- * |`--vaadin-overlay-backdrop-background` |
27247
+ * ### Change events
27279
27248
  *
27280
- * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.
27249
+ * Depending on the nature of the value change that the user attempts to commit e.g. by pressing Enter,
27250
+ * the component can fire either a `change` event or an `unparsable-change` event:
27251
+ *
27252
+ * Value change | Event
27253
+ * :------------------------|:------------------
27254
+ * empty => parsable | change
27255
+ * empty => unparsable | unparsable-change
27256
+ * parsable => empty | change
27257
+ * parsable => parsable | change
27258
+ * parsable => unparsable | change
27259
+ * unparsable => empty | unparsable-change
27260
+ * unparsable => parsable | change
27261
+ * unparsable => unparsable | unparsable-change
27281
27262
  *
27282
27263
  * ## Attributes & Properties
27283
27264
  *
27284
27265
  * Component attributes and properties that can be applied to the element or by using JavaScript.
27285
27266
  *
27286
- * - `has-title`/`undefined`: Set when the element has a title
27287
- * - `has-header`/`undefined`: Set when the element has header renderer
27288
- * - `has-footer`/`undefined`: Set when the element has footer renderer
27289
- * - `overflow`/`undefined`: Set to `top`, `bottom`, none or both
27290
- * - `width`: Set the width of the dialog.
27291
- * If a unitless number is provided, pixels are assumed.
27292
- * - `height`: Set the height of the dialog.
27293
- * If a unitless number is provided, pixels are assumed.
27294
- * - `draggable`: Set to true to enable repositioning the dialog by clicking and dragging.
27295
- *
27296
- * By default, only the overlay area can be used to drag the element. But,
27297
- * a child element can be marked as a draggable area by adding a
27298
- * "`draggable`" class to it, this will by default make all of its children draggable also.
27299
- * If you want a child element to be draggable
27300
- * but still have its children non-draggable (by default), mark it with
27301
- * "`draggable-leaf-only`" class name.
27302
- * - `_touchDevice`: undefined
27303
- * - `__dragHandleClassName`: undefined
27304
- * - `resizable`: Set to true to enable resizing the dialog by dragging the corners and edges.
27305
- * - `renderer`: Custom function for rendering the content of the dialog.
27306
- * Receives two arguments:
27307
- *
27308
- * - `root` The root container DOM element. Append your content to it.
27309
- * - `dialog` The reference to the `<vaadin-dialog>` element.
27310
- * - `headerTitle`: String used for rendering a dialog title.
27267
+ * - `_positionTarget`: undefined
27268
+ * - `disabled`/`undefined`: Set when the element is disabled
27269
+ * - `has-value`/`undefined`: Set when the element has a value
27270
+ * - `has-label`/`undefined`: Set when the element has a label
27271
+ * - `has-helper`/`undefined`: Set when the element has helper text or slot
27272
+ * - `has-error-message`/`undefined`: Set when the element has an error message
27273
+ * - `has-tooltip`/`undefined`: Set when the element has a slotted tooltip
27274
+ * - `invalid`/`undefined`: Set when the element is invalid
27275
+ * - `focused`/`undefined`: Set when the element is focused
27276
+ * - `focus-ring`/`undefined`: Set when the element is keyboard focused
27277
+ * - `readonly`: Set when the element is readonly
27278
+ * - `opened`: Set when the overlay is opened
27279
+ * - `week-numbers`/`undefined`: Set when week numbers are shown in the calendar
27280
+ * - `<vaadin-date-picker>`/`undefined`: undefined
27281
+ * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
27282
+ * - `<vaadin-date-picker-month-scroller>`/`undefined`: undefined
27283
+ * - `<vaadin-date-picker-year-scroller>`/`undefined`: undefined
27284
+ * - `<vaadin-date-picker-year>`/`undefined`: undefined
27285
+ * - `<vaadin-month-calendar>`/`undefined`: undefined
27286
+ * - `<vaadin-date-picker-overlay-content>`/`undefined`: undefined
27287
+ * - `years-toggle-button`/`undefined`: Fullscreen mode years scroller toggle
27288
+ * - `toolbar`/`undefined`: Toolbar with slotted buttons
27289
+ * - `_selectedDate`: The current selected date.
27290
+ * - `_focusedDate`: undefined
27291
+ * - `value`: Selected date.
27311
27292
  *
27312
- * If both `headerTitle` and `headerRenderer` are defined, the title
27313
- * and the elements created by the renderer will be placed next to
27314
- * each other, with the title coming first.
27293
+ * Supported date formats:
27294
+ * - ISO 8601 `"YYYY-MM-DD"` (default)
27295
+ * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
27296
+ * - `initialPosition`: Date which should be visible when there is no value selected.
27315
27297
  *
27316
- * When `headerTitle` is set, the attribute `has-title` is set on the dialog.
27317
- * - `headerRenderer`: Custom function for rendering the dialog header.
27318
- * Receives two arguments:
27298
+ * The same date formats as for the `value` property are supported.
27299
+ * - `autoOpenDisabled`: Set true to prevent the overlay from opening automatically.
27300
+ * - `showWeekNumbers`: Set true to display ISO-8601 week numbers in the calendar. Notice that
27301
+ * displaying week numbers is only supported when `i18n.firstDayOfWeek`
27302
+ * is 1 (Monday).
27303
+ * - `_fullscreen`: undefined
27304
+ * - `_fullscreenMediaQuery`: undefined
27305
+ * - `min`: The earliest date that can be selected. All earlier dates will be disabled.
27319
27306
  *
27320
- * - `root` The root container DOM element. Append your content to it.
27321
- * - `dialog` The reference to the `<vaadin-dialog>` element.
27307
+ * Supported date formats:
27308
+ * - ISO 8601 `"YYYY-MM-DD"` (default)
27309
+ * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
27310
+ * - `max`: The latest date that can be selected. All later dates will be disabled.
27322
27311
  *
27323
- * If both `headerTitle` and `headerRenderer` are defined, the title
27324
- * and the elements created by the renderer will be placed next to
27325
- * each other, with the title coming first.
27312
+ * Supported date formats:
27313
+ * - ISO 8601 `"YYYY-MM-DD"` (default)
27314
+ * - 6-digit extended ISO 8601 `"+YYYYYY-MM-DD"`, `"-YYYYYY-MM-DD"`
27315
+ * - `isDateDisabled`: A function to be used to determine whether the user can select a given date.
27316
+ * Receives a `DatePickerDate` object of the date to be selected and should return a
27317
+ * boolean.
27318
+ * - `_minDate`: The earliest date that can be selected. All earlier dates will be disabled.
27319
+ * - `_maxDate`: The latest date that can be selected. All later dates will be disabled.
27320
+ * - `_noInput`: undefined
27321
+ * - `_ios`: undefined
27322
+ * - `_focusOverlayOnOpen`: undefined
27323
+ * - `_overlayContent`: undefined
27324
+ * - `__enteredDate`: undefined
27325
+ * - `i18n`: The object used to localize this component. To change the default
27326
+ * localization, replace this with an object that provides all properties, or
27327
+ * just the individual properties you want to change.
27326
27328
  *
27327
- * When `headerRenderer` is set, the attribute `has-header` is set on the dialog.
27328
- * - `footerRenderer`: Custom function for rendering the dialog footer.
27329
- * Receives two arguments:
27329
+ * Should be overridden by subclasses to provide a custom JSDoc with the
27330
+ * default I18N properties.
27331
+ * - `__effectiveI18n`: undefined
27332
+ * - `autofocus`: Specify that this control should have input focus when the page loads.
27333
+ * - `focusElement`: A reference to the focusable element controlled by the mixin.
27334
+ * It can be an input, textarea, button or any element with tabindex > -1.
27330
27335
  *
27331
- * - `root` The root container DOM element. Append your content to it.
27332
- * - `dialog` The reference to the `<vaadin-dialog>` element.
27336
+ * Any component implementing this mixin is expected to provide it
27337
+ * by using `this._setFocusElement(input)` Polymer API.
27333
27338
  *
27334
- * When `footerRenderer` is set, the attribute `has-footer` is set on the dialog.
27335
- * - `opened`: True if the dialog is visible and available for interaction.
27336
- * - `noCloseOnOutsideClick`: Set to true to disable closing dialog on outside click
27337
- * - `noCloseOnEsc`: Set to true to disable closing dialog on Escape press
27338
- * - `modeless`: Set to true to remove backdrop and allow click events on background elements.
27339
- * - `noFocusTrap`: Set to true to disable focus trapping.
27340
- * - `top`: Set the distance of the dialog from the top of the viewport.
27341
- * If a unitless number is provided, pixels are assumed.
27339
+ * Toggling `tabindex` attribute on the host element propagates its value to `focusElement`.
27340
+ * - `_lastTabIndex`: Override the property from `TabIndexMixin`
27341
+ * to ensure the `tabindex` attribute of the focus element
27342
+ * will be restored to `0` after re-enabling the element.
27343
+ * - `allowedCharPattern`: A pattern matched against individual characters the user inputs.
27342
27344
  *
27343
- * Note that the dialog uses an internal container that has some
27344
- * additional spacing, which can be overridden by the theme.
27345
- * - `left`: Set the distance of the dialog from the left of the viewport.
27346
- * If a unitless number is provided, pixels are assumed.
27345
+ * When set, the field will prevent:
27346
+ * - `keydown` events if the entered key doesn't match `/^allowedCharPattern$/`
27347
+ * - `paste` events if the pasted text doesn't match `/^allowedCharPattern*$/`
27348
+ * - `drop` events if the dropped text doesn't match `/^allowedCharPattern*$/`
27347
27349
  *
27348
- * Note that the dialog uses an internal container that has some
27349
- * additional spacing, which can be overridden by the theme.
27350
- * - `overlayRole`: The `role` attribute value to be set on the dialog. Defaults to "dialog".
27351
- * - `keepInViewport`: Set to true to prevent the dialog from moving outside the viewport bounds.
27352
- * When enabled, all four edges of the dialog will remain visible, for example
27353
- * when dragging the dialog or when the viewport is resized. Note that the
27354
- * dialog will also adjust any programmatically configured size and position
27355
- * so that it stays within the viewport.
27350
+ * For example, to allow entering only numbers and minus signs, use:
27351
+ * `allowedCharPattern = "[\\d-]"`
27352
+ * - `autoselect`: If true, the input text gets fully selected when the field is focused using click or touch / tap.
27353
+ * - `name`: The name of this field.
27354
+ * - `placeholder`: A hint to the user of what can be entered in the field.
27355
+ * - `title`: The text usually displayed in a tooltip popup when the mouse is over the field.
27356
+ * - `ariaTarget`: A target element to which ARIA attributes are set.
27357
+ * - `errorMessage`: Error to show when the field is invalid.
27358
+ * - `helperText`: String used for the helper text.
27359
+ * - `accessibleName`: String used to label the component to screen reader users.
27360
+ * - `accessibleNameRef`: Id of the element used as label of the component to screen reader users.
27361
+ * - `clearButtonVisible`: Set to true to display the clear icon which clears the input.
27362
+ * This also enables clearing the input when pressing Esc key.
27356
27363
  * - `dir`: undefined
27364
+ * - `_inputElementValue`: undefined (property only)
27365
+ * - `_boundOnClick`: undefined (property only)
27366
+ * - `_boundOnScroll`: undefined (property only)
27367
+ * - `_boundOnBlur`: undefined (property only)
27368
+ * - `_boundOnFocus`: undefined (property only)
27369
+ * - `_boundOnPaste`: undefined (property only)
27370
+ * - `_boundOnDrop`: undefined (property only)
27371
+ * - `_boundOnBeforeInput`: undefined (property only)
27372
+ * - `_fieldAriaController`: undefined (property only)
27373
+ * - `_helperController`: undefined (property only)
27374
+ * - `_errorController`: undefined (property only)
27357
27375
  *
27358
27376
  * ## Events
27359
27377
  *
27360
27378
  * Events that will be emitted by the component.
27361
27379
  *
27362
- * - `resize-start`: Fired when the dialog resize is started.
27363
- * - `resize`: Fired when the dialog resize is finished.
27364
- * - `drag-start`: Fired when the dialog drag is started.
27365
- * - `dragged`: Fired when the dialog drag is finished.
27380
+ * - `change`: Fired when the user commits a value change.
27381
+ * - `unparsable-change`: Fired when the user commits an unparsable value change and there is no change event.
27382
+ * - `invalid-changed`: Fired when the `invalid` property changes.
27366
27383
  * - `opened-changed`: Fired when the `opened` property changes.
27367
- * - `closed`: Fired when the dialog is closed.
27384
+ * - `value-changed`: Fired when the `value` property changes.
27385
+ * - `validated`: Fired whenever the field is validated.
27368
27386
  * - `undefined`: undefined
27369
27387
  *
27370
27388
  * ## Methods
27371
27389
  *
27372
27390
  * Methods that can be called to access component functionality.
27373
27391
  *
27374
- * - `requestContentUpdate() => void`: Requests an update for the content of the dialog.
27375
- * While performing the update, it invokes the renderer passed in the `renderer` property,
27376
- * as well as `headerRender` and `footerRenderer` properties, if these are defined.
27392
+ * - `open() => void`: Opens the dropdown.
27393
+ * - `close() => void`: Closes the dropdown.
27394
+ * - `checkValidity() => boolean`: Returns true if the current input value satisfies all constraints (if any)
27377
27395
  *
27378
- * It is not guaranteed that the update happens immediately (synchronously) after it is requested.
27396
+ * Override the `checkValidity` method for custom validations.
27379
27397
  * - `createProperty(name, options) => void`: undefined
27380
27398
  * - `getOrCreateMap(name) => void`: undefined
27381
27399
  * - `addCheckedInitializer(initializer) => void`: undefined
27382
27400
  * - `getPropertyDescriptor(name, key, options) => void`: undefined
27383
- *
27384
- * ## CSS Custom Properties
27385
- *
27386
- * CSS variables available for styling the component.
27387
- *
27388
- * - `--vaadin-dialog-background`: undefined (default: `undefined`)
27389
- * - `--vaadin-dialog-border-color`: undefined (default: `undefined`)
27390
- * - `--vaadin-dialog-border-radius`: undefined (default: `undefined`)
27391
- * - `--vaadin-dialog-border-width`: undefined (default: `undefined`)
27392
- * - `--vaadin-dialog-max-width`: undefined (default: `undefined`)
27393
- * - `--vaadin-dialog-min-width`: undefined (default: `undefined`)
27394
- * - `--vaadin-dialog-overflow-indicator-color`: undefined (default: `undefined`)
27395
- * - `--vaadin-dialog-overflow-indicator-height`: undefined (default: `undefined`)
27396
- * - `--vaadin-dialog-padding`: undefined (default: `undefined`)
27397
- * - `--vaadin-dialog-shadow`: undefined (default: `undefined`)
27398
- * - `--vaadin-dialog-text-color`: undefined (default: `undefined`)
27399
- * - `--vaadin-dialog-title-color`: undefined (default: `undefined`)
27400
- * - `--vaadin-dialog-title-font-size`: undefined (default: `undefined`)
27401
- * - `--vaadin-dialog-title-font-weight`: undefined (default: `undefined`)
27402
- * - `--vaadin-dialog-title-line-height`: undefined (default: `undefined`)
27403
- * - `--vaadin-overlay-backdrop-background`: See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation. (default: `undefined`)
27404
27401
  */
27405
- "vaadin-dialog": Partial<
27406
- DialogProps & DialogSolidJsProps & BaseProps<Dialog> & BaseEvents
27402
+ "vaadin-date-picker": Partial<
27403
+ DatePickerProps &
27404
+ DatePickerSolidJsProps &
27405
+ BaseProps<DatePicker> &
27406
+ BaseEvents
27407
27407
  >;
27408
27408
 
27409
27409
  /**