Merge branch 'rc'

This commit is contained in:
Bram Kragten 2024-12-09 15:59:29 +01:00
commit f9844e8e58
5 changed files with 97 additions and 30 deletions

View File

@ -4,7 +4,6 @@ on:
release: release:
types: types:
- published - published
workflow_dispatch:
env: env:
PYTHON_VERSION: "3.12" PYTHON_VERSION: "3.12"
@ -82,3 +81,57 @@ jobs:
arch: amd64 arch: amd64
wheels-key: ${{ secrets.WHEELS_KEY }} wheels-key: ${{ secrets.WHEELS_KEY }}
requirements: "requirements.txt" requirements: "requirements.txt"
release-landing-page:
name: Release landing-page frontend
if: github.event.release.prerelease == false
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.1.0
with:
node-version-file: ".nvmrc"
cache: yarn
- name: Install dependencies
run: yarn install
- name: Download Translations
run: ./script/translations_download
env:
LOKALISE_TOKEN: ${{ secrets.LOKALISE_TOKEN }}
- name: Build landing-page
run: landing-page/script/build_landing_page
- name: Tar folder
run: tar -czf landing-page/home_assistant_frontend_landingpage-${{ github.event.release.tag_name }}.tar.gz -C landing-page/dist .
- name: Upload release asset
uses: softprops/action-gh-release@v2.1.0
with:
files: landing-page/home_assistant_frontend_landingpage-${{ github.event.release.tag_name }}.tar.gz
release-supervisor:
name: Release supervisor frontend
if: github.event.release.prerelease == false
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.1.0
with:
node-version-file: ".nvmrc"
cache: yarn
- name: Install dependencies
run: yarn install
- name: Download Translations
run: ./script/translations_download
env:
LOKALISE_TOKEN: ${{ secrets.LOKALISE_TOKEN }}
- name: Build supervisor
run: hassio/script/build_hassio
- name: Tar folder
run: tar -czf hassio/home_assistant_frontend_supervisor-${{ github.event.release.tag_name }}.tar.gz -C hassio/build .
- name: Upload release asset
uses: softprops/action-gh-release@v2.1.0
with:
files: hassio/home_assistant_frontend_supervisor-${{ github.event.release.tag_name }}.tar.gz

View File

@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "home-assistant-frontend" name = "home-assistant-frontend"
version = "20241127.6" version = "20241127.7"
license = {text = "Apache-2.0"} license = {text = "Apache-2.0"}
description = "The Home Assistant frontend" description = "The Home Assistant frontend"
readme = "README.md" readme = "README.md"

View File

