Skip to content

Commit 24ba544

Browse files
authored
Merge pull request #700 from SveLil/main
feat: Added option to sort individual devices by power usage and have…
2 parents 00602b5 + 7573393 commit 24ba544

31 files changed

+139
-154
lines changed

src/components/flows/batteryGrid.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ export const flowBatteryGrid = (config: PowerFlowCardPlusConfig, { battery, grid
1313
return grid.has && battery.has && showLine(config, Math.max(grid.state.toBattery || 0, battery.state.toGrid || 0))
1414
? html`<div
1515
class="lines ${classMap({
16-
high: battery.has || checkHasBottomIndividual(config, individual),
16+
high: battery.has || checkHasBottomIndividual(individual),
1717
"individual1-individual2": !battery.has && individual.every((i) => i?.has),
18-
"multi-individual": checkHasRightIndividual(config, individual),
18+
"multi-individual": checkHasRightIndividual(individual),
1919
})}"
2020
>
2121
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" id="battery-grid-flow">

src/components/flows/batteryToHome.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ export const flowBatteryToHome = (config: PowerFlowCardPlusConfig, { battery, gr
1313
return battery.has && showLine(config, battery.state.toHome) && !config.entities.home?.hide
1414
? html`<div
1515
class="lines ${classMap({
16-
high: battery.has || checkHasBottomIndividual(config, individual),
16+
high: battery.has || checkHasBottomIndividual(individual),
1717
"individual1-individual2": !battery.has && individual.every((i) => i?.has),
18-
"multi-individual": checkHasRightIndividual(config, individual),
18+
"multi-individual": checkHasRightIndividual(individual),
1919
})}"
2020
>
2121
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" id="battery-home-flow">

src/components/flows/gridToHome.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ export const flowGridToHome = (config: PowerFlowCardPlusConfig, { battery, grid,
1111
return grid.has && showLine(config, grid.state.fromGrid) && !config.entities.home?.hide
1212
? html`<div
1313
class="lines ${classMap({
14-
high: battery.has || checkHasBottomIndividual(config, individual),
14+
high: battery.has || checkHasBottomIndividual(individual),
1515
"individual1-individual2": !battery.has && individual.every((i) => i?.has),
16-
"multi-individual": checkHasRightIndividual(config, individual),
16+
"multi-individual": checkHasRightIndividual(individual),
1717
})}"
1818
>
1919
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" id="grid-home-flow" class="flat-line">

src/components/flows/solarToBattery.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ export const flowSolarToBattery = (config: PowerFlowCardPlusConfig, { battery, i
1313
return battery.has && solar.has && showLine(config, solar.state.toBattery || 0)
1414
? html`<div
1515
class="lines ${classMap({
16-
high: battery.has || checkHasBottomIndividual(config, individual),
16+
high: battery.has || checkHasBottomIndividual(individual),
1717
"individual1-individual2": !battery.has && individual.every((i) => i?.has),
18-
"multi-individual": checkHasRightIndividual(config, individual),
18+
"multi-individual": checkHasRightIndividual(individual),
1919
})}"
2020
>
2121
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" id="solar-battery-flow" class="flat-line">

src/components/flows/solarToGrid.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ export const flowSolarToGrid = (config: PowerFlowCardPlusConfig, { battery, grid
1111
return grid.hasReturnToGrid && solar.has && showLine(config, solar.state.toGrid || 0)
1212
? html`<div
1313
class="lines ${classMap({
14-
high: battery.has || checkHasBottomIndividual(config, individual),
14+
high: battery.has || checkHasBottomIndividual(individual),
1515
"individual1-individual2": !battery.has && individual.every((i) => i?.has),
16-
"multi-individual": checkHasRightIndividual(config, individual),
16+
"multi-individual": checkHasRightIndividual(individual),
1717
})}"
1818
>
1919
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" id="solar-grid-flow">

src/components/flows/solarToHome.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ export const flowSolarToHome = (config: PowerFlowCardPlusConfig, { battery, grid
1111
return solar.has && showLine(config, solar.state.toHome || 0) && !config.entities.home?.hide
1212
? html`<div
1313
class="lines ${classMap({
14-
high: battery.has || checkHasBottomIndividual(config, individual),
14+
high: battery.has || checkHasBottomIndividual(individual),
1515
"individual1-individual2": !battery.has && individual.every((i) => i?.has),
16-
"multi-individual": checkHasRightIndividual(config, individual),
16+
"multi-individual": checkHasRightIndividual(individual),
1717
})}"
1818
>
1919
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" id="solar-home-flow">

