hap-nodejs 1.1.1-beta.5 → 1.1.1-beta.7

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.
Files changed (289) hide show
  1. package/@types/bonjour-hap.d.ts +53 -50
  2. package/@types/simple-plist.d.ts +4 -0
  3. package/README.md +19 -16
  4. package/dist/accessories/AirConditioner_accessory.js +32 -30
  5. package/dist/accessories/AirConditioner_accessory.js.map +1 -1
  6. package/dist/accessories/AppleTVRemote_accessory.js +86 -74
  7. package/dist/accessories/AppleTVRemote_accessory.js.map +1 -1
  8. package/dist/accessories/Camera_accessory.js +138 -143
  9. package/dist/accessories/Camera_accessory.js.map +1 -1
  10. package/dist/accessories/Fan_accessory.js +24 -20
  11. package/dist/accessories/Fan_accessory.js.map +1 -1
  12. package/dist/accessories/GarageDoorOpener_accessory.js +37 -35
  13. package/dist/accessories/GarageDoorOpener_accessory.js.map +1 -1
  14. package/dist/accessories/Light-AdaptiveLighting_accessory.js +46 -44
  15. package/dist/accessories/Light-AdaptiveLighting_accessory.js.map +1 -1
  16. package/dist/accessories/Light_accessory.js +36 -34
  17. package/dist/accessories/Light_accessory.js.map +1 -1
  18. package/dist/accessories/Lock_accessory.js +28 -27
  19. package/dist/accessories/Lock_accessory.js.map +1 -1
  20. package/dist/accessories/MotionSensor_accessory.js +18 -15
  21. package/dist/accessories/MotionSensor_accessory.js.map +1 -1
  22. package/dist/accessories/Outlet_accessory.js +24 -22
  23. package/dist/accessories/Outlet_accessory.js.map +1 -1
  24. package/dist/accessories/SmartSpeaker_accessory.js +22 -20
  25. package/dist/accessories/SmartSpeaker_accessory.js.map +1 -1
  26. package/dist/accessories/Sprinkler_accessory.js +39 -36
  27. package/dist/accessories/Sprinkler_accessory.js.map +1 -1
  28. package/dist/accessories/TV_accessory.js +47 -45
  29. package/dist/accessories/TV_accessory.js.map +1 -1
  30. package/dist/accessories/TemperatureSensor_accessory.js +17 -14
  31. package/dist/accessories/TemperatureSensor_accessory.js.map +1 -1
  32. package/dist/accessories/Wi-FiRouter_accessory.d.ts +1 -1
  33. package/dist/accessories/Wi-FiRouter_accessory.d.ts.map +1 -1
  34. package/dist/accessories/Wi-FiRouter_accessory.js +14 -11
  35. package/dist/accessories/Wi-FiRouter_accessory.js.map +1 -1
  36. package/dist/accessories/Wi-FiSatellite_accessory.d.ts +1 -1
  37. package/dist/accessories/Wi-FiSatellite_accessory.d.ts.map +1 -1
  38. package/dist/accessories/Wi-FiSatellite_accessory.js +16 -13
  39. package/dist/accessories/Wi-FiSatellite_accessory.js.map +1 -1
  40. package/dist/accessories/gstreamer-audioProducer.d.ts +3 -3
  41. package/dist/accessories/gstreamer-audioProducer.d.ts.map +1 -1
  42. package/dist/accessories/gstreamer-audioProducer.js +39 -38
  43. package/dist/accessories/gstreamer-audioProducer.js.map +1 -1
  44. package/dist/accessories/types.d.ts +63 -63
  45. package/dist/accessories/types.d.ts.map +1 -1
  46. package/dist/accessories/types.js +87 -83
  47. package/dist/accessories/types.js.map +1 -1
  48. package/dist/index.d.ts +28 -26
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +34 -40
  51. package/dist/index.js.map +1 -1
  52. package/dist/internal-types.d.ts +1 -1
  53. package/dist/internal-types.d.ts.map +1 -1
  54. package/dist/internal-types.js +21 -19
  55. package/dist/internal-types.js.map +1 -1
  56. package/dist/lib/Accessory.d.ts +37 -38
  57. package/dist/lib/Accessory.d.ts.map +1 -1
  58. package/dist/lib/Accessory.js +299 -289
  59. package/dist/lib/Accessory.js.map +1 -1
  60. package/dist/lib/Advertiser.d.ts +7 -7
  61. package/dist/lib/Advertiser.d.ts.map +1 -1
  62. package/dist/lib/Advertiser.js +136 -128
  63. package/dist/lib/Advertiser.js.map +1 -1
  64. package/dist/lib/Bridge.d.ts +1 -1
  65. package/dist/lib/Bridge.d.ts.map +1 -1
  66. package/dist/lib/Bridge.js +6 -2
  67. package/dist/lib/Bridge.js.map +1 -1
  68. package/dist/lib/Characteristic.d.ts +41 -40
  69. package/dist/lib/Characteristic.d.ts.map +1 -1
  70. package/dist/lib/Characteristic.js +210 -206
  71. package/dist/lib/Characteristic.js.map +1 -1
  72. package/dist/lib/HAPServer.d.ts +30 -35
  73. package/dist/lib/HAPServer.d.ts.map +1 -1
  74. package/dist/lib/HAPServer.js +229 -225
  75. package/dist/lib/HAPServer.js.map +1 -1
  76. package/dist/lib/Service.d.ts +22 -22
  77. package/dist/lib/Service.d.ts.map +1 -1
  78. package/dist/lib/Service.js +71 -67
  79. package/dist/lib/Service.js.map +1 -1
  80. package/dist/lib/camera/RTPProxy.d.ts +1 -2
  81. package/dist/lib/camera/RTPProxy.d.ts.map +1 -1
  82. package/dist/lib/camera/RTPProxy.js +44 -28
  83. package/dist/lib/camera/RTPProxy.js.map +1 -1
  84. package/dist/lib/camera/RTPStreamManagement.d.ts +33 -34
  85. package/dist/lib/camera/RTPStreamManagement.d.ts.map +1 -1
  86. package/dist/lib/camera/RTPStreamManagement.js +149 -181
  87. package/dist/lib/camera/RTPStreamManagement.js.map +1 -1
  88. package/dist/lib/camera/RecordingManagement.d.ts +17 -19
  89. package/dist/lib/camera/RecordingManagement.d.ts.map +1 -1
  90. package/dist/lib/camera/RecordingManagement.js +153 -162
  91. package/dist/lib/camera/RecordingManagement.js.map +1 -1
  92. package/dist/lib/camera/index.d.ts +3 -3
  93. package/dist/lib/camera/index.d.ts.map +1 -1
  94. package/dist/lib/camera/index.js +6 -3
  95. package/dist/lib/camera/index.js.map +1 -1
  96. package/dist/lib/controller/AdaptiveLightingController.d.ts +33 -33
  97. package/dist/lib/controller/AdaptiveLightingController.d.ts.map +1 -1
  98. package/dist/lib/controller/AdaptiveLightingController.js +146 -154
  99. package/dist/lib/controller/AdaptiveLightingController.js.map +1 -1
  100. package/dist/lib/controller/CameraController.d.ts +20 -22
  101. package/dist/lib/controller/CameraController.d.ts.map +1 -1
  102. package/dist/lib/controller/CameraController.js +78 -74
  103. package/dist/lib/controller/CameraController.js.map +1 -1
  104. package/dist/lib/controller/Controller.d.ts +4 -4
  105. package/dist/lib/controller/Controller.d.ts.map +1 -1
  106. package/dist/lib/controller/Controller.js +8 -5
  107. package/dist/lib/controller/Controller.js.map +1 -1
  108. package/dist/lib/controller/DoorbellController.d.ts +4 -5
  109. package/dist/lib/controller/DoorbellController.d.ts.map +1 -1
  110. package/dist/lib/controller/DoorbellController.js +13 -9
  111. package/dist/lib/controller/DoorbellController.js.map +1 -1
  112. package/dist/lib/controller/RemoteController.d.ts +37 -39
  113. package/dist/lib/controller/RemoteController.d.ts.map +1 -1
  114. package/dist/lib/controller/RemoteController.js +199 -210
  115. package/dist/lib/controller/RemoteController.js.map +1 -1
  116. package/dist/lib/controller/index.d.ts +5 -5
  117. package/dist/lib/controller/index.d.ts.map +1 -1
  118. package/dist/lib/controller/index.js +8 -5
  119. package/dist/lib/controller/index.js.map +1 -1
  120. package/dist/lib/datastream/DataStreamManagement.d.ts +2 -2
  121. package/dist/lib/datastream/DataStreamManagement.d.ts.map +1 -1
  122. package/dist/lib/datastream/DataStreamManagement.js +40 -40
  123. package/dist/lib/datastream/DataStreamManagement.js.map +1 -1
  124. package/dist/lib/datastream/DataStreamParser.d.ts +0 -1
  125. package/dist/lib/datastream/DataStreamParser.d.ts.map +1 -1
  126. package/dist/lib/datastream/DataStreamParser.js +77 -57
  127. package/dist/lib/datastream/DataStreamParser.js.map +1 -1
  128. package/dist/lib/datastream/DataStreamServer.d.ts +22 -27
  129. package/dist/lib/datastream/DataStreamServer.d.ts.map +1 -1
  130. package/dist/lib/datastream/DataStreamServer.js +164 -159
  131. package/dist/lib/datastream/DataStreamServer.js.map +1 -1
  132. package/dist/lib/datastream/index.d.ts +3 -3
  133. package/dist/lib/datastream/index.d.ts.map +1 -1
  134. package/dist/lib/datastream/index.js +6 -3
  135. package/dist/lib/datastream/index.js.map +1 -1
  136. package/dist/lib/definitions/CharacteristicDefinitions.d.ts +1 -1
  137. package/dist/lib/definitions/CharacteristicDefinitions.d.ts.map +1 -1
  138. package/dist/lib/definitions/CharacteristicDefinitions.js +1203 -957
  139. package/dist/lib/definitions/CharacteristicDefinitions.js.map +1 -1
  140. package/dist/lib/definitions/ServiceDefinitions.d.ts +1 -1
  141. package/dist/lib/definitions/ServiceDefinitions.d.ts.map +1 -1
  142. package/dist/lib/definitions/ServiceDefinitions.js +695 -620
  143. package/dist/lib/definitions/ServiceDefinitions.js.map +1 -1
  144. package/dist/lib/definitions/generate-definitions.d.ts +3 -3
  145. package/dist/lib/definitions/generate-definitions.d.ts.map +1 -1
  146. package/dist/lib/definitions/generate-definitions.js +259 -247
  147. package/dist/lib/definitions/generate-definitions.js.map +1 -1
  148. package/dist/lib/definitions/generator-configuration.d.ts +1 -1
  149. package/dist/lib/definitions/generator-configuration.d.ts.map +1 -1
  150. package/dist/lib/definitions/generator-configuration.js +181 -176
  151. package/dist/lib/definitions/generator-configuration.js.map +1 -1
  152. package/dist/lib/definitions/index.d.ts +2 -2
  153. package/dist/lib/definitions/index.d.ts.map +1 -1
  154. package/dist/lib/definitions/index.js +5 -2
  155. package/dist/lib/definitions/index.js.map +1 -1
  156. package/dist/lib/gen/HomeKit.d.ts +7 -0
  157. package/dist/lib/gen/HomeKit.d.ts.map +1 -0
  158. package/dist/lib/gen/HomeKit.js +8 -0
  159. package/dist/lib/gen/HomeKit.js.map +1 -0
  160. package/dist/lib/model/AccessoryInfo.d.ts +3 -4
  161. package/dist/lib/model/AccessoryInfo.d.ts.map +1 -1
  162. package/dist/lib/model/AccessoryInfo.js +55 -52
  163. package/dist/lib/model/AccessoryInfo.js.map +1 -1
  164. package/dist/lib/model/ControllerStorage.d.ts +3 -3
  165. package/dist/lib/model/ControllerStorage.d.ts.map +1 -1
  166. package/dist/lib/model/ControllerStorage.js +23 -18
  167. package/dist/lib/model/ControllerStorage.js.map +1 -1
  168. package/dist/lib/model/HAPStorage.d.ts +2 -2
  169. package/dist/lib/model/HAPStorage.d.ts.map +1 -1
  170. package/dist/lib/model/HAPStorage.js +11 -4
  171. package/dist/lib/model/HAPStorage.js.map +1 -1
  172. package/dist/lib/model/IdentifierCache.d.ts +1 -1
  173. package/dist/lib/model/IdentifierCache.d.ts.map +1 -1
  174. package/dist/lib/model/IdentifierCache.js +27 -19
  175. package/dist/lib/model/IdentifierCache.js.map +1 -1
  176. package/dist/lib/tv/AccessControlManagement.d.ts +9 -9
  177. package/dist/lib/tv/AccessControlManagement.d.ts.map +1 -1
  178. package/dist/lib/tv/AccessControlManagement.js +29 -27
  179. package/dist/lib/tv/AccessControlManagement.js.map +1 -1
  180. package/dist/lib/util/checkName.d.ts +2 -2
  181. package/dist/lib/util/checkName.d.ts.map +1 -1
  182. package/dist/lib/util/checkName.js +9 -6
  183. package/dist/lib/util/checkName.js.map +1 -1
  184. package/dist/lib/util/clone.d.ts.map +1 -1
  185. package/dist/lib/util/clone.js +5 -1
  186. package/dist/lib/util/clone.js.map +1 -1
  187. package/dist/lib/util/color-utils.d.ts +1 -1
  188. package/dist/lib/util/color-utils.d.ts.map +1 -1
  189. package/dist/lib/util/color-utils.js +9 -4
  190. package/dist/lib/util/color-utils.js.map +1 -1
  191. package/dist/lib/util/eventedhttp.d.ts +22 -23
  192. package/dist/lib/util/eventedhttp.d.ts.map +1 -1
  193. package/dist/lib/util/eventedhttp.js +116 -109
  194. package/dist/lib/util/eventedhttp.js.map +1 -1
  195. package/dist/lib/util/hapCrypto.d.ts +2 -3
  196. package/dist/lib/util/hapCrypto.d.ts.map +1 -1
  197. package/dist/lib/util/hapCrypto.js +40 -31
  198. package/dist/lib/util/hapCrypto.js.map +1 -1
  199. package/dist/lib/util/hapStatusError.d.ts +1 -1
  200. package/dist/lib/util/hapStatusError.d.ts.map +1 -1
  201. package/dist/lib/util/hapStatusError.js +8 -4
  202. package/dist/lib/util/hapStatusError.js.map +1 -1
  203. package/dist/lib/util/net-utils.d.ts +1 -1
  204. package/dist/lib/util/net-utils.js +23 -17
  205. package/dist/lib/util/net-utils.js.map +1 -1
  206. package/dist/lib/util/once.d.ts.map +1 -1
  207. package/dist/lib/util/once.js +6 -2
  208. package/dist/lib/util/once.js.map +1 -1
  209. package/dist/lib/util/promise-utils.d.ts +1 -1
  210. package/dist/lib/util/promise-utils.d.ts.map +1 -1
  211. package/dist/lib/util/promise-utils.js +10 -3
  212. package/dist/lib/util/promise-utils.js.map +1 -1
  213. package/dist/lib/util/request-util.d.ts +2 -3
  214. package/dist/lib/util/request-util.d.ts.map +1 -1
  215. package/dist/lib/util/request-util.js +19 -11
  216. package/dist/lib/util/request-util.js.map +1 -1
  217. package/dist/lib/util/time.d.ts +0 -1
  218. package/dist/lib/util/time.d.ts.map +1 -1
  219. package/dist/lib/util/time.js +11 -6
  220. package/dist/lib/util/time.js.map +1 -1
  221. package/dist/lib/util/tlv.d.ts +0 -1
  222. package/dist/lib/util/tlv.d.ts.map +1 -1
  223. package/dist/lib/util/tlv.js +43 -28
  224. package/dist/lib/util/tlv.js.map +1 -1
  225. package/dist/lib/util/uuid.d.ts +0 -1
  226. package/dist/lib/util/uuid.d.ts.map +1 -1
  227. package/dist/lib/util/uuid.js +38 -26
  228. package/dist/lib/util/uuid.js.map +1 -1
  229. package/dist/types.d.ts +24 -24
  230. package/dist/types.d.ts.map +1 -1
  231. package/dist/types.js +5 -3
  232. package/dist/types.js.map +1 -1
  233. package/package.json +47 -52
  234. package/dist/lib/dbus/align.d.ts +0 -2
  235. package/dist/lib/dbus/align.d.ts.map +0 -1
  236. package/dist/lib/dbus/align.js +0 -12
  237. package/dist/lib/dbus/align.js.map +0 -1
  238. package/dist/lib/dbus/bus.d.ts +0 -38
  239. package/dist/lib/dbus/bus.d.ts.map +0 -1
  240. package/dist/lib/dbus/bus.js +0 -222
  241. package/dist/lib/dbus/bus.js.map +0 -1
  242. package/dist/lib/dbus/constants.d.ts +0 -43
  243. package/dist/lib/dbus/constants.d.ts.map +0 -1
  244. package/dist/lib/dbus/constants.js +0 -53
  245. package/dist/lib/dbus/constants.js.map +0 -1
  246. package/dist/lib/dbus/dbus-buffer.d.ts +0 -30
  247. package/dist/lib/dbus/dbus-buffer.d.ts.map +0 -1
  248. package/dist/lib/dbus/dbus-buffer.js +0 -175
  249. package/dist/lib/dbus/dbus-buffer.js.map +0 -1
  250. package/dist/lib/dbus/handshake.d.ts +0 -2
  251. package/dist/lib/dbus/handshake.d.ts.map +0 -1
  252. package/dist/lib/dbus/handshake.js +0 -130
  253. package/dist/lib/dbus/handshake.js.map +0 -1
  254. package/dist/lib/dbus/index.d.ts +0 -3
  255. package/dist/lib/dbus/index.d.ts.map +0 -1
  256. package/dist/lib/dbus/index.js +0 -123
  257. package/dist/lib/dbus/index.js.map +0 -1
  258. package/dist/lib/dbus/introspect.d.ts +0 -30
  259. package/dist/lib/dbus/introspect.d.ts.map +0 -1
  260. package/dist/lib/dbus/introspect.js +0 -208
  261. package/dist/lib/dbus/introspect.js.map +0 -1
  262. package/dist/lib/dbus/marshall.d.ts +0 -2
  263. package/dist/lib/dbus/marshall.d.ts.map +0 -1
  264. package/dist/lib/dbus/marshall.js +0 -97
  265. package/dist/lib/dbus/marshall.js.map +0 -1
  266. package/dist/lib/dbus/marshallers.d.ts +0 -10
  267. package/dist/lib/dbus/marshallers.d.ts.map +0 -1
  268. package/dist/lib/dbus/marshallers.js +0 -329
  269. package/dist/lib/dbus/marshallers.js.map +0 -1
  270. package/dist/lib/dbus/message.d.ts +0 -4
  271. package/dist/lib/dbus/message.d.ts.map +0 -1
  272. package/dist/lib/dbus/message.js +0 -116
  273. package/dist/lib/dbus/message.js.map +0 -1
  274. package/dist/lib/dbus/put.d.ts +0 -21
  275. package/dist/lib/dbus/put.d.ts.map +0 -1
  276. package/dist/lib/dbus/put.js +0 -120
  277. package/dist/lib/dbus/put.js.map +0 -1
  278. package/dist/lib/dbus/readline.d.ts +0 -2
  279. package/dist/lib/dbus/readline.d.ts.map +0 -1
  280. package/dist/lib/dbus/readline.js +0 -27
  281. package/dist/lib/dbus/readline.js.map +0 -1
  282. package/dist/lib/dbus/signature.d.ts +0 -2
  283. package/dist/lib/dbus/signature.d.ts.map +0 -1
  284. package/dist/lib/dbus/signature.js +0 -59
  285. package/dist/lib/dbus/signature.js.map +0 -1
  286. package/dist/lib/dbus/stdifaces.d.ts +0 -3
  287. package/dist/lib/dbus/stdifaces.d.ts.map +0 -1
  288. package/dist/lib/dbus/stdifaces.js +0 -206
  289. package/dist/lib/dbus/stdifaces.js.map +0 -1
