1
0
mirror of https://github.com/home-assistant/frontend.git synced 2025-12-24 04:39:01 +00:00

Add timer card and badge (#810)

* Add timer card and badge

* Disable interval on disconnect

* Tests!

* One more test case

* Remove padStart

* Remove state from timer state card
This commit is contained in:
Paulus Schoutsen
2018-01-19 09:26:06 -08:00
committed by GitHub
parent 85d58ba134
commit 783f356679
17 changed files with 318 additions and 26 deletions

View File

@@ -9,14 +9,17 @@
import attributeClassNames from './common/util/attribute_class_names.js';
import canToggleDomain from './common/util/can_toggle_domain.js';
import canToggleState from './common/util/can_toggle_state.js';
import computeStateDomain from './common/util/compute_state_domain.js';
import computeStateDisplay from './common/util/compute_state_display.js';
import computeDomain from './common/util/compute_state_domain.js';
import durationToSeconds from './common/util/duration_to_seconds.js';
import featureClassNames from './common/util/feature_class_names.js';
import formatDate from './common/util/format_date.js';
import formatDateTime from './common/util/format_date_time.js';
import formatTime from './common/util/format_time.js';
import secondsToDuration from './common/util/seconds_to_duration.js';
import stateCardType from './common/util/state_card_type.js';
import stateMoreInfoType from './common/util/state_more_info_type.js';
import timerTimeRemaining from './common/util/timer_time_remaining.js';
window.hassUtil = window.hassUtil || {};
@@ -25,14 +28,19 @@ const language = navigator.languages ?
window.fecha.masks.haDateTime = window.fecha.masks.shortTime + ' ' + window.fecha.masks.mediumDate;
window.hassUtil.attributeClassNames = attributeClassNames;
window.hassUtil.canToggleDomain = canToggleDomain;
window.hassUtil.canToggleState = canToggleState;
window.hassUtil.computeDomain = computeStateDomain;
window.hassUtil.computeStateDisplay = computeStateDisplay;
window.hassUtil.featureClassNames = featureClassNames;
window.hassUtil.formatDate = dateObj => formatDate(dateObj, language);
window.hassUtil.formatDateTime = dateObj => formatDateTime(dateObj, language);
window.hassUtil.formatTime = dateObj => formatTime(dateObj, language);
window.hassUtil.stateCardType = stateCardType;
window.hassUtil.stateMoreInfoType = stateMoreInfoType;
Object.assign(window.hassUtil, {
attributeClassNames,
canToggleDomain,
canToggleState,
computeDomain,
computeStateDisplay,
durationToSeconds,
featureClassNames,
secondsToDuration,
stateCardType,
stateMoreInfoType,
timerTimeRemaining,
formatDate: dateObj => formatDate(dateObj, language),
formatDateTime: dateObj => formatDateTime(dateObj, language),
formatTime: dateObj => formatTime(dateObj, language),
});