Compare commits

...

17 Commits

Author SHA1 Message Date
Zack Arnett
9a49956e98 Updates 2020-09-18 16:00:55 -05:00
Zack Barett
640d6e9549 Merge branch 'dev' into Thermostat-card 2020-09-18 15:26:03 -05:00
Zack Arnett
ca1dacd621 Update to actually set loading 2020-09-18 14:51:02 -05:00
Bram Kragten
045dac59af Bumped version to 20200918.0 2020-09-18 17:30:02 +02:00
Bram Kragten
1ffa87ea23 Fix duplicate items in sortables (#7053) 2020-09-18 17:28:19 +02:00
Kendell R
357df2bf68 Default colon color to primary text color (#7044)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2020-09-18 17:23:41 +02:00
Bram Kragten
24f3db3e3f Add hold action to buttons (#7051) 2020-09-18 17:20:31 +02:00
Zack Barett
4bb51b0120 fix log copy (#7048) 2020-09-18 12:53:26 +02:00
Bram Kragten
32b9c1eba1 Fix tap to toggle sidebar (#7049) 2020-09-18 12:17:10 +02:00
HomeAssistant Azure
40bffc1d25 [ci skip] Translation update 2020-09-18 00:32:23 +00:00
Bram Kragten
b3353e220a Bumped version to 20200917.1 2020-09-17 13:02:52 +02:00
Bram Kragten
7dc917babf Adjust local source path (#7033) 2020-09-17 12:59:24 +02:00
Bram Kragten
3efd1a0451 Bumped version to 20200917.0 2020-09-17 10:52:36 +02:00
Bram Kragten
b7d7ca4014 Monkey patch for bug in safari 14 (#7031) 2020-09-17 10:49:37 +02:00
HomeAssistant Azure
854a54e9c6 [ci skip] Translation update 2020-09-17 00:32:34 +00:00
Zack Arnett
cb043200cc do calc once 2020-08-12 10:58:53 -05:00
Zack Arnett
6b46949eb7 thermostat changes 2020-08-10 17:15:55 -05:00
33 changed files with 1640 additions and 182 deletions

View File

@@ -1,3 +1,4 @@
import "../../../src/resources/safari-14-attachshadow-patch";
import "../../../src/resources/ha-style";
import "../../../src/resources/roboto";
import "./layout/hc-connect";

View File

@@ -1,3 +1,4 @@
import "../../src/resources/safari-14-attachshadow-patch";
import "@polymer/polymer/lib/elements/dom-if";
import "@polymer/polymer/lib/elements/dom-repeat";
import "../../src/resources/ha-style";

View File

@@ -1,4 +1,5 @@
import "../../src/resources/compatibility";
import "../../src/resources/safari-14-attachshadow-patch";
import "../../src/resources/roboto";
import "./hassio-main";

View File

@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
setup(
name="home-assistant-frontend",
version="20200916.0",
version="20200918.0",
description="The Home Assistant frontend",
url="https://github.com/home-assistant/home-assistant-polymer",
author="The Home Assistant Authors",

View File

@@ -190,7 +190,7 @@ export class HaCodeEditor extends UpdatingElement {
}
.cm-s-default .cm-meta {
color: var(--codemirror-meta, #000);
color: var(--codemirror-meta, var(--primary-text-color));
}
.cm-s-default .cm-attribute {

View File

@@ -237,7 +237,7 @@ class HaSidebar extends LitElement {
? html`
<mwc-icon-button
.label=${hass.localize("ui.sidebar.sidebar_toggle")}
@click=${this._toggleSidebar}
@action=${this._toggleSidebar}
>
<ha-svg-icon
.path=${hass.dockedSidebar === "docked"
@@ -539,20 +539,25 @@ class HaSidebar extends LitElement {
this._hiddenPanels = [...this._hiddenPanels, panel];
this._renderEmptySortable = true;
await this.updateComplete;
const container = this.shadowRoot!.getElementById("sortable")!;
while (container.lastElementChild) {
container.removeChild(container.lastElementChild);
}
this._renderEmptySortable = false;
}
private async _unhidePanel(ev: Event) {
ev.preventDefault();
const index = this._hiddenPanels.indexOf((ev.currentTarget as any).panel);
if (index < 0) {
return;
}
this._hiddenPanels.splice(index, 1);
// Make a copy for Memoize
this._hiddenPanels = [...this._hiddenPanels];
const panel = (ev.currentTarget as any).panel;
this._hiddenPanels = this._hiddenPanels.filter(
(hidden) => hidden !== panel
);
this._renderEmptySortable = true;
await this.updateComplete;
const container = this.shadowRoot!.getElementById("sortable")!;
while (container.lastElementChild) {
container.removeChild(container.lastElementChild);
}
this._renderEmptySortable = false;
}
@@ -648,7 +653,10 @@ class HaSidebar extends LitElement {
});
}
private _toggleSidebar() {
private _toggleSidebar(ev: CustomEvent) {
if (ev.detail.action !== "tap") {
return;
}
fireEvent(this, "hass-toggle-menu");
}

View File

@@ -22,6 +22,7 @@ import { styleMap } from "lit-html/directives/style-map";
import { fireEvent } from "../../common/dom/fire_event";
import { computeRTLDirection } from "../../common/util/compute_rtl";
import { debounce } from "../../common/util/debounce";
import type { MediaPlayerItem } from "../../data/media-player";
import {
browseLocalMediaPlayer,
browseMediaPlayer,
@@ -30,7 +31,6 @@ import {
MediaPickedEvent,
MediaPlayerBrowseAction,
} from "../../data/media-player";
import type { MediaPlayerItem } from "../../data/media-player";
import { showAlertDialog } from "../../dialogs/generic/show-dialog-box";
import { installResizeObserver } from "../../panels/lovelace/common/install-resize-observer";
import { haStyle } from "../../resources/styles";
@@ -357,12 +357,10 @@ export class HaMediaPlayerBrowse extends LitElement {
`
: html`
<div class="container">
${this.hass.localize("ui.components.media-browser.no_items")}<br />
${currentItem.media_content_id.startsWith(
"media-source://media_source/local_source"
)
? html`${this.hass.localize(
${this.hass.localize("ui.components.media-browser.no_items")}
${currentItem.media_content_id ===
"media-source://media_source/local/."
? html`<br />${this.hass.localize(
"ui.components.media-browser.learn_adding_local_media",
"documentation",
html`<a
@@ -482,6 +480,7 @@ export class HaMediaPlayerBrowse extends LitElement {
mediaContentId?: string,
mediaContentType?: string
): Promise<MediaPlayerItem> {
this._loading = true;
const itemData =
this.entityId !== BROWSER_PLAYER
? await browseMediaPlayer(
@@ -492,6 +491,7 @@ export class HaMediaPlayerBrowse extends LitElement {
)
: await browseLocalMediaPlayer(this.hass, mediaContentId);
this._loading = false;
return itemData;
}
@@ -568,6 +568,13 @@ export class HaMediaPlayerBrowse extends LitElement {
flex-direction: column;
}
ha-circular-progress {
--mdc-theme-primary: var(--primary-color);
display: flex;
justify-content: center;
margin-top: 40px;
}
.container {
padding: 16px;
}

View File

@@ -1,5 +1,6 @@
// Compat needs to be first import
import "../resources/compatibility";
import "../resources/safari-14-attachshadow-patch";
import "@polymer/polymer/lib/elements/dom-if";
import "@polymer/polymer/lib/elements/dom-repeat";
import "../auth/ha-authorize";

View File

@@ -1,5 +1,6 @@
// Compat needs to be first import
import "../resources/compatibility";
import "../resources/safari-14-attachshadow-patch";
import {
Auth,
Connection,

View File

@@ -1,4 +1,5 @@
import "../resources/compatibility";
import "../resources/safari-14-attachshadow-patch";
import { PolymerElement } from "@polymer/polymer";
import { fireEvent } from "../common/dom/fire_event";
import { loadJS } from "../common/dom/load_resource";

View File

@@ -1,5 +1,6 @@
// Compat needs to be first import
import "../resources/compatibility";
import "../resources/safari-14-attachshadow-patch";
import "../onboarding/ha-onboarding";
import "../resources/ha-style";
import "../resources/roboto";

View File

@@ -88,8 +88,9 @@ class DialogSystemLogDetail extends LitElement {
<paper-tooltip
manual-mode
for="copy"
position="top"
position="left"
animation-delay="0"
offset="4"
>${this.hass.localize("ui.common.copied")}</paper-tooltip
>
</div>

View File

@@ -19,6 +19,7 @@ import { UNIT_F } from "../../../common/const";
import { applyThemesOnElement } from "../../../common/dom/apply_themes_on_element";
import { fireEvent } from "../../../common/dom/fire_event";
import { computeStateName } from "../../../common/entity/compute_state_name";
import { debounce } from "../../../common/util/debounce";
import "../../../components/ha-card";
import type { HaCard } from "../../../components/ha-card";
import "../../../components/ha-icon-button";
@@ -30,8 +31,10 @@ import {
} from "../../../data/climate";
import { UNAVAILABLE } from "../../../data/entity";
import { HomeAssistant } from "../../../types";
import { actionHandler } from "../common/directives/action-handler-directive";
import { findEntities } from "../common/find-entites";
import { hasConfigOrEntityChanged } from "../common/has-changed";
import { installResizeObserver } from "../common/install-resize-observer";
import { createEntityNotFoundWarning } from "../components/hui-warning";
import { LovelaceCard, LovelaceCardEditor } from "../types";
import { ThermostatCardConfig } from "./types";
@@ -79,8 +82,25 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
@internalProperty() private _setTemp?: number | number[];
@internalProperty() private _lastSetMode?: number;
@internalProperty() private _narrow = false;
@query("ha-card") private _card?: HaCard;
private _resizeObserver?: ResizeObserver;
public connectedCallback(): void {
super.connectedCallback();
this.updateComplete.then(() => this._attachObserver());
}
public disconnectedCallback(): void {
if (this._resizeObserver) {
this._resizeObserver.disconnect();
}
}
public getCardSize(): number {
return 5;
}
@@ -119,7 +139,7 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
const slider =
stateObj.state === UNAVAILABLE
? html` <round-slider disabled="true"></round-slider> `
? html`<round-slider disabled="true"></round-slider>`
: html`
<round-slider
.value=${targetTemp}
@@ -214,6 +234,7 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
<ha-card
class=${classMap({
[mode]: true,
narrow: this._narrow,
})}
>
<mwc-icon-button
@@ -237,12 +258,40 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
</div>
</div>
<div id="info">
<div id="modes">
${(stateObj.attributes.hvac_modes || [])
.concat()
.sort(compareClimateHvacModes)
.map((modeItem) => this._renderIcon(modeItem, mode))}
</div>
${!this._narrow
? html`
<div class="step-icons">
<ha-icon-button
class="minus step-icon ${classMap({
disabled:
Array.isArray(this._setTemp) && !this._lastSetMode,
})}"
icon="hass:minus"
@action=${this._handleStepAction}
.actionHandler=${actionHandler()}
tempDiff="-1"
tabindex="0"
></ha-icon-button
><ha-icon-button
class="plus step-icon ${classMap({
disabled:
Array.isArray(this._setTemp) && !this._lastSetMode,
})}"
icon="hass:plus"
@action=${this._handleStepAction}
.actionHandler=${actionHandler()}
tabindex="0"
tempDiff="1"
></ha-icon-button>
</div>
<div id="modes">
${(stateObj.attributes.hvac_modes || [])
.concat()
.sort(compareClimateHvacModes)
.map((modeItem) => this._renderIcon(modeItem, mode))}
</div>
`
: ""}
${name}
</div>
</div>
@@ -254,6 +303,11 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
return hasConfigOrEntityChanged(this, changedProps);
}
protected firstUpdated(): void {
this._measureCard();
this._attachObserver();
}
protected updated(changedProps: PropertyValues): void {
super.updated(changedProps);
@@ -356,12 +410,14 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
const stateObj = this.hass!.states[this._config!.entity] as ClimateEntity;
if (e.detail.low) {
this._lastSetMode = 0;
this.hass!.callService("climate", "set_temperature", {
entity_id: this._config!.entity,
target_temp_low: e.detail.low,
target_temp_high: stateObj.attributes.target_temp_high,
});
} else if (e.detail.high) {
this._lastSetMode = 1;
this.hass!.callService("climate", "set_temperature", {
entity_id: this._config!.entity,
target_temp_low: stateObj.attributes.target_temp_low,
@@ -381,10 +437,11 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
}
return html`
<ha-icon-button
class="${classMap({ "selected-icon": currentMode === mode })}"
.mode="${mode}"
.icon="${modeIcons[mode]}"
@click=${this._handleAction}
class=${classMap({ "selected-icon": currentMode === mode })}
.mode=${mode}
.icon=${modeIcons[mode]}
@action=${this._handleAction}
.actionHandler=${actionHandler()}
tabindex="0"
></ha-icon-button>
`;
@@ -403,6 +460,53 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
});
}
private _handleStepAction(e: MouseEvent): void {
const stateObj = this.hass!.states[this._config!.entity] as ClimateEntity;
const tempChange = (e.currentTarget as any).tempDiff * this._stepSize;
if (!Array.isArray(this._setTemp!)) {
this.hass!.callService("climate", "set_temperature", {
entity_id: this._config!.entity,
temperature: (this._setTemp! as number) + tempChange,
});
} else if (this._lastSetMode === 0) {
this.hass!.callService("climate", "set_temperature", {
entity_id: this._config!.entity,
target_temp_low: this._setTemp![this._lastSetMode] + tempChange,
target_temp_high: stateObj.attributes.target_temp_high,
});
} else if (this._lastSetMode === 1) {
this.hass!.callService("climate", "set_temperature", {
entity_id: this._config!.entity,
target_temp_low: stateObj.attributes.target_temp_low,
target_temp_high: this._setTemp![this._lastSetMode] + tempChange,
});
}
}
private async _attachObserver(): Promise<void> {
if (!this._resizeObserver) {
await installResizeObserver();
this._resizeObserver = new ResizeObserver(
debounce(() => this._measureCard(), 250, false)
);
}
const card = this.shadowRoot!.querySelector("ha-card");
// If we show an error or warning there is no ha-card
if (!card) {
return;
}
this._resizeObserver.observe(card);
}
private _measureCard() {
if (!this.isConnected) {
return;
}
this._narrow = this.offsetWidth < 174;
}
static get styles(): CSSResult {
return css`
:host {
@@ -531,14 +635,29 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
}
#info {
display: flex-vertical;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
padding: 16px;
margin-top: -60px;
margin-top: -55px;
font-size: var(--name-font-size);
}
.narrow #info {
margin-top: -40px;
}
#modes {
--mdc-icon-button-size: 32px;
display: flex;
flex-wrap: wrap;
justify-content: space-around;
width: 100%;
padding-top: 8px;
}
#modes > * {
color: var(--disabled-text-color);
cursor: pointer;
@@ -552,6 +671,36 @@ export class HuiThermostatCard extends LitElement implements LovelaceCard {
text {
fill: var(--primary-text-color);
}
.step-icons {
display: flex;
justify-content: space-around;
max-width: 250px;
min-width: 100px;
width: 100%;
}
.step-icon {
--mdc-icon-button-size: 28px;
--mdc-icon-size: 18px;
border-radius: 50%;
border: 1px solid;
}
.step-icon.disabled {
border-color: var(--disabled-text-color);
color: var(--disabled-text-color);
}
.minus {
border-color: var(--cool-color);
color: var(--cool-color);
}
.plus {
border-color: var(--heat-color);
color: var(--heat-color);
}
`;
}
}

View File

@@ -85,12 +85,7 @@ export class HuiButtonsBase extends LitElement {
private _handleAction(ev: ActionHandlerEvent) {
const config = (ev.currentTarget as any).config as EntitiesCardEntityConfig;
handleAction(
this,
this._hass!,
{ tap_action: { action: "toggle" }, ...config },
ev.detail.action!
);
handleAction(this, this._hass!, config, ev.detail.action!);
}
static get styles(): CSSResult {

View File

@@ -123,6 +123,10 @@ export class HuiEntityEditor extends LitElement {
private async _handleEntitiesChanged() {
this._renderEmptySortable = true;
await this.updateComplete;
const container = this.shadowRoot!.querySelector(".entities")!;
while (container.lastElementChild) {
container.removeChild(container.lastElementChild);
}
this._renderEmptySortable = false;
}

View File

@@ -4,6 +4,7 @@ import {
LitElement,
property,
TemplateResult,
internalProperty,
} from "lit-element";
import { HomeAssistant } from "../../../types";
import { processConfigEntities } from "../common/process-config-entities";
@@ -21,15 +22,20 @@ export class HuiButtonsHeaderFooter extends LitElement
@property({ attribute: false }) public hass?: HomeAssistant;
private _configEntities?: EntityConfig[];
@internalProperty() private _configEntities?: EntityConfig[];
public getCardSize(): number {
return 1;
}
public setConfig(config: ButtonsHeaderFooterConfig): void {
this._configEntities = processConfigEntities(config.entities);
this.requestUpdate();
this._configEntities = processConfigEntities(config.entities).map(
(entityConfig) => ({
tap_action: { action: "toggle" },
hold_action: { action: "more-info" },
...entityConfig,
})
);
}
protected render(): TemplateResult | void {

View File

@@ -4,6 +4,7 @@ import {
LitElement,
property,
TemplateResult,
internalProperty,
} from "lit-element";
import { HomeAssistant } from "../../../types";
import { processConfigEntities } from "../common/process-config-entities";
@@ -22,11 +23,16 @@ export class HuiButtonsRow extends LitElement implements LovelaceRow {
@property({ attribute: false }) public hass?: HomeAssistant;
private _configEntities?: EntityConfig[];
@internalProperty() private _configEntities?: EntityConfig[];
public setConfig(config: ButtonsRowConfig): void {
this._configEntities = processConfigEntities(config.entities);
this.requestUpdate();
this._configEntities = processConfigEntities(config.entities).map(
(entityConfig) => ({
tap_action: { action: "toggle" },
hold_action: { action: "more-info" },
...entityConfig,
})
);
}
protected render(): TemplateResult | void {

View File

@@ -0,0 +1,13 @@
// https://github.com/home-assistant/frontend/pull/7031
const isSafari14 = /^((?!chrome|android).)*version\/14\.0.*safari/i.test(
navigator.userAgent
);
if (isSafari14) {
const origAttachShadow = window.Element.prototype.attachShadow;
window.Element.prototype.attachShadow = function (init) {
if (init && init.delegatesFocus) {
delete init.delegatesFocus;
}
return origAttachShadow.apply(this, [init]);
};
}

View File

@@ -573,7 +573,7 @@
},
"media-browser": {
"audio_not_supported": "El teu navegador no és compatible amb l'element d'àudio.",
"choose_player": "Tria el reproductor",
"choose_player": "Tria reproductor",
"choose-source": "Tria la font",
"class": {
"album": "Àlbum",
@@ -604,15 +604,21 @@
"playlist": "Llista de reproducció",
"server": "Servidor"
},
"documentation": "documentació",
"learn_adding_local_media": "Més informació sobre com afegir contingut multimèdia a la {documentation}.",
"local_media_files": "Col·loca els fitxers de vídeo, àudio i imatge al directori multimèdia i podràs navegar-hi i reproduir-los des del navegador o els reproductors multimèdia compatibles.",
"media_browsing_error": "Error de navegació multimèdia",
"media_not_supported": "El reproductor multimèdia de navegador no és compatible amb aquest tipus de mitjà",
"media_player": "Reproductor multimèdia",
"media-player-browser": "Navegador del reproductor multimèdia",
"media-player-browser": "Navegador multimèdia",
"no_items": "Sense elements",
"no_local_media_found": "No s'ha trobat cap mitjà local",
"no_media_folder": "Sembla que encara no has creat cap directori multimèdia.",
"pick": "Escull",
"pick-media": "Tria mitjans",
"play": "Reprodueix",
"play-media": "Reprodueix mitjans",
"setup_local_help": "Consulta la {documentation} per saber com configurar el contingut multimèdia local.",
"video_not_supported": "El teu navegador no és compatible amb l'element de vídeo.",
"web-browser": "Navegador web"
},
@@ -650,7 +656,7 @@
},
"dialogs": {
"config_entry_system_options": {
"enable_new_entities_description": "Si es desactivat, les entitats descobertes recentment per a {integration} no s'afegiran automàticament a Home Assistant.",
"enable_new_entities_description": "Si es desactiva, les entitats descobertes recentment per a {integration} no s'afegiran automàticament a Home Assistant.",
"enable_new_entities_label": "Activa entitats afegides recentment.",
"title": "Opcions del sistema per a {integration}",
"update": "Actualitza"
@@ -1977,37 +1983,37 @@
"section": {
"reloading": {
"automation": "Actualitza automatitzacions",
"command_line": "Torna a carregar entitats de comandes",
"command_line": "Actualitza entitats de comandes",
"core": "Actualitza ubicació i personalitzacions",
"filesize": "Torna a carregar entitats de mida de fitxer",
"filter": "Torna a carregar entitats de filtre",
"generic": "Torna a carregar entitats genèriques de càmera IP",
"generic_thermostat": "Torna a carregar entitats genèriques de termòstat",
"group": "Torna a carregar grups, grups d'entitats i serveis de notificació",
"heading": "Tornant a carregar la configuració",
"history_stats": "Torna a carregar entitats d'estadístiques històriques",
"homekit": "Torna a carregar HomeKit",
"filesize": "Actualitza entitats de mida de fitxer",
"filter": "Actualitza entitats de filtre",
"generic": "Actualitza entitats genèriques de càmera IP",
"generic_thermostat": "Actualitza entitats genèriques de termòstat",
"group": "Actualitza grups, grups d'entitats i serveis de notificació",
"heading": "Torna a carregar les configuracions YAML",
"history_stats": "Actualitza entitats d'estadístiques històriques",
"homekit": "Actualitza HomeKit",
"input_boolean": "Actualitza entrades booleanes",
"input_datetime": "Actualitza entrades de data i hora",
"input_number": "Actualitza entrades numèriques",
"input_select": "Actualitza entrades de selecció",
"input_text": "Actualitza entrades de text",
"introduction": "Algunes parts de Home Assistant es poden actualitzar sense necessitat reiniciar-lo. Si prems actualitza s'esborrarà la configuració YAML actual i se'n carregarà la nova.",
"min_max": "Torna a carregar entitats min/max",
"mqtt": "Torna a carregar entitats MQTT",
"min_max": "Actualitza entitats min/max",
"mqtt": "Actualitza entitats MQTT",
"person": "Actualitza persones",
"ping": "Torna a carregar entitats de sensors binaris de ping",
"reload": "Torna a carregar {domain}",
"rest": "Torna a carregar entitats de repòs i serveis de notificació",
"rpi_gpio": "Torna a carregar entitats GPIO de la Raspberry Pi",
"ping": "Actualitza entitats de sensors binaris de ping",
"reload": "Actualitza {domain}",
"rest": "Actualitza entitats de repòs i serveis de notificació",
"rpi_gpio": "Actualitza entitats GPIO de la Raspberry Pi",
"scene": "Actualitza escenes",
"script": "Actualitza programes",
"smtp": "Torna a carregar serveis de notificació SMTP",
"statistics": "Torna a carregar entitats estadístiques",
"telegram": "Torna a carregar serveis de notificació de Telegram",
"template": "Torna a carregar entitats de plantilla",
"trend": "Torna a carregar entitats de tendència",
"universal": "Torna a carregar entitats del reproductor universal",
"smtp": "Actualitza serveis de notificació SMTP",
"statistics": "Actualitza entitats estadístiques",
"telegram": "Actualitza serveis de notificació de Telegram",
"template": "Actualitza entitats de plantilla",
"trend": "Actualitza entitats de tendència",
"universal": "Actualitza entitats del reproductor universal",
"zone": "Actualitza zones"
},
"server_management": {
@@ -2030,7 +2036,7 @@
"tags": {
"add_tag": "Afegeix etiqueta",
"automation_title": "S'escanegi l'etiqueta {name}",
"caption": "Etiquetes",
"caption": "Etiquetes (NFC/RFID)",
"create_automation": "Crea una automatització amb una etiqueta",
"description": "Gestiona les etiquetes",
"detail": {
@@ -2692,7 +2698,7 @@
},
"raw_editor": {
"confirm_remove_config_text": "Si elimines la configuració de la interfície d'usuari Lovelace es generaran automàticament les visualitzacions de Lovelace amb les teves àrees i dispositius.",
"confirm_remove_config_title": "Estàs segur que vols eliminar la configuració de la interfície d'usuari Lovelace? Es generaran automàticament les visualitzacions de Lovelace amb les teves àrees i dispositius.",
"confirm_remove_config_title": "Estàs segur que vols eliminar la configuració de la interfície d'usuari Lovelace?",
"confirm_unsaved_changes": "Hi han canvis no desats. Segur que vols sortir?",
"confirm_unsaved_comments": "La configuració conté comentaris que es descartaran. Vols continuar?",
"error_invalid_config": "La configuració no és vàlida: {error}",

View File

@@ -604,15 +604,21 @@
"playlist": "Seznam skladeb",
"server": "Server"
},
"documentation": "dokumentace",
"learn_adding_local_media": "Další informace o přidávání médií naleznete v {documentation}.",
"local_media_files": "Umístěte svá videa, zvukové či obrazové soubory do adresáře médií, abyste je mohli procházet a přehrávat v prohlížeči nebo na podporovaných přehrávačích médií.",
"media_browsing_error": "Chyba při procházení médií",
"media_not_supported": "Přehrávač médií v prohlížeči nepodporuje tento typ média",
"media_player": "Přehrávač médií",
"media-player-browser": "Prohlížeč přehrávače médií",
"no_items": "Žádné položky",
"no_local_media_found": "Nebyla nalezena žádná místní média",
"no_media_folder": "Vypadá to, že jste dosud nevytvořili adresář médií.",
"pick": "Vybrat",
"pick-media": "Vybrat média",
"play": "Přehrát",
"play-media": "Přehrát média",
"setup_local_help": "Pokyny k nastavení místních médií najdete v {documentation}.",
"video_not_supported": "Váš prohlížeč nepodporuje element \"video\".",
"web-browser": "Webový prohlížeč"
},

View File

@@ -19,6 +19,7 @@
"logbook": "Αρχείο Συμβάντων",
"mailbox": "Γραμματοκιβώτιο",
"map": "Χάρτης",
"media_browser": "Πρόγραμμα περιήγησης πολυμέσων",
"profile": "Προφίλ",
"shopping_list": "Λίστα αγορών",
"states": "Επισκόπηση"
@@ -505,6 +506,8 @@
"back": "Πίσω",
"cancel": "Ακύρωση",
"close": "Κλείστε",
"continue": "Συνέχεια",
"copied": "Αντιγράφηκε",
"delete": "Διαγραφή",
"error_required": "Υποχρεωτικό",
"loading": "Φόρτωση",
@@ -551,6 +554,10 @@
"toggle": "Εναλλαγή"
},
"entity": {
"entity-attribute-picker": {
"attribute": "Χαρακτηριστικό",
"show_attributes": "Εμφάνιση χαρακτηριστικών"
},
"entity-picker": {
"clear": "Καθαρισμός",
"entity": "Οντότητα",
@@ -561,20 +568,63 @@
"loading_history": "Φόρτωση ιστορικού κατάστασης …",
"no_history_found": "Δεν έχει βρεθεί ιστορικό κατάστασης."
},
"logbook": {
"entries_not_found": "Δεν βρέθηκαν καταχωρήσεις ημερολογίου."
},
"media-browser": {
"audio_not_supported": "Το πρόγραμμα περιήγησής σας δεν υποστηρίζει το στοιχείο ήχου.",
"choose_player": "Επιλογή προγράμματος αναπαραγωγής",
"choose-source": "Επιλέξτε Πηγή",
"class": {
"album": "Άλμπουμ",
"app": "Εφαρμογή",
"artist": "Καλλιτέχνης",
"channel": "Κανάλι",
"composer": "Συνθέτης",
"contributing_artist": "Συνεισφέροντας Καλλιτέχνης",
"directory": "Βιβλιοθήκη",
"episode": "Επεισόδιο",
"game": "Παιχνίδι",
"genre": "Είδος",
"image": "Εικόνα",
"movie": "Ταινία",
"music": "Μουσική",
"playlist": "Λίστα αναπαραγωγής",
"podcast": "Podcast",
"season": "Σεζόν",
"track": "Κομμάτι",
"tv_show": "Τηλεοπτική εκπομπή",
"url": "Διεύθυνση url",
"video": "Βίντεο"
},
"content-type": {
"album": "Άλμπουμ",
"artist": "Καλλιτέχνης",
"library": "Βιβλιοθήκη",
"playlist": "Λίστα αναπαραγωγής",
"server": "Διακομιστής"
},
"documentation": "τεκμηρίωση",
"learn_adding_local_media": "Μάθετε περισσότερα σχετικά με την προσθήκη πολυμέσων στην {τεκμηρίωση}.",
"local_media_files": "Τοποθετήστε τα αρχεία βίντεο, ήχου και εικόνας στον κατάλογο πολυμέσων για να μπορείτε να περιηγηθείτε και να τα αναπαραγάγετε στο πρόγραμμα περιήγησης ή σε υποστηριζόμενες συσκευές αναπαραγωγής πολυμέσων.",
"media_browsing_error": "Σφάλμα περιήγησης πολυμέσων",
"media_not_supported": "Το Πρόγραμμα αναπαραγωγής πολυμέσων του προγράμματος περιήγησης δεν υποστηρίζει αυτόν τον τύπο πολυμέσων",
"media_player": "Πρόγραμμα αναπαραγωγής πολυμέσων",
"media-player-browser": "Πρόγραμμα περιήγησης πολυμέσων",
"no_items": "Χωρίς στοιχεία",
"no_local_media_found": "Δεν βρέθηκαν τοπικά μέσα",
"no_media_folder": "Φαίνεται ότι δεν έχετε δημιουργήσει ακόμη έναν κατάλογο πολυμέσων.",
"pick": "Επιλέξετε",
"pick-media": "Επιλογή μέσων",
"play": "Αναπαραγωγή",
"play-media": "Αναπαραγωγή πολυμέσων"
"play-media": "Αναπαραγωγή πολυμέσων",
"setup_local_help": "Ελέγξτε την {τεκμηρίωση} σχετικά με τον τρόπο ρύθμισης των τοπικών μέσων.",
"video_not_supported": "Το πρόγραμμα περιήγησής σας δεν υποστηρίζει το στοιχείο βίντεο.",
"web-browser": "Φυλλομετρητής"
},
"picture-upload": {
"label": "Εικόνα",
"unsupported_format": "Μη υποστηριζόμενη μορφή, επιλέξτε μια εικόνα JPEG, PNG ή GIF."
},
"relative_time": {
"duration": {
@@ -600,6 +650,7 @@
"title": "Επιλογές συστήματος για το {integration}"
},
"domain_toggler": {
"reset_entities": "Επαναφορά οντοτήτων",
"title": "Εναλλαγή τομέων"
},
"entity_registry": {
@@ -615,6 +666,7 @@
},
"generic": {
"cancel": "Ακύρωση",
"close": "κλείσε",
"default_confirmation_title": "Είστε σίγουροι;",
"ok": "Εντάξει"
},
@@ -625,6 +677,10 @@
"time": "Ώρα"
},
"input_number": {
"box": "Πεδίο εισαγωγής",
"max": "Μέγιστη τιμή",
"min": "Ελάχιστη τιμή",
"mode": "Λειτουργία εμφάνισης",
"step": "Μέγεθος βήματος"
},
"input_text": {
@@ -634,8 +690,14 @@
"platform_not_loaded": "Η ενσωμάτωση {platform} δεν έχει φορτωθεί. Προσθέστε το στη διαμόρφωσή σας είτε προσθέτοντας 'default_config:' ή '' {platform} : ''.",
"yaml_not_editable": "Δεν είναι δυνατή η επεξεργασία των ρυθμίσεων αυτής της οντότητας από το περιβάλλον χρήστη. Μόνο οντότητες που έχουν δημιουργηθεί από το περιβάλλον χρήστη μπορούν να διαμορφωθούν από το περιβάλλον χρήστη."
},
"image_cropper": {
"crop": "Περικοπή"
},
"more_info_control": {
"controls": "Έλεγχοι",
"details": "Λεπτομέρειες",
"dismiss": "Κλείσιμο διαλόγου.",
"history": "Ιστορικό",
"restored": {
"confirm_remove_text": "Είστε βέβαιοι πως θέλετε να καταργήσετε αυτή την οντότητα;",
"confirm_remove_title": "Θέλετε να αφαιρέσετε αυτή την οντότητα;",
@@ -664,7 +726,8 @@
"payload_display": "Εμφάνιση ωφέλιμου φορτίου",
"recent_messages": "{n} πιο πρόσφατα ληφθέντα μηνύματα",
"show_as_yaml": "Εμφάνιση ως YAML",
"title": "Πληροφορίες εντοπισμού σφαλμάτων {device}"
"title": "Πληροφορίες εντοπισμού σφαλμάτων {device}",
"triggers": "Εναύσματα"
},
"options_flow": {
"form": {
@@ -842,7 +905,13 @@
"label": "Κάλεσμα υπηρεσίας",
"service_data": "Δεδομένα υπηρεσίας"
},
"wait_for_trigger": {
"continue_timeout": "Συνέχεια στο χρονικό όριο",
"label": "Αναμονή για έναυσμα",
"timeout": "χρονικό όριο (προαιρετικό)"
},
"wait_template": {
"continue_timeout": "Συνέχεια στο χρονικό όριο",
"label": "Αναμονή",
"timeout": "Λήξη χρόνου (προαιρετικό)",
"wait_template": "Πρότυπο Αναμονής"
@@ -903,7 +972,8 @@
"time": {
"after": "Μετά",
"before": "Πριν",
"label": "Χρόνος"
"label": "Χρόνος",
"type_value": "Σταθερός χρόνος"
},
"zone": {
"entity": "Οντότητα με τοποθεσία",
@@ -990,6 +1060,7 @@
"value_template": "Τιμή πρότυπου (προαιρετικό)"
},
"state": {
"attribute": "Χαρακτηριστικό (Προαιρετικό)",
"for": "Για",
"from": "Από",
"label": "Κατάσταση",
@@ -1017,7 +1088,9 @@
},
"time": {
"at": "Στις",
"label": "Ώρα"
"label": "Ώρα",
"type_input": "Τιμή ενός βοηθού ημερομηνίας/ώρας",
"type_value": "Σταθερός χρόνος"
},
"webhook": {
"label": "Webhook",
@@ -1040,6 +1113,8 @@
"add_automation": "Προσθήκη αυτοματισμού",
"delete_automation": "Διαγραφή αυτοματισμού",
"delete_confirm": "Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτόν τον αυτοματισμό;",
"duplicate": "Διπλότυπο",
"duplicate_automation": "Διπλή αυτοματοποίηση",
"edit_automation": "Επεξεργασία αυτοματισμού",
"header": "Επεξεργαστής αυτοματισμού",
"headers": {
@@ -1120,8 +1195,14 @@
},
"alexa": {
"banner": "Η επεξεργασία των οντοτήτων που εκτίθενται μέσω αυτού του περιβάλλοντος χρήστη είναι απενεργοποιημένη, επειδή έχετε διαμορφώσει φίλτρα οντοτήτων στο αρχείο configuration.yaml.",
"dont_expose_entity": "Να μην εκτεθεί η οντότητα",
"expose": "Έκθεση στο Alexa",
"expose_entity": "Έκθεση οντότητας",
"exposed": "{επιλεγμένο} εκτεθειμένο",
"exposed_entities": "Εκτεθειμένες οντότητες",
"follow_domain": "Παρακολούθηση τομέα",
"manage_domains": "Διαχείριση τομέων",
"not_exposed": "{επιλεγμένο} δεν εκτίθεται",
"not_exposed_entities": "Μη εκτεθειμένες οντότητες",
"title": "Alexa"
},
@@ -1159,8 +1240,14 @@
"google": {
"banner": "Η επεξεργασία των οντοτήτων που εκτίθενται μέσω αυτού του περιβάλλοντος χρήστη είναι απενεργοποιημένη, επειδή έχετε διαμορφώσει φίλτρα οντοτήτων στο αρχείο configuration.yaml.",
"disable_2FA": "Απενεργοποιήστε τον έλεγχο ταυτότητας δύο παραγόντων",
"dont_expose_entity": "Να μην εκτεθεί η οντότητα",
"expose": "Έκθεση στο Google Assistant.",
"expose_entity": "Έκθεση οντότητας",
"exposed": "{επιλεγμένο} εκτεθειμένο",
"exposed_entities": "Εκτεθειμένες οντότητες",
"follow_domain": "Παρακολούθηση τομέα",
"manage_domains": "Διαχείριση τομέων",
"not_exposed": "{επιλεγμένο} μη-εκτεθειμένο",
"not_exposed_entities": "Μη εκτεθειμένες οντότητες",
"sync_to_google": "Συγχρονισμός αλλαγών στο Google.",
"title": "Google Assistant"
@@ -1356,17 +1443,31 @@
}
}
},
"filtering": {
"clear": "Εκκαθάριση",
"filtering_by": "Φιλτράρισμα κατά"
},
"header": "Διαμόρφωση του Home Assistant",
"helpers": {
"description": "Διαχειριστείτε στοιχεία που βοηθούν στη δημιουργία αυτοματισμών",
"dialog": {
"add_helper": "Προσθήκη βοηθού",
"add_platform": "Προσθήκη {πλατφόρμας}",
"create": "Δημιουργία"
},
"picker": {
"add_helper": "Προσθήκη βοηθού",
"headers": {
"editable": "Επεξεργάσιμο",
"entity_id": "Αναγνωριστικό οντότητας",
"name": "Ονομασία"
"name": "Ονομασία",
"type": "Τύπος"
},
"no_helpers": "Φαίνεται ότι δεν έχετε ακόμα βοηθούς!"
},
"types": {
"input_boolean": "Εναλλαγή",
"input_datetime": "Ημερομηνία και/ή ώρα",
"input_number": "Αριθμός",
"input_text": "Κείμενο"
}
@@ -1397,6 +1498,8 @@
"missing_zwave": "Λείπει ο πίνακας διαμόρφωσης Z-Wave; Μετακινήθηκε στην καταχώριση Z-Wave στο {integrations_page} ."
},
"integrations": {
"add_integration": "Προσθήκη ενσωμάτωσης",
"attention": "Απαιτείται προσοχή",
"caption": "Ενσωματώσεις",
"config_entry": {
"area": "Στην {area}",
@@ -1413,8 +1516,12 @@
"no_device": "Οντότητες χωρίς συσκευές",
"no_devices": "Αυτή η ενοποίηση δεν έχει συσκευές.",
"options": "Επιλογές",
"reload": "Επαναφόρτωση",
"reload_confirm": "Η ενσωμάτωση επαναφορτώθηκε",
"reload_restart_confirm": "Κάντε επανεκκίνηση του Home Assistant για να ολοκληρώσετε τη φόρτωση αυτής της ενσωμάτωσης",
"rename": "Μετονομασία",
"restart_confirm": "Επανεκκινήστε το Home Assistant για να ολοκληρώσετε την κατάργηση αυτής της ενοποίησης",
"services": "{count} {count, plural,\n one {υπηρεσία}\n other {υπηρεσίες}\n}",
"settings_button": "Επεξεργασία ρυθμίσεων για {integration}",
"system_options": "Επιλογές συστήματος",
"system_options_button": "Επιλογές συστήματος για {integration}",
@@ -1451,6 +1558,7 @@
"show_ignored": "Απόκρυψη των ενσωματώσεων που παραβλέφθηκαν",
"stop_ignore": "Διακοπή την παράβλεψη"
},
"integration": "ενσωμάτωση",
"integration_not_found": "Η ενσωμάτωση δε βρέθηκε.",
"new": "Ρυθμίστε νέα ενοποίηση",
"none": "Δεν υπάρχει διαμόρφωση ακόμα",
@@ -1458,6 +1566,7 @@
"none_found_detail": "Προσαρμόστε τα κριτήρια αναζήτησης.",
"note_about_integrations": "Δεν μπορούν όλες οι ενσωματώσεις να διαμορφωθούν από το UI ακόμη.",
"note_about_website_reference": "Περισσότερα είναι διαθέσιμα στο",
"reconfigure": "Αναδιαμόρφωση",
"rename_input_label": "Όνομα καταχώρησης",
"search": "Αναζήτηση ενσωματώσεων"
},
@@ -1476,23 +1585,40 @@
"title": "Αρχεία καταγραφής"
},
"lovelace": {
"caption": "Πίνακες ελέγχου Lovelace",
"dashboards": {
"cant_edit_default": "Δεν είναι δυνατή η επεξεργασία του τυπικού πίνακα ελέγχου Lovelace από τη διεπαφή χρήστη. Μπορείτε να το αποκρύψετε ορίζοντας έναν άλλο πίνακα ελέγχου ως προεπιλογή.",
"cant_edit_yaml": "Δεν είναι δυνατή η επεξεργασία πινάκων εργαλείων που ορίζονται στο YAML από το περιβάλλον εργασίας χρήστη. Αλλάξτε τα στο configuration.yaml.",
"caption": "Επισκόπηση",
"conf_mode": {
"storage": "Ελεγχόμενο από το UI",
"yaml": "Αρχείο YAML"
},
"confirm_delete": "Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτόν τον πίνακα ελέγχου;",
"default_dashboard": "Αυτή είναι η προεπιλεγμένη επισκόπηση",
"detail": {
"create": "Δημιουργία",
"delete": "Διαγραφή",
"dismiss": "Κλείστε",
"edit_dashboard": "Επεξεργασία πίνακα εργαλείων",
"icon": "Εικονίδιο",
"new_dashboard": "Προσθήκη νέου πίνακα ελέγχου",
"require_admin": "Μόνο διαχειριστής",
"show_sidebar": "Εμφάνιση στην πλαϊνή γραμμή",
"title": "Τίτλος",
"title_required": "Απαιτείται τίτλος.",
"update": "Ενημέρωση",
"url": "Διεύθυνση url",
"url_error_msg": "Η διεύθυνση URL πρέπει να περιέχει ένα - και δεν μπορεί να περιέχει κενά ή ειδικούς χαρακτήρες, εκτός από _ και -"
},
"picker": {
"add_dashboard": "Προσθήκη πίνακα εργαλείων",
"headers": {
"conf_mode": "Μέθοδος διαμόρφωσης",
"default": "Προεπιλογή",
"filename": νομα_αρχείου"
"filename": νομα_αρχείου",
"require_admin": "Μόνο διαχειριστής",
"sidebar": "Εμφάνιση στην πλαϊνή γραμμή"
},
"open": "Άνοιγμα"
}
@@ -1520,7 +1646,10 @@
"topic": "θέμα"
},
"ozw": {
"button": "Διαμόρφωση",
"common": {
"controller": "Ελεγκτής",
"network": "Δίκτυο",
"node_id": "Αναγνωριστικό κόμβου",
"ozw_instance": "Παρουσία OpenZWave",
"zwave": "Z-Wave"
@@ -1561,26 +1690,48 @@
"node_count": "{count} κόμβοι"
},
"node_query_stages": {
"associations": "Ανανέωση ομάδων συσχέτισης και μελών",
"cacheload": "Φόρτωση πληροφοριών από το αρχείο προσωρινής αποθήκευσης OpenZWave. Οι κόμβοι μπαταρίας θα παραμείνουν σε αυτό το στάδιο έως ότου ξυπνήσει ο κόμβος.",
"complete": "Η διαδικασία της συνέντευξης ολοκληρώθηκε",
"configuration": "Λήψη τιμών διαμόρφωσης από τον κόμβο",
"dynamic": "Λήψη τιμών που αλλάζουν συχνά από τον κόμβο",
"instances": "Λήψη λεπτομερειών σχετικά με τις παρουσίες ή τα κανάλια που υποστηρίζει μια συσκευή",
"manufacturerspecific1": "Απόκτηση κωδικών κατασκευαστή και αναγνωριστικού προϊόντος από τον κόμβο",
"manufacturerspecific2": "Λήψη πρόσθετων κωδικών αναγνωριστικού κατασκευαστή και προϊόντος από τον κόμβο",
"neighbors": "Απόκτηση λίστας των γειτονικών κόμβων",
"nodeinfo": "Λήψη υποστηριζόμενων κλάσεων εντολών από τον κόμβο",
"nodeplusinfo": "Λήψη πληροφοριών Z-Wave+ από τον κόμβο",
"probe": "Έλεγχος εάν ο κόμβος είναι ξύπνιος / ενεργός",
"protocolinfo": "Απόκτηση βασικών δυνατοτήτων Z-Wave αυτού του κόμβου από τον ελεγκτή",
"session": "Λήψη σπάνια μεταβαλλόμενων τιμών από τον κόμβο",
"static": "Λήψη στατικών τιμών από τη συσκευή",
"versions": "Λήψη πληροφοριών σχετικά με εκδόσεις υλικολογισμικού και κλάσης εντολών",
"wakeup": "Ρύθμιση υποστήριξης για ουρές αφύπνισης και μηνύματα"
},
"node": {
"button": "Λεπτομέρειες κόμβου",
"not_found": "Ο κόμβος δεν βρέθηκε"
},
"nodes_table": {
"failed": "Απέτυχε",
"id": "Αναγνωριστικό",
"manufacturer": "Κατασκευαστής",
"model": "Μοντέλο",
"query_stage": "Στάδιο ερωτήματος",
"zwave_plus": "Z-Wave Plus"
},
"refresh_node": {
"battery_note": "Εάν ο κόμβος τροφοδοτείται με μπαταρία, φροντίστε να τον ενεργοποιήσετε πριν συνεχίσετε",
"button": "Ανανέωση κόμβου",
"complete": "Ολοκληρώθηκε η ανανέωση κόμβου",
"description": "Αυτό θα πει στο OpenZWave να πάρει εκ νέου συνέντευξη από έναν κόμβο και να ενημερώσει τις εντολές, τις δυνατότητες και τις τιμές του κόμβου.",
"node_status": "Κατάσταση Κόμβου",
"refreshing_description": "Ανανέωση δεδομένων κόμβου σε εξέλιξη...",
"start_refresh_button": "Εναρξη Ανανέωσης",
"start_refresh_button": "Έναρξη ανανέωσης",
"step": "Βήμα",
"title": "Ανανέωση πληροφοριών κόμβου",
"wakeup_header": "Οδηγίες εκκίνησης απο"
"wakeup_header": "Οδηγίες αφύπνισης για",
"wakeup_instructions_source": "Οι οδηγίες αφύπνισης προέρχονται από τη βάση δεδομένων συσκευών κοινότητας OpenZWave."
},
"select_instance": {
"header": "Επιλέξτε ένα στιγμιότυπο OpenZWave",
@@ -1714,17 +1865,36 @@
"section": {
"reloading": {
"automation": "Επαναφόρτωση αυτοματισμών",
"command_line": "Επαναφόρτωση οντοτήτων γραμμής εντολών",
"core": "Επαναφόρτωση τοποθεσίας και προσαρμογών",
"filesize": "Επαναφόρτωση οντοτήτων μεγέθους αρχείου",
"filter": "Επαναφόρτωση οντοτήτων φίλτρου",
"generic": "Επαναφόρτωση γενικών οντοτήτων κάμερας IP",
"generic_thermostat": "Επαναφόρτωση γενικών οντοτήτων θερμοστάτη",
"group": "Επαναφόρτωση ομάδων",
"heading": "Επαναφόρτωση παραμετροποίησης YAML ",
"history_stats": "Επαναφόρτωση οντοτήτων στατιστικών στοιχείων ιστορικού",
"homekit": "Επαναφόρτωση του HomeKit",
"input_boolean": "Επαναφόρτωση δυαδικών μεταβλητών εισόδου",
"input_datetime": "Επαναφόρτωση ημερομηνίας εισαγωγής",
"input_number": "Επαναφόρτωση αριθμών εισόδου",
"input_select": "Επαναφόρτωση δέσμης εντολών",
"input_text": "Επαναφόρτωση κειμένων εισόδου",
"introduction": "Ορισμένα τμήματα του Home Assistant μπορούν να επαναφορτωθούν χωρίς να απαιτείται επανεκκίνηση. Πατώντας \"επαναφόρτωση\" θα ξεφορτωθεί η τρέχουσα παραμετροποίηση YAML και θα φορτωθεί η νέα.",
"min_max": "Επαναφόρτωση οντοτήτων ελάχιστων / μέγιστων",
"mqtt": "Επαναφόρτωση οντοτήτων mqtt",
"ping": "Επαναφόρτωση οντοτήτων δυαδικών αισθητήρων ping",
"reload": "Επαναφόρτωση {τομέα}",
"rest": "Επαναφόρτωση οντοτήτων ανάπαυσης και ειδοποίηση υπηρεσιών",
"rpi_gpio": "Επαναφόρτωση οντοτήτων Raspberry Pi GPIO",
"scene": "Επαναφόρτωση σκηνών",
"script": "Επαναφόρτωση δέσμης εντολών"
"script": "Επαναφόρτωση δέσμης εντολών",
"smtp": "Επανάληψη φόρτωσης υπηρεσιών ειδοποίησης smtp",
"statistics": "Επαναφόρτωση οντοτήτων στατιστικών",
"telegram": "Επαναφόρτωση υπηρεσιών ειδοποίησης telegram",
"template": "Επαναφόρτωση οντοτήτων προτύπου",
"trend": "Επαναφόρτωση οντοτήτων τάσης",
"universal": "Επανάληψη φόρτωσης οντοτήτων καθολικής αναπαραγωγής πολυμέσων"
},
"server_management": {
"confirm_restart": "Είστε βέβαιος ότι θέλετε να επανεκκινήσετε το Home Assistant;",
@@ -1744,6 +1914,11 @@
}
},
"tags": {
"add_tag": "Προσθήκη ετικέτας",
"automation_title": "Η ετικέτα {name} σαρώθηκε",
"caption": "Ετικέτες",
"create_automation": "Δημιουργία αυτοματοποίησης με ετικέτα",
"description": "Διαχείριση ετικετών",
"detail": {
"create": "Δημιουργία",
"create_and_write": "Δημιουργία και εγγραφή",
@@ -1751,8 +1926,18 @@
"description": "Περιγραφή",
"name": "Όνομα",
"new_tag": "Νέα ετικέτα",
"tag_id": "Αναγνωριστικό ετικέτας",
"tag_id_placeholder": "Αυτόματη δημιουργία όταν αφεθεί κενό",
"update": "Ενημέρωση"
}
},
"edit": "Επεξεργασία",
"headers": {
"last_scanned": "Τελευταία σάρωση",
"name": "Όνομα"
},
"never_scanned": "Δεν έγινε ποτέ σάρωση",
"no_tags": "Καμία ετικέτα",
"write": "Εγγραφή"
},
"users": {
"add_user": {
@@ -1760,6 +1945,8 @@
"create": "Δημιουργία",
"name": "Όνομα",
"password": "Κωδικός",
"password_confirm": "Επιβεβαίωση Κωδικού",
"password_not_match": "Οι κωδικοί πρόσβασης δεν ταιριάζουν",
"username": "Όνομα χρήστη"
},
"caption": "Χρήστες",
@@ -1776,7 +1963,9 @@
"group": "Ομάδα",
"id": "Αναγνωριστικό",
"name": "Ονομασία",
"new_password": "Νέος κωδικός",
"owner": "Ιδιοκτήτης",
"password_changed": "Ο κωδικός άλλαξε!",
"system_generated": "Δημιουργήθηκε από το σύστημα",
"system_generated_users_not_editable": "Δεν είναι δυνατή η ενημέρωση των χρηστών που δημιουργούνται από το σύστημα.",
"system_generated_users_not_removable": "Δεν είναι δυνατή η διαγραφή χρηστών που δημιουργήθηκαν από το σύστημα",
@@ -1926,6 +2115,8 @@
},
"node_management": {
"add_to_group": "Προσθήκη σε ομάδα",
"entities": "Οντότητες αυτού του κόμβου",
"entity_info": "Πληροφορίες οντότητας",
"exclude_entity": "Εξαίρεση αυτής της οντότητας από τον Home Assistant",
"group": "Ομάδα",
"header": "Διαχείριση κόμβων Z-Wave",
@@ -1934,7 +2125,9 @@
"node_group_associations": "Κόμβοι συσχετίσεων ομάδων",
"node_protection": "Προστασία κόμβου",
"node_to_control": "Κόμβος προς έλεγχο",
"nodes": "Κόμβοι",
"nodes_in_group": "Άλλοι κόμβοι σε αυτήν την ομάδα:",
"pooling_intensity": "Ένταση σταθμοσκόπησης",
"protection": "Προστασία",
"remove_broadcast": "Κατάργηση εκπομπής",
"remove_from_group": "Κατάργηση από ομάδα",
@@ -2031,9 +2224,14 @@
"title": "Καταστάσεις"
},
"templates": {
"all_listeners": "Αυτό το πρότυπο ακούει για όλα τα συμβάντα που έχουν αλλάξει κατάσταση.",
"description": "Τα πρότυπα μετατρέπονται χρησιμοποιώντας τη μηχανή πρότυπου Jinja2 με ορισμένες εξειδικευμένες επεκτάσεις του Home Assistant.",
"domain": "Τομέας",
"editor": "Πρόγραμμα επεξεργασίας προτύπων",
"entity": "Οντότητα",
"jinja_documentation": "Έγγραφα πρότυπου Jinja2",
"listeners": "Αυτό το πρότυπο ακούει για τα ακόλουθα συμβάντα που έχουν αλλάξει κατάσταση:",
"no_listeners": "Αυτό το πρότυπο δεν ακούει για συμβάντα που έχουν αλλάξει κατάσταση και δεν θα ενημερώνεται αυτόματα.",
"reset": "Επαναφορά στο πρότυπο επίδειξης",
"template_extensions": "Επεκτάσεις προτύπου Home Assistant",
"title": "Πρότυπα",
@@ -2154,6 +2352,7 @@
"icon": "Εικονίδιο",
"icon_height": "Ύψος εικονιδίου",
"image": "Διαδρομή εικόνας",
"manual": "Εγχειρίδιο",
"maximum": "Μέγιστο",
"minimum": "Ελάχιστο",
"name": "Όνομα",
@@ -2165,6 +2364,7 @@
"show_name": "Εμφάνιση ονόματος;",
"show_state": "Εμφάνιση κατάστασης;",
"state": "Κατάσταση",
"state_color": "Έγχρωμα εικονίδια βάσει της κατάστασης;",
"tap_action": "Ενέργεια πατήματος",
"theme": "Θέμα",
"title": "Τίτλος",
@@ -2189,11 +2389,13 @@
"name": "Ιστοσελίδα"
},
"light": {
"description": "Η κάρτα \"Φως\" σας επιτρέπει να αλλάξετε τη φωτεινότητα του φωτός.",
"name": "Φως"
},
"map": {
"dark_mode": "Σκοτεινή λειτουργία;",
"default_zoom": "Προεπιλεγμένο ζουμ",
"description": "Η κάρτα χάρτη που σας επιτρέπει να εμφανίζετε οντότητες σε έναν χάρτη.",
"geo_location_sources": "Πηγές γεωγραφικής θέσης",
"hours_to_show": "Ώρες για εμφάνιση",
"name": "Χάρτης",
@@ -2201,35 +2403,43 @@
},
"markdown": {
"content": "Περιεχόμενο",
"description": "Η κάρτα Markdown χρησιμοποιείται για την απόδοση του Markdown.",
"name": "Υποσημείωση."
},
"media-control": {
"description": "Η κάρτα ελέγχου πολυμέσων χρησιμοποιείται για την εμφάνιση οντοτήτων αναπαραγωγής πολυμέσων σε μια διασύνδεση με εύχρηστα στοιχεία ελέγχου.",
"name": "Έλεγχος πολυμέσων"
},
"picture-elements": {
"name": "Στοιχεία εικόνας"
},
"picture-entity": {
"description": "Η κάρτα \"Οντότητα εικόνας\" εμφανίζει μια οντότητα με τη μορφή εικόνας. Αντί για εικόνες από τη διεύθυνση URL, μπορεί επίσης να εμφανίσει την εικόνα των οντοτήτων της κάμερας.",
"name": "Οντότητα εικόνας"
},
"picture-glance": {
"description": "Η κάρτα \"Ματιά εικόνας\" εμφανίζει μια εικόνα και τις αντίστοιχες καταστάσεις οντότητας ως εικονίδιο. Οι οντότητες στη δεξιά πλευρά επιτρέπουν ενέργειες εναλλαγής, ενώ άλλες εμφανίζουν το παράθυρο διαλόγου περισσότερων πληροφοριών.",
"name": "Στιγμιότυπο εικόνας"
},
"picture": {
"name": "Εικόνα"
},
"plant-status": {
"description": "Η κάρτα κατάστασης φυτών είναι για όλους τους υπέροχους βοτανολόγους εκεί έξω.",
"name": "Κατάσταση εγκατάστασης"
},
"sensor": {
"description": "Η Κάρτα Αισθητήρα σας παρέχει μια γρήγορη επισκόπηση της κατάστασης των αισθητήρων σας με ένα προαιρετικό γράφημα για να απεικονίσετε την αλλαγή με την πάροδο του χρόνου.",
"graph_detail": "Λεπτομέρειες γραφήματος",
"graph_type": "Τύπος γραφήματος",
"name": "Αισθητήρας"
},
"shopping-list": {
"description": "Η κάρτα \"Λίστα αγορών\" σάς επιτρέπει να προσθέτετε, να επεξεργάζεστε, να κάνετε check-off και να εκκαθαρίζετε στοιχεία από τη λίστα αγορών σας.",
"name": "Λίστα αγορών"
},
"thermostat": {
"description": "Η κάρτα Θερμοστάτη δίνει τον έλεγχο της κλιματικής οντότητας. Επιτρέποντάς σας να αλλάξετε τη θερμοκρασία και τον τρόπο της οντότητας.",
"name": "Θερμοστάτης"
},
"vertical-stack": {
@@ -2241,7 +2451,11 @@
}
},
"cardpicker": {
"by_card": "Ανά κάρτα",
"by_entity": "Ανά οντότητα",
"custom_card": "Προσαρμοσμένη",
"domain": "Τομέας",
"entity": "Οντότητα",
"no_description": "Δεν υπάρχει διαθέσιμη περιγραφή"
},
"edit_card": {
@@ -2255,6 +2469,7 @@
"options": "Περισσότερες επιλογές",
"pick_card": "Επιλέξτε την κάρτα που θέλετε να προσθέσετε.",
"pick_card_view_title": "Ποια κάρτα θέλετε να προσθέσετε στην προβολή {name} ;",
"search_cards": "Αναζήτηση καρτών",
"show_code_editor": "Εμφάνιση επεξεργαστή κώδικα",
"show_visual_editor": "Εμφάνιση οπτικού προγράμματος επεξεργασίας",
"toggle_editor": "Εναλλαγή κειμενογράφου",
@@ -2338,7 +2553,8 @@
},
"reload_lovelace": "Επαναφόρτωση Lovelace",
"reload_resources": {
"refresh_body": "Πρέπει να ανανεώσετε τη σελίδα για να ολοκληρώσετε την επαναφόρτωση, θέλετε να την ανανεώσετε τώρα;"
"refresh_body": "Πρέπει να ανανεώσετε τη σελίδα για να ολοκληρώσετε την επαναφόρτωση, θέλετε να την ανανεώσετε τώρα;",
"refresh_header": "Θέλετε να ανανεώσετε;"
},
"unused_entities": {
"available_entities": "Αυτές είναι οι οντότητες που έχετε στη διάθεσή σας, αλλά δεν έχετε ακόμα στο UI του Lovelace.",
@@ -2357,6 +2573,7 @@
"confirm_delete_text": "Είστε βέβαιοι ότι θέλετε να διαγράψετε την προβολή '' {name} '';"
},
"warning": {
"attribute_not_found": "Το χαρακτηριστικό {attribute} δεν είναι διαθέσιμο σε: {entity}",
"entity_non_numeric": "Η οντότητα δεν είναι αριθμητική: {entity}",
"entity_not_found": "Η οντότητα δεν είναι διαθέσιμη: {entity}",
"entity_unavailable": "{entity} δεν είναι διαθέσιμο προς το παρόν",
@@ -2560,6 +2777,11 @@
"submit": "Υποβολή"
},
"current_user": "Αυτήν τη στιγμή είστε συνδεδεμένος ως {fullName}.",
"customize_sidebar": {
"button": "Επεξεργασία",
"description": "Μπορείτε επίσης να πατήσετε παρατεταμένα την κεφαλίδα της πλαϊνής γραμμής για να ενεργοποιήσετε τη λειτουργία επεξεργασίας.",
"header": "Αλλαγή της σειράς και απόκρυψη στοιχείων από την πλαϊνή γραμμή"
},
"dashboard": {
"description": "Προεπιλέξτε μια επισκόπηση για αυτή τη συσκευή",
"dropdown_label": "Επισκόπηση",
@@ -2580,6 +2802,7 @@
"confirm_delete": "Είστε σίγουρος ότι θέλετε να διαγράψετε το διακριτικό πρόσβασης για το {name};",
"create": "Δημιουργία Διακριτικού",
"create_failed": "Αδύνατη η δημιουργία του τρέχοντος διακριτικού.",
"created": "Δημιουργήθηκε {ημερομηνία}",
"created_at": "Δημιουργήθηκε στις {date}",
"delete_failed": "Αδύνατη η διαγραφή του τρέχοντος διακριτικού.",
"description": "Δημιουργήστε διακριτικά πρόσβασης μακράς διάρκειας για να επιτρέψετε στα σενάρια σας να αλληλεπιδρούν με το Home Assistant. Κάθε διακριτικό θα ισχύει για 10 χρόνια. Τα παρακάτω διακριτικά πρόσβασης μακράς διαρκείας είναι ενεργά.",
@@ -2587,6 +2810,7 @@
"header": "Διακριτικά πρόσβασης μακράς διάρκειας",
"last_used": "Τελευταία χρήση στις {date} από {location}",
"learn_auth_requests": "Μάθετε πώς να κάνετε πιστοποιημένα αιτήματα.",
"name": "Όνομα",
"not_used": "Δεν έχει χρησιμοποιηθεί ποτέ",
"prompt_copy_token": "Αντιγράψτε το διακριτικό πρόσβασης. Δεν θα εμφανιστεί ξανά.",
"prompt_name": "Όνομα;"
@@ -2653,6 +2877,7 @@
}
},
"sidebar": {
"done": "Ολοκληρώθηκε",
"external_app_configuration": "Διαμόρφωση Εφαρμογής",
"sidebar_toggle": "Εναλλαγή πλαϊνής μπάρας"
}

View File

@@ -604,15 +604,21 @@
"playlist": "Lista de reproducción",
"server": "Servidor"
},
"documentation": "documentación",
"learn_adding_local_media": "Aprende más sobre cómo añadir contenido multimedia en la {documentation}.",
"local_media_files": "Coloca tus archivos de vídeo, audio e imagen en el directorio multimedia para poder navegar y reproducirlos en el navegador o en los reproductores compatibles.",
"media_browsing_error": "Error de navegación de medios",
"media_not_supported": "El Reproductor multimedia del navegador no es compatible con este tipo de medio",
"media_player": "Reproductor multimedia",
"media-player-browser": "Navegador del Reproductor Multimedia",
"no_items": "No hay elementos",
"no_local_media_found": "No se ha encontrado contenido multimedia local",
"no_media_folder": "Parece que aún no has creado un directorio multimedia.",
"pick": "Elegir",
"pick-media": "Elegir medio",
"play": "Reproducir",
"play-media": "Reproducir medio",
"setup_local_help": "Consulta la {documentation} sobre cómo configurar el contenido multimedia local.",
"video_not_supported": "Tu navegador no es compatible con el elemento de vídeo.",
"web-browser": "Navegador web"
},
@@ -2692,7 +2698,7 @@
},
"raw_editor": {
"confirm_remove_config_text": "Generaremos automáticamente tus vistas de la IU Lovelace con tus áreas y dispositivos si eliminas tu configuración de Lovelace.",
"confirm_remove_config_title": "¿Estás seguro de que deseas eliminar tu configuración de la IU Lovelace? Generaremos automáticamente tus vistas de la IU Lovelace con tus áreas y dispositivos.",
"confirm_remove_config_title": "¿Estás seguro de que deseas eliminar tu configuración de la IU Lovelace?",
"confirm_unsaved_changes": "Tienes cambios sin guardar, ¿estás seguro de que quieres salir?",
"confirm_unsaved_comments": "Tu configuración contiene comentarios, estos no serán guardados. ¿Quieres continuar?",
"error_invalid_config": "Tu configuración no es válida: {error}",

File diff suppressed because it is too large Load Diff

View File

@@ -505,6 +505,8 @@
"back": "Takaisin",
"cancel": "Peruuta",
"close": "Sulje",
"continue": "Jatka",
"copied": "Kopioitu",
"delete": "Poista",
"error_required": "Pakollinen",
"loading": "Ladataan",
@@ -551,6 +553,10 @@
"toggle": "Vaihda"
},
"entity": {
"entity-attribute-picker": {
"attribute": "Määrite",
"show_attributes": "Näytä määritteet"
},
"entity-picker": {
"clear": "Tyhjennä",
"entity": "Kohde",
@@ -562,7 +568,27 @@
"no_history_found": "Tilahistoriaa ei löydetty"
},
"media-browser": {
"audio_not_supported": "Selaimesi ei tue audioelementtiä.",
"choose_player": "Valitse soitin",
"choose-source": "Valitse lähde",
"class": {
"album": "Albumi",
"app": "Sovellus",
"artist": "Artisti",
"channel": "Kanava",
"directory": "Kirjasto",
"episode": "Jakso",
"game": "Peli",
"genre": "Genre",
"image": "Kuva",
"movie": "Elokuva",
"music": "Musiikki",
"playlist": "Soittolista",
"season": "Kausi",
"tv_show": "TV-ohjelma",
"url": "URL",
"video": "Video"
},
"content-type": {
"album": "Albumi",
"artist": "Artisti",
@@ -570,12 +596,15 @@
"playlist": "Soittolista",
"server": "Palvelin"
},
"media_player": "Mediatoistin",
"media-player-browser": "Media Player -selain",
"no_items": "Ei kohteita",
"pick": "Valitse",
"pick-media": "Valitse media",
"play": "Toista",
"play-media": "Toista media"
"play-media": "Toista media",
"video_not_supported": "Selaimesi ei tue videoelementtiä.",
"web-browser": "Selain"
},
"related-items": {
"area": "Alue",
@@ -681,8 +710,10 @@
"yaml_not_editable": "Tämän kohteen asetuksia ei voi muokata käyttöliittymästä. Vain käyttöliittymästä määritetyt kohteet ovat määritettävissä käyttöliittymästä."
},
"more_info_control": {
"details": "Yksityiskohdat",
"dismiss": "Sulje ikkuna",
"edit": "Muokkaa kohdetta",
"history": "Historia",
"person": {
"create_zone": "Luo vyöhyke nykyisestä sijainnista"
},
@@ -1192,6 +1223,7 @@
"banner": "Tämän käyttöliittymän kautta näkyvien kohteiden muokkaaminen on poistettu käytöstä, koska olet määrittänyt kohdesuodattimet kohteessa configuration.yaml.",
"expose": "Julkista Alexalle",
"exposed_entities": "Julkistetut kohteet",
"manage_domains": "Hallitse toimialueita",
"not_exposed_entities": "eJulk",
"title": "Alexa"
},
@@ -1231,6 +1263,7 @@
"disable_2FA": "Poista kaksivaiheinen tunnistautuminen",
"expose": "Julkista Google Assistantille",
"exposed_entities": "Julkistetut kohteet",
"manage_domains": "Hallitse toimialueita",
"not_exposed_entities": "Julkistamattomat kohteet",
"sync_to_google": "Synkronoidaan muutokset Googleen.",
"title": "Google Assistant"
@@ -1563,6 +1596,7 @@
"none_found_detail": "Muokkaa haku ehtojasi",
"note_about_integrations": "Kaikkia integraatioita ei voi vielä määrittää käyttöliittymän kautta.",
"note_about_website_reference": "Lisää saatavilla",
"reconfigure": "Määritä uudelleen",
"rename_dialog": "Muokkaa tämän määritysmerkinnän nimeä",
"rename_input_label": "Merkinnän nimi",
"search": "Etsi integraatioita"
@@ -1676,6 +1710,8 @@
"button": "Määrittele",
"common": {
"controller": "Ohjain",
"instance": "Instanssi",
"network": "Verkko",
"node_id": "Solmun tunnus",
"ozw_instance": "OpenZWave-instanssi",
"zwave": "Z-Wave"
@@ -1686,10 +1722,13 @@
"zwave_info": "Z-Wave-tiedot"
},
"navigation": {
"nodes": "Solmut"
"network": "Verkko",
"nodes": "Solmut",
"select_instance": "Valitse instanssi"
},
"network_status": {
"details": {
"ready": "Valmis yhdistämään",
"started": "Yhdistetty MQTT:hen",
"starting": "Yhdistetään MQTT:hen",
"stopped": "OpenZWave pysähtyi"
@@ -1700,7 +1739,18 @@
"unknown": "Tuntematon"
},
"network": {
"header": "Verkon hallinta"
"header": "Verkon hallinta",
"node_count": "{count} solmua"
},
"nodes_table": {
"failed": "Epäonnistui",
"id": "ID",
"manufacturer": "Valmistaja",
"model": "Malli",
"zwave_plus": "Z-Wave Plus"
},
"refresh_node": {
"button": "Päivitä solmu"
},
"select_instance": {
"header": "Valitse OpenZWave"
@@ -2201,7 +2251,9 @@
},
"templates": {
"description": "Mallit tehdään Jinja2-mallimoottorilla, joissa on joitain Home Assistant -kohtaisia laajennuksia.",
"domain": "Toimialue",
"editor": "Mallieditori",
"entity": "Kohde",
"jinja_documentation": "Jinja2-mallin dokumentaatio",
"template_extensions": "Home Assistant -mallilaajennukset",
"title": "Malli",
@@ -2449,6 +2501,7 @@
},
"cardpicker": {
"custom_card": "Mukautettu",
"domain": "Toimialue",
"no_description": "Ei kuvausta saatavilla."
},
"edit_card": {
@@ -2781,6 +2834,10 @@
"submit": "Lähetä"
},
"current_user": "Olet tällä hetkellä kirjautuneena tunnuksella {fullName}.",
"customize_sidebar": {
"button": "Muokkaa",
"header": "Muuta järjestystä ja piiloita kohteita sivupalkista"
},
"dashboard": {
"description": "Valitse oletuskojelauta tälle laitteelle",
"dropdown_label": "Kojelauta",
@@ -2803,6 +2860,7 @@
"confirm_delete": "Haluatko varmasti poistaa {name} käyttöoikeustunnuksen?",
"create": "Luo token",
"create_failed": "Käyttötunnussanoman luominen epäonnistui.",
"created": "Luotu {date}",
"created_at": "Luotu {date}",
"delete_failed": "Käyttötunnussanoman poistaminen epäonnistui.",
"description": "Luo pitkäikäisiä käyttöoikeustunnuksia, jotta komentosarjasi voivat vuorovaikuttaa Home Assistantin kanssa. Jokainen tunnus on voimassa 10 vuotta luomisesta. Seuraavat pitkäikäiset käyttöoikeustunnukset ovat tällä hetkellä käytössä.",
@@ -2810,6 +2868,7 @@
"header": "Pitkäaikaiset käyttötunnussanomat",
"last_used": "Viimeksi käytetty {date} sijainnista {location}",
"learn_auth_requests": "Opi tekemään tunnistautuneita kutsuja.",
"name": "Nimi",
"not_used": "Ei ole koskaan käytetty",
"prompt_copy_token": "Kopioi käyttöoikeuskoodi. Sitä ei näytetä uudelleen.",
"prompt_name": "Nimi?"
@@ -2876,6 +2935,7 @@
}
},
"sidebar": {
"done": "Valmis",
"external_app_configuration": "Sovelluksen määritykset",
"sidebar_toggle": "Sivupalkin kytkin"
}

View File

@@ -604,15 +604,21 @@
"playlist": "Liste de lecture",
"server": "Serveur"
},
"documentation": "documentation",
"learn_adding_local_media": "En savoir plus sur l'ajout de médias dans la {documentation} .",
"local_media_files": "Placez vos fichiers vidéo, audio et image dans le répertoire multimédia pour pouvoir les parcourir et les lire dans le navigateur ou sur les lecteurs multimédias pris en charge.",
"media_browsing_error": "Erreur de navigation multimédia",
"media_not_supported": "Le Browser Media Player ne prend pas en charge ce type de média",
"media_player": "Lecteur multimédia",
"media-player-browser": "Lecteur multimédia",
"no_items": "Aucun éléments",
"no_local_media_found": "Aucun média local trouvé",
"no_media_folder": "Il semble que vous navez pas encore créé de répertoire multimédia.",
"pick": "Choisir",
"pick-media": "Choisissez un média",
"play": "Lecture",
"play-media": "Lire le média",
"setup_local_help": "Consultez la {documentation} pour savoir comment configurer un média local.",
"video_not_supported": "Votre navigateur ne prend pas en charge l'élément vidéo.",
"web-browser": "Navigateur web"
},
@@ -2692,7 +2698,7 @@
},
"raw_editor": {
"confirm_remove_config_text": "Nous générerons automatiquement vos vues Lovelace UI avec vos zones et appareils si vous supprimez votre configuration Lovelace UI.",
"confirm_remove_config_title": "Êtes-vous sûr de vouloir supprimer votre configuration Lovelace UI? Nous générerons automatiquement vos vues Lovelace UI avec vos zones et vos appareils.",
"confirm_remove_config_title": "Êtes-vous sûr de vouloir supprimer votre configuration Lovelace UI ?",
"confirm_unsaved_changes": "Vous avez des changements non enregistrés. Êtes-vous sûr de vouloir quitter?",
"confirm_unsaved_comments": "Votre configuration contient des commentaires, ceux-ci ne seront pas sauvegardés. Voulez-vous continuer?",
"error_invalid_config": "Votre configuration n'est pas valide : {error}",
@@ -3007,7 +3013,7 @@
"name": "Nom",
"not_used": "N'a jamais été utilisé",
"prompt_copy_token": "Copiez votre jeton d'accès. Il ne sera plus affiché à nouveau.",
"prompt_name": "Nom ?"
"prompt_name": "Donnez un nom au jeton"
},
"mfa_setup": {
"close": "Fermer",

View File

@@ -576,10 +576,26 @@
"choose_player": "Scegli il lettore",
"choose-source": "Scegli origine",
"class": {
"album": "Album",
"app": "App",
"artist": "Artista",
"channel": "Canale",
"composer": "Compositore",
"contributing_artist": "Artista collaboratore",
"directory": "Libreria",
"episode": "Episodio",
"game": "Gioco",
"genre": "Genere",
"image": "Immagine",
"movie": "Film",
"music": "Musica",
"playlist": "Elenco di riproduzione",
"podcast": "Podcast",
"season": "Stagione",
"track": "Traccia dispositivo"
"track": "Traccia dispositivo",
"tv_show": "Programma televisivo",
"url": "Url",
"video": "Video"
},
"content-type": {
"album": "Album",
@@ -588,15 +604,21 @@
"playlist": "Elenco di riproduzione",
"server": "Server"
},
"documentation": "documentazione",
"learn_adding_local_media": "Ulteriori informazioni sull'aggiunta di file multimediali nella {documentation}.",
"local_media_files": "Posizionare i file video, audio e immagine nella cartella multimediale per poterli sfogliare e riprodurli nel browser o sui lettori multimediali supportati.",
"media_browsing_error": "Errore di navigazione multimediale",
"media_not_supported": "Il Browser Media Player non supporta questo tipo di file multimediali",
"media_player": "Lettore multimediale",
"media-player-browser": "Lettore multimediale",
"no_items": "Nessun elemento",
"no_local_media_found": "Nessun media locale trovato",
"no_media_folder": "Sembra che ancora non sia stata creata una cartella multimediale.",
"pick": "Scegli",
"pick-media": "Seleziona file multimediali",
"play": "Riproduci",
"play-media": "Riproduci file multimediali",
"setup_local_help": "Controllare la {documentation} su come impostare i media locali.",
"video_not_supported": "Il tuo browser non supporta l'elemento video.",
"web-browser": "Web Browser"
},
@@ -2359,9 +2381,14 @@
"title": "Stati"
},
"templates": {
"all_listeners": "Questo modello è in ascolto di tutti gli eventi di stato modificato.",
"description": "Il rendering dei modelli viene eseguito utilizzando il motore di modelli Jinja2 con alcune estensioni specifiche di Home Assistant.",
"domain": "Dominio",
"editor": "Editor di modelli",
"entity": "Entità",
"jinja_documentation": "Documentazione del modello Jinja2",
"listeners": "Questo modello è in ascolto dei seguenti eventi di modifica dello stato:",
"no_listeners": "Questo modello non è in ascolto di alcun evento di modifica dello stato e non verrà aggiornato automaticamente.",
"reset": "Ripristina il modello di esempio",
"template_extensions": "Estensioni del modello Home Assistant",
"title": "Modelli",
@@ -2671,7 +2698,7 @@
},
"raw_editor": {
"confirm_remove_config_text": "Genereremo automaticamente le tue viste dell'Interfaccia utente di Lovelace con le tue aree e dispositivi se rimuovi la tua configurazione dell'interfaccia utente di Lovelace.",
"confirm_remove_config_title": "Sei sicuro di voler rimuovere la tua configurazione dell'interfaccia utente di Lovelace? Genereremo automaticamente le tue viste Lovelace con le tue aree e dispositivi.",
"confirm_remove_config_title": "Sei sicuro di voler rimuovere la tua configurazione dell'Interfaccia Utente di Lovelace?",
"confirm_unsaved_changes": "Hai delle modifiche non salvate, sei sicuro di voler uscire?",
"confirm_unsaved_comments": "La tua configurazione contiene commenti, questi non verranno salvati. Vuoi continuare?",
"error_invalid_config": "La tua configurazione non è valida: {error}",
@@ -2948,6 +2975,11 @@
"submit": "Invia"
},
"current_user": "Sei attualmente connesso come {fullName}.",
"customize_sidebar": {
"button": "Modifica",
"description": "Puoi anche tenere premuta l'intestazione della barra laterale per attivare la modalità di modifica.",
"header": "Modifica l'ordine e nascondi gli elementi dalla barra laterale"
},
"dashboard": {
"description": "Scegliere una plancia di default per questo dispositivo.",
"dropdown_label": "Plancia",
@@ -2970,6 +3002,7 @@
"confirm_delete": "Sei sicuro di voler eliminare il token di accesso per {name} ?",
"create": "Crea token",
"create_failed": "Impossibile creare il token di accesso.",
"created": "Creato {date}",
"created_at": "Creato il {date}",
"delete_failed": "Impossibile eliminare il token di accesso.",
"description": "Crea token di accesso di lunga durata per consentire agli script di interagire con l'istanza di Home Assistant. Ogni token sarà valido per 10 anni dalla creazione. I seguenti token di accesso a vita lunga sono attualmente attivi.",
@@ -2977,9 +3010,10 @@
"header": "Token di accesso a lunga vita",
"last_used": "Utilizzato l'ultima volta il {date} da {location}",
"learn_auth_requests": "Scopri come effettuare richieste autenticate.",
"name": "Nome",
"not_used": "Non è mai stato usato",
"prompt_copy_token": "Copia il tuo token di accesso. Non verrà più mostrato.",
"prompt_name": "Nome?"
"prompt_name": "Assegnare un nome al token"
},
"mfa_setup": {
"close": "Chiudi",
@@ -3043,6 +3077,7 @@
}
},
"sidebar": {
"done": "Fatto",
"external_app_configuration": "Configurazione App",
"sidebar_toggle": "Attiva/disattiva la barra laterale"
}

View File

@@ -19,6 +19,7 @@
"logbook": "로그북",
"mailbox": "메일함",
"map": "지도",
"media_browser": "미디어 브라우저",
"profile": "프로필",
"shopping_list": "장보기목록",
"states": "둘러보기"
@@ -562,6 +563,8 @@
"no_history_found": "상태 기록 내용이 없습니다."
},
"media-browser": {
"audio_not_supported": "브라우저가 오디오 요소를 지원하지 않습니다.",
"choose_player": "플레이어 선택",
"choose-source": "소스 선택",
"content-type": {
"album": "앨범",
@@ -570,12 +573,16 @@
"playlist": "재생 목록",
"server": "서버"
},
"media_not_supported": "브라우저 미디어 플레이어에서 이 유형의 미디어를 지원하지 않습니다",
"media_player": "미디어 플레이어",
"media-player-browser": "미디어 플레이어 브라우저",
"no_items": "항목 없음",
"pick": "선택",
"pick-media": "미디어 선택",
"play": "재생",
"play-media": "미디어 재생"
"play-media": "미디어 재생",
"video_not_supported": "브라우저가 비디오 요소를 지원하지 않습니다.",
"web-browser": "웹 브라우저"
},
"picture-upload": {
"label": "그림",
@@ -632,7 +639,7 @@
"icon": "아이콘 재정의",
"icon_error": "아이콘은 접두사:아이콘이름 형식이어야 합니다. 예: mdi:home",
"name": "이름 재정의",
"note": "참고: 아직 모든 통합 구성요소에 적용되지 않을 수 있습니다.",
"note": "참고: 모든 통합 구성요소에서 아직 작동하지 않을 수 있습니다.",
"unavailable": "이 구성요소는 현재 사용할 수 없습니다.",
"update": "업데이트"
},
@@ -1530,6 +1537,7 @@
"reload_restart_confirm": "이 통합 구성요소를 다시 읽어 들일려면 Home Assistant 를 다시 시작해주세요",
"rename": "이름 변경",
"restart_confirm": "통합 구성요소 제거 완료를 위해 Home Assistant 웹 페이지를 다시 불러옵니다",
"services": "{count} {count, plural,\n one {서비스}\n other {서비스}\n}",
"settings_button": "{integration} 설정 편집",
"system_options": "시스템 옵션",
"system_options_button": "{integration} 시스템 옵션",
@@ -1749,8 +1757,16 @@
"versions": "펌웨어 및 명령 클래스 버전에 대한 정보 가져오기",
"wakeup": "절전 해제 대기열 및 메시지에 대한 지원 설정"
},
"nodes_table": {
"id": "ID",
"manufacturer": "제조사",
"model": "모델",
"query_stage": "쿼리 단계",
"zwave_plus": "Z-Wave Plus"
},
"refresh_node": {
"battery_note": "노드가 배터리 전원을 사용하는 경우 계속하기 전에 절전 모드가 해제되어 있는지 확인해주세요",
"button": "노드 새로고침",
"complete": "노드 새로고침 완료",
"description": "OpenZWave 가 노드를 다시 인터뷰하고 노드의 명령 클래스, 기능 및 값을 업데이트하도록 지시합니다.",
"node_status": "노드 상태",
@@ -1899,7 +1915,7 @@
"filter": "필터 구성요소 다시 읽어오기",
"generic": "일반 IP 카메라 구성요소 다시 읽어오기",
"generic_thermostat": "일반 온도 조절기 구성요소 다시 읽어오기",
"group": "그룹 다시 읽어오기",
"group": "그룹, 그룹 구성요소 및 알림 서비스 다시 읽어오기",
"heading": "YAML 구성 다시 읽어오기",
"history_stats": "기록 통계 구성요소 다시 읽어오기",
"homekit": "HomeKit 다시 읽어오기",
@@ -1912,7 +1928,7 @@
"min_max": "최소/최대 구성요소 다시 읽어오기",
"person": "구성원 다시 읽어오기",
"ping": "ping 이진 센서 구성요소 다시 읽어오기",
"rest": "REST 구성요소 다시 읽어오기",
"rest": "REST 구성요소 및 알림 서비스 다시 읽어오기",
"scene": "씬 다시 읽어오기",
"script": "스크립트 다시 읽어오기",
"statistics": "통계 구성요소 다시 읽어오기",
@@ -2004,7 +2020,7 @@
"system": "시스템"
}
},
"users_privileges_note": "사용자 그룹은 현재 작업 중이며, 사용자는 UI 를 통해 인스턴스를 관리할 수 없습니다. 모든 사용자 관리 API 엔드포인트가 관리자에 대한 액세스를 올바르게 제한하는지를 확인하는 중입니다."
"users_privileges_note": "사용자 그룹 기능은 현재 작업 중이며, 사용자는 UI 를 통해 인스턴스를 관리할 수 없습니다. 모든 사용자 관리 API 엔드포인트가 관리자에 대한 액세스를 올바르게 제한하는지를 확인하는 중입니다."
},
"zha": {
"add_device_page": {
@@ -2042,7 +2058,7 @@
"clusters": {
"header": "클러스터",
"help_cluster_dropdown": "속성과 명령을 보려면 클러스터를 선택해주세요.",
"introduction": "클러스터는 Zigbee 기능의 빌딩 블록이며 기능을 논리 단위로 분리해서 구성합니다. 클라이언트 및 서버 유형이 있으며 속성 및 명령으로 구성됩니다."
"introduction": "클러스터는 Zigbee 기능의 빌딩 블록으로, 기능을 논리 단위로 분리해서 구성합니다. 클라이언트 및 서버 유형이 있으며 속성 및 명령으로 구성됩니다."
},
"common": {
"add_devices": "기기 추가",
@@ -2550,6 +2566,7 @@
"options": "옵션 더보기",
"pick_card": "어떤 카드를 추가하시겠습니까?",
"pick_card_view_title": "{name} 뷰에 어떤 카드를 추가하시겠습니까?",
"search_cards": "카드 검색",
"show_code_editor": "코드 편집기 보기",
"show_visual_editor": "비주얼 편집기 보기",
"toggle_editor": "에디터 전환",
@@ -2593,7 +2610,7 @@
},
"raw_editor": {
"confirm_remove_config_text": "Lovelace UI 구성을 제거하면, 영역 및 기기와 함께 Lovelace UI 뷰가 자동으로 생성됩니다.",
"confirm_remove_config_title": "Lovelace UI 구성을 제거하시겠습니까? 영역 및 기기와 함께 Lovelace UI 뷰를 자동으로 생성해드립니다.",
"confirm_remove_config_title": "Lovelace UI 구성을 제거하시겠습니까?",
"confirm_unsaved_changes": "저장되지 않은 변경 사항이 있습니다. 종료하시겠습니까?",
"confirm_unsaved_comments": "구성 내용에 주석이 포함되어 있지만 저장되지는 않습니다. 계속하시겠습니까?",
"error_invalid_config": "구성이 잘못되었습니다: {error}",

View File

@@ -604,15 +604,21 @@
"playlist": "Spilleliste",
"server": "Server"
},
"documentation": "dokumentasjon",
"learn_adding_local_media": "Lær mer om å legge til medier i {documentation} .",
"local_media_files": "Plasser video-, lyd- og bildefilene dine i mediekatalogen for å kunne bla gjennom og spille dem av i nettleseren eller på støttede mediaspillere.",
"media_browsing_error": "Feil ved medievisning",
"media_not_supported": "Browser Media Player støtter ikke denne typen medier",
"media_player": "Mediaspiller",
"media-player-browser": "Nettleser for Mediespiller",
"no_items": "Ingen elementer",
"no_local_media_found": "Ingen lokale medier funnet",
"no_media_folder": "Det ser ut til at du ennå ikke har opprettet en mediekatalog.",
"pick": "Velg",
"pick-media": "Velg Media",
"play": "Spill av",
"play-media": "Spill media",
"setup_local_help": "Sjekk {documentation} om hvordan du konfigurerer lokale medier.",
"video_not_supported": "Nettleseren din støtter ikke videoelementet.",
"web-browser": "Nettleser"
},
@@ -1472,22 +1478,22 @@
},
"entities": {
"caption": "Entiteter",
"description": "Administrer kjente enheter",
"description": "Administrer kjente entiteter",
"picker": {
"disable_selected": {
"button": "Deaktiver valgte",
"confirm_text": "Deaktiverte entiteter vil ikke bli lagt til i Home Assistant.",
"confirm_title": "Vil du deaktivere {number} enheter?"
"confirm_title": "Vil du deaktivere {number} entiteter?"
},
"enable_selected": {
"button": "Aktiver valgte",
"confirm_text": "Dette vil gjøre dem tilgjengelige i Home Assistant igjen hvis de nå er deaktivert.",
"confirm_title": "Vil du aktivere {number} enheter?"
"confirm_title": "Vil du aktivere {number} entiteter?"
},
"filter": {
"filter": "",
"show_disabled": "Vis deaktiverte entiteter",
"show_readonly": "Vis skrivebeskyttede enheter",
"show_readonly": "Vis skrivebeskyttede entiteter",
"show_unavailable": "Vis utilgjengelige entiteter"
},
"header": "Entiteter",
@@ -1504,7 +1510,7 @@
"confirm_partly_text": "Du kan bare fjerne {removable} av de valgte {selected} enhetene. Enheter kan bare fjernes når integrasjonen ikke lenger leverer enhetene. Noen ganger må du starte Home Assistant på nytt før du kan fjerne enhetene til en fjernet integrasjon. Er du sikker på at du vil fjerne de flyttbare enhetene?",
"confirm_partly_title": "Bare {number} valgte enheter kan fjernes.",
"confirm_text": "Du bør fjerne dem fra Lovelace-konfigurasjonen og automasjoner hvis de inneholder disse entitetene.",
"confirm_title": "Vil du fjerne {number} enheter?"
"confirm_title": "Vil du fjerne {number} entiteter?"
},
"search": "Søk entiteter",
"selected": "{number} valgte",
@@ -2569,7 +2575,7 @@
"map": {
"dark_mode": "Mørk modus?",
"default_zoom": "Standard zoom",
"description": "Kartkortet som lar deg vise enheter på et kart.",
"description": "Kartkortet som lar deg vise entiteter på et kart.",
"geo_location_sources": "Kilder for geolokasjon",
"hours_to_show": "Timer som skal vises",
"name": "Kart",
@@ -2581,7 +2587,7 @@
"name": ""
},
"media-control": {
"description": "Mediekontroll kortet brukes til å vise mediespillerenheter på et grensesnitt med brukervennlige kontroller.",
"description": "Mediekontroll kortet brukes til å vise mediespiller entiteter på et grensesnitt med brukervennlige kontroller.",
"name": "Mediekontroll"
},
"picture-elements": {

View File

@@ -604,15 +604,21 @@
"playlist": "Afspeellijst",
"server": "Server"
},
"documentation": "documentatie",
"learn_adding_local_media": "Leer meer over media toevoegen in de {documentatie}.",
"local_media_files": "Plaats je video, audio en foto bestanden in de media map om bestanden te kunnen doorzoeken en afspelen in de browser of op ondersteunde mediaspelers.",
"media_browsing_error": "Fout bij bladeren door media",
"media_not_supported": "De Browser Media Player ondersteunt dit type media niet",
"media_player": "Mediaspeler",
"media-player-browser": "Mediaspeler-browser",
"no_items": "Niets gevonden",
"no_local_media_found": "Geen lokale media gevonden",
"no_media_folder": "Het lijkt erop dat je nog geen media map hebt gemaakt.",
"pick": "Kies",
"pick-media": "Kies Media",
"play": "Speel",
"play-media": "Media afspelen",
"setup_local_help": "Raadpleeg de {documentatie} voor het instellen van lokale media.",
"video_not_supported": "Uw browser ondersteunt het video-element niet.",
"web-browser": "Webbrowser"
},
@@ -3071,7 +3077,7 @@
}
},
"sidebar": {
"done": "Gedaan",
"done": "Klaar",
"external_app_configuration": "App configuratie",
"sidebar_toggle": "Zijbalk in- en uitschakelen"
}

View File

@@ -338,7 +338,7 @@
},
"query_stage": {
"dead": "martwy ({query_stage})",
"initializing": "Inicjowanie ({query_stage})"
"initializing": "inicjalizacja ({query_stage})"
}
}
},
@@ -2874,7 +2874,7 @@
"unknown_error": "Coś poszło nie tak",
"working": "Proszę czekać"
},
"initializing": "Inicjowanie",
"initializing": "inicjalizacja",
"logging_in_with": "Logowanie za pomocą **{authProviderName}**.",
"pick_auth_provider": "Lub zaloguj się za pomocą"
},

View File

@@ -604,15 +604,21 @@
"playlist": "Плейлист",
"server": "Сервер"
},
"documentation": "документации",
"learn_adding_local_media": "Подробнее о добавлении мультимедиа читайте в {documentation}.",
"local_media_files": "Поместите видео, аудио и графические файлы в каталог мультимедиа, чтобы иметь возможность просматривать и воспроизводить их в браузере или на поддерживаемых медиаплеерах.",
"media_browsing_error": "Ошибка просмотра мультимедиа",
"media_not_supported": "Браузер медиаплеера не поддерживает этот тип мультимедиа.",
"media_player": "Медиаплеер",
"media-player-browser": "Браузер медиаплеера",
"no_items": "Нет элементов",
"no_local_media_found": "В локальном хранилище медиафайлы не найдены.",
"no_media_folder": "Похоже, что Вы еще не создали каталог мультимедиа.",
"pick": "Выбрать",
"pick-media": "Выбрать Медиа",
"play": "Воспроизведение",
"play-media": "Воспроизведение Медиа",
"setup_local_help": "О том, как добавить медиафайлы в локальное хранилище, Вы можете узнать в {documentation}.",
"video_not_supported": "Ваш браузер не поддерживает видео.",
"web-browser": "Веб-браузер"
},
@@ -656,8 +662,8 @@
"update": "Обновить"
},
"domain_toggler": {
"reset_entities": "Сбросить настройки доступа объектов",
"title": "Переключить домены"
"reset_entities": "Сброс настроек",
"title": "Управление доменами"
},
"entity_registry": {
"control": "Управление",

View File

@@ -507,6 +507,7 @@
"cancel": "取消",
"close": "关闭",
"continue": "继续",
"copied": "已复制",
"delete": "删除",
"error_required": "必填",
"loading": "加载中",
@@ -603,15 +604,21 @@
"playlist": "播放列表",
"server": "服务器"
},
"documentation": "文档",
"learn_adding_local_media": "请参阅{documentation}以了解更多关于添加媒体的信息。",
"local_media_files": "将视频、音频和图像文件放在媒体目录中,以便在浏览器或支持的媒体播放器上浏览和播放这些文件。",
"media_browsing_error": "媒体浏览错误",
"media_not_supported": "浏览器媒体播放器不支持此类型的媒体",
"media_player": "媒体播放器",
"media-player-browser": "媒体播放浏览器",
"no_items": "没有项目",
"no_local_media_found": "未找到本地媒体",
"no_media_folder": "您还没有创建媒体目录。",
"pick": "选定",
"pick-media": "选定媒体",
"play": "播放",
"play-media": "播放媒体",
"setup_local_help": "请参阅{documentation}以了解如何设置本地媒体。",
"video_not_supported": "您的浏览器不支持视频元素。",
"web-browser": "网页浏览器"
},
@@ -2691,7 +2698,7 @@
},
"raw_editor": {
"confirm_remove_config_text": "如果您删除了 Lovelace 配置,我们将通过您的区域和设备自动生成 Lovelace 视图。",
"confirm_remove_config_title": "您确定要删除 Lovelace 配置吗?我们将通过您的区域和设备自动生成 Lovelace 视图。",
"confirm_remove_config_title": "您确定要删除 Lovelace 配置吗?",
"confirm_unsaved_changes": "您有未保存的更改,确定要退出吗?",
"confirm_unsaved_comments": "您的配置包含注释,这些注释将不会保存。是否继续?",
"error_invalid_config": "您的配置无效:{error}",

View File

@@ -604,15 +604,21 @@
"playlist": "播放列表",
"server": "伺服器"
},
"documentation": "相關文件",
"learn_adding_local_media": "詳細了解如何新增媒體{documentation}。",
"local_media_files": "將影片、音效及影像檔案放置於媒體資料夾、將可以透過瀏覽器或支援的媒體播放器進行瀏覽與播放。",
"media_browsing_error": "媒體瀏覽錯誤",
"media_not_supported": "瀏覽器媒體播放器不支援此類型媒體",
"media_player": "媒體播放器",
"media-player-browser": "媒體播放器瀏覽器",
"no_items": "沒有項目",
"no_local_media_found": "找不到本地端媒體",
"no_media_folder": "看起來您還沒有建立任何媒體資料夾。",
"pick": "選擇",
"pick-media": "選擇媒體",
"play": "播放",
"play-media": "播放媒體",
"setup_local_help": "請參閱{documentation}以了解如何設定本地端媒體。",
"video_not_supported": "瀏覽器不支援影片元件。",
"web-browser": "網頁瀏覽器"
},