@@ -1,18 +1,21 @@
1
- import assert from 'node:assert';
2
- import { Buffer } from 'node:buffer';
3
- import createDebug from 'debug';
4
- import { writeUInt64LE } from '../util/hapCrypto.js';
5
- import { isValid, unparse, write } from '../util/uuid.js';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DataStreamWriter = exports.DataStreamReader = exports.DataStreamParser = exports.DataFormatTags = exports.UUID = exports.SecondsSince2001 = exports.Float64 = exports.Float32 = exports.Int64 = exports.Int32 = exports.Int16 = exports.Int8 = exports.ValueWrapper = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const uuid = tslib_1.__importStar(require("../util/uuid"));
6
+ const hapCrypto = tslib_1.__importStar(require("../util/hapCrypto"));
7
+ const assert_1 = tslib_1.__importDefault(require("assert"));
8
+ const debug_1 = tslib_1.__importDefault(require("debug"));
6
9
  // welcome to hell :)
7
10
  // in this file lies madness and frustration. and It's not only about HDS. Also, JavaScript is hell
8
- const debug = createDebug('HAP-NodeJS:DataStream:Parser');
11
+ const debug = (0, debug_1.default)("HAP-NodeJS:DataStream:Parser");
9
12
  class Magics {
10
- static TERMINATOR = { type: 'terminator' };
13
+ static TERMINATOR = { type: "terminator" };
11
14
  }