@ -17,6 +17,7 @@ export const SCENE_IGNORED_DOMAINS = [
"person", "person",
"scene", "scene",
"schedule", "schedule",
"script",
"sensor", "sensor",
"sun", "sun",
"update", "update",

View File

@ -368,11 +368,12 @@ class HaConfigIntegrationPage extends SubscribeMixin(LitElement) {
` `
: nothing} : nothing}
${this._manifest?.is_built_in === false ${this._manifest?.is_built_in === false
? html`<div class="integration-info warn"> ? html`<div
<ha-svg-icon class=${`integration-info ${
class="warning" this._manifest.overwrites_built_in ? "error" : "warn"
path=${mdiPackageVariant} }`}
></ha-svg-icon> >
<ha-svg-icon path=${mdiPackageVariant}></ha-svg-icon>
<a <a
href=${documentationUrl( href=${documentationUrl(
this.hass, this.hass,
@ -382,7 +383,9 @@ class HaConfigIntegrationPage extends SubscribeMixin(LitElement) {
target="_blank" target="_blank"
> >
${this.hass.localize( ${this.hass.localize(
"ui.panel.config.integrations.config_entry.custom_integration" this._manifest.overwrites_built_in
? "ui.panel.config.integrations.config_entry.custom_overwrites_core"
: "ui.panel.config.integrations.config_entry.custom_integration"
)} )}
</a> </a>
</div>` </div>`
@ -627,8 +630,7 @@ class HaConfigIntegrationPage extends SubscribeMixin(LitElement) {
"ui.panel.config.integrations.integration_page.no_entries" "ui.panel.config.integrations.integration_page.no_entries"
)} )}
</div>` </div>`
: nothing} : html`<ha-md-list>
<ha-md-list>
${normalEntries.map( ${normalEntries.map(
(item, index) => (item, index) =>
html`${this._renderConfigEntry(item)} html`${this._renderConfigEntry(item)}
@ -639,7 +641,7 @@ class HaConfigIntegrationPage extends SubscribeMixin(LitElement) {
></ha-md-divider>` ></ha-md-divider>`
: nothing}` : nothing}`
)} )}
</ha-md-list> </ha-md-list>`}
<div class="card-actions"> <div class="card-actions">
<ha-button @click=${this._addIntegration}> <ha-button @click=${this._addIntegration}>
${this._manifest?.integration_type ${this._manifest?.integration_type
@ -1490,7 +1492,7 @@ class HaConfigIntegrationPage extends SubscribeMixin(LitElement) {
padding-bottom: 0; padding-bottom: 0;
} }
.no-entries { .no-entries {
padding-top: 12px; padding: 12px 16px;
} }
.logo-container { .logo-container {
display: flex; display: flex;
@ -1530,6 +1532,9 @@ class HaConfigIntegrationPage extends SubscribeMixin(LitElement) {
.integration-info.warn ha-svg-icon { .integration-info.warn ha-svg-icon {
color: var(--warning-color); color: var(--warning-color);
} }
.integration-info.error ha-svg-icon {
color: var(--error-color);
}
.integration-info.info ha-svg-icon { .integration-info.info ha-svg-icon {
color: var(--info-color); color: var(--info-color);
} }

View File

@ -42,6 +42,7 @@ import { showVoiceAssistantPipelineDetailDialog } from "./show-dialog-voice-assi
import { showVoiceCommandDialog } from "../../../dialogs/voice-command-dialog/show-ha-voice-command-dialog"; import { showVoiceCommandDialog } from "../../../dialogs/voice-command-dialog/show-ha-voice-command-dialog";
import { stopPropagation } from "../../../common/dom/stop_propagation"; import { stopPropagation } from "../../../common/dom/stop_propagation";
import { computeDomain } from "../../../common/entity/compute_domain"; import { computeDomain } from "../../../common/entity/compute_domain";
import { navigate } from "../../../common/navigate";
@customElement("assist-pref") @customElement("assist-pref")
export class AssistPref extends LitElement { export class AssistPref extends LitElement {
@ -159,14 +160,16 @@ export class AssistPref extends LitElement {
)} )}
<ha-svg-icon slot="graphic" .path=${mdiStar}></ha-svg-icon> <ha-svg-icon slot="graphic" .path=${mdiStar}></ha-svg-icon>
</ha-list-item> </ha-list-item>
<a href=${`/config/voice-assistants/debug/${pipeline.id}`}> <ha-list-item
<ha-list-item graphic="icon"> graphic="icon"
.id=${pipeline.id}
@request-selected=${this._debugPipeline}
>
${this.hass.localize( ${this.hass.localize(
"ui.panel.config.voice_assistants.assistants.pipeline.detail.debug" "ui.panel.config.voice_assistants.assistants.pipeline.detail.debug"
)} )}
<ha-svg-icon slot="graphic" .path=${mdiBug}></ha-svg-icon> <ha-svg-icon slot="graphic" .path=${mdiBug}></ha-svg-icon>
</ha-list-item> </ha-list-item>
</a>
<ha-list-item <ha-list-item
class="danger" class="danger"
graphic="icon" graphic="icon"
@ -233,6 +236,11 @@ export class AssistPref extends LitElement {
this._preferred = id; this._preferred = id;
} }
private async _debugPipeline(ev) {
const id = ev.currentTarget.id as string;
navigate(`/config/voice-assistants/debug/${id}`);
}
private async _deletePipeline(ev) { private async _deletePipeline(ev) {
const id = ev.currentTarget.id as string; const id = ev.currentTarget.id as string;
if (this._preferred === id) { if (this._preferred === id) {