@camstack/addon-osd-manager 0.1.234 → 0.1.235
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/{MotionZonesSettings-CpC0VrRF.mjs → MotionZonesSettings-CXYmJeEj.mjs} +2 -2
- package/dist/{PrivacyMaskSettings-DsRVLMGw.mjs → PrivacyMaskSettings-s1lxaThA.mjs} +4 -4
- package/dist/{SceneMonitorEditor-Bd_y21mf.mjs → SceneMonitorEditor-DVTGOyG4.mjs} +3 -3
- package/dist/_stub.js +21 -11
- package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-CJ5YyyFD.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-HPUeQ2rW.mjs} +3 -3
- package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-M-4Jyqe4.mjs +26 -0
- package/dist/{hostInit-BgZ8bjH8.mjs → hostInit-CVNfJUNs.mjs} +2 -2
- package/dist/index.js +295 -2
- package/dist/index.mjs +295 -2
- package/dist/{player-overlays-Bfw9gqQd.mjs → player-overlays-Dww91Wz6.mjs} +1 -1
- package/dist/remoteEntry.js +1 -1
- package/dist/{responsive-CvsGDf2k.mjs → responsive-Hqunukz5.mjs} +1 -1
- package/dist/{scene-monitor-copy-Cp3j72cs.mjs → scene-monitor-copy-Cg3vheyc.mjs} +1 -1
- package/dist/{square-DRfiAJqL.mjs → square-DLF3YKUK.mjs} +1 -1
- package/dist/{trash-2-KaQPwGe5.mjs → trash-2-DZZ-mygA.mjs} +1 -1
- package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-BlUDCAK-.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-D4ppKOBm.mjs} +1 -1
- package/package.json +1 -1
- package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-cCq5NyzR.mjs +0 -26
package/dist/index.js
CHANGED
|
@@ -5390,7 +5390,7 @@ var ZodIssueCode = {
|
|
|
5390
5390
|
var ZodFirstPartyTypeKind;
|
|
5391
5391
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5392
5392
|
//#endregion
|
|
5393
|
-
//#region ../types/dist/sleep-
|
|
5393
|
+
//#region ../types/dist/sleep--g-h2_c_.mjs
|
|
5394
5394
|
/**
|
|
5395
5395
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5396
5396
|
* window to float samples (D455).
|
|
@@ -15888,6 +15888,208 @@ method(object({
|
|
|
15888
15888
|
kind: "mutation",
|
|
15889
15889
|
auth: "admin"
|
|
15890
15890
|
}), method(object({}), array(KeychainSecretMetaSchema).readonly(), { auth: "admin" }), method(object({}), KeychainStateSchema, { auth: "admin" });
|
|
15891
|
+
/**
|
|
15892
|
+
* device-history — the ONE mechanism for numeric history (D850).
|
|
15893
|
+
*
|
|
15894
|
+
* A device value is recorded because its capability says so (the `history`
|
|
15895
|
+
* block of a `*.cap.ts`, captured hub-side from `DeviceStateChanged`); any
|
|
15896
|
+
* other series is DECLARED by the addon that produces it and fed with points
|
|
15897
|
+
* (`record`) or closed five-minute buckets (`recordBuckets`). Rollups 5m / 1h /
|
|
15898
|
+
* 1d are computed here and nowhere else. Storage is `history.db` (D851).
|
|
15899
|
+
*
|
|
15900
|
+
* Who the PRODUCER is: `declareSeries`, `record` and `recordBuckets` are owner
|
|
15901
|
+
* checked against the `callerAddonId` the transport stamps into a call that
|
|
15902
|
+
* crossed a process (never in an input schema, so a session cannot supply it).
|
|
15903
|
+
* A call with no stamp is refused `not-owner`. The methods are `admin` so a
|
|
15904
|
+
* non-admin session never reaches them; an addon's `ctx.api` call bypasses the
|
|
15905
|
+
* tier by design.
|
|
15906
|
+
*/
|
|
15907
|
+
/** Whose history: a real device, or a cluster node (load, memory). */
|
|
15908
|
+
var DeviceHistorySubjectSchema = discriminatedUnion("kind", [object({
|
|
15909
|
+
kind: literal("device"),
|
|
15910
|
+
deviceId: number().int()
|
|
15911
|
+
}), object({
|
|
15912
|
+
kind: literal("node"),
|
|
15913
|
+
nodeId: string().min(1)
|
|
15914
|
+
})]);
|
|
15915
|
+
var DeviceHistoryKindSchema = _enum([
|
|
15916
|
+
"gauge",
|
|
15917
|
+
"counter",
|
|
15918
|
+
"boolean"
|
|
15919
|
+
]);
|
|
15920
|
+
var DeviceHistoryResolutionSchema = _enum([
|
|
15921
|
+
"raw",
|
|
15922
|
+
"5m",
|
|
15923
|
+
"1h",
|
|
15924
|
+
"1d"
|
|
15925
|
+
]);
|
|
15926
|
+
/** Why a producer's point or bucket was not stored. Counted, never silent (D391). */
|
|
15927
|
+
var DeviceHistoryRefusalReasonSchema = _enum([
|
|
15928
|
+
"undeclared",
|
|
15929
|
+
"not-owner",
|
|
15930
|
+
"opted-out",
|
|
15931
|
+
"not-a-real-device",
|
|
15932
|
+
"rate",
|
|
15933
|
+
"ingest-mismatch",
|
|
15934
|
+
"out-of-range"
|
|
15935
|
+
]);
|
|
15936
|
+
var RefusalSchema = object({
|
|
15937
|
+
key: string(),
|
|
15938
|
+
reason: DeviceHistoryRefusalReasonSchema,
|
|
15939
|
+
count: number().int()
|
|
15940
|
+
});
|
|
15941
|
+
var IngestResultSchema = object({
|
|
15942
|
+
accepted: number().int(),
|
|
15943
|
+
refused: array(RefusalSchema).readonly()
|
|
15944
|
+
});
|
|
15945
|
+
var SeriesInfoSchema = object({
|
|
15946
|
+
key: string(),
|
|
15947
|
+
scope: string(),
|
|
15948
|
+
kind: DeviceHistoryKindSchema,
|
|
15949
|
+
/** `null` is unknown (a `unitFrom` series whose device does not state a unit right now), never a guess. */
|
|
15950
|
+
unit: string().nullable(),
|
|
15951
|
+
displayName: string(),
|
|
15952
|
+
source: _enum(["cap", "addon"]),
|
|
15953
|
+
firstTs: number(),
|
|
15954
|
+
lastTs: number()
|
|
15955
|
+
});
|
|
15956
|
+
var QueryPointSchema = object({
|
|
15957
|
+
/** Raw: the point's time. Rollup: the bucket start. */
|
|
15958
|
+
t: number(),
|
|
15959
|
+
samples: number().int(),
|
|
15960
|
+
/** `sum / samples`. */
|
|
15961
|
+
mean: number().nullable(),
|
|
15962
|
+
/** Time-weighted mean (`tw_sum / tw_ms`); `null` for bucket-ingested series. For a boolean: the fraction of time true. */
|
|
15963
|
+
twMean: number().nullable(),
|
|
15964
|
+
min: number(),
|
|
15965
|
+
max: number(),
|
|
15966
|
+
/** `null` is unknown, never zero (D393). */
|
|
15967
|
+
last: number().nullable()
|
|
15968
|
+
});
|
|
15969
|
+
var QuerySeriesSchema = object({
|
|
15970
|
+
scope: string(),
|
|
15971
|
+
/** The last point STRICTLY BEFORE `from` in the chosen tier, so a step chart can start at the held value. */
|
|
15972
|
+
before: object({
|
|
15973
|
+
t: number(),
|
|
15974
|
+
value: number().nullable()
|
|
15975
|
+
}).nullable(),
|
|
15976
|
+
points: array(QueryPointSchema).readonly()
|
|
15977
|
+
});
|
|
15978
|
+
/** The window part of a query, shared by the device and node forms. */
|
|
15979
|
+
var QueryWindowShape = {
|
|
15980
|
+
key: string(),
|
|
15981
|
+
scope: string().optional(),
|
|
15982
|
+
from: number(),
|
|
15983
|
+
to: number(),
|
|
15984
|
+
resolution: union([DeviceHistoryResolutionSchema, literal("auto")]).default("auto"),
|
|
15985
|
+
maxPoints: number().int().positive().max(5e3).default(1e3)
|
|
15986
|
+
};
|
|
15987
|
+
var QueryResultSchema = object({
|
|
15988
|
+
resolution: DeviceHistoryResolutionSchema,
|
|
15989
|
+
series: array(QuerySeriesSchema).readonly(),
|
|
15990
|
+
truncated: boolean()
|
|
15991
|
+
});
|
|
15992
|
+
var TierStatusSchema = object({
|
|
15993
|
+
tier: DeviceHistoryResolutionSchema,
|
|
15994
|
+
/** `null` until the first background count answered. */
|
|
15995
|
+
rows: number().int().nullable(),
|
|
15996
|
+
/** `rows` times a fixed per-row estimate — approximate, labelled so. */
|
|
15997
|
+
approxBytes: number().nullable(),
|
|
15998
|
+
countedAt: number().nullable()
|
|
15999
|
+
});
|
|
16000
|
+
/** Operator/diagnostic view: rows per tier, last runs, refusals and drops since boot. */
|
|
16001
|
+
var DeviceHistoryStatusSchema = object({
|
|
16002
|
+
startedAt: number(),
|
|
16003
|
+
/** The store is declared, series loaded and the first reconcile has answered. */
|
|
16004
|
+
ready: boolean(),
|
|
16005
|
+
series: number().int(),
|
|
16006
|
+
metrics: number().int(),
|
|
16007
|
+
optedOutDevices: number().int(),
|
|
16008
|
+
tiers: array(TierStatusSchema).readonly(),
|
|
16009
|
+
capture: object({
|
|
16010
|
+
eventsSeen: number().int(),
|
|
16011
|
+
pointsEmitted: number().int(),
|
|
16012
|
+
pointsWritten: number().int(),
|
|
16013
|
+
pointsDropped: number().int(),
|
|
16014
|
+
bufferDepth: number().int(),
|
|
16015
|
+
trailingEmitted: number().int(),
|
|
16016
|
+
reconciledPoints: number().int(),
|
|
16017
|
+
reconcileRuns: number().int(),
|
|
16018
|
+
reconcileFailures: number().int(),
|
|
16019
|
+
lastReconcileAt: number().nullable(),
|
|
16020
|
+
lastFlushAt: number().nullable(),
|
|
16021
|
+
flushFailures: number().int(),
|
|
16022
|
+
skipped: record(string(), number().int())
|
|
16023
|
+
}),
|
|
16024
|
+
ingest: object({
|
|
16025
|
+
accepted: number().int(),
|
|
16026
|
+
refused: record(string(), number().int())
|
|
16027
|
+
}),
|
|
16028
|
+
rollup: object({
|
|
16029
|
+
last5mAt: number().nullable(),
|
|
16030
|
+
last1hAt: number().nullable(),
|
|
16031
|
+
last1dAt: number().nullable(),
|
|
16032
|
+
errors: number().int(),
|
|
16033
|
+
dirty5m: number().int(),
|
|
16034
|
+
dirty1h: number().int(),
|
|
16035
|
+
dirty1d: number().int()
|
|
16036
|
+
}),
|
|
16037
|
+
retention: object({
|
|
16038
|
+
lastRunAt: number().nullable(),
|
|
16039
|
+
deleted: record(string(), number().int()),
|
|
16040
|
+
purgedSeries: number().int()
|
|
16041
|
+
}),
|
|
16042
|
+
directory: object({
|
|
16043
|
+
devices: number().int(),
|
|
16044
|
+
lastRefreshAt: number().nullable()
|
|
16045
|
+
})
|
|
16046
|
+
});
|
|
16047
|
+
method(object({ deviceId: number().int() }), array(SeriesInfoSchema).readonly()), method(object({ nodeId: string().min(1) }), array(SeriesInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
16048
|
+
deviceId: number().int(),
|
|
16049
|
+
...QueryWindowShape
|
|
16050
|
+
}), QueryResultSchema), method(object({
|
|
16051
|
+
nodeId: string().min(1),
|
|
16052
|
+
...QueryWindowShape
|
|
16053
|
+
}), QueryResultSchema, { auth: "admin" }), method(object({
|
|
16054
|
+
name: string().regex(/^[a-z0-9-]+$/),
|
|
16055
|
+
subjectKind: _enum(["device", "node"]),
|
|
16056
|
+
kind: DeviceHistoryKindSchema,
|
|
16057
|
+
unit: string().optional(),
|
|
16058
|
+
displayName: string().min(1),
|
|
16059
|
+
ingest: _enum(["points", "buckets"])
|
|
16060
|
+
}), object({ key: string() }), {
|
|
16061
|
+
kind: "mutation",
|
|
16062
|
+
auth: "admin"
|
|
16063
|
+
}), method(object({ points: array(object({
|
|
16064
|
+
key: string(),
|
|
16065
|
+
subject: DeviceHistorySubjectSchema,
|
|
16066
|
+
scope: string().default(""),
|
|
16067
|
+
ts: number(),
|
|
16068
|
+
value: number()
|
|
16069
|
+
})).max(5e3) }), IngestResultSchema, {
|
|
16070
|
+
kind: "mutation",
|
|
16071
|
+
auth: "admin"
|
|
16072
|
+
}), method(object({ buckets: array(object({
|
|
16073
|
+
key: string(),
|
|
16074
|
+
subject: DeviceHistorySubjectSchema,
|
|
16075
|
+
scope: string().default(""),
|
|
16076
|
+
bucketStart: number(),
|
|
16077
|
+
samples: number().int().positive(),
|
|
16078
|
+
sum: number(),
|
|
16079
|
+
min: number(),
|
|
16080
|
+
max: number(),
|
|
16081
|
+
last: number().nullable(),
|
|
16082
|
+
lastTs: number().nullable()
|
|
16083
|
+
})).max(5e3) }), IngestResultSchema, {
|
|
16084
|
+
kind: "mutation",
|
|
16085
|
+
auth: "admin"
|
|
16086
|
+
}), method(object({ deviceId: number().int() }), object({ enabled: boolean() })), method(object({
|
|
16087
|
+
deviceId: number().int(),
|
|
16088
|
+
enabled: boolean()
|
|
16089
|
+
}), object({ enabled: boolean() }), {
|
|
16090
|
+
kind: "mutation",
|
|
16091
|
+
auth: "admin"
|
|
16092
|
+
}), method(object({}), DeviceHistoryStatusSchema, { auth: "admin" });
|
|
15891
16093
|
var DeviceCaStatusSchema = discriminatedUnion("state", [
|
|
15892
16094
|
object({ state: literal("absent") }),
|
|
15893
16095
|
object({
|
|
@@ -55327,7 +55529,7 @@ var MotionOnMotionChangedDataSchema = object({
|
|
|
55327
55529
|
/** Who started it (D672). Absent = the camera itself. Only `onboard` carries `sensor`. */
|
|
55328
55530
|
triggeredBy: MotionTriggeredBySchema.optional()
|
|
55329
55531
|
});
|
|
55330
|
-
DeviceType.Camera, DeviceType.Sensor, method(object({ deviceId: number() }), boolean());
|
|
55532
|
+
DeviceType.Camera, DeviceType.Sensor, method(object({ deviceId: number() }), boolean()), DeviceType.Camera;
|
|
55331
55533
|
object({
|
|
55332
55534
|
enabled: boolean(),
|
|
55333
55535
|
/** Ms epoch of the last operator-driven change. */
|
|
@@ -63062,6 +63264,66 @@ Object.freeze({
|
|
|
63062
63264
|
addonId: null,
|
|
63063
63265
|
access: "create"
|
|
63064
63266
|
},
|
|
63267
|
+
"deviceHistory.declareSeries": {
|
|
63268
|
+
capName: "device-history",
|
|
63269
|
+
capScope: "system",
|
|
63270
|
+
addonId: null,
|
|
63271
|
+
access: "create"
|
|
63272
|
+
},
|
|
63273
|
+
"deviceHistory.getDeviceEnabled": {
|
|
63274
|
+
capName: "device-history",
|
|
63275
|
+
capScope: "system",
|
|
63276
|
+
addonId: null,
|
|
63277
|
+
access: "view"
|
|
63278
|
+
},
|
|
63279
|
+
"deviceHistory.getStatus": {
|
|
63280
|
+
capName: "device-history",
|
|
63281
|
+
capScope: "system",
|
|
63282
|
+
addonId: null,
|
|
63283
|
+
access: "view"
|
|
63284
|
+
},
|
|
63285
|
+
"deviceHistory.listNodeSeries": {
|
|
63286
|
+
capName: "device-history",
|
|
63287
|
+
capScope: "system",
|
|
63288
|
+
addonId: null,
|
|
63289
|
+
access: "view"
|
|
63290
|
+
},
|
|
63291
|
+
"deviceHistory.listSeries": {
|
|
63292
|
+
capName: "device-history",
|
|
63293
|
+
capScope: "system",
|
|
63294
|
+
addonId: null,
|
|
63295
|
+
access: "view"
|
|
63296
|
+
},
|
|
63297
|
+
"deviceHistory.query": {
|
|
63298
|
+
capName: "device-history",
|
|
63299
|
+
capScope: "system",
|
|
63300
|
+
addonId: null,
|
|
63301
|
+
access: "view"
|
|
63302
|
+
},
|
|
63303
|
+
"deviceHistory.queryNode": {
|
|
63304
|
+
capName: "device-history",
|
|
63305
|
+
capScope: "system",
|
|
63306
|
+
addonId: null,
|
|
63307
|
+
access: "view"
|
|
63308
|
+
},
|
|
63309
|
+
"deviceHistory.record": {
|
|
63310
|
+
capName: "device-history",
|
|
63311
|
+
capScope: "system",
|
|
63312
|
+
addonId: null,
|
|
63313
|
+
access: "create"
|
|
63314
|
+
},
|
|
63315
|
+
"deviceHistory.recordBuckets": {
|
|
63316
|
+
capName: "device-history",
|
|
63317
|
+
capScope: "system",
|
|
63318
|
+
addonId: null,
|
|
63319
|
+
access: "create"
|
|
63320
|
+
},
|
|
63321
|
+
"deviceHistory.setDeviceEnabled": {
|
|
63322
|
+
capName: "device-history",
|
|
63323
|
+
capScope: "system",
|
|
63324
|
+
addonId: null,
|
|
63325
|
+
access: "create"
|
|
63326
|
+
},
|
|
63065
63327
|
"deviceManager.addLocation": {
|
|
63066
63328
|
capName: "device-manager",
|
|
63067
63329
|
capScope: "system",
|
|
@@ -69853,6 +70115,26 @@ Object.freeze({
|
|
|
69853
70115
|
form: "single",
|
|
69854
70116
|
optional: false
|
|
69855
70117
|
}],
|
|
70118
|
+
"deviceHistory.getDeviceEnabled": [{
|
|
70119
|
+
name: "deviceId",
|
|
70120
|
+
form: "single",
|
|
70121
|
+
optional: false
|
|
70122
|
+
}],
|
|
70123
|
+
"deviceHistory.listSeries": [{
|
|
70124
|
+
name: "deviceId",
|
|
70125
|
+
form: "single",
|
|
70126
|
+
optional: false
|
|
70127
|
+
}],
|
|
70128
|
+
"deviceHistory.query": [{
|
|
70129
|
+
name: "deviceId",
|
|
70130
|
+
form: "single",
|
|
70131
|
+
optional: false
|
|
70132
|
+
}],
|
|
70133
|
+
"deviceHistory.setDeviceEnabled": [{
|
|
70134
|
+
name: "deviceId",
|
|
70135
|
+
form: "single",
|
|
70136
|
+
optional: false
|
|
70137
|
+
}],
|
|
69856
70138
|
"deviceManager.adoptionRelease": [{
|
|
69857
70139
|
name: "camDeviceId",
|
|
69858
70140
|
form: "single",
|
|
@@ -72031,6 +72313,7 @@ Object.freeze({
|
|
|
72031
72313
|
"network-access": "ingress",
|
|
72032
72314
|
"smtp-provider": "email"
|
|
72033
72315
|
});
|
|
72316
|
+
DeviceType.Camera;
|
|
72034
72317
|
var G711_SCALE_CORRECTION_DB = {
|
|
72035
72318
|
PCMU: 20 * Math.log10(4),
|
|
72036
72319
|
PCMA: 20 * Math.log10(8)
|
|
@@ -73875,6 +74158,16 @@ Object.freeze({
|
|
|
73875
74158
|
"pageSize": 50
|
|
73876
74159
|
} },
|
|
73877
74160
|
"device-credentials": { "listDeviceCredentials": { "includeRevoked": false } },
|
|
74161
|
+
"device-history": {
|
|
74162
|
+
"query": {
|
|
74163
|
+
"resolution": "auto",
|
|
74164
|
+
"maxPoints": 1e3
|
|
74165
|
+
},
|
|
74166
|
+
"queryNode": {
|
|
74167
|
+
"resolution": "auto",
|
|
74168
|
+
"maxPoints": 1e3
|
|
74169
|
+
}
|
|
74170
|
+
},
|
|
73878
74171
|
"device-manager": { "adoptionListCandidates": {
|
|
73879
74172
|
"page": 1,
|
|
73880
74173
|
"pageSize": 50
|
package/dist/index.mjs
CHANGED
|
@@ -5386,7 +5386,7 @@ var ZodIssueCode = {
|
|
|
5386
5386
|
var ZodFirstPartyTypeKind;
|
|
5387
5387
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5388
5388
|
//#endregion
|
|
5389
|
-
//#region ../types/dist/sleep-
|
|
5389
|
+
//#region ../types/dist/sleep--g-h2_c_.mjs
|
|
5390
5390
|
/**
|
|
5391
5391
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5392
5392
|
* window to float samples (D455).
|
|
@@ -15884,6 +15884,208 @@ method(object({
|
|
|
15884
15884
|
kind: "mutation",
|
|
15885
15885
|
auth: "admin"
|
|
15886
15886
|
}), method(object({}), array(KeychainSecretMetaSchema).readonly(), { auth: "admin" }), method(object({}), KeychainStateSchema, { auth: "admin" });
|
|
15887
|
+
/**
|
|
15888
|
+
* device-history — the ONE mechanism for numeric history (D850).
|
|
15889
|
+
*
|
|
15890
|
+
* A device value is recorded because its capability says so (the `history`
|
|
15891
|
+
* block of a `*.cap.ts`, captured hub-side from `DeviceStateChanged`); any
|
|
15892
|
+
* other series is DECLARED by the addon that produces it and fed with points
|
|
15893
|
+
* (`record`) or closed five-minute buckets (`recordBuckets`). Rollups 5m / 1h /
|
|
15894
|
+
* 1d are computed here and nowhere else. Storage is `history.db` (D851).
|
|
15895
|
+
*
|
|
15896
|
+
* Who the PRODUCER is: `declareSeries`, `record` and `recordBuckets` are owner
|
|
15897
|
+
* checked against the `callerAddonId` the transport stamps into a call that
|
|
15898
|
+
* crossed a process (never in an input schema, so a session cannot supply it).
|
|
15899
|
+
* A call with no stamp is refused `not-owner`. The methods are `admin` so a
|
|
15900
|
+
* non-admin session never reaches them; an addon's `ctx.api` call bypasses the
|
|
15901
|
+
* tier by design.
|
|
15902
|
+
*/
|
|
15903
|
+
/** Whose history: a real device, or a cluster node (load, memory). */
|
|
15904
|
+
var DeviceHistorySubjectSchema = discriminatedUnion("kind", [object({
|
|
15905
|
+
kind: literal("device"),
|
|
15906
|
+
deviceId: number().int()
|
|
15907
|
+
}), object({
|
|
15908
|
+
kind: literal("node"),
|
|
15909
|
+
nodeId: string().min(1)
|
|
15910
|
+
})]);
|
|
15911
|
+
var DeviceHistoryKindSchema = _enum([
|
|
15912
|
+
"gauge",
|
|
15913
|
+
"counter",
|
|
15914
|
+
"boolean"
|
|
15915
|
+
]);
|
|
15916
|
+
var DeviceHistoryResolutionSchema = _enum([
|
|
15917
|
+
"raw",
|
|
15918
|
+
"5m",
|
|
15919
|
+
"1h",
|
|
15920
|
+
"1d"
|
|
15921
|
+
]);
|
|
15922
|
+
/** Why a producer's point or bucket was not stored. Counted, never silent (D391). */
|
|
15923
|
+
var DeviceHistoryRefusalReasonSchema = _enum([
|
|
15924
|
+
"undeclared",
|
|
15925
|
+
"not-owner",
|
|
15926
|
+
"opted-out",
|
|
15927
|
+
"not-a-real-device",
|
|
15928
|
+
"rate",
|
|
15929
|
+
"ingest-mismatch",
|
|
15930
|
+
"out-of-range"
|
|
15931
|
+
]);
|
|
15932
|
+
var RefusalSchema = object({
|
|
15933
|
+
key: string(),
|
|
15934
|
+
reason: DeviceHistoryRefusalReasonSchema,
|
|
15935
|
+
count: number().int()
|
|
15936
|
+
});
|
|
15937
|
+
var IngestResultSchema = object({
|
|
15938
|
+
accepted: number().int(),
|
|
15939
|
+
refused: array(RefusalSchema).readonly()
|
|
15940
|
+
});
|
|
15941
|
+
var SeriesInfoSchema = object({
|
|
15942
|
+
key: string(),
|
|
15943
|
+
scope: string(),
|
|
15944
|
+
kind: DeviceHistoryKindSchema,
|
|
15945
|
+
/** `null` is unknown (a `unitFrom` series whose device does not state a unit right now), never a guess. */
|
|
15946
|
+
unit: string().nullable(),
|
|
15947
|
+
displayName: string(),
|
|
15948
|
+
source: _enum(["cap", "addon"]),
|
|
15949
|
+
firstTs: number(),
|
|
15950
|
+
lastTs: number()
|
|
15951
|
+
});
|
|
15952
|
+
var QueryPointSchema = object({
|
|
15953
|
+
/** Raw: the point's time. Rollup: the bucket start. */
|
|
15954
|
+
t: number(),
|
|
15955
|
+
samples: number().int(),
|
|
15956
|
+
/** `sum / samples`. */
|
|
15957
|
+
mean: number().nullable(),
|
|
15958
|
+
/** Time-weighted mean (`tw_sum / tw_ms`); `null` for bucket-ingested series. For a boolean: the fraction of time true. */
|
|
15959
|
+
twMean: number().nullable(),
|
|
15960
|
+
min: number(),
|
|
15961
|
+
max: number(),
|
|
15962
|
+
/** `null` is unknown, never zero (D393). */
|
|
15963
|
+
last: number().nullable()
|
|
15964
|
+
});
|
|
15965
|
+
var QuerySeriesSchema = object({
|
|
15966
|
+
scope: string(),
|
|
15967
|
+
/** The last point STRICTLY BEFORE `from` in the chosen tier, so a step chart can start at the held value. */
|
|
15968
|
+
before: object({
|
|
15969
|
+
t: number(),
|
|
15970
|
+
value: number().nullable()
|
|
15971
|
+
}).nullable(),
|
|
15972
|
+
points: array(QueryPointSchema).readonly()
|
|
15973
|
+
});
|
|
15974
|
+
/** The window part of a query, shared by the device and node forms. */
|
|
15975
|
+
var QueryWindowShape = {
|
|
15976
|
+
key: string(),
|
|
15977
|
+
scope: string().optional(),
|
|
15978
|
+
from: number(),
|
|
15979
|
+
to: number(),
|
|
15980
|
+
resolution: union([DeviceHistoryResolutionSchema, literal("auto")]).default("auto"),
|
|
15981
|
+
maxPoints: number().int().positive().max(5e3).default(1e3)
|
|
15982
|
+
};
|
|
15983
|
+
var QueryResultSchema = object({
|
|
15984
|
+
resolution: DeviceHistoryResolutionSchema,
|
|
15985
|
+
series: array(QuerySeriesSchema).readonly(),
|
|
15986
|
+
truncated: boolean()
|
|
15987
|
+
});
|
|
15988
|
+
var TierStatusSchema = object({
|
|
15989
|
+
tier: DeviceHistoryResolutionSchema,
|
|
15990
|
+
/** `null` until the first background count answered. */
|
|
15991
|
+
rows: number().int().nullable(),
|
|
15992
|
+
/** `rows` times a fixed per-row estimate — approximate, labelled so. */
|
|
15993
|
+
approxBytes: number().nullable(),
|
|
15994
|
+
countedAt: number().nullable()
|
|
15995
|
+
});
|
|
15996
|
+
/** Operator/diagnostic view: rows per tier, last runs, refusals and drops since boot. */
|
|
15997
|
+
var DeviceHistoryStatusSchema = object({
|
|
15998
|
+
startedAt: number(),
|
|
15999
|
+
/** The store is declared, series loaded and the first reconcile has answered. */
|
|
16000
|
+
ready: boolean(),
|
|
16001
|
+
series: number().int(),
|
|
16002
|
+
metrics: number().int(),
|
|
16003
|
+
optedOutDevices: number().int(),
|
|
16004
|
+
tiers: array(TierStatusSchema).readonly(),
|
|
16005
|
+
capture: object({
|
|
16006
|
+
eventsSeen: number().int(),
|
|
16007
|
+
pointsEmitted: number().int(),
|
|
16008
|
+
pointsWritten: number().int(),
|
|
16009
|
+
pointsDropped: number().int(),
|
|
16010
|
+
bufferDepth: number().int(),
|
|
16011
|
+
trailingEmitted: number().int(),
|
|
16012
|
+
reconciledPoints: number().int(),
|
|
16013
|
+
reconcileRuns: number().int(),
|
|
16014
|
+
reconcileFailures: number().int(),
|
|
16015
|
+
lastReconcileAt: number().nullable(),
|
|
16016
|
+
lastFlushAt: number().nullable(),
|
|
16017
|
+
flushFailures: number().int(),
|
|
16018
|
+
skipped: record(string(), number().int())
|
|
16019
|
+
}),
|
|
16020
|
+
ingest: object({
|
|
16021
|
+
accepted: number().int(),
|
|
16022
|
+
refused: record(string(), number().int())
|
|
16023
|
+
}),
|
|
16024
|
+
rollup: object({
|
|
16025
|
+
last5mAt: number().nullable(),
|
|
16026
|
+
last1hAt: number().nullable(),
|
|
16027
|
+
last1dAt: number().nullable(),
|
|
16028
|
+
errors: number().int(),
|
|
16029
|
+
dirty5m: number().int(),
|
|
16030
|
+
dirty1h: number().int(),
|
|
16031
|
+
dirty1d: number().int()
|
|
16032
|
+
}),
|
|
16033
|
+
retention: object({
|
|
16034
|
+
lastRunAt: number().nullable(),
|
|
16035
|
+
deleted: record(string(), number().int()),
|
|
16036
|
+
purgedSeries: number().int()
|
|
16037
|
+
}),
|
|
16038
|
+
directory: object({
|
|
16039
|
+
devices: number().int(),
|
|
16040
|
+
lastRefreshAt: number().nullable()
|
|
16041
|
+
})
|
|
16042
|
+
});
|
|
16043
|
+
method(object({ deviceId: number().int() }), array(SeriesInfoSchema).readonly()), method(object({ nodeId: string().min(1) }), array(SeriesInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
16044
|
+
deviceId: number().int(),
|
|
16045
|
+
...QueryWindowShape
|
|
16046
|
+
}), QueryResultSchema), method(object({
|
|
16047
|
+
nodeId: string().min(1),
|
|
16048
|
+
...QueryWindowShape
|
|
16049
|
+
}), QueryResultSchema, { auth: "admin" }), method(object({
|
|
16050
|
+
name: string().regex(/^[a-z0-9-]+$/),
|
|
16051
|
+
subjectKind: _enum(["device", "node"]),
|
|
16052
|
+
kind: DeviceHistoryKindSchema,
|
|
16053
|
+
unit: string().optional(),
|
|
16054
|
+
displayName: string().min(1),
|
|
16055
|
+
ingest: _enum(["points", "buckets"])
|
|
16056
|
+
}), object({ key: string() }), {
|
|
16057
|
+
kind: "mutation",
|
|
16058
|
+
auth: "admin"
|
|
16059
|
+
}), method(object({ points: array(object({
|
|
16060
|
+
key: string(),
|
|
16061
|
+
subject: DeviceHistorySubjectSchema,
|
|
16062
|
+
scope: string().default(""),
|
|
16063
|
+
ts: number(),
|
|
16064
|
+
value: number()
|
|
16065
|
+
})).max(5e3) }), IngestResultSchema, {
|
|
16066
|
+
kind: "mutation",
|
|
16067
|
+
auth: "admin"
|
|
16068
|
+
}), method(object({ buckets: array(object({
|
|
16069
|
+
key: string(),
|
|
16070
|
+
subject: DeviceHistorySubjectSchema,
|
|
16071
|
+
scope: string().default(""),
|
|
16072
|
+
bucketStart: number(),
|
|
16073
|
+
samples: number().int().positive(),
|
|
16074
|
+
sum: number(),
|
|
16075
|
+
min: number(),
|
|
16076
|
+
max: number(),
|
|
16077
|
+
last: number().nullable(),
|
|
16078
|
+
lastTs: number().nullable()
|
|
16079
|
+
})).max(5e3) }), IngestResultSchema, {
|
|
16080
|
+
kind: "mutation",
|
|
16081
|
+
auth: "admin"
|
|
16082
|
+
}), method(object({ deviceId: number().int() }), object({ enabled: boolean() })), method(object({
|
|
16083
|
+
deviceId: number().int(),
|
|
16084
|
+
enabled: boolean()
|
|
16085
|
+
}), object({ enabled: boolean() }), {
|
|
16086
|
+
kind: "mutation",
|
|
16087
|
+
auth: "admin"
|
|
16088
|
+
}), method(object({}), DeviceHistoryStatusSchema, { auth: "admin" });
|
|
15887
16089
|
var DeviceCaStatusSchema = discriminatedUnion("state", [
|
|
15888
16090
|
object({ state: literal("absent") }),
|
|
15889
16091
|
object({
|
|
@@ -55323,7 +55525,7 @@ var MotionOnMotionChangedDataSchema = object({
|
|
|
55323
55525
|
/** Who started it (D672). Absent = the camera itself. Only `onboard` carries `sensor`. */
|
|
55324
55526
|
triggeredBy: MotionTriggeredBySchema.optional()
|
|
55325
55527
|
});
|
|
55326
|
-
DeviceType.Camera, DeviceType.Sensor, method(object({ deviceId: number() }), boolean());
|
|
55528
|
+
DeviceType.Camera, DeviceType.Sensor, method(object({ deviceId: number() }), boolean()), DeviceType.Camera;
|
|
55327
55529
|
object({
|
|
55328
55530
|
enabled: boolean(),
|
|
55329
55531
|
/** Ms epoch of the last operator-driven change. */
|
|
@@ -63058,6 +63260,66 @@ Object.freeze({
|
|
|
63058
63260
|
addonId: null,
|
|
63059
63261
|
access: "create"
|
|
63060
63262
|
},
|
|
63263
|
+
"deviceHistory.declareSeries": {
|
|
63264
|
+
capName: "device-history",
|
|
63265
|
+
capScope: "system",
|
|
63266
|
+
addonId: null,
|
|
63267
|
+
access: "create"
|
|
63268
|
+
},
|
|
63269
|
+
"deviceHistory.getDeviceEnabled": {
|
|
63270
|
+
capName: "device-history",
|
|
63271
|
+
capScope: "system",
|
|
63272
|
+
addonId: null,
|
|
63273
|
+
access: "view"
|
|
63274
|
+
},
|
|
63275
|
+
"deviceHistory.getStatus": {
|
|
63276
|
+
capName: "device-history",
|
|
63277
|
+
capScope: "system",
|
|
63278
|
+
addonId: null,
|
|
63279
|
+
access: "view"
|
|
63280
|
+
},
|
|
63281
|
+
"deviceHistory.listNodeSeries": {
|
|
63282
|
+
capName: "device-history",
|
|
63283
|
+
capScope: "system",
|
|
63284
|
+
addonId: null,
|
|
63285
|
+
access: "view"
|
|
63286
|
+
},
|
|
63287
|
+
"deviceHistory.listSeries": {
|
|
63288
|
+
capName: "device-history",
|
|
63289
|
+
capScope: "system",
|
|
63290
|
+
addonId: null,
|
|
63291
|
+
access: "view"
|
|
63292
|
+
},
|
|
63293
|
+
"deviceHistory.query": {
|
|
63294
|
+
capName: "device-history",
|
|
63295
|
+
capScope: "system",
|
|
63296
|
+
addonId: null,
|
|
63297
|
+
access: "view"
|
|
63298
|
+
},
|
|
63299
|
+
"deviceHistory.queryNode": {
|
|
63300
|
+
capName: "device-history",
|
|
63301
|
+
capScope: "system",
|
|
63302
|
+
addonId: null,
|
|
63303
|
+
access: "view"
|
|
63304
|
+
},
|
|
63305
|
+
"deviceHistory.record": {
|
|
63306
|
+
capName: "device-history",
|
|
63307
|
+
capScope: "system",
|
|
63308
|
+
addonId: null,
|
|
63309
|
+
access: "create"
|
|
63310
|
+
},
|
|
63311
|
+
"deviceHistory.recordBuckets": {
|
|
63312
|
+
capName: "device-history",
|
|
63313
|
+
capScope: "system",
|
|
63314
|
+
addonId: null,
|
|
63315
|
+
access: "create"
|
|
63316
|
+
},
|
|
63317
|
+
"deviceHistory.setDeviceEnabled": {
|
|
63318
|
+
capName: "device-history",
|
|
63319
|
+
capScope: "system",
|
|
63320
|
+
addonId: null,
|
|
63321
|
+
access: "create"
|
|
63322
|
+
},
|
|
63061
63323
|
"deviceManager.addLocation": {
|
|
63062
63324
|
capName: "device-manager",
|
|
63063
63325
|
capScope: "system",
|
|
@@ -69849,6 +70111,26 @@ Object.freeze({
|
|
|
69849
70111
|
form: "single",
|
|
69850
70112
|
optional: false
|
|
69851
70113
|
}],
|
|
70114
|
+
"deviceHistory.getDeviceEnabled": [{
|
|
70115
|
+
name: "deviceId",
|
|
70116
|
+
form: "single",
|
|
70117
|
+
optional: false
|
|
70118
|
+
}],
|
|
70119
|
+
"deviceHistory.listSeries": [{
|
|
70120
|
+
name: "deviceId",
|
|
70121
|
+
form: "single",
|
|
70122
|
+
optional: false
|
|
70123
|
+
}],
|
|
70124
|
+
"deviceHistory.query": [{
|
|
70125
|
+
name: "deviceId",
|
|
70126
|
+
form: "single",
|
|
70127
|
+
optional: false
|
|
70128
|
+
}],
|
|
70129
|
+
"deviceHistory.setDeviceEnabled": [{
|
|
70130
|
+
name: "deviceId",
|
|
70131
|
+
form: "single",
|
|
70132
|
+
optional: false
|
|
70133
|
+
}],
|
|
69852
70134
|
"deviceManager.adoptionRelease": [{
|
|
69853
70135
|
name: "camDeviceId",
|
|
69854
70136
|
form: "single",
|
|
@@ -72027,6 +72309,7 @@ Object.freeze({
|
|
|
72027
72309
|
"network-access": "ingress",
|
|
72028
72310
|
"smtp-provider": "email"
|
|
72029
72311
|
});
|
|
72312
|
+
DeviceType.Camera;
|
|
72030
72313
|
var G711_SCALE_CORRECTION_DB = {
|
|
72031
72314
|
PCMU: 20 * Math.log10(4),
|
|
72032
72315
|
PCMA: 20 * Math.log10(8)
|
|
@@ -73871,6 +74154,16 @@ Object.freeze({
|
|
|
73871
74154
|
"pageSize": 50
|
|
73872
74155
|
} },
|
|
73873
74156
|
"device-credentials": { "listDeviceCredentials": { "includeRevoked": false } },
|
|
74157
|
+
"device-history": {
|
|
74158
|
+
"query": {
|
|
74159
|
+
"resolution": "auto",
|
|
74160
|
+
"maxPoints": 1e3
|
|
74161
|
+
},
|
|
74162
|
+
"queryNode": {
|
|
74163
|
+
"resolution": "auto",
|
|
74164
|
+
"maxPoints": 1e3
|
|
74165
|
+
}
|
|
74166
|
+
},
|
|
73874
74167
|
"device-manager": { "adoptionListCandidates": {
|
|
73875
74168
|
"page": 1,
|
|
73876
74169
|
"pageSize": 50
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { b as e, g as t, l as n, u as r } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react__loadShare__.js-BbmIfQSr.mjs";
|
|
2
|
-
import { f as i, p as a } from "./responsive-
|
|
2
|
+
import { f as i, p as a } from "./responsive-Hqunukz5.mjs";
|
|
3
3
|
import { n as o, r as s, t as c } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DalfdIDw.mjs";
|
|
4
4
|
var l = a("chevron-down", [["path", {
|
|
5
5
|
d: "m6 9 6 6 6-6",
|
package/dist/remoteEntry.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-
|
|
1
|
+
import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-D4ppKOBm.mjs";
|
|
2
2
|
export { t as get, e as init };
|