Skip to content

Commit 0010bf5

Browse files
authoredFeb 23, 2022
Input conversion in dev tools (home-assistant#11795)
1 parent 6e2e80a commit 0010bf5

File tree

9 files changed

+80
-36
lines changed

9 files changed

+80
-36
lines changed
 

‎README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
This is the repository for the official [Home Assistant](https://home-assistant.io) frontend.
44

5-
[![Screenshot of the frontend](https://raw.githubusercontent.com/home-assistant/home-assistant-polymer/master/docs/screenshot.png)](https://demo.home-assistant.io/)
5+
[![Screenshot of the frontend](https://raw.githubusercontent.com/home-assistant/frontend/master/docs/screenshot.png)](https://demo.home-assistant.io/)
66

77
- [View demo of Home Assistant](https://demo.home-assistant.io/)
88
- [More information about Home Assistant](https://home-assistant.io)

‎src/dialogs/generic/dialog-box.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ class DialogBox extends LitElement {
7575
? html`
7676
<ha-textfield
7777
dialogInitialFocus
78-
.value=${this._value}
78+
.value=${this._value || ""}
7979
@keyup=${this._handleKeyUp}
8080
@change=${this._valueChanged}
8181
.label=${this._params.inputLabel

‎src/panels/developer-tools/event/developer-tools-event.js

+13-4
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import "@material/mwc-button";
22
import "@polymer/iron-flex-layout/iron-flex-layout-classes";
3-
import "@polymer/paper-input/paper-input";
43
import { html } from "@polymer/polymer/lib/utils/html-tag";
54
/* eslint-plugin-disable lit */
65
import { PolymerElement } from "@polymer/polymer/polymer-element";
76
import { load } from "js-yaml";
87
import "../../../components/ha-code-editor";
8+
import "../../../components/ha-textfield";
99
import { showAlertDialog } from "../../../dialogs/generic/show-dialog-box";
1010
import { EventsMixin } from "../../../mixins/events-mixin";
1111
import LocalizeMixin from "../../../mixins/localize-mixin";
@@ -46,6 +46,10 @@ class HaPanelDevEvent extends EventsMixin(LocalizeMixin(PolymerElement)) {
4646
margin-top: 8px;
4747
}
4848
49+
ha-textfield {
50+
display: block;
51+
}
52+
4953
.code-editor {
5054
margin-right: 16px;
5155
}
@@ -78,14 +82,15 @@ class HaPanelDevEvent extends EventsMixin(LocalizeMixin(PolymerElement)) {
7882
</a>
7983
</p>
8084
<div class="inputs">
81-
<paper-input
85+
<ha-textfield
8286
label="[[localize(
8387
'ui.panel.developer-tools.tabs.events.type'
8488
)]]"
8589
autofocus
8690
required
87-
value="{{eventType}}"
88-
></paper-input>
91+
value="[[eventType]]"
92+
on-change="eventTypeChanged"
93+
></ha-textfield>
8994
<p>[[localize( 'ui.panel.developer-tools.tabs.events.data' )]]</p>
9095
</div>
9196
<div class="code-editor">
@@ -150,6 +155,10 @@ class HaPanelDevEvent extends EventsMixin(LocalizeMixin(PolymerElement)) {
150155
this.eventType = ev.detail.eventType;
151156
}
152157

158+
eventTypeChanged(ev) {
159+
this.eventType = ev.target.value;
160+
}
161+
153162
_computeParsedEventData(eventData) {
154163
try {
155164
return eventData.trim() ? load(eventData) : {};

‎src/panels/developer-tools/event/event-subscribe-card.ts

+8-10
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import "@material/mwc-button";
2-
import "@polymer/paper-input/paper-input";
32
import { HassEvent } from "home-assistant-js-websocket";
43
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
54
import { customElement, property, state } from "lit/decorators";
65
import { formatTime } from "../../../common/datetime/format_time";
76
import "../../../components/ha-card";
8-
import { PolymerChangedEvent } from "../../../polymer-types";
7+
import "../../../components/ha-textfield";
98
import { HomeAssistant } from "../../../types";
109

1110
@customElement("event-subscribe-card")
@@ -39,7 +38,7 @@ class EventSubscribeCard extends LitElement {
3938
)}
4039
>
4140
<form>
42-
<paper-input
41+
<ha-textfield
4342
.label=${this._subscribed
4443
? this.hass!.localize(
4544
"ui.panel.developer-tools.tabs.events.listening_to"
@@ -49,8 +48,8 @@ class EventSubscribeCard extends LitElement {
4948
)}
5049
.disabled=${this._subscribed !== undefined}
5150
.value=${this._eventType}
52-
@value-changed=${this._valueChanged}
53-
></paper-input>
51+
@input=${this._valueChanged}
52+
></ha-textfield>
5453
<mwc-button
5554
.disabled=${this._eventType === ""}
5655
@click=${this._handleSubmit}
@@ -84,8 +83,8 @@ class EventSubscribeCard extends LitElement {
8483
`;
8584
}
8685

87-
private _valueChanged(ev: PolymerChangedEvent<string>): void {
88-
this._eventType = ev.detail.value;
86+
private _valueChanged(ev): void {
87+
this._eventType = ev.target.value;
8988
}
9089

9190
private async _handleSubmit(): Promise<void> {
@@ -116,9 +115,8 @@ class EventSubscribeCard extends LitElement {
116115
display: block;
117116
padding: 0 0 16px 16px;
118117
}
119-
paper-input {
120-
display: inline-block;
121-
width: 200px;
118+
ha-textfield {
119+
width: 300px;
122120
}
123121
mwc-button {
124122
vertical-align: middle;

‎src/panels/developer-tools/state/developer-tools-state.js

+49-14
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import {
55
mdiInformationOutline,
66
mdiRefresh,
77
} from "@mdi/js";
8-
import "@polymer/paper-input/paper-input";
98
import { html } from "@polymer/polymer/lib/utils/html-tag";
109
/* eslint-plugin-disable lit */
1110
import { PolymerElement } from "@polymer/polymer/polymer-element";
@@ -42,6 +41,14 @@ class HaPanelDevState extends EventsMixin(LocalizeMixin(PolymerElement)) {
4241
padding: 16px;
4342
}
4443
44+
ha-textfield {
45+
display: block;
46+
}
47+
48+
.state-input {
49+
margin-top: 16px;
50+
}
51+
4552
ha-expansion-panel {
4653
margin: 0 8px 16px;
4754
}
@@ -74,6 +81,14 @@ class HaPanelDevState extends EventsMixin(LocalizeMixin(PolymerElement)) {
7481
);
7582
}
7683
84+
.filters th {
85+
padding: 0;
86+
}
87+
88+
.filters ha-textfield {
89+
--mdc-text-field-fill-color: transparent;
90+
}
91+
7792
th.attributes {
7893
position: relative;
7994
}
@@ -164,16 +179,17 @@ class HaPanelDevState extends EventsMixin(LocalizeMixin(PolymerElement)) {
164179
on-change="entityIdChanged"
165180
allow-custom-entity
166181
></ha-entity-picker>
167-
<paper-input
182+
<ha-textfield
168183
label="[[localize('ui.panel.developer-tools.tabs.states.state')]]"
169184
required
170185
autocapitalize="none"
171186
autocomplete="off"
172187
autocorrect="off"
173188
spellcheck="false"
174-
value="{{_state}}"
189+
value="[[_state]]"
190+
on-change="stateChanged"
175191
class="state-input"
176-
></paper-input>
192+
></ha-textfield>
177193
<p>
178194
[[localize('ui.panel.developer-tools.tabs.states.state_attributes')]]
179195
</p>
@@ -234,27 +250,30 @@ class HaPanelDevState extends EventsMixin(LocalizeMixin(PolymerElement)) {
234250
></ha-checkbox>
235251
</th>
236252
</tr>
237-
<tr>
253+
<tr class="filters">
238254
<th>
239-
<paper-input
255+
<ha-textfield
240256
label="[[localize('ui.panel.developer-tools.tabs.states.filter_entities')]]"
241257
type="search"
242-
value="{{_entityFilter}}"
243-
></paper-input>
258+
value="[[_entityFilter]]"
259+
on-input="_entityFilterChanged"
260+
></ha-textfield>
244261
</th>
245262
<th>
246-
<paper-input
263+
<ha-textfield
247264
label="[[localize('ui.panel.developer-tools.tabs.states.filter_states')]]"
248265
type="search"
249-
value="{{_stateFilter}}"
250-
></paper-input>
266+
value="[[_stateFilter]]"
267+
on-input="_stateFilterChanged"
268+
></ha-textfield>
251269
</th>
252270
<th hidden$="[[!computeShowAttributes(narrow, _showAttributes)]]">
253-
<paper-input
271+
<ha-textfield
254272
label="[[localize('ui.panel.developer-tools.tabs.states.filter_attributes')]]"
255273
type="search"
256-
value="{{_attributeFilter}}"
257-
></paper-input>
274+
value="[[_attributeFilter]]"
275+
on-input="_attributeFilterChanged"
276+
></ha-textfield>
258277
</th>
259278
</tr>
260279
<tr hidden$="[[!computeShowEntitiesPlaceholder(_entities)]]">
@@ -416,6 +435,22 @@ class HaPanelDevState extends EventsMixin(LocalizeMixin(PolymerElement)) {
416435
this._expanded = true;
417436
}
418437

438+
stateChanged(ev) {
439+
this._state = ev.target.value;
440+
}
441+
442+
_entityFilterChanged(ev) {
443+
this._entityFilter = ev.target.value;
444+
}
445+
446+
_stateFilterChanged(ev) {
447+
this._stateFilter = ev.target.value;
448+
}
449+
450+
_attributeFilterChanged(ev) {
451+
this._attributeFilter = ev.target.value;
452+
}
453+
419454
_getHistoryURL(entityId, inputDate) {
420455
const date = new Date(inputDate);
421456
const hourBefore = addHours(date, -1).toISOString();

‎src/panels/lovelace/editor/card-editor/hui-card-preview.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import "@polymer/paper-input/paper-textarea";
21
import { PropertyValues, ReactiveElement } from "lit";
32
import { property } from "lit/decorators";
43
import { computeRTL } from "../../../../common/util/compute_rtl";

‎src/panels/lovelace/editor/config-elements/hui-conditional-card-editor.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,7 @@ export class HuiConditionalCardEditor
333333
.condition .state mwc-select {
334334
margin-right: 16px;
335335
}
336-
.condition .state paper-input {
336+
.condition .state ha-textfield {
337337
flex-grow: 1;
338338
}
339339

‎src/panels/mailbox/ha-panel-mailbox.js

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import "@material/mwc-button";
22
import "@polymer/app-layout/app-header/app-header";
33
import "@polymer/app-layout/app-toolbar/app-toolbar";
4-
import "@polymer/paper-input/paper-textarea";
54
import "@polymer/paper-item/paper-item";
65
import "@polymer/paper-item/paper-item-body";
76
import "@polymer/paper-tabs/paper-tab";

‎src/panels/profile/ha-long-lived-access-token-dialog.ts

+7-3
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
import "@material/mwc-button";
2-
import "@polymer/paper-input/paper-input";
32
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
43
import { customElement, property, state } from "lit/decorators";
54
import { fireEvent } from "../../common/dom/fire_event";
65
import { createCloseHeading } from "../../components/ha-dialog";
76
import { haStyleDialog } from "../../resources/styles";
87
import type { HomeAssistant } from "../../types";
98
import { LongLivedAccessTokenDialogParams } from "./show-long-lived-access-token-dialog";
9+
import "../../components/ha-textfield";
1010

1111
const QR_LOGO_URL = "/static/icons/favicon-192x192.png";
1212

@@ -41,14 +41,15 @@ export class HaLongLivedAccessTokenDialog extends LitElement {
4141
@closed=${this.closeDialog}
4242
>
4343
<div>
44-
<paper-input
44+
<ha-textfield
4545
dialogInitialFocus
4646
.value=${this._params.token}
4747
.label=${this.hass.localize(
4848
"ui.panel.profile.long_lived_access_tokens.prompt_copy_token"
4949
)}
5050
type="text"
51-
></paper-input>
51+
readOnly
52+
></ha-textfield>
5253
<div id="qr">
5354
${this._qrCode
5455
? this._qrCode
@@ -94,6 +95,9 @@ export class HaLongLivedAccessTokenDialog extends LitElement {
9495
#qr {
9596
text-align: center;
9697
}
98+
ha-textfield {
99+
display: block;
100+
}
97101
`,
98102
];
99103
}

0 commit comments

Comments
 (0)
Please sign in to comment.