@companion-module/base 1.99.0-nightly-feat-graphics-overhaul-20251223-212718-d376d60 → 2.0.0-0-nightly-feat-2-0-20260118-171756-ca8ab85
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 +12 -0
- package/README.md +12 -11
- package/assets/manifest.schema.json +1 -1
- package/dist/__mocks__/net.d.ts +31 -0
- package/dist/__mocks__/net.d.ts.map +1 -0
- package/dist/__mocks__/net.js +104 -0
- package/dist/__mocks__/net.js.map +1 -0
- package/dist/__mocks__/util.d.ts +9 -0
- package/dist/__mocks__/util.d.ts.map +1 -0
- package/dist/__mocks__/util.js +39 -0
- package/dist/__mocks__/util.js.map +1 -0
- package/dist/common/json-value.js +1 -2
- package/dist/common/json-value.js.map +1 -1
- package/dist/common/osc.js +1 -2
- package/dist/common/osc.js.map +1 -1
- package/dist/helpers/__tests__/tcp.spec.d.ts +2 -0
- package/dist/helpers/__tests__/tcp.spec.d.ts.map +1 -0
- package/dist/helpers/__tests__/tcp.spec.js +175 -0
- package/dist/helpers/__tests__/tcp.spec.js.map +1 -0
- package/dist/helpers/__tests__/udp.spec.d.ts +2 -0
- package/dist/helpers/__tests__/udp.spec.d.ts.map +1 -0
- package/dist/helpers/__tests__/udp.spec.js +197 -0
- package/dist/helpers/__tests__/udp.spec.js.map +1 -0
- package/dist/helpers/index.js +3 -6
- package/dist/helpers/index.js.map +1 -1
- package/dist/helpers/tcp.d.ts +1 -1
- package/dist/helpers/tcp.d.ts.map +1 -1
- package/dist/helpers/tcp.js +10 -15
- package/dist/helpers/tcp.js.map +1 -1
- package/dist/helpers/telnet.d.ts +1 -1
- package/dist/helpers/telnet.d.ts.map +1 -1
- package/dist/helpers/telnet.js +6 -11
- package/dist/helpers/telnet.js.map +1 -1
- package/dist/helpers/udp.d.ts +1 -1
- package/dist/helpers/udp.d.ts.map +1 -1
- package/dist/helpers/udp.js +7 -12
- package/dist/helpers/udp.js.map +1 -1
- package/dist/host-api/context.d.ts +59 -0
- package/dist/host-api/context.d.ts.map +1 -0
- package/dist/host-api/{api.js → context.js} +5 -3
- package/dist/host-api/context.js.map +1 -0
- package/dist/host-api/main.d.ts +2 -0
- package/dist/host-api/main.d.ts.map +1 -0
- package/dist/host-api/main.js +2 -0
- package/dist/host-api/main.js.map +1 -0
- package/dist/instance-base.js +1 -2
- package/dist/logging.d.ts +21 -0
- package/dist/logging.d.ts.map +1 -0
- package/dist/logging.js +22 -0
- package/dist/logging.js.map +1 -0
- package/dist/main.d.ts +7 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +8 -0
- package/dist/main.js.map +1 -0
- package/dist/manifest.js +4 -8
- package/dist/manifest.js.map +1 -1
- package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts +2 -0
- package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts.map +1 -0
- package/dist/module-api/__tests__/shared-udp-socket.spec.js +270 -0
- package/dist/module-api/__tests__/shared-udp-socket.spec.js.map +1 -0
- package/dist/module-api/action.js +1 -2
- package/dist/module-api/base.d.ts +4 -33
- package/dist/module-api/base.d.ts.map +1 -1
- package/dist/module-api/base.js +49 -357
- package/dist/module-api/base.js.map +1 -1
- package/dist/module-api/common.d.ts +2 -8
- package/dist/module-api/common.d.ts.map +1 -1
- package/dist/module-api/common.js +1 -2
- package/dist/module-api/config.js +1 -2
- package/dist/module-api/enums.d.ts +0 -1
- package/dist/module-api/enums.d.ts.map +1 -1
- package/dist/module-api/enums.js +4 -7
- package/dist/module-api/enums.js.map +1 -1
- package/dist/module-api/feedback.d.ts +2 -1
- package/dist/module-api/feedback.d.ts.map +1 -1
- package/dist/module-api/feedback.js +1 -2
- package/dist/module-api/http.js +1 -2
- package/dist/module-api/index.d.ts +0 -2
- package/dist/module-api/index.d.ts.map +1 -1
- package/dist/module-api/index.js +12 -17
- package/dist/module-api/index.js.map +1 -1
- package/dist/module-api/input.d.ts +0 -20
- package/dist/module-api/input.d.ts.map +1 -1
- package/dist/module-api/input.js +1 -2
- package/dist/module-api/preset.d.ts +1 -48
- package/dist/module-api/preset.d.ts.map +1 -1
- package/dist/module-api/preset.js +1 -2
- package/dist/module-api/shared-udp-socket.d.ts +3 -4
- package/dist/module-api/shared-udp-socket.d.ts.map +1 -1
- package/dist/module-api/shared-udp-socket.js +18 -25
- package/dist/module-api/shared-udp-socket.js.map +1 -1
- package/dist/module-api/style.js +1 -2
- package/dist/module-api/upgrade.d.ts +7 -3
- package/dist/module-api/upgrade.d.ts.map +1 -1
- package/dist/module-api/upgrade.js +11 -16
- package/dist/module-api/upgrade.js.map +1 -1
- package/dist/module-api/variable.js +1 -2
- package/dist/util.d.ts +10 -0
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +15 -26
- package/dist/util.js.map +1 -1
- package/generated/validate_manifest.js +961 -1
- package/package.json +25 -36
- package/dist/entrypoint.d.ts +0 -11
- package/dist/entrypoint.d.ts.map +0 -1
- package/dist/entrypoint.js +0 -134
- package/dist/entrypoint.js.map +0 -1
- package/dist/host-api/api.d.ts +0 -402
- package/dist/host-api/api.d.ts.map +0 -1
- package/dist/host-api/api.js.map +0 -1
- package/dist/host-api/ipc-wrapper.d.ts +0 -37
- package/dist/host-api/ipc-wrapper.d.ts.map +0 -1
- package/dist/host-api/ipc-wrapper.js +0 -128
- package/dist/host-api/ipc-wrapper.js.map +0 -1
- package/dist/host-api/versions.d.ts +0 -12
- package/dist/host-api/versions.d.ts.map +0 -1
- package/dist/host-api/versions.js +0 -5
- package/dist/host-api/versions.js.map +0 -1
- package/dist/index.d.ts +0 -8
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -22
- package/dist/index.js.map +0 -1
- package/dist/internal/actions.d.ts +0 -16
- package/dist/internal/actions.d.ts.map +0 -1
- package/dist/internal/actions.js +0 -223
- package/dist/internal/actions.js.map +0 -1
- package/dist/internal/base.d.ts +0 -11
- package/dist/internal/base.d.ts.map +0 -1
- package/dist/internal/base.js +0 -39
- package/dist/internal/base.js.map +0 -1
- package/dist/internal/feedback.d.ts +0 -20
- package/dist/internal/feedback.d.ts.map +0 -1
- package/dist/internal/feedback.js +0 -307
- package/dist/internal/feedback.js.map +0 -1
- package/dist/internal/upgrade.d.ts +0 -15
- package/dist/internal/upgrade.d.ts.map +0 -1
- package/dist/internal/upgrade.js +0 -174
- package/dist/internal/upgrade.js.map +0 -1
- package/dist/module-api/graphics-composite.d.ts +0 -11
- package/dist/module-api/graphics-composite.d.ts.map +0 -1
- package/dist/module-api/graphics-composite.js +0 -3
- package/dist/module-api/graphics-composite.js.map +0 -1
- package/dist/module-api/graphics.d.ts +0 -95
- package/dist/module-api/graphics.d.ts.map +0 -1
- package/dist/module-api/graphics.js +0 -12
- package/dist/module-api/graphics.js.map +0 -1
- package/lib/debounce-fn/index.d.ts +0 -83
- package/lib/debounce-fn/index.js +0 -78
- package/lib/debounce-fn/license +0 -9
- package/lib/debounce-fn/readme.md +0 -64
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.14.1](https://github.com/bitfocus/companion-module-base/compare/v1.14.0...v1.14.1) (2025-12-22)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* Set `process.title` on init and configUpdated ([#172](https://github.com/bitfocus/companion-module-base/issues/172)) ([e14400f](https://github.com/bitfocus/companion-module-base/commit/e14400f2f7fd6ac66b8008713482ee3d1b803784))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Miscellaneous Chores
|
|
12
|
+
|
|
13
|
+
* release 1.14.1 ([7ba6482](https://github.com/bitfocus/companion-module-base/commit/7ba6482556660d55072ea784e59a246f9a0f2ed3))
|
|
14
|
+
|
|
3
15
|
## [1.14.0](https://github.com/bitfocus/companion-module-base/compare/v1.13.4...v1.14.0) (2025-12-09)
|
|
4
16
|
|
|
5
17
|
|
package/README.md
CHANGED
|
@@ -8,17 +8,18 @@ In the future it will be possible to write modules in other languages, but it is
|
|
|
8
8
|
|
|
9
9
|
Each version of Companion supports a limited range of versions of this library listed below. Any patch version (the third number) are not relevant for the compatibility check, so are not listed here
|
|
10
10
|
|
|
11
|
-
| Companion | Module-base
|
|
12
|
-
| --------- |
|
|
13
|
-
| v3.0 | v1.0 - v1.4
|
|
14
|
-
| v3.1 | v1.0 - v1.5
|
|
15
|
-
| v3.2 | v1.0 - v1.7
|
|
16
|
-
| v3.3 | v1.0 - v1.8
|
|
17
|
-
| v3.4 | v1.0 - v1.10
|
|
18
|
-
| v3.5 | v1.0 - v1.11
|
|
19
|
-
| v4.0 | v1.0 - v1.12
|
|
20
|
-
| v4.1 | v1.0 - v1.13
|
|
21
|
-
| v4.2 | v1.0 - v1.
|
|
11
|
+
| Companion | Module-base |
|
|
12
|
+
| --------- | -------------------------- |
|
|
13
|
+
| v3.0 | v1.0 - v1.4 |
|
|
14
|
+
| v3.1 | v1.0 - v1.5 |
|
|
15
|
+
| v3.2 | v1.0 - v1.7 |
|
|
16
|
+
| v3.3 | v1.0 - v1.8 |
|
|
17
|
+
| v3.4 | v1.0 - v1.10 |
|
|
18
|
+
| v3.5 | v1.0 - v1.11 |
|
|
19
|
+
| v4.0 | v1.0 - v1.12 |
|
|
20
|
+
| v4.1 | v1.0 - v1.13 |
|
|
21
|
+
| v4.2 | v1.0 - v1.14 |
|
|
22
|
+
| v4.3 | v1.0 - v1.15 (unconfirmed) |
|
|
22
23
|
|
|
23
24
|
## Getting started with a new module
|
|
24
25
|
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
export declare class Socket extends EventEmitter {
|
|
3
|
+
onWrite: ((buff: Buffer, encoding: string) => void) | undefined;
|
|
4
|
+
onConnect: ((port: number, host: string) => void) | undefined;
|
|
5
|
+
onClose: (() => void) | undefined;
|
|
6
|
+
private _connected;
|
|
7
|
+
destroyed: boolean;
|
|
8
|
+
configOps: Array<any[]>;
|
|
9
|
+
constructor();
|
|
10
|
+
static mockSockets(): Socket[];
|
|
11
|
+
static mockClearSockets(): void;
|
|
12
|
+
static mockOnNextSocket(cb: (s: Socket) => void): void;
|
|
13
|
+
connect(port: number, host?: string, cb?: () => void): void;
|
|
14
|
+
write(buf: Buffer, cb?: () => void): void;
|
|
15
|
+
write(buf: Buffer, encoding?: BufferEncoding, cb?: () => void): void;
|
|
16
|
+
end(): void;
|
|
17
|
+
mockClose(): void;
|
|
18
|
+
mockData(data: string): void;
|
|
19
|
+
setNoDelay(noDelay?: boolean): void;
|
|
20
|
+
setEncoding(encoding?: BufferEncoding): void;
|
|
21
|
+
setKeepAlive(enable?: boolean, initialDelay?: number): void;
|
|
22
|
+
destroy(): void;
|
|
23
|
+
private setConnected;
|
|
24
|
+
private setClosed;
|
|
25
|
+
private setEnd;
|
|
26
|
+
}
|
|
27
|
+
declare const _default: {
|
|
28
|
+
Socket: typeof Socket;
|
|
29
|
+
};
|
|
30
|
+
export default _default;
|
|
31
|
+
//# sourceMappingURL=net.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"net.d.ts","sourceRoot":"","sources":["../../src/__mocks__/net.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAMrC,qBAAa,MAAO,SAAQ,YAAY;IAChC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAC/D,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAC7D,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;IAIxC,OAAO,CAAC,UAAU,CAAQ;IAEnB,SAAS,UAAQ;IAEjB,SAAS,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAK;;WAarB,WAAW,IAAI,MAAM,EAAE;WAGvB,gBAAgB,IAAI,IAAI;WAGxB,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAOtD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,SAAc,EAAE,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;IAYhE,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;IACzC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;IAUpE,GAAG,IAAI,IAAI;IAKX,SAAS,IAAI,IAAI;IAGjB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI;IAKnC,WAAW,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI;IAK5C,YAAY,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAK3D,OAAO,IAAI,IAAI;IAItB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,MAAM;CAMd;;;;AAED,wBAAyB"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
const sockets = [];
|
|
3
|
+
const onNextSocket = [];
|
|
4
|
+
const orgSetImmediate = setImmediate;
|
|
5
|
+
export class Socket extends EventEmitter {
|
|
6
|
+
onWrite;
|
|
7
|
+
onConnect;
|
|
8
|
+
onClose;
|
|
9
|
+
// private _port: number
|
|
10
|
+
// private _host: string
|
|
11
|
+
_connected = false;
|
|
12
|
+
destroyed = false;
|
|
13
|
+
configOps = [];
|
|
14
|
+
constructor() {
|
|
15
|
+
super();
|
|
16
|
+
const cb = onNextSocket.shift();
|
|
17
|
+
if (cb) {
|
|
18
|
+
cb(this);
|
|
19
|
+
}
|
|
20
|
+
sockets.push(this);
|
|
21
|
+
}
|
|
22
|
+
static mockSockets() {
|
|
23
|
+
return sockets;
|
|
24
|
+
}
|
|
25
|
+
static mockClearSockets() {
|
|
26
|
+
sockets.length = 0;
|
|
27
|
+
}
|
|
28
|
+
static mockOnNextSocket(cb) {
|
|
29
|
+
onNextSocket.push(cb);
|
|
30
|
+
}
|
|
31
|
+
// this.emit('connect')
|
|
32
|
+
// this.emit('close')
|
|
33
|
+
// this.emit('end')
|
|
34
|
+
connect(port, host = 'localhost', cb) {
|
|
35
|
+
// this._port = port
|
|
36
|
+
// this._host = host
|
|
37
|
+
if (this.onConnect)
|
|
38
|
+
this.onConnect(port, host);
|
|
39
|
+
orgSetImmediate(() => {
|
|
40
|
+
if (cb) {
|
|
41
|
+
cb();
|
|
42
|
+
}
|
|
43
|
+
this.setConnected();
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
write(buf, encodingOrCb, cb) {
|
|
47
|
+
const DEFAULT_ENCODING = 'utf-8';
|
|
48
|
+
cb = typeof encodingOrCb === 'function' ? encodingOrCb : cb;
|
|
49
|
+
const encoding = typeof encodingOrCb === 'function' ? DEFAULT_ENCODING : encodingOrCb;
|
|
50
|
+
if (this.onWrite) {
|
|
51
|
+
this.onWrite(buf, encoding ?? DEFAULT_ENCODING);
|
|
52
|
+
}
|
|
53
|
+
if (cb)
|
|
54
|
+
cb();
|
|
55
|
+
}
|
|
56
|
+
end() {
|
|
57
|
+
this.setEnd();
|
|
58
|
+
this.setClosed();
|
|
59
|
+
}
|
|
60
|
+
mockClose() {
|
|
61
|
+
this.setClosed();
|
|
62
|
+
}
|
|
63
|
+
mockData(data) {
|
|
64
|
+
this.emit('data', data);
|
|
65
|
+
}
|
|
66
|
+
setNoDelay(noDelay) {
|
|
67
|
+
// noop
|
|
68
|
+
this.configOps.push(['setNoDelay', noDelay]);
|
|
69
|
+
}
|
|
70
|
+
setEncoding(encoding) {
|
|
71
|
+
// noop
|
|
72
|
+
this.configOps.push(['setEncoding', encoding]);
|
|
73
|
+
}
|
|
74
|
+
setKeepAlive(enable, initialDelay) {
|
|
75
|
+
// noop
|
|
76
|
+
this.configOps.push(['setKeepAlive', enable, initialDelay]);
|
|
77
|
+
}
|
|
78
|
+
destroy() {
|
|
79
|
+
this.destroyed = true;
|
|
80
|
+
}
|
|
81
|
+
setConnected() {
|
|
82
|
+
if (this._connected !== true) {
|
|
83
|
+
this._connected = true;
|
|
84
|
+
}
|
|
85
|
+
this.emit('connect');
|
|
86
|
+
}
|
|
87
|
+
setClosed() {
|
|
88
|
+
if (this._connected !== false) {
|
|
89
|
+
this._connected = false;
|
|
90
|
+
}
|
|
91
|
+
this.destroyed = true;
|
|
92
|
+
this.emit('close');
|
|
93
|
+
if (this.onClose)
|
|
94
|
+
this.onClose();
|
|
95
|
+
}
|
|
96
|
+
setEnd() {
|
|
97
|
+
if (this._connected !== false) {
|
|
98
|
+
this._connected = false;
|
|
99
|
+
}
|
|
100
|
+
this.emit('end');
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
export default { Socket };
|
|
104
|
+
//# sourceMappingURL=net.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"net.js","sourceRoot":"","sources":["../../src/__mocks__/net.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function runAllTimers(): Promise<void>;
|
|
2
|
+
export declare function runTimersUntilNow(): Promise<void>;
|
|
3
|
+
export interface ManualPromise<T> extends Promise<T> {
|
|
4
|
+
isResolved: boolean;
|
|
5
|
+
manualResolve(res: T): void;
|
|
6
|
+
manualReject(e: Error): void;
|
|
7
|
+
}
|
|
8
|
+
export declare function createManualPromise<T>(): ManualPromise<T>;
|
|
9
|
+
//# sourceMappingURL=util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/__mocks__/util.ts"],"names":[],"mappings":"AAGA,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAOlD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAOvD;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAC;IACnD,UAAU,EAAE,OAAO,CAAA;IACnB,aAAa,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAA;IAC3B,YAAY,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;CAC5B;AAED,wBAAgB,mBAAmB,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAoBzD"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { vi } from 'vitest';
|
|
2
|
+
const orgSetTimeout = setTimeout;
|
|
3
|
+
export async function runAllTimers() {
|
|
4
|
+
// Run all timers, and wait, multiple times.
|
|
5
|
+
// This is to allow timers AND internal promises to resolve in inner functions
|
|
6
|
+
for (let i = 0; i < 50; i++) {
|
|
7
|
+
vi.runOnlyPendingTimers();
|
|
8
|
+
await new Promise((resolve) => orgSetTimeout(resolve, 0));
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export async function runTimersUntilNow() {
|
|
12
|
+
// Run all timers, and wait, multiple times.
|
|
13
|
+
// This is to allow timers AND internal promises to resolve in inner functions
|
|
14
|
+
for (let i = 0; i < 50; i++) {
|
|
15
|
+
vi.advanceTimersByTime(0);
|
|
16
|
+
await new Promise((resolve) => orgSetTimeout(resolve, 0));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
// eslint-disable-next-line @typescript-eslint/promise-function-async
|
|
20
|
+
export function createManualPromise() {
|
|
21
|
+
let resolve = () => null;
|
|
22
|
+
let reject = () => null;
|
|
23
|
+
const promise = new Promise((resolve0, reject0) => {
|
|
24
|
+
resolve = resolve0;
|
|
25
|
+
reject = reject0;
|
|
26
|
+
});
|
|
27
|
+
const manualPromise = promise;
|
|
28
|
+
manualPromise.isResolved = false;
|
|
29
|
+
manualPromise.manualReject = (err) => {
|
|
30
|
+
manualPromise.isResolved = true;
|
|
31
|
+
return reject(err);
|
|
32
|
+
};
|
|
33
|
+
manualPromise.manualResolve = (val) => {
|
|
34
|
+
manualPromise.isResolved = true;
|
|
35
|
+
return resolve(val);
|
|
36
|
+
};
|
|
37
|
+
return manualPromise;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/__mocks__/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE3B,MAAM,aAAa,GAAG,UAAU,CAAA;AAChC,MAAM,CAAC,KAAK,UAAU,YAAY;IACjC,4CAA4C;IAC5C,8EAA8E;IAC9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,EAAE,CAAC,oBAAoB,EAAE,CAAA;QACzB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1D,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACtC,4CAA4C;IAC5C,8EAA8E;IAC9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAA;QACzB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1D,CAAC;AACF,CAAC;AAOD,qEAAqE;AACrE,MAAM,UAAU,mBAAmB;IAClC,IAAI,OAAO,GAAqB,GAAG,EAAE,CAAC,IAAI,CAAA;IAC1C,IAAI,MAAM,GAAyB,GAAG,EAAE,CAAC,IAAI,CAAA;IAC7C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;QACpD,OAAO,GAAG,QAAQ,CAAA;QAClB,MAAM,GAAG,OAAO,CAAA;IACjB,CAAC,CAAC,CAAA;IAEF,MAAM,aAAa,GAAqB,OAAc,CAAA;IACtD,aAAa,CAAC,UAAU,GAAG,KAAK,CAAA;IAChC,aAAa,CAAC,YAAY,GAAG,CAAC,GAAG,EAAE,EAAE;QACpC,aAAa,CAAC,UAAU,GAAG,IAAI,CAAA;QAC/B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAA;IACnB,CAAC,CAAA;IACD,aAAa,CAAC,aAAa,GAAG,CAAC,GAAG,EAAE,EAAE;QACrC,aAAa,CAAC,UAAU,GAAG,IAAI,CAAA;QAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAA;IACpB,CAAC,CAAA;IAED,OAAO,aAAa,CAAA;AACrB,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copied from https://github.com/sindresorhus/type-fest/blob/main/source/json-value.d.ts
|
|
3
2
|
// Under MIT License - Sindre Sorhus <sindresorhus@gmail.com>
|
|
4
|
-
|
|
3
|
+
export {};
|
|
5
4
|
//# sourceMappingURL=json-value.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-value.js","sourceRoot":"","sources":["../../src/common/json-value.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"json-value.js","sourceRoot":"","sources":["../../src/common/json-value.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,6DAA6D"}
|
package/dist/common/osc.js
CHANGED
package/dist/common/osc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"osc.js","sourceRoot":"","sources":["../../src/common/osc.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"osc.js","sourceRoot":"","sources":["../../src/common/osc.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tcp.spec.d.ts","sourceRoot":"","sources":["../../../src/helpers/__tests__/tcp.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { describe, it, expect, vi, afterEach } from 'vitest';
|
|
2
|
+
import { TCPHelper } from '../tcp.js';
|
|
3
|
+
import { Socket } from 'net';
|
|
4
|
+
const MockSocket = Socket;
|
|
5
|
+
vi.mock('net', async () => import('../../__mocks__/net.js'));
|
|
6
|
+
// async function sleepImmediate() {
|
|
7
|
+
// return new Promise((resolve) => setImmediate(resolve))
|
|
8
|
+
// }
|
|
9
|
+
describe('TCP', () => {
|
|
10
|
+
// beforeEach(() => {
|
|
11
|
+
// createSocketMock.mockClear()
|
|
12
|
+
// })
|
|
13
|
+
afterEach(() => {
|
|
14
|
+
MockSocket.mockClearSockets();
|
|
15
|
+
});
|
|
16
|
+
// it('call fail before open', () => {
|
|
17
|
+
// const { mockIpcWrapper, moduleTcpSockets } = createDeps()
|
|
18
|
+
// const socket = new TCPHelper(mockIpcWrapper, moduleTcpSockets, { type: 'tcp4' })
|
|
19
|
+
// expect(() => socket.destroy()).toThrow(/Socket is not open/)
|
|
20
|
+
// expect(() => socket.send('', 12, '')).toThrow(/Socket is not open/)
|
|
21
|
+
// })
|
|
22
|
+
describe('construct', () => {
|
|
23
|
+
it('ok', () => {
|
|
24
|
+
const socket = new TCPHelper('1.2.3.4', 852);
|
|
25
|
+
try {
|
|
26
|
+
expect(socket).toBeTruthy();
|
|
27
|
+
expect(MockSocket.mockSockets()).toHaveLength(1);
|
|
28
|
+
const rawSocket = MockSocket.mockSockets()[0];
|
|
29
|
+
expect(rawSocket.configOps).toHaveLength(2);
|
|
30
|
+
expect(rawSocket.configOps).toEqual([
|
|
31
|
+
['setKeepAlive', true, undefined],
|
|
32
|
+
['setNoDelay', true],
|
|
33
|
+
]);
|
|
34
|
+
}
|
|
35
|
+
finally {
|
|
36
|
+
socket.destroy();
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
// it('bad bind', async () => {
|
|
40
|
+
// const rawSocket = new MinimalSocket()
|
|
41
|
+
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
42
|
+
// expect(() => new TCPHelper('1.2.3.4', 852)).toThrow('Unable to bind')
|
|
43
|
+
// expect(createSocketMock).toHaveBeenCalledTimes(1)
|
|
44
|
+
// expect(rawSocket.bind).toHaveBeenCalledTimes(1)
|
|
45
|
+
// expect(rawSocket.bind).toHaveBeenCalledWith(0, undefined)
|
|
46
|
+
// })
|
|
47
|
+
// it('ok', async () => {
|
|
48
|
+
// const rawSocket = new MinimalSocket()
|
|
49
|
+
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
50
|
+
// rawSocket.bind.mockImplementationOnce(() => {
|
|
51
|
+
// // No op
|
|
52
|
+
// return rawSocket as any
|
|
53
|
+
// })
|
|
54
|
+
// const socket = new TCPHelper('1.2.3.4', 852)
|
|
55
|
+
// try {
|
|
56
|
+
// expect(socket).toBeTruthy()
|
|
57
|
+
// expect(createSocketMock).toHaveBeenCalledTimes(1)
|
|
58
|
+
// expect(rawSocket.bind).toHaveBeenCalledTimes(1)
|
|
59
|
+
// expect(rawSocket.bind).toHaveBeenCalledWith(0, undefined)
|
|
60
|
+
// } finally {
|
|
61
|
+
// socket.destroy()
|
|
62
|
+
// }
|
|
63
|
+
// })
|
|
64
|
+
// TODO - options
|
|
65
|
+
});
|
|
66
|
+
// it('error propogation', async () => {
|
|
67
|
+
// const rawSocket = new MinimalSocket()
|
|
68
|
+
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
69
|
+
// rawSocket.bind.mockImplementationOnce(() => rawSocket as any)
|
|
70
|
+
// const socket = new TCPHelper('1.2.3.4', 852)
|
|
71
|
+
// try {
|
|
72
|
+
// expect(socket).toBeTruthy()
|
|
73
|
+
// const errorHandler = vi.fn(() => {})
|
|
74
|
+
// const statusHandler = vi.fn(() => {})
|
|
75
|
+
// socket.on('error', errorHandler)
|
|
76
|
+
// socket.on('status_change', statusHandler)
|
|
77
|
+
// expect(createSocketMock).toHaveBeenCalledTimes(1)
|
|
78
|
+
// rawSocket.emit('error', new Error('My fake error'))
|
|
79
|
+
// expect(errorHandler).toHaveBeenCalledTimes(1)
|
|
80
|
+
// expect(errorHandler).toHaveBeenCalledWith(new Error('My fake error'))
|
|
81
|
+
// expect(statusHandler).toHaveBeenCalledTimes(1)
|
|
82
|
+
// expect(statusHandler).toHaveBeenCalledWith(InstanceStatus.UnknownError, 'My fake error')
|
|
83
|
+
// } finally {
|
|
84
|
+
// socket.destroy()
|
|
85
|
+
// }
|
|
86
|
+
// })
|
|
87
|
+
// describe('listening', () => {
|
|
88
|
+
// it('ok', async () => {
|
|
89
|
+
// const rawSocket = new MinimalSocket()
|
|
90
|
+
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
91
|
+
// rawSocket.bind.mockImplementationOnce(() => rawSocket as any)
|
|
92
|
+
// const socket = new TCPHelper('1.2.3.4', 852)
|
|
93
|
+
// try {
|
|
94
|
+
// expect(socket).toBeTruthy()
|
|
95
|
+
// const listeningHandler = vi.fn(() => {})
|
|
96
|
+
// const statusHandler = vi.fn(() => {})
|
|
97
|
+
// socket.on('connect', listeningHandler)
|
|
98
|
+
// socket.on('status_change', statusHandler)
|
|
99
|
+
// expect(createSocketMock).toHaveBeenCalledTimes(1)
|
|
100
|
+
// rawSocket.emit('listening')
|
|
101
|
+
// expect(listeningHandler).toHaveBeenCalledTimes(1)
|
|
102
|
+
// expect(statusHandler).toHaveBeenCalledTimes(1)
|
|
103
|
+
// expect(statusHandler).toHaveBeenCalledWith(InstanceStatus.Ok, undefined)
|
|
104
|
+
// } finally {
|
|
105
|
+
// socket.destroy()
|
|
106
|
+
// }
|
|
107
|
+
// })
|
|
108
|
+
// // TODO - options
|
|
109
|
+
// })
|
|
110
|
+
// it('no error handler timeout', () => {
|
|
111
|
+
// const rawSocket = new MinimalSocket()
|
|
112
|
+
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
113
|
+
// rawSocket.bind.mockImplementationOnce(() => rawSocket as any)
|
|
114
|
+
// vi.advanceTimersByTimeAsync(10000)
|
|
115
|
+
// })
|
|
116
|
+
// describe('send', () => {
|
|
117
|
+
// const rawSocket = new MinimalSocket()
|
|
118
|
+
// rawSocket.bind.mockImplementation(() => rawSocket as any)
|
|
119
|
+
// let socket: TCPHelper
|
|
120
|
+
// beforeAll(() => {
|
|
121
|
+
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
122
|
+
// socket = new TCPHelper('1.2.3.4', 852)
|
|
123
|
+
// expect(socket).toBeTruthy()
|
|
124
|
+
// })
|
|
125
|
+
// beforeEach(() => {
|
|
126
|
+
// rawSocket.close.mockClear()
|
|
127
|
+
// rawSocket.send.mockClear()
|
|
128
|
+
// })
|
|
129
|
+
// afterAll(() => {
|
|
130
|
+
// if (socket) socket.destroy()
|
|
131
|
+
// })
|
|
132
|
+
// it('destroyed', async () => {
|
|
133
|
+
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
134
|
+
// const mySocket = new TCPHelper('1.2.3.4', 852)
|
|
135
|
+
// expect(mySocket).toBeTruthy()
|
|
136
|
+
// mySocket.destroy()
|
|
137
|
+
// expect(rawSocket.close).toHaveBeenCalledTimes(1)
|
|
138
|
+
// await expect(mySocket.send('test')).rejects.toThrow('Cannot write to destroyed socket')
|
|
139
|
+
// })
|
|
140
|
+
// it('no message', async () => {
|
|
141
|
+
// await expect(socket.send(undefined as any)).rejects.toThrow('No message to send')
|
|
142
|
+
// expect(rawSocket.send).toHaveBeenCalledTimes(0)
|
|
143
|
+
// })
|
|
144
|
+
// it('ok: string', async () => {
|
|
145
|
+
// rawSocket.send.mockImplementation((msg, offset, length, cb) => {
|
|
146
|
+
// if (!cb) return
|
|
147
|
+
// cb(null, length)
|
|
148
|
+
// })
|
|
149
|
+
// await expect(socket.send('test 123')).resolves.toBeUndefined()
|
|
150
|
+
// expect(rawSocket.send).toHaveBeenCalledTimes(1)
|
|
151
|
+
// expect(rawSocket.send).toHaveBeenCalledWith('test 123', 852, '1.2.3.4', expect.any(Function))
|
|
152
|
+
// })
|
|
153
|
+
// it('ok: buffer', async () => {
|
|
154
|
+
// rawSocket.send.mockImplementation((msg, offset, length, cb) => {
|
|
155
|
+
// if (!cb) return
|
|
156
|
+
// cb(null, length)
|
|
157
|
+
// })
|
|
158
|
+
// const msg = Buffer.from('test 123')
|
|
159
|
+
// await expect(socket.send(msg)).resolves.toBeUndefined()
|
|
160
|
+
// expect(rawSocket.send).toHaveBeenCalledTimes(1)
|
|
161
|
+
// expect(rawSocket.send).toHaveBeenCalledWith(msg, 852, '1.2.3.4', expect.any(Function))
|
|
162
|
+
// })
|
|
163
|
+
// it('send error', async () => {
|
|
164
|
+
// rawSocket.send.mockImplementation((msg, offset, length, cb) => {
|
|
165
|
+
// if (!cb) return
|
|
166
|
+
// cb(new Error('buffer overflow'), 0)
|
|
167
|
+
// })
|
|
168
|
+
// const msg = Buffer.from('test 123')
|
|
169
|
+
// await expect(socket.send(msg)).rejects.toThrow('buffer overflow')
|
|
170
|
+
// expect(rawSocket.send).toHaveBeenCalledTimes(1)
|
|
171
|
+
// expect(rawSocket.send).toHaveBeenCalledWith(msg, 852, '1.2.3.4', expect.any(Function))
|
|
172
|
+
// })
|
|
173
|
+
// })
|
|
174
|
+
});
|
|
175
|
+
//# sourceMappingURL=tcp.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tcp.spec.js","sourceRoot":"","sources":["../../../src/helpers/__tests__/tcp.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"udp.spec.d.ts","sourceRoot":"","sources":["../../../src/helpers/__tests__/udp.spec.ts"],"names":[],"mappings":""}
|