Fix missing element tag definitions (#19329)

This commit is contained in:
Steve Repsher 2024-01-09 09:00:30 -05:00 committed by GitHub
parent 03a1c21f34
commit 3edc77c978
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
41 changed files with 220 additions and 39 deletions

View File

@ -80,7 +80,7 @@ const SCHEMAS: { name: string; conditions: ConditionWithShorthand[] }[] = [
];
@customElement("demo-automation-editor-condition")
class DemoHaAutomationEditorCondition extends LitElement {
export class DemoAutomationEditorCondition extends LitElement {
@state() private hass!: HomeAssistant;
@state() private _disabled = false;
@ -155,6 +155,6 @@ class DemoHaAutomationEditorCondition extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"demo-ha-automation-editor-condition": DemoHaAutomationEditorCondition;
"demo-automation-editor-condition": DemoAutomationEditorCondition;
}
}

View File

@ -126,7 +126,7 @@ const SCHEMAS: { name: string; triggers: Trigger[] }[] = [
];
@customElement("demo-automation-editor-trigger")
class DemoHaAutomationEditorTrigger extends LitElement {
export class DemoAutomationEditorTrigger extends LitElement {
@state() private hass!: HomeAssistant;
@state() private _disabled = false;
@ -201,6 +201,6 @@ class DemoHaAutomationEditorTrigger extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"demo-ha-automation-editor-trigger": DemoHaAutomationEditorTrigger;
"demo-automation-editor-trigger": DemoAutomationEditorTrigger;
}
}

View File

@ -55,7 +55,7 @@ const CONFIGS = [
];
@customElement("demo-lovelace-media-player-row")
class DemoHuiMediaPlayerRow extends LitElement {
export class DemoLovelaceMediaPlayerRow extends LitElement {
@query("#demos") private _demoRoot!: HTMLElement;
protected render(): TemplateResult {
@ -73,6 +73,6 @@ class DemoHuiMediaPlayerRow extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"demo-lovelace-media-player-rows": DemoHuiMediaPlayerRow;
"demo-lovelace-media-player-row": DemoLovelaceMediaPlayerRow;
}
}

View File

@ -59,3 +59,9 @@ export class DemoUtilLongPress extends LitElement {
}
`;
}
declare global {
interface HTMLElementTagNameMap {
"demo-misc-util-long-press": DemoUtilLongPress;
}
}

View File

@ -140,3 +140,9 @@ export class HassioAddonRepositoryEl extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"hassio-addon-repository": HassioAddonRepositoryEl;
}
}

View File

@ -248,3 +248,9 @@ export class HassioAddonStore extends LitElement {
`;
}
}
declare global {
interface HTMLElementTagNameMap {
"hassio-addon-store": HassioAddonStore;
}
}

View File

@ -151,3 +151,9 @@ export class HassioUpdate extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"hassio-update": HassioUpdate;
}
}

View File

@ -352,3 +352,9 @@ export class HaAuthorize extends litLocalizeLiteMixin(LitElement) {
}
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-authorize": HaAuthorize;
}
}

View File

