diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 5fceabc52a..1d331a82d7 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -8,7 +8,7 @@ trigger: pr: none variables: - name: versionWheels - value: '1.3-3.7-alpine3.10' + value: '1.10.1-3.7-alpine3.11' - name: versionNode value: '12.1' - group: twine diff --git a/gallery/public/images/frenck.jpg b/gallery/public/images/frenck.jpg new file mode 100644 index 0000000000..777fcad09c Binary files /dev/null and b/gallery/public/images/frenck.jpg differ diff --git a/gallery/public/images/netflix.jpg b/gallery/public/images/netflix.jpg new file mode 100644 index 0000000000..3549edd995 Binary files /dev/null and b/gallery/public/images/netflix.jpg differ diff --git a/gallery/src/data/media_players.ts b/gallery/src/data/media_players.ts index f15e6949b6..a28f679c53 100644 --- a/gallery/src/data/media_players.ts +++ b/gallery/src/data/media_players.ts @@ -34,6 +34,7 @@ export const createMediaPlayerEntities = () => [ media_content_type: "movie", media_title: "Epic sax guy 10 hours", app_name: "YouTube", + entity_picture: "/images/frenck.jpg", supported_features: 33, }), getEntity("media_player", "living_room", "playing", { @@ -42,6 +43,7 @@ export const createMediaPlayerEntities = () => [ media_title: "Chapter 1", media_series_title: "House of Cards", app_name: "Netflix", + entity_picture: "/images/netflix.jpg", supported_features: 1, }), getEntity("media_player", "sonos_idle", "idle", { diff --git a/hassio/src/addon-store/hassio-addon-repository.ts b/hassio/src/addon-store/hassio-addon-repository.ts index 2e789bcace..5ff2ee32ee 100644 --- a/hassio/src/addon-store/hassio-addon-repository.ts +++ b/hassio/src/addon-store/hassio-addon-repository.ts @@ -93,7 +93,7 @@ class HassioAddonRepositoryEl extends LitElement { ? "not_available" : ""} .iconImage=${atLeastVersion( - this.hass.connection.haVersion, + this.hass.config.version, 0, 105 ) && addon.icon diff --git a/hassio/src/addon-view/hassio-addon-info.ts b/hassio/src/addon-view/hassio-addon-info.ts index 95503c23fe..04b736f34f 100644 --- a/hassio/src/addon-view/hassio-addon-info.ts +++ b/hassio/src/addon-view/hassio-addon-info.ts @@ -107,7 +107,7 @@ class HassioAddonInfo extends LitElement { @@ -636,7 +636,7 @@ class HassioAddonInfo extends LitElement { this.addon && !this.addon.detached && this.addon.version && - this.addon.version !== this.addon.last_version + this.addon.version !== this.addon.version_latest ); } @@ -661,8 +661,7 @@ class HassioAddonInfo extends LitElement { private get _computeCannotIngressSidebar(): boolean { return ( - !this.addon.ingress || - !atLeastVersion(this.hass.connection.haVersion, 0, 92) + !this.addon.ingress || !atLeastVersion(this.hass.config.version, 0, 92) ); } diff --git a/hassio/src/dashboard/hassio-addons.ts b/hassio/src/dashboard/hassio-addons.ts index 908cee988a..c59edcfc5e 100644 --- a/hassio/src/dashboard/hassio-addons.ts +++ b/hassio/src/dashboard/hassio-addons.ts @@ -67,7 +67,7 @@ class HassioAddons extends LitElement { ? "running" : "stopped"} .iconImage=${atLeastVersion( - this.hass.connection.haVersion, + this.hass.config.version, 0, 105 ) && addon.icon diff --git a/hassio/src/dashboard/hassio-update.ts b/hassio/src/dashboard/hassio-update.ts index a48c558b86..d04ed1854a 100644 --- a/hassio/src/dashboard/hassio-update.ts +++ b/hassio/src/dashboard/hassio-update.ts @@ -40,8 +40,8 @@ export class HassioUpdate extends LitElement { ].filter((value) => { return ( !!value && - (value.last_version - ? value.version !== value.last_version + (value.version_latest + ? value.version !== value.version_latest : value.version_latest ? value.version !== value.version_latest : false) @@ -68,26 +68,26 @@ export class HassioUpdate extends LitElement { ${this._renderUpdateCard( "Home Assistant Core", this.hassInfo.version, - this.hassInfo.last_version, + this.hassInfo.version_latest, "hassio/homeassistant/update", `https://${ - this.hassInfo.last_version.includes("b") ? "rc" : "www" + this.hassInfo.version_latest.includes("b") ? "rc" : "www" }.home-assistant.io/latest-release-notes/`, "hassio:home-assistant" )} ${this._renderUpdateCard( "Supervisor", this.supervisorInfo.version, - this.supervisorInfo.last_version, + this.supervisorInfo.version_latest, "hassio/supervisor/update", - `https://github.com//home-assistant/hassio/releases/tag/${this.supervisorInfo.last_version}` + `https://github.com//home-assistant/hassio/releases/tag/${this.supervisorInfo.version_latest}` )} ${this.hassOsInfo ? this._renderUpdateCard( "Operating System", this.hassOsInfo.version, this.hassOsInfo.version_latest, - "hassio/hassos/update", + "hassio/os/update", `https://github.com//home-assistant/hassos/releases/tag/${this.hassOsInfo.version_latest}` ) : ""} diff --git a/hassio/src/hassio-main.ts b/hassio/src/hassio-main.ts index 1b6ac36288..ff5def6b41 100644 --- a/hassio/src/hassio-main.ts +++ b/hassio/src/hassio-main.ts @@ -87,8 +87,7 @@ class HassioMain extends ProvideHassLitMixin(HassRouterPage) { applyThemesOnElement( this.parentElement, this.hass.themes, - this.hass.selectedTheme, - true + this.hass.selectedTheme || this.hass.themes.default_theme ); this.addEventListener("hass-api-called", (ev) => this._apiCalled(ev)); // Paulus - March 17, 2019 diff --git a/hassio/src/system/hassio-host-info.ts b/hassio/src/system/hassio-host-info.ts index bdaaecbcfa..3c50ece8af 100644 --- a/hassio/src/system/hassio-host-info.ts +++ b/hassio/src/system/hassio-host-info.ts @@ -100,7 +100,7 @@ class HassioHostInfo extends LitElement { Import from USB @@ -108,9 +108,7 @@ class HassioHostInfo extends LitElement { : ""} ${this.hostInfo.version !== this.hostInfo.version_latest ? html` - Update ` diff --git a/hassio/src/system/hassio-supervisor-info.ts b/hassio/src/system/hassio-supervisor-info.ts index 09364b4233..75892b731b 100644 --- a/hassio/src/system/hassio-supervisor-info.ts +++ b/hassio/src/system/hassio-supervisor-info.ts @@ -41,7 +41,7 @@ class HassioSupervisorInfo extends LitElement { Latest version - ${this.supervisorInfo.last_version} + ${this.supervisorInfo.version_latest} ${this.supervisorInfo.channel !== "stable" ? html` @@ -63,7 +63,7 @@ class HassioSupervisorInfo extends LitElement { Reload - ${this.supervisorInfo.version !== this.supervisorInfo.last_version + ${this.supervisorInfo.version !== this.supervisorInfo.version_latest ? html` { const shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; @@ -15,67 +21,82 @@ const hexToRgb = (hex: string): string | null => { : null; }; +let PROCESSED_THEMES: { [key: string]: ProcessedTheme } = {}; + /** * Apply a theme to an element by setting the CSS variables on it. * * element: Element to apply theme on. * themes: HASS Theme information - * localTheme: selected theme. - * updateMeta: boolean if we should update the theme-color meta element. + * selectedTheme: selected theme. */ export const applyThemesOnElement = ( element, - themes, - localTheme, - updateMeta = false + themes: HomeAssistant["themes"], + selectedTheme?: string ) => { - if (!element._themes) { - element._themes = {}; - } - let themeName = themes.default_theme; - if (localTheme === "default" || (localTheme && themes.themes[localTheme])) { - themeName = localTheme; - } - const styles = { ...element._themes }; - if (themeName !== "default") { - const theme = { ...derivedStyles, ...themes.themes[themeName] }; - Object.keys(theme).forEach((key) => { - const prefixedKey = `--${key}`; - element._themes[prefixedKey] = ""; - styles[prefixedKey] = theme[key]; - if (key.startsWith("rgb")) { - return; - } - const rgbKey = `rgb-${key}`; - if (theme[rgbKey] !== undefined) { - return; - } - const prefixedRgbKey = `--${rgbKey}`; - element._themes[prefixedRgbKey] = ""; - const rgbValue = hexToRgb(theme[key]); - if (rgbValue !== null) { - styles[prefixedRgbKey] = rgbValue; - } - }); - } - if (element.updateStyles) { - element.updateStyles(styles); - } else if (window.ShadyCSS) { - // implement updateStyles() method of Polymer elements - window.ShadyCSS.styleSubtree(/** @type {!HTMLElement} */ element, styles); - } + const newTheme = selectedTheme + ? PROCESSED_THEMES[selectedTheme] || processTheme(selectedTheme, themes) + : undefined; - if (!updateMeta) { + if (!element._themes && !newTheme) { + // No styles to reset, and no styles to set return; } - const meta = document.querySelector("meta[name=theme-color]"); - if (meta) { - if (!meta.hasAttribute("default-content")) { - meta.setAttribute("default-content", meta.getAttribute("content")!); - } - const themeColor = - styles["--primary-color"] || meta.getAttribute("default-content"); - meta.setAttribute("content", themeColor); + // Add previous set keys to reset them, and new theme + const styles = { ...element._themes, ...newTheme?.styles }; + element._themes = newTheme?.keys; + + // Set and/or reset styles + if (element.updateStyles) { + element.updateStyles(styles); + } else if (window.ShadyCSS) { + // Implement updateStyles() method of Polymer elements + window.ShadyCSS.styleSubtree(/** @type {!HTMLElement} */ element, styles); } }; + +const processTheme = ( + themeName: string, + themes: HomeAssistant["themes"] +): ProcessedTheme | undefined => { + if (!themes.themes[themeName]) { + return; + } + const theme: Theme = { + ...derivedStyles, + ...themes.themes[themeName], + }; + const styles = {}; + const keys = {}; + for (const key of Object.keys(theme)) { + const prefixedKey = `--${key}`; + const value = theme[key]; + styles[prefixedKey] = value; + keys[prefixedKey] = ""; + + // Try to create a rgb value for this key if it is a hex color + if (!value.startsWith("#")) { + // Not a hex color + continue; + } + const rgbKey = `rgb-${key}`; + if (theme[rgbKey] !== undefined) { + // Theme has it's own rgb value + continue; + } + const rgbValue = hexToRgb(value); + if (rgbValue !== null) { + const prefixedRgbKey = `--${rgbKey}`; + styles[prefixedRgbKey] = rgbValue; + keys[prefixedRgbKey] = ""; + } + } + PROCESSED_THEMES[themeName] = { styles, keys }; + return { styles, keys }; +}; + +export const invalidateThemeCache = () => { + PROCESSED_THEMES = {}; +}; diff --git a/src/common/entity/cover_icon.ts b/src/common/entity/cover_icon.ts index 13eb5cd9de..faa7e29890 100644 --- a/src/common/entity/cover_icon.ts +++ b/src/common/entity/cover_icon.ts @@ -4,17 +4,58 @@ import { domainIcon } from "./domain_icon"; export const coverIcon = (state: HassEntity): string => { const open = state.state !== "closed"; + switch (state.attributes.device_class) { case "garage": - return open ? "hass:garage-open" : "hass:garage"; + switch (state.state) { + case "opening": + return "hass:arrow-up-box"; + case "closing": + return "hass:arrow-down-box"; + case "closed": + return "hass:garage"; + default: + return "hass:garage-open"; + } + case "gate": + switch (state.state) { + case "opening": + case "closing": + return "hass:gate-arrow-right"; + case "closed": + return "hass:gate"; + default: + return "hass:gate-open"; + } case "door": return open ? "hass:door-open" : "hass:door-closed"; + case "damper": + return open ? "hass:circle" : "hass:circle-slice-8"; case "shutter": return open ? "hass:window-shutter-open" : "hass:window-shutter"; case "blind": - return open ? "hass:blinds-open" : "hass:blinds"; + case "curtain": + switch (state.state) { + case "opening": + return "hass:arrow-up-box"; + case "closing": + return "hass:arrow-down-box"; + case "closed": + return "hass:blinds"; + default: + return "hass:blinds-open"; + } case "window": - return open ? "hass:window-open" : "hass:window-closed"; + switch (state.state) { + case "opening": + return "hass:arrow-up-box"; + case "closing": + return "hass:arrow-down-box"; + case "closed": + return "hass:window-closed"; + default: + return "hass:window-open"; + } default: return domainIcon("cover", state.state); } diff --git a/src/common/entity/domain_icon.ts b/src/common/entity/domain_icon.ts index baa698de4c..e735df808c 100644 --- a/src/common/entity/domain_icon.ts +++ b/src/common/entity/domain_icon.ts @@ -77,7 +77,16 @@ export const domainIcon = (domain: string, state?: string): string => { : "hass:checkbox-marked-circle"; case "cover": - return state === "closed" ? "hass:window-closed" : "hass:window-open"; + switch (state) { + case "opening": + return "hass:arrow-up-box"; + case "closing": + return "hass:arrow-down-box"; + case "closed": + return "hass:window-closed"; + default: + return "hass:window-open"; + } case "lock": return state && state === "unlocked" ? "hass:lock-open" : "hass:lock"; diff --git a/src/components/data-table/ha-data-table.ts b/src/components/data-table/ha-data-table.ts index 6fef89eb4a..ad3f1d0a2c 100644 --- a/src/components/data-table/ha-data-table.ts +++ b/src/components/data-table/ha-data-table.ts @@ -69,9 +69,10 @@ export interface DataTableSortColumnData { export interface DataTableColumnData extends DataTableSortColumnData { title: string; - type?: "numeric" | "icon"; + type?: "numeric" | "icon" | "icon-button"; template?: (data: any, row: T) => TemplateResult | string; width?: string; + maxWidth?: string; grows?: boolean; } @@ -227,10 +228,13 @@ export class HaDataTable extends LitElement { const sorted = key === this._sortColumn; const classes = { "mdc-data-table__header-cell--numeric": Boolean( - column.type && column.type === "numeric" + column.type === "numeric" ), "mdc-data-table__header-cell--icon": Boolean( - column.type && column.type === "icon" + column.type === "icon" + ), + "mdc-data-table__header-cell--icon-button": Boolean( + column.type === "icon-button" ), sortable: Boolean(column.sortable), "not-sorted": Boolean(column.sortable && !sorted), @@ -241,9 +245,8 @@ export class HaDataTable extends LitElement { class="mdc-data-table__header-cell ${classMap(classes)}" style=${column.width ? styleMap({ - [column.grows ? "minWidth" : "width"]: String( - column.width - ), + [column.grows ? "minWidth" : "width"]: column.width, + maxWidth: column.maxWidth || "", }) : ""} role="columnheader" @@ -318,10 +321,13 @@ export class HaDataTable extends LitElement {
@@ -532,6 +541,7 @@ export class HaDataTable extends LitElement { overflow: hidden; text-overflow: ellipsis; flex-shrink: 0; + box-sizing: border-box; } .mdc-data-table__cell.mdc-data-table__cell--icon { @@ -544,7 +554,7 @@ export class HaDataTable extends LitElement { padding-left: 16px; /* @noflip */ padding-right: 0; - width: 40px; + width: 56px; } [dir="rtl"] .mdc-data-table__header-cell--checkbox, .mdc-data-table__header-cell--checkbox[dir="rtl"], @@ -591,7 +601,7 @@ export class HaDataTable extends LitElement { .mdc-data-table__header-cell--icon, .mdc-data-table__cell--icon { - width: 24px; + width: 54px; } .mdc-data-table__header-cell.mdc-data-table__header-cell--icon { @@ -610,6 +620,28 @@ export class HaDataTable extends LitElement { margin-right: -8px; } + .mdc-data-table__header-cell--icon-button, + .mdc-data-table__cell--icon-button { + width: 56px; + padding: 8px; + } + + .mdc-data-table__header-cell--icon-button:first-child, + .mdc-data-table__cell--icon-button:first-child { + width: 64px; + padding-left: 16px; + } + + .mdc-data-table__header-cell--icon-button:last-child, + .mdc-data-table__cell--icon-button:last-child { + width: 64px; + padding-right: 16px; + } + + .mdc-data-table__cell--icon-button a { + color: var(--primary-text-color); + } + .mdc-data-table__header-cell { font-family: Roboto, sans-serif; -moz-osx-font-smoothing: grayscale; @@ -695,6 +727,9 @@ export class HaDataTable extends LitElement { .center { text-align: center; } + .secondary { + color: var(--secondary-text-color); + } .scroller { display: flex; position: relative; diff --git a/src/components/entity/ha-entity-picker.ts b/src/components/entity/ha-entity-picker.ts index 189d3daa9a..d2ddd62165 100644 --- a/src/components/entity/ha-entity-picker.ts +++ b/src/components/entity/ha-entity-picker.ts @@ -246,7 +246,7 @@ class HaEntityPicker extends LitElement { paper-input > paper-icon-button { width: 24px; height: 24px; - padding: 2px; + padding: 0px 2px; color: var(--secondary-text-color); } [hidden] { diff --git a/src/components/ha-cover-controls.js b/src/components/ha-cover-controls.js index 76aa911755..b669d23eb9 100644 --- a/src/components/ha-cover-controls.js +++ b/src/components/ha-cover-controls.js @@ -19,7 +19,7 @@ class HaCoverControls extends PolymerElement {
{ const beforeSpacer: PanelInfo[] = []; const afterSpacer: PanelInfo[] = []; - const defaultPage = getDefaultPanelUrlPath(); - Object.values(panels).forEach((panel) => { - if (!panel.title || panel.url_path === defaultPage) { + if (!panel.title || panel.url_path === hass.defaultPanel) { return; } (SHOW_AFTER_SPACER.includes(panel.url_path) @@ -143,7 +141,7 @@ class HaSidebar extends LitElement { } } - const defaultPanel = getDefaultPanel(hass.panels); + const defaultPanel = getDefaultPanel(hass); return html` `; diff --git a/src/panels/lovelace/editor/config-elements/hui-plant-status-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-plant-status-card-editor.ts index fe2d93356c..ef84475b34 100644 --- a/src/panels/lovelace/editor/config-elements/hui-plant-status-card-editor.ts +++ b/src/panels/lovelace/editor/config-elements/hui-plant-status-card-editor.ts @@ -85,7 +85,7 @@ export class HuiPlantStatusCardEditor extends LitElement .hass=${this.hass} .value="${this._theme}" .configValue="${"theme"}" - @theme-changed="${this._valueChanged}" + @value-changed="${this._valueChanged}" >
`; diff --git a/src/panels/lovelace/editor/config-elements/hui-sensor-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-sensor-card-editor.ts index 9114bc19d0..cf861ca1ae 100644 --- a/src/panels/lovelace/editor/config-elements/hui-sensor-card-editor.ts +++ b/src/panels/lovelace/editor/config-elements/hui-sensor-card-editor.ts @@ -170,7 +170,7 @@ export class HuiSensorCardEditor extends LitElement .hass=${this.hass} .value="${this._theme}" .configValue="${"theme"}" - @theme-changed="${this._valueChanged}" + @value-changed="${this._valueChanged}" >
`; diff --git a/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts index 575d8d6b2e..862613d987 100644 --- a/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts +++ b/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts @@ -84,7 +84,7 @@ export class HuiThermostatCardEditor extends LitElement .hass=${this.hass} .value="${this._theme}" .configValue="${"theme"}" - @theme-changed="${this._valueChanged}" + @value-changed="${this._valueChanged}" > `; diff --git a/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts index 4a25c8ae2d..d4ae31d7ea 100644 --- a/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts +++ b/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts @@ -83,7 +83,7 @@ export class HuiWeatherForecastCardEditor extends LitElement .hass=${this.hass} .value="${this._theme}" .configValue="${"theme"}" - @theme-changed="${this._valueChanged}" + @value-changed="${this._valueChanged}" > `; diff --git a/src/panels/lovelace/editor/delete-card.ts b/src/panels/lovelace/editor/delete-card.ts index 0d7baad0f5..04bada1b43 100644 --- a/src/panels/lovelace/editor/delete-card.ts +++ b/src/panels/lovelace/editor/delete-card.ts @@ -1,10 +1,9 @@ import { Lovelace } from "../types"; import { deleteCard } from "./config-util"; -import { - showAlertDialog, - showConfirmationDialog, -} from "../../../dialogs/generic/show-dialog-box"; +import { showAlertDialog } from "../../../dialogs/generic/show-dialog-box"; import { HomeAssistant } from "../../../types"; +import { showDeleteCardDialog } from "./card-editor/show-delete-card-dialog"; +import { showDeleteSuccessToast } from "../../../util/toast-deleted-success"; export async function confDeleteCard( element: HTMLElement, @@ -12,11 +11,13 @@ export async function confDeleteCard( lovelace: Lovelace, path: [number, number] ): Promise { - showConfirmationDialog(element, { - text: hass.localize("ui.panel.lovelace.cards.confirm_delete"), - confirm: async () => { + const cardConfig = lovelace.config.views[path[0]].cards![path[1]]; + showDeleteCardDialog(element, { + cardConfig, + deleteCard: async () => { try { await lovelace.saveConfig(deleteCard(lovelace.config, path)); + showDeleteSuccessToast(element, hass!); } catch (err) { showAlertDialog(element, { text: `Deleting failed: ${err.message}`, diff --git a/src/panels/lovelace/editor/get-card-stub-config.ts b/src/panels/lovelace/editor/get-card-stub-config.ts index e8a1feff92..fce349e1f4 100644 --- a/src/panels/lovelace/editor/get-card-stub-config.ts +++ b/src/panels/lovelace/editor/get-card-stub-config.ts @@ -1,13 +1,12 @@ import { HomeAssistant } from "../../../types"; -import { LovelaceCardConfig, LovelaceConfig } from "../../../data/lovelace"; +import { LovelaceCardConfig } from "../../../data/lovelace"; import { getCardElementClass } from "../create-element/create-card-element"; export const getCardStubConfig = async ( hass: HomeAssistant, - lovelaceConfig: LovelaceConfig, type: string, - entities?: string[], - entitiesFill?: string[] + entities: string[], + entitiesFallback: string[] ): Promise => { let cardConfig: LovelaceCardConfig = { type }; @@ -16,9 +15,8 @@ export const getCardStubConfig = async ( if (elClass && elClass.getStubConfig) { const classStubConfig = elClass.getStubConfig( hass, - lovelaceConfig, entities, - entitiesFill + entitiesFallback ); cardConfig = { ...cardConfig, ...classStubConfig }; diff --git a/src/panels/lovelace/editor/hui-dialog-save-config.ts b/src/panels/lovelace/editor/hui-dialog-save-config.ts index b51641dc22..b092a0ee44 100644 --- a/src/panels/lovelace/editor/hui-dialog-save-config.ts +++ b/src/panels/lovelace/editor/hui-dialog-save-config.ts @@ -10,6 +10,7 @@ import { } from "lit-element"; import "@polymer/paper-spinner/paper-spinner"; import "../../../components/dialog/ha-paper-dialog"; +import "../../../components/ha-switch"; import "../../../components/ha-yaml-editor"; // tslint:disable-next-line:no-duplicate-imports import { HaPaperDialog } from "../../../components/dialog/ha-paper-dialog"; @@ -21,11 +22,14 @@ import { SaveDialogParams } from "./show-save-config-dialog"; import { PolymerChangedEvent } from "../../../polymer-types"; import { fireEvent } from "../../../common/dom/fire_event"; +const EMPTY_CONFIG = { views: [] }; + @customElement("hui-dialog-save-config") export class HuiSaveConfig extends LitElement { @property() public hass?: HomeAssistant; @property() private _params?: SaveDialogParams; + @property() private _emptyConfig = false; @property() private _saving: boolean; @query("ha-paper-dialog") private _dialog?: HaPaperDialog; @@ -37,6 +41,7 @@ export class HuiSaveConfig extends LitElement { public async showDialog(params: SaveDialogParams): Promise { this._params = params; + this._emptyConfig = false; await this.updateComplete; this._dialog!.open(); } @@ -58,6 +63,7 @@ export class HuiSaveConfig extends LitElement {

${this.hass!.localize("ui.panel.lovelace.editor.save_config.para")}

+ ${this._params.mode === "storage" ? html`

@@ -65,6 +71,13 @@ export class HuiSaveConfig extends LitElement { "ui.panel.lovelace.editor.save_config.para_sure" )}

+ ${this.hass!.localize( + "ui.panel.lovelace.editor.save_config.empty_config" + )} ` : html`

@@ -135,6 +148,10 @@ export class HuiSaveConfig extends LitElement { fireEvent(this._dialog! as HTMLElement, "iron-resize"); } + private _emptyConfigChanged(ev) { + this._emptyConfig = ev.target.checked; + } + private async _saveConfig(): Promise { if (!this.hass || !this._params) { return; @@ -142,7 +159,9 @@ export class HuiSaveConfig extends LitElement { this._saving = true; try { const lovelace = this._params!.lovelace; - await lovelace.saveConfig(lovelace.config); + await lovelace.saveConfig( + this._emptyConfig ? EMPTY_CONFIG : lovelace.config + ); lovelace.setEditMode(true); this._saving = false; this._closeDialog(); @@ -182,6 +201,9 @@ export class HuiSaveConfig extends LitElement { height: 14px; margin-right: 20px; } + ha-switch { + padding-bottom: 16px; + } `, ]; } diff --git a/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts b/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts index 2535949f8d..5e3211039f 100644 --- a/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts +++ b/src/panels/lovelace/editor/unused-entities/hui-unused-entities.ts @@ -47,7 +47,7 @@ export class HuiUnusedEntities extends LitElement { @property() private _unusedEntities: string[] = []; - private _selectedEntities: string[] = []; + @property() private _selectedEntities: string[] = []; private get _config(): LovelaceConfig { return this.lovelace!.config; @@ -179,14 +179,20 @@ export class HuiUnusedEntities extends LitElement { @selection-changed=${this._handleSelectionChanged} > - + ${this._selectedEntities.length + ? html` + + ` + : ""} `; } @@ -195,7 +201,8 @@ export class HuiUnusedEntities extends LitElement { return; } this._selectedEntities = []; - this._unusedEntities = computeUnusedEntities(this.hass, this._config!); + const unusedEntities = computeUnusedEntities(this.hass, this._config!); + this._unusedEntities = [...unusedEntities].sort(); } private _handleSelectionChanged( diff --git a/src/panels/lovelace/editor/view-editor/hui-view-editor.ts b/src/panels/lovelace/editor/view-editor/hui-view-editor.ts index 90baf57453..baeb0aa393 100644 --- a/src/panels/lovelace/editor/view-editor/hui-view-editor.ts +++ b/src/panels/lovelace/editor/view-editor/hui-view-editor.ts @@ -116,7 +116,7 @@ export class HuiViewEditor extends LitElement { .hass=${this.hass} .value=${this._theme} .configValue=${"theme"} - @theme-changed=${this._valueChanged} + @value-changed=${this._valueChanged} > { + this._narrow = (this.parentElement?.clientWidth || 0) < 350; + this._veryNarrow = (this.parentElement?.clientWidth || 0) < 300; + }, + 250, + false + ); public setConfig(config: EntityConfig): void { if (!config || !config.entity) { @@ -38,6 +56,21 @@ class HuiMediaPlayerEntityRow extends LitElement implements LovelaceRow { this._config = config; } + public connectedCallback(): void { + super.connectedCallback(); + if (!this._resizeObserver) { + this._attachObserver(); + } + } + + public disconnectedCallback(): void { + this._resizeObserver?.unobserve(this); + } + + protected firstUpdated(): void { + this._attachObserver(); + } + protected shouldUpdate(changedProps: PropertyValues): boolean { return hasConfigOrEntityChanged(this, changedProps); } @@ -68,46 +101,128 @@ class HuiMediaPlayerEntityRow extends LitElement implements LovelaceRow { .secondaryText=${this._computeMediaTitle(stateObj)} > ${stateObj.state === "off" || stateObj.state === "idle" + ? supportsFeature(stateObj, SUPPORT_TURN_ON) + : supportsFeature(stateObj, SUPPORT_TURN_OFF) ? html` -

- ${this.hass!.localize(`state.media_player.${stateObj.state}`) || - this.hass!.localize(`state.default.${stateObj.state}`) || - stateObj.state} -
+ ` - : html` -
- ${stateObj.state !== "playing" && - !supportsFeature(stateObj, SUPPORTS_PLAY) - ? "" - : html` - - `} - ${supportsFeature(stateObj, SUPPORT_NEXT_TRACK) - ? html` - - ` - : ""} -
- `} + : ""} +
+
+ ${supportsFeature(stateObj, SUPPORT_VOLUME_MUTE) + ? html` + + ` + : ""} + ${!this._narrow && supportsFeature(stateObj, SUPPORT_VOLUME_SET) + ? html` + + ` + : !this._veryNarrow && + supportsFeature(stateObj, SUPPORT_VOLUME_BUTTONS) + ? html` + + + ` + : ""} +
+
+ ${!this._veryNarrow && + supportsFeature(stateObj, SUPPORT_PREVIOUS_TRACK) + ? html` + + ` + : ""} + ${stateObj.state !== "playing" && + !supportsFeature(stateObj, SUPPORTS_PLAY) + ? "" + : html` + + `} + ${supportsFeature(stateObj, SUPPORT_NEXT_TRACK) + ? html` + + ` + : ""} +
+
`; } static get styles(): CSSResult { return css` + :host { + display: block; + } + .flex { + display: flex; + align-items: center; + padding-left: 48px; + justify-content: space-between; + } + .volume { + display: flex; + flex-grow: 2; + flex-shrink: 2; + } .controls { white-space: nowrap; } + ha-slider { + flex-grow: 2; + flex-shrink: 2; + width: 100%; + } `; } + private _attachObserver(): void { + if (typeof ResizeObserver !== "function") { + import("resize-observer").then((modules) => { + modules.install(); + this._attachObserver(); + }); + return; + } + + this._resizeObserver = new ResizeObserver(() => + this._debouncedResizeListener() + ); + + this._resizeObserver.observe(this); + } + private _computeControlIcon(stateObj: HassEntity): string { if (stateObj.state !== "playing") { return "hass:play"; @@ -143,19 +258,64 @@ class HuiMediaPlayerEntityRow extends LitElement implements LovelaceRow { return prefix && suffix ? `${prefix}: ${suffix}` : prefix || suffix || ""; } - private _playPause(ev: MouseEvent): void { - ev.stopPropagation(); + private _togglePower(): void { + const stateObj = this.hass!.states[this._config!.entity]; + + this.hass!.callService( + "media_player", + stateObj.state === "off" || stateObj.state === "idle" + ? "turn_on" + : "turn_off", + { + entity_id: this._config!.entity, + } + ); + } + + private _playPause(): void { this.hass!.callService("media_player", "media_play_pause", { entity_id: this._config!.entity, }); } - private _nextTrack(ev: MouseEvent): void { - ev.stopPropagation(); + private _previousTrack(): void { + this.hass!.callService("media_player", "media_previous_track", { + entity_id: this._config!.entity, + }); + } + + private _nextTrack(): void { this.hass!.callService("media_player", "media_next_track", { entity_id: this._config!.entity, }); } + + private _toggleMute() { + this.hass!.callService("media_player", "volume_mute", { + entity_id: this._config!.entity, + is_volume_muted: !this.hass!.states[this._config!.entity].attributes + .is_volume_muted, + }); + } + + private _volumeDown() { + this.hass!.callService("media_player", "volume_down", { + entity_id: this._config!.entity, + }); + } + + private _volumeUp() { + this.hass!.callService("media_player", "volume_up", { + entity_id: this._config!.entity, + }); + } + + private _selectedValueChanged(ev): void { + this.hass!.callService("media_player", "volume_set", { + entity_id: this._config!.entity, + volume_level: ev.target.value / 100, + }); + } } declare global { diff --git a/src/panels/lovelace/header-footer/hui-graph-header-footer.ts b/src/panels/lovelace/header-footer/hui-graph-header-footer.ts new file mode 100644 index 0000000000..880cb71372 --- /dev/null +++ b/src/panels/lovelace/header-footer/hui-graph-header-footer.ts @@ -0,0 +1,115 @@ +import { + html, + LitElement, + TemplateResult, + customElement, + property, + PropertyValues, + CSSResult, + css, +} from "lit-element"; + +import "../components/hui-graph-base"; + +import { LovelaceHeaderFooter } from "../types"; +import { HomeAssistant } from "../../../types"; +import { GraphHeaderFooterConfig } from "./types"; +import { getHistoryCoordinates } from "../common/graph/get-history-coordinates"; + +const MINUTE = 60000; + +@customElement("hui-graph-header-footer") +export class HuiGraphHeaderFooter extends LitElement + implements LovelaceHeaderFooter { + public static getStubConfig(): object { + return {}; + } + + @property() public hass?: HomeAssistant; + @property() protected _config?: GraphHeaderFooterConfig; + @property() private _coordinates?: any; + private _date?: Date; + + public setConfig(config: GraphHeaderFooterConfig): void { + if (!config?.entity || config.entity.split(".")[0] !== "sensor") { + throw new Error( + "Invalid Configuration: An entity from within the sensor domain required" + ); + } + + const cardConfig = { + detail: 1, + hours_to_show: 24, + ...config, + }; + + cardConfig.hours_to_show = Number(cardConfig.hours_to_show); + cardConfig.detail = + cardConfig.detail === 1 || cardConfig.detail === 2 + ? cardConfig.detail + : 1; + + this._config = cardConfig; + } + + protected render(): TemplateResult { + if (!this._config || !this.hass) { + return html``; + } + + if (!this._coordinates) { + return html` +
+ No state history found. +
+ `; + } + + return html` + + `; + } + + protected firstUpdated(): void { + this._date = new Date(); + } + + protected updated(changedProps: PropertyValues) { + if (!this._config || !this.hass) { + return; + } + + if (changedProps.has("_config")) { + this._getCoordinates(); + } else if (Date.now() - this._date!.getTime() >= MINUTE) { + this._getCoordinates(); + } + } + + private async _getCoordinates(): Promise { + this._coordinates = await getHistoryCoordinates( + this.hass!, + this._config!.entity, + this._config!.hours_to_show!, + this._config!.detail! + ); + + this._date = new Date(); + } + + static get styles(): CSSResult { + return css` + .info { + text-align: center; + line-height: 58px; + color: var(--secondary-text-color); + } + `; + } +} + +declare global { + interface HTMLElementTagNameMap { + "hui-graph-header-footer": HuiGraphHeaderFooter; + } +} diff --git a/src/panels/lovelace/header-footer/types.ts b/src/panels/lovelace/header-footer/types.ts index 78d5d55547..a65c17720c 100644 --- a/src/panels/lovelace/header-footer/types.ts +++ b/src/panels/lovelace/header-footer/types.ts @@ -11,6 +11,12 @@ export interface ButtonsHeaderFooterConfig extends LovelaceHeaderFooterConfig { entities: Array; } +export interface GraphHeaderFooterConfig extends LovelaceHeaderFooterConfig { + entity: string; + detail?: number; + hours_to_show?: number; +} + export interface PictureHeaderFooterConfig extends LovelaceHeaderFooterConfig { image: string; tap_action?: ActionConfig; @@ -31,7 +37,15 @@ export const buttonsHeaderFooterConfigStruct = struct({ entities: [entitiesConfigStruct], }); +export const graphHeaderFooterConfigStruct = struct({ + type: "string", + entity: "string", + detail: "number?", + hours_to_show: "number?", +}); + export const headerFooterConfigStructs = struct.union([ pictureHeaderFooterConfigStruct, buttonsHeaderFooterConfigStruct, + graphHeaderFooterConfigStruct, ]); diff --git a/src/panels/lovelace/hui-root.ts b/src/panels/lovelace/hui-root.ts index 72a2036879..484dec9afe 100644 --- a/src/panels/lovelace/hui-root.ts +++ b/src/panels/lovelace/hui-root.ts @@ -12,7 +12,6 @@ import "@polymer/app-layout/app-header-layout/app-header-layout"; import "@polymer/app-layout/app-header/app-header"; import "@polymer/app-layout/app-scroll-effects/effects/waterfall"; import "@polymer/app-layout/app-toolbar/app-toolbar"; -import "@polymer/app-route/app-route"; import "@polymer/paper-icon-button/paper-icon-button"; import "@material/mwc-button"; import "@polymer/paper-item/paper-item"; @@ -61,7 +60,6 @@ class HUIRoot extends LitElement { @property() public columns?: number; @property() public narrow?: boolean; @property() public route?: { path: string; prefix: string }; - @property() private _routeData?: { view: string }; @property() private _curView?: number | "hass-unused-entities"; private _viewCache?: { [viewId: string]: HUIView }; @@ -84,13 +82,10 @@ class HUIRoot extends LitElement { protected render(): TemplateResult { return html` - - + })} fixed condenses> ${ this._editMode ? html` @@ -485,15 +480,17 @@ class HUIRoot extends LitElement { let newSelectView; let force = false; + const viewPath = this.route!.path.split("/")[1]; + if (changedProperties.has("route")) { const views = this.config.views; - if (this.route!.path === "" && views.length) { + if (!viewPath && views.length) { navigate(this, `${this.route!.prefix}/${views[0].path || 0}`, true); newSelectView = 0; - } else if (this._routeData!.view === "hass-unused-entities") { + } else if (viewPath === "hass-unused-entities") { newSelectView = "hass-unused-entities"; - } else if (this._routeData!.view) { - const selectedView = this._routeData!.view; + } else if (viewPath) { + const selectedView = viewPath; const selectedViewInt = Number(selectedView); let index = 0; for (let i = 0; i < views.length; i++) { @@ -520,7 +517,7 @@ class HUIRoot extends LitElement { // Leave unused entities when leaving edit mode if ( this.lovelace!.mode === "storage" && - this._routeData!.view === "hass-unused-entities" + viewPath === "hass-unused-entities" ) { const views = this.config && this.config.views; navigate(this, `${this.route?.prefix}/${views[0]?.path || 0}`); @@ -560,10 +557,6 @@ class HUIRoot extends LitElement { return this.shadowRoot!.getElementById("view") as HTMLDivElement; } - private _routeDataChanged(ev): void { - this._routeData = ev.detail.value; - } - private _handleRefresh(): void { fireEvent(this, "config-refresh"); } @@ -708,6 +701,8 @@ class HUIRoot extends LitElement { if (viewConfig.panel && viewConfig.cards && viewConfig.cards.length > 0) { view = document.createElement("hui-panel-view"); view.config = viewConfig; + view.lovelace = this.lovelace; + view.index = viewIndex; } else { view = document.createElement("hui-view"); view.lovelace = this.lovelace; diff --git a/src/panels/lovelace/types.ts b/src/panels/lovelace/types.ts index 2a923180fb..3a6d042fcf 100644 --- a/src/panels/lovelace/types.ts +++ b/src/panels/lovelace/types.ts @@ -33,6 +33,7 @@ export interface LovelaceBadge extends HTMLElement { export interface LovelaceCard extends HTMLElement { hass?: HomeAssistant; isPanel?: boolean; + editMode?: boolean; getCardSize(): number; setConfig(config: LovelaceCardConfig): void; } @@ -40,9 +41,8 @@ export interface LovelaceCard extends HTMLElement { export interface LovelaceCardConstructor extends Constructor { getStubConfig?: ( hass: HomeAssistant, - lovelaceConfig: LovelaceConfig, - entities?: string[], - entitiesFill?: string[] + entities: string[], + entitiesFallback: string[] ) => LovelaceCardConfig; getConfigElement?: () => LovelaceCardEditor; } diff --git a/src/panels/lovelace/views/hui-panel-view.ts b/src/panels/lovelace/views/hui-panel-view.ts index fbceb6ef51..2eeb64a27c 100644 --- a/src/panels/lovelace/views/hui-panel-view.ts +++ b/src/panels/lovelace/views/hui-panel-view.ts @@ -8,14 +8,18 @@ import { import { applyThemesOnElement } from "../../../common/dom/apply_themes_on_element"; import { HomeAssistant } from "../../../types"; -import { LovelaceCard } from "../types"; +import { LovelaceCard, Lovelace } from "../types"; import { createCardElement } from "../create-element/create-card-element"; import { LovelaceViewConfig } from "../../../data/lovelace"; +let editCodeLoaded = false; + @customElement("hui-panel-view") export class HUIPanelView extends UpdatingElement { @property() public hass?: HomeAssistant; + @property() public lovelace?: Lovelace; @property() public config?: LovelaceViewConfig; + @property({ type: Number }) public index!: number; protected firstUpdated(changedProperties: PropertyValues): void { super.firstUpdated(changedProperties); @@ -26,11 +30,25 @@ export class HUIPanelView extends UpdatingElement { super.update(changedProperties); const hass = this.hass!; + const lovelace = this.lovelace!; const hassChanged = changedProperties.has("hass"); const oldHass = changedProperties.get("hass") as this["hass"] | undefined; const configChanged = changedProperties.has("config"); - if (configChanged) { + if (lovelace.editMode && !editCodeLoaded) { + editCodeLoaded = true; + import(/* webpackChunkName: "hui-view-editable" */ "./hui-view-editable"); + } + + let editModeChanged = false; + + if (changedProperties.has("lovelace")) { + const oldLovelace = changedProperties.get("lovelace") as Lovelace; + editModeChanged = + !oldLovelace || lovelace.editMode !== oldLovelace.editMode; + } + + if (editModeChanged || configChanged) { this._createCard(); } else if (hassChanged) { (this.lastChild! as LovelaceCard).hass = this.hass; @@ -48,14 +66,37 @@ export class HUIPanelView extends UpdatingElement { } private _createCard(): void { - if (this.lastChild) { + while (this.lastChild) { this.removeChild(this.lastChild); } const card: LovelaceCard = createCardElement(this.config!.cards![0]); card.hass = this.hass; card.isPanel = true; - this.appendChild(card); + + if (!this.lovelace!.editMode) { + this.appendChild(card); + return; + } + + const wrapper = document.createElement("hui-card-options"); + wrapper.hass = this.hass; + wrapper.lovelace = this.lovelace; + wrapper.path = [this.index, 0]; + card.editMode = true; + wrapper.appendChild(card); + this.appendChild(wrapper); + if (this.config!.cards!.length > 1) { + const warning = document.createElement("hui-warning"); + warning.setAttribute( + "style", + "position: absolute; top: 0; width: 100%; box-sizing: border-box;" + ); + warning.innerText = this.hass!.localize( + "ui.panel.lovelace.editor.view.panel_mode.warning_multiple_cards" + ); + this.appendChild(warning); + } } } diff --git a/src/panels/lovelace/views/hui-view.ts b/src/panels/lovelace/views/hui-view.ts index 33c14dfbd0..e0d7c087de 100644 --- a/src/panels/lovelace/views/hui-view.ts +++ b/src/panels/lovelace/views/hui-view.ts @@ -298,6 +298,7 @@ export class HUIView extends LitElement { wrapper.hass = this.hass; wrapper.lovelace = this.lovelace; wrapper.path = [this.index!, cardIndex]; + element.editMode = true; wrapper.appendChild(element); elementsToAppend.push(wrapper); }); diff --git a/src/panels/profile/ha-panel-profile.ts b/src/panels/profile/ha-panel-profile.ts index 8f1443f898..f30509d8a2 100644 --- a/src/panels/profile/ha-panel-profile.ts +++ b/src/panels/profile/ha-panel-profile.ts @@ -20,6 +20,7 @@ import "./ha-long-lived-access-tokens-card"; import "./ha-advanced-mode-row"; import "./ha-pick-language-row"; import "./ha-pick-theme-row"; +import "./ha-pick-dashboard-row"; import "./ha-push-notifications-row"; import "./ha-force-narrow-row"; import "./ha-set-vibrate-row"; @@ -98,6 +99,10 @@ class HaPanelProfile extends LitElement { .narrow=${this.narrow} .hass=${this.hass} > + ${this.hass.dockedSidebar !== "auto" || !this.narrow ? html` + + ${this.hass.localize("ui.panel.profile.dashboard.header")} + + + ${this.hass.localize("ui.panel.profile.dashboard.description")} + + + + default + ${this._dashboards.map((dashboard) => { + if (!this.hass.user!.is_admin && dashboard.require_admin) { + return ""; + } + return html` + ${dashboard.title} + `; + })} + + + + `; + } + + private async _getDashboards() { + this._dashboards = await fetchDashboards(this.hass); + } + + private _dashboardChanged(ev: CustomEvent) { + const urlPath = ev.detail.item.getAttribute("url-path"); + if (!urlPath || urlPath === this.hass.defaultPanel) { + return; + } + setDefaultPanel(this, urlPath); + } +} + +declare global { + interface HTMLElementTagNameMap { + "ha-pick-dashboard-row": HaPickDashboardRow; + } +} diff --git a/src/state/connection-mixin.ts b/src/state/connection-mixin.ts index 789df39348..1c8b8b2fa1 100644 --- a/src/state/connection-mixin.ts +++ b/src/state/connection-mixin.ts @@ -21,6 +21,7 @@ import { Constructor, ServiceCallResponse } from "../types"; import { HassBaseEl } from "./hass-base-mixin"; import { broadcastConnectionStatus } from "../data/connection-status"; import { subscribeFrontendUserData } from "../data/frontend"; +import { DEFAULT_PANEL } from "../data/panel"; export const connectionMixin = >( superClass: T @@ -38,7 +39,7 @@ export const connectionMixin = >( services: null as any, user: null as any, panelUrl: (this as any)._panelUrl, - + defaultPanel: DEFAULT_PANEL, language: getLocalLanguage(), selectedLanguage: null, resources: null as any, diff --git a/src/state/sidebar-mixin.ts b/src/state/sidebar-mixin.ts index 456ec7120b..1e08fc7463 100644 --- a/src/state/sidebar-mixin.ts +++ b/src/state/sidebar-mixin.ts @@ -7,15 +7,25 @@ interface DockSidebarParams { dock: HomeAssistant["dockedSidebar"]; } +interface DefaultPanelParams { + defaultPanel: HomeAssistant["defaultPanel"]; +} + declare global { // for fire event interface HASSDomEvents { "hass-dock-sidebar": DockSidebarParams; } + interface HASSDomEvents { + "hass-default-panel": DefaultPanelParams; + } // for add event listener interface HTMLElementEventMap { "hass-dock-sidebar": HASSDomEvent; } + interface HTMLElementEventMap { + "hass-default-panel": HASSDomEvent; + } } export default >(superClass: T) => @@ -26,5 +36,9 @@ export default >(superClass: T) => this._updateHass({ dockedSidebar: ev.detail.dock }); storeState(this.hass!); }); + this.addEventListener("hass-default-panel", (ev) => { + this._updateHass({ defaultPanel: ev.detail.defaultPanel }); + storeState(this.hass!); + }); } }; diff --git a/src/state/themes-mixin.ts b/src/state/themes-mixin.ts index 6c151f2a71..de4ceeffc3 100644 --- a/src/state/themes-mixin.ts +++ b/src/state/themes-mixin.ts @@ -1,4 +1,7 @@ -import { applyThemesOnElement } from "../common/dom/apply_themes_on_element"; +import { + applyThemesOnElement, + invalidateThemeCache, +} from "../common/dom/apply_themes_on_element"; import { storeState } from "../util/ha-pref-storage"; import { subscribeThemes } from "../data/ws-themes"; import { HassBaseEl } from "./hass-base-mixin"; @@ -28,6 +31,7 @@ export default >(superClass: T) => subscribeThemes(this.hass!.connection, (themes) => { this._updateHass({ themes }); + invalidateThemeCache(); this._applyTheme(); }); } @@ -36,8 +40,21 @@ export default >(superClass: T) => applyThemesOnElement( document.documentElement, this.hass!.themes, - this.hass!.selectedTheme, - true + this.hass!.selectedTheme || this.hass!.themes.default_theme ); + + const meta = document.querySelector("meta[name=theme-color]"); + const headerColor = getComputedStyle( + document.documentElement + ).getPropertyValue("--app-header-background-color"); + if (meta) { + if (!meta.hasAttribute("default-content")) { + meta.setAttribute("default-content", meta.getAttribute("content")!); + } + const themeColor = + headerColor.trim() || + (meta.getAttribute("default-content") as string); + meta.setAttribute("content", themeColor); + } } }; diff --git a/src/translations/en.json b/src/translations/en.json index 1e85c72144..51396598d1 100755 --- a/src/translations/en.json +++ b/src/translations/en.json @@ -519,11 +519,13 @@ "common": { "loading": "Loading", "cancel": "Cancel", + "delete": "Delete", "close": "Close", "save": "Save", "yes": "Yes", "no": "No", - "successfully_saved": "Successfully saved" + "successfully_saved": "Successfully saved", + "successfully_deleted": "Successfully deleted" }, "components": { "entity": { @@ -652,9 +654,9 @@ "enabled_label": "Enable entity", "enabled_cause": "Disabled by {cause}.", "enabled_description": "Disabled entities will not be added to Home Assistant.", - "delete": "DELETE", + "delete": "Delete", "confirm_delete": "Are you sure you want to delete this entry?", - "update": "UPDATE", + "update": "Update", "note": "Note: this might not work yet with all integrations." } }, @@ -686,7 +688,7 @@ "mode": "Display mode", "box": "Input field", "slider": "Slider", - "step": "Step size of the slider", + "step": "Step size", "unit_of_measurement": "Unit of measurement" }, "input_select": { @@ -783,19 +785,23 @@ "areas": { "caption": "Areas", "description": "Overview of all areas in your home.", + "data_table": { + "area": "Area", + "devices": "Devices" + }, "picker": { "header": "Areas", "introduction": "Areas are used to organize where devices are. This information will be used throughout Home Assistant to help you in organizing your interface, permissions and integrations with other systems.", "introduction2": "To place devices in an area, use the link below to navigate to the integrations page and then click on a configured integration to get to the device cards.", "integrations_page": "Integrations page", "no_areas": "Looks like you have no areas yet!", - "create_area": "CREATE AREA" + "create_area": "Create Area" }, "editor": { "default_name": "New Area", - "delete": "DELETE", - "update": "UPDATE", - "create": "CREATE" + "delete": "Delete", + "update": "Update", + "create": "Create" }, "delete": { "confirmation_title": "Are you sure you want to delete this area?", @@ -887,7 +893,7 @@ "title": "Title", "title_required": "Title is required.", "url": "Url", - "url_error_msg": "The url should contain a - and cannot contain spaces or special characters, except for _ and -", + "url_error_msg": "The URL should contain a - and cannot contain spaces or special characters, except for _ and -", "require_admin": "Admin only", "delete": "Delete", "update": "Update", @@ -996,7 +1002,10 @@ "edit_automation": "Edit automation", "show_info_automation": "Show info about automation", "delete_automation": "Delete automation", - "delete_confirm": "Are you sure you want to delete this automation?" + "delete_confirm": "Are you sure you want to delete this automation?", + "headers": { + "name": "Name" + } }, "editor": { "enable_disable": "Enable/Disable automation", @@ -1220,8 +1229,12 @@ "learn_more": "Learn more about scripts", "no_scripts": "We couldn’t find any editable scripts", "add_script": "Add script", + "show_info": "Show info about script", "trigger_script": "Trigger script", - "edit_script": "Edit script" + "edit_script": "Edit script", + "headers": { + "name": "Name" + } }, "editor": { "alias": "Name", @@ -1251,7 +1264,10 @@ "edit_scene": "Edit scene", "show_info_scene": "Show info about scene", "delete_scene": "Delete scene", - "delete_confirm": "Are you sure you want to delete this scene?" + "delete_confirm": "Are you sure you want to delete this scene?", + "headers": { + "name": "Name" + } }, "editor": { "introduction": "Use scenes to bring your home alive.", @@ -1440,6 +1456,7 @@ "unknown_error": "Unknown error", "name": "Name", "update": "Update", + "no_devices": "No devices", "automation": { "automations": "Automations", "no_automations": "No automations", @@ -1483,7 +1500,9 @@ "integration": "Integration", "battery": "Battery", "no_devices": "No devices" - } + }, + "delete": "Delete", + "confirm_delete": "Are you sure you want to delete this device?" }, "entities": { "caption": "Entities", @@ -1638,23 +1657,24 @@ "external_step": { "description": "This step requires you to visit an external website to be completed.", "open_site": "Open website" - } + }, + "loading_first_time": "Please wait while the integration is being installed" } }, "users": { "caption": "Users", "description": "Manage users", "picker": { - "title": "Users", - "system_generated": "System generated" + "headers": { "name": "Name", "group": "Group", "system": "System" } }, "editor": { "caption": "View user", - "rename_user": "Rename user", + "name": "Name", "change_password": "Change password", "activate_user": "Activate user", "deactivate_user": "Deactivate user", "delete_user": "Delete user", + "update_user": "Update", "id": "ID", "owner": "Owner", "group": "Group", @@ -1662,9 +1682,6 @@ "system_generated": "System generated", "system_generated_users_not_removable": "Unable to remove system generated users.", "unnamed_user": "Unnamed User", - "enter_new_name": "Enter new name", - "user_rename_failed": "User rename failed:", - "group_update_failed": "Group update failed:", "confirm_user_deletion": "Are you sure you want to delete {name}?" }, "add_user": { @@ -1950,6 +1967,7 @@ "add": "Add Card", "edit": "Edit", "delete": "Delete Card", + "duplicate": "Duplicate Card", "move": "Move to View", "options": "More options" }, @@ -1965,6 +1983,7 @@ "yaml_mode": "You are using YAML mode, which means you cannot change your Lovelace config from the UI. If you want to change Lovelace from the UI, remove 'mode: yaml' from your Lovelace configuration in 'configuration.yaml.'", "yaml_control": "To take control in YAML mode, create a YAML file with the name you specified in your config for this dashboard, or the default 'ui-lovelace.yaml'.", "yaml_config": "To help you start here is the current config of this dashboard:", + "empty_config": "Start with an empty dashboard", "cancel": "Never mind", "close": "Close", "save": "Take control" @@ -2064,6 +2083,7 @@ "tap_action": "Tap Action", "title": "Title", "theme": "Theme", + "no_theme": "No theme", "unit": "Unit", "url": "Url", "state": "State" @@ -2132,7 +2152,8 @@ "view": { "panel_mode": { "title": "Panel Mode?", - "description": "This renders the first card at full width; other cards in this view will not be rendered." + "description": "This renders the first card at full width; other cards in this view will not be rendered.", + "warning_multiple_cards": "This view contains more than one card, but a panel view can only show 1 card." } } }, @@ -2186,6 +2207,11 @@ "link_promo": "Learn about themes", "dropdown_label": "Theme" }, + "dashboard": { + "header": "Dashboard", + "description": "Pick a default dashboard for this device.", + "dropdown_label": "Dashboard" + }, "change_password": { "header": "Change Password", "current_password": "Current Password", @@ -2388,11 +2414,6 @@ "tabs": { "info": { "title": "Info", - "remove": "Remove", - "set": "Set", - "default_ui": "{action} {name} as default page on this device", - "lovelace_ui": "Go to the Lovelace UI", - "states_ui": "Go to the states UI", "home_assistant_logo": "Home Assistant logo", "path_configuration": "Path to configuration.yaml: {path}", "developed_by": "Developed by a bunch of awesome people.", diff --git a/src/types.ts b/src/types.ts index 9976999ce9..348577ef0a 100644 --- a/src/types.ts +++ b/src/types.ts @@ -154,6 +154,7 @@ export interface HomeAssistant { vibrate: boolean; dockedSidebar: "docked" | "always_hidden" | "auto"; + defaultPanel: string; moreInfoEntityId: string | null; user?: CurrentUser; userData?: CoreFrontendUserData | null; diff --git a/src/util/ha-pref-storage.ts b/src/util/ha-pref-storage.ts index 0b2ed29f0f..74e0d7f84c 100644 --- a/src/util/ha-pref-storage.ts +++ b/src/util/ha-pref-storage.ts @@ -5,6 +5,7 @@ const STORED_STATE = [ "selectedTheme", "selectedLanguage", "vibrate", + "defaultPanel", ]; const STORAGE = window.localStorage || {}; diff --git a/src/util/toast-deleted-success.ts b/src/util/toast-deleted-success.ts new file mode 100644 index 0000000000..6dcf0da4a8 --- /dev/null +++ b/src/util/toast-deleted-success.ts @@ -0,0 +1,7 @@ +import { showToast } from "./toast"; +import { HomeAssistant } from "../types"; + +export const showDeleteSuccessToast = (el: HTMLElement, hass: HomeAssistant) => + showToast(el, { + message: hass!.localize("ui.common.successfully_deleted"), + }); diff --git a/translations/ca.json b/translations/ca.json index 55080d1ad2..4d88efc6e3 100644 --- a/translations/ca.json +++ b/translations/ca.json @@ -395,8 +395,8 @@ "ui": { "auth_store": { "ask": "Vols desar aquest inici de sessió?", - "confirm": "Desa inici de sessió", - "decline": "No, gràcies" + "confirm": "Si", + "decline": "No" }, "card": { "alarm_control_panel": { @@ -537,9 +537,11 @@ "common": { "cancel": "Cancel·la", "close": "Tanca", + "delete": "Suprimeix", "loading": "Carregant", "no": "No", "save": "Desa", + "successfully_deleted": "S'ha suprimit correctament", "successfully_saved": "S'ha desat correctament", "yes": "Sí" }, @@ -621,7 +623,7 @@ "dismiss": "Desestimar", "editor": { "confirm_delete": "Estàs segur que vols eliminar aquesta entrada?", - "delete": "ELIMINA", + "delete": "Suprimeix", "enabled_cause": "Desactivada per {cause}.", "enabled_description": "Les entitats desactivades no s’afegiran a Home Assistant.", "enabled_label": "Activa l’entitat", @@ -631,10 +633,10 @@ "name": "Substitució de Nom", "note": "Nota: podria no funcionar amb alguna de les integracions.", "unavailable": "Aquesta entitat no està disponible actualment.", - "update": "ACTUALITZA" + "update": "Actualitza" }, "no_unique_id": "Aquesta entitat no té un ID únic, per tant, no pot ser configurada des de la interfície d'usuari.", - "related": "Relacionades", + "related": "Relacionat", "settings": "Configuració" }, "generic": { @@ -816,14 +818,14 @@ }, "description": "Visió general de totes les àrees de la casa.", "editor": { - "create": "CREAR", - "default_name": "Àrea nova", - "delete": "ELIMINA", - "update": "ACTUALITZAR" + "create": "Crea", + "default_name": "Nova àrea", + "delete": "Suprimeix", + "update": "Actualitza" }, "no_areas": "Sembla que encara no tens cap àrea!.", "picker": { - "create_area": "CREA ÀREA", + "create_area": "Crea àrea", "header": "Registre d'àrees", "integrations_page": "Pàgina d'integracions", "introduction": "Les àrees s'utilitzen per organitzar la situació dels dispositius. Aquesta informació serà utilitzada per Home Assistant per ajudar-te a organitzar millor la teva interfície, els permisos i les integracions amb d'altres sistemes.", @@ -1310,6 +1312,7 @@ "automations": "Automatitzacions", "cant_edit": "Només pots editar els elements creats a la interfície d'usuari (UI).", "caption": "Dispositius", + "confirm_delete": "Estàs segur que vols eliminar aquest dispositiu?", "confirm_rename_entity_ids": "Vols, també, canviar el nom dels ID's d’entitat de les entitats?", "data_table": { "area": "Àrea", @@ -1320,6 +1323,7 @@ "model": "Model", "no_devices": "Sense dispositius" }, + "delete": "Suprimeix", "description": "Gestiona els dispositius connectats", "details": "Aquí tens tots els detalls del dispositiu.", "device_not_found": "Dispositiu no trobat.", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "No s'ha pogut crear l'àrea.", "finish": "Finalitza", + "loading_first_time": "Espera mentre s'instal·la la integració", "name_new_area": "Nom de la nova àrea?", "not_all_required_fields": "No s'han omplert tots els camps obligatoris.", "submit": "Envia" @@ -1514,13 +1519,13 @@ "delete": "Suprimeix", "dismiss": "Tanca", "edit_dashboard": "Edita el panell", - "icon": "Icona de la barra lateral", + "icon": "Icona", "new_dashboard": "Afegeix un nou panell", "remove_default": "Elimina'l com a predeterminat en aquest dispositiu", "require_admin": "Només administrador", "set_default": "Estableix-lo com a predeterminat en aquest dispositiu", "show_sidebar": "Mostra a la barra lateral", - "title": "Títol de la barra lateral", + "title": "Títol", "title_required": "El títol és necessari.", "update": "Actualitza", "url": "URL", @@ -1536,7 +1541,7 @@ "sidebar": "Mostra a la barra lateral", "title": "Títol" }, - "open": "Obre panell" + "open": "Obrir" } }, "description": "Configura els teus panells Lovelace", @@ -1672,7 +1677,7 @@ "section": { "reloading": { "automation": "Actualitza automatitzacions", - "core": "Actualitza el nucli", + "core": "Recarrega ubicacions i automatitzacions", "group": "Actualitza grups", "heading": "Torna a carregar la configuració", "introduction": "Algunes parts de la configuració de Home Assistant es poden recarregar sense necessitat de reiniciar. Els botons de sota esborraran la configuració antiga i en carregaran la nova.", @@ -2104,6 +2109,7 @@ }, "conditional": { "card": "Targeta", + "change_type": "Canvia el tipus", "condition_explanation": "La targeta es mostrarà quan es compleixin totes les condicions següents.", "conditions": "Condicions", "current_state": "actual", @@ -2151,10 +2157,11 @@ "icon_height": "Alçada de la icona", "image": "Ruta de la imatge", "manual": "Manual", - "manual_description": "Vols afegir una targeta personalitzada o vols escriure el codi yaml manualment?", + "manual_description": "Vols afegir una targeta personalitzada o escriure el codi yaml manualment?", "maximum": "Màxim", "minimum": "Mínim", "name": "Nom", + "no_theme": "Sense tema", "refresh_interval": "Interval d'actualització", "show_icon": "Mostra icona?", "show_name": "Mostra nom?", @@ -2181,7 +2188,7 @@ }, "iframe": { "description": "La targeta pàgina web et permet incrustar els teus llocs web preferits directament a Home Assistant.", - "name": "iFrame" + "name": "Pàgina web" }, "light": { "description": "La targeta llum et permet ajustar la brillantor d'una llum.", @@ -2221,7 +2228,8 @@ "name": "Imatge" }, "plant-status": { - "name": "Estat de la planta" + "description": "La targeta condicions de planta/vegetal és per a tots els amants de la botànica.", + "name": "Condicions de planta/vegetal" }, "sensor": { "description": "La targeta sensor mostra una visió ràpida d'un dels teus sensors. En mostra l'estat i opcionalment un gràfic amb els canvis al llarg del temps.", @@ -2250,9 +2258,10 @@ "edit_card": { "add": "Afegir targeta", "delete": "Elimina", + "duplicate": "Duplica targeta", "edit": "Editar", - "header": "Configuració de la targeta", - "move": "Mou", + "header": "(configuració de la targeta)", + "move": "Moure a la Vista", "options": "Més opcions", "pick_card": "Tria una targeta que vulguis afegir.", "pick_card_view_title": "Quina targeta vols afegir a la visualització {name}?", @@ -2263,7 +2272,7 @@ }, "edit_lovelace": { "edit_title": "Edita el títol", - "explanation": "Aquest títol es mostra a sobre de cada visualització a Lovelace.", + "explanation": "Aquest títol es mostra a sobre de cada panell Lovelace.", "header": "Títol de la interfície d'usuari Lovelace" }, "edit_view": { @@ -2320,13 +2329,14 @@ }, "suggest_card": { "add": "Afegeix a la UI Lovelace", - "create_own": "Crea la teva", + "create_own": "Escull una targeta diferent", "header": "T'hem creat un suggeriment" }, "view": { "panel_mode": { "description": "Es renderitzarà la primera targeta a amplada completa; les altres targetes d'aquesta visualització no es mostraran.", - "title": "Mode panell?" + "title": "Mode panell?", + "warning_multiple_cards": "Aquesta vista conté més d'una targeta, però una vista en mode panell només pot mostrar una targeta." } } }, @@ -2354,14 +2364,14 @@ "title": "Entitats sense utilitzar" }, "views": { - "confirm_delete": "Estàs segur que vols eliminar aquesta visualització?", + "confirm_delete": "Esborrar visualització?", "confirm_delete_existing_cards": "Si elimines aquesta vista, també s'eliminaran les targetes que conté", "confirm_delete_existing_cards_text": "Estàs segur que vols eliminar la vista '{name}'? La vista conté {number} targetes que també s'eliminaran. Aquesta acció no és reversible.", "confirm_delete_text": "Estàs segur que vols eliminar la vista '{name}'?", "existing_cards": "No pots suprimir una visualització si conté targetes, elimina-les primer." }, "warning": { - "attribute_not_found": "L'atribut {attribute} de {entity} no està disponible.", + "attribute_not_found": "L'atribut {attribute} de {entity} no és disponible.", "entity_non_numeric": "Entitat no numèrica: {entity}", "entity_not_found": "Entitat no disponible: {entity}" } diff --git a/translations/cs.json b/translations/cs.json index 1f646fa05b..195ca00e73 100644 --- a/translations/cs.json +++ b/translations/cs.json @@ -395,8 +395,8 @@ "ui": { "auth_store": { "ask": "Chcete toto přihlášení uložit?", - "confirm": "Uložit login", - "decline": "Ne, děkuji" + "confirm": "Ano", + "decline": "Ne" }, "card": { "alarm_control_panel": { @@ -537,9 +537,11 @@ "common": { "cancel": "Zrušit", "close": "Zavřít", + "delete": "Smazat", "loading": "Načítání", "no": "Ne", "save": "Uložit", + "successfully_deleted": "Úspěšně smazáno", "successfully_saved": "Úspěšně uloženo", "yes": "Ano" }, @@ -581,6 +583,7 @@ "entity": "Související entity", "group": "Část následujících skupin", "integration": "Integrace", + "no_related_found": "Nebyly nalezeny žádné související položky.", "scene": "Část následujících scén", "script": "Část následujících skriptů" }, @@ -625,19 +628,67 @@ "enabled_description": "Zakázané entity nebudou přidány do Home Assistant.", "enabled_label": "Povolit entitu", "entity_id": "Entity ID", + "icon": "Nahrazení ikony", + "icon_error": "Ikony by měly být ve formátu 'prefix:nazevikony', např. 'mdi:home'", "name": "Přepsání názvu", "note": "Poznámka: to nemusí fungovat se všemi integracemi.", "unavailable": "Tato entita není momentálně k dispozici.", "update": "Aktualizovat" }, + "no_unique_id": "Tato entita nemá jedinečné ID, proto její nastavení nelze spravovat z uživatelského rozhraní.", "related": "Související", "settings": "Nastavení" }, "generic": { "cancel": "Zrušit", + "close": "zavřít", "default_confirmation_title": "Opravdu?", "ok": "OK" }, + "helper_settings": { + "generic": { + "icon": "Ikona", + "initial_value": "Počáteční hodnota při spuštění", + "initial_value_explain": "Hodnota, kterou bude mít prvek, když se spustí Home Assistant. Pokud zůstane prázdné, bude hodnota obnovena na předchozí hodnotu.", + "name": "Název" + }, + "input_datetime": { + "date": "Datum", + "datetime": "Datum a čas", + "has_date": "Datum", + "has_time": "Čas", + "mode": "Co chcete zadat", + "time": "Čas" + }, + "input_number": { + "box": "Vstupní pole", + "max": "Maximální hodnota", + "min": "Minimální hodnota", + "mode": "Režim zobrazení", + "slider": "Posuvník", + "step": "Velikost kroku posuvníku", + "unit_of_measurement": "Měrná jednotka" + }, + "input_select": { + "add": "Přidat", + "add_option": "Přidat možnost", + "no_options": "Zatím nejsou k dispozici žádné možnosti.", + "options": "Možnosti" + }, + "input_text": { + "max": "Maximální délka", + "min": "Minimální délka", + "mode": "Režim zobrazení", + "password": "Heslo", + "pattern": "Vzor regex pro ověření na straně klienta", + "text": "Text" + }, + "not_editable": "Nelze upravovat", + "not_editable_text": "Tuto entitu nelze změnit z uživatelského rozhraní, protože je definována v souboru configuration.yaml.", + "platform_not_loaded": "Integrace {platform} není načtena. Přidejte ji do své konfigurace buďto přidáním 'default_config:' nebo '{platform}:'.", + "required_error_msg": "Toto pole je povinné", + "yaml_not_editable": "Nastavení této entity nelze upravovat z uživatelského rozhraní. Pouze entity nastavené z uživatelského rozhraní lze konfigurovat v uživatelském rozhraní." + }, "more_info_control": { "dismiss": "Zavřít dialog", "edit": "Upravit entitu", @@ -665,7 +716,7 @@ "title": "Pokyny pro aktualizaci" }, "vacuum": { - "clean_spot": "Čisté místo", + "clean_spot": "Vyčistit místo", "commands": "Příkazy vysavače:", "fan_speed": "Rychlost ventilátoru", "locate": "Lokalizovat", @@ -761,11 +812,15 @@ "areas": { "caption": "Registr oblastí", "create_area": "VYTVOŘIT OBLAST", + "delete": { + "confirmation_text": "Všechna zařízení v této oblasti budou nastavena jako nepřiřazena.", + "confirmation_title": "Opravdu chcete tuto oblast smazat?" + }, "description": "Přehled všech oblastí ve vaší domácnosti.", "editor": { "create": "VYTVOŘIT", "default_name": "Nová oblast", - "delete": "SMAZAT", + "delete": "Odstranit", "update": "UPRAVIT" }, "no_areas": "Vypadá to, že ještě nemáte žádné oblasti!", @@ -1000,8 +1055,8 @@ "edit_automation": "Upravit automatizaci", "header": "Editor automatizací", "introduction": "Editor automatizací umožňuje vytvářet a upravovat automatizace. Přečtěte si prosím [pokyny] (https://home-assistant.io/docs/automation/editor/), abyste se ujistili, že jste aplikaci Home Assistant nakonfigurovali správně.", - "learn_more": "Další informace o automatizaci", - "no_automations": "Nelze najít žádnou upravitelnou automatizaci", + "learn_more": "Další informace o automatizacích", + "no_automations": "Nemohli jsme najít žádné upravitelné automatizace", "only_editable": "Upravitelné mohou být pouze automatizace definované v automations.yaml.", "pick_automation": "Vyberte automatizaci, kterou chcete upravit", "show_info_automation": "Zobrazit informace o automatizaci" @@ -1194,7 +1249,7 @@ }, "server_control": { "reloading": { - "automation": "Znovu načíst automatizaci", + "automation": "Znovu načíst automatizace", "core": "Znovu načíst jádro", "group": "Znovu načíst skupiny", "heading": "Konfigurace se načítá", @@ -1257,6 +1312,7 @@ "automations": "Automatizace", "cant_edit": "Můžete upravovat pouze položky, které jsou vytvořeny v uživatelském rozhraní.", "caption": "Zařízení", + "confirm_delete": "Opravdu chcete toto zařízení odstranit?", "confirm_rename_entity_ids": "Chcete také přejmenovat ID entit vašich entit?", "data_table": { "area": "Oblast", @@ -1264,8 +1320,10 @@ "device": "Zařízení", "integration": "Integrace", "manufacturer": "Výrobce", - "model": "Model" + "model": "Model", + "no_devices": "Žádná zařízení" }, + "delete": "Odstranit", "description": "Správa připojených zařízení", "details": "Zde jsou všechny podrobnosti o vašem zařízení.", "device_not_found": "Zařízení nebylo nalezeno.", @@ -1323,6 +1381,7 @@ "filter": { "filter": "Filtr", "show_disabled": "Zobrazit zakázané entity", + "show_readonly": "Zobrazit entity jen pro čtení", "show_unavailable": "Zobrazit nedostupné entity" }, "header": "Registr entit", @@ -1338,6 +1397,8 @@ "introduction2": "Pomocí registru entit můžete přepsat název, změnit identifikátor entity nebo odebrat entitu. Poznámka: odebrání entity z registru entit nesmaže entitu. Pro smazání přejděte na stránku integrací pomocí odkazu níže.", "remove_selected": { "button": "Odstranit vybrané", + "confirm_partly_text": "Můžete odebrat pouze {removable} z vybraných {selected} entit. Entity lze odebrat pouze v případě, že integrace již entity neposkytuje. Občas je třeba restartovat Home Assistant před tím, než je možné odstranit entity ze smazané integrace. Opravdu chcete odebrat odstranitelné entity?", + "confirm_partly_title": "Lze odebrat pouze {number} vybraných entit.", "confirm_text": "Entity lze odebrat pouze v případě, že integrace již entity neposkytuje.", "confirm_title": "Chcete odstranit {number} entit?" }, @@ -1346,12 +1407,39 @@ "status": { "disabled": "Zakázáno", "ok": "Ok", + "readonly": "Pouze pro čtení", + "restored": "Obnoveno", "unavailable": "Nedostupné" }, "unavailable": "(není k dispozici)" } }, "header": "Konfigurace Home Assistant", + "helpers": { + "caption": "Pomocníci", + "description": "Prvky, které mohou pomoci při vytváření automatizací.", + "dialog": { + "add_helper": "Přidat pomocníka", + "add_platform": "Přidat {platform}", + "create": "Vytvořit" + }, + "picker": { + "add_helper": "Přidat pomocníka", + "headers": { + "editable": "Upravitelné", + "entity_id": "ID entity", + "name": "Název", + "type": "Typ" + } + }, + "types": { + "input_boolean": "Přepnout", + "input_datetime": "Datum a/nebo čas", + "input_number": "Číslo", + "input_select": "Rozbalovací nabídka", + "input_text": "Text" + } + }, "integrations": { "caption": "Integrace", "config_entry": { @@ -1376,7 +1464,7 @@ "add_area": "Přidat oblast", "area_picker_label": "Oblast", "close": "Zavřít", - "created_config": "Bylo vytvořeno nastavení pro {Name}.", + "created_config": "Bylo vytvořeno nastavení pro {name}.", "dismiss": "Zavřít dialog", "error_saving_area": "Chyba při ukládání oblasti: {error}", "external_step": { @@ -1385,6 +1473,7 @@ }, "failed_create_area": "Nepodařilo se vytvořit oblast.", "finish": "Dokončit", + "loading_first_time": "Počkejte prosím, než bude integrace nainstalována.", "name_new_area": "Název nové oblasti?", "not_all_required_fields": "Nejsou vyplněna všechna povinná pole.", "submit": "Odeslat" @@ -1413,6 +1502,83 @@ "note_about_website_reference": "Další jsou k dispozici na " }, "introduction": "Zde je možné konfigurovat vaše komponenty a Home Assistant.\nZ uživatelského rozhraní sice zatím není možné konfigurovat vše, ale pracujeme na tom.", + "lovelace": { + "caption": "Lovelace Dashboardy", + "dashboards": { + "cant_edit_default": "Standardní Lovelace dashboard nelze upravovat z uživatelského rozhraní. Můžete jej skrýt nastavením jiného dashboardu jako výchozího.", + "cant_edit_yaml": "Dashboardy definované v YAML nelze upravovat z uživatelského rozhraní. Změňte je v configuration.yaml.", + "caption": "Dashboardy", + "conf_mode": { + "storage": "Řízeno UI", + "yaml": "Soubor YAML" + }, + "confirm_delete": "Opravdu chcete odstranit tento dashboard?", + "default_dashboard": "Toto je výchozí dashboard", + "detail": { + "create": "Vytvořit", + "delete": "Smazat", + "dismiss": "Zavřít", + "edit_dashboard": "Upravit dashboard", + "icon": "Ikona", + "new_dashboard": "Přidat nový dashboard", + "remove_default": "Odebrat jako výchozí na tomto zařízení", + "require_admin": "Pouze správce", + "set_default": "Nastavit jako výchozí na tomto zařízení", + "show_sidebar": "Zobrazit na postranním panelu", + "title": "Název", + "title_required": "Název je povinný.", + "update": "Aktualizovat", + "url": "Url", + "url_error_msg": "Adresa URL by měla obsahovat - a nesmí obsahovat mezery ani speciální znaky, s výjimkou _ a -" + }, + "picker": { + "add_dashboard": "Přidat dashboard", + "headers": { + "conf_mode": "Metoda konfigurace", + "default": "Výchozí", + "filename": "Název souboru", + "require_admin": "Pouze správce", + "sidebar": "Zobrazit na postranním panelu", + "title": "Název" + }, + "open": "Otevřít" + } + }, + "description": "Nakonfigurujte své Lovelace Dashboardy", + "resources": { + "cant_edit_yaml": "Používáte Lovelace v režimu YAML, proto nemůžete spravovat své zdroje prostřednictvím uživatelského rozhraní. Spravujte je v souboru configuration.yaml.", + "caption": "Zdroje", + "confirm_delete": "Opravdu chcete tento zdroj odstranit?", + "detail": { + "create": "Vytvořit", + "delete": "Smazat", + "dismiss": "Zavřít", + "new_resource": "Přidat nový zdroj", + "type": "Typ zdroje", + "update": "Aktualizovat", + "url": "Url", + "url_error_msg": "Url je povinné pole.", + "warning_header": "Buďte opatrní!", + "warning_text": "Přidávání zdrojů může být nebezpečné, ujistěte se, že znáte původ zdroje a důvěřujete jim. Špatné zdroje mohou vážně poškodit váš systém." + }, + "picker": { + "add_resource": "Přidat zdroj", + "headers": { + "type": "Typ", + "url": "Url" + }, + "no_resources": "Žádné zdroje" + }, + "refresh_body": "Chcete-li dokončit odebrání, musíte stránku obnovit, chcete ji obnovit nyní?", + "refresh_header": "Chcete provést obnovení?", + "types": { + "css": "Stylesheet", + "html": "HTML (zastaralé)", + "js": "Soubor JavaScriptu (zastaralý)", + "module": "Modul JavaScriptu" + } + } + }, "person": { "add_person": "Přidat osobu", "caption": "Osoby", @@ -1510,7 +1676,7 @@ "description": "Restart a zastavení serveru Home Asistent", "section": { "reloading": { - "automation": "Znovu načíst automatizaci", + "automation": "Znovu načíst automatizace", "core": "Znovu načíst umístění a přizpůsobení", "group": "Znovu načíst skupiny", "heading": "Konfigurace se načítá", @@ -1702,6 +1868,9 @@ "update": "Aktualizovat" }, "edit_home_zone": "Umístění vašeho domova lze změnit v konfiguraci.", + "edit_home_zone_narrow": "Poloměr domovské zóny zatím nelze upravit z frontendu. Umístění lze změnit z obecné konfigurace.", + "go_to_core_config": "Přejít na obecnou konfiguraci?", + "home_zone_core_config": "Umístění vaší domovské zóny lze upravit na stránce obecné konfigurace. Poloměr domovské zóny zatím nelze upravit z frontendu. Chcete přejít na obecnou konfiguraci?", "introduction": "Zóny umožňují určit určité oblasti na zemi. Když je osoba v zóně, stav převezme název ze zóny. Zóny lze také použít jako aktivační událost nebo podmínku v nastavení automatizace.", "no_zones_created_yet": "Vypadá to, že nejsou vytvořené žádné zóny." }, @@ -1909,6 +2078,11 @@ "toggle": "Přepnout {name}", "url": "Otevřít okno adresy {url_path}" }, + "safe-mode": { + "description": "Home Assistant se při načítání konfigurace setkal s problémy a nyní běží v nouzovém režimu. Podívejte se do protokolu chyb a zjistěte, co se pokazilo.", + "header": "Nouzový režim aktivován", + "show_errors": "Zobrazit chyby" + }, "shopping-list": { "add_item": "Přidat položku", "checked_items": "Označené položky", @@ -1916,7 +2090,7 @@ } }, "changed_toast": { - "message": "Konfigurace Lovelace byla aktualizována, chcete obnovit stránku?", + "message": "Konfigurace Lovelace pro tento dashboard byla aktualizována, chcete obnovit stránku?", "refresh": "Obnovit" }, "editor": { @@ -1926,19 +2100,30 @@ }, "alarm-panel": { "available_states": "Dostupné stavy", + "description": "Karta Alarm panel umožňuje aktivovat či deaktivovat alarm integrací zabezpečovacích systémů.", "name": "Ovládací panel alarmu" }, "button": { + "description": "Karta Tlačítko umožňuje přidat tlačítka k provádění úkolů.", "name": "Tlačítko" }, "conditional": { - "name": "Podmínka" + "card": "Karta", + "change_type": "Změnit typ", + "condition_explanation": "Karta se zobrazí, když jsou splněny VŠECHNY níže uvedené podmínky.", + "conditions": "Podmínky", + "current_state": "současné", + "description": "Podmínková karta zobrazuje další kartu na základě stavu entity.", + "name": "Podmínka", + "state_equal": "Stav se rovná", + "state_not_equal": "Stav se nerovná" }, "config": { "optional": "Volitelné", "required": "Povinné" }, "entities": { + "description": "Karta Entity je nejběžnějším typem karty. Seskupuje položky do seznamů.", "name": "Entity", "show_header_toggle": "Zobrazit přepínač záhlaví?", "toggle": "Přepnout entity." @@ -1947,10 +2132,12 @@ "name": "Tlačítko entity" }, "entity-filter": { + "description": "Karta Filtr entit umožňuje definovat seznam entit, které chcete sledovat pouze v určitém stavu.", "name": "Filtr entit" }, "gauge": { - "name": "Měřidlo", + "description": "Karta Ručičkový ukazatel je základní karta pro vizuální zobrazení hodnoty senzoru.", + "name": "Ručičkový ukazatel", "severity": { "define": "Definovat závažnost?", "green": "Zelená", @@ -1969,13 +2156,17 @@ "icon": "Ikona", "icon_height": "Výška ikony", "image": "Cesta obrázku", + "manual": "Manuální", + "manual_description": "Potřebujete přidat vlastní kartu nebo jen chcete ručně napsat yaml?", "maximum": "Maximum", "minimum": "Minimum", "name": "Název", + "no_theme": "Žádný motiv", "refresh_interval": "Interval obnovení", "show_icon": "Zobrazit ikonu?", "show_name": "Zobrazit název?", "show_state": "Zobrazit stav?", + "state": "Stav", "tap_action": "Akce při stisknutí", "theme": "Motiv", "title": "Název", @@ -1984,71 +2175,90 @@ }, "glance": { "columns": "Sloupce", - "name": "Rychlý pohled" + "description": "Karta Náhled je užitečná pro seskupení více senzorů v kompaktním přehledu.", + "name": "Rychlý náhled" }, "history-graph": { + "description": "Karta Graf historie umožňuje zobrazit graf pro každou z uvedených entit.", "name": "Graf historie" }, "horizontal-stack": { + "description": "Karta Horizontální Stack umožňuje seskupovat více karet tak, že jsou vždy zobrazeny vedle sebe v prostoru šířky jednoho sloupce.", "name": "Horizontální uskupení" }, "iframe": { + "description": "Karta Webová stránka umožňuje vložit oblíbenou webovou stránku přímo do Home Assistanta.", "name": "iFrame" }, "light": { + "description": "Karta Světlo umožňuje změnit jas světla.", "name": "Světlo" }, "map": { "dark_mode": "Tmavý režim?", "default_zoom": "Výchozí zvětšení", + "description": "Karta Mapa umožňuje zobrazit entity na mapě.", "geo_location_sources": "Zdroje geolokace", "name": "Mapa", "source": "Zdroj" }, "markdown": { "content": "Obsah", + "description": "Karta Markdown se používá k vykreslení Markdown.", "name": "Markdown" }, "media-control": { + "description": "Karta Media Control se používá k zobrazení entit přehrávače médií na rozhraní se snadno použitelnými ovládacími prvky.", "name": "Řízení médií" }, "picture-elements": { + "description": "Karta Obrázkové elementy je jednou z nejvšestrannějších typů karet. Karta umožňuje umisťovat ikony, text nebo dokonce služby pomocí souřadnic do obrázku.", "name": "Obrázkové elementy" }, "picture-entity": { + "description": "Karta Obrázková entita zobrazuje entitu ve formě obrázku. Namísto obrázků z adresy URL může také zobrazit obrázek entit kamery.", "name": "Obrazková entita" }, "picture-glance": { - "name": "Obrázkový pohled" + "description": "Karta Obrázkový náhled zobrazuje obrázek a odpovídající stav entity jako ikonu. Entity na pravé straně umožňují přepínání, jiné zobrazují dialogové okno s více informacemi.", + "name": "Obrázkový náhled" }, "picture": { + "description": "Karta Obrázek vám umožňuje nastavit obrázek, který se použije pro navigaci na různá místa v rozhraní nebo pro volání služby.", "name": "Obrázek" }, "plant-status": { + "description": "Karta Stav rostliny je pro všechny naše úžasné botaniky.", "name": "Stav rostliny" }, "sensor": { + "description": "Karta Sensor poskytuje rychlý přehled o stavu senzorů s volitelným grafem pro vizualizaci změn v průběhu času.", "graph_detail": "Detail grafu", "graph_type": "Typ grafu", "name": "Senzor" }, "shopping-list": { + "description": "Karta Nákupní seznam umožňuje přidávat, upravovat, odškrtávat a mazat položky z nákupního seznamu.", "integration_not_loaded": "Tato karta vyžaduje integraci `shopping_list`.", "name": "Nákupní seznam" }, "thermostat": { + "description": "Karta Termostat poskytuje kontrolu nad vaší klimatickou entitou. Umožňuje změnit teplotu a režim entity.", "name": "Termostat" }, "vertical-stack": { + "description": "Karta Vertical Stack umožňuje seskupovat více karet tak, že jsou vždy zobrazeny ve stejném sloupci.", "name": "Svislá sada" }, "weather-forecast": { + "description": "Karta Předpověď počasí zobrazuje počasí. Velmi užitečná pro použití v rozhraní, které lidé zobrazují na zdi.", "name": "Předpověď počasí" } }, "edit_card": { "add": "Přidat kartu", "delete": "Odstranit", + "duplicate": "Duplikovat Kartu", "edit": "Upravit", "header": "Konfigurace karty", "move": "Přesunout", @@ -2072,7 +2282,13 @@ "header": "Zobrazit konfiguraci", "header_name": "{name} Zobrazit konfiguraci", "move_left": "Posunout pohled doleva", - "move_right": "Posunout pohled doprava" + "move_right": "Posunout pohled doprava", + "tab_badges": "Odznaky", + "tab_settings": "Nastavení", + "tab_visibility": "Viditelnost", + "visibility": { + "select_users": "Vyberte, kteří uživatelé by měli vidět tento pohled v navigaci" + } }, "header": "Upravit UI", "menu": { @@ -2095,16 +2311,21 @@ "error_remove": "Nelze odstranit nastavení: {error}", "error_save_yaml": "Nelze uložit YAML: {error}", "header": "Upravit konfiguraci", + "resources_moved": "Zdroje by již neměly být přidávány do konfigurace Lovelace, ale mohou být přidávány v konfiguračním panelu Lovelace.", "save": "Uložit", "saved": "Uloženo", "unsaved_changes": "Neuložené změny" }, "save_config": { "cancel": "Zahodit změnu", + "close": "Zavřít", "header": "Převzít kontrolu nad vaší Lovelace UI", "para": "Ve výchozím nastavení bude Home Assistant spravovat vaše uživatelské rozhraní – aktualizovat jej při přidání nové entity nebo Lovelace komponenty. Pokud převezmete kontrolu, nebudeme již provádět změny automaticky za vás.", "para_sure": "Opravdu chcete převzít kontrolu nad uživalským rohraním ?", - "save": "Převzít kontrolu" + "save": "Převzít kontrolu", + "yaml_config": "Abyste mohli snadněji začít, zde aktuální konfigurace tohoto dashboardu:", + "yaml_control": "Chcete-li převzít kontrolu v režimu YAML, vytvořte soubor YAML s názvem, který jste uvedli ve své konfiguraci pro tento dashboard nebo výchozí 'ui-lovelace.yaml'.", + "yaml_mode": "Používáte režim YAML, což znamená, že nemůžete změnit konfiguraci Lovelace z uživatelského rozhraní. Pokud chcete měnit Lovelace z uživatelského rozhraní, odstraňte 'mode: yaml' z vaší konfigurace Lovelace v 'configuration.yaml.'" }, "suggest_card": { "add": "Přidat do Lovelance", @@ -2114,7 +2335,8 @@ "view": { "panel_mode": { "description": "Toto vykreslí první kartu v plné šířce; ostatní karty v tomto pohledu nebudou vykresleny.", - "title": "Režim panelu?" + "title": "Režim panelu?", + "warning_multiple_cards": "Toto zobrazení obsahuje více než jednu kartu, ale v panelovém zobrazení může zobrazovat pouze 1 kartu." } } }, @@ -2124,9 +2346,14 @@ "exit_edit_mode": "Ukončit režim úprav uživatelského rozhraní", "help": "Pomoc", "refresh": "Obnovit", + "reload_resources": "Opětovné načtení prostředků", "unused_entities": "Nepoužívané entity" }, "reload_lovelace": "Znovu načíst Lovelace", + "reload_resources": { + "refresh_body": "Chcete-li dokončit opětovné načtení, musíte stránku aktualizovat, chcete ji nyní aktualizovat?", + "refresh_header": "Chcete aktualizovat stránku?" + }, "unused_entities": { "available_entities": "Toto jsou entity, které máte k dispozici, ale dosud nejsou ve vašem uživatelském rozhraní Lovelace.", "domain": "Doména", @@ -2137,10 +2364,14 @@ "title": "Nepoužité entity" }, "views": { - "confirm_delete": "Opravdu chcete smazat tento pohled?", + "confirm_delete": "Odstranit zobrazení?", + "confirm_delete_existing_cards": "Odstraněním tohoto pohledu dojde také k odebrání karet", + "confirm_delete_existing_cards_text": "Opravdu chcete smazat pohled '{name}'? Pohled obsahuje {number} karty, které budou smazány. Tuto akci nelze vrátit zpět.", + "confirm_delete_text": "Opravdu chcete smazat pohled '{name}'?", "existing_cards": "Nelze smazat pohled, který obsahuje karty. Nejprve karty odstraňte." }, "warning": { + "attribute_not_found": "Atribut {attribute} není k dispozici v: {entity}", "entity_non_numeric": "Entita není číselná: {entity}", "entity_not_found": "Entita není k dispozici: {entity}" } diff --git a/translations/cy.json b/translations/cy.json index ae3c46604e..e9ec30d59f 100644 --- a/translations/cy.json +++ b/translations/cy.json @@ -422,8 +422,10 @@ }, "common": { "cancel": "Canslo", + "delete": "Dileu", "loading": "Llwytho", - "save": "Arbed" + "save": "Arbed", + "successfully_deleted": "Dileuwyd yn llwyddiannus" }, "components": { "device-picker": { @@ -439,6 +441,30 @@ } }, "dialogs": { + "entity_registry": { + "editor": { + "delete": "Dileu", + "update": "Diweddariad" + }, + "no_unique_id": "Nid oes gan yr endid hwn ID unigryw, felly ni ellir rheoli ei osodiadau o'r UI." + }, + "helper_settings": { + "input_datetime": { + "date": "Dyddiad", + "datetime": "Dyddiad ac amser", + "mode": "Beth ydych chi eisiau roid fel mewnbwn", + "time": "Amser" + }, + "input_number": { + "step": "Maint y cam" + }, + "input_text": { + "max": "Hyd mwyaf", + "min": "Hyd lleiaf" + }, + "platform_not_loaded": "Nid yw'r integreiddiad {platform} wedi'i lwytho. Ychwanegwch eich cyfluniad ato naill ai trwy ychwanegu 'default_config:' neu '{platform}:'.", + "yaml_not_editable": "Ni ellir olygu gosodiadau'r endid hwn o'r UI. Dim ond endidau a sefydlwyd o'r UI y gellir eu ffurfweddu o'r UI." + }, "more_info_control": { "dismiss": "Gwrthod deialog", "script": { @@ -483,16 +509,20 @@ "areas": { "caption": "Gofrestrfa ardal", "create_area": "CREU ARDAL", + "delete": { + "confirmation_text": "Bydd pob dyfais yn yr ardal hon yn cael ei ddadneilltuo.", + "confirmation_title": "Ydych chi'n siŵr bod chi eisiau dileu'r ardal hon?" + }, "description": "Trosolwg o bob ardal yn eich cartref.", "editor": { - "create": "CREU", + "create": "Creu", "default_name": "Ardal Newydd", - "delete": "DILEU", - "update": "DIWEDDARIAD" + "delete": "Dileu", + "update": "Diweddaru" }, "no_areas": "Edrych fel nad oes gennych ardaloedd eto!", "picker": { - "create_area": "CREU ARDAL", + "create_area": "Creu Ardal", "header": "Gofrestrfa ardal", "integrations_page": "Tudalen rhyngwynebu", "introduction": "Defnyddir ardaloedd i drefnu lle mae dyfeisiau. Defnyddir y wybodaeth hon drwy gydol Home Assistant i helpu chi i drefnu eich rhyngwyneb, caniatadau ac integreiddio â systemau eraill.", @@ -597,7 +627,7 @@ "triggers": { "add": "Ychwanegu sbardun", "delete": "Dileu", - "delete_confirm": "Sicr bod chi eisiau dileu?", + "delete_confirm": "Ydych chi'n siŵr bod chi eisiau dileu hwn?", "duplicate": "Dyblyg", "header": "Sbardunau", "introduction": "Sbarduno yw'r hyn sy'n dechrau proses rheol awtomeiddio. Mae'n bosib dewis nifer o sbardunau i'run rheol. Unwaith mae sbardun yn cychwyn, bydd Home Assistant yn dilysu'r amodau, os o gwbl, a galw'r gweithred. \n\n[dysgwch mwy am sbardunau.] (https://home-assistant.io/docs/automation/trigger/)", @@ -752,6 +782,7 @@ "devices": { "area_picker_label": "Ardal", "automations": "Awtomeiddiadau", + "confirm_delete": "Ydych chi'n siŵr eich bod eisiau dileu y ddyfais hon?", "confirm_rename_entity_ids": "A ydych chi hefyd eisiau ailenwi enwau eich endidau?", "data_table": { "area": "Ardal", @@ -759,8 +790,10 @@ "device": "Dyfais", "integration": "Integreiddio", "manufacturer": "Gwneuthurwr", - "model": "Model" + "model": "Model", + "no_devices": "Dim dyfeisiau" }, + "delete": "Dileu", "details": "Dyma holl fanylion eich dyfais.", "device_not_found": "Heb ganfod y ddyfais.", "info": "Gwybodaeth am ddyfais", @@ -814,6 +847,7 @@ }, "failed_create_area": "Wedi methu creu ardal.", "finish": "Gorffen", + "loading_first_time": "Arhoswch tra bo'r integreiddiad yn cael ei osod", "name_new_area": "Enw'r ardal newydd?", "not_all_required_fields": "Nid yw pob maes gofynnol wedi'i lenwi.", "submit": "Cyflwyno" @@ -823,11 +857,32 @@ "description": "Rheoli dyfeisiau a gwasanaethau cysylltiedig", "details": "Manylion integreiddio", "discovered": "Darganfuwyd", + "ignore": { + "confirm_ignore": "Ydych chi'n siŵr nad ydych am sefydlu'r integreiddiad hwn? Gallwch ddad-wneud hyn drwy glicio ar y 'dangos integreiddiadau a anwybyddwyd' yn y ddewislen gorlif ar y dde uchaf." + }, "integration_not_found": "Heb ganfod integreiddiad", "new": "Sefydlu integreiddiad newydd", "none": "Dim byd wedi'i ffurfweddu eto." }, "introduction": "Yma mae'n bosib ffurfweddu'ch cydrannau ac Home Assistant. Nid yw popeth yn bosib i'w ffurfweddu o'r UI eto, ond rydym yn gweithio arno.", + "lovelace": { + "dashboards": { + "cant_edit_default": "Ni ellir golygu dangosfwrdd safonol Lovelace o'r UI. Gallwch ei guddio trwy osod dangosfwrdd arall yn ddiofyn.", + "cant_edit_yaml": "Ni ellir golygu dangosfyrddau a ddiffinnir yn YAML o'r UI. Newidiwch nhw yn configuration.yaml.", + "default_dashboard": "Dyma'r dangosfwrdd diofyn", + "detail": { + "icon": "Eicon", + "title": "Teitl", + "url_error_msg": "Dylai'r URL gynnwys a - ac ni all gynnwys mannau na chymeriadau arbennig, heblaw am _ ac -" + } + }, + "resources": { + "cant_edit_yaml": "Rydych chi'n defnyddio Lovelace yn y modd YAML, felly ni allwch reoli'ch adnoddau trwy'r UI. Rheolwch nhw yn configuration.yaml.", + "picker": { + "no_resources": "Dim adnoddau" + } + } + }, "person": { "caption": "Pobl", "description": "Rheoli'r pobl mae Home Assistant yn tracio.", @@ -999,6 +1054,9 @@ "showing_entries": "Dangos endidau i" }, "lovelace": { + "add_entities": { + "yaml_unsupported": "Cewch chi ddim defnyddio'r swyddogaeth hon wrth ddefnyddio UI Lovelace yn modd YAML." + }, "cards": { "empty_state": { "go_to_integrations_page": "Ewch i'r dudalen integreiddio.", @@ -1044,6 +1102,9 @@ "gauge": { "name": "Medrydd" }, + "generic": { + "no_theme": "Dim thema" + }, "glance": { "name": "Cipolwg" }, @@ -1090,18 +1151,22 @@ "name": "Rhestr siopa" }, "thermostat": { + "description": "Mae'r cerdyn Thermostat yn rhoi rheolaeth ar eich endid hinsawdd. Yn caniatáu ichi newid tymheredd a modd yr endid.", "name": "Thermostat" }, "vertical-stack": { + "description": "Mae'r cerdyn 'Vertical Stack' yn caniatáu ichi grwpio cardiau lluosog fel bod nhw bob tro yn eistedd yn yr un golofn.", "name": "Stac Fertigol" }, "weather-forecast": { + "description": "Mae'r cerdyn rhagolygon tywydd yn dangos y tywydd. Defnyddiol iawn i'w cynnwys ar ryngwynebau y mae pobl yn eu harddangos ar y wal.", "name": "Rhagolwg tywydd" } }, "edit_card": { "add": "Ychwanegu Cerdyn", "delete": "Dileu", + "duplicate": "Cerdyn dyblyg", "edit": "Golygu", "header": "Ffurfweddu Cerdyn", "move": "Symud", @@ -1120,7 +1185,10 @@ "edit": "Golygu golwg", "header": "Gweld Ffurfweddiad", "move_left": "Symud y wedd i'r chwith", - "move_right": "Symud y wedd i'r dde" + "move_right": "Symud y wedd i'r dde", + "visibility": { + "select_users": "Dewiswch pa ddefnyddwyr ddylai weld yr olygfa hon yn y llywio" + } }, "header": "Golygu rhyngwyneb defnyddiwr", "menu": { @@ -1148,7 +1216,13 @@ "header": "Cymerwch reolaeth ar eich rhyngwyneb defnyddiwr Lovelace", "para": "Gwneith Home Assistant gynnal eich rhyngwyneb defnyddiwr yn ddiofyn, a'i diweddaru pan fydd endidau neu gydrannau Lovelace newydd yn dod ar gael. Os ydych yn cymryd rheolaeth nawn ddim gwneud newidiadau awtomatig pellach i chi.", "para_sure": "A ydych yn siŵr bod chi eisiau rheoli eich rhyngwyneb defnyddiwr?", - "save": "Cymerwch reolaeth" + "save": "Cymerwch reolaeth", + "yaml_mode": "Ydych yn defnyddio YAML modd, sy'n golygu nad ydych yn gallu newid eich Lovelace config o'r UI. Os ydych am newid Lovelace o UI, dileu 'modd: yaml' o eich cyfluniad Lovelace yn 'configuration.yaml.'" + }, + "view": { + "panel_mode": { + "warning_multiple_cards": "Mae'r golwg yn cynnwys mwy nag un cerdyn, ond dim ond un cerdyn gall y golwg panel ei ddangos." + } } }, "menu": { @@ -1157,9 +1231,14 @@ "exit_edit_mode": "Gadael modd golygu UI", "help": "Help", "refresh": "Adnewyddu", + "reload_resources": "Ail-lwytho adnoddau", "unused_entities": "Endidau heb ei ddefnyddio" }, "reload_lovelace": "Ail-lwytho Lovelace", + "reload_resources": { + "refresh_body": "Rhaid i chi adnewyddu'r dudalen i gwblhau'r ail-lwytho, ydych chi eisiau adnewyddu rŵan?", + "refresh_header": "Ydych chi eisiau adnewyddu?" + }, "unused_entities": { "available_entities": "Rhain yw'r endidau sydd gennych ar gael, ond dim ar eich Lovelace UI eto", "domain": "Parth", @@ -1170,6 +1249,7 @@ "title": "Endidau heb ei ddefnyddio" }, "warning": { + "attribute_not_found": "Priodoledd {attribute} ddim ar gael yn: {entity}", "entity_non_numeric": "Endid di-rhifol: {entity}", "entity_not_found": "Endid ddim ar gael: {entity}" } diff --git a/translations/da.json b/translations/da.json index c9d32cb057..63cf47bba6 100644 --- a/translations/da.json +++ b/translations/da.json @@ -537,9 +537,11 @@ "common": { "cancel": "Annuller", "close": "Luk", + "delete": "Slet", "loading": "Indlæser", "no": "Nej", "save": "Gem", + "successfully_deleted": "Slettet", "successfully_saved": "Gemt", "yes": "Ja" }, @@ -621,7 +623,7 @@ "dismiss": "Afvis", "editor": { "confirm_delete": "Er du sikker på, at du vil slette denne post?", - "delete": "SLET", + "delete": "Slet", "enabled_cause": "Deaktiveret af {cause}.", "enabled_description": "Deaktiverede entiteter tilføjes ikke til Home Assistant.", "enabled_label": "Aktivér entitet", @@ -631,7 +633,7 @@ "name": "Brugerdefineret navn", "note": "Bemærk: Dette virker muligvis ikke med alle integrationer endnu.", "unavailable": "Denne entitet er ikke tilgængelig i øjeblikket.", - "update": "OPDATER" + "update": "Opdater" }, "no_unique_id": "Denne entitet har ikke et unikt id. Derfor kan dens indstillinger ikke styres fra brugerfladen.", "related": "Relaterede", @@ -664,7 +666,7 @@ "min": "Minimumsværdi", "mode": "Visningstilstand", "slider": "Skyder", - "step": "Skyderens trinstørrelse", + "step": "Trinstørrelse", "unit_of_measurement": "Måleenhed" }, "input_select": { @@ -715,7 +717,7 @@ }, "vacuum": { "clean_spot": "Rengør område", - "commands": "Støvsuger kommandoer", + "commands": "Støvsugerkommandoer", "fan_speed": "Blæserhastighed", "locate": "Lokaliser", "pause": "Pause", @@ -816,14 +818,14 @@ }, "description": "Oversigt over alle områder i dit hjem.", "editor": { - "create": "OPRET", + "create": "Opret", "default_name": "Nyt område", - "delete": "SLET", - "update": "OPDATER" + "delete": "Slet", + "update": "Opdater" }, "no_areas": "Du ikke har ingen områder endnu!", "picker": { - "create_area": "OPRET OMRÅDE", + "create_area": "Opret område", "header": "Områder", "integrations_page": "Integrationsside", "introduction": "Områder bruges til at organisere hvor enheder befinder sig. Disse oplysninger vil blive brugt i Home Assistant til at hjælpe dig med at organisere din brugerflade, tilladelser og integrationer med andre systemer.", @@ -1310,6 +1312,7 @@ "automations": "Automatiseringer", "cant_edit": "Du kan kun redigere elementer, der er oprettet i brugerfladen.", "caption": "Enheder", + "confirm_delete": "Er du sikker på, at du vil slette denne enhed?", "confirm_rename_entity_ids": "Vil du også omdøbe entitet-id'et for dine entiteter?", "data_table": { "area": "Område", @@ -1320,6 +1323,7 @@ "model": "Model", "no_devices": "Ingen enheder" }, + "delete": "Slet", "description": "Administrer tilsluttede enheder", "details": "Her er alle oplysninger om din enhed.", "device_not_found": "Enhed blev ikke fundet.", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "Området kunne ikke oprettes.", "finish": "Afslut", + "loading_first_time": "Vent mens integrationen installeres", "name_new_area": "Navnet på det nye område?", "not_all_required_fields": "Ikke alle påkrævede felter er udfyldt.", "submit": "Send" @@ -2156,6 +2161,7 @@ "maximum": "Maksimum", "minimum": "Minimum", "name": "Navn", + "no_theme": "Intet tema", "refresh_interval": "Opdateringsinterval", "show_icon": "Vis ikon?", "show_name": "Vis navn?", @@ -2252,6 +2258,7 @@ "edit_card": { "add": "Tilføj kort", "delete": "Slet kort", + "duplicate": "Dubliker kort", "edit": "Rediger", "header": "Kortkonfiguration", "move": "Flyt til visning", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "Dette gengiver første kort i fuld bredde; andre kort i denne visning vil ikke blive gengivet.", - "title": "Paneltilstand?" + "title": "Paneltilstand?", + "warning_multiple_cards": "Denne visning indeholder mere end ét kort, men en panelvisning kan kun vise 1 kort." } } }, diff --git a/translations/de.json b/translations/de.json index 0ce36f0fb8..7cde64535b 100644 --- a/translations/de.json +++ b/translations/de.json @@ -537,9 +537,11 @@ "common": { "cancel": "Abbrechen", "close": "Schließen", + "delete": "Löschen", "loading": "Laden", "no": "Nein", "save": "Speichern", + "successfully_deleted": "Erfolgreich gelöscht", "successfully_saved": "Erfolgreich gespeichert", "yes": "Ja" }, @@ -620,8 +622,8 @@ "control": "Steuerung", "dismiss": "Ausblenden", "editor": { - "confirm_delete": "Möchtest Du diesen Eintrag wirklich löschen?", - "delete": "LÖSCHEN", + "confirm_delete": "Möchtest du diesen Eintrag wirklich löschen?", + "delete": "Löschen", "enabled_cause": "Deaktiviert durch {cause}.", "enabled_description": "Deaktivierte Entitäten werden nicht zu Home Assistant hinzugefügt.", "enabled_label": "Entität aktivieren", @@ -631,7 +633,7 @@ "name": "Namen überschreiben", "note": "Hinweis: Dies funktioniert möglicherweise noch nicht bei allen Integrationen.", "unavailable": "Diese Entität ist derzeit nicht verfügbar.", - "update": "AKTUALISIEREN" + "update": "Aktualisieren" }, "no_unique_id": "Diese Entität hat keine eindeutige ID, daher können die Einstellungen nicht über die UI verwaltet werden.", "related": "Verwandte", @@ -664,7 +666,7 @@ "min": "Minimaler Wert", "mode": "Anzeigemodus", "slider": "Schieberegler", - "step": "Schrittweite des Schiebereglers", + "step": "Schrittgröße", "unit_of_measurement": "Maßeinheit" }, "input_select": { @@ -811,19 +813,19 @@ "caption": "Bereichsregister", "create_area": "BEREICH ERSTELLEN", "delete": { - "confirmation_text": "Alle Geräte in diesem Bereich werden nicht zugewiesen.", + "confirmation_text": "Alle Geräte in diesem Bereich werden nicht mehr zugewiesen sein.", "confirmation_title": "Möchtest du diesen Bereich wirklich löschen?" }, "description": "Überblick über alle Bereiche in Deinem Haus.", "editor": { - "create": "ERSTELLEN", + "create": "Erstellen", "default_name": "Neuer Bereich", - "delete": "LÖSCHEN", - "update": "AKTUALISIEREN" + "delete": "Löschen", + "update": "Aktualisieren" }, "no_areas": "Sieht aus, als hätten Sie noch keine Bereiche!", "picker": { - "create_area": "BEREICH ERSTELLEN", + "create_area": "Bereich erstellen", "header": "Bereiche", "integrations_page": "Integrationsseite", "introduction": "In Bereichen wird festgelegt, wo sich Geräte befinden. Diese Informationen werden in Home Assistant verwendet, um Sie bei der Organisation Ihrer Benutzeroberfläche, Berechtigungen und Integrationen mit anderen Systemen zu unterstützen.", @@ -1272,9 +1274,9 @@ }, "customize": { "attributes_customize": "Folgende Attribute sind bereits in customize.yaml gesetzt", - "attributes_not_set": "Die folgenden Attribute wurden nicht gesetzt. Setzen Sie sie, wenn Sie möchten.", + "attributes_not_set": "Die folgenden Attribute wurden nicht gesetzt. Setze sie, wenn du möchtest.", "attributes_outside": "Die folgenden Attribute werden außerhalb von customize.yaml angepasst.", - "attributes_override": "Sie können sie überschreiben, wenn Sie möchten.", + "attributes_override": "Du kannst sie überschreiben, wenn du möchtest.", "attributes_set": "Die folgenden Attribute der Entität sind programmatisch festgelegt.", "caption": "Anpassung", "description": "Elemente anpassen", @@ -1286,7 +1288,7 @@ }, "warning": { "include_link": "binde customize.yaml ein", - "include_sentence": "Es scheint, dass Deine configuration.yaml nicht korrekt ist.", + "include_sentence": "Es scheint, dass deine configuration.yaml nicht korrekt ist.", "not_applied": "Die hier vorgenommenen Änderungen werden eingetragen, aber erst nach einem erneuten Laden der Konfiguration angewendet, wenn das Include vorhanden ist." } }, @@ -1310,6 +1312,7 @@ "automations": "Automatisierungen", "cant_edit": "Du kannst nur Elemente bearbeiten, die in der Benutzeroberfläche erstellt wurden.", "caption": "Geräte", + "confirm_delete": "Möchtest Du dieses Gerät wirklich löschen?", "confirm_rename_entity_ids": "Möchten Sie auch die Entitäts-IDs Ihrer Entitäten umbenennen?", "data_table": { "area": "Bereich", @@ -1320,6 +1323,7 @@ "model": "Modell", "no_devices": "keine Geräte" }, + "delete": "Löschen", "description": "Verwalte verbundene Geräte", "details": "Hier sind alle Details deines Geräts.", "device_not_found": "Gerät nicht gefunden.", @@ -1366,7 +1370,7 @@ "picker": { "disable_selected": { "button": "Ausgewählte deaktivieren", - "confirm_text": "Deaktivierte Entitäten werden Home Assistant nicht hinzugefügt.", + "confirm_text": "Deaktivierte Entitäten werden zu Home Assistant nicht hinzugefügt.", "confirm_title": "Möchtest du {number} Entitäten deaktivieren?" }, "enable_selected": { @@ -1469,6 +1473,7 @@ }, "failed_create_area": "Der Bereich konnte nicht erstellt werden.", "finish": "Fertig", + "loading_first_time": "Bitte warten, während die Integration installiert wird", "name_new_area": "Name des neuen Bereichs?", "not_all_required_fields": "Nicht alle Pflichtfelder sind ausgefüllt.", "submit": "Absenden" @@ -1523,8 +1528,8 @@ "title": "Titel der Seitenleiste", "title_required": "Titel ist erforderlich.", "update": "Aktualisieren", - "url": "Url", - "url_error_msg": "Die URL darf keine Leerzeichen oder Sonderzeichen enthalten, außer _ und -" + "url": "URL", + "url_error_msg": "Die URL sollte ein - enthalten und darf keine Leerzeichen oder Sonderzeichen enthalten, außer _ und -" }, "picker": { "add_dashboard": "Dashboard hinzufügen", @@ -1551,7 +1556,7 @@ "new_resource": "Neue Ressource hinzufügen", "type": "Ressource-Typ", "update": "Aktualisieren", - "url": "Url", + "url": "URL", "url_error_msg": "URL ist ein Pflichtfeld", "warning_header": "Sei vorsichtig!", "warning_text": "Das Hinzufügen von Ressourcen kann gefährlich sein. Stelle sicher, dass du die Quelle der Ressource kennst und ihr vertraust. Schlechte Ressourcen können dein System ernsthaft beschädigen." @@ -1560,7 +1565,7 @@ "add_resource": "Ressource hinzufügen", "headers": { "type": "Typ", - "url": "Url" + "url": "URL" }, "no_resources": "keine Ressourcen" }, @@ -1620,7 +1625,7 @@ "introduction": "Entitäten, die nicht zu einem Gerät gehören, können hier festgelegt werden.", "without_device": "Entitäten ohne Gerät" }, - "introduction": "Benutzen Sie Szenen, um Ihrem Zuhause Leben einzuhauchen.", + "introduction": "Benutze Szenen um deinem Zuhause Leben einzuhauchen.", "load_error_not_editable": "Nur Szenen in der scenes.yaml sind editierbar.", "load_error_unknown": "Fehler beim Laden der Szene ({err_no}).", "name": "Name", @@ -1783,14 +1788,14 @@ "header": "Zigbee Home Automation - Gerät" }, "group_binding": { - "bind_button_help": "Binden Sie die ausgewählte Gruppe an die ausgewählten Geräte-Cluster.", + "bind_button_help": "Binde die ausgewählte Gruppe an die ausgewählten Geräte-Cluster.", "bind_button_label": "Gruppe binden", - "cluster_selection_help": "Wählen Sie Cluster aus, die an die ausgewählte Gruppe gebunden werden sollen.", + "cluster_selection_help": "Wähle einen Cluster aus, die an die ausgewählte Gruppe gebunden werden sollen.", "group_picker_help": "Wähle eine Gruppe aus, um einen Bindungsbefehl zu erteilen.", "group_picker_label": "Bindbare Gruppen", "header": "Gruppenbindung", "introduction": "Binden und Aufheben der Bindung von Gruppen.", - "unbind_button_help": "Trennen Sie die Bindung der ausgewählten Gruppe von den ausgewählten Geräte-Clustern.", + "unbind_button_help": "Trenne die Bindung der ausgewählten Gruppe von den ausgewählten Geräte-Clustern.", "unbind_button_label": "Gruppe auflösen" }, "groups": { @@ -1846,7 +1851,7 @@ "configured_in_yaml": "Zonen, die über configuration.yaml konfiguriert wurden, können nicht über die Benutzeroberfläche bearbeitet werden.", "confirm_delete": "Möchtest du diesen Bereich wirklich löschen?", "create_zone": "Zone erstellen", - "description": "Verwalte die Zonen, in denen du Personen verfolgen möchten.", + "description": "Verwalte die Zonen, in denen du Personen verfolgen möchtest.", "detail": { "create": "Erstellen", "delete": "Löschen", @@ -1863,7 +1868,7 @@ "update": "Aktualisieren" }, "edit_home_zone": "Der Radius der Home-Zone kann noch nicht über das Frontend bearbeitet werden. Ziehe die Markierung auf der Karte, um die Heimatzone zu verschieben.", - "edit_home_zone_narrow": "Der Radius der Home-Zone kann vom Frontend aus noch nicht bearbeitet werden. Der Standort kann von der allgemeinen Konfiguration aus geändert werden.", + "edit_home_zone_narrow": "Der Radius der Home-Zone kann noch nicht vom Frontend aus bearbeitet werden. Der Standort kann von der allgemeinen Konfiguration aus geändert werden.", "go_to_core_config": "Zur allgemeinen Konfiguration gehen?", "home_zone_core_config": "Der Standort deiner Homezone kann auf der allgemeinen Konfigurationsseite bearbeitet werden. Der Radius der Homezone kann vom Frontend aus noch nicht bearbeitet werden. Möchtest du zur allgemeinen Konfiguration gehen?", "introduction": "Mit Zonen kannst du bestimmte Regionen auf der Erde angeben. Befindet sich eine Person in einer Zone, übernimmt der Zustand den Namen aus der Zone. Zonen können auch als Auslöser oder Bedingung in Automatisierungs-Setups verwendet werden.", @@ -1927,7 +1932,7 @@ "external_panel": { "complete_access": "Es wird Zugriff auf alle Daten in Home Assistant haben.", "hide_message": "Überprüfe die Dokumentation für die panel_custom Komponente, um diese Meldung auszublenden.", - "question_trust": "Vertrauen Sie dem externen Panel {name} unter {link}?" + "question_trust": "Vertraust du dem externen Panel {name} unter {link}?" } }, "developer-tools": { @@ -2050,7 +2055,7 @@ }, "lovelace": { "add_entities": { - "generated_unsupported": "Sie können diese Funktion nur verwenden, wenn Sie die Kontrolle über Lovelace übernommen haben.", + "generated_unsupported": "Du kannst diese Funktion nur verwenden, wenn du die Kontrolle über Lovelace übernommen hast.", "saving_failed": "Speichern der Lovelace-Konfiguration ist fehlgeschlagen.", "yaml_unsupported": "Du kannst diese Funktion nicht verwenden, wenn du Lovelace im YAML-Modus verwendest." }, @@ -2099,7 +2104,7 @@ "name": "Alarmpanel" }, "button": { - "description": "Mit der Schaltflächen-Karte können Sie Schaltflächen hinzufügen, um Aufgaben auszuführen.", + "description": "Mit der Schaltflächen-Karte kannst du Schaltflächen hinzufügen, um Aufgaben auszuführen.", "name": "Schaltfläche" }, "conditional": { @@ -2152,10 +2157,11 @@ "icon_height": "Symbol Höhe", "image": "Bildpfad", "manual": "Manuell", - "manual_description": "Möchtest du eine benutzerdefinierte Karte hinzufügen oder den Yaml-Code von Hand bearbeiten?", + "manual_description": "Möchtest du eine benutzerdefinierte Karte hinzufügen, oder den Yaml-Code von Hand bearbeiten?", "maximum": "Maximum", "minimum": "Minimum", "name": "Name", + "no_theme": "Kein Theme", "refresh_interval": "Aktualisierungsintervall", "show_icon": "Symbol anzeigen?", "show_name": "Namen anzeigen?", @@ -2206,11 +2212,11 @@ "name": "Mediensteuerung" }, "picture-elements": { - "description": "Die Bilder-Karte ist eine der vielseitigsten Arten von Karten. Mit den Karten kannst du Symbole oder Text und sogar Dienste positionieren! Auf einem Bild basierend auf Koordinaten.", + "description": "Die Bilder-Karte ist eine der vielseitigsten Arten von Karten. Mit den Karten kannst du Symbole, Text und sogar Dienste positionieren! Auf einem Bild basierend auf Koordinaten.", "name": "Picture Elements" }, "picture-entity": { - "description": "Die Bilder-Karte zeigt eine Entität in Form eines Bildes an. Anstelle von Bildern aus der URL kann auch das Bild von Kamera-entitäten angezeigt werden.", + "description": "Die Bilder-Karte zeigt eine Entität in Form eines Bildes an. Anstelle von Bildern aus der URL kann auch das Bild von Kamera-Entitäten angezeigt werden.", "name": "Picture Entity" }, "picture-glance": { @@ -2218,7 +2224,7 @@ "name": "Picture Glance" }, "picture": { - "description": "Mit der Bildkarte kannst du ein Bild festlegen, das für die Navigation zu verschiedenen Pfaden in Ihrer Benutzeroberfläche oder zum Aufrufen eines Dienstes verwendet werden soll.", + "description": "Mit der Bildkarte kannst du ein Bild festlegen, das für die Navigation zu verschiedenen Pfaden in deiner Benutzeroberfläche oder zum Aufrufen eines Dienstes verwendet werden soll.", "name": "Picture" }, "plant-status": { @@ -2226,7 +2232,7 @@ "name": "Pflanzen Status" }, "sensor": { - "description": "Die Sensorkarte gibt Ihnen einen schnellen Überblick über Ihren Sensorstatus mit einem optionalen Diagramm, um Änderungen im Zeitverlauf zu visualisieren.", + "description": "Die Sensorkarte gibt dir einen schnellen Überblick über Ihren Sensorstatus mit einem optionalen Diagramm, um Änderungen im Zeitverlauf zu visualisieren.", "graph_detail": "Diagrammdetail", "graph_type": "Typ", "name": "Sensor" @@ -2252,6 +2258,7 @@ "edit_card": { "add": "Karte hinzufügen", "delete": "Löschen", + "duplicate": "Karte duplizieren", "edit": "Bearbeiten", "header": "Kartenkonfiguration", "move": "Zur Ansicht Bewegen", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "Dadurch wird die erste Karte in voller Breite gerendert. Andere Karten in dieser Ansicht werden nicht gerendert.", - "title": "Panel-Modus?" + "title": "Panel-Modus?", + "warning_multiple_cards": "Diese Ansicht enthält mehr als eine Karte, in einer Bedienfeldansicht kann jedoch nur eine Karte angezeigt werden." } } }, @@ -2343,8 +2351,8 @@ }, "reload_lovelace": "Benutzeroberfläche neu laden", "reload_resources": { - "refresh_body": "Sie müssen die Seite aktualisieren, um das Neuladen abzuschließen. Möchten Sie jetzt aktualisieren?", - "refresh_header": "Möchtest du aktualisieren?" + "refresh_body": "Du musst die Seite aktualisieren, um das Neuladen abzuschließen. Möchtest Du sie jetzt aktualisieren?", + "refresh_header": "Möchtest Du aktualisieren?" }, "unused_entities": { "available_entities": "Dies sind die Entitäten, die Sie zur Verfügung haben, die aber noch nicht in Ihrer Lovelace-Benutzeroberfläche enthalten sind.", diff --git a/translations/en.json b/translations/en.json index fcff9bd0f4..4a1aa9dd16 100644 --- a/translations/en.json +++ b/translations/en.json @@ -537,9 +537,11 @@ "common": { "cancel": "Cancel", "close": "Close", + "delete": "Delete", "loading": "Loading", "no": "No", "save": "Save", + "successfully_deleted": "Successfully deleted", "successfully_saved": "Successfully saved", "yes": "Yes" }, @@ -621,7 +623,7 @@ "dismiss": "Dismiss", "editor": { "confirm_delete": "Are you sure you want to delete this entry?", - "delete": "DELETE", + "delete": "Delete", "enabled_cause": "Disabled by {cause}.", "enabled_description": "Disabled entities will not be added to Home Assistant.", "enabled_label": "Enable entity", @@ -631,7 +633,7 @@ "name": "Name Override", "note": "Note: this might not work yet with all integrations.", "unavailable": "This entity is not currently available.", - "update": "UPDATE" + "update": "Update" }, "no_unique_id": "This entity does not have a unique ID, therefore its settings cannot be managed from the UI.", "related": "Related", @@ -664,7 +666,7 @@ "min": "Minimum value", "mode": "Display mode", "slider": "Slider", - "step": "Step size of the slider", + "step": "Step size", "unit_of_measurement": "Unit of measurement" }, "input_select": { @@ -816,14 +818,14 @@ }, "description": "Overview of all areas in your home.", "editor": { - "create": "CREATE", + "create": "Create", "default_name": "New Area", - "delete": "DELETE", - "update": "UPDATE" + "delete": "Delete", + "update": "Update" }, "no_areas": "Looks like you have no areas yet!", "picker": { - "create_area": "CREATE AREA", + "create_area": "Create Area", "header": "Areas", "integrations_page": "Integrations page", "introduction": "Areas are used to organize where devices are. This information will be used throughout Home Assistant to help you in organizing your interface, permissions and integrations with other systems.", @@ -1310,6 +1312,7 @@ "automations": "Automations", "cant_edit": "You can only edit items that are created in the UI.", "caption": "Devices", + "confirm_delete": "Are you sure you want to delete this device?", "confirm_rename_entity_ids": "Do you also want to rename the entity id's of your entities?", "data_table": { "area": "Area", @@ -1320,6 +1323,7 @@ "model": "Model", "no_devices": "No devices" }, + "delete": "Delete", "description": "Manage connected devices", "details": "Here are all the details of your device.", "device_not_found": "Device not found.", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "Failed to create area.", "finish": "Finish", + "loading_first_time": "Please wait while the integration is being installed", "name_new_area": "Name of the new area?", "not_all_required_fields": "Not all required fields are filled in.", "submit": "Submit" @@ -1524,7 +1529,7 @@ "title_required": "Title is required.", "update": "Update", "url": "Url", - "url_error_msg": "The url should contain a - and cannot contain spaces or special characters, except for _ and -" + "url_error_msg": "The URL should contain a - and cannot contain spaces or special characters, except for _ and -" }, "picker": { "add_dashboard": "Add dashboard", @@ -2156,6 +2161,7 @@ "maximum": "Maximum", "minimum": "Minimum", "name": "Name", + "no_theme": "No theme", "refresh_interval": "Refresh Interval", "show_icon": "Show Icon?", "show_name": "Show Name?", @@ -2252,6 +2258,7 @@ "edit_card": { "add": "Add Card", "delete": "Delete Card", + "duplicate": "Duplicate Card", "edit": "Edit", "header": "Card Configuration", "move": "Move to View", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "This renders the first card at full width; other cards in this view will not be rendered.", - "title": "Panel Mode?" + "title": "Panel Mode?", + "warning_multiple_cards": "This view contains more than one card, but a panel view can only show 1 card." } } }, diff --git a/translations/es.json b/translations/es.json index 2ddc4ae8aa..bc2da03a03 100644 --- a/translations/es.json +++ b/translations/es.json @@ -50,7 +50,7 @@ "sensor": "Sensor", "sun": "Sol", "switch": "Interruptor", - "system_health": "Salud del sistema", + "system_health": "Estado del Sistema", "updater": "Actualizador", "vacuum": "Aspiradora", "weblink": "Enlace web", @@ -411,7 +411,7 @@ }, "automation": { "last_triggered": "Última activación", - "trigger": "Desencadenar" + "trigger": "Ejecutar" }, "camera": { "not_available": "Imagen no disponible" @@ -537,9 +537,11 @@ "common": { "cancel": "Cancelar", "close": "Cerrar", + "delete": "Eliminar", "loading": "Cargando", "no": "No", "save": "Guardar", + "successfully_deleted": "Eliminado correctamente", "successfully_saved": "Guardado correctamente", "yes": "Sí" }, @@ -621,7 +623,7 @@ "dismiss": "Descartar", "editor": { "confirm_delete": "¿Estás seguro de que quieres eliminar este elemento?", - "delete": "ELIMINAR", + "delete": "Eliminar", "enabled_cause": "Desactivado por {cause}.", "enabled_description": "Las entidades deshabilitadas no se agregarán a Home Assistant.", "enabled_label": "Activar entidad", @@ -631,7 +633,7 @@ "name": "Cambio de nombre", "note": "Nota: puede que esto no funcione todavía con todas las integraciones", "unavailable": "Esta entidad no está disponible actualmente.", - "update": "ACTUALIZAR" + "update": "Actualizar" }, "no_unique_id": "Esta entidad no tiene una ID única, por lo que su configuración no se puede administrar desde la IU.", "related": "Relacionado", @@ -664,7 +666,7 @@ "min": "Valor mínimo", "mode": "Modo de visualización", "slider": "Control deslizante", - "step": "Tamaño del paso del control deslizante", + "step": "Tamaño del paso", "unit_of_measurement": "Unidad de medida" }, "input_select": { @@ -683,7 +685,7 @@ }, "not_editable": "No editable", "not_editable_text": "Esta entidad no se puede cambiar desde la interfaz de usuario porque está definida en configuration.yaml.", - "platform_not_loaded": "La integración {platform} no está cargada, por favor añádela a tu configuración. Ya sea agregando \"default_config:\" o \"{platform}:\".", + "platform_not_loaded": "La integración {platform} no se ha cargado. Por favor añádela a tu configuración, ya sea agregando 'default_config:' o '{platform}:'.", "required_error_msg": "Este campo es obligatorio", "yaml_not_editable": "La configuración de esta entidad no se puede editar desde la IU. Solo las entidades configuradas desde la IU se pueden configurar desde la IU" }, @@ -816,14 +818,14 @@ }, "description": "Visión general de todas las áreas de tu casa.", "editor": { - "create": "CREAR", + "create": "Crear", "default_name": "Área Nueva", - "delete": "ELIMINAR", - "update": "ACTUALIZAR" + "delete": "Eliminar", + "update": "Actualizar" }, "no_areas": "¡Parece que aún no tienes áreas!", "picker": { - "create_area": "CREAR ÁREA", + "create_area": "Crear área", "header": "Áreas", "integrations_page": "Integraciones", "introduction": "Las áreas se utilizan para organizar dónde están los dispositivos. Esta información se utilizará en todo Home Assistant para ayudarte a organizar tu interfaz, permisos e integraciones con otros sistemas.", @@ -842,7 +844,7 @@ "duplicate": "Duplicar", "header": "Acciones", "introduction": "Las acciones son lo que hará Home Assistant cuando se desencadene la automatización.", - "learn_more": "Aprende más sobre las acciones.", + "learn_more": "Saber más sobre las acciones.", "name": "Acción", "type_select": "Tipo de acción", "type": { @@ -887,7 +889,7 @@ "duplicate": "Duplicar", "header": "Condiciones", "introduction": "Las condiciones son opcionales e impedirán cualquier\nejecución posterior a menos que se cumplan todas las condiciones.", - "learn_more": "Aprende más sobre las condiciones", + "learn_more": "Saber más sobre las condiciones", "name": "Condición", "type_select": "Tipo de condición", "type": { @@ -960,7 +962,7 @@ "duplicate": "Duplicar", "header": "Desencadenantes", "introduction": "Los desencadenantes son los que inician el funcionamiento de una regla de automatización. Es posible especificar varios desencadenantes para la misma regla. Una vez que se inicia un desencadenante, Home Assistant comprobará las condiciones, si las hubiere, y ejecutará la acción.", - "learn_more": "Aprende más sobre los desencadenantes", + "learn_more": "Saber más sobre los desencadenantes", "name": "Desencadenante", "type_select": "Tipo de desencadenante", "type": { @@ -1053,7 +1055,7 @@ "edit_automation": "Editar automatización", "header": "Editor de automatización", "introduction": "El editor de automatización te permite crear y editar automatizaciones. En el enlace siguiente puedes leer las instrucciones para asegurarte de que has configurado correctamente Home Assistant.", - "learn_more": "Aprende más sobre las automatizaciones", + "learn_more": "Saber más sobre las automatizaciones", "no_automations": "No pudimos encontrar ninguna automatización editable", "only_editable": "Solo las automatizaciones definidas en automations.yaml son editables.", "pick_automation": "Elije la automatización para editar", @@ -1108,7 +1110,7 @@ "info": "Home Assistant Cloud proporciona una conexión remota segura a tu instancia mientras estás fuera de casa.", "instance_is_available": "Tu instancia está disponible en", "instance_will_be_available": "Tu instancia estará disponible en", - "link_learn_how_it_works": "Aprende cómo funciona", + "link_learn_how_it_works": "Aprender cómo funciona", "title": "Control remoto" }, "sign_out": "Cerrar sesión", @@ -1116,7 +1118,7 @@ "webhooks": { "disable_hook_error_msg": "No se pudo deshabilitar el webhook:", "info": "Cualquier cosa que esté configurada para ser activada por un webhook puede recibir una URL de acceso público para permitirte enviar datos a Home Assistant desde cualquier lugar, sin exponer tu instancia a Internet.", - "link_learn_more": "Aprende más sobre la creación de automatizaciones basadas en webhook.", + "link_learn_more": "Saber más sobre la creación de automatizaciones basadas en webhook.", "loading": "Cargando ...", "manage": "Administrar", "no_hooks_yet": "Parece que aún no tienes webhooks. Comienza configurando un", @@ -1184,7 +1186,7 @@ "introduction2": "Este servicio está a cargo de nuestro socio.", "introduction2a": ", una compañía fundada por los fundadores de Home Assistant y Hass.io.", "introduction3": "Home Assistant Cloud es un servicio de suscripción con una prueba gratuita de un mes. No se necesita información de pago.", - "learn_more_link": "Aprende más sobre Home Assistant Cloud", + "learn_more_link": "Saber más sobre Home Assistant Cloud", "password": "Contraseña", "password_error_msg": "Las contraseñas tienen al menos 8 caracteres.", "sign_in": "Inicia sesión", @@ -1310,6 +1312,7 @@ "automations": "Automatizaciones", "cant_edit": "Solo puedes editar los elementos que se crean en la interfaz de usuario.", "caption": "Dispositivos", + "confirm_delete": "¿Estás seguro de que quieres eliminar este dispositivo?", "confirm_rename_entity_ids": "¿También quieres cambiar el nombre de los identificadores de entidad de tus entidades?", "data_table": { "area": "Área", @@ -1320,6 +1323,7 @@ "model": "Modelo", "no_devices": "Sin dispositivos" }, + "delete": "Eliminar", "description": "Administrar dispositivos conectados", "details": "Aquí están todos los detalles de tu dispositivo.", "device_not_found": "Dispositivo no encontrado.", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "No se pudo crear el área.", "finish": "Terminar", + "loading_first_time": "Por favor, espera mientras la integración está siendo instalada", "name_new_area": "¿Nombre de la nueva área?", "not_all_required_fields": "No se han completado todos los campos requeridos.", "submit": "Enviar" @@ -1524,7 +1529,7 @@ "title_required": "Se requiere un título.", "update": "Actualizar", "url": "Url", - "url_error_msg": "La url no puede contener espacios o caracteres especiales, excepto _ y -" + "url_error_msg": "La URL debe contener un guión (-) y no puede contener espacios o caracteres especiales, excepto _ y -" }, "picker": { "add_dashboard": "Añadir panel de control", @@ -1580,7 +1585,7 @@ "confirm_delete": "¿Estás seguro de que deseas eliminar a esta persona?", "confirm_delete2": "Todos los dispositivos que pertenecen a esta persona quedarán sin asignar.", "create_person": "Crear persona", - "description": "Gestiona las personas que rastrea Home Assistant.", + "description": "Gestiona las personas a las que rastrea Home Assistant.", "detail": { "create": "Crear", "delete": "Eliminar", @@ -1633,8 +1638,8 @@ "delete_scene": "Eliminar escena", "edit_scene": "Editar escena", "header": "Editor de escenas", - "introduction": "El editor de escenas te permite crear y editar escenas. Por favor, sigue el siguiente enlace para leer las instrucciones para asegurarte de que has configurado Home Assistant correctamente.", - "learn_more": "Aprende más sobre las escenas", + "introduction": "El editor de escenas te permite crear y editar escenas. En el enlace siguiente puedes leer las instrucciones para asegurarte de que has configurado Home Assistant correctamente.", + "learn_more": "Saber más sobre las escenas", "no_scenes": "No pudimos encontrar ninguna escena editable", "only_editable": "Solo las escenas definidas en scenes.yaml son editables.", "pick_scene": "Elige una escena para editar", @@ -1651,7 +1656,7 @@ "delete_script": "Eliminar script", "header": "Script: {name}", "introduction": "Utiliza scripts para ejecutar una secuencia de acciones.", - "link_available_actions": "Aprende más sobre las acciones disponibles.", + "link_available_actions": "Saber más sobre las acciones disponibles.", "load_error_not_editable": "Solo los scripts dentro de scripts.yaml son editables.", "sequence": "Secuencia", "sequence_sentence": "La secuencia de acciones de este script." @@ -1660,8 +1665,8 @@ "add_script": "Añadir script", "edit_script": "Editar script", "header": "Editor de scripts", - "introduction": "El editor de scripts te permite crear y editar scripts. Por favor, sigue el siguiente enlace para leer las instrucciones para asegurarte de que has configurado Home Assistant correctamente.", - "learn_more": "Aprende más sobre los scripts", + "introduction": "El editor de scripts te permite crear y editar scripts. En el enlace siguiente puedes leer las instrucciones para asegurarte de que has configurado Home Assistant correctamente.", + "learn_more": "Saber más sobre los scripts", "no_scripts": "No hemos encontrado ningún script editable", "trigger_script": "Script de desencadenante" } @@ -1879,7 +1884,7 @@ "wakeup_interval": "Intervalo de activación" }, "description": "Administra tu red Z-Wave", - "learn_more": "Aprende más sobre Z-Wave", + "learn_more": "Saber más sobre Z-Wave", "network_management": { "header": "Administración de red Z-Wave", "introduction": "Ejecutar comandos que afectan a la red Z-Wave. No recibirás comentarios sobre si la mayoría de los comandos tuvieron éxito, pero puedes consultar el Registro OZW para intentar averiguarlo." @@ -1967,7 +1972,7 @@ "set": "Establecer", "source": "Fuente:", "states_ui": "Ir a la interfaz de usuario de estados", - "system_health_error": "El componente Salud del sistema no está cargado. Añade 'system_health:' a configuration.yaml", + "system_health_error": "El componente Estado del Sistema no está cargado. Añade 'system_health:' a configuration.yaml", "title": "Información" }, "logs": { @@ -2156,6 +2161,7 @@ "maximum": "Máximo", "minimum": "Mínimo", "name": "Nombre", + "no_theme": "Sin tema", "refresh_interval": "Intervalo de actualización", "show_icon": "¿Mostrar icono?", "show_name": "¿Mostrar nombre?", @@ -2252,6 +2258,7 @@ "edit_card": { "add": "Añadir tarjeta", "delete": "Eliminar tarjeta", + "duplicate": "Duplicar tarjeta", "edit": "Editar", "header": "Configuración de la tarjeta", "move": "Mover a la vista", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "Esto muestra la primera tarjeta a ancho completo; otras tarjetas en esta vista no se mostrarán.", - "title": "¿Modo de panel?" + "title": "¿Modo de panel?", + "warning_multiple_cards": "Esta vista contiene más de una tarjeta, pero una vista de panel solo puede mostrar 1 tarjeta." } } }, @@ -2475,7 +2483,7 @@ "demo": { "demo_by": "por {name}", "introduction": "¡Bienvenido a casa! Has llegado a la demostración de Home Assistant donde mostramos las mejores interfaces de usuario creadas por nuestra comunidad.", - "learn_more": "Aprende más sobre Home Assistant", + "learn_more": "Saber más sobre Home Assistant", "next_demo": "Siguiente demostración" } }, @@ -2568,7 +2576,7 @@ "language": { "dropdown_label": "Idioma", "header": "Idioma", - "link_promo": "Ayuda traduciendo" + "link_promo": "Ayudar traduciendo" }, "logout": "Cerrar sesión", "logout_text": "¿Estás seguro de que quieres cerrar la sesión?", @@ -2583,7 +2591,7 @@ "empty_state": "Aún no tienes tokens de acceso de larga duración.", "header": "Tokens de acceso de larga duración", "last_used": "Último uso el {date} desde {location}", - "learn_auth_requests": "Aprende cómo realizar solicitudes autenticadas.", + "learn_auth_requests": "Aprender cómo realizar solicitudes autenticadas.", "not_used": "Nunca ha sido usado", "prompt_copy_token": "Copia tu token de acceso. No se mostrará de nuevo.", "prompt_name": "¿Nombre?" @@ -2606,7 +2614,7 @@ "error_load_platform": "Configurar notify.html5.", "error_use_https": "Requiere SSL activado para frontend.", "header": "Notificaciones push", - "link_promo": "Aprender más", + "link_promo": "Saber más", "push_notifications": "Notificaciones push" }, "refresh_tokens": { @@ -2624,7 +2632,7 @@ "dropdown_label": "Tema", "error_no_theme": "No hay temas disponibles", "header": "Tema", - "link_promo": "Aprende sobre los temas" + "link_promo": "Saber más sobre los temas" }, "vibrate": { "description": "Activar o deshabilitar la vibración en este dispositivo al controlar dispositivos.", diff --git a/translations/fa.json b/translations/fa.json index 4edb3cdf31..f63f20f090 100644 --- a/translations/fa.json +++ b/translations/fa.json @@ -12,9 +12,11 @@ "binary_sensor": "حسگر باینری", "calendar": "تقویم", "camera": "دوربین", + "climate": "آب و هوا", "configurator": "تنظیم کننده", "conversation": "گفتگو", "cover": "پوشش", + "device_tracker": "ردیاب", "fan": "فن", "group": "گروه", "hassio": "Hass.io", @@ -26,10 +28,13 @@ "lovelace": "Lovelace", "mailbox": "میل باکس", "person": "فرد", + "scene": "صحنه", + "script": "اسکریپت", "sensor": "سنسور", "sun": "آفتاب", "switch": "سوئیچ", "system_health": "سلامت سیستم", + "updater": "به روز رسان", "vacuum": "خلاء", "weblink": "لینک سایت", "zha": "ZHA", @@ -115,6 +120,10 @@ "off": "عادی", "on": "سرد" }, + "connectivity": { + "off": "قطع ", + "on": "متصل" + }, "default": { "off": "خاموش", "on": "روشن" @@ -356,6 +365,9 @@ "last_triggered": "آخرین ماشه", "trigger": "ماشه" }, + "camera": { + "not_available": "تصویر در دسترس نیست" + }, "climate": { "aux_heat": "Aux گرما", "away_mode": "حالت بیرون", @@ -433,6 +445,8 @@ } }, "common": { + "cancel": "لغو", + "loading": "در حال بارگذاری", "save": "ذخیره" }, "components": { @@ -459,6 +473,14 @@ } }, "dialogs": { + "helper_settings": { + "input_datetime": { + "date": "تاریخ", + "datetime": "تاریخ و زمان", + "mode": "چه چیزی را می خواهید وارد کنید", + "time": "زمان" + } + }, "more_info_control": { "script": { "last_action": "آخرین اقدام" @@ -506,6 +528,10 @@ "areas": { "caption": "ثبت نام منطقه", "create_area": "ایجاد منطقه", + "delete": { + "confirmation_text": "هیچیک از درستگاه های این ناحیه اختصاص داده نشده اند", + "confirmation_title": "آیا مطمئنید که می خواهید این ناحیه را حذف کنید ؟" + }, "description": "بررسی کلیه مناطق خانه شما", "editor": { "create": "ايجاد كردن", @@ -684,6 +710,7 @@ "description_not_login": "وارد نشده اید" }, "core": { + "caption": "عمومی", "section": { "core": { "core_config": { @@ -725,9 +752,15 @@ }, "customize": { "picker": { + "header": "سفارشی سازی ها", "introduction": "نویسه ویژگی های هر سازمانی. سفارشی سازی اضافه شده / ویرایش شده فورا اثر می کند. سفارشی های حذف شده هنگامی که موجودیت به روز می شود اثر می کند." } }, + "devices": { + "data_table": { + "no_devices": "دستگاهی وجود ندارد" + } + }, "entities": { "caption": "ثبت منطقه", "description": "مرور کلیه اشخاص شناخته شده.", @@ -742,6 +775,9 @@ "integrations_page": "صفحه ادغام", "introduction": "دستیار خانه نگهداری رجیستری از هر نهاد که تا به حال دیده است که می تواند منحصر به فرد شناسایی شده است. هر یک از این نهاد ها یک شناسه نهادی اختصاص داده است که فقط برای این نهاد محفوظ خواهد ماند.", "introduction2": "از رجیستر entity استفاده کنید تا نام را عوض کند، شناسه موجودیت را تغییر دهید یا ورودی را از صفحه اصلی دستیار حذف کنید. توجه داشته باشید، از بین بردن ورودی رجیستر entity entity entity را حذف نخواهد کرد. برای انجام این کار، پیوند زیر را دنبال کنید و آن را از صفحه ی ادغام حذف کنید.", + "status": { + "restored": "بازیابی شد" + }, "unavailable": "(در دسترس نیست)" } }, @@ -764,7 +800,8 @@ "external_step": { "description": "این مرحله نیاز به بازدید از وب سایت خارجی دارد که باید تکمیل شود.", "open_site": "باز کردن سایت" - } + }, + "loading_first_time": "لطفاً منتظر بمانید تا ادغام نصب شود" }, "configure": "پیکربندی", "configured": "پیکربندی شده", @@ -774,6 +811,24 @@ "none": "هیچ چیز پیکربندی نشده است" }, "introduction": "در اینجا می توانید اجزای خود و صفحه اصلی دستیار را پیکربندی کنید. ", + "lovelace": { + "dashboards": { + "default_dashboard": "این داشبورد پیش فرض است", + "detail": { + "title_required": "عنوان مورد نیاز است." + } + }, + "resources": { + "detail": { + "create": "ایجاد کن", + "delete": "پاک کن", + "update": "به روز رسانی" + }, + "picker": { + "no_resources": "منابعی وجود ندارد" + } + } + }, "person": { "caption": "افراد", "description": "مدیریت افراد خانه هوشمند", @@ -885,9 +940,12 @@ "title": "رویدادها" }, "info": { + "icons_by": "آیکون توسط", + "server": "سرور", "title": "اطلاعات" }, "logs": { + "refresh": "تازه کن", "title": "وقایع" }, "mqtt": { @@ -937,7 +995,14 @@ }, "editor": { "card": { + "conditional": { + "card": "کارت", + "conditions": "شرایط", + "current_state": "جاری" + }, "generic": { + "manual": "دستی", + "manual_description": "آیا نیاز به اضافه کردن کارت سفارشی دارید یا فقط می خواهید yaml را به صورت دستی بنویسید؟", "maximum": "بیشترین", "minimum": "کمترین", "name": "نام", @@ -945,6 +1010,7 @@ "show_icon": "نمایش آیکون؟", "show_name": "نمایش نام؟", "show_state": "نمایش وضعیت؟", + "state": "وضعیت", "theme": "زمینه", "title": "عنوان", "unit": "واحد", @@ -987,6 +1053,7 @@ "edit_card": { "add": "افزودن کارت", "delete": "حذف", + "duplicate": "کارت تکراری", "edit": "ویرایش", "pick_card": "کارتی را که می خواهید اضافه کنید انتخاب کنید ؛", "save": "ذخیره", @@ -994,7 +1061,11 @@ }, "edit_view": { "add": "افزودن نمایه", - "edit": "ویرایش نما" + "edit": "ویرایش نما", + "tab_visibility": "رویت پذیری", + "visibility": { + "select_users": "انتخاب کنید کدام کاربران باید این نمای را در پیمایش ببینند" + } }, "header": "ویرایش رابط کاربری", "menu": { @@ -1013,6 +1084,7 @@ }, "save_config": { "cancel": "بیخیال", + "close": "ببند", "header": "کنترل UI Lovelace خود را بگیرید", "para": "به طور پیش فرض Home Assistant رابط کاربر خود را حفظ می کند، آن را به روز می کند زمانی که موجودیت های جدید و یا اجزای Lovelace در دسترس قرار گیرد. اگر کنترل داشته باشید دیگر تغییرات را برای شما انجام نخواهیم داد.", "para_sure": "آیا مطمئن هستید که میخواهید کنترل رابط کاربری خود را کنترل کنید؟", @@ -1022,15 +1094,25 @@ "menu": { "help": "کمک", "refresh": "تازه کردن", + "reload_resources": "بارگذاری مجدد منابع", "unused_entities": "نهادهای استفاده نشده" }, "reload_lovelace": "بازنگری Lovelace", + "reload_resources": { + "refresh_body": "شما باید صفحه را تازه سازی کنید تا بارگذاری مجدد را کامل کنید ، آیا می خواهید اکنون دوباره آن را تازه کنید ؟", + "refresh_header": "آیا می خواهید تازه سازی کنید ؟" + }, + "views": { + "confirm_delete_existing_cards": "با حذف این نمای کارت ها نیز حذف می شود" + }, "warning": { + "attribute_not_found": "ویژگی {attribute} در دسترس نیست:: {entity}", "entity_non_numeric": "نهاد غیر عددی است: {entity}", "entity_not_found": "نهاد موجود نیست: {entity}" } }, "mailbox": { + "delete_button": "پاک کن", "empty": "شما پیامی ندارید" }, "page-authorize": { @@ -1175,7 +1257,8 @@ } }, "shopping-list": { - "add_item": "اضافه کردن آیتم" + "add_item": "اضافه کردن آیتم", + "clear_completed": "کامل شده ها را پاک کن" } }, "sidebar": { diff --git a/translations/fr.json b/translations/fr.json index 1066d72c7d..9f1b4c4f68 100644 --- a/translations/fr.json +++ b/translations/fr.json @@ -201,7 +201,7 @@ "on": "Ouvert" }, "presence": { - "off": "Absent.e", + "off": "Absent", "on": "Présent" }, "problem": { @@ -302,7 +302,7 @@ }, "light": { "off": "Éteinte", - "on": "Allumée" + "on": "Actif" }, "lock": { "locked": "Verrouillé", @@ -426,7 +426,7 @@ "heating": "{name} chauffage", "high": "haute", "low": "basse", - "on_off": "Allumé / Éteint", + "on_off": "On / off", "operation": "Opération", "preset_mode": "Préréglage", "swing_mode": "Mode de balancement", @@ -537,9 +537,11 @@ "common": { "cancel": "Annuler", "close": "Fermer", + "delete": "Supprimer", "loading": "Chargement", "no": "Non", "save": "Enregistrer", + "successfully_deleted": "Supprimé avec succès", "successfully_saved": "Enregistré avec succès", "yes": "Oui" }, @@ -576,7 +578,7 @@ }, "related-items": { "area": "Zone", - "automation": "Parties des automations suivantes", + "automation": "Partie des automatisations suivantes", "device": "Appareil", "entity": "Entités liées", "group": "Partie des groupes suivants", @@ -621,7 +623,7 @@ "dismiss": "Ignorer", "editor": { "confirm_delete": "Voulez-vous vraiment supprimer cette entrée ?", - "delete": "SUPPRIMER", + "delete": "Supprimer", "enabled_cause": "Désactivé par {cause} .", "enabled_description": "Les entités désactivées ne seront pas ajoutées à Home Assistant.", "enabled_label": "Activer l'entité", @@ -631,7 +633,7 @@ "name": "Remplacement de nom", "note": "Remarque: cela peut ne pas encore fonctionner avec toutes les intégrations.", "unavailable": "Cette entité n'est pas disponible actuellement.", - "update": "MISE À JOUR" + "update": "Mise à jour" }, "no_unique_id": "Cette entité n'a pas d'identifiant unique, ses paramètres ne peuvent donc pas être gérés à partir de l'interface utilisateur.", "related": "Liées", @@ -664,7 +666,7 @@ "min": "Valeur minimum", "mode": "Mode d'affichage", "slider": "Curseur", - "step": "Taille de pas du curseur", + "step": "Taille du pas du curseur", "unit_of_measurement": "Unité de mesure" }, "input_select": { @@ -816,14 +818,14 @@ }, "description": "Vue d'ensemble de toutes les pièces de votre maison.", "editor": { - "create": "CRÉER", + "create": "Créer", "default_name": "Nouvelle pièce", - "delete": "SUPPRIMER", - "update": "METTRE À JOUR" + "delete": "Supprimer", + "update": "Mise à jour" }, "no_areas": "Vous n'avez pas encore configuré de pièce !", "picker": { - "create_area": "CRÉER UNE PIÈCE", + "create_area": "Créer une zone", "header": "Pièces", "integrations_page": "Page des intégrations", "introduction": "Les pièces sont utilisées pour organiser l'emplacement des périphériques. Ces informations seront utilisées partout dans Home Assistant pour vous aider à organiser votre interface, vos autorisations et vos intégrations avec d'autres systèmes.", @@ -1048,16 +1050,16 @@ }, "picker": { "add_automation": "Ajouter une automation", - "delete_automation": "Supprimer l'automation", - "delete_confirm": "Êtes-vous sûr de vouloir supprimer cette automation ?", - "edit_automation": "Modifier l'automation", + "delete_automation": "Supprimer l'automatisation", + "delete_confirm": "Voulez-vous vraiment supprimer cette automatisation ?", + "edit_automation": "Modifier l'automatisation", "header": "Éditeur d'automation", "introduction": "L'éditeur d'automations vous permet de créer et modifier des automations. Veuillez lire les instructions ci-dessous pour vous assurer d'avoir configuré Home Assistant correctement.", - "learn_more": "En savoir plus sur les automations", + "learn_more": "En savoir plus sur les automatisations", "no_automations": "Il n'y a aucune automation modifiable.", - "only_editable": "Seules les automations définies dans automations.yaml sont modifiables.", + "only_editable": "Seules les automatisations définies dans automations.yaml sont modifiables.", "pick_automation": "Choisissez l'automation à modifier", - "show_info_automation": "Afficher des informations sur l'automation" + "show_info_automation": "Afficher des informations sur l'automatisation" } }, "cloud": { @@ -1120,7 +1122,7 @@ "loading": "Chargement ...", "manage": "Gérer", "no_hooks_yet": "Il semble que vous n'ayez pas encore de Webhooks. Commencez en configurer un ", - "no_hooks_yet_link_automation": "automation du Webhook", + "no_hooks_yet_link_automation": "automatisation webhook", "no_hooks_yet_link_integration": "intégration basée sur un Webhook", "no_hooks_yet2": "ou en créant un", "title": "Webhooks" @@ -1296,12 +1298,12 @@ "actions": { "caption": "Quand quelque chose est déclenché ..." }, - "automations": "Automations", + "automations": "Automatisations", "conditions": { "caption": "Ne faire quelque chose que si ..." }, - "create": "Créer une automation avec l'appareil", - "no_automations": "Aucune automation", + "create": "Créer une automatisation avec l'appareil", + "no_automations": "Aucune automatisation", "no_device_automations": "Aucune automatisation n'est disponible pour cet appareil.", "triggers": { "caption": "Faire quelque chose quand ..." @@ -1310,6 +1312,7 @@ "automations": "Automations", "cant_edit": "Vous ne pouvez modifier que les éléments créés dans l'interface utilisateur.", "caption": "Appareils", + "confirm_delete": "Voulez-vous vraiment supprimer cet appareil ?", "confirm_rename_entity_ids": "Voulez-vous aussi renommer les ID de vos entités?", "data_table": { "area": "Zone", @@ -1320,6 +1323,7 @@ "model": "Modèle", "no_devices": "Aucun appareil" }, + "delete": "Supprimer", "description": "Gérer les appareils connectés", "details": "Voici tous les détails de votre appareil.", "device_not_found": "Appareil non trouvé.", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "Échec de la création de la zone.", "finish": "Terminer", + "loading_first_time": "Veuillez patienter pendant que l'intégration est en cours d'installation", "name_new_area": "Nom de la nouvelle zone ?", "not_all_required_fields": "Tous les champs obligatoires ne sont pas renseignés.", "submit": "Soumettre" @@ -1671,7 +1676,7 @@ "description": "Redémarrer et arrêter le serveur Home Assistant", "section": { "reloading": { - "automation": "Recharger les automations", + "automation": "Recharger les automatisations", "core": "Recharger l'emplacement et les personnalisations", "group": "Recharger les groupes", "heading": "Rechargement de la configuration", @@ -1857,7 +1862,7 @@ "name": "Nom", "new_zone": "Nouvelle zone", "passive": "Passif", - "passive_note": "Les zones passives sont cachées dans l'interface utilisateur et ne sont pas utilisées comme emplacement pour les appareils suivis. Elles sont utiles si vous voulez les utiliser pour des automations.", + "passive_note": "Les zones passives sont cachées dans l'interface utilisateur et ne sont pas utilisées comme emplacement pour les appareils suivis. Elles sont utiles si vous voulez les utiliser pour des automatisations.", "radius": "Rayon", "required_error_msg": "Ce champ est requis", "update": "Mettre à jour" @@ -1866,7 +1871,7 @@ "edit_home_zone_narrow": "Le rayon de la zone d'habitation ne peut pas encore être modifié depuis le frontend. L'emplacement peut être modifié par rapport à la configuration générale.", "go_to_core_config": "Configuration générale", "home_zone_core_config": "L'emplacement de votre zone d'habitation est modifiable à partir de la page de configuration générale. Le rayon de la zone d'habitation ne peut pas encore être modifié depuis le frontend. Voulez-vous passer à la configuration générale ?", - "introduction": "Les zones vous permettent de spécifier certaines régions sur la terre. Lorsqu'une personne se trouve dans une zone, l'état prend le nom de la zone. Les zones peuvent également être utilisées comme déclencheur ou condition dans les configurations d'automation.", + "introduction": "Les zones vous permettent de spécifier certaines régions sur la terre. Lorsqu'une personne se trouve dans une zone, l'état prend le nom de la zone. Les zones peuvent également être utilisées comme déclencheur ou condition dans les configurations d'automatisation.", "no_zones_created_yet": "Il semble que vous n'ayez pas encore créé de zones." }, "zwave": { @@ -2099,7 +2104,7 @@ "name": "Panneau d'alarme" }, "button": { - "description": "La carte Boutons vous permet d'ajouter des boutons pour effectuer des tâches.", + "description": "La carte Button vous permet d'ajouter des boutons pour effectuer des tâches.", "name": "Bouton" }, "conditional": { @@ -2156,6 +2161,7 @@ "maximum": "Maximum", "minimum": "Minimum", "name": "Nom", + "no_theme": "Pas de thème", "refresh_interval": "Intervalle de rafraîchissement", "show_icon": "Afficher l'icône ?", "show_name": "Afficher le nom ?", @@ -2252,11 +2258,12 @@ "edit_card": { "add": "Ajouter une action", "delete": "Supprimer", + "duplicate": "Carte en double", "edit": "Modifier", "header": "Configuration de la carte", "move": "Déplacer", "options": "Plus d'options", - "pick_card": "Choisissez l'automation à ajouter", + "pick_card": "Quelle carte aimeriez-vous ajouter ?", "pick_card_view_title": "Quelle carte souhaitez-vous ajouter à votre vue {name} ?", "save": "Enregistrer", "show_code_editor": "Afficher l'éditeur de code", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "Cela affiche la première carte en pleine largeur; les autres cartes de cette vue ne seront pas affichées.", - "title": "Mode panneau?" + "title": "Mode panneau?", + "warning_multiple_cards": "Cette vue contient plusieurs carte, mais un panneau d'affichage ne peut montrer que 1 carte." } } }, diff --git a/translations/hu.json b/translations/hu.json index 2d1638002a..eb950a26fe 100644 --- a/translations/hu.json +++ b/translations/hu.json @@ -23,7 +23,7 @@ "configurator": "Konfigurátor", "conversation": "Beszélgetés", "cover": "Borító", - "device_tracker": "Készülék nyomkövető", + "device_tracker": "Eszköz nyomkövető", "fan": "Ventilátor", "group": "Csoport", "hassio": "Hass.io", @@ -537,9 +537,11 @@ "common": { "cancel": "Mégse", "close": "Bezárás", + "delete": "Törlés", "loading": "Betöltés", "no": "Nem", "save": "Mentés", + "successfully_deleted": "Sikeresen törölve", "successfully_saved": "Sikeresen elmentve", "yes": "Igen" }, @@ -621,18 +623,19 @@ "dismiss": "Elvetés", "editor": { "confirm_delete": "Biztosan törölni szeretnéd ezt a bejegyzést?", - "delete": "TÖRLÉS", + "delete": "Törlés", "enabled_cause": "Letiltva. ({cause})", "enabled_description": "A letiltott entitások nem lesznek hozzáadva a Home Assistant-hoz.", "enabled_label": "Entitás engedélyezése", "entity_id": "Entitás ID", "icon": "Ikon felülbírálása", + "icon_error": "Az ikonokat a 'prefix:ikonnév' formátumban kell megadni, pl.: 'mdi:home'", "name": "Név felülbírálása", "note": "Megjegyzés: lehet, hogy ez még nem működik minden integrációval.", "unavailable": "Ez az entitás jelenleg nem elérhető.", - "update": "FRISSÍTÉS" + "update": "Frissítés" }, - "no_unique_id": "Ez az entitás nem rendelkezik egyedi azonosítóval, ezért a beállítások nem kezelhetők a felhasználói felületről.", + "no_unique_id": "Ez az entitás nem rendelkezik egyedi azonosítóval, ezért a beállításai nem kezelhetők a felhasználói felületről.", "related": "Kapcsolatok", "settings": "Beállítások" }, @@ -646,11 +649,16 @@ "generic": { "icon": "Ikon", "initial_value": "Kezdeti érték indításkor", + "initial_value_explain": "Az elem értéke, amikor a Home Assistant elindul. Ha üresen hagyod, akkor az érték mindig visszaáll az előző értékre.", "name": "Név" }, "input_datetime": { + "date": "Dátum", + "datetime": "Dátum és idő", "has_date": "Dátum", - "has_time": "Idő" + "has_time": "Idő", + "mode": "Mit szeretnél megadni?", + "time": "Idő" }, "input_number": { "box": "Beviteli mező", @@ -658,7 +666,7 @@ "min": "Minimális érték", "mode": "Megjelenítési mód", "slider": "Csúszka", - "step": "A csúszka lépésmérete", + "step": "Lépés mérete", "unit_of_measurement": "Mértékegység" }, "input_select": { @@ -672,10 +680,14 @@ "min": "Minimális hossz", "mode": "Megjelenítési mód", "password": "Jelszó", + "pattern": "Regex minta az ügyféloldali érvényesítéshez", "text": "Szöveg" }, "not_editable": "Nem szerkeszthető", - "required_error_msg": "Ez a mező kötelező" + "not_editable_text": "Ez az entitás nem módosítható a felhasználói felületről, mert a configuration.yaml fájlban van definiálva.", + "platform_not_loaded": "A(z) {platform} integráció nincs betöltve. Add hozzá a konfigurációdhoz a 'default_config:' vagy a(z) '{platform}:' hozzáadásával.", + "required_error_msg": "Ez a mező kötelező", + "yaml_not_editable": "Ennek az entitásnak a beállításai nem szerkeszthetők a felhasználói felületről. Csak a felhasználói felületről beállított entitások konfigurálhatók a felhasználói felületről." }, "more_info_control": { "dismiss": "Párbeszédpanel elvetése", @@ -801,18 +813,19 @@ "caption": "Területek", "create_area": "TERÜLET LÉTREHOZÁSA", "delete": { + "confirmation_text": "Minden ebben a területben lévő eszköz hozzárendelés nélküli lesz.", "confirmation_title": "Biztosan törölni szeretnéd ezt a területet?" }, "description": "Az összes otthoni terület áttekintése", "editor": { - "create": "LÉTREHOZÁS", + "create": "Létrehozás", "default_name": "Új Terület", - "delete": "TÖRLÉS", - "update": "FRISSÍTÉS" + "delete": "Törlés", + "update": "Frissítés" }, "no_areas": "Úgy tűnik, nem hoztál még létre egy területet sem!", "picker": { - "create_area": "TERÜLET LÉTREHOZÁSA", + "create_area": "Terület létrehozása", "header": "Területek", "integrations_page": "Integrációk oldal", "introduction": "A területekkel az eszközök elhelyezkedés szerint rendszerezhetők. Ezen információk felhasználásával a Home Assistant segíteni tud előkészíteni a felületet, a jogosultságokat és az integrációt más rendszerekkel.", @@ -1171,7 +1184,7 @@ "forgot_password": "elfelejtett jelszó?", "introduction": "A Home Assistant Felhő biztonságos távoli kapcsolatot nyújt a példányodhoz, miközben távol vagy. Azt is lehetővé teszi, hogy csak felhőn alapuló szolgáltatásokhoz csatlakozz: Amazon Alexa, Google Asszisztens.", "introduction2": "Ezt a szolgáltatást partnerünk üzemelteti, a ", - "introduction2a": "vállalat, amelyet a Home Assistant és a Hass.io alapítói hoztak létre.", + "introduction2a": ", amelyet a Home Assistant és a Hass.io alapítói hoztak létre.", "introduction3": "A Home Assistant Felhő egy előfizetéses szolgáltatás egy hónapos ingyenes próbaverzióval. Nincs szükség fizetési információk megadására.", "learn_more_link": "Tudj meg többet a Home Assistant Felhőről", "password": "Jelszó", @@ -1194,7 +1207,7 @@ "information": "Hozz létre egy fiókot ahhoz, hogy elindíthasd az egy hónapos ingyenes Home Assistant Felhő próbaidőszakodat. Nincs szükség fizetési információk megadására.", "information2": "A próbaidőszak hozzáférést biztosít a Home Assistant Felhő minden előnyéhez, beleértve a következőket:", "information3": "Ezt a szolgáltatást partnerünk üzemelteti, a ", - "information3a": "vállalat, amelyet a Home Assistant és a Hass.io alapítói hoztak létre.", + "information3a": ", amelyet a Home Assistant és a Hass.io alapítói hoztak létre.", "information4": "Fiók regisztrálásával elfogadod az alábbi feltételeket.", "link_privacy_policy": "Adatvédelmi irányelvek", "link_terms_conditions": "Felhasználási feltételek", @@ -1299,6 +1312,7 @@ "automations": "Automatizálások", "cant_edit": "Kizárólag a felhasználói felületen létrehozott elemeket szerkesztheted.", "caption": "Eszközök", + "confirm_delete": "Biztosan törölni szeretnéd ezt az eszközt?", "confirm_rename_entity_ids": "Szeretnéd átnevezni az entitások ID-ját is?", "data_table": { "area": "Terület", @@ -1306,8 +1320,10 @@ "device": "Eszköz", "integration": "Integráció", "manufacturer": "Gyártó", - "model": "Modell" + "model": "Modell", + "no_devices": "Nincsenek eszközök" }, + "delete": "Törlés", "description": "Csatlakoztatott eszközök kezelése", "details": "Itt található minden részlet az eszközről.", "device_not_found": "Eszköz nem található.", @@ -1381,7 +1397,8 @@ "introduction2": "Az entitás nyilvántartás használatával felülbírálhatod a nevet, módosíthatod az entitás ID-t vagy eltávolíthatod a bejegyzést a Home Assistant-ból.", "remove_selected": { "button": "Kiválasztottak eltávolítása", - "confirm_text": "Az entitások csak akkor távolíthatók el, ha az integráció már nem használja őket.", + "confirm_partly_title": "Csak {number} kiválasztott entitás távolítható el.", + "confirm_text": "El kell távolítanod őket a Lovelace konfigurációból és az automatizálásokból, ha tartalmazzák ezeket az entitásokat.", "confirm_title": "El szeretnél távolítani {number} entitást?" }, "selected": "{number} kiválasztva", @@ -1399,6 +1416,7 @@ "header": "Home Assistant beállítása", "helpers": { "caption": "Segítők", + "description": "Automatizálások létrehozását segítő elemek", "dialog": { "add_helper": "Segítő hozzáadása", "add_platform": "{platform} hozzáadása", @@ -1454,6 +1472,7 @@ }, "failed_create_area": "Nem sikerült létrehozni a területet.", "finish": "Befejezés", + "loading_first_time": "Kérlek várj, amíg az integráció telepítésre kerül", "name_new_area": "Az új terület neve?", "not_all_required_fields": "Nincs kitöltve minden szükséges mező.", "submit": "Küldés" @@ -1467,7 +1486,7 @@ "ignore": { "confirm_delete_ignore": "Ettől az integráció újra meg fog jelenni a felfedezett integrációk között a felfedezés során. Ehhez szükség lehet egy kis időre, vagy egy újraindításra.", "confirm_delete_ignore_title": "{name} mellőzésének visszavonása?", - "confirm_ignore": "Biztosan nem szeretnéd beállítani ezt az integrációt? Visszavonhatod a döntésed, ha kiválasztod a \"mellőzött integrációk megjelenítése\" menüpontot a jobb felső sarokban lévő menüben.", + "confirm_ignore": "Biztosan nem szeretnéd beállítani ezt az integrációt? Visszavonhatod a döntésed, ha kiválasztod a 'mellőzött integrációk megjelenítése' menüpontot a jobb felső sarokban lévő menüben.", "confirm_ignore_title": "{name} felfedezésének mellőzése?", "hide_ignored": "Mellőzött integrációk elrejtése", "ignore": "Mellőzés", @@ -1485,26 +1504,31 @@ "lovelace": { "caption": "Lovelace Irányítópultok", "dashboards": { + "cant_edit_default": "Az alap Lovelace irányítópult nem szerkeszthető a felhasználói felületről. Elrejtheted, ha egy másik irányítópultot állítasz be alapértelmezettként.", + "cant_edit_yaml": "A YAML-ben definiált irányítópultok nem szerkeszthetők a felhasználói felületről. Változtasd meg őket a configuration.yaml fájlban.", "caption": "Irányítópultok", "conf_mode": { "storage": "UI által vezérelt", "yaml": "YAML fájl" }, "confirm_delete": "Biztosan törölni szeretnéd ezt az irányítópultot?", + "default_dashboard": "Ez az alapértelmezett irányítópult", "detail": { "create": "Létrehozás", "delete": "Törlés", "dismiss": "Bezárás", "edit_dashboard": "Irányítópult szerkesztése", - "icon": "Oldalsáv ikon", + "icon": "Ikon", "new_dashboard": "Új irányítópult hozzáadása", + "remove_default": "Alapértelmezett beállítás visszavonása ezen az eszközön", "require_admin": "Csak adminisztrátor", + "set_default": "Beállítás alapértelmezettként ezen az eszközön", "show_sidebar": "Megjelenítés az oldalsávon", - "title": "Oldalsáv cím", + "title": "Cím", "title_required": "Cím szükséges.", "update": "Frissítés", "url": "URL", - "url_error_msg": "Az URL nem tartalmazhat szóközt vagy speciális karaktereket, kivéve _ és -" + "url_error_msg": "Az URL-nek tartalmaznia kell egy kötőjelet, de nem tartalmazhat szóközt vagy speciális karaktereket, kivéve _ és -" }, "picker": { "add_dashboard": "Irányítópult hozzáadása", @@ -1515,11 +1539,13 @@ "require_admin": "Csak adminisztrátor", "sidebar": "Megjelenítés az oldalsávon", "title": "Cím" - } + }, + "open": "Megnyitás" } }, "description": "Lovelace irányítópultjainak konfigurálása", "resources": { + "cant_edit_yaml": "A Lovelace-t YAML módban használod, ezért az erőforrásokat nem kezelheted a felhasználói felületről. Kezeld őket a configuration.yaml fájlban.", "caption": "Erőforrások", "confirm_delete": "Biztosan törölni szeretnéd ezt az erőforrást?", "detail": { @@ -1531,15 +1557,18 @@ "update": "Frissítés", "url": "URL", "url_error_msg": "Az URL kötelező mező", - "warning_header": "Légy óvatos!" + "warning_header": "Légy óvatos!", + "warning_text": "Az erőforrások hozzáadása veszélyes lehet, győződj meg róla, hogy ismered a forrását, és bízol benne. A rossz erőforrások súlyosan károsíthatják a rendszered." }, "picker": { "add_resource": "Erőforrás hozzáadása", "headers": { "type": "Típus", "url": "URL" - } + }, + "no_resources": "Nincsenek erőforrások" }, + "refresh_body": "Frissítened kell az oldalt az eltávolítás befejezéséhez, meg akarod ezt most tenni?", "refresh_header": "Frissíteni szeretnél?", "types": { "css": "Stíluslap", @@ -1561,7 +1590,7 @@ "delete": "Törlés", "device_tracker_intro": "Válaszd ki azokat az eszközöket, amelyek ehhez a felhasználóhoz tartoznak.", "device_tracker_pick": "Válassz egy követni kívánt eszközt", - "device_tracker_picked": "Eszköz követése", + "device_tracker_picked": "Eszköz nyomon követése", "link_integrations_page": "Integrációk oldal", "link_presence_detection_integrations": "Jelenlét-érzékelő Integrációk", "linked_user": "Csatolt felhasználó", @@ -1592,7 +1621,7 @@ "delete": "Entitás törlése", "device_entities": "Ha egy olyan entitást adsz hozzá, ami egy eszközhöz tartozik, akkor az eszköz is automatikusan hozzá lesz adva.", "header": "Entitások", - "introduction": "Itt lehet beállítani azokat az entitásokat, amelyek nem tartoznak eszközökhöz.", + "introduction": "Az eszköz nélküli entitások itt állíthatók be.", "without_device": "Eszköz nélküli entitások" }, "introduction": "Használj jeleneteket otthonod életre keltéséhez.", @@ -1732,7 +1761,7 @@ "cluster_commands": { "commands_of_cluster": "Kiválasztott klaszter parancsai", "header": "Klaszterparancsok", - "help_command_dropdown": "Válasszon egy parancsot, amellyel kapcsolatba lép", + "help_command_dropdown": "Válaszd ki a kommunikációs parancsot.", "introduction": "Klaszterparancsok megtekintése és kiadása.", "issue_zigbee_command": "Zigbee parancs kiadása" }, @@ -1832,15 +1861,15 @@ "name": "Név", "new_zone": "Új zóna", "passive": "Passzív", - "passive_note": "A passzív zónák az előlapon nem láthatóak, és nem használják helyként az eszköz keresők sem. Ez akkor hasznos, ha csak automatizáláshoz kívánja majd használni.", + "passive_note": "A passzív zónák nem láthatóak a frontenden, és nem használják helyként az eszköz nyomkövetők sem. Ez akkor lehet hasznos, ha csak automatizálásokhoz szeretnéd használni.", "radius": "Sugár", "required_error_msg": "Ez a mező kötelező", "update": "Frissítés" }, - "edit_home_zone": "Az otthona címét az általános konfigurációnál változtathatja meg.", - "edit_home_zone_narrow": "A otthoni zóna sugara még nem szerkeszthető a frontendről. A hely az általános konfigurációtól módosítható.", + "edit_home_zone": "Az otthoni zóna sugara egyelőre még nem szerkeszthető a frontendről. A mozgatásához húzd a jelölőt a térképen.", + "edit_home_zone_narrow": "Az otthoni zóna sugara egyelőre még nem szerkeszthető a frontendről. Az elhelyezkedése pedig az általános konfigurációnál módosítható.", "go_to_core_config": "Ugrás az általános konfigurációra?", - "home_zone_core_config": "Az otthoni zóna helye szerkeszthető az általános konfigurációs lapon. A Főzóna sugara még nem szerkeszthető a frontendről. Szeretné az általános konfigurációt?", + "home_zone_core_config": "Az otthoni zóna elhelyezkedése az általános konfigurációnál módosítható. A sugara egyelőre még nem szerkeszthető a frontendről. Szeretnél az általános konfigurációra ugrani?", "introduction": "A zónák lehetővé teszik a Föld bizonyos területeinek megadását. Ha egy személy egy zónán belül van, az állapota felveszi a zóna nevét. A zónák eseményindítóként vagy feltételként is használhatók az automatizálási beállításokon belül.", "no_zones_created_yet": "Úgy tűnik, még nem hoztál létre zónákat." }, @@ -2049,7 +2078,7 @@ "url": "Ablak megnyitása: {url_path}" }, "safe-mode": { - "description": "A Home Assistant a konfiguráció betöltése közben bajba került, és most csökkentett módban fut. Vessen egy pillantást a hibanaplóra, hogy lássa, mi romlott el.", + "description": "A Home Assistant a konfiguráció betöltése során problémába ütközött, ezért most csökkentett módban fut. Vess egy pillantást a hibanaplóra, hogy megtudd, mi romlott el.", "header": "Csökkentett mód aktiválva", "show_errors": "Hibák megjelenítése" }, @@ -2060,7 +2089,7 @@ } }, "changed_toast": { - "message": "A Lovelace konfiguráció módosítva lett, szeretnéd frissíteni az aktualizáláshoz?", + "message": "Az ehhez az irányítópulthoz tartozó Lovelace konfiguráció módosítva lett, szeretnél frissíteni az aktualizáláshoz?", "refresh": "Frissítés" }, "editor": { @@ -2070,16 +2099,20 @@ }, "alarm-panel": { "available_states": "Rendelkezésre álló állapotok", + "description": "A Riasztópanel kártya riasztóközpont integrációk élesítését és hatástalanítását teszi lehetővé.", "name": "Riasztópanel" }, "button": { + "description": "A Gomb kártya gombok hozzáadását teszi lehetővé feladatok végrehajtásához.", "name": "Gomb" }, "conditional": { "card": "Kártya", "change_type": "Típus módosítása", + "condition_explanation": "A kártya akkor jelenik meg, ha az alábbi feltételek mindegyike teljesül.", "conditions": "Feltételek", "current_state": "jelenlegi", + "description": "A Feltételes kártya egy másik kártyát jelenít meg entitások állapotától függően.", "name": "Feltételes", "state_equal": "Az állapot egyenlő", "state_not_equal": "Az állapot nem egyenlő" @@ -2089,6 +2122,7 @@ "required": "Szükséges" }, "entities": { + "description": "Az Entitások kártya a legalapvetőbb kártya. Az elemeket listákba csoportosítja.", "name": "Entitások", "show_header_toggle": "Fejléc kapcsoló megjelenítése?", "toggle": "Entitások váltása." @@ -2097,9 +2131,11 @@ "name": "Entitás gomb" }, "entity-filter": { + "description": "Az Entitásszűrő kártya lehetővé teszi azon entitások kilistázását, amelyek éppen egy bizonyos állapotban vannak.", "name": "Entitás szűrő" }, "gauge": { + "description": "A Mérőműszer kártya egy alapkártya, amely lehetővé teszi az érzékelők adatainak vizuális megtekintését.", "name": "Műszer", "severity": { "define": "Súlyosság meghatározása?", @@ -2123,6 +2159,7 @@ "maximum": "Maximum", "minimum": "Minimum", "name": "Név", + "no_theme": "Nincs téma", "refresh_interval": "Frissítési intervallum", "show_icon": "Ikon megjelenítése?", "show_name": "Név megjelenítése?", @@ -2136,29 +2173,36 @@ }, "glance": { "columns": "Oszlopok", + "description": "A Pillantás kártyával több érzékelő csoportosítható egy kompakt áttekintő nézetbe.", "name": "Pillantás" }, "history-graph": { + "description": "Az Előzmény grafikon kártya lehetővé teszi az entitások múltbeli értékeinek grafikus megjelenítését.", "name": "Előzmény grafikon" }, "horizontal-stack": { - "name": "Vízszintes készlet" + "description": "A Vízszintes Készlet kártya lehetővé teszi több kártya egymás mellé rendezését egy oszlopon belül.", + "name": "Vízszintes Készlet" }, "iframe": { + "description": "A Weblap kártya lehetővé teszi a kedvenc weboldalad beágyazását a Home Assistant-ba.", "name": "Weboldal" }, "light": { + "description": "A Világítás kártya lehetővé teszi a fényerő megváltoztatását.", "name": "Világítás" }, "map": { "dark_mode": "Sötét mód?", "default_zoom": "Alapértelmezett nagyítás", + "description": "A Térkép kártya entitások térképen való megjelenítését teszi lehetővé.", "geo_location_sources": "Helylokáció forrásai", "name": "Térkép", "source": "Forrás" }, "markdown": { "content": "Tartalom", + "description": "A Markdown kártya a Markdown szerkesztési módban megírt szövegek megjelenítésére szolgál.", "name": "Markdown" }, "media-control": { @@ -2177,6 +2221,7 @@ "name": "Kép" }, "plant-status": { + "description": "A Növényállapot kártya az összes kedves botanikus számára készült.", "name": "Növény állapota" }, "sensor": { @@ -2185,14 +2230,16 @@ "name": "Érzékelő" }, "shopping-list": { - "integration_not_loaded": "Ez a kártya megköveteli a „shopping_list” integráció beállítását.", + "description": "A Bevásárló lista kártya lehetővé teszi, hogy tételeket vegyél fel, szerkessz, pipálj ki, és törölj a bevásárlólistádról.", + "integration_not_loaded": "Ez a kártya megköveteli a `shopping_list` integráció beállítását.", "name": "Bevásárló lista" }, "thermostat": { "name": "Termosztát" }, "vertical-stack": { - "name": "Függőleges készlet" + "description": "A Függőleges Készlet kártya lehetővé teszi több kártya csoportosítását, így mindig egy oszlopon belül maradnak.", + "name": "Függőleges Készlet" }, "weather-forecast": { "name": "Időjárás előrejelzés" @@ -2201,6 +2248,7 @@ "edit_card": { "add": "Kártya hozzáadása", "delete": "Kártya törlése", + "duplicate": "Kártya duplikálása", "edit": "Szerkesztés", "header": "Kártya Konfiguráció", "move": "Áthelyezés másik nézetbe", @@ -2227,7 +2275,10 @@ "move_right": "Nézet mozgatása jobbra", "tab_badges": "Kitűzők", "tab_settings": "Beállítások", - "tab_visibility": "Láthatóság" + "tab_visibility": "Láthatóság", + "visibility": { + "select_users": "Válaszd ki, hogy mely felhasználók láthatják ezt a nézetet a navigációs sávon" + } }, "header": "Felhasználói felület szerkesztése", "menu": { @@ -2250,6 +2301,7 @@ "error_remove": "Nem lehet eltávolítani a konfigurációt: {error}", "error_save_yaml": "Nem sikerült menteni a YAML-t: {error}", "header": "Konfiguráció szerkesztése", + "resources_moved": "Az erőforrásokat ezentúl nem a Lovelace konfigurációban kell megadni, hanem a Lovelace konfigurációs panelben.", "save": "Mentés", "saved": "Mentett", "unsaved_changes": "Nem mentett változások" @@ -2260,7 +2312,9 @@ "header": "Vedd át az irányítást a Lovelace UI felett", "para": "Alapértelmezés szerint a Home Assistant kezeli a felhasználói felületet, és frissíti azt, amikor új entitások vagy Lovelace komponensek válnak elérhetővé. Ha átveszed az irányítást, többé nem fogunk automatikusan módosításokat végezni számodra.", "para_sure": "Biztosan át szeretnéd venni az irányítást a felhasználói felületed felett?", - "save": "Irányítás átvétele" + "save": "Irányítás átvétele", + "yaml_config": "A kezdéshez itt a jelenlegi konfigurációja ennek az irányítópultnak:", + "yaml_mode": "YAML módot használsz, ezért nem módosíthatod a Lovelace konfigurációt a felhasználói felületről. Ha mégis onnan szeretnéd, akkor távolítsd el a 'mode: yaml' bejegyzést a Lovelace konfigurációból a 'configuration.yaml' fájlban." }, "suggest_card": { "add": "Hozzáadás a Lovelace-hez", @@ -2270,7 +2324,8 @@ "view": { "panel_mode": { "description": "Ez az első kártyát teljes szélességében fogja megjeleníteni; a többi kártya nem lesz megjelenítve", - "title": "Panel mód?" + "title": "Panel mód?", + "warning_multiple_cards": "Ez a nézet több kártyát is tartalmaz, de a panelnézet csak 1 kártyát tud megjeleníteni." } } }, @@ -2280,9 +2335,14 @@ "exit_edit_mode": "Kilépés a felhasználói felület szerkesztési módból", "help": "Súgó", "refresh": "Frissítés", + "reload_resources": "Erőforrások újratöltése", "unused_entities": "Nem használt entitások" }, "reload_lovelace": "Felhasználói felület újratöltése", + "reload_resources": { + "refresh_body": "Frissítened kell az oldalt az újratöltés befejezéséhez, meg akarod ezt most tenni?", + "refresh_header": "Frissíteni szeretnél?" + }, "unused_entities": { "available_entities": "Ezek azok az entitások, amelyek elérhetők, de még nincsenek elhelyezve a Lovelace felületen.", "domain": "Domain", @@ -2295,10 +2355,12 @@ "views": { "confirm_delete": "Nézet törlése?", "confirm_delete_existing_cards": "A nézet törlésével a kártyák is eltávolításra kerülnek", + "confirm_delete_existing_cards_text": "Biztosan törölni szeretnéd a(z) '{name}' nézetet? A nézet {number} kártyát tartalmaz, melyek törlődni fognak. Ez a művelet nem vonható vissza.", "confirm_delete_text": "Biztosan törölni szeretnéd a(z) {name} nézetet?", "existing_cards": "Nem törölhetsz olyan nézetet, amely kártyákat tartalmaz. Először távolítsd el a kártyákat." }, "warning": { + "attribute_not_found": "A(z) {attribute} attribútum nem érhető el a(z) {entity} entitásban.", "entity_non_numeric": "Entitás nem numerikus: {entity}", "entity_not_found": "Entitás nem elérhető: {entity}" } diff --git a/translations/is.json b/translations/is.json index c4326c8e77..fe8761dd5e 100644 --- a/translations/is.json +++ b/translations/is.json @@ -517,6 +517,13 @@ "yes": "Já" }, "components": { + "area-picker": { + "add_dialog": { + "add": "Bæta við", + "name": "Nafn" + }, + "clear": "Hreinsa" + }, "device-picker": { "clear": "Hreinsa", "device": "Tæki", @@ -532,6 +539,10 @@ "loading_history": "Hleð stöðusögu...", "no_history_found": "Engin stöðusaga fannst." }, + "related-items": { + "device": "Tæki", + "integration": "Samþætting" + }, "relative_time": { "duration": { "day": "{count} {count, plural,\n one {dagur}\n other {dagar}\n}", @@ -551,13 +562,46 @@ "dialogs": { "config_entry_system_options": { "enable_new_entities_label": "Virkja einingar sem nýlega var bætt við", - "title": "Kerfisvalkostir" + "title": "Kerfisvalkostir", + "update": "Uppfæra" }, "confirmation": { "cancel": "Hætta við", "ok": "Í lagi", "title": "Ertu viss?" }, + "entity_registry": { + "dismiss": "Vísa frá", + "editor": { + "delete": "Eyða", + "update": "Uppfæra" + } + }, + "generic": { + "cancel": "Hætta við", + "close": "loka", + "ok": "Í lagi" + }, + "helper_settings": { + "generic": { + "icon": "Táknmynd", + "name": "Nafn" + }, + "input_datetime": { + "date": "Dagsetning", + "has_date": "Dagsetning", + "has_time": "Tími", + "time": "Tími" + }, + "input_select": { + "add": "Bæta við" + }, + "input_text": { + "password": "Lykilorð", + "text": "Texti" + }, + "required_error_msg": "þetta er skilyrtur reitur" + }, "more_info_control": { "script": { "last_action": "Síðasta aðgerð" @@ -1022,14 +1066,22 @@ "battery": "Rafhlaða", "device": "Tæki", "integration": "Samþætting", - "manufacturer": "Framleiðandi" + "manufacturer": "Framleiðandi", + "no_devices": "Engin tæki" }, + "delete": "Eyða", "description": "Stjórna tengdum tækjum", "device_not_found": "Tæki fannst ekki.", "entities": { "entities": "Einingar" }, "info": "Upplýsingar um tæki", + "name": "Nafn", + "scene": { + "no_scenes": "Engar senur", + "scenes": "Senur" + }, + "scenes": "Senur", "unknown_error": "Óþekkt villa", "unnamed_device": "Ónefnt tæki" }, @@ -1074,10 +1126,25 @@ } }, "header": "Stilla af Home Assistant", + "helpers": { + "dialog": { + "create": "Stofna" + }, + "picker": { + "headers": { + "name": "Nafn", + "type": "Gerð" + } + }, + "types": { + "input_text": "Texti" + } + }, "integrations": { "caption": "Samþættingar", "config_entry": { "area": "Í {area}", + "delete_button": "Eyða {integration}", "delete_confirm": "Ertu viss um að þú viljir eyða þessari samþættingu?", "device_unavailable": "Tæki ekki tiltækt", "entity_unavailable": "Eining ekki tiltæk", @@ -1118,6 +1185,42 @@ "none": "Ekkert skilgreint sem stendur" }, "introduction": "Hér er mögulegt að stilla af íhluti og Home Assistant. Því miður er ekki hægt að breyta öllu í gegnum viðmótið ennþá, en við erum að vinna í því.", + "lovelace": { + "dashboards": { + "conf_mode": { + "yaml": "YAML skrá" + }, + "detail": { + "create": "Stofna", + "delete": "Eyða", + "dismiss": "Loka", + "icon": "Táknmynd", + "title": "Titill", + "update": "Uppfæra" + }, + "picker": { + "headers": { + "default": "Sjálfgefið", + "filename": "Skráarnafn", + "title": "Titill" + }, + "open": "Opna" + } + }, + "resources": { + "detail": { + "create": "Stofna", + "delete": "Eyða", + "dismiss": "Loka", + "update": "Uppfæra" + }, + "picker": { + "headers": { + "type": "Gerð" + } + } + } + }, "person": { "add_person": "Bæta við persónu", "caption": "Persónur", @@ -1287,6 +1390,18 @@ "updateDeviceName": "Stilltu sérsniðið heiti fyrir þetta tæki í tækjaskránni." } }, + "zone": { + "detail": { + "create": "Stofna", + "delete": "Eyða", + "icon": "Táknmynd", + "latitude": "Breiddargráða", + "longitude": "Lengdargráða", + "name": "Nafn", + "radius": "Radíus", + "update": "Uppfæra" + } + }, "zwave": { "caption": "Z-Wave", "common": { @@ -1350,6 +1465,8 @@ "copied": "Afritað á klemmuspjald", "copy_entity_state": "Afrita stöðu", "more_info": "Frekari upplýsingar", + "set_state": "Setja stöðu", + "state": "Staða", "title": "Stöður" }, "templates": { @@ -1381,6 +1498,9 @@ "toggle": "Víxla {name}", "url": "Opna glugga á {url_path}" }, + "safe-mode": { + "show_errors": "Sýna villur" + }, "shopping-list": { "add_item": "Bæta við hlut", "checked_items": "Valdir hlutir", @@ -1399,6 +1519,12 @@ "alarm-panel": { "available_states": "Tiltækar stöður" }, + "button": { + "name": "Hnappur" + }, + "conditional": { + "conditions": "Skilyrði" + }, "config": { "optional": "Valfrjálst", "required": "Skilyrt" @@ -1437,6 +1563,7 @@ "show_icon": "Birta táknmynd?", "show_name": "Birta nafn?", "show_state": "Birta stöðu?", + "state": "Staða", "theme": "Þema", "title": "Titill", "unit": "Eining", @@ -1523,6 +1650,7 @@ }, "save_config": { "cancel": "Gleymdu þessu", + "close": "Loka", "header": "Taka yfir stjórn á Lovelace viðmótinu", "para": "Home Assistant mun sjálfgefið halda utan um notendaviðmótið og uppfæra það þegar nýjar einingar eða Lovlace íhlutir verða aðgengilegir. Ef þú tekur yfir stjórn á viðmótinu þá mun þetta ekki gerast sjálfkrafa fyrir þig.", "para_sure": "Ertu viss um að þú viljir taka yfir stjórn á notendaviðmótinu þínu?", @@ -1740,6 +1868,7 @@ "link_promo": "Hjálpa við að þýða" }, "logout": "Skrá út", + "logout_title": "Skrá út?", "long_lived_access_tokens": { "confirm_delete": "Ertu viss um að þú viljir eyða aðgangstóka fyrir {name}?", "create": "Búa til tóka", diff --git a/translations/it.json b/translations/it.json index 19a3e55709..5ccc70477e 100644 --- a/translations/it.json +++ b/translations/it.json @@ -537,9 +537,11 @@ "common": { "cancel": "Annulla", "close": "Chiudi", + "delete": "Elimina", "loading": "Caricamento", "no": "No", "save": "Salva", + "successfully_deleted": "Cancellato con successo", "successfully_saved": "Salvataggio riuscito", "yes": "Sì" }, @@ -621,7 +623,7 @@ "dismiss": "Annullare", "editor": { "confirm_delete": "Sei sicuro di voler eliminare questa voce?", - "delete": "ELIMINA", + "delete": "Elimina", "enabled_cause": "Disabilitato da {cause}.", "enabled_description": "Le entità disabilitate non saranno aggiunte a Home Assistant", "enabled_label": "Abilita entità", @@ -631,9 +633,9 @@ "name": "Sostituzione nome", "note": "Nota: questo potrebbe non funzionare ancora con tutte le integrazioni.", "unavailable": "Questa entità non è attualmente disponibile.", - "update": "AGGIORNA" + "update": "Aggiorna" }, - "no_unique_id": "Questa entità non ha un ID univoco, pertanto le impostazioni non possono essere gestite dall'Interfaccia Utente.", + "no_unique_id": "Questa entità non ha un ID univoco, pertanto le sue impostazioni non possono essere gestite dall'Interfaccia Utente.", "related": "Relazionato", "settings": "Impostazioni" }, @@ -664,7 +666,7 @@ "min": "Valore minimo", "mode": "Modalità di visualizzazione", "slider": "Cursore", - "step": "Dimensione del passo del cursore", + "step": "Dimensione del passo", "unit_of_measurement": "Unità di misura" }, "input_select": { @@ -683,9 +685,9 @@ }, "not_editable": "Non modificabile", "not_editable_text": "Questa entità non può essere modificata dall'Interfaccia Utente perché è definita in configuration.yaml.", - "platform_not_loaded": "L'integrazione {platform} non è stata caricata, si prega di aggiungerla alla propria configurazione, aggiungendo 'default_config:' o '{platform}:'.", + "platform_not_loaded": "L'integrazione {platform} non è stata caricata. Si prega di aggiungerla alla propria configurazione, aggiungendo 'default_config:' o '{platform}:'.", "required_error_msg": "Questo campo è obbligatorio", - "yaml_not_editable": "Le impostazioni di questa entità non possono essere modificate dall'interfaccia utente. Solo le entità impostate dall'interfaccia utente sono configurabili dall'interfaccia utente." + "yaml_not_editable": "Le impostazioni di questa entità non possono essere modificate dall'Interfaccia Utente. Solo le entità impostate dall'Interfaccia Utente sono configurabili dall'Interfaccia Utente." }, "more_info_control": { "dismiss": "Chiudi finestra di dialogo", @@ -816,14 +818,14 @@ }, "description": "Panoramica di tutte le aree della tua casa.", "editor": { - "create": "CREA", + "create": "Crea", "default_name": "Nuova area", - "delete": "ELIMINA", - "update": "AGGIORNA" + "delete": "Elimina", + "update": "Aggiorna" }, "no_areas": "Sembra che tu non abbia ancora delle aree!", "picker": { - "create_area": "CREA AREA", + "create_area": "Crea Area", "header": "Aree", "integrations_page": "Integrazioni", "introduction": "Le aree sono utilizzate per organizzare dove sono i dispositivi. Queste informazioni saranno utilizzate in Home Assistant per aiutarti ad organizzare la tua interfaccia, permessi e integrazioni con altri sistemi.", @@ -1310,6 +1312,7 @@ "automations": "Automazioni", "cant_edit": "È possibile modificare solo gli elementi creati nell'Interfaccia Utente.", "caption": "Dispositivi", + "confirm_delete": "Sei sicuro di voler eliminare questo dispositivo?", "confirm_rename_entity_ids": "Vuoi anche rinominare gli ID entità delle tue entità?", "data_table": { "area": "Area", @@ -1320,6 +1323,7 @@ "model": "Modello", "no_devices": "Nessun dispositivo" }, + "delete": "Elimina", "description": "Gestisci i dispositivi collegati", "details": "Ecco tutti i dettagli del tuo dispositivo.", "device_not_found": "Dispositivo non trovato.", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "Impossibile creare l'area.", "finish": "Finire", + "loading_first_time": "Si prega di attendere durante l'installazione dell'integrazione", "name_new_area": "Nome della nuova area?", "not_all_required_fields": "Non tutti i campi obbligatori sono compilati.", "submit": "Invia" @@ -1500,7 +1505,7 @@ "lovelace": { "caption": "Cruscotti Lovelace", "dashboards": { - "cant_edit_default": "Il cruscotto standard Lovelace non può essere modificato dall'interfaccia utente. È possibile nasconderlo impostando un altro cruscotto come predefinito.", + "cant_edit_default": "Il cruscotto standard Lovelace non può essere modificato dall'Interfaccia Utente. È possibile nasconderlo impostando un altro cruscotto come predefinito.", "cant_edit_yaml": "I cruscotti definiti in YAML non possono essere modificati dall'Interfaccia Utente. Modificarli in configuration.yaml.", "caption": "Cruscotti", "conf_mode": { @@ -1524,7 +1529,7 @@ "title_required": "È richiesto il titolo.", "update": "Aggiorna", "url": "Url", - "url_error_msg": "L'URL non può contenere spazi o caratteri speciali, ad eccezione di _ e -" + "url_error_msg": "L'URL dovrebbe contenere un - e non può contenere spazi o caratteri speciali, ad eccezione di _ e -" }, "picker": { "add_dashboard": "Aggiungi cruscotto", @@ -2052,7 +2057,7 @@ "add_entities": { "generated_unsupported": "Questa funzione può essere utilizzata solo dopo aver preso il controllo dell'interfaccia utente di Lovelace.", "saving_failed": "Salvataggio della configurazione dell'interfaccia utente di Lovelace non riuscito.", - "yaml_unsupported": "Non è possibile utilizzare questa funzione quando si utilizza l'interfaccia utente di Lovelace in modalità YAML." + "yaml_unsupported": "Non è possibile utilizzare questa funzione quando si utilizza l'Interfaccia Utente di Lovelace in modalità YAML." }, "cards": { "confirm_delete": "Sei sicuro di voler cancellare questa scheda?", @@ -2156,6 +2161,7 @@ "maximum": "Massimo", "minimum": "Minimo", "name": "Nome", + "no_theme": "Nessun tema", "refresh_interval": "Intervallo di aggiornamento", "show_icon": "Mostrare l'icona?", "show_name": "Mostrare il nome?", @@ -2252,6 +2258,7 @@ "edit_card": { "add": "Aggiungi scheda", "delete": "Elimina scheda", + "duplicate": "Duplica scheda", "edit": "Modifica", "header": "Configurazione della scheda", "move": "Sposta nella vista", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "In questo modo viene eseguito il rendering della prima scheda a larghezza intera; altre schede in questa vista non verranno renderizzate.", - "title": "Modalità pannello?" + "title": "Modalità pannello?", + "warning_multiple_cards": "Questa vista contiene più di una scheda, ma una vista a pannello può mostrare solo una scheda." } } }, @@ -2338,9 +2346,14 @@ "exit_edit_mode": "Esci dalla modalità di modifica dell'Interfaccia Utente", "help": "Aiuto", "refresh": "Aggiorna", + "reload_resources": "Ricarica le risorse", "unused_entities": "Entità non utilizzate" }, "reload_lovelace": "Ricaricare l'Interfaccia Utente", + "reload_resources": { + "refresh_body": "È necessario aggiornare la pagina per completare il ricaricamento, si desidera aggiornare ora?", + "refresh_header": "Vuoi aggiornare?" + }, "unused_entities": { "available_entities": "Queste sono le entità che hai a disposizione, ma non sono ancora nella tua interfaccia utente di Lovelace.", "domain": "Dominio", diff --git a/translations/ko.json b/translations/ko.json index c2acfacb21..9c3ffb7371 100644 --- a/translations/ko.json +++ b/translations/ko.json @@ -537,9 +537,11 @@ "common": { "cancel": "취소", "close": "닫기", + "delete": "삭제", "loading": "읽는 중", "no": "아니오", "save": "저장", + "successfully_deleted": "성공적으로 삭제되었습니다", "successfully_saved": "성공적으로 저장되었습니다", "yes": "예" }, @@ -633,7 +635,7 @@ "unavailable": "이 구성요소는 현재 사용할 수 없습니다.", "update": "업데이트" }, - "no_unique_id": "이 구성요소는 고유한 ID 가 없으므로 설정을 UI 에서 관리할 수 없습니다.", + "no_unique_id": "이 구성요소는 고유한 ID 가 없으므로 UI 에서 설정 내용을 관리할 수 없습니다.", "related": "관련 내용", "settings": "설정 내용" }, @@ -664,7 +666,7 @@ "min": "최소값", "mode": "디스플레이 모드", "slider": "슬라이더", - "step": "슬라이더의 간격 크기", + "step": "슬라이더 간격", "unit_of_measurement": "측정 단위" }, "input_select": { @@ -683,7 +685,7 @@ }, "not_editable": "수정 불가능", "not_editable_text": "이 구성요소는 configuration.yaml 에서 정의되었기 때문에 UI 에서 수정할 수 없습니다.", - "platform_not_loaded": "{platform} 통합 구성요소가 로드되지 않았습니다. 구성을 추가해주세요. 'default_config:' 또는 '{platform} :' 을 추가해주세요.", + "platform_not_loaded": "{platform} 통합 구성요소가 로드되지 않았습니다. 'default_config:' 또는 '{platform} :' 을 추가하여 구성을 추가해주세요.", "required_error_msg": "이 입력란은 필수 요소입니다", "yaml_not_editable": "이 구성요소의 설정은 UI 에서 편집할 수 없습니다. UI 에서 설정한 구성요소만 UI 에서 구성할 수 있습니다." }, @@ -1247,12 +1249,12 @@ }, "server_control": { "reloading": { - "automation": "자동화 새로고침", - "core": "코어 새로고침", - "group": "그룹 새로고침", - "heading": "구성 내용 새로고침", - "introduction": "Home Assistant 의 일부 구성 내용은 재시작 없이 다시 읽어들일 수 있습니다. 새로고침을 누르면 현재 구성 내용을 내리고 새로운 구성 내용을 읽어들입니다.", - "script": "스크립트 새로고침" + "automation": "자동화 다시 읽어오기", + "core": "코어 다시 읽어오기", + "group": "그룹 다시 읽어오기", + "heading": "구성 내용 다시 읽어오기", + "introduction": "Home Assistant 의 일부 구성 내용은 재시작 없이 다시 읽어들일 수 있습니다. 다시 읽어오기를 누르면 현재 구성 내용을 내리고 새로운 구성 내용을 읽어들입니다.", + "script": "스크립트 다시 읽어오기" }, "server_management": { "heading": "서버 관리", @@ -1310,6 +1312,7 @@ "automations": "자동화", "cant_edit": "UI 에서 작성된 항목만 편집할 수 있습니다.", "caption": "기기", + "confirm_delete": "이 기기를 삭제하시겠습니까?", "confirm_rename_entity_ids": "구성요소의 ID 이름 또한 바꾸시겠습니까?", "data_table": { "area": "영역", @@ -1320,6 +1323,7 @@ "model": "모델", "no_devices": "기기 없음" }, + "delete": "삭제", "description": "연결된 기기를 관리합니다", "details": "기기의 모든 세부 정보는 다음과 같습니다.", "device_not_found": "기기를 찾을 수 없습니다.", @@ -1413,7 +1417,7 @@ "header": "Home Assistant 설정", "helpers": { "caption": "도우미", - "description": "자동화를 구축하는 데 도움이 되는 요소입니다.", + "description": "자동화 구축에 도움이 되는 요소입니다", "dialog": { "add_helper": "도우미 추가", "add_platform": "{platform} 추가", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "영역을 만들지 못했습니다.", "finish": "완료", + "loading_first_time": "통합 구성요소가 설치되는 동안 기다려주세요", "name_new_area": "새로운 영역의 이름?", "not_all_required_fields": "필수 입력란이 모두 채워지지 않았습니다.", "submit": "확인" @@ -1500,7 +1505,7 @@ "lovelace": { "caption": "Lovelace 대시보드", "dashboards": { - "cant_edit_default": "표준 Lovelace 대시보드는 UI 에서 편집할 수 없습니다. 다른 대시보드를 기본값으로 설정하여 숨길 수 있습니다.", + "cant_edit_default": "기본 Lovelace 대시보드는 UI 에서 편집할 수 없습니다. 다른 대시보드를 기본값으로 설정하여 숨길 수 있습니다.", "cant_edit_yaml": "YAML 에서 정의된 대시보드는 UI 에서 편집할 수 없습니다. configuration.yaml 파일에서 수정해주세요.", "caption": "대시보드", "conf_mode": { @@ -1524,7 +1529,7 @@ "title_required": "제목은 필수 요소입니다", "update": "업데이트", "url": "URL", - "url_error_msg": "URL 은 _ 와 - 를 제외한 공백이나 특수 문자를 포함할 수 없습니다." + "url_error_msg": "URL 은 - 를 포함해야 하며 _ 및 - 를 제외한 공백이나 특수 문자를 포함할 수 없습니다" }, "picker": { "add_dashboard": "대시보드 추가", @@ -1541,7 +1546,7 @@ }, "description": "Lovelace 대시보드를 구성합니다", "resources": { - "cant_edit_yaml": "Lovelace 를 YAML 모드로 사용 중 이므로 UI 에서 리소스를 관리할 수 없습니다. configuration.yaml 에서 관리해주세요.", + "cant_edit_yaml": "YAML 모드에서 Lovelace 를 사용하고 있으므로 UI 를 통해 리소스를 관리할 수 없습니다. configuration.yaml 에서 관리해주세요.", "caption": "리소스", "confirm_delete": "이 리소스를 삭제하시겠습니까?", "detail": { @@ -1671,15 +1676,15 @@ "description": "Home Assistant 서버를 재시작 또는 중지합니다", "section": { "reloading": { - "automation": "자동화 새로고침", - "core": "위치 및 사용자화 새로고침", - "group": "그룹 새로고침", + "automation": "자동화 다시 읽어오기", + "core": "위치 및 사용자화 다시 읽어오기", + "group": "그룹 다시 읽어오기", "heading": "YAML 구성 다시 읽어오기", - "introduction": "Home Assistant 의 일부 구성 내용은 재시작 없이 다시 읽어 들일 수 있습니다. 새로고침을 누르면 현재 사용 중인 YAML 구성 내용을 내리고 새로운 구성 내용을 읽어 들입니다.", - "person": "구성원 새로고침", - "scene": "씬 다시읽기", - "script": "스크립트 새로고침", - "zone": "지역 새로고침" + "introduction": "Home Assistant 의 일부 구성 내용은 재시작 없이 다시 읽어 들일 수 있습니다. 다시 읽어오기를 누르면 현재 사용 중인 YAML 구성 내용을 내리고 새로운 구성 내용을 읽어 들입니다.", + "person": "구성원 다시 읽어오기", + "scene": "씬 다시 읽어오기", + "script": "스크립트 다시 읽어오기", + "zone": "지역 다시 읽어오기" }, "server_management": { "confirm_restart": "Home Assistant 를 재시작하시겠습니까?", @@ -2052,7 +2057,7 @@ "add_entities": { "generated_unsupported": "Lovelace UI 를 직접 관리하는 경우에만 이 기능을 사용할 수 있습니다.", "saving_failed": "Lovelace UI 구성을 저장하지 못했습니다.", - "yaml_unsupported": "Lovelace UI 를 YAML 모드로 사용하는 경우 이 기능은 사용할 수 없습니다." + "yaml_unsupported": "YAML 모드에서 Lovelace UI 를 사용하는 경우 이 기능은 사용할 수 없습니다." }, "cards": { "confirm_delete": "이 카드를 삭제하시겠습니까?", @@ -2156,6 +2161,7 @@ "maximum": "최대", "minimum": "최소", "name": "이름", + "no_theme": "테마 없음", "refresh_interval": "새로 고침 간격", "show_icon": "아이콘 표시", "show_name": "이름 표시", @@ -2252,6 +2258,7 @@ "edit_card": { "add": "카드 추가하기", "delete": "카드 삭제", + "duplicate": "카드 복사", "edit": "편집", "header": "카드 구성", "move": "다른 뷰로 이동", @@ -2280,7 +2287,7 @@ "tab_settings": "설정", "tab_visibility": "가시성", "visibility": { - "select_users": "탐색에서 이 뷰를 볼 사용자를 선택해주세요" + "select_users": "이 뷰를 볼 수 있는 사용자를 선택해주세요" } }, "header": "UI 편집", @@ -2318,7 +2325,7 @@ "save": "직접 관리할게요", "yaml_config": "시작하는데 도움이 될 수 있는 대시보드의 현재 구성은 다음과 같습니다:", "yaml_control": "YAML 모드로 제어하려면 대시보드의 구성에서 지정한 이름의 YAML 파일을 만들거나 기본 제공된 'ui-lovelace.yaml' 을 사용해주세요.", - "yaml_mode": "YAML 모드를 사용 중이므로 UI 에서 Lovelace 구성을 변경할 수 없습니다. Lovelace 를 UI 에서 변경하려면 'configuration.yaml' 의 Lovelace 구성에서 'mode:yaml'을 제거해주세요." + "yaml_mode": "YAML 모드를 사용 중이므로 UI 에서 Lovelace 구성을 변경할 수 없습니다. Lovelace 를 UI 에서 변경하려면 'configuration.yaml' 의 Lovelace 구성에서 'mode:yaml' 을 제거해주세요." }, "suggest_card": { "add": "Lovelace UI 에 추가", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "패널 모드는 첫 번째 카드를 전체 너비로 보여줍니다. 이 뷰에서는 다른 카드는 보여지지 않습니다.", - "title": "패널 모드" + "title": "패널 모드", + "warning_multiple_cards": "이 뷰에는 카드가 두 개 이상 포함되어 있지만 패널 모드는 한 개의 카드만 표시할 수 있습니다." } } }, @@ -2338,9 +2346,14 @@ "exit_edit_mode": "UI 편집 모드 종료", "help": "도움말", "refresh": "새로고침", + "reload_resources": "리소스 다시 읽어오기", "unused_entities": "미사용 구성요소" }, - "reload_lovelace": "UI 새로고침", + "reload_lovelace": "UI 다시 읽어오기", + "reload_resources": { + "refresh_body": "다시 읽어오기를 완료하려면 페이지를 새로 고쳐야 합니다. 지금 새로 고치시겠습니까?", + "refresh_header": "새로 고치시겠습니까?" + }, "unused_entities": { "available_entities": "사용 가능한 구성요소이지만 아직 Lovelace UI 에는 등록되지 않았습니다.", "domain": "도메인", diff --git a/translations/lb.json b/translations/lb.json index 5d9220cae8..50244cd3ad 100644 --- a/translations/lb.json +++ b/translations/lb.json @@ -537,9 +537,11 @@ "common": { "cancel": "Ofbriechen", "close": "Zoumaachen", + "delete": "Läschen", "loading": "Lued", "no": "Nee", "save": "Späicheren", + "successfully_deleted": "Erfollegräich geläscht.", "successfully_saved": "Erfollegräich gespäichert.", "yes": "Jo" }, @@ -627,6 +629,7 @@ "enabled_label": "Entitéit aktivéieren", "entity_id": "ID vun der Entitéit", "icon": "Ikon iwwerschreiwen", + "icon_error": "Ikonen sollten am format 'prefix:numm' sinn, Beispill: 'mdi:home'", "name": "Numm iwwerschreiwen", "note": "Nott: dëst funktionéiert villäicht nach net mat all Integratioun.", "unavailable": "Dës Entitéit ass net erreechbar fir de Moment.", @@ -657,6 +660,7 @@ "time": "Zäit" }, "input_number": { + "box": "Angab Feld", "max": "Maximale Wäert", "min": "Minimale Wäert", "mode": "Affichage Modus", @@ -1303,6 +1307,7 @@ "automations": "Automatisme", "cant_edit": "Dir kënnt nëmmen Elementer änneren déi an der UI erstallt goufen.", "caption": "Apparater", + "confirm_delete": "Sécher fir dësen Appara ze läsche?", "confirm_rename_entity_ids": "Wëllt Dir och d'Entitéiten-ID vun Ären Entitéiten ëmbenennen?", "data_table": { "area": "Beräich", @@ -1310,8 +1315,10 @@ "device": "Apparat", "integration": "Integratioun", "manufacturer": "Hiersteller", - "model": "Modell" + "model": "Modell", + "no_devices": "Keng Apparater" }, + "delete": "Läschen", "description": "Verwalt verbonnen Apparater", "details": "Hei sinn all Detailer vun ärem Apparat.", "device_not_found": "Apparat net fonnt.", @@ -1385,6 +1392,7 @@ "introduction2": "Benotzt d'Lëscht vun den Entitéite fir d'Nimm z'änneren, d'Entitéits ID z'änneren oder d'Entrée aus dem Home Assistant ze läschen. Remarque: Läsche vun der Entitéit aus der Lëscht läscht d'Entitéit selwer net. Fir dës ze läsche follegt dem Link ënnen a läscht et op der Integratiouns Säit.", "remove_selected": { "button": "Ausgewielte läschen", + "confirm_partly_text": "Nëmmen {removable} vun den ausgewielten {selected} Entitéite kënne geläscht ginn. Entitéiten kënne nëmmen geläscht ginn wann eng Integratioun déi Entitéiten net méi zur Verfügung stellt. Heiansdo muss Home Assistant frësch gestart ginn fir Entitéiten vun enger geläschten Integratioun ze läschen. Sécher fir déi läschbar Entitéiten ze läschen?", "confirm_text": "Entitéiten kënne nëmmen geläscht gin wann d'Integratioun d'Entitéiten net méi zur Verfügung stellt.", "confirm_title": "Wëllt dir {number} Entitéite läschen?" }, @@ -1394,6 +1402,7 @@ "disabled": "Deaktivéiert", "ok": "Ok", "readonly": "Nëmme liesen", + "restored": "Restauréiert", "unavailable": "Net erreechbar" }, "unavailable": "(net verfügbar)" @@ -1458,6 +1467,7 @@ }, "failed_create_area": "Feeler beim erstellen vum Beräich.", "finish": "Ofschléissen", + "loading_first_time": "Waart w.e.g. während der Installatioun vun der Integratioun", "name_new_area": "Numm vum neie Beräich?", "not_all_required_fields": "Net all erfuerderlech Felder sinn ausgefëllt.", "submit": "Ofschécken" @@ -1496,6 +1506,7 @@ "yaml": "Yaml Fichier" }, "confirm_delete": "Sécher fir dëse Tableau de Bord ze läschen?", + "default_dashboard": "Dëst ass den Standard Tableau de Bord", "detail": { "create": "Erstellen", "delete": "Läschen", @@ -1503,7 +1514,9 @@ "edit_dashboard": "Tableau de Bord änneren", "icon": "Ikon vun der Säite Läischt", "new_dashboard": "Neien Tableau de Bord dobäisetzen", + "remove_default": "Als Standard op dësem Apparat ewech huelen", "require_admin": "Admin nëmmen", + "set_default": "Als Standard op dësem Apparat définéieren", "show_sidebar": "An der Säite Läischt uweisen", "title": "Titel vun der Säite Läischt", "title_required": "Titel ass erfuerderlech.", @@ -1515,6 +1528,7 @@ "add_dashboard": "Tableau de Bord dobäisetzen", "headers": { "conf_mode": "Konfiguratioun's Method", + "default": "Standard", "filename": "Numm vum Fichier", "require_admin": "Admin nëmmen", "sidebar": "An der Säite Läischt uweisen", @@ -1545,7 +1559,8 @@ "headers": { "type": "Typ", "url": "Url" - } + }, + "no_resources": "Keng Ressourcen" }, "refresh_body": "D'Säit muss aktualiséiert gi fir d'Läschen ofzeschléissen, elo aktualiséieren?", "refresh_header": "Soll aktualiséiert ginn?", @@ -2099,6 +2114,7 @@ "required": "Obligatoresch" }, "entities": { + "description": "D'Entitéite Kaart ass déi am meeschten allgemengen Zort Kaart. Si gruppéiert Entitéite gemeinsam a Lëschten.", "name": "Entitéiten", "show_header_toggle": "Titel Schalter uweisen?", "toggle": "Entitéiten ëmschalten" @@ -2107,9 +2123,11 @@ "name": "Entitéite Knäppchen" }, "entity-filter": { + "description": "D'Entity Filter Kaart erlaabt Iech eng Lëscht vun Entitéiten ze definéieren déi nëmmen ugewise gi wann se an engem bestëmmten Zoustand sinn.", "name": "Entitéite Filter" }, "gauge": { + "description": "D'Gauge Kaart ass eng Basis Kaart déi Sensor Date visuell duerstellt.", "name": "Skala", "severity": { "define": "Schwieregkeetsgrad definéieren?", @@ -2130,9 +2148,11 @@ "icon_height": "Héicht vun der Ikon", "image": "Wee zum Bild", "manual": "Manuell", + "manual_description": "Muss Du eng personaliséiert Kaart bäifügen oder wëlls de Yaml manuell schreiwen?", "maximum": "Maximum", "minimum": "Minimum", "name": "Numm", + "no_theme": "Kee Thema", "refresh_interval": "Aktualiséierungs Intervall", "show_icon": "Ikon uweisen?", "show_name": "Numm uweisen?", @@ -2146,13 +2166,15 @@ }, "glance": { "columns": "Kolonnen", + "description": "D'Glance Kaart ass nëtzlech fir verschidde Sensoren an enger kompakter Iwwersiicht ze gruppéieren.", "name": "Usiicht" }, "history-graph": { + "description": "D'Verlaf's Grafik Kaart erlaabt Iech eng Grafik fir all eenzel opgelëschten Entitéiten unzeweisen.", "name": "Verlaf Diagramm" }, "horizontal-stack": { - "description": "Horizontaé Kaart erlaabt et méi Kaarten ze gruppéieren fir dass se ëmmer an der selwechter Rei ugewise ginn.", + "description": "Horizontal Kaart erlaabt et méi Kaarten ze gruppéieren fir dass se ëmmer an der selwechter Rei ugewise ginn.", "name": "Horizontale Stapel" }, "iframe": { @@ -2181,6 +2203,7 @@ "name": "Medie Kontroll" }, "picture-elements": { + "description": "D'Picture Elements Kaart ass eng vun de villsäitegsten Aarte vu Kaarten. D'Kaarten erlaben Iech Ikonen oder Text ze positionéieren a souguer Servicer! Op engem Bild wat op Koordinate baséiert.", "name": "Biller Elementer" }, "picture-entity": { @@ -2188,9 +2211,11 @@ "name": "Biller Entitéit" }, "picture-glance": { + "description": "D'Picture Glance Kaart weist e Bild an entspriechend Entitéiten Zoustänn als Ikon un. D'Entitéiten op der rietser Säit erlaben et Aktiounen auszeféieren, oder anerer weise méi Informatioun un.", "name": "Biller Usiicht" }, "picture": { + "description": "D'Foto Kaart erlaabt Iech e Bild ze setze fir als Navigatioun ze benotze fir op verschidde Weeër an Ärem Interface oder e Service op ze ruffen.", "name": "Bild" }, "plant-status": { @@ -2224,6 +2249,7 @@ "edit_card": { "add": "Kaart dobäisetzen", "delete": "Läschen", + "duplicate": "Kaart Replikéieren", "edit": "Änneren", "header": "Kaart Konfiguratioun", "move": "Réckelen", @@ -2250,7 +2276,10 @@ "move_right": "Usiicht no riets réckelen", "tab_badges": "Badgen", "tab_settings": "Astellungen", - "tab_visibility": "Visibilitéit" + "tab_visibility": "Visibilitéit", + "visibility": { + "select_users": "Wiel d'Benotzer aus déi dës Usiicht an der Navigatioun gesinn" + } }, "header": "UI änneren", "menu": { @@ -2297,7 +2326,8 @@ "view": { "panel_mode": { "description": "Dëst stellt déi éischt Kaart op voller Breet duer; aner Kaarte ginn net duergestallt.", - "title": "Panel Modus?" + "title": "Panel Modus?", + "warning_multiple_cards": "Dës Usiicht enthält méi wéi eng Kaart, mee eng Panneau Usiicht kann nëmmen 1 Kaart uweisen." } } }, @@ -2307,9 +2337,14 @@ "exit_edit_mode": "Benotzer Interface Editéierungsmodus verloossen", "help": "Hëllef", "refresh": "Erneieren", + "reload_resources": "Ressource frësch lueden", "unused_entities": "Onbenotzt Entitéiten" }, "reload_lovelace": "Lovelace frësch lueden", + "reload_resources": { + "refresh_body": "D'Säit muss aktualiséiert gi fir d'Aktualiséierung ofzeschléissen, elo aktualiséieren?", + "refresh_header": "Soll aktualiséiert ginn?" + }, "unused_entities": { "available_entities": "Dës si verfügbar Entitéiten, déi awer nach net an ärer Lovelace UI sinn.", "domain": "Domän", @@ -2321,9 +2356,12 @@ }, "views": { "confirm_delete": "Sécher fir dës Usiicht ze läsche?", + "confirm_delete_existing_cards": "D'Läschen vun dëser Usiicht läscht och d'Kaarten", + "confirm_delete_text": "Sécher fir d'Usiicht '{name}' ze läsche?", "existing_cards": "Dir kënnt keng Usiicht mat Kaarten läschen. Läscht d'Kaarten fir d'éischt." }, "warning": { + "attribute_not_found": "Attribut {attribute} net disponibel an: {entity}", "entity_non_numeric": "Entitéit ass net numerescher Natur: {entity}", "entity_not_found": "Entitéit net erreechbar: {entity}" } diff --git a/translations/nb.json b/translations/nb.json index 263de424e5..cd549e078a 100644 --- a/translations/nb.json +++ b/translations/nb.json @@ -26,9 +26,9 @@ "device_tracker": "Enhetssporing", "fan": "Vifte", "group": "Gruppe", - "hassio": "Hass.io", - "history_graph": "Historisk graf", - "homeassistant": "Home Assistant", + "hassio": "", + "history_graph": "Historie graf", + "homeassistant": "", "image_processing": "Bildebehandling", "input_boolean": "Angi boolsk", "input_datetime": "Angi datotid", @@ -37,24 +37,24 @@ "input_text": "Angi tekst", "light": "Lys", "lock": "Lås", - "lovelace": "Lovelace", + "lovelace": "", "mailbox": "Postkasse", "media_player": "Mediaspiller", "notify": "Varsle", - "person": "Person", + "person": "", "plant": "Plante", "proximity": "Nærhet", "remote": "Fjernkontroll", "scene": "Scene", "script": "Skript", - "sensor": "Sensor", + "sensor": "", "sun": "Sol", "switch": "Bryter", "system_health": "Systemhelse", - "updater": "Oppdateringer", + "updater": "Oppdater", "vacuum": "Støvsuger", - "weblink": "Lenke", - "zha": "ZHA", + "weblink": "Nettlink", + "zha": "", "zwave": "Z-Wave" }, "groups": { @@ -153,7 +153,7 @@ "on": "Lavt" }, "cold": { - "off": "Normal", + "off": "", "on": "Kald" }, "connectivity": { @@ -205,8 +205,8 @@ "on": "Hjemme" }, "problem": { - "off": "OK", - "on": "Problem" + "off": "", + "on": "" }, "safety": { "off": "Sikker", @@ -288,7 +288,7 @@ "locked": "Låst", "not_home": "Borte", "off": "Av", - "ok": "OK", + "ok": "", "on": "På", "open": "Åpen", "opening": "Åpner", @@ -321,7 +321,7 @@ "not_home": "Borte" }, "plant": { - "ok": "OK", + "ok": "", "problem": "Problem" }, "remote": { @@ -485,8 +485,8 @@ "actions": { "cancel": "Avbryt", "finish": "Ferdig", - "pause": "pause", - "start": "start" + "pause": "", + "start": "" } }, "vacuum": { @@ -537,9 +537,11 @@ "common": { "cancel": "Avbryt", "close": "Lukk", + "delete": "Slett", "loading": "Laster", "no": "Nei", "save": "Lagre", + "successfully_deleted": "Slettet", "successfully_saved": "Vellykket lagring", "yes": "Ja" }, @@ -593,7 +595,7 @@ "second": "{count} {count, plural,\n one {sekund}\n other {sekunder}\n}", "week": "{count} {count, plural,\n one {uke}\n other {uker}\n}" }, - "future": "Om {time}", + "future": "om {time}", "never": "Aldri", "past": "{time} siden" }, @@ -610,7 +612,7 @@ }, "confirmation": { "cancel": "Avbryt", - "ok": "OK", + "ok": "", "title": "Er du sikker?" }, "domain_toggler": { @@ -621,19 +623,19 @@ "dismiss": "Avvis", "editor": { "confirm_delete": "Er du sikker på at du vil slette denne oppføringen?", - "delete": "SLETT", + "delete": "Slett", "enabled_cause": "Deaktivert av {cause}.", "enabled_description": "Deaktiverte entiteter vil ikke bli lagt til i Home Assistant.", "enabled_label": "Aktiver entitet", "entity_id": "Entitets-ID", "icon": "Overstyring av ikon", - "icon_error": "Ikoner bør være i formatet 'prefix:iconname', f.eks .", + "icon_error": "Ikoner bør være i formatet 'prefiks:ikonnavn', f.eks 'mdi:home'", "name": "Overstyr Navn", - "note": "Merk: dette fungerer kanskje ikke ennå med alle integrasjoner.", + "note": "Merk: dette fungerer kanskje ikke enda med alle integrasjoner.", "unavailable": "Denne entiteten er ikke tilgjengelig for øyeblikket.", - "update": "OPPDATÉR" + "update": "Oppdater" }, - "no_unique_id": "Denne enheten har ikke en unik ID, derfor kan innstillingene ikke administreres fra brukergrensesnittet.", + "no_unique_id": "Denne entiteten har ikke en unik ID, derfor kan innstillingene ikke administreres fra brukergrensesnittet.", "related": "Relaterte", "settings": "Innstillinger" }, @@ -641,7 +643,7 @@ "cancel": "Avbryt", "close": "Lukk", "default_confirmation_title": "Er du sikker?", - "ok": "OK" + "ok": "" }, "helper_settings": { "generic": { @@ -664,7 +666,7 @@ "min": "Minimum verdi", "mode": "Visningsmodus", "slider": "Glidebryter", - "step": "Trinnstørrelse på glidebryteren", + "step": "Trinnstørrelse", "unit_of_measurement": "Måleenhet" }, "input_select": { @@ -682,10 +684,10 @@ "text": "Tekst" }, "not_editable": "Kan ikke redigeres", - "not_editable_text": "Denne enheten kan ikke endres fra brukergrensesnittet fordi den er definert i configuration.yaml.", + "not_editable_text": "Denne entiteten kan ikke endres fra brukergrensesnittet fordi den er definert i configuration.yaml.", "platform_not_loaded": "{platform}-integreringen er ikke lastet inn. Legg til konfigurasjonen ved å legge til 'default_config:' eller '{platform}:'.", "required_error_msg": "Dette feltet er påkrevd", - "yaml_not_editable": "Innstillingene til denne enheten kan ikke redigeres fra brukergrensesnittet. Bare enheter som er konfigurert fra brukergrensesnittet, kan konfigureres fra brukergrensesnittet." + "yaml_not_editable": "Innstillingene for denne entiteten kan ikke redigeres fra brukergrensesnittet. Bare entiteter som er konfigurert fra brukergrensesnittet, kan konfigureres fra brukergrensesnittet." }, "more_info_control": { "dismiss": "Avvis dialogboksen", @@ -718,11 +720,11 @@ "commands": "Støvsugerkommandoer:", "fan_speed": "Viftehastighet", "locate": "Lokaliser", - "pause": "Pause", - "return_home": "Vende hjem", - "start": "Start", + "pause": "", + "return_home": "Returner hjem", + "start": "", "start_pause": "Start / Pause", - "status": "Status", + "status": "", "stop": "Stopp" } }, @@ -761,7 +763,7 @@ "manuf": "av {manufacturer}", "no_area": "Intet område", "power_source": "Strømkilde", - "quirk": "Quirk", + "quirk": "", "services": { "reconfigure": "Rekonfigurer ZHA-enhet (heal enhet). Bruk dette hvis du har problemer med enheten. Hvis den aktuelle enheten er en batteridrevet enhet, sørg for at den er våken og aksepterer kommandoer når du bruker denne tjenesten.", "remove": "Fjern en enhet fra Zigbee-nettverket.", @@ -816,14 +818,14 @@ }, "description": "Oversikt over alle områder i ditt hjem", "editor": { - "create": "OPPRETT", + "create": "Opprett", "default_name": "Nytt område", - "delete": "SLETT", - "update": "OPPDATER" + "delete": "Slett", + "update": "Oppdater" }, "no_areas": "Det ser ikke ut som om du har noen områder ennå!", "picker": { - "create_area": "OPPRETT OMRÅDE", + "create_area": "Opprett område", "header": "Områder", "integrations_page": "Integrasjonsside", "introduction": "Områder brukes til å organisere hvor enheter er. Denne informasjonen vil bli brukt gjennomgående i Home Assistant for å hjelpe deg med å organisere grensesnittet, tillatelser og integrasjoner med andre systemer.", @@ -917,9 +919,9 @@ }, "sun": { "after": "Etter:", - "after_offset": "Utsette (valgfritt)", + "after_offset": "Etter forskyvning (valgfritt)", "before": "Før:", - "before_offset": "Fremskynde (valgfritt)", + "before_offset": "Før forskyvning (valgfritt)", "label": "Sol", "sunrise": "Soloppgang", "sunset": "Solnedgang" @@ -987,12 +989,12 @@ }, "homeassistant": { "event": "Hendelse:", - "label": "Home Assistant", + "label": "", "shutdown": "Slå av", - "start": "Start" + "start": "" }, "mqtt": { - "label": "MQTT", + "label": "", "payload": "Nyttelast (valgfritt)", "topic": "Emne" }, @@ -1074,7 +1076,7 @@ "state_reporting_error": "Kan ikke {enable_disable} rapportere status.", "sync_entities": "Synkronisér entiteter", "sync_entities_error": "Kunne ikke synkronisere entiteter:", - "title": "Alexa" + "title": "" }, "connected": "Tilkoblet", "connection_status": "Status for skytilkobling", @@ -1093,7 +1095,7 @@ "security_devices": "Sikkerhetsenheter", "sync_entities": "Synkronisér entiteter til Google", "sync_entities_404_message": "Kunne ikke synkronisere enhetene dine med Google, be Google 'Hei Google, synkroniser enhetene mine' for å synkronisere enhetene dine.", - "title": "Google Assistant" + "title": "" }, "integrations": "Integrasjoner", "integrations_introduction": "Integrasjoner for Home Assistant Cloud lar deg koble til tjenester i skyen uten å måtte avsløre Home Assistant-forekomsten offentlig på internett.", @@ -1131,9 +1133,9 @@ "expose": "Eksponer til Alexa", "exposed_entities": "Eksponerte entiteter", "not_exposed_entities": "Ikke-eksponerte entiteter", - "title": "Alexa" + "title": "" }, - "caption": "Home Assistant Cloud", + "caption": "", "description_features": "Kontroller borte fra hjemmet, integrere med Alexa og Google Assistant.", "description_login": "Logget inn som {email}", "description_not_login": "Ikke pålogget", @@ -1171,7 +1173,7 @@ "exposed_entities": "Eksponerte entiteter", "not_exposed_entities": "Ikke-eksponerte entiteter", "sync_to_google": "Synkroniserer endringer til Google.", - "title": "Google Assistant" + "title": "" }, "login": { "alert_email_confirm_necessary": "Du må bekrefte e-posten din før du logger inn.", @@ -1310,6 +1312,7 @@ "automations": "Automasjoner", "cant_edit": "Du kan bare redigere elementer som er opprettet i UI.", "caption": "Enheter", + "confirm_delete": "Er du sikker på at du vil slette denne enheten?", "confirm_rename_entity_ids": "Vil du også endre navn på entitets-ID-en for entitetene dine?", "data_table": { "area": "Område", @@ -1320,6 +1323,7 @@ "model": "Modell", "no_devices": "Ingen enheter" }, + "delete": "Slett", "description": "Administrer tilkoblede enheter", "details": "Her er alle detaljer for enheten.", "device_not_found": "Enhet ikke funnet", @@ -1375,7 +1379,7 @@ "confirm_title": "Vil du aktivere {number} enheter?" }, "filter": { - "filter": "Filter", + "filter": "", "show_disabled": "Vis deaktiverte entiteter", "show_readonly": "Vis skrivebeskyttede enheter", "show_unavailable": "Vis utilgjengelige enheter" @@ -1386,7 +1390,7 @@ "entity_id": "Entitets-ID", "integration": "Integrering", "name": "Navn", - "status": "Status" + "status": "" }, "integrations_page": "Integrasjonsside", "introduction": "Home Assistant bygger opp et register over hver entitet den har sett som kan identifiseres unikt. Hver av disse entitetene vil ha en ID som er reservert kun til denne.", @@ -1402,7 +1406,7 @@ "show_disabled": "Vis deaktiverte entiteter", "status": { "disabled": "Deaktivert", - "ok": "Ok", + "ok": "", "readonly": "Skrivebeskyttet", "restored": "Gjennopprettet", "unavailable": "Utilgjengelig" @@ -1425,7 +1429,7 @@ "editable": "Redigerbare", "entity_id": "Entitets-ID", "name": "Navn", - "type": "Type" + "type": "" } }, "types": { @@ -1469,6 +1473,7 @@ }, "failed_create_area": "Kunne ikke opprette område.", "finish": "Fullfør", + "loading_first_time": "Vent mens integreringen installeres", "name_new_area": "Navn på det nye området?", "not_all_required_fields": "Ikke alle obligatoriske felt er fylt ut.", "submit": "Send inn" @@ -1498,24 +1503,24 @@ }, "introduction": "Her er det mulig å konfigurere dine komponenter og Home Assistant. Ikke alt er mulig å konfigurere fra brukergrensesnittet enda, men vi jobber med det.", "lovelace": { - "caption": "Lovelace Dashboards", + "caption": "Lovelace dashbord", "dashboards": { - "cant_edit_default": "Standard Lovelace-dashbordet kan ikke redigeres fra brukergrensesnittet. Du kan skjule det ved å sette et annet dashbord som standard.", - "cant_edit_yaml": "Instrumentbord som er definert i YAML, kan ikke redigeres fra brukergrensesnittet. Endre dem i configuration.yaml.", - "caption": "Oversikter", + "cant_edit_default": "Standard Lovelace-dashbordet kan ikke redigeres fra brukergrensesnittet. Du kan skjule det ved å angi et annet instrumentbord som standard.", + "cant_edit_yaml": "Dashbord som er definert i YAML, kan ikke redigeres fra brukergrensesnittet. Endringer gjøres i configuration.yaml.", + "caption": "Dashbord", "conf_mode": { "storage": "UI kontrollert", "yaml": "YAML-fil" }, - "confirm_delete": "Er du sikker på at du vil slette dette instrumentbordet?", + "confirm_delete": "Er du sikker på at du vil slette dette dashbordet?", "default_dashboard": "Dette er standard instrumentbord", "detail": { "create": "Opprett", "delete": "Slett", "dismiss": "Lukk", - "edit_dashboard": "Redigere instrumentbord", + "edit_dashboard": "Redigere dashbord", "icon": "Ikon", - "new_dashboard": "Legg til nytt instrumentbord", + "new_dashboard": "Legg til nytt dashbord", "remove_default": "Fjern som standard på denne enheten", "require_admin": "Bare administrator", "set_default": "Angi som standard på denne enheten", @@ -1523,11 +1528,11 @@ "title": "Tittel", "title_required": "Tittel er nødvendig.", "update": "Oppdater", - "url": "Url", - "url_error_msg": "Url-adressen kan ikke inneholde mellomrom eller spesialtegn, med unntak av _ og -" + "url": "", + "url_error_msg": "URLen skal inneholde en - og kan ikke inneholde mellomrom eller spesialtegn, bortsett fra _ og -" }, "picker": { - "add_dashboard": "Legge til instrumentbord", + "add_dashboard": "Legg til dashbord", "headers": { "conf_mode": "Konfigurasjonsmetode", "default": "Standard", @@ -1539,7 +1544,7 @@ "open": "Åpne" } }, - "description": "Konfigurer Lovelace Dashboards", + "description": "Konfigurer dine Lovelace dashbord", "resources": { "cant_edit_yaml": "Du bruker Lovelace i YAML-modus, derfor kan du ikke administrere ressursene dine via brukergrensesnittet. Behandle dem i configuration.yaml.", "caption": "Ressurser", @@ -1551,7 +1556,7 @@ "new_resource": "Legg til ny ressurs", "type": "Ressurstype", "update": "Oppdater", - "url": "Url", + "url": "", "url_error_msg": "Url-adresse er et obligatorisk felt", "warning_header": "Vær forsiktig!", "warning_text": "Det kan være farlig å legge til ressurser, sørg for at du kjenner kilden til ressursen og stoler på dem. Dårlige ressurser kan skade systemet ditt alvorlig." @@ -1559,8 +1564,8 @@ "picker": { "add_resource": "Legg til ressurs", "headers": { - "type": "Type", - "url": "Url" + "type": "", + "url": "" }, "no_resources": "Ingen ressurser" }, @@ -1719,7 +1724,7 @@ "enter_new_name": "Skriv inn nytt navn", "group": "Gruppe", "group_update_failed": "Gruppeoppdatering mislyktes:", - "id": "ID", + "id": "Id", "owner": "Eier", "rename_user": "Gi nytt navn til bruker", "system_generated": "System generert", @@ -1743,7 +1748,7 @@ "caption": "Legg til enheter", "description": "Legg til enheter i Zigbee-nettverket" }, - "caption": "ZHA", + "caption": "", "cluster_attributes": { "attributes_of_cluster": "Attributter for den valgte klyngen", "get_zigbee_attribute": "Hent ZigBee-attributt", @@ -1857,8 +1862,8 @@ "name": "Navn", "new_zone": "Ny sone", "passive": "Passiv", - "passive_note": "Passive soner er skjult i frontend og brukes ikke som sted for enhetssporere. Dette er nyttig hvis du bare vil bruke det til automatiseringer.", - "radius": "Radius", + "passive_note": "Passive soner er skjult i grensesnittet og brukes ikke som sted for enhetssporere. Dette er nyttig hvis du bare vil bruke det til automatiseringer.", + "radius": "", "required_error_msg": "Dette feltet er påkrevd", "update": "Oppdater" }, @@ -1968,7 +1973,7 @@ "source": "Kilde:", "states_ui": "Gå til states UI", "system_health_error": "System Health-komponenten er ikke lastet. Legg til 'system_health:' til configurasjon.yaml", - "title": "Info" + "title": "Informasjon" }, "logs": { "clear": "Tøm", @@ -1999,7 +2004,7 @@ "call_service": "Kall tjeneste", "column_description": "Beskrivelse", "column_example": "Eksempel", - "column_parameter": "Parameter", + "column_parameter": "", "data": "Tjenestedata (YAML, valgfritt)", "description": "Med verktøyet for tjenesteutvikling kan du utføre alle tilgjengelige tjenester i Home Assistant.", "fill_example_data": "Fyll ut eksempeldata", @@ -2085,7 +2090,7 @@ } }, "changed_toast": { - "message": "Lovelace UI-konfigurasjonen ble oppdatert. refresh for å se endringer?", + "message": "Lovelace UI-konfigurasjonen ble oppdatert for dette dashbordet. oppdater for å se endringer?", "refresh": "Oppdater" }, "editor": { @@ -2108,7 +2113,7 @@ "condition_explanation": "Kortet vil vises når ALLE betingelser nedenfor er oppfylt.", "conditions": "Forhold", "current_state": "Gjeldende", - "description": "Betingelseskortet viser et annet kort basert på enhetstilstander.", + "description": "Betingelseskortet viser et annet kort basert på entitetstilstander.", "name": "Betinget", "state_equal": "Tilstanden er lik", "state_not_equal": "Tilstanden er ikke lik" @@ -2118,7 +2123,7 @@ "required": "Nødvendig" }, "entities": { - "description": " Entities card er den vanligste typen kort. Den grupperer elementer i lister.", + "description": "Entities card er den vanligste typen kort. Den grupperer elementer i lister.", "name": "Entiteter", "show_header_toggle": "Vis kortbryter?", "toggle": "Aktivér/deaktivér entiteter." @@ -2127,7 +2132,7 @@ "name": "Entitetsknapp" }, "entity-filter": { - "description": "Entity Filter-kortet lar deg definere en liste over enheter du bare vil spore når du er i en viss tilstand.", + "description": "Entity Filter-kortet lar deg definere en liste over entiteter du bare vil spore når de er i en viss tilstand.", "name": "Entitetsfilter" }, "gauge": { @@ -2154,8 +2159,9 @@ "manual": "Manuell", "manual_description": "Trenger du å legge til et tilpasset kort eller bare ønsker å skrive yaml manuelt?", "maximum": "Maksimalt", - "minimum": "Minimum", + "minimum": "", "name": "Navn", + "no_theme": "Ingen tema", "refresh_interval": "Oppdateringsintervall", "show_icon": "Vis ikon?", "show_name": "Vis navn?", @@ -2165,7 +2171,7 @@ "theme": "Tema", "title": "Tittel", "unit": "Betegnelse", - "url": "Url" + "url": "" }, "glance": { "columns": "Kolonner", @@ -2210,11 +2216,11 @@ "name": "Bildeelementer" }, "picture-entity": { - "description": "Picture Entity-kortet viser en enhet i form av et bilde. I stedet for bilder fra URL, kan det også vise bilde av kameraenheter.", + "description": "Picture Entity-kortet viser en entitet i form av et bilde. I stedet for bilder fra URL, kan det også vise bilde av kameraenheter.", "name": "Bildeoppføring" }, "picture-glance": { - "description": "Picture Glance-kortet viser et bilde og tilhørende entitetstilstander som et ikon. Enhetene på høyre side tillater veksling av handlinger, andre viser dialogboksen mer informasjon.", + "description": "Picture Glance-kortet viser et bilde og tilhørende entitetstilstander som et ikon. Entitetene på høyre side tillater veksling av handlinger, andre viser dialogboksen mer informasjon.", "name": "Bilde blikk" }, "picture": { @@ -2229,7 +2235,7 @@ "description": "Sensorkortet gir deg en rask oversikt over sensortilstanden din med en valgfri graf for å visualisere endring over tid.", "graph_detail": "Detaljer for graf", "graph_type": "Graf type", - "name": "Sensor" + "name": "" }, "shopping-list": { "description": "På Shopping List-kortet kan du legge til, redigere, sjekke av og fjerne gjenstander fra handlelisten din.", @@ -2237,7 +2243,7 @@ "name": "Handleliste" }, "thermostat": { - "description": "Termostatkortet gir kontroll over din klimaenhet. Lar deg endre temperaturen og modus for enheten.", + "description": "Termostatkortet gir kontroll over din klimaentitet. Lar deg endre temperaturen og modus for entiteten.", "name": "Termostat" }, "vertical-stack": { @@ -2252,6 +2258,7 @@ "edit_card": { "add": "Legg til kort", "delete": "Slett kort", + "duplicate": "Kopiér kort", "edit": "Rediger", "header": "Kortkonfigurasjon", "move": "Flytt til visning", @@ -2318,7 +2325,7 @@ "save": "Ta kontroll", "yaml_config": "For å hjelpe deg med å starte, her er den gjeldende konfigurasjonen av dette dashbordet:", "yaml_control": "Hvis du vil ta kontroll i YAML-modus, oppretter du en YAML-fil med navnet du angav i konfigurasjonen for dette instrumentbordet, eller standard 'ui-lovelace.yaml'.", - "yaml_mode": "Du bruker YAML-modus, det betyr at du ikke kan endre Lovelace config fra brukergrensesnittet. Hvis du vil endre Lovelace fra brukergrensesnittet, fjerner du «modus: yaml» fra Lovelace-konfigurasjonen i 'configuration.yaml'." + "yaml_mode": "Du bruker YAML-modus, det betyr at du ikke kan endre Lovelace config fra brukergrensesnittet. Hvis du vil endre Lovelace fra brukergrensesnittet, fjerner du 'modus: yaml' fra Lovelace-konfigurasjonen i 'configuration.yaml'." }, "suggest_card": { "add": "Legg til i Lovelace UI", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "Dette gjengir det første kortet i full bredde; andre kort i denne visningen vil ikke bli gitt.", - "title": "Panel modus?" + "title": "Panel modus?", + "warning_multiple_cards": "Denne visningen inneholder mer enn ett kort, men en panelvisning kan bare vise 1 kort." } } }, @@ -2338,7 +2346,7 @@ "exit_edit_mode": "Avslutt redigeringsmodus for brukergrensesnitt", "help": "Hjelp", "refresh": "Oppdater", - "reload_resources": "Last inn ressursene på nytt", + "reload_resources": "Last inn ressurser på nytt", "unused_entities": "Ubrukte entiteter" }, "reload_lovelace": "Last inn UI", @@ -2363,7 +2371,7 @@ "existing_cards": "Du kan ikke slette en visning som har kort i den. Fjern kortene først." }, "warning": { - "attribute_not_found": "Attributtet {attributt} er ikke tilgjengelig i: {entity}", + "attribute_not_found": "Attributtet {attribute} er ikke tilgjengelig i: {entity}", "entity_non_numeric": "Entiteten er ikke-numerisk: {entity}", "entity_not_found": "Entitet ikke tilgjengelig: {entity}" } diff --git a/translations/nl.json b/translations/nl.json index 19305adffe..f214a96924 100644 --- a/translations/nl.json +++ b/translations/nl.json @@ -394,7 +394,7 @@ }, "ui": { "auth_store": { - "ask": "Wil je de inloggegevens opslaan?", + "ask": "Wil je de ingelogd blijven?", "confirm": "Login opslaan", "decline": "Nee, bedankt" }, @@ -537,9 +537,11 @@ "common": { "cancel": "Annuleren", "close": "Sluiten", + "delete": "Verwijderen", "loading": "Bezig met laden", "no": "Nee", "save": "Opslaan", + "successfully_deleted": "Succesvol verwijderd", "successfully_saved": "Succesvol opgeslagen", "yes": "Ja" }, @@ -621,7 +623,7 @@ "dismiss": "Sluiten", "editor": { "confirm_delete": "Weet je zeker dat je dit item wilt verwijderen?", - "delete": "VERWIJDEREN", + "delete": "Verwijderen", "enabled_cause": "Uitgeschakeld vanwege {cause}", "enabled_description": "Uitgeschakelde entiteiten zullen niet aan Home Assistant worden toegevoegd", "enabled_label": "Schakel entiteit in", @@ -631,7 +633,7 @@ "name": "Naam overschrijven", "note": "Nota bene: dit werkt mogelijk nog niet met alle integraties.", "unavailable": "Deze entiteit is momenteel niet beschikbaar.", - "update": "BIJWERKEN" + "update": "Bijwerken" }, "no_unique_id": "Deze entiteit heeft geen unieke ID, daarom kunnen de instellingen niet worden beheerd vanuit de gebruikersinterface.", "related": "Gerelateerd", @@ -651,8 +653,12 @@ "name": "Naam" }, "input_datetime": { + "date": "Datum", + "datetime": "Datum en tijd", "has_date": "Datum", - "has_time": "Tijd" + "has_time": "Tijd", + "mode": "Wat wil je invoeren", + "time": "Tijd" }, "input_number": { "box": "Invoerveld", @@ -804,16 +810,20 @@ "areas": { "caption": "Gebieden", "create_area": "MAAK GEBIED", + "delete": { + "confirmation_text": "Alle apparaten in dit gebied zullen niet meer toegewezen zijn.", + "confirmation_title": "Weet je zeker dat je dit gebied wilt verwijderen?" + }, "description": "Overzicht van alle gebieden in je huis.", "editor": { - "create": "MAKEN", + "create": "Aanmaken", "default_name": "Nieuw Gebied", - "delete": "VERWIJDEREN", - "update": "BIJWERKEN" + "delete": "Verwijderen", + "update": "Bijwerken" }, "no_areas": "Het lijkt erop dat je nog geen gebieden hebt!", "picker": { - "create_area": "GEBIED MAKEN", + "create_area": "Gebied maken", "header": "Gebieden", "integrations_page": "Integratiespagina", "introduction": "Gebieden worden gebruikt om te bepalen waar apparaten zijn. Deze informatie wordt overal in de Home Assistant gebruikt om je te helpen bij het organiseren van je interface, machtigingen en integraties met andere systemen.", @@ -946,7 +956,7 @@ "triggers": { "add": "Trigger toevoegen", "delete": "Verwijderen", - "delete_confirm": "Zeker dat je wil verwijderen?", + "delete_confirm": "Weet je zeker dat je dit item wilt verwijderen?", "duplicate": "Dupliceren", "header": "", "introduction": "Triggers starten de verwerking van een automatiseringsregel. Het is mogelijk om meerdere triggers voor dezelfde regel op te geven. Zodra een trigger start, valideert Home Assistant de eventuele voorwaarden en roept hij de actie aan.", @@ -1300,6 +1310,7 @@ "automations": "Automatiseringen", "cant_edit": "Je kunt alleen items bewerken die in de gebruikersinterface zijn gemaakt.", "caption": "Apparaten", + "confirm_delete": "Weet je zeker dat je dit apparaat wilt verwijderen?", "confirm_rename_entity_ids": "Wil je ook de entiteits-ID's van je entiteiten hernoemen?", "data_table": { "area": "Gebied", @@ -1307,8 +1318,10 @@ "device": "Apparaat", "integration": "Integratie", "manufacturer": "Fabrikant", - "model": "Model" + "model": "Model", + "no_devices": "Geen apparaten" }, + "delete": "Verwijderen", "description": "Beheer verbonden apparaten", "details": "Hier zijn alle details van uw apparaat", "device_not_found": "Apparaat niet gevonden.", @@ -1382,7 +1395,8 @@ "introduction2": "Gebruik het entiteitenregister om de naam te overschrijven, de entiteits-ID te wijzigen of het item te verwijderen uit Home Assistant.", "remove_selected": { "button": "Verwijder geselecteerde", - "confirm_text": "Entiteiten kunnen alleen worden verwijderd wanneer de integratie de entiteiten niet langer levert.", + "confirm_partly_title": "Alleen {number} geselecteerde entiteiten kunnen worden verwijderd.", + "confirm_text": "Je moet ze zelf nog verwijderen uit je Lovelace-configuratie en automatiseringen als ze deze entiteiten bevatten.", "confirm_title": "Wilt je {number} entiteiten verwijderen?" }, "selected": "{number} geselecteerd", @@ -1391,6 +1405,7 @@ "disabled": "Uitgeschakeld", "ok": "OK", "readonly": "Alleen-lezen", + "restored": "Hersteld", "unavailable": "Onbeschikbaar" }, "unavailable": "(niet beschikbaar)" @@ -1455,6 +1470,7 @@ }, "failed_create_area": "Kan het gebied niet maken.", "finish": "Voltooien", + "loading_first_time": "Even geduld a.u.b. terwijl de integratie wordt geïnstalleerd", "name_new_area": "Naam van het nieuwe gebied?", "not_all_required_fields": "Niet alle verplichte velden zijn ingevuld.", "submit": "Opslaan" @@ -1493,17 +1509,23 @@ "yaml": "YAML-bestand" }, "confirm_delete": "Weet je zeker dat je deze dashboard wilt verwijderen?", + "default_dashboard": "Dit is het standaard dashboard", "detail": { "create": "Aanmaken", "delete": "Verwijderen", "dismiss": "Sluiten", "edit_dashboard": "Dashboard bewerken", + "icon": "Pictogram", "new_dashboard": "Nieuw dashboard toevoegen", + "remove_default": "Verwijderen als standaard op dit apparaat", "require_admin": "Alleen beheerder", + "set_default": "Als standaard instellen op dit apparaat", "show_sidebar": "Toon in de zijbalk", + "title": "Titel", + "title_required": "Titel is vereist.", "update": "Bijwerken", "url": "Url", - "url_error_msg": "De URL mag geen spaties of speciale tekens bevatten, behalve _ en -" + "url_error_msg": "De URL moet een - bevatten en mag geen spaties of speciale tekens bevatten, behalve _ en -" }, "picker": { "add_dashboard": "Dashboard toevoegen", @@ -1515,26 +1537,33 @@ "sidebar": "Toon in de zijbalk", "title": "Titel" }, - "open": "Dashboard openen" + "open": "Open" } }, "description": "Configureer je Lovelace-dashboards", "resources": { + "cant_edit_yaml": "Je gebruikt Lovelace in YAML-modus, daarom kun je je bronnen niet beheren via de gebruikersinterface. Beheer ze in configuration.yaml.", "caption": "Bronnen", + "confirm_delete": "Weet u zeker dat u deze bron wilt verwijderen?", "detail": { "create": "Aanmaken", "delete": "Verwijder", "dismiss": "Sluiten", + "new_resource": "Voeg nieuwe bron toe", + "type": "Type bron", "update": "Bijwerken", "url": "Url", "url_error_msg": "Url is een verplicht veld", - "warning_header": "Wees voorzichtig!" + "warning_header": "Wees voorzichtig!", + "warning_text": "Het toevoegen van bronnen kan gevaarlijk zijn, zorg ervoor dat u de bron van de bron kent en vertrouw ze. Slechte bronnen kunnen uw systeem ernstig beschadigen." }, "picker": { + "add_resource": "Voeg bron toe", "headers": { "type": "Type", "url": "Url" - } + }, + "no_resources": "Geen Lovelace bronnen" }, "refresh_body": "Je moet de pagina vernieuwen om de verwijdering te voltooien. Wil je nu vernieuwen?", "refresh_header": "Wil je verversen?", @@ -2057,7 +2086,7 @@ } }, "changed_toast": { - "message": "De Lovelace configuratie is bijgewerkt. Wil je de pagina vernieuwen?", + "message": "De Lovelace configuratie van dit dashboard is bijgewerkt. Wil je de pagina vernieuwen?", "refresh": "Vernieuwen" }, "editor": { @@ -2070,10 +2099,18 @@ "name": "Alarm paneel" }, "button": { + "description": "Met de Button-kaart kun je knoppen toevoegen om taken uit te voeren.", "name": "Knop" }, "conditional": { - "name": "Conditioneel" + "card": "Kaart", + "change_type": "Wijzig type", + "condition_explanation": "De kaart wordt weergegeven als aan ALLE onderstaande voorwaarden is voldaan.", + "conditions": "Voorwaarden", + "current_state": "huidige", + "name": "Conditioneel", + "state_equal": "Staat is gelijk aan", + "state_not_equal": "Staat is niet gelijk aan" }, "config": { "optional": "Optioneel", @@ -2091,6 +2128,7 @@ "name": "Entiteit-filter" }, "gauge": { + "description": "De meterkaart is een basiskaart waarmee u sensorgegevens visueel kunt zien.", "name": "Meter", "severity": { "define": "Ernst definiëren?", @@ -2114,6 +2152,7 @@ "maximum": "Maximaal", "minimum": "Minimum", "name": "Naam", + "no_theme": "Geen thema", "refresh_interval": "Vernieuwingsinterval", "show_icon": "Pictogram Weergeven?", "show_name": "Naam weergeven?", @@ -2136,7 +2175,7 @@ "name": "Horizontale stapel" }, "iframe": { - "name": "iFrame" + "name": "Webpagina" }, "light": { "name": "Lamp" @@ -2171,27 +2210,33 @@ "name": "toestand plant" }, "sensor": { + "description": "De Sensor-kaart geeft u een snel overzicht van de status van uw sensoren met een optionele grafiek om veranderingen in de tijd te visualiseren.", "graph_detail": "Grafiek Detail", "graph_type": "Grafiektype", "name": "Sensor" }, "shopping-list": { + "description": "Met de Shopping List-kaart kunt u items aan uw boodschappenlijst toevoegen, bewerken, afvinken en wissen.", "integration_not_loaded": "Voor deze kaart moet de integratie 'shopping_list' zijn ingesteld.", "name": "Boodschappenlijst" }, "thermostat": { + "description": "De Thermostat-kaart geeft controle over uw klimaateenheid. Hiermee kunt u de temperatuur en modus van de entiteit wijzigen.", "name": "Thermostaat" }, "vertical-stack": { + "description": "Met de Vertical Stack-kaart kunt u meerdere kaarten groeperen, zodat ze altijd in dezelfde kolom zitten.", "name": "Verticale stapel" }, "weather-forecast": { + "description": "De Weather Forecast-kaart geeft het weer weer. Erg handig om op te nemen op interfaces die mensen aan de muur hangen.", "name": "Weersverwachting" } }, "edit_card": { "add": "Kaart toevoegen", "delete": "Verwijder kaart", + "duplicate": "Dubbele kaart", "edit": "Bewerken", "header": "Kaart configuratie", "move": "Verplaatsen", @@ -2217,7 +2262,11 @@ "move_left": "Verplaats weergave naar links", "move_right": "Verplaats weergave naar rechts", "tab_badges": "Badges", - "tab_settings": "instellingen" + "tab_settings": "instellingen", + "tab_visibility": "Zichtbaarheid", + "visibility": { + "select_users": "Selecteer welke gebruikers deze weergave in de navigatie moeten zien" + } }, "header": "Bewerk UI", "menu": { @@ -2251,7 +2300,8 @@ "header": "Neem de controle over je Lovelace UI", "para": "Home Assistant onderhoudt je gebruikersinterface en update die met nieuwe entiteiten of Lovelace-onderdelen wanneer deze beschikbaar zijn. Als je het beheer overneemt, zullen we niet langer automatisch wijzigingen aanbrengen.", "para_sure": "Weet je zeker dat je de controle wilt over je gebruikersinterface?", - "save": "Neem over" + "save": "Neem over", + "yaml_config": "Om je te helpen te beginnen, hier is de huidige configuratie van dit dashboard:" }, "suggest_card": { "add": "Voeg toe aan de Lovelace gebruikersinterface", @@ -2261,7 +2311,8 @@ "view": { "panel_mode": { "description": "Hierdoor wordt de eerste kaart op volledige breedte weergegeven; andere kaarten in deze weergave worden niet weergegeven.", - "title": "Paneelmodus?" + "title": "Paneelmodus?", + "warning_multiple_cards": "Deze weergave bevat meer dan één kaart, maar een paneelweergave kan slechts 1 kaart tonen." } } }, @@ -2271,9 +2322,14 @@ "exit_edit_mode": "UI-bewerkingsmodus afsluiten", "help": "Help", "refresh": "Vernieuwen", + "reload_resources": "Herlaad Lovelace gegevens", "unused_entities": "Ongebruikte entiteiten" }, "reload_lovelace": "Lovelace herladen", + "reload_resources": { + "refresh_body": "Je moet de pagina vernieuwen om het herladen te voltooien, wil je nu vernieuwen?", + "refresh_header": "Wil je de gegevens vernieuwen?" + }, "unused_entities": { "available_entities": "Dit zijn de entiteiten die je beschikbaar hebt, maar die nog niet in je Lovelace UI staan.", "domain": "Domein", @@ -2284,7 +2340,9 @@ "title": "Ongebruikte entiteiten" }, "views": { - "confirm_delete": "Weet je zeker dat je dit item wilt verwijderen?", + "confirm_delete": "Weergave verwijderen?", + "confirm_delete_existing_cards": "Als u deze weergave verwijdert, worden ook de kaarten verwijderd", + "confirm_delete_text": "Weet u zeker dat u uw '{naam}'-weergave wilt verwijderen?", "existing_cards": "U kunt een weergave met kaarten niet verwijderen. Verwijder eerst de kaarten." }, "warning": { @@ -2420,15 +2478,15 @@ "volume": "Volume" }, "names": { - "family_room": "Familiekamer", + "family_room": "Woonkamer", "hallway": "Gang", "kitchen": "Keuken", "left": "Links", - "master_bedroom": "Hoofdslaapkamer", + "master_bedroom": "Slaapkamer", "mirror": "Spiegel", "patio": "Achtertuin", "right": "Rechts", - "temperature_study": "Temperatuur bestuderen", + "temperature_study": "Temperatuur studeerkamer", "upstairs": "Boven" }, "unit": { diff --git a/translations/pl.json b/translations/pl.json index 84ebd1cfac..6eaa5b61cd 100644 --- a/translations/pl.json +++ b/translations/pl.json @@ -537,9 +537,11 @@ "common": { "cancel": "Anuluj", "close": "Zamknij", + "delete": "Usuń", "loading": "Ładowanie", "no": "Nie", "save": "Zapisz", + "successfully_deleted": "Pomyślnie usunięto", "successfully_saved": "Pomyślnie zapisano", "yes": "Tak" }, @@ -1310,6 +1312,7 @@ "automations": "Automatyzacje", "cant_edit": "Możesz edytować tylko elementy utworzone w interfejsie użytkownika.", "caption": "Urządzenia", + "confirm_delete": "Na pewno chcesz usunąć to urządzenie?", "confirm_rename_entity_ids": "Czy chcesz także zmienić identyfikatory encji?", "data_table": { "area": "Obszar", @@ -1320,6 +1323,7 @@ "model": "Model", "no_devices": "Brak urządzeń" }, + "delete": "Usuń", "description": "Zarządzaj podłączonymi urządzeniami", "details": "Oto wszystkie szczegóły dotyczące twojego urządzenia.", "device_not_found": "Urządzenie nie zostało znalezione.", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "Nie udało się utworzyć obszaru.", "finish": "Zakończ", + "loading_first_time": "Proszę czekać, trwa instalowanie integracji...", "name_new_area": "Nazwa nowego obszaru?", "not_all_required_fields": "Nie wszystkie wymagane pola są wypełnione.", "submit": "Zatwierdź" @@ -2156,6 +2161,7 @@ "maximum": "Maksimum", "minimum": "Minimum", "name": "Nazwa", + "no_theme": "Bez motywu", "refresh_interval": "Częstotliwość odświeżania", "show_icon": "Wyświetlanie ikony", "show_name": "Wyświetlanie nazwy", @@ -2252,6 +2258,7 @@ "edit_card": { "add": "Dodaj kartę", "delete": "Usuń", + "duplicate": "Duplikuj kartę", "edit": "Edytuj", "header": "Konfiguracja karty", "move": "Przenieś", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "Pierwsza karta renderowana jest w pełnej szerokości; inne karty w tym widoku nie będą renderowane.", - "title": "Tryb panelu?" + "title": "Tryb panelu?", + "warning_multiple_cards": "Ten widok zawiera więcej niż jedną kartę, a widok panelu może wyświetlać tylko jedną kartę." } } }, diff --git a/translations/ru.json b/translations/ru.json index fb8552abb0..70ec3a854c 100644 --- a/translations/ru.json +++ b/translations/ru.json @@ -537,9 +537,11 @@ "common": { "cancel": "Отменить", "close": "Закрыть", + "delete": "Удалить", "loading": "Загрузка", "no": "Нет", "save": "Сохранить", + "successfully_deleted": "Успешно удалено", "successfully_saved": "Успешно сохранено", "yes": "Да" }, @@ -621,16 +623,17 @@ "dismiss": "Отклонить", "editor": { "confirm_delete": "Вы уверены, что хотите удалить эту запись?", - "delete": "УДАЛИТЬ", + "delete": "Удалить", "enabled_cause": "Отключено из-за {cause}.", "enabled_description": "Отключенные объекты не будут доступны в Home Assistant.", "enabled_label": "Включить объект", "entity_id": "ID объекта", + "icon": "Переопределение иконки", "icon_error": "Параметр значка должен быть указан в формате \"префикс:имя-значка\" (например: mdi:home)", "name": "Название", "note": "(может работать не со всеми интеграциями)", "unavailable": "Этот объект в настоящее время недоступен.", - "update": "ОБНОВИТЬ" + "update": "Обновить" }, "no_unique_id": "У этого объекта нет уникального идентификатора, поэтому его настройками нельзя управлять из пользовательского интерфейса.", "related": "Зависимости", @@ -815,14 +818,14 @@ }, "description": "Управляйте помещениями в Вашем доме", "editor": { - "create": "ДОБАВИТЬ", + "create": "Добавить", "default_name": "Новое помещение", - "delete": "УДАЛИТЬ", - "update": "ОБНОВИТЬ" + "delete": "Удалить", + "update": "Обновить" }, "no_areas": "У Вас еще нет добавленных помещений.", "picker": { - "create_area": "ДОБАВИТЬ", + "create_area": "Добавить помещение", "header": "Помещения", "integrations_page": "Страница интеграций", "introduction": "Этот раздел используется для определения местоположения устройств. Данная информация будет использоваться в Home Assistant, чтобы помочь вам в организации вашего интерфейса, определении прав доступа и интеграции с другими системами.", @@ -1309,6 +1312,7 @@ "automations": "Автоматизация", "cant_edit": "Вы можете редактировать только созданные в пользовательском интерфейсе элементы.", "caption": "Устройства", + "confirm_delete": "Вы уверены, что хотите удалить это устройство?", "confirm_rename_entity_ids": "Хотите ли Вы также переименовать идентификаторы объектов?", "data_table": { "area": "Помещение", @@ -1319,6 +1323,7 @@ "model": "Модель", "no_devices": "Нет устройств" }, + "delete": "Удалить", "description": "Управляйте подключенными устройствами", "details": "Здесь приведена вся доступная информация об этом устройстве.", "device_not_found": "Устройство не найдено.", @@ -1468,6 +1473,7 @@ }, "failed_create_area": "Не удалось создать помещение.", "finish": "Готово", + "loading_first_time": "Идет установка интеграции, пожалуйста, подождите", "name_new_area": "Название для нового помещения", "not_all_required_fields": "Не все обязательные поля заполнены.", "submit": "Подтвердить" @@ -1523,7 +1529,7 @@ "title_required": "Обязательное поле", "update": "Обновить", "url": "URL-адрес", - "url_error_msg": "URL не может содержать пробелы или специальные символы, кроме символов _ и -" + "url_error_msg": "URL должен содержать - и не может содержать пробелов или специальных символов, за исключением _ и -" }, "picker": { "add_dashboard": "Добавить панель", @@ -1782,8 +1788,15 @@ "header": "Zigbee Home Automation - Устройство" }, "group_binding": { + "bind_button_help": "Привяжите выбранную группу к выбранным кластерам устройств.", + "bind_button_label": "Привязать группу", "cluster_selection_help": "Выберите кластеры для привязки к выбранной группе.", - "group_picker_label": "Связываемые группы" + "group_picker_help": "Выберите группу, чтобы выполнить команду привязки.", + "group_picker_label": "Связываемые группы", + "header": "Привязка групп", + "introduction": "Привязывайте и отвязывайте группы.", + "unbind_button_help": "Отвяжите выбранную группу от выбранных кластеров устройств.", + "unbind_button_label": "Отвязать группу" }, "groups": { "add_members": "Добавить участников", @@ -2148,6 +2161,7 @@ "maximum": "Максимум", "minimum": "Минимум", "name": "Название", + "no_theme": "Нет темы", "refresh_interval": "Интервал обновления", "show_icon": "Значок", "show_name": "Название", @@ -2244,6 +2258,7 @@ "edit_card": { "add": "Добавить карточку", "delete": "Удалить", + "duplicate": "Дублировать карточку", "edit": "Изменить", "header": "Настройка карточки", "move": "Переместить", @@ -2296,6 +2311,7 @@ "error_remove": "Не удалось удалить конфигурацию: {error}", "error_save_yaml": "Не удалось сохранить YAML: {error}", "header": "Редактирование конфигурации", + "resources_moved": "Ресурсы не должны более добавляться в конфигурацию Lovelace, но их можно добавить на панели конфигурации Lovelace.", "save": "Сохранить", "saved": "Сохранено", "unsaved_changes": "Несохраненные изменения" @@ -2319,7 +2335,8 @@ "view": { "panel_mode": { "description": "Первая карточка будет растянута на всю ширину. Другие карточки не будут отображаться на этой вкладке", - "title": "Режим панели" + "title": "Режим панели", + "warning_multiple_cards": "На этой вкладке несколько карточек. В режиме панели может отображаться только одна карточка." } } }, diff --git a/translations/sk.json b/translations/sk.json index 2da031737a..59ff4bf3f2 100644 --- a/translations/sk.json +++ b/translations/sk.json @@ -477,6 +477,9 @@ "script": { "execute": "Vykonať" }, + "service": { + "run": "Spustiť" + }, "timer": { "actions": { "cancel": "Zrušiť", @@ -532,9 +535,11 @@ }, "common": { "cancel": "Zrušiť", + "delete": "Odstrániť", "loading": "Načítava sa", "no": "Nie", "save": "Uložiť", + "successfully_deleted": "Úspešne odstránené", "successfully_saved": "Úspešne uložené", "yes": "Áno" }, @@ -555,7 +560,8 @@ "device-picker": { "clear": "Vyčistiť", "device": "Zariadenie", - "show_devices": "Zobraziť zariadenia" + "show_devices": "Zobraziť zariadenia", + "toggle": "Prepínač" }, "entity": { "entity-picker": { @@ -608,14 +614,19 @@ "title": "Ste si istý?" }, "entity_registry": { + "control": "Ovládanie", + "dismiss": "Zrušiť", "editor": { "confirm_delete": "Naozaj chcete odstrániť túto entitu?", "delete": "VYMAZAŤ", + "enabled_cause": "Zakázané {cause}", "enabled_description": "Zakázané entity nebudú pridané do Home Assistanta", "enabled_label": "Povoliť entitu", + "entity_id": "Entity ID", "icon": "Zmeniť ikonu", "name": "Prepísať názov", "note": "Poznámka: toto nemusí zatiaľ fungovať so všetkými integráciami.", + "unavailable": "Táto entita nie je momentálne k dispozícii.", "update": "AKTUALIZOVAŤ" }, "related": "Súvisiace", @@ -623,19 +634,55 @@ }, "generic": { "cancel": "Zrušiť", + "close": "zavrieť", "default_confirmation_title": "Ste si istý?", "ok": "OK" }, + "helper_settings": { + "input_datetime": { + "date": "Dátum", + "datetime": "Dátum a čas", + "has_date": "Dátum", + "has_time": "Čas", + "mode": "Čo chcete zadať", + "time": "Čas" + }, + "input_number": { + "box": "Vstupné pole", + "max": "Maximálna hodnota", + "min": "Minimálna hodnota", + "mode": "Režim zobrazenia", + "slider": "Slider", + "step": "Veľkosť kroku", + "unit_of_measurement": "Meracia jednotka" + }, + "input_select": { + "add": "Pridať", + "add_option": "Pridať možnosť", + "no_options": "Zatiaľ nie sú k dispozícii žiadne možnosti.", + "options": "Možnosti" + }, + "input_text": { + "max": "Maximálna dĺžka", + "min": "Minimálna dĺžka", + "mode": "Režim zobrazenia", + "password": "Heslo", + "pattern": "Vzor regexu na overenie na strane klienta", + "text": "Text" + } + }, "more_info_control": { "person": { "create_zone": "Vytvoriť zónu z aktuálnej polohy" }, "restored": { "confirm_remove_text": "Naozaj chcete odstrániť túto entitu?", + "confirm_remove_title": "Odstrániť entitu?", "not_provided": "Táto entita je momentálne nedostupná a je ojedinelou pre odstránenú, zmenenú alebo nefunkčnú integráciu alebo zariadenie." }, "script": { - "last_action": "Posledná akcia" + "last_action": "Posledná akcia", + "last_triggered": "Naposledy spustené" }, "settings": "Nastavenie entity", "sun": { @@ -645,6 +692,9 @@ }, "updater": { "title": "Pokyny pre aktualizáciu" + }, + "vacuum": { + "status": "Stav" } }, "more_info_settings": { @@ -721,6 +771,7 @@ "caption": "Register oblastí", "create_area": "VYTVORIŤ OBLASŤ", "delete": { + "confirmation_text": "Všetky zariadenia v tejto oblasti nebudú priradené.", "confirmation_title": "Naozaj chcete odstrániť túto oblasť?" }, "description": "Prehľad všetkých oblastí vo vašej domácnosti.", @@ -988,7 +1039,8 @@ "enter_pin_hint": "Ak chcete používať bezpečnostné zariadenia, zadajte kód PIN", "manage_entities": "Spravovať entity", "security_devices": "Zabezpečovacie zariadenia", - "sync_entities": "Synchronizovať entity so službou Google" + "sync_entities": "Synchronizovať entity so službou Google", + "title": "Google Assistant" }, "integrations": "Integrácie", "integrations_introduction": "Integrácia Home Assistant Cloud vám umožňuje pripojiť sa k službám v cloude bez toho, aby ste museli verejne publikovať inštanciu Home Assistant do internetu.", @@ -1021,7 +1073,8 @@ } }, "alexa": { - "banner": "Úprava týchto entít cez toto používateľské rozhranie je zakázaná, pretože ste nakonfigurovali filtre entít v súbore Configuration.yaml." + "banner": "Úprava týchto entít cez toto používateľské rozhranie je zakázaná, pretože ste nakonfigurovali filtre entít v súbore Configuration.yaml.", + "title": "Alexa" }, "caption": "Home Assistant Cloud", "description_features": "Ovládanie mimo domova, integrácia s Alexa a Google Assistant.", @@ -1045,11 +1098,13 @@ "check_your_email": "Pokyny na obnovenie hesla nájdete vo svojom e-maile.", "instructions": "Zadajte svoju e-mailovú adresu a my vám pošleme odkaz na obnovenie hesla.", "send_reset_email": "Poslať resetovací e-mail", + "subtitle": "Zabudli ste heslo", "title": "Zabudnuté heslo" }, "google": { "banner": "Úprava týchto entít cez toto používateľské rozhranie je zakázaná, pretože ste nakonfigurovali filtre entít v súbore Configuration.yaml.", - "not_exposed_entities": "Nezverejnené entity" + "not_exposed_entities": "Nezverejnené entity", + "title": "Google Assistant" }, "login": { "alert_password_change_required": "Pred prihlásením musíte zmeniť svoje heslo.", @@ -1061,6 +1116,7 @@ "password": "Heslo", "sign_in": "Prihlásiť sa", "start_trial": "Začnite bezplatnú 1-mesačnú skúšobnú verziu", + "title": "Prihlásenie do cloudu", "trial_info": "Nie sú potrebné žiadne platobné informácie" }, "register": { @@ -1157,17 +1213,23 @@ } }, "automations": "Automatizácie", + "cant_edit": "Môžete upravovať iba položky, ktoré sú vytvorené v používateľskom rozhraní.", "caption": "Zariadenia", + "confirm_delete": "Naozaj chcete odstrániť toto zariadenie?", "data_table": { + "area": "Oblasť", "battery": "Batérie", "device": "Zariadenie", "integration": "Integrácia", - "manufacturer": "Výrobca" + "manufacturer": "Výrobca", + "no_devices": "Žiadne zariadenia" }, + "delete": "Odstrániť", "description": "Spravovať pripojené zariadenia", "entities": { "add_entities_lovelace": "Pridať do Lovelace" }, + "name": "Názov", "scene": { "create": "Vytvorte scénu pomocou zariadenia", "no_scenes": "Žiadne scény", @@ -1193,6 +1255,7 @@ "enabled_cause": "Zakázané {cause}", "enabled_description": "Zakázané entity nebudú pridané do Home Assistanta", "enabled_label": "Povoliť entitu", + "entity_id": "Entity ID", "name": "Prepísať názov", "note": "Poznámka: toto nemusí zatiaľ fungovať so všetkými integráciami.", "unavailable": "Táto entita nie je momentálne k dispozícii.", @@ -1200,7 +1263,11 @@ }, "picker": { "disable_selected": { - "confirm_text": "Zakázané entity nebudú pridané do Home Assistanta" + "confirm_text": "Zakázané entity nebudú pridané do Home Assistanta", + "confirm_title": "Chcete zakázať {number} entity?" + }, + "enable_selected": { + "confirm_title": "Chcete povoliť {number} entity?" }, "filter": { "show_disabled": "Zobraziť zakázané entity" @@ -1215,7 +1282,9 @@ "introduction": "Home Assistant vedie register všetkých subjektov, ktoré kedy videl a ktoré môžu byť jednoznačne identifikované. Každá z týchto entít bude mať pridelené ID, ktoré bude vyhradené len pre tento subjekt.", "introduction2": "Použite register entít na prepísanie mena, zmenu ID entity alebo odstránenie položky z Home Assistant. Poznámka: Odstránenie položky databázy entít neodstráni entitu. Postupujte podľa nižšie uvedeného odkazu a odstráňte ho z integračnej stránky.", "remove_selected": { - "confirm_text": "Entity je možné odstrániť, iba ak ich integrácia už neposkytuje." + "confirm_partly_title": "Iba {number} vybrané entity môžu byť odstránené.", + "confirm_text": "Entity je možné odstrániť, iba ak ich integrácia už neposkytuje.", + "confirm_title": "Chcete odstrániť {number} entity?" }, "show_disabled": "Zobraziť zakázané entity", "status": { @@ -1226,9 +1295,28 @@ }, "header": "Konfigurovať Home Assistant", "helpers": { + "caption": "Pomocníci", "description": "Prvky, ktoré môžu pomôcť pri vytváraní automatizácií.", "dialog": { + "add_helper": "Pridať pomocníka", + "add_platform": "Pridať {platform}", "create": "Vytvoriť" + }, + "picker": { + "add_helper": "Pridať pomocníka", + "headers": { + "editable": "Editovateľné", + "entity_id": "Entity ID", + "name": "Názov", + "type": "Typ" + } + }, + "types": { + "input_boolean": "Prepínač", + "input_datetime": "Dátum a/alebo čas", + "input_number": "Číslo", + "input_select": "Rozbaľovací zoznam", + "input_text": "Text" } }, "integrations": { @@ -1261,6 +1349,8 @@ "open_site": "Otvoriť webovú stránku" }, "failed_create_area": "Nepodarilo sa vytvoriť oblasť.", + "finish": "Dokončiť", + "loading_first_time": "Počkajte, kým sa inštaluje integrácia", "name_new_area": "Názov novej oblasti?" }, "configure": "Konfigurovať", @@ -1269,7 +1359,10 @@ "discovered": "Objavené", "home_assistant_website": "Home Assistant webová stránka", "ignore": { + "confirm_delete_ignore_title": "Prestať ignorovať {name} ?", "confirm_ignore": "Naozaj nechcete nastaviť túto integráciu? Túto akciu môžete vrátiť späť kliknutím na položku „Zobraziť ignorované integrácie“ v ponuke v pravom hornom rohu.", + "confirm_ignore_title": "Ignorovať objav {name}?", + "hide_ignored": "Skryť ignorované integrácie", "show_ignored": "Zobraziť ignorované integrácie", "stop_ignore": "Zastaviť ignorovanie" }, @@ -1280,20 +1373,79 @@ }, "introduction": "Tu je možné konfigurovať vaše komponenty a Home Assistant. Aktuálne sa z používateľského rozhrania nedá konfigurovať všetko, ale pracujeme na tom.", "lovelace": { + "caption": "Lovelace dashboardy", "dashboards": { + "cant_edit_default": "Štandardný dashboard Lovelace nie je možné upravovať z používateľského rozhrania. Môžete ho skryť nastavením iného dashboardu ako predvoleného nastavenia.", + "cant_edit_yaml": "Dashboardy definované v YAML nie je možné upravovať z používateľského rozhrania. Zmeňte ich v súbore configuration.yaml.", + "caption": "Dashboardy", + "conf_mode": { + "storage": "Ovládané cez UI", + "yaml": "Súbor YAML" + }, "confirm_delete": "Naozaj chcete odstrániť tento dashboard?", + "default_dashboard": "Toto je predvolený dashboard", "detail": { + "create": "Vytvoriť", "delete": "Vymazať", - "update": "Aktualizovať" + "dismiss": "Zavrieť", + "edit_dashboard": "Upraviť dashboard", + "icon": "Ikona", + "new_dashboard": "Pridať nový dashboard", + "remove_default": "Odstrániť ako predvolené na tomto zariadení", + "require_admin": "Len pre správcov", + "set_default": "Nastaviť ako predvolené na tomto zariadení", + "show_sidebar": "Zobraziť v bočnom paneli", + "title": "Názov", + "title_required": "Názov je povinný.", + "update": "Aktualizovať", + "url": "Url", + "url_error_msg": "Adresa URL by mala obsahovať znak - a nemôže obsahovať medzery ani špeciálne znaky, s výnimkou písmen _ a -" }, "picker": { + "add_dashboard": "Pridať dashboard", + "headers": { + "conf_mode": "Metóda konfigurácie", + "default": "Predvolený", + "filename": "Názov súboru", + "require_admin": "Len pre správcov", + "sidebar": "Zobraziť v bočnom paneli", + "title": "Názov" + }, "open": "Otvoriť" } }, + "description": "Nakonfigurujte si svoje Lovelace dashboardy", "resources": { + "cant_edit_yaml": "Používate Lovelace v režime YAML, preto nemôžete spravovať svoje prostriedky cez používateľské rozhranie. Spravujte ich v configuration.yaml.", + "caption": "Prostriedky", + "confirm_delete": "Naozaj chcete odstrániť tento prostriedok?", "detail": { + "create": "Vytvoriť", "delete": "Vymazať", - "update": "Aktualizovať" + "dismiss": "Zavrieť", + "new_resource": "Pridajte nový prostriedok", + "type": "Typ prostriedku", + "update": "Aktualizovať", + "url": "Url", + "url_error_msg": "Adresa URL je povinné pole", + "warning_header": "Buďte opatrní!", + "warning_text": "Pridávanie prostriedkov môže byť nebezpečné, uistite sa, že poznáte zdroj prostriedku a že mu dôverujete. Zlé prostriedky môžu vážne poškodiť váš systém." + }, + "picker": { + "add_resource": "Pridať prostriedok", + "headers": { + "type": "Typ", + "url": "Url" + }, + "no_resources": "Žiadne prostriedky" + }, + "refresh_body": "Ak chcete dokončiť odstránenie, musíte stránku aktualizovať. Chcete ju teraz obnoviť?", + "refresh_header": "Chcete obnoviť?", + "types": { + "css": "Stylesheet", + "html": "HTML (zastarané)", + "js": "JavaScript súbor (zastarané)", + "module": "JavaScript modul" } } }, @@ -1427,16 +1579,25 @@ "description": "Správa používateľov", "editor": { "activate_user": "Aktivovať používateľa", + "active": "Aktívny", "caption": "Zobraziť používateľa", "change_password": "Zmeniť heslo", "confirm_user_deletion": "Naozaj chcete odstrániť {name}?", "deactivate_user": "Deaktivovať používateľa", "delete_user": "Vymazať používateľa", + "enter_new_name": "Zadajte nový názov", + "group": "Skupina", "group_update_failed": "Aktualizácia skupiny zlyhala:", + "id": "ID", + "owner": "Vlastník", "rename_user": "Premenovať používateľa", - "system_generated_users_not_removable": "Nie je možné odstrániť používateľov generovaných systémom." + "system_generated": "Systémom vytvorený", + "system_generated_users_not_removable": "Nie je možné odstrániť používateľov generovaných systémom.", + "unnamed_user": "Nepomenovaný používateľ", + "user_rename_failed": "Premenovanie používateľa zlyhalo:" }, "picker": { + "system_generated": "Systémom vytvorený", "title": "Používatelia" } }, @@ -1482,6 +1643,10 @@ "devices": { "header": "Zigbee Home Automation - Zariadenie" }, + "group_binding": { + "bind_button_help": "Prepojte vybranú skupinu na vybrané zoskupenia zariadení.", + "unbind_button_help": "Odpojte vybratú skupinu z vybratých zoskupení zariadení." + }, "groups": { "create_group": "Zigbee Home Automation - Vytvoriť skupinu", "group-header": "Zigbee Home Automation - Podrobnosti o skupine", @@ -1503,15 +1668,31 @@ "title": "Zigbee Home Automation" }, "zone": { + "add_zone": "Pridať zónu", "caption": "Zóny", "configured_in_yaml": "Zóny vytvorené prostredníctvom configuration.yaml nie je možné upravovať pomocou používateľského rozhrania.", "confirm_delete": "Naozaj chcete odstrániť túto zónu?", + "create_zone": "Vytvoriť zónu", "description": "Spravujte zóny, v ktorých chcete sledovať osoby.", "detail": { + "create": "Vytvoriť", "delete": "Odstrániť", + "icon": "Ikona", + "icon_error_msg": "Ikona by mala byť vo formáte predpona:názov-ikony, napríklad: mdi:home", + "latitude": "Zemepisná šírka", + "longitude": "Zemepisná dĺžka", + "name": "Názov", + "new_zone": "Nová zóna", + "passive": "Pasívne", "passive_note": "Pasívne zóny sú skryté vo frontende a nie sú používané ako umiestnenia pre sledovacie zariadenia. Toto je užitočné, ak chcete používať zóny len pre automatizácie.", + "radius": "Okruh", + "required_error_msg": "Toto pole je povinné", "update": "Aktualizovať" }, + "edit_home_zone": "Okruh domovskej zóny zatiaľ nie je možné upravovať z frontendu. Presunutím značky na mape presuniete domácu zónu.", + "edit_home_zone_narrow": "Okruh domovskej zóny zatiaľ nie je možné upravovať z frontendu. Poloha sa dá zmeniť zo všeobecnej konfigurácie.", + "go_to_core_config": "Prejsť na všeobecnú konfiguráciu?", + "home_zone_core_config": "Umiestnenie vašej domácej zóny je možné upravovať na stránke so všeobecnou konfiguráciou. Okruh domovskej zóny zatiaľ nie je možné upravovať z frontendu. Chcete prejsť na všeobecnú konfiguráciu?", "introduction": "Zóny vám umožňujú vybrať špecifické oblasti na mape. Ak sa osoba nachádza v nejakej zóne, v stavoch sa zobrazí názov konkrétnej zóny. Zóny môžu byť tiež použité ako spúšťač alebo podmienka v rámci automatizácií.", "no_zones_created_yet": "Zdá sa, že ste ešte nevytvorili žiadne zóny." }, @@ -1572,11 +1753,13 @@ "tabs": { "events": { "alert_event_type": "Typ udalosti je povinné pole", + "available_events": "Dostupné udalosti", "count_listeners": " ({count} poslucháčov)", "data": "Údaje o udalosti (YAML, voliteľné)", "description": "Spustite udalosť na zbernicu udalostí.", "documentation": "Dokumentácia udalostí.", "event_fired": "Udalosť {name} sa spustila", + "fire_event": "Odpáliť udalosť", "listen_to_events": "Počúvanie udalostí", "listening_to": "Počúvanie", "notification_event_fired": "Udalosť {type} úspešne spustená!", @@ -1688,6 +1871,9 @@ "no_devices": "Táto stránka vám umožňuje ovládať vaše zariadenia, zdá sa však, že ešte nemáte nastavené žiadne zariadenia. Ak chcete začať, choďte na stránku integrácií.", "title": "Vitajte doma" }, + "entities": { + "never_triggered": "Nikdy nespustené" + }, "picture-elements": { "call_service": "Zavolať službu {name}", "hold": "Držať:", @@ -1720,6 +1906,11 @@ "alarm-panel": { "name": "Ovládací panel alarmu" }, + "conditional": { + "card": "Karta", + "conditions": "Podmienky", + "description": "Karta Podmienka zobrazuje ďalšiu kartu na základe stavu entity" + }, "config": { "optional": "Voliteľné", "required": "Požadované" @@ -1744,13 +1935,18 @@ "icon": "ikona", "icon_height": "Výška ikony", "image": "Cesta k obrázku", + "manual": "Ručne", + "manual_description": "Potrebujete pridať vlastnú kartu, alebo chcete len ručne napísať yaml?", "name": "Názov", + "no_theme": "Žiadna téma", "refresh_interval": "Interval obnovenia", "show_icon": "Zobraziť ikonu?", "show_name": "Zobraziť názov?", "show_state": "Zobraziť stav?", + "state": "Stav", "tap_action": "Akcia pri stlačení", "theme": "Téma", + "title": "Názov", "unit": "Jednotka", "url": "Url" }, @@ -1767,66 +1963,87 @@ "name": "iFrame" }, "light": { + "description": "Karta Svetlo umožňuje zmeniť jas svetla.", "name": "Svetlo" }, "map": { "dark_mode": "Tmavý režim?", "default_zoom": "Predvolený zoom", + "description": "Karta Mapa umožňuje zobraziť entity na mape.", "geo_location_sources": "Zdroje geolokácie", "name": "Mapa", "source": "Zdroj" }, "markdown": { - "content": "Obsah" + "content": "Obsah", + "description": "Karta Markdown sa používa na vykreslenie Markdown.", + "name": "Markdown" }, "media-control": { + "description": "Karta Ovládanie médií sa používa na zobrazenie entít prehrávača médií na rozhraní s ľahko použiteľnými ovládacími prvkami.", "name": "Ovládanie médií" }, "picture-elements": { + "description": "Karta Entita obrázka je jedným z najuniverzálnejších typov kariet. Karty umožňujú umiestňovať ikony alebo text a dokonca aj služby! Na obrázku na základe súradníc.", "name": "Entita obrázka" }, "picture-entity": { + "description": "Karta Entita obrázka zobrazuje entitu vo forme obrázka. Namiesto obrázkov z adresy URL môže zobraziť aj obrázok entít fotoaparátu.", "name": "Entita obrázka" }, "picture-glance": { + "description": "Karta Náhľad obrázka zobrazuje obrázok a stav zodpovedajúcej entity ako ikonu. Subjekty na pravej strane umožňujú prepínacie akcie, iné zobrazujú dialógové okno s ďalšími informáciami.", "name": "Náhľad obrázka" }, "picture": { + "description": "Karta Obrázok vám umožňuje nastaviť obrázok, ktorý je možné použiť na navigáciu vo vašom rozhraní alebo na volanie služby.", "name": "Obrázok" }, + "plant-status": { + "description": "Karta Stav rastlín je určená všetkým nadšeným botanikom.", + "name": "Stav rastlín" + }, "sensor": { + "description": "Karta Senzor poskytuje rýchly prehľad o stave senzorov s voliteľným grafom na vizualizáciu zmien v priebehu času.", "graph_detail": "Detail grafu", "graph_type": "Typ grafu", "name": "Snímač" }, "shopping-list": { + "description": "Karta Nákupný zoznam umožňuje pridávať, upravovať, odškrtávať a vymazávať položky z nákupného zoznamu.", "integration_not_loaded": "Táto karta vyžaduje nastavenie integrácie \"shopping_list\".", "name": "Zoznam nákupov" }, "thermostat": { + "description": "Karta Termostat poskytuje kontrolu nad vašou klimatizačnou jednotkou. Umožní vám zmeniť teplotu a režim entity.", "name": "Termostat" }, "vertical-stack": { + "description": "Karta Zvislé zarovnanie umožňuje zoskupiť viac kariet tak, aby vždy sedeli v rovnakom stĺpci.", "name": "Zvislé zarovnanie" }, "weather-forecast": { + "description": "Karta Predpoveď počasia zobrazuje počasie. Je veľmi užitočné ju zahrnúť do rozhrania, ktoré ľudia zobrazujú na stene.", "name": "Predpoveď počasia" } }, "edit_card": { "add": "Pridať kartu", "delete": "Odstrániť", + "duplicate": "Duplikovať kartu", "edit": "Upraviť", "header": "Konfigurácia karty", "move": "Presunúť", "options": "Viac možností", "pick_card": "Ktorú kartu chcete pridať?", + "pick_card_view_title": "Ktorú kartu chcete pridať do svojho zobrazenia {name} ?", "save": "Uložiť", "show_code_editor": "Zobraziť editor kódu", "show_visual_editor": "Zobraziť vizuálny editor", "toggle_editor": "Prepnúť editor" }, "edit_lovelace": { + "edit_title": "Upraviť názov", "explanation": "Tento názov sa zobrazuje nad všetkými vašimi zobrazeniami v Lovelace.", "header": "Názov vášho Lovelace UI" }, @@ -1835,7 +2052,13 @@ "delete": "Odstrániť zobrazenie", "edit": "Upraviť zobrazenie", "header": "Konfigurácia zobrazenia", - "header_name": "{name} Zobraziť konfiguráciu" + "header_name": "{name} Zobraziť konfiguráciu", + "tab_badges": "Odznaky", + "tab_settings": "Nastavenia", + "tab_visibility": "Viditeľnosť", + "visibility": { + "select_users": "Vyberte, ktorí používatelia môžu vidieť toto zobrazenie v navigácii" + } }, "header": "Upraviť používateľské rozhranie", "menu": { @@ -1856,6 +2079,7 @@ "error_remove": "Nepodarilo sa odstrániť konfiguráciu: {chyby}", "error_save_yaml": "Nepodarilo sa uložiť YAML: {error}", "header": "Upraviť konfiguráciu", + "resources_moved": "Prostriedky by už nemali byť pridané do konfigurácie Lovelace, ale môžu byť pridané v konfiguračnom paneli Lovelace.", "save": "Uložiť", "saved": "Uložené", "unsaved_changes": "Neuložené zmeny" @@ -1866,7 +2090,10 @@ "header": "Prevziať kontrolu rozhrania Lovelace", "para": "Štandardne bude Home Assistant udržiavať vaše používateľské rozhranie a aktualizovať ho, keď budú k dispozícii nové entity alebo komponenty rozhrania Lovelace. Ak prevezmete kontrolu, už za vás nebudeme automaticky robiť zmeny.", "para_sure": "Skutočne chcete prevziať kontrolu vášho používateľského rozhrania?", - "save": "Prevziať kontrolu" + "save": "Prevziať kontrolu", + "yaml_config": "Na začiatok vám pomôžeme so súčasnou konfiguráciou tohto dashboardu:", + "yaml_control": "Ak chcete prevziať kontrolu v režime YAML, vytvorte súbor YAML s názvom, ktorý ste uviedli vo svojej konfigurácii pre tento dashboard alebo predvolený súbor 'ui-lovelace.yaml'.", + "yaml_mode": "Používate režim YAML, čo znamená, že nemôžete zmeniť konfiguráciu Lovelace z používateľského rozhrania. Ak chcete zmeniť Lovelace z UI, odstráňte 'mode: yaml' z vašej konfigurácie Lovelace v 'configuration.yaml.'" }, "suggest_card": { "add": "Pridať do používateľského rozhrania Lovelace", @@ -1875,7 +2102,8 @@ "view": { "panel_mode": { "description": "Takto bude prvá karta v plnej šírke; ostatné karty v tomto zobrazení sa nebudú vykresľovať.", - "title": "Režim panelu?" + "title": "Režim panelu?", + "warning_multiple_cards": "Toto zobrazenie obsahuje viac ako jednu kartu, ale na panelovom zobrazení môže byť iba jedna karta." } } }, @@ -1883,15 +2111,31 @@ "configure_ui": "Konfigurovať používateľské rozhranie", "help": "Pomoc", "refresh": "Obnoviť", + "reload_resources": "Znovu načítať prostriedky", "unused_entities": "Nepoužité entity" }, "reload_lovelace": "Znovu načítať Lovelace", + "reload_resources": { + "refresh_body": "Ak chcete dokončiť načítanie, musíte stránku obnoviť. Chcete ju teraz obnoviť?", + "refresh_header": "Chcete obnoviť?" + }, + "unused_entities": { + "available_entities": "Toto sú entity, ktoré máte k dispozícii, ale ešte nie sú vo vašom používateľskom rozhraní Lovelace.", + "domain": "Doména", + "entity": "Entita", + "entity_id": "Entity ID", + "last_changed": "Posledná zmena", + "select_to_add": "Vyberte entity, ktoré chcete pridať na kartu, a potom kliknite na tlačidlo Pridať kartu.", + "title": "Nepoužité entity" + }, "views": { "confirm_delete": "Naozaj chcete odstrániť toto zobrazenie?", + "confirm_delete_existing_cards": "Odstránením tohto zobrazenia sa odstránia aj karty", "confirm_delete_existing_cards_text": "Naozaj chcete odstrániť zobrazenie '{name}'? Toto zobrazenie obsahuje {number} kariet, ktoré budú odstránené. Túto akciu nie je možné vrátiť späť.", "confirm_delete_text": "Naozaj chcete odstrániť zobrazenie '{name}'?" }, "warning": { + "attribute_not_found": "Atribút {attribute} nie je k dispozícii v: {entity}", "entity_non_numeric": "Entita je nečíselná: {entity}", "entity_not_found": "Entita nie je k dispozícií {entity}" } @@ -2076,6 +2320,7 @@ "profile": { "advanced_mode": { "description": "Home Asistent v predvolenom nastavení skryje rozšírené funkcie a možnosti. Začiarknutím tohto prepínača môžete tieto funkcie sprístupniť. Toto nastavenie je špecifické pre konkrétneho používateľa a nemá vplyv na ostatných používateľov používajúcich Home Assistant.", + "link_promo": "Viac informácií", "title": "Rozšírený režim" }, "change_password": { @@ -2099,6 +2344,7 @@ }, "logout": "Odhlásiť sa", "logout_text": "Naozaj sa chcete odhlásiť?", + "logout_title": "Odhlásiť sa?", "long_lived_access_tokens": { "confirm_delete": "Naozaj chcete odstrániť prístupový token pre {name}?", "create": "Vytvoriť Token", diff --git a/translations/sl.json b/translations/sl.json index 2970a9c56e..4c37ee4803 100644 --- a/translations/sl.json +++ b/translations/sl.json @@ -394,9 +394,9 @@ }, "ui": { "auth_store": { - "ask": "Ali želite shraniti to prijavo?", - "confirm": "Shrani prijavo", - "decline": "Ne hvala" + "ask": "Ali želite ostati prijavljeni?", + "confirm": "Da", + "decline": "Ne" }, "card": { "alarm_control_panel": { @@ -537,9 +537,11 @@ "common": { "cancel": "Prekliči", "close": "Zapri", + "delete": "Izbriši", "loading": "Nalaganje", "no": "Ne", "save": "Shrani", + "successfully_deleted": "Uspešno odstranjeno", "successfully_saved": "Shranjeno", "yes": "Da" }, @@ -633,7 +635,7 @@ "unavailable": "Ta entiteta trenutno ni na voljo.", "update": "POSODOBITEV" }, - "no_unique_id": "Ta entiteta nima enoličnega ID-ja, zato nastavitev ni mogoče upravljati iz uporabniškega vmesnika.", + "no_unique_id": "Ta entiteta nima edinstvenega ID-ja, zato njenih nastavitev ni mogoče upravljati iz uporabniškega vmesnika.", "related": "Povezano", "settings": "Nastavitve" }, @@ -651,8 +653,12 @@ "name": "Ime" }, "input_datetime": { + "date": "Datum", + "datetime": "Datum in čas", "has_date": "Datum", - "has_time": "Čas" + "has_time": "Čas", + "mode": "Kaj želite vnesti?", + "time": "Čas" }, "input_number": { "box": "Vnosno polje", @@ -679,7 +685,9 @@ }, "not_editable": "Ni mogoče urejati", "not_editable_text": "Te entitete ni mogoče spremeniti iz uporabniškega vmesnika, ker je določena v config.yaml.", - "required_error_msg": "To polje je obvezno" + "platform_not_loaded": "Integracija {platform} ni naložena. Dodajte svojo konfiguracijo tako, da dodate »default_config: 'ali' {platform}: '.", + "required_error_msg": "To polje je obvezno", + "yaml_not_editable": "Nastavitev te entitete ni mogoče urejati iz uporabniškega vmesnika. Od tam se lahko konfigurirajo samo entitete, nastavljene iz uporabniškega vmesnika." }, "more_info_control": { "dismiss": "Opusti pogovorno okno", @@ -804,6 +812,10 @@ "areas": { "caption": "Območja", "create_area": "USTVARITE OBMOČJE", + "delete": { + "confirmation_text": "Vse naprave na tem območju ne bodo dodeljene.", + "confirmation_title": "Ali ste prepričani, da želite izbrisati to območje?" + }, "description": "Pregled vseh območij v vašem domu.", "editor": { "create": "USTVARITE", @@ -828,7 +840,7 @@ "actions": { "add": "Dodaj akcijo", "delete": "Izbriši", - "delete_confirm": "Ste prepričani, da želite izbrisati?", + "delete_confirm": "Ali ste prepričani, da želite to izbrisati?", "duplicate": "Podvoji", "header": "Akcije", "introduction": "Akcije so, kaj bo storil Home Assistant, ko se sproži avtomatizacija. \n\n [Več o dejavnostih.] (Https://home-assistant.io/docs/automation/action/)", @@ -873,7 +885,7 @@ "conditions": { "add": "Dodaj pogoj", "delete": "Izbriši", - "delete_confirm": "Ste prepričani, da želite izbrisati?", + "delete_confirm": "Ali ste prepričani, da želite to izbrisati?", "duplicate": "Podvoji", "header": "Pogoji", "introduction": "Pogoji so izbirni in bodo preprečili nadaljnjo izvedbo, razen če so izpolnjeni vsi pogoji.", @@ -946,7 +958,7 @@ "triggers": { "add": "Dodaj sprožilec", "delete": "Izbriši", - "delete_confirm": "Ste prepričani, da želite izbrisati?", + "delete_confirm": "Ali ste prepričani, da želite to izbrisati?", "duplicate": "Podvoji", "header": "Sprožilci", "introduction": "Sprožilci so tisto, kar začne postopek obdelave avtomatizacije pravila. Za isto pravilo je mogoče določiti več sprožilcev. Ko se začne sprožilec, bo Home Assistant potrdil pogoje, če so, in poklical dejanje. \n\n [Več o sprožilcih.] (Https://home-assistant.io/docs/automation/trigger/)", @@ -1300,6 +1312,7 @@ "automations": "Avtomatizacije", "cant_edit": "Urejate lahko samo elemente, ki so ustvarjeni v uporabniškem vmesniku.", "caption": "Naprave", + "confirm_delete": "Ali ste prepričani, da želite odstraniti to napravo?", "confirm_rename_entity_ids": "Ali želite preimenovati tudi ID entitete vaših entitet?", "data_table": { "area": "Območje", @@ -1307,8 +1320,10 @@ "device": "Naprava", "integration": "Integracija", "manufacturer": "Proizvajalec", - "model": "Model" + "model": "Model", + "no_devices": "Brez naprav" }, + "delete": "Izbriši", "description": "Upravljajte povezane naprave", "details": "Tu so vse podrobnosti vaše naprave.", "device_not_found": "Naprave ni bilo mogoče najti", @@ -1382,7 +1397,9 @@ "introduction2": "Z registrom entitet lahko nadomestite ime, spremenite ID entitete ali odstranite vnos iz programa Home Assistant.", "remove_selected": { "button": "Odstrani izbrane", - "confirm_text": "Entitete je mogoče odstraniti le, če jih integracija več ne zagotavlja.", + "confirm_partly_text": "Lahko odstranite le {removable} izbranih {selected} entitet. Entitete je mogoče odstraniti le, če integracija ne zagotavlja več entitet. Včasih morate znova zagnati Home Assistant, preden lahko odstranite entitete odstranjene integracije. Ali ste prepričani, da želite odstraniti odstranljive entitete?", + "confirm_partly_title": "Odstranjene so lahko le izbrane {number} entitete.", + "confirm_text": "Če vsebujejo te entitete, bi jih morali odstraniti iz vašega Lovelace config-a in avtomatizacije.", "confirm_title": "Ali želite odstraniti {number} entiteto-i/e?" }, "selected": "{številka} izbrana/ih", @@ -1391,6 +1408,7 @@ "disabled": "Onemogočeno", "ok": "V redu", "readonly": "Samo za branje", + "restored": "Obnovljeno", "unavailable": "Ni na voljo" }, "unavailable": "(ni na voljo)" @@ -1409,6 +1427,7 @@ "add_helper": "Dodajte pomočnika", "headers": { "editable": "Za urejanje", + "entity_id": "ID subjekta", "name": "Ime", "type": "Vrsta" } @@ -1454,13 +1473,14 @@ }, "failed_create_area": "Območja ni bilo mogoče ustvariti.", "finish": "Dokončaj", + "loading_first_time": "Prosimo, počakajte, da se integracija namesti", "name_new_area": "Ime novega območja?", "not_all_required_fields": "Vsa zahtevana polja niso izpolnjena.", "submit": "Pošlji" }, "configure": "Konfiguriraj", "configured": "Konfigurirano", - "description": "Upravljanje in nastavitev integracij", + "description": "Upravljajte in postavljajte integracije", "details": "Podrobnosti integracije", "discovered": "Odkrito", "home_assistant_website": "spletne strani Home Assistant", @@ -1485,37 +1505,43 @@ "lovelace": { "caption": "Nadzorne plošče Lovelace", "dashboards": { - "cant_edit_yaml": "Nadzorne plošče, definirane v YAML-u, ni mogoče urejati iz uporabniškega vmesnika. Spremenite jih v config.yaml.", + "cant_edit_default": "Standardne nadzorne plošče Lovelace ni mogoče urejati iz uporabniškega vmesnika. Lahko jo skrijete tako, da kot privzeto nastavite drugo nadzorno ploščo.", + "cant_edit_yaml": "Nadzorne plošče, definirane v YAML, ni mogoče urejati iz uporabniškega vmesnika. Spremenite jih v config.yaml.", "caption": "Nadzorne plošče", "conf_mode": { "storage": "Pod nad UI-ja", "yaml": "Datoteka YAML" }, "confirm_delete": "Ali ste prepričani, da želite izbrisati to nadzorno ploščo?", + "default_dashboard": "To je privzeta nadzorna plošča", "detail": { "create": "Ustvari", "delete": "Izbriši", "dismiss": "Zapri", "edit_dashboard": "Urejanje nadzorne plošče", - "icon": "Ikona stranske vrstice", + "icon": "Ikona", "new_dashboard": "Dodajte novo nadzorno ploščo", + "remove_default": "Odstrani kot privzeto v tej napravi", "require_admin": "Samo skrbnik", + "set_default": "Nastavi kot privzeto na tej napravi", "show_sidebar": "Pokaži v stranski vrstici", - "title": "Naslov stranske vrstice", + "title": "Naslov", + "title_required": "Naslov je obvezen.", "update": "Posodobi", "url": "URL", - "url_error_msg": "URL ne sme vsebovati presledkov ali posebnih znakov, razen _ in -" + "url_error_msg": "URL mora vsebovati - in ne sme vsebovati presledkov ali posebnih znakov, razen za _ in -" }, "picker": { "add_dashboard": "Dodajte nadzorno ploščo", "headers": { "conf_mode": "Način konfiguracije", + "default": "Privzeto", "filename": "Ime datoteke", "require_admin": "Samo skrbnik", "sidebar": "Pokaži v stranski vrstici", "title": "Naslov" }, - "open": "Odprite nadzorno ploščo" + "open": "Odpri" } }, "description": "Konfigurirajte nadzorne plošče Lovelace", @@ -1540,7 +1566,8 @@ "headers": { "type": "Vrsta", "url": "URL" - } + }, + "no_resources": "Brez virov" }, "refresh_body": "Če želite dokončati odstranitev, morate osvežiti stran, ali jo želite zdaj osvežiti?", "refresh_header": "Ali želite osvežiti?", @@ -2030,7 +2057,7 @@ "add_entities": { "generated_unsupported": "To funkcijo lahko uporabite le, ko ste prevzeli nadzor nad uporabniškim vmesnikom Lovelace.", "saving_failed": "Shranjevanje konfiguracije uporabniškega vmesnika Lovelace ni uspelo.", - "yaml_unsupported": "Te funkcije ne morete uporabljati pri uporabi uporabniškega vmesnika Lovelace v načinu YAML." + "yaml_unsupported": "Te funkcije ne morete uporabljati, če uporabniški vmesnik Lovelace uporabljate v načinu YAML." }, "cards": { "confirm_delete": "Ali ste prepričani, da želite izbrisati to kartico?", @@ -2073,19 +2100,30 @@ }, "alarm-panel": { "available_states": "Stanja na voljo", + "description": "Kartica alarm panel vam omogoča, da vklopite in razorožite vaše integracije alarmov.", "name": "Alarmna plošča" }, "button": { + "description": "Gumbna kartica vam omogoča, da dodate gumbe za opravljanje nalog.", "name": "Gumb" }, "conditional": { - "name": "Pogojno" + "card": "Kartica", + "change_type": "Spremeni tip", + "condition_explanation": "Kartica bo prikazana, ko so izpolnjeni VSI pogoji spodaj.", + "conditions": "Pogoji", + "current_state": "trenutno", + "description": "Pogojna kartica prikazuje drugo kartico, ki temelji na stanjih entitet.", + "name": "Pogojno", + "state_equal": "Stanje je enako", + "state_not_equal": "Stanje ni enako" }, "config": { "optional": "Neobvezno", "required": "Obvezno" }, "entities": { + "description": "Kartica entitet je najpogostejša vrsta kartice. Predmete združuje v sezname.", "name": "Subjekti", "show_header_toggle": "Pokaži preklop glave?", "toggle": "Preklopi entitete." @@ -2094,9 +2132,11 @@ "name": "Subjekt gumba" }, "entity-filter": { + "description": "Kartica filter entitet vam omogoča, da določite seznam entitet, ki jih želite slediti samo, če so v določenem stanju.", "name": "Filter entitet" }, "gauge": { + "description": "Gauge kartica je osnovna kartica, ki omogoča vizualno videnje podatkov senzorjev.", "name": "Merilnik", "severity": { "define": "Določi resnost?", @@ -2116,13 +2156,17 @@ "icon": "Ikona", "icon_height": "Višina ikone", "image": "Pot slike", + "manual": "Ročno", + "manual_description": "Morate dodati kartico po meri ali samo želite ročno napisati yaml?", "maximum": "Največ", "minimum": "Najmanj", "name": "Ime", + "no_theme": "Brez teme", "refresh_interval": "Interval osveževanja", "show_icon": "Prikaži ikono?", "show_name": "Prikaži ime?", "show_state": "Prikaži stanje?", + "state": "Stanje", "tap_action": "Dejanje dotika", "theme": "Tema", "title": "Naslov", @@ -2131,71 +2175,90 @@ }, "glance": { "columns": "Stolpci", + "description": "Kartica Glance je uporabna za združevanje več senzorjev v kompaktnem pregledu.", "name": "Pregled" }, "history-graph": { + "description": "Kartica Zgodovinski grafikon omogoča prikaz grafa za vsako od naštetih entitet.", "name": "Graf zgodovine" }, "horizontal-stack": { + "description": "Kartica Horizontal stack vam omogoča, da skupaj zložite več kart, tako da vedno stojijo drug poleg drugega v razmaku enega stolpca.", "name": "Vodoravna skladnica" }, "iframe": { - "name": "iFrame" + "description": "Kartica webpage vam omogoča, da svojo najljubšo spletno stran vdelate Home Assistant.", + "name": "Spletna stran" }, "light": { + "description": "Kartica Light omogoča spreminjanje svetlosti luči.", "name": "Luči" }, "map": { "dark_mode": "Temni način?", "default_zoom": "Privzeta povečava", + "description": "Kartica Map omogoča prikazovanje entitet na zemljevidu.", "geo_location_sources": "Geolokacijski viri", "name": "Zemljevid", "source": "Vir" }, "markdown": { "content": "Vsebina", + "description": "Kartica Markdown se uporablja za upodabljanje označb.", "name": "Markdown" }, "media-control": { + "description": "Kartica Media Control se uporablja za prikazovanje subjektov predvajalnikov v vmesniku z enostavnimi kontrolami.", "name": "Nadzor predvajalnika" }, "picture-elements": { + "description": "Kartica Picture Elements je ena najbolj vsestranskih vrst kartic. Kartica omogoča pozicioniranje ikon ali besedila in celo storitev! Na sliki, ki temelji na koordinatah.", "name": "Slikovni elementi" }, "picture-entity": { + "description": "Kartica Picture entity prikazuje subjekt v obliki slike. Namesto slik z URL-ja lahko prikaže tudi sliko subjektov kamer.", "name": "Subjekt slike" }, "picture-glance": { + "description": "Kartica Picture Glance prikazuje sliko in ustrezna stanja entitete kot ikono. Subjekti na desni strani omogočajo preklopna dejanja, drugi pa prikazujejo pogovorno okno z več informacijami.", "name": "Pogled slike" }, "picture": { + "description": "Picture card omogoča nastavitev slike za navigacijo do različnih poti v vašem vmesniku ali za klicanje storitve.", "name": "Slika" }, "plant-status": { + "description": "Kartica stanje rastlin je za vse botanike tam zunaj.", "name": "Stanje rastline" }, "sensor": { + "description": "Kartica Sensor vam omogoča hiter pregled stanja vaših senzorjev z izbirnim grafom, s katerim lahko prikažete spremembe skozi čas.", "graph_detail": "Podrobnosti grafa", "graph_type": "Vrsta grafikona", "name": "Senzor" }, "shopping-list": { + "description": "Kartica nakupovalni seznam omogoča dodajanje, urejanje in brisanje elementov s seznama nakupov.", "integration_not_loaded": "Ta kartica zahteva nastavitev integracije `shopping_list`.", "name": "Nakupovalni seznam" }, "thermostat": { + "description": "Kartica Termostat omogoča nadzor nad vašo klimatsko enoto. Omogoča vam spreminjanje temperature in načina dela.", "name": "Termostat" }, "vertical-stack": { + "description": "Kartica Vertical Stack vam omogoča, da združite več kartic, tako da vedno sedijo v istem stolpcu.", "name": "Navpična skladnica" }, "weather-forecast": { + "description": "Kartica Weather Forecast prikazuje vreme. Zelo koristno za vključiti na vmesnike, ki jih ljudje prikažejo na steni.", "name": "Vremenska napoved" } }, "edit_card": { "add": "Dodaj kartico", "delete": "Izbriši kartico", + "duplicate": "Podvoji kartico", "edit": "Uredi", "header": "Konfiguracija kartice", "move": "Premakni v pogled", @@ -2221,7 +2284,11 @@ "move_left": "Premakni pogled levo", "move_right": "Premakni pogled desno", "tab_badges": "Značke", - "tab_settings": "Nastavitve" + "tab_settings": "Nastavitve", + "tab_visibility": "Vidljivost", + "visibility": { + "select_users": "Izberite, kateri uporabniki bi morali videti ta pogled v navigaciji" + } }, "header": "Uredi UI", "menu": { @@ -2258,7 +2325,7 @@ "save": "Prevzemite nadzor", "yaml_config": "Za pomoč pri zagonu je tukaj trenutna konfiguracija te nadzorne plošče:", "yaml_control": "Če želite prevzeti nadzor v načinu YAML, ustvarite datoteko YAML z imenom, ki ste ga določili v konfiguraciji za to nadzorno ploščo, ali privzeto 'ui-lovelace.yaml'.", - "yaml_mode": "Uporabljate način YAML, kar pomeni, da ne morete spremeniti konfiguracijo Lovelace iz uporabniškega vmesnika. Če želite spremenjati Lovelace iz uporabniškega vmesnika, morate iz konfiguracije 'config.yaml' odstraniti 'mode: yaml'." + "yaml_mode": "Uporabljate način YAML, kar pomeni, da ne morete spremeniti konfiguracije Lovelace iz uporabniškega vmesnika. Če želite spremeniti Lovelace iz uporabniškega vmesnika, iz konfiguracije Lovelace v 'config.yaml' odstranite 'mode: yaml'." }, "suggest_card": { "add": "Dodaj v uporabniški vmesnik Lovelace", @@ -2268,7 +2335,8 @@ "view": { "panel_mode": { "description": "To prikaže prvo kartico v polni širini, ostale ne bodo prikazane.", - "title": "Način panel?" + "title": "Način panel?", + "warning_multiple_cards": "Ta pogled vsebuje več kartic, na plošči je lahko prikazana največ ena kartica." } } }, @@ -2278,9 +2346,14 @@ "exit_edit_mode": "Zapustite način urejanja iz uporabniškega vmesnika", "help": "Pomoč", "refresh": "Osveži", + "reload_resources": "Ponovno naloži vire", "unused_entities": "Neuporabljene entitete" }, "reload_lovelace": "Ponovno naloži uporabniški vmesnik", + "reload_resources": { + "refresh_body": "Če želite dokončati ponovno nalaganje, morate osvežiti stran, ali jo želite zdaj osvežiti?", + "refresh_header": "Ali želite osvežiti?" + }, "unused_entities": { "available_entities": "To so entitete, ki so vam na voljo, vendar še niso v uporabniškem vmesniku Lovelace.", "domain": "Domena", @@ -2291,10 +2364,14 @@ "title": "Neuporabljene entitete" }, "views": { - "confirm_delete": "Ali ste prepričani, da želite izbrisati ta pogled?", + "confirm_delete": "Želite izbrisati pogled?", + "confirm_delete_existing_cards": "Če izbrišete ta pogled, boste odstranili tudi kartice", + "confirm_delete_existing_cards_text": "Ali ste prepričani, da želite izbrisati svoj '{name}' pogled? Pogled vsebuje {number} kartice, ki bodo izbrisane. Tega ukrepa ni mogoče razveljaviti.", + "confirm_delete_text": "Ali ste prepričani, da želite izbrisati pogled '{name}' ?", "existing_cards": "Ne morete izbrisati pogleda, v katerem so kartice. Najprej jih odstranite." }, "warning": { + "attribute_not_found": "Atribut {attribute} ni na voljo v: {entity}", "entity_non_numeric": "Entiteta je neštevilska: {entity}", "entity_not_found": "Entiteta ni na voljo: {entity}" } diff --git a/translations/th.json b/translations/th.json index c2c4b3b430..60347c9b37 100644 --- a/translations/th.json +++ b/translations/th.json @@ -85,6 +85,9 @@ }, "preset_mode": { "activity": "กิจกรรม", + "away": "ไม่อยู่", + "boost": "เพิ่ม", + "comfort": "คอม ฟอร์ท", "eco": "ประหยัด", "home": "บ้าน", "none": "ไม่มี", @@ -237,6 +240,7 @@ "fan_only": "เฉพาะพัดลม", "gas": "แก๊ส", "heat": "ร้อน", + "heat_cool": "ร้อน/เย็น", "heat_pump": "ปั๊มความร้อน", "high_demand": "ความต้องการสูง", "idle": "ไม่ได้ใช้งาน", @@ -450,6 +454,14 @@ "script": { "execute": "ปฏิบัติ" }, + "timer": { + "actions": { + "cancel": "ยกเลิก", + "finish": "เสร็จสิ้น", + "pause": "หยุดชั่วคราว", + "start": "เริ่มต้น" + } + }, "vacuum": { "actions": { "resume_cleaning": "ทำความสะอาดต่อไป", @@ -544,6 +556,15 @@ "entity_id": "รหัสประจำเอนทิตี", "name": "ชื่อที่สำหรับแทนที่ค่าเดิม", "save": "บันทึก" + }, + "zha_device_info": { + "manuf": "โดย {manufacturer}", + "no_area": "ไม่มีห้อง", + "power_source": "แหล่งพลังงาน", + "services": { + "reconfigure": "กำหนดค่าอุปกรณ์ ZHA อีกครั้ง (เพื่อรักษาอุปกรณ์) ใช้สิ่งนี้หากคุณมีปัญหากับอุปกรณ์ หากอุปกรณ์ดังกล่าวเป็นอุปกรณ์ที่ใช้พลังงานจากแบตเตอรี่โปรดตรวจสอบให้แน่ใจว่าอุปกรณ์นั้นเปิดอยู่และยอมรับคำสั่งเมื่อคุณใช้บริการ" + }, + "unknown": "ไม่ทราบสถานะ" } }, "duration": { @@ -613,6 +634,9 @@ "delay": "หน่วงเวลา", "label": "หน่วงเวลา" }, + "device_id": { + "label": "อุปกรณ์" + }, "event": { "event": "การกระทำ", "label": "กระทำเหตุการณ์", @@ -641,12 +665,24 @@ "learn_more": "เรียนรู้เพิ่มเติมเกี่ยวกับเงื่อนไข", "type_select": "ประเภทเงื่อนไข", "type": { + "and": { + "label": "และ" + }, + "device": { + "extra_fields": { + "above": "เหนือกว่า", + "below": "ต่ำกว่า" + } + }, "numeric_state": { "above": "เหนือหัว", "below": "ต่ำกว่า", "label": "สถานะตัวเลข", "value_template": "ค่าของรูปแบบ (ปล่อยว่างได้)" }, + "or": { + "label": "หรือ" + }, "state": { "label": "สถานะ", "state": "สถานะ" @@ -678,6 +714,9 @@ "unsupported_condition": "ไม่รองรับเงื่อนไข: {condition}" }, "default_name": "ระบบอัตโนมัติใหม่", + "description": { + "label": "รายละเอียด" + }, "introduction": "ใช้ระบบอัตโนมัติเพื่อทำให้บ้านของคุณมีชีวิตชีวา", "load_error_not_editable": "ระบบอัตโนมัติที่อยู่ในไฟล์ Automations.yaml เท่านั้นที่สามารถแก้ไขได้", "load_error_unknown": "เกิดข้อผิดพลาดในการโหลดระบบอัตโนมัติ ({err_no})", @@ -692,6 +731,13 @@ "learn_more": "เรียนรู้เพิ่มเติมเกี่ยวกับ Trigger", "type_select": "ประเภททริกเกอร์", "type": { + "device": { + "extra_fields": { + "above": "เหนือกว่า", + "below": "ต่ำกว่า" + }, + "label": "อุปกรณ์" + }, "event": { "event_data": "ข้อมูลเหตุการณ์", "event_type": "ชนิดเหตุการณ์", @@ -779,7 +825,19 @@ "caption": "Home Assistant Cloud", "description_features": "ควบคุมการทำงานเมื่อออกจากบ้านร่วมกับ Alexa และ Google Assistant", "description_login": "ลงชื่อเข้าใช้เป็น {email}", - "description_not_login": "ยังไม่ได้เข้าสู่ระบบ" + "description_not_login": "ยังไม่ได้เข้าสู่ระบบ", + "forgot_password": { + "email": "อีเมล์", + "email_error_msg": "อีเมลไม่ถูกต้อง", + "subtitle": "ลืมรหัสผ่าน", + "title": "ลืมรหัสผ่าน" + }, + "login": { + "email_error_msg": "อีเมลไม่ถูกต้อง", + "forgot_password": "ลืมรหัสผ่าน?", + "password": "รหัสผ่าน", + "password_error_msg": "รหัสผ่านมีอย่างน้อย 8 ตัวอักษร" + } }, "core": { "caption": "ทั่วไป", @@ -837,6 +895,9 @@ "introduction": "ปรับแต่งคุณลักษณะของเอนทิตี้แต่ละตัว เมื่อมีการเพิ่มหรือแก้ไขจะมีผลทันที หากลบคุณลักษณะจะเห็นผลต่อเมื่อเอนทิตี้นั้นได้รับการอัพเดท" } }, + "devices": { + "caption": "อุปกรณ์" + }, "entities": { "caption": "เอนทิตีรีจิสทรี", "description": "ภาพรวมของเอนทิตีทั้งหมดที่รู้จัก", @@ -896,22 +957,31 @@ }, "script": { "caption": "สคริปต์", - "description": "สร้างและแก้ไขสคริปต์" + "description": "สร้างและแก้ไขสคริปต์", + "picker": { + "add_script": "เพิ่มสคริปต์" + } }, "server_control": { + "caption": "การควบคุมเซิร์ฟเวอร์", "section": { "reloading": { "core": "โหลดส่วนกลางใหม่", "group": "โหลดกลุ่มใหม่", + "heading": "โหลดการกำหนดค่า YAML อีกครั้ง", "script": "โหลดสคริปต์อีกครั้ง" }, "server_management": { + "confirm_stop": "คุณแน่ใจหรือว่าต้องการหยุดการทำงานของ Home Assistant", "heading": "การจัดการเซิร์ฟเวอร์", "restart": "เริ่มต้นใหม่", "stop": "หยุด" }, "validation": { - "check_config": "ตรวจสอบการกำหนดค่า" + "check_config": "ตรวจสอบการกำหนดค่า", + "heading": "ตรวจสอบการกำหนดค่า", + "invalid": "การกำหนดค่าไม่ถูกต้อง", + "valid": "การกำหนดค่าถูกต้อง!" } } }, @@ -959,8 +1029,10 @@ "zwave": { "caption": "Z-Wave", "common": { + "index": "ดัชนี", "unknown": "ไม่ทราบ", - "value": "ค่า" + "value": "ค่า", + "wakeup_interval": "ช่วงเวลาการปลุก" }, "description": "จัดการเครือข่าย Z-Wave", "network_management": { @@ -971,8 +1043,11 @@ "network_stopped": "หยุดเครือข่าย Z-Wave" }, "node_config": { + "false": "เท็จ", "seconds": "วินาที", - "set_config_parameter": "ตั้งค่าพารามิเตอร์การกำหนดค่า" + "set_config_parameter": "ตั้งค่าพารามิเตอร์การกำหนดค่า", + "set_wakeup": "ตั้งค่าช่วงเวลาการปลุก", + "true": "จริง" } } }, @@ -1019,7 +1094,8 @@ "more_info": "แสดงข้อมูลเพิ่มเติม: {name}", "navigate_to": "นำทางไปยัง {location}", "tap": "แตะ:", - "toggle": "สลับ {name}" + "toggle": "สลับ {name}", + "url": "เปิดหน้าต่างเพื่อไปยัง {url_path}" }, "shopping-list": { "add_item": "เพิ่มรายการ", @@ -1033,6 +1109,9 @@ }, "editor": { "card": { + "config": { + "optional": "ตัวเลือก" + }, "gauge": { "severity": { "green": "เขียว", @@ -1046,6 +1125,11 @@ "image": "เส้นทางของภาพ", "maximum": "ขีดสุด", "minimum": "ขั้นต่ำ" + }, + "map": { + "dark_mode": "โหมดมืด?", + "default_zoom": "ค่าซูมเริ่มต้น", + "source": "แหล่งที่มา" } }, "edit_card": { diff --git a/translations/tr.json b/translations/tr.json index 5dff3fc503..30bfec4b73 100644 --- a/translations/tr.json +++ b/translations/tr.json @@ -535,9 +535,11 @@ "common": { "cancel": "İptal", "close": "Kapat", + "delete": "Sil", "loading": "Yükleniyor", "no": "Hayır", "save": "Kaydet", + "successfully_deleted": "Başarıyla silindi", "successfully_saved": "Başarıyla kaydedildi", "yes": "Evet" }, @@ -623,6 +625,7 @@ "enabled_description": "Devre dışı bırakılan varlıklar Home Assistant'a eklenmeyecek.", "enabled_label": "Varlığı etkinleştir", "entity_id": "Varlık kimliği", + "icon": "Simge geçersiz kılma", "name": "Ad Geçersiz Kılma", "note": "Not: bu henüz tüm entegrasyonlarla çalışmayabilir.", "unavailable": "Bu varlık şu anda kullanılamıyor.", @@ -633,6 +636,7 @@ }, "generic": { "cancel": "İptal", + "close": "kapat", "default_confirmation_title": "Emin misin?", "ok": "Tamam" }, @@ -643,8 +647,12 @@ "name": "Ad" }, "input_datetime": { + "date": "Tarih", + "datetime": "Tarih ve zaman", "has_date": "Tarih", - "has_time": "Zaman" + "has_time": "Zaman", + "mode": "Ne girmek istiyorsunuz", + "time": "Zaman" }, "input_number": { "box": "Giriş alanı", @@ -655,7 +663,16 @@ "step": "Kaydırıcının adım boyutu", "unit_of_measurement": "Ölçü birimi" }, + "input_select": { + "add": "Ekle", + "add_option": "Seçenek ekle", + "no_options": "Henüz bir seçenek yok.", + "options": "Seçenekler" + }, "input_text": { + "max": "Maksimum uzunluk", + "min": "Minimum uzunluk", + "mode": "Görüntü modu", "password": "Şifre", "text": "Metin" }, @@ -1039,6 +1056,7 @@ "enable": "Etkinleştir", "enable_ha_skill": "Home Assistant Alexa yeteneğini etkinleştir", "enable_state_reporting": "Durum Raporlamasını Etkinleştir", + "info": "Home Assistant Cloud için Alexa entegrasyonu ile, tüm Home Assistant cihazlarınızı herhangi bir Alexa özellikli cihaz üzerinden kontrol edebilirsiniz.", "info_state_reporting": "Durum raporlamayı etkinleştirirseniz, Home Assistant sergilenmis varlıkların tüm durum değişikliklerini Amazon'a gönderir. Bu, Alexa uygulamasında her zaman en son durumları görmenizi ve rutin oluşturmak için durum değişikliklerini kullanmanızı sağlar.", "manage_entities": "Varlıkları Yönetin", "sync_entities": "Varlıkları Senkronize Et", @@ -1055,6 +1073,7 @@ "enable_state_reporting": "Durum Raporlamasını Etkinleştir", "enter_pin_error": "PIN kaydedilemiyor:", "enter_pin_hint": "Güvenlik cihazlarını kullanmak için bir PIN girin", + "info": "Home Assistant Cloud için Google Assistant entegrasyonu ile, tüm Home Assistant cihazlarınızı herhangi bir Google Asistan özellikli cihaz üzerinden kontrol edebilirsiniz.", "info_state_reporting": "Durum raporlamayı etkinleştirirseniz, Home Assistant sergilenmis varlıkların tüm durum değişikliklerini Google'e gönderir. Bu, Google Home uygulamasında her zaman en son durumları görmenizi ve rutin oluşturmak için durum değişikliklerini kullanmanızı sağlar.", "manage_entities": "Varlıkları Yönetin", "security_devices": "Güvenlik Cihazları", @@ -1069,6 +1088,7 @@ "not_connected": "Bağlı değil", "remote": { "certificate_info": "Sertifika bilgileri", + "info": "Home Assistant Cloud, evinizden uzakta olduğunuzda örneğinize güvenli bir uzaktan bağlantı sağlar.", "link_learn_how_it_works": "Nasıl çalıştığını öğrenin", "title": "Uzaktan kulanim" }, @@ -1137,6 +1157,7 @@ "email_error_msg": "Geçersiz e-posta", "forgot_password": "Parolanızı mı unuttunuz?", "introduction2": "Bu hizmet ortağımız tarafından yürütülüyor", + "introduction3": "Home Assistant Cloud, bir aylık ücretsiz deneme sürümüne sahip bir abonelik hizmetidir. Ödeme bilgisi gerekmez.", "learn_more_link": "Home Assistant Cloud hakkında daha fazla bilgi edin", "password": "Parola", "password_error_msg": "Parolalar en az 8 karakterdir", @@ -1251,14 +1272,17 @@ "automations": "Otomasyonlar", "cant_edit": "Yalnızca kullanıcı arayüzünde oluşturulan öğeleri düzenleyebilirsiniz.", "caption": "Cihazlar", + "confirm_delete": "Bu cihazı silmek istediğinizden emin misiniz?", "data_table": { "area": "Alan", "battery": "Pil", "device": "Cihaz", "integration": "Entegrasyon", "manufacturer": "Üretici", - "model": "Model" + "model": "Model", + "no_devices": "Cihaz yok" }, + "delete": "Sil", "description": "Bağlı cihazları yönet", "details": "Cihazınızın tüm detayları.", "device_not_found": "Cihaz bulunamadı.", @@ -1344,10 +1368,28 @@ }, "header": "Home Assistant'ı yapılandır", "helpers": { + "caption": "Yardımcılar", + "description": "Otomasyon oluşturmaya yardımcı olabilecek öğeler.", + "dialog": { + "add_helper": "Yardımcı ekle", + "add_platform": "{platform} ekle", + "create": "Oluştur" + }, "picker": { + "add_helper": "Yardımcı ekle", "headers": { - "entity_id": "Varlık kimliği" + "editable": "Düzenlenebilir", + "entity_id": "Varlık kimliği", + "name": "Ad", + "type": "Tip" } + }, + "types": { + "input_boolean": "Geçiş", + "input_datetime": "Tarih ve/veya saat", + "input_number": "Numara", + "input_select": "Açılır", + "input_text": "Metin" } }, "integrations": { @@ -1381,6 +1423,7 @@ }, "failed_create_area": "Alan oluşturulamadı.", "finish": "Bitir", + "loading_first_time": "Lütfen entegrasyonun yüklenmesini bekleyin", "name_new_area": "Yeni alanın adı?", "not_all_required_fields": "Gerekli alanların tümü doldurulmamış.", "submit": "Gönder" @@ -1409,20 +1452,51 @@ }, "introduction": "Buradan bileşenlerinizi ve Home Assistant'ınızı yapılandırabilirsiniz. Herşeyi kullanıcı arayüzü ile ayarlamak henüz mümkün değil fakat üzerinde çalışıyoruz", "lovelace": { + "caption": "Lovelace Kontrol Panelleri", "dashboards": { + "cant_edit_default": "Standart Lovelace kontrol paneli kullanıcı arayüzünden düzenlenemez. Varsayılan olarak başka bir kontrol paneli ayarlayarak gizleyebilirsiniz.", + "cant_edit_yaml": "YAML'de tanımlanan kontrol panelleri kullanıcı arayüzünden düzenlenemez. Configuration.yaml dosyasından değiştirin.", + "caption": "Kontrol panelleri", + "conf_mode": { + "storage": "UI kontrollü", + "yaml": "YAML dosyası" + }, + "confirm_delete": "Bu kontrol panelini silmek istediğinizden emin misiniz?", + "default_dashboard": "Bu varsayılan kontrol paneli", "detail": { "create": "Oluştur", + "delete": "Sil", + "dismiss": "Kapat", + "edit_dashboard": "Kontrol paneli düzenle", + "icon": "Simge", + "new_dashboard": "Yeni kontrol paneli ekle", "remove_default": "Bu cihazda varsayılan olarak kaldır", + "require_admin": "Yalnızca yönetici", "set_default": "Bu cihazda varsayılan olarak ayarla", - "title_required": "Başlık gerekli." + "show_sidebar": "Kenar çubuğunda göster", + "title": "Başlık", + "title_required": "Başlık gerekli.", + "update": "Güncelle", + "url": "URL", + "url_error_msg": "URL bir - içermeli ve _ ve - hariç boşluk veya özel karakter içeremez" }, "picker": { + "add_dashboard": "Kontrol paneli ekle", "headers": { - "default": "Varsayılan" - } + "conf_mode": "Yapılandırma yöntemi", + "default": "Varsayılan", + "filename": "Dosya adı", + "require_admin": "Yalnızca yönetici", + "sidebar": "Kenar çubuğunda göster", + "title": "Başlık" + }, + "open": "Açık" } }, + "description": "Lovelace kontrol panellerinizi yapılandırın", "resources": { + "caption": "Kaynaklar", + "confirm_delete": "Bu kaynağı silmek istediğinizden emin misiniz?", "detail": { "create": "Oluştur", "delete": "Sil", @@ -1431,14 +1505,22 @@ "type": "Kaynak tipi", "update": "Güncelle", "url": "URL", - "url_error_msg": "URL zorunlu bir alandır" + "url_error_msg": "URL zorunlu bir alandır", + "warning_header": "Dikkatli olun!" }, "picker": { "add_resource": "Kaynak ekle", "headers": { "type": "Tip", "url": "URL" - } + }, + "no_resources": "Kaynak yok" + }, + "refresh_header": "Yenilemek istiyor musunuz?", + "types": { + "html": "HTML (kullanımdan kaldırıldı)", + "js": "JavaScript Dosyası (kullanımdan kaldırıldı)", + "module": "JavaScript Modülü" } } }, @@ -1953,6 +2035,7 @@ } }, "generic": { + "aspect_ratio": "En boy oranı", "camera_image": "Kamera Varlığı", "camera_view": "Kamera Görünümü", "entities": "Varlıklar", @@ -1965,6 +2048,7 @@ "maximum": "Maksimum", "minimum": "Minimum", "name": "Adı", + "no_theme": "Tema yok", "refresh_interval": "Yenileme aralığı", "show_icon": "Simgeyi Göster?", "show_name": "Adı göster?", @@ -2040,6 +2124,7 @@ "edit_card": { "add": "Kart Ekle", "delete": "Sil", + "duplicate": "Çift kart", "edit": "Düzenle", "header": "Kart Ayarları", "move": "Görünüme Taşı", @@ -2061,7 +2146,10 @@ "move_left": "Görünümü sola taşı", "move_right": "Görünümü sağa taşı", "tab_settings": "Ayarlar", - "tab_visibility": "Görünürlük" + "tab_visibility": "Görünürlük", + "visibility": { + "select_users": "Gezinmede hangi kullanıcıların bu görünümü görmesi gerektiğini seçin" + } }, "header": "Kullanıcı arayüzünü düzenle", "menu": { @@ -2101,7 +2189,8 @@ }, "view": { "panel_mode": { - "title": "Panel Modu?" + "title": "Panel Modu?", + "warning_multiple_cards": "Bu görünüm birden fazla kart içeriyor, ancak panel görünümü yalnızca 1 kart gösterebilir." } } }, @@ -2111,9 +2200,14 @@ "exit_edit_mode": "UI düzenleme modundan çık", "help": "Yardım", "refresh": "Yenile", + "reload_resources": "Kaynakları yeniden yükle", "unused_entities": "Kullanılmayan varlıklar" }, "reload_lovelace": "Arayüzü yeniden yükle", + "reload_resources": { + "refresh_body": "Yeniden yüklemeyi tamamlamak için sayfayı yenilemeniz gerekiyor, şimdi yenilemek istiyor musunuz?", + "refresh_header": "Yenilemek istiyor musunuz?" + }, "unused_entities": { "available_entities": "Bunlar sizin elinizde olan ama henüz Lovelace UI'nızda olmayan varlıklardır.", "domain": "Alan adı", @@ -2130,6 +2224,7 @@ "confirm_delete_text": "'{name}' görünümünüzü silmek istediğinizden emin misiniz?" }, "warning": { + "attribute_not_found": "Nitelik {attribute} {entity} içinde mevcut değil", "entity_non_numeric": "Varlık sayısal değil: {entity}", "entity_not_found": "Varlık mevcut değil: {entity}" } diff --git a/translations/uk.json b/translations/uk.json index de7fb05e7d..0f7066427c 100644 --- a/translations/uk.json +++ b/translations/uk.json @@ -533,9 +533,11 @@ }, "common": { "cancel": "Скасувати", + "delete": "Видалити", "loading": "Завантаження", "no": "Ні", "save": "Зберегти", + "successfully_deleted": "Успішно видалено", "successfully_saved": "Успішно збережено", "yes": "Так" }, @@ -590,6 +592,14 @@ "domain_toggler": { "title": "Переключення доменів" }, + "helper_settings": { + "input_datetime": { + "date": "Дата", + "datetime": "Дата і час", + "mode": "Що ви хочете ввести", + "time": "Час" + } + }, "more_info_control": { "dismiss": "Відхилити", "edit": "Редагувати об'єкт", @@ -1182,6 +1192,7 @@ }, "automations": "Автоматизації", "caption": "Пристрої", + "confirm_delete": "Ви впевнені, що хочете видалити цей пристрій?", "confirm_rename_entity_ids": "Ви також хочете перейменувати ідентифікатор сутності з ваших сутностей?", "data_table": { "area": "Приміщення", @@ -1189,8 +1200,10 @@ "device": "Пристрій", "integration": "Інтеграція", "manufacturer": "Виробник", - "model": "Модель" + "model": "Модель", + "no_devices": "Немає пристроїв" }, + "delete": "Видалити", "description": "Керування підключеними пристроями", "details": "Тут ви знайдете всі деталі вашого пристрою.", "device_not_found": "Пристрій не знайдено", @@ -1273,6 +1286,7 @@ }, "failed_create_area": "Не вдалося створити приміщення.", "finish": "Закінчити", + "loading_first_time": "Зачекайте, поки інсталюється інтеграція", "name_new_area": "Назва нового приміщення?", "not_all_required_fields": "Не всі обов'язкові поля заповнені.", "submit": "Надіслати" @@ -1301,6 +1315,16 @@ "note_about_website_reference": "Більше можна знайти на" }, "introduction": "Тут можна налаштувати свої компоненти та Home Assistant. Не все можна налаштувати з інтерфейсу користувача, але ми працюємо над цим.", + "lovelace": { + "dashboards": { + "default_dashboard": "Це стандартна панель" + }, + "resources": { + "picker": { + "no_resources": "Немає ресурсів" + } + } + }, "person": { "add_person": "Додати Людини", "caption": "Особи", @@ -1808,13 +1832,16 @@ "icon": "Іконка", "icon_height": "Висота значка", "image": "Шлях зображення", + "manual": "Вручну", "maximum": "Максимум", "minimum": "Мінімум", "name": "Назва", + "no_theme": "Немає теми", "refresh_interval": "Інтервал оновлення", "show_icon": "Показати значок?", "show_name": "Показати назву?", "show_state": "Показати стан?", + "state": "Стан", "tap_action": "Дія при дотику", "theme": "Тема", "title": "Заголовок", @@ -1840,6 +1867,7 @@ "map": { "dark_mode": "Темний режим?", "default_zoom": "Масштабування за замовчуванням", + "description": "Карта карти дозволяє відображати об'єкти на карті.", "geo_location_sources": "Джерела геолокації", "name": "Мапа", "source": "Джерело" @@ -1872,22 +1900,26 @@ "name": "Датчик" }, "shopping-list": { + "description": "Картка списку покупок дозволяє додавати, редагувати, вилучати та очищати предмети зі списку покупок.", "name": "Список покупок" }, "thermostat": { + "description": "Картка термостата забезпечує контроль вашої кліматичної сутності. Дозволяє змінювати температуру та режим сутності.", "name": "Термостат" }, "vertical-stack": { + "description": "Картка \"вертикальний стек\" дозволяє згрупувати кілька карток, щоб вони завжди знаходились в одній колонці.", "name": "Вертикальний стек" }, "weather-forecast": { - "description": "Карта прогнозу погоди відображає погоду. Дуже корисно включити на інтерфейси циз людей що відображаються на стіні.", + "description": "Карта прогнозу погоди відображає погоду. Дуже корисно включити на інтерфейси цих людей що відображаються на стіні.", "name": "Прогноз погоди" } }, "edit_card": { "add": "Додати картку", "delete": "Видалити", + "duplicate": "Дублювати", "edit": "Редагувати", "header": "Конфігурація картки", "move": "Перейти до перегляду", @@ -1949,7 +1981,8 @@ "view": { "panel_mode": { "description": "Це робить першу карту на повну ширину; інші карти в цьому вікні не будуть надані.", - "title": "Панельний режим?" + "title": "Панельний режим?", + "warning_multiple_cards": "Цей вигляд містить більше однієї картки, але на панелі подання може відображатися лише 1 картка." } } }, @@ -1959,9 +1992,14 @@ "exit_edit_mode": "Вийти з режиму редагування інтерфейсу користувача", "help": "Допомога", "refresh": "Оновити", + "reload_resources": "Перезавантажити ресурси", "unused_entities": "Незадіяні об'єкти" }, "reload_lovelace": "Перезавантажити Lovelace", + "reload_resources": { + "refresh_body": "Для завершення перезавантаження потрібно оновити сторінку. Оновити зараз?", + "refresh_header": "Оновити?" + }, "unused_entities": { "available_entities": "Це доступні об'єкти, які відсутні у Lovelace UI.", "domain": "Домен", @@ -1976,6 +2014,7 @@ "existing_cards": "Ви не можете видалити подання, у якому є картки. Спочатку видаліть картки." }, "warning": { + "attribute_not_found": "Атрибут {attribute} недоступний у: {entity}", "entity_non_numeric": "Об'єкт не є числовим: {entity}", "entity_not_found": "Об'єкт не доступний: {entity}" } diff --git a/translations/zh-Hans.json b/translations/zh-Hans.json index 41d691c5b9..9fc01195b8 100644 --- a/translations/zh-Hans.json +++ b/translations/zh-Hans.json @@ -537,9 +537,11 @@ "common": { "cancel": "取消", "close": "关闭", + "delete": "删除", "loading": "加载中", "no": "否", "save": "保存", + "successfully_deleted": "已成功删除", "successfully_saved": "保存成功", "yes": "是" }, @@ -841,7 +843,7 @@ "delete_confirm": "确认删除?", "duplicate": "复制", "header": "动作", - "introduction": "Actions(动作)是当自动化条件满足时 Home Assistant 执行的操作。\n\n[了解更多关于 Actions 的信息](https://home-assistant.io/docs/automation/action)", + "introduction": "“动作”是当自动化条件满足时 Home Assistant 执行的操作。", "learn_more": "详细了解动作", "name": "执行", "type_select": "动作类型", @@ -886,7 +888,7 @@ "delete_confirm": "确认删除?", "duplicate": "复制", "header": "环境条件", - "introduction": "环境条件是自动化流程中的可选部分,它可用于触发条件触发时拦截不符合条件的动作。环境条件看似像触发条件实则大有不同。触发条件监测系统中事件的发生,也就是瞬时动作;而环境条件监测的是系统当前的状态。触发条件可以观察到开关打开的动作。条件只能查看当前开关是开还是关。", + "introduction": "“环境条件”是自动化流程中的可选部分。除非所有环境条件都符合,否则“动作”不会执行。", "learn_more": "详细了解环境条件", "name": "环境条件", "type_select": "环境条件类型", @@ -959,7 +961,7 @@ "delete_confirm": "确认删除?", "duplicate": "复制", "header": "触发条件", - "introduction": "触发条件是整个自动化流程的起点。一个自动化实例中可以设置多个触发条件。一旦该条件满足,Home Assistant 将验证环境条件(Conditions)是否符合,如果符合,则执行动作(Actions)。\n\n[了解更多内容](https://home-assistant.io/docs/automation/trigger/)", + "introduction": "“触发条件”是整个自动化流程的起点。一个自动化规则中可以设置多个触发条件。一旦该条件满足,Home Assistant 将验证“环境条件”是否符合,如果符合,则执行“动作”。", "learn_more": "详细了解触发条件", "name": "触发条件", "type_select": "触发条件类型", @@ -1310,6 +1312,7 @@ "automations": "自动化", "cant_edit": "您只能编辑在 UI 中创建的项目。", "caption": "设备", + "confirm_delete": "您确定要删除此设备吗?", "confirm_rename_entity_ids": "是否要重命名实体的实体 ID?", "data_table": { "area": "区域", @@ -1320,6 +1323,7 @@ "model": "型号", "no_devices": "没有设备" }, + "delete": "删除", "description": "管理已连接的设备", "details": "这是设备的所有详细信息。", "device_not_found": "未找到设备。", @@ -1393,7 +1397,7 @@ "introduction2": "使用本实体注册工具重写名称,修改实体 ID 或者从 Home Assistant 删除实体。注意,删除实体注册信息并不会删除实体本身。如果要删除实体,请点击下面的链接进入集成页面进行操作。", "remove_selected": { "button": "删除所选实体", - "confirm_partly_text": "在所选的 {removable} 个实体中有 {selected} 个可被删除。实体可被删除的条件是集成不再提供它们。有时,即使集成已删除,也必须先重新启动 Home Assistant 才能删除它们的实体。您确定要删除实体吗?", + "confirm_partly_text": "在所选的 {selected} 个实体中有 {removable} 个可被删除。实体可被删除的条件是集成不再提供它们。有时,即使集成已删除,也必须先重新启动 Home Assistant 才能删除它们的实体。您确定要删除实体吗?", "confirm_partly_title": "所选实体中只有 {number} 个可被删除。", "confirm_text": "如果它们包含这些实体,则应将它们从 Lovelace 配置和自动化中删除。", "confirm_title": "您要删除这 {number} 个实体吗?" @@ -1469,6 +1473,7 @@ }, "failed_create_area": "创建区域失败。", "finish": "完成", + "loading_first_time": "正在安装集成,请稍候", "name_new_area": "新区域的名称?", "not_all_required_fields": "请填写所有必填字段", "submit": "提交" @@ -2152,10 +2157,11 @@ "icon_height": "图标高度", "image": "图像路径", "manual": "手动模式", - "manual_description": "您是想添加自定义卡片,还是手动编写 yaml 文件?", - "maximum": "最大", - "minimum": "最小", + "manual_description": "需要添加自定义卡片,或者手动编写 yaml 吗?", + "maximum": "最大值", + "minimum": "最小值", "name": "名称", + "no_theme": "没有主题", "refresh_interval": "刷新间隔", "show_icon": "显示图标?", "show_name": "显示名称?", @@ -2164,7 +2170,7 @@ "tap_action": "点击动作", "theme": "主题", "title": "标题", - "unit": "单元", + "unit": "单位", "url": "网址" }, "glance": { @@ -2252,6 +2258,7 @@ "edit_card": { "add": "添加卡片", "delete": "删除", + "duplicate": "复制卡片", "edit": "编辑", "header": "卡片配置", "move": "移动", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "这将使第一张卡片全屏显示。此视图中的其他卡片将不会呈现。", - "title": "面板模式?" + "title": "面板模式?", + "warning_multiple_cards": "此视图包含多张卡片,但面板视图只能显示一张卡片。" } } }, @@ -2467,7 +2475,7 @@ "working": "请稍候" }, "initializing": "正在初始化", - "logging_in_with": "正在用 **{authProviderName}** 登录。", + "logging_in_with": "正在通过 **{authProviderName}** 登录。", "pick_auth_provider": "或者用以下方式登录" }, "page-demo": { diff --git a/translations/zh-Hant.json b/translations/zh-Hant.json index bdb0bcf581..4f1dc5c654 100644 --- a/translations/zh-Hant.json +++ b/translations/zh-Hant.json @@ -537,9 +537,11 @@ "common": { "cancel": "取消", "close": "關閉", + "delete": "刪除", "loading": "讀取中", "no": "否", "save": "儲存", + "successfully_deleted": "成功刪除", "successfully_saved": "成功儲存", "yes": "是" }, @@ -1310,6 +1312,7 @@ "automations": "自動化", "cant_edit": "只能編輯於 UI 中新增的物件。", "caption": "設備", + "confirm_delete": "確定要刪除此設備?", "confirm_rename_entity_ids": "是否也要變更物件的物件 ID?", "data_table": { "area": "分區", @@ -1320,6 +1323,7 @@ "model": "型號", "no_devices": "沒有設備" }, + "delete": "刪除", "description": "管理已連線設備", "details": "此處顯示設備所有詳細資訊。", "device_not_found": "未找到設備。", @@ -1469,6 +1473,7 @@ }, "failed_create_area": "新增分區失敗。", "finish": "完成", + "loading_first_time": "請稍候、正在安裝整合", "name_new_area": "新分區名稱?", "not_all_required_fields": "所有所需欄位都需要填寫。", "submit": "傳送" @@ -1524,7 +1529,7 @@ "title_required": "必須輸入標題", "update": "更新", "url": "網址", - "url_error_msg": "網址不能包含空格或特殊字元,除了 _ 及 -。" + "url_error_msg": "網址應該包含一個 -,同時不能包含空格或特殊字元,除了 _ 及 -。" }, "picker": { "add_dashboard": "新增主面板", @@ -2156,6 +2161,7 @@ "maximum": "最大值", "minimum": "最小值", "name": "名稱", + "no_theme": "沒有主題", "refresh_interval": "更新間隔", "show_icon": "顯示圖示?", "show_name": "顯示名稱?", @@ -2252,6 +2258,7 @@ "edit_card": { "add": "新增面板", "delete": "刪除面板", + "duplicate": "複製面板", "edit": "編輯", "header": "面板設定", "move": "移動至視圖", @@ -2272,15 +2279,15 @@ "add": "新增視圖", "delete": "刪除視圖", "edit": "編輯視圖", - "header": "面板設定", - "header_name": "{name}面板設定", + "header": "視圖設定", + "header_name": "{name}視圖設定", "move_left": "向左移動視圖", "move_right": "向右移動視圖", "tab_badges": "圓標圖示", "tab_settings": "設定", "tab_visibility": "顯示選項", "visibility": { - "select_users": "選擇可觀看此面板的使用者" + "select_users": "選擇可觀看此視圖的使用者" } }, "header": "編輯 UI", @@ -2295,8 +2302,8 @@ "para_no_id": "該元件未含 ID,請於「ui-lovelace.yaml」中為該元件新增 ID。" }, "raw_editor": { - "confirm_remove_config_text": "假如移除 Lovelace UI 設定的話,將自動以區域與設備產生 Lovelace UI 面板。", - "confirm_remove_config_title": "確定要移除 Lovelace UI 設定?將依據區域與設備自動產生 Lovelace UI 面板。", + "confirm_remove_config_text": "假如移除 Lovelace UI 設定的話,將自動以區域與設備產生 Lovelace UI 視圖。", + "confirm_remove_config_title": "確定要移除 Lovelace UI 設定?將依據區域與設備自動產生 Lovelace UI 視圖。", "confirm_unsaved_changes": "變更尚未儲存,確定要退出?", "confirm_unsaved_comments": "設定包含命令、將不會被儲存。是否要繼續?", "error_invalid_config": "設定無效:{error}", @@ -2328,7 +2335,8 @@ "view": { "panel_mode": { "description": "將會以全寬度製作第一張面板,視圖中其他面板將不進行呈現。", - "title": "面板模式?" + "title": "面板模式?", + "warning_multiple_cards": "此視圖包含超過一張面板,但面板視圖僅能顯示一張面板。" } } }, @@ -2356,10 +2364,10 @@ "title": "未使用物件" }, "views": { - "confirm_delete": "刪除面板?", - "confirm_delete_existing_cards": "刪除此主面板同時將移除面板。", - "confirm_delete_existing_cards_text": "確定要刪除「{name}」面板?面板內包含 {number} 張面板也同時將被刪除。此動作將無法回復。", - "confirm_delete_text": "確定要刪除「{name}」面板?", + "confirm_delete": "刪除視圖?", + "confirm_delete_existing_cards": "刪除此視圖同時將移除面板。", + "confirm_delete_existing_cards_text": "確定要刪除「{name}」視圖?視圖內包含 {number} 張面板也同時將被刪除。此動作將無法回復。", + "confirm_delete_text": "確定要刪除「{name}」視圖?", "existing_cards": "無法刪除內含面板的視圖,請先移除面板。" }, "warning": {