Skip to content

Commit

Permalink
Merge branch 'current' into next
Browse files Browse the repository at this point in the history
  • Loading branch information
frenck committed Oct 2, 2024
2 parents 0323556 + ce56a32 commit 6e1c70d
Show file tree
Hide file tree
Showing 45 changed files with 362 additions and 152 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.0
- name: Setting up Node.js
uses: actions/setup-node@v4.0.4
with:
Expand All @@ -25,7 +25,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.0
- name: Setting up Node.js
uses: actions/setup-node@v4.0.4
with:
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ group :development do
# > 2.1.0 causes slowdowns https://github.com/sass/sassc-ruby/issues/189
gem 'sassc', '2.1.0'
gem 'rubocop', '1.66.1'
gem 'ruby-lsp', '0.18.3'
gem 'ruby-lsp', '0.18.4'
gem 'rackup', '2.1.0'
end

Expand Down
14 changes: 7 additions & 7 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -108,10 +108,10 @@ GEM
rb-fsevent (0.11.2)
rb-inotify (0.11.1)
ffi (~> 1.0)
rbs (3.5.3)
rbs (3.6.0)
logger
regexp_parser (2.9.2)
rexml (3.3.7)
rexml (3.3.8)
rouge (4.4.0)
rubocop (1.66.1)
json (~> 2.3)
Expand All @@ -125,7 +125,7 @@ GEM
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.32.3)
parser (>= 3.3.1.0)
ruby-lsp (0.18.3)
ruby-lsp (0.18.4)
language_server-protocol (~> 3.17.0)
prism (~> 1.0)
rbs (>= 3, < 4)
Expand All @@ -134,9 +134,9 @@ GEM
ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
sass (3.4.25)
sass-embedded (1.79.3-arm64-darwin)
sass-embedded (1.79.4-arm64-darwin)
google-protobuf (~> 4.27)
sass-embedded (1.79.3-x86_64-linux-gnu)
sass-embedded (1.79.4-x86_64-linux-gnu)
google-protobuf (~> 4.27)
sass-globbing (1.1.5)
sass (>= 3.1)
Expand All @@ -150,7 +150,7 @@ GEM
rack-protection (= 4.0.0)
rack-session (>= 2.0.0, < 3)
tilt (~> 2.0)
sorbet-runtime (0.5.11581)
sorbet-runtime (0.5.11589)
stringex (2.8.6)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
Expand All @@ -177,7 +177,7 @@ DEPENDENCIES
rackup (= 2.1.0)
rake (= 13.2.1)
rubocop (= 1.66.1)
ruby-lsp (= 0.18.3)
ruby-lsp (= 0.18.4)
sass-globbing (= 1.1.5)
sassc (= 2.1.0)
sinatra (= 4.0.0)
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,3 +40,5 @@ When you're done working on the site, run the following command to move the post
```bash
bundle exec rake integrate
```