src/components/individualLeftBottomElement.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
import { html, svg } from "lit";
2-
import { showLine } from "../utils/showLine";
32
import { PowerFlowCardPlus } from "../power-flow-card-plus";
43
import { PowerFlowCardPlusConfig } from "../power-flow-card-plus-config";
5-
import { NewDur, TemplatesObj } from "../type";
64
import { IndividualObject } from "../states/raw/individual/getIndividualObject";
5+
import { NewDur, TemplatesObj } from "../type";
6+
import { checkShouldShowDots } from "../utils/checkShouldShowDots";
7+
import { computeIndividualFlowRate } from "../utils/computeFlowRate";
8+
import { showLine } from "../utils/showLine";
79
import { styleLine } from "../utils/styleLine";
810
import { individualSecondarySpan } from "./spans/individualSecondarySpan";
9-
import { HomeAssistant } from "custom-card-helpers";
10-
import { computeIndividualFlowRate } from "../utils/computeFlowRate";
11-
import { checkShouldShowDots } from "../utils/checkShouldShowDots";
1211

1312
interface IndividualBottom {
1413
newDur: NewDur;
@@ -19,7 +18,6 @@ interface IndividualBottom {
1918

2019
export const individualLeftBottomElement = (
2120
main: PowerFlowCardPlus,
22-
hass: HomeAssistant,
2321
config: PowerFlowCardPlusConfig,
2422
{ individualObj, templatesObj, displayState, newDur }: IndividualBottom
2523
) => {
@@ -62,7 +60,7 @@ export const individualLeftBottomElement = (
6260
}
6361
}}
6462
>
65-
${individualSecondarySpan(hass, main, config, templatesObj, individualObj, indexOfIndividual, "left-bottom")}
63+
${individualSecondarySpan(main.hass, main, config, templatesObj, individualObj, indexOfIndividual, "left-bottom")}
6664
${individualObj?.icon !== " " ? html` <ha-icon id="individual-left-bottom-icon" .icon=${individualObj?.icon} />` : null}
6765
${individualObj?.field?.display_zero_state !== false || (individualObj?.state || 0) > (individualObj.displayZeroTolerance ?? 0)
6866
? html` <span class="individual-bottom individual-left-bottom"

src/components/individualRightBottomElement.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export const individualRightBottomElement = (
3131

3232
const duration = newDur.individual[indexOfIndividual] || 1.66;
3333

34-
const hasBottomRow = !!battery?.has || checkHasBottomIndividual(config, individualObjs);
34+
const hasBottomRow = !!battery?.has || checkHasBottomIndividual(individualObjs);
3535

3636
return html`<div class="circle-container individual-bottom individual-right individual-right-bottom">
3737
<div

src/components/individualRightTopElement.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export const individualRightTopElement = (
3131

3232
const duration = newDur.individual[indexOfIndividual] || 1.66;
3333

34-
const hasBottomRow = !!battery?.has || checkHasBottomIndividual(config, individualObjs);
34+
const hasBottomRow = !!battery?.has || checkHasBottomIndividual(individualObjs);
3535

3636
return html`<div class="circle-container individual-top individual-right individual-right-top">
3737
<span class="label">${individualObj.name}</span>

src/localize/languages/cs.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@
7474
"transparency": "Průhlednost",
7575
"grey_color": "Šedá barva",
7676
"tap_action": "Akce po klepnutí",
77-
"navigation_path": "Navigační cesta"
77+
"navigation_path": "Navigační cesta",
78+
"sort_individual_devices": "Seřaďte individuálně"
7879
}
7980
}

0 commit comments

Comments
 (0)