1
0
mirror of https://github.com/home-assistant/frontend.git synced 2026-02-15 07:25:54 +00:00

Make addon selector an alias of app selector (#29222)

This commit is contained in:
Bram Kragten
2026-01-28 16:27:30 +01:00
committed by GitHub
parent 251a4ce5ce
commit 5a76c3f606
5 changed files with 9 additions and 46 deletions

View File

@@ -169,7 +169,7 @@ const SCHEMAS: {
{
title: "Selectors",
translations: {
addon: "App",
app: "App",
entity: "Entity",
device: "Device",
area: "Area",
@@ -188,7 +188,7 @@ const SCHEMAS: {
entities: "Entities",
},
schema: [
{ name: "addon", selector: { addon: {} } },
{ name: "app", selector: { app: {} } },
{ name: "entity", selector: { entity: {} } },
{
name: "Attribute",

View File

@@ -239,7 +239,7 @@ const SCHEMAS: {
selector: { config_entry: {} },
},
duration: { name: "Duration", selector: { duration: {} } },
addon: { name: "App", selector: { addon: {} } },
app: { name: "App", selector: { app: {} } },
number_box: {
name: "Number Box",
selector: {

View File

@@ -1,42 +1,8 @@
import { css, html, LitElement } from "lit";
import { customElement, property } from "lit/decorators";
import type { AddonSelector } from "../../data/selector";
import type { HomeAssistant } from "../../types";
import "../ha-addon-picker";
import { customElement } from "lit/decorators";
import { HaAppSelector } from "./ha-selector-app";
@customElement("ha-selector-addon")
export class HaAddonSelector extends LitElement {
@property({ attribute: false }) public hass!: HomeAssistant;
@property({ attribute: false }) public selector!: AddonSelector;
@property() public value?: any;
@property() public label?: string;
@property() public helper?: string;
@property({ type: Boolean }) public disabled = false;
@property({ type: Boolean }) public required = true;
protected render() {
return html`<ha-addon-picker
.hass=${this.hass}
.value=${this.value}
.label=${this.label}
.helper=${this.helper}
.disabled=${this.disabled}
.required=${this.required}
></ha-addon-picker>`;
}
static styles = css`
ha-addon-picker {
width: 100%;
}
`;
}
export class HaAddonSelector extends HaAppSelector {}
declare global {
interface HTMLElementTagNameMap {

View File

@@ -1,6 +1,6 @@
import { css, html, LitElement } from "lit";
import { customElement, property } from "lit/decorators";
import type { AppSelector } from "../../data/selector";
import type { AppSelector, AddonSelector } from "../../data/selector";
import type { HomeAssistant } from "../../types";
import "../ha-addon-picker";
@@ -8,7 +8,7 @@ import "../ha-addon-picker";
export class HaAppSelector extends LitElement {
@property({ attribute: false }) public hass!: HomeAssistant;
@property({ attribute: false }) public selector!: AppSelector;
@property({ attribute: false }) public selector!: AppSelector | AddonSelector;
@property() public value?: any;

View File

@@ -85,10 +85,7 @@ export interface ActionSelector {
}
export interface AddonSelector {
addon: {
name?: string;
slug?: string;
} | null;
addon: AppSelector["app"];
}
export interface AppSelector {