@vaadin/time-picker 24.0.0-alpha1 → 24.0.0-alpha11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vaadin/time-picker",
3
- "version": "24.0.0-alpha1",
3
+ "version": "24.0.0-alpha11",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -36,13 +36,13 @@
36
36
  ],
37
37
  "dependencies": {
38
38
  "@polymer/polymer": "^3.0.0",
39
- "@vaadin/combo-box": "24.0.0-alpha1",
40
- "@vaadin/component-base": "24.0.0-alpha1",
41
- "@vaadin/field-base": "24.0.0-alpha1",
42
- "@vaadin/input-container": "24.0.0-alpha1",
43
- "@vaadin/vaadin-lumo-styles": "24.0.0-alpha1",
44
- "@vaadin/vaadin-material-styles": "24.0.0-alpha1",
45
- "@vaadin/vaadin-themable-mixin": "24.0.0-alpha1"
39
+ "@vaadin/combo-box": "24.0.0-alpha11",
40
+ "@vaadin/component-base": "24.0.0-alpha11",
41
+ "@vaadin/field-base": "24.0.0-alpha11",
42
+ "@vaadin/input-container": "24.0.0-alpha11",
43
+ "@vaadin/vaadin-lumo-styles": "24.0.0-alpha11",
44
+ "@vaadin/vaadin-material-styles": "24.0.0-alpha11",
45
+ "@vaadin/vaadin-themable-mixin": "24.0.0-alpha11"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@esm-bundle/chai": "^4.3.4",
@@ -53,5 +53,5 @@
53
53
  "web-types.json",
54
54
  "web-types.lit.json"
55
55
  ],
56
- "gitHead": "427527c27c4b27822d61fd41d38d7b170134770b"
56
+ "gitHead": "641b3d96ceeb3e503a093682ebe686afdd8c3a68"
57
57
  }
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import './vaadin-time-picker-item.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { ComboBoxItem } from '@vaadin/combo-box/src/vaadin-combo-box-item.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { ComboBoxOverlay } from '@vaadin/combo-box/src/vaadin-combo-box-overlay.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { ComboBoxScroller } from '@vaadin/combo-box/src/vaadin-combo-box-scroller.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';
@@ -178,6 +178,13 @@ declare class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(El
178
178
  */
179
179
  autoOpenDisabled: boolean | null | undefined;
180
180
 
181
+ /**
182
+ * A space-delimited list of CSS class names to set on the overlay element.
183
+ *
184
+ * @attr {string} overlay-class
185
+ */
186
+ overlayClass: string;
187
+
181
188
  /**
182
189
  * The object used to localize this component.
183
190
  * To change the default localization, replace the entire
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import '@vaadin/input-container/src/vaadin-input-container.js';
@@ -121,6 +121,7 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
121
121
  readonly="[[readonly]]"
122
122
  clear-button-visible="[[clearButtonVisible]]"
123
123
  auto-open-disabled="[[autoOpenDisabled]]"
124
+ overlay-class="[[overlayClass]]"
124
125
  position-target="[[_inputContainer]]"
125
126
  theme$="[[_theme]]"
126
127
  on-change="__onComboBoxChange"
@@ -232,6 +233,15 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
232
233
  */
233
234
  autoOpenDisabled: Boolean,
234
235
 
236
+ /**
237
+ * A space-delimited list of CSS class names to set on the overlay element.
238
+ *
239
+ * @attr {string} overlay-class
240
+ */
241
+ overlayClass: {
242
+ type: String,
243
+ },
244
+
235
245
  /** @private */
236
246
  __dropdownItems: {
237
247
  type: Array,
@@ -297,6 +307,7 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
297
307
  const MATCH_MILLISECONDS = '(\\d{1,3})';
298
308
  const re = new RegExp(
299
309
  `^${MATCH_HOURS}(?::${MATCH_MINUTES}(?::${MATCH_SECONDS}(?:\\.${MATCH_MILLISECONDS})?)?)?$`,
310
+ 'u',
300
311
  );
301
312
  const parts = re.exec(text);
302
313
  if (parts) {
@@ -535,8 +546,6 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
535
546
  const maxTimeObj = this.__validateTime(this.__parseISO(max || MAX_ALLOWED_TIME));
536
547
  const maxSec = this.__getSec(maxTimeObj);
537
548
 
538
- this.__adjustValue(minSec, maxSec, minTimeObj, maxTimeObj);
539
-
540
549
  this.__dropdownItems = this.__generateDropdownList(minSec, maxSec, step);
541
550
 
542
551
  if (step !== this.__oldStep) {
@@ -559,7 +568,9 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
559
568
  const generatedList = [];
560
569
 
561
570
  // Default step in overlay items is 1 hour
562
- step = step || 3600;
571
+ if (!step) {
572
+ step = 3600;
573
+ }
563
574
 
564
575
  let time = -step + minSec;
565
576
  while (time + step >= minSec && time + step <= maxSec) {
@@ -572,22 +583,6 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
572
583
  return generatedList;
573
584
  }
574
585
 
575
- /** @private */
576
- __adjustValue(minSec, maxSec, minTimeObj, maxTimeObj) {
577
- // Do not change the value if it is empty
578
- if (!this.__memoValue) {
579
- return;
580
- }
581
-
582
- const valSec = this.__getSec(this.__memoValue);
583
-
584
- if (valSec < minSec) {
585
- this.__updateValue(minTimeObj);
586
- } else if (valSec > maxSec) {
587
- this.__updateValue(maxTimeObj);
588
- }
589
- }
590
-
591
586
  /**
592
587
  * Override an observer from `InputMixin`.
593
588
  * @protected
@@ -663,16 +658,17 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
663
658
  /** @private */
664
659
  __validateTime(timeObject) {
665
660
  if (timeObject) {
661
+ const stepSegment = this.__getStepSegment();
666
662
  timeObject.hours = parseInt(timeObject.hours);
667
663
  timeObject.minutes = parseInt(timeObject.minutes || 0);
668
- timeObject.seconds = this.__stepSegment < 3 ? undefined : parseInt(timeObject.seconds || 0);
669
- timeObject.milliseconds = this.__stepSegment < 4 ? undefined : parseInt(timeObject.milliseconds || 0);
664
+ timeObject.seconds = stepSegment < 3 ? undefined : parseInt(timeObject.seconds || 0);
665
+ timeObject.milliseconds = stepSegment < 4 ? undefined : parseInt(timeObject.milliseconds || 0);
670
666
  }
671
667
  return timeObject;
672
668
  }
673
669
 
674
670
  /** @private */
675
- get __stepSegment() {
671
+ __getStepSegment() {
676
672
  if (this.step % 3600 === 0) {
677
673
  // Accept hours
678
674
  return 1;
@@ -734,10 +730,7 @@ class TimePicker extends PatternMixin(InputControlMixin(ThemableMixin(ElementMix
734
730
  * Override method inherited from `InputMixin`.
735
731
  * @protected
736
732
  */
737
- _onInput() {
738
- // Need to invoke _checkInputValue from PatternMixin to prevent invalid input
739
- this._checkInputValue();
740
- }
733
+ _onInput() {}
741
734
 
742
735
  /**
743
736
  * Fired when the user commits a value change.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import '@vaadin/vaadin-lumo-styles/font-icons.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import '@vaadin/combo-box/theme/lumo/vaadin-combo-box-dropdown-styles.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import '@vaadin/vaadin-material-styles/font-icons.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2022 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2023 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import '@vaadin/combo-box/theme/material/vaadin-combo-box-dropdown-styles.js';
package/web-types.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/time-picker",
4
- "version": "24.0.0-alpha1",
4
+ "version": "24.0.0-alpha11",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
8
8
  "elements": [
9
9
  {
10
10
  "name": "vaadin-time-picker",
11
- "description": "`<vaadin-time-picker>` is a Web Component providing a time-selection field.\n\n```html\n<vaadin-time-picker></vaadin-time-picker>\n```\n```js\ntimePicker.value = '14:30';\n```\n\nWhen the selected `value` is changed, a `value-changed` event is triggered.\n\n### Styling\n\nThe following custom properties are available for styling:\n\nCustom property | Description | Default\n----------------------------------------|----------------------------|---------\n`--vaadin-field-default-width` | Default width of the field | `12em`\n`--vaadin-combo-box-overlay-max-height` | Max height of the overlay | `65vh`\n\n`<vaadin-time-picker>` provides the same set of shadow DOM parts and state attributes as `<vaadin-text-field>`.\nSee [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-text-field) for the styling documentation.\n\nIn addition to `<vaadin-text-field>` parts, the following parts are available for theming:\n\nPart name | Description\n----------------|----------------\n`toggle-button` | The toggle button\n\nIn addition to `<vaadin-text-field>` state attributes, the following state attributes are available for theming:\n\nAttribute | Description\n----------|------------------------------------------\n`opened` | Set when the time-picker dropdown is open\n\n### Internal components\n\nIn addition to `<vaadin-time-picker>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-time-picker-combo-box>` - has the same API as [`<vaadin-combo-box-light>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-combo-box-light).\n- `<vaadin-time-picker-overlay>` - has the same API as [`<vaadin-overlay>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-overlay).\n- `<vaadin-time-picker-item>` - has the same API as [`<vaadin-item>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-item).\n- [`<vaadin-input-container>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-input-container) - an internal element wrapping the input.\n\nNote: the `theme` attribute value set on `<vaadin-time-picker>` is\npropagated to the internal components listed above.\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/custom-theme/styling-components) documentation.",
11
+ "description": "`<vaadin-time-picker>` is a Web Component providing a time-selection field.\n\n```html\n<vaadin-time-picker></vaadin-time-picker>\n```\n```js\ntimePicker.value = '14:30';\n```\n\nWhen the selected `value` is changed, a `value-changed` event is triggered.\n\n### Styling\n\nThe following custom properties are available for styling:\n\nCustom property | Description | Default\n----------------------------------------|----------------------------|---------\n`--vaadin-field-default-width` | Default width of the field | `12em`\n`--vaadin-combo-box-overlay-max-height` | Max height of the overlay | `65vh`\n\n`<vaadin-time-picker>` provides the same set of shadow DOM parts and state attributes as `<vaadin-text-field>`.\nSee [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-text-field) for the styling documentation.\n\nIn addition to `<vaadin-text-field>` parts, the following parts are available for theming:\n\nPart name | Description\n----------------|----------------\n`toggle-button` | The toggle button\n\nIn addition to `<vaadin-text-field>` state attributes, the following state attributes are available for theming:\n\nAttribute | Description\n----------|------------------------------------------\n`opened` | Set when the time-picker dropdown is open\n\n### Internal components\n\nIn addition to `<vaadin-time-picker>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-time-picker-combo-box>` - has the same API as [`<vaadin-combo-box-light>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-combo-box-light).\n- `<vaadin-time-picker-overlay>` - has the same API as [`<vaadin-overlay>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-overlay).\n- `<vaadin-time-picker-item>` - has the same API as [`<vaadin-item>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-item).\n- [`<vaadin-input-container>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-input-container) - an internal element wrapping the input.\n\nNote: the `theme` attribute value set on `<vaadin-time-picker>` is\npropagated to the internal components listed above.\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/custom-theme/styling-components) documentation.",
12
12
  "attributes": [
13
13
  {
14
14
  "name": "disabled",
@@ -184,17 +184,6 @@
184
184
  ]
185
185
  }
186
186
  },
187
- {
188
- "name": "prevent-invalid-input",
189
- "description": "When set to true, user is prevented from typing a value that\nconflicts with the given `pattern`.",
190
- "value": {
191
- "type": [
192
- "boolean",
193
- "null",
194
- "undefined"
195
- ]
196
- }
197
- },
198
187
  {
199
188
  "name": "opened",
200
189
  "description": "True if the dropdown is open, false otherwise.",
@@ -246,6 +235,17 @@
246
235
  ]
247
236
  }
248
237
  },
238
+ {
239
+ "name": "overlay-class",
240
+ "description": "A space-delimited list of CSS class names to set on the overlay element.",
241
+ "value": {
242
+ "type": [
243
+ "string",
244
+ "null",
245
+ "undefined"
246
+ ]
247
+ }
248
+ },
249
249
  {
250
250
  "name": "theme",
251
251
  "description": "The theme variants to apply to the component.",
@@ -434,17 +434,6 @@
434
434
  ]
435
435
  }
436
436
  },
437
- {
438
- "name": "preventInvalidInput",
439
- "description": "When set to true, user is prevented from typing a value that\nconflicts with the given `pattern`.",
440
- "value": {
441
- "type": [
442
- "boolean",
443
- "null",
444
- "undefined"
445
- ]
446
- }
447
- },
448
437
  {
449
438
  "name": "opened",
450
439
  "description": "True if the dropdown is open, false otherwise.",
@@ -496,6 +485,17 @@
496
485
  ]
497
486
  }
498
487
  },
488
+ {
489
+ "name": "overlayClass",
490
+ "description": "A space-delimited list of CSS class names to set on the overlay element.",
491
+ "value": {
492
+ "type": [
493
+ "string",
494
+ "null",
495
+ "undefined"
496
+ ]
497
+ }
498
+ },
499
499
  {
500
500
  "name": "i18n",
501
501
  "description": "The object used to localize this component.\nTo change the default localization, replace the entire\n_i18n_ object or just the property you want to modify.\n\nThe object has the following JSON structure:\n\n```\n{\n // A function to format given `Object` as\n // time string. Object is in the format `{ hours: ..., minutes: ..., seconds: ..., milliseconds: ... }`\n formatTime: (time) => {\n // returns a string representation of the given\n // object in `hh` / 'hh:mm' / 'hh:mm:ss' / 'hh:mm:ss.fff' - formats\n },\n\n // A function to parse the given text to an `Object` in the format\n // `{ hours: ..., minutes: ..., seconds: ..., milliseconds: ... }`.\n // Must properly parse (at least) text\n // formatted by `formatTime`.\n parseTime: text => {\n // Parses a string in object/string that can be formatted by`formatTime`.\n }\n}\n```\n\nBoth `formatTime` and `parseTime` need to be implemented\nto ensure the component works properly.",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/time-picker",
4
- "version": "24.0.0-alpha1",
4
+ "version": "24.0.0-alpha11",
5
5
  "description-markup": "markdown",
6
6
  "framework": "lit",
7
7
  "framework-config": {
@@ -16,7 +16,7 @@
16
16
  "elements": [
17
17
  {
18
18
  "name": "vaadin-time-picker",
19
- "description": "`<vaadin-time-picker>` is a Web Component providing a time-selection field.\n\n```html\n<vaadin-time-picker></vaadin-time-picker>\n```\n```js\ntimePicker.value = '14:30';\n```\n\nWhen the selected `value` is changed, a `value-changed` event is triggered.\n\n### Styling\n\nThe following custom properties are available for styling:\n\nCustom property | Description | Default\n----------------------------------------|----------------------------|---------\n`--vaadin-field-default-width` | Default width of the field | `12em`\n`--vaadin-combo-box-overlay-max-height` | Max height of the overlay | `65vh`\n\n`<vaadin-time-picker>` provides the same set of shadow DOM parts and state attributes as `<vaadin-text-field>`.\nSee [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-text-field) for the styling documentation.\n\nIn addition to `<vaadin-text-field>` parts, the following parts are available for theming:\n\nPart name | Description\n----------------|----------------\n`toggle-button` | The toggle button\n\nIn addition to `<vaadin-text-field>` state attributes, the following state attributes are available for theming:\n\nAttribute | Description\n----------|------------------------------------------\n`opened` | Set when the time-picker dropdown is open\n\n### Internal components\n\nIn addition to `<vaadin-time-picker>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-time-picker-combo-box>` - has the same API as [`<vaadin-combo-box-light>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-combo-box-light).\n- `<vaadin-time-picker-overlay>` - has the same API as [`<vaadin-overlay>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-overlay).\n- `<vaadin-time-picker-item>` - has the same API as [`<vaadin-item>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-item).\n- [`<vaadin-input-container>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha1/#/elements/vaadin-input-container) - an internal element wrapping the input.\n\nNote: the `theme` attribute value set on `<vaadin-time-picker>` is\npropagated to the internal components listed above.\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/custom-theme/styling-components) documentation.",
19
+ "description": "`<vaadin-time-picker>` is a Web Component providing a time-selection field.\n\n```html\n<vaadin-time-picker></vaadin-time-picker>\n```\n```js\ntimePicker.value = '14:30';\n```\n\nWhen the selected `value` is changed, a `value-changed` event is triggered.\n\n### Styling\n\nThe following custom properties are available for styling:\n\nCustom property | Description | Default\n----------------------------------------|----------------------------|---------\n`--vaadin-field-default-width` | Default width of the field | `12em`\n`--vaadin-combo-box-overlay-max-height` | Max height of the overlay | `65vh`\n\n`<vaadin-time-picker>` provides the same set of shadow DOM parts and state attributes as `<vaadin-text-field>`.\nSee [`<vaadin-text-field>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-text-field) for the styling documentation.\n\nIn addition to `<vaadin-text-field>` parts, the following parts are available for theming:\n\nPart name | Description\n----------------|----------------\n`toggle-button` | The toggle button\n\nIn addition to `<vaadin-text-field>` state attributes, the following state attributes are available for theming:\n\nAttribute | Description\n----------|------------------------------------------\n`opened` | Set when the time-picker dropdown is open\n\n### Internal components\n\nIn addition to `<vaadin-time-picker>` itself, the following internal\ncomponents are themable:\n\n- `<vaadin-time-picker-combo-box>` - has the same API as [`<vaadin-combo-box-light>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-combo-box-light).\n- `<vaadin-time-picker-overlay>` - has the same API as [`<vaadin-overlay>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-overlay).\n- `<vaadin-time-picker-item>` - has the same API as [`<vaadin-item>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-item).\n- [`<vaadin-input-container>`](https://cdn.vaadin.com/vaadin-web-components/24.0.0-alpha11/#/elements/vaadin-input-container) - an internal element wrapping the input.\n\nNote: the `theme` attribute value set on `<vaadin-time-picker>` is\npropagated to the internal components listed above.\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/custom-theme/styling-components) documentation.",
20
20
  "extension": true,
21
21
  "attributes": [
22
22
  {
@@ -68,13 +68,6 @@
68
68
  "kind": "expression"
69
69
  }
70
70
  },
71
- {
72
- "name": "?preventInvalidInput",
73
- "description": "When set to true, user is prevented from typing a value that\nconflicts with the given `pattern`.",
74
- "value": {
75
- "kind": "expression"
76
- }
77
- },
78
71
  {
79
72
  "name": "?opened",
80
73
  "description": "True if the dropdown is open, false otherwise.",
@@ -173,6 +166,13 @@
173
166
  "kind": "expression"
174
167
  }
175
168
  },
169
+ {
170
+ "name": ".overlayClass",
171
+ "description": "A space-delimited list of CSS class names to set on the overlay element.",
172
+ "value": {
173
+ "kind": "expression"
174
+ }
175
+ },
176
176
  {
177
177
  "name": ".i18n",
178
178
  "description": "The object used to localize this component.\nTo change the default localization, replace the entire\n_i18n_ object or just the property you want to modify.\n\nThe object has the following JSON structure:\n\n```\n{\n // A function to format given `Object` as\n // time string. Object is in the format `{ hours: ..., minutes: ..., seconds: ..., milliseconds: ... }`\n formatTime: (time) => {\n // returns a string representation of the given\n // object in `hh` / 'hh:mm' / 'hh:mm:ss' / 'hh:mm:ss.fff' - formats\n },\n\n // A function to parse the given text to an `Object` in the format\n // `{ hours: ..., minutes: ..., seconds: ..., milliseconds: ... }`.\n // Must properly parse (at least) text\n // formatted by `formatTime`.\n parseTime: text => {\n // Parses a string in object/string that can be formatted by`formatTime`.\n }\n}\n```\n\nBoth `formatTime` and `parseTime` need to be implemented\nto ensure the component works properly.",