- ${this._plates().map((e) => this._renderPlate(e))}
+ ${this._plates().map((t) => this._renderPlate(t))}
- ${Ne}
+ ${Bt}
${i}
- ${r === null ? e : `${e} · ${r}`}
+ ${a === null ? t : `${t} · ${a}`}
${n}
@@ -1429,179 +1429,913 @@ class Me extends A {
`;
}
}
-customElements.define("nestquest-party-board-card", Me);
-at({
+customElements.define("nestquest-party-board-card", Ot);
+le({
type: "nestquest-party-board-card",
name: "NestQuest Party Board",
description: "Kids' attract screen for present and away adventurers."
});
-const Oe = { CHILD: 2 }, ze = (s) => (...t) => ({ _$litDirective$: s, values: t });
-let Pe = class {
- constructor(t) {
+const Pt = { CHILD: 2 }, It = (s) => (...e) => ({ _$litDirective$: s, values: e });
+let Ht = class {
+ constructor(e) {
}
get _$AU() {
return this._$AM._$AU;
}
- _$AT(t, e, n) {
- this._$Ct = t, this._$AM = e, this._$Ci = n;
+ _$AT(e, t, n) {
+ this._$Ct = e, this._$AM = t, this._$Ci = n;
}
- _$AS(t, e) {
- return this.update(t, e);
+ _$AS(e, t) {
+ return this.update(e, t);
}
- update(t, e) {
- return this.render(...e);
+ update(e, t) {
+ return this.render(...t);
}
};
-const { I: Ie } = le, kt = (s) => s, Ct = () => document.createComment(""), P = (s, t, e) => {
- const n = s._$AA.parentNode, i = t === void 0 ? s._$AB : t._$AA;
- if (e === void 0) {
- const r = n.insertBefore(Ct(), i), o = n.insertBefore(Ct(), i);
- e = new Ie(r, o, s, s.options);
+const { I: jt } = ht, Me = (s) => s, Ae = () => document.createComment(""), B = (s, e, t) => {
+ const n = s._$AA.parentNode, i = e === void 0 ? s._$AB : e._$AA;
+ if (t === void 0) {
+ const a = n.insertBefore(Ae(), i), r = n.insertBefore(Ae(), i);
+ t = new jt(a, r, s, s.options);
} else {
- const r = e._$AB.nextSibling, o = e._$AM, l = o !== s;
+ const a = t._$AB.nextSibling, r = t._$AM, l = r !== s;
if (l) {
- let a;
- e._$AQ?.(s), e._$AM = s, e._$AP !== void 0 && (a = s._$AU) !== o._$AU && e._$AP(a);
+ let o;
+ t._$AQ?.(s), t._$AM = s, t._$AP !== void 0 && (o = s._$AU) !== r._$AU && t._$AP(o);
}
- if (r !== i || l) {
- let a = e._$AA;
- for (; a !== r; ) {
- const p = kt(a).nextSibling;
- kt(n).insertBefore(a, i), a = p;
+ if (a !== i || l) {
+ let o = t._$AA;
+ for (; o !== a; ) {
+ const p = Me(o).nextSibling;
+ Me(n).insertBefore(o, i), o = p;
}
}
}
- return e;
-}, k = (s, t, e = s) => (s._$AI(t, e), s), Le = {}, Ue = (s, t = Le) => s._$AH = t, Re = (s) => s._$AH, X = (s) => {
+ return t;
+}, q = (s, e, t = s) => (s._$AI(e, t), s), Rt = {}, Ut = (s, e = Rt) => s._$AH = e, Dt = (s) => s._$AH, Y = (s) => {
s._$AR(), s._$AA.remove();
};
-const At = (s, t, e) => {
+const Se = (s, e, t) => {
const n = /* @__PURE__ */ new Map();
- for (let i = t; i <= e; i++) n.set(s[i], i);
+ for (let i = e; i <= t; i++) n.set(s[i], i);
return n;
-}, St = ze(class extends Pe {
+}, Te = It(class extends Ht {
constructor(s) {
- if (super(s), s.type !== Oe.CHILD) throw Error("repeat() can only be used in text expressions");
+ if (super(s), s.type !== Pt.CHILD) throw Error("repeat() can only be used in text expressions");
}
- dt(s, t, e) {
+ dt(s, e, t) {
let n;
- e === void 0 ? e = t : t !== void 0 && (n = t);
- const i = [], r = [];
- let o = 0;
- for (const l of s) i[o] = n ? n(l, o) : o, r[o] = e(l, o), o++;
- return { values: r, keys: i };
+ t === void 0 ? t = e : e !== void 0 && (n = e);
+ const i = [], a = [];
+ let r = 0;
+ for (const l of s) i[r] = n ? n(l, r) : r, a[r] = t(l, r), r++;
+ return { values: a, keys: i };
}
- render(s, t, e) {
- return this.dt(s, t, e).values;
+ render(s, e, t) {
+ return this.dt(s, e, t).values;
}
- update(s, [t, e, n]) {
- const i = Re(s), { values: r, keys: o } = this.dt(t, e, n);
- if (!Array.isArray(i)) return this.ut = o, r;
- const l = this.ut ??= [], a = [];
- let p, u, c = 0, f = i.length - 1, h = 0, m = r.length - 1;
+ update(s, [e, t, n]) {
+ const i = Dt(s), { values: a, keys: r } = this.dt(e, t, n);
+ if (!Array.isArray(i)) return this.ut = r, a;
+ const l = this.ut ??= [], o = [];
+ let p, u, c = 0, f = i.length - 1, h = 0, m = a.length - 1;
for (; c <= f && h <= m; ) if (i[c] === null) c++;
else if (i[f] === null) f--;
- else if (l[c] === o[h]) a[h] = k(i[c], r[h]), c++, h++;
- else if (l[f] === o[m]) a[m] = k(i[f], r[m]), f--, m--;
- else if (l[c] === o[m]) a[m] = k(i[c], r[m]), P(s, a[m + 1], i[c]), c++, m--;
- else if (l[f] === o[h]) a[h] = k(i[f], r[h]), P(s, i[c], i[f]), f--, h++;
- else if (p === void 0 && (p = At(o, h, m), u = At(l, c, f)), p.has(l[c])) if (p.has(l[f])) {
- const _ = u.get(o[h]), x = _ !== void 0 ? i[_] : null;
+ else if (l[c] === r[h]) o[h] = q(i[c], a[h]), c++, h++;
+ else if (l[f] === r[m]) o[m] = q(i[f], a[m]), f--, m--;
+ else if (l[c] === r[m]) o[m] = q(i[c], a[m]), B(s, o[m + 1], i[c]), c++, m--;
+ else if (l[f] === r[h]) o[h] = q(i[f], a[h]), B(s, i[c], i[f]), f--, h++;
+ else if (p === void 0 && (p = Se(r, h, m), u = Se(l, c, f)), p.has(l[c])) if (p.has(l[f])) {
+ const _ = u.get(r[h]), x = _ !== void 0 ? i[_] : null;
if (x === null) {
- const j = P(s, i[c]);
- k(j, r[h]), a[h] = j;
- } else a[h] = k(x, r[h]), P(s, i[c], x), i[_] = null;
+ const R = B(s, i[c]);
+ q(R, a[h]), o[h] = R;
+ } else o[h] = q(x, a[h]), B(s, i[c], x), i[_] = null;
h++;
- } else X(i[f]), f--;
- else X(i[c]), c++;
+ } else Y(i[f]), f--;
+ else Y(i[c]), c++;
for (; h <= m; ) {
- const _ = P(s, a[m + 1]);
- k(_, r[h]), a[h++] = _;
+ const _ = B(s, o[m + 1]);
+ q(_, a[h]), o[h++] = _;
}
for (; c <= f; ) {
const _ = i[c++];
- _ !== null && X(_);
+ _ !== null && Y(_);
}
- return this.ut = o, Ue(s, a), T;
+ return this.ut = r, Ut(s, o), S;
}
-}), je = [
+}), Ft = [
+ {
+ kind: "lucide",
+ key: "lucide:bed",
+ name: "bed",
+ label: "Bed",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M2 4v16",
+ "M2 8h18a2 2 0 0 1 2 2v10",
+ "M2 17h20",
+ "M6 8v9"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:bath",
+ name: "bath",
+ label: "Bath",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M10 4 8 6",
+ "M17 19v2",
+ "M2 12h20",
+ "M7 19v2",
+ "M9 5 7.621 3.621A2.121 2.121 0 0 0 4 5v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:shower-head",
+ name: "shower-head",
+ label: "Shower",
+ viewBox: "0 0 24 24",
+ paths: [
+ "m4 4 2.5 2.5",
+ "M13.5 6.5a4.95 4.95 0 0 0-7 7",
+ "M15 5 5 15",
+ "M14 17v.01",
+ "M10 16v.01",
+ "M13 13v.01",
+ "M16 10v.01",
+ "M11 20v.01",
+ "M17 14v.01",
+ "M20 11v.01"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:toilet",
+ name: "toilet",
+ label: "Toilet",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M7 12h13a1 1 0 0 1 1 1 5 5 0 0 1-5 5h-.598a.5.5 0 0 0-.424.765l1.544 2.47a.5.5 0 0 1-.424.765H5.402a.5.5 0 0 1-.424-.765L7 18",
+ "M8 18a5 5 0 0 1-5-5V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v8"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:brush",
+ name: "brush",
+ label: "Brush",
+ viewBox: "0 0 24 24",
+ paths: [
+ "m11 10 3 3",
+ "M6.5 21A3.5 3.5 0 1 0 3 17.5a2.62 2.62 0 0 1-.708 1.792A1 1 0 0 0 3 21z",
+ "M9.969 17.031 21.378 5.624a1 1 0 0 0-3.002-3.002L6.967 14.031"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:smile",
+ name: "smile",
+ label: "Smile",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M15 10V9",
+ "M16.472 15a6 6 0 01-8.943 0",
+ "M9 10V9",
+ "M2 12a10 10 0 1 0 20 0a10 10 0 1 0 -20 0"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:shirt",
+ name: "shirt",
+ label: "Clothes",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M20.38 3.46 16 2a4 4 0 0 1-8 0L3.62 3.46a2 2 0 0 0-1.34 2.23l.58 3.47a1 1 0 0 0 .99.84H6v10c0 1.1.9 2 2 2h8a2 2 0 0 0 2-2V10h2.15a1 1 0 0 0 .99-.84l.58-3.47a2 2 0 0 0-1.34-2.23z"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:washing-machine",
+ name: "washing-machine",
+ label: "Laundry",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M3 6h3",
+ "M17 6h.01",
+ "M5 2h14a2 2 0 0 1 2 2v16a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-16a2 2 0 0 1 2 -2z",
+ "M7 13a5 5 0 1 0 10 0a5 5 0 1 0 -10 0",
+ "M12 18a2.5 2.5 0 0 0 0-5 2.5 2.5 0 0 1 0-5"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:utensils",
+ name: "utensils",
+ label: "Meal",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M3 2v7c0 1.1.9 2 2 2h4a2 2 0 0 0 2-2V2",
+ "M7 2v20",
+ "M21 15V2a5 5 0 0 0-5 5v6c0 1.1.9 2 2 2h3Zm0 0v7"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:cooking-pot",
+ name: "cooking-pot",
+ label: "Cooking",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M2 12h20",
+ "M20 12v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-8",
+ "m4 8 16-4",
+ "m8.86 6.78-.45-1.81a2 2 0 0 1 1.45-2.43l1.94-.48a2 2 0 0 1 2.43 1.46l.45 1.8"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:apple",
+ name: "apple",
+ label: "Snack",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M12 6.528V3a1 1 0 0 1 1-1h0",
+ "M18.237 21A15 15 0 0 0 22 11a6 6 0 0 0-10-4.472A6 6 0 0 0 2 11a15.1 15.1 0 0 0 3.763 10 3 3 0 0 0 3.648.648 5.5 5.5 0 0 1 5.178 0A3 3 0 0 0 18.237 21"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:brush-cleaning",
+ name: "brush-cleaning",
+ label: "Sweep",
+ viewBox: "0 0 24 24",
+ paths: [
+ "m16 22-1-4",
+ "M19 14a1 1 0 0 0 1-1v-1a2 2 0 0 0-2-2h-3a1 1 0 0 1-1-1V4a2 2 0 0 0-4 0v5a1 1 0 0 1-1 1H6a2 2 0 0 0-2 2v1a1 1 0 0 0 1 1",
+ "M19 14H5l-1.973 6.767A1 1 0 0 0 4 22h16a1 1 0 0 0 .973-1.233z",
+ "m8 22 1-4"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:spray-can",
+ name: "spray-can",
+ label: "Clean",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M3 3h.01",
+ "M7 5h.01",
+ "M11 7h.01",
+ "M3 7h.01",
+ "M7 9h.01",
+ "M3 11h.01",
+ "M15 5h4v4h-4z",
+ "m19 9 2 2v10c0 .6-.4 1-1 1h-6c-.6 0-1-.4-1-1V11l2-2",
+ "m13 14 8-2",
+ "m13 19 8-2"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:trash-2",
+ name: "trash-2",
+ label: "Bins",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M10 11v6",
+ "M14 11v6",
+ "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",
+ "M3 6h18",
+ "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:recycle",
+ name: "recycle",
+ label: "Recycling",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M7 19H4.815a1.83 1.83 0 0 1-1.57-.881 1.785 1.785 0 0 1-.004-1.784L7.196 9.5",
+ "M11 19h8.203a1.83 1.83 0 0 0 1.556-.89 1.784 1.784 0 0 0 0-1.775l-1.226-2.12",
+ "m14 16-3 3 3 3",
+ "M8.293 13.596 7.196 9.5 3.1 10.598",
+ "m9.344 5.811 1.093-1.892A1.83 1.83 0 0 1 11.985 3a1.784 1.784 0 0 1 1.546.888l3.943 6.843",
+ "m13.378 9.633 4.096 1.098 1.097-4.096"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:sofa",
+ name: "sofa",
+ label: "Tidy",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M20 9V6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v3",
+ "M2 16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5a2 2 0 0 0-4 0v1.5a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5V11a2 2 0 0 0-4 0z",
+ "M4 18v2",
+ "M20 18v2",
+ "M12 4v9"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:house",
+ name: "house",
+ label: "Home",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",
+ "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:backpack",
+ name: "backpack",
+ label: "School bag",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M4 10a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v10a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2z",
+ "M8 10h8",
+ "M8 18h8",
+ "M8 22v-6a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v6",
+ "M9 6V4a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:book-open",
+ name: "book-open",
+ label: "Reading",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M12 5v16",
+ "M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:pencil",
+ name: "pencil",
+ label: "Homework",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",
+ "m15 5 4 4"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:music",
+ name: "music",
+ label: "Music",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M9 18V5l12-2v13",
+ "M3 18a3 3 0 1 0 6 0a3 3 0 1 0 -6 0",
+ "M15 16a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:dog",
+ name: "dog",
+ label: "Dog",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M11.25 16.25h1.5L12 17z",
+ "M16 14v.5",
+ "M4.42 11.247A13.152 13.152 0 0 0 4 14.556C4 18.728 7.582 21 12 21s8-2.272 8-6.444a11.702 11.702 0 0 0-.493-3.309",
+ "M8 14v.5",
+ "M8.5 8.5c-.384 1.05-1.083 2.028-2.344 2.5-1.931.722-3.576-.297-3.656-1-.113-.994 1.177-6.53 4-7 1.923-.321 3.651.845 3.651 2.235A7.497 7.497 0 0 1 14 5.277c0-1.39 1.844-2.598 3.767-2.277 2.823.47 4.113 6.006 4 7-.08.703-1.725 1.722-3.656 1-1.261-.472-1.855-1.45-2.239-2.5"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:cat",
+ name: "cat",
+ label: "Cat",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M12 5c.67 0 1.35.09 2 .26 1.78-2 5.03-2.84 6.42-2.26 1.4.58-.42 7-.42 7 .57 1.07 1 2.24 1 3.44C21 17.9 16.97 21 12 21s-9-3-9-7.56c0-1.25.5-2.4 1-3.44 0 0-1.89-6.42-.5-7 1.39-.58 4.72.23 6.5 2.23A9.04 9.04 0 0 1 12 5Z",
+ "M8 14v.5",
+ "M16 14v.5",
+ "M11.25 16.25h1.5L12 17l-.75-.75Z"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:fish",
+ name: "fish",
+ label: "Fish",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M6.5 12c.94-3.46 4.94-6 8.5-6 3.56 0 6.06 2.54 7 6-.94 3.47-3.44 6-7 6s-7.56-2.53-8.5-6Z",
+ "M18 12v.5",
+ "M16 17.93a9.77 9.77 0 0 1 0-11.86",
+ "M7 10.67C7 8 5.58 5.97 2.73 5.5c-1 1.5-1 5 .23 6.5-1.24 1.5-1.24 5-.23 6.5C5.58 18.03 7 16 7 13.33",
+ "M10.46 7.26C10.2 5.88 9.17 4.24 8 3h5.8a2 2 0 0 1 1.98 1.67l.23 1.4",
+ "m16.01 17.93-.23 1.4A2 2 0 0 1 13.8 21H9.5a5.96 5.96 0 0 0 1.49-3.98"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:sprout",
+ name: "sprout",
+ label: "Plants",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M14 9.536V7a4 4 0 0 1 4-4h1.5a.5.5 0 0 1 .5.5V5a4 4 0 0 1-4 4 4 4 0 0 0-4 4c0 2 1 3 1 5a5 5 0 0 1-1 3",
+ "M4 9a5 5 0 0 1 8 4 5 5 0 0 1-8-4",
+ "M5 21h14"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:droplets",
+ name: "droplets",
+ label: "Water",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z",
+ "M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:bike",
+ name: "bike",
+ label: "Bike",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M15 17.5a3.5 3.5 0 1 0 7 0a3.5 3.5 0 1 0 -7 0",
+ "M2 17.5a3.5 3.5 0 1 0 7 0a3.5 3.5 0 1 0 -7 0",
+ "M14 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",
+ "M12 17.5V14l-3-3 4-3 2 3h2"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:volleyball",
+ name: "volleyball",
+ label: "Sport",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M11 7a16 16 20 0 1 10.98 4.362",
+ "M12 12a13 13 0 0 1-8.66 5",
+ "M16.83 13.634a16 16 0 0 1-9.267 7.328",
+ "M20.66 17A13 13 0 0 0 12 12a13 13 0 0 1 0-10",
+ "M8.17 15.366a16 16 0 0 1-1.713-11.69",
+ "M2 12a10 10 0 1 0 20 0a10 10 0 1 0 -20 0"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:gamepad-2",
+ name: "gamepad-2",
+ label: "Games",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M6 11L10 11",
+ "M8 9L8 13",
+ "M15 12L15.01 12",
+ "M18 10L18.01 10",
+ "M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:star",
+ name: "star",
+ label: "Star",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:heart",
+ name: "heart",
+ label: "Heart",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:sun",
+ name: "sun",
+ label: "Morning",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M8 12a4 4 0 1 0 8 0a4 4 0 1 0 -8 0",
+ "M12 2v2",
+ "M12 20v2",
+ "m4.93 4.93 1.41 1.41",
+ "m17.66 17.66 1.41 1.41",
+ "M2 12h2",
+ "M20 12h2",
+ "m6.34 17.66-1.41 1.41",
+ "m19.07 4.93-1.41 1.41"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:moon",
+ name: "moon",
+ label: "Bedtime",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:clock",
+ name: "clock",
+ label: "Clock",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M2 12a10 10 0 1 0 20 0a10 10 0 1 0 -20 0",
+ "M12 6v6l4 2"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:calendar",
+ name: "calendar",
+ label: "Calendar",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M8 2v3",
+ "M16 2v3",
+ "M5 3h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2z",
+ "M3 9h18"
+ ]
+ },
+ {
+ kind: "lucide",
+ key: "lucide:list-checks",
+ name: "list-checks",
+ label: "Checklist",
+ viewBox: "0 0 24 24",
+ paths: [
+ "M13 5h8",
+ "M13 12h8",
+ "M13 19h8",
+ "m3 17 2 2 4-4",
+ "m3 7 2 2 4-4"
+ ]
+ }
+], Qt = [
+ {
+ kind: "fa",
+ key: "fa:broom",
+ name: "broom",
+ label: "Sweep",
+ viewBox: "0 0 576 512",
+ paths: [
+ "M566.6 54.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192-34.7-34.7c-4.2-4.2-10-6.6-16-6.6-12.5 0-22.6 10.1-22.6 22.6l0 29.1 108.3 108.3 29.1 0c12.5 0 22.6-10.1 22.6-22.6 0-6-2.4-11.8-6.6-16l-34.7-34.7 192-192zM341.1 353.4L222.6 234.9c-42.7-3.7-85.2 11.7-115.8 42.3l-8 8c-22.3 22.3-34.8 52.5-34.8 84 0 6.8 7.1 11.2 13.2 8.2l51.1-25.5c5-2.5 9.5 4.1 5.4 7.9L7.3 473.4C2.7 477.6 0 483.6 0 489.9 0 502.1 9.9 512 22.1 512l173.3 0c38.8 0 75.9-15.4 103.4-42.8 30.6-30.6 45.9-73.1 42.3-115.8z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:spray-can-sparkles",
+ name: "spray-can-sparkles",
+ label: "Clean",
+ viewBox: "0 0 576 512",
+ paths: [
+ "M160 32l0 80 128 0 0-80c0-17.7-14.3-32-32-32L192 0c-17.7 0-32 14.3-32 32zm0 128c-53 0-96 43-96 96l0 208c0 26.5 21.5 48 48 48l224 0c26.5 0 48-21.5 48-48l0-208c0-53-43-96-96-96l-128 0zm64 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160zM448 48c0-1.4-1-3-2.2-3.6L416 32 403.6 2.2C403 1 401.4 0 400 0s-3 1-3.6 2.2L384 32 354.2 44.4c-1.2 .6-2.2 2.2-2.2 3.6 0 1.4 1 3 2.2 3.6L384 64 396.4 93.8C397 95 398.6 96 400 96s3-1 3.6-2.2L416 64 445.8 51.6C447 51 448 49.4 448 48zm76.4 45.8C525 95 526.6 96 528 96s3-1 3.6-2.2L544 64 573.8 51.6c1.2-.6 2.2-2.2 2.2-3.6 0-1.4-1-3-2.2-3.6L544 32 531.6 2.2C531 1 529.4 0 528 0s-3 1-3.6 2.2L512 32 482.2 44.4c-1.2 .6-2.2 2.2-2.2 3.6 0 1.4 1 3 2.2 3.6L512 64 524.4 93.8zm7.2 100.4c-.6-1.2-2.2-2.2-3.6-2.2s-3 1-3.6 2.2L512 224 482.2 236.4c-1.2 .6-2.2 2.2-2.2 3.6 0 1.4 1 3 2.2 3.6L512 256 524.4 285.8c.6 1.2 2.2 2.2 3.6 2.2s3-1 3.6-2.2L544 256 573.8 243.6c1.2-.6 2.2-2.2 2.2-3.6 0-1.4-1-3-2.2-3.6L544 224 531.6 194.2zM512 144c0-1.4-1-3-2.2-3.6L480 128 467.6 98.2C467 97 465.4 96 464 96s-3 1-3.6 2.2L448 128 418.2 140.4c-1.2 .6-2.2 2.2-2.2 3.6 0 1.4 1 3 2.2 3.6L448 160 460.4 189.8c.6 1.2 2.2 2.2 3.6 2.2s3-1 3.6-2.2L480 160 509.8 147.6c1.2-.6 2.2-2.2 2.2-3.6z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:bucket",
+ name: "bucket",
+ label: "Mop",
+ viewBox: "0 0 448 512",
+ paths: [
+ "M443.7 208c2.7 4.7 4.3 10.2 4.3 16 0 17.7-14.3 32-32 32l-5.1 0-22.4 213c-2.6 24.4-23.2 43-47.8 43l-233.6 0c-24.6 0-45.2-18.5-47.8-43L37.1 256 32 256c-17.7 0-32-14.3-32-32 0-5.8 1.6-11.3 4.3-16l439.4 0zM224-16c79.5 0 144 64.5 144 144l0 32-48 0 0-32c0-53-43-96-96-96s-96 43-96 96l0 32-48 0 0-32C80 48.5 144.5-16 224-16z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:soap",
+ name: "soap",
+ label: "Wash hands",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M208-32a48 48 0 1 1 0 96 48 48 0 1 1 0-96zM320 96a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM352 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM96 160l112 0c0 23.8 7.4 45.9 20.1 64L160 224c-53 0-96 43-96 96s43 96 96 96l192 0c53 0 96-43 96-96 0-35.1-18.9-65.9-47-82.6 19-19.8 30.7-46.6 31-76.1 45.4 7.6 80 47.1 80 94.7l0 128c0 53-43 96-96 96L96 480c-53 0-96-43-96-96L0 256c0-53 43-96 96-96zm64 112l192 0c26.5 0 48 21.5 48 48s-21.5 48-48 48l-192 0c-26.5 0-48-21.5-48-48s21.5-48 48-48z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:sink",
+ name: "sink",
+ label: "Dishes",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M288 96c0-17.7 14.3-32 32-32s32 14.3 32 32 14.3 32 32 32 32-14.3 32-32c0-53-43-96-96-96s-96 43-96 96l0 192-64 0 0-40c0-30.9-25.1-56-56-56l-48 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l48 0c4.4 0 8 3.6 8 8l0 40-80 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l0 64c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-64c17.7 0 32-14.3 32-32s-14.3-32-32-32l-80 0 0-40c0-4.4 3.6-8 8-8l56 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-56 0c-30.9 0-56 25.1-56 56l0 40-64 0 0-192z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:jug-detergent",
+ name: "jug-detergent",
+ label: "Laundry",
+ viewBox: "0 0 384 512",
+ paths: [
+ "M96 24c0-13.3 10.7-24 24-24l80 0c13.3 0 24 10.7 24 24l0 24 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24L88 96C74.7 96 64 85.3 64 72S74.7 48 88 48l8 0 0-24zM0 256c0-70.7 57.3-128 128-128l128 0c70.7 0 128 57.3 128 128l0 192c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 256zm256 0l0 96c0 17.7 14.3 32 32 32s32-14.3 32-32l0-96c0-17.7-14.3-32-32-32s-32 14.3-32 32z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:socks",
+ name: "socks",
+ label: "Socks",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M252.8 0L176 0c-26.5 0-48 21.5-48 48l0 16 112 0 0-16c0-17.5 4.7-33.9 12.8-48zM128 112l0 128c0 20.1-9.5 39.1-25.6 51.2l-64 48c-24.2 18.1-38.4 46.6-38.4 76.8 0 53 43 96 96 96 15.4 0 30.5-3.7 44-10.7-17.6-23.9-28-53.4-28-85.3 0-45.3 21.3-88 57.6-115.2l64-48c4-3 6.4-7.8 6.4-12.8l0-128-112 0zm160 0l0 128c0 20.1-9.5 39.1-25.6 51.2l-64 48c-24.2 18.1-38.4 46.6-38.4 76.8 0 53 43 96 96 96 20.8 0 41-6.7 57.6-19.2l115.2-86.4C461 382.2 480 344.3 480 304l0-192-192 0zM480 64l0-16c0-26.5-21.5-48-48-48L336 0c-26.5 0-48 21.5-48 48l0 16 192 0z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:shirt",
+ name: "shirt",
+ label: "Clothes",
+ viewBox: "0 0 640 512",
+ paths: [
+ "M320.2 112c44.2 0 80-35.8 80-80l53.5 0c17 0 33.3 6.7 45.3 18.7L617.6 169.4c12.5 12.5 12.5 32.8 0 45.3l-50.7 50.7c-12.5 12.5-32.8 12.5-45.3 0l-41.4-41.4 0 224c0 35.3-28.7 64-64 64l-192 0c-35.3 0-64-28.7-64-64l0-224-41.4 41.4c-12.5 12.5-32.8 12.5-45.3 0L22.9 214.6c-12.5-12.5-12.5-32.8 0-45.3L141.5 50.7c12-12 28.3-18.7 45.3-18.7l53.5 0c0 44.2 35.8 80 80 80z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:bed",
+ name: "bed",
+ label: "Bed",
+ viewBox: "0 0 576 512",
+ paths: [
+ "M32 32c17.7 0 32 14.3 32 32l0 224 224 0 0-128c0-17.7 14.3-32 32-32l160 0c53 0 96 43 96 96l0 224c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-64-448 0 0 64c0 17.7-14.3 32-32 32S0 465.7 0 448L0 64C0 46.3 14.3 32 32 32zm80 160a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:couch",
+ name: "couch",
+ label: "Tidy",
+ viewBox: "0 0 640 512",
+ paths: [
+ "M144 272C144 224.7 109.8 185.4 64.8 177.5 72 113.6 126.2 64 192 64l256 0c65.8 0 120 49.6 127.2 113.5-45 8-79.2 47.2-79.2 94.5l0 32-352 0 0-32zM0 384L0 272c0-26.5 21.5-48 48-48s48 21.5 48 48l0 80 448 0 0-80c0-26.5 21.5-48 48-48s48 21.5 48 48l0 112c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:bath",
+ name: "bath",
+ label: "Bath",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M96 77.3c0-7.3 5.9-13.3 13.3-13.3 3.5 0 6.9 1.4 9.4 3.9l14.9 14.9c-3.6 9.1-5.5 18.9-5.5 29.2 0 19.9 7.2 38 19.2 52-5.3 9.2-4 21.1 3.8 29 9.4 9.4 24.6 9.4 33.9 0L289 89c9.4-9.4 9.4-24.6 0-33.9-7.8-7.9-19.8-9.1-29-3.8-14-12-32.1-19.2-52-19.2-10.3 0-20.2 2-29.2 5.5L163.9 22.6C149.4 8.1 129.7 0 109.3 0 66.6 0 32 34.6 32 77.3L32 256c-17.7 0-32 14.3-32 32s14.3 32 32 32l0 48c0 28.4 12.4 54 32 71.6L64 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-16 256 0 0 16c0 17.7 14.3 32 32 32s32-14.3 32-32l0-40.4c19.6-17.6 32-43.1 32-71.6l0-48c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 256 96 77.3z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:tooth",
+ name: "tooth",
+ label: "Teeth",
+ viewBox: "0 0 448 512",
+ paths: [
+ "M145 5.7L224 32 303 5.7C314.3 1.9 326 0 337.9 0 398.7 0 448 49.3 448 110.1l0 68.5c0 29.4-9.5 58.1-27.2 81.6l-1.1 1.5c-12.9 17.2-21.3 37.4-24.3 58.7L373.7 471.9c-3.3 23-23 40.1-46.2 40.1-22.8 0-42.3-16.5-46-39L261.3 351.6c-3-18.2-18.8-31.6-37.3-31.6s-34.2 13.4-37.3 31.6L166.5 473c-3.8 22.5-23.2 39-46 39-23.2 0-42.9-17.1-46.2-40.1L52.6 320.5c-3-21.3-11.4-41.5-24.3-58.7l-1.1-1.5C9.5 236.7 0 208.1 0 178.7l0-68.5C0 49.3 49.3 0 110.1 0 122 0 133.7 1.9 145 5.7z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:utensils",
+ name: "utensils",
+ label: "Meal",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M63.9 14.4C63.1 6.2 56.2 0 48 0s-15.1 6.2-16 14.3L17.9 149.7c-1.3 6-1.9 12.1-1.9 18.2 0 45.9 35.1 83.6 80 87.7L96 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224.4c44.9-4.1 80-41.8 80-87.7 0-6.1-.6-12.2-1.9-18.2L223.9 14.3C223.1 6.2 216.2 0 208 0s-15.1 6.2-15.9 14.4L178.5 149.9c-.6 5.7-5.4 10.1-11.1 10.1-5.8 0-10.6-4.4-11.2-10.2L143.9 14.6C143.2 6.3 136.3 0 128 0s-15.2 6.3-15.9 14.6L99.8 149.8c-.5 5.8-5.4 10.2-11.2 10.2-5.8 0-10.6-4.4-11.1-10.1L63.9 14.4zM448 0C432 0 320 32 320 176l0 112c0 35.3 28.7 64 64 64l32 0 0 128c0 17.7 14.3 32 32 32s32-14.3 32-32l0-448c0-17.7-14.3-32-32-32z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:bowl-food",
+ name: "bowl-food",
+ label: "Set the table",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M0 176c0-35.3 28.7-64 64-64 .5 0 1.1 0 1.6 0 7.4-36.5 39.7-64 78.4-64 15 0 29 4.1 40.9 11.2 13.3-25.7 40.1-43.2 71.1-43.2s57.8 17.6 71.1 43.2c12-7.1 26-11.2 40.9-11.2 38.7 0 71 27.5 78.4 64 .5 0 1.1 0 1.6 0 35.3 0 64 28.7 64 64 0 11.7-3.1 22.6-8.6 32L8.6 208C3.1 198.6 0 187.7 0 176zM0 283.4C0 268.3 12.3 256 27.4 256l457.1 0c15.1 0 27.4 12.3 27.4 27.4 0 70.5-44.4 130.7-106.7 154.1L403.5 452c-2 16-15.6 28-31.8 28l-231.5 0c-16.1 0-29.8-12-31.8-28l-1.8-14.4C44.4 414.1 0 353.9 0 283.4z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:basket-shopping",
+ name: "basket-shopping",
+ label: "Groceries",
+ viewBox: "0 0 576 512",
+ paths: [
+ "M288 0c6.6 0 12.9 2.7 17.4 7.5l144 152 .5 .5 78.1 0c17.7 0 32 14.3 32 32 0 14.5-9.6 26.7-22.8 30.7L491.1 429.9c-6.5 29.3-32.5 50.1-62.5 50.1l-281.3 0c-30 0-56-20.8-62.5-50.1l-46-207.2c-13.2-3.9-22.8-16.2-22.8-30.7 0-17.7 14.3-32 32-32l78.1 0 .5-.5 144-152C275.1 2.7 281.4 0 288 0zm0 58.9L192.2 160 383.8 160 288 58.9zM208 264c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112zm80-24c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm128 24c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:trash-can",
+ name: "trash-can",
+ label: "Bins",
+ viewBox: "0 0 448 512",
+ paths: [
+ "M136.7 5.9C141.1-7.2 153.3-16 167.1-16l113.9 0c13.8 0 26 8.8 30.4 21.9L320 32 416 32c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l96 0 8.7-26.1zM32 144l384 0 0 304c0 35.3-28.7 64-64 64L96 512c-35.3 0-64-28.7-64-64l0-304zm88 64c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:recycle",
+ name: "recycle",
+ label: "Recycling",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M152.3 60C198.5-20 314-20 360.2 60l37.3 64.6 27.7-16c8.4-4.9 18.9-4.2 26.6 1.7s11.1 15.9 8.6 25.3L436.9 223c-3.4 12.8-16.6 20.4-29.4 17l-87.4-23.4c-9.4-2.5-16.3-10.4-17.6-20s3.4-19.1 11.8-23.9l27.7-16-37.3-64.6c-21.6-37.3-75.4-37.3-97 0l-5.3 9.1c-8.8 15.3-28.4 20.5-43.7 11.7S138.2 84.5 147 69.1l5.3-9.1zM449.7 279.1c15.3-8.8 34.9-3.6 43.7 11.7l5.3 9.1c46.2 80-11.5 180-103.9 180l-74.6 0 0 32c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-64-64c-9.4-9.4-9.4-24.6 0-33.9l64-64c6.9-6.9 17.2-8.9 26.2-5.2s14.8 12.5 14.8 22.2l0 32 74.6 0c43.1 0 70.1-46.7 48.5-84l-5.3-9.1c-8.8-15.3-3.6-34.9 11.7-43.7zM51 235.4l-27.7-16c-8.4-4.9-13.1-14.3-11.8-23.9s8.2-17.5 17.6-20L116.5 152c12.8-3.4 26 4.2 29.4 17l23.4 87.4c2.5 9.4-.9 19.3-8.6 25.3s-18.2 6.6-26.6 1.7l-27.7-16-37.3 64.6c-21.6 37.3 5.4 84 48.5 84l10.6 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-10.6 0C25.3 480-32.4 380 13.8 300L51 235.4z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:dog",
+ name: "dog",
+ label: "Dog",
+ viewBox: "0 0 576 512",
+ paths: [
+ "M32 112c16.6 0 30.2 12.6 31.8 28.7l.3 6.6C65.8 163.4 79.4 176 96 176l179.1 0 140.9 60.4 0 243.6c0 17.7-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32l0-131.3C296 361 268.8 368 240 368s-56-7-80-19.3L160 480c0 17.7-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32l0-245.6c-37.3-13.2-64-48.6-64-90.4 0-17.7 14.3-32 32-32zM355.8-32c7.7 0 14.9 3.6 19.6 9.8L392 0 444.1 0c12.7 0 24.9 5.1 33.9 14.1L496 32 552 32c13.3 0 24 10.7 24 24l0 24c0 44.2-35.8 80-80 80l-64 0-7 28-124.7-53.4 31.6-147.2C334.3-23.9 344.2-32 355.8-32zM448 44a20 20 0 1 0 0 40 20 20 0 1 0 0-40z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:cat",
+ name: "cat",
+ label: "Cat",
+ viewBox: "0 0 576 512",
+ paths: [
+ "M64 96c53 0 96 43 96 96l0 85.8c29.7-44.7 77.8-76.2 133.4-84 25.6 60 85.2 102.1 154.6 102.1 10.9 0 21.6-1.1 32-3.1L480 480c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-140.8-136 108.8 56 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-144 0c-53 0-96-43-96-96l0-224c0-16.6-12.6-30.2-28.7-31.8l-6.6-.3C44.6 158.2 32 144.6 32 128 32 110.3 46.3 96 64 96zM533.8 3.2C544.2-5.5 560 1.9 560 15.5L560 128c0 61.9-50.1 112-112 112S336 189.9 336 128l0-112.5c0-13.6 15.8-21 26.2-12.3L416 48 480 48 533.8 3.2zM400 108a20 20 0 1 0 0 40 20 20 0 1 0 0-40zm96 0a20 20 0 1 0 0 40 20 20 0 1 0 0-40z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:paw",
+ name: "paw",
+ label: "Pets",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M234.5 92.9c14.3 42.9-.3 86.2-32.6 96.8s-70.1-15.6-84.4-58.5 .3-86.2 32.6-96.8 70.1 15.6 84.4 58.5zM100.4 198.6c18.9 32.4 14.3 70.1-10.2 84.1s-59.7-.9-78.5-33.3-14.3-70.1 10.2-84.1 59.7 .9 78.5 33.3zM69.2 401.2C121.6 259.9 214.7 224 256 224s134.4 35.9 186.8 177.2c3.6 9.7 5.2 20.1 5.2 30.5l0 1.6c0 25.8-20.9 46.7-46.7 46.7-11.5 0-22.9-1.4-34-4.2l-88-22c-15.3-3.8-31.3-3.8-46.6 0l-88 22c-11.1 2.8-22.5 4.2-34 4.2-25.8 0-46.7-20.9-46.7-46.7l0-1.6c0-10.4 1.6-20.8 5.2-30.5zM421.8 282.7c-24.5-14-29.1-51.7-10.2-84.1s54-47.3 78.5-33.3 29.1 51.7 10.2 84.1-54 47.3-78.5 33.3zM310.1 189.7c-32.3-10.6-46.9-53.9-32.6-96.8s52.1-69.1 84.4-58.5 46.9 53.9 32.6 96.8-52.1 69.1-84.4 58.5z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:seedling",
+ name: "seedling",
+ label: "Plants",
+ viewBox: "0 0 512 512",
+ paths: [
+ "M512 32C512 140.1 435.4 230.3 333.6 251.4 325.7 193.3 299.6 141 261.1 100.5 301.2 40 369.9 0 448 0l32 0c17.7 0 32 14.3 32 32zM0 96C0 78.3 14.3 64 32 64l32 0c123.7 0 224 100.3 224 224l0 192c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-160C100.3 320 0 219.7 0 96z"
+ ]
+ },
+ {
+ kind: "fa",
+ key: "fa:book",
+ name: "book",
+ label: "Reading",
+ viewBox: "0 0 448 512",
+ paths: [
+ "M384 512L96 512c-53 0-96-43-96-96L0 96C0 43 43 0 96 0L400 0c26.5 0 48 21.5 48 48l0 288c0 20.9-13.4 38.7-32 45.3l0 66.7c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0zM96 384c-17.7 0-32 14.3-32 32s14.3 32 32 32l256 0 0-64-256 0zm32-232c0 13.3 10.7 24 24 24l176 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-176 0c-13.3 0-24 10.7-24 24zm24 72c-13.3 0-24 10.7-24 24s10.7 24 24 24l176 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-176 0z"
+ ]
+ }
+], O = { kind: "fallback", key: null }, Vt = 8, ze = new Map(Ft.map((s) => [s.name, s])), Zt = new Map(Qt.map((s) => [s.name, s]));
+function Wt(s) {
+ const e = [...s];
+ return e.length === 0 || e.length > Vt ? !1 : !e.some((t) => new RegExp("[\\s<>&]|\\p{Cc}", "u").test(t));
+}
+function Gt(s) {
+ if (!s || !s.trim()) return O;
+ const e = s.indexOf(":");
+ if (e === -1) return ze.get(s) ?? O;
+ const t = s.slice(0, e), n = s.slice(e + 1);
+ return t === "lucide" ? ze.get(n) ?? O : t === "fa" ? Zt.get(n) ?? O : t === "emoji" && Wt(n) ? { kind: "emoji", key: s, text: n } : O;
+}
+function Ee(s, e) {
+ const t = Gt(s);
+ switch (t.kind) {
+ case "lucide":
+ return d`
`;
+ case "fa":
+ return d`
`;
+ case "emoji":
+ return d`
${t.text}`;
+ case "fallback":
+ return e;
+ }
+}
+const Kt = [
"nestquest_quest_completed",
"nestquest_quest_uncompleted",
"nestquest_quest_missed",
"nestquest_child_day_complete"
-], Tt = /* @__PURE__ */ new Map();
-function M(s, t) {
- const e = `${s ?? "local"}|${JSON.stringify(t)}`, n = Tt.get(e);
+], Ne = /* @__PURE__ */ new Map();
+function E(s, e) {
+ const t = `${s ?? "local"}|${JSON.stringify(e)}`, n = Ne.get(t);
if (n)
return n;
let i;
try {
i = new Intl.DateTimeFormat("en-US", {
- ...t,
+ ...e,
...s ? { timeZone: s } : {}
});
} catch {
- i = new Intl.DateTimeFormat("en-US", t);
+ i = new Intl.DateTimeFormat("en-US", e);
}
- return Tt.set(e, i), i;
+ return Ne.set(t, i), i;
}
-function De(s) {
- const t = s?.config;
- if (!t || typeof t != "object")
+function Jt(s) {
+ const e = s?.config;
+ if (!e || typeof e != "object")
return;
- const e = t.time_zone;
- return typeof e == "string" && e.trim() ? e.trim() : void 0;
+ const t = e.time_zone;
+ return typeof t == "string" && t.trim() ? t.trim() : void 0;
}
-function D(s, t) {
- return `${M(t, { weekday: "long" }).format(s)}, ${M(t, { month: "short", day: "numeric" }).format(s)}`;
+function U(s, e) {
+ return `${E(e, { weekday: "long" }).format(s)}, ${E(e, { month: "short", day: "numeric" }).format(s)}`;
}
-function He(s, t) {
- return M(t, { weekday: "long" }).format(s);
+function Xt(s, e) {
+ return E(e, { weekday: "long" }).format(s);
}
-function Be(s, t) {
- const e = new Date(s);
- return Number.isNaN(e.getTime()) ? "" : M(t, {
+function Yt(s, e) {
+ const t = new Date(s);
+ return Number.isNaN(t.getTime()) ? "" : E(e, {
hour: "numeric",
minute: "2-digit",
hour12: !0
- }).format(e);
+ }).format(t);
}
-function Fe(s, t) {
- return M(t, {
+function en(s, e) {
+ return E(e, {
hour: "numeric",
minute: "2-digit",
hour12: !0
}).format(s);
}
-function Qe(s) {
+function tn(s) {
if (!s)
return null;
- const t = /^(\d{1,2}):(\d{2})$/.exec(s.trim());
- if (!t)
+ const e = /^(\d{1,2}):(\d{2})$/.exec(s.trim());
+ if (!e)
return null;
- const e = Number(t[1]);
- if (e > 23)
+ const t = Number(e[1]);
+ if (t > 23)
return null;
- const n = e >= 12 ? "PM" : "AM";
- return `${e % 12 === 0 ? 12 : e % 12}:${t[2]} ${n}`;
+ const n = t >= 12 ? "PM" : "AM";
+ return `${t % 12 === 0 ? 12 : t % 12}:${e[2]} ${n}`;
}
function w(s) {
return typeof s == "string" ? s.trim() : "";
}
-function y(s, t) {
+function y(s, e) {
if (s == null || s === "")
- return t;
- const e = typeof s == "number" ? s : Number(s);
- return Number.isFinite(e) ? e : t;
+ return e;
+ const t = typeof s == "number" ? s : Number(s);
+ return Number.isFinite(t) ? t : e;
}
function b(s) {
return Math.max(0, Math.round(s));
}
-function Y(s) {
- return s.split(/[-_]+/).filter(Boolean).map((t) => t.charAt(0).toUpperCase() + t.slice(1)).join(" ");
+function ee(s) {
+ return s.split(/[-_]+/).filter(Boolean).map((e) => e.charAt(0).toUpperCase() + e.slice(1)).join(" ");
}
-function We(s, t) {
- const e = M(t, {
+function nn(s, e) {
+ const t = E(e, {
year: "numeric",
month: "2-digit",
day: "2-digit",
@@ -1609,9 +2343,9 @@ function We(s, t) {
minute: "2-digit",
second: "2-digit",
hourCycle: "h23"
- }).formatToParts(new Date(s)), n = (r) => {
- const o = e.find((l) => l.type === r);
- return o ? Number(o.value) : Number.NaN;
+ }).formatToParts(new Date(s)), n = (a) => {
+ const r = t.find((l) => l.type === a);
+ return r ? Number(r.value) : Number.NaN;
}, i = Date.UTC(
n("year"),
n("month") - 1,
@@ -1622,50 +2356,50 @@ function We(s, t) {
);
return Number.isFinite(i) ? i - s : 0;
}
-function Et(s, t) {
+function Le(s, e) {
if (typeof s != "string")
return null;
- const e = s.split("-");
- if (e.length !== 3)
+ const t = s.split("-");
+ if (t.length !== 3)
return null;
- const [n, i, r] = e.map((a) => Number(a));
- if (!n || !i || !r)
+ const [n, i, a] = t.map((o) => Number(o));
+ if (!n || !i || !a)
return null;
- if (!t) {
- const a = new Date(n, i - 1, r);
- return Number.isNaN(a.getTime()) ? null : a;
+ if (!e) {
+ const o = new Date(n, i - 1, a);
+ return Number.isNaN(o.getTime()) ? null : o;
}
- const o = Date.UTC(n, i - 1, r), l = new Date(o - We(o, t));
+ const r = Date.UTC(n, i - 1, a), l = new Date(r - nn(r, e));
return Number.isNaN(l.getTime()) ? null : l;
}
-function Ze() {
+function sn() {
const s = window.location.pathname.split("/").filter(Boolean);
return s.length > 0 ? s[s.length - 1].toLowerCase() : "";
}
-function Ge(s) {
+function an(s) {
if (!s || typeof s != "object")
return null;
- const t = s, e = w(t.state).toLowerCase();
- if (e !== "open" && e !== "completed")
+ const e = s, t = w(e.state).toLowerCase();
+ if (t !== "open" && t !== "completed")
return null;
- const n = y(t.id, 0);
+ const n = y(e.id, 0);
if (!n)
return null;
- const i = y(t.child_id, 0);
+ const i = y(e.child_id, 0);
return {
id: n,
child_id: i > 0 ? i : null,
- title: w(t.title) || "Quest",
- icon: w(t.icon) || null,
- window: w(t.window).toLowerCase(),
- due_time: w(t.due_time) || null,
- state: e,
- overdue: t.overdue === !0,
- completed_at: w(t.completed_at) || null,
- on_time: t.on_time === !0 ? !0 : t.on_time === !1 ? !1 : null
+ title: w(e.title) || "Quest",
+ icon: w(e.icon) || null,
+ window: w(e.window).toLowerCase(),
+ due_time: w(e.due_time) || null,
+ state: t,
+ overdue: e.overdue === !0,
+ completed_at: w(e.completed_at) || null,
+ on_time: e.on_time === !0 ? !0 : e.on_time === !1 ? !1 : null
};
}
-const Ve = {
+const rn = {
"clear-night": "Clear",
cloudy: "Cloudy",
exceptional: "Clear",
@@ -1681,7 +2415,7 @@ const Ve = {
sunny: "Sunny",
windy: "Windy",
"windy-variant": "Windy"
-}, Ke = {
+}, on = {
"clear-night": "Clear night skies",
cloudy: "Grey skies today",
exceptional: "A striking day",
@@ -1698,14 +2432,14 @@ const Ve = {
windy: "A blustery day",
"windy-variant": "A blustery day"
};
-function Je(s) {
- const t = Ve[s];
- return t || s.charAt(0).toUpperCase() + s.slice(1);
+function ln(s) {
+ const e = rn[s];
+ return e || s.charAt(0).toUpperCase() + s.slice(1);
}
-function Xe(s, t) {
- return Ke[s] ?? t;
+function cn(s, e) {
+ return on[s] ?? e;
}
-const Nt = "polygon(0 0, 100% 0, 100% 62%, 50% 100%, 0 62%)", Ye = "polygon(50% 0, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%)", Mt = [-9, 6, -4], tn = Pt`
+const Be = "polygon(0 0, 100% 0, 100% 62%, 50% 100%, 0 62%)", dn = "polygon(50% 0, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%)", Oe = [-9, 6, -4], pn = He`
* {
box-sizing: border-box;
}
@@ -1765,7 +2499,7 @@ const Nt = "polygon(0 0, 100% 0, 100% 62%, 50% 100%, 0 62%)", Ye = "polygon(50%
width: 96px;
height: 110px;
padding: 3px;
- clip-path: ${v(Nt)};
+ clip-path: ${v(Be)};
background: rgba(255, 255, 255, 0.22);
}
@@ -1776,7 +2510,7 @@ const Nt = "polygon(0 0, 100% 0, 100% 62%, 50% 100%, 0 62%)", Ye = "polygon(50%
align-items: center;
justify-content: center;
padding-bottom: 32px;
- clip-path: ${v(Nt)};
+ clip-path: ${v(Be)};
background: var(--nq-p-crest);
}
@@ -1842,7 +2576,7 @@ const Nt = "polygon(0 0, 100% 0, 100% 62%, 50% 100%, 0 62%)", Ye = "polygon(50%
justify-content: center;
width: 44px;
height: 44px;
- clip-path: ${v(Ye)};
+ clip-path: ${v(dn)};
background: var(--nq-brand-gradient);
}
@@ -2000,6 +2734,11 @@ const Nt = "polygon(0 0, 100% 0, 100% 62%, 50% 100%, 0 62%)", Ye = "polygon(50%
height: 34px;
}
+ .tile .emoji {
+ font-size: 30px;
+ line-height: 1;
+ }
+
.sealed .tile {
background: var(--nq-p-icon-tile-done);
color: var(--nq-p-ink-secondary);
@@ -2552,7 +3291,7 @@ const Nt = "polygon(0 0, 100% 0, 100% 62%, 50% 100%, 0 62%)", Ye = "polygon(50%
font-weight: 800;
line-height: 1;
}
-`, H = d`
`, en = d`
@@ -3120,68 +3859,68 @@ class un extends A {
`;
}
- _renderColumn(t) {
- const e = this._instances().filter(
- (l) => l.window === t.key
- ), n = e.filter((l) => l.state === "open").sort(
- (l, a) => (l.due_time ?? "99:99").localeCompare(a.due_time ?? "99:99")
- ), i = e.filter(
+ _renderColumn(e) {
+ const t = this._instances().filter(
+ (l) => l.window === e.key
+ ), n = t.filter((l) => l.state === "open").sort(
+ (l, o) => (l.due_time ?? "99:99").localeCompare(o.due_time ?? "99:99")
+ ), i = t.filter(
(l) => l.state === "completed"
- ), r = e.length;
- let o = g;
- if (r > 0) {
- const a = 644 - (t.key === "afternoon" && this._otherChildren().length > 0 ? 160 : 0), p = Math.min(
+ ), a = t.length;
+ let r = g;
+ if (a > 0) {
+ const o = 644 - (e.key === "afternoon" && this._otherChildren().length > 0 ? 160 : 0), p = Math.min(
24,
- Math.max(8, Math.floor((a - r * 74) / Math.max(r - 1, 1)))
+ Math.max(8, Math.floor((o - a * 74) / Math.max(a - 1, 1)))
), u = Math.min(
116,
- Math.max(58, Math.floor((a - (r - 1) * p) / r))
+ Math.max(58, Math.floor((o - (a - 1) * p) / a))
), c = Math.max(56, Math.min(72, u - 2));
let f = `--nq-p-quest-gap: ${p}px; --nq-p-quest-min-height: ${u}px; --nq-p-button-height: ${c}px`;
- if (r >= 5) {
+ if (a >= 5) {
const h = Math.max(0, Math.min(22, Math.floor((u - c - 2) / 2))), m = Math.max(44, Math.min(64, u - 2 * h - 2));
f += `; --nq-p-quest-pad: ${h}px; --nq-p-tile-size: ${m}px`;
}
- o = f;
+ r = f;
}
return d`