@vaadin/select
Advanced tools
Comparing version 23.1.1 to 23.2.0-alpha1
{ | ||
"name": "@vaadin/select", | ||
"version": "23.1.1", | ||
"version": "23.2.0-alpha1", | ||
"publishConfig": { | ||
@@ -23,6 +23,6 @@ "access": "public" | ||
"files": [ | ||
"lit.d.ts", | ||
"lit.js", | ||
"src", | ||
"theme", | ||
"lit.js", | ||
"lit.d.ts", | ||
"vaadin-*.d.ts", | ||
@@ -40,18 +40,18 @@ "vaadin-*.js" | ||
"@polymer/polymer": "^3.2.0", | ||
"@vaadin/button": "^23.1.1", | ||
"@vaadin/component-base": "^23.1.1", | ||
"@vaadin/field-base": "^23.1.1", | ||
"@vaadin/input-container": "^23.1.1", | ||
"@vaadin/item": "^23.1.1", | ||
"@vaadin/list-box": "^23.1.1", | ||
"@vaadin/lit-renderer": "^23.1.1", | ||
"@vaadin/vaadin-list-mixin": "^23.1.1", | ||
"@vaadin/vaadin-lumo-styles": "^23.1.1", | ||
"@vaadin/vaadin-material-styles": "^23.1.1", | ||
"@vaadin/vaadin-overlay": "^23.1.1", | ||
"@vaadin/vaadin-themable-mixin": "^23.1.1" | ||
"@vaadin/button": "23.2.0-alpha1", | ||
"@vaadin/component-base": "23.2.0-alpha1", | ||
"@vaadin/field-base": "23.2.0-alpha1", | ||
"@vaadin/input-container": "23.2.0-alpha1", | ||
"@vaadin/item": "23.2.0-alpha1", | ||
"@vaadin/list-box": "23.2.0-alpha1", | ||
"@vaadin/lit-renderer": "23.2.0-alpha1", | ||
"@vaadin/vaadin-list-mixin": "23.2.0-alpha1", | ||
"@vaadin/vaadin-lumo-styles": "23.2.0-alpha1", | ||
"@vaadin/vaadin-material-styles": "23.2.0-alpha1", | ||
"@vaadin/vaadin-overlay": "23.2.0-alpha1", | ||
"@vaadin/vaadin-themable-mixin": "23.2.0-alpha1" | ||
}, | ||
"devDependencies": { | ||
"@esm-bundle/chai": "^4.3.4", | ||
"@vaadin/polymer-legacy-adapter": "^23.1.1", | ||
"@vaadin/polymer-legacy-adapter": "23.2.0-alpha1", | ||
"@vaadin/testing-helpers": "^0.3.2", | ||
@@ -61,3 +61,3 @@ "lit": "^2.0.0", | ||
}, | ||
"gitHead": "390458d6519433a2dd502cef90da48e84573a275" | ||
"gitHead": "f226a2976c270d3d53c824f6e0a740a5d3382d91" | ||
} |
@@ -7,3 +7,2 @@ /** | ||
import { ElementMixin } from '@vaadin/component-base/src/element-mixin.js'; | ||
import { SlotMixin } from '@vaadin/component-base/src/slot-mixin.js'; | ||
import { DelegateFocusMixin } from '@vaadin/field-base/src/delegate-focus-mixin.js'; | ||
@@ -168,3 +167,3 @@ import { FieldMixin } from '@vaadin/field-base/src/field-mixin.js'; | ||
*/ | ||
declare class Select extends DelegateFocusMixin(FieldMixin(SlotMixin(ElementMixin(ThemableMixin(HTMLElement))))) { | ||
declare class Select extends DelegateFocusMixin(FieldMixin(ElementMixin(ThemableMixin(HTMLElement)))) { | ||
/** | ||
@@ -171,0 +170,0 @@ * An array containing items that will be rendered as the options of the select. |
@@ -14,4 +14,5 @@ /** | ||
import { MediaQueryController } from '@vaadin/component-base/src/media-query-controller.js'; | ||
import { SlotMixin } from '@vaadin/component-base/src/slot-mixin.js'; | ||
import { SlotController } from '@vaadin/component-base/src/slot-controller.js'; | ||
import { processTemplates } from '@vaadin/component-base/src/templates.js'; | ||
import { generateUniqueId } from '@vaadin/component-base/src/unique-id-utils.js'; | ||
import { DelegateFocusMixin } from '@vaadin/field-base/src/delegate-focus-mixin.js'; | ||
@@ -132,7 +133,6 @@ import { FieldMixin } from '@vaadin/field-base/src/field-mixin.js'; | ||
* @mixes ThemableMixin | ||
* @mixes SlotMixin | ||
* @mixes FieldMixin | ||
* @mixes DelegateFocusMixin | ||
*/ | ||
class Select extends DelegateFocusMixin(FieldMixin(SlotMixin(ElementMixin(ThemableMixin(PolymerElement))))) { | ||
class Select extends DelegateFocusMixin(FieldMixin(ElementMixin(ThemableMixin(PolymerElement)))) { | ||
static get is() { | ||
@@ -317,16 +317,4 @@ return 'vaadin-select'; | ||
/** @protected */ | ||
get slots() { | ||
return { | ||
...super.slots, | ||
value: () => { | ||
const button = document.createElement('vaadin-select-value-button'); | ||
button.setAttribute('aria-haspopup', 'listbox'); | ||
return button; | ||
}, | ||
}; | ||
} | ||
/** @protected */ | ||
get _valueButton() { | ||
return this._getDirectSlotChild('value'); | ||
return this._valueButtonController && this._valueButtonController.node; | ||
} | ||
@@ -337,5 +325,3 @@ | ||
// Ensure every instance has unique ID | ||
const uniqueId = (Select._uniqueSelectId = 1 + Select._uniqueSelectId || 0); | ||
this._fieldId = `${this.localName}-${uniqueId}`; | ||
this._fieldId = `${this.localName}-${generateUniqueId()}`; | ||
@@ -346,24 +332,5 @@ this._boundOnKeyDown = this._onKeyDown.bind(this); | ||
/** @protected */ | ||
connectedCallback() { | ||
super.connectedCallback(); | ||
if (this._valueButton) { | ||
this._valueButton.setAttribute('aria-labelledby', `${this._labelId} ${this._fieldId}`); | ||
this._updateAriaRequired(this.required); | ||
this._updateAriaExpanded(this.opened); | ||
this._setFocusElement(this._valueButton); | ||
this.ariaTarget = this._valueButton; | ||
this._valueButton.addEventListener('keydown', this._boundOnKeyDown); | ||
} | ||
} | ||
/** @protected */ | ||
disconnectedCallback() { | ||
super.disconnectedCallback(); | ||
if (this._valueButton) { | ||
this._valueButton.removeEventListener('keydown', this._boundOnKeyDown); | ||
} | ||
// Making sure the select is closed and removed from DOM after detaching the select. | ||
@@ -380,2 +347,21 @@ this.opened = false; | ||
this._valueButtonController = new SlotController( | ||
this, | ||
'value', | ||
() => document.createElement('vaadin-select-value-button'), | ||
(host, btn) => { | ||
this._setFocusElement(btn); | ||
this.ariaTarget = btn; | ||
btn.setAttribute('aria-haspopup', 'listbox'); | ||
btn.setAttribute('aria-labelledby', `${this._labelId} ${this._fieldId}`); | ||
this._updateAriaRequired(host.required); | ||
this._updateAriaExpanded(host.opened); | ||
btn.addEventListener('keydown', this._boundOnKeyDown); | ||
}, | ||
); | ||
this.addController(this._valueButtonController); | ||
this.addController( | ||
@@ -382,0 +368,0 @@ new MediaQueryController(this._phoneMediaQuery, (matches) => { |
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
61569
1337
1
+ Added@vaadin/button@23.2.0-alpha1(transitive)
+ Added@vaadin/component-base@23.2.0-alpha1(transitive)
+ Added@vaadin/field-base@23.2.0-alpha1(transitive)
+ Added@vaadin/icon@23.2.0-alpha1(transitive)
+ Added@vaadin/input-container@23.2.0-alpha1(transitive)
+ Added@vaadin/item@23.2.0-alpha1(transitive)
+ Added@vaadin/list-box@23.2.0-alpha1(transitive)
+ Added@vaadin/lit-renderer@23.2.0-alpha1(transitive)
+ Added@vaadin/vaadin-list-mixin@23.2.0-alpha1(transitive)
+ Added@vaadin/vaadin-lumo-styles@23.2.0-alpha1(transitive)
+ Added@vaadin/vaadin-material-styles@23.2.0-alpha1(transitive)
+ Added@vaadin/vaadin-overlay@23.2.0-alpha1(transitive)
+ Added@vaadin/vaadin-themable-mixin@23.2.0-alpha1(transitive)
- Removed@vaadin/button@23.5.12(transitive)
- Removed@vaadin/component-base@23.5.12(transitive)
- Removed@vaadin/field-base@23.5.12(transitive)
- Removed@vaadin/icon@23.5.12(transitive)
- Removed@vaadin/input-container@23.5.12(transitive)
- Removed@vaadin/item@23.5.12(transitive)
- Removed@vaadin/list-box@23.5.12(transitive)
- Removed@vaadin/lit-renderer@23.5.12(transitive)
- Removed@vaadin/overlay@23.5.12(transitive)
- Removed@vaadin/vaadin-list-mixin@23.5.12(transitive)
- Removed@vaadin/vaadin-lumo-styles@23.5.12(transitive)
- Removed@vaadin/vaadin-material-styles@23.5.12(transitive)
- Removed@vaadin/vaadin-overlay@23.5.12(transitive)
- Removed@vaadin/vaadin-themable-mixin@23.5.12(transitive)
Updated@vaadin/button@23.2.0-alpha1
Updated@vaadin/item@23.2.0-alpha1