alphatheta-connect 0.21.0 → 0.21.2

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.
@@ -1,5 +1,3 @@
1
- import StrictEventEmitter from 'strict-event-emitter-types';
2
- import { EventEmitter } from 'events';
3
1
  import { CDJStatus, MediaSlotInfo } from "../types";
4
2
  import { PcapAdapter } from './pcap-adapter';
5
3
  interface StatusEvents {
@@ -15,8 +13,14 @@ interface StatusEvents {
15
13
  * Fired when the mixer broadcasts on-air channel status
16
14
  */
17
15
  onAir: (status: CDJStatus.OnAirStatus) => void;
16
+ /**
17
+ * Fired when the Stagehand-connected mixer reports fader/EQ/control positions.
18
+ * Part of the shared status event API (matching the active StatusEmitter) so
19
+ * the two are interchangeable to consumers; passive capture does not currently
20
+ * produce this event.
21
+ */
22
+ mixerState: (state: CDJStatus.MixerState) => void;
18
23
  }
19
- type Emitter = StrictEventEmitter<EventEmitter, StatusEvents>;
20
24
  /**
21
25
  * PassiveStatusEmitter reports CDJ status updates received via passive
22
26
  * packet capture instead of UDP sockets.
@@ -30,9 +34,9 @@ type Emitter = StrictEventEmitter<EventEmitter, StatusEvents>;
30
34
  export declare class PassiveStatusEmitter {
31
35
  #private;
32
36
  constructor(adapter: PcapAdapter);
33
- on: Emitter['on'];
34
- off: Emitter['off'];
35
- once: Emitter['once'];
37
+ on: <E extends keyof StatusEvents>(event: E, listener: StatusEvents[E]) => void;
38
+ off: <E extends keyof StatusEvents>(event: E, listener: StatusEvents[E]) => void;
39
+ once: <E extends keyof StatusEvents>(event: E, listener: StatusEvents[E]) => void;
36
40
  /**
37
41
  * Stop listening to the pcap adapter.
38
42
  */
@@ -65,7 +65,7 @@ export declare const UInt8: {
65
65
  data: Buffer;
66
66
  };
67
67
  type: NumberFieldType;
68
- bytesToRead: 1 | 4 | 2;
68
+ bytesToRead: 1 | 2 | 4;
69
69
  };
70
70
  /**
71
71
  * Field representing a UInt16
@@ -81,7 +81,7 @@ export declare const UInt16: {
81
81
  data: Buffer;
82
82
  };
83
83
  type: NumberFieldType;
84
- bytesToRead: 1 | 4 | 2;
84
+ bytesToRead: 1 | 2 | 4;
85
85
  };
86
86
  /**
87
87
  * Field representing a UInt32
@@ -97,7 +97,7 @@ export declare const UInt32: {
97
97
  data: Buffer;
98
98
  };
99
99
  type: NumberFieldType;
100
- bytesToRead: 1 | 4 | 2;
100
+ bytesToRead: 1 | 2 | 4;
101
101
  };
102
102
  /**
103
103
  * Field representing a null-terminated big endian UTF-16 string
@@ -131,7 +131,7 @@ declare const fieldMap: {
131
131
  data: Buffer;
132
132
  };
133
133
  type: NumberFieldType;
134
- bytesToRead: 1 | 4 | 2;
134
+ bytesToRead: 1 | 2 | 4;
135
135
  };
136
136
  readonly 16: {
137
137
  new (value: number | Buffer): {
@@ -144,7 +144,7 @@ declare const fieldMap: {
144
144
  data: Buffer;
145
145
  };
146
146
  type: NumberFieldType;
147
- bytesToRead: 1 | 4 | 2;
147
+ bytesToRead: 1 | 2 | 4;
148
148
  };
149
149
  readonly 17: {
150
150
  new (value: number | Buffer): {
@@ -157,7 +157,7 @@ declare const fieldMap: {
157
157
  data: Buffer;
158
158
  };
159
159
  type: NumberFieldType;
160
- bytesToRead: 1 | 4 | 2;
160
+ bytesToRead: 1 | 2 | 4;
161
161
  };
162
162
  readonly 20: typeof Binary;
163
163
  readonly 38: typeof String;
@@ -1,6 +1,4 @@
1
- import StrictEventEmitter from 'strict-event-emitter-types';
2
1
  import { Socket } from 'dgram';
3
- import { EventEmitter } from 'events';
4
2
  import { CDJStatus, MediaSlotInfo } from "../types";
5
3
  import { makeMediaSlotRequest } from './media';
6
4
  interface StatusEvents {
@@ -21,7 +19,6 @@ interface StatusEvents {
21
19
  */
22
20
  mixerState: (state: CDJStatus.MixerState) => void;
23
21
  }
24
- type Emitter = StrictEventEmitter<EventEmitter, StatusEvents>;
25
22
  type MediaSlotOptions = Parameters<typeof makeMediaSlotRequest>[0];
26
23
  /**
27
24
  * The status emitter will report every time a device status is received
@@ -32,9 +29,9 @@ declare class StatusEmitter {
32
29
  * @param statusSocket A UDP socket to receive CDJ status packets on
33
30
  */
34
31
  constructor(statusSocket: Socket);
35
- on: Emitter['on'];
36
- off: Emitter['off'];
37
- once: Emitter['once'];
32
+ on: <E extends keyof StatusEvents>(event: E, listener: StatusEvents[E]) => void;
33
+ off: <E extends keyof StatusEvents>(event: E, listener: StatusEvents[E]) => void;
34
+ once: <E extends keyof StatusEvents>(event: E, listener: StatusEvents[E]) => void;
38
35
  /**
39
36
  * Retrieve media slot status information.
40
37
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "alphatheta-connect",
3
- "version": "0.21.0",
3
+ "version": "0.21.2",
4
4
  "main": "lib/index.js",
5
5
  "author": "Evan Purkhiser <evanpurkhiser@gmail.com>",
6
6
  "contributors": [