homebridge-eufy-security 2.2.0-beta.1 → 2.2.0-beta.4
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/CHANGELOG.md +23 -1
- package/dist/accessories/CameraAccessory.d.ts.map +1 -1
- package/dist/accessories/CameraAccessory.js +37 -13
- package/dist/accessories/CameraAccessory.js.map +1 -1
- package/dist/accessories/Device.d.ts.map +1 -1
- package/dist/accessories/Device.js +15 -0
- package/dist/accessories/Device.js.map +1 -1
- package/dist/accessories/DoorbellCameraAccessory.d.ts.map +1 -1
- package/dist/accessories/DoorbellCameraAccessory.js +0 -6
- package/dist/accessories/DoorbellCameraAccessory.js.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/controller/SnapshotManager.d.ts +2 -1
- package/dist/controller/SnapshotManager.d.ts.map +1 -1
- package/dist/controller/SnapshotManager.js +29 -7
- package/dist/controller/SnapshotManager.js.map +1 -1
- package/dist/controller/streamingDelegate.d.ts.map +1 -1
- package/dist/controller/streamingDelegate.js +1 -0
- package/dist/controller/streamingDelegate.js.map +1 -1
- package/dist/platform.d.ts +4 -2
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +19 -2
- package/dist/platform.js.map +1 -1
- package/dist/utils/EufyClientInteractor.d.ts +34 -0
- package/dist/utils/EufyClientInteractor.d.ts.map +1 -0
- package/dist/utils/EufyClientInteractor.js +310 -0
- package/dist/utils/EufyClientInteractor.js.map +1 -0
- package/dist/utils/Talkback.d.ts +2 -0
- package/dist/utils/Talkback.d.ts.map +1 -1
- package/dist/utils/Talkback.js +11 -2
- package/dist/utils/Talkback.js.map +1 -1
- package/dist/utils/configTypes.d.ts +5 -0
- package/dist/utils/configTypes.d.ts.map +1 -1
- package/dist/utils/experimental.d.ts +4 -0
- package/dist/utils/experimental.d.ts.map +1 -0
- package/dist/utils/experimental.js +49 -0
- package/dist/utils/experimental.js.map +1 -0
- package/dist/utils/ffmpeg.d.ts +3 -0
- package/dist/utils/ffmpeg.d.ts.map +1 -1
- package/dist/utils/ffmpeg.js +63 -19
- package/dist/utils/ffmpeg.js.map +1 -1
- package/dist/utils/interfaces.d.ts +12 -0
- package/dist/utils/interfaces.d.ts.map +1 -0
- package/dist/utils/interfaces.js +12 -0
- package/dist/utils/interfaces.js.map +1 -0
- package/homebridge-ui/plugin/utils/EufyClientInteractor.d.ts +34 -0
- package/homebridge-ui/plugin/utils/EufyClientInteractor.d.ts.map +1 -0
- package/homebridge-ui/plugin/utils/EufyClientInteractor.js +310 -0
- package/homebridge-ui/plugin/utils/EufyClientInteractor.js.map +1 -0
- package/homebridge-ui/plugin/utils/experimental.d.ts +4 -0
- package/homebridge-ui/plugin/utils/experimental.d.ts.map +1 -0
- package/homebridge-ui/plugin/utils/experimental.js +49 -0
- package/homebridge-ui/plugin/utils/experimental.js.map +1 -0
- package/homebridge-ui/plugin/utils/interfaces.d.ts +12 -0
- package/homebridge-ui/plugin/utils/interfaces.d.ts.map +1 -0
- package/homebridge-ui/plugin/utils/interfaces.js +12 -0
- package/homebridge-ui/plugin/utils/interfaces.js.map +1 -0
- package/homebridge-ui/plugin/utils/logger.d.ts +12 -0
- package/homebridge-ui/plugin/utils/logger.d.ts.map +1 -0
- package/homebridge-ui/plugin/utils/logger.js +36 -0
- package/homebridge-ui/plugin/utils/logger.js.map +1 -0
- package/homebridge-ui/public/3rdpartylicenses.txt +169 -0
- package/homebridge-ui/public/index.html +1 -1
- package/homebridge-ui/public/main.cf8346cc1457cd72.js +1 -0
- package/homebridge-ui/server.js +14 -1
- package/homebridge-ui/server.js.map +1 -1
- package/package.json +2 -2
- package/homebridge-ui/public/main.1271ca7a8e752b32.js +0 -1
package/dist/utils/Talkback.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ export declare class TalkbackStream extends Duplex {
|
|
|
9
9
|
private talkbackStarted;
|
|
10
10
|
private stopTalkbackTimeout?;
|
|
11
11
|
private targetStream?;
|
|
12
|
+
private talkbackStartedHandle;
|
|
13
|
+
private talkbackStoppedHandle;
|
|
12
14
|
constructor(platform: EufySecurityPlatform, camera: Device);
|
|
13
15
|
private onTalkbackStarted;
|
|
14
16
|
private onTalkbackStopped;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Talkback.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/Talkback.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"Talkback.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/Talkback.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,MAAM,EAAW,MAAM,sBAAsB,CAAC;AAEvD,qBAAa,cAAe,SAAQ,MAAM;IAExC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,mBAAmB,CAAC,CAAiB;IAE7C,OAAO,CAAC,YAAY,CAAC,CAAW;IAEhC,OAAO,CAAC,qBAAqB,CAE3B;IAEF,OAAO,CAAC,qBAAqB,CAE3B;gBAEU,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM;IAU1D,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,iBAAiB;IAalB,kBAAkB,IAAI,IAAI;IAUxB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQzB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,KAAK,IAAI,GAAG,IAAI;IAmBpH,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,YAAY;CAUrB"}
|
package/dist/utils/Talkback.js
CHANGED
|
@@ -7,10 +7,16 @@ class TalkbackStream extends stream_1.Duplex {
|
|
|
7
7
|
super();
|
|
8
8
|
this.cacheData = [];
|
|
9
9
|
this.talkbackStarted = false;
|
|
10
|
+
this.talkbackStartedHandle = (station, device, stream) => {
|
|
11
|
+
this.onTalkbackStarted(station, device, stream);
|
|
12
|
+
};
|
|
13
|
+
this.talkbackStoppedHandle = (station, device) => {
|
|
14
|
+
this.onTalkbackStopped(station, device);
|
|
15
|
+
};
|
|
10
16
|
this.platform = platform;
|
|
11
17
|
this.camera = camera;
|
|
12
|
-
this.platform.eufyClient.on('station talkback start', this.
|
|
13
|
-
this.platform.eufyClient.on('station talkback stop', this.
|
|
18
|
+
this.platform.eufyClient.on('station talkback start', this.talkbackStartedHandle);
|
|
19
|
+
this.platform.eufyClient.on('station talkback stop', this.talkbackStoppedHandle);
|
|
14
20
|
}
|
|
15
21
|
onTalkbackStarted(station, device, stream) {
|
|
16
22
|
if (device.getSerial() !== this.camera.getSerial()) {
|
|
@@ -34,6 +40,9 @@ class TalkbackStream extends stream_1.Duplex {
|
|
|
34
40
|
this.targetStream = undefined;
|
|
35
41
|
}
|
|
36
42
|
stopTalkbackStream() {
|
|
43
|
+
// remove event listeners
|
|
44
|
+
this.platform.eufyClient.removeListener('station talkback start', this.talkbackStartedHandle);
|
|
45
|
+
this.platform.eufyClient.removeListener('station talkback stop', this.talkbackStoppedHandle);
|
|
37
46
|
this.stopTalkback();
|
|
38
47
|
this.unpipe();
|
|
39
48
|
this.destroy();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Talkback.js","sourceRoot":"","sources":["../../src/plugin/utils/Talkback.ts"],"names":[],"mappings":";;;AAAA,mCAA0C;AAK1C,MAAa,cAAe,SAAQ,eAAM;
|
|
1
|
+
{"version":3,"file":"Talkback.js","sourceRoot":"","sources":["../../src/plugin/utils/Talkback.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ export declare type CameraConfig = {
|
|
|
23
23
|
delayCameraSnapshot?: boolean;
|
|
24
24
|
talkback?: boolean;
|
|
25
25
|
hsv?: boolean;
|
|
26
|
+
experimentalRTSP?: boolean;
|
|
26
27
|
};
|
|
27
28
|
export declare type VideoConfig = {
|
|
28
29
|
source?: string;
|
|
@@ -44,10 +45,14 @@ export declare type VideoConfig = {
|
|
|
44
45
|
encoderOptions?: string;
|
|
45
46
|
audio?: boolean;
|
|
46
47
|
audioSampleRate?: number;
|
|
48
|
+
audioBitrate?: number;
|
|
49
|
+
acodecHK?: string;
|
|
50
|
+
acodecOptions?: string;
|
|
47
51
|
debug?: boolean;
|
|
48
52
|
debugReturn?: boolean;
|
|
49
53
|
useSeparateProcesses?: boolean;
|
|
50
54
|
crop?: boolean;
|
|
55
|
+
videoProcessor?: string;
|
|
51
56
|
};
|
|
52
57
|
export declare type StationConfig = {
|
|
53
58
|
serialNumber?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configTypes.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/configTypes.ts"],"names":[],"mappings":"AAAA,oBAAY,YAAY,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wCAAwC,CAAC,EAAE,OAAO,CAAC;IACnD,mBAAmB,CAAC,EAAC,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"configTypes.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/configTypes.ts"],"names":[],"mappings":"AAAA,oBAAY,YAAY,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wCAAwC,CAAC,EAAE,OAAO,CAAC;IACnD,mBAAmB,CAAC,EAAC,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"experimental.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/experimental.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,OAAO,EACP,MAAM,EACP,MAAM,sBAAsB,CAAC;AAE9B,eAAO,MAAM,0BAA0B,YAEtC,CAAC;AA6CF,eAAO,MAAM,iBAAiB,YAAa,OAAO,UAAU,MAAM,SAAS,OAAO,SAEjF,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setRTSPCapability = exports.initializeExperimentalMode = void 0;
|
|
4
|
+
const eufy_security_client_1 = require("eufy-security-client");
|
|
5
|
+
const initializeExperimentalMode = () => {
|
|
6
|
+
addRTSPPropertiesToAllDevices();
|
|
7
|
+
};
|
|
8
|
+
exports.initializeExperimentalMode = initializeExperimentalMode;
|
|
9
|
+
eufy_security_client_1.PropertyName['ExperimentalModification'] = 'experimentalModification';
|
|
10
|
+
const DeviceExperimentalModification = {
|
|
11
|
+
key: 0,
|
|
12
|
+
name: eufy_security_client_1.PropertyName['ExperimentalModification'],
|
|
13
|
+
label: 'Experimental Modification',
|
|
14
|
+
readable: true,
|
|
15
|
+
writeable: false,
|
|
16
|
+
type: 'boolean',
|
|
17
|
+
};
|
|
18
|
+
const addRTSPPropertiesToAllDevices = () => {
|
|
19
|
+
const deviceTypes = Object.values(eufy_security_client_1.DeviceType).filter(t => !isNaN(Number(t)));
|
|
20
|
+
deviceTypes.forEach(deviceType => addRTSPPropertiesToDevice(deviceType));
|
|
21
|
+
};
|
|
22
|
+
const addRTSPPropertiesToDevice = (deviceType) => {
|
|
23
|
+
let changed = false;
|
|
24
|
+
if (eufy_security_client_1.DeviceProperties[deviceType] && !eufy_security_client_1.DeviceProperties[deviceType][eufy_security_client_1.PropertyName.DeviceRTSPStream]) {
|
|
25
|
+
eufy_security_client_1.DeviceProperties[deviceType] = {
|
|
26
|
+
...eufy_security_client_1.DeviceProperties[deviceType],
|
|
27
|
+
[eufy_security_client_1.PropertyName.DeviceRTSPStream]: eufy_security_client_1.DeviceRTSPStreamProperty,
|
|
28
|
+
};
|
|
29
|
+
changed = true;
|
|
30
|
+
}
|
|
31
|
+
if (eufy_security_client_1.DeviceProperties[deviceType] && !eufy_security_client_1.DeviceProperties[deviceType][eufy_security_client_1.PropertyName.DeviceRTSPStreamUrl]) {
|
|
32
|
+
eufy_security_client_1.DeviceProperties[deviceType] = {
|
|
33
|
+
...eufy_security_client_1.DeviceProperties[deviceType],
|
|
34
|
+
[eufy_security_client_1.PropertyName.DeviceRTSPStreamUrl]: eufy_security_client_1.DeviceRTSPStreamUrlProperty,
|
|
35
|
+
};
|
|
36
|
+
changed = true;
|
|
37
|
+
}
|
|
38
|
+
if (changed && eufy_security_client_1.DeviceProperties[deviceType] && !eufy_security_client_1.DeviceProperties[deviceType][eufy_security_client_1.PropertyName['ExperimentalModification']]) {
|
|
39
|
+
eufy_security_client_1.DeviceProperties[deviceType] = {
|
|
40
|
+
...eufy_security_client_1.DeviceProperties[deviceType],
|
|
41
|
+
[eufy_security_client_1.PropertyName['ExperimentalModification']]: DeviceExperimentalModification,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
const setRTSPCapability = (station, device, value) => {
|
|
46
|
+
station.setRTSPStream(device, value);
|
|
47
|
+
};
|
|
48
|
+
exports.setRTSPCapability = setRTSPCapability;
|
|
49
|
+
//# sourceMappingURL=experimental.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"experimental.js","sourceRoot":"","sources":["../../src/plugin/utils/experimental.ts"],"names":[],"mappings":";;;AAAA,+DAS8B;AAEvB,MAAM,0BAA0B,GAAG,GAAG,EAAE;IAC7C,6BAA6B,EAAE,CAAC;AAClC,CAAC,CAAC;AAFW,QAAA,0BAA0B,8BAErC;AAEF,mCAAY,CAAC,0BAA0B,CAAC,GAAG,0BAA0B,CAAC;AAEtE,MAAM,8BAA8B,GAA4B;IAC9D,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,mCAAY,CAAC,0BAA0B,CAAC;IAC9C,KAAK,EAAE,2BAA2B;IAClC,QAAQ,EAAE,IAAI;IACd,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,MAAM,6BAA6B,GAAG,GAAG,EAAE;IACzC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,iCAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAAC;AAC3E,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,UAA+B,EAAE,EAAE;IACpE,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,uCAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,uCAAgB,CAAC,UAAU,CAAC,CAAC,mCAAY,CAAC,gBAAgB,CAAC,EAAE;QAChG,uCAAgB,CAAC,UAAU,CAAC,GAAG;YAC7B,GAAG,uCAAgB,CAAC,UAAU,CAAC;YAC/B,CAAC,mCAAY,CAAC,gBAAgB,CAAC,EAAE,+CAAwB;SAC1D,CAAC;QACF,OAAO,GAAG,IAAI,CAAC;KAChB;IAED,IAAI,uCAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,uCAAgB,CAAC,UAAU,CAAC,CAAC,mCAAY,CAAC,mBAAmB,CAAC,EAAE;QACnG,uCAAgB,CAAC,UAAU,CAAC,GAAG;YAC7B,GAAG,uCAAgB,CAAC,UAAU,CAAC;YAC/B,CAAC,mCAAY,CAAC,mBAAmB,CAAC,EAAE,kDAA2B;SAChE,CAAC;QACF,OAAO,GAAG,IAAI,CAAC;KAChB;IAED,IAAI,OAAO,IAAI,uCAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,uCAAgB,CAAC,UAAU,CAAC,CAAC,mCAAY,CAAC,0BAA0B,CAAC,CAAC,EAAE;QACtH,uCAAgB,CAAC,UAAU,CAAC,GAAG;YAC7B,GAAG,uCAAgB,CAAC,UAAU,CAAC;YAC/B,CAAC,mCAAY,CAAC,0BAA0B,CAAC,CAAC,EAAE,8BAA8B;SAC3E,CAAC;KACH;AACH,CAAC,CAAC;AAEK,MAAM,iBAAiB,GAAG,CAAC,OAAgB,EAAE,MAAc,EAAE,KAAc,EAAE,EAAE;IACpF,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACvC,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B"}
|
package/dist/utils/ffmpeg.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { SessionInfo } from '../controller/streamingDelegate';
|
|
|
10
10
|
export declare class FFmpegParameters {
|
|
11
11
|
progressPort: number;
|
|
12
12
|
debug: boolean;
|
|
13
|
+
processor?: string;
|
|
13
14
|
private hideBanner;
|
|
14
15
|
private useWallclockAsTimestamp;
|
|
15
16
|
private inputSoure;
|
|
@@ -74,6 +75,8 @@ export declare class FFmpegParameters {
|
|
|
74
75
|
static getRecordingArguments(parameters: FFmpegParameters[]): string[];
|
|
75
76
|
static getCombinedArguments(parameters: FFmpegParameters[]): string[];
|
|
76
77
|
getStreamStartText(): string;
|
|
78
|
+
hasCustomFfmpeg(): boolean;
|
|
79
|
+
getCustomFfmpeg(): string;
|
|
77
80
|
}
|
|
78
81
|
export declare class FFmpeg extends EventEmitter {
|
|
79
82
|
private process?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ffmpeg.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/ffmpeg.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,8BAA8B,EAAS,MAAM,eAAe,CAAC;AACtE,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAK5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAIL,4BAA4B,EAG5B,wBAAwB,EACxB,eAAe,EACf,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AA0D9D,qBAAa,gBAAgB;IAEpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;IAGtB,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,uBAAuB,CAAQ;IAEvC,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,iBAAiB,CAAC,CAAS;IACnC,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,MAAM,CAAY;IAEnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IAG3B,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,CAAU;IAC3B,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,OAAO,CAAC,CAAS;IAGzB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,IAAI,CAAC,CAAS;IACtB,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAS;IAGxB,OAAO,CAAC,GAAG,CAAC,CAAS;IACrB,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,KAAK,CAAC,CAAS;IACvB,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,IAAI,CAAS;IAGrB,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,iBAAiB,CAAS;IAGlC,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAS;IAG9B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,cAAc,CAAC,CAAS;IAEhC,OAAO;WAQM,QAAQ,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAYlD,QAAQ,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;WASlD,WAAW,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAarD,iBAAiB,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAW3D,iBAAiB,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAUjE,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAK3C,gBAAgB,IAAI,OAAO;IAI3B,cAAc,CAAC,KAAK,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"ffmpeg.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/ffmpeg.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/ffmpeg.js
CHANGED
|
@@ -56,7 +56,6 @@ class FFmpegProgress extends events_1.default {
|
|
|
56
56
|
}
|
|
57
57
|
class FFmpegParameters {
|
|
58
58
|
constructor(port, isVideo, isAudio, isSnapshot, debug = false) {
|
|
59
|
-
// default parameters
|
|
60
59
|
this.hideBanner = true;
|
|
61
60
|
this.useWallclockAsTimestamp = true;
|
|
62
61
|
this.inputSoure = '-i pipe:';
|
|
@@ -129,7 +128,6 @@ class FFmpegParameters {
|
|
|
129
128
|
return this.inputSoure === '-i pipe:';
|
|
130
129
|
}
|
|
131
130
|
setInputSource(value) {
|
|
132
|
-
// TODO: check for errors
|
|
133
131
|
this.inputSoure = `-i ${value}`;
|
|
134
132
|
}
|
|
135
133
|
async setInputStream(input) {
|
|
@@ -164,6 +162,9 @@ class FFmpegParameters {
|
|
|
164
162
|
setup(cameraConfig, request) {
|
|
165
163
|
var _a;
|
|
166
164
|
const videoConfig = (_a = cameraConfig.videoConfig) !== null && _a !== void 0 ? _a : (cameraConfig.videoConfig = {});
|
|
165
|
+
if (videoConfig.videoProcessor && videoConfig.videoProcessor !== '') {
|
|
166
|
+
this.processor = videoConfig.videoProcessor;
|
|
167
|
+
}
|
|
167
168
|
if (videoConfig.readRate) {
|
|
168
169
|
this.readrate = videoConfig.readRate;
|
|
169
170
|
}
|
|
@@ -191,7 +192,7 @@ class FFmpegParameters {
|
|
|
191
192
|
this.bufsize = bitrate * 2;
|
|
192
193
|
this.maxrate = bitrate;
|
|
193
194
|
let encoderOptions = codec === 'libx264' ? '-preset ultrafast -tune zerolatency' : '';
|
|
194
|
-
if (videoConfig.encoderOptions
|
|
195
|
+
if (videoConfig.encoderOptions) {
|
|
195
196
|
encoderOptions = videoConfig.encoderOptions;
|
|
196
197
|
}
|
|
197
198
|
this.codecOptions = encoderOptions;
|
|
@@ -217,25 +218,38 @@ class FFmpegParameters {
|
|
|
217
218
|
}
|
|
218
219
|
if (this.isAudio) {
|
|
219
220
|
const req = request;
|
|
220
|
-
let codec =
|
|
221
|
-
let codecOptions =
|
|
221
|
+
let codec = 'libfdk_aac';
|
|
222
|
+
let codecOptions = '-profile:a aac_eld';
|
|
223
|
+
switch (req.audio.codec) {
|
|
224
|
+
case "OPUS" /* OPUS */:
|
|
225
|
+
codec = 'libopus';
|
|
226
|
+
codecOptions = '-application lowdelay';
|
|
227
|
+
break;
|
|
228
|
+
default:
|
|
229
|
+
codec = 'libfdk_aac';
|
|
230
|
+
codecOptions = '-profile:a aac_eld';
|
|
231
|
+
break;
|
|
232
|
+
}
|
|
222
233
|
if (videoConfig.acodec && videoConfig.acodec !== '') {
|
|
223
234
|
codec = videoConfig.acodec;
|
|
224
235
|
codecOptions = '';
|
|
225
236
|
}
|
|
237
|
+
if (videoConfig.acodecOptions !== undefined) {
|
|
238
|
+
codecOptions = videoConfig.acodecOptions;
|
|
239
|
+
}
|
|
226
240
|
if (this.flagsGlobalHeader) {
|
|
227
|
-
codecOptions
|
|
241
|
+
if (codecOptions !== '') {
|
|
242
|
+
codecOptions += ' ';
|
|
243
|
+
}
|
|
244
|
+
codecOptions += '-flags +global_header';
|
|
228
245
|
}
|
|
229
246
|
this.codec = codec;
|
|
230
247
|
this.codecOptions = codecOptions;
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
248
|
+
if (this.codec !== ' copy') {
|
|
249
|
+
this.sampleRate = req.audio.sample_rate;
|
|
250
|
+
this.channels = req.audio.channel;
|
|
251
|
+
this.bitrate = videoConfig.audioBitrate ? videoConfig.audioBitrate : req.audio.max_bit_rate;
|
|
235
252
|
}
|
|
236
|
-
this.sampleRate = samplerate;
|
|
237
|
-
this.channels = req.audio.channel;
|
|
238
|
-
this.bitrate = req.audio.max_bit_rate;
|
|
239
253
|
}
|
|
240
254
|
if (this.isSnapshot) {
|
|
241
255
|
const req = request;
|
|
@@ -281,6 +295,9 @@ class FFmpegParameters {
|
|
|
281
295
|
setupForRecording(videoConfig, configuration) {
|
|
282
296
|
this.movflags = 'frag_keyframe+empty_moov+default_base_moof';
|
|
283
297
|
this.maxMuxingQueueSize = 1024;
|
|
298
|
+
if (videoConfig.videoProcessor && videoConfig.videoProcessor !== '') {
|
|
299
|
+
this.processor = videoConfig.videoProcessor;
|
|
300
|
+
}
|
|
284
301
|
if (this.isVideo) {
|
|
285
302
|
if (videoConfig.vcodec && videoConfig.vcodec !== '') {
|
|
286
303
|
this.codec = videoConfig.vcodec;
|
|
@@ -588,6 +605,12 @@ class FFmpegParameters {
|
|
|
588
605
|
}
|
|
589
606
|
return 'Starting unknown stream';
|
|
590
607
|
}
|
|
608
|
+
hasCustomFfmpeg() {
|
|
609
|
+
return (this.processor !== undefined);
|
|
610
|
+
}
|
|
611
|
+
getCustomFfmpeg() {
|
|
612
|
+
return (this.hasCustomFfmpeg()) ? this.processor : '';
|
|
613
|
+
}
|
|
591
614
|
}
|
|
592
615
|
exports.FFmpegParameters = FFmpegParameters;
|
|
593
616
|
class FFmpeg extends events_1.default {
|
|
@@ -605,6 +628,9 @@ class FFmpeg extends events_1.default {
|
|
|
605
628
|
else {
|
|
606
629
|
this.parameters = [parameters];
|
|
607
630
|
}
|
|
631
|
+
if (this.parameters[0].hasCustomFfmpeg()) {
|
|
632
|
+
this.ffmpegExec = this.parameters[0].getCustomFfmpeg();
|
|
633
|
+
}
|
|
608
634
|
}
|
|
609
635
|
start() {
|
|
610
636
|
this.starttime = Date.now();
|
|
@@ -619,9 +645,15 @@ class FFmpeg extends events_1.default {
|
|
|
619
645
|
this.stdin = this.process.stdin;
|
|
620
646
|
this.stdout = this.process.stdout;
|
|
621
647
|
this.process.stderr.on('data', (chunk) => {
|
|
622
|
-
|
|
648
|
+
const isError = chunk.toString().indexOf('[panic]') !== -1 ||
|
|
649
|
+
chunk.toString().indexOf('[error]') !== -1 ||
|
|
650
|
+
chunk.toString().indexOf('[fatal]') !== -1;
|
|
651
|
+
if (this.parameters[0].debug && !isError) {
|
|
623
652
|
this.log.debug(this.name, 'ffmpeg log message:\n' + chunk.toString());
|
|
624
653
|
}
|
|
654
|
+
else if (isError) {
|
|
655
|
+
this.log.error(this.name, 'ffmpeg log message:\n' + chunk.toString());
|
|
656
|
+
}
|
|
625
657
|
});
|
|
626
658
|
this.process.on('error', this.onProcessError.bind(this));
|
|
627
659
|
this.process.on('exit', this.onProcessExit.bind(this));
|
|
@@ -635,9 +667,15 @@ class FFmpeg extends events_1.default {
|
|
|
635
667
|
return new Promise((resolve, reject) => {
|
|
636
668
|
this.process = (0, child_process_1.spawn)(this.ffmpegExec, processArgs.join(' ').split(/\s+/), { env: process.env });
|
|
637
669
|
this.process.stderr.on('data', (chunk) => {
|
|
638
|
-
|
|
670
|
+
const isError = chunk.toString().indexOf('[panic]') !== -1 ||
|
|
671
|
+
chunk.toString().indexOf('[error]') !== -1 ||
|
|
672
|
+
chunk.toString().indexOf('[fatal]') !== -1;
|
|
673
|
+
if (this.parameters[0].debug && !isError) {
|
|
639
674
|
this.log.debug(this.name, 'ffmpeg log message:\n' + chunk.toString());
|
|
640
675
|
}
|
|
676
|
+
else if (isError) {
|
|
677
|
+
this.log.error(this.name, 'ffmpeg log message:\n' + chunk.toString());
|
|
678
|
+
}
|
|
641
679
|
});
|
|
642
680
|
const killTimeout = setTimeout(() => {
|
|
643
681
|
this.stop();
|
|
@@ -695,11 +733,17 @@ class FFmpeg extends events_1.default {
|
|
|
695
733
|
this.process = (0, child_process_1.spawn)(this.ffmpegExec, processArgs.join(' ').split(/\s+/), { env: process.env });
|
|
696
734
|
this.stdin = this.process.stdin;
|
|
697
735
|
this.stdout = this.process.stdout;
|
|
698
|
-
|
|
699
|
-
|
|
736
|
+
this.process.stderr.on('data', (chunk) => {
|
|
737
|
+
const isError = chunk.toString().indexOf('[panic]') !== -1 ||
|
|
738
|
+
chunk.toString().indexOf('[error]') !== -1 ||
|
|
739
|
+
chunk.toString().indexOf('[fatal]') !== -1;
|
|
740
|
+
if (this.parameters[0].debug && !isError) {
|
|
700
741
|
this.log.debug(this.name, 'ffmpeg log message:\n' + chunk.toString());
|
|
701
|
-
}
|
|
702
|
-
|
|
742
|
+
}
|
|
743
|
+
else if (isError) {
|
|
744
|
+
this.log.error(this.name, 'ffmpeg log message:\n' + chunk.toString());
|
|
745
|
+
}
|
|
746
|
+
});
|
|
703
747
|
this.process.on('error', this.onProcessError.bind(this));
|
|
704
748
|
this.process.on('exit', this.onProcessExit.bind(this));
|
|
705
749
|
});
|
package/dist/utils/ffmpeg.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ffmpeg.js","sourceRoot":"","sources":["../../src/plugin/utils/ffmpeg.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ffmpeg.js","sourceRoot":"","sources":["../../src/plugin/utils/ffmpeg.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare class EufyClientNotRunningError extends Error {
|
|
2
|
+
constructor(message?: string);
|
|
3
|
+
}
|
|
4
|
+
export interface PluginConfigInteractor {
|
|
5
|
+
DeviceIsCharging(sn: string): Promise<number>;
|
|
6
|
+
DeviceSetExperimentalRTSP(sn: string, value: boolean): Promise<string>;
|
|
7
|
+
DeviceGetExperimentalRTSPStatus(sn: string): Promise<{
|
|
8
|
+
state: boolean;
|
|
9
|
+
url?: string;
|
|
10
|
+
}>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/plugin/utils/interfaces.ts"],"names":[],"mappings":"AAAA,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,CAAC,EAAE,MAAM;CAK7B;AAED,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,yBAAyB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,+BAA+B,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACxF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EufyClientNotRunningError = void 0;
|
|
4
|
+
class EufyClientNotRunningError extends Error {
|
|
5
|
+
constructor(message) {
|
|
6
|
+
super(message);
|
|
7
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
8
|
+
this.name = EufyClientNotRunningError.name;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.EufyClientNotRunningError = EufyClientNotRunningError;
|
|
12
|
+
//# sourceMappingURL=interfaces.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/plugin/utils/interfaces.ts"],"names":[],"mappings":";;;AAAA,MAAa,yBAA0B,SAAQ,KAAK;IAClD,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC;IAC7C,CAAC;CACF;AAND,8DAMC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import EventEmitter from 'events';
|
|
3
|
+
import { EufySecurity } from 'eufy-security-client';
|
|
4
|
+
import { PluginConfigInteractor } from './interfaces';
|
|
5
|
+
import { Logger } from './logger';
|
|
6
|
+
import bunyan from 'bunyan';
|
|
7
|
+
export declare class EufyClientInteractor extends EventEmitter implements PluginConfigInteractor {
|
|
8
|
+
private client?;
|
|
9
|
+
private storagePath;
|
|
10
|
+
private log;
|
|
11
|
+
private server?;
|
|
12
|
+
constructor(path: string, log: Logger | bunyan, client?: EufySecurity);
|
|
13
|
+
setClient(client: EufySecurity): void;
|
|
14
|
+
setupServer(): Promise<void>;
|
|
15
|
+
stopServer(): void;
|
|
16
|
+
private getFreePort;
|
|
17
|
+
private writePortToStoragePath;
|
|
18
|
+
private loadPort;
|
|
19
|
+
private ipcRequest;
|
|
20
|
+
private processIPCRequest;
|
|
21
|
+
private processDirectRequest;
|
|
22
|
+
private getChargingStatus;
|
|
23
|
+
private getExperimentalRTSPStatusChangeResult;
|
|
24
|
+
private getExperimentalRTSPState;
|
|
25
|
+
private onSocketError;
|
|
26
|
+
private onServerError;
|
|
27
|
+
DeviceIsCharging(sn: string): Promise<number>;
|
|
28
|
+
DeviceSetExperimentalRTSP(sn: string, value: boolean): Promise<string>;
|
|
29
|
+
DeviceGetExperimentalRTSPStatus(sn: string): Promise<{
|
|
30
|
+
state: boolean;
|
|
31
|
+
url?: string;
|
|
32
|
+
}>;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=EufyClientInteractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EufyClientInteractor.d.ts","sourceRoot":"","sources":["../../../src/plugin/utils/EufyClientInteractor.ts"],"names":[],"mappings":";AAAA,OAAO,YAAY,MAAM,QAAQ,CAAC;AAIlC,OAAO,EAAU,YAAY,EAAwC,MAAM,sBAAsB,CAAC;AAGlG,OAAO,EAA6B,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAsB5B,qBAAa,oBAAqB,SAAQ,YAAa,YAAW,sBAAsB;IAEtF,OAAO,CAAC,MAAM,CAAC,CAAe;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,GAAG,CAAkB;IAE7B,OAAO,CAAC,MAAM,CAAC,CAAa;gBAEhB,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY;IAQ9D,SAAS,CAAC,MAAM,EAAE,YAAY;IAIxB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BlC,UAAU;YAMH,WAAW;IAQzB,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,UAAU;YAmCJ,iBAAiB;YA0BjB,oBAAoB;YAoCpB,iBAAiB;YAcjB,qCAAqC;YAgDrC,wBAAwB;IAmBtC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAIf,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqB7C,yBAAyB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBtE,+BAA+B,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAoB7F"}
|