Compare commits
6 Commits
cf83825ad2
...
0c66b13e61
Author | SHA1 | Date |
---|---|---|
chpego | 0c66b13e61 | |
semantic-release-bot | 2562b84360 | |
semantic-release-bot | 605b096509 | |
Jérôme Wiedemann | ab2b3939bc | |
semantic-release-bot | 27877b9f68 | |
Jérôme Wiedemann | 56c3f44066 |
22
CHANGELOG.md
22
CHANGELOG.md
|
@ -1,3 +1,25 @@
|
|||
### [4.1.2](https://github.com/custom-cards/button-card/compare/v4.1.1...v4.1.2) (2024-02-01)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* card would sometimes not be clickable ([56c3f44](https://github.com/custom-cards/button-card/commit/56c3f44066c6bd08fb8a7d8bb8fa679920dc5992)), closes [#738](https://github.com/custom-cards/button-card/issues/738) [#759](https://github.com/custom-cards/button-card/issues/759)
|
||||
* support for new ha-state-icon in 2024.02 ([ab2b393](https://github.com/custom-cards/button-card/commit/ab2b3939bcce504125853d2ca9312d32f9a3f6d6))
|
||||
|
||||
### [4.1.2-dev.2](https://github.com/custom-cards/button-card/compare/v4.1.2-dev.1...v4.1.2-dev.2) (2024-02-01)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* support for new ha-state-icon in 2024.02 ([ab2b393](https://github.com/custom-cards/button-card/commit/ab2b3939bcce504125853d2ca9312d32f9a3f6d6))
|
||||
|
||||
### [4.1.2-dev.1](https://github.com/custom-cards/button-card/compare/v4.1.1...v4.1.2-dev.1) (2023-08-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* card would sometimes not be clickable ([56c3f44](https://github.com/custom-cards/button-card/commit/56c3f44066c6bd08fb8a7d8bb8fa679920dc5992)), closes [#738](https://github.com/custom-cards/button-card/issues/738) [#759](https://github.com/custom-cards/button-card/issues/759)
|
||||
|
||||
### [4.1.1](https://github.com/custom-cards/button-card/compare/v4.1.0...v4.1.1) (2023-08-03)
|
||||
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "button-card",
|
||||
"version": "4.1.1",
|
||||
"version": "4.1.2",
|
||||
"description": "Button card for lovelace",
|
||||
"main": "dist/button-card.js",
|
||||
"scripts": {
|
||||
|
|
|
@ -20,6 +20,7 @@ import {
|
|||
ButtonCardEmbeddedCards,
|
||||
ButtonCardEmbeddedCardsConfig,
|
||||
ColorType,
|
||||
CustomFields,
|
||||
} from './types/types';
|
||||
import { actionHandler } from './action-handler';
|
||||
import {
|
||||
|
@ -868,38 +869,26 @@ class ButtonCard extends LitElement {
|
|||
return result;
|
||||
}
|
||||
|
||||
private _hasChildCards(customFields: CustomFields | undefined): boolean {
|
||||
if (!customFields) return false;
|
||||
return Object.keys(customFields).some((key) => {
|
||||
const value = customFields![key];
|
||||
if ((value as CustomFieldCard)!.card) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
private _isClickable(state: HassEntity | undefined, configState: StateConfig | undefined): boolean {
|
||||
let clickable = true;
|
||||
const tap_action = this._getTemplateOrValue(state, this._config!.tap_action!.action);
|
||||
const hold_action = this._getTemplateOrValue(state, this._config!.hold_action!.action);
|
||||
const double_tap_action = this._getTemplateOrValue(state, this._config!.double_tap_action!.action);
|
||||
let hasChildCards = false;
|
||||
if (this._config!.custom_fields) {
|
||||
hasChildCards = Object.keys(this._config!.custom_fields).some((key) => {
|
||||
const value = this._config!.custom_fields![key];
|
||||
if ((value as CustomFieldCard)!.card) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
if (!hasChildCards && configState) {
|
||||
if (configState.custom_fields) {
|
||||
return (hasChildCards = Object.keys(configState.custom_fields).some((key) => {
|
||||
const value = configState.custom_fields![key];
|
||||
if ((value as CustomFieldCard)!.card) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}));
|
||||
}
|
||||
}
|
||||
if (tap_action != 'none' || hold_action != 'none' || double_tap_action != 'none' || hasChildCards) {
|
||||
clickable = true;
|
||||
} else {
|
||||
clickable = false;
|
||||
}
|
||||
return clickable;
|
||||
const hasChildCards =
|
||||
this._hasChildCards(this._config!.custom_fields) ||
|
||||
!!(configState && this._hasChildCards(configState.custom_fields));
|
||||
|
||||
return tap_action != 'none' || hold_action != 'none' || double_tap_action != 'none' || hasChildCards;
|
||||
}
|
||||
|
||||
private _rotate(configState: StateConfig | undefined): boolean {
|
||||
|
@ -1165,6 +1154,8 @@ class ButtonCard extends LitElement {
|
|||
? html`
|
||||
<ha-state-icon
|
||||
.state=${state}
|
||||
.stateObj=${state}
|
||||
.hass=${this._hass}
|
||||
?data-domain=${domain}
|
||||
data-state=${ifDefined(state?.state)}
|
||||
style=${styleMap(haIconStyle)}
|
||||
|
|
Loading…
Reference in New Issue