From 236fa14ec34b5b4b19a624b1ae4c01418011abec Mon Sep 17 00:00:00 2001 From: Bram Kragten Date: Mon, 7 Feb 2022 17:52:44 +0100 Subject: [PATCH] Convert area-devices picker (#11588) --- .../device/ha-area-devices-picker.ts | 133 +++--------------- 1 file changed, 18 insertions(+), 115 deletions(-) diff --git a/src/components/device/ha-area-devices-picker.ts b/src/components/device/ha-area-devices-picker.ts index 67e01a131d..6ce007e441 100644 --- a/src/components/device/ha-area-devices-picker.ts +++ b/src/components/device/ha-area-devices-picker.ts @@ -1,20 +1,7 @@ import "@material/mwc-button/mwc-button"; -import { mdiCheck, mdiClose, mdiMenuDown, mdiMenuUp } from "@mdi/js"; -import "@polymer/paper-input/paper-input"; -import "@polymer/paper-item/paper-item"; -import "@polymer/paper-item/paper-item-body"; -import "@polymer/paper-listbox/paper-listbox"; -import "@vaadin/combo-box/theme/material/vaadin-combo-box-light"; import { UnsubscribeFunc } from "home-assistant-js-websocket"; -import { - css, - CSSResultGroup, - html, - LitElement, - PropertyValues, - TemplateResult, -} from "lit"; -import { ComboBoxLitRenderer, comboBoxRenderer } from "lit-vaadin-helpers"; +import { html, LitElement, PropertyValues, TemplateResult } from "lit"; +import { ComboBoxLitRenderer } from "lit-vaadin-helpers"; import { customElement, property, state } from "lit/decorators"; import memoizeOne from "memoize-one"; import { fireEvent } from "../../common/dom/fire_event"; @@ -50,36 +37,12 @@ interface AreaDevices { devices: string[]; } -// eslint-disable-next-line lit/prefer-static-styles -const rowRenderer: ComboBoxLitRenderer = (item) => html` - - - -
${item.name}
-
${item.devices.length} devices
-
-
`; +const rowRenderer: ComboBoxLitRenderer = ( + item +) => html` + ${item.name} + ${item.devices.length} devices +`; @customElement("ha-area-devices-picker") export class HaAreaDevicesPicker extends SubscribeMixin(LitElement) { @@ -117,9 +80,6 @@ export class HaAreaDevicesPicker extends SubscribeMixin(LitElement) { @property({ type: Array, attribute: "include-device-classes" }) public includeDeviceClasses?: string[]; - @property({ type: Boolean }) - private _opened?: boolean; - @state() private _areaPicker = true; @state() private _devices?: DeviceRegistryEntry[]; @@ -302,71 +262,30 @@ export class HaAreaDevicesPicker extends SubscribeMixin(LitElement) { `; } return html` - - -
- ${this.value - ? html` ` - : ""} - ${areas.length > 0 - ? html` - - ` - : ""} -
-
-
- Choose individual devices + + + Choose individual devices + `; } - private _clearValue(ev: Event) { - ev.stopPropagation(); - this._setValue([]); - } - private get _value() { return this.value || []; } - private _openedChanged(ev: PolymerChangedEvent) { - this._opened = ev.detail.value; - } - private async _switchPicker() { this._areaPicker = !this._areaPicker; } @@ -398,22 +317,6 @@ export class HaAreaDevicesPicker extends SubscribeMixin(LitElement) { fireEvent(this, "change"); }, 0); } - - static get styles(): CSSResultGroup { - return css` - .suffix { - display: flex; - } - ha-icon-button { - --mdc-icon-button-size: 24px; - padding: 0px 2px; - color: var(--secondary-text-color); - } - [hidden] { - display: none; - } - `; - } } declare global {