Add interaction and triggered conditions.

This commit is contained in:
Dermot Duffy
2024-01-25 22:06:21 -08:00
parent 06f2151bab
commit 5e72070c96
27 changed files with 379 additions and 90 deletions
+10
View File
@@ -95,6 +95,7 @@ export class TriggersManager {
cameraID === this._api.getViewManager().getView()?.camera)
) {
this._triggeredCameras.set(cameraID, now);
this._setConditionState();
this._triggerAction(cameraID);
}
}
@@ -132,6 +133,14 @@ export class TriggersManager {
this._api.getCardElementManager().update();
}
protected _setConditionState(): void {
this._api.getConditionsManager().setState({
triggered: this._triggeredCameras.size
? new Set(this._triggeredCameras.keys())
: undefined,
});
}
protected _untriggerAction(cameraID: string): void {
const action = this._api.getConfigManager().getConfig()?.view.scan.actions.untrigger;
@@ -140,6 +149,7 @@ export class TriggersManager {
}
this._triggeredCameras.delete(cameraID);
this._deleteTimer(cameraID);
this._setConditionState();
// Must update master element to remove border pulsing.
this._api.getCardElementManager().update();