12
15
  /**
13
16
  * @group HomeKit Data Streams (HDS)
14
17
  */
15
- export class ValueWrapper {
18
+ class ValueWrapper {
16
19
  value;
17
20
  constructor(value) {
18
21
  this.value = value;
@@ -21,55 +24,63 @@ export class ValueWrapper {
21
24
  return this.constructor.name === obj.constructor.name && obj.value === this.value;
22
25
  }
23
26
  }
27
+ exports.ValueWrapper = ValueWrapper;
24
28
  /**
25
29
  * @group HomeKit Data Streams (HDS)
26
30
  */
27
- export class Int8 extends ValueWrapper {
31
+ class Int8 extends ValueWrapper {
28
32
  }
33
+ exports.Int8 = Int8;
29
34
  /**
30
35
  * @group HomeKit Data Streams (HDS)
31
36
  */
32
- export class Int16 extends ValueWrapper {
37
+ class Int16 extends ValueWrapper {
33
38
  }
39
+ exports.Int16 = Int16;
34
40
  /**
35
41
  * @group HomeKit Data Streams (HDS)
36
42
  */
37
- export class Int32 extends ValueWrapper {
43
+ class Int32 extends ValueWrapper {
38
44
  }
45
+ exports.Int32 = Int32;
39
46
  /**
40
47
  * @group HomeKit Data Streams (HDS)
41
48
  */
42
- export class Int64 extends ValueWrapper {
49
+ class Int64 extends ValueWrapper {
43
50
  }
51
+ exports.Int64 = Int64;
44
52
  /**
45
53
  * @group HomeKit Data Streams (HDS)
46
54
  */
47
- export class Float32 extends ValueWrapper {
55
+ class Float32 extends ValueWrapper {
48
56
  }
57
+ exports.Float32 = Float32;
49
58
  /**
50
59
  * @group HomeKit Data Streams (HDS)
51
60
  */
52
- export class Float64 extends ValueWrapper {
61
+ class Float64 extends ValueWrapper {
53
62
  }
63
+ exports.Float64 = Float64;
54
64
  /**
55
65
  * @group HomeKit Data Streams (HDS)
56
66
  */
57
- export class SecondsSince2001 extends ValueWrapper {
67
+ class SecondsSince2001 extends ValueWrapper {
58
68
  }
69
+ exports.SecondsSince2001 = SecondsSince2001;
59
70
  /**
60
71
  * @group HomeKit Data Streams (HDS)
61
72
  */
62
- export class UUID extends ValueWrapper {
73
+ class UUID extends ValueWrapper {
63
74
  constructor(value) {
64
- assert(isValid(value), 'invalid uuid format');
75
+ (0, assert_1.default)(uuid.isValid(value), "invalid uuid format");
65
76
  super(value);
66
77
  }
67
78
  }
79
+ exports.UUID = UUID;
68
80
  /**
69
81
  * @group HomeKit Data Streams (HDS)
70
82
  */
71
- // eslint-disable-next-line no-restricted-syntax
72
- export var DataFormatTags;
83
+ var DataFormatTags;
73
84
  (function (DataFormatTags) {
74
85
  DataFormatTags[DataFormatTags["INVALID"] = 0] = "INVALID";
75
86
  DataFormatTags[DataFormatTags["TRUE"] = 1] = "TRUE";
@@ -109,15 +120,16 @@ export var DataFormatTags;
109
120
  DataFormatTags[DataFormatTags["DICTIONARY_LENGTH_START"] = 224] = "DICTIONARY_LENGTH_START";
110
121
  DataFormatTags[DataFormatTags["DICTIONARY_LENGTH_STOP"] = 238] = "DICTIONARY_LENGTH_STOP";
111
122
  DataFormatTags[DataFormatTags["DICTIONARY_TERMINATED"] = 239] = "DICTIONARY_TERMINATED";
112
- })(DataFormatTags || (DataFormatTags = {}));
123
+ })(DataFormatTags || (exports.DataFormatTags = DataFormatTags = {}));
113
124
  /**
114
125
  * @group HomeKit Data Streams (HDS)
115
126
  */
116
- export class DataStreamParser {
127
+ class DataStreamParser {
128
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
117
129
  static decode(buffer) {
118
130
  const tag = buffer.readTag();
119
131
  if (tag === 0 /* DataFormatTags.INVALID */) {
120
- throw new Error(`HDSDecoder: zero tag detected on index ${buffer.readerIndex}`);
132
+ throw new Error("HDSDecoder: zero tag detected on index " + buffer.readerIndex);
121
133
  }
122
134
  else if (tag === 1 /* DataFormatTags.TRUE */) {
123
135
  return buffer.readTrue();
@@ -213,15 +225,15 @@ export class DataStreamParser {
213
225
  }
214
226
  else if (tag === 223 /* DataFormatTags.ARRAY_TERMINATED */) {
215
227
  const array = [];
216
- let element = this.decode(buffer);
217
- while (element !== Magics.TERMINATOR) {
228
+ let element;
229
+ while ((element = this.decode(buffer)) !== Magics.TERMINATOR) {
218
230
  array.push(element);
219
- element = this.decode(buffer);
220
231
  }
221
232
  return array;
222
233
  }
223
234
  else if (tag >= 224 /* DataFormatTags.DICTIONARY_LENGTH_START */ && tag <= 238 /* DataFormatTags.DICTIONARY_LENGTH_STOP */) {
224
235
  const length = tag - 224 /* DataFormatTags.DICTIONARY_LENGTH_START */;
236
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
225
237
  const dictionary = {};
226
238
  for (let i = 0; i < length; i++) {
227
239
  const key = this.decode(buffer);
@@ -230,28 +242,29 @@ export class DataStreamParser {
230
242
  return dictionary;
231
243
  }
232
244
  else if (tag === 239 /* DataFormatTags.DICTIONARY_TERMINATED */) {
245
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
233
246
  const dictionary = {};
234
- let key = this.decode(buffer);
235
- while (key !== Magics.TERMINATOR) {
247
+ let key;
248
+ while ((key = this.decode(buffer)) !== Magics.TERMINATOR) {
236
249
  dictionary[key] = this.decode(buffer); // decode value
237
- key = this.decode(buffer);
238
250
  }
239
251
  return dictionary;
240
252
  }
241
253
  else {
242
- throw new Error(`HDSDecoder: encountered unknown tag on index ${buffer.readerIndex}: ${tag.toString(16)}`);
254
+ throw new Error("HDSDecoder: encountered unknown tag on index " + buffer.readerIndex + ": " + tag.toString(16));
243
255
  }
244
256
  }
257
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/no-explicit-any
245
258
  static encode(data, buffer) {
246
259
  if (data === undefined) {
247
- throw new Error('HDSEncoder: cannot encode undefined');
260
+ throw new Error("HDSEncoder: cannot encode undefined");
248
261
  }
249
262
  if (data === null) {
250
263
  buffer.writeTag(4 /* DataFormatTags.NULL */);
251
264
  return;
252
265
  }
253
266
  switch (typeof data) {
254
- case 'boolean':
267
+ case "boolean":
255
268
  if (data) {
256
269
  buffer.writeTrue();
257
270
  }
@@ -259,7 +272,7 @@ export class DataStreamParser {
259
272
  buffer.writeFalse();
260
273
  }
261
274
  break;
262
- case 'number':
275
+ case "number":
263
276
  if (Number.isInteger(data)) {
264
277
  buffer.writeNumber(data);
265
278
  }
@@ -267,10 +280,10 @@ export class DataStreamParser {
267
280
  buffer.writeFloat64LE(new Float64(data));
268
281
  }
269
282
  break;
270
- case 'string':
283
+ case "string":
271
284
  buffer.writeUTF8(data);
272
285
  break;
273
- case 'object':
286
+ case "object":
274
287
  if (Array.isArray(data)) {
275
288
  const length = data.length;
276
289
  if (length <= 12) {
@@ -279,7 +292,7 @@ export class DataStreamParser {
279
292
  else {
280
293
  buffer.writeTag(223 /* DataFormatTags.ARRAY_TERMINATED */);
281
294
  }
282
- data.forEach((element) => {
295
+ data.forEach(element => {
283
296
  this.encode(element, buffer);
284
297
  });
285
298
  if (length > 12) {
@@ -312,7 +325,7 @@ export class DataStreamParser {
312
325
  buffer.writeUUID(data.value);
313
326
  }
314
327
  else {
315
- throw new TypeError(`Unknown wrapped object 'ValueWrapper' of class ${data.constructor.name}`);
328
+ throw new Error("Unknown wrapped object 'ValueWrapper' of class " + data.constructor.name);
316
329
  }
317
330
  }
318
331
  else if (data instanceof Buffer) {
@@ -327,7 +340,7 @@ export class DataStreamParser {
327
340
  else {
328
341
  buffer.writeTag(239 /* DataFormatTags.DICTIONARY_TERMINATED */);
329
342
  }
330
- entries.forEach((entry) => {
343
+ entries.forEach(entry => {
331
344
  this.encode(entry[0], buffer); // encode key
332
345
  this.encode(entry[1], buffer); // encode value
333
346
  });
@@ -337,16 +350,18 @@ export class DataStreamParser {
337
350
  }
338
351
  break;
339
352
  default:
340
- throw new Error(`HDSEncoder: no idea how to encode value of type '${typeof data}': ${data}`);
353
+ throw new Error("HDSEncoder: no idea how to encode value of type '" + (typeof data) + "': " + data);
341
354
  }
342
355
  }
343
356
  }
357
+ exports.DataStreamParser = DataStreamParser;
344
358
  /**
345
359
  * @group HomeKit Data Streams (HDS)
346
360
  */
347
- export class DataStreamReader {
361
+ class DataStreamReader {
348
362
  data;
349
363
  readerIndex;
364
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
350
365
  trackedCompressedData = [];
351
366
  constructor(data) {
352
367
  this.data = data;
@@ -354,13 +369,15 @@ export class DataStreamReader {
354
369
  }
355
370
  finished() {
356
371
  if (this.readerIndex < this.data.length) {
357
- const remainingHex = this.data.subarray(this.readerIndex, this.data.length).toString('hex');
358
- debug('WARNING Finished reading HDS stream, but there are still %d bytes remaining () %s', this.data.length - this.readerIndex, remainingHex);
372
+ const remainingHex = this.data.slice(this.readerIndex, this.data.length).toString("hex");
373
+ debug("WARNING Finished reading HDS stream, but there are still %d bytes remaining () %s", this.data.length - this.readerIndex, remainingHex);
359
374
  }
360
375
  }
376
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
361
377
  decompressData(index) {
362
378
  if (index >= this.trackedCompressedData.length) {
363
- throw new Error(`HDSDecoder: Tried decompression of data for an index out of range (index ${index} and got ${this.trackedCompressedData.length} elements)`);
379
+ throw new Error("HDSDecoder: Tried decompression of data for an index out of range (index " + index +
380
+ " and got " + this.trackedCompressedData.length + " elements)");
364
381
  }
365
382
  return this.trackedCompressedData[index];
366
383
  }
@@ -371,7 +388,7 @@ export class DataStreamReader {
371
388
  ensureLength(bytes) {
372
389
  if (this.readerIndex + bytes > this.data.length) {
373
390
  const remaining = this.data.length - this.readerIndex;
374
- throw new Error(`HDSDecoder: End of data stream. Tried reading ${bytes} bytes however got only ${remaining} remaining!`);
391
+ throw new Error("HDSDecoder: End of data stream. Tried reading " + bytes + " bytes however got only " + remaining + " remaining!");
375
392
  }
376
393
  }
377
394
  readTag() {
@@ -452,7 +469,7 @@ export class DataStreamReader {
452
469
  }
453
470
  readUTF8(length) {
454
471
  this.ensureLength(length);
455
- const value = this.data.toString('utf8', this.readerIndex, this.readerIndex + length);
472
+ const value = this.data.toString("utf8", this.readerIndex, this.readerIndex + length);
456
473
  this.readerIndex += length;
457
474
  return this.trackData(value);
458
475
  }
@@ -478,7 +495,7 @@ export class DataStreamReader {
478
495
  for (;;) {
479
496
  nextByte = this.data[offset];
480
497
  if (nextByte === undefined) {
481
- throw new Error('HDSDecoder: Reached end of data stream while reading NUL terminated string!');
498
+ throw new Error("HDSDecoder: Reached end of data stream while reading NUL terminated string!");
482
499
  }
483
500
  else if (nextByte === 0) {
484
501
  break;
@@ -487,13 +504,13 @@ export class DataStreamReader {
487
504
  offset++;
488
505
  }
489
506
  }
490
- const value = this.data.toString('utf8', this.readerIndex, offset);
507
+ const value = this.data.toString("utf8", this.readerIndex, offset);
491
508
  this.readerIndex = offset + 1;
492
509
  return this.trackData(value);
493
510
  }
494
511
  readData(length) {
495
512
  this.ensureLength(length);
496
- const value = this.data.subarray(this.readerIndex, this.readerIndex + length);
513
+ const value = this.data.slice(this.readerIndex, this.readerIndex + length);
497
514
  this.readerIndex += length;
498
515
  return this.trackData(value);
499
516
  }
@@ -519,7 +536,7 @@ export class DataStreamReader {
519
536
  for (;;) {
520
537
  nextByte = this.data[offset];
521
538
  if (nextByte === undefined) {
522
- throw new Error('HDSDecoder: Reached end of data stream while reading terminated data!');
539
+ throw new Error("HDSDecoder: Reached end of data stream while reading terminated data!");
523
540
  }
524
541
  else if (nextByte === 3 /* DataFormatTags.TERMINATOR */) {
525
542
  break;
@@ -528,7 +545,7 @@ export class DataStreamReader {
528
545
  offset++;
529
546
  }
530
547
  }
531
- const value = this.data.subarray(this.readerIndex, offset);
548
+ const value = this.data.slice(this.readerIndex, offset);
532
549
  this.readerIndex = offset + 1;
533
550
  return this.trackData(value);
534
551
  }
@@ -538,12 +555,14 @@ export class DataStreamReader {
538
555
  }
539
556
  readUUID() {
540
557
  this.ensureLength(16);
541
- const value = unparse(this.data, this.readerIndex);
558
+ const value = uuid.unparse(this.data, this.readerIndex);
542
559
  this.readerIndex += 16;
543
560
  return this.trackData(value);
544
561
  }
545
562
  }
563
+ exports.DataStreamReader = DataStreamReader;
546
564
  class WrittenDataList {
565
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
547
566
  writtenData = [];
548
567
  push(data) {
549
568
  this.writtenData.push(data);
@@ -566,7 +585,7 @@ class WrittenDataList {
566
585
  /**
567
586
  * @group HomeKit Data Streams (HDS)
568
587
  */
569
- export class DataStreamWriter {
588
+ class DataStreamWriter {
570
589
  static chunkSize = 128; // seems to be a good default
571
590
  data;
572
591
  writerIndex;
@@ -579,7 +598,7 @@ export class DataStreamWriter {
579
598
  return this.writerIndex; // since writerIndex points to the next FREE index it also represents the length
580
599
  }
581
600
  getData() {
582
- return this.data.subarray(0, this.writerIndex);
601
+ return this.data.slice(0, this.writerIndex);
583
602
  }
584
603
  ensureLength(bytes) {
585
604
  const neededBytes = (this.writerIndex + bytes) - this.data.length;
@@ -634,7 +653,7 @@ export class DataStreamWriter {
634
653
  this.writeInt64LE(new Int64(number));
635
654
  }
636
655
  else {
637
- throw new Error(`Tried writing unrepresentable number (${number})`);
656
+ throw new Error("Tried writing unrepresentable number (" + number + ")");
638
657
  }
639
658
  }
640
659
  writeInt8(int8) {
@@ -707,7 +726,7 @@ export class DataStreamWriter {
707
726
  }
708
727
  writeLength64LE(length) {
709
728
  this.ensureLength(8);
710
- writeUInt64LE(length, this.data, this.writerIndex);
729
+ hapCrypto.writeUInt64LE(length, this.data, this.writerIndex);
711
730
  this.writerIndex += 8;
712
731
  }
713
732
  writeUTF8(utf8) {
@@ -739,7 +758,7 @@ export class DataStreamWriter {
739
758
  _writeUTF8(utf8) {
740
759
  const byteLength = Buffer.byteLength(utf8);
741
760
  this.ensureLength(byteLength);
742
- this.data.write(utf8, this.writerIndex, byteLength, 'utf8');
761
+ this.data.write(utf8, this.writerIndex, byteLength, "utf8");
743
762
  this.writerIndex += byteLength;
744
763
  }
745
764
  writeUTF8_Length8(utf8) {
@@ -846,14 +865,15 @@ export class DataStreamWriter {
846
865
  this.writerIndex += 8;
847
866
  }
848
867
  writeUUID(uuid_string) {
849
- assert(isValid(uuid_string), 'supplied uuid is invalid');
868
+ (0, assert_1.default)(uuid.isValid(uuid_string), "supplied uuid is invalid");
850
869
  if (this.compressDataIfPossible(new UUID(uuid_string))) {
851
870
  return;
852
871
  }
853
872
  this.ensureLength(17);
854
873
  this.writeTag(5 /* DataFormatTags.UUID */);
855
- write(uuid_string, this.data, this.writerIndex);
874
+ uuid.write(uuid_string, this.data, this.writerIndex);
856
875
  this.writerIndex += 16;
857
876
  }
858
877
  }
878
+ exports.DataStreamWriter = DataStreamWriter;
859
879
  //# sourceMappingURL=DataStreamParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataStreamParser.js","sourceRoot":"","sources":["../../../src/lib/datastream/DataStreamParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataStreamParser.js","sourceRoot":"","sources":["../../../src/lib/datastream/DataStreamParser.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,17 @@
1
- import type { Socket } from 'node:net';
2
- import type { HAPConnection } from '../util/eventedhttp';
3
- import { Buffer } from 'node:buffer';
4
- import { EventEmitter } from 'node:events';
1
+ import { EventEmitter } from "events";
2
+ import { Socket } from "net";
3
+ import { HAPConnection } from "../util/eventedhttp";
5
4
  /**
6
5
  * @group HomeKit Data Streams (HDS)
7
6
  */
8
- export interface PreparedDataStreamSession {
7
+ export type PreparedDataStreamSession = {
9
8
  connection: HAPConnection;
10
9
  accessoryToControllerEncryptionKey: Buffer;
11
10
  controllerToAccessoryEncryptionKey: Buffer;
12
11
  accessoryKeySalt: Buffer;
13
12
  port?: number;
14
13
  connectTimeout?: NodeJS.Timeout;
15
- }
14
+ };
16
15
  /**
17
16
  * @group HomeKit Data Streams (HDS)
18
17
  */
@@ -90,10 +89,6 @@ export declare const enum HDSProtocolSpecificErrorReason {
90
89
  PROTOCOL_ERROR = 8,
91
90
  INVALID_CONFIGURATION = 9
92
91
  }
93
- /**
94
- * @hidden
95
- */
96
- export declare const HDSProtocolSpecificErrorReasonConst: typeof HDSProtocolSpecificErrorReason;
97
92
  /**
98
93
  * An error indicating a protocol level HDS error.
99
94
  * E.g. it may be used to encode a {@link HDSStatus.PROTOCOL_SPECIFIC_ERROR} in the {@link Protocols.DATA_SEND} protocol.
@@ -104,19 +99,19 @@ export declare class HDSProtocolError extends Error {
104
99
  /**
105
100
  * Initializes a new `HDSProtocolError`
106
101
  * @param reason - The {@link HDSProtocolSpecificErrorReason}.
107
- * Values MUST NOT be {@link HDSProtocolSpecificErrorReason.NORMAL}.
102
+ * Values MUST NOT be {@link HDSProtocolSpecificErrorReason.NORMAL}.
108
103
  */
109
104
  constructor(reason: HDSProtocolSpecificErrorReason);
110
105
  }
111
106
  /**
112
107
  * @group HomeKit Data Streams (HDS)
113
108
  */
114
- export interface HDSFrame {
109
+ export type HDSFrame = {
115
110
  header: Buffer;
116
111
  cipheredPayload: Buffer;
117
112
  authTag: Buffer;
118
113
  plaintextPayload?: Buffer;
119
- }
114
+ };
120
115
  /**
121
116
  * @group HomeKit Data Streams (HDS)
122
117
  */
@@ -128,14 +123,14 @@ export declare const enum MessageType {
128
123
  /**
129
124
  * @group HomeKit Data Streams (HDS)
130
125
  */
131
- export interface DataStreamMessage {
126
+ export type DataStreamMessage = {
132
127
  type: MessageType;
133
128
  protocol: string;
134
129
  topic: string;
135
130
  id?: number;
136
131
  status?: HDSStatus;
137
132
  message: Record<any, any>;
138
- }
133
+ };
139
134
  /**
140
135
  * @group HomeKit Data Streams (HDS)
141
136
  */
@@ -154,10 +149,10 @@ export declare const enum DataStreamServerEvent {
154
149
  * @group HomeKit Data Streams (HDS)
155
150
  */
156
151
  export declare interface DataStreamServer {
157
- on(event: 'connection-opened', listener: (connection: DataStreamConnection) => void): this;
158
- on(event: 'connection-closed', listener: (connection: DataStreamConnection) => void): this;
159
- emit(event: 'connection-opened', connection: DataStreamConnection): boolean;
160
- emit(event: 'connection-closed', connection: DataStreamConnection): boolean;
152
+ on(event: "connection-opened", listener: (connection: DataStreamConnection) => void): this;
153
+ on(event: "connection-closed", listener: (connection: DataStreamConnection) => void): this;
154
+ emit(event: "connection-opened", connection: DataStreamConnection): boolean;
155
+ emit(event: "connection-closed", connection: DataStreamConnection): boolean;
161
156
  }
162
157
  /**
163
158
  * DataStreamServer which listens for incoming tcp connections and handles identification of new connections
@@ -254,12 +249,12 @@ export declare const enum DataStreamConnectionEvent {
254
249
  * @group HomeKit Data Streams (HDS)
255
250
  */
256
251
  export declare interface DataStreamConnection {
257
- on(event: 'identification', listener: (frame: HDSFrame, callback: IdentificationCallback) => void): this;
258
- on(event: 'handle-message-globally', listener: (message: DataStreamMessage) => void): this;
259
- on(event: 'closed', listener: () => void): this;
260
- emit(event: 'identification', frame: HDSFrame, callback: IdentificationCallback): boolean;
261
- emit(event: 'handle-message-globally', message: DataStreamMessage): boolean;
262
- emit(event: 'closed'): boolean;
252
+ on(event: "identification", listener: (frame: HDSFrame, callback: IdentificationCallback) => void): this;
253
+ on(event: "handle-message-globally", listener: (message: DataStreamMessage) => void): this;
254
+ on(event: "closed", listener: () => void): this;
255
+ emit(event: "identification", frame: HDSFrame, callback: IdentificationCallback): boolean;
256
+ emit(event: "handle-message-globally", message: DataStreamMessage): boolean;
257
+ emit(event: "closed"): boolean;
263
258
  }
264
259
  /**
265
260
  * @group HomeKit Data Streams (HDS)
@@ -332,7 +327,7 @@ export declare class DataStreamConnection extends EventEmitter {
332
327
  * @param request - name of the request (also referred to as topic. See {@link Topics} for some known ones)
333
328
  * @param message - message dictionary which gets sent along the request
334
329
  * @param callback - handler which gets supplied with an error object if the response didn't
335
- * arrive in time or the status and the message dictionary from the response
330
+ * arrive in time or the status and the message dictionary from the response
336
331
  */
337
332
  sendRequest(protocol: string | Protocols, request: string | Topics, message: Record<any, any> | undefined, callback: ResponseHandler): void;
338
333
  /**
@@ -348,7 +343,7 @@ export declare class DataStreamConnection extends EventEmitter {
348
343
  private onSocketData;
349
344
  private decodeHDSFrames;
350
345
  /**
351
- * @private
346
+ * @private file-private API
352
347
  */
353
348
  decryptHDSFrame(frame: HDSFrame, keyOverwrite?: Buffer): boolean;
354
349
  private decodePayloads;