[![Home Assistant - A project from the Open Home Foundation](https://www.openhomefoundation.org/badges/home-assistant.png)](https://www.openhomefoundation.org/)
35 changes: 29 additions & 6 deletions source/_dashboards/map.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,42 @@ related:
title: Themes
- docs: /dashboards/cards/
title: Dashboard cards
- docs: /docs/configuration/basic/#editing-the-general-settings
title: Edit your home location
- docs: /getting-started/presence-detection/
title: Getting started tutorial on presence detection
---

The map card that allows you to display entities on a map. This card is used on the [Map dashboard](/dashboards/dashboards/#map-dashboard), which is one of the default dashboards.
The map card allows you to display your home zone, entities, and other predefined zones on a map. This card is used on the [Map dashboard](/dashboards/dashboards/#map-dashboard), which is one of the default dashboards.

<p class='img'>
<img src='/images/dashboards/map_card.png' alt='Screenshot of the map card'>
Screenshot of the map card.
</p>

{% include dashboard/edit_dashboard.md %}
## Adding the map card to your dashboard

All options for this card can be configured via the user interface.
1. In the top right of the screen, select the edit {% icon "mdi:edit" %} button.
- If this is your first time editing a dashboard, the **Edit dashboard** dialog appears.
- By editing the dashboard, you are taking over control of this dashboard.
- This means that it is no longer automatically updated when new dashboard elements become available.
- Once you've taken control, you can't set this dashboard to update automatically anymore. However, you can create a new default dashboard.
- To continue, in the dialog, select the three dots {% icon "mdi:dots-vertical" %} menu, then select **Take control**.
2. [Add the map card](/dashboards/cards/#adding-cards-to-your-dashboard) to your dashboard.
3. By default, you see the house {% icon "mdi:house" %} icon on your map. It represents your [home zone](/integrations/zone/#about-the-home-zone).
- To change the location of your home, you need to [edit your home's location in the general settings](/docs/configuration/basic/#editing-the-general-settings).

![Edit map card settings](/images/dashboards/map_card_config.png)
4. To learn how to show additional zones on your map, follow the steps on [adding a new zone](/integrations/zone/#adding-a-new-zone-or-editing-zones).
5. To show other elements on the map, either add them under **Entities**, or use the **Geolocation sources**.
- For a description of the options, refer to the [YAML configuration](#yaml-configuration) section. It also applies to the options shown in the UI.
- {% icon "mdi:info" %} **Info**: The list of entities shows the device trackers available for your home, such as a mobile phone with the companion app.
- If you want to see a trace of the past locations of your entities, you need to define a time frame under **Hours to show**.
- For more information about presence detection, refer to the [getting started tutorial on presence detection](/getting-started/presence-detection/).

## Configuration options

All options for this card can be configured via the user interface. For a detailed description of the options, refer to the [YAML configuration](#yaml-configuration) section. It also applies to the options shown in the UI.

## YAML configuration

Expand All @@ -42,7 +66,7 @@ geo_location_sources:
type: list
auto_fit:
required: false
description: The map will follow moving `entities` by adjusting the viewport of the map each time an entity is updated.
description: The map will follow moving `entities` by adjusting the viewport of the map each time an entity is updated.
type: boolean
default: false
fit_zones:
Expand All @@ -60,7 +84,7 @@ aspect_ratio:
type: string
default_zoom:
required: false
description: The default zoom level of the map.
description: The default zoom level of the map. Use a lower number to zoom out and a higher number to zoom in.
type: integer
default: 14 (or whatever zoom level is required to fit all visible markers)
theme_mode:
Expand Down Expand Up @@ -139,4 +163,3 @@ entities:
focus: false
hours_to_show: 48
```
31 changes: 30 additions & 1 deletion source/_dashboards/markdown.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,6 @@ content: |

{% endraw %}


## ha-alert

You can also use our [\`ha-alert\`](https://design.home-assistant.io/#components/ha-alert) component in the Markdown card.
Expand All @@ -150,3 +149,33 @@ content: |
<ha-alert alert-type="success">This is a success alert — check it out!</ha-alert>
<ha-alert title="Test alert">This is an alert with a title</ha-alert>
```

## ha-qr-code

You can also create QR-Codes in the Markdown card.

<p class='img'>
<img src='/images/dashboards/markdown_card_qr_code.png' alt='Screenshot of the markdown card with QR codes'>
Screenshot of the Markdown card with QR codes.
</p>

Available parameters:

- data: The actual data to encode in the QR-Code
- scale: A scale factor for the QR code, default is 4
- width: Width of the QR code in pixels
- margin: A margin around the QR code
- error-correction-level: low; medium; quartile; high
- center-image: An image to place on top of the qr code (might need a higher error-correction-level)

```yaml
type: markdown
content: >-
<ha-qr-code data='hallo' width="180"></ha-qr-code>
<ha-qr-code data='hallo' scale="6" margin="0"
center-image="/static/icons/favicon-192x192.png"></ha-qr-code>
<ha-qr-code data='hallo' error-correction-level="quartile" scale="6"
center-image="https://brands.home-assistant.io/_/tuya/icon@2x.png"></ha-qr-code>
```
28 changes: 19 additions & 9 deletions source/_dashboards/sidebar.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ related:
title: Masonry view
- docs: /dashboards/panel/
title: Panel view
- docs: /dashboards/sections/
title: Sections view (experimental)
- docs: /dashboards/views/
title: About views
---

The sidebar view has 2 columns, a wide one and a smaller one on the right.
Expand All @@ -17,18 +21,24 @@ The sidebar view has 2 columns, a wide one and a smaller one on the right.
Screenshot of the sidebar view used for the energy dashboard.
</p>

This view doesn't have support for badges.

You can set if a card should be placed in the main (left) column of the sidebar column (right), by selecting the arrow right or left arrow in the bar underneath the card.
To move the card from the main column into the sidebar (right) (and vice versa), select the arrow {% icon "mdi:arrow-left-bold" %} {% icon "mdi:arrow-right-bold" %} button on the card.

<p class='img'>
<img src='/images/dashboards/sidebar_view_move_card.png' alt='Screenshot showing how to move a card between sidebar and main view'>
Screenshot showing how to move a card between sidebar and main view.
<img src='/images/dashboards/sidebar_view_move_card.png' alt='Screenshot showing how to move a card'>
Screenshot showing the arrow buttons to move a card.
</p>

On mobile, all cards are rendered in 1 column and kept in the order of the cards in the config.
On mobile, all cards are rendered in 1 column and kept in the order indicated in the YAML configuration.

1. To view the YAML configuration, on the view tab, select the {% icon "mdi:pencil" %} icon to open the edit view.
2. In the configuration dialog, select the three dots {% icon "mdi:dots-vertical" %} menu, and **Edit in YAML**.

<p class='img'>
<img src='/images/dashboards/view_edit_config.png' alt='Screenshot showing where to edit the view configuration'>
Screenshot showing where to edit the view configuration.
</p>

## View config:
## View configuration

{% configuration %}
type:
Expand All @@ -37,7 +47,7 @@ type:
type: string
{% endconfiguration %}

## Cards config:
## Cards configuration

{% configuration %}
view_layout.position:
Expand All @@ -58,4 +68,4 @@ cards:
- media_player.lounge_room
view_layout:
position: sidebar
```
```
2 changes: 1 addition & 1 deletion source/_data/glossary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -584,7 +584,7 @@
link: /docs/scripts/#variables
- term: Zone
definition: >-
Zones are areas that can be used for presence detection.
Zones allow you to specify certain regions on a map. They enable zone presence-detection and can be used in automations. For example, to start the vacuum after you left home or start the heating at home when you leave the office.
link: /integrations/zone/
aliases:
- zones
15 changes: 2 additions & 13 deletions source/_docs/configuration/entities_domains.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,15 @@ title: "Entities and domains"
description: "Describes what entities and domains are in Home Assistant."
related:
- docs: /docs/configuration/state_object/
title: State object, entity state
title: State object, entity state and attributes
---

Your {% term devices %} are represented in Home Assistant as entities. Entities are the basic building blocks to hold data in Home Assistant. An entity represents a {% term sensor %}, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a {% term device %} or a {% term service %}. Entities have [states](/docs/configuration/state_object/) and [attributes](#entity-attributes).
Your devices are represented in Home Assistant as entities. Entities are the basic building blocks to hold data in Home Assistant. An entity represents a {% term sensor %}, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a {% term device %} or a {% term service %}. Entities have [states](/docs/configuration/state_object/) and [state attributes](/docs/configuration/state_object/#about-entity-state-attributes).

All your entities are listed in the entities table, under {% my entities title="**Settings** > **Devices & services** > **Entities**" %}.

<p class='img'><img src='/images/getting-started/entities.png' style='border: 0;box-shadow: none;' alt="Screenshot showing the Entities table">Screenshot of the Entities table. Each line represents an entity.</p>

## Entity attributes

Many entities have attributes. There are a few attributes that are available on all entities, such as `friendly_name` and `icon`. In addition to those, each integration has its own attributes to represent extra state data about the entity. For example, the light integration has attributes for the current brightness and color of the light. When an attribute is not available, Home Assistant will not write it to the state. The list of available attributes depends on the {% term device %}.

<p class='img'>
<img src='/images/integrations/light/state_light.png' alt='Screenshot showing three lights with different states and attributes'>
Example showing three lights with differents states and different attributes.
</p>

For more information on entity attributes, refer to the [attributes](/docs/configuration/state_object/#attributes) section on the state objects page.

## Domains

Each integration in Home Assistant has a unique identifier: a domain. All entities and actions available in Home Assistant are provided by integrations and thus belong to such a domain. The first part of the entity or action, before the `.` shows the domain they belong to. For example, `light.bed_light` is an entity in the light domain. `bed_light` is the ID of the entity.
Expand Down
Loading

0 comments on commit 6e1c70d

Please sign in to comment.