@ -8,6 +8,9 @@ import "../components/ha-list-item";
import { AuthProvider } from "../data/auth";
declare global {
interface HTMLElementTagNameMap {
"ha-pick-auth-provider": HaPickAuthProvider;
}
interface HASSDomEvents {
"pick-auth-provider": AuthProvider;
}

View File

@ -1,18 +1,18 @@
import { mdiFlash, mdiFlashOff } from "@mdi/js";
import { HassEntity } from "home-assistant-js-websocket";
import {
css,
CSSResultGroup,
html,
LitElement,
PropertyValues,
TemplateResult,
css,
html,
} from "lit";
import { property, state } from "lit/decorators";
import { customElement, property, state } from "lit/decorators";
import { STATES_OFF } from "../../common/const";
import { computeStateDomain } from "../../common/entity/compute_state_domain";
import { computeStateName } from "../../common/entity/compute_state_name";
import { isUnavailableState, UNAVAILABLE, UNKNOWN } from "../../data/entity";
import { UNAVAILABLE, UNKNOWN, isUnavailableState } from "../../data/entity";
import { forwardHaptic } from "../../data/haptics";
import { HomeAssistant } from "../../types";
import "../ha-formfield";
@ -24,6 +24,7 @@ const isOn = (stateObj?: HassEntity) =>
!STATES_OFF.includes(stateObj.state) &&
!isUnavailableState(stateObj.state);
@customElement("ha-entity-toggle")
export class HaEntityToggle extends LitElement {
// hass is not a property so that we only re-render on stateObj changes
public hass?: HomeAssistant;
@ -175,4 +176,8 @@ export class HaEntityToggle extends LitElement {
}
}
customElements.define("ha-entity-toggle", HaEntityToggle);
declare global {
interface HTMLElementTagNameMap {
"ha-entity-toggle": HaEntityToggle;
}
}

View File

@ -19,7 +19,7 @@ export interface LevelDefinition {
}
@customElement("ha-gauge")
export class Gauge extends LitElement {
export class HaGauge extends LitElement {
@property({ type: Number }) public min = 0;
@property({ type: Number }) public max = 100;
@ -216,3 +216,9 @@ export class Gauge extends LitElement {
`;
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-gauge": HaGauge;
}
}

View File

@ -112,3 +112,9 @@ export class HaQrCode extends LitElement {
}
`;
}
declare global {
interface HTMLElementTagNameMap {
"ha-qr-code": HaQrCode;
}
}

View File

@ -41,6 +41,6 @@ export class HaBackupLocationSelector extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"ha-selector-backup-location": HaBackupLocationSelector;
"ha-selector-backup_location": HaBackupLocationSelector;
}
}

View File

@ -47,6 +47,6 @@ export class HaTTSVoiceSelector extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"ha-selector-tts-voice": HaTTSVoiceSelector;
"ha-selector-tts_voice": HaTTSVoiceSelector;
}
}

View File

@ -39,6 +39,6 @@ export class HaSelectorUiAction extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"ha-selector-ui-action": HaSelectorUiAction;
"ha-selector-ui_action": HaSelectorUiAction;
}
}

View File

@ -36,6 +36,6 @@ export class HaSelectorUiColor extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"ha-selector-ui-color": HaSelectorUiColor;
"ha-selector-ui_color": HaSelectorUiColor;
}
}

View File

@ -17,7 +17,7 @@ export const passiveEventOptionsIfSupported = supportsPassiveEventListener
: undefined;
@customElement("ha-two-pane-top-app-bar-fixed")
export abstract class TopAppBarBaseBase extends BaseElement {
export class TopAppBarBaseBase extends BaseElement {
protected override mdcFoundation!: MDCFixedTopAppBarFoundation;
protected override mdcFoundationClass = MDCFixedTopAppBarFoundation;
@ -323,3 +323,9 @@ export abstract class TopAppBarBaseBase extends BaseElement {
`,
];
}
declare global {
interface HTMLElementTagNameMap {
"ha-two-pane-top-app-bar-fixed": TopAppBarBaseBase;
}
}

View File

@ -15,7 +15,7 @@ import { HomeAssistant } from "../../../../../../types";
import { formatAsPaddedHex } from "../../../../integrations/integration-panels/zha/functions";
@customElement("ha-device-info-zha")
export class HaDeviceActionsZha extends LitElement {
export class HaDeviceInfoZha extends LitElement {
@property({ attribute: false }) public hass!: HomeAssistant;
@property() public device!: DeviceRegistryEntry;
@ -98,3 +98,9 @@ export class HaDeviceActionsZha extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-device-info-zha": HaDeviceInfoZha;
}
}

View File

@ -33,7 +33,7 @@ import "../../entity-registry-settings-editor";
import type { EntityRegistrySettingsEditor } from "../../entity-registry-settings-editor";
@customElement("entity-settings-helper-tab")
export class EntityRegistrySettingsHelper extends LitElement {
export class EntitySettingsHelperTab extends LitElement {
@property({ attribute: false }) public hass!: HomeAssistant;
@property() public entry!: ExtEntityRegistryEntry;
@ -226,6 +226,6 @@ export class EntityRegistrySettingsHelper extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"entity-platform-helper-tab": EntityRegistrySettingsHelper;
"entity-settings-helper-tab": EntitySettingsHelperTab;
}
}

View File

@ -418,3 +418,9 @@ export class HaConfigHelpers extends SubscribeMixin(LitElement) {
showHelperDetailDialog(this, {});
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-config-helpers": HaConfigHelpers;
}
}

View File

@ -210,3 +210,9 @@ export class MatterConfigDashboard extends LitElement {
`,
];
}
declare global {
interface HTMLElementTagNameMap {
"matter-config-dashboard": MatterConfigDashboard;
}
}

View File

@ -16,7 +16,7 @@ import "./mqtt-subscribe-card";
const qosLevel = ["0", "1", "2"];
@customElement("mqtt-config-panel")
class HaPanelDevMqtt extends LitElement {
export class MQTTConfigPanel extends LitElement {
@property({ attribute: false }) public hass!: HomeAssistant;
@property({ type: Boolean }) public narrow!: boolean;
@ -248,6 +248,6 @@ class HaPanelDevMqtt extends LitElement {
declare global {
interface HTMLElementTagNameMap {
"developer-tools-mqtt": HaPanelDevMqtt;
"mqtt-config-panel": MQTTConfigPanel;
}
}

View File

@ -198,3 +198,9 @@ export class ZHAAddGroupPage extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"zha-add-group-page": ZHAAddGroupPage;
}
}

View File

@ -324,3 +324,9 @@ export class ZHAGroupPage extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"zha-group-page": ZHAGroupPage;
}
}

