@camstack/addon-provider-homeassistant 1.2.30 → 1.2.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/addon.js +1 -1
- package/dist/addon.mjs +1 -1
- package/dist/{dist-CzZXxFrl.mjs → dist-BMrkrIHs.mjs} +451 -23
- package/dist/{dist-XWveotlj.js → dist-BxZFHIBC.js} +451 -23
- package/dist/ha-export/ha-export.addon.js +15 -6
- package/dist/ha-export/ha-export.addon.mjs +15 -6
- package/package.json +1 -1
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
//#endregion
|
|
6
|
-
const require_dist = require("../dist-
|
|
6
|
+
const require_dist = require("../dist-BxZFHIBC.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
//#region src/ha-export/topics.ts
|
|
9
9
|
/**
|
|
@@ -5517,7 +5517,7 @@ var HaExportAddon = class extends require_dist.BaseAddon {
|
|
|
5517
5517
|
const plateText = readString(data, "plateText");
|
|
5518
5518
|
const lastSeen = readNumber(data, "lastSeen") ?? Date.now();
|
|
5519
5519
|
const zonesVisited = readStringArray(data, "zonesVisited");
|
|
5520
|
-
const mediaUrl = this.mintTrackMediaUrl(trackId);
|
|
5520
|
+
const mediaUrl = this.mintTrackMediaUrl(trackId, deviceId);
|
|
5521
5521
|
const values = projectTrackLifecycle(deviceKey, {
|
|
5522
5522
|
deviceId,
|
|
5523
5523
|
trackId,
|
|
@@ -6580,10 +6580,10 @@ var HaExportAddon = class extends require_dist.BaseAddon {
|
|
|
6580
6580
|
res.end();
|
|
6581
6581
|
return;
|
|
6582
6582
|
}
|
|
6583
|
-
const
|
|
6583
|
+
const compositeId = decodeURIComponent(id);
|
|
6584
6584
|
if (!verifyMediaSignature({
|
|
6585
6585
|
secret: this.mediaSecret,
|
|
6586
|
-
id:
|
|
6586
|
+
id: compositeId,
|
|
6587
6587
|
exp: url.searchParams.get("exp") ?? void 0,
|
|
6588
6588
|
sig: url.searchParams.get("sig") ?? void 0,
|
|
6589
6589
|
nowMs: Date.now()
|
|
@@ -6592,9 +6592,18 @@ var HaExportAddon = class extends require_dist.BaseAddon {
|
|
|
6592
6592
|
res.end();
|
|
6593
6593
|
return;
|
|
6594
6594
|
}
|
|
6595
|
+
const sep = compositeId.indexOf(":");
|
|
6596
|
+
const deviceId = sep > 0 ? Number(compositeId.slice(0, sep)) : NaN;
|
|
6597
|
+
const trackId = sep > 0 ? compositeId.slice(sep + 1) : "";
|
|
6598
|
+
if (!Number.isInteger(deviceId) || deviceId <= 0 || trackId.length === 0) {
|
|
6599
|
+
res.statusCode = 400;
|
|
6600
|
+
res.end();
|
|
6601
|
+
return;
|
|
6602
|
+
}
|
|
6595
6603
|
try {
|
|
6596
6604
|
const first = (await this.ctx.api.pipelineAnalytics.getTrackMedia.query({
|
|
6597
6605
|
trackId,
|
|
6606
|
+
deviceId,
|
|
6598
6607
|
kinds: [
|
|
6599
6608
|
"thumbnailSmall",
|
|
6600
6609
|
"thumbnail",
|
|
@@ -6627,12 +6636,12 @@ var HaExportAddon = class extends require_dist.BaseAddon {
|
|
|
6627
6636
|
* cannot open is worse than no image, because it renders as a broken
|
|
6628
6637
|
* entity rather than an empty one.
|
|
6629
6638
|
*/
|
|
6630
|
-
mintTrackMediaUrl(trackId) {
|
|
6639
|
+
mintTrackMediaUrl(trackId, deviceId) {
|
|
6631
6640
|
if (this.mediaBaseUrl === null || this.mediaSecret.length === 0) return null;
|
|
6632
6641
|
return buildMediaUrl({
|
|
6633
6642
|
baseUrl: this.mediaBaseUrl,
|
|
6634
6643
|
routePrefix: MEDIA_ROUTE_PREFIX,
|
|
6635
|
-
id: trackId
|
|
6644
|
+
id: `${String(deviceId)}:${trackId}`,
|
|
6636
6645
|
secret: this.mediaSecret,
|
|
6637
6646
|
expMs: Date.now() + MEDIA_URL_TTL_MS
|
|
6638
6647
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { M as deviceExportCapability, Ot as EventCategory, S as buildAddonRouteProvider, Y as oauthIntegrationCapability, a as CameraSwitchIdSchema, c as HvacModeSchema, f as addonRoutesCapability, ft as BaseAddon, i as COCO_TO_MACRO, l as MediaPlayerRepeatSchema, s as FanDirectionSchema, t as AlarmArmModeSchema, wt as string } from "../dist-
|
|
1
|
+
import { M as deviceExportCapability, Ot as EventCategory, S as buildAddonRouteProvider, Y as oauthIntegrationCapability, a as CameraSwitchIdSchema, c as HvacModeSchema, f as addonRoutesCapability, ft as BaseAddon, i as COCO_TO_MACRO, l as MediaPlayerRepeatSchema, s as FanDirectionSchema, t as AlarmArmModeSchema, wt as string } from "../dist-BMrkrIHs.mjs";
|
|
2
2
|
import { createHmac, timingSafeEqual } from "node:crypto";
|
|
3
3
|
//#region src/ha-export/topics.ts
|
|
4
4
|
/**
|
|
@@ -5512,7 +5512,7 @@ var HaExportAddon = class extends BaseAddon {
|
|
|
5512
5512
|
const plateText = readString(data, "plateText");
|
|
5513
5513
|
const lastSeen = readNumber(data, "lastSeen") ?? Date.now();
|
|
5514
5514
|
const zonesVisited = readStringArray(data, "zonesVisited");
|
|
5515
|
-
const mediaUrl = this.mintTrackMediaUrl(trackId);
|
|
5515
|
+
const mediaUrl = this.mintTrackMediaUrl(trackId, deviceId);
|
|
5516
5516
|
const values = projectTrackLifecycle(deviceKey, {
|
|
5517
5517
|
deviceId,
|
|
5518
5518
|
trackId,
|
|
@@ -6575,10 +6575,10 @@ var HaExportAddon = class extends BaseAddon {
|
|
|
6575
6575
|
res.end();
|
|
6576
6576
|
return;
|
|
6577
6577
|
}
|
|
6578
|
-
const
|
|
6578
|
+
const compositeId = decodeURIComponent(id);
|
|
6579
6579
|
if (!verifyMediaSignature({
|
|
6580
6580
|
secret: this.mediaSecret,
|
|
6581
|
-
id:
|
|
6581
|
+
id: compositeId,
|
|
6582
6582
|
exp: url.searchParams.get("exp") ?? void 0,
|
|
6583
6583
|
sig: url.searchParams.get("sig") ?? void 0,
|
|
6584
6584
|
nowMs: Date.now()
|
|
@@ -6587,9 +6587,18 @@ var HaExportAddon = class extends BaseAddon {
|
|
|
6587
6587
|
res.end();
|
|
6588
6588
|
return;
|
|
6589
6589
|
}
|
|
6590
|
+
const sep = compositeId.indexOf(":");
|
|
6591
|
+
const deviceId = sep > 0 ? Number(compositeId.slice(0, sep)) : NaN;
|
|
6592
|
+
const trackId = sep > 0 ? compositeId.slice(sep + 1) : "";
|
|
6593
|
+
if (!Number.isInteger(deviceId) || deviceId <= 0 || trackId.length === 0) {
|
|
6594
|
+
res.statusCode = 400;
|
|
6595
|
+
res.end();
|
|
6596
|
+
return;
|
|
6597
|
+
}
|
|
6590
6598
|
try {
|
|
6591
6599
|
const first = (await this.ctx.api.pipelineAnalytics.getTrackMedia.query({
|
|
6592
6600
|
trackId,
|
|
6601
|
+
deviceId,
|
|
6593
6602
|
kinds: [
|
|
6594
6603
|
"thumbnailSmall",
|
|
6595
6604
|
"thumbnail",
|
|
@@ -6622,12 +6631,12 @@ var HaExportAddon = class extends BaseAddon {
|
|
|
6622
6631
|
* cannot open is worse than no image, because it renders as a broken
|
|
6623
6632
|
* entity rather than an empty one.
|
|
6624
6633
|
*/
|
|
6625
|
-
mintTrackMediaUrl(trackId) {
|
|
6634
|
+
mintTrackMediaUrl(trackId, deviceId) {
|
|
6626
6635
|
if (this.mediaBaseUrl === null || this.mediaSecret.length === 0) return null;
|
|
6627
6636
|
return buildMediaUrl({
|
|
6628
6637
|
baseUrl: this.mediaBaseUrl,
|
|
6629
6638
|
routePrefix: MEDIA_ROUTE_PREFIX,
|
|
6630
|
-
id: trackId
|
|
6639
|
+
id: `${String(deviceId)}:${trackId}`,
|
|
6631
6640
|
secret: this.mediaSecret,
|
|
6632
6641
|
expMs: Date.now() + MEDIA_URL_TTL_MS
|
|
6633
6642
|
});
|