@switchbot/homebridge-switchbot 3.5.0-beta.4 → 3.5.0-beta.6
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 +2 -1
- package/dist/device/waterdetector.d.ts +3 -9
- package/dist/device/waterdetector.d.ts.map +1 -1
- package/dist/device/waterdetector.js +27 -202
- package/dist/device/waterdetector.js.map +1 -1
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +1 -0
- package/dist/platform.js.map +1 -1
- package/dist/settings.d.ts +1 -0
- package/dist/settings.d.ts.map +1 -1
- package/dist/settings.js.map +1 -1
- package/package.json +7 -7
- package/src/device/waterdetector.json +11 -0
- package/src/device/waterdetector.ts +30 -205
- package/src/platform.ts +1 -0
- package/src/settings.ts +1 -0
package/dist/settings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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E,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;KACtB,CAAC;IAEF,mBAAmB;IACnB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,CAAC;IACpB;;;MAGE;IACF,MAAM,KAAK,GAAG;QACZ,GAAG,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QACd,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QACd,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QACZ,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC;QACd,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QACd,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;KAClB,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC"}
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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E,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACrB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;KACtB,CAAC;IAEF,mBAAmB;IACnB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,CAAC;IACpB;;;MAGE;IACF,MAAM,KAAK,GAAG;QACZ,GAAG,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;QAChB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAClB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACf,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;QACjB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QACd,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QACd,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QACZ,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC;QACd,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QACd,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACb,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;QACf,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACjB,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;KAClB,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"displayName": "SwitchBot",
|
|
3
3
|
"name": "@switchbot/homebridge-switchbot",
|
|
4
|
-
"version": "3.5.0-beta.
|
|
4
|
+
"version": "3.5.0-beta.6",
|
|
5
5
|
"description": "The SwitchBot plugin allows you to access your SwitchBot device(s) from HomeKit.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "SwitchBot",
|
|
@@ -76,20 +76,20 @@
|
|
|
76
76
|
"ir"
|
|
77
77
|
],
|
|
78
78
|
"dependencies": {
|
|
79
|
-
"@homebridge/plugin-ui-utils": "^1.0.
|
|
79
|
+
"@homebridge/plugin-ui-utils": "^1.0.3",
|
|
80
80
|
"async-mqtt": "^2.6.3",
|
|
81
81
|
"fakegato-history": "^0.6.4",
|
|
82
82
|
"homebridge-lib": "^6.7.5",
|
|
83
83
|
"rxjs": "^7.8.1",
|
|
84
|
-
"undici": "^6.
|
|
84
|
+
"undici": "^6.12.0"
|
|
85
85
|
},
|
|
86
86
|
"optionalDependencies": {
|
|
87
87
|
"node-switchbot": "2.1.0-beta.2"
|
|
88
88
|
},
|
|
89
89
|
"devDependencies": {
|
|
90
|
-
"@types/node": "^20.12.
|
|
91
|
-
"@typescript-eslint/eslint-plugin": "^7.
|
|
92
|
-
"@typescript-eslint/parser": "^7.
|
|
90
|
+
"@types/node": "^20.12.6",
|
|
91
|
+
"@typescript-eslint/eslint-plugin": "^7.6.0",
|
|
92
|
+
"@typescript-eslint/parser": "^7.6.0",
|
|
93
93
|
"eslint": "^8.57.0",
|
|
94
94
|
"homebridge": "^1.7.0",
|
|
95
95
|
"homebridge-config-ui-x": "4.56.1",
|
|
@@ -97,6 +97,6 @@
|
|
|
97
97
|
"npm-check-updates": "^16.14.18",
|
|
98
98
|
"rimraf": "^5.0.5",
|
|
99
99
|
"ts-node": "^10.9.2",
|
|
100
|
-
"typescript": "^5.4.
|
|
100
|
+
"typescript": "^5.4.4"
|
|
101
101
|
}
|
|
102
102
|
}
|
|
@@ -6,8 +6,8 @@ import asyncmqtt from 'async-mqtt';
|
|
|
6
6
|
import { interval, Subject } from 'rxjs';
|
|
7
7
|
import { skipWhile } from 'rxjs/operators';
|
|
8
8
|
import { SwitchBotPlatform } from '../platform.js';
|
|
9
|
-
import { Service, PlatformAccessory,
|
|
10
|
-
import { device, devicesConfig, serviceData,
|
|
9
|
+
import { Service, PlatformAccessory, CharacteristicValue, API, Logging, HAP } from 'homebridge';
|
|
10
|
+
import { device, devicesConfig, serviceData, deviceStatus, Devices, SwitchBotPlatformConfig } from '../settings.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Platform Accessory
|
|
@@ -32,21 +32,15 @@ export class WaterDetector {
|
|
|
32
32
|
ChargingState!: CharacteristicValue;
|
|
33
33
|
StatusLowBattery!: CharacteristicValue;
|
|
34
34
|
FirmwareRevision!: CharacteristicValue;
|
|
35
|
-
CurrentTemperature!: CharacteristicValue;
|
|
36
|
-
CurrentRelativeHumidity!: CharacteristicValue;
|
|
37
35
|
|
|
38
36
|
// OpenAPI Status
|
|
39
37
|
OpenAPI_BatteryLevel: deviceStatus['battery'];
|
|
40
38
|
OpenAPI_FirmwareRevision: deviceStatus['version'];
|
|
41
|
-
|
|
42
|
-
OpenAPI_CurrentRelativeHumidity: deviceStatus['humidity'];
|
|
39
|
+
OpenAPI_LeakDetected: deviceStatus['status'];
|
|
43
40
|
|
|
44
41
|
// BLE Status
|
|
45
|
-
BLE_Celsius!: temperature['c'];
|
|
46
|
-
BLE_Fahrenheit!: temperature['f'];
|
|
47
42
|
BLE_BatteryLevel!: serviceData['battery'];
|
|
48
|
-
|
|
49
|
-
BLE_CurrentRelativeHumidity!: serviceData['humidity'];
|
|
43
|
+
BLE_LeakDetected!: number;//serviceData['status'];
|
|
50
44
|
|
|
51
45
|
// BLE Others
|
|
52
46
|
BLE_IsConnected?: boolean;
|
|
@@ -130,28 +124,6 @@ export class WaterDetector {
|
|
|
130
124
|
this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Removing Temperature Sensor Service`);
|
|
131
125
|
this.temperatureservice = this.accessory.getService(this.hap.Service.TemperatureSensor);
|
|
132
126
|
accessory.removeService(this.temperatureservice!);
|
|
133
|
-
} else if (!this.temperatureservice) {
|
|
134
|
-
this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Add Temperature Sensor Service`);
|
|
135
|
-
const temperatureservice = `${accessory.displayName} Temperature Sensor`;
|
|
136
|
-
(this.temperatureservice = this.accessory.getService(this.hap.Service.TemperatureSensor)
|
|
137
|
-
|| this.accessory.addService(this.hap.Service.TemperatureSensor)), temperatureservice;
|
|
138
|
-
|
|
139
|
-
this.temperatureservice.setCharacteristic(this.hap.Characteristic.Name, `${accessory.displayName} Temperature Sensor`);
|
|
140
|
-
if (!this.temperatureservice.testCharacteristic(this.hap.Characteristic.ConfiguredName)) {
|
|
141
|
-
this.temperatureservice.addCharacteristic(this.hap.Characteristic.ConfiguredName, `${accessory.displayName} Temperature Sensor`);
|
|
142
|
-
}
|
|
143
|
-
this.temperatureservice
|
|
144
|
-
.getCharacteristic(this.hap.Characteristic.CurrentTemperature)
|
|
145
|
-
.setProps({
|
|
146
|
-
unit: Units['CELSIUS'],
|
|
147
|
-
validValueRanges: [-273.15, 100],
|
|
148
|
-
minValue: -273.15,
|
|
149
|
-
maxValue: 100,
|
|
150
|
-
minStep: 0.1,
|
|
151
|
-
})
|
|
152
|
-
.onGet(() => {
|
|
153
|
-
return this.CurrentTemperature!;
|
|
154
|
-
});
|
|
155
127
|
} else {
|
|
156
128
|
this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Temperature Sensor Service Not Added`);
|
|
157
129
|
}
|
|
@@ -161,24 +133,6 @@ export class WaterDetector {
|
|
|
161
133
|
this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Removing Humidity Sensor Service`);
|
|
162
134
|
this.humidityservice = this.accessory.getService(this.hap.Service.HumiditySensor);
|
|
163
135
|
accessory.removeService(this.humidityservice!);
|
|
164
|
-
} else if (!this.humidityservice) {
|
|
165
|
-
this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Add Humidity Sensor Service`);
|
|
166
|
-
const humidityservice = `${accessory.displayName} Humidity Sensor`;
|
|
167
|
-
(this.humidityservice = this.accessory.getService(this.hap.Service.HumiditySensor)
|
|
168
|
-
|| this.accessory.addService(this.hap.Service.HumiditySensor)), humidityservice;
|
|
169
|
-
|
|
170
|
-
this.humidityservice.setCharacteristic(this.hap.Characteristic.Name, `${accessory.displayName} Humidity Sensor`);
|
|
171
|
-
if (!this.humidityservice.testCharacteristic(this.hap.Characteristic.ConfiguredName)) {
|
|
172
|
-
this.humidityservice.addCharacteristic(this.hap.Characteristic.ConfiguredName, `${accessory.displayName} Humidity Sensor`);
|
|
173
|
-
}
|
|
174
|
-
this.humidityservice
|
|
175
|
-
.getCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity)
|
|
176
|
-
.setProps({
|
|
177
|
-
minStep: 0.1,
|
|
178
|
-
})
|
|
179
|
-
.onGet(() => {
|
|
180
|
-
return this.CurrentRelativeHumidity;
|
|
181
|
-
});
|
|
182
136
|
} else {
|
|
183
137
|
this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Humidity Sensor Service Not Added`);
|
|
184
138
|
}
|
|
@@ -210,17 +164,14 @@ export class WaterDetector {
|
|
|
210
164
|
this.platform.webhookEventHandler[this.device.deviceId] = async (context) => {
|
|
211
165
|
try {
|
|
212
166
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} received Webhook: ${JSON.stringify(context)}`);
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
`
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
this.CurrentTemperature = temperature;
|
|
222
|
-
this.updateHomeKitCharacteristics();
|
|
223
|
-
}
|
|
167
|
+
const { status } = context;
|
|
168
|
+
const { LeakDetected } = this;
|
|
169
|
+
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} ` +
|
|
170
|
+
'(status) = ' +
|
|
171
|
+
`Webhook:(${status}), ` +
|
|
172
|
+
`current:(${LeakDetected})`);
|
|
173
|
+
this.LeakDetected = status;
|
|
174
|
+
this.updateHomeKitCharacteristics();
|
|
224
175
|
} catch (e: any) {
|
|
225
176
|
this.errorLog(`${this.device.deviceType}: ${this.accessory.displayName} `
|
|
226
177
|
+ `failed to handle webhook. Received: ${JSON.stringify(context)} Error: ${e}`);
|
|
@@ -259,55 +210,31 @@ export class WaterDetector {
|
|
|
259
210
|
}
|
|
260
211
|
this.debugLog(`${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}, StatusLowBattery: ${this.StatusLowBattery}`);
|
|
261
212
|
|
|
262
|
-
//
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Humidity: ${this.CurrentRelativeHumidity}%`);
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
// Current Temperature
|
|
269
|
-
if (!this.device.waterdetector?.hide_temperature) {
|
|
270
|
-
this.BLE_Celsius < 0 ? 0 : this.BLE_Celsius > 100 ? 100 : this.BLE_Celsius;
|
|
271
|
-
this.CurrentTemperature = this.BLE_Celsius;
|
|
272
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Temperature: ${this.CurrentTemperature}°c`);
|
|
273
|
-
}
|
|
213
|
+
// LeakDetected
|
|
214
|
+
this.LeakDetected = this.BLE_LeakDetected!;
|
|
215
|
+
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} LeakDetected: ${this.LeakDetected}%`);
|
|
274
216
|
}
|
|
275
217
|
|
|
276
218
|
async openAPIparseStatus(): Promise<void> {
|
|
277
219
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} openAPIparseStatus`);
|
|
278
|
-
//
|
|
220
|
+
// StatusLowBattery
|
|
279
221
|
this.BatteryLevel = Number(this.OpenAPI_BatteryLevel);
|
|
280
|
-
if (this.BatteryLevel <
|
|
222
|
+
if (this.BatteryLevel < 10) {
|
|
281
223
|
this.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
|
|
282
224
|
} else {
|
|
283
225
|
this.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
|
|
284
226
|
}
|
|
285
227
|
this.debugLog(`${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}, StatusLowBattery: ${this.StatusLowBattery}`);
|
|
286
228
|
|
|
287
|
-
// Current Relative Humidity
|
|
288
|
-
if (!this.device.waterdetector?.hide_humidity) {
|
|
289
|
-
this.CurrentRelativeHumidity = this.OpenAPI_CurrentRelativeHumidity!;
|
|
290
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Humidity: ${this.CurrentRelativeHumidity}%`);
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
// Current Temperature
|
|
294
|
-
if (!this.device.waterdetector?.hide_temperature) {
|
|
295
|
-
this.CurrentTemperature = this.OpenAPI_CurrentTemperature!;
|
|
296
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Temperature: ${this.CurrentTemperature}°c`);
|
|
297
|
-
}
|
|
298
|
-
|
|
299
229
|
// BatteryLevel
|
|
300
|
-
this.BatteryLevel = Number(this.OpenAPI_BatteryLevel);
|
|
301
|
-
if (this.BatteryLevel < 10) {
|
|
302
|
-
this.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
|
|
303
|
-
} else {
|
|
304
|
-
this.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
|
|
305
|
-
}
|
|
306
230
|
if (Number.isNaN(this.BatteryLevel)) {
|
|
307
231
|
this.BatteryLevel = 100;
|
|
308
232
|
}
|
|
309
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}
|
|
310
|
-
|
|
233
|
+
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}`);
|
|
234
|
+
|
|
235
|
+
// LeakDetected
|
|
236
|
+
this.LeakDetected = this.OpenAPI_LeakDetected!;
|
|
237
|
+
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} LeakDetected: ${this.LeakDetected}%`);
|
|
311
238
|
|
|
312
239
|
// FirmwareRevision
|
|
313
240
|
this.FirmwareRevision = this.OpenAPI_FirmwareRevision!;
|
|
@@ -347,18 +274,16 @@ export class WaterDetector {
|
|
|
347
274
|
(async () => {
|
|
348
275
|
// Start to monitor advertisement packets
|
|
349
276
|
await switchbot.startScan({
|
|
350
|
-
model: '
|
|
277
|
+
model: 'l',
|
|
351
278
|
id: this.device.bleMac,
|
|
352
279
|
});
|
|
353
280
|
// Set an event handler
|
|
354
281
|
switchbot.onadvertisement = (ad: any) => {
|
|
355
282
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} ${JSON.stringify(ad, null, ' ')}`);
|
|
356
283
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} address: ${ad.address}, model: ${ad.serviceData.model}`);
|
|
357
|
-
if (this.device.bleMac === ad.address && ad.serviceData.model === '
|
|
284
|
+
if (this.device.bleMac === ad.address && ad.serviceData.model === 'l') {
|
|
358
285
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} serviceData: ${JSON.stringify(ad.serviceData)}`);
|
|
359
|
-
this.
|
|
360
|
-
this.BLE_Celsius = ad.serviceData.temperature!.c;
|
|
361
|
-
this.BLE_Fahrenheit = ad.serviceData.temperature!.f;
|
|
286
|
+
this.BLE_LeakDetected = ad.serviceData.status;
|
|
362
287
|
this.BLE_BatteryLevel = ad.serviceData.battery;
|
|
363
288
|
} else {
|
|
364
289
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} serviceData: ${JSON.stringify(ad.serviceData)}`);
|
|
@@ -372,61 +297,6 @@ export class WaterDetector {
|
|
|
372
297
|
await this.BLEparseStatus();
|
|
373
298
|
await this.updateHomeKitCharacteristics();
|
|
374
299
|
})();
|
|
375
|
-
/*if (switchbot !== false) {
|
|
376
|
-
switchbot
|
|
377
|
-
.startScan({
|
|
378
|
-
model: 'w',
|
|
379
|
-
id: this.device.bleMac,
|
|
380
|
-
})
|
|
381
|
-
.then(async () => {
|
|
382
|
-
// Set an event handler
|
|
383
|
-
switchbot.onadvertisement = async (ad: ad) => {
|
|
384
|
-
this.debugLog(
|
|
385
|
-
`${this.device.deviceType}: ${this.accessory.displayName} Config BLE Address: ${this.device.bleMac},` +
|
|
386
|
-
` BLE Address Found: ${ad.address}`,
|
|
387
|
-
);
|
|
388
|
-
if (ad.serviceData.humidity! > 0) {
|
|
389
|
-
// reject unreliable data
|
|
390
|
-
this.BLE_CurrentRelativeHumidity = ad.serviceData.humidity;
|
|
391
|
-
}
|
|
392
|
-
this.BLE_CurrentTemperature = ad.serviceData.temperature;
|
|
393
|
-
this.BLE_Celsius = ad.serviceData.temperature!.c;
|
|
394
|
-
this.BLE_Fahrenheit = ad.serviceData.temperature!.f;
|
|
395
|
-
this.BLE_BatteryLevel = ad.serviceData.battery;
|
|
396
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} serviceData: ${JSON.stringify(ad.serviceData)}`);
|
|
397
|
-
this.debugLog(
|
|
398
|
-
`${this.device.deviceType}: ${this.accessory.displayName} model: ${ad.serviceData.model}, modelName: ${ad.serviceData.modelName}, ` +
|
|
399
|
-
`temperature: ${JSON.stringify(ad.serviceData.temperature?.c)}, humidity: ${ad.serviceData.humidity}, ` +
|
|
400
|
-
`battery: ${ad.serviceData.battery}`,
|
|
401
|
-
);
|
|
402
|
-
|
|
403
|
-
if (ad.serviceData) {
|
|
404
|
-
this.BLE_IsConnected = true;
|
|
405
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} connected: ${this.BLE_IsConnected}`);
|
|
406
|
-
await this.stopScanning(switchbot);
|
|
407
|
-
} else {
|
|
408
|
-
this.BLE_IsConnected = false;
|
|
409
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} connected: ${this.BLE_IsConnected}`);
|
|
410
|
-
}
|
|
411
|
-
};
|
|
412
|
-
// Wait
|
|
413
|
-
return await sleep(this.scanDuration * 1000);
|
|
414
|
-
})
|
|
415
|
-
.then(async () => {
|
|
416
|
-
// Stop to monitor
|
|
417
|
-
await this.stopScanning(switchbot);
|
|
418
|
-
})
|
|
419
|
-
.catch(async (e: any) => {
|
|
420
|
-
this.apiError(e);
|
|
421
|
-
this.errorLog(
|
|
422
|
-
`${this.device.deviceType}: ${this.accessory.displayName} failed BLERefreshStatus with ${this.device.connectionType}` +
|
|
423
|
-
` Connection, Error Message: ${JSON.stringify(e.message)}`,
|
|
424
|
-
);
|
|
425
|
-
await this.BLERefreshConnection(switchbot);
|
|
426
|
-
});
|
|
427
|
-
} else {
|
|
428
|
-
await this.BLERefreshConnection(switchbot);
|
|
429
|
-
}*/
|
|
430
300
|
}
|
|
431
301
|
|
|
432
302
|
async openAPIRefreshStatus(): Promise<void> {
|
|
@@ -442,8 +312,7 @@ export class WaterDetector {
|
|
|
442
312
|
if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
|
|
443
313
|
this.debugErrorLog(`${this.device.deviceType}: ${this.accessory.displayName} `
|
|
444
314
|
+ `statusCode: ${statusCode} & deviceStatus StatusCode: ${deviceStatus.statusCode}`);
|
|
445
|
-
this.
|
|
446
|
-
this.OpenAPI_CurrentTemperature = deviceStatus.body.temperature!;
|
|
315
|
+
this.OpenAPI_LeakDetected = deviceStatus.body.status;
|
|
447
316
|
this.OpenAPI_BatteryLevel = deviceStatus.body.battery;
|
|
448
317
|
this.OpenAPI_FirmwareRevision = deviceStatus.body.version;
|
|
449
318
|
this.openAPIparseStatus();
|
|
@@ -482,39 +351,6 @@ export class WaterDetector {
|
|
|
482
351
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic LeakDetected: ${this.LeakDetected}`);
|
|
483
352
|
}
|
|
484
353
|
}
|
|
485
|
-
if (!this.device.waterdetector?.hide_humidity) {
|
|
486
|
-
if (this.CurrentRelativeHumidity === undefined) {
|
|
487
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} CurrentRelativeHumidity: ${this.CurrentRelativeHumidity}`);
|
|
488
|
-
} else {
|
|
489
|
-
this.accessory.context.CurrentRelativeHumidity = this.CurrentRelativeHumidity;
|
|
490
|
-
this.humidityservice?.updateCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity, this.CurrentRelativeHumidity);
|
|
491
|
-
this.debugLog(
|
|
492
|
-
`${this.device.deviceType}: ${this.accessory.displayName}` +
|
|
493
|
-
` updateCharacteristic CurrentRelativeHumidity: ${this.CurrentRelativeHumidity}`,
|
|
494
|
-
);
|
|
495
|
-
if (this.device.mqttURL) {
|
|
496
|
-
mqttmessage.push(`"humidity": ${this.CurrentRelativeHumidity}`);
|
|
497
|
-
}
|
|
498
|
-
if (this.device.history) {
|
|
499
|
-
entry['humidity'] = this.CurrentRelativeHumidity;
|
|
500
|
-
}
|
|
501
|
-
}
|
|
502
|
-
}
|
|
503
|
-
if (!this.device.waterdetector?.hide_temperature) {
|
|
504
|
-
if (this.CurrentTemperature === undefined) {
|
|
505
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} CurrentTemperature: ${this.CurrentTemperature}`);
|
|
506
|
-
} else {
|
|
507
|
-
if (this.device.mqttURL) {
|
|
508
|
-
mqttmessage.push(`"temperature": ${this.CurrentTemperature}`);
|
|
509
|
-
}
|
|
510
|
-
if (this.device.history) {
|
|
511
|
-
entry['temp'] = this.CurrentTemperature;
|
|
512
|
-
}
|
|
513
|
-
this.accessory.context.CurrentTemperature = this.CurrentTemperature;
|
|
514
|
-
this.temperatureservice?.updateCharacteristic(this.hap.Characteristic.CurrentTemperature, this.CurrentTemperature);
|
|
515
|
-
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic CurrentTemperature: ${this.CurrentTemperature}`);
|
|
516
|
-
}
|
|
517
|
-
}
|
|
518
354
|
if (this.BatteryLevel === undefined) {
|
|
519
355
|
this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}`);
|
|
520
356
|
} else {
|
|
@@ -538,7 +374,7 @@ export class WaterDetector {
|
|
|
538
374
|
if (this.device.mqttURL) {
|
|
539
375
|
this.mqttPublish(`{${mqttmessage.join(',')}}`);
|
|
540
376
|
}
|
|
541
|
-
if (Number(this.
|
|
377
|
+
if (Number(this.LeakDetected) > 0) {
|
|
542
378
|
// reject unreliable data
|
|
543
379
|
if (this.device.history) {
|
|
544
380
|
this.historyService?.addEntry(entry);
|
|
@@ -736,26 +572,15 @@ export class WaterDetector {
|
|
|
736
572
|
if (!this.device.waterdetector?.hide_leak) {
|
|
737
573
|
this.leakService?.updateCharacteristic(this.hap.Characteristic.LeakDetected, e);
|
|
738
574
|
}
|
|
739
|
-
if (!this.device.waterdetector?.hide_humidity) {
|
|
740
|
-
this.humidityservice?.updateCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity, e);
|
|
741
|
-
}
|
|
742
|
-
if (!this.device.waterdetector?.hide_temperature) {
|
|
743
|
-
this.temperatureservice?.updateCharacteristic(this.hap.Characteristic.CurrentTemperature, e);
|
|
744
|
-
}
|
|
745
575
|
this.batteryService?.updateCharacteristic(this.hap.Characteristic.BatteryLevel, e);
|
|
746
576
|
this.batteryService?.updateCharacteristic(this.hap.Characteristic.StatusLowBattery, e);
|
|
747
577
|
}
|
|
748
578
|
|
|
749
579
|
async deviceContext() {
|
|
750
|
-
if (this.
|
|
751
|
-
this.
|
|
752
|
-
} else {
|
|
753
|
-
this.CurrentRelativeHumidity = this.accessory.context.CurrentRelativeHumidity;
|
|
754
|
-
}
|
|
755
|
-
if (this.CurrentTemperature === undefined) {
|
|
756
|
-
this.CurrentTemperature = 0;
|
|
580
|
+
if (this.LeakDetected === undefined) {
|
|
581
|
+
this.LeakDetected = 0;
|
|
757
582
|
} else {
|
|
758
|
-
this.
|
|
583
|
+
this.LeakDetected = this.accessory.context.LeakDetected;
|
|
759
584
|
}
|
|
760
585
|
if (this.BatteryLevel === undefined) {
|
|
761
586
|
this.BatteryLevel = 100;
|
package/src/platform.ts
CHANGED
|
@@ -691,6 +691,7 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
691
691
|
this.debugLog(`Discovered ${device.deviceType}: ${device.deviceId}`);
|
|
692
692
|
this.createColorBulb(device);
|
|
693
693
|
break;
|
|
694
|
+
case 'K10+':
|
|
694
695
|
case 'WoSweeper':
|
|
695
696
|
case 'WoSweeperMini':
|
|
696
697
|
case 'Robot Vacuum Cleaner S1':
|
package/src/settings.ts
CHANGED
|
@@ -320,6 +320,7 @@ export type deviceStatus = {
|
|
|
320
320
|
shaking?: boolean; //determines if the fan is swinging or not. (Used by the following deviceTypes: Smart Fan)
|
|
321
321
|
shakeCenter?: string; //the fan's swing direction. (Used by the following deviceTypes: Smart Fan)
|
|
322
322
|
shakeRange?: string; //the fan's swing range, 0~120°. (Used by the following deviceTypes: Smart Fan)
|
|
323
|
+
status?: number //the leak status. 0 for no leak, 1 for leak. (Used by the following deviceTypes: Water Detector)
|
|
323
324
|
};
|
|
324
325
|
|
|
325
326
|
export type ad = {
|