From 052e659782541fb09274cc54bf86ef40770db593 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 15 Jun 2018 13:38:02 -0400 Subject: [PATCH] Clean up calendar panel (#1285) --- src/panels/calendar/ha-big-calendar.js | 44 ++---- src/panels/calendar/ha-panel-calendar.js | 190 +++++++++++------------ 2 files changed, 105 insertions(+), 129 deletions(-) diff --git a/src/panels/calendar/ha-big-calendar.js b/src/panels/calendar/ha-big-calendar.js index 7aa3d8e8f8..54145e5e2e 100644 --- a/src/panels/calendar/ha-big-calendar.js +++ b/src/panels/calendar/ha-big-calendar.js @@ -28,7 +28,17 @@ class HaBigCalendar extends EventsMixin(PolymerElement) {
`; } - update(events) { + static get properties() { + return { + events: { + type: Array, + observer: '_update', + }, + + }; + } + + _update(events) { const allViews = BigCalendar.Views.values; const BCElement = React.createElement( @@ -37,16 +47,16 @@ class HaBigCalendar extends EventsMixin(PolymerElement) { views: allViews, popup: true, onNavigate: (date, viewName) => this.fire('navigate', { date, viewName }), - onView: viewName => this.fire('view', { viewName }), - eventPropGetter: this.setEventStyle, - defaultView: this.defaultView, + onView: viewName => this.fire('view-changed', { viewName }), + eventPropGetter: this._setEventStyle, + defaultView: DEFAULT_VIEW, defaultDate: new Date(), } ); render(BCElement, this.$.root); } - setEventStyle(event) { + _setEventStyle(event) { // https://stackoverflow.com/questions/34587067/change-color-of-react-big-calendar-events const newStyle = {}; if (event.color) { @@ -54,30 +64,6 @@ class HaBigCalendar extends EventsMixin(PolymerElement) { } return { style: newStyle }; } - - static get properties() { - return { - dateUpdated: Object, - - viewUpdated: Object, - - defaultView: { - type: String, - value: DEFAULT_VIEW - }, - - defaultDate: { - type: Object, - value: new Date() - }, - - events: { - type: Array, - observer: 'update', - }, - - }; - } } customElements.define('ha-big-calendar', HaBigCalendar); diff --git a/src/panels/calendar/ha-panel-calendar.js b/src/panels/calendar/ha-panel-calendar.js index 36a8677b6d..b5a48a28a9 100644 --- a/src/panels/calendar/ha-panel-calendar.js +++ b/src/panels/calendar/ha-panel-calendar.js @@ -38,6 +38,11 @@ class HaPanelCalendar extends LocalizeMixin(PolymerElement) { #calendars { padding-right: 16px; width: 15%; + min-width: 170px; + } + + paper-item { + cursor: pointer; } div.all_calendars { @@ -50,6 +55,13 @@ class HaPanelCalendar extends LocalizeMixin(PolymerElement) { font-weight: normal; } + :host([narrow]) .content { + flex-direction: column; + } + :host([narrow]) #calendars { + margin-bottom: 24px; + width: 100%; + } @@ -63,10 +75,13 @@ class HaPanelCalendar extends LocalizeMixin(PolymerElement) {
-
- All calendars -
- +