Compare commits

...
Author SHA1 Message Date
Steve Repsher f7e2fb5271 Allow dependabot to rebase over dedupe commit 2023-02-14 17:30:09 +00:00
Steve Repsher 6ba567c54e Merge branch 'dev' into dependabot-dedupe 2023-02-14 17:20:09 +00:00
Paul BotteinandGitHub e81f596d76 Add restart dialog (#15337) 2023-02-14 13:04:18 +01:00
Steve RepsherandGitHub ec66e8331e Make minor workflow revisions and fix dedupe precommit (#15399) 2023-02-14 13:03:16 +01:00
Yosi LevyandGitHub a13e2af17a Various RTL fixes (#15446) 2023-02-14 13:02:45 +01:00
karwostsandGitHub 1e7fe59519 Add slight hysteresis to chart height to prevent scrollbar juddering (#15321) 2023-02-14 13:01:01 +01:00
dependabot[bot]andGitHub d8fe7d9a01 Bump @typescript-eslint/parser from 5.49.0 to 5.52.0 (#15445) 2023-02-14 04:29:53 +00:00
dependabot[bot]andGitHub 1a335a18a4 Bump @types/tar from 6.1.2 to 6.1.3 (#15444) 2023-02-14 04:25:46 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
00a40a5c51 Bump tsparticles-engine from 2.8.0 to 2.9.3 (#15434)
* Bump tsparticles-engine from 2.8.0 to 2.9.3

Bumps [tsparticles-engine](https://github.com/matteobruni/tsparticles/tree/HEAD/engine) from 2.8.0 to 2.9.3.
- [Release notes](https://github.com/matteobruni/tsparticles/releases)
- [Changelog](https://github.com/matteobruni/tsparticles/blob/main/engine/CHANGELOG.md)
- [Commits](https://github.com/matteobruni/tsparticles/commits/[email protected]/engine)

---
updated-dependencies:
- dependency-name: tsparticles-engine
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies [dependabot skip]

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-13 17:01:11 +00:00
Paul BotteinandGitHub 74512298d2 Use enum for media player features (#15410) 2023-02-13 17:48:18 +01:00
Raman GuptaandGitHub bf5eeba0a5 Remove firmware target from zwave_js firmware upload UI (#15425) 2023-02-13 17:47:10 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
859e69d373 Bump terser-webpack-plugin from 5.2.4 to 5.3.6 (#15435)
* Bump terser-webpack-plugin from 5.2.4 to 5.3.6

Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 5.2.4 to 5.3.6.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v5.2.4...v5.3.6)

---
updated-dependencies:
- dependency-name: terser-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies [dependabot skip]

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-13 16:32:42 +00:00
Paul BotteinandGitHub 1c5b476bda Fix custom card documentation url (#15439)
Fix custom card documentation
2023-02-13 11:28:45 -05:00
dependabot[bot]andGitHub 714c6aab98 Bump prettier from 2.8.3 to 2.8.4 (#15436) 2023-02-13 04:43:36 +00:00
dependabot[bot]andGitHub b409d0ff88 Bump rrule from 2.7.1 to 2.7.2 (#15432) 2023-02-13 04:42:12 +00:00
dependabot[bot]andGitHub f74aa7c7e6 Bump @types/marked from 4.0.2 to 4.0.8 (#15433) 2023-02-13 04:39:54 +00:00
J. Nick KostonandGitHub a325d32d09 Fix stats data being fetched for all entities when there are no energy/water stat ids (#15428)
* Fix stats data being fetched for all entities when there are no energy/water stat ids

I noticed the following query was being sent
to the stats api since there were no water
stat ids. Since it sent an empty list it
enumerated everything

```
{
type: "recorder/statistics_during_period",
start_time: "2023-02-05T05:00:00.000Z",
end_time: "2023-02-12T05:59:59.999Z"
....
statistic_ids: [],
type: "recorder/statistics_during_period"
types: ["sum"]
units: {volume: "gal"}
}
```

* not python
2023-02-11 17:43:20 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4a10c722ab Bump gulp-zopfli-green from 3.0.1 to 6.0.1 (#15414)
Bumps [gulp-zopfli-green](https://github.com/gekorm/gulp-zopfli-green) from 3.0.1 to 6.0.1.
- [Release notes](https://github.com/gekorm/gulp-zopfli-green/releases)
- [Commits](https://github.com/gekorm/gulp-zopfli-green/compare/v3.0.1...v6.0.1)

---
updated-dependencies:
- dependency-name: gulp-zopfli-green
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 16:21:49 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
d1b95ba36b Bump eslint-config-airbnb-typescript from 14.0.0 to 17.0.0 (#15373)
* Bump eslint-config-airbnb-typescript from 14.0.0 to 17.0.0

Bumps [eslint-config-airbnb-typescript](https://github.com/iamturns/eslint-config-airbnb-typescript) from 14.0.0 to 17.0.0.
- [Release notes](https://github.com/iamturns/eslint-config-airbnb-typescript/releases)
- [Changelog](https://github.com/iamturns/eslint-config-airbnb-typescript/blob/master/CHANGELOG.md)
- [Commits](https://github.com/iamturns/eslint-config-airbnb-typescript/compare/v14.0.0...v17.0.0)

---
updated-dependencies:
- dependency-name: eslint-config-airbnb-typescript
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies [dependabot skip]

* Disable default params last rule for current offenders

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-10 18:38:48 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
e2bfaf2448 Bump marked from 4.0.12 to 4.2.12 (#15413)
Bumps [marked](https://github.com/markedjs/marked) from 4.0.12 to 4.2.12.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v4.0.12...v4.2.12)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 11:15:49 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4e74a652b3 Bump tinykeys from 1.1.3 to 1.4.0 (#15406)
Bumps [tinykeys](https://github.com/jamiebuilds/tinykeys) from 1.1.3 to 1.4.0.
- [Release notes](https://github.com/jamiebuilds/tinykeys/releases)
- [Commits](https://github.com/jamiebuilds/tinykeys/compare/v1.1.3...v1.4.0)

---
updated-dependencies:
- dependency-name: tinykeys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 10:57:59 -05:00
dependabot[bot]andGitHub 24f6bb5c93 Bump hls.js from 1.3.1 to 1.3.3 (#15412) 2023-02-10 08:50:19 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
eec4760593 Bump @codemirror/view from 6.7.3 to 6.8.1 (#15405)
* Bump @codemirror/view from 6.7.3 to 6.8.1

Bumps [@codemirror/view](https://github.com/codemirror/view) from 6.7.3 to 6.8.1.
- [Release notes](https://github.com/codemirror/view/releases)
- [Changelog](https://github.com/codemirror/view/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/view/compare/6.7.3...6.8.1)

---
updated-dependencies:
- dependency-name: "@codemirror/view"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-09 17:42:45 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
bc572a5749 Bump @webcomponents/scoped-custom-element-registry from 0.0.5 to 0.0.8 (#15407)
Bumps [@webcomponents/scoped-custom-element-registry](https://github.com/webcomponents/polyfills/tree/HEAD/packages/scoped-custom-element-registry) from 0.0.5 to 0.0.8.
- [Release notes](https://github.com/webcomponents/polyfills/releases)
- [Changelog](https://github.com/webcomponents/polyfills/blob/master/packages/scoped-custom-element-registry/CHANGELOG.md)
- [Commits](https://github.com/webcomponents/polyfills/commits/@webcomponents/[email protected]/packages/scoped-custom-element-registry)

---
updated-dependencies:
- dependency-name: "@webcomponents/scoped-custom-element-registry"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-09 12:10:01 -05:00
dependabot[bot]andGitHub 15cf003b46 Bump comlink from 4.3.1 to 4.4.1 (#15404) 2023-02-09 11:14:19 -05:00
050ed145bf Allow overriding a sensor's display precision (#15363)
* Allow overriding a sensor's display precision

* Update demo + gallery

* Lint

* Fix state not updated in the UI

* Use formatNumber for options

* Feedbacks

* Add default precision and minimumFractionDigits

* Remove useless undefined

---------

Co-authored-by: Paul Bottein <[email protected]>
2023-02-08 18:20:58 +01:00
Bram KragtenandGitHub 1550895d86 Move refresh logs button to top (#15382) 2023-02-08 11:53:19 +01:00
Paul BotteinandGitHub 7e92d62936 Add tile card to gallery (#15394) 2023-02-08 11:29:16 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6c2a767896 Bump vis-data from 7.1.2 to 7.1.4 (#15389)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-08 11:19:30 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
f19c50a002 Bump date-fns-tz from 1.3.7 to 2.0.0 (#15388)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-08 11:18:47 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
222a01d86f Bump gulp-json-transform from 0.4.6 to 0.4.8 (#15391)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-08 11:17:32 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
5f6d0bc846 Bump @fullcalendar from 6.1.1 to 6.1.4 (#15390)
* Bump @fullcalendar/core from 6.1.1 to 6.1.4

Bumps [@fullcalendar/core](https://github.com/fullcalendar/fullcalendar/tree/HEAD/packages/core) from 6.1.1 to 6.1.4.
- [Release notes](https://github.com/fullcalendar/fullcalendar/releases)
- [Changelog](https://github.com/fullcalendar/fullcalendar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fullcalendar/fullcalendar/commits/v6.1.4/packages/core)

---
updated-dependencies:
- dependency-name: "@fullcalendar/core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump the rest of the fullcalendar packages

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-08 05:08:10 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
74b12b8092 Bump lint-staged from 13.1.0 to 13.1.1 (#15392)
Bumps [lint-staged](https://github.com/okonet/lint-staged) from 13.1.0 to 13.1.1.
- [Release notes](https://github.com/okonet/lint-staged/releases)
- [Commits](https://github.com/okonet/lint-staged/compare/v13.1.0...v13.1.1)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-07 23:44:24 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
1beeb0e5e8 Bump eslint-plugin-import from 2.24.2 to 2.27.5 (#15371)
* Bump eslint-plugin-import from 2.24.2 to 2.27.5

Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.24.2 to 2.27.5.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.24.2...v2.27.5)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-07 13:37:38 -05:00
Paul BotteinandGitHub b2bfb1fdcb Update create automation dialog (#15286) 2023-02-07 14:18:00 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
c19cba85ec Bump path-parse from 1.0.6 to 1.0.7 (#15381)
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-07 13:35:58 +01:00
Bram KragtenandGitHub 09f0899fe4 Bump babel (#15380
bump babel
2023-02-07 10:58:57 +01:00
Paul BotteinandGitHub d1294edf34 Use right variable name for light card (#15379) 2023-02-07 09:28:56 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
47fcd253b1 Bump unfetch from 4.1.0 to 5.0.0 (#15376)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-07 10:14:49 +01:00
karwostsandGitHub a74c05a004 Rerun layoutOptions when input_select options change (#15274)
fixes undefined
2023-02-07 10:10:15 +01:00
dependabot[bot]andGitHub 251b2540c7 Bump @typescript-eslint/eslint-plugin from 5.50.0 to 5.51.0 (#15375) 2023-02-07 00:18:38 -05:00
Bram KragtenandGitHub 3298bdd5a3 Add my support for matter (#15372)
* Add my support for matter

* Update ha-panel-config.ts
2023-02-06 23:55:47 -05:00
d570d063c7 Optionally update sensor units when unit system changes (#15287)
Co-authored-by: Bram Kragten <[email protected]>
2023-02-06 22:37:05 +01:00
Steve Repsher bb6fb5fb89 Move dedupe check up to fail faster 2023-02-06 21:16:38 +00:00
Steve Repsher 7c1b2e01fe Add concurrency rules to cancel workflows in progress 2023-02-06 21:12:26 +00:00
Paul BotteinandGitHub c6eee9bf74 Update create helper dialog (#15288) 2023-02-06 22:06:25 +01:00
Steve Repsher de03c9610b Revise to use separate workflow with GitHub app 2023-02-06 20:44:02 +00:00
karwostsandGitHub 84902bd01f Missing parenthesis breaks map tooltip format (#15326) 2023-02-06 18:45:23 +01:00
Steve RepsherandGitHub 5548436678 Add eslint-plugin-lit-a11y and fix some errors (#15334) 2023-02-06 18:41:59 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Bram Kragten
e6dc475310 Bump @codemirror/view from 6.7.1 to 6.7.3 (#15366)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bram Kragten <[email protected]>
2023-02-06 17:36:54 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Bram Kragten
9f6d9d8b0b Bump tsparticles from 1.34.0 to 2.8.0 (#15367)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bram Kragten <[email protected]>
2023-02-06 17:34:17 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
68d1ef56db Bump @webcomponents/webcomponentsjs from 2.2.10 to 2.7.0 (#15262)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 18:26:11 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
57f7dfb648 Bump idb-keyval from 5.1.3 to 6.2.0 (#15310)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 18:23:56 +01:00
Bram KragtenandGitHub 5b504bf9ce Add "add matter device" link to add integration dialog (#15365) 2023-02-06 18:18:30 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
e47b59f826 Bump @typescript-eslint/eslint-plugin from 5.46.1 to 5.50.0 (#15370)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.46.1 to 5.50.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.50.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 16:49:19 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Bram Kragten
cfbab03f76 Bump leaflet from 1.7.1 to 1.9.3 (#15357)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bram Kragten <[email protected]>
2023-02-06 16:30:39 +00:00
Steve RepsherandGitHub 791fd102c6 Bump @fullcalendar to version 6.1.1 (#14947) 2023-02-06 16:51:35 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
dded380076 Bump eslint-import-resolver-webpack from 0.13.1 to 0.13.2 (#15355)
* Bump eslint-import-resolver-webpack from 0.13.1 to 0.13.2

Bumps [eslint-import-resolver-webpack](https://github.com/import-js/eslint-plugin-import) from 0.13.1 to 0.13.2.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/resolvers/webpack/v0.13.1...resolvers/webpack/v0.13.2)

---
updated-dependencies:
- dependency-name: eslint-import-resolver-webpack
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-06 04:06:15 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2c064c53cd Bump @types/sortablejs from 1.10.7 to 1.15.0 (#15358)
Bumps [@types/sortablejs](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sortablejs) from 1.10.7 to 1.15.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sortablejs)

---
updated-dependencies:
- dependency-name: "@types/sortablejs"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 04:03:22 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
2511bad902 Bump tar from 6.1.11 to 6.1.13 (#15354)
* Bump tar from 6.1.11 to 6.1.13

Bumps [tar](https://github.com/npm/node-tar) from 6.1.11 to 6.1.13.
- [Release notes](https://github.com/npm/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-tar/compare/v6.1.11...v6.1.13)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-06 04:01:13 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
095040af45 Bump @babel/plugin-proposal-decorators from 7.20.7 to 7.20.13 (#15356)
Bumps [@babel/plugin-proposal-decorators](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-proposal-decorators) from 7.20.7 to 7.20.13.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.20.13/packages/babel-plugin-proposal-decorators)

---
updated-dependencies:
- dependency-name: "@babel/plugin-proposal-decorators"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 03:47:49 +00:00
Raman GuptaandGitHub b277e946c3 Rename zwave_js ws API command (#15339) 2023-02-03 15:26:17 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1cf140c16c Bump sortablejs from 1.14.0 to 1.15.0 (#15328)
Bumps [sortablejs](https://github.com/SortableJS/Sortable) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/SortableJS/Sortable/releases)
- [Commits](https://github.com/SortableJS/Sortable/compare/1.14.0...1.15.0)

---
updated-dependencies:
- dependency-name: sortablejs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-03 16:16:37 +01:00
Flavien CharlonandGitHub adb65176f0 Fix a coloring issue with climate states (#15325) 2023-02-03 09:00:54 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
52d869f5b8 Bump chai from 4.3.4 to 4.3.7 (#15330)
Bumps [chai](https://github.com/chaijs/chai) from 4.3.4 to 4.3.7.
- [Release notes](https://github.com/chaijs/chai/releases)
- [Changelog](https://github.com/chaijs/chai/blob/4.x.x/History.md)
- [Commits](https://github.com/chaijs/chai/compare/v4.3.4...v4.3.7)

---
updated-dependencies:
- dependency-name: chai
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-02 23:45:05 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
c7e7e14f32 Bump eslint-plugin-lit from 1.6.1 to 1.8.2 (#15268)
* Bump eslint-plugin-lit from 1.6.1 to 1.8.2

Bumps [eslint-plugin-lit](https://github.com/43081j/eslint-plugin-lit) from 1.6.1 to 1.8.2.
- [Release notes](https://github.com/43081j/eslint-plugin-lit/releases)
- [Commits](https://github.com/43081j/eslint-plugin-lit/compare/v1.6.1...v1.8.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-lit
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Set new rules to warn for now

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-03 04:29:33 +00:00
Bram Kragten 51de22daa1 Bumped version to 20230202.0 2023-02-02 20:25:28 +01:00
Bram KragtenandGitHub f0d53aab7b Fix ES5 build and fix polyfill of Intl.Locale (#15322) 2023-02-02 20:20:23 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
47b5ff7839 Bump source-map-url from 0.4.0 to 0.4.1 (#15312)
* Bump source-map-url from 0.4.0 to 0.4.1

Bumps [source-map-url](https://github.com/lydell/source-map-url) from 0.4.0 to 0.4.1.
- [Release notes](https://github.com/lydell/source-map-url/releases)
- [Changelog](https://github.com/lydell/source-map-url/blob/master/changelog.md)
- [Commits](https://github.com/lydell/source-map-url/commits/v0.4.1)

---
updated-dependencies:
- dependency-name: source-map-url
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-02 14:25:02 +00:00
dependabot[bot]andGitHub 6af3361c55 Bump http-cache-semantics from 4.1.0 to 4.1.1 (#15313) 2023-02-02 07:43:44 -05:00
3427595747 Icon entity context icon selector (#15306)
Co-authored-by: Bram Kragten <[email protected]>
2023-02-02 10:26:34 +01:00
dependabot[bot]andGitHub 9f3e2920f3 Bump typescript from 4.9.4 to 4.9.5 (#15311) 2023-02-01 23:06:43 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
46e152dc53 Bump qr-scanner from 1.3.0 to 1.4.2 (#15284)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-01 17:17:46 +01:00
Bram Kragten ec3a779a82 Bumped version to 20230201.0 2023-02-01 17:10:21 +01:00
7e7c6aa053 Remove default commission buttons on Matter config panel (#15304)Co-authored-by: Bram Kragten <[email protected]>
* remove default commission buttons

* Update matter-config-panel.ts

* only show for dev versions

---------

Co-authored-by: Bram Kragten <[email protected]>
2023-02-01 17:09:33 +01:00
Bram KragtenandGitHub 4bce4152d3 Add streaming to history panel (#15301) 2023-02-01 16:04:35 +00:00
Bram KragtenandGitHub 57289b0bbe Revert "Allow overriding a sensor's precision" (#15305) 2023-02-01 16:02:48 +00:00
Yosi LevyandGitHub 5aeaa65a89 Fix RTL icon placement (#14019)
* Fix RTL icon placement

* Fix combo box icons

* Removed duplicate after merge

* Refactor ha-button

* Refactor fix 2
2023-02-01 09:45:03 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
596d371781 Bump @open-wc/dev-server-hmr from 0.0.2 to 0.1.3 (#15298)
* Bump @open-wc/dev-server-hmr from 0.0.2 to 0.1.3

Bumps [@open-wc/dev-server-hmr](https://github.com/open-wc/open-wc/tree/HEAD/packages/dev-server-hmr) from 0.0.2 to 0.1.3.
- [Release notes](https://github.com/open-wc/open-wc/releases)
- [Changelog](https://github.com/open-wc/open-wc/blob/master/packages/dev-server-hmr/CHANGELOG.md)
- [Commits](https://github.com/open-wc/open-wc/commits/@open-wc/[email protected]/packages/dev-server-hmr)

---
updated-dependencies:
- dependency-name: "@open-wc/dev-server-hmr"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-01 04:50:09 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
7348bbbbe5 Bump instant-mocha from 1.3.1 to 1.5.0 (#15294)
* Bump instant-mocha from 1.3.1 to 1.5.0

Bumps [instant-mocha](https://github.com/privatenumber/instant-mocha) from 1.3.1 to 1.5.0.
- [Release notes](https://github.com/privatenumber/instant-mocha/releases)
- [Commits](https://github.com/privatenumber/instant-mocha/compare/v1.3.1...v1.5.0)

---
updated-dependencies:
- dependency-name: instant-mocha
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-01 04:00:14 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
383b18b2af Bump @babel/plugin-proposal-optional-chaining from 7.18.9 to 7.20.7 (#15297)
* Bump @babel/plugin-proposal-optional-chaining from 7.18.9 to 7.20.7

Bumps [@babel/plugin-proposal-optional-chaining](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-proposal-optional-chaining) from 7.18.9 to 7.20.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.20.7/packages/babel-plugin-proposal-optional-chaining)

---
updated-dependencies:
- dependency-name: "@babel/plugin-proposal-optional-chaining"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-02-01 03:54:43 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
b38ae0f754 Bump @formatjs/intl-pluralrules from 4.1.5 to 5.1.8 (#15293)
Bumps [@formatjs/intl-pluralrules](https://github.com/formatjs/formatjs) from 4.1.5 to 5.1.8.
- [Release notes](https://github.com/formatjs/formatjs/releases)
- [Commits](https://github.com/formatjs/formatjs/compare/@formatjs/[email protected]...@formatjs/[email protected])

---
updated-dependencies:
- dependency-name: "@formatjs/intl-pluralrules"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-01 03:31:00 +00:00
dependabot[bot]andGitHub 7ff681d43e Bump @koa/cors from 3.1.0 to 4.0.0 (#15282) 2023-01-31 19:32:32 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2663be188e Bump systemjs from 6.3.2 to 6.13.0 (#15285)
Bumps [systemjs](https://github.com/systemjs/systemjs) from 6.3.2 to 6.13.0.
- [Release notes](https://github.com/systemjs/systemjs/releases)
- [Changelog](https://github.com/systemjs/systemjs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/systemjs/systemjs/compare/6.3.2...6.13.0)

---
updated-dependencies:
- dependency-name: systemjs
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-31 00:44:53 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6f68134da3 Bump @codemirror/commands from 6.1.3 to 6.2.0 (#15281)
Bumps [@codemirror/commands](https://github.com/codemirror/commands) from 6.1.3 to 6.2.0.
- [Release notes](https://github.com/codemirror/commands/releases)
- [Changelog](https://github.com/codemirror/commands/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/commands/compare/6.1.3...6.2.0)

---
updated-dependencies:
- dependency-name: "@codemirror/commands"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 23:57:14 -05:00
dependabot[bot]andGitHub 3d1151df4d Bump eslint-plugin-disable from 2.0.1 to 2.0.3 (#15283) 2023-01-30 22:50:51 -05:00
Bram Kragten 1838f6184b Merge branch 'master' into dev 2023-01-30 21:59:20 +01:00
Bram Kragten ca20a251b5 Bumped version to 20230130.0 2023-01-30 21:56:34 +01:00
8212a5a48c Improve energy settings dialog (#15205)
Co-authored-by: Paul Bottein <[email protected]>
2023-01-30 21:55:26 +01:00
cb00535683 Add missing translations to Supervisor Wi-Fi network section (#14606)
Co-authored-by: Paul Bottein <[email protected]>
2023-01-30 21:50:20 +01:00
Yosi LevyandGitHub 549d893407 RTL fixes (#15233) 2023-01-30 20:51:37 +01:00
Bram KragtenandGitHub c1ed00a3f1 Only use tagname for shortcut filter (#15273) 2023-01-30 20:50:57 +01:00
J. Nick KostonandGitHub 41420c3af3 Restore default hours to show on map card to 0 (#15220)
* Restore default hours to show on map card to 0

fixes #15216

* tweak

* always clear this._subscribed right away on unsub

* adjust

* merge from #15217

* merge from #15217
2023-01-30 20:34:35 +01:00
Paul BotteinandGitHub 9220d65f78 Fixes history unsubcription (#15271)
* Fixes history unsubcriptions

* Remove async
2023-01-30 13:08:33 -06:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
acf9bca038 Bump merge-stream from 1.0.1 to 2.0.0 (#15265)
Bumps [merge-stream](https://github.com/grncdr/merge-stream) from 1.0.1 to 2.0.0.
- [Release notes](https://github.com/grncdr/merge-stream/releases)
- [Commits](https://github.com/grncdr/merge-stream/compare/v1.0.1...v2.0.0)

---
updated-dependencies:
- dependency-name: merge-stream
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 13:41:28 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
a57c15c6f0 Bump webpack-manifest-plugin from 4.0.2 to 5.0.0 (#15252)
Bumps [webpack-manifest-plugin](https://github.com/shellscape/webpack-manifest-plugin) from 4.0.2 to 5.0.0.
- [Release notes](https://github.com/shellscape/webpack-manifest-plugin/releases)
- [Commits](https://github.com/shellscape/webpack-manifest-plugin/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: webpack-manifest-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 12:25:53 -05:00
Bram KragtenandGitHub 8642478e8a Fix shortcuts in supervisor search (#15269) 2023-01-30 16:36:50 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3af808ffa9 Bump @formatjs/intl-relativetimeformat from 9.3.2 to 11.1.8 (#15250)
Bumps [@formatjs/intl-relativetimeformat](https://github.com/formatjs/formatjs) from 9.3.2 to 11.1.8.
- [Release notes](https://github.com/formatjs/formatjs/releases)
- [Commits](https://github.com/formatjs/formatjs/compare/@formatjs/[email protected]...@formatjs/[email protected])

---
updated-dependencies:
- dependency-name: "@formatjs/intl-relativetimeformat"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 10:24:40 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ac17d0293e Bump @vaadin/vaadin-themable-mixin from 23.3.5 to 23.3.6 (#15260)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 15:08:18 +00:00
Paul BotteinandGitHub 7e441b5ade Fix entity list not updated when using graph card editor (#15217)
* Fix entity list not updated when using graph card editor

* Do not use async updated

* Fix names type

* Better error handling

* Feedbacks
2023-01-30 16:07:43 +01:00
dependabot[bot]andGitHub 82ed14e705 Bump @octokit/auth-oauth-device from 4.0.2 to 4.0.4 (#15263) 2023-01-30 07:28:41 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
169d8ac75c Bump intl-messageformat from 10.2.5 to 10.3.0 (#15266)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 12:10:14 +00:00
Paul BotteinandGitHub 6226a7f28d Fixes empty hardware page when no config entries (#15267) 2023-01-30 12:08:31 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
30e6a1a57e Bump babel-loader from 9.1.0 to 9.1.2 (#15264)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 11:51:30 +00:00
Paul BotteinandGitHub f332edc87d Fixes select input in statistic card editor (#15254) 2023-01-30 12:33:45 +01:00
Paul BotteinandGitHub eb49785557 Use right name pattern for active binary sensor color (#15255) 2023-01-30 12:29:47 +01:00
Paul BotteinandGitHub 0af92b9bd1 Use new variable name for light toggle icon in area card (#15259) 2023-01-30 12:29:25 +01:00
Steve RepsherandGitHub 6945f99a34 Bump fullcalendar to 5.11.4 (#15223) 2023-01-30 12:28:53 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
bbb9cfb2c2 Bump @types/chromecast-caf-sender from 1.0.3 to 1.0.5 (#15249)
Bumps [@types/chromecast-caf-sender](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chromecast-caf-sender) from 1.0.3 to 1.0.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chromecast-caf-sender)

---
updated-dependencies:
- dependency-name: "@types/chromecast-caf-sender"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 01:40:55 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
d96bb9cf20 Bump webpack-cli from 4.8.0 to 5.0.1 (#15181)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 4.8.0 to 5.0.1.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/[email protected]@5.0.1)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-29 02:01:07 -05:00
Paul BotteinGitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve RepsherPaulus Schoutsen
819366243f 20230128.0 (#15242)
* Bump superstruct from 0.15.2 to 1.0.3 (#15190)

Bumps [superstruct](https://github.com/ianstormtaylor/superstruct) from 0.15.2 to 1.0.3.
- [Release notes](https://github.com/ianstormtaylor/superstruct/releases)
- [Changelog](https://github.com/ianstormtaylor/superstruct/blob/main/Changelog.md)
- [Commits](https://github.com/ianstormtaylor/superstruct/compare/v0.15.2...v1.0.3)

---
updated-dependencies:
- dependency-name: superstruct
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump gulp-merge-json from 1.3.1 to 2.1.2 (#15173)

* Bump gulp-merge-json from 1.3.1 to 2.1.2

Bumps [gulp-merge-json](https://github.com/joshswan/gulp-merge-json) from 1.3.1 to 2.1.2.
- [Release notes](https://github.com/joshswan/gulp-merge-json/releases)
- [Commits](https://github.com/joshswan/gulp-merge-json/compare/1.3.1...v2.1.2)

---
updated-dependencies:
- dependency-name: gulp-merge-json
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>

* Bump @typescript-eslint/parser from 5.44.0 to 5.49.0 (#15210)

Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.44.0 to 5.49.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.49.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add link to docs in voice dialog (#15206)

* Bump intl-messageformat from 9.9.1 to 10.2.5 (#15213)

Bumps [intl-messageformat](https://github.com/formatjs/formatjs) from 9.9.1 to 10.2.5.
- [Release notes](https://github.com/formatjs/formatjs/releases)
- [Commits](https://github.com/formatjs/formatjs/compare/[email protected]@10.2.5)

---
updated-dependencies:
- dependency-name: intl-messageformat
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add missing hass to chart base (#15218)

* Bump qrcode and @types/qrcode (#15207)

* Bump qrcode and @types/qrcode

Bumps [qrcode](https://github.com/soldair/node-qrcode) and [@types/qrcode](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/qrcode). These dependencies needed to be updated together.

Updates `qrcode` from 1.4.4 to 1.5.1
- [Release notes](https://github.com/soldair/node-qrcode/releases)
- [Changelog](https://github.com/soldair/node-qrcode/blob/master/CHANGELOG.md)
- [Commits](https://github.com/soldair/node-qrcode/compare/v1.4.4...v1.5.1)

Updates `@types/qrcode` from 1.4.2 to 1.5.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/qrcode)

---
updated-dependencies:
- dependency-name: qrcode
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/qrcode"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Fix possible null canvas context

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>

* Fix margin and title on assist dialog (#15219)

* Bump fuse.js from 6.0.0 to 6.6.2 (#15209)

Bumps [fuse.js](https://github.com/krisk/Fuse) from 6.0.0 to 6.6.2.
- [Release notes](https://github.com/krisk/Fuse/releases)
- [Changelog](https://github.com/krisk/Fuse/blob/master/CHANGELOG.md)
- [Commits](https://github.com/krisk/Fuse/compare/v6.0.0...v6.6.2)

---
updated-dependencies:
- dependency-name: fuse.js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump eslint-config-prettier from 8.5.0 to 8.6.0 (#15226)

Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 8.5.0 to 8.6.0.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.5.0...v8.6.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @octokit/rest from 19.0.5 to 19.0.7 (#15228)

Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 19.0.5 to 19.0.7.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v19.0.5...v19.0.7)

---
updated-dependencies:
- dependency-name: "@octokit/rest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @codemirror/language from 6.3.2 to 6.4.0 (#15229)

* Bump @codemirror/language from 6.3.2 to 6.4.0

Bumps [@codemirror/language](https://github.com/codemirror/language) from 6.3.2 to 6.4.0.
- [Release notes](https://github.com/codemirror/language/releases)
- [Changelog](https://github.com/codemirror/language/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/language/compare/6.3.2...6.4.0)

---
updated-dependencies:
- dependency-name: "@codemirror/language"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>

* Bump webpackbar from 5.0.0-3 to 5.0.2 (#15225)

Bumps [webpackbar](https://github.com/unjs/webpackbar) from 5.0.0-3 to 5.0.2.
- [Release notes](https://github.com/unjs/webpackbar/releases)
- [Changelog](https://github.com/unjs/webpackbar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/unjs/webpackbar/compare/v5.0.0-3...v5.0.2)

---
updated-dependencies:
- dependency-name: webpackbar
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bumped version to 20230128.0

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
Co-authored-by: Paulus Schoutsen <[email protected]>
2023-01-28 13:53:28 +01:00
Paul Bottein ec2d498334 Bumped version to 20230128.0 2023-01-28 13:42:07 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
c9b1b92e70 Bump webpackbar from 5.0.0-3 to 5.0.2 (#15225)
Bumps [webpackbar](https://github.com/unjs/webpackbar) from 5.0.0-3 to 5.0.2.
- [Release notes](https://github.com/unjs/webpackbar/releases)
- [Changelog](https://github.com/unjs/webpackbar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/unjs/webpackbar/compare/v5.0.0-3...v5.0.2)

---
updated-dependencies:
- dependency-name: webpackbar
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-27 10:02:58 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
a4a2e1b99e Bump @codemirror/language from 6.3.2 to 6.4.0 (#15229)
* Bump @codemirror/language from 6.3.2 to 6.4.0

Bumps [@codemirror/language](https://github.com/codemirror/language) from 6.3.2 to 6.4.0.
- [Release notes](https://github.com/codemirror/language/releases)
- [Changelog](https://github.com/codemirror/language/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/language/compare/6.3.2...6.4.0)

---
updated-dependencies:
- dependency-name: "@codemirror/language"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-27 14:11:08 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
b31af60397 Bump @octokit/rest from 19.0.5 to 19.0.7 (#15228)
Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 19.0.5 to 19.0.7.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v19.0.5...v19.0.7)

---
updated-dependencies:
- dependency-name: "@octokit/rest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-27 06:35:13 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
01facc2254 Bump eslint-config-prettier from 8.5.0 to 8.6.0 (#15226)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 8.5.0 to 8.6.0.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.5.0...v8.6.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-27 06:31:28 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
8b4587785c Bump fuse.js from 6.0.0 to 6.6.2 (#15209)
Bumps [fuse.js](https://github.com/krisk/Fuse) from 6.0.0 to 6.6.2.
- [Release notes](https://github.com/krisk/Fuse/releases)
- [Changelog](https://github.com/krisk/Fuse/blob/master/CHANGELOG.md)
- [Commits](https://github.com/krisk/Fuse/compare/v6.0.0...v6.6.2)

---
updated-dependencies:
- dependency-name: fuse.js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-26 23:22:08 -05:00
Paul BotteinandGitHub 89623aa7ec Fix margin and title on assist dialog (#15219) 2023-01-26 21:48:28 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
afb9e826ef Bump qrcode and @types/qrcode (#15207)
* Bump qrcode and @types/qrcode

Bumps [qrcode](https://github.com/soldair/node-qrcode) and [@types/qrcode](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/qrcode). These dependencies needed to be updated together.

Updates `qrcode` from 1.4.4 to 1.5.1
- [Release notes](https://github.com/soldair/node-qrcode/releases)
- [Changelog](https://github.com/soldair/node-qrcode/blob/master/CHANGELOG.md)
- [Commits](https://github.com/soldair/node-qrcode/compare/v1.4.4...v1.5.1)

Updates `@types/qrcode` from 1.4.2 to 1.5.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/qrcode)

---
updated-dependencies:
- dependency-name: qrcode
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/qrcode"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Fix possible null canvas context

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-26 17:47:44 +00:00
Paul BotteinandGitHub ac075e44cc Add missing hass to chart base (#15218) 2023-01-26 15:37:51 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
fcf6bfc457 Bump intl-messageformat from 9.9.1 to 10.2.5 (#15213)
Bumps [intl-messageformat](https://github.com/formatjs/formatjs) from 9.9.1 to 10.2.5.
- [Release notes](https://github.com/formatjs/formatjs/releases)
- [Commits](https://github.com/formatjs/formatjs/compare/[email protected]@10.2.5)

---
updated-dependencies:
- dependency-name: intl-messageformat
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-26 10:17:44 -05:00
Paulus SchoutsenandGitHub 3951646c7f Add link to docs in voice dialog (#15206) 2023-01-26 14:38:42 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
be6aabe23e Bump @typescript-eslint/parser from 5.44.0 to 5.49.0 (#15210)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.44.0 to 5.49.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.49.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-26 02:05:46 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
25f7a0602a Bump gulp-merge-json from 1.3.1 to 2.1.2 (#15173)
* Bump gulp-merge-json from 1.3.1 to 2.1.2

Bumps [gulp-merge-json](https://github.com/joshswan/gulp-merge-json) from 1.3.1 to 2.1.2.
- [Release notes](https://github.com/joshswan/gulp-merge-json/releases)
- [Commits](https://github.com/joshswan/gulp-merge-json/compare/1.3.1...v2.1.2)

---
updated-dependencies:
- dependency-name: gulp-merge-json
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-26 05:52:16 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
34ed446cd2 Bump superstruct from 0.15.2 to 1.0.3 (#15190)
Bumps [superstruct](https://github.com/ianstormtaylor/superstruct) from 0.15.2 to 1.0.3.
- [Release notes](https://github.com/ianstormtaylor/superstruct/releases)
- [Changelog](https://github.com/ianstormtaylor/superstruct/blob/main/Changelog.md)
- [Commits](https://github.com/ianstormtaylor/superstruct/compare/v0.15.2...v1.0.3)

---
updated-dependencies:
- dependency-name: superstruct
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-25 11:40:00 -05:00
Bram KragtenandGitHub 51a45dd3cf 20230125.0 (#15200) 2023-01-25 17:19:42 +01:00
Paul BotteinandGitHub ffd7a0c153 Revert "New more info light" (#15203)
Revert "New more info light (#14453)"

This reverts commit 7c4a421e74.
2023-01-25 17:16:01 +01:00
Paul BotteinandGitHub b591c75377 Tile card fixes with vertical layout (#15202) 2023-01-25 17:15:12 +01:00
Bram KragtenandGitHub d2886b1ea7 Add aliases to areas (#15198)
* Add aliases to areas

* rename

* Update dialog-aliases.ts
2023-01-25 16:55:58 +01:00
Bram Kragten a3ba8210cf Merge branch 'master' into dev 2023-01-25 16:49:25 +01:00
Bram Kragten d1a04349a4 Bumped version to 20230125.0 2023-01-25 16:47:04 +01:00
Bram KragtenandGitHub bb273b2b54 Localize fixes (#15199) 2023-01-25 15:44:59 +00:00
karwostsandGitHub 00667f1296 Vertically align history charts on left axis (#14919)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2023-01-25 15:42:20 +00:00
Florian GareisandGitHub 06368a6f0e Add vertical option for tile card (#14743) 2023-01-25 16:28:22 +01:00
Paul BotteinandGitHub 7c4a421e74 New more info light (#14453) 2023-01-25 11:24:16 +01:00
karwostsandGitHub 3675a2b013 Fix ha-selector-object not updating in the ui when new value is pushed from the parent (#15022)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2023-01-25 11:09:58 +01:00
Steve RepsherandGitHub 0bbe6151ed Bump vaadin to 23.3.5 (#15185) 2023-01-25 11:06:28 +01:00
Paul BotteinandGitHub dace00ebf8 Fixes voice dialog border radius on safari (#15193) 2023-01-25 11:05:59 +01:00
Paul BotteinandGitHub a433ac48e9 Use device class icon for number domain (#15194) 2023-01-25 11:05:35 +01:00
Erik MontnemeryandGitHub ddfaa67456 Allow overriding a sensor's precision (#15176)
* Allow overriding a sensor's precision

* use a dropdown for choosing precision

* Address review comments

* Handle undefined state

* Loose equality FTW

* Apply suggestions from code review
2023-01-25 11:04:03 +01:00
Paulus SchoutsenandGitHub 8b4b19cc96 Remove onboarding support for conversation agent (#15187) 2023-01-25 10:28:43 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
c4183a9edb Bump @formatjs/intl-getcanonicallocales from 1.8.0 to 2.0.5 (#15174)
Bumps [@formatjs/intl-getcanonicallocales](https://github.com/formatjs/formatjs) from 1.8.0 to 2.0.5.
- [Release notes](https://github.com/formatjs/formatjs/releases)
- [Commits](https://github.com/formatjs/formatjs/compare/@formatjs/[email protected]...@formatjs/[email protected])

---
updated-dependencies:
- dependency-name: "@formatjs/intl-getcanonicallocales"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-24 14:55:36 -05:00
363ad369fc Fix current_humidity no shown on climate state card if also current_temperature is set (#14993)
* Also show current_humidity on climate

* Use one line

* Update src/components/ha-climate-state.ts

Co-authored-by: Paul Bottein <[email protected]>

* Another blank and add import

Co-authored-by: Paul Bottein <[email protected]>
2023-01-24 16:55:13 +00:00
karwostsandGitHub 711286f7c0 Round battery values in device table to whole numbers (to fit in the column width) (#14927)
* Increase battery column width to fit 100.0%

* drop trailing 0s from battery decimals

* round values to whole numbers
2023-01-24 17:16:03 +01:00
holnburgerandGitHub 78857357f3 Add dark_mode options for image elements in picture-element-card (#15045) 2023-01-24 14:31:25 +00:00
karwostsandGitHub 3c23e6a1c3 Add UI support for entities in numeric_state above/below conditions &… (#14966)
fixes undefined
2023-01-24 14:45:56 +01:00
karwostsandGitHub 10369ff952 Delete weekdays key from time condition when emptied from the UI (#14992)
Co-authored-by: Paul Bottein <[email protected]>
fixes undefined
2023-01-24 14:30:29 +01:00
Steve RepsherandGitHub 134670604b Tell dependabot to ignore rollup (#15169) 2023-01-24 14:29:14 +01:00
cnicoandGitHub 8935dbac20 Allow iframe links to open on android through a parameter (#15063) 2023-01-24 13:24:11 +00:00
Adam KaposandGitHub ccf15c7fb0 Fix button card font size on mobile (#14698) 2023-01-24 12:59:33 +00:00
Adam KaposandGitHub 5e4b673751 Fix relative time above 22 hours (#15072)
fixes https://github.com/home-assistant/frontend/issues/14815
fixes undefined
2023-01-24 12:53:57 +00:00
Paul BotteinandGitHub 98e799eda0 Allow coloring inactive states in dashboard cards (#15177) 2023-01-24 13:45:47 +01:00
Erik MontnemeryandGitHub 5e9ae36577 Fetch number units from core (#15175) 2023-01-24 12:14:21 +01:00
karwostsandGitHub 624bfbbaf1 Fix add/remove entities from map card editor (#15087) 2023-01-24 07:54:27 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
0e71eec937 Bump husky from 8.0.1 to 8.0.3 (#15171)
Bumps [husky](https://github.com/typicode/husky) from 8.0.1 to 8.0.3.
- [Release notes](https://github.com/typicode/husky/releases)
- [Commits](https://github.com/typicode/husky/compare/v8.0.1...v8.0.3)

---
updated-dependencies:
- dependency-name: husky
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-24 01:34:37 -05:00
Artem DraftandGitHub 38562a42d6 Fix volume slider of assumed_state media player in entity row (#14931) 2023-01-23 20:19:11 +00:00
karwostsandGitHub e242fbe148 Sort battery level column using numeric sort (#14926)
fixes undefined
2023-01-23 21:10:01 +01:00
Karlie MeadsandGitHub 81e4f083f9 Fix disabling a state condition in the visual automation editor (#15027) 2023-01-23 21:08:10 +01:00
Yosi LevyandGitHub 533b4ec0b4 Fix humidifier and log drop down (#14999) 2023-01-23 21:01:02 +01:00
karwostsandGitHub 50a4c0f7ce Load script field default values into ha-service-control (#14949)
fixes undefined
2023-01-23 20:56:48 +01:00
karwostsandGitHub dfee6c9b5b Remove gauge card transparency on focus (#14789)
fixes undefined
2023-01-23 20:43:51 +01:00
Steve RepsherandGitHub fe2b4d9598 Remove aria-label and blur from list items (#15073) 2023-01-23 20:39:50 +01:00
e6dbb1da7e Add backend translation support for selector select (#15064)
* Base for selector translations

* Allow translations for ha-selector-select

* Fetch translation for config flow and onboarding

* Get translation_key from step handler

* Add domain property to DataEntry flow

* Revert fetching translation for onboarding flow

* Leave domain for repair flows

* Use localizeValue function

* Change type

* Import selector translations in issue flow

Co-authored-by: Paul Bottein <[email protected]>
2023-01-23 20:32:30 +01:00
karwostsandGitHub 095ebbc903 Allow empty string as a valid conditional statement (#14918)
* Fix days missing from ha-base-time-input _valueChanged

* style change

* Allow empty string as a valid conditional check
2023-01-23 20:27:02 +01:00
Steve RepsherandGitHub 9dcdf46316 Bump yarn to 3.3.1 (#15166) 2023-01-23 19:25:04 +00:00
Paul BotteinandGitHub d6e0d57744 Improve HA form default support (#14570)
* use default as placeholder if not required

* Do not force number selector to 0 or min when empty

* use undefined instead of empty string
2023-01-23 20:09:13 +01:00
karwostsandGitHub 38c1112308 Prevent optional time fields in ha-service-control from auto-enabling (#15124)
* Fix select box overflowing entities-row

* Revert "Fix select box overflowing entities-row"

This reverts commit b4e668dd06.

* Fix optional time fields in service control from auto-enabling
2023-01-23 19:59:50 +01:00
Steve RepsherandGitHub 88ee409987 Bump lit and lit-labs to latest (#15127)
* Bump lit and lit-labs to latest

* Resolve to same @lit/reactive-element for app-datepicker
2023-01-23 19:56:56 +01:00
Paulus SchoutsenandGitHub 8073555bf9 Show Thread panel on thread config entry (#15150)
* Show Thread panel on thread config entry

* Rename data file to use right domain

* Make panel a bit more pleasant
2023-01-23 19:55:31 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
b4cd4975c1 Bump punycode from 2.1.1 to 2.3.0 (#15162)
* Bump punycode from 2.1.1 to 2.3.0

Bumps [punycode](https://github.com/mathiasbynens/punycode.js) from 2.1.1 to 2.3.0.
- [Release notes](https://github.com/mathiasbynens/punycode.js/releases)
- [Commits](https://github.com/mathiasbynens/punycode.js/commits)

---
updated-dependencies:
- dependency-name: punycode
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-23 16:51:11 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
518d4f9c5b Bump date-fns from 2.23.0 to 2.29.3 (#15159)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 08:01:40 -05:00
J. Nick KostonandGitHub f991a1b819 Remove refresh interval configuration option from history graph card (#15154) 2023-01-23 09:40:59 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6fc5fd9cc4 Bump cropperjs from 1.5.12 to 1.5.13 (#15161)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 09:34:21 +01:00
d15d339782 Entity state colors theming (#14831)
Co-authored-by: Bram Kragten <[email protected]>
2023-01-23 09:28:38 +01:00
Steve RepsherandGitHub 1b922e0065 Add more alternative text to various images (#14932)
* Add alt text for cast launcher images

* Hide icon with supervisor form field label

* Use attribute for iframe title for ingress view

* Hide some decorative ZWave/ZHA icons

* Hide image preload in state card configurator

* Use title for alt text  on image media

* Hide media art as decorative

* Do not allow empty string for image media
2023-01-22 22:47:12 -05:00
Steve RepsherandGitHub c8883a6a8a Bump devContainer image to python 3.10 (#15158) 2023-01-22 21:40:37 -05:00
e14e27c01a Remove unused fetchRecent/fetchRecentWS/fetchDate history data functions (#15146)
* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* fixes

* cleanup

* redraw

* naming is hard

* drop cached history

* backport

* Convert history header/footer to use streaming history

needs #15112

* Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

* Remove unused fetchRecent/fetchRecentWS/fetchDate history data functions

These call are no longer needed after

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* review

* review

* review

* review

* review

* review

* review

* review

* adjust

* Revert "adjust"

This reverts commit 6ba31da4a5.

* move setInterval

* Object.keys to for

* refactor

Co-authored-by: Paulus Schoutsen <[email protected]>
2023-01-22 04:36:47 +00:00
Steve RepsherandGitHub f101bd1a54 Fix localize key errors for URL error and system log (#14909)
* Use literal type for system log level

* Fix typo in URL error title key

* Remove localize key exceptions
2023-01-21 23:29:17 -05:00
J. Nick KostonandGitHub 3e14d825e3 Optimize purge of old live history data in the time window (#15153)
from https://github.com/home-assistant/frontend/pull/15112#discussion_r1083382923
2023-01-22 04:16:52 +00:00
f34d9c3d75 Update map card to use streaming history (#15145)
* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* fixes

* cleanup

* redraw

* naming is hard

* drop cached history

* backport

* Convert history header/footer to use streaming history

needs #15112

* Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

Update map card to use streaming history

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* review

* review

* review

* review

* review

* review

* review

* review

* adjust

* Revert "adjust"

This reverts commit 6ba31da4a5.

* move setInterval

* Object.keys to for

* refactor

Co-authored-by: Paulus Schoutsen <[email protected]>
2023-01-22 04:12:58 +00:00
2b2dd74672 Convert history header/footer to use streaming history (#15136)
* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* fixes

* cleanup

* redraw

* naming is hard

* drop cached history

* backport

* Convert history header/footer to use streaming history

needs #15112

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* review

* review

* review

* review

* review

* review

* review

* review

* adjust

* Revert "adjust"

This reverts commit 6ba31da4a5.

* move setInterval

Co-authored-by: Paulus Schoutsen <[email protected]>
2023-01-22 03:58:12 +00:00
815d4c165d Add support for streaming history (#15112)
* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* Add support for streaming history

* fixes

* cleanup

* redraw

* naming is hard

* drop cached history

* backport

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* Update src/data/history.ts

Co-authored-by: Paulus Schoutsen <[email protected]>

* review

* review

* review

* review

* review

* review

* review

* review

* adjust

* Revert "adjust"

This reverts commit 6ba31da4a5.

Co-authored-by: Paulus Schoutsen <[email protected]>
2023-01-21 22:41:41 -05:00
Steve RepsherandGitHub fd22afedd0 Fix uncaught exception in quick-bar mixin (#15061) 2023-01-21 22:23:14 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
522c7c08a9 Bump hls.js from 1.2.5 to 1.3.1 (#15128)
Bumps [hls.js](https://github.com/video-dev/hls.js) from 1.2.5 to 1.3.1.
- [Release notes](https://github.com/video-dev/hls.js/releases)
- [Changelog](https://github.com/video-dev/hls.js/blob/master/docs/release-process.md)
- [Commits](https://github.com/video-dev/hls.js/compare/v1.2.5...v1.3.1)

---
updated-dependencies:
- dependency-name: hls.js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-21 01:48:22 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dc140f132d Bump @types/js-yaml from 4.0.3 to 4.0.5 (#15140)
Bumps [@types/js-yaml](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/js-yaml) from 4.0.3 to 4.0.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/js-yaml)

---
updated-dependencies:
- dependency-name: "@types/js-yaml"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-20 10:08:16 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4c76a2549b Bump glob and @types/glob (#15138)
Bumps [glob](https://github.com/isaacs/node-glob) and [@types/glob](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/glob). These dependencies needed to be updated together.

Updates `glob` from 7.2.0 to 8.1.0
- [Release notes](https://github.com/isaacs/node-glob/releases)
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v7.2.0...v8.1.0)

Updates `@types/glob` from 7.2.0 to 8.0.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/glob)

---
updated-dependencies:
- dependency-name: glob
  dependency-type: direct:development
  update-type: version-update:semver-major
- dependency-name: "@types/glob"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-20 14:39:06 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
a5c77928d2 Bump eslint-plugin-wc from 1.3.2 to 1.4.0 (#15139)
Bumps [eslint-plugin-wc](https://github.com/43081j/eslint-plugin-wc) from 1.3.2 to 1.4.0.
- [Release notes](https://github.com/43081j/eslint-plugin-wc/releases)
- [Changelog](https://github.com/43081j/eslint-plugin-wc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/43081j/eslint-plugin-wc/commits)

---
updated-dependencies:
- dependency-name: eslint-plugin-wc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-20 09:17:34 -05:00
Paulus SchoutsenandGitHub d3e20429a4 Prepare conversation agent (#15135) 2023-01-19 16:28:03 +01:00
Paul BotteinandGitHub 2f1d783d22 Revert "Bump webpack from 5.55.1 to 5.75.0" (#15142)
Revert "Bump webpack from 5.55.1 to 5.75.0 (#15080)"

This reverts commit c7f4693f0a.
2023-01-19 09:48:34 +01:00
Paulus SchoutsenandGitHub 558f523207 Add initial Thread panel (#15126)
* Add initial Thread panel

* Add link to Matter panel
2023-01-19 09:35:33 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
c7f4693f0a Bump webpack from 5.55.1 to 5.75.0 (#15080)
* Bump webpack from 5.55.1 to 5.75.0

Bumps [webpack](https://github.com/webpack/webpack) from 5.55.1 to 5.75.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.55.1...v5.75.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-18 15:27:38 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Paul Bottein
282823ee83 Bump prettier from 2.8.1 to 2.8.3 (#15129)
* Bump prettier from 2.8.1 to 2.8.3

Bumps [prettier](https://github.com/prettier/prettier) from 2.8.1 to 2.8.3.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.1...2.8.3)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* apply rules

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Paul Bottein <[email protected]>
2023-01-18 14:16:42 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
014ae06e85 Bump del from 4.1.1 to 7.0.0 (#15120)
* Bump del from 4.1.1 to 7.0.0

Bumps [del](https://github.com/sindresorhus/del) from 4.1.1 to 7.0.0.
- [Release notes](https://github.com/sindresorhus/del/releases)
- [Commits](https://github.com/sindresorhus/del/compare/v4.1.1...v7.0.0)

---
updated-dependencies:
- dependency-name: del
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

* Adjust to ESM-only and API changes

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-18 18:21:41 +00:00
Paul BotteinandGitHub 9e5442db18 Use ripple effect for tile card (#15007)
* Use ripple effect for tile card

* Use border for focus
2023-01-18 11:35:54 +01:00
Paul BotteinandGitHub 789a69fea5 Improve slider/switch bar focus style (#15009)
Improve bar input focus style
2023-01-18 11:34:57 +01:00
Paul BotteinandGitHub c7da1a95da Exclude selected items for entities picker (#15057) 2023-01-18 11:34:23 +01:00
Paul BotteinandGitHub 6d527d5ebe Add required style to required select selector (#15082) 2023-01-18 11:33:05 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
9d529d8f13 Bump sinon from 11.0.0 to 15.0.1 (#15121)
* Bump sinon from 11.0.0 to 15.0.1

Bumps [sinon](https://github.com/sinonjs/sinon) from 11.0.0 to 15.0.1.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v11.0.0...v15.0.1)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-18 06:11:05 +00:00
Steve RepsherandGitHub 468aeda74a Bump @material components to 0.27 (#15000) 2023-01-17 15:25:43 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
f6a508683c Bump memoize-one from 5.2.1 to 6.0.0 (#15122)
Bumps [memoize-one](https://github.com/alexreardon/memoize-one) from 5.2.1 to 6.0.0.
- [Release notes](https://github.com/alexreardon/memoize-one/releases)
- [Commits](https://github.com/alexreardon/memoize-one/compare/v5.2.1...v6.0.0)

---
updated-dependencies:
- dependency-name: memoize-one
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-17 08:56:39 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
64fabbbf05 Bump follow-redirects from 1.13.0 to 1.15.2 (#15119)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.13.0 to 1.15.2.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.13.0...v1.15.2)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-17 06:03:39 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
9b95814f1b Bump webpack-dev-server from 4.3.0 to 4.11.1 (#15081)
* Bump webpack-dev-server from 4.3.0 to 4.11.1

Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.3.0 to 4.11.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.3.0...v4.11.1)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-17 00:45:58 -05:00
Paulus SchoutsenandGitHub 2f2cde328c How can I assist (#15118) 2023-01-16 22:57:32 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
8294e0e271 Bump object-hash from 2.0.3 to 3.0.0 (#15114)
Bumps [object-hash](https://github.com/puleos/object-hash) from 2.0.3 to 3.0.0.
- [Release notes](https://github.com/puleos/object-hash/releases)
- [Commits](https://github.com/puleos/object-hash/compare/v2.0.3...v3.0.0)

---
updated-dependencies:
- dependency-name: object-hash
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16 18:51:18 -05:00
karwostsandGitHub f09859ab40 Fix select box overflowing entities-row (#15105) 2023-01-16 10:35:38 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
e206e86fb3 Bump xss from 1.0.9 to 1.0.14 (#15115)
* Bump xss from 1.0.9 to 1.0.14

Bumps [xss](https://github.com/leizongmin/js-xss) from 1.0.9 to 1.0.14.
- [Release notes](https://github.com/leizongmin/js-xss/releases)
- [Changelog](https://github.com/leizongmin/js-xss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/leizongmin/js-xss/compare/v1.0.9...v1.0.14)

---
updated-dependencies:
- dependency-name: xss
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Use whitelist type from package

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-16 07:24:21 +00:00
Bram KragtenandGitHub 21f3eb9103 filter disabled hardware integrations (#14964) 2023-01-16 01:10:36 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
932614e31a Bump @babel/plugin-proposal-decorators from 7.20.2 to 7.20.7 (#15053)
* Bump @babel/plugin-proposal-decorators from 7.20.2 to 7.20.7

Bumps [@babel/plugin-proposal-decorators](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-proposal-decorators) from 7.20.2 to 7.20.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.20.7/packages/babel-plugin-proposal-decorators)

---
updated-dependencies:
- dependency-name: "@babel/plugin-proposal-decorators"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-16 06:05:38 +00:00
Paul BotteinandGitHub 1d20d6979e Improve voice dialog (#15084)
* Improve voice dialog

* Improve scrolling and dialog size

* Align messages to bottom for better keyboard support

* Add send button

* Simplify label
2023-01-13 16:20:29 -05:00
dependabot[bot]andGitHub 207380d0da Bump @octokit/rest from 19.0.4 to 19.0.5 (#15100) 2023-01-13 06:50:47 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
d2c091536e Bump rollup-plugin-visualizer from 4.0.4 to 5.9.0 (#14983)
* Bump rollup-plugin-visualizer from 4.0.4 to 5.9.0

Bumps [rollup-plugin-visualizer](https://github.com/btd/rollup-plugin-visualizer) from 4.0.4 to 5.9.0.
- [Release notes](https://github.com/btd/rollup-plugin-visualizer/releases)
- [Changelog](https://github.com/btd/rollup-plugin-visualizer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/btd/rollup-plugin-visualizer/commits/v5.9.0)

---
updated-dependencies:
- dependency-name: rollup-plugin-visualizer
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependenciesWIP: 663b6e068 Bump @formatjs/intl-locale from 2.4.40 to 3.0.11 (#15077)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-12 22:21:47 +00:00
Paul BotteinandGitHub 2eb5335a68 Uses websocket to get sensor device class units (#15014)
* Uses websocket to get sensor device class units

* Only show convertible units

* Update endpoint
2023-01-12 09:49:11 -05:00
Paul BotteinandGitHub 1aa23d75b0 Use backend translations for energy validation (#15069) 2023-01-12 13:01:43 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
663b6e0682 Bump @formatjs/intl-locale from 2.4.40 to 3.0.11 (#15077)
Bumps [@formatjs/intl-locale](https://github.com/formatjs/formatjs) from 2.4.40 to 3.0.11.
- [Release notes](https://github.com/formatjs/formatjs/releases)
- [Commits](https://github.com/formatjs/formatjs/compare/@formatjs/[email protected]...@formatjs/[email protected])

---
updated-dependencies:
- dependency-name: "@formatjs/intl-locale"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-11 10:57:43 -05:00
Paul BotteinandGitHub c7f3293c1d Add close button to fullscreen conversation dialog (on mobile) (#15058)
* Add close button to fullscreen conversation dialog (on mobile)

* Remove hardcoded heading
2023-01-11 14:18:55 +01:00
Paul BotteinandGitHub c63b64cff5 Reduce label length for regex pattern input text helper (#15016)
* Reduce label length for regex pattern input text helper

* Rename key
2023-01-11 09:54:11 +01:00
Paul BotteinandGitHub 7136142437 Add state color for schedule and plant domains (#15020)
* Add state color for schedule domain

* Add state color for plant domain
2023-01-11 09:53:36 +01:00
Paul BotteinandGitHub af9a8fa3e7 Fixes humidifier off icon (#15021) 2023-01-11 09:53:20 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
b74a2fd277 Bump lint-staged from 13.0.3 to 13.1.0 (#15079)
Bumps [lint-staged](https://github.com/okonet/lint-staged) from 13.0.3 to 13.1.0.
- [Release notes](https://github.com/okonet/lint-staged/releases)
- [Commits](https://github.com/okonet/lint-staged/compare/v13.0.3...v13.1.0)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-11 06:37:00 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
e5350a4246 Bump regenerator-runtime from 0.13.8 to 0.13.11 (#15013)
* Bump regenerator-runtime from 0.13.8 to 0.13.11

Bumps [regenerator-runtime](https://github.com/facebook/regenerator) from 0.13.8 to 0.13.11.
- [Release notes](https://github.com/facebook/regenerator/releases)
- [Commits](https://github.com/facebook/regenerator/compare/[email protected]@0.13.11)

---
updated-dependencies:
- dependency-name: regenerator-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-11 06:32:40 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
9e5a59fbc4 Bump @thomasloven/round-slider from 0.5.4 to 0.6.0 (#15051)
Bumps [@thomasloven/round-slider](https://github.com/thomasloven/round-slider) from 0.5.4 to 0.6.0.
- [Release notes](https://github.com/thomasloven/round-slider/releases)
- [Commits](https://github.com/thomasloven/round-slider/commits)

---
updated-dependencies:
- dependency-name: "@thomasloven/round-slider"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-10 18:04:47 -05:00
Paul BotteinandGitHub 24e6b8483e 20230110.0 (#15070) 2023-01-10 19:24:17 +01:00
Paul Bottein 604c452ff4 Bumped version to 20230110.0 2023-01-10 19:04:27 +01:00
Paul Bottein ba9551b61e Fixes weekday calendar chips toggle (#14990) 2023-01-10 18:33:29 +01:00
Paul Bottein 135af5bcaa Remove aliases configuration from alexa cloud page (#15003) 2023-01-10 18:33:16 +01:00
Allen PorterandPaul Bottein 747f47524e Fix UNTIL values to be inclusive of last event and bug in populating recurrence rules when editing calendar events (#15024)
* Fix bug in populating recurrence rules when editing calendar events

* Set UNTIL value to be inclusive of the last instance

* Fix lint errors
2023-01-10 18:32:18 +01:00
Paul Bottein 36b959dbc4 Fixes multiple domains target selector in blueprint (#15054)
* Fixes multiple domains target selector in blueprint

* Fixes lint
2023-01-10 18:31:22 +01:00
Paul Bottein 1d15f81b6c Fixes moon badge icon (#15015) 2023-01-10 18:30:21 +01:00
Paul BotteinandGitHub 45e7f8ae06 Fixes multiple domains target selector in blueprint (#15054)
* Fixes multiple domains target selector in blueprint

* Fixes lint
2023-01-10 18:28:34 +01:00
Paul BotteinandGitHub dcedafaef4 Fixes moon badge icon (#15015) 2023-01-10 18:28:07 +01:00
Steve Repsher 2fdb6f1241 Merge dev to bump action versions 2023-01-09 14:28:18 +00:00
Allen PorterandGitHub 8fac5f6d75 Fix UNTIL values to be inclusive of last event and bug in populating recurrence rules when editing calendar events (#15024)
* Fix bug in populating recurrence rules when editing calendar events

* Set UNTIL value to be inclusive of the last instance

* Fix lint errors
2023-01-09 12:28:31 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
5094e8f428 Bump typescript from 4.9.3 to 4.9.4 (#15052)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.9.3 to 4.9.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.9.3...v4.9.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 12:18:45 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
74fb8b0427 Bump actions/setup-node from 3.5.1 to 3.6.0 (#15049)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 11:33:34 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
78768b1e2f Bump actions/checkout from 3.2.0 to 3.3.0 (#15050)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 10:39:28 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
d55307098a Bump @vue/web-component-wrapper from 1.2.0 to 1.3.0 (#14782)
* Bump @vue/web-component-wrapper from 1.2.0 to 1.3.0

Bumps [@vue/web-component-wrapper](https://github.com/vuejs/web-component-wrapper) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/vuejs/web-component-wrapper/releases)
- [Commits](https://github.com/vuejs/web-component-wrapper/commits)

---
updated-dependencies:
- dependency-name: "@vue/web-component-wrapper"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Correct wrap type and remove unnecessary TS ignores

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-09 06:45:49 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
7286aa7dc4 bump open from 7.3.0 to 8.4.0 (#14776)
* dev(deps-dev): bump open from 7.3.0 to 8.4.0

Bumps [open](https://github.com/sindresorhus/open) from 7.3.0 to 8.4.0.
- [Release notes](https://github.com/sindresorhus/open/releases)
- [Commits](https://github.com/sindresorhus/open/compare/v7.3.0...v8.4.0)

---
updated-dependencies:
- dependency-name: open
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-08 06:05:16 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
b44b22c723 Bump fs-extra from 7.0.1 to 11.1.0 (#15012)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-06 12:29:40 +01:00
Paul BotteinandGitHub dcee89caeb Display aliases in cloud page (#14989)
* Display aliases in cloud page

* Fixes ellipsis

* Improve sort

* Separate alias list and button

* Remove alexa changes

* Apply suggestions
2023-01-06 12:27:36 +01:00
Paul BotteinandGitHub d1caeed05e Remove aliases configuration from alexa cloud page (#15003) 2023-01-06 12:15:45 +01:00
Franck NijhofandGitHub f2a67a5fa9 Add calendar domain to sensors (#15002) 2023-01-06 09:43:57 +01:00
Paul BotteinandGitHub b2d5304488 Fixes weekday calendar chips toggle (#14990) 2023-01-06 08:04:45 +01:00
Philip AllgaierandGitHub e9aded77da Bump mdi/js and mdi/svg to 7.1.96 (#15006) 2023-01-05 17:25:55 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
e1a94c679f bump workbox from 6.4.2 to 6.5.4 (#14775)
* prod(deps): bump workbox-cacheable-response from 6.4.2 to 6.5.4

Bumps [workbox-cacheable-response](https://github.com/googlechrome/workbox) from 6.4.2 to 6.5.4.
- [Release notes](https://github.com/googlechrome/workbox/releases)
- [Commits](https://github.com/googlechrome/workbox/compare/v6.4.2...v6.5.4)

---
updated-dependencies:
- dependency-name: workbox-cacheable-response
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump the rest of the workbox packages

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2023-01-05 22:22:41 +00:00
Steve RepsherandGitHub 616bced37c Bump @codemirror packages to version 6.x (#14969) 2023-01-04 17:19:00 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1585c6bf52 Bump json5 from 1.0.1 to 1.0.2 (#14986)
Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-04 14:55:09 -05:00
Bram KragtenandGitHub caa852559f 20230104.0 (#14985) 2023-01-04 11:43:34 +01:00
Bram Kragten f2fa433326 Bumped version to 20230104.0 2023-01-04 11:35:18 +01:00
Jan BouwhuisandGitHub dd109b0054 Fix lokalization of MQTT config entry panel re-configure button and title (#14915) 2023-01-04 11:30:15 +01:00
puddlyandGitHub 9750e0e0b5 Ensure Lovelace deviceEntries lookup handles missing keys (#14980)
fixes undefined
2023-01-04 11:29:47 +01:00
Philip AllgaierandGitHub b36eba0916 Ensure calender event description can be edited (#14979) 2023-01-04 10:44:39 +01:00
Paul BotteinandGitHub 18a69d633f Add padding to device action form (#14976) 2023-01-03 14:02:16 +00:00
Paul BotteinandGitHub bf6ad3d0a5 Replace ZMK by ZMW currency (#14975) 2023-01-03 14:02:10 +00:00
Paul BotteinandGitHub 9836912efa Display zone name in state badge (#14974) 2023-01-03 14:58:30 +01:00
Felipe SantosandGitHub f31a7c3af0 Fix issue with reload not working sometimes (#14939)
fixes undefined
2023-01-03 11:09:18 +01:00
Bram KragtenandGitHub ebb19e4ed5 20230102.0 (#14963) 2023-01-02 21:42:03 +01:00
Bram Kragten 44d91eaa4f Bumped version to 20230102.0 2023-01-02 21:28:30 +01:00
Allen PorterandGitHub 3cc1cb7893 Rollback calendar trigger day offset support (#14933) 2023-01-02 21:27:50 +01:00
e7354ed5a2 Do not close aliases dialog on enter (#14952)
Co-authored-by: Bram Kragten <[email protected]>
2023-01-02 21:27:30 +01:00
e3ac2c149d Use translations for all fields in recurrence rule editor (#14940)
Co-authored-by: Bram Kragten <[email protected]>
2023-01-02 20:19:36 +00:00
afcd45a780 Enable unit conversion for DATA_SIZE (#14903)
Co-authored-by: Bram Kragten <[email protected]>
2023-01-02 20:17:14 +00:00
Bram KragtenandGitHub fe87466351 Add link to aliases in cloud config entity settings (#14959) 2023-01-02 20:42:31 +01:00
bdef924426 Enable unit conversion for DATA_RATE (#14902)
Co-authored-by: Bram Kragten <[email protected]>
2023-01-02 17:50:12 +00:00
Paul BotteinandGitHub 86ea3082f7 Add aliases editor for helpers (#14951) 2023-01-02 12:10:52 +01:00
0374330676 Add helper text to select slider (#14884)
* Add helper text to select slider

* Make helper text conditional

Only show if set.

Co-authored-by: Bram Kragten <[email protected]>

* Lint changes

Co-authored-by: Bram Kragten <[email protected]>
2022-12-31 15:38:21 -05:00
Bram KragtenandGitHub 7cde3b66dd 20221230.0 (#14925) 2022-12-30 13:39:58 +01:00
Bram Kragten d8a68326fb Bumped version to 20221230.0 2022-12-30 13:21:47 +01:00
Allen PorterandGitHub 4901d50918 Fix All Day recurring events that end on a specific date (#14905) 2022-12-30 13:15:07 +01:00
SukramJandGitHub a16e41a7ac Add support for unit conversion of electric current (#14916) 2022-12-30 13:06:11 +01:00
Jan BouwhuisandGitHub f1d644ac51 Add mV as unit for sensor device_class voltage (#14921) 2022-12-30 13:05:44 +01:00
karwostsandGitHub a9378abe31 Fix days missing from ha-base-time-input _valueChanged (#14910)
* Fix days missing from ha-base-time-input _valueChanged

* style change
2022-12-29 00:06:48 -05:00
5c2fcd7f9b Add alt attribute to various images (#14405)
* ha-config-area-page: Add alt tag for area-picture

* dialog-tag-detail: Add alt tag for generated QR code image.

* ha-config-hardware: Blank alt tag for hardware pic, info already elsewhere

* dialog-energy-solar-settings: Blank alt tag for brand icon.

* ha-energy-grid-settings: Blank alt tag for co2signal brand icon.

* Add a few more appropriately-blank alt texts.

* ha-config-device-page: Logo alt text set to name of device domain.

* ha-config-repairs: Logo alt text set to name of issue domain.

* hui-picture-card(-editor): Alternate Text via config (blank default)

* hui-picture-entity-card(-editor): Alternate Text via config (blank default)

* ha-long-lived-access-token-dialog: Alt text for QR code.

* hui-picture-header-footer: Support alt text via optional property.

* A few more blank alt attributes.

* ha-tile-image: Support alt tag (but it is blank in current usage).

* prod cla-bot

* Lint. Fix whitespace.

* Add missing alt text properties to TS types.

* Fix my silly typo in picture-entity-card-editor's SCHEMA (+ minor reformat)

* Add alt_text to Picture(Entity)CardConfig TypeScript types.

* Format with prettier.

* Revise alt text for tag QR

* Revise alt text for token QR

* Revise alternate to alternative

* Add alt to logo in gallery

* Add alt text to crop image

* Use ifDefined for tile image alt

* Change area picture alt to area name

* Remove entry from entities config struct

* Revert altText changes for Picture Entity Card (to revisit in future PR)

See:
https://github.com/home-assistant/frontend/pull/14405#discussion_r1032735871

* Revert changes to hui-image and picture entity editor

Co-authored-by: Steve Repsher <[email protected]>
2022-12-29 01:16:05 +00:00
Bram KragtenandGitHub 2b8f7c46ff 20221228.0 (#14901) 2022-12-28 15:04:30 +01:00
Bram Kragten 0015559e24 Merge branch 'master' into dev 2022-12-28 14:42:47 +01:00
Bram Kragten 2fbe6809c1 Bumped version to 20221228.0 2022-12-28 14:40:38 +01:00
Jaroslav HanslíkandGitHub e926091e54 Sort strings by locale language (#14533) 2022-12-28 14:25:45 +01:00
karwostsandGitHub 1198f983aa Prevent duplicate entities from being chosen in the target picker (#14882)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2022-12-28 13:24:32 +00:00
6a15216104 Add monthly variations for recurrence rules (#14849)
* Add variations on monthly recurrence rules

* Recurrence rule code simplificiation

* Invalidate when the interval changes

* update

* Update ha-recurrence-rule-editor.ts

Co-authored-by: Bram Kragten <[email protected]>
2022-12-28 14:07:17 +01:00
Bram KragtenandGitHub b99a139f51 Fix target selector (#14895) 2022-12-28 14:02:46 +01:00
Paulus SchoutsenandGitHub 0e9a013549 Conversation dialog tweaks (#14869) 2022-12-28 13:50:38 +01:00
Jan BouwhuisandGitHub 1d1ff410b2 Make using template rendering optional when using MQTT publish from the config entry page (#14828) 2022-12-28 12:12:30 +01:00
Jan BouwhuisandGitHub d4d3a1cb65 Use _ prefix for local vars on MQTT config entry page (#14898) 2022-12-28 11:22:40 +01:00
Jan BouwhuisandGitHub 81e3652446 Make JSON formatting optional when using MQTT subscribe from config entry page (#14830) 2022-12-27 22:03:14 +01:00
Philip AllgaierandGitHub adb61ab99b Enforce valid entity ID in card config YAML (#14792) 2022-12-27 22:00:37 +01:00
karwostsandGitHub 1c139d0bc7 Fix map card not loading in sidebar view (#14872)
fixes undefined
2022-12-27 22:00:19 +01:00
karwostsandGitHub 419f23879a Fix broken numeric text entry in state-card-input_number (#14812)
fixes undefined
2022-12-27 21:57:47 +01:00
e175c7ba3c Add edit/update support for calendar events (#14814)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-27 21:47:42 +01:00
Paul BotteinandGitHub 2575d35f2c Add aliases dialog to entity registry settings (#14860) 2022-12-27 21:36:08 +01:00
Steve Repsher 555c43caeb Merge dev and pin action versions 2022-12-27 20:34:31 +00:00
Steve RepsherandGitHub 5eb45209e8 Pin action versions to minor and patch (#14894) 2022-12-27 21:20:47 +01:00
0e70b866ae Uses backend translation for climate attributes (#14827)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-27 20:08:47 +00:00
albatorskandGitHub c6aa2886ed Change Z-Wave to Zigbee in help setup dialog (#14892) 2022-12-27 12:55:16 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
77e01812d1 Bump actions/stale from 6.0.1 to 7.0.0 (#14886)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-27 08:25:47 +01:00
Paulus SchoutsenandGitHub a5863a9a67 Redirect to new Matter device (#14867)
* Redirect to new Matter device

* Use hass.devices
2022-12-23 20:49:07 -05:00
Paulus SchoutsenandGitHub 526c34993c Allow opening conversation dialog via URL (#14868)
* Allow opening conversation dialog via URL

* Update URL
2022-12-23 20:37:58 -05:00
Bram KragtenandGitHub 3199319830 Fix water compare (#14864) 2022-12-22 11:20:40 -05:00
Allen PorterandGitHub 6bb350b5ec Fix bug in non-recurring calendar event creation (#14854)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2022-12-22 16:14:30 +00:00
f41330a29b Allign MQTT config panel controls (#14818)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-22 15:43:55 +01:00
Paul BotteinandGitHub 7780ae8f76 Fixes select selector filter (#14850) 2022-12-22 13:03:14 +01:00
Paul BotteinandGitHub 40cf15c1f3 Fix history type device class (#14851) 2022-12-22 12:59:00 +01:00
smonesiandGitHub 9be6a47d88 Attempt to fix picture-elements functionality broken in 2022.11 (#14813)
fixes undefined
2022-12-22 12:52:15 +01:00
Franck NijhofandGitHub 5933c2eb8e Add Calendar redirect support for My (#14859) 2022-12-22 12:51:36 +01:00
karwostsandGitHub a8b7937d75 Fix zwave automations not handling 0 values in the visual editor (#14835)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2022-12-22 12:48:48 +01:00
Jan BouwhuisandGitHub 4919341871 Fix localization Solar total in Enery dashboard (#14841)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2022-12-22 12:47:33 +01:00
Allen PorterandGitHub 36e99c3c0f Fix calendar date display and parsing issues (#14817)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2022-12-21 17:07:31 +01:00
Jan BouwhuisandGitHub 825008e24a Use a capitol for Topic in MQTT config panel. (#14843) 2022-12-21 17:06:40 +01:00
Steve Repsher 997455932f Update bash style to quote variables and use [[ and $() 2022-12-21 14:01:39 +00:00
Paul BotteinandGitHub ae04a5457e Allow custom value for multiple select (#14839) 2022-12-21 10:51:35 +00:00
Paul BotteinandGitHub a7c3774c29 Fixes alarm triggered color in alarm card (#14840) 2022-12-21 11:22:48 +01:00
Paul BotteinandGitHub 9c24dbe333 Enforces disabled to false for ha-form (#14842) 2022-12-21 11:22:09 +01:00
Steve Repsher 49e2230fb2 Add workflow job to deduplicate dependabot pull requests 2022-12-20 19:59:03 +00:00
epenetandGitHub 50f089fd4f Add CCF (centum cubic feet) to volume units (#14796) 2022-12-19 17:27:36 +01:00
Joost LekkerkerkerandGitHub 019ef4ba8f Fix suffix not showing up (#14816) 2022-12-19 13:24:57 +00:00
Bram KragtenandGitHub b31a9d590e Change layout of Zwave JS device config page (#14788) 2022-12-15 17:41:38 +01:00
Bram Kragten 43ea175a1a Bumped version to 20221213.1 2022-12-15 16:13:20 +01:00
Bram Kragten b2f0b6a814 Check if area exists during default dashboard generation (#14767) 2022-12-15 16:10:26 +01:00
Paul BotteinandBram Kragten 614496d65c Add pulse animation for jammed state for lock (#14766) 2022-12-15 16:09:57 +01:00
Philip AllgaierandBram Kragten d121c1cd18 Classify binary sensor locks active state as alert (= red) (#14761)
fixes undefined
2022-12-15 16:09:15 +01:00
Paul BotteinandGitHub b18160d987 Use CSS colors for tile components (#14770)
* Do not use rgb colors for tile components

* Fixes gallery

* Change tile color

* Do not use rgb colors in tile button
2022-12-15 11:27:45 +01:00
Bram KragtenandGitHub 5b17c59a56 Check if area exists during default dashboard generation (#14767) 2022-12-15 11:09:49 +01:00
Philip AllgaierandGitHub 139cbb363c Cover in state "closing" should be in "active" color (#14785) 2022-12-15 11:02:47 +01:00
Steve RepsherandGitHub e8e4733fc9 Fix localize key type errors for states (#14691)
* Replace unavailable state checks with type predicate

* Remove localize exceptions related to state

* Use literal types for climate attributes

* Add fan action to climate tile badge

* Use literal types for truncated states in badges

* Use literal type for humidifier state

* Replace unavailable state checks in calendar and tile card

* Avoid string split for truncated key
2022-12-14 19:39:10 +01:00
Philip AllgaierandGitHub b4d6fc3c20 Handle "idle" state of alert entity (#14779) 2022-12-14 19:08:08 +01:00
karwostsandGitHub 25a5bd568a Fix entity-filter handling of numeric states for == and != operators. (#14726)
Co-authored-by: Bram Kragten <[email protected]>
fixes undefined
2022-12-14 17:51:33 +00:00
77b8152c55 Make map card trails clickable, provide time context. (#14515)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-14 18:39:38 +01:00
Steve RepsherandGitHub ebcbfda92d Remove prefixes from dependabot commit messages (#14778) 2022-12-14 16:42:36 +00:00
Bram KragtenandGitHub 01a4b55ed8 Use entity picker in calendar event editor (#14772) 2022-12-14 16:27:05 +00:00
311d11f2da Add title attributes to iframes for accessibility (#14760)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-14 16:50:14 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
c400e771cb dev(deps-dev): bump fancy-log from 1.3.3 to 2.0.0 (#14773)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-14 16:49:35 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
7611a99f55 dev(deps-dev): bump @typescript-eslint/eslint-plugin from 5.44.0 to 5.46.1 (#14774)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-14 16:47:24 +01:00
Jan BouwhuisandGitHub 1044b3c399 Add retain switch for MQTT publish (#14714) 2022-12-14 16:42:44 +01:00
239d3ca00c Add QoS option for MQTT subscribe (#14565)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-14 16:42:11 +01:00
Steve RepsherandGitHub 00c2cb731b Remove unnecessary labels from dashboard menu (#14605) 2022-12-14 12:16:45 +01:00
ef7d839c0f Use the calendar color for state icon in event details (#14670)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-14 12:15:36 +01:00
Steve RepsherandGitHub 66a22ae102 Enable dependabot for yarn packages (#14607) 2022-12-14 12:13:56 +01:00
Steve RepsherandGitHub d48853fcdd Add precommit hook to deduplicate dependencies (#14609) 2022-12-14 12:11:58 +01:00
Philip AllgaierandGitHub 175a388822 Add sun domain to gallery entity states (#14742) 2022-12-14 11:43:49 +01:00
uvjustinandGitHub 872395bec5 Enable http cache for local media-player-browse thumbnails (#13339) 2022-12-14 11:38:20 +01:00
Paul BotteinandGitHub 5faf7cf0af Add pulse animation for jammed state for lock (#14766) 2022-12-14 11:35:41 +01:00
Philip AllgaierandGitHub e768c78dce Enable weather entity row to show secondary info (#14639) 2022-12-14 11:35:25 +01:00
Denis ShulyakaandGitHub 50cc8594be humidifier card: fix humidity not visible (#14575) 2022-12-14 11:34:10 +01:00
karwostsandGitHub 363092ff03 Remove min/max >=1 requirement from gauge-card-editor (#14682)
fixes undefined
2022-12-14 11:25:24 +01:00
1bce5efc9e Add new sound pressure device class (#14592)
* Add sound pressure device class

* Update const.ts

* sort

Co-authored-by: Bram Kragten <[email protected]>
2022-12-14 10:20:27 +01:00
14513e5905 Add new data rate device class (#14594)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-14 10:18:55 +01:00
epenetandGitHub b168f8d027 Add new data size device class (#14595) 2022-12-14 10:18:11 +01:00
epenetandGitHub e151520d74 Add stones to weight units (#14749) 2022-12-14 10:17:55 +01:00
Philip AllgaierandGitHub 02b763e8f3 Add snow weather icon SVG class (#14655)
fixes undefined
2022-12-14 10:17:34 +01:00
Philip AllgaierandGitHub 498102ddd9 Classify binary sensor locks active state as alert (= red) (#14761)
fixes undefined
2022-12-14 09:44:43 +01:00
Joakim SørensenandGitHub 6aba5c1017 Add action to publish demo when pushing to master (#14723) 2022-12-14 09:37:16 +01:00
Bram KragtenandGitHub 2176d4dcea Make editing home location more clear (#14636) 2022-12-14 09:13:31 +01:00
Paulus SchoutsenandGitHub 9fdef3df6d Update conversation API (#14763)
* Update conversation API

* Update action done

* Add query done data

* Update conversation_id type
2022-12-13 23:10:57 -05:00
Bram KragtenandGitHub d8b4611c24 20221213.0 (#14757) 2022-12-13 17:30:15 +01:00
9c27bb37a0 Ensure consistent light state icon brightness (#14740)
* Ensure consistent light state icon brightness

* Update hui-entity-card.ts

* Update hui-entity-card.ts

Co-authored-by: Paul Bottein <[email protected]>
2022-12-13 17:23:49 +01:00
Bram Kragten f2b7288e92 Bumped version to 20221213.0 2022-12-13 17:22:37 +01:00
Bram KragtenandGitHub f7aecb0d6d Move groups up, after areas, move devices down (#14741) 2022-12-13 17:01:59 +01:00
Joakim SørensenandGitHub 1da8a974f8 Do not try design preview on non-forks (#14753) 2022-12-13 16:53:01 +01:00
Paul BotteinandGitHub b82d6fd35f Fix climate hvac action color (#14747) 2022-12-13 16:49:12 +01:00
Paul BotteinandGitHub 62bc171b8c Only use custom color when active on tile card (#14744) 2022-12-13 14:17:13 +01:00
Paul BotteinandGitHub 2d7973af79 Fix brightness on button card (#14724) 2022-12-13 14:02:48 +01:00
Paul BotteinandGitHub d64bb98bb4 Fix binary sensor color when off (#14735) 2022-12-13 12:11:09 +01:00
Paul BotteinandGitHub 5cabf1d041 Use compute state display for select (#14736) 2022-12-13 11:07:57 +01:00
Philip AllgaierandGitHub 180357e0db Align domain icon for person and device_tracker when away (#14652) 2022-12-13 09:59:26 +01:00
Bram KragtenandGitHub c1dba217da Make error on general config better + default timezone (#14635) 2022-12-12 20:20:56 +01:00
Steve RepsherandGitHub 8d1ecdb27e Bump prettier to 2.8.1 (#14694)
* Bump prettier to 2.8.1

* Reformat ha-data-table
2022-12-12 11:45:06 -05:00
Joakim SørensenandGitHub f83544dd38 Add action for design preview (#14721)
* Add action for design preview

* Remove netlify_build_gallery
2022-12-12 16:23:11 +01:00
Joakim SørensenandGitHub 2ae137bbc2 Add fallback URLs (#14720) 2022-12-12 16:22:34 +01:00
Bram KragtenandGitHub 9f8aa0b4bf 20221212.0 (#14722) 2022-12-12 16:08:35 +01:00
Bram Kragten 149fa5fca6 Bumped version to 20221212.0 2022-12-12 15:53:20 +01:00
0fb35fd0d0 Transparent unavailable state in history (#14710)
* Use transparent color for unavailable state for history

* Remove inactive color

* Only color active state for badge icon

* Simplify condition

* Update src/components/chart/timeline-chart/textbar-element.ts

Co-authored-by: Bram Kragten <[email protected]>

Co-authored-by: Bram Kragten <[email protected]>
2022-12-12 15:52:33 +01:00
Paul BotteinandGitHub 544272b4df Improve entity not found tile card (#14711) 2022-12-12 15:49:31 +01:00
Philip AllgaierandGitHub b939978de1 Enable full day event mode in calendar card day grid (#14716) 2022-12-12 15:48:26 +01:00
Bram KragtenandGitHub d74fb8717c Fix sorting auto generated dashboard (#14707) 2022-12-12 15:47:05 +01:00
Philip AllgaierandGitHub f204a163d4 Show pointer cursor when hovering calender event or day number (#14712) 2022-12-12 15:21:28 +01:00
Philip AllgaierandGitHub bc9fb9a472 Fix event alignment for current day (#14717) 2022-12-12 15:21:01 +01:00
karwostsandGitHub 1e654d9661 Fix gauge-editor loading of severity values. (#14700)
fixes undefined
2022-12-12 15:20:29 +01:00
Paul BotteinandGitHub 03d33759b8 Use light blue for media player to improve contrast (#14713) 2022-12-12 14:09:55 +01:00
Joakim SørensenandGitHub ef7d696f9d Adjust cast deployment (#14651)
* Adjust cast deployment

* Handle dev/master builds

* Consistant
2022-12-12 13:46:03 +01:00
Bram KragtenandGitHub 545141da92 Align dev container settings with core (#14709) 2022-12-12 11:58:45 +01:00
Bram KragtenandGitHub 467957005d Fix pick dashboard row (#14708) 2022-12-12 11:58:30 +01:00
Steve RepsherandGitHub 348c3c9787 Revise vscode extensions (#14679) 2022-12-12 10:51:25 +01:00
Philip AllgaierandGitHub fe0492c2e0 Enable all-day / multi-day rendering for calendar (#14660) 2022-12-12 10:44:29 +01:00
Philip AllgaierandGitHub 0b377c060c Only reset primary/accent color if theme actually changes (#14659)
fixes undefined
2022-12-12 10:43:20 +01:00
Jan BouwhuisandGitHub 0f971e5868 Add QoS parameter for MQTT Publish (#14559)
* Add QoS parameter for MQTT Publish

* Follow up comment
2022-12-12 09:42:37 +01:00
Philip AllgaierandGitHub 1dbe8c9b64 Ensure consistent "blank before percent" handling (#14638) 2022-12-09 21:47:57 -05:00
Paul BotteinandGitHub 6e4a6cb0db Improve person/alarm/lock state (#14633)
* Opening device_class as alerting

* Don't use blue color for default active color

* Improve lock colors

* Green color for disarmed alarm

* Revert "Opening device_class as alerting"

This reverts commit b78342678d430eb3967f82e759342955b44417ad.

* Don't use active color

* Revert amber color because fixed in another PR

* Improve person, lock and alarm color state

* Sort variables

* Use alarm color in alarm card
2022-12-09 21:38:59 -05:00
epenetandGitHub 3f1903bd87 Add new irradiance device class (#14593) 2022-12-09 21:57:28 +01:00
epenetandGitHub 9643e0268f Add new atmospheric pressure device class (#14596) 2022-12-09 21:56:57 +01:00
Paul BotteinandGitHub 23573d8c26 Theme color fixes (#14672)
* Split off and unavailable colors

* off and unvailable in history panel

* Refactor tile card color code

* Use new color in state badge

* Use new colors in button and entity card

* Rename off to inactive

* Add inactive color to color picker

* Use amber instead of blue
2022-12-09 10:04:14 -05:00
Paul BotteinandGitHub 3c8c1260b1 Show start pause button on tile card if vacuum support pause (#14646) 2022-12-08 19:23:43 +01:00
Joakim SørensenandGitHub b84de87688 Adjust design deployment (#14650) 2022-12-08 17:17:56 +01:00
Joakim SørensenandGitHub 2d30994e56 Adjust demo deployment (#14649) 2022-12-08 17:17:28 +01:00
4ea19a6041 Add daily gallery build action (#14640)
Co-authored-by: Joakim Sørensen <[email protected]>
2022-12-08 14:41:51 +00:00
Bram KragtenandGitHub af82c0d0c4 20221208.0 (#14644) 2022-12-08 15:17:56 +01:00
Bram Kragten 2b5ef1207c Bumped version to 20221208.0 2022-12-08 15:07:10 +01:00
Philip AllgaierandGitHub feddbdba96 More "state_color" variants for gallery + wording tweaks (#14641) 2022-12-08 14:05:09 +00:00
Bram KragtenandGitHub b581b95d9d Use correct close dialog function for dialog event editor` (#14604)
* Use correct close dialog function for `dialog event editor``

* Update dialog-calendar-event-editor.ts
2022-12-08 08:42:22 -05:00
Bram KragtenandGitHub 8c69c772d1 Fix statistics graph card (#14631) 2022-12-08 13:20:01 +01:00
Paul BotteinandGitHub ba09120ff3 Add open label if cover is open on tile card (#14632) 2022-12-08 13:19:49 +01:00
Philip AllgaierandGitHub a8d242719f Fix disabled button state for vacuum in tile card (#14624)
fixes undefined
2022-12-08 13:19:18 +01:00
Paul BotteinandGitHub 0d0028fced Fixes state history colors edge cases (#14626) 2022-12-08 12:01:18 +01:00
Erik MontnemeryandGitHub d1b1eecd92 Fix showing a statistics graph with type 'change' (#14622) 2022-12-08 11:37:57 +01:00
Philip AllgaierandGitHub 3b51050b52 Fix hidden/broken input_datetime date selector (#14623)
fixes undefined
2022-12-08 11:36:53 +01:00
Philip AllgaierandGitHub 34e1d745be Restore correct default legend behavior for history graph card (#14612)
fixes undefined
2022-12-08 11:34:13 +01:00
Allen PorterandGitHub efda2ab626 Fix calendar event creation error handling (#14603) 2022-12-07 17:39:22 +01:00
Bram KragtenandGitHub ae354fa8da 20221207.0 (#14602) 2022-12-07 16:42:43 +01:00
Bram Kragten ef130be352 Bumped version to 20221207.0 2022-12-07 16:41:44 +01:00
Paul BotteinandGitHub f1393e5f00 Clean up colors code and add all missing domains (#14597) 2022-12-07 14:47:54 +01:00
Bram KragtenandGitHub dac784553e Fix unresponsive date picker (#14600) 2022-12-07 10:42:40 +00:00
Philip AllgaierandGitHub d2ad67384f Consider ignored repairs for the "no repairs available" note (#14598) 2022-12-07 11:38:27 +01:00
Philip AllgaierandGitHub 69d16ab9b4 Various minor tweaks (#14588) 2022-12-07 10:05:24 +01:00
Allen PorterandGitHub a941ed4f90 Fix off by one day in date input (in calendar) (#14590)
fixes undefined
2022-12-07 10:04:45 +01:00
Philip AllgaierandGitHub 774259224b Fix accidental date cross-overs in local cal event creation (#14587) 2022-12-07 09:56:21 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Steve Repsher
8a5f781ca2 Bump express from 4.17.1 to 4.18.2 (#14586)
* Bump express from 4.17.1 to 4.18.2

Bumps [express](https://github.com/expressjs/express) from 4.17.1 to 4.18.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.1...4.18.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deduplicate dependencies

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <[email protected]>
2022-12-07 05:12:42 +00:00
Bram KragtenandGitHub dacef605c7 20221206.0 (#14585) 2022-12-06 18:35:05 +01:00
Bram Kragten 2c279e2dec Bumped version to 20221206.0 2022-12-06 18:30:55 +01:00
Bram KragtenandGitHub 06ee08db36 Sort generated dashboard (#14577) 2022-12-06 18:30:23 +01:00
Philip AllgaierandGitHub 34dfaa5a0f Fix week start on Saturday for scheduler (#14566) 2022-12-06 18:29:49 +01:00
Philip AllgaierandGitHub b06db26540 Filter out unavailable calendars in calendar panel (#14584) 2022-12-06 18:28:29 +01:00
076a6c4459 Catch calender events fetch errors and keep UI working (#14517)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-06 17:28:16 +00:00
Paul BotteinandGitHub 0001cad423 Better colors in timeline chart in more info (#14581) 2022-12-06 17:15:59 +00:00
Paul BotteinandGitHub d622d9d420 Add unavailable badge for tile card (#14582)
add unavailable badge for tile card
2022-12-06 17:14:18 +00:00
Paul BotteinandGitHub 228fd4b7fe Fix camera and timer active state (#14578) 2022-12-06 17:46:07 +01:00
Paul BotteinandGitHub e6f2e8058b Color adjustments for entity state (#14557) 2022-12-06 17:45:24 +01:00
Philip AllgaierandGitHub 83ba594cc4 Visual fixes and resize observer for scheduler form (#14527) 2022-12-06 13:29:14 +01:00
ff64dc2631 Prevent invalid event durations in calendar (#14545)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-06 12:23:04 +00:00
Steve RepsherandGitHub 745753c526 Make corrections to .gitignore for directories (#14567) 2022-12-06 13:04:18 +01:00
Bram KragtenandGitHub f5385ba277 Check if cast message came from logged in instance (#12354) 2022-12-06 12:47:17 +01:00
epenetandGitHub 1a69503eab Allow cm in precipitation units (#14568) 2022-12-06 11:16:33 +01:00
Philip AllgaierandGitHub 8ba46f7f57 Add "show_names" option to history graphs (#14546) 2022-12-06 01:41:08 +01:00
Bram KragtenandGitHub bbdb84482a 20221205.0 (#14562) 2022-12-05 22:49:02 +01:00
Bram Kragten 08ffe375b9 Bumped version to 20221205.0 2022-12-05 22:48:02 +01:00
8699f3e3a8 Use rounded corners for calendar (#14525)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-05 19:59:09 +00:00
ecdd07ff4d Add calendar event recurrence rule translations (#14544)
Co-authored-by: Bram Kragten <[email protected]>
2022-12-05 18:28:48 +01:00
Philip AllgaierandGitHub f0f699a37e Auto remove empty items from shopping list (#14487) 2022-12-05 16:33:47 +01:00
Paul BotteinandGitHub 75b1b1c9a0 Fix media browser gender translations (#14551) 2022-12-05 15:13:22 +00:00
Philip AllgaierandGitHub 0ae8246d8a Simplify calendar "listWeek" and enable for "initial_view" (#9993)
fixes undefined
2022-12-05 16:11:12 +01:00
Philip AllgaierandGitHub b644407260 Consistent table style for calendar and scheduler (#14528) 2022-12-05 16:08:00 +01:00
Philip AllgaierandGitHub b389127f78 Prevent "ha-chip" focus outline frame (#14535) 2022-12-05 15:55:23 +01:00
Philip AllgaierandGitHub 20dff9d25d Fix YAML validation for automation action service call enabling/disabling (#14536)
fixes undefined
2022-12-05 15:33:41 +01:00
Philip AllgaierandGitHub 076ddb71b6 Show proper media title in media bar (split URI) (#14464) 2022-12-05 15:32:24 +01:00
Franck NijhofandGitHub f0127511b0 Handle optional state enum from sensor entities (#14428) 2022-12-05 15:01:18 +01:00
Philip AllgaierandGitHub 07ad429f8c Fix first day of the week locale issue with scheduler (#14529)
fixes undefined
2022-12-05 14:54:38 +01:00
Jan BouwhuisandGitHub ef3caf91f1 Fix retreiving topic value when using MQTT publish (#14554)
fixes undefined
2022-12-05 14:33:50 +01:00
Bram Kragten 4fcfcbeefb Simplify 2022-12-05 14:31:44 +01:00
Philip AllgaierandGitHub f18997c7c3 Prevent identical double debug log downloads for integration (#14537)
fixes undefined
2022-12-05 14:31:19 +01:00
Bram KragtenandGitHub 2ed8a4053b set backpath for supervisor addons panel (#14555) 2022-12-05 13:30:28 +00:00
Philip AllgaierandGitHub 1105c92569 Add support for calendar event description (#14522) 2022-12-05 14:28:43 +01:00
Philip AllgaierandGitHub 76a682fa28 Ensure calendar event texts are aligned (#14521) 2022-12-05 14:26:11 +01:00
Philip AllgaierandGitHub d059b97a2f Prevent issues in "ha-form" with undefined "disabled" state (#14518)
fixes undefined
2022-12-05 14:25:30 +01:00
Philip AllgaierandGitHub 96080f3c78 Set initial calendar event date based on active calendar view (#14516) 2022-12-05 14:24:31 +01:00
Steve RepsherandGitHub 00274ebf66 Fix localize key errors for helpers (#14496) 2022-12-05 14:22:17 +01:00
Philip AllgaierandGitHub 7e58bd59c3 Fix rounded corners for expansion panel (#14531)
fixes undefined
2022-12-05 14:21:13 +01:00
Paul BotteinandGitHub 04ef783f5b Fix adjust statistic parameter name (#14552) 2022-12-05 12:49:21 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
340449d064 Bump dessant/lock-threads from 3.0.0 to 4.0.0 (#14550)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-05 09:25:02 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
24f2ad8be9 Bump @braintree/sanitize-url from 5.0.2 to 6.0.0 (#14549)
Bumps [@braintree/sanitize-url](https://github.com/braintree/sanitize-url) from 5.0.2 to 6.0.0.
- [Release notes](https://github.com/braintree/sanitize-url/releases)
- [Changelog](https://github.com/braintree/sanitize-url/blob/main/CHANGELOG.md)
- [Commits](https://github.com/braintree/sanitize-url/compare/v5.0.2...v6.0.0)

---
updated-dependencies:
- dependency-name: "@braintree/sanitize-url"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-05 00:22:55 -05:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3eac53e209 Bump async from 2.6.2 to 2.6.4 (#14548)
Bumps [async](https://github.com/caolan/async) from 2.6.2 to 2.6.4.
- [Release notes](https://github.com/caolan/async/releases)
- [Changelog](https://github.com/caolan/async/blob/v2.6.4/CHANGELOG.md)
- [Commits](https://github.com/caolan/async/compare/v2.6.2...v2.6.4)

---
updated-dependencies:
- dependency-name: async
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-04 23:54:32 -05:00
Philip AllgaierandGitHub 65cef9d996 Prevent negative media player progress (#14547) 2022-12-04 21:11:53 -05:00
dependabot[bot]andGitHub 4c5f4508b2 Bump decode-uri-component from 0.2.0 to 0.2.2 (#14543) 2022-12-04 17:48:40 -05:00
Allen PorterandGitHub 1aa6bd5577 Fix recurrence rule generation for UNTIL rules (#14541) 2022-12-04 14:38:43 +01:00
Bram KragtenandGitHub 3dfd401036 20221201.1 (#14506) 2022-12-01 17:38:27 +01:00
Bram Kragten 71a5d8c6f9 Bumped version to 20221201.1 2022-12-01 17:37:08 +01:00
Bram Kragten a0bf582cc9 dont force update translations 2022-12-01 17:35:47 +01:00
Bram KragtenandGitHub 77a53ffc6c 20221201.0 (#14505) 2022-12-01 17:13:52 +01:00
Bram Kragten b6f1d78b7f Merge branch 'master' into dev 2022-12-01 17:11:26 +01:00
Bram Kragten 1fda303b23 Bumped version to 20221201.0 2022-12-01 17:05:23 +01:00
Bram KragtenandGitHub 241645fe8d Fix timezone issues calendar (#14501) 2022-12-01 17:04:45 +01:00
faa57e4c02 Improve filtering and performance for icon picker (#14401)
Co-authored-by: Paul Bottein <[email protected]>
2022-12-01 16:59:45 +01:00
Paul BotteinandGitHub 915563ce6c Improve constrast for tile card state (#14504) 2022-12-01 16:54:35 +01:00
J. Nick KostonandGitHub 44502d2c8d Add the ability to enable debug logs in the config entry overflow (#14319) 2022-12-01 16:53:41 +01:00
Paul BotteinandGitHub b97a9ef311 Consider moisture as alerting binary sensor (#14503) 2022-12-01 14:48:27 +00:00
Bram KragtenandGitHub 1a66b8a374 Add script to setup translation fetching (#14481)
* Add script to setup translation fetching

* Update bootstrap
2022-12-01 09:00:29 -05:00
Bram KragtenandGitHub 4190ff5a2b Sort language, country, currency (#14500) 2022-12-01 13:38:50 +01:00
Paul BotteinandGitHub dfc461ce05 Add support for entity translation key (#14482) 2022-12-01 12:53:44 +01:00
Steve RepsherandGitHub dff7f653b1 Fix checking existence of downloaded translations (#14493) 2022-11-30 16:53:26 -05:00
+17 eccc6a8cdb 20221130.0 (#14492)
Co-authored-by: Bram Kragten <[email protected]>
Co-authored-by: Paul Bottein <[email protected]>
Co-authored-by: Steve Repsher <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joakim Sørensen <[email protected]>
Co-authored-by: Franck Nijhof <[email protected]>
Co-authored-by: Paulus Schoutsen <[email protected]>
Co-authored-by: puddly <[email protected]>
Co-authored-by: Erik Montnemery <[email protected]>
Co-authored-by: Bagira <[email protected]>
Co-authored-by: Ben Randall <[email protected]>
Co-authored-by: uvjustin <[email protected]>
Co-authored-by: J. Nick Koston <[email protected]>
Co-authored-by: Chris <[email protected]>
Co-authored-by: Aaron Carson <[email protected]>
Co-authored-by: David F. Mulcahey <[email protected]>
Co-authored-by: Yosi Levy <[email protected]>
Co-authored-by: Alex van den Hoogen <[email protected]>
Co-authored-by: epenet <[email protected]>
Co-authored-by: Jani Lahti <[email protected]>
Co-authored-by: RoboMagus <[email protected]>
Co-authored-by: Brynley McDonald <[email protected]>
Co-authored-by: Denis Shulyaka <[email protected]>
Co-authored-by: KablammoNick <[email protected]>
Co-authored-by: Allen Porter <[email protected]>
Co-authored-by: Philip Allgaier <[email protected]>
2022-11-30 22:43:19 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Bram Kragten
52235c6187 Bump ejs from 3.1.6 to 3.1.8 (#14491)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bram Kragten <[email protected]>
2022-11-30 21:35:39 +00:00
Bram Kragten 594b402bd5 Bumped version to 20221130.0 2022-11-30 22:26:07 +01:00
Philip AllgaierandGitHub 684f6db4df Gallery: Added switch and gauge component pages + CSS vars (#14479) 2022-11-30 22:22:02 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
883e5e3a6c Bump minimist from 1.2.5 to 1.2.7 (#14490)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-30 22:15:56 +01:00
29452841c2 Add basic matter config panel (#14489)
Co-authored-by: Paulus Schoutsen <[email protected]>
2022-11-30 21:12:46 +00:00
9b6e33cfec Add Calendar Event creation and deletion dialogs (#14036)
Co-authored-by: Bram Kragten <[email protected]>
2022-11-30 21:20:41 +01:00
Paul BotteinandGitHub e43f3b193e Rename indicator property and add show-handle property for ha bar slider (#14466) 2022-11-30 21:18:27 +01:00
Paul BotteinandGitHub 40d0455936 Fix common tests (#14485) 2022-11-30 19:50:53 +01:00
Paul BotteinandGitHub 90a7c2d2ff Set border radius to 10px for tile slider and buttons (#14488) 2022-11-30 19:50:26 +01:00
Paul BotteinandGitHub d4cda0c106 Rename tile extras to tile features (#14483) 2022-11-30 18:35:13 +01:00
Bram KragtenandGitHub 92d022747b Add core country and language settings (#14478) 2022-11-29 20:54:18 +01:00
ee6f97b802 Fetch nightly translations during build (#13724)
Co-authored-by: Bram Kragten <[email protected]>
2022-11-29 19:33:43 +01:00
Paul BotteinandGitHub cb97918005 Show percentage for light, cover and fan for tile card (#14475) 2022-11-29 15:06:36 +00:00
f1f0baf787 Add buttons to download logs (#14404)
Co-authored-by: Joakim Sørensen <[email protected]>
2022-11-29 15:56:28 +01:00
c0240eed67 Show icon preview when changing device class (#14472)
Co-authored-by: Franck Nijhof <[email protected]>
2022-11-29 15:27:10 +01:00
Paul BotteinandGitHub aeeacc6cad Use new colors for state icon (#14358)
* Use new colors for state icon

* feedbacks

* Remove arming case
2022-11-29 15:22:50 +01:00
Paul BotteinandGitHub fcfdad3d94 And vacuum commands extra for tile card (#14434) 2022-11-29 15:15:47 +01:00
Paul BotteinandGitHub 566b93ec1f Fixes area creation in area picker (#14452) 2022-11-29 15:15:12 +01:00
KablammoNickandGitHub 5c452cb9e0 Update icons for shade device class (#14455)
* Update icons for shade device class

MDI v6.7.96 added icons for roller-shade and roller-shade-closed - this changes shade device class to match, rather than blinds/blinds-open.

* Split blind/shade device classes and update blind icons
2022-11-29 11:15:51 +01:00
Paul BotteinandGitHub 06c1d9f6ef Replace gas by water in translation (#14473) 2022-11-29 09:39:22 +00:00
bfd96944f9 Add switch bar (#14429)
* Add basic swich support

* Add color and reversed state

* Fix slotted icon

* Update gallery/src/pages/components/ha-bar-switch.ts

Co-authored-by: Bram Kragten <[email protected]>

Co-authored-by: Bram Kragten <[email protected]>
2022-11-28 16:58:18 +01:00
Bram KragtenandGitHub c119163422 Add grouping by device to generated dashboard config (#14398) 2022-11-28 15:56:35 +00:00
Paul BotteinandGitHub 4846fa1a74 Improve combobox overlay observer (#14463) 2022-11-28 16:53:35 +01:00
Paul BotteinandGitHub aec0eb3c78 Improve state colors and add documentation for entity state (#14437)
* Add documentation for entity icons and colors

* Add domains

* Add domains

* improve colors

* Add fan color

* Change fan to cyan

* color rules adjustments
2022-11-28 14:37:07 +01:00
92e7254c54 humidifier card: add on-off button (#13443)
Co-authored-by: Bram Kragten <[email protected]>
2022-11-28 13:42:41 +01:00
Paul BotteinandGitHub bafe581562 Add light brightness extra for tile (#14446) 2022-11-28 12:51:21 +01:00
Brynley McDonaldandGitHub e6a153a802 Add margin to the device automation form (#14418) 2022-11-28 12:48:08 +01:00
Bram KragtenandGitHub fce87ff0fe Add support for hardware option flows (#14364) 2022-11-28 12:47:27 +01:00
e6b3475b5b Allow homeassistant URL in repair issues (#14456)
Co-authored-by: Bram Kragten <[email protected]>
2022-11-28 12:47:12 +01:00
RoboMagusandGitHub f969299567 Fix water comparison in EnergyDashboard (#14460)
fixes undefined
2022-11-28 12:46:42 +01:00
Paul BotteinandGitHub 7a87dc4d8a Add ui-color selector (#14348) 2022-11-28 12:45:53 +01:00
Paul BotteinandGitHub d6fa1427f1 Use toggle as default icon_tap_action for scenes and buttons in tile card (#14386) 2022-11-28 12:37:27 +01:00
aa1e9cedca Fix add integration discovery (#14432)
* Fix add integration discovery

* Update show-dialog-config-flow.ts

* Update src/panels/config/integrations/dialog-add-integration.ts

Co-authored-by: Joakim Sørensen <[email protected]>

Co-authored-by: Joakim Sørensen <[email protected]>
2022-11-28 11:32:59 +00:00
Bram KragtenandGitHub 147b1f34ac Fixes for disabled/unavailable entities (#14451) 2022-11-28 12:13:54 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
0cfba81eae Bump softprops/action-gh-release from 0.1.14 to 0.1.15 (#14461)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 0.1.14 to 0.1.15.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v0.1.14...v0.1.15)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-28 11:38:11 +01:00
Franck NijhofandGitHub a9d44fcb61 Add Text entity (#14447) 2022-11-24 21:23:50 +01:00
Bram KragtenandGitHub 0aa2c9044a Fix picking energy sensors for gas (#14448) 2022-11-24 14:12:20 +00:00
Jani LahtiandGitHub 9bae4a646d Fixed spelling of _(un)subscribeBootstrapIntegrations() (#14439)
Fixed spelling of (un)subscribeBootstrapIntegrations()
2022-11-24 10:28:24 +00:00
Bram KragtenandGitHub 15a0847db8 Fix energy usage graph (#14438) 2022-11-24 10:59:55 +01:00
Bram KragtenandGitHub 8b817b35b0 Improvements to stat charts (#14427) 2022-11-24 10:54:01 +01:00
Joakim SørensenandGitHub f95a3c75f6 Use issue scoped translation for repair abort reason (#14445) 2022-11-24 10:30:57 +01:00
epenetandGitHub 2223ffd7ee Add precipitation device class (#14232) 2022-11-21 21:25:09 +01:00
590ad5b8a0 Only show hover on clickable rows in data table (#14326)
Co-authored-by: Bram Kragten <[email protected]>
2022-11-21 21:24:28 +01:00
Yosi LevyandGitHub 2bb9961fc2 Update popup align markdown LTR (#14372) 2022-11-21 21:22:55 +01:00
David F. MulcaheyandGitHub 3e2fb09251 Clean up the ZHA pairing UI (#14287) 2022-11-21 21:20:58 +01:00
Bram KragtenandGitHub fc80daa3e0 Bump typescript to 4.9.3 (#14430) 2022-11-21 20:27:47 +01:00
Paulus SchoutsenandGitHub 2aa7b95a5a Device info: Show connected devices (#14421) 2022-11-21 12:39:22 -05:00
Aaron CarsonandGitHub c2436fb157 Update incorrect copy (#14415) 2022-11-21 16:21:20 +00:00
Paul BotteinandGitHub a958c6296b Add cover and light controls to tile card (#14244) 2022-11-21 17:13:15 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
fe4191aea9 Bump loader-utils from 1.4.0 to 1.4.2 (#14425)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-21 16:42:48 +01:00
Paul BotteinandGitHub 49d9cf41fe fix closed cover state (#14424) 2022-11-21 16:34:17 +01:00
Erik MontnemeryandGitHub 0bfb2b4a56 Don't fetch unneeded statistics from core (#14423) 2022-11-21 16:24:57 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1a68a2f4d7 Bump terser from 4.8.0 to 4.8.1 (#14426)
Bumps [terser](https://github.com/terser/terser) from 4.8.0 to 4.8.1.
- [Release notes](https://github.com/terser/terser/releases)
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/compare/v4.8.0...v4.8.1)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-21 14:40:07 +01:00
Steve RepsherandGitHub 1197e5a35b Bump @vaadin to 23.2.9 (#14408) 2022-11-21 11:34:37 +01:00
Paul BotteinandGitHub c6386284d1 Fix entity active states (#14341)
* fix media player state

* Fix active states

* Consider idle media player as active

* improve custom cases
2022-11-17 15:49:33 +01:00
Bram KragtenandGitHub 185d2f1d52 Add change option to statistics chart (#14396) 2022-11-16 17:09:54 +00:00
Bram KragtenandGitHub c5ec1797f6 Dont use lovelace in new dashboard urls (#14395) 2022-11-16 17:53:46 +01:00
Paul BotteinandGitHub 048b345c75 Use relative time display for timestamp sensor, buttons and scene in tile card (#14385)
Use relative time display for timestamp sensor, buttons and scene
2022-11-16 17:47:25 +01:00
J. Nick KostonandGitHub 70868da305 Fix selecting YAML only integrations in submenus (#14377) 2022-11-16 17:15:49 +01:00
cef3dbfdf0 Capatalize Earth (#14382)
* Capatalize Earth

* Modify correct en file.

Captalize Earth.

* Undo change to wrong file

* Remove final line feed

* Try again to remove lf...

* Actually remove lf this time

Co-authored-by: Steve Repsher <[email protected]>
2022-11-15 20:37:43 +00:00
Paul BotteinandGitHub bda5b97c91 Select suggested area for device during config flow (#14383) 2022-11-15 15:09:27 +01:00
ae15dd678b Fix logbook reporting unknown states as unavailable (#14359)
Co-authored-by: Paul Bottein <[email protected]>
2022-11-15 08:07:50 -06:00
J. Nick KostonandGitHub 681c745e84 Add locking, unlocking, and jammed states to logbook (#14360) 2022-11-15 08:07:28 -06:00
uvjustinandGitHub 23b59978ab Bump hls.js to v1.2.5 (#14342) 2022-11-14 19:36:35 -05:00
Ben RandallandGitHub 90b9eaeb19 fix: don't render extra fields when there are none (#14374) 2022-11-14 16:30:51 +00:00
BagiraandGitHub 65426bd2d0 Fix color_rgb and color_temp selector import (#14369) 2022-11-12 02:09:49 +00:00
1cb44ce857 Convert units in statistics graph card (#13970)
Co-authored-by: Bram Kragten <[email protected]>
2022-11-11 13:21:53 +00:00
Paul BotteinandGitHub 1c03dc9b77 Use entity based color for state history (#14330) 2022-11-10 09:51:13 +01:00
Paul BotteinandGitHub 238e844068 Use light color for tile card (#14321) 2022-11-10 09:49:25 +01:00
puddlyandGitHub ec6a4b4e7a Add hardware as a config flow discovery source (#14281)
Add `hardware` as a discovery source
2022-11-10 09:22:01 +01:00
Paul BotteinandGitHub ac65882fdd Fix config entry selector import (#14334) 2022-11-08 21:10:19 -05:00
Bram KragtenandGitHub c92e6423e8 20221108.0 (#14332) 2022-11-08 14:19:23 +01:00
Bram Kragten db0d24c807 Merge branch 'master' into dev 2022-11-08 14:18:46 +01:00
Bram Kragten 9e56ddcc69 Bumped version to 20221108.0 2022-11-08 14:16:42 +01:00
Alex van den HoogenandGitHub dd4c3c28ee Fix expansion of all tabs in more info dialogs (#14283) 2022-11-07 20:30:06 +01:00
puddlyandGitHub 245202c125 Search for boards explicitly in the return value of hardware/info (#14320) 2022-11-07 20:28:01 +01:00
puddlyandGitHub 8b8a85b4b8 Make borders for discovery card header seamless (#14322) 2022-11-07 20:24:09 +01:00
Bram KragtenandGitHub 0aae285236 Rename disabled attribute on integration card (#14268) 2022-11-07 14:45:02 +01:00
Sven SerlierandGitHub 31ac274a51 Lovelace to dashboard (#14267) 2022-11-07 14:44:34 +01:00
Bram KragtenandGitHub 6f07e7ca59 Hide legend for stats chart in more info, only shade area for min and… (#14273) 2022-11-05 18:33:43 +01:00
Bram Kragten fa506202ac Bumped version to 20221102.1 2022-11-02 19:19:35 +01:00
Bram Kragten c810c67a53 Bumped version to 20221102.1 2022-11-02 19:18:25 +01:00
Bram KragtenandGitHub 663c58512d 20221102.1 (#14264) 2022-11-02 19:15:35 +01:00
Bram KragtenandGitHub 3cd64675df Fix water costs (#14263) 2022-11-02 17:59:00 +00:00
Bram KragtenandGitHub 79c8b7dc27 Fix statistic card default config (#14262) 2022-11-02 17:26:09 +00:00
Steve RepsherandGitHub 98a32041d4 Add name attribute to autocomplete fields (#14258) 2022-11-02 18:22:02 +01:00
Paul BotteinandGitHub ffbcb0a343 Fix iOS safe padding (#14261) 2022-11-02 18:19:53 +01:00
Bram KragtenandGitHub ab4dd47e51 20221102.0 (#14259) 2022-11-02 11:06:39 +01:00
Bram Kragten c7cb8cf762 Merge branch 'master' into dev 2022-11-02 10:35:59 +01:00
Bram Kragten a5ab4eaf0e Bumped version to 20221102.0 2022-11-02 10:33:32 +01:00
NobleKangarooandGitHub d52dbde909 Fix dialog resizing (#14256) 2022-11-02 10:16:05 +01:00
Yosi LevyandGitHub 1cde9e882e Audio message trash fix (#14250) 2022-11-02 10:14:50 +01:00
Bram KragtenandGitHub 8cb0d38d78 Fix back button on subview (#14251) 2022-11-02 10:11:50 +01:00
Paulus SchoutsenandGitHub 9cb168c439 Set default unit for US unit system to gl instead of ft3 (#14257)
Mention gl instead of ft3
2022-11-02 10:10:23 +01:00
Bram KragtenandGitHub 2add29c4eb 20221031.0 (#14248) 2022-10-31 18:51:59 +01:00
Bram Kragten e2104c1591 Bumped version to 20221031.0 2022-10-31 17:25:39 +01:00
Bram KragtenandGitHub 17ac81a708 Fix video size more info (#14246)
* Fix video size more info

* add comment
2022-10-31 17:24:20 +01:00
42386c7dee Fix ZHA neighbor table in the manage device dialog (#14236)
Co-authored-by: Bram Kragten <[email protected]>
2022-10-31 15:20:49 +00:00
Bram KragtenandGitHub 2e988bf5c3 Default size of hui-image to 16:9 during loading (#14245) 2022-10-31 16:06:33 +01:00
Paul BotteinandGitHub 3356d559c9 Activate all entities config filters when clicking clear filter (#14225) 2022-10-31 15:44:08 +01:00
Paul BotteinandGitHub 43755deb39 Consider standby media player as inactive for tile card (#14226) 2022-10-31 15:43:16 +01:00
Paul BotteinandGitHub 9778c0731c Add badges for tile card (#14231) 2022-10-31 15:42:44 +01:00
Paul BotteinandGitHub ebc0edac10 fix margin with ha form grid (#14240) 2022-10-31 15:40:58 +01:00
Paul BotteinandGitHub effc9467c2 Entity picture option was not in the right section (#14243) 2022-10-31 15:40:26 +01:00
Paul BotteinandGitHub 68e94d7222 Add type expandable for ha-form (#14197)
* Add type group for ha-form

* rename to expandable

* Add aria level

* apply suggestions
2022-10-28 17:49:59 +02:00
Jaroslav HanslíkandGitHub c4992c477b Fixed typo in water consumption text (#14229) 2022-10-28 11:34:54 -04:00
Bram KragtenandGitHub 449c1f2469 Change water units to L/gal (#14223) 2022-10-27 17:10:35 -04:00
Bram KragtenandGitHub d52e521ef8 20221027.0 (#14222) 2022-10-27 22:03:05 +02:00
Bram KragtenandGitHub 03d03f9903 5 minute more info stats (#14221) 2022-10-27 22:02:28 +02:00
Bram Kragten 1122698351 Bumped version to 20221027.0 2022-10-27 22:01:13 +02:00
Bram KragtenandGitHub 9d730919d5 Add statistic card (#14198)
* Add statistic card

* Update selector.ts

* Update translations

* review
2022-10-27 21:59:55 +02:00
Paul BotteinandGitHub 6326bb010f Only show existing weekdays (#14219) 2022-10-27 20:55:40 +02:00
Paul BotteinandGitHub 2ab5da6d84 Allow null selector (#14212) 2022-10-27 13:17:42 -04:00
Steve RepsherandGitHub a56b2e3270 Rename autofill to autocomplete for text selector (#14202) 2022-10-27 15:30:08 +02:00
Paul BotteinandGitHub 523d936010 Fix min height on lovelace panel for ios (#14207) 2022-10-27 15:29:47 +02:00
Bram KragtenandGitHub b3e2beac5a don't use entity name as label in more info stats (#14213) 2022-10-27 15:29:22 +02:00
Paul BotteinandGitHub 4c8e863c0e Use firstday of the week for range shortcuts in date pickers (#14210) 2022-10-27 14:24:24 +02:00
Paulus SchoutsenandGitHub 69074df1ab 20221026.0 (#14203) 2022-10-26 14:52:03 -04:00
Paulus Schoutsen 16848d03ae Bumped version to 20221026.0 2022-10-26 14:48:30 -04:00
Bram KragtenandGitHub dd9683674d Add my link to add zwave and zigbee devices (#14126) 2022-10-26 14:47:43 -04:00
Bram KragtenandGitHub 822917d060 Add water to energy dashboard (#14194) 2022-10-26 14:44:07 -04:00
Bram KragtenandGitHub 7cc6809f53 Use statistics for sensors in more info history (#14199)
* Use statistics for sensors in more info history

* use state instead of sum

* Update ha-more-info-history.ts

* change to hour
2022-10-26 19:29:12 +02:00
Paul BotteinandGitHub 57291183ca update border radius to 12px (#14201) 2022-10-26 16:54:05 +00:00
Paul BotteinandGitHub 504e8dd946 Add option to show entity picture in tile card (#14196)
Add option to show entity picture
2022-10-26 18:31:10 +02:00
Bram KragtenandGitHub 5c4517517d Fix enlarging more info dialog (#14200) 2022-10-26 16:25:13 +00:00
Steve RepsherandGitHub 1b917a5b04 Add autocomplete to login and MFA setup (#14065) 2022-10-26 16:10:19 +02:00
Bram KragtenandGitHub 527c4f71c2 Add icons to device config dashboard (#14184)
* Add icons to device config dashboard

* Add `alt=""`
2022-10-26 15:19:56 +02:00
Paul BotteinandGitHub 3ac6e6f307 Group fields in tile editor (#14175)
* group form into multiple groups

* display appearence form as grid

* Add translations
2022-10-26 13:51:58 +02:00
Rob JacksonandGitHub 9e955dbaaa Remove conditional element from DOM when hidden (#13955) 2022-10-26 13:27:56 +02:00
epenetandGitHub e0a56956e0 Add wind_speed sensor device class (#14030) 2022-10-26 13:27:39 +02:00
Josh McCartyandGitHub 66ed1b18be Format numeric entities with integer value and step as integer instead of float (#14112) 2022-10-26 13:27:14 +02:00
Paul BotteinandGitHub d445bf2505 Move re-order button at triggers/conditions/actions level. (#14185) 2022-10-26 13:21:36 +02:00
David F. MulcaheyandGitHub 16bd1f5883 Update ZHA manage device dialog to use a form for cluster command arguments (#14052) 2022-10-26 13:19:48 +02:00
MichaelandGitHub c12e6662dd Add week period to statistics card (#14162) 2022-10-25 22:36:20 +02:00
Bram KragtenandGitHub 0b18875d70 remove hardware from integration descriptions (#14189) 2022-10-25 19:21:00 +00:00
Erik MontnemeryandGitHub 57fb8f9f01 Adapt to energy sensors supporting GJ (#14181) 2022-10-25 16:48:32 +02:00
Bram KragtenandGitHub f1139e09f9 Fix back handling of add integration dialog (#14187) 2022-10-25 15:15:18 +02:00
Joakim SørensenandGitHub 51febc2218 Use warning in ha-alert for breaks_in_ha_version (#14186) 2022-10-25 12:25:16 +00:00
Paul BotteinandGitHub c8d16af1b5 Add state color to tile card (#14128)
* remove unused imports

* fix white color

* Introduce state color

* add color to css

* add battery colors

* Improve sensor color

* add binary sensor color

* add person color

* improve on/off state color

* add climate color

* only apply color when entity is activet push -f
2022-10-25 14:02:09 +02:00
NobleKangarooandGitHub 66a75c4714 Fix camera dialog (#14179) 2022-10-25 10:46:57 +00:00
Paul BotteinandGitHub cb8e602340 Refactor ha-form margins (#14176) 2022-10-25 12:29:59 +02:00
epenetandGitHub de008f65a3 Allow gas units to be overriden (#14173) 2022-10-25 12:29:28 +02:00
Steve RepsherandGitHub ab1b778439 Pass helper to ha-form subtypes (#14165) 2022-10-25 12:29:05 +02:00
62ac9155fc Add icons to automations dashboard (#14182)
Co-authored-by: Bram Kragten <[email protected]>
2022-10-25 12:26:41 +02:00
Paul BotteinandGitHub 68302d0896 Fix more info dialog edit button for script (#14180) 2022-10-25 12:24:08 +02:00
Franck NijhofandGitHub a76f456ebc Remove default sequence from new scripts (#14183) 2022-10-25 12:03:56 +02:00
epenetandGitHub 9d3eaba46b All new water device class (#14174) 2022-10-24 21:06:51 +02:00
Michel van de WeteringandGitHub 5bb9538861 Add icon for receiver deviceclass (#14158) 2022-10-24 14:37:46 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
fe1beb0d59 Bump home-assistant/wheels from 2022.06.7 to 2022.10.1 (#14171)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-24 14:30:02 +02:00
PieroandGitHub 153161d2cb Disable sidebar edit mode on drawer close (#14169) 2022-10-24 11:06:58 +02:00
Bram KragtenandGitHub 370864e0ed fix back button in hassio addons (#14161) 2022-10-24 11:03:32 +02:00
TomaszandGitHub 9b6fca2c0e Fix back button in ha-card (add border-radius) (#14172) 2022-10-24 11:03:09 +02:00
Paul BotteinandGitHub 55467666f7 Add slider bar (#14094)
* Add slider bar

* a11y feedbacks

* allow undefined values

* rename variable

* Add end style

* Add vertical slider

* Allow theming

* Improve theming

* Improve colors

* fix properties

* stepped value for aria value

* use vertical instead of orientation

* Improve a11y

* force role slider
2022-10-24 09:25:26 +02:00
Steve RepsherandGitHub 928f20ada5 Revert "Fix typo when deleting an integration. Fixes #14135" (#14149)
Revert "Fix typo when deleting an integration. Fixes #14135 (#14137)"

This reverts commit 1f9763d6c8.
2022-10-22 15:30:31 +02:00
Bram Kragten b53e86ad03 Bumped version to 20221021.0 2022-10-21 21:16:10 +02:00
Bram KragtenandGitHub 112ec10b30 Add support for virtual integrations (#14138) 2022-10-20 23:08:55 -04:00
Kris NobleandGitHub 1b4989a7dc Fix typo when deleting an integration (#14145)
Fixes #14135, resubmitted modifying the correct file
2022-10-20 21:27:00 +00:00
Kris NobleandGitHub 1f9763d6c8 Fix typo when deleting an integration. Fixes #14135 (#14137) 2022-10-20 17:55:21 +00:00
Yosi LevyandGitHub b495667e8d Various dev tools RTL fixes (#14118) 2022-10-20 11:22:56 +02:00
Brandon RothweilerandGitHub a46e72ffbd Fix duplicate trigger IDs showing in the Triggered By condition (#14122) 2022-10-20 11:20:46 +02:00
Bram KragtenandGitHub 0a2eb05062 Only change dialog for camera in info tab (#14130) 2022-10-20 11:19:35 +02:00
Bram Kragten c9b5fe9a85 Bumped version to 20221020.0 2022-10-20 10:15:36 +02:00
Igor SantosandGitHub 58d5a07a43 Allow negative values in gauge severity config GUI (#14123) 2022-10-19 20:20:18 +00:00
Josh McCartyandGitHub c44de09a7c Add any step for input number settings to match server-side validation (#14121) 2022-10-19 22:07:01 +02:00
epenetandGitHub a0b645d1b9 Add precipitation_intensity sensor device class (#14027) 2022-10-19 22:02:01 +02:00
epenetandGitHub 0b6c6b2b98 Rename imperial unit system to us_customary (#14092) 2022-10-19 22:00:11 +02:00
krazosandGitHub bad3edc340 Fix translation of Duplicate label in automation and script editors (#14131) 2022-10-19 21:59:49 +02:00
epenetandGitHub d3015c362d Add support for mm/h on generic speed (#14031) 2022-10-19 15:02:39 +02:00
Franck NijhofandGitHub fbb8ff4362 Integrations v2.1: compatibility with hubs, devices and services (#14114) 2022-10-19 12:41:57 +02:00
Bram KragtenandGitHub 6393d59035 make open in new icon a bit smaller (#14125) 2022-10-19 10:49:56 +02:00
Bram KragtenandGitHub 62de708b2b Align border radius (#14124) 2022-10-19 10:49:47 +02:00
Alex van den HoogenandGitHub 6c4c65730c Set more-info dialog max-width to fit all languages (#14110) 2022-10-17 16:15:01 +00:00
Travis CollinsandGitHub 23f8373b16 fix history graph configuration timeline update (#14101) 2022-10-17 18:02:11 +02:00
Paul BotteinandGitHub dec8883f2a Introduce tile card (#14085) 2022-10-17 11:43:49 +02:00
Josh McCartyandGitHub a475b06d49 Format entity & sensor card with manual units; fix param comment typo (#14090) 2022-10-17 11:15:37 +02:00
0972cb4583 Fix pickers not getting focus (#14068)
* fix focus pickers

* await nextRender instead of setTimeout

* use bram's code

* Update src/components/ha-target-picker.ts

Co-authored-by: Steve Repsher <[email protected]>

Co-authored-by: Steve Repsher <[email protected]>
2022-10-17 11:01:17 +02:00
Yosi LevyandGitHub dad7c43fd2 Fix min width so entire date/time will be presented (#14105) 2022-10-17 10:53:06 +02:00
7e6a9f1653 Remove box shadow for ha-card (#14063)
* Remove box shadow for ha-card

* add raised style in case of raised card needed

* add box-sizing: border-box

* Allow box-shadow theming

* Restore box-shadow theme in date range picker

* Restore hui unused entities card box shadow none

* Apply suggestions from code review

Co-authored-by: Bram Kragten <[email protected]>

Co-authored-by: Bram Kragten <[email protected]>
2022-10-17 10:20:11 +02:00
f627e98902 Improve pluralization in automation descriptions (#14080)
Co-authored-by: Bram Kragten <[email protected]>
2022-10-17 09:50:11 +02:00
Travis CollinsandGitHub 0d623794ed Mark attribute as optional (#14067)
* Mark attribute as optional

* move optional to a separate translation

* indicate required fields, not optional fields
2022-10-17 09:45:28 +02:00
0a3fa3e218 Ha selector UI action (#14082)
Co-authored-by: Bram Kragten <[email protected]>
2022-10-13 12:43:24 +00:00
Paul BotteinandGitHub 19887fbd54 Remove undefined key in lovelace card config (#14081) 2022-10-13 14:31:55 +02:00
fe9967550b Load selector elements dynamic (#14084)
Co-authored-by: Paul Bottein <[email protected]>
2022-10-13 14:28:49 +02:00
9b19b6f203 Remove confusing header image (#14070)
Co-authored-by: Bram Kragten <[email protected]>
2022-10-13 09:30:37 +00:00
Yosi LevyandGitHub 797718f478 Fix automation trace RTL (#14079) 2022-10-13 11:26:19 +02:00
Paul BotteinandGitHub 9ea0e3a75f Fix keyboard keys for tap action (#14071) 2022-10-13 11:17:04 +02:00
Josh McCartyandGitHub 0b76b60f6e Format input_number field consistently (#14076) 2022-10-13 11:14:43 +02:00
karliemeadsandGitHub d8be662bd6 Fix timezone problem for "Today" in the Date Picker. (#14043) 2022-10-13 11:04:28 +02:00
jrobles98andGitHub c478a15846 Fix Map Card styling boundaries (#14050) 2022-10-13 11:04:04 +02:00
Paul BotteinandGitHub 811208363b Bigger pin for ha-slider to support 4 digits numbers (#14072) 2022-10-12 22:45:08 +02:00
Steve RepsherandGitHub 969772663b Fix localize key errors in options flow, repairs flow, and integrations (#14060) 2022-10-11 15:47:41 +02:00
Patrick ZAJDAandGitHub c3b9438b3b Also handle enter key on ignore menu for discovered integrations (#14061) 2022-10-11 15:46:11 +02:00
pataarandGitHub 9b51df02d6 Update yarn to version 3.2.3 (#13992) 2022-10-11 15:45:34 +02:00
PierreandGitHub 8a4b0b081a fix(mobile): add safe-area-inset on app layout and specific views (#14032) 2022-10-11 15:45:15 +02:00
Bram KragtenandGitHub 1ecc88291d Handle multiple times in time trigger (#14006) 2022-10-11 15:41:21 +02:00
Erik MontnemeryandGitHub fb80da013e Use color temperatures in Kelvin in more_info_light (#14016) 2022-10-10 20:12:36 +02:00
Steve RepsherandGitHub a4fcb743fa Add autocomplete to onboarding, cloud, and password change (#14040) 2022-10-10 19:54:16 +02:00
Steve RepsherandGitHub 8444fe0a07 Include backend translations in Lokalise download (#13981) 2022-10-10 17:12:25 +02:00
Steve RepsherandGitHub 1442f6d546 Fix localize key error in developer tools & remove exception (#14045) 2022-10-10 17:05:34 +02:00
Sven SerlierandGitHub c468fba36f Fix demo leak sensor (#14046) 2022-10-10 17:04:49 +02:00
2afbfb01bd Fix zero for a slider in a blueprint (#14053)
Co-authored-by: Bram Kragten <[email protected]>
2022-10-10 15:00:10 +00:00
Paul BotteinandGitHub 907466d060 Add first weekday option in profile (#13991) 2022-10-10 16:58:27 +02:00
jrobles98andGitHub 4deee46864 Refactor css variable because of a typo in dialogs, no change in any behaviour (#14056) 2022-10-10 14:53:52 +00:00
Brandon RothweilerandGitHub 391cc95883 Automation description small fixes (#14055) 2022-10-10 16:43:32 +02:00
Michael VarrieurandGitHub 0c800344d2 Add custom selectUnit, use in relativeTime function (#14008) 2022-10-10 14:26:02 +00:00
Joakim SørensenandGitHub 08279f35cf Ignore progress if no progress (#14024) 2022-10-10 16:21:46 +02:00
Paul BotteinandGitHub 05f2ef8a37 Some fixes for low carbon display (#14020) 2022-10-10 16:21:02 +02:00
Travis CollinsandGitHub 3a41b4e65b Fix calendar card list view (#14013) 2022-10-10 14:16:49 +00:00
karliemeadsandGitHub e08c12c4dd Validate hours after tabbing out of field during time input (#13949) 2022-10-10 15:56:43 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
bb0884c4bb Bump actions/stale from 6.0.0 to 6.0.1 (#14058)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-10 13:27:57 +02:00
Bram KragtenandGitHub 45646eaf0b 20221010.0 (#14059) 2022-10-10 09:23:02 +02:00
Bram Kragten d735b2b722 Update pyproject.toml 2022-10-10 09:22:06 +02:00
Paulus SchoutsenandGitHub 310b110b8b Fix Google Cloud enable/disable toggle (#14035) 2022-10-07 14:20:39 +00:00
Bram KragtenandGitHub 06557709ae 20221006.0 (#14023) 2022-10-06 17:36:53 +02:00
Bram Kragten 1b5571557c Bumped version to 20221006.0 2022-10-06 16:51:53 +02:00
712ecbd13c Adjust statistics issues (#14022)
* Adjust statistics issues

* Fix lint error

* Quote units

* prettier

* screw lit/quoted-expressions

Co-authored-by: Bram Kragten <[email protected]>
2022-10-06 16:51:00 +02:00
Bram Kragten ea286b6fac Update translations 2022-10-06 16:31:50 +02:00
karliemeadsandGitHub a2953138f4 Fix onboarding create new user password checks (#14010) 2022-10-06 16:07:16 +02:00
Bram KragtenandGitHub b327d6e0bc 20221005.0 (#14007) 2022-10-05 16:42:29 +02:00
Bram Kragten 88983806ae Bumped version to 20221005.0 2022-10-05 16:38:36 +02:00
1ac701d1c8 change yaml integration dialog (#14003)
* change yaml integration dialog

* Update dialog-yaml-integration.ts

* Update src/panels/config/integrations/dialog-yaml-integration.ts

Co-authored-by: Paul Bottein <[email protected]>

Co-authored-by: Paul Bottein <[email protected]>
2022-10-05 16:26:06 +02:00
karliemeadsandGitHub aaeca323d4 Highlight focus on show/hide password toggle (#13997) 2022-10-05 15:01:43 +02:00
Erik MontnemeryandGitHub 83a4fd6c1b Improve explanation of configuration validation (#14000) 2022-10-05 12:12:28 +02:00
Bram KragtenandGitHub ef9643ddaf Fix energy demo (#14002) 2022-10-05 11:03:49 +02:00
Bram KragtenandGitHub af93ec1b92 Fix zwave config flow (#14001) 2022-10-05 10:45:39 +02:00
Bram KragtenandGitHub 4dce9404a4 20221004.0 (#13987) 2022-10-04 17:09:56 +02:00
Raman GuptaandGitHub ed54c70e75 Update zwave_js firmware update event interfaces (#13982) 2022-10-04 16:43:05 +02:00
Bram Kragten 114507b5cb Bumped version to 20221004.0 2022-10-04 16:42:19 +02:00
Bram KragtenandGitHub 8eddaa1914 Filter out homekit and matter iot standards (#13985)
* Filter out homekit and matter iot standards

* add divider between discovered

* Update dialog-add-integration.ts

* Update ha-domain-integrations.ts

* Update en.json

* Change headers

* update styling

* translation
2022-10-04 16:25:30 +02:00
krazosandGitHub 37394f7bc5 Update script picker to use relative time for last_triggered (#13973) 2022-10-04 11:40:12 +02:00
krazosandGitHub d5cdd53fab Update scene dashboard to use relative time for last_activated (#13974) 2022-10-04 11:39:55 +02:00
krazosandGitHub 0ac2393ecb Update automation picker to use differenceInDays from date-fns (#13980) 2022-10-04 10:45:15 +02:00
c38892a162 Add Malayalam language. (#13854)
* Add Malayalam language.

Update translationMetadata.json to add the language Malayalam.

* Apply suggestions from code review

Remove two extra spaces on line 121.

Co-authored-by: Bram Kragten <[email protected]>

Co-authored-by: Bram Kragten <[email protected]>
2022-10-04 08:33:08 +02:00
c77e5dee84 Allow remote WebRTC playback using STUN server from RTSPtoWeb integration (#13942)
Co-authored-by: Bram Kragten <[email protected]>
2022-10-03 21:10:57 -04:00
Bram KragtenandGitHub 3752336a9a 20221003.0 (#13979) 2022-10-03 20:02:17 +02:00
Bram KragtenandGitHub 70d4fe1285 main col device data table none narrow (#13977) 2022-10-03 20:02:00 +02:00
Bram Kragten d3738adf11 Bumped version to 20221003.0 2022-10-03 19:41:15 +02:00
Bram KragtenandGitHub 7ededd2766 Disable trigger id for read only automation (#13976) 2022-10-03 17:40:22 +00:00
Franck NijhofandGitHub ed8b07b7e2 Render automation description as Markdown (#13975) 2022-10-03 19:29:55 +02:00
Erik MontnemeryandGitHub c12189b27f Add isExternalStatistic helper (#13969) 2022-10-03 19:11:03 +02:00
Allen PorterandGitHub 9c923e45c5 Improve video user experience by loading camera thumbnail as initial video background image (#13943) 2022-10-03 18:38:25 +02:00
Paul BotteinandGitHub 66bfdb6d12 Fix empty value combobox (#13971) 2022-10-03 17:42:30 +02:00
Erik MontnemeryandGitHub aa673774a8 Correct filtering of statistics when adding gas energy source (#13968) 2022-10-03 13:38:22 +02:00
mbo18andGitHub 8c7974e466 Add icon to device class duration (#13961)
* Add icon to device class duration

* Change to mdiProgressClock
2022-10-03 13:37:37 +02:00
Bram KragtenandGitHub a70e2342a2 Add main column to data table (#13966) 2022-10-03 13:37:00 +02:00
Paul BotteinandGitHub b5c9aae1aa Update delete area dialog (#13967) 2022-10-03 10:39:54 +00:00
Bram KragtenandGitHub 93893d0237 Don't include all homekit discovery items for integrations that suppo… (#13960) 2022-10-03 11:43:17 +02:00
Bram KragtenandGitHub ad3dcb355f Use formatDateNumeric in repair dialog (#13964) 2022-10-03 11:43:06 +02:00
Kyle NiewiadaandGitHub 952b433b2c Support typing negative values for ha-form-float (#13940) 2022-10-03 11:02:00 +02:00
Yosi LevyandGitHub 200fff506c Fix alignment of float label (#13958) 2022-10-03 10:22:01 +02:00
Bram KragtenandGitHub e84b9b7c6f 20221002.0 (#13953) 2022-10-02 20:43:53 +02:00
Bram Kragten e2a89b1157 Bumped version to 20221002.0 2022-10-02 20:19:51 +02:00
cb0310593c Change add application credential flow (#13951)
* Change add application credential flow

* Update step-flow-abort.ts

* import

* Add missing credential docs link

* Load description, show only that if available

* Update dialog-add-application-credential.ts

* pass along manifest

Co-authored-by: Paulus Schoutsen <[email protected]>
2022-10-02 20:19:32 +02:00
Bram KragtenandGitHub c14d9ab957 Link discovered homekit devices to domain (#13950) 2022-10-02 13:10:41 -04:00
dd695545d3 Make duplicate script/automation work in picker for yaml (#13952)
Co-authored-by: Paulus Schoutsen <[email protected]>
2022-10-02 13:10:15 -04:00
Franck NijhofandGitHub 176d8567f4 Add condition description for trigger condition (#13941) 2022-10-02 17:39:15 +02:00
Bram KragtenandGitHub 4f4a95c04e Normalize automation config (#13938)
* Normalize automation config

* gen

* Update ha-automation-action-choose.ts
2022-10-01 18:02:24 -04:00
Erik MontnemeryandGitHub 6393944a1b Adapt to removal of statistics state_unit_of_measurement (#13935)
* Adapt to removal of statistics state_unit_of_measurement

* Tweak
2022-10-01 18:55:05 +02:00
Paul BotteinandGitHub f768c5ef7f Remove back path from UI (#13936)
Remove back path from UI as it can be edited with yaml editor
2022-09-30 22:23:55 +02:00
Bram KragtenandGitHub 650d579d05 Link google assistant, alexa and cloud to cloud config (#13933) 2022-09-30 14:52:20 -04:00
Bram KragtenandGitHub 9811f2681c Add add device fab to devices page (#13931) 2022-09-30 17:37:09 +02:00
Paul BotteinandGitHub 6a3ac9116e Add yaml mode to view editor (#13926) 2022-09-30 17:29:29 +02:00
amitfinandGitHub 2a6ef9b955 Read correctly the minutes of a schedule (#13929) 2022-09-30 17:21:54 +02:00
Bram KragtenandGitHub b9395e1c97 Add support for brand images (#13930) 2022-09-30 14:50:01 +02:00
Paul BotteinandGitHub cd8c1f42ca Remove inert property on combobox overlay when items change (#13928) 2022-09-30 14:41:09 +02:00
Joakim SørensenandGitHub 0ec887ad50 Remove test devices from move datadisk dialog (#13927) 2022-09-30 11:27:59 +02:00
Erik MontnemeryandGitHub f8a7737eb9 Align with backend statistics WS API changes (#13913)
Align with backend statists WS API changes
2022-09-30 08:38:56 +02:00
Bram KragtenandGitHub 3e01597a38 20220929.0 (#13920) 2022-09-29 18:23:01 +02:00
Bram Kragten 6d230ebd65 Bumped version to 20220929.0 2022-09-29 18:17:14 +02:00
Bram KragtenandGitHub 9035e8e9dc Add back loading manifests of loaded integrations (#13919) 2022-09-29 18:14:34 +02:00
Bram KragtenandGitHub 7ff138534f Show non-editable scripts in UI (#13917) 2022-09-29 12:11:48 -04:00
Bram KragtenandGitHub 0b76183acd Show non-editable automations in UI (#13900) 2022-09-29 12:11:29 -04:00
Paul BotteinandGitHub 9f658c10c3 Hide restored scripts from scripts list (#13916) 2022-09-29 15:48:26 +02:00
Bram Kragten 72ed6fdd6b fix brand discovery 2022-09-29 14:51:56 +02:00
Bram Kragten 3bdc5ad420 optimize 2022-09-29 14:41:25 +02:00
Bram KragtenandGitHub 8d2f7d99af Fixes for add integration (#13914) 2022-09-29 14:32:24 +02:00
Bram KragtenandGitHub b88317f1d3 change values when unsupported_unit_metadata_can_convert (#13903) 2022-09-28 22:52:40 -04:00
Bram KragtenandGitHub 8ccd0426dd Add my support for brands (#13909) 2022-09-28 20:34:11 -04:00
Bram KragtenandGitHub c17e8ba65a hide none config flow integrations from brand (#13907)
* hide none config flow integrations from brand

* filter

* Add support for not config flow domain integrations
2022-09-28 22:42:23 +02:00
Bram KragtenandGitHub d9f1540115 add support for stats units_changed_can_convert issues (#13902) 2022-09-28 12:46:07 -04:00
Bram Kragten 1b480248d1 Update translations 2022-09-28 18:31:40 +02:00
Bram KragtenandGitHub e88bb1114b 20220928.0 (#13904) 2022-09-28 18:14:25 +02:00
Bram Kragten 80e868e281 Merge branch 'master' into dev 2022-09-28 17:51:19 +02:00
Bram Kragten d8a49c6eec Bumped version to 20220928.0 2022-09-28 17:43:09 +02:00
uvjustinandGitHub 594ee85bbe Add stream orientation to camera entity registry settings (#13512) 2022-09-28 17:41:32 +02:00
Mark ParkerandGitHub 182b8f809c Prevent service call error if preset_mode is null (#13825) 2022-09-28 17:40:08 +02:00
Bram KragtenandGitHub 8e4bebb694 Integrations v2 (#13887)
* WIP: Integrations v2

* update

* manifests

* update wording

* show yaml only

* Show spinner

* Update

* Use virtulizer

* Update

* change interval if 5 min stats

* remove yaml

* fix application credentials

* Add zwave and zigbee device support

* make back button bigger

* margin
2022-09-28 17:39:40 +02:00
Paul BotteinandGitHub dddb922593 Add Learn how it works link to cloud account (#13693) 2022-09-28 13:05:50 +00:00
Bram Kragten da38cbccf1 change interval if 5 min stats 2022-09-28 15:03:01 +02:00
71c43058ea Support displaying relative change in statistics graph cards (#13837)
* Support displaying relative change in statistics graph cards

* Address review comments

* Add option to display state

* Drop absolute sum option

* Drop period if invalid

* prevent fetching stats twice

* Change stat_types to supported ones for statistics

Co-authored-by: Bram Kragten <[email protected]>
2022-09-28 12:51:41 +00:00
Erik MontnemeryandGitHub f9d119d33d Add icons for new sensor device classes (#13895) 2022-09-28 14:00:47 +02:00
Erik MontnemeryandGitHub d3b97ae91c Add support for overriding sensor weight unit (#13897) 2022-09-28 12:15:23 +02:00
Paul BotteinandGitHub 5146fa1d9e Update join beta dialog (#13847) 2022-09-28 09:27:34 +00:00
fc86a66c33 Use unique id for script (#13817)
Co-authored-by: Bram Kragten <[email protected]>
2022-09-28 09:27:09 +00:00
Ignacio Hernandez-RosandGitHub 3959a7475c Bug Fix, can't create schedule on Sunday (#13876) 2022-09-28 09:08:30 +00:00
Paul BotteinandGitHub 61d09072a7 Update Uninstall add-on dialog (#13898) 2022-09-28 11:02:09 +02:00
Paul BotteinandGitHub 4a07d3d39b Update Restart add-on dialog (#13896) 2022-09-28 11:01:12 +02:00
Paul BotteinandGitHub be30cdb51f Update change password dialog (#13888)
* Update change password dialog

* Improve wording

* Update modal for people page

* Remove useless async
2022-09-28 11:00:36 +02:00
MeowandGitHub 894258d7b8 fixed duplicate unit_of_measurement (#13884) 2022-09-28 10:53:25 +02:00
Erik MontnemeryandGitHub 296d5f8ffe Add support for overriding sensor distance unit (#13831) 2022-09-28 09:11:34 +02:00
Erik MontnemeryandGitHub d1c2020ee4 Add support for overriding sensor speed unit (#13832) 2022-09-28 08:49:42 +02:00
Erik MontnemeryandGitHub 3c1b2aa4f3 Add support for overriding sensor volume unit (#13833) 2022-09-28 08:22:16 +02:00
Bram KragtenandGitHub 17a11809de Prevent re-creation of custom panel when content was not changed (#13747) 2022-09-27 13:39:05 -04:00
David F. MulcaheyandGitHub 3083d5b04c Clean up ZHA configuration UI (#13610) 2022-09-27 16:02:45 +02:00
Paul BotteinandGitHub 0848c096b9 Fix script config form (#13878) 2022-09-27 15:40:38 +02:00
Paul BotteinandGitHub 8d5c36a96a Fix more info with unnamed entity (#13859) 2022-09-27 15:39:49 +02:00
Paul BotteinandGitHub cc76a6c5ed Add unique_id to entity registry (#13886) 2022-09-27 15:39:14 +02:00
Paul BotteinandGitHub 01fd2787be Update add application credentials dialog (#13879) 2022-09-27 15:38:29 +02:00
Paul BotteinandGitHub c79955e76a Add subview option to dashboard views (#13822) 2022-09-27 15:37:48 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
51874329d1 Bump actions/stale from 5.2.0 to 6.0.0 (#13874)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-26 14:15:58 +02:00
Erik MontnemeryandGitHub 6252955bb5 Simplify energy settings (#13846) 2022-09-23 09:03:17 +02:00
Paul BotteinandGitHub 5422fda990 Update import blueprint dialog (#13840) 2022-09-22 15:24:15 +02:00
Paul BotteinandGitHub db8bc9d34a Update delete automation dialog (#13765) 2022-09-22 15:22:20 +02:00
Paul BotteinandGitHub 9f19bdde65 Allow proxy in codespaces env for core (#13842) 2022-09-22 15:21:42 +02:00
Bram KragtenandGitHub 7336c1280f Fix select issues (#13839) 2022-09-22 15:19:59 +02:00
Bram KragtenandGitHub 8e245c8a83 Fix move data disk dialog (#13845) 2022-09-22 15:19:34 +02:00
5a150ac80d Prompt user to remove application credentials when deleting the integration configuration (#13159)
Co-authored-by: Bram Kragten <[email protected]>
2022-09-22 10:47:08 +02:00
Paul BotteinandGitHub eac13980ff Add navigation picker for dashboards (#13826)
* Add navigation picker for dashboards

* Rename to navigation

* Fix empty title and path

* Use hass panels instead of fetching dashboards

* Apply suggestions
2022-09-21 14:42:51 +02:00
Erik MontnemeryandGitHub 977fdd9fbb Add missing translations to statistics graph card editor (#13836) 2022-09-21 09:30:58 +00:00
Paul BotteinandGitHub cedde3d6a2 Avoid overflow with combobox (#13835) 2022-09-21 11:23:22 +02:00
Bram KragtenandGitHub 56c78ae108 Fix price units for gas (#13824) 2022-09-21 11:16:19 +02:00
Erik MontnemeryandGitHub 82a641a200 Fix unit columns for statistics developer tool (#13830) 2022-09-21 11:15:57 +02:00
Erik MontnemeryandGitHub 04181e9c28 Adapt energy to core changes (#13779) 2022-09-20 17:44:03 -04:00
Paul BotteinandGitHub 4b8960c236 Update Move datadisk (not found) dialog (#13812) 2022-09-19 12:39:05 +00:00
Paul BotteinandGitHub fc104e7280 Fix name in confirmation delete dialog (#13815) 2022-09-19 12:34:06 +02:00
Paul BotteinandGitHub 8c125f4dee Update Delete automation trigger/condition/action dialog (#13813) 2022-09-19 12:33:27 +02:00
Paul BotteinandGitHub b93f457d53 Add destructive style to scene delete button (#13814) 2022-09-19 12:32:17 +02:00
Paul BotteinandGitHub e8ce6ad919 Improve confirm unsaved dialog (#13807) 2022-09-19 11:35:33 +02:00
SalamandarandGitHub 0ce695577c Fix shortcuts for non-qwerty keyboard layouts (revert #12892) (#13190) 2022-09-19 08:21:45 +00:00
Franck NijhofandGitHub 50b67751d9 Fix time trigger description pointing to entity (#13786) 2022-09-19 10:11:56 +02:00
Franck NijhofandGitHub 05515f21c3 Add timer states to state selector (#13788) 2022-09-19 10:11:10 +02:00
Paul BotteinandGitHub 063c377797 Fix back button on automation editor on Safari (#13806) 2022-09-19 10:10:50 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
aee11da671 Bump actions/stale from 5.1.1 to 5.2.0 (#13805)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-19 09:22:59 +02:00
Paul BotteinandGitHub 5fcb219fcd Update delete script dialog (#13768) 2022-09-16 16:40:41 +02:00
Paul BotteinandGitHub a97dfbb51f Update delete blueprint dialog (#13770) 2022-09-16 16:40:25 +02:00
Paul BotteinandGitHub c5f4e8ffdd Update certificate information dialog (#13773) 2022-09-16 16:40:10 +02:00
Paul BotteinandGitHub 7ffd30643a Update delete person dialog (#13763) 2022-09-16 16:39:51 +02:00
Paul BotteinandGitHub dcfcd54f10 Update delete scene dialog (#13767) 2022-09-16 16:39:29 +02:00
Paul BotteinandGitHub 3b103619ec Update delete resource dialog (#13764) 2022-09-16 16:38:29 +02:00
Paulus SchoutsenandGitHub 614c1574ca Type outgoing messages on EM and add matter (#13775) 2022-09-16 08:33:21 -04:00
Paul BotteinandGitHub e1e3f9d925 Update delete and disable integration dialog (#13772) 2022-09-16 13:52:26 +02:00
Paul BotteinandGitHub 0ba4a07b92 Update webhook dialog (#13774) 2022-09-16 13:50:44 +02:00
Paul BotteinandGitHub 5a5f31b32c Update restart Home Assistant dialog (#13776) 2022-09-16 13:49:15 +02:00
Paul BotteinandGitHub ff92768973 Update reboot shutdown host dialog (#13777) 2022-09-16 13:48:55 +02:00
Erik MontnemeryandGitHub bb0529ecd2 Improve statistics graph editor (#13630) 2022-09-16 13:48:10 +02:00
Paul BotteinandGitHub bc62e9372b Update delete dashboard dialog (#13762) 2022-09-16 13:40:41 +02:00
Erik MontnemeryandGitHub 087a897cbe Add comment about input number not supporting initial (#13758) 2022-09-16 13:40:08 +02:00
Franck NijhofandGitHub 589efa8cc5 Exclude scenes, schedules & updates from scenes (#13759) 2022-09-16 13:39:38 +02:00
Bram KragtenandGitHub c93179c307 Use primary color for active tabs in traces (#13760) 2022-09-16 13:38:45 +02:00
Paul BotteinandGitHub 9e416e829c Do not recreate entities list at each re-order (#13751) 2022-09-16 13:38:31 +02:00
Paul BotteinandGitHub e13c632afa Update delete user dialog (#13761)
* Add destructive confirmation style

* Update delete user dialog
2022-09-15 16:21:25 +02:00
Erik MontnemeryandGitHub 544c8fe3bb Improve StatisticsChart to only fetch needed metadata (#13617) 2022-09-15 11:58:26 +00:00
Paul BotteinandGitHub 81b21f874b Improve cover entity definition (#13750) 2022-09-15 12:31:36 +02:00
Bram KragtenandGitHub ea319d55ef Allow to disable a select option (#13618) 2022-09-15 12:00:00 +02:00
Paul BotteinandGitHub 8c03bbdccc Improve light entity definition (#13744) 2022-09-15 11:58:36 +02:00
Paul BotteinandGitHub 321914d53a Fix empty hardware when fetching hardware info (#13738) 2022-09-14 09:13:32 +00:00
Paul BotteinandBram Kragten fe46f759c9 Fix system blank page (#13731) 2022-09-14 09:09:05 +02:00
Paul BotteinandGitHub 490d46396e Fix system blank page (#13731) 2022-09-14 09:08:37 +02:00
Bram Kragten 7ec28c4314 Bumped version to 20220907.2 2022-09-14 09:03:46 +02:00
Bram Kragten e9f4307d15 Fix hass subpage (#13730) 2022-09-14 09:03:39 +02:00
Bram KragtenandGitHub 3c62bc9b18 Fix hass subpage (#13730) 2022-09-14 09:02:51 +02:00
Erik MontnemeryandBram Kragten 28bae5071c Revert "Add initial field to the helper input_number in UI" (#13713) 2022-09-13 21:01:03 +02:00
Bram Kragten e9281ad9f1 Bumped version to 20220907.1 2022-09-13 20:58:07 +02:00
Bram Kragten 78187c5b0b improve duration rendering for state trigger (#13723) 2022-09-13 20:57:54 +02:00
Bram Kragten f164ad0b89 use the correct inputmode (#13722) 2022-09-13 20:57:18 +02:00
Erik MontnemeryandGitHub 48b10005e3 Revert "Add initial field to the helper input_number in UI" (#13713) 2022-09-13 14:53:55 -04:00
Bram KragtenandGitHub b3d64fc52a use the correct inputmode (#13722) 2022-09-13 18:53:19 +00:00
Bram KragtenandGitHub 23e5a47b3b improve duration rendering for state trigger (#13723) 2022-09-13 20:49:39 +02:00
PierreandBram Kragten 55d84973c6 fix: add previous repeat action configuration on change (#13717) 2022-09-13 20:31:40 +02:00
Paul BotteinandBram Kragten de90a62de7 Show confirm dialog when clicking traces (#13716) 2022-09-13 20:31:17 +02:00
Joakim SørensenandBram Kragten 3a17f2d73e Fix open config flow when coming from a my link (#13720) 2022-09-13 20:30:52 +02:00
Paul BotteinandBram Kragten 8f6a09f44c Don't use selector inside choose action (#13705) 2022-09-13 20:30:35 +02:00
Paul BotteinandBram Kragten d78191efa6 Fix rtl support for hass subpage layout (#13702) 2022-09-13 20:30:17 +02:00
Joakim SørensenandBram Kragten 749d869e03 Guard repairs subscription (#13708) 2022-09-13 20:30:02 +02:00
Erik MontnemeryandBram Kragten 5d6f446c30 Fix customizing sensor unit (#13710) 2022-09-13 20:29:47 +02:00
Joakim PlateandBram Kragten 3cf14bb2e1 Revert "Either show range or fix target temperature... #13638 (#13706) 2022-09-13 20:29:29 +02:00
Paul BotteinandBram Kragten f7253a73a5 Fix script config editor (#13703) 2022-09-13 20:27:10 +02:00
Joakim PlateandBram Kragten cfabaa8716 Display entity friendly name for disabled entities (#13696) 2022-09-13 20:26:49 +02:00
Paul BotteinandBram Kragten 032f497687 Fix empty value for state picker (#13699) 2022-09-13 20:26:29 +02:00
Felipe SantosandBram Kragten 432483b3d2 Use newspaper icon for change log button (#13668) 2022-09-13 20:26:08 +02:00
krazosandBram Kragten e95d5b1afb Eliminate redundant "for" in trigger description (#13669) 2022-09-13 20:21:24 +02:00
Bram Kragten 330f3e5ce4 use input instead of change (#13660) 2022-09-13 20:20:54 +02:00
Paul BotteinandBram Kragten fee6ae3045 Move automation trace actions to overflow menu (#13656) 2022-09-13 20:20:38 +02:00
Joakim SørensenandBram Kragten 5e431a07ad Guard more of the hardware panel (#13650) 2022-09-13 20:20:20 +02:00
uvjustinandGitHub 5d4c090b26 Bump hls.js to v1.2.3 (#13718) 2022-09-13 20:15:01 +02:00
PierreandGitHub b84240edbc fix: add previous repeat action configuration on change (#13717) 2022-09-13 20:00:20 +02:00
Paul BotteinandGitHub f4dc74b2e8 Show confirm dialog when clicking traces (#13716) 2022-09-13 19:59:35 +02:00
Joakim SørensenandGitHub c95d19299b Fix open config flow when coming from a my link (#13720) 2022-09-13 19:58:32 +02:00
Paul BotteinandGitHub 7696df56ac Don't use selector inside choose action (#13705) 2022-09-13 10:43:38 +02:00
Paul BotteinandGitHub 771733d326 Fix rtl support for hass subpage layout (#13702) 2022-09-13 10:42:15 +02:00
Joakim SørensenandGitHub 4f3c708109 Guard repairs subscription (#13708) 2022-09-13 10:41:19 +02:00
Erik MontnemeryandGitHub d2078a7e50 Fix customizing sensor unit (#13710) 2022-09-13 10:40:48 +02:00
Joakim PlateandGitHub d70cb24722 Revert "Either show range or fix target temperature... #13638 (#13706) 2022-09-13 10:40:18 +02:00
Paul BotteinandGitHub 6902537666 Fix script config editor (#13703) 2022-09-12 11:04:07 -05:00
Joakim PlateandGitHub 9ea1f61971 Display entity friendly name for disabled entities (#13696) 2022-09-12 15:55:03 +02:00
Paul BotteinandGitHub 782c95cf04 Fix empty value for state picker (#13699) 2022-09-12 15:53:18 +02:00
Erik MontnemeryandGitHub d5d6216cfe Move recorder statistics API to data/recorder.ts (#13672)
* Move recorder statistics API to data/recorder.ts

* Fix import

* prettier
2022-09-12 13:23:02 +02:00
Felipe SantosandGitHub 1086c85964 Use newspaper icon for change log button (#13668) 2022-09-12 12:22:49 +02:00
krazosandGitHub 47c0901df2 Eliminate redundant "for" in trigger description (#13669) 2022-09-12 11:57:53 +02:00
J. Nick KostonandGitHub d323ab6726 Add support for subscribing to config entry changes (#13585) 2022-09-11 10:22:26 -05:00
Erik MontnemeryandGitHub 07b5856190 Don't call deprecated history/* statistics API (#13658) 2022-09-08 16:03:35 -04:00
Bram KragtenandGitHub 462dee0351 use input instead of change (#13660) 2022-09-08 17:43:36 +02:00
Paul BotteinandGitHub f181a085de Move automation trace actions to overflow menu (#13656) 2022-09-08 12:00:52 +02:00
Joakim SørensenandGitHub bf5589b88d Guard more of the hardware panel (#13650) 2022-09-07 19:59:08 -05:00
Bram KragtenandGitHub c5428d8581 20220907.0 (#13646) 2022-09-07 16:54:32 +02:00
Bram KragtenandGitHub fd431f36f7 Fix state picker (#13644) 2022-09-07 16:43:04 +02:00
Bram Kragten 7acf3a049e Bumped version to 20220907.0 2022-09-07 16:33:01 +02:00
Bram KragtenandGitHub cfb0e8b39e cleanup script editor (#13639) 2022-09-07 16:26:32 +02:00
Bram KragtenandGitHub a3abbf3812 remove tabs from trace pages (#13640) 2022-09-07 16:26:22 +02:00
Philip AllgaierandGitHub 980156d23a Add separator option to overflow icon menu (#13627) 2022-09-07 13:56:18 +00:00
Paul BotteinandGitHub 37c2a3636e Improve scene layout (#13641) 2022-09-07 15:33:17 +02:00
Raman GuptaandGitHub b682d13486 Change typing of zwave_js API return based on lib version bump (#13393) 2022-09-07 08:13:13 -05:00
Philip AllgaierandGitHub 7f82b90c25 Either show range or fix target temperature control in climate more-info (#13638) 2022-09-07 14:27:54 +02:00
Paul BotteinandGitHub 3e9d6ea2c5 Bring reorder mode to script sequence (#13636) 2022-09-07 14:25:06 +02:00
Paul BotteinandGitHub 57c5c1c191 Remove re order mode for blueprint automation editor (#13637) 2022-09-07 14:23:42 +02:00
Paul BotteinandGitHub b553a3fd92 Some fixes for automation picker and editor (#13634) 2022-09-07 07:47:56 -04:00
Paul BotteinandGitHub d1964e92ea Some fixes for script picker and editor (#13635)
* Show error when user try to delete or duplicate yaml only script

* Use same layout as automation
2022-09-07 07:47:24 -04:00
Zack BarettandGitHub a889969bb8 Fix Back button on Safari and disable information menu item until saved (#13633) 2022-09-07 01:53:09 +00:00
Paul BotteinandGitHub f80b2c578b Fix run script translation (#13626)
fix translation
2022-09-06 17:42:15 +00:00
Paulus SchoutsenandGitHub 579f73e08f 20220906.0 (#13623) 2022-09-06 11:53:07 -04:00
Bram Kragten d13c6d3e7b Bumped version to 20220906.0 2022-09-06 17:38:39 +02:00
Bram KragtenandGitHub e78c875e8e Add last activated column to scenes data table (#13622) 2022-09-06 17:34:49 +02:00
Bram Kragten 5e8c54b00f Update ha-config-helpers.ts 2022-09-06 16:50:02 +02:00
Paul BotteinandGitHub 71bc74893f Add overflow menu for script picker (#13620) 2022-09-06 16:48:22 +02:00
Paul BotteinandGitHub df72e5099e Add overflow menu for scene picker (#13621) 2022-09-06 16:48:09 +02:00
Paulus SchoutsenandGitHub e6862daa38 Avoid script editor dirty on load (#13619) 2022-09-06 15:33:53 +02:00
Paul BotteinandGitHub 66db8c999f Open external device configuration url to a new tab/window (#13613)
* Open external device configuration url to a new tab/window

* Remove rel in action options
2022-09-06 10:24:03 +00:00
00bc315fc1 Fetch OS info from Supervisor if we do not return anything for hardware (#13614)
Co-authored-by: Bram Kragten <[email protected]>
2022-09-06 09:48:41 +00:00
Paul BotteinandGitHub f461825a59 Fix icon picker in dialog (#13616) 2022-09-06 09:48:13 +00:00
Bram KragtenandGitHub 8c98326e31 Fix netlify demo deploy (#13611) 2022-09-05 20:24:09 -04:00
Bram Kragten 7bb619b0c3 Update translations 2022-09-06 01:26:34 +02:00
Bram KragtenandGitHub 07bc9081b8 dont remove id from automation config (#13609) 2022-09-05 22:46:30 +00:00
Philip AllgaierandGitHub 91fa5972d1 Prevent combo box issues with duplicate labels (#13608) 2022-09-06 00:33:39 +02:00
Bram KragtenandGitHub abbfde19a2 20220905.0 (#13604) 2022-09-05 19:54:14 +02:00
Bram Kragten ccd617d68e Bumped version to 20220905.0 2022-09-05 19:39:30 +02:00
Bram KragtenandGitHub 8a7f35cee6 Improve rename automation dialog (#13601) 2022-09-05 19:38:51 +02:00
Bram KragtenandGitHub e510e5b371 Link logbook row to trace if available (#13599)
* Link logbook row to trace if available

* Update ha-logbook-renderer.ts
2022-09-05 19:36:09 +02:00
aa6ee0f6d2 Fix icon picker reset by hass update (#13587)
* Fix icon picker reset by hass update

* Update src/components/ha-icon-picker.ts

Co-authored-by: Bram Kragten <[email protected]>

* Only update when not opened

Co-authored-by: Bram Kragten <[email protected]>
2022-09-05 19:01:20 +02:00
Bram KragtenandGitHub f3449c4d9b Add description to automation editor (#13603) 2022-09-05 19:00:54 +02:00
3c289deb21 Add remove, delete, add and create guidelines (#13593)
Co-authored-by: Philip Allgaier <[email protected]>
2022-09-05 18:28:54 +02:00
Paul BotteinandGitHub 847d163cc8 Disable close on outside click for rename + mode dialogs (#13602) 2022-09-05 16:26:32 +00:00
Paul BotteinandGitHub 28d11703fc Reorder overflow menu (#13596) 2022-09-05 18:18:58 +02:00
Bram KragtenandGitHub 1f003ae3be Remove tabs from area and device pages (#13600) 2022-09-05 18:18:32 +02:00
chpegoandGitHub a57d7813e7 typo dialogs (#13598) 2022-09-05 15:55:48 +00:00
J. Nick KostonandGitHub 5842b10a10 Handle logbook updates where the new records are in the middle of the old records (#13595) 2022-09-05 17:47:48 +02:00
Paul BotteinandGitHub 8ee9655bd5 On larger screens, move traces button out of the overflow menu (#13597) 2022-09-05 17:44:10 +02:00
Paul BotteinandGitHub 3ef567dcd5 Automation change mode dialog (#13591) 2022-09-05 17:43:34 +02:00
Joakim SørensenandGitHub 37f6b4f6be Show hardware if hassio or hardware (#13594) 2022-09-05 16:47:28 +02:00
a817faae54 Add back blank before percent sign ("%") based on language (#13590)
Co-authored-by: Paulus Schoutsen <[email protected]>
2022-09-05 12:49:21 +00:00
Paul BotteinandGitHub ab745f6e8e Reorder automation elements (#13548) 2022-09-05 08:19:38 -04:00
Bram KragtenandGitHub 02d608b704 only show cpu and mem when available (#13589) 2022-09-05 08:12:04 -04:00
Bram KragtenandGitHub 310df387e7 Fix tag trigger (#13588) 2022-09-05 08:08:52 -04:00
Bram KragtenandGitHub fe8e79a67f Remove tabs from scene and script edit page (#13592) 2022-09-05 08:03:00 -04:00
Paulus SchoutsenandGitHub 8ffe676827 Move edit description into rename dialog (#13580) 2022-09-05 10:49:07 +02:00
David F. MulcaheyandGitHub f032d0dbcf Fix ZHA visualization page (#13584) 2022-09-04 22:25:03 -04:00
Paulus SchoutsenandGitHub 8ec2c38f72 20220902.0 (#13571) 2022-09-02 16:15:38 -04:00
Paulus SchoutsenandGitHub 0b637fc9bd Dev -> Master 20220901.0 (#13561) 2022-09-01 16:42:16 -04:00
Paulus SchoutsenandGitHub 5466705d97 20220831.0 (#13541) 2022-08-31 12:45:33 -04:00
Zack BarettandGitHub df4b83349e Merge pull request #13329 from home-assistant/dev 2022-08-02 10:20:21 -05:00
61b42249ec Merge pull request #13302 from home-assistant/dev
Co-authored-by: Paulus Schoutsen <[email protected]>
Co-authored-by: Franck Nijhof <[email protected]>
2022-07-28 10:31:47 -05:00
Bram KragtenandGitHub 40616b6af2 Merge pull request #13286 from home-assistant/dev 2022-07-27 12:41:33 +02:00
903 changed files with 38626 additions and 215189 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.148.1/containers/python-3/.devcontainer/base.Dockerfile
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.9
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.10
ENV \
DEBIAN_FRONTEND=noninteractive \
+30 -24
View File
@@ -5,33 +5,39 @@
"context": ".."
},
"appPort": "8124:8123",
"context": "..",
"postCreateCommand": "script/bootstrap",
"extensions": [
"github.vscode-pull-request-github",
"dbaeumer.vscode-eslint",
"ms-vscode.vscode-typescript-tslint-plugin",
"esbenp.prettier-vscode",
"bierner.lit-html",
"runem.lit-plugin",
"ms-python.vscode-pylance"
],
"containerEnv": {
"WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}"
},
"settings": {
"terminal.integrated.shell.linux": "/bin/bash",
"files.eol": "\n",
"editor.tabSize": 2,
"editor.formatOnPaste": false,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"files.trimTrailingWhitespace": true
"customizations": {
"vscode": {
"extensions": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"runem.lit-plugin",
"github.vscode-pull-request-github",
"eamodio.gitlens"
],
"settings": {
"files.eol": "\n",
"editor.tabSize": 2,
"editor.formatOnPaste": false,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"editor.renderWhitespace": "boundary",
"editor.rulers": [80],
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"files.trimTrailingWhitespace": true,
"terminal.integrated.shell.linux": "/usr/bin/zsh",
"gitlens.showWelcomeOnInstall": false,
"gitlens.showWhatsNewAfterUpgrades": false,
"workbench.startupEditor": "none"
}
}
}
}
+14 -2
View File
@@ -5,6 +5,7 @@
"plugin:@typescript-eslint/recommended",
"plugin:wc/recommended",
"plugin:lit/all",
"plugin:lit-a11y/recommended",
"prettier"
],
"parser": "@typescript-eslint/parser",
@@ -65,7 +66,10 @@
"import/extensions": [
"error",
"ignorePackages",
{ "ts": "never", "js": "never" }
{
"ts": "never",
"js": "never"
}
],
"no-restricted-syntax": ["error", "LabeledStatement", "WithStatement"],
"object-curly-newline": "off",
@@ -112,7 +116,15 @@
],
"unused-imports/no-unused-imports": "error",
"lit/attribute-value-entities": "off",
"lit/no-template-map": "off"
"lit/no-template-map": "off",
"lit/no-native-attributes": "warn",
"lit/no-this-assign-in-render": "warn",
"lit/prefer-nothing": "warn",
"lit-a11y/click-events-have-key-events": ["off"],
"lit-a11y/no-autofocus": "off",
"lit-a11y/alt-text": "warn",
"lit-a11y/anchor-is-valid": "warn",
"lit-a11y/role-has-required-aria-attrs": "warn"
},
"plugins": ["disable", "unused-imports"],
"processor": "disable/disable"
+13
View File
@@ -6,3 +6,16 @@ updates:
interval: weekly
time: "06:00"
open-pull-requests-limit: 10
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
time: "03:00"
open-pull-requests-limit: 10
labels:
- "dependencies"
ignore:
# Ignore rollup and plugins until everything else is updated
- dependency-name: "*rollup*"
- dependency-name: "@rollup/*"
- dependency-name: "serve"
+86
View File
@@ -0,0 +1,86 @@
name: Cast deployment
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
push:
branches:
- master
env:
NODE_VERSION: 16
NODE_OPTIONS: --max_old_space_size=6144
jobs:
deploy_dev:
runs-on: ubuntu-latest
name: Deploy Development
if: github.event_name != 'push'
environment:
name: Cast Development
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/[email protected]
with:
ref: dev
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/[email protected]
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Build Cast
run: ./node_modules/.bin/gulp build-cast
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy to Netlify
id: deploy
uses: netlify/actions/cli@master
with:
args: deploy --dir=cast/dist --alias dev
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_CAST_SITE_ID }}
deploy_master:
runs-on: ubuntu-latest
name: Deploy Production
if: github.event_name == 'push'
environment:
name: Cast Production
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/[email protected]
with:
ref: master
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/[email protected]
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Build Cast
run: ./node_modules/.bin/gulp build-cast
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy to Netlify
id: deploy
uses: netlify/actions/cli@master
with:
args: deploy --dir=cast/dist --prod
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_CAST_SITE_ID }}
+26 -25
View File
@@ -13,84 +13,85 @@ on:
env:
NODE_VERSION: 16
NODE_OPTIONS: --max_old_space_size=6144
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
lint:
name: Lint and check format
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
uses: actions/setup-node@v3.6.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install
env:
CI: true
run: yarn install --immutable
- name: Check for duplicate dependencies
run: yarn dedupe --check
- name: Build resources
run: ./node_modules/.bin/gulp gen-icons-json build-translations build-locale-data gather-gallery-pages
- name: Run eslint
run: yarn run lint:eslint
run: yarn run lint:eslint --quiet
- name: Run tsc
run: yarn run lint:types
- name: Run prettier
run: yarn run lint:prettier
- name: Check for duplicate dependencies
run: yarn dedupe --check
test:
name: Run tests
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
uses: actions/setup-node@v3.6.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install
env:
CI: true
run: yarn install --immutable
- name: Build resources
run: ./node_modules/.bin/gulp build-translations build-locale-data
- name: Run Tests
run: yarn run test
build:
runs-on: ubuntu-latest
name: Build frontend
needs: [lint, test]
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
uses: actions/setup-node@v3.6.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install
env:
CI: true
run: yarn install --immutable
- name: Build Application
run: ./node_modules/.bin/gulp build-app
env:
IS_TEST: "true"
supervisor:
runs-on: ubuntu-latest
name: Build supervisor
needs: [lint, test]
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
uses: actions/setup-node@v3.6.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install
env:
CI: true
run: yarn install --immutable
- name: Build Application
run: ./node_modules/.bin/gulp build-hassio
env:
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.
+54
View File
@@ -0,0 +1,54 @@
name: Deduplicate Dependabot
on:
push:
branches:
- dependabot/npm_and_yarn/*
env:
NODE_VERSION: 16
NODE_OPTIONS: --max_old_space_size=6144
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
dedupe:
name: Deduplicate dependencies
# Only trigger on initial commit from dependabot
if: github.actor == 'dependabot[bot]'
runs-on: ubuntu-latest
steps:
- name: Generate app token
# Use a GitHub app to checkout and commit in order to re-trigger the CI workflow
# (because actions with GITHUB_TOKEN do not trigger new events)
id: generate_token
uses: tibdex/[email protected]
with:
app_id: ${{ secrets.HA_COMMITTER_APP_ID }}
private_key: ${{ secrets.HA_COMMITTER_PRIVATE_KEY }}
- name: Check out files from GitHub
uses: actions/[email protected]
with:
token: ${{ steps.generate_token.outputs.token }}
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/[email protected]
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
# Do not run build scripts as a security measure since job has write permissions
run: yarn install --immutable --mode=skip-build
- name: Deduplicate dependencies
run: yarn dedupe --mode=skip-build
- name: Commit changes
run: |
git config user.name "Home Assistant Committer"
git config user.email "[email protected]"
git add yarn.lock
git commit -m "Deduplicate dependencies [dependabot skip]" || exit 0
git push origin "HEAD:${GITHUB_HEAD_REF}"
-35
View File
@@ -1,35 +0,0 @@
name: Demo
on:
push:
branches:
- dev
env:
NODE_VERSION: 16
NODE_OPTIONS: --max_old_space_size=6144
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v3
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install
env:
CI: true
- name: Build Demo
run: ./node_modules/.bin/gulp build-demo
- name: Deploy to Netlify
uses: netlify/actions/cli@master
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_DEMO_DEV_SITE_ID }}
with:
args: deploy --dir=demo/dist --prod
+87
View File
@@ -0,0 +1,87 @@
name: Demo deployment
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
push:
branches:
- dev
- master
env:
NODE_VERSION: 16
NODE_OPTIONS: --max_old_space_size=6144
jobs:
deploy_dev:
runs-on: ubuntu-latest
name: Demo Development
if: github.event_name != 'push' || github.ref != 'master'
environment:
name: Demo Development
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/[email protected]
with:
ref: dev
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/[email protected]
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Build Demo
run: ./node_modules/.bin/gulp build-demo
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy to Netlify
id: deploy
uses: netlify/actions/cli@master
with:
args: deploy --dir=demo/dist --prod
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_DEMO_DEV_SITE_ID }}
deploy_master:
runs-on: ubuntu-latest
name: Demo Production
if: github.event_name == 'push' && github.ref == 'master'
environment:
name: Demo Production
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/[email protected]
with:
ref: master
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/[email protected]
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Build Demo
run: ./node_modules/.bin/gulp build-demo
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy to Netlify
id: deploy
uses: netlify/actions/cli@master
with:
args: deploy --dir=demo/dist --prod
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_DEMO_SITE_ID }}
+43
View File
@@ -0,0 +1,43 @@
name: Design deployment
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
env:
NODE_VERSION: 16
NODE_OPTIONS: --max_old_space_size=6144
jobs:
deploy:
runs-on: ubuntu-latest
environment:
name: Design
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/[email protected]
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/[email protected]
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Build Gallery
run: ./node_modules/.bin/gulp build-gallery
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy to Netlify
id: deploy
uses: netlify/actions/cli@master
with:
args: deploy --dir=gallery/dist --prod
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_GALLERY_SITE_ID }}
+52
View File
@@ -0,0 +1,52 @@
name: Design preview
on:
pull_request:
types:
- opened
- synchronize
- reopened
- labeled
branches:
- dev
env:
NODE_VERSION: 16
NODE_OPTIONS: --max_old_space_size=6144
jobs:
preview:
runs-on: ubuntu-latest
# Skip running on forks since it won't have access to secrets
# Skip running PRs without 'needs design preview' label
if: github.repository == 'home-assistant/frontend' && contains(github.event.pull_request.labels.*.name, 'needs design preview')
steps:
- name: Check out files from GitHub
uses: actions/[email protected]
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/[email protected]
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Build Gallery
run: ./node_modules/.bin/gulp build-gallery
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy preview to Netlify
id: deploy
uses: netlify/actions/cli@master
with:
args: deploy --dir=gallery/dist --alias "deploy-preview-${{ github.event.number }}"
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_GALLERY_SITE_ID }}
- name: Generate summary
run: |
echo "${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}" >> "$GITHUB_STEP_SUMMARY"
+1 -1
View File
@@ -9,7 +9,7 @@ jobs:
lock:
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v3.0.0
- uses: dessant/lock-threads@v4.0.0
with:
github-token: ${{ github.token }}
issue-lock-inactive-days: "30"
-19
View File
@@ -1,19 +0,0 @@
name: Netlify
on:
schedule:
- cron: "0 0 * * *"
jobs:
trigger_builds:
name: Trigger netlify build preview
runs-on: "ubuntu-latest"
steps:
- name: Trigger Cast build
run: curl -X POST -d {} https://api.netlify.com/build_hooks/${{ secrets.NETLIFY_CAST_DEV_BUILD_HOOK }}
- name: Trigger Demo build
run: curl -X POST -d {} https://api.netlify.com/build_hooks/${{ secrets.NETLIFY_DEMO_DEV_BUILD_HOOK }}
- name: Trigger Design build
run: curl -X POST -d "NIGHTLY" https://api.netlify.com/build_hooks/${{ secrets.NETLIFY_GALLERY_DEV_BUILD_HOOK }}
+3 -4
View File
@@ -21,7 +21,7 @@ jobs:
contents: write
steps:
- name: Checkout the repository
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.PYTHON_VERSION }}
uses: actions/setup-python@v4
@@ -29,7 +29,7 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
uses: actions/setup-node@v3.6.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
@@ -49,9 +49,8 @@ jobs:
run: |
pip install build
yarn install
export SKIP_FETCH_NIGHTLY_TRANSLATIONS=1
script/build_frontend
rm -rf dist home_assistant_frontend.egg-info
python3 -m build
+5 -5
View File
@@ -24,7 +24,7 @@ jobs:
contents: write # Required to upload release assets
steps:
- name: Checkout the repository
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
- name: Verify version
uses: home-assistant/actions/helpers/verify-version@master
@@ -35,7 +35,7 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
- name: Set up Node ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
uses: actions/setup-node@v3.6.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: yarn
@@ -52,11 +52,11 @@ jobs:
python3 -m pip install twine build
export TWINE_USERNAME="__token__"
export TWINE_PASSWORD="${{ secrets.TWINE_TOKEN }}"
export SKIP_FETCH_NIGHTLY_TRANSLATIONS=1
script/release
- name: Upload release assets
uses: softprops/[email protected]4
uses: softprops/[email protected]5
with:
files: |
dist/*.whl
@@ -75,7 +75,7 @@ jobs:
echo "home-assistant-frontend==$version" > ./requirements.txt
- name: Build wheels
uses: home-assistant/wheels@2022.06.7
uses: home-assistant/wheels@2022.10.1
with:
abi: cp310
tag: musllinux_1_2
+1 -1
View File
@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 90 days stale policy
uses: actions/stale@v5.1.1
uses: actions/stale@v7.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 90
+1 -1
View File
@@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3
uses: actions/checkout@v3.3.0
- name: Upload Translations
run: |
+7 -6
View File
@@ -2,9 +2,10 @@
.reify-cache
# build
build
hass_frontend/*
dist
build/
dist/
/hass_frontend/
/translations/
# yarn
.yarn/*
@@ -14,7 +15,7 @@ dist
!.yarn/sdks
!.yarn/versions
.pnp.*
node_modules/*
/node_modules/
yarn-error.log
npm-debug.log
@@ -26,7 +27,7 @@ npm-debug.log
# venv stuff
pyvenv.cfg
pip-selfcheck.json
venv/*
/venv/
.venv
# vscode
@@ -45,4 +46,4 @@ src/cast/dev_const.ts
.tool-versions
# Home Assistant config
/config
/config/
+3 -2
View File
@@ -2,7 +2,8 @@
"recommendations": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"bierner.lit-html",
"runem.lit-plugin"
"runem.lit-plugin",
"github.vscode-pull-request-github",
"eamodio.gitlens"
]
}
+7 -1
View File
@@ -191,7 +191,13 @@
"runOptions": {
"instanceLimit": 1
}
}
},
{
"label": "Setup and fetch nightly translations",
"type": "gulp",
"task": "setup-and-fetch-nightly-translations",
"problemMatcher": []
}
],
"inputs": [
{
@@ -1,29 +0,0 @@
diff --git a/polyfillLoaders/EventTarget.js b/polyfillLoaders/EventTarget.js
index 4e18ade7ba485849f17f28c94c42f0e0e01ac387..8f34f4f646c7f7becc208fb5a546c96034fc74dc 100644
--- a/polyfillLoaders/EventTarget.js
+++ b/polyfillLoaders/EventTarget.js
@@ -6,16 +6,15 @@
let _ET;
let ET;
export default async function EventTarget() {
- return ET || init();
+ return ET || init();
}
async function init() {
- _ET = window.EventTarget;
- try {
- new _ET();
- }
- catch (_a) {
- _ET = (await import('event-target-shim')).EventTarget;
- }
- return (ET = _ET);
+ _ET = window.EventTarget;
+ try {
+ new _ET();
+ } catch (_a) {
+ _ET = (await import("event-target-shim")).default.EventTarget;
+ }
+ return (ET = _ET);
}
//# sourceMappingURL=EventTarget.js.map
@@ -1,12 +0,0 @@
diff --git a/mwc-icon-button-base.js b/mwc-icon-button-base.js
index 45cdaab93ccc0a6daaaaabc01266dcdc32e46bfd..b3ea5b541597308d85f86ce6c23fd00785fda835 100644
--- a/mwc-icon-button-base.js
+++ b/mwc-icon-button-base.js
@@ -63,7 +63,6 @@ export class IconButtonBase extends LitElement {
@touchend="${this.handleRippleDeactivate}"
@touchcancel="${this.handleRippleDeactivate}"
>${this.renderRipple()}
- <i class="material-icons">${this.icon}</i>
<span
><slot></slot
></span>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
-785
View File
File diff suppressed because one or more lines are too long
+823
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -6,4 +6,4 @@ plugins:
- path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
spec: "@yarnpkg/plugin-interactive-tools"
yarnPath: .yarn/releases/yarn-3.2.0.cjs
yarnPath: .yarn/releases/yarn-3.3.1.cjs
-7
View File
@@ -1,7 +0,0 @@
{
"rules": {
"import/no-extraneous-dependencies": 0,
"no-restricted-syntax": 0,
"no-console": 0
}
}
+7 -2
View File
@@ -1,7 +1,12 @@
{
"extends": "../.eslintrc.json",
"rules": {
"import/no-extraneous-dependencies": 0,
"global-require": 0
"no-console": "off",
"import/no-extraneous-dependencies": "off",
"import/extensions": "off",
"import/no-dynamic-require": "off",
"global-require": "off",
"@typescript-eslint/no-var-requires": "off",
"prefer-arrow-callback": "off"
}
}
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const path = require("path");
// Currently only supports CommonJS modules, as require is synchronous. `import` would need babel running asynchronous.
@@ -29,7 +28,6 @@ module.exports = function inlineConstants(babel, options, cwd) {
const absolute = module.startsWith(".")
? require.resolve(module, { paths: [cwd] })
: module;
// eslint-disable-next-line import/no-dynamic-require
return [absolute, require(absolute)];
})
);
+2 -2
View File
@@ -1,9 +1,9 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const path = require("path");
const env = require("./env.js");
const paths = require("./paths.js");
// Files from NPM Packages that should not be imported
// eslint-disable-next-line unused-imports/no-unused-vars
module.exports.ignorePackages = ({ latestBuild }) => [
// Part of yaml.js and only used for !!js functions that we don't use
require.resolve("esprima"),
@@ -67,7 +67,7 @@ module.exports.babelOptions = ({ latestBuild }) => ({
"@babel/preset-env",
{
useBuiltIns: "entry",
corejs: "3.15",
corejs: { version: "3.27", proposals: true },
bugfixes: true,
},
],
-1
View File
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const fs = require("fs");
const path = require("path");
const paths = require("./paths.js");
+15 -11
View File
@@ -1,36 +1,40 @@
const del = require("del");
const del = import("del");
const gulp = require("gulp");
const paths = require("../paths");
require("./translations");
gulp.task(
"clean",
gulp.parallel("clean-translations", () =>
del([paths.app_output_root, paths.build_dir])
gulp.parallel("clean-translations", async () =>
(await del).deleteSync([paths.app_output_root, paths.build_dir])
)
);
gulp.task(
"clean-demo",
gulp.parallel("clean-translations", () =>
del([paths.demo_output_root, paths.build_dir])
gulp.parallel("clean-translations", async () =>
(await del).deleteSync([paths.demo_output_root, paths.build_dir])
)
);
gulp.task(
"clean-cast",
gulp.parallel("clean-translations", () =>
del([paths.cast_output_root, paths.build_dir])
gulp.parallel("clean-translations", async () =>
(await del).deleteSync([paths.cast_output_root, paths.build_dir])
)
);
gulp.task("clean-hassio", () =>
del([paths.hassio_output_root, paths.build_dir])
gulp.task("clean-hassio", async () =>
(await del).deleteSync([paths.hassio_output_root, paths.build_dir])
);
gulp.task(
"clean-gallery",
gulp.parallel("clean-translations", () =>
del([paths.gallery_output_root, paths.gallery_build, paths.build_dir])
gulp.parallel("clean-translations", async () =>
(await del).deleteSync([
paths.gallery_output_root,
paths.gallery_build,
paths.build_dir,
])
)
);
+18 -44
View File
@@ -1,17 +1,12 @@
const del = require("del");
const gulp = require("gulp");
const fs = require("fs");
const fs = require("fs/promises");
const mapStream = require("map-stream");
const inDirFrontend = "translations/frontend";
const inDirBackend = "translations/backend";
const downloadDir = "translations/downloads";
const srcMeta = "src/translations/translationMetadata.json";
const encoding = "utf8";
const tasks = [];
function hasHtml(data) {
return /<[a-z][\s\S]*>/i.test(data);
}
@@ -46,50 +41,29 @@ function checkHtml() {
});
}
let taskName = "clean-downloaded-translations";
gulp.task(taskName, function () {
return del([`${downloadDir}/**`]);
// Backend translations do not currently pass HTML check so are excluded here for now
gulp.task("check-translations-html", function () {
return gulp.src([`${inDirFrontend}/*.json`]).pipe(checkHtml());
});
tasks.push(taskName);
taskName = "check-translations-html";
gulp.task(taskName, function () {
return gulp.src(`${downloadDir}/*.json`).pipe(checkHtml());
});
tasks.push(taskName);
taskName = "check-all-files-exist";
gulp.task(taskName, function () {
const file = fs.readFileSync(srcMeta, { encoding });
gulp.task("check-all-files-exist", async function () {
const file = await fs.readFile(srcMeta, { encoding });
const meta = JSON.parse(file);
const writings = [];
Object.keys(meta).forEach((lang) => {
if (!fs.existsSync(`${inDirFrontend}/${lang}.json`)) {
fs.writeFileSync(`${inDirFrontend}/${lang}.json`, JSON.stringify({}));
}
if (!fs.existsSync(`${inDirBackend}/${lang}.json`)) {
fs.writeFileSync(`${inDirBackend}/${lang}.json`, JSON.stringify({}));
}
writings.push(
fs.writeFile(`${inDirFrontend}/${lang}.json`, JSON.stringify({}), {
flag: "wx",
}),
fs.writeFile(`${inDirBackend}/${lang}.json`, JSON.stringify({}), {
flag: "wx",
})
);
});
return Promise.resolve();
await Promise.allSettled(writings);
});
tasks.push(taskName);
taskName = "move-downloaded-translations";
gulp.task(taskName, function () {
return gulp.src(`${downloadDir}/*.json`).pipe(gulp.dest(inDirFrontend));
});
tasks.push(taskName);
taskName = "check-downloaded-translations";
gulp.task(
taskName,
gulp.series(
"check-translations-html",
"move-downloaded-translations",
"check-all-files-exist",
"clean-downloaded-translations"
)
"check-downloaded-translations",
gulp.series("check-translations-html", "check-all-files-exist")
);
tasks.push(taskName);
module.exports = tasks;
+3 -3
View File
@@ -1,6 +1,4 @@
// Tasks to generate entry HTML
/* eslint-disable import/no-dynamic-require */
/* eslint-disable global-require */
const gulp = require("gulp");
const fs = require("fs-extra");
const path = require("path");
@@ -91,7 +89,9 @@ gulp.task("gen-pages-prod", (done) => {
});
gulp.task("gen-index-app-dev", (done) => {
let latestAppJS, latestCoreJS, latestCustomPanelJS;
let latestAppJS;
let latestCoreJS;
let latestCustomPanelJS;
if (env.useWDS()) {
latestAppJS = "http://localhost:8000/src/entrypoints/app.ts";
@@ -0,0 +1,174 @@
// Task to download the latest Lokalise translations from the nightly workflow artifacts
const del = import("del");
const fs = require("fs/promises");
const path = require("path");
const process = require("process");
const gulp = require("gulp");
const jszip = require("jszip");
const tar = require("tar");
const { Octokit } = require("@octokit/rest");
const { createOAuthDeviceAuth } = require("@octokit/auth-oauth-device");
const MAX_AGE = 24; // hours
const OWNER = "home-assistant";
const REPO = "frontend";
const WORKFLOW_NAME = "nightly.yaml";
const ARTIFACT_NAME = "translations";
const CLIENT_ID = "Iv1.3914e28cb27834d1";
const EXTRACT_DIR = "translations";
const TOKEN_FILE = path.posix.join(EXTRACT_DIR, "token.json");
const ARTIFACT_FILE = path.posix.join(EXTRACT_DIR, "artifact.json");
let allowTokenSetup = false;
gulp.task("allow-setup-fetch-nightly-translations", (done) => {
allowTokenSetup = true;
done();
});
gulp.task("fetch-nightly-translations", async function () {
// Skip all when environment flag is set (assumes translations are already in place)
if (process.env?.SKIP_FETCH_NIGHTLY_TRANSLATIONS) {
console.log("Skipping fetch due to environment signal");
return;
}
// Read current translations artifact info if it exists,
// and stop if they are not old enough
let currentArtifact;
try {
currentArtifact = JSON.parse(await fs.readFile(ARTIFACT_FILE, "utf-8"));
const currentAge =
(Date.now() - Date.parse(currentArtifact.created_at)) / 3600000;
if (currentAge < MAX_AGE) {
console.log(
"Keeping current translations (only %s hours old)",
currentAge.toFixed(1)
);
return;
}
} catch {
currentArtifact = null;
}
// To store file writing promises
const createExtractDir = fs.mkdir(EXTRACT_DIR, { recursive: true });
const writings = [];
// Authenticate to GitHub using GitHub action token if it exists,
// otherwise look for a saved user token or generate a new one if none
let tokenAuth;
if (process.env.GITHUB_TOKEN) {
tokenAuth = { token: process.env.GITHUB_TOKEN };
} else {
try {
tokenAuth = JSON.parse(await fs.readFile(TOKEN_FILE, "utf-8"));
} catch {
if (!allowTokenSetup) {
console.log("No token found so build wil continue with English only");
return;
}
const auth = createOAuthDeviceAuth({
clientType: "github-app",
clientId: CLIENT_ID,
onVerification: (verification) => {
console.log(
"Task needs to authenticate to GitHub to fetch the translations from nightly workflow\n" +
"Please go to %s to authorize this task\n" +
"\nEnter user code: %s\n\n" +
"This code will expire in %s minutes\n" +
"Task will automatically continue after authorization and token will be saved for future use",
verification.verification_uri,
verification.user_code,
(verification.expires_in / 60).toFixed(0)
);
},
});
tokenAuth = await auth({ type: "oauth" });
writings.push(
createExtractDir.then(
fs.writeFile(TOKEN_FILE, JSON.stringify(tokenAuth, null, 2))
)
);
}
}
// Authenticate with token and request workflow runs from GitHub
console.log("Fetching new translations...");
const octokit = new Octokit({
userAgent: "Fetch Nightly Translations",
auth: tokenAuth.token,
});
const workflowRunsResponse = await octokit.rest.actions.listWorkflowRuns({
owner: OWNER,
repo: REPO,
workflow_id: WORKFLOW_NAME,
status: "success",
event: "schedule",
per_page: 1,
exclude_pull_requests: true,
});
if (workflowRunsResponse.data.total_count === 0) {
throw Error("No successful nightly workflow runs found");
}
const latestNightlyRun = workflowRunsResponse.data.workflow_runs[0];
// Stop if current is already the latest, otherwise Find the translations artifact
if (currentArtifact?.workflow_run.id === latestNightlyRun.id) {
console.log("Stopping because current translations are still the latest");
return;
}
const latestArtifact = (
await octokit.actions.listWorkflowRunArtifacts({
owner: OWNER,
repo: REPO,
run_id: latestNightlyRun.id,
})
).data.artifacts.find((artifact) => artifact.name === ARTIFACT_NAME);
if (!latestArtifact) {
throw Error("Latest nightly workflow run has no translations artifact");
}
writings.push(
createExtractDir.then(
fs.writeFile(ARTIFACT_FILE, JSON.stringify(latestArtifact, null, 2))
)
);
// Remove the current translations
const deleteCurrent = Promise.all(writings).then(
(await del).deleteAsync([
`${EXTRACT_DIR}/*`,
`!${ARTIFACT_FILE}`,
`!${TOKEN_FILE}`,
])
);
// Get the download URL and follow the redirect to download (stored as ArrayBuffer)
const downloadResponse = await octokit.actions.downloadArtifact({
owner: OWNER,
repo: REPO,
artifact_id: latestArtifact.id,
archive_format: "zip",
});
if (downloadResponse.status !== 200) {
throw Error("Failure downloading translations artifact");
}
// Artifact is a tarball, but GitHub adds it to a zip file
console.log("Unpacking downloaded translations...");
const zip = await jszip.loadAsync(downloadResponse.data);
await deleteCurrent;
const extractStream = zip.file(/.*/)[0].nodeStream().pipe(tar.extract());
await new Promise((resolve, reject) => {
extractStream.on("close", resolve).on("error", reject);
});
});
gulp.task(
"setup-and-fetch-nightly-translations",
gulp.series(
"allow-setup-fetch-nightly-translations",
"fetch-nightly-translations"
)
);
+1 -2
View File
@@ -1,4 +1,3 @@
/* eslint-disable */
// Run demo develop mode
const gulp = require("gulp");
const fs = require("fs");
@@ -41,7 +40,7 @@ gulp.task("gather-gallery-pages", async function gatherPages() {
}
processed.add(pageId);
const [category, name] = pageId.split("/", 2);
const [category] = pageId.split("/", 2);
const demoFile = path.resolve(pageDir, `${pageId}.ts`);
const descriptionFile = path.resolve(pageDir, `${pageId}.markdown`);
+2 -4
View File
@@ -1,6 +1,4 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const del = require("del");
const del = import("del");
const path = require("path");
const gulp = require("gulp");
const fs = require("fs");
@@ -8,7 +6,7 @@ const paths = require("../paths");
const outDir = "build/locale-data";
gulp.task("clean-locale-data", () => del([outDir]));
gulp.task("clean-locale-data", async () => (await del).deleteSync([outDir]));
gulp.task("ensure-locale-data-build-dir", (done) => {
if (!fs.existsSync(outDir)) {
+5 -5
View File
@@ -5,9 +5,9 @@ const rollup = require("rollup");
const handler = require("serve-handler");
const http = require("http");
const log = require("fancy-log");
const open = require("open");
const rollupConfig = require("../rollup");
const paths = require("../paths");
const open = require("open");
const bothBuilds = (createConfigFunc, params) =>
gulp.series(
@@ -30,11 +30,11 @@ const bothBuilds = (createConfigFunc, params) =>
);
function createServer(serveOptions) {
const server = http.createServer((request, response) => {
return handler(request, response, {
const server = http.createServer((request, response) =>
handler(request, response, {
public: serveOptions.root,
});
});
})
);
server.listen(
serveOptions.port,
-2
View File
@@ -1,7 +1,5 @@
// Generate service worker.
// Based on manifest, create a file with the content as service_worker.js
/* eslint-disable import/no-dynamic-require */
/* eslint-disable global-require */
const gulp = require("gulp");
const path = require("path");
const fs = require("fs-extra");
+32 -19
View File
@@ -1,7 +1,5 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const del = import("del");
const crypto = require("crypto");
const del = require("del");
const path = require("path");
const source = require("vinyl-source-stream");
const vinylBuffer = require("vinyl-buffer");
@@ -15,6 +13,8 @@ const { mapFiles } = require("../util");
const env = require("../env");
const paths = require("../paths");
require("./fetch-nightly-translations");
const inFrontendDir = "translations/frontend";
const inBackendDir = "translations/backend";
const workDir = "build/translations";
@@ -23,10 +23,13 @@ const coreDir = workDir + "/core";
const outDir = workDir + "/output";
let mergeBackend = false;
gulp.task("translations-enable-merge-backend", (done) => {
mergeBackend = true;
done();
});
gulp.task(
"translations-enable-merge-backend",
gulp.parallel((done) => {
mergeBackend = true;
done();
}, "allow-setup-fetch-nightly-translations")
);
// Panel translations which should be split from the core translations.
const TRANSLATION_FRAGMENTS = Object.keys(
@@ -117,7 +120,7 @@ function lokaliseTransform(data, original, file) {
return output;
}
gulp.task("clean-translations", () => del([workDir]));
gulp.task("clean-translations", async () => (await del).deleteSync([workDir]));
gulp.task("ensure-translations-build-dir", (done) => {
if (!fs.existsSync(workDir)) {
@@ -170,17 +173,24 @@ gulp.task("build-master-translation", () => {
.pipe(transform((data, file) => lokaliseTransform(data, data, file)))
.pipe(
merge({
fileName: "translationMaster.json",
fileName: "en.json",
})
)
.pipe(gulp.dest(workDir));
.pipe(gulp.dest(fullDir));
});
gulp.task("build-merged-translations", () =>
gulp
.src([inFrontendDir + "/*.json", workDir + "/test.json"], {
allowEmpty: true,
})
.src(
[
inFrontendDir + "/*.json",
"!" + inFrontendDir + "/en.json",
workDir + "/test.json",
],
{
allowEmpty: true,
}
)
.pipe(transform((data, file) => lokaliseTransform(data, data, file)))
.pipe(
flatmap((stream, file) => {
@@ -193,7 +203,7 @@ gulp.task("build-merged-translations", () =>
// than a base translation + region.
const tr = path.basename(file.history[0], ".json");
const subtags = tr.split("-");
const src = [workDir + "/translationMaster.json"];
const src = [fullDir + "/en.json"];
for (let i = 1; i <= subtags.length; i++) {
const lang = subtags.slice(0, i).join("-");
if (lang === "test") {
@@ -378,7 +388,6 @@ gulp.task("build-translation-write-metadata", () =>
if (value.nativeName) {
newData[key] = value;
} else {
// eslint-disable-next-line no-console
console.warn(
`Skipping language ${key}. Native name was not translated.`
);
@@ -411,8 +420,10 @@ gulp.task(
gulp.task(
"build-translations",
gulp.series(
"clean-translations",
"ensure-translations-build-dir",
gulp.parallel(
"fetch-nightly-translations",
gulp.series("clean-translations", "ensure-translations-build-dir")
),
"create-translations",
"build-translation-fingerprints",
"build-translation-write-metadata"
@@ -422,8 +433,10 @@ gulp.task(
gulp.task(
"build-supervisor-translations",
gulp.series(
"clean-translations",
"ensure-translations-build-dir",
gulp.parallel(
"fetch-nightly-translations",
gulp.series("clean-translations", "ensure-translations-build-dir")
),
"build-master-translation",
"build-merged-translations",
"build-translation-fragment-supervisor",
-2
View File
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-var-requires */
// Tasks to run webpack.
const fs = require("fs");
const gulp = require("gulp");
@@ -69,7 +68,6 @@ const doneHandler = (done) => (err, stats) => {
}
if (stats.hasErrors() || stats.hasWarnings()) {
// eslint-disable-next-line no-console
console.log(stats.toString("minimal"));
}
-1
View File
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const path = require("path");
module.exports = {
@@ -81,13 +81,13 @@ module.exports = function (opts = {}) {
opts.workerRegexp.flags
);
if (!workerRegexp.test(code)) {
return;
return undefined;
}
const ms = new MagicString(code);
// Reset the regexp
workerRegexp.lastIndex = 0;
while (true) {
for (;;) {
const match = workerRegexp.exec(code);
if (!match) {
break;
@@ -98,6 +98,7 @@ module.exports = function (opts = {}) {
// Parse the optional options object
if (match[3] && match[3].length > 0) {
// FIXME: ooooof!
// eslint-disable-next-line @typescript-eslint/no-implied-eval
optionsObject = new Function(`return ${match[3].slice(1)};`)();
}
delete optionsObject.type;
@@ -110,12 +111,14 @@ module.exports = function (opts = {}) {
}
// Find worker file and store it as a chunk with ID prefixed for our loader
// eslint-disable-next-line no-await-in-loop
const resolvedWorkerFile = (await this.resolve(workerFile, id)).id;
let chunkRefId;
if (resolvedWorkerFile in refIds) {
chunkRefId = refIds[resolvedWorkerFile];
} else {
this.addWatchFile(resolvedWorkerFile);
// eslint-disable-next-line no-await-in-loop
const source = await getBundledWorker(
resolvedWorkerFile,
rollupOptions
-1
View File
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const path = require("path");
const commonjs = require("@rollup/plugin-commonjs");
-1
View File
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const path = require("path");
const fs = require("fs");
-2
View File
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const webpack = require("webpack");
const path = require("path");
const TerserPlugin = require("terser-webpack-plugin");
@@ -103,7 +102,6 @@ const createWebpackConfig = ({
? path.resolve(context, resource)
: require.resolve(resource);
} catch (err) {
// eslint-disable-next-line no-console
console.error(
"Error in Home Assistant ignore plugin",
resource,
+1 -1
View File
@@ -213,7 +213,7 @@
</p>
<ul>
<li>Google Chrome (all platforms except iOS)</li>
<li>Microsoft Edge (all platforms)</li>
<li>Microsoft Edge (all platforms except iOS)</li>
</ul>
</div>
+2 -2
View File
@@ -88,7 +88,7 @@ class HcCast extends LitElement {
>
${(this.lovelaceConfig
? this.lovelaceConfig.views
: [generateDefaultViewConfig([], [], [], {}, () => "")]
: [generateDefaultViewConfig({}, {}, {}, {}, () => "")]
).map(
(view, idx) => html`
<paper-icon-item
@@ -181,7 +181,7 @@ class HcCast extends LitElement {
private async _handlePickView(ev: Event) {
const path = (ev.currentTarget as any).getAttribute("data-path");
await ensureConnectedCastSession(this.castManager!, this.auth!);
castSendShowLovelaceView(this.castManager, path);
castSendShowLovelaceView(this.castManager, path, this.auth.data.hassUrl);
}
private async _handleLogout() {
+6 -2
View File
@@ -22,7 +22,11 @@ class HcLayout extends LitElement {
return html`
<ha-card>
<div class="layout">
<img class="hero" src="/images/google-nest-hub.png" />
<img
class="hero"
alt="A Google Nest Hub with a Home Assistant dashboard on its screen"
src="/images/google-nest-hub.png"
/>
<h1 class="card-header">
Home Assistant Cast${this.subtitle ? ` ${this.subtitle}` : ""}
${this.auth
@@ -44,7 +48,7 @@ class HcLayout extends LitElement {
<div class="footer">
<a href="./faq.html">Frequently Asked Questions</a> Found a bug?
<a
href="https://github.com/home-assistant/home-assistant-polymer/issues"
href="https://github.com/home-assistant/frontend/issues"
target="_blank"
>Let us know!</a
>
@@ -12,6 +12,7 @@ class HcLaunchScreen extends LitElement {
return html`
<div class="container">
<img
alt="Home Assistant logo on left, Nabu Casa logo on right, and red heart in center"
src="https://www.home-assistant.io/images/blog/2018-09-thinking-big/social.png"
/>
<div class="status">
+37 -2
View File
@@ -33,7 +33,6 @@ import { castContext } from "../cast_context";
import "./hc-launch-screen";
let resourcesLoaded = false;
@customElement("hc-main")
export class HcMain extends HassElement {
@state() private _showDemo = false;
@@ -46,6 +45,8 @@ export class HcMain extends HassElement {
@state() private _urlPath?: string | null;
private _hassUUID?: string;
private _unsubLovelace?: UnsubscribeFunc;
public processIncomingMessage(msg: HassMessage) {
@@ -125,6 +126,7 @@ export class HcMain extends HassElement {
if (this.hass) {
status.hassUrl = this.hass.auth.data.hassUrl;
status.hassUUID = this._hassUUID;
status.lovelacePath = this._lovelacePath;
status.urlPath = this._urlPath;
}
@@ -163,6 +165,18 @@ export class HcMain extends HassElement {
};
private async _handleGetStatusMessage(msg: GetStatusMessage) {
if (
(this.hass && msg.hassUUID && msg.hassUUID !== this._hassUUID) ||
(this.hass && msg.hassUrl && msg.hassUrl !== this.hass.auth.data.hassUrl)
) {
this._error = "Not connected to the same Home Assistant instance.";
this._sendError(
ReceiverErrorCode.WRONG_INSTANCE,
this._error,
msg.senderId!
);
}
this._sendStatus(msg.senderId!);
}
@@ -179,6 +193,7 @@ export class HcMain extends HassElement {
expires_in: 0,
}),
});
this._hassUUID = msg.hassUUID;
} catch (err: any) {
const errorMessage = this._getErrorMessage(err);
this._error = errorMessage;
@@ -209,9 +224,29 @@ export class HcMain extends HassElement {
if (!this.hass) {
this._sendStatus(msg.senderId!);
this._error = "Cannot show Lovelace because we're not connected.";
this._sendError(ReceiverErrorCode.NOT_CONNECTED, this._error);
this._sendError(
ReceiverErrorCode.NOT_CONNECTED,
this._error,
msg.senderId!
);
return;
}
if (
(msg.hassUUID && msg.hassUUID !== this._hassUUID) ||
(msg.hassUrl && msg.hassUrl !== this.hass.auth.data.hassUrl)
) {
this._sendStatus(msg.senderId!);
this._error =
"Cannot show Lovelace because we're not connected to the same Home Assistant instance.";
this._sendError(
ReceiverErrorCode.WRONG_INSTANCE,
this._error,
msg.senderId!
);
return;
}
this._error = undefined;
if (msg.urlPath === "lovelace") {
msg.urlPath = null;
+2 -2
View File
@@ -508,7 +508,7 @@ export const demoEntitiesArsaboo: DemoConfig["entities"] = (localize) =>
origin_addresses: ["XYZ"],
status: "OK",
mode: "driving",
units: "imperial",
units: "us_customary",
duration_in_traffic: "41 mins",
duration: "44 mins",
distance: "34.3 mi",
@@ -527,7 +527,7 @@ export const demoEntitiesArsaboo: DemoConfig["entities"] = (localize) =>
origin_addresses: ["XYZ"],
status: "OK",
mode: "driving",
units: "imperial",
units: "us_customary",
duration_in_traffic: "37 mins",
duration: "37 mins",
distance: "30.2 mi",
+4 -4
View File
@@ -1196,7 +1196,7 @@ export const demoLovelaceJimpower: DemoConfig["lovelace"] = () => ({
left: "15%",
},
type: "state-icon",
entity: "binary_sensor.water_leak_sensor_158d0002338651",
entity: "binary_sensor.water_leak_sensor_158d00026e26dc",
},
{
prefix: "Kitchen: ",
@@ -1206,7 +1206,7 @@ export const demoLovelaceJimpower: DemoConfig["lovelace"] = () => ({
top: "89%",
left: "32%",
},
entity: "binary_sensor.water_leak_sensor_158d0002338651",
entity: "binary_sensor.water_leak_sensor_158d00026e26dc",
},
{
style: {
@@ -1215,7 +1215,7 @@ export const demoLovelaceJimpower: DemoConfig["lovelace"] = () => ({
left: "60%",
},
type: "state-icon",
entity: "binary_sensor.water_leak_sensor_158d00026e26dc",
entity: "binary_sensor.water_leak_sensor_158d0002338651",
},
{
prefix: "Bathroom: ",
@@ -1225,7 +1225,7 @@ export const demoLovelaceJimpower: DemoConfig["lovelace"] = () => ({
top: "89%",
left: "77%",
},
entity: "binary_sensor.water_leak_sensor_158d00026e26dc",
entity: "binary_sensor.water_leak_sensor_158d0002338651",
},
],
type: "picture-elements",
+1 -1
View File
@@ -138,7 +138,7 @@ if (!window.cardTools) {
return cardTools.createThing("row", config);
const domain = config.entity.split(".", 1)[0];
Object.assign(config, { type: DEFAULT_ROWS[domain] || "text" });
Object.assign(config, { type: DEFAULT_ROWS[domain] || "simple" });
return cardTools.createThing("entity-row", config);
};
+13 -1
View File
@@ -1,4 +1,5 @@
// Compat needs to be first import
import "../../src/resources/compatibility";
import { isNavigationClick } from "../../src/common/dom/is-navigation-click";
import { navigate } from "../../src/common/navigate";
import {
@@ -6,7 +7,6 @@ import {
provideHass,
} from "../../src/fake_data/provide_hass";
import { HomeAssistantAppEl } from "../../src/layouts/home-assistant";
import "../../src/resources/compatibility";
import { HomeAssistant } from "../../src/types";
import { selectedDemoConfig } from "./configs/demo-configs";
import { mockAuth } from "./stubs/auth";
@@ -20,6 +20,7 @@ import { mockHistory } from "./stubs/history";
import { mockLovelace } from "./stubs/lovelace";
import { mockMediaPlayer } from "./stubs/media_player";
import { mockPersistentNotification } from "./stubs/persistent_notification";
import { mockRecorder } from "./stubs/recorder";
import { mockShoppingList } from "./stubs/shopping_list";
import { mockSystemLog } from "./stubs/system_log";
import { mockTemplate } from "./stubs/template";
@@ -45,6 +46,7 @@ class HaDemo extends HomeAssistantAppEl {
mockAuth(hass);
mockTranslations(hass);
mockHistory(hass);
mockRecorder(hass);
mockShoppingList(hass);
mockSystemLog(hass);
mockTemplate(hass);
@@ -68,6 +70,8 @@ class HaDemo extends HomeAssistantAppEl {
hidden_by: null,
entity_category: null,
has_entity_name: false,
unique_id: "co2_intensity",
options: null,
},
{
config_entry_id: "co2signal",
@@ -82,6 +86,8 @@ class HaDemo extends HomeAssistantAppEl {
hidden_by: null,
entity_category: null,
has_entity_name: false,
unique_id: "grid_fossil_fuel_percentage",
options: null,
},
]);
@@ -118,3 +124,9 @@ class HaDemo extends HomeAssistantAppEl {
}
customElements.define("ha-demo", HaDemo);
declare global {
interface HTMLElementTagNameMap {
"ha-demo": HaDemo;
}
}
+94 -83
View File
@@ -1,90 +1,101 @@
import { format, startOfToday, startOfTomorrow } from "date-fns/esm";
import { EnergySolarForecasts } from "../../../src/data/energy";
import {
EnergyInfo,
EnergyPreferences,
EnergySolarForecasts,
FossilEnergyConsumption,
} from "../../../src/data/energy";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockEnergy = (hass: MockHomeAssistant) => {
hass.mockWS("energy/get_prefs", () => ({
energy_sources: [
{
type: "grid",
flow_from: [
{
stat_energy_from: "sensor.energy_consumption_tarif_1",
stat_cost: "sensor.energy_consumption_tarif_1_cost",
entity_energy_from: "sensor.energy_consumption_tarif_1",
entity_energy_price: null,
number_energy_price: null,
},
{
stat_energy_from: "sensor.energy_consumption_tarif_2",
stat_cost: "sensor.energy_consumption_tarif_2_cost",
entity_energy_from: "sensor.energy_consumption_tarif_2",
entity_energy_price: null,
number_energy_price: null,
},
],
flow_to: [
{
stat_energy_to: "sensor.energy_production_tarif_1",
stat_compensation: "sensor.energy_production_tarif_1_compensation",
entity_energy_to: "sensor.energy_production_tarif_1",
entity_energy_price: null,
number_energy_price: null,
},
{
stat_energy_to: "sensor.energy_production_tarif_2",
stat_compensation: "sensor.energy_production_tarif_2_compensation",
entity_energy_to: "sensor.energy_production_tarif_2",
entity_energy_price: null,
number_energy_price: null,
},
],
cost_adjustment_day: 0,
},
{
type: "solar",
stat_energy_from: "sensor.solar_production",
config_entry_solar_forecast: ["solar_forecast"],
},
/* {
type: "battery",
stat_energy_from: "sensor.battery_output",
stat_energy_to: "sensor.battery_input",
}, */
{
type: "gas",
stat_energy_from: "sensor.energy_gas",
stat_cost: "sensor.energy_gas_cost",
entity_energy_from: "sensor.energy_gas",
entity_energy_price: null,
number_energy_price: null,
},
],
device_consumption: [
{
stat_consumption: "sensor.energy_car",
},
{
stat_consumption: "sensor.energy_ac",
},
{
stat_consumption: "sensor.energy_washing_machine",
},
{
stat_consumption: "sensor.energy_dryer",
},
{
stat_consumption: "sensor.energy_heat_pump",
},
{
stat_consumption: "sensor.energy_boiler",
},
],
}));
hass.mockWS("energy/info", () => ({ cost_sensors: [] }));
hass.mockWS("energy/fossil_energy_consumption", ({ period }) => ({
start: period === "month" ? 250 : period === "day" ? 10 : 2,
}));
hass.mockWS(
"energy/get_prefs",
(): EnergyPreferences => ({
energy_sources: [
{
type: "grid",
flow_from: [
{
stat_energy_from: "sensor.energy_consumption_tarif_1",
stat_cost: "sensor.energy_consumption_tarif_1_cost",
entity_energy_price: null,
number_energy_price: null,
},
{
stat_energy_from: "sensor.energy_consumption_tarif_2",
stat_cost: "sensor.energy_consumption_tarif_2_cost",
entity_energy_price: null,
number_energy_price: null,
},
],
flow_to: [
{
stat_energy_to: "sensor.energy_production_tarif_1",
stat_compensation:
"sensor.energy_production_tarif_1_compensation",
entity_energy_price: null,
number_energy_price: null,
},
{
stat_energy_to: "sensor.energy_production_tarif_2",
stat_compensation:
"sensor.energy_production_tarif_2_compensation",
entity_energy_price: null,
number_energy_price: null,
},
],
cost_adjustment_day: 0,
},
{
type: "solar",
stat_energy_from: "sensor.solar_production",
config_entry_solar_forecast: ["solar_forecast"],
},
/* {
type: "battery",
stat_energy_from: "sensor.battery_output",
stat_energy_to: "sensor.battery_input",
}, */
{
type: "gas",
stat_energy_from: "sensor.energy_gas",
stat_cost: "sensor.energy_gas_cost",
entity_energy_price: null,
number_energy_price: null,
},
],
device_consumption: [
{
stat_consumption: "sensor.energy_car",
},
{
stat_consumption: "sensor.energy_ac",
},
{
stat_consumption: "sensor.energy_washing_machine",
},
{
stat_consumption: "sensor.energy_dryer",
},
{
stat_consumption: "sensor.energy_heat_pump",
},
{
stat_consumption: "sensor.energy_boiler",
},
],
})
);
hass.mockWS(
"energy/info",
(): EnergyInfo => ({ cost_sensors: {}, solar_forecast_domains: [] })
);
hass.mockWS(
"energy/fossil_energy_consumption",
({ period }): FossilEnergyConsumption => ({
start: period === "month" ? 250 : period === "day" ? 10 : 2,
})
);
const todayString = format(startOfToday(), "yyyy-MM-dd");
const tomorrowString = format(startOfTomorrow(), "yyyy-MM-dd");
hass.mockWS(
-372
View File
@@ -1,12 +1,4 @@
import {
addDays,
addHours,
addMonths,
differenceInHours,
endOfDay,
} from "date-fns/esm";
import { HassEntity } from "home-assistant-js-websocket";
import { StatisticValue } from "../../../src/data/history";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
interface HistoryQueryParams {
@@ -72,331 +64,6 @@ const generateHistory = (state, deltas) => {
const incrementalUnits = ["clients", "queries", "ads"];
const generateMeanStatistics = (
id: string,
start: Date,
end: Date,
period: "5minute" | "hour" | "day" | "month" = "hour",
initValue: number,
maxDiff: number
) => {
const statistics: StatisticValue[] = [];
let currentDate = new Date(start);
currentDate.setMinutes(0, 0, 0);
let lastVal = initValue;
const now = new Date();
while (end > currentDate && currentDate < now) {
const delta = Math.random() * maxDiff;
const mean = lastVal + delta;
statistics.push({
statistic_id: id,
start: currentDate.toISOString(),
end: currentDate.toISOString(),
mean,
min: mean - Math.random() * maxDiff,
max: mean + Math.random() * maxDiff,
last_reset: "1970-01-01T00:00:00+00:00",
state: mean,
sum: null,
});
lastVal = mean;
currentDate =
period === "day"
? addDays(currentDate, 1)
: period === "month"
? addMonths(currentDate, 1)
: addHours(currentDate, 1);
}
return statistics;
};
const generateSumStatistics = (
id: string,
start: Date,
end: Date,
period: "5minute" | "hour" | "day" | "month" = "hour",
initValue: number,
maxDiff: number
) => {
const statistics: StatisticValue[] = [];
let currentDate = new Date(start);
currentDate.setMinutes(0, 0, 0);
let sum = initValue;
const now = new Date();
while (end > currentDate && currentDate < now) {
const add = Math.random() * maxDiff;
sum += add;
statistics.push({
statistic_id: id,
start: currentDate.toISOString(),
end: currentDate.toISOString(),
mean: null,
min: null,
max: null,
last_reset: "1970-01-01T00:00:00+00:00",
state: initValue + sum,
sum,
});
currentDate =
period === "day"
? addDays(currentDate, 1)
: period === "month"
? addMonths(currentDate, 1)
: addHours(currentDate, 1);
}
return statistics;
};
const generateCurvedStatistics = (
id: string,
start: Date,
end: Date,
_period: "5minute" | "hour" | "day" | "month" = "hour",
initValue: number,
maxDiff: number,
metered: boolean
) => {
const statistics: StatisticValue[] = [];
let currentDate = new Date(start);
currentDate.setMinutes(0, 0, 0);
let sum = initValue;
const hours = differenceInHours(end, start) - 1;
let i = 0;
let half = false;
const now = new Date();
while (end > currentDate && currentDate < now) {
const add = Math.random() * maxDiff;
sum += i * add;
statistics.push({
statistic_id: id,
start: currentDate.toISOString(),
end: currentDate.toISOString(),
mean: null,
min: null,
max: null,
last_reset: "1970-01-01T00:00:00+00:00",
state: initValue + sum,
sum: metered ? sum : null,
});
currentDate = addHours(currentDate, 1);
if (!half && i > hours / 2) {
half = true;
}
i += half ? -1 : 1;
}
return statistics;
};
const statisticsFunctions: Record<
string,
(
id: string,
start: Date,
end: Date,
period: "5minute" | "hour" | "day" | "month"
) => StatisticValue[]
> = {
"sensor.energy_consumption_tarif_1": (
id: string,
start: Date,
end: Date,
period = "hour"
) => {
if (period !== "hour") {
return generateSumStatistics(
id,
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const morningEnd = new Date(start.getTime() + 10 * 60 * 60 * 1000);
const morningLow = generateSumStatistics(
id,
start,
morningEnd,
period,
0,
0.7
);
const eveningStart = new Date(start.getTime() + 20 * 60 * 60 * 1000);
const morningFinalVal = morningLow.length
? morningLow[morningLow.length - 1].sum!
: 0;
const empty = generateSumStatistics(
id,
morningEnd,
eveningStart,
period,
morningFinalVal,
0
);
const eveningLow = generateSumStatistics(
id,
eveningStart,
end,
period,
morningFinalVal,
0.7
);
return [...morningLow, ...empty, ...eveningLow];
},
"sensor.energy_consumption_tarif_2": (
id: string,
start: Date,
end: Date,
period = "hour"
) => {
if (period !== "hour") {
return generateSumStatistics(
id,
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const morningEnd = new Date(start.getTime() + 9 * 60 * 60 * 1000);
const eveningStart = new Date(start.getTime() + 20 * 60 * 60 * 1000);
const highTarif = generateSumStatistics(
id,
morningEnd,
eveningStart,
period,
0,
0.3
);
const highTarifFinalVal = highTarif.length
? highTarif[highTarif.length - 1].sum!
: 0;
const morning = generateSumStatistics(id, start, morningEnd, period, 0, 0);
const evening = generateSumStatistics(
id,
eveningStart,
end,
period,
highTarifFinalVal,
0
);
return [...morning, ...highTarif, ...evening];
},
"sensor.energy_production_tarif_1": (id, start, end, period = "hour") =>
generateSumStatistics(id, start, end, period, 0, 0),
"sensor.energy_production_tarif_1_compensation": (
id,
start,
end,
period = "hour"
) => generateSumStatistics(id, start, end, period, 0, 0),
"sensor.energy_production_tarif_2": (id, start, end, period = "hour") => {
if (period !== "hour") {
return generateSumStatistics(
id,
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const productionStart = new Date(start.getTime() + 9 * 60 * 60 * 1000);
const productionEnd = new Date(start.getTime() + 21 * 60 * 60 * 1000);
const dayEnd = new Date(endOfDay(productionEnd));
const production = generateCurvedStatistics(
id,
productionStart,
productionEnd,
period,
0,
0.15,
true
);
const productionFinalVal = production.length
? production[production.length - 1].sum!
: 0;
const morning = generateSumStatistics(
id,
start,
productionStart,
period,
0,
0
);
const evening = generateSumStatistics(
id,
productionEnd,
dayEnd,
period,
productionFinalVal,
0
);
const rest = generateSumStatistics(
id,
dayEnd,
end,
period,
productionFinalVal,
1
);
return [...morning, ...production, ...evening, ...rest];
},
"sensor.solar_production": (id, start, end, period = "hour") => {
if (period !== "hour") {
return generateSumStatistics(
id,
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const productionStart = new Date(start.getTime() + 7 * 60 * 60 * 1000);
const productionEnd = new Date(start.getTime() + 23 * 60 * 60 * 1000);
const dayEnd = new Date(endOfDay(productionEnd));
const production = generateCurvedStatistics(
id,
productionStart,
productionEnd,
period,
0,
0.3,
true
);
const productionFinalVal = production.length
? production[production.length - 1].sum!
: 0;
const morning = generateSumStatistics(
id,
start,
productionStart,
period,
0,
0
);
const evening = generateSumStatistics(
id,
productionEnd,
dayEnd,
period,
productionFinalVal,
0
);
const rest = generateSumStatistics(
id,
dayEnd,
end,
period,
productionFinalVal,
2
);
return [...morning, ...production, ...evening, ...rest];
},
};
export const mockHistory = (mockHass: MockHomeAssistant) => {
mockHass.mockAPI(
new RegExp("history/period/.+"),
@@ -466,43 +133,4 @@ export const mockHistory = (mockHass: MockHomeAssistant) => {
return results;
}
);
mockHass.mockWS("recorder/get_statistics_metadata", () => []);
mockHass.mockWS("history/list_statistic_ids", () => []);
mockHass.mockWS(
"history/statistics_during_period",
({ statistic_ids, start_time, end_time, period }, hass) => {
const start = new Date(start_time);
const end = end_time ? new Date(end_time) : new Date();
const statistics: Record<string, StatisticValue[]> = {};
statistic_ids.forEach((id: string) => {
if (id in statisticsFunctions) {
statistics[id] = statisticsFunctions[id](id, start, end, period);
} else {
const entityState = hass.states[id];
const state = entityState ? Number(entityState.state) : 1;
statistics[id] =
entityState && "last_reset" in entityState.attributes
? generateSumStatistics(
id,
start,
end,
period,
state,
state * (state > 80 ? 0.01 : 0.05)
)
: generateMeanStatistics(
id,
start,
end,
period,
state,
state * (state > 80 ? 0.05 : 0.1)
);
}
});
return statistics;
}
);
};
+345
View File
@@ -0,0 +1,345 @@
import {
addDays,
addHours,
addMonths,
differenceInHours,
endOfDay,
} from "date-fns";
import {
Statistics,
StatisticsMetaData,
StatisticValue,
} from "../../../src/data/recorder";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
const generateMeanStatistics = (
start: Date,
end: Date,
// eslint-disable-next-line @typescript-eslint/default-param-last
period: "5minute" | "hour" | "day" | "month" = "hour",
initValue: number,
maxDiff: number
): StatisticValue[] => {
const statistics: StatisticValue[] = [];
let currentDate = new Date(start);
currentDate.setMinutes(0, 0, 0);
let lastVal = initValue;
const now = new Date();
while (end > currentDate && currentDate < now) {
const delta = Math.random() * maxDiff;
const mean = lastVal + delta;
statistics.push({
start: currentDate.getTime(),
end: currentDate.getTime(),
mean,
min: mean - Math.random() * maxDiff,
max: mean + Math.random() * maxDiff,
last_reset: 0,
state: mean,
sum: null,
});
lastVal = mean;
currentDate =
period === "day"
? addDays(currentDate, 1)
: period === "month"
? addMonths(currentDate, 1)
: addHours(currentDate, 1);
}
return statistics;
};
const generateSumStatistics = (
start: Date,
end: Date,
// eslint-disable-next-line @typescript-eslint/default-param-last
period: "5minute" | "hour" | "day" | "month" = "hour",
initValue: number,
maxDiff: number
): StatisticValue[] => {
const statistics: StatisticValue[] = [];
let currentDate = new Date(start);
currentDate.setMinutes(0, 0, 0);
let sum = initValue;
const now = new Date();
while (end > currentDate && currentDate < now) {
const add = Math.random() * maxDiff;
sum += add;
statistics.push({
start: currentDate.getTime(),
end: currentDate.getTime(),
mean: null,
min: null,
max: null,
last_reset: 0,
state: initValue + sum,
sum,
});
currentDate =
period === "day"
? addDays(currentDate, 1)
: period === "month"
? addMonths(currentDate, 1)
: addHours(currentDate, 1);
}
return statistics;
};
const generateCurvedStatistics = (
start: Date,
end: Date,
// eslint-disable-next-line @typescript-eslint/default-param-last
_period: "5minute" | "hour" | "day" | "month" = "hour",
initValue: number,
maxDiff: number,
metered: boolean
): StatisticValue[] => {
const statistics: StatisticValue[] = [];
let currentDate = new Date(start);
currentDate.setMinutes(0, 0, 0);
let sum = initValue;
const hours = differenceInHours(end, start) - 1;
let i = 0;
let half = false;
const now = new Date();
while (end > currentDate && currentDate < now) {
const add = Math.random() * maxDiff;
sum += i * add;
statistics.push({
start: currentDate.getTime(),
end: currentDate.getTime(),
mean: null,
min: null,
max: null,
last_reset: 0,
state: initValue + sum,
sum: metered ? sum : null,
});
currentDate = addHours(currentDate, 1);
if (!half && i > hours / 2) {
half = true;
}
i += half ? -1 : 1;
}
return statistics;
};
const statisticsFunctions: Record<
string,
(
id: string,
start: Date,
end: Date,
period: "5minute" | "hour" | "day" | "month"
) => StatisticValue[]
> = {
"sensor.energy_consumption_tarif_1": (
_id: string,
start: Date,
end: Date,
period = "hour"
) => {
if (period !== "hour") {
return generateSumStatistics(
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const morningEnd = new Date(start.getTime() + 10 * 60 * 60 * 1000);
const morningLow = generateSumStatistics(start, morningEnd, period, 0, 0.7);
const eveningStart = new Date(start.getTime() + 20 * 60 * 60 * 1000);
const morningFinalVal = morningLow.length
? morningLow[morningLow.length - 1].sum!
: 0;
const empty = generateSumStatistics(
morningEnd,
eveningStart,
period,
morningFinalVal,
0
);
const eveningLow = generateSumStatistics(
eveningStart,
end,
period,
morningFinalVal,
0.7
);
return [...morningLow, ...empty, ...eveningLow];
},
"sensor.energy_consumption_tarif_2": (
_id: string,
start: Date,
end: Date,
period = "hour"
) => {
if (period !== "hour") {
return generateSumStatistics(
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const morningEnd = new Date(start.getTime() + 9 * 60 * 60 * 1000);
const eveningStart = new Date(start.getTime() + 20 * 60 * 60 * 1000);
const highTarif = generateSumStatistics(
morningEnd,
eveningStart,
period,
0,
0.3
);
const highTarifFinalVal = highTarif.length
? highTarif[highTarif.length - 1].sum!
: 0;
const morning = generateSumStatistics(start, morningEnd, period, 0, 0);
const evening = generateSumStatistics(
eveningStart,
end,
period,
highTarifFinalVal,
0
);
return [...morning, ...highTarif, ...evening];
},
"sensor.energy_production_tarif_1": (_id, start, end, period = "hour") =>
generateSumStatistics(start, end, period, 0, 0),
"sensor.energy_production_tarif_1_compensation": (
_id,
start,
end,
period = "hour"
) => generateSumStatistics(start, end, period, 0, 0),
"sensor.energy_production_tarif_2": (_id, start, end, period = "hour") => {
if (period !== "hour") {
return generateSumStatistics(
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const productionStart = new Date(start.getTime() + 9 * 60 * 60 * 1000);
const productionEnd = new Date(start.getTime() + 21 * 60 * 60 * 1000);
const dayEnd = new Date(endOfDay(productionEnd));
const production = generateCurvedStatistics(
productionStart,
productionEnd,
period,
0,
0.15,
true
);
const productionFinalVal = production.length
? production[production.length - 1].sum!
: 0;
const morning = generateSumStatistics(start, productionStart, period, 0, 0);
const evening = generateSumStatistics(
productionEnd,
dayEnd,
period,
productionFinalVal,
0
);
const rest = generateSumStatistics(
dayEnd,
end,
period,
productionFinalVal,
1
);
return [...morning, ...production, ...evening, ...rest];
},
"sensor.solar_production": (_id, start, end, period = "hour") => {
if (period !== "hour") {
return generateSumStatistics(
start,
end,
period,
0,
period === "day" ? 17 : 504
);
}
const productionStart = new Date(start.getTime() + 7 * 60 * 60 * 1000);
const productionEnd = new Date(start.getTime() + 23 * 60 * 60 * 1000);
const dayEnd = new Date(endOfDay(productionEnd));
const production = generateCurvedStatistics(
productionStart,
productionEnd,
period,
0,
0.3,
true
);
const productionFinalVal = production.length
? production[production.length - 1].sum!
: 0;
const morning = generateSumStatistics(start, productionStart, period, 0, 0);
const evening = generateSumStatistics(
productionEnd,
dayEnd,
period,
productionFinalVal,
0
);
const rest = generateSumStatistics(
dayEnd,
end,
period,
productionFinalVal,
2
);
return [...morning, ...production, ...evening, ...rest];
},
};
export const mockRecorder = (mockHass: MockHomeAssistant) => {
mockHass.mockWS(
"recorder/get_statistics_metadata",
(): StatisticsMetaData[] => []
);
mockHass.mockWS(
"recorder/list_statistic_ids",
(): StatisticsMetaData[] => []
);
mockHass.mockWS(
"recorder/statistics_during_period",
({ statistic_ids, start_time, end_time, period }, hass): Statistics => {
const start = new Date(start_time);
const end = end_time ? new Date(end_time) : new Date();
const statistics: Record<string, StatisticValue[]> = {};
statistic_ids.forEach((id: string) => {
if (id in statisticsFunctions) {
statistics[id] = statisticsFunctions[id](id, start, end, period);
} else {
const entityState = hass.states[id];
const state = entityState ? Number(entityState.state) : 1;
statistics[id] =
entityState && "last_reset" in entityState.attributes
? generateSumStatistics(
start,
end,
period,
state,
state * (state > 80 ? 0.01 : 0.05)
)
: generateMeanStatistics(
start,
end,
period,
state,
state * (state > 80 ? 0.05 : 0.1)
);
}
});
return statistics;
}
);
};
Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

-35
View File
@@ -1,35 +0,0 @@
#!/bin/bash
TARGET_LABEL="needs design preview"
if [[ "$NETLIFY" != "true" ]]; then
echo "This script can only be run on Netlify"
exit 1
fi
function createStatus() {
state="$1"
description="$2"
target_url="$3"
curl -X POST -H "Accept: application/vnd.github.v3+json" -H "Authorization: token $GITHUB_TOKEN" \
"https://api.github.com/repos/home-assistant/frontend/statuses/$COMMIT_REF" \
-d '{"state": "'"${state}"'", "context": "Netlify/Design Preview Build", "description": "'"$description"'", "target_url": "'"$target_url"'"}'
}
if [[ "${PULL_REQUEST}" == "true" ]]; then
if [[ "$(curl -sSLf -H "Accept: application/vnd.github.v3+json" -H "Authorization: token $GITHUB_TOKEN" \
"https://api.github.com/repos/home-assistant/frontend/pulls/${REVIEW_ID}" | jq '.labels[].name' -r)" =~ "$TARGET_LABEL" ]]; then
createStatus "pending" "Building design preview" "https://app.netlify.com/sites/home-assistant-gallery/deploys/$BUILD_ID"
gulp build-gallery
if [ $? -eq 0 ]; then
createStatus "success" "Build complete" "$DEPLOY_PRIME_URL"
else
createStatus "error" "Build failed" "https://app.netlify.com/sites/home-assistant-gallery/deploys/$BUILD_ID"
fi
else
createStatus "success" "Build was not requested by PR label"
fi
elif [[ "$INCOMING_HOOK_BODY" == "NIGHTLY" ]]; then
gulp build-gallery
fi
@@ -0,0 +1,56 @@
---
title: When to use remove, delete, add and create
subtitle: The difference between remove/delete and add/create.
---
# Remove vs Delete
Remove and Delete are quite similar, but can be frustrating if used inconsistently.
## Remove
Take away and set aside, but kept in existence.
For example:
* Removing a user's permission
* Removing a user from a group
* Removing links between items
* Removing a widget
* Removing a link
* Removing an item from a cart
## Delete
Erase, rendered nonexistent or nonrecoverable.
For example:
* Deleting a field
* Deleting a value in a field
* Deleting a task
* Deleting a group
* Deleting a permission
* Deleting a calendar event
# Add vs Create
In most cases, Create can be paired with Delete, and Add can be paired with Remove.
## Add
An already-exisiting item.
For example:
* Adding a permission to a user
* Adding a user to a group
* Adding links between items
* Adding a widget
* Adding a link
* Adding an item to a cart
## Create
Something made from scratch.
For example:
* Creating a new field
* Creating a new value in a field
* Creating a new task
* Creating a new group
* Creating a new permission
* Creating a new calendar event
Based on this is [UX magazine article](https://uxmag.com/articles/ui-copy-remove-vs-delete2-banner).
@@ -36,6 +36,7 @@ const conditions = [
{ condition: "sun", after: "sunset" },
{ condition: "sun", after: "sunrise", offset: "-01:00" },
{ condition: "zone", entity_id: "device_tracker.person", zone: "zone.home" },
{ condition: "trigger", id: "motion" },
{ condition: "time" },
{ condition: "template" },
];
+27 -1
View File
@@ -1,5 +1,5 @@
/* eslint-disable lit/no-template-arrow */
import { LitElement, TemplateResult, html } from "lit";
import { LitElement, TemplateResult, html, css } from "lit";
import { customElement, state } from "lit/decorators";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import type { HomeAssistant } from "../../../../src/types";
@@ -47,6 +47,8 @@ const SCHEMAS: { name: string; actions: Action[] }[] = [
class DemoHaAutomationEditorAction extends LitElement {
@state() private hass!: HomeAssistant;
@state() private _disabled = false;
private data: any = SCHEMAS.map((info) => info.actions);
constructor() {
@@ -67,6 +69,15 @@ class DemoHaAutomationEditorAction extends LitElement {
this.requestUpdate();
};
return html`
<div class="options">
<ha-formfield label="Disabled">
<ha-switch
.name=${"disabled"}
.checked=${this._disabled}
@change=${this._handleOptionChange}
></ha-switch>
</ha-formfield>
</div>
${SCHEMAS.map(
(info, sampleIdx) => html`
<demo-black-white-row
@@ -81,6 +92,7 @@ class DemoHaAutomationEditorAction extends LitElement {
.hass=${this.hass}
.actions=${this.data[sampleIdx]}
.sampleIdx=${sampleIdx}
.disabled=${this._disabled}
@value-changed=${valueChanged}
></ha-automation-action>
`
@@ -90,6 +102,20 @@ class DemoHaAutomationEditorAction extends LitElement {
)}
`;
}
private _handleOptionChange(ev) {
this[`_${ev.target.name}`] = ev.target.checked;
}
static styles = css`
.options {
max-width: 800px;
margin: 16px auto;
}
.options ha-formfield {
margin-right: 16px;
}
`;
}
declare global {
@@ -1,5 +1,5 @@
/* eslint-disable lit/no-template-arrow */
import { LitElement, TemplateResult, html } from "lit";
import { LitElement, TemplateResult, html, css } from "lit";
import { customElement, state } from "lit/decorators";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import type { HomeAssistant } from "../../../../src/types";
@@ -83,6 +83,8 @@ const SCHEMAS: { name: string; conditions: ConditionWithShorthand[] }[] = [
class DemoHaAutomationEditorCondition extends LitElement {
@state() private hass!: HomeAssistant;
@state() private _disabled = false;
private data: any = SCHEMAS.map((info) => info.conditions);
constructor() {
@@ -103,6 +105,15 @@ class DemoHaAutomationEditorCondition extends LitElement {
this.requestUpdate();
};
return html`
<div class="options">
<ha-formfield label="Disabled">
<ha-switch
.name=${"disabled"}
.checked=${this._disabled}
@change=${this._handleOptionChange}
></ha-switch>
</ha-formfield>
</div>
${SCHEMAS.map(
(info, sampleIdx) => html`
<demo-black-white-row
@@ -117,6 +128,7 @@ class DemoHaAutomationEditorCondition extends LitElement {
.hass=${this.hass}
.conditions=${this.data[sampleIdx]}
.sampleIdx=${sampleIdx}
.disabled=${this._disabled}
@value-changed=${valueChanged}
></ha-automation-condition>
`
@@ -126,6 +138,20 @@ class DemoHaAutomationEditorCondition extends LitElement {
)}
`;
}
private _handleOptionChange(ev) {
this[`_${ev.target.name}`] = ev.target.checked;
}
static styles = css`
.options {
max-width: 800px;
margin: 16px auto;
}
.options ha-formfield {
margin-right: 16px;
}
`;
}
declare global {
+27 -1
View File
@@ -1,5 +1,5 @@
/* eslint-disable lit/no-template-arrow */
import { LitElement, TemplateResult, html } from "lit";
import { LitElement, TemplateResult, html, css } from "lit";
import { customElement, state } from "lit/decorators";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import type { HomeAssistant } from "../../../../src/types";
@@ -107,6 +107,8 @@ const SCHEMAS: { name: string; triggers: Trigger[] }[] = [
class DemoHaAutomationEditorTrigger extends LitElement {
@state() private hass!: HomeAssistant;
@state() private _disabled = false;
private data: any = SCHEMAS.map((info) => info.triggers);
constructor() {
@@ -127,6 +129,15 @@ class DemoHaAutomationEditorTrigger extends LitElement {
this.requestUpdate();
};
return html`
<div class="options">
<ha-formfield label="Disabled">
<ha-switch
.name=${"disabled"}
.checked=${this._disabled}
@change=${this._handleOptionChange}
></ha-switch>
</ha-formfield>
</div>
${SCHEMAS.map(
(info, sampleIdx) => html`
<demo-black-white-row
@@ -141,6 +152,7 @@ class DemoHaAutomationEditorTrigger extends LitElement {
.hass=${this.hass}
.triggers=${this.data[sampleIdx]}
.sampleIdx=${sampleIdx}
.disabled=${this._disabled}
@value-changed=${valueChanged}
></ha-automation-trigger>
`
@@ -150,6 +162,20 @@ class DemoHaAutomationEditorTrigger extends LitElement {
)}
`;
}
private _handleOptionChange(ev) {
this[`_${ev.target.name}`] = ev.target.checked;
}
static styles = css`
.options {
max-width: 800px;
margin: 16px auto;
}
.options ha-formfield {
margin-right: 16px;
}
`;
}
declare global {
-2
View File
@@ -2,8 +2,6 @@
title: "Logo"
---
![Using our logo](/images/using-our-logo.png)
# Using our logo
As a community, we are proud of our logo. Follow these guidelines to ensure it always looks its best. Our logo follows Google's material design spec and uses the blue interface color.
+1 -13
View File
@@ -1,5 +1,5 @@
---
title: Alerts
title: Alert
subtitle: An alert displays a short, important message in a way that attracts the user's attention without interrupting the user's task.
---
@@ -156,18 +156,6 @@ The `title ` option should not be used without a description.
*Documentation coming soon*
**Right to left**
<ha-alert alert-type="success" rtl>
This is an info alert — check it out!
</ha-alert>
```html
<ha-alert alert-type="success" rtl>
This is an info alert — check it out!
</ha-alert>
```
### API
**Properties/Attributes**
+3 -1
View File
@@ -98,7 +98,9 @@ const alerts: {
description: "Alert with slotted image",
type: "warning",
iconSlot: html`<span slot="icon" class="image"
><img src="https://www.home-assistant.io/images/home-assistant-logo.svg"
><img
alt="Home Assistant logo"
src="https://www.home-assistant.io/images/home-assistant-logo.svg"
/></span>`,
},
{
@@ -0,0 +1,3 @@
---
title: Bar Slider
---
@@ -0,0 +1,170 @@
import { css, html, LitElement, TemplateResult } from "lit";
import { customElement, state } from "lit/decorators";
import { ifDefined } from "lit/directives/if-defined";
import { repeat } from "lit/directives/repeat";
import "../../../../src/components/ha-bar-slider";
import "../../../../src/components/ha-card";
const sliders: {
id: string;
label: string;
mode?: "start" | "end" | "cursor";
class?: string;
}[] = [
{
id: "slider-start",
label: "Slider (start mode)",
mode: "start",
},
{
id: "slider-end",
label: "Slider (end mode)",
mode: "end",
},
{
id: "slider-cursor",
label: "Slider (cursor mode)",
mode: "cursor",
},
{
id: "slider-start-custom",
label: "Slider (start mode) and custom style",
mode: "start",
class: "custom",
},
{
id: "slider-end-custom",
label: "Slider (end mode) and custom style",
mode: "end",
class: "custom",
},
{
id: "slider-cursor-custom",
label: "Slider (cursor mode) and custom style",
mode: "cursor",
class: "custom",
},
];
@customElement("demo-components-ha-bar-slider")
export class DemoHaBarSlider extends LitElement {
@state() private value = 50;
@state() private sliderPosition?: number;
handleValueChanged(e: CustomEvent) {
this.value = e.detail.value as number;
}
handleSliderMoved(e: CustomEvent) {
this.sliderPosition = e.detail.value as number;
}
protected render(): TemplateResult {
return html`
<ha-card>
<div class="card-content">
<p><b>Slider values</b></p>
<table>
<tbody>
<tr>
<td>position</td>
<td>${this.sliderPosition ?? "-"}</td>
</tr>
<tr>
<td>value</td>
<td>${this.value ?? "-"}</td>
</tr>
</tbody>
</table>
</div>
</ha-card>
${repeat(sliders, (slider) => {
const { id, label, ...config } = slider;
return html`
<ha-card>
<div class="card-content">
<label id=${id}>${label}</label>
<pre>Config: ${JSON.stringify(config)}</pre>
<ha-bar-slider
.value=${this.value}
.mode=${config.mode}
class=${ifDefined(config.class)}
@value-changed=${this.handleValueChanged}
@slider-moved=${this.handleSliderMoved}
aria-labelledby=${id}
>
</ha-bar-slider>
</div>
</ha-card>
`;
})}
<ha-card>
<div class="card-content">
<p class="title"><b>Vertical</b></p>
<div class="vertical-sliders">
${repeat(sliders, (slider) => {
const { id, label, ...config } = slider;
return html`
<ha-bar-slider
.value=${this.value}
.mode=${config.mode}
vertical
class=${ifDefined(config.class)}
@value-changed=${this.handleValueChanged}
@slider-moved=${this.handleSliderMoved}
aria-label=${label}
>
</ha-bar-slider>
`;
})}
</div>
</div>
</ha-card>
`;
}
static get styles() {
return css`
ha-card {
max-width: 600px;
margin: 24px auto;
}
pre {
margin-top: 0;
margin-bottom: 8px;
}
p {
margin: 0;
}
label {
font-weight: 600;
}
.custom {
--slider-bar-color: #ffcf4c;
--slider-bar-background: #ffcf4c;
--slider-bar-background-opacity: 0.2;
--slider-bar-thickness: 100px;
--slider-bar-border-radius: 24px;
}
.vertical-sliders {
height: 300px;
display: flex;
flex-direction: row;
justify-content: space-between;
}
p.title {
margin-bottom: 12px;
}
.vertical-sliders > *:not(:last-child) {
margin-right: 4px;
}
`;
}
}
declare global {
interface HTMLElementTagNameMap {
"demo-components-ha-bar-slider": DemoHaBarSlider;
}
}
@@ -0,0 +1,3 @@
---
title: Bar Switch
---
@@ -0,0 +1,145 @@
import {
mdiGarage,
mdiGarageOpen,
mdiLightbulb,
mdiLightbulbOff,
} from "@mdi/js";
import { css, html, LitElement, TemplateResult } from "lit";
import { customElement, state } from "lit/decorators";
import { ifDefined } from "lit/directives/if-defined";
import { repeat } from "lit/directives/repeat";
import "../../../../src/components/ha-bar-switch";
import "../../../../src/components/ha-card";
const switches: {
id: string;
label: string;
class?: string;
reversed?: boolean;
disabled?: boolean;
}[] = [
{
id: "switch",
label: "Switch",
},
{
id: "switch-reversed",
label: "Switch Reversed",
reversed: true,
},
{
id: "switch-custom",
label: "Switch and custom style",
class: "custom",
},
{
id: "switch-disabled",
label: "Disabled Switch",
disabled: true,
},
];
@customElement("demo-components-ha-bar-switch")
export class DemoHaBarSwitch extends LitElement {
@state() private checked = false;
handleValueChanged(e: any) {
this.checked = e.target.checked as boolean;
}
protected render(): TemplateResult {
return html`
${repeat(switches, (sw) => {
const { id, label, ...config } = sw;
return html`
<ha-card>
<div class="card-content">
<label id=${id}>${label}</label>
<pre>Config: ${JSON.stringify(config)}</pre>
<ha-bar-switch
.checked=${this.checked}
class=${ifDefined(config.class)}
@change=${this.handleValueChanged}
.pathOn=${mdiLightbulb}
.pathOff=${mdiLightbulbOff}
aria-labelledby=${id}
disabled=${ifDefined(config.disabled)}
reversed=${ifDefined(config.reversed)}
>
</ha-bar-switch>
</div>
</ha-card>
`;
})}
<ha-card>
<div class="card-content">
<p class="title"><b>Vertical</b></p>
<div class="vertical-switches">
${repeat(switches, (sw) => {
const { id, label, ...config } = sw;
return html`
<ha-bar-switch
.checked=${this.checked}
vertical
class=${ifDefined(config.class)}
@change=${this.handleValueChanged}
aria-label=${label}
.pathOn=${mdiGarageOpen}
.pathOff=${mdiGarage}
disabled=${ifDefined(config.disabled)}
reversed=${ifDefined(config.reversed)}
>
</ha-bar-switch>
`;
})}
</div>
</div>
</ha-card>
`;
}
static get styles() {
return css`
ha-card {
max-width: 600px;
margin: 24px auto;
}
pre {
margin-top: 0;
margin-bottom: 8px;
}
p {
margin: 0;
}
label {
font-weight: 600;
}
.custom {
--switch-bar-on-color: var(--green-color);
--switch-bar-off-color: var(--red-color);
--switch-bar-thickness: 100px;
--switch-bar-border-radius: 24px;
--switch-bar-padding: 6px;
--mdc-icon-size: 24px;
}
.vertical-switches {
height: 300px;
display: flex;
flex-direction: row;
justify-content: space-between;
}
p.title {
margin-bottom: 12px;
}
.vertical-switches > *:not(:last-child) {
margin-right: 4px;
}
`;
}
}
declare global {
interface HTMLElementTagNameMap {
"demo-components-ha-bar-switch": DemoHaBarSwitch;
}
}
+2 -1
View File
@@ -1,3 +1,4 @@
---
title: Progress Bars
title: Bar
subtitle: Can be used to communicate progress of a task.
---
@@ -1,3 +1,3 @@
---
title: Chips
title: Chip
---
@@ -1,11 +1,11 @@
---
title: Dialgos
title: Dialog
subtitle: Dialogs provide important prompts in a user flow.
---
# Material Design 3
Our dialogs are based on the latest version of Material Design. Specs and guidelines can be found on it's [website](https://m3.material.io/components/dialogs/overview).
Our dialogs are based on the latest version of Material Design. Specs and guidelines can be found on its [website](https://m3.material.io/components/dialogs/overview).
# Highlighted guidelines
+3
View File
@@ -99,16 +99,19 @@ const AREAS = [
area_id: "backyard",
name: "Backyard",
picture: null,
aliases: [],
},
{
area_id: "bedroom",
name: "Bedroom",
picture: null,
aliases: [],
},
{
area_id: "livingroom",
name: "Livingroom",
picture: null,
aliases: [],
},
];
@@ -0,0 +1,61 @@
---
title: Gauge
---
<style>
ha-gauge {
display: block;
width: 200px;
margin-top: 15px;
margin-bottom: 50px;
}
</style>
# Gauge `<ha-gauge>`
A gauge that can be used to represent sensor data and provide visual feedback about the value and the corresponding severity (success, warning, error).
## Examples
Info color gauge
<ha-gauge value="75" style="--gauge-color: var(--info-color)"></ha-gauge>
Success color gauge
<ha-gauge value="25" style="--gauge-color: var(--success-color)" label="°C"></ha-gauge>
Warning color gauge
<ha-gauge value="50" style="--gauge-color: var(--warning-color)" label="°C"></ha-gauge>
Error color gauge
<ha-gauge value="75" style="--gauge-color: var(--error-color)" label="°C"></ha-gauge>
Gauge with background color
<ha-gauge value="75" style="--gauge-color: var(--info-color); --primary-background-color: lightgray"></ha-gauge>
## CSS variables
### Gauge
`primary-background-color`
Background color of the dial (rounded arch)
`primary-text-color`
Text color below dial (value and unit of measurement) plus needle color (if gauge is in needle mode)
#### Dial colors
`gauge-color`
Used in the coding to control what color the gauge value is rendered with, but cannot be set via theme since its value will dynamically be set (either to `info-color` or to the matching severity variable if the severity color mode is used). To control the used colors, adjust the following variables.
`success-color`
Dial color for the "green" severity level
`warning-color`
Dial color for the "yellow" severity level
`error-color`
Dial color for the "red" severity level
`info-color`
Static dial color if not in severity color mode
+1
View File
@@ -0,0 +1 @@
import "../../../../src/components/ha-gauge";
@@ -1,5 +1,5 @@
---
title: Selectors
title: Selector
---
See the website for [list of available selectors](https://www.home-assistant.io/docs/blueprint/selectors/).
@@ -95,16 +95,19 @@ const AREAS = [
area_id: "backyard",
name: "Backyard",
picture: null,
aliases: [],
},
{
area_id: "bedroom",
name: "Bedroom",
picture: null,
aliases: [],
},
{
area_id: "livingroom",
name: "Livingroom",
picture: null,
aliases: [],
},
];
@@ -195,6 +198,48 @@ const SCHEMAS: {
},
},
},
select_disabled_list: {
name: "Select disabled option",
selector: {
select: {
options: [
{ label: "Option 1", value: "Option 1" },
{ label: "Option 2", value: "Option 2" },
{ label: "Option 3", value: "Option 3", disabled: true },
],
mode: "list",
},
},
},
select_disabled_multiple: {
name: "Select disabled option",
selector: {
select: {
multiple: true,
options: [
{ label: "Option 1", value: "Option 1" },
{ label: "Option 2", value: "Option 2" },
{ label: "Option 3", value: "Option 3", disabled: true },
],
mode: "list",
},
},
},
select_disabled: {
name: "Select disabled option",
selector: {
select: {
options: [
{ label: "Option 1", value: "Option 1" },
{ label: "Option 2", value: "Option 2" },
{ label: "Option 3", value: "Option 3", disabled: true },
{ label: "Option 4", value: "Option 4", disabled: true },
{ label: "Option 5", value: "Option 5", disabled: true },
{ label: "Option 6", value: "Option 6" },
],
},
},
},
select_custom: {
name: "Select (Custom)",
selector: {
@@ -0,0 +1,39 @@
---
title: Switch / Toggle
---
<style>
ha-switch {
display: block;
}
</style>
# Switch `<ha-switch>`
A toggle switch can represent two states: on and off.
## Examples
Switch in on state
<ha-switch checked></ha-switch>
Switch in off state
<ha-switch></ha-switch>
Disabled switch
<ha-switch disabled></ha-switch>
## CSS variables
For the switch / toggle there are always two variables, one for the on / checked state and one for the off / unchecked state.
The track element (background rounded rectangle that the round circular handle travels on) is set to being half transparent, so the final color will also be impacted by the color behind the track.
`switch-checked-color` / `switch-unchecked-color`
Set both the color of the round handle and the track behind it. If you want to control them separately, use the variables below instead.
`switch-checked-button-color` / `switch-unchecked-button-color`
Color of the round handle
`switch-checked-track-color` / `switch-unchecked-track-color`
Color of the track behind the round handle
@@ -0,0 +1 @@
import "../../../../src/components/ha-switch";
+1 -1
View File
@@ -1,3 +1,3 @@
---
title: Tips
title: Tip
---
@@ -98,6 +98,9 @@ const ENTITIES = [
minimum: 0,
maximum: 10,
}),
getEntity("text", "message", "Hello!", {
friendly_name: "Message",
}),
getEntity("light", "unavailable", "unavailable", {
friendly_name: "Bed Light",
@@ -129,6 +132,9 @@ const ENTITIES = [
friendly_name: "Who cooks",
icon: "mdi:cheff",
}),
getEntity("text", "unavailable", "unavailable", {
friendly_name: "Message",
}),
];
const CONFIGS = [
@@ -147,6 +153,26 @@ const CONFIGS = [
- climate.ecobee
- input_number.number
- sensor.humidity
- text.message
`,
},
{
heading: "With enabled state color",
config: `
- type: entities
state_color: true
entities:
- scene.romantic_lights
- device_tracker.demo_paulus
- cover.kitchen_window
- group.kitchen
- lock.kitchen_door
- light.bed_light
- light.non_existing
- climate.ecobee
- input_number.number
- sensor.humidity
- text.message
`,
},
{
@@ -219,6 +245,7 @@ const CONFIGS = [
- climate.unavailable
- input_number.unavailable
- input_select.unavailable
- text.unavailable
`,
},
{
@@ -35,11 +35,11 @@ const CONFIGS = [
`,
},
{
heading: "Without State",
heading: "With State",
config: `
- type: button
entity: light.bed_light
show_state: false
show_state: true
`,
},
{
+16 -8
View File
@@ -23,13 +23,12 @@ const CONFIGS = [
heading: "Basic example",
config: `
- type: gauge
title: Humidity
entity: sensor.outside_humidity
name: Outside Humidity
`,
},
{
heading: "Custom Unit of Measurement",
heading: "Custom unit of measurement",
config: `
- type: gauge
entity: sensor.outside_temperature
@@ -38,7 +37,16 @@ const CONFIGS = [
`,
},
{
heading: "Setting Severity Levels",
heading: "Rendering needle",
config: `
- type: gauge
entity: sensor.outside_humidity
name: Outside Humidity
needle: true
`,
},
{
heading: "Setting severity levels",
config: `
- type: gauge
entity: sensor.brightness
@@ -50,7 +58,7 @@ const CONFIGS = [
`,
},
{
heading: "Setting Severity Levels",
heading: "Setting severity levels",
config: `
- type: gauge
entity: sensor.brightness_medium
@@ -62,7 +70,7 @@ const CONFIGS = [
`,
},
{
heading: "Setting Severity Levels",
heading: "Setting severity levels",
config: `
- type: gauge
entity: sensor.brightness_high
@@ -74,7 +82,7 @@ const CONFIGS = [
`,
},
{
heading: "Setting Min (0) and Max (15) Values",
heading: "Setting min (0) and mx (15) values",
config: `
- type: gauge
entity: sensor.brightness
@@ -84,14 +92,14 @@ const CONFIGS = [
`,
},
{
heading: "Invalid Entity",
heading: "Invalid entity",
config: `
- type: gauge
entity: sensor.invalid_entity
`,
},
{
heading: "Non-Numeric Value",
heading: "Non-numeric value",
config: `
- type: gauge
entity: plant.bonsai
+15
View File
@@ -62,6 +62,21 @@ const CONFIGS = [
heading: "Basic example",
config: `
- type: glance
entities:
- device_tracker.demo_paulus
- media_player.living_room
- sun.sun
- cover.kitchen_window
- light.kitchen_lights
- lock.kitchen_door
- light.ceiling_lights
`,
},
{
heading: "No state colors",
config: `
- type: glance
state_color: false
entities:
- device_tracker.demo_paulus
- media_player.living_room
@@ -1,3 +1,3 @@
---
title: Grid And Stack Card
title: Grid and Stack Card
---
@@ -0,0 +1,3 @@
---
title: Tile Card
---
+173
View File
@@ -0,0 +1,173 @@
import { html, LitElement, PropertyValues, TemplateResult } from "lit";
import { customElement, query } from "lit/decorators";
import { CoverEntityFeature } from "../../../../src/data/cover";
import { LightColorMode } from "../../../../src/data/light";
import { VacuumEntityFeature } from "../../../../src/data/vacuum";
import { getEntity } from "../../../../src/fake_data/entity";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import "../../components/demo-cards";
const ENTITIES = [
getEntity("switch", "tv_outlet", "on", {
friendly_name: "TV outlet",
device_class: "outlet",
}),
getEntity("light", "bed_light", "on", {
friendly_name: "Bed Light",
supported_color_modes: [LightColorMode.HS],
}),
getEntity("light", "unavailable", "unavailable", {
friendly_name: "Unavailable entity",
}),
getEntity("climate", "thermostat", "heat", {
current_temperature: 73,
min_temp: 45,
max_temp: 95,
temperature: 80,
hvac_modes: ["heat", "cool", "auto", "off"],
friendly_name: "Thermostat",
hvac_action: "heating",
}),
getEntity("person", "paulus", "home", {
friendly_name: "Paulus",
}),
getEntity("vacuum", "first_floor_vacuum", "docked", {
friendly_name: "First floor vacuum",
supported_features:
VacuumEntityFeature.START +
VacuumEntityFeature.STOP +
VacuumEntityFeature.RETURN_HOME,
}),
getEntity("cover", "kitchen_shutter", "open", {
friendly_name: "Kitchen shutter",
device_class: "shutter",
supported_features:
CoverEntityFeature.CLOSE +
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP,
}),
getEntity("cover", "pergola_roof", "open", {
friendly_name: "Pergola Roof",
supported_features:
CoverEntityFeature.CLOSE_TILT +
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT,
}),
];
const CONFIGS = [
{
heading: "Basic example",
config: `
- type: tile
entity: switch.tv_outlet
`,
},
{
heading: "Vertical example",
config: `
- type: tile
entity: switch.tv_outlet
vertical: true
`,
},
{
heading: "Custom color",
config: `
- type: tile
entity: switch.tv_outlet
color: pink
`,
},
{
heading: "Unknown entity",
config: `
- type: tile
entity: light.unknown
`,
},
{
heading: "Unavailable entity",
config: `
- type: tile
entity: light.unavailable
`,
},
{
heading: "Climate",
config: `
- type: tile
entity: climate.thermostat
`,
},
{
heading: "Person",
config: `
- type: tile
entity: person.paulus
`,
},
{
heading: "Light brightness feature",
config: `
- type: tile
entity: light.bed_light
features:
- type: "light-brightness"
`,
},
{
heading: "Vacuum commands feature",
config: `
- type: tile
entity: vacuum.first_floor_vacuum
features:
- type: "vacuum-commands"
commands:
- start_pause
- stop
- return_home
`,
},
{
heading: "Cover open close feature",
config: `
- type: tile
entity: cover.kitchen_shutter
features:
- type: "cover-open-close"
`,
},
{
heading: "Cover tilt feature",
config: `
- type: tile
entity: cover.pergola_roof
features:
- type: "cover-tilt"
`,
},
];
@customElement("demo-lovelace-tile-card")
class DemoTile extends LitElement {
@query("#demos") private _demoRoot!: HTMLElement;
protected render(): TemplateResult {
return html`<demo-cards id="demos" .configs=${CONFIGS}></demo-cards>`;
}
protected firstUpdated(changedProperties: PropertyValues) {
super.firstUpdated(changedProperties);
const hass = provideHass(this._demoRoot);
hass.updateTranslations(null, "en");
hass.updateTranslations("lovelace", "en");
hass.addEntities(ENTITIES);
}
}
declare global {
interface HTMLElementTagNameMap {
"demo-lovelace-tile-card": DemoTile;
}
}
@@ -0,0 +1,3 @@
---
title: Entity State
---
+422
View File
@@ -0,0 +1,422 @@
import {
HassEntity,
HassEntityAttributeBase,
} from "home-assistant-js-websocket";
import { css, html, LitElement, TemplateResult } from "lit";
import { customElement, property } from "lit/decorators";
import memoizeOne from "memoize-one";
import { computeDomain } from "../../../../src/common/entity/compute_domain";
import { computeStateDisplay } from "../../../../src/common/entity/compute_state_display";
import "../../../../src/components/data-table/ha-data-table";
import type { DataTableColumnContainer } from "../../../../src/components/data-table/ha-data-table";
import "../../../../src/components/entity/state-badge";
import "../../../../src/components/ha-chip";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import { HomeAssistant } from "../../../../src/types";
const SENSOR_DEVICE_CLASSES = [
"apparent_power",
"aqi",
// "battery"
"carbon_dioxide",
"carbon_monoxide",
"current",
"date",
"distance",
"duration",
"energy",
"frequency",
"gas",
"humidity",
"illuminance",
"moisture",
"monetary",
"nitrogen_dioxide",
"nitrogen_monoxide",
"nitrous_oxide",
"ozone",
"pm1",
"pm10",
"pm25",
"power_factor",
"power",
"precipitation",
"precipitation_intensity",
"pressure",
"reactive_power",
"signal_strength",
"speed",
"sulphur_dioxide",
"temperature",
"timestamp",
"volatile_organic_compounds",
"voltage",
"volume",
"water",
"weight",
"wind_speed",
];
const BINARY_SENSOR_DEVICE_CLASSES = [
"battery",
"battery_charging",
"carbon_monoxide",
"cold",
"connectivity",
"door",
"garage_door",
"gas",
"heat",
"light",
"lock",
"moisture",
"motion",
"moving",
"occupancy",
"opening",
"plug",
"power",
"presence",
"problem",
"running",
"safety",
"smoke",
"sound",
"tamper",
"update",
"vibration",
"window",
];
const ENTITIES: HassEntity[] = [
// Alarm control panel
createEntity("alarm_control_panel.disarmed", "disarmed"),
createEntity("alarm_control_panel.armed_home", "armed_home"),
createEntity("alarm_control_panel.armed_away", "armed_away"),
createEntity("alarm_control_panel.armed_night", "armed_night"),
createEntity("alarm_control_panel.armed_vacation", "armed_vacation"),
createEntity(
"alarm_control_panel.armed_custom_bypass",
"armed_custom_bypass"
),
createEntity("alarm_control_panel.pending", "pending"),
createEntity("alarm_control_panel.arming", "arming"),
createEntity("alarm_control_panel.disarming", "disarming"),
createEntity("alarm_control_panel.triggered", "triggered"),
// Alert
createEntity("alert.idle", "idle"),
createEntity("alert.off", "off"),
createEntity("alert.on", "on"),
// Automation
createEntity("automation.off", "off"),
createEntity("automation.on", "on"),
// Binary Sensor
...BINARY_SENSOR_DEVICE_CLASSES.map((dc) => [
createEntity(`binary_sensor.${dc}`, "off", dc),
createEntity(`binary_sensor.${dc}`, "on", dc),
]).reduce((arr, item) => [...arr, ...item], []),
// Button
createEntity("button.restart", "unknown", "restart"),
createEntity("button.update", "unknown", "update"),
// Calendar
createEntity("calendar.off", "off"),
createEntity("calendar.on", "on"),
// Camera
createEntity("camera.idle", "idle"),
createEntity("camera.streaming", "streaming"),
// Climate
createEntity("climate.off", "off"),
createEntity("climate.heat", "heat"),
createEntity("climate.cool", "cool"),
createEntity("climate.heat_cool", "heat_cool"),
createEntity("climate.auto", "auto"),
createEntity("climate.dry", "dry"),
createEntity("climate.fan_only", "fan_only"),
createEntity("climate.auto_idle", "auto", undefined, { hvac_action: "idle" }),
createEntity("climate.auto_off", "auto", undefined, { hvac_action: "off" }),
createEntity("climate.auto_heating", "auto", undefined, {
hvac_action: "heating",
}),
createEntity("climate.auto_cooling", "auto", undefined, {
hvac_action: "cooling",
}),
createEntity("climate.auto_dry", "auto", undefined, {
hvac_action: "drying",
}),
createEntity("climate.auto_fan", "auto", undefined, {
hvac_action: "fan",
}),
// Cover
createEntity("cover.closing", "closing"),
createEntity("cover.closed", "closed"),
createEntity("cover.opening", "opening"),
createEntity("cover.open", "open"),
createEntity("cover.awning", "open", "awning"),
createEntity("cover.blind", "open", "blind"),
createEntity("cover.curtain", "open", "curtain"),
createEntity("cover.damper", "open", "damper"),
createEntity("cover.door", "open", "door"),
createEntity("cover.garage", "open", "garage"),
createEntity("cover.gate", "open", "gate"),
createEntity("cover.shade", "open", "shade"),
createEntity("cover.shutter", "open", "shutter"),
createEntity("cover.window", "open", "window"),
// Device tracker/person
createEntity("device_tracker.not_home", "not_home"),
createEntity("device_tracker.home", "home"),
createEntity("device_tracker.work", "work"),
createEntity("person.home", "home"),
createEntity("person.not_home", "not_home"),
createEntity("person.work", "work"),
// Fan
createEntity("fan.off", "off"),
createEntity("fan.on", "on"),
// Camera
createEntity("group.off", "off"),
createEntity("group.on", "on"),
// Humidifier
createEntity("humidifier.off", "off"),
createEntity("humidifier.on", "on"),
// Helpers
createEntity("input_boolean.off", "off"),
createEntity("input_boolean.on", "on"),
// Light
createEntity("light.off", "off"),
createEntity("light.on", "on"),
// Locks
createEntity("lock.locked", "locked"),
createEntity("lock.unlocked", "unlocked"),
createEntity("lock.locking", "locking"),
createEntity("lock.unlocking", "unlocking"),
createEntity("lock.jammed", "jammed"),
// Media Player
createEntity("media_player.off", "off"),
createEntity("media_player.on", "on"),
createEntity("media_player.idle", "idle"),
createEntity("media_player.playing", "playing"),
createEntity("media_player.paused", "paused"),
createEntity("media_player.standby", "standby"),
createEntity("media_player.buffering", "buffering"),
createEntity("media_player.tv_off", "off", "tv"),
createEntity("media_player.tv_playing", "playing", "tv"),
createEntity("media_player.tv_paused", "paused", "tv"),
createEntity("media_player.tv_standby", "standby", "tv"),
createEntity("media_player.receiver_off", "off", "receiver"),
createEntity("media_player.receiver_playing", "playing", "receiver"),
createEntity("media_player.receiver_paused", "paused", "receiver"),
createEntity("media_player.receiver_standby", "standby", "receiver"),
createEntity("media_player.speaker_off", "off", "speaker"),
createEntity("media_player.speaker_playing", "playing", "speaker"),
createEntity("media_player.speaker_paused", "paused", "speaker"),
createEntity("media_player.speaker_standby", "standby", "speaker"),
// Plant
createEntity("plant.ok", "ok"),
createEntity("plant.problem", "problem"),
// Remote
createEntity("remote.off", "off"),
createEntity("remote.on", "on"),
// Schedule
createEntity("schedule.off", "off"),
createEntity("schedule.on", "on"),
// Script
createEntity("script.off", "off"),
createEntity("script.on", "on"),
// Sensor
...SENSOR_DEVICE_CLASSES.map((dc) => createEntity(`sensor.${dc}`, "10", dc)),
// Battery sensor
...[0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, "unknown", "not_valid"].map(
(value) =>
createEntity(`sensor.battery_${value}`, value.toString(), "battery")
),
// Siren
createEntity("siren.off", "off"),
createEntity("siren.on", "on"),
// Sun
createEntity("sun.below", "below_horizon"),
createEntity("sun.above", "above_horizon"),
createEntity("sun.unknown", "unknown"),
createEntity("sun.unavailable", "unavailable"),
// Switch
createEntity("switch.off", "off"),
createEntity("switch.on", "on"),
createEntity("switch.outlet_off", "off", "outlet"),
createEntity("switch.outlet_on", "on", "outlet"),
createEntity("switch.switch_off", "off", "switch"),
createEntity("switch.switch_on", "on", "switch"),
// Timer
createEntity("timer.idle", "idle"),
createEntity("timer.active", "active"),
createEntity("timer.paused", "paused"),
// Vacuum
createEntity("vacuum.docked", "docked"),
createEntity("vacuum.cleaning", "cleaning"),
createEntity("vacuum.paused", "paused"),
createEntity("vacuum.idle", "idle"),
createEntity("vacuum.returning", "returning"),
createEntity("vacuum.error", "error"),
createEntity("vacuum.cleaning", "cleaning"),
createEntity("vacuum.off", "off"),
createEntity("vacuum.on", "on"),
// Update
createEntity("update.off", "off", undefined, {
installed_version: "1.0.0",
latest_version: "2.0.0",
}),
createEntity("update.on", "on", undefined, {
installed_version: "1.0.0",
latest_version: "2.0.0",
}),
createEntity("update.installing", "on", undefined, {
installed_version: "1.0.0",
latest_version: "2.0.0",
in_progress: true,
}),
createEntity("update.off", "off", "firmware", {
installed_version: "1.0.0",
latest_version: "2.0.0",
}),
createEntity("update.on", "on", "firmware", {
installed_version: "1.0.0",
latest_version: "2.0.0",
}),
];
function createEntity(
entity_id: string,
state: string,
device_class?: string,
attributes?: HassEntityAttributeBase | HassEntity["attributes"]
): HassEntity {
return {
entity_id,
state,
attributes: {
...attributes,
device_class: device_class,
},
last_changed: new Date().toString(),
last_updated: new Date().toString(),
context: {
id: "1",
parent_id: null,
user_id: null,
},
};
}
type EntityRowData = {
stateObj: HassEntity;
entity_id: string;
state: string;
device_class?: string;
domain: string;
};
function createRowData(stateObj: HassEntity): EntityRowData {
return {
stateObj,
entity_id: stateObj.entity_id,
state: stateObj.state,
device_class: stateObj.attributes.device_class,
domain: computeDomain(stateObj.entity_id),
};
}
@customElement("demo-misc-entity-state")
export class DemoEntityState extends LitElement {
@property({ attribute: false }) hass?: HomeAssistant;
private _columns = memoizeOne(
(hass: HomeAssistant): DataTableColumnContainer => {
const columns: DataTableColumnContainer<EntityRowData> = {
icon: {
title: "Icon",
template: (_, entry) => html`
<state-badge
.stateObj=${entry.stateObj}
.stateColor=${true}
></state-badge>
`,
},
entity_id: {
title: "Entity ID",
width: "30%",
filterable: true,
sortable: true,
},
state: {
title: "State",
width: "20%",
sortable: true,
template: (_, entry) =>
html`${computeStateDisplay(
hass.localize,
entry.stateObj,
hass.locale,
hass.entities
)}`,
},
device_class: {
title: "Device class",
template: (dc) => html`${dc ?? "-"}`,
width: "20%",
filterable: true,
sortable: true,
},
domain: {
title: "Domain",
template: (_, entry) => html`${computeDomain(entry.entity_id)}`,
width: "20%",
filterable: true,
sortable: true,
},
};
return columns;
}
);
private _rows = memoizeOne((): EntityRowData[] =>
ENTITIES.map(createRowData)
);
protected firstUpdated(changedProps) {
super.firstUpdated(changedProps);
const hass = provideHass(this);
hass.updateTranslations(null, "en");
hass.updateTranslations("config", "en");
}
protected render(): TemplateResult {
if (!this.hass) {
return html``;
}
return html`
<ha-data-table
.hass=${this.hass}
.columns=${this._columns(this.hass)}
.data=${this._rows()}
auto-height
></ha-data-table>
`;
}
static get styles() {
return css`
.color {
display: block;
height: 20px;
width: 20px;
border-radius: 10px;
background-color: rgb(--color);
}
`;
}
}
declare global {
interface HTMLElementTagNameMap {
"demo-misc-entity-state": DemoEntityState;
}
}
+3 -1
View File
@@ -196,6 +196,8 @@ const createEntityRegistryEntries = (
icon: null,
platform: "updater",
has_entity_name: false,
unique_id: "updater",
options: null,
},
];
@@ -282,7 +284,7 @@ export class DemoIntegrationCard extends LitElement {
.deviceRegistryEntries=${createDeviceRegistryEntries(
info.items[0]
)}
?disabled=${info.disabled}
?entryDisabled=${info.disabled}
.selectedConfigEntryId=${info.highlight}
></ha-integration-card>
`
+63 -58
View File
@@ -1,16 +1,7 @@
import { html, LitElement, PropertyValues, TemplateResult } from "lit";
import { customElement, property, query } from "lit/decorators";
import "../../../../src/components/ha-card";
import {
SUPPORT_OPEN,
SUPPORT_STOP,
SUPPORT_CLOSE,
SUPPORT_SET_POSITION,
SUPPORT_OPEN_TILT,
SUPPORT_STOP_TILT,
SUPPORT_CLOSE_TILT,
SUPPORT_SET_TILT_POSITION,
} from "../../../../src/data/cover";
import { CoverEntityFeature } from "../../../../src/data/cover";
import "../../../../src/dialogs/more-info/more-info-content";
import { getEntity } from "../../../../src/fake_data/entity";
import {
@@ -22,113 +13,127 @@ import "../../components/demo-more-infos";
const ENTITIES = [
getEntity("cover", "position_buttons", "on", {
friendly_name: "Position Buttons",
supported_features: SUPPORT_OPEN + SUPPORT_STOP + SUPPORT_CLOSE,
supported_features:
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP +
CoverEntityFeature.CLOSE,
}),
getEntity("cover", "position_slider_half", "on", {
friendly_name: "Position Half-Open",
supported_features:
SUPPORT_OPEN + SUPPORT_STOP + SUPPORT_CLOSE + SUPPORT_SET_POSITION,
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP +
CoverEntityFeature.CLOSE +
CoverEntityFeature.SET_POSITION,
current_position: 50,
}),
getEntity("cover", "position_slider_open", "on", {
friendly_name: "Position Open",
supported_features:
SUPPORT_OPEN + SUPPORT_STOP + SUPPORT_CLOSE + SUPPORT_SET_POSITION,
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP +
CoverEntityFeature.CLOSE +
CoverEntityFeature.SET_POSITION,
current_position: 100,
}),
getEntity("cover", "position_slider_closed", "on", {
friendly_name: "Position Closed",
supported_features:
SUPPORT_OPEN + SUPPORT_STOP + SUPPORT_CLOSE + SUPPORT_SET_POSITION,
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP +
CoverEntityFeature.CLOSE +
CoverEntityFeature.SET_POSITION,
current_position: 0,
}),
getEntity("cover", "tilt_buttons", "on", {
friendly_name: "Tilt Buttons",
supported_features:
SUPPORT_OPEN_TILT + SUPPORT_STOP_TILT + SUPPORT_CLOSE_TILT,
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT,
}),
getEntity("cover", "tilt_slider_half", "on", {
friendly_name: "Tilt Half-Open",
supported_features:
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT +
SUPPORT_SET_TILT_POSITION,
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT +
CoverEntityFeature.SET_TILT_POSITION,
current_tilt_position: 50,
}),
getEntity("cover", "tilt_slider_open", "on", {
friendly_name: "Tilt Open",
supported_features:
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT +
SUPPORT_SET_TILT_POSITION,
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT +
CoverEntityFeature.SET_TILT_POSITION,
current_tilt_position: 100,
}),
getEntity("cover", "tilt_slider_closed", "on", {
friendly_name: "Tilt Closed",
supported_features:
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT +
SUPPORT_SET_TILT_POSITION,
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT +
CoverEntityFeature.SET_TILT_POSITION,
current_tilt_position: 0,
}),
getEntity("cover", "position_slider_tilt_slider", "on", {
friendly_name: "Both Sliders",
supported_features:
SUPPORT_OPEN +
SUPPORT_STOP +
SUPPORT_CLOSE +
SUPPORT_SET_POSITION +
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT +
SUPPORT_SET_TILT_POSITION,
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP +
CoverEntityFeature.CLOSE +
CoverEntityFeature.SET_POSITION +
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT +
CoverEntityFeature.SET_TILT_POSITION,
current_position: 30,
current_tilt_position: 70,
}),
getEntity("cover", "position_tilt_slider", "on", {
friendly_name: "Position & Tilt Slider",
supported_features:
SUPPORT_OPEN +
SUPPORT_STOP +
SUPPORT_CLOSE +
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT +
SUPPORT_SET_TILT_POSITION,
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP +
CoverEntityFeature.CLOSE +
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT +
CoverEntityFeature.SET_TILT_POSITION,
current_tilt_position: 70,
}),
getEntity("cover", "position_slider_tilt", "on", {
friendly_name: "Position Slider & Tilt",
supported_features:
SUPPORT_OPEN +
SUPPORT_STOP +
SUPPORT_CLOSE +
SUPPORT_SET_POSITION +
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT,
CoverEntityFeature.OPEN +
CoverEntityFeature.STOP +
CoverEntityFeature.CLOSE +
CoverEntityFeature.SET_POSITION +
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT,
current_position: 30,
}),
getEntity("cover", "position_slider_only_tilt_slider", "on", {
friendly_name: "Position Slider Only & Tilt Buttons",
supported_features:
SUPPORT_SET_POSITION +
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT,
CoverEntityFeature.SET_POSITION +
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT,
current_position: 30,
}),
getEntity("cover", "position_slider_only_tilt", "on", {
friendly_name: "Position Slider Only & Tilt",
supported_features:
SUPPORT_SET_POSITION +
SUPPORT_OPEN_TILT +
SUPPORT_STOP_TILT +
SUPPORT_CLOSE_TILT +
SUPPORT_SET_TILT_POSITION,
CoverEntityFeature.SET_POSITION +
CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT +
CoverEntityFeature.CLOSE_TILT +
CoverEntityFeature.SET_TILT_POSITION,
current_position: 30,
current_tilt_position: 70,
}),
@@ -0,0 +1,3 @@
---
title: Input Number
---
@@ -0,0 +1,60 @@
import { html, LitElement, PropertyValues, TemplateResult } from "lit";
import { customElement, property, query } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/dialogs/more-info/more-info-content";
import { getEntity } from "../../../../src/fake_data/entity";
import {
MockHomeAssistant,
provideHass,
} from "../../../../src/fake_data/provide_hass";
import "../../components/demo-more-infos";
const ENTITIES = [
getEntity("input_number", "box1", 0, {
friendly_name: "Box1",
min: 0,
max: 100,
step: 1,
initial: 0,
mode: "box",
unit_of_measurement: "items",
}),
getEntity("input_number", "slider1", 0, {
friendly_name: "Slider1",
min: 0,
max: 100,
step: 1,
initial: 0,
mode: "slider",
unit_of_measurement: "items",
}),
];
@customElement("demo-more-info-input-number")
class DemoMoreInfoInputNumber extends LitElement {
@property() public hass!: MockHomeAssistant;
@query("demo-more-infos") private _demoRoot!: HTMLElement;
protected render(): TemplateResult {
return html`
<demo-more-infos
.hass=${this.hass}
.entities=${ENTITIES.map((ent) => ent.entityId)}
></demo-more-infos>
`;
}
protected firstUpdated(changedProperties: PropertyValues) {
super.firstUpdated(changedProperties);
const hass = provideHass(this._demoRoot);
hass.updateTranslations(null, "en");
hass.addEntities(ENTITIES);
}
}
declare global {
interface HTMLElementTagNameMap {
"demo-more-info-input-number": DemoMoreInfoInputNumber;
}
}
+52 -39
View File
@@ -1,12 +1,7 @@
import { html, LitElement, PropertyValues, TemplateResult } from "lit";
import { customElement, property, query } from "lit/decorators";
import "../../../../src/components/ha-card";
import {
LightColorModes,
SUPPORT_EFFECT,
SUPPORT_FLASH,
SUPPORT_TRANSITION,
} from "../../../../src/data/light";
import { LightColorMode, LightEntityFeature } from "../../../../src/data/light";
import "../../../../src/dialogs/more-info/more-info-content";
import { getEntity } from "../../../../src/fake_data/entity";
import {
@@ -22,8 +17,8 @@ const ENTITIES = [
getEntity("light", "kitchen_light", "on", {
friendly_name: "Brightness Light",
brightness: 200,
supported_color_modes: [LightColorModes.BRIGHTNESS],
color_mode: LightColorModes.BRIGHTNESS,
supported_color_modes: [LightColorMode.BRIGHTNESS],
color_mode: LightColorMode.BRIGHTNESS,
}),
getEntity("light", "color_temperature_light", "on", {
friendly_name: "White Color Temperature Light",
@@ -32,10 +27,10 @@ const ENTITIES = [
min_mireds: 30,
max_mireds: 150,
supported_color_modes: [
LightColorModes.BRIGHTNESS,
LightColorModes.COLOR_TEMP,
LightColorMode.BRIGHTNESS,
LightColorMode.COLOR_TEMP,
],
color_mode: LightColorModes.COLOR_TEMP,
color_mode: LightColorMode.COLOR_TEMP,
}),
getEntity("light", "color_hs_light", "on", {
friendly_name: "Color HS Light",
@@ -44,13 +39,16 @@ const ENTITIES = [
rgb_color: [30, 100, 255],
min_mireds: 30,
max_mireds: 150,
supported_features: SUPPORT_EFFECT + SUPPORT_FLASH + SUPPORT_TRANSITION,
supported_features:
LightEntityFeature.EFFECT +
LightEntityFeature.FLASH +
LightEntityFeature.TRANSITION,
supported_color_modes: [
LightColorModes.BRIGHTNESS,
LightColorModes.COLOR_TEMP,
LightColorModes.HS,
LightColorMode.BRIGHTNESS,
LightColorMode.COLOR_TEMP,
LightColorMode.HS,
],
color_mode: LightColorModes.HS,
color_mode: LightColorMode.HS,
effect_list: ["random", "colorloop"],
}),
getEntity("light", "color_rgb_ct_light", "on", {
@@ -59,22 +57,28 @@ const ENTITIES = [
color_temp: 75,
min_mireds: 30,
max_mireds: 150,
supported_features: SUPPORT_EFFECT + SUPPORT_FLASH + SUPPORT_TRANSITION,
supported_features:
LightEntityFeature.EFFECT +
LightEntityFeature.FLASH +
LightEntityFeature.TRANSITION,
supported_color_modes: [
LightColorModes.BRIGHTNESS,
LightColorModes.COLOR_TEMP,
LightColorModes.RGB,
LightColorMode.BRIGHTNESS,
LightColorMode.COLOR_TEMP,
LightColorMode.RGB,
],
color_mode: LightColorModes.COLOR_TEMP,
color_mode: LightColorMode.COLOR_TEMP,
effect_list: ["random", "colorloop"],
}),
getEntity("light", "color_RGB_light", "on", {
friendly_name: "Color Effects Light",
brightness: 255,
rgb_color: [30, 100, 255],
supported_features: SUPPORT_EFFECT + SUPPORT_FLASH + SUPPORT_TRANSITION,
supported_color_modes: [LightColorModes.BRIGHTNESS, LightColorModes.RGB],
color_mode: LightColorModes.RGB,
supported_features:
LightEntityFeature.EFFECT +
LightEntityFeature.FLASH +
LightEntityFeature.TRANSITION,
supported_color_modes: [LightColorMode.BRIGHTNESS, LightColorMode.RGB],
color_mode: LightColorMode.RGB,
effect_list: ["random", "colorloop"],
}),
getEntity("light", "color_rgbw_light", "on", {
@@ -83,13 +87,16 @@ const ENTITIES = [
rgbw_color: [30, 100, 255, 125],
min_mireds: 30,
max_mireds: 150,
supported_features: SUPPORT_EFFECT + SUPPORT_FLASH + SUPPORT_TRANSITION,
supported_features:
LightEntityFeature.EFFECT +
LightEntityFeature.FLASH +
LightEntityFeature.TRANSITION,
supported_color_modes: [
LightColorModes.BRIGHTNESS,
LightColorModes.COLOR_TEMP,
LightColorModes.RGBW,
LightColorMode.BRIGHTNESS,
LightColorMode.COLOR_TEMP,
LightColorMode.RGBW,
],
color_mode: LightColorModes.RGBW,
color_mode: LightColorMode.RGBW,
effect_list: ["random", "colorloop"],
}),
getEntity("light", "color_rgbww_light", "on", {
@@ -98,13 +105,16 @@ const ENTITIES = [
rgbww_color: [30, 100, 255, 125, 10],
min_mireds: 30,
max_mireds: 150,
supported_features: SUPPORT_EFFECT + SUPPORT_FLASH + SUPPORT_TRANSITION,
supported_features:
LightEntityFeature.EFFECT +
LightEntityFeature.FLASH +
LightEntityFeature.TRANSITION,
supported_color_modes: [
LightColorModes.BRIGHTNESS,
LightColorModes.COLOR_TEMP,
LightColorModes.RGBWW,
LightColorMode.BRIGHTNESS,
LightColorMode.COLOR_TEMP,
LightColorMode.RGBWW,
],
color_mode: LightColorModes.RGBWW,
color_mode: LightColorMode.RGBWW,
effect_list: ["random", "colorloop"],
}),
getEntity("light", "color_xy_light", "on", {
@@ -114,13 +124,16 @@ const ENTITIES = [
rgb_color: [30, 100, 255],
min_mireds: 30,
max_mireds: 150,
supported_features: SUPPORT_EFFECT + SUPPORT_FLASH + SUPPORT_TRANSITION,
supported_features:
LightEntityFeature.EFFECT +
LightEntityFeature.FLASH +
LightEntityFeature.TRANSITION,
supported_color_modes: [
LightColorModes.BRIGHTNESS,
LightColorModes.COLOR_TEMP,
LightColorModes.XY,
LightColorMode.BRIGHTNESS,
LightColorMode.COLOR_TEMP,
LightColorMode.XY,
],
color_mode: LightColorModes.XY,
color_mode: LightColorMode.XY,
effect_list: ["random", "colorloop"],
}),
];
+7
View File
@@ -139,6 +139,13 @@ const ENTITIES = [
title: undefined,
friendly_name: "Installing without title",
}),
getEntity("update", "update21", "on", {
...base_attributes,
in_progress: true,
friendly_name: "Update with in_progress true and UPDATE_SUPPORT_PROGRESS",
supported_features:
base_attributes.supported_features + UPDATE_SUPPORT_PROGRESS,
}),
];
@customElement("demo-more-info-update")

Some files were not shown because too many files have changed in this diff Show More