1
0
mirror of https://github.com/home-assistant/frontend.git synced 2025-12-20 02:38:53 +00:00
Files
frontend/js/automation-editor/trigger/state.js
Paulus Schoutsen 0707528bd7 Entity dropdown improvement (#674)
* Ignore hass changes while dropdown is open

* Upgrade vaadin-combo-box

* Fix styling on dev-service panel

* Fix styling for ha-entity-dropdown

* Fix height vaadin-combo-box dropdown

* Rename ha-entity-dropdown to ha-entity-picker

* More entity improvement (#675)

* Update script and automation editor to use entity picker

* Add entity and service picker to service dev panel

* Lint
2017-11-25 16:00:43 -08:00

54 lines
1.2 KiB
JavaScript

import { h, Component } from 'preact';
import { onChangeEvent } from '../../common/util/event.js';
export default class StateTrigger extends Component {
constructor() {
super();
this.onChange = onChangeEvent.bind(this, 'trigger');
this.entityPicked = this.entityPicked.bind(this);
}
entityPicked(ev) {
this.props.onChange(this.props.index, {
...this.props.trigger,
entity_id: ev.target.value,
});
}
/* eslint-disable camelcase */
render({ trigger, hass }) {
const { entity_id, to } = trigger;
const trgFrom = trigger.from;
const trgFor = trigger.for;
return (
<div>
<ha-entity-picker
value={entity_id}
onChange={this.entityPicked}
hass={hass}
allowCustomEntity
/>
<paper-input
label="From"
name="from"
value={trgFrom}
onChange={this.onChange}
/>
<paper-input
label="To"
name="to"
value={to}
onChange={this.onChange}
/>
{trgFor && <pre>For: {JSON.stringify(trgFor, null, 2)}</pre>}
</div>
);
}
}
StateTrigger.defaultConfig = {
entity_id: '',
};