camstack 1.2.26 → 1.2.27
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.
|
@@ -14522,7 +14522,7 @@ function date4(params) {
|
|
|
14522
14522
|
// ../../node_modules/zod/v4/classic/external.js
|
|
14523
14523
|
config(en_default());
|
|
14524
14524
|
|
|
14525
|
-
// ../types/dist/sleep-
|
|
14525
|
+
// ../types/dist/sleep-BxO5xNe6.mjs
|
|
14526
14526
|
var WELL_KNOWN_TABS = [
|
|
14527
14527
|
{
|
|
14528
14528
|
id: "overview",
|
|
@@ -27729,6 +27729,39 @@ var snapshotCapability = {
|
|
|
27729
27729
|
etag: external_exports.string().nullable()
|
|
27730
27730
|
}))),
|
|
27731
27731
|
/**
|
|
27732
|
+
* The full decision chain for ONE device, for the viewer's debug readout —
|
|
27733
|
+
* the answer to "why does this tile show what it shows" in a single poll:
|
|
27734
|
+
* the battery slice the state was derived from, the resolved state + its
|
|
27735
|
+
* reason, the cached frame's identity/age, whether a wake window is open,
|
|
27736
|
+
* and whether a fresh capture is in flight. Cache-only and capture-free:
|
|
27737
|
+
* a debug read must never wake a battery camera.
|
|
27738
|
+
*/
|
|
27739
|
+
getDebugState: systemMethod(external_exports.object({ deviceId: external_exports.number() }), external_exports.object({
|
|
27740
|
+
/** The battery slice as read, or null when the device has none. */
|
|
27741
|
+
battery: external_exports.object({
|
|
27742
|
+
sleeping: external_exports.boolean(),
|
|
27743
|
+
lastUpdated: external_exports.number(),
|
|
27744
|
+
lastContactAt: external_exports.number().optional()
|
|
27745
|
+
}).nullable(),
|
|
27746
|
+
/** The resolved snapshot state (what the overlay decision used). */
|
|
27747
|
+
state: external_exports.object({
|
|
27748
|
+
isBattery: external_exports.boolean(),
|
|
27749
|
+
reason: external_exports.enum([
|
|
27750
|
+
"disabled",
|
|
27751
|
+
"sleeping",
|
|
27752
|
+
"unreachable",
|
|
27753
|
+
"waking"
|
|
27754
|
+
]).nullable()
|
|
27755
|
+
}),
|
|
27756
|
+
/** The cached frame behind the next paint. */
|
|
27757
|
+
frame: external_exports.object({
|
|
27758
|
+
capturedAt: external_exports.number().nullable(),
|
|
27759
|
+
ageMs: external_exports.number().nullable()
|
|
27760
|
+
}),
|
|
27761
|
+
/** A wake window is currently open (the Waking overlay's source). */
|
|
27762
|
+
waking: external_exports.boolean()
|
|
27763
|
+
})),
|
|
27764
|
+
/**
|
|
27732
27765
|
* Signed, expiring links to a CLIENT-SIZED frame — and the demand signal
|
|
27733
27766
|
* that makes those frames current.
|
|
27734
27767
|
*
|
|
@@ -40814,6 +40847,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
40814
40847
|
addonId: null,
|
|
40815
40848
|
access: "view"
|
|
40816
40849
|
},
|
|
40850
|
+
"snapshot.getDebugState": {
|
|
40851
|
+
capName: "snapshot",
|
|
40852
|
+
capScope: "device",
|
|
40853
|
+
addonId: null,
|
|
40854
|
+
access: "view"
|
|
40855
|
+
},
|
|
40817
40856
|
"snapshot.getSnapshot": {
|
|
40818
40857
|
capName: "snapshot",
|
|
40819
40858
|
capScope: "device",
|
|
@@ -43411,6 +43450,11 @@ var METHOD_DEVICE_SELECTORS = Object.freeze({
|
|
|
43411
43450
|
form: "single",
|
|
43412
43451
|
optional: false
|
|
43413
43452
|
}],
|
|
43453
|
+
"snapshot.getDebugState": [{
|
|
43454
|
+
name: "deviceId",
|
|
43455
|
+
form: "single",
|
|
43456
|
+
optional: false
|
|
43457
|
+
}],
|
|
43414
43458
|
"snapshot.getSnapshot": [{
|
|
43415
43459
|
name: "deviceId",
|
|
43416
43460
|
form: "single",
|
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
runDiscover
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-NQDB3IYC.js";
|
|
5
5
|
import "./chunk-LMMQX4CK.js";
|
|
6
6
|
|
|
7
7
|
// src/cli.ts
|
|
@@ -38,7 +38,7 @@ async function runServe(args) {
|
|
|
38
38
|
...typeof values.data === "string" ? { data: values.data } : {}
|
|
39
39
|
};
|
|
40
40
|
Object.assign(process.env, buildServeEnv(opts));
|
|
41
|
-
await import("./launcher-
|
|
41
|
+
await import("./launcher-35MVUU7V.js");
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
// src/commands/agent.ts
|
|
@@ -83,7 +83,7 @@ async function runAgent(args) {
|
|
|
83
83
|
...typeof values.port === "string" ? { port: values.port } : {}
|
|
84
84
|
};
|
|
85
85
|
Object.assign(process.env, buildAgentEnv(opts));
|
|
86
|
-
await import("./launcher-
|
|
86
|
+
await import("./launcher-35MVUU7V.js");
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
// src/commands/setup.ts
|
|
@@ -1130,7 +1130,7 @@ function isUnknown(_value) {
|
|
|
1130
1130
|
return true;
|
|
1131
1131
|
}
|
|
1132
1132
|
async function resolveServerInteractive(presetNamespace) {
|
|
1133
|
-
const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-
|
|
1133
|
+
const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-P6EGD2V7.js");
|
|
1134
1134
|
if (presetNamespace) {
|
|
1135
1135
|
const spinner4 = clack.spinner();
|
|
1136
1136
|
spinner4.start(`Discovering hub on LAN (namespace "${presetNamespace}")`);
|
|
@@ -23631,9 +23631,9 @@ var require_zod = __commonJS({
|
|
|
23631
23631
|
}
|
|
23632
23632
|
});
|
|
23633
23633
|
|
|
23634
|
-
// ../system/dist/dist-
|
|
23635
|
-
var
|
|
23636
|
-
"../system/dist/dist-
|
|
23634
|
+
// ../system/dist/dist-Dz8RQmdk.js
|
|
23635
|
+
var require_dist_Dz8RQmdk = __commonJS({
|
|
23636
|
+
"../system/dist/dist-Dz8RQmdk.js"(exports) {
|
|
23637
23637
|
"use strict";
|
|
23638
23638
|
var zod = require_zod();
|
|
23639
23639
|
var EventCategory = /* @__PURE__ */ (function(EventCategory2) {
|
|
@@ -38011,6 +38011,39 @@ var require_dist_uhKRdmyc = __commonJS({
|
|
|
38011
38011
|
etag: zod.z.string().nullable()
|
|
38012
38012
|
}))),
|
|
38013
38013
|
/**
|
|
38014
|
+
* The full decision chain for ONE device, for the viewer's debug readout —
|
|
38015
|
+
* the answer to "why does this tile show what it shows" in a single poll:
|
|
38016
|
+
* the battery slice the state was derived from, the resolved state + its
|
|
38017
|
+
* reason, the cached frame's identity/age, whether a wake window is open,
|
|
38018
|
+
* and whether a fresh capture is in flight. Cache-only and capture-free:
|
|
38019
|
+
* a debug read must never wake a battery camera.
|
|
38020
|
+
*/
|
|
38021
|
+
getDebugState: systemMethod(zod.z.object({ deviceId: zod.z.number() }), zod.z.object({
|
|
38022
|
+
/** The battery slice as read, or null when the device has none. */
|
|
38023
|
+
battery: zod.z.object({
|
|
38024
|
+
sleeping: zod.z.boolean(),
|
|
38025
|
+
lastUpdated: zod.z.number(),
|
|
38026
|
+
lastContactAt: zod.z.number().optional()
|
|
38027
|
+
}).nullable(),
|
|
38028
|
+
/** The resolved snapshot state (what the overlay decision used). */
|
|
38029
|
+
state: zod.z.object({
|
|
38030
|
+
isBattery: zod.z.boolean(),
|
|
38031
|
+
reason: zod.z.enum([
|
|
38032
|
+
"disabled",
|
|
38033
|
+
"sleeping",
|
|
38034
|
+
"unreachable",
|
|
38035
|
+
"waking"
|
|
38036
|
+
]).nullable()
|
|
38037
|
+
}),
|
|
38038
|
+
/** The cached frame behind the next paint. */
|
|
38039
|
+
frame: zod.z.object({
|
|
38040
|
+
capturedAt: zod.z.number().nullable(),
|
|
38041
|
+
ageMs: zod.z.number().nullable()
|
|
38042
|
+
}),
|
|
38043
|
+
/** A wake window is currently open (the Waking overlay's source). */
|
|
38044
|
+
waking: zod.z.boolean()
|
|
38045
|
+
})),
|
|
38046
|
+
/**
|
|
38014
38047
|
* Signed, expiring links to a CLIENT-SIZED frame — and the demand signal
|
|
38015
38048
|
* that makes those frames current.
|
|
38016
38049
|
*
|
|
@@ -51787,6 +51820,12 @@ var require_dist_uhKRdmyc = __commonJS({
|
|
|
51787
51820
|
addonId: null,
|
|
51788
51821
|
access: "view"
|
|
51789
51822
|
},
|
|
51823
|
+
"snapshot.getDebugState": {
|
|
51824
|
+
capName: "snapshot",
|
|
51825
|
+
capScope: "device",
|
|
51826
|
+
addonId: null,
|
|
51827
|
+
access: "view"
|
|
51828
|
+
},
|
|
51790
51829
|
"snapshot.getSnapshot": {
|
|
51791
51830
|
capName: "snapshot",
|
|
51792
51831
|
capScope: "device",
|
|
@@ -54384,6 +54423,11 @@ var require_dist_uhKRdmyc = __commonJS({
|
|
|
54384
54423
|
form: "single",
|
|
54385
54424
|
optional: false
|
|
54386
54425
|
}],
|
|
54426
|
+
"snapshot.getDebugState": [{
|
|
54427
|
+
name: "deviceId",
|
|
54428
|
+
form: "single",
|
|
54429
|
+
optional: false
|
|
54430
|
+
}],
|
|
54387
54431
|
"snapshot.getSnapshot": [{
|
|
54388
54432
|
name: "deviceId",
|
|
54389
54433
|
form: "single",
|
|
@@ -55862,7 +55906,7 @@ var require_alerts_addon = __commonJS({
|
|
|
55862
55906
|
[Symbol.toStringTag]: { value: "Module" }
|
|
55863
55907
|
});
|
|
55864
55908
|
require_chunk_Cek0wNdY();
|
|
55865
|
-
var require_dist10 =
|
|
55909
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
55866
55910
|
function selectExpired(alerts, cutoffMs) {
|
|
55867
55911
|
return alerts.filter((a) => a.createdAt < cutoffMs).sort((a, b) => a.createdAt - b.createdAt).map((a) => a.id);
|
|
55868
55912
|
}
|
|
@@ -56675,7 +56719,7 @@ var require_console_logging = __commonJS({
|
|
|
56675
56719
|
[Symbol.toStringTag]: { value: "Module" }
|
|
56676
56720
|
});
|
|
56677
56721
|
require_chunk_Cek0wNdY();
|
|
56678
|
-
var require_dist10 =
|
|
56722
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
56679
56723
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
56680
56724
|
var LEVEL_RANK = {
|
|
56681
56725
|
debug: 0,
|
|
@@ -56769,7 +56813,7 @@ var require_core_blocks_addon = __commonJS({
|
|
|
56769
56813
|
"use strict";
|
|
56770
56814
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
56771
56815
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
56772
|
-
var require_dist10 =
|
|
56816
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
56773
56817
|
var node_crypto = __require("crypto");
|
|
56774
56818
|
var node_fs_promises = __require("fs/promises");
|
|
56775
56819
|
node_fs_promises = require_chunk.__toESM(node_fs_promises);
|
|
@@ -59489,7 +59533,7 @@ var require_device_manager_addon = __commonJS({
|
|
|
59489
59533
|
[Symbol.toStringTag]: { value: "Module" }
|
|
59490
59534
|
});
|
|
59491
59535
|
require_chunk_Cek0wNdY();
|
|
59492
|
-
var require_dist10 =
|
|
59536
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
59493
59537
|
var node_crypto = __require("crypto");
|
|
59494
59538
|
var _camstack_types_node = require_node();
|
|
59495
59539
|
var JOB_HISTORY = 20;
|
|
@@ -63477,7 +63521,7 @@ var require_hub_forwarder = __commonJS({
|
|
|
63477
63521
|
[Symbol.toStringTag]: { value: "Module" }
|
|
63478
63522
|
});
|
|
63479
63523
|
require_chunk_Cek0wNdY();
|
|
63480
|
-
var require_dist10 =
|
|
63524
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
63481
63525
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
63482
63526
|
var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
|
|
63483
63527
|
var HubForwarderDestination = class {
|
|
@@ -63614,7 +63658,7 @@ var require_liveness_monitor_addon = __commonJS({
|
|
|
63614
63658
|
"use strict";
|
|
63615
63659
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
63616
63660
|
require_chunk_Cek0wNdY();
|
|
63617
|
-
var require_dist10 =
|
|
63661
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
63618
63662
|
var NO_DEVICES = "liveness:no-devices";
|
|
63619
63663
|
var ALL_OFFLINE = "liveness:all-devices-offline";
|
|
63620
63664
|
var NO_FOOTAGE_PREFIX = "liveness:no-footage:";
|
|
@@ -63804,7 +63848,7 @@ var require_local_auth_addon = __commonJS({
|
|
|
63804
63848
|
[Symbol.toStringTag]: { value: "Module" }
|
|
63805
63849
|
});
|
|
63806
63850
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
63807
|
-
var require_dist10 =
|
|
63851
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
63808
63852
|
var node_crypto = __require("crypto");
|
|
63809
63853
|
node_crypto = require_chunk.__toESM(node_crypto);
|
|
63810
63854
|
var crypto$1 = __require("crypto");
|
|
@@ -71488,7 +71532,7 @@ var require_loki_logging = __commonJS({
|
|
|
71488
71532
|
[Symbol.toStringTag]: { value: "Module" }
|
|
71489
71533
|
});
|
|
71490
71534
|
require_chunk_Cek0wNdY();
|
|
71491
|
-
var require_dist10 =
|
|
71535
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
71492
71536
|
function sanitizeLabelName(raw) {
|
|
71493
71537
|
const replaced = raw.replaceAll(/[^a-zA-Z0-9_]/g, "_");
|
|
71494
71538
|
return /^[a-zA-Z_]/.test(replaced) ? replaced : `_${replaced}`;
|
|
@@ -72053,7 +72097,7 @@ var require_native_metrics_addon = __commonJS({
|
|
|
72053
72097
|
[Symbol.toStringTag]: { value: "Module" }
|
|
72054
72098
|
});
|
|
72055
72099
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
72056
|
-
var require_dist10 =
|
|
72100
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
72057
72101
|
var node_child_process = __require("child_process");
|
|
72058
72102
|
var node_util = __require("util");
|
|
72059
72103
|
var node_os = __require("os");
|
|
@@ -72995,7 +73039,7 @@ var require_filesystem_storage_addon = __commonJS({
|
|
|
72995
73039
|
[Symbol.toStringTag]: { value: "Module" }
|
|
72996
73040
|
});
|
|
72997
73041
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
72998
|
-
var require_dist10 =
|
|
73042
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
72999
73043
|
var node_crypto = __require("crypto");
|
|
73000
73044
|
var node_fs_promises = __require("fs/promises");
|
|
73001
73045
|
var node_path = __require("path");
|
|
@@ -74111,7 +74155,7 @@ var require_sqlite_settings_addon = __commonJS({
|
|
|
74111
74155
|
[Symbol.toStringTag]: { value: "Module" }
|
|
74112
74156
|
});
|
|
74113
74157
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
74114
|
-
var require_dist10 =
|
|
74158
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
74115
74159
|
var node_crypto = __require("crypto");
|
|
74116
74160
|
var node_fs = __require("fs");
|
|
74117
74161
|
var node_module = __require("module");
|
|
@@ -75679,7 +75723,7 @@ var require_storage_orchestrator_addon = __commonJS({
|
|
|
75679
75723
|
[Symbol.toStringTag]: { value: "Module" }
|
|
75680
75724
|
});
|
|
75681
75725
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
75682
|
-
var require_dist10 =
|
|
75726
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
75683
75727
|
var node_crypto = __require("crypto");
|
|
75684
75728
|
var node_fs_promises = __require("fs/promises");
|
|
75685
75729
|
node_fs_promises = require_chunk.__toESM(node_fs_promises);
|
|
@@ -77558,7 +77602,7 @@ var require_system_config_addon = __commonJS({
|
|
|
77558
77602
|
[Symbol.toStringTag]: { value: "Module" }
|
|
77559
77603
|
});
|
|
77560
77604
|
require_chunk_Cek0wNdY();
|
|
77561
|
-
var require_dist10 =
|
|
77605
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
77562
77606
|
var SECTION_TITLES = {
|
|
77563
77607
|
server: "Server",
|
|
77564
77608
|
auth: "Authentication"
|
|
@@ -95619,7 +95663,7 @@ var require_winston_logging = __commonJS({
|
|
|
95619
95663
|
[Symbol.toStringTag]: { value: "Module" }
|
|
95620
95664
|
});
|
|
95621
95665
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
95622
|
-
var require_dist10 =
|
|
95666
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
95623
95667
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
95624
95668
|
var node_path = __require("path");
|
|
95625
95669
|
node_path = require_chunk.__toESM(node_path);
|
|
@@ -96772,9 +96816,9 @@ var require_event_category_D3gG7oil = __commonJS({
|
|
|
96772
96816
|
}
|
|
96773
96817
|
});
|
|
96774
96818
|
|
|
96775
|
-
// ../types/dist/sleep-
|
|
96776
|
-
var
|
|
96777
|
-
"../types/dist/sleep-
|
|
96819
|
+
// ../types/dist/sleep-EYtyUX0L.js
|
|
96820
|
+
var require_sleep_EYtyUX0L = __commonJS({
|
|
96821
|
+
"../types/dist/sleep-EYtyUX0L.js"(exports) {
|
|
96778
96822
|
"use strict";
|
|
96779
96823
|
var require_event_category = require_event_category_D3gG7oil();
|
|
96780
96824
|
var zod = require_zod();
|
|
@@ -99334,6 +99378,7 @@ var require_sleep_CoL_9qhR = __commonJS({
|
|
|
99334
99378
|
getSnapshot: (input) => dispatch("snapshot", "snapshot", "getSnapshot", "query", input),
|
|
99335
99379
|
invalidateCache: (input) => dispatch("snapshot", "snapshot", "invalidateCache", "mutation", input),
|
|
99336
99380
|
getSnapshotOverview: (input) => dispatch("snapshot", "snapshot", "getSnapshotOverview", "query", input),
|
|
99381
|
+
getDebugState: (input) => dispatch("snapshot", "snapshot", "getDebugState", "query", input),
|
|
99337
99382
|
getSnapshotLinks: (input) => dispatch("snapshot", "snapshot", "getSnapshotLinks", "query", input),
|
|
99338
99383
|
getStatus: (input) => dispatch("snapshot", "snapshot", "getStatus", "query", input),
|
|
99339
99384
|
getDeviceSettingsContribution: (input) => dispatch("snapshot", "snapshot", "getDeviceSettingsContribution", "query", input),
|
|
@@ -100215,7 +100260,7 @@ var require_addon = __commonJS({
|
|
|
100215
100260
|
"use strict";
|
|
100216
100261
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
100217
100262
|
var require_event_category = require_event_category_D3gG7oil();
|
|
100218
|
-
var require_sleep =
|
|
100263
|
+
var require_sleep = require_sleep_EYtyUX0L();
|
|
100219
100264
|
var require_err_msg = require_err_msg_COpsHMw2();
|
|
100220
100265
|
var CAP_INPUT_DEFAULTS = Object.freeze({
|
|
100221
100266
|
"addons": { "getLogs": { "limit": 100 } },
|
|
@@ -107089,9 +107134,9 @@ var require_dist2 = __commonJS({
|
|
|
107089
107134
|
}
|
|
107090
107135
|
});
|
|
107091
107136
|
|
|
107092
|
-
// ../system/dist/manifest-python-deps-
|
|
107093
|
-
var
|
|
107094
|
-
"../system/dist/manifest-python-deps-
|
|
107137
|
+
// ../system/dist/manifest-python-deps-BtVjvfvj.js
|
|
107138
|
+
var require_manifest_python_deps_BtVjvfvj = __commonJS({
|
|
107139
|
+
"../system/dist/manifest-python-deps-BtVjvfvj.js"(exports) {
|
|
107095
107140
|
"use strict";
|
|
107096
107141
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
107097
107142
|
var node_crypto = __require("crypto");
|
|
@@ -108223,7 +108268,7 @@ var require_manifest_python_deps_BZO_eMn = __commonJS({
|
|
|
108223
108268
|
id,
|
|
108224
108269
|
stableId,
|
|
108225
108270
|
addonId,
|
|
108226
|
-
type: _camstack_types_addon.DeviceType.
|
|
108271
|
+
type: _camstack_types_addon.DeviceType.Generic,
|
|
108227
108272
|
name: stableId,
|
|
108228
108273
|
location: null,
|
|
108229
108274
|
disabled: false,
|
|
@@ -117672,7 +117717,7 @@ var require_dist3 = __commonJS({
|
|
|
117672
117717
|
"use strict";
|
|
117673
117718
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
117674
117719
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
117675
|
-
var require_dist10 =
|
|
117720
|
+
var require_dist10 = require_dist_Dz8RQmdk();
|
|
117676
117721
|
var require_builtins_alerts_alerts_addon = require_alerts_addon();
|
|
117677
117722
|
require_alerts();
|
|
117678
117723
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
@@ -117697,7 +117742,7 @@ var require_dist3 = __commonJS({
|
|
|
117697
117742
|
require_system_config();
|
|
117698
117743
|
var require_builtins_winston_logging_index = require_winston_logging();
|
|
117699
117744
|
var require_file_data_plane = require_file_data_plane_DUHPHa_Y();
|
|
117700
|
-
var require_manifest_python_deps =
|
|
117745
|
+
var require_manifest_python_deps = require_manifest_python_deps_BtVjvfvj();
|
|
117701
117746
|
var require_resource_monitor = require_resource_monitor_CdnzxBLP();
|
|
117702
117747
|
var require_custom_action_registry = require_custom_action_registry_jY0NOZK8();
|
|
117703
117748
|
var zod = require_zod();
|
|
@@ -237004,7 +237049,7 @@ var require_dist9 = __commonJS({
|
|
|
237004
237049
|
"use strict";
|
|
237005
237050
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
237006
237051
|
var require_event_category = require_event_category_D3gG7oil();
|
|
237007
|
-
var require_sleep =
|
|
237052
|
+
var require_sleep = require_sleep_EYtyUX0L();
|
|
237008
237053
|
var require_canonical_hash = require_canonical_hash_DNV8S5ET();
|
|
237009
237054
|
var require_enums2 = require_enums();
|
|
237010
237055
|
var require_err_msg = require_err_msg_COpsHMw2();
|
|
@@ -252079,6 +252124,39 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
252079
252124
|
etag: zod.z.string().nullable()
|
|
252080
252125
|
}))),
|
|
252081
252126
|
/**
|
|
252127
|
+
* The full decision chain for ONE device, for the viewer's debug readout —
|
|
252128
|
+
* the answer to "why does this tile show what it shows" in a single poll:
|
|
252129
|
+
* the battery slice the state was derived from, the resolved state + its
|
|
252130
|
+
* reason, the cached frame's identity/age, whether a wake window is open,
|
|
252131
|
+
* and whether a fresh capture is in flight. Cache-only and capture-free:
|
|
252132
|
+
* a debug read must never wake a battery camera.
|
|
252133
|
+
*/
|
|
252134
|
+
getDebugState: require_sleep.systemMethod(zod.z.object({ deviceId: zod.z.number() }), zod.z.object({
|
|
252135
|
+
/** The battery slice as read, or null when the device has none. */
|
|
252136
|
+
battery: zod.z.object({
|
|
252137
|
+
sleeping: zod.z.boolean(),
|
|
252138
|
+
lastUpdated: zod.z.number(),
|
|
252139
|
+
lastContactAt: zod.z.number().optional()
|
|
252140
|
+
}).nullable(),
|
|
252141
|
+
/** The resolved snapshot state (what the overlay decision used). */
|
|
252142
|
+
state: zod.z.object({
|
|
252143
|
+
isBattery: zod.z.boolean(),
|
|
252144
|
+
reason: zod.z.enum([
|
|
252145
|
+
"disabled",
|
|
252146
|
+
"sleeping",
|
|
252147
|
+
"unreachable",
|
|
252148
|
+
"waking"
|
|
252149
|
+
]).nullable()
|
|
252150
|
+
}),
|
|
252151
|
+
/** The cached frame behind the next paint. */
|
|
252152
|
+
frame: zod.z.object({
|
|
252153
|
+
capturedAt: zod.z.number().nullable(),
|
|
252154
|
+
ageMs: zod.z.number().nullable()
|
|
252155
|
+
}),
|
|
252156
|
+
/** A wake window is currently open (the Waking overlay's source). */
|
|
252157
|
+
waking: zod.z.boolean()
|
|
252158
|
+
})),
|
|
252159
|
+
/**
|
|
252082
252160
|
* Signed, expiring links to a CLIENT-SIZED frame — and the demand signal
|
|
252083
252161
|
* that makes those frames current.
|
|
252084
252162
|
*
|
|
@@ -268771,6 +268849,12 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
268771
268849
|
addonId: null,
|
|
268772
268850
|
access: "view"
|
|
268773
268851
|
},
|
|
268852
|
+
"snapshot.getDebugState": {
|
|
268853
|
+
capName: "snapshot",
|
|
268854
|
+
capScope: "device",
|
|
268855
|
+
addonId: null,
|
|
268856
|
+
access: "view"
|
|
268857
|
+
},
|
|
268774
268858
|
"snapshot.getSnapshot": {
|
|
268775
268859
|
capName: "snapshot",
|
|
268776
268860
|
capScope: "device",
|
|
@@ -271620,6 +271704,11 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
271620
271704
|
form: "single",
|
|
271621
271705
|
optional: false
|
|
271622
271706
|
}],
|
|
271707
|
+
"snapshot.getDebugState": [{
|
|
271708
|
+
name: "deviceId",
|
|
271709
|
+
form: "single",
|
|
271710
|
+
optional: false
|
|
271711
|
+
}],
|
|
271623
271712
|
"snapshot.getSnapshot": [{
|
|
271624
271713
|
name: "deviceId",
|
|
271625
271714
|
form: "single",
|