diff --git a/src/panels/dev-info/ha-loaded-components.js b/src/panels/dev-info/ha-loaded-components.js new file mode 100644 index 0000000000..26b81830ee --- /dev/null +++ b/src/panels/dev-info/ha-loaded-components.js @@ -0,0 +1,59 @@ +import '@polymer/paper-dialog-scrollable/paper-dialog-scrollable.js'; +import '@polymer/paper-dialog/paper-dialog.js'; +import { html } from '@polymer/polymer/lib/utils/html-tag.js'; +import { PolymerElement } from '@polymer/polymer/polymer-element.js'; + +import '../../resources/ha-style.js'; + +import EventsMixin from '../../mixins/events-mixin.js'; + +/* + * @appliesMixin EventsMixin + */ +class HaLoadedComponents extends EventsMixin(PolymerElement) { + static get template() { + return html` + + +

Loaded Components

+ +

The following components are currently loaded:

+ +
+
+ `; + } + + static get properties() { + return { + _hass: Object, + _components: Array, + + _opened: { + type: Boolean, + value: false, + }, + }; + } + + ready() { + super.ready(); + } + + showDialog({ hass }) { + this.hass = hass; + this._opened = true; + this._components = this.hass.config.components.sort(); + setTimeout(() => this.$.dialog.center(), 0); + } +} + +customElements.define('ha-loaded-components', HaLoadedComponents); diff --git a/src/panels/dev-info/ha-panel-dev-info.js b/src/panels/dev-info/ha-panel-dev-info.js index 71abb887c5..a0ad9dcac9 100644 --- a/src/panels/dev-info/ha-panel-dev-info.js +++ b/src/panels/dev-info/ha-panel-dev-info.js @@ -17,7 +17,11 @@ import '../../resources/ha-style.js'; import formatDateTime from '../../common/datetime/format_date_time.js'; import formatTime from '../../common/datetime/format_time.js'; -class HaPanelDevInfo extends PolymerElement { +import EventsMixin from '../../mixins/events-mixin.js'; + +let registeredDialog = false; + +class HaPanelDevInfo extends EventsMixin(PolymerElement) { static get template() { return html`