View File

@ -472,3 +472,9 @@ export class ZHANetworkVisualizationPage extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"zha-network-visualization-page": ZHANetworkVisualizationPage;
}
}

View File

@ -407,3 +407,9 @@ export class HaConfigLovelaceDashboards extends LitElement {
});
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-config-lovelace-dashboards": HaConfigLovelaceDashboards;
}
}

View File

@ -253,3 +253,9 @@ export class HaConfigLovelaceRescources extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-config-lovelace-resources": HaConfigLovelaceRescources;
}
}

View File

@ -2,7 +2,7 @@ import { mdiPlus } from "@mdi/js";
import "@polymer/paper-item/paper-icon-item";
import "@polymer/paper-item/paper-item-body";
import { css, CSSResultGroup, html, LitElement, nothing } from "lit";
import { property, state } from "lit/decorators";
import { customElement, property, state } from "lit/decorators";
import { stringCompare } from "../../../common/string/compare";
import "../../../components/ha-card";
import "../../../components/ha-fab";
@ -31,7 +31,8 @@ import {
showPersonDetailDialog,
} from "./show-dialog-person-detail";
class HaConfigPerson extends LitElement {
@customElement("ha-config-person")
export class HaConfigPerson extends LitElement {
@property({ attribute: false }) public hass?: HomeAssistant;
@property() public isWide?: boolean;
@ -292,4 +293,8 @@ class HaConfigPerson extends LitElement {
}
}
customElements.define("ha-config-person", HaConfigPerson);
declare global {
interface HTMLElementTagNameMap {
"ha-config-person": HaConfigPerson;
}
}

View File

@ -96,3 +96,9 @@ export class HaConfigVoiceAssistantsAssistants extends LitElement {
}
`;
}
declare global {
interface HTMLElementTagNameMap {
"ha-config-voice-assistants-assistants": HaConfigVoiceAssistantsAssistants;
}
}

View File

@ -548,3 +548,9 @@ export class HaConfigZone extends SubscribeMixin(LitElement) {
`;
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-config-zone": HaConfigZone;
}
}

View File

@ -166,3 +166,9 @@ export class EnergyViewStrategy extends ReactiveElement {
return view;
}
}
declare global {
interface HTMLElementTagNameMap {
"energy-view-strategy": EnergyViewStrategy;
}
}

View File

@ -274,3 +274,9 @@ export class HaPanelLogbook extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-panel-logbook": HaPanelLogbook;
}
}

View File

