- ${rn}
+ ${nn}
${t.name} is on travels
${e.map((n) => d`
${n}
`)}
@@ -2888,8 +2856,8 @@ class un extends A {
const n = this._childName(t) ?? Y(t);
if (!this._childPresent(t))
return { kind: "away", name: n, returns: this._awayReturns(t) };
- const i = this._state(`binary_sensor.nestquest_${t}_all_done`);
- if (i && String(i.state ?? "").trim().toLowerCase() === "on")
+ const s = this._state(`binary_sensor.nestquest_${t}_all_done`);
+ if (s && String(s.state ?? "").trim().toLowerCase() === "on")
return { kind: "complete-day", name: n };
const r = this._state(`sensor.nestquest_${t}_quests_due_today`);
return b(y(r?.state, 0)) === 0 ? { kind: "empty-day", name: n } : this._remaining() === 0 ? { kind: "complete-day", name: n } : { kind: "normal" };
@@ -2909,19 +2877,19 @@ class un extends A {
const n = this._state(`sensor.nestquest_${t}_quests_due_today`)?.attributes?.present;
if (typeof n == "boolean")
return n;
- const i = this._state(
+ const s = this._state(
`binary_sensor.nestquest_${t}_present_today`
);
- return i ? String(i.state ?? "").trim().toLowerCase() === "on" : !0;
+ return s ? String(s.state ?? "").trim().toLowerCase() === "on" : !0;
}
_awayReturns(t) {
const e = this._timeZone(), n = this._state(
`binary_sensor.nestquest_${t}_present_today`
- ), i = Nt(
+ ), s = Nt(
n?.attributes?.next_present,
e
);
- return i ? H(i, e) : null;
+ return s ? H(s, e) : null;
}
_renderNotice(t) {
return d`
@@ -2935,14 +2903,14 @@ class un extends A {
`;
}
_timeZone() {
- return He(this.hass);
+ return De(this.hass);
}
_state(t) {
const n = this.hass?.states?.[t];
return n && typeof n == "object" ? n : null;
}
_childSlug() {
- return Ze();
+ return Qe();
}
_boardPath() {
return $(this._config?.board_path).replace(/\/+$/, "");
@@ -2968,8 +2936,8 @@ class un extends A {
_childCounts(t) {
const e = this._state(`sensor.nestquest_${t}_quests_due_today`), n = this._state(
`sensor.nestquest_${t}_quests_completed_today`
- ), i = b(y(e?.state, 0)), r = b(y(n?.state, 0));
- return { due: i, completed: r };
+ ), s = b(y(e?.state, 0)), r = b(y(n?.state, 0));
+ return { due: s, completed: r };
}
_instances() {
const t = this._childSlug();
@@ -2978,21 +2946,21 @@ class un extends A {
const e = this._state(`sensor.nestquest_${t}_quests_due_today`)?.attributes?.instances;
if (!Array.isArray(e))
return [];
- const n = e.map(Ve).filter((r) => r !== null);
+ const n = e.map(We).filter((r) => r !== null);
if (this._optimistic.size === 0)
return n;
- let i = !1;
+ let s = !1;
for (const r of n) {
const o = this._optimistic.get(r.id);
if (o !== void 0) {
if (r.state === "completed") {
- this._optimistic.delete(r.id), i = !0;
+ this._optimistic.delete(r.id), s = !0;
continue;
}
r.state = "completed", r.overdue = !1, r.completed_at = o;
}
}
- return i && (this._optimistic = new Map(this._optimistic)), n;
+ return s && (this._optimistic = new Map(this._optimistic)), n;
}
_remaining() {
const t = this._childSlug();
@@ -3003,8 +2971,8 @@ class un extends A {
);
if (e)
return b(y(e.state, 0));
- const { due: n, completed: i } = this._childCounts(t);
- return b(n - i);
+ const { due: n, completed: s } = this._childCounts(t);
+ return b(n - s);
}
_partyCounts() {
const t = this._state(
@@ -3017,29 +2985,29 @@ class un extends A {
completed: b(y(e?.state, 0)),
due: b(y(t?.state, 0))
};
- const n = this._childSlug(), { due: i, completed: r } = this._childCounts(n);
- return { completed: r, due: i };
+ const n = this._childSlug(), { due: s, completed: r } = this._childCounts(n);
+ return { completed: r, due: s };
}
_completeStats() {
const t = this._childCounts(this._childSlug()).completed, e = this._instances().filter(
(r) => r.on_time === !0
- ).length, n = b(t - e), i = this._partyCounts();
+ ).length, n = b(t - e), s = this._partyCounts();
return {
claimed: t,
onTime: e,
late: n,
- party: `${i.completed}/${i.due}`
+ party: `${s.completed}/${s.due}`
};
}
_completeSub(t) {
- const e = H(this._now, this._timeZone()), { claimed: n, onTime: i, late: r } = this._completeStats();
- return n === 0 ? `${t} sealed the day on ${e}.` : r === 0 ? `${t} claimed every quest on ${e} — all on time.` : i === 0 ? `${t} claimed every quest on ${e} — all late.` : `${t} claimed every quest on ${e} — ${i} on time, ${r} late.`;
+ const e = H(this._now, this._timeZone()), { claimed: n, onTime: s, late: r } = this._completeStats();
+ return n === 0 ? `${t} sealed the day on ${e}.` : r === 0 ? `${t} claimed every quest on ${e} — all on time.` : s === 0 ? `${t} claimed every quest on ${e} — all late.` : `${t} claimed every quest on ${e} — ${s} on time, ${r} late.`;
}
_otherChildren() {
const t = this.hass?.states;
if (!t)
return [];
- const e = this._childSlug(), n = this._timeZone(), i = [];
+ const e = this._childSlug(), n = this._timeZone(), s = [];
for (const r of Object.keys(t)) {
const o = /^sensor\.nestquest_(.+)_quests_due_today$/.exec(r);
if (!o || o[1] === "household" || o[1] === e)
@@ -3067,9 +3035,9 @@ class un extends A {
_?.attributes?.next_present,
n
);
- m = x ? Re(x, n) : null;
+ m = x ? je(x, n) : null;
}
- i.push({
+ s.push({
slug: l,
name: p,
present: u,
@@ -3078,10 +3046,10 @@ class un extends A {
returnsWeekday: m
});
}
- return i.sort((r, o) => r.name.localeCompare(o.name));
+ return s.sort((r, o) => r.name.localeCompare(o.name));
}
_renderHeader(t) {
- const e = this._childSlug(), n = t.kind === "away", i = n ? t.name : this._childName(e) ?? (e ? Y(e) : null), { due: r, completed: o } = this._childCounts(e), l = this._remaining(), a = this._partyCounts(), p = i ? `${i}'s Quest Log` : "Quest Log", u = (i?.charAt(0) || "?").toUpperCase();
+ const e = this._childSlug(), n = t.kind === "away", s = n ? t.name : this._childName(e) ?? (e ? Y(e) : null), { due: r, completed: o } = this._childCounts(e), l = this._remaining(), a = this._partyCounts(), p = s ? `${s}'s Quest Log` : "Quest Log", u = (s?.charAt(0) || "?").toUpperCase();
return d`
-