mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-23 17:26:42 +00:00
Merge pull request #6250 from home-assistant/dev
This commit is contained in:
commit
ff7731d063
@ -87,7 +87,7 @@
|
||||
"fuse.js": "^6.0.0",
|
||||
"google-timezones-json": "^1.0.2",
|
||||
"hls.js": "^0.12.4",
|
||||
"home-assistant-js-websocket": "^5.4.0",
|
||||
"home-assistant-js-websocket": "^5.4.1",
|
||||
"idb-keyval": "^3.2.0",
|
||||
"intl-messageformat": "^8.3.9",
|
||||
"js-yaml": "^3.13.1",
|
||||
|
@ -16,14 +16,31 @@ function today() {
|
||||
)}${String(now.getDate()).padStart(2, "0")}.0`;
|
||||
}
|
||||
|
||||
function auto(version) {
|
||||
const todayVersion = today();
|
||||
if (todayVersion !== version) {
|
||||
return todayVersion;
|
||||
}
|
||||
return patch(version);
|
||||
}
|
||||
|
||||
const methods = {
|
||||
patch,
|
||||
today,
|
||||
auto,
|
||||
};
|
||||
|
||||
async function main(args) {
|
||||
const method = args.length > 0 && methods[args[0]];
|
||||
const commit = args.length > 1 && args[1] == "--commit";
|
||||
let method;
|
||||
let commit;
|
||||
|
||||
if (args.length === 0) {
|
||||
method = methods.auto;
|
||||
commit = true;
|
||||
} else {
|
||||
method = args.length > 0 && methods[args[0]];
|
||||
commit = args.length > 1 && args[1] == "--commit";
|
||||
}
|
||||
|
||||
if (!method) {
|
||||
console.error(
|
||||
|
2
setup.py
2
setup.py
@ -2,7 +2,7 @@ from setuptools import setup, find_packages
|
||||
|
||||
setup(
|
||||
name="home-assistant-frontend",
|
||||
version="20200626.0",
|
||||
version="20200626.1",
|
||||
description="The Home Assistant frontend",
|
||||
url="https://github.com/home-assistant/home-assistant-polymer",
|
||||
author="The Home Assistant Authors",
|
||||
|
@ -13,6 +13,7 @@ import {
|
||||
STATE_NOT_RUNNING,
|
||||
STATE_RUNNING,
|
||||
} from "home-assistant-js-websocket";
|
||||
import { CustomPanelInfo } from "../data/panel_custom";
|
||||
|
||||
const CACHE_URL_PATHS = ["lovelace", "developer-tools"];
|
||||
const COMPONENTS = {
|
||||
@ -159,7 +160,17 @@ class PartialPanelResolver extends HassRouterPage {
|
||||
if (document.hidden) {
|
||||
this._hiddenTimeout = window.setTimeout(() => {
|
||||
this._hiddenTimeout = undefined;
|
||||
if (this.lastChild) {
|
||||
const curPanel = this.hass.panels[this._currentPage];
|
||||
if (
|
||||
this.lastChild &&
|
||||
// iFrames will lose their state when disconnected
|
||||
// Do not disconnect any iframe panel
|
||||
curPanel.component_name !== "iframe" &&
|
||||
// Do not disconnect any custom panel that embeds into iframe (ie hassio)
|
||||
(curPanel.component_name !== "custom" ||
|
||||
!(curPanel.config as CustomPanelInfo).config._panel_custom
|
||||
.embed_iframe)
|
||||
) {
|
||||
this._disconnectedPanel = this.lastChild;
|
||||
this.removeChild(this.lastChild);
|
||||
}
|
||||
|
@ -143,15 +143,17 @@ class CloudGoogleAssistant extends LitElement {
|
||||
</ha-formfield>
|
||||
${entity.might_2fa
|
||||
? html`
|
||||
<ha-switch
|
||||
.entityId=${entity.entity_id}
|
||||
.checked=${Boolean(config.disable_2fa)}
|
||||
@change=${this._disable2FAChanged}
|
||||
>
|
||||
${this.hass!.localize(
|
||||
<ha-formfield
|
||||
.label=${this.hass!.localize(
|
||||
"ui.panel.config.cloud.google.disable_2FA"
|
||||
)}
|
||||
</ha-switch>
|
||||
>
|
||||
<ha-switch
|
||||
.entityId=${entity.entity_id}
|
||||
.checked=${Boolean(config.disable_2fa)}
|
||||
@change=${this._disable2FAChanged}
|
||||
></ha-switch>
|
||||
</ha-formfield>
|
||||
`
|
||||
: ""}
|
||||
</div>
|
||||
@ -375,6 +377,9 @@ class CloudGoogleAssistant extends LitElement {
|
||||
state-info {
|
||||
cursor: pointer;
|
||||
}
|
||||
ha-formfield {
|
||||
display: block;
|
||||
}
|
||||
ha-switch {
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
@ -26,7 +26,8 @@ import { mdiCloudLock } from "@mdi/js";
|
||||
class HaConfigDashboard extends LitElement {
|
||||
@property() public hass!: HomeAssistant;
|
||||
|
||||
@property() public narrow!: boolean;
|
||||
@property({ type: Boolean, reflect: true })
|
||||
public narrow!: boolean;
|
||||
|
||||
@property() public isWide!: boolean;
|
||||
|
||||
@ -35,6 +36,96 @@ class HaConfigDashboard extends LitElement {
|
||||
@property() public showAdvanced!: boolean;
|
||||
|
||||
protected render(): TemplateResult {
|
||||
const content = html` <ha-config-section
|
||||
.narrow=${this.narrow}
|
||||
.isWide=${this.isWide}
|
||||
>
|
||||
<div slot="header">
|
||||
${this.hass.localize("ui.panel.config.header")}
|
||||
</div>
|
||||
|
||||
<div slot="introduction">
|
||||
${this.hass.localize("ui.panel.config.introduction")}
|
||||
</div>
|
||||
|
||||
${this.cloudStatus && isComponentLoaded(this.hass, "cloud")
|
||||
? html`
|
||||
<ha-card>
|
||||
<ha-config-navigation
|
||||
.hass=${this.hass}
|
||||
.showAdvanced=${this.showAdvanced}
|
||||
.pages=${[
|
||||
{
|
||||
component: "cloud",
|
||||
path: "/config/cloud",
|
||||
translationKey: "ui.panel.config.cloud.caption",
|
||||
info: this.cloudStatus,
|
||||
iconPath: mdiCloudLock,
|
||||
},
|
||||
]}
|
||||
></ha-config-navigation>
|
||||
</ha-card>
|
||||
`
|
||||
: ""}
|
||||
${Object.values(configSections).map(
|
||||
(section) => html`
|
||||
<ha-card>
|
||||
<ha-config-navigation
|
||||
.hass=${this.hass}
|
||||
.showAdvanced=${this.showAdvanced}
|
||||
.pages=${section}
|
||||
></ha-config-navigation>
|
||||
</ha-card>
|
||||
`
|
||||
)}
|
||||
${isComponentLoaded(this.hass, "zha")
|
||||
? html`
|
||||
<div class="promo-advanced">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.missing_zha",
|
||||
"integrations_page",
|
||||
html`<a href="/config/integrations">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.link_integration_page"
|
||||
)}
|
||||
</a>`
|
||||
)}
|
||||
</div>
|
||||
`
|
||||
: ""}
|
||||
${isComponentLoaded(this.hass, "zwave")
|
||||
? html`
|
||||
<div class="promo-advanced">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.missing_zwave",
|
||||
"integrations_page",
|
||||
html`<a href="/config/integrations">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.link_integration_page"
|
||||
)}
|
||||
</a>`
|
||||
)}
|
||||
</div>
|
||||
`
|
||||
: ""}
|
||||
${!this.showAdvanced
|
||||
? html`
|
||||
<div class="promo-advanced">
|
||||
${this.hass.localize("ui.panel.config.advanced_mode.hint_enable")}
|
||||
<a href="/profile"
|
||||
>${this.hass.localize(
|
||||
"ui.panel.config.advanced_mode.link_profile_page"
|
||||
)}</a
|
||||
>.
|
||||
</div>
|
||||
`
|
||||
: ""}
|
||||
</ha-config-section>`;
|
||||
|
||||
if (!this.narrow) {
|
||||
return content;
|
||||
}
|
||||
|
||||
return html`
|
||||
<app-header-layout has-scrolling-region>
|
||||
<app-header fixed slot="header">
|
||||
@ -46,90 +137,7 @@ class HaConfigDashboard extends LitElement {
|
||||
</app-toolbar>
|
||||
</app-header>
|
||||
|
||||
<ha-config-section .narrow=${this.narrow} .isWide=${this.isWide}>
|
||||
<div slot="header">
|
||||
${this.hass.localize("ui.panel.config.header")}
|
||||
</div>
|
||||
|
||||
<div slot="introduction">
|
||||
${this.hass.localize("ui.panel.config.introduction")}
|
||||
</div>
|
||||
|
||||
${this.cloudStatus && isComponentLoaded(this.hass, "cloud")
|
||||
? html`
|
||||
<ha-card>
|
||||
<ha-config-navigation
|
||||
.hass=${this.hass}
|
||||
.showAdvanced=${this.showAdvanced}
|
||||
.pages=${[
|
||||
{
|
||||
component: "cloud",
|
||||
path: "/config/cloud",
|
||||
translationKey: "ui.panel.config.cloud.caption",
|
||||
info: this.cloudStatus,
|
||||
iconPath: mdiCloudLock,
|
||||
},
|
||||
]}
|
||||
></ha-config-navigation>
|
||||
</ha-card>
|
||||
`
|
||||
: ""}
|
||||
${Object.values(configSections).map(
|
||||
(section) => html`
|
||||
<ha-card>
|
||||
<ha-config-navigation
|
||||
.hass=${this.hass}
|
||||
.showAdvanced=${this.showAdvanced}
|
||||
.pages=${section}
|
||||
></ha-config-navigation>
|
||||
</ha-card>
|
||||
`
|
||||
)}
|
||||
${isComponentLoaded(this.hass, "zha")
|
||||
? html`
|
||||
<div class="promo-advanced">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.missing_zha",
|
||||
"integrations_page",
|
||||
html`<a href="/config/integrations">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.link_integration_page"
|
||||
)}
|
||||
</a>`
|
||||
)}
|
||||
</div>
|
||||
`
|
||||
: ""}
|
||||
${isComponentLoaded(this.hass, "zwave")
|
||||
? html`
|
||||
<div class="promo-advanced">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.missing_zwave",
|
||||
"integrations_page",
|
||||
html`<a href="/config/integrations">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.integration_panel_move.link_integration_page"
|
||||
)}
|
||||
</a>`
|
||||
)}
|
||||
</div>
|
||||
`
|
||||
: ""}
|
||||
${!this.showAdvanced
|
||||
? html`
|
||||
<div class="promo-advanced">
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.advanced_mode.hint_enable"
|
||||
)}
|
||||
<a href="/profile"
|
||||
>${this.hass.localize(
|
||||
"ui.panel.config.advanced_mode.link_profile_page"
|
||||
)}</a
|
||||
>.
|
||||
</div>
|
||||
`
|
||||
: ""}
|
||||
</ha-config-section>
|
||||
${content}
|
||||
</app-header-layout>
|
||||
`;
|
||||
}
|
||||
@ -145,6 +153,9 @@ class HaConfigDashboard extends LitElement {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
ha-config-section {
|
||||
margin-top: -12px;
|
||||
}
|
||||
:host([narrow]) ha-config-section {
|
||||
margin-top: -20px;
|
||||
}
|
||||
ha-card {
|
||||
|
@ -232,6 +232,9 @@ class DialogMQTTDeviceDebugInfo extends LitElement {
|
||||
.triggerlistitem {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
ha-formfield {
|
||||
display: block;
|
||||
}
|
||||
`,
|
||||
];
|
||||
}
|
||||
|
@ -318,6 +318,9 @@ export class DialogLovelaceDashboardDetail extends LitElement {
|
||||
ha-switch {
|
||||
padding: 16px 0;
|
||||
}
|
||||
ha-formfield {
|
||||
display: block;
|
||||
}
|
||||
`,
|
||||
];
|
||||
}
|
||||
|
@ -59,12 +59,14 @@ export class HaPanelLogbook extends LitElement {
|
||||
start.setHours(start.getHours() - 2);
|
||||
start.setMinutes(0);
|
||||
start.setSeconds(0);
|
||||
start.setMilliseconds(0);
|
||||
this._startDate = start;
|
||||
|
||||
const end = new Date();
|
||||
end.setHours(end.getHours() + 1);
|
||||
end.setMinutes(0);
|
||||
end.setSeconds(0);
|
||||
end.setMilliseconds(0);
|
||||
this._endDate = end;
|
||||
}
|
||||
|
||||
|
@ -136,19 +136,12 @@ export class HuiCardOptions extends LitElement {
|
||||
color: var(--disabled-text-color);
|
||||
}
|
||||
|
||||
paper-item.header {
|
||||
color: var(--primary-text-color);
|
||||
text-transform: uppercase;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
paper-item {
|
||||
mwc-list-item {
|
||||
cursor: pointer;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
paper-item.delete-item {
|
||||
mwc-list-item.delete-item {
|
||||
color: var(--error-color);
|
||||
}
|
||||
`;
|
||||
|
@ -209,6 +209,7 @@ export class HuiDialogEditCard extends LitElement {
|
||||
<ha-circular-progress
|
||||
active
|
||||
alt="Saving"
|
||||
size="small"
|
||||
></ha-circular-progress>
|
||||
`
|
||||
: this.hass!.localize("ui.common.save")}
|
||||
@ -291,8 +292,6 @@ export class HuiDialogEditCard extends LitElement {
|
||||
}
|
||||
|
||||
mwc-button ha-circular-progress {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
margin-right: 20px;
|
||||
}
|
||||
.hidden {
|
||||
|
@ -107,11 +107,11 @@ export class HuiButtonCardEditor extends LitElement
|
||||
${configElementStyle}
|
||||
<div class="card-config">
|
||||
<ha-entity-picker
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.entity"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.entity"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.hass=${this.hass}
|
||||
.value="${this._entity}"
|
||||
.configValue=${"entity"}
|
||||
@ -120,11 +120,11 @@ export class HuiButtonCardEditor extends LitElement
|
||||
></ha-entity-picker>
|
||||
<div class="side-by-side">
|
||||
<paper-input
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.name"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.name"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.value="${this._name}"
|
||||
.configValue="${"name"}"
|
||||
@value-changed="${this._valueChanged}"
|
||||
@ -133,49 +133,51 @@ export class HuiButtonCardEditor extends LitElement
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.icon"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.value=${this._icon}
|
||||
.placeholder=${
|
||||
this._icon || stateIcon(this.hass.states[this._entity])
|
||||
}
|
||||
.placeholder=${this._icon ||
|
||||
stateIcon(this.hass.states[this._entity])}
|
||||
.configValue=${"icon"}
|
||||
@value-changed=${this._valueChanged}
|
||||
></ha-icon-input>
|
||||
</div>
|
||||
<div class="side-by-side">
|
||||
<ha-formfield .label=${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.show_name"
|
||||
)}>
|
||||
<ha-switch
|
||||
.checked="${this._config!.show_name !== false}"
|
||||
.configValue="${"show_name"}"
|
||||
@change="${this._valueChanged}"
|
||||
></ha-switch
|
||||
<ha-formfield
|
||||
.label=${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.show_name"
|
||||
)}
|
||||
>
|
||||
</ha-formfield>
|
||||
<ha-formfield .label=${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.show_icon"
|
||||
)}>
|
||||
<ha-switch
|
||||
.checked="${this._config!.show_icon !== false}"
|
||||
.configValue="${"show_icon"}"
|
||||
@change="${this._valueChanged}"
|
||||
></ha-switch
|
||||
></ha-formfield>
|
||||
<ha-switch
|
||||
.checked="${this._config!.show_name !== false}"
|
||||
.configValue="${"show_name"}"
|
||||
@change="${this._valueChanged}"
|
||||
></ha-switch>
|
||||
</ha-formfield>
|
||||
<ha-formfield
|
||||
.label=${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.show_icon"
|
||||
)}
|
||||
>
|
||||
<ha-switch
|
||||
.checked="${this._config!.show_icon !== false}"
|
||||
.configValue="${"show_icon"}"
|
||||
@change="${this._valueChanged}"
|
||||
></ha-switch>
|
||||
</ha-formfield>
|
||||
</div>
|
||||
<div class="side-by-side">
|
||||
<paper-input
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.icon_height"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.icon_height"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.value="${this._icon_height}"
|
||||
.configValue="${"icon_height"}"
|
||||
@value-changed="${this._valueChanged}"
|
||||
type="number"
|
||||
><div class="suffix" slot="suffix">px</div>
|
||||
><div class="suffix" slot="suffix">px</div>
|
||||
</paper-input>
|
||||
<hui-theme-select-editor
|
||||
.hass=${this.hass}
|
||||
@ -183,16 +185,14 @@ export class HuiButtonCardEditor extends LitElement
|
||||
.configValue="${"theme"}"
|
||||
@value-changed="${this._valueChanged}"
|
||||
></hui-theme-select-editor>
|
||||
</paper-input>
|
||||
|
||||
</div>
|
||||
<div class="side-by-side">
|
||||
<hui-action-editor
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.tap_action"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.tap_action"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.hass=${this.hass}
|
||||
.config="${this._tap_action}"
|
||||
.actions="${actions}"
|
||||
@ -200,11 +200,11 @@ export class HuiButtonCardEditor extends LitElement
|
||||
@action-changed="${this._valueChanged}"
|
||||
></hui-action-editor>
|
||||
<hui-action-editor
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.hold_action"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.label="${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.generic.hold_action"
|
||||
)} (${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.card.config.optional"
|
||||
)})"
|
||||
.hass=${this.hass}
|
||||
.config="${this._hold_action}"
|
||||
.actions="${actions}"
|
||||
|
@ -133,11 +133,11 @@ export class HuiViewEditor extends LitElement {
|
||||
@change=${this._valueChanged}
|
||||
></ha-switch
|
||||
></ha-formfield>
|
||||
<span class="panel"
|
||||
>${this.hass.localize(
|
||||
<span class="panel">
|
||||
${this.hass.localize(
|
||||
"ui.panel.lovelace.editor.view.panel_mode.description"
|
||||
)}</span
|
||||
>
|
||||
)}
|
||||
</span>
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
@ -181,6 +181,9 @@ export class HuiViewEditor extends LitElement {
|
||||
.panel {
|
||||
color: var(--secondary-text-color);
|
||||
}
|
||||
ha-formfield {
|
||||
display: block;
|
||||
}
|
||||
`;
|
||||
}
|
||||
}
|
||||
|
@ -527,7 +527,7 @@
|
||||
},
|
||||
"date-range-picker": {
|
||||
"end_date": "Fecha de finalización",
|
||||
"select": "Seleccione",
|
||||
"select": "Seleccionar",
|
||||
"start_date": "Fecha de inicio"
|
||||
},
|
||||
"device-picker": {
|
||||
|
@ -2198,6 +2198,10 @@
|
||||
"description": "La scheda Pila Orizzontale consente di raggruppare insieme più schede, in modo che siano sempre l'una accanto all'altra nello spazio di una colonna.",
|
||||
"name": "Pila orizzontale"
|
||||
},
|
||||
"humidifier": {
|
||||
"description": "La scheda Umidificatore fornisce il controllo della tua entità umidificatore, consentendo di modificare l'umidità e la modalità dell'entità.",
|
||||
"name": "Umidificatore"
|
||||
},
|
||||
"iframe": {
|
||||
"description": "La scheda Pagina Web consente di incorporare la pagina Web preferita direttamente in Home Assistant.",
|
||||
"name": "Pagina web"
|
||||
|
@ -48,6 +48,19 @@
|
||||
"none": "Geen",
|
||||
"sleep": "Slapen"
|
||||
}
|
||||
},
|
||||
"humidifier": {
|
||||
"mode": {
|
||||
"auto": "Auto",
|
||||
"away": "Afwezig",
|
||||
"baby": "Baby",
|
||||
"boost": "Boost",
|
||||
"comfort": "Comfort",
|
||||
"eco": "Eco",
|
||||
"home": "Thuis",
|
||||
"normal": "Normaal",
|
||||
"sleep": "Slapen"
|
||||
}
|
||||
}
|
||||
},
|
||||
"state_badge": {
|
||||
@ -388,6 +401,12 @@
|
||||
"reverse": "Omkeren",
|
||||
"speed": "Snelheid"
|
||||
},
|
||||
"humidifier": {
|
||||
"humidity": "Doel luchtvochtigheid",
|
||||
"mode": "Modus",
|
||||
"on_entity": "{name} aan",
|
||||
"target_humidity_entity": "{name} doel luchtvochtigheid"
|
||||
},
|
||||
"light": {
|
||||
"brightness": "Helderheid",
|
||||
"color_temperature": "Kleurtemperatuur",
|
||||
@ -506,6 +525,11 @@
|
||||
"clear": "Wis",
|
||||
"show_areas": "Toon gebieden"
|
||||
},
|
||||
"date-range-picker": {
|
||||
"end_date": "Einddatum",
|
||||
"select": "Selecteer",
|
||||
"start_date": "Startdatum"
|
||||
},
|
||||
"device-picker": {
|
||||
"clear": "Wis",
|
||||
"device": "Apparaat",
|
||||
@ -695,6 +719,7 @@
|
||||
"zha_device_info": {
|
||||
"buttons": {
|
||||
"add": "Apparaten toevoegen via dit apparaat",
|
||||
"clusters": "Clusters beheren",
|
||||
"reconfigure": "Apparaat opnieuw configureren",
|
||||
"remove": "Verwijder apparaat",
|
||||
"zigbee_information": "Zigbee-apparaathandtekening"
|
||||
@ -744,7 +769,7 @@
|
||||
"connection_lost": "Verbinding verbroken. Opnieuw verbinden...",
|
||||
"service_call_failed": "Kan service {service} niet aanroepen",
|
||||
"started": "Home Assistant is gestart!",
|
||||
"starting": "Home Assistant is aan het opstarten, nog niet alles is beschikbaar tot dit is voltooid.",
|
||||
"starting": "Home Assistant is aan het opstarten. Gedurende het opstarten zal niet alles beschikbaar zijn.",
|
||||
"triggered": "Geactiveerd {name}"
|
||||
},
|
||||
"panel": {
|
||||
@ -1391,6 +1416,11 @@
|
||||
"system_health_error": "De systeemstatus component is niet geladen. Voeg ' system_health: ' toe aan het configuratiebestand.",
|
||||
"title": "Info"
|
||||
},
|
||||
"integration_panel_move": {
|
||||
"link_integration_page": "integraties pagina",
|
||||
"missing_zha": "Mis je de ZHA configuratie? Dit is verplaatst naar de ZHA integratie op de {integrations_page}.",
|
||||
"missing_zwave": "Mis je de Z-Wave configuratie? Dit is verplaatst naar de Z-Wave integratie op de {integrations_page}."
|
||||
},
|
||||
"integrations": {
|
||||
"add_integration": "Integratie toevoegen",
|
||||
"caption": "Integraties",
|
||||
@ -1553,6 +1583,7 @@
|
||||
}
|
||||
},
|
||||
"mqtt": {
|
||||
"button": "Configureer",
|
||||
"description_listen": "Luisteren naar onderwerp",
|
||||
"description_publish": "Publiceer een pakket",
|
||||
"listening_to": "Luisteren naar",
|
||||
@ -1673,6 +1704,11 @@
|
||||
"core": "Herlaad locatie en aanpassingen",
|
||||
"group": "Herlaad groepen",
|
||||
"heading": "Configuratie herladen",
|
||||
"input_boolean": "Herlaad input booleans",
|
||||
"input_datetime": "Herlaad input date times",
|
||||
"input_number": "Herlaad input numbers",
|
||||
"input_select": "Herlaad input selects",
|
||||
"input_text": "Herlaad input texts",
|
||||
"introduction": "Sommige delen van Home Assistant kunnen opnieuw worden geladen zonder dat een herstart vereist is. Als je herladen gebruikt, wordt de huidige configuratie leeggemaakt en wordt de nieuwe geladen.",
|
||||
"person": "Herlaad personen",
|
||||
"scene": "Herlaad scenes",
|
||||
@ -1732,13 +1768,15 @@
|
||||
"system": "Systeem"
|
||||
}
|
||||
},
|
||||
"users_privileges_note": "Gebruikersgroepen zijn nog werk in uitvoering. De gebruiker kan de instantie niet beheren via de interface. We zijn bezig met het uitvoeren van een audit om verzekerd te zijn dat de management API-eindpunten toegang voor beheerders correct beperken."
|
||||
"users_privileges_note": "Gebruikersgroepen zijn nog in ontwikkeling. De gebruiker kan de instantie niet beheren via de interface. We zijn bezig met het controleren van de API-eindpunten toegang voor beheerders."
|
||||
},
|
||||
"zha": {
|
||||
"add_device_page": {
|
||||
"discovered_text": "Apparaten zullen hier verschijnen zodra ze zijn ontdekt.",
|
||||
"discovery_text": "Gevonden apparaten worden hier weergegeven. Volg de instructies voor je apparaat of apparaten en plaats het apparaat of de apparaten in de koppelingsmodus.",
|
||||
"header": "Zigbee Home Automation - Apparaten toevoegen",
|
||||
"no_devices_found": "Geen apparaten gevonden, zorg ervoor dat ze in de koppelingsmodus staan en dat gedurende het ontdekken ze actief zijn.",
|
||||
"pairing_mode": "Zorg ervoor dat de apparaten in de koppelingsmodus staan. Kijk in de instructies van het apparaat hoe dit moet.",
|
||||
"search_again": "Opnieuw zoeken",
|
||||
"spinner": "Zoeken naar ZHA Zigbee-apparaten ..."
|
||||
},
|
||||
@ -2001,11 +2039,23 @@
|
||||
},
|
||||
"history": {
|
||||
"period": "Periode",
|
||||
"ranges": {
|
||||
"last_week": "Vorige week",
|
||||
"this_week": "Deze week",
|
||||
"today": "Vandaag",
|
||||
"yesterday": "Gisteren"
|
||||
},
|
||||
"showing_entries": "Toon items voor"
|
||||
},
|
||||
"logbook": {
|
||||
"entries_not_found": "Geen logboekvermeldingen gevonden.",
|
||||
"period": "Periode",
|
||||
"ranges": {
|
||||
"last_week": "Vorige week",
|
||||
"this_week": "Deze week",
|
||||
"today": "Vandaag",
|
||||
"yesterday": "Gisteren"
|
||||
},
|
||||
"showing_entries": "Toont gegevens van"
|
||||
},
|
||||
"lovelace": {
|
||||
@ -2145,6 +2195,10 @@
|
||||
"description": "Met de Horizontal Stack-kaart kun je meerdere kaarten op elkaar stapelen, zodat ze altijd naast elkaar in de ruimte van één kolom zitten.",
|
||||
"name": "Horizontale stapel"
|
||||
},
|
||||
"humidifier": {
|
||||
"description": "De luchtbevochtiger-kaart geeft controle over de entiteit van de luchtbevochtiger. Hiermee kun je de vochtigheid en de modus van de entiteit wijzigen.",
|
||||
"name": "Bevochtiger"
|
||||
},
|
||||
"iframe": {
|
||||
"description": "Met de Webpage-kaart kunt u uw favoriete webpagina rechtstreeks in de Home Assistant insluiten.",
|
||||
"name": "Webpagina"
|
||||
|
@ -48,6 +48,19 @@
|
||||
"none": "無",
|
||||
"sleep": "睡眠"
|
||||
}
|
||||
},
|
||||
"humidifier": {
|
||||
"mode": {
|
||||
"auto": "自動模式",
|
||||
"away": "離家模式",
|
||||
"baby": "孩童模式",
|
||||
"boost": "全速模式",
|
||||
"comfort": "舒適模式",
|
||||
"eco": "節能模式",
|
||||
"home": "居家模式",
|
||||
"normal": "一般模式",
|
||||
"sleep": "睡眠模式"
|
||||
}
|
||||
}
|
||||
},
|
||||
"state_badge": {
|
||||
@ -388,6 +401,12 @@
|
||||
"reverse": "反向",
|
||||
"speed": "風速"
|
||||
},
|
||||
"humidifier": {
|
||||
"humidity": "設定濕度",
|
||||
"mode": "模式",
|
||||
"on_entity": "{name} 已開啟",
|
||||
"target_humidity_entity": "{name} 設定濕度"
|
||||
},
|
||||
"light": {
|
||||
"brightness": "亮度",
|
||||
"color_temperature": "色溫",
|
||||
@ -2198,6 +2217,10 @@
|
||||
"description": "水平排列面板可供將多個面板排列、同時顯示。",
|
||||
"name": "水平排列面板"
|
||||
},
|
||||
"humidifier": {
|
||||
"description": "加濕器面板可供控制加濕物件、可允許變更濕度與模式。",
|
||||
"name": "加濕器"
|
||||
},
|
||||
"iframe": {
|
||||
"description": "網頁面板可供於 Home Assistant 嵌入喜愛的網頁。",
|
||||
"name": "網頁面板"
|
||||
|
@ -6683,10 +6683,10 @@ hmac-drbg@^1.0.0:
|
||||
minimalistic-assert "^1.0.0"
|
||||
minimalistic-crypto-utils "^1.0.1"
|
||||
|
||||
home-assistant-js-websocket@^5.4.0:
|
||||
version "5.4.0"
|
||||
resolved "https://registry.yarnpkg.com/home-assistant-js-websocket/-/home-assistant-js-websocket-5.4.0.tgz#637321ba47138562716290404adfa921d8d525dc"
|
||||
integrity sha512-/sMJZwKTkoDvCljBTwGRiZy67ODZua/xYNH61n4zmX3Lcgb1D/zRDiJtwvW+g//BO/RAsNR5GulbUOdDrqmQlA==
|
||||
home-assistant-js-websocket@^5.4.1:
|
||||
version "5.4.1"
|
||||
resolved "https://registry.yarnpkg.com/home-assistant-js-websocket/-/home-assistant-js-websocket-5.4.1.tgz#3f677391b38e4feb24f1670e3a9b695767332a51"
|
||||
integrity sha512-FTVoO5yMSa2dy1ffZDvJy/r79VTjwFOzyP/bPld5lDHKbNyXC8wgqpn8Kdf5ZQISYJf1T1dfH+v2NYEngn5NgQ==
|
||||
|
||||
homedir-polyfill@^1.0.1:
|
||||
version "1.0.3"
|
||||
|
Loading…
x
Reference in New Issue
Block a user