@camstack/addon-terminal 0.1.119 → 0.1.121
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 +64 -21
- package/dist/addon.mjs +64 -21
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -5392,7 +5392,7 @@ var ZodIssueCode = {
|
|
|
5392
5392
|
var ZodFirstPartyTypeKind;
|
|
5393
5393
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5394
5394
|
//#endregion
|
|
5395
|
-
//#region ../types/dist/sleep-
|
|
5395
|
+
//#region ../types/dist/sleep-GU_us3DG.mjs
|
|
5396
5396
|
/**
|
|
5397
5397
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5398
5398
|
* window to float samples (D455).
|
|
@@ -7882,13 +7882,37 @@ var CameraSwitchGroupSchema = object({
|
|
|
7882
7882
|
fetchedAt: number()
|
|
7883
7883
|
});
|
|
7884
7884
|
/**
|
|
7885
|
-
*
|
|
7886
|
-
*
|
|
7887
|
-
*
|
|
7888
|
-
*
|
|
7885
|
+
* Every analyser a camera CamStack BUILDS is created with switched off.
|
|
7886
|
+
*
|
|
7887
|
+
* A grid and a Terminal camera are `DeviceType.Camera`, so every wrapper that
|
|
7888
|
+
* declares `defaultActive: true` for a camera binds to them the instant they
|
|
7889
|
+
* exist — the whole analysis family included. There is nothing there to
|
|
7890
|
+
* analyse: a grid's subjects are already counted on the cameras it composes (a
|
|
7891
|
+
* person in the bottom-right cell is a person on THAT camera, not on the grid),
|
|
7892
|
+
* and a Terminal camera shows a shell.
|
|
7893
|
+
*
|
|
7894
|
+
* ONE list, in the package both already depend on, because there were two and
|
|
7895
|
+
* they had already drifted: the Terminal's and the grid's each named three caps
|
|
7896
|
+
* and neither named `pipeline-analytics` — which has no gate of its own except
|
|
7897
|
+
* this binding, so a grid that forwards its sources' motion (so the viewer can
|
|
7898
|
+
* light its tile) would open a motion EPISODE per forwarded event, duplicating
|
|
7899
|
+
* the rows those sources already write.
|
|
7900
|
+
*
|
|
7901
|
+
* `motion-detection` sits first deliberately: it is the one that holds the
|
|
7902
|
+
* decode session open, so its absence is the difference between a derived
|
|
7903
|
+
* camera costing a composition and costing a full decode pipeline.
|
|
7904
|
+
*
|
|
7905
|
+
* Applied ONLY at creation. An operator who deliberately turns analysis back on
|
|
7906
|
+
* for a grid must win, and a reconcile that re-asserted this every pass would
|
|
7907
|
+
* silently overrule them once a minute.
|
|
7889
7908
|
*/
|
|
7890
|
-
var
|
|
7891
|
-
|
|
7909
|
+
var DERIVED_CAMERA_SILENCED_CAP_NAMES = [
|
|
7910
|
+
"motion-detection",
|
|
7911
|
+
"detection-pipeline",
|
|
7912
|
+
"audio-analysis",
|
|
7913
|
+
"pipeline-analytics",
|
|
7914
|
+
"scene-monitor"
|
|
7915
|
+
];
|
|
7892
7916
|
/**
|
|
7893
7917
|
* What the gate decided about a birth, from the CALLER's point of view.
|
|
7894
7918
|
*
|
|
@@ -29070,11 +29094,15 @@ var motionTriggerCapability = {
|
|
|
29070
29094
|
*
|
|
29071
29095
|
* Adding a fifth name to that list would have been the wrong fix twice over:
|
|
29072
29096
|
* that page is per-camera DETECTION tuning, and a grid's geometry belongs
|
|
29073
|
-
* beside PTZ and motion zones on the camera itself
|
|
29074
|
-
*
|
|
29075
|
-
*
|
|
29076
|
-
*
|
|
29077
|
-
*
|
|
29097
|
+
* beside PTZ and motion zones on the camera itself. The device page is
|
|
29098
|
+
* BINDING-driven (D12), so the way in is a capability bound to the device —
|
|
29099
|
+
* and this cap carries its section the way `recording` does, by RETURNING it
|
|
29100
|
+
* from `getDeviceSettingsContribution`.
|
|
29101
|
+
*
|
|
29102
|
+
* Seven other widgets are still declared the other way, through a
|
|
29103
|
+
* `deviceConfig.ui` block the framework derives a section from. That route
|
|
29104
|
+
* gives the addon no say in where its own panel lands and no way to decline
|
|
29105
|
+
* for a device the panel does not suit, which is why this one does not use it.
|
|
29078
29106
|
*
|
|
29079
29107
|
* ## Why one addon may implement it
|
|
29080
29108
|
*
|
|
@@ -31433,6 +31461,25 @@ var ptzAutotrackCapability = {
|
|
|
31433
31461
|
scope: "device",
|
|
31434
31462
|
deviceNative: true,
|
|
31435
31463
|
mode: "singleton",
|
|
31464
|
+
/**
|
|
31465
|
+
* Two kinds of provider behind one name, the same shape `snapshot` and
|
|
31466
|
+
* `doorbell` use:
|
|
31467
|
+
*
|
|
31468
|
+
* - **Native**: the camera's own firmware autotrack, registered per device by
|
|
31469
|
+
* the driver when the probe says it exists (Reolink: yes; Hikvision:
|
|
31470
|
+
* model-dependent).
|
|
31471
|
+
* - **Wrapper**: the emulated implementation (`@camstack/system`'s `autotrack` builtin),
|
|
31472
|
+
* which follows a subject with `ptz.move` pulses driven by the detection
|
|
31473
|
+
* pipeline. `defaultActive: false` — the operator binds it per camera in
|
|
31474
|
+
* the bindings UI, exactly as `virtual-doorbell` is bound.
|
|
31475
|
+
*
|
|
31476
|
+
* The binding chooses WHICH implementation answers; `setEnabled` stays the
|
|
31477
|
+
* one switch for the function either way. A camera never has both driving its
|
|
31478
|
+
* head, which is the whole reason this is not a second cap with a second
|
|
31479
|
+
* toggle (D62, D520).
|
|
31480
|
+
*/
|
|
31481
|
+
kind: "wrapper",
|
|
31482
|
+
defaultActive: false,
|
|
31436
31483
|
deviceTypes: [DeviceType.Camera],
|
|
31437
31484
|
deviceConfig: { ui: {
|
|
31438
31485
|
kind: "widget",
|
|
@@ -44830,17 +44877,13 @@ async function warmNodePty() {
|
|
|
44830
44877
|
//#endregion
|
|
44831
44878
|
//#region src/silence-analysis.ts
|
|
44832
44879
|
/**
|
|
44833
|
-
* Every
|
|
44880
|
+
* Every analyser a Terminal camera is created with switched OFF.
|
|
44834
44881
|
*
|
|
44835
|
-
*
|
|
44836
|
-
*
|
|
44837
|
-
*
|
|
44882
|
+
* An alias, not a copy. This list and the grid's were separate and had drifted
|
|
44883
|
+
* — neither named `pipeline-analytics` — so both now read the one in
|
|
44884
|
+
* `@camstack/types`, which is the package they already share.
|
|
44838
44885
|
*/
|
|
44839
|
-
var TERMINAL_SILENCED_CAP_NAMES =
|
|
44840
|
-
"motion-detection",
|
|
44841
|
-
DETECTION_PIPELINE_CAP_NAME,
|
|
44842
|
-
AUDIO_ANALYSIS_CAP_NAME
|
|
44843
|
-
];
|
|
44886
|
+
var TERMINAL_SILENCED_CAP_NAMES = DERIVED_CAMERA_SILENCED_CAP_NAMES;
|
|
44844
44887
|
/**
|
|
44845
44888
|
* Resolve the addon currently providing `capName` for this device.
|
|
44846
44889
|
*
|
package/dist/addon.mjs
CHANGED
|
@@ -5369,7 +5369,7 @@ var ZodIssueCode = {
|
|
|
5369
5369
|
var ZodFirstPartyTypeKind;
|
|
5370
5370
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5371
5371
|
//#endregion
|
|
5372
|
-
//#region ../types/dist/sleep-
|
|
5372
|
+
//#region ../types/dist/sleep-GU_us3DG.mjs
|
|
5373
5373
|
/**
|
|
5374
5374
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5375
5375
|
* window to float samples (D455).
|
|
@@ -7859,13 +7859,37 @@ var CameraSwitchGroupSchema = object({
|
|
|
7859
7859
|
fetchedAt: number()
|
|
7860
7860
|
});
|
|
7861
7861
|
/**
|
|
7862
|
-
*
|
|
7863
|
-
*
|
|
7864
|
-
*
|
|
7865
|
-
*
|
|
7862
|
+
* Every analyser a camera CamStack BUILDS is created with switched off.
|
|
7863
|
+
*
|
|
7864
|
+
* A grid and a Terminal camera are `DeviceType.Camera`, so every wrapper that
|
|
7865
|
+
* declares `defaultActive: true` for a camera binds to them the instant they
|
|
7866
|
+
* exist — the whole analysis family included. There is nothing there to
|
|
7867
|
+
* analyse: a grid's subjects are already counted on the cameras it composes (a
|
|
7868
|
+
* person in the bottom-right cell is a person on THAT camera, not on the grid),
|
|
7869
|
+
* and a Terminal camera shows a shell.
|
|
7870
|
+
*
|
|
7871
|
+
* ONE list, in the package both already depend on, because there were two and
|
|
7872
|
+
* they had already drifted: the Terminal's and the grid's each named three caps
|
|
7873
|
+
* and neither named `pipeline-analytics` — which has no gate of its own except
|
|
7874
|
+
* this binding, so a grid that forwards its sources' motion (so the viewer can
|
|
7875
|
+
* light its tile) would open a motion EPISODE per forwarded event, duplicating
|
|
7876
|
+
* the rows those sources already write.
|
|
7877
|
+
*
|
|
7878
|
+
* `motion-detection` sits first deliberately: it is the one that holds the
|
|
7879
|
+
* decode session open, so its absence is the difference between a derived
|
|
7880
|
+
* camera costing a composition and costing a full decode pipeline.
|
|
7881
|
+
*
|
|
7882
|
+
* Applied ONLY at creation. An operator who deliberately turns analysis back on
|
|
7883
|
+
* for a grid must win, and a reconcile that re-asserted this every pass would
|
|
7884
|
+
* silently overrule them once a minute.
|
|
7866
7885
|
*/
|
|
7867
|
-
var
|
|
7868
|
-
|
|
7886
|
+
var DERIVED_CAMERA_SILENCED_CAP_NAMES = [
|
|
7887
|
+
"motion-detection",
|
|
7888
|
+
"detection-pipeline",
|
|
7889
|
+
"audio-analysis",
|
|
7890
|
+
"pipeline-analytics",
|
|
7891
|
+
"scene-monitor"
|
|
7892
|
+
];
|
|
7869
7893
|
/**
|
|
7870
7894
|
* What the gate decided about a birth, from the CALLER's point of view.
|
|
7871
7895
|
*
|
|
@@ -29047,11 +29071,15 @@ var motionTriggerCapability = {
|
|
|
29047
29071
|
*
|
|
29048
29072
|
* Adding a fifth name to that list would have been the wrong fix twice over:
|
|
29049
29073
|
* that page is per-camera DETECTION tuning, and a grid's geometry belongs
|
|
29050
|
-
* beside PTZ and motion zones on the camera itself
|
|
29051
|
-
*
|
|
29052
|
-
*
|
|
29053
|
-
*
|
|
29054
|
-
*
|
|
29074
|
+
* beside PTZ and motion zones on the camera itself. The device page is
|
|
29075
|
+
* BINDING-driven (D12), so the way in is a capability bound to the device —
|
|
29076
|
+
* and this cap carries its section the way `recording` does, by RETURNING it
|
|
29077
|
+
* from `getDeviceSettingsContribution`.
|
|
29078
|
+
*
|
|
29079
|
+
* Seven other widgets are still declared the other way, through a
|
|
29080
|
+
* `deviceConfig.ui` block the framework derives a section from. That route
|
|
29081
|
+
* gives the addon no say in where its own panel lands and no way to decline
|
|
29082
|
+
* for a device the panel does not suit, which is why this one does not use it.
|
|
29055
29083
|
*
|
|
29056
29084
|
* ## Why one addon may implement it
|
|
29057
29085
|
*
|
|
@@ -31410,6 +31438,25 @@ var ptzAutotrackCapability = {
|
|
|
31410
31438
|
scope: "device",
|
|
31411
31439
|
deviceNative: true,
|
|
31412
31440
|
mode: "singleton",
|
|
31441
|
+
/**
|
|
31442
|
+
* Two kinds of provider behind one name, the same shape `snapshot` and
|
|
31443
|
+
* `doorbell` use:
|
|
31444
|
+
*
|
|
31445
|
+
* - **Native**: the camera's own firmware autotrack, registered per device by
|
|
31446
|
+
* the driver when the probe says it exists (Reolink: yes; Hikvision:
|
|
31447
|
+
* model-dependent).
|
|
31448
|
+
* - **Wrapper**: the emulated implementation (`@camstack/system`'s `autotrack` builtin),
|
|
31449
|
+
* which follows a subject with `ptz.move` pulses driven by the detection
|
|
31450
|
+
* pipeline. `defaultActive: false` — the operator binds it per camera in
|
|
31451
|
+
* the bindings UI, exactly as `virtual-doorbell` is bound.
|
|
31452
|
+
*
|
|
31453
|
+
* The binding chooses WHICH implementation answers; `setEnabled` stays the
|
|
31454
|
+
* one switch for the function either way. A camera never has both driving its
|
|
31455
|
+
* head, which is the whole reason this is not a second cap with a second
|
|
31456
|
+
* toggle (D62, D520).
|
|
31457
|
+
*/
|
|
31458
|
+
kind: "wrapper",
|
|
31459
|
+
defaultActive: false,
|
|
31413
31460
|
deviceTypes: [DeviceType.Camera],
|
|
31414
31461
|
deviceConfig: { ui: {
|
|
31415
31462
|
kind: "widget",
|
|
@@ -44807,17 +44854,13 @@ async function warmNodePty() {
|
|
|
44807
44854
|
//#endregion
|
|
44808
44855
|
//#region src/silence-analysis.ts
|
|
44809
44856
|
/**
|
|
44810
|
-
* Every
|
|
44857
|
+
* Every analyser a Terminal camera is created with switched OFF.
|
|
44811
44858
|
*
|
|
44812
|
-
*
|
|
44813
|
-
*
|
|
44814
|
-
*
|
|
44859
|
+
* An alias, not a copy. This list and the grid's were separate and had drifted
|
|
44860
|
+
* — neither named `pipeline-analytics` — so both now read the one in
|
|
44861
|
+
* `@camstack/types`, which is the package they already share.
|
|
44815
44862
|
*/
|
|
44816
|
-
var TERMINAL_SILENCED_CAP_NAMES =
|
|
44817
|
-
"motion-detection",
|
|
44818
|
-
DETECTION_PIPELINE_CAP_NAME,
|
|
44819
|
-
AUDIO_ANALYSIS_CAP_NAME
|
|
44820
|
-
];
|
|
44863
|
+
var TERMINAL_SILENCED_CAP_NAMES = DERIVED_CAMERA_SILENCED_CAP_NAMES;
|
|
44821
44864
|
/**
|
|
44822
44865
|
* Resolve the addon currently providing `capName` for this device.
|
|
44823
44866
|
*
|