mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-29 04:06:35 +00:00
Split time_pattern triggers from time trigger (#2413)
* Split interval triggers from time trigger * Default smaller interval units to zero * Rename interval to schedule * Rename schedule trigger to time_pattern
This commit is contained in:
parent
42e60beb0d
commit
690188b4a3
52
src/panels/config/js/trigger/time_pattern.js
Normal file
52
src/panels/config/js/trigger/time_pattern.js
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
import { h, Component } from "preact";
|
||||||
|
|
||||||
|
import "@polymer/paper-input/paper-input";
|
||||||
|
|
||||||
|
import { onChangeEvent } from "../../../../common/preact/event";
|
||||||
|
|
||||||
|
export default class TimePatternTrigger extends Component {
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
|
||||||
|
this.onChange = onChangeEvent.bind(this, "trigger");
|
||||||
|
}
|
||||||
|
|
||||||
|
/* eslint-disable camelcase */
|
||||||
|
render({ trigger, localize }) {
|
||||||
|
const { hours, minutes, seconds } = trigger;
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<paper-input
|
||||||
|
label={localize(
|
||||||
|
"ui.panel.config.automation.editor.triggers.type.time_pattern.hours"
|
||||||
|
)}
|
||||||
|
name="hours"
|
||||||
|
value={hours}
|
||||||
|
onvalue-changed={this.onChange}
|
||||||
|
/>
|
||||||
|
<paper-input
|
||||||
|
label={localize(
|
||||||
|
"ui.panel.config.automation.editor.triggers.type.time_pattern.minutes"
|
||||||
|
)}
|
||||||
|
name="minutes"
|
||||||
|
value={minutes}
|
||||||
|
onvalue-changed={this.onChange}
|
||||||
|
/>
|
||||||
|
<paper-input
|
||||||
|
label={localize(
|
||||||
|
"ui.panel.config.automation.editor.triggers.type.time_pattern.seconds"
|
||||||
|
)}
|
||||||
|
name="seconds"
|
||||||
|
value={seconds}
|
||||||
|
onvalue-changed={this.onChange}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
TimePatternTrigger.defaultConfig = {
|
||||||
|
hours: "",
|
||||||
|
minutes: "",
|
||||||
|
seconds: "",
|
||||||
|
};
|
@ -8,6 +8,7 @@ import EventTrigger from "./event";
|
|||||||
import HassTrigger from "./homeassistant";
|
import HassTrigger from "./homeassistant";
|
||||||
import MQTTTrigger from "./mqtt";
|
import MQTTTrigger from "./mqtt";
|
||||||
import NumericStateTrigger from "./numeric_state";
|
import NumericStateTrigger from "./numeric_state";
|
||||||
|
import TimePatternTrigger from "./time_pattern";
|
||||||
import StateTrigger from "./state";
|
import StateTrigger from "./state";
|
||||||
import SunTrigger from "./sun";
|
import SunTrigger from "./sun";
|
||||||
import TemplateTrigger from "./template";
|
import TemplateTrigger from "./template";
|
||||||
@ -24,6 +25,7 @@ const TYPES = {
|
|||||||
sun: SunTrigger,
|
sun: SunTrigger,
|
||||||
template: TemplateTrigger,
|
template: TemplateTrigger,
|
||||||
time: TimeTrigger,
|
time: TimeTrigger,
|
||||||
|
time_pattern: TimePatternTrigger,
|
||||||
webhook: WebhookTrigger,
|
webhook: WebhookTrigger,
|
||||||
zone: ZoneTrigger,
|
zone: ZoneTrigger,
|
||||||
};
|
};
|
||||||
|
@ -628,6 +628,12 @@
|
|||||||
"label": "Time",
|
"label": "Time",
|
||||||
"at": "At"
|
"at": "At"
|
||||||
},
|
},
|
||||||
|
"time_pattern": {
|
||||||
|
"label": "Time Pattern",
|
||||||
|
"hours": "Hours",
|
||||||
|
"minutes": "Minutes",
|
||||||
|
"seconds": "Seconds"
|
||||||
|
},
|
||||||
"webhook": {
|
"webhook": {
|
||||||
"label": "Webhook",
|
"label": "Webhook",
|
||||||
"webhook_id": "Webhook ID"
|
"webhook_id": "Webhook ID"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user