@vaadin/select
Advanced tools
Comparing version 23.2.0-alpha3 to 23.2.0-alpha4
{ | ||
"name": "@vaadin/select", | ||
"version": "23.2.0-alpha3", | ||
"version": "23.2.0-alpha4", | ||
"publishConfig": { | ||
@@ -28,3 +28,5 @@ "access": "public" | ||
"vaadin-*.d.ts", | ||
"vaadin-*.js" | ||
"vaadin-*.js", | ||
"web-types.json", | ||
"web-types.lit.json" | ||
], | ||
@@ -40,18 +42,18 @@ "keywords": [ | ||
"@polymer/polymer": "^3.2.0", | ||
"@vaadin/button": "23.2.0-alpha3", | ||
"@vaadin/component-base": "23.2.0-alpha3", | ||
"@vaadin/field-base": "23.2.0-alpha3", | ||
"@vaadin/input-container": "23.2.0-alpha3", | ||
"@vaadin/item": "23.2.0-alpha3", | ||
"@vaadin/list-box": "23.2.0-alpha3", | ||
"@vaadin/lit-renderer": "23.2.0-alpha3", | ||
"@vaadin/vaadin-list-mixin": "23.2.0-alpha3", | ||
"@vaadin/vaadin-lumo-styles": "23.2.0-alpha3", | ||
"@vaadin/vaadin-material-styles": "23.2.0-alpha3", | ||
"@vaadin/vaadin-overlay": "23.2.0-alpha3", | ||
"@vaadin/vaadin-themable-mixin": "23.2.0-alpha3" | ||
"@vaadin/button": "23.2.0-alpha4", | ||
"@vaadin/component-base": "23.2.0-alpha4", | ||
"@vaadin/field-base": "23.2.0-alpha4", | ||
"@vaadin/input-container": "23.2.0-alpha4", | ||
"@vaadin/item": "23.2.0-alpha4", | ||
"@vaadin/list-box": "23.2.0-alpha4", | ||
"@vaadin/lit-renderer": "23.2.0-alpha4", | ||
"@vaadin/vaadin-list-mixin": "23.2.0-alpha4", | ||
"@vaadin/vaadin-lumo-styles": "23.2.0-alpha4", | ||
"@vaadin/vaadin-material-styles": "23.2.0-alpha4", | ||
"@vaadin/vaadin-overlay": "23.2.0-alpha4", | ||
"@vaadin/vaadin-themable-mixin": "23.2.0-alpha4" | ||
}, | ||
"devDependencies": { | ||
"@esm-bundle/chai": "^4.3.4", | ||
"@vaadin/polymer-legacy-adapter": "23.2.0-alpha3", | ||
"@vaadin/polymer-legacy-adapter": "23.2.0-alpha4", | ||
"@vaadin/testing-helpers": "^0.3.2", | ||
@@ -61,3 +63,7 @@ "lit": "^2.0.0", | ||
}, | ||
"gitHead": "06e5875be93ca50da2846dafc65a8531010c0576" | ||
"web-types": [ | ||
"web-types.json", | ||
"web-types.lit.json" | ||
], | ||
"gitHead": "cbf5f1d0f38ac9b81c65cf9ef5660182e176e598" | ||
} |
@@ -8,2 +8,3 @@ /** | ||
import { DelegateFocusMixin } from '@vaadin/field-base/src/delegate-focus-mixin.js'; | ||
import { DelegateStateMixin } from '@vaadin/field-base/src/delegate-state-mixin.js'; | ||
import { FieldMixin } from '@vaadin/field-base/src/field-mixin.js'; | ||
@@ -175,3 +176,5 @@ import { ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js'; | ||
*/ | ||
declare class Select extends DelegateFocusMixin(FieldMixin(ElementMixin(ThemableMixin(HTMLElement)))) { | ||
declare class Select extends DelegateFocusMixin( | ||
DelegateStateMixin(FieldMixin(ElementMixin(ThemableMixin(HTMLElement)))), | ||
) { | ||
/** | ||
@@ -260,3 +263,3 @@ * An array containing items that will be rendered as the options of the select. | ||
listener: (this: Select, ev: SelectEventMap[K]) => void, | ||
options?: boolean | AddEventListenerOptions, | ||
options?: AddEventListenerOptions | boolean, | ||
): void; | ||
@@ -267,3 +270,3 @@ | ||
listener: (this: Select, ev: SelectEventMap[K]) => void, | ||
options?: boolean | EventListenerOptions, | ||
options?: EventListenerOptions | boolean, | ||
): void; | ||
@@ -270,0 +273,0 @@ } |
@@ -18,2 +18,3 @@ /** | ||
import { DelegateFocusMixin } from '@vaadin/field-base/src/delegate-focus-mixin.js'; | ||
import { DelegateStateMixin } from '@vaadin/field-base/src/delegate-state-mixin.js'; | ||
import { FieldMixin } from '@vaadin/field-base/src/field-mixin.js'; | ||
@@ -136,4 +137,5 @@ import { fieldShared } from '@vaadin/field-base/src/styles/field-shared-styles.js'; | ||
* @mixes DelegateFocusMixin | ||
* @mixes DelegateStateMixin | ||
*/ | ||
class Select extends DelegateFocusMixin(FieldMixin(ElementMixin(ThemableMixin(PolymerElement)))) { | ||
class Select extends DelegateFocusMixin(DelegateStateMixin(FieldMixin(ElementMixin(ThemableMixin(PolymerElement))))) { | ||
static get is() { | ||
@@ -308,6 +310,9 @@ return 'vaadin-select'; | ||
static get delegateAttrs() { | ||
return [...super.delegateAttrs, 'invalid']; | ||
} | ||
static get observers() { | ||
return [ | ||
'_updateAriaExpanded(opened)', | ||
'_updateAriaRequired(required)', | ||
'_updateSelectedItem(value, _items, placeholder)', | ||
@@ -353,2 +358,3 @@ '_rendererChanged(renderer, _overlayElement)', | ||
this.ariaTarget = btn; | ||
this.stateTarget = btn; | ||
@@ -358,3 +364,2 @@ btn.setAttribute('aria-haspopup', 'listbox'); | ||
this._updateAriaRequired(host.required); | ||
this._updateAriaExpanded(host.opened); | ||
@@ -395,2 +400,17 @@ | ||
/** | ||
* Override an observer from `FieldMixin` | ||
* to validate when required is removed. | ||
* | ||
* @protected | ||
* @override | ||
*/ | ||
_requiredChanged(required) { | ||
super._requiredChanged(required); | ||
if (required === false) { | ||
this.validate(); | ||
} | ||
} | ||
/** | ||
* @param {SelectRenderer | undefined | null} renderer | ||
@@ -468,7 +488,6 @@ * @param {SelectOverlay | undefined} overlay | ||
// Skip validation for the initial empty string value | ||
if (value === '' && oldValue === undefined) { | ||
return; | ||
// Validate only if `value` changes after initialization. | ||
if (oldValue !== undefined) { | ||
this.validate(); | ||
} | ||
this.validate(); | ||
} | ||
@@ -566,9 +585,2 @@ | ||
/** @private */ | ||
_updateAriaRequired(required) { | ||
if (this._valueButton) { | ||
this._valueButton.setAttribute('aria-required', required ? 'true' : 'false'); | ||
} | ||
} | ||
/** @private */ | ||
_updateAriaLive(ariaLive) { | ||
@@ -714,3 +726,3 @@ if (this._valueButton) { | ||
checkValidity() { | ||
return this.disabled || !this.required || !!this.value; | ||
return !this.required || this.readonly || !!this.value; | ||
} | ||
@@ -717,0 +729,0 @@ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
88271
21
1860
15
4
29176
+ Added@vaadin/button@23.2.0-alpha4(transitive)
+ Added@vaadin/component-base@23.2.0-alpha4(transitive)
+ Added@vaadin/field-base@23.2.0-alpha4(transitive)
+ Added@vaadin/icon@23.2.0-alpha4(transitive)
+ Added@vaadin/input-container@23.2.0-alpha4(transitive)
+ Added@vaadin/item@23.2.0-alpha4(transitive)
+ Added@vaadin/list-box@23.2.0-alpha4(transitive)
+ Added@vaadin/lit-renderer@23.2.0-alpha4(transitive)
+ Added@vaadin/vaadin-list-mixin@23.2.0-alpha4(transitive)
+ Added@vaadin/vaadin-lumo-styles@23.2.0-alpha4(transitive)
+ Added@vaadin/vaadin-material-styles@23.2.0-alpha4(transitive)
+ Added@vaadin/vaadin-overlay@23.2.0-alpha4(transitive)
+ Added@vaadin/vaadin-themable-mixin@23.2.0-alpha4(transitive)
- Removed@vaadin/button@23.2.0-alpha3(transitive)
- Removed@vaadin/component-base@23.2.0-alpha3(transitive)
- Removed@vaadin/field-base@23.2.0-alpha3(transitive)
- Removed@vaadin/icon@23.2.0-alpha3(transitive)
- Removed@vaadin/input-container@23.2.0-alpha3(transitive)
- Removed@vaadin/item@23.2.0-alpha3(transitive)
- Removed@vaadin/list-box@23.2.0-alpha3(transitive)
- Removed@vaadin/lit-renderer@23.2.0-alpha3(transitive)
- Removed@vaadin/vaadin-list-mixin@23.2.0-alpha3(transitive)
- Removed@vaadin/vaadin-lumo-styles@23.2.0-alpha3(transitive)
- Removed@vaadin/vaadin-material-styles@23.2.0-alpha3(transitive)
- Removed@vaadin/vaadin-overlay@23.2.0-alpha3(transitive)
- Removed@vaadin/vaadin-themable-mixin@23.2.0-alpha3(transitive)
Updated@vaadin/button@23.2.0-alpha4
Updated@vaadin/item@23.2.0-alpha4