@ -1,5 +1,5 @@
import { PropertyValues, ReactiveElement } from "lit";
import { property, state } from "lit/decorators";
import { customElement, property, state } from "lit/decorators";
import { HomeAssistant } from "../../../types";
import { evaluateFilter } from "../common/evaluate-filter";
import { processConfigEntities } from "../common/process-config-entities";
@ -8,7 +8,11 @@ import { EntityFilterEntityConfig } from "../entity-rows/types";
import { LovelaceBadge } from "../types";
import { EntityFilterBadgeConfig } from "./types";
class EntityFilterBadge extends ReactiveElement implements LovelaceBadge {
@customElement("hui-entity-filter-badge")
export class HuiEntityFilterBadge
extends ReactiveElement
implements LovelaceBadge
{
@property({ attribute: false }) public hass!: HomeAssistant;
@state() private _config?: EntityFilterBadgeConfig;
@ -153,4 +157,9 @@ class EntityFilterBadge extends ReactiveElement implements LovelaceBadge {
return false;
}
}
customElements.define("hui-entity-filter-badge", EntityFilterBadge);
declare global {
interface HTMLElementTagNameMap {
"hui-entity-filter-badge": HuiEntityFilterBadge;
}
}

View File

@ -1,5 +1,5 @@
import { PropertyValues, ReactiveElement } from "lit";
import { property, state } from "lit/decorators";
import { customElement, property, state } from "lit/decorators";
import { LovelaceCardConfig } from "../../../data/lovelace/config/card";
import { HomeAssistant } from "../../../types";
import { computeCardSize } from "../common/compute-card-size";
@ -11,7 +11,11 @@ import { EntityFilterEntityConfig } from "../entity-rows/types";
import { LovelaceCard } from "../types";
import { EntityFilterCardConfig } from "./types";
class EntityFilterCard extends ReactiveElement implements LovelaceCard {
@customElement("hui-entity-filter-card")
export class HuiEntityFilterCard
extends ReactiveElement
implements LovelaceCard
{
public static getStubConfig(
hass: HomeAssistant,
entities: string[],
@ -230,4 +234,9 @@ class EntityFilterCard extends ReactiveElement implements LovelaceCard {
this._element = newCardEl;
}
}
customElements.define("hui-entity-filter-card", EntityFilterCard);
declare global {
interface HTMLElementTagNameMap {
"hui-entity-filter-card": HuiEntityFilterCard;
}
}

View File

@ -1,8 +1,10 @@
import { css, CSSResultGroup } from "lit";
import { customElement } from "lit/decorators";
import { computeCardSize } from "../common/compute-card-size";
import { HuiStackCard } from "./hui-stack-card";
class HuiHorizontalStackCard extends HuiStackCard {
@customElement("hui-horizontal-stack-card")
export class HuiHorizontalStackCard extends HuiStackCard {
public async getCardSize(): Promise<number> {
if (!this._cards) {
return 0;
@ -48,8 +50,6 @@ class HuiHorizontalStackCard extends HuiStackCard {
declare global {
interface HTMLElementTagNameMap {
"hui-horitzontal-stack-card": HuiHorizontalStackCard;
"hui-horizontal-stack-card": HuiHorizontalStackCard;
}
}
customElements.define("hui-horizontal-stack-card", HuiHorizontalStackCard);

View File

@ -6,7 +6,7 @@ import {
html,
nothing,
} from "lit";
import { property } from "lit/decorators";
import { customElement, property } from "lit/decorators";
import { classMap } from "lit/directives/class-map";
import { ifDefined } from "lit/directives/if-defined";
import { DOMAINS_INPUT_ROW } from "../../../common/const";
@ -24,7 +24,8 @@ import { handleAction } from "../common/handle-action";
import { hasAction } from "../common/has-action";
import { createEntityNotFoundWarning } from "./hui-warning";
class HuiGenericEntityRow extends LitElement {
@customElement("hui-generic-entity-row")
export class HuiGenericEntityRow extends LitElement {
@property({ attribute: false }) public hass?: HomeAssistant;
@property() public config?: EntitiesCardEntityConfig;
@ -249,4 +250,9 @@ class HuiGenericEntityRow extends LitElement {
`;
}
}
customElements.define("hui-generic-entity-row", HuiGenericEntityRow);
declare global {
interface HTMLElementTagNameMap {
"hui-generic-entity-row": HuiGenericEntityRow;
}
}

View File

@ -459,3 +459,9 @@ export class LovelacePanel extends LitElement {
}
}
}
declare global {
interface HTMLElementTagNameMap {
"ha-panel-lovelace": LovelacePanel;
}
}

View File

@ -33,3 +33,9 @@ export class OriginalStatesDashboardStrategy extends ReactiveElement {
);
}
}
declare global {
interface HTMLElementTagNameMap {
"original-states-dashboard-strategy": OriginalStatesDashboardStrategy;
}
}

View File

@ -75,3 +75,9 @@ export class OriginalStatesViewStrategy extends ReactiveElement {
return view;
}
}
declare global {
interface HTMLElementTagNameMap {
"original-states-view-strategy": OriginalStatesViewStrategy;
}
}

View File

@ -54,3 +54,9 @@ export class StateCardUpdate extends LitElement {
];
}
}
declare global {
interface HTMLElementTagNameMap {
"state-card-update": StateCardUpdate;
}
}

View File

@ -29,7 +29,7 @@
"rules": {
// Custom elements
"no-unclosed-tag": "warning",
"no-missing-element-type-definition": "warning",
"no-missing-element-type-definition": "error",
// Binding names
"no-legacy-attribute": "error",
// Binding types