@companion-module/base 1.7.0 → 1.7.1
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 +7 -0
- package/dist/helpers/tcp.d.ts.map +1 -1
- package/dist/helpers/tcp.js +8 -1
- package/dist/helpers/tcp.js.map +1 -1
- package/dist/helpers/telnet.d.ts.map +1 -1
- package/dist/helpers/telnet.js +7 -1
- package/dist/helpers/telnet.js.map +1 -1
- package/dist/helpers/udp.d.ts.map +1 -1
- package/dist/helpers/udp.js +6 -1
- package/dist/helpers/udp.js.map +1 -1
- package/dist/host-api/ipc-wrapper.js +1 -1
- package/dist/host-api/ipc-wrapper.js.map +1 -1
- package/dist/intenr.d.ts +48 -0
- package/dist/intenr.d.ts.map +1 -0
- package/dist/intenr.js +3 -0
- package/dist/intenr.js.map +1 -0
- package/dist/internal/actions.d.mts +17 -0
- package/dist/internal/actions.d.mts.map +1 -0
- package/dist/internal/actions.mjs +215 -0
- package/dist/internal/actions.mjs.map +1 -0
- package/dist/internal/base.d.mts +11 -0
- package/dist/internal/base.d.mts.map +1 -0
- package/dist/internal/base.mjs +28 -0
- package/dist/internal/base.mjs.map +1 -0
- package/dist/internal/feedback.d.mts +23 -0
- package/dist/internal/feedback.d.mts.map +1 -0
- package/dist/internal/feedback.mjs +377 -0
- package/dist/internal/feedback.mjs.map +1 -0
- package/dist/internal/legacy.d.ts +24 -0
- package/dist/internal/legacy.d.ts.map +1 -0
- package/dist/internal/legacy.js +3 -0
- package/dist/internal/legacy.js.map +1 -0
- package/dist/internal/newapi.d.ts +48 -0
- package/dist/internal/newapi.d.ts.map +1 -0
- package/dist/internal/newapi.js +3 -0
- package/dist/internal/newapi.js.map +1 -0
- package/dist/internal/properties.d.ts +11 -0
- package/dist/internal/properties.d.ts.map +1 -0
- package/dist/internal/properties.js +130 -0
- package/dist/internal/properties.js.map +1 -0
- package/dist/internal/upgrade.d.mts +21 -0
- package/dist/internal/upgrade.d.mts.map +1 -0
- package/dist/internal/upgrade.mjs +162 -0
- package/dist/internal/upgrade.mjs.map +1 -0
- package/dist/internal-api.d.ts +48 -0
- package/dist/internal-api.d.ts.map +1 -0
- package/dist/internal-api.js +3 -0
- package/dist/internal-api.js.map +1 -0
- package/dist/legacy-types.d.ts +24 -0
- package/dist/legacy-types.d.ts.map +1 -0
- package/dist/legacy-types.js +3 -0
- package/dist/legacy-types.js.map +1 -0
- package/dist/legacy.d.ts +24 -0
- package/dist/legacy.d.ts.map +1 -0
- package/dist/legacy.js +3 -0
- package/dist/legacy.js.map +1 -0
- package/dist/manifest.schema.json +129 -0
- package/dist/module-api/properties.d.ts +64 -0
- package/dist/module-api/properties.d.ts.map +1 -0
- package/dist/module-api/properties.js +13 -0
- package/dist/module-api/properties.js.map +1 -0
- package/dist/module-api/shared-udp-socket.d.ts +62 -0
- package/dist/module-api/shared-udp-socket.d.ts.map +1 -0
- package/dist/module-api/shared-udp-socket.js +178 -0
- package/dist/module-api/shared-udp-socket.js.map +1 -0
- package/dist/newapi.d.ts +48 -0
- package/dist/newapi.d.ts.map +1 -0
- package/dist/newapi.js +3 -0
- package/dist/newapi.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SharedUdpSocketImpl = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const eventemitter3_1 = tslib_1.__importDefault(require("eventemitter3"));
|
|
6
|
+
const util_js_1 = require("../util.js");
|
|
7
|
+
class SharedUdpSocketImpl extends eventemitter3_1.default {
|
|
8
|
+
#ipcWrapper;
|
|
9
|
+
#moduleUdpSockets;
|
|
10
|
+
#options;
|
|
11
|
+
get handleId() {
|
|
12
|
+
return this.boundState?.handleId;
|
|
13
|
+
}
|
|
14
|
+
get portNumber() {
|
|
15
|
+
return this.boundState?.portNumber;
|
|
16
|
+
}
|
|
17
|
+
get boundState() {
|
|
18
|
+
if (this.#state && typeof this.#state === 'object') {
|
|
19
|
+
return this.#state;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
#state = 'pending';
|
|
26
|
+
constructor(ipcWrapper, moduleUdpSockets, options) {
|
|
27
|
+
super();
|
|
28
|
+
this.#ipcWrapper = ipcWrapper;
|
|
29
|
+
this.#moduleUdpSockets = moduleUdpSockets;
|
|
30
|
+
this.#options = { ...options };
|
|
31
|
+
}
|
|
32
|
+
bind(port, _address, callback) {
|
|
33
|
+
if (this.#state && typeof this.#state === 'object')
|
|
34
|
+
throw new Error('Socket is already bound');
|
|
35
|
+
switch (this.#state) {
|
|
36
|
+
case 'fatalError':
|
|
37
|
+
throw new Error('Socket has encountered fatal error');
|
|
38
|
+
case 'binding':
|
|
39
|
+
throw new Error('Socket is already bound');
|
|
40
|
+
case 'closed':
|
|
41
|
+
throw new Error('Socket is closing');
|
|
42
|
+
case 'pending':
|
|
43
|
+
break;
|
|
44
|
+
default:
|
|
45
|
+
(0, util_js_1.assertNever)(this.#state);
|
|
46
|
+
throw new Error('Invalid socket state');
|
|
47
|
+
}
|
|
48
|
+
this.#state = 'binding';
|
|
49
|
+
if (callback)
|
|
50
|
+
this.on('listening', callback);
|
|
51
|
+
this.#ipcWrapper
|
|
52
|
+
.sendWithCb('sharedUdpSocketJoin', {
|
|
53
|
+
family: this.#options.type,
|
|
54
|
+
portNumber: port,
|
|
55
|
+
// Future: use address?
|
|
56
|
+
})
|
|
57
|
+
.then((handleId) => {
|
|
58
|
+
this.#state = { portNumber: port, handleId };
|
|
59
|
+
this.#moduleUdpSockets.set(handleId, this);
|
|
60
|
+
this.emit('listening');
|
|
61
|
+
}, (err) => {
|
|
62
|
+
this.#state = 'closed';
|
|
63
|
+
this.emit('error', err instanceof Error ? err : new Error(err));
|
|
64
|
+
})
|
|
65
|
+
.catch(() => null); // Make sure any errors in user code don't cause a crash
|
|
66
|
+
}
|
|
67
|
+
close(callback) {
|
|
68
|
+
if (this.#state && typeof this.#state === 'object') {
|
|
69
|
+
// OK
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
switch (this.#state) {
|
|
73
|
+
case 'fatalError':
|
|
74
|
+
throw new Error('Socket has encountered fatal error');
|
|
75
|
+
case 'pending':
|
|
76
|
+
case 'closed':
|
|
77
|
+
case 'binding':
|
|
78
|
+
throw new Error('Socket is not open');
|
|
79
|
+
default:
|
|
80
|
+
(0, util_js_1.assertNever)(this.#state);
|
|
81
|
+
throw new Error('Invalid socket state');
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
const handleId = this.#state.handleId;
|
|
85
|
+
this.#state = 'closed';
|
|
86
|
+
if (callback)
|
|
87
|
+
this.on('close', callback);
|
|
88
|
+
this.#ipcWrapper
|
|
89
|
+
.sendWithCb('sharedUdpSocketLeave', {
|
|
90
|
+
handleId: handleId,
|
|
91
|
+
})
|
|
92
|
+
.then(() => {
|
|
93
|
+
this.#moduleUdpSockets.delete(handleId);
|
|
94
|
+
this.emit('close');
|
|
95
|
+
}, (err) => {
|
|
96
|
+
this.#moduleUdpSockets.delete(handleId);
|
|
97
|
+
this.emit('error', err instanceof Error ? err : new Error(err));
|
|
98
|
+
})
|
|
99
|
+
.catch(() => null); // Make sure any errors in user code don't cause a crash
|
|
100
|
+
}
|
|
101
|
+
send(bufferOrList, offsetOrPort, lengthOrAddress, portOrCallback, address, callback) {
|
|
102
|
+
if (typeof offsetOrPort !== 'number')
|
|
103
|
+
throw new Error('Invalid arguments');
|
|
104
|
+
if (typeof lengthOrAddress === 'number') {
|
|
105
|
+
if (typeof portOrCallback !== 'number' || typeof address !== 'string')
|
|
106
|
+
throw new Error('Invalid arguments');
|
|
107
|
+
if (callback !== undefined && typeof callback !== 'number')
|
|
108
|
+
throw new Error('Invalid arguments');
|
|
109
|
+
const buffer = this.#processBuffer(bufferOrList, offsetOrPort, lengthOrAddress);
|
|
110
|
+
this.#sendInner(buffer, portOrCallback, address, callback);
|
|
111
|
+
}
|
|
112
|
+
else if (typeof lengthOrAddress === 'string') {
|
|
113
|
+
if (portOrCallback !== undefined && typeof portOrCallback !== 'function')
|
|
114
|
+
throw new Error('Invalid arguments');
|
|
115
|
+
const buffer = this.#processBuffer(bufferOrList, 0, undefined);
|
|
116
|
+
this.#sendInner(buffer, offsetOrPort, lengthOrAddress, portOrCallback);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
throw new Error('Invalid arguments');
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
#processBuffer(bufferOrList, offset, length) {
|
|
123
|
+
let buffer;
|
|
124
|
+
if (typeof bufferOrList === 'string') {
|
|
125
|
+
buffer = Buffer.from(bufferOrList, 'utf-8');
|
|
126
|
+
}
|
|
127
|
+
else if (Buffer.isBuffer(bufferOrList)) {
|
|
128
|
+
buffer = bufferOrList;
|
|
129
|
+
}
|
|
130
|
+
else if (Array.isArray(bufferOrList)) {
|
|
131
|
+
// Don't apply length checks
|
|
132
|
+
return Buffer.from(bufferOrList);
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
buffer = Buffer.from(bufferOrList.buffer, bufferOrList.byteOffset, bufferOrList.byteLength);
|
|
136
|
+
}
|
|
137
|
+
return buffer.subarray(offset, length !== undefined ? length + offset : undefined);
|
|
138
|
+
}
|
|
139
|
+
#sendInner(buffer, port, address, callback) {
|
|
140
|
+
if (!this.#state || typeof this.#state !== 'object')
|
|
141
|
+
throw new Error('Socket is not open');
|
|
142
|
+
this.#ipcWrapper
|
|
143
|
+
.sendWithCb('sharedUdpSocketSend', {
|
|
144
|
+
handleId: this.#state.handleId,
|
|
145
|
+
message: buffer,
|
|
146
|
+
address: address,
|
|
147
|
+
port: port,
|
|
148
|
+
})
|
|
149
|
+
.then(() => {
|
|
150
|
+
callback?.();
|
|
151
|
+
}, (err) => {
|
|
152
|
+
this.emit('error', err instanceof Error ? err : new Error(err));
|
|
153
|
+
})
|
|
154
|
+
.catch(() => null); // Make sure any errors in user code don't cause a crash
|
|
155
|
+
}
|
|
156
|
+
receiveSocketMessage(message) {
|
|
157
|
+
try {
|
|
158
|
+
this.emit('message', message.message, message.source);
|
|
159
|
+
}
|
|
160
|
+
catch (e) {
|
|
161
|
+
// Ignore
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
receiveSocketError(error) {
|
|
165
|
+
this.#state = 'fatalError';
|
|
166
|
+
const boundState = this.boundState;
|
|
167
|
+
if (boundState)
|
|
168
|
+
this.#moduleUdpSockets.delete(boundState.handleId);
|
|
169
|
+
try {
|
|
170
|
+
this.emit('error', error);
|
|
171
|
+
}
|
|
172
|
+
catch (e) {
|
|
173
|
+
// Ignore
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
exports.SharedUdpSocketImpl = SharedUdpSocketImpl;
|
|
178
|
+
//# sourceMappingURL=shared-udp-socket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-udp-socket.js","sourceRoot":"","sources":["../../src/module-api/shared-udp-socket.ts"],"names":[],"mappings":"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"}
|
package/dist/newapi.d.ts
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { OSCSomeArguments } from '../common/osc';
|
|
2
|
+
import type { CompanionActionDefinitions, CompanionActionInfo, CompanionFeedbackDefinitions, CompanionPresetDefinitions, CompanionVariableDefinition, CompanionVariableValue, CompanionVariableValues, InstanceBase, InstanceStatus, LogLevel } from '../module-api';
|
|
3
|
+
import { LegacyAction, LegacyFeedback } from './legacy';
|
|
4
|
+
export interface IActionManager {
|
|
5
|
+
setActionDefinitions(actions: CompanionActionDefinitions): void;
|
|
6
|
+
/** @deprecated */
|
|
7
|
+
_getAllActions(): LegacyAction[];
|
|
8
|
+
subscribeActions(actionIds: string[]): void;
|
|
9
|
+
unsubscribeActions(actionIds: string[]): void;
|
|
10
|
+
}
|
|
11
|
+
export interface IFeedbackManager {
|
|
12
|
+
parseVariablesContext: string | undefined;
|
|
13
|
+
getDefinitionIds(): string[];
|
|
14
|
+
getInstanceIds(): string[];
|
|
15
|
+
setFeedbackDefinitions(feedbacks: CompanionFeedbackDefinitions): void;
|
|
16
|
+
checkFeedbacks(feedbackTypes: string[]): void;
|
|
17
|
+
checkFeedbacksById(feedbackIds: string[]): void;
|
|
18
|
+
/** @deprecated */
|
|
19
|
+
_getAllFeedbacks(): LegacyFeedback[];
|
|
20
|
+
subscribeFeedbacks(feedbackIds: string[]): void;
|
|
21
|
+
unsubscribeFeedbacks(feedbackIds: string[]): void;
|
|
22
|
+
}
|
|
23
|
+
export interface InstanceBaseOptions {
|
|
24
|
+
/**
|
|
25
|
+
* Disable enforcement of variables requiring a definition.
|
|
26
|
+
* It is not recommended to set this, unless you know what you are doing.
|
|
27
|
+
*/
|
|
28
|
+
disableVariableValidation: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface CompanionInstanceApi<TConfig> {
|
|
31
|
+
readonly connectionId: string;
|
|
32
|
+
readonly actionManager: IActionManager;
|
|
33
|
+
readonly feedbackManager: IFeedbackManager;
|
|
34
|
+
readonly instanceOptions: InstanceBaseOptions;
|
|
35
|
+
setInstance(instance: InstanceBase<TConfig>): void;
|
|
36
|
+
saveConfig(newConfig: TConfig): void;
|
|
37
|
+
setPresetDefinitions(presets: CompanionPresetDefinitions): void;
|
|
38
|
+
setVariableDefinitions(variables: CompanionVariableDefinition[]): void;
|
|
39
|
+
setVariableValues(values: CompanionVariableValues): void;
|
|
40
|
+
getVariableValue(variableId: string): CompanionVariableValue | undefined;
|
|
41
|
+
parseVariablesInString(text: string): Promise<string>;
|
|
42
|
+
recordAction(action: Omit<CompanionActionInfo, 'id' | 'controlId'>, uniquenessId?: string): void;
|
|
43
|
+
setCustomVariableValue(variableName: string, value: CompanionVariableValue): void;
|
|
44
|
+
oscSend(host: string, port: number, path: string, args: OSCSomeArguments): void;
|
|
45
|
+
updateStatus(status: InstanceStatus, message?: string | null): void;
|
|
46
|
+
log(level: LogLevel, message: string): void;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=newapi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"newapi.d.ts","sourceRoot":"","sources":["../src/newapi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,KAAK,EACX,0BAA0B,EAC1B,mBAAmB,EACnB,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,uBAAuB,EACvB,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEvD,MAAM,WAAW,cAAc;IAC9B,oBAAoB,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAA;IAE/D,kBAAkB;IAClB,cAAc,IAAI,YAAY,EAAE,CAAA;IAEhC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAE3C,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;CAC7C;AAED,MAAM,WAAW,gBAAgB;IAChC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAA;IAEzC,gBAAgB,IAAI,MAAM,EAAE,CAAA;IAC5B,cAAc,IAAI,MAAM,EAAE,CAAA;IAE1B,sBAAsB,CAAC,SAAS,EAAE,4BAA4B,GAAG,IAAI,CAAA;IAErE,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAE7C,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAE/C,kBAAkB;IAClB,gBAAgB,IAAI,cAAc,EAAE,CAAA;IAEpC,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAE/C,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;CACjD;AAED,MAAM,WAAW,mBAAmB;IACnC;;;OAGG;IACH,yBAAyB,EAAE,OAAO,CAAA;CAClC;AAED,MAAM,WAAW,oBAAoB,CAAC,OAAO;IAC5C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAE7B,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAA;IACtC,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAA;IAE1C,QAAQ,CAAC,eAAe,EAAE,mBAAmB,CAAA;IAE7C,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;IAElD,UAAU,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;IAEpC,oBAAoB,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAA;IAE/D,sBAAsB,CAAC,SAAS,EAAE,2BAA2B,EAAE,GAAG,IAAI,CAAA;IAEtE,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAAA;IAExD,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS,CAAA;IAExE,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAErD,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,GAAG,WAAW,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAEhG,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAA;IAEjF,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAE/E,YAAY,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;IAEnE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3C"}
|
package/dist/newapi.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"newapi.js","sourceRoot":"","sources":["../src/newapi.ts"],"names":[],"mappings":""}
|