@companion-module/base 1.99.0-0-nightly-feat-split-api-20251221-153951-fa12995 → 1.99.0-nightly-feat-graphics-overhaul-20251222-140818-911eb31
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/README.md +11 -12
- package/dist/common/json-value.d.ts +1 -0
- package/dist/common/json-value.d.ts.map +1 -0
- package/dist/common/osc.d.ts +1 -0
- package/dist/common/osc.d.ts.map +1 -0
- package/dist/entrypoint.d.ts +1 -9
- package/dist/entrypoint.d.ts.map +1 -0
- package/dist/entrypoint.js +122 -4
- package/dist/entrypoint.js.map +1 -1
- package/dist/helpers/index.d.ts +1 -0
- package/dist/helpers/index.d.ts.map +1 -0
- package/dist/helpers/tcp.d.ts +1 -0
- package/dist/helpers/tcp.d.ts.map +1 -0
- package/dist/helpers/telnet.d.ts +1 -0
- package/dist/helpers/telnet.d.ts.map +1 -0
- package/dist/helpers/udp.d.ts +1 -0
- package/dist/helpers/udp.d.ts.map +1 -0
- package/dist/host-api/api.d.ts +402 -0
- package/dist/host-api/api.d.ts.map +1 -0
- package/dist/host-api/{context.js → api.js} +1 -6
- package/dist/host-api/api.js.map +1 -0
- package/dist/host-api/ipc-wrapper.d.ts +37 -0
- package/dist/host-api/ipc-wrapper.d.ts.map +1 -0
- package/dist/host-api/ipc-wrapper.js +128 -0
- package/dist/host-api/ipc-wrapper.js.map +1 -0
- package/dist/host-api/versions.d.ts +12 -0
- package/dist/host-api/versions.d.ts.map +1 -0
- package/dist/host-api/versions.js +5 -0
- package/dist/host-api/versions.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/dist/instance-base.d.ts +1 -0
- package/dist/instance-base.d.ts.map +1 -0
- package/dist/internal/actions.d.ts +16 -0
- package/dist/internal/actions.d.ts.map +1 -0
- package/dist/internal/actions.js +223 -0
- package/dist/internal/actions.js.map +1 -0
- package/dist/internal/base.d.ts +11 -0
- package/dist/internal/base.d.ts.map +1 -0
- package/dist/internal/base.js +39 -0
- package/dist/internal/base.js.map +1 -0
- package/dist/internal/feedback.d.ts +20 -0
- package/dist/internal/feedback.d.ts.map +1 -0
- package/dist/internal/feedback.js +307 -0
- package/dist/internal/feedback.js.map +1 -0
- package/dist/internal/upgrade.d.ts +15 -0
- package/dist/internal/upgrade.d.ts.map +1 -0
- package/dist/internal/upgrade.js +174 -0
- package/dist/internal/upgrade.js.map +1 -0
- package/dist/manifest.d.ts +1 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/module-api/action.d.ts +1 -0
- package/dist/module-api/action.d.ts.map +1 -0
- package/dist/module-api/base.d.ts +23 -3
- package/dist/module-api/base.d.ts.map +1 -0
- package/dist/module-api/base.js +338 -47
- package/dist/module-api/base.js.map +1 -1
- package/dist/module-api/common.d.ts +1 -0
- package/dist/module-api/common.d.ts.map +1 -0
- package/dist/module-api/config.d.ts +1 -0
- package/dist/module-api/config.d.ts.map +1 -0
- package/dist/module-api/enums.d.ts +2 -0
- package/dist/module-api/enums.d.ts.map +1 -0
- package/dist/module-api/enums.js.map +1 -1
- package/dist/module-api/feedback.d.ts +1 -0
- package/dist/module-api/feedback.d.ts.map +1 -0
- package/dist/module-api/graphics-composite.d.ts +11 -0
- package/dist/module-api/graphics-composite.d.ts.map +1 -0
- package/dist/module-api/graphics-composite.js +3 -0
- package/dist/module-api/graphics-composite.js.map +1 -0
- package/dist/module-api/graphics.d.ts +83 -0
- package/dist/module-api/graphics.d.ts.map +1 -0
- package/dist/module-api/graphics.js +12 -0
- package/dist/module-api/graphics.js.map +1 -0
- package/dist/module-api/http.d.ts +1 -0
- package/dist/module-api/http.d.ts.map +1 -0
- package/dist/module-api/index.d.ts +3 -0
- package/dist/module-api/index.d.ts.map +1 -0
- package/dist/module-api/index.js +2 -0
- package/dist/module-api/index.js.map +1 -1
- package/dist/module-api/input.d.ts +1 -0
- package/dist/module-api/input.d.ts.map +1 -0
- package/dist/module-api/preset.d.ts +49 -1
- package/dist/module-api/preset.d.ts.map +1 -0
- package/dist/module-api/shared-udp-socket.d.ts +4 -2
- package/dist/module-api/shared-udp-socket.d.ts.map +1 -0
- package/dist/module-api/shared-udp-socket.js +15 -13
- package/dist/module-api/shared-udp-socket.js.map +1 -1
- package/dist/module-api/style.d.ts +1 -0
- package/dist/module-api/style.d.ts.map +1 -0
- package/dist/module-api/upgrade.d.ts +1 -0
- package/dist/module-api/upgrade.d.ts.map +1 -0
- package/dist/module-api/variable.d.ts +1 -0
- package/dist/module-api/variable.d.ts.map +1 -0
- package/dist/util.d.ts +1 -0
- package/dist/util.d.ts.map +1 -0
- package/lib/debounce-fn/index.d.ts +83 -0
- package/lib/debounce-fn/index.js +78 -0
- package/lib/debounce-fn/license +9 -0
- package/lib/debounce-fn/readme.md +64 -0
- package/package.json +35 -6
- package/dist/__mocks__/net.d.ts +0 -30
- package/dist/__mocks__/net.js +0 -108
- package/dist/__mocks__/net.js.map +0 -1
- package/dist/__mocks__/util.d.ts +0 -8
- package/dist/__mocks__/util.js +0 -44
- package/dist/__mocks__/util.js.map +0 -1
- package/dist/helpers/__tests__/tcp.spec.d.ts +0 -1
- package/dist/helpers/__tests__/tcp.spec.js +0 -210
- package/dist/helpers/__tests__/tcp.spec.js.map +0 -1
- package/dist/helpers/__tests__/udp.spec.d.ts +0 -1
- package/dist/helpers/__tests__/udp.spec.js +0 -200
- package/dist/helpers/__tests__/udp.spec.js.map +0 -1
- package/dist/host-api/context.d.ts +0 -59
- package/dist/host-api/context.js.map +0 -1
- package/dist/logging.d.ts +0 -20
- package/dist/logging.js +0 -25
- package/dist/logging.js.map +0 -1
- package/dist/main.d.ts +0 -8
- package/dist/main.js +0 -14
- package/dist/main.js.map +0 -1
- package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts +0 -1
- package/dist/module-api/__tests__/shared-udp-socket.spec.js +0 -272
- package/dist/module-api/__tests__/shared-udp-socket.spec.js.map +0 -1
package/dist/module-api/base.js
CHANGED
|
@@ -1,17 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.InstanceBase = void 0;
|
|
4
|
-
const
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
5
|
const util_js_1 = require("../util.js");
|
|
6
|
+
const p_queue_1 = tslib_1.__importDefault(require("p-queue"));
|
|
7
|
+
const base_js_1 = require("../internal/base.js");
|
|
8
|
+
const upgrade_js_1 = require("../internal/upgrade.js");
|
|
9
|
+
const feedback_js_1 = require("../internal/feedback.js");
|
|
10
|
+
const ipc_wrapper_js_1 = require("../host-api/ipc-wrapper.js");
|
|
11
|
+
const actions_js_1 = require("../internal/actions.js");
|
|
6
12
|
const shared_udp_socket_js_1 = require("./shared-udp-socket.js");
|
|
7
|
-
const context_js_1 = require("../host-api/context.js");
|
|
8
13
|
class InstanceBase {
|
|
9
|
-
#
|
|
10
|
-
#
|
|
14
|
+
#ipcWrapper;
|
|
15
|
+
#upgradeScripts;
|
|
16
|
+
id;
|
|
17
|
+
#lifecycleQueue = new p_queue_1.default({ concurrency: 1 });
|
|
18
|
+
#initialized = false;
|
|
19
|
+
#recordingActions = false;
|
|
20
|
+
#lastConfig = {};
|
|
21
|
+
#lastSecrets = {};
|
|
22
|
+
#actionManager;
|
|
23
|
+
#feedbackManager;
|
|
24
|
+
#sharedUdpSocketHandlers = new Map();
|
|
25
|
+
#variableDefinitions = new Map();
|
|
26
|
+
#variableValues = new Map();
|
|
11
27
|
#options;
|
|
12
|
-
|
|
13
|
-
return this.#context.id;
|
|
14
|
-
}
|
|
28
|
+
#label;
|
|
15
29
|
get instanceOptions() {
|
|
16
30
|
return this.#options;
|
|
17
31
|
}
|
|
@@ -20,60 +34,323 @@ class InstanceBase {
|
|
|
20
34
|
* This can be changed just before `configUpdated` is called
|
|
21
35
|
*/
|
|
22
36
|
get label() {
|
|
23
|
-
return this.#
|
|
37
|
+
return this.#label;
|
|
24
38
|
}
|
|
25
39
|
/**
|
|
26
40
|
* Create an instance of the module
|
|
27
41
|
*/
|
|
28
42
|
constructor(internal) {
|
|
29
|
-
if (!(0,
|
|
43
|
+
if (!(0, base_js_1.isInstanceBaseProps)(internal) || !internal._isInstanceBaseProps)
|
|
30
44
|
throw new Error(`Module instance is being constructed incorrectly. Make sure you aren't trying to do this manually`);
|
|
31
|
-
this.#context = internal;
|
|
32
|
-
this.#logger = (0, logging_js_1.createModuleLogger)();
|
|
33
45
|
this.createSharedUdpSocket = this.createSharedUdpSocket.bind(this);
|
|
34
46
|
this.#options = {
|
|
35
47
|
disableVariableValidation: false,
|
|
36
48
|
disableNewConfigLayout: false,
|
|
37
49
|
};
|
|
50
|
+
this.#ipcWrapper = new ipc_wrapper_js_1.IpcWrapper({
|
|
51
|
+
init: this._handleInit.bind(this),
|
|
52
|
+
destroy: this._handleDestroy.bind(this),
|
|
53
|
+
updateConfigAndLabel: this._handleConfigUpdateAndLabel.bind(this),
|
|
54
|
+
updateConfig: async () => undefined, // Replaced by updateConfigAndLabel
|
|
55
|
+
executeAction: this._handleExecuteAction.bind(this),
|
|
56
|
+
updateFeedbacks: this._handleUpdateFeedbacks.bind(this),
|
|
57
|
+
updateActions: this._handleUpdateActions.bind(this),
|
|
58
|
+
upgradeActionsAndFeedbacks: this._handleUpgradeActionsAndFeedbacks.bind(this),
|
|
59
|
+
getConfigFields: this._handleGetConfigFields.bind(this),
|
|
60
|
+
handleHttpRequest: this._handleHttpRequest.bind(this),
|
|
61
|
+
learnAction: this._handleLearnAction.bind(this),
|
|
62
|
+
learnFeedback: this._handleLearnFeedback.bind(this),
|
|
63
|
+
startStopRecordActions: this._handleStartStopRecordActions.bind(this),
|
|
64
|
+
variablesChanged: async () => undefined, // Not needed since 1.13.0
|
|
65
|
+
sharedUdpSocketMessage: this._handleSharedUdpSocketMessage.bind(this),
|
|
66
|
+
sharedUdpSocketError: this._handleSharedUdpSocketError.bind(this),
|
|
67
|
+
}, (msg) => {
|
|
68
|
+
process.send(msg);
|
|
69
|
+
}, 5000);
|
|
70
|
+
process.on('message', (msg) => {
|
|
71
|
+
this.#ipcWrapper.receivedMessage(msg);
|
|
72
|
+
});
|
|
73
|
+
const parseVariablesInStringIfNeeded = async (msg) => {
|
|
74
|
+
// Shortcut in case there is definitely nothing to parse
|
|
75
|
+
if (!msg.text.includes('$('))
|
|
76
|
+
return {
|
|
77
|
+
text: msg.text,
|
|
78
|
+
variableIds: undefined,
|
|
79
|
+
};
|
|
80
|
+
return this.#ipcWrapper.sendWithCb('parseVariablesInString', msg);
|
|
81
|
+
};
|
|
82
|
+
this.#actionManager = new actions_js_1.ActionManager(parseVariablesInStringIfNeeded, (msg) => this.#ipcWrapper.sendWithNoCb('setActionDefinitions', msg), (msg) => this.#ipcWrapper.sendWithNoCb('setCustomVariable', msg), this.log.bind(this));
|
|
83
|
+
this.#feedbackManager = new feedback_js_1.FeedbackManager(parseVariablesInStringIfNeeded, (msg) => this.#ipcWrapper.sendWithNoCb('updateFeedbackValues', msg), (msg) => this.#ipcWrapper.sendWithNoCb('setFeedbackDefinitions', msg), this.log.bind(this));
|
|
84
|
+
this.#upgradeScripts = internal.upgradeScripts;
|
|
85
|
+
this.id = internal.id;
|
|
86
|
+
this.#label = internal.id; // Temporary
|
|
38
87
|
this.log('debug', 'Initializing');
|
|
39
88
|
}
|
|
89
|
+
async _handleInit(msg) {
|
|
90
|
+
return this.#lifecycleQueue.add(async () => {
|
|
91
|
+
if (this.#initialized)
|
|
92
|
+
throw new Error('Already initialized');
|
|
93
|
+
this.#lastConfig = msg.config;
|
|
94
|
+
this.#lastSecrets = msg.secrets;
|
|
95
|
+
this.#label = msg.label;
|
|
96
|
+
// Create initial config object
|
|
97
|
+
if (msg.isFirstInit) {
|
|
98
|
+
const newConfig = {};
|
|
99
|
+
const newSecrets = {};
|
|
100
|
+
const fields = this.getConfigFields();
|
|
101
|
+
for (const field of fields) {
|
|
102
|
+
if ('default' in field) {
|
|
103
|
+
if (field.type.startsWith('secret')) {
|
|
104
|
+
newSecrets[field.id] = field.default;
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
newConfig[field.id] = field.default;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
this.#lastConfig = newConfig;
|
|
112
|
+
this.#lastSecrets = newSecrets;
|
|
113
|
+
this.saveConfig(this.#lastConfig, this.#lastSecrets);
|
|
114
|
+
// this is new, so there is no point attempting to run any upgrade scripts
|
|
115
|
+
msg.lastUpgradeIndex = this.#upgradeScripts.length - 1;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Making this handle actions/feedbacks is hard now due to the structure of options, so instead we just upgrade the config, and the actions/feedbacks will be handled in their own calls soon after this
|
|
119
|
+
*/
|
|
120
|
+
const { updatedConfig, updatedSecrets } = (0, upgrade_js_1.runThroughUpgradeScripts)([], [], msg.lastUpgradeIndex, this.#upgradeScripts, this.#lastConfig, this.#lastSecrets, false);
|
|
121
|
+
this.#lastConfig = updatedConfig ?? this.#lastConfig;
|
|
122
|
+
this.#lastSecrets = updatedSecrets ?? this.#lastSecrets;
|
|
123
|
+
// Now we can initialise the module
|
|
124
|
+
try {
|
|
125
|
+
await this.init(this.#lastConfig, !!msg.isFirstInit, this.#lastSecrets);
|
|
126
|
+
this.#initialized = true;
|
|
127
|
+
}
|
|
128
|
+
catch (e) {
|
|
129
|
+
console.trace(`Init failed: ${e}`);
|
|
130
|
+
throw e;
|
|
131
|
+
}
|
|
132
|
+
return {
|
|
133
|
+
hasHttpHandler: typeof this.handleHttpRequest === 'function',
|
|
134
|
+
hasRecordActionsHandler: typeof this.handleStartStopRecordActions == 'function',
|
|
135
|
+
newUpgradeIndex: this.#upgradeScripts.length - 1,
|
|
136
|
+
disableNewConfigLayout: this.#options.disableNewConfigLayout,
|
|
137
|
+
updatedConfig: this.#lastConfig,
|
|
138
|
+
updatedSecrets: this.#lastSecrets,
|
|
139
|
+
};
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
async _handleDestroy() {
|
|
143
|
+
await this.#lifecycleQueue.add(async () => {
|
|
144
|
+
if (!this.#initialized)
|
|
145
|
+
throw new Error('Not initialized');
|
|
146
|
+
await this.destroy();
|
|
147
|
+
this.#initialized = false;
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
async _handleConfigUpdateAndLabel(msg) {
|
|
151
|
+
await this.#lifecycleQueue.add(async () => {
|
|
152
|
+
if (!this.#initialized)
|
|
153
|
+
throw new Error('Not initialized');
|
|
154
|
+
this.#label = msg.label;
|
|
155
|
+
this.#lastConfig = msg.config;
|
|
156
|
+
this.#lastSecrets = msg.secrets;
|
|
157
|
+
await this.configUpdated(this.#lastConfig, this.#lastSecrets);
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
async _handleExecuteAction(msg) {
|
|
161
|
+
return this.#actionManager.handleExecuteAction(msg);
|
|
162
|
+
}
|
|
163
|
+
async _handleUpdateFeedbacks(msg) {
|
|
164
|
+
this.#feedbackManager.handleUpdateFeedbacks(msg.feedbacks);
|
|
165
|
+
}
|
|
166
|
+
async _handleUpdateActions(msg) {
|
|
167
|
+
this.#actionManager.handleUpdateActions(msg.actions);
|
|
168
|
+
}
|
|
169
|
+
async _handleUpgradeActionsAndFeedbacks(msg) {
|
|
170
|
+
return (0, upgrade_js_1.runThroughUpgradeScripts)(msg.actions, msg.feedbacks, null, this.#upgradeScripts, this.#lastConfig, this.#lastSecrets, true);
|
|
171
|
+
}
|
|
172
|
+
async _handleGetConfigFields(_msg) {
|
|
173
|
+
return {
|
|
174
|
+
fields: (0, base_js_1.serializeIsVisibleFn)(this.getConfigFields()),
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
async _handleHttpRequest(msg) {
|
|
178
|
+
if (!this.handleHttpRequest)
|
|
179
|
+
throw new Error(`handleHttpRequest is not supported!`);
|
|
180
|
+
const res = await this.handleHttpRequest(msg.request);
|
|
181
|
+
return { response: res };
|
|
182
|
+
}
|
|
183
|
+
async _handleLearnAction(msg) {
|
|
184
|
+
return this.#actionManager.handleLearnAction(msg);
|
|
185
|
+
}
|
|
186
|
+
async _handleLearnFeedback(msg) {
|
|
187
|
+
return this.#feedbackManager.handleLearnFeedback(msg);
|
|
188
|
+
}
|
|
189
|
+
async _handleStartStopRecordActions(msg) {
|
|
190
|
+
if (!msg.recording) {
|
|
191
|
+
if (!this.#recordingActions) {
|
|
192
|
+
// Already stopped
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
if (this.#recordingActions) {
|
|
198
|
+
// Already running
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
if (!this.handleStartStopRecordActions) {
|
|
203
|
+
this.#recordingActions = false;
|
|
204
|
+
throw new Error('Recording actions is not supported by this module!');
|
|
205
|
+
}
|
|
206
|
+
this.#recordingActions = msg.recording;
|
|
207
|
+
this.handleStartStopRecordActions(this.#recordingActions);
|
|
208
|
+
}
|
|
209
|
+
async _handleSharedUdpSocketMessage(msg) {
|
|
210
|
+
for (const socket of this.#sharedUdpSocketHandlers.values()) {
|
|
211
|
+
if (socket.handleId === msg.handleId) {
|
|
212
|
+
socket.receiveSocketMessage(msg);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
async _handleSharedUdpSocketError(msg) {
|
|
217
|
+
for (const socket of this.#sharedUdpSocketHandlers.values()) {
|
|
218
|
+
if (socket.handleId === msg.handleId) {
|
|
219
|
+
socket.receiveSocketError(msg.error);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
40
223
|
saveConfig(newConfig, newSecrets) {
|
|
41
|
-
|
|
224
|
+
if (newConfig)
|
|
225
|
+
this.#lastConfig = newConfig;
|
|
226
|
+
if (newSecrets)
|
|
227
|
+
this.#lastSecrets = newSecrets;
|
|
228
|
+
this.#ipcWrapper.sendWithNoCb('saveConfig', { config: newConfig, secrets: newSecrets });
|
|
42
229
|
}
|
|
43
230
|
/**
|
|
44
231
|
* Set the action definitions for this instance
|
|
45
232
|
* @param actions The action definitions
|
|
46
233
|
*/
|
|
47
234
|
setActionDefinitions(actions) {
|
|
48
|
-
this.#
|
|
235
|
+
this.#actionManager.setActionDefinitions(actions);
|
|
49
236
|
}
|
|
50
237
|
/**
|
|
51
238
|
* Set the feedback definitions for this instance
|
|
52
239
|
* @param feedbacks The feedback definitions
|
|
53
240
|
*/
|
|
54
241
|
setFeedbackDefinitions(feedbacks) {
|
|
55
|
-
this.#
|
|
242
|
+
this.#feedbackManager.setFeedbackDefinitions(feedbacks);
|
|
56
243
|
}
|
|
57
244
|
/**
|
|
58
245
|
* Set the peset definitions for this instance
|
|
59
246
|
* @param presets The preset definitions
|
|
60
247
|
*/
|
|
61
248
|
setPresetDefinitions(presets) {
|
|
62
|
-
|
|
249
|
+
const hostPresets = [];
|
|
250
|
+
for (const [id, preset] of Object.entries(presets)) {
|
|
251
|
+
if (preset) {
|
|
252
|
+
hostPresets.push({
|
|
253
|
+
...preset,
|
|
254
|
+
id,
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
this.#ipcWrapper.sendWithNoCb('setPresetDefinitions', { presets: hostPresets });
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Set the composite graphics elements for this instance
|
|
262
|
+
* @param compositeElements The composite element definitions
|
|
263
|
+
*/
|
|
264
|
+
setCompositeElementDefinitions(compositeElements) {
|
|
265
|
+
const hostCompositeElements = [];
|
|
266
|
+
for (const compositeElement of compositeElements) {
|
|
267
|
+
hostCompositeElements.push({
|
|
268
|
+
id: compositeElement.id,
|
|
269
|
+
name: compositeElement.name,
|
|
270
|
+
type: compositeElement.type,
|
|
271
|
+
description: compositeElement.description,
|
|
272
|
+
options: (0, base_js_1.serializeIsVisibleFn)(compositeElement.options),
|
|
273
|
+
elements: compositeElement.elements,
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
this.#ipcWrapper.sendWithNoCb('setCompositeElementDefinitions', { compositeElements: hostCompositeElements });
|
|
63
277
|
}
|
|
64
278
|
/**
|
|
65
279
|
* Set the variable definitions for this instance
|
|
66
280
|
* @param variables The variable definitions
|
|
67
281
|
*/
|
|
68
282
|
setVariableDefinitions(variables) {
|
|
69
|
-
|
|
283
|
+
const hostVariables = [];
|
|
284
|
+
const hostValues = [];
|
|
285
|
+
this.#variableDefinitions.clear();
|
|
286
|
+
for (const variable of variables) {
|
|
287
|
+
hostVariables.push({
|
|
288
|
+
id: variable.variableId,
|
|
289
|
+
name: variable.name,
|
|
290
|
+
});
|
|
291
|
+
// Remember the definition locally
|
|
292
|
+
this.#variableDefinitions.set(variable.variableId, variable);
|
|
293
|
+
if (!this.#variableValues.has(variable.variableId)) {
|
|
294
|
+
// Give us a local cached value of something
|
|
295
|
+
this.#variableValues.set(variable.variableId, '');
|
|
296
|
+
hostValues.push({
|
|
297
|
+
id: variable.variableId,
|
|
298
|
+
value: '',
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
if (!this.#options.disableVariableValidation) {
|
|
303
|
+
const validIds = new Set(this.#variableDefinitions.keys());
|
|
304
|
+
for (const id of this.#variableValues.keys()) {
|
|
305
|
+
if (!validIds.has(id)) {
|
|
306
|
+
// Delete any local cached value
|
|
307
|
+
this.#variableValues.delete(id);
|
|
308
|
+
hostValues.push({
|
|
309
|
+
id: id,
|
|
310
|
+
value: undefined,
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
this.#ipcWrapper.sendWithNoCb('setVariableDefinitions', { variables: hostVariables, newValues: hostValues });
|
|
70
316
|
}
|
|
71
317
|
/**
|
|
72
318
|
* Set the values of some variables
|
|
73
319
|
* @param values The new values for the variables
|
|
74
320
|
*/
|
|
75
321
|
setVariableValues(values) {
|
|
76
|
-
|
|
322
|
+
const hostValues = [];
|
|
323
|
+
for (const [variableId, value] of Object.entries(values)) {
|
|
324
|
+
if (this.#options.disableVariableValidation) {
|
|
325
|
+
// update the cached value
|
|
326
|
+
if (value === undefined) {
|
|
327
|
+
this.#variableValues.delete(variableId);
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
this.#variableValues.set(variableId, value);
|
|
331
|
+
}
|
|
332
|
+
hostValues.push({
|
|
333
|
+
id: variableId,
|
|
334
|
+
value: value,
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
else if (this.#variableDefinitions.has(variableId)) {
|
|
338
|
+
// update the cached value
|
|
339
|
+
this.#variableValues.set(variableId, value ?? '');
|
|
340
|
+
hostValues.push({
|
|
341
|
+
id: variableId,
|
|
342
|
+
value: value ?? '',
|
|
343
|
+
});
|
|
344
|
+
}
|
|
345
|
+
else {
|
|
346
|
+
// tell companion to delete the value
|
|
347
|
+
hostValues.push({
|
|
348
|
+
id: variableId,
|
|
349
|
+
value: undefined,
|
|
350
|
+
});
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
this.#ipcWrapper.sendWithNoCb('setVariableValues', { newValues: hostValues });
|
|
77
354
|
}
|
|
78
355
|
/**
|
|
79
356
|
* Get the last set value of a variable from this connection
|
|
@@ -81,7 +358,7 @@ class InstanceBase {
|
|
|
81
358
|
* @returns The value
|
|
82
359
|
*/
|
|
83
360
|
getVariableValue(variableId) {
|
|
84
|
-
return this.#
|
|
361
|
+
return this.#variableValues.get(variableId);
|
|
85
362
|
}
|
|
86
363
|
/**
|
|
87
364
|
* @deprecated Companion now handles this for you, for actions and feedbacks. If you need this for another purpose, let us know as we intend to remove this
|
|
@@ -94,21 +371,34 @@ class InstanceBase {
|
|
|
94
371
|
* @returns The string with variables replaced with their values
|
|
95
372
|
*/
|
|
96
373
|
async parseVariablesInString(text) {
|
|
97
|
-
|
|
374
|
+
const currentContext = this.#feedbackManager.parseVariablesContext;
|
|
375
|
+
if (currentContext) {
|
|
376
|
+
this.log('debug', `parseVariablesInString called while in: ${currentContext}. You should use the parseVariablesInString provided to the callback instead`);
|
|
377
|
+
}
|
|
378
|
+
// If there are no variables, just return the text
|
|
379
|
+
if (!text.includes('$('))
|
|
380
|
+
return text;
|
|
381
|
+
const res = await this.#ipcWrapper.sendWithCb('parseVariablesInString', {
|
|
382
|
+
text: text,
|
|
383
|
+
controlId: undefined,
|
|
384
|
+
actionInstanceId: undefined,
|
|
385
|
+
feedbackInstanceId: undefined,
|
|
386
|
+
});
|
|
387
|
+
return res.text;
|
|
98
388
|
}
|
|
99
389
|
/**
|
|
100
390
|
* Request all feedbacks of the specified types to be checked for changes
|
|
101
391
|
* @param feedbackTypes The feedback types to check
|
|
102
392
|
*/
|
|
103
393
|
checkFeedbacks(...feedbackTypes) {
|
|
104
|
-
this.#
|
|
394
|
+
this.#feedbackManager.checkFeedbacks(feedbackTypes);
|
|
105
395
|
}
|
|
106
396
|
/**
|
|
107
397
|
* Request the specified feedback instances to be checked for changes
|
|
108
398
|
* @param feedbackIds The ids of the feedback instances to check
|
|
109
399
|
*/
|
|
110
400
|
checkFeedbacksById(...feedbackIds) {
|
|
111
|
-
this.#
|
|
401
|
+
this.#feedbackManager.checkFeedbacksById(feedbackIds);
|
|
112
402
|
}
|
|
113
403
|
/**
|
|
114
404
|
* Call subscribe on all currently known placed actions.
|
|
@@ -116,7 +406,7 @@ class InstanceBase {
|
|
|
116
406
|
* @param actionIds The actionIds to call subscribe for. If no values are provided, then all are called.
|
|
117
407
|
*/
|
|
118
408
|
subscribeActions(...actionIds) {
|
|
119
|
-
this.#
|
|
409
|
+
this.#actionManager.subscribeActions(actionIds);
|
|
120
410
|
}
|
|
121
411
|
/**
|
|
122
412
|
* Call unsubscribe on all currently known placed actions.
|
|
@@ -124,7 +414,7 @@ class InstanceBase {
|
|
|
124
414
|
* @param actionIds The actionIds to call subscribe for. If no values are provided, then all are called.
|
|
125
415
|
*/
|
|
126
416
|
unsubscribeActions(...actionIds) {
|
|
127
|
-
this.#
|
|
417
|
+
this.#actionManager.unsubscribeActions(actionIds);
|
|
128
418
|
}
|
|
129
419
|
/**
|
|
130
420
|
* Call subscribe on all currently known placed feedbacks.
|
|
@@ -132,7 +422,7 @@ class InstanceBase {
|
|
|
132
422
|
* @param feedbackIds The feedbackIds to call subscribe for. If no values are provided, then all are called.
|
|
133
423
|
*/
|
|
134
424
|
subscribeFeedbacks(...feedbackIds) {
|
|
135
|
-
this.#
|
|
425
|
+
this.#feedbackManager.subscribeFeedbacks(feedbackIds);
|
|
136
426
|
}
|
|
137
427
|
/**
|
|
138
428
|
* Call unsubscribe on all currently known placed feedbacks.
|
|
@@ -140,7 +430,7 @@ class InstanceBase {
|
|
|
140
430
|
* @param feedbackIds The feedbackIds to call subscribe for. If no values are provided, then all are called.
|
|
141
431
|
*/
|
|
142
432
|
unsubscribeFeedbacks(...feedbackIds) {
|
|
143
|
-
this.#
|
|
433
|
+
this.#feedbackManager.unsubscribeFeedbacks(feedbackIds);
|
|
144
434
|
}
|
|
145
435
|
/**
|
|
146
436
|
* Add an action to the current recording session
|
|
@@ -148,7 +438,14 @@ class InstanceBase {
|
|
|
148
438
|
* @param uniquenessId A unique id for the action being recorded. This should be different for each action, but by passing the same as a previous call will replace the previous value.
|
|
149
439
|
*/
|
|
150
440
|
recordAction(action, uniquenessId) {
|
|
151
|
-
this.#
|
|
441
|
+
if (!this.#recordingActions)
|
|
442
|
+
throw new Error('Not currently recording actions');
|
|
443
|
+
this.#ipcWrapper.sendWithNoCb('recordAction', {
|
|
444
|
+
uniquenessId: uniquenessId ?? null,
|
|
445
|
+
actionId: action.actionId,
|
|
446
|
+
options: action.options,
|
|
447
|
+
delay: action.delay,
|
|
448
|
+
});
|
|
152
449
|
}
|
|
153
450
|
/**
|
|
154
451
|
* Send an osc message from the system osc sender
|
|
@@ -158,7 +455,12 @@ class InstanceBase {
|
|
|
158
455
|
* @param args mesage arguments
|
|
159
456
|
*/
|
|
160
457
|
oscSend(host, port, path, args) {
|
|
161
|
-
this.#
|
|
458
|
+
this.#ipcWrapper.sendWithNoCb('send-osc', (0, util_js_1.literal)({
|
|
459
|
+
host,
|
|
460
|
+
port,
|
|
461
|
+
path,
|
|
462
|
+
args,
|
|
463
|
+
}));
|
|
162
464
|
}
|
|
163
465
|
/**
|
|
164
466
|
* Update the status of this connection
|
|
@@ -171,7 +473,10 @@ class InstanceBase {
|
|
|
171
473
|
* ```
|
|
172
474
|
*/
|
|
173
475
|
updateStatus(status, message) {
|
|
174
|
-
this.#
|
|
476
|
+
this.#ipcWrapper.sendWithNoCb('set-status', (0, util_js_1.literal)({
|
|
477
|
+
status,
|
|
478
|
+
message: message ?? null,
|
|
479
|
+
}));
|
|
175
480
|
}
|
|
176
481
|
/**
|
|
177
482
|
* Write a line to the log
|
|
@@ -179,28 +484,14 @@ class InstanceBase {
|
|
|
179
484
|
* @param message The message text to write
|
|
180
485
|
*/
|
|
181
486
|
log(level, message) {
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
case 'info':
|
|
187
|
-
this.#logger.info(message);
|
|
188
|
-
break;
|
|
189
|
-
case 'warn':
|
|
190
|
-
this.#logger.warn(message);
|
|
191
|
-
break;
|
|
192
|
-
case 'error':
|
|
193
|
-
this.#logger.error(message);
|
|
194
|
-
break;
|
|
195
|
-
default:
|
|
196
|
-
(0, util_js_1.assertNever)(level);
|
|
197
|
-
this.#logger.info(message);
|
|
198
|
-
break;
|
|
199
|
-
}
|
|
487
|
+
this.#ipcWrapper.sendWithNoCb('log-message', (0, util_js_1.literal)({
|
|
488
|
+
level,
|
|
489
|
+
message,
|
|
490
|
+
}));
|
|
200
491
|
}
|
|
201
492
|
createSharedUdpSocket(typeOrOptions, callback) {
|
|
202
493
|
const options = typeof typeOrOptions === 'string' ? { type: typeOrOptions } : typeOrOptions;
|
|
203
|
-
const socket = new shared_udp_socket_js_1.SharedUdpSocketImpl(this.#
|
|
494
|
+
const socket = new shared_udp_socket_js_1.SharedUdpSocketImpl(this.#ipcWrapper, this.#sharedUdpSocketHandlers, options);
|
|
204
495
|
if (callback)
|
|
205
496
|
socket.on('message', callback);
|
|
206
497
|
return socket;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/module-api/base.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/module-api/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/module-api/common.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC9C;;;;;;OAMG;IACH,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACrD"}
|
|
@@ -9,3 +9,4 @@ export interface CompanionConfigField extends CompanionInputFieldBase {
|
|
|
9
9
|
* Some configuration input field
|
|
10
10
|
*/
|
|
11
11
|
export type SomeCompanionConfigField = (CompanionInputFieldStaticText | CompanionInputFieldColor | CompanionInputFieldTextInput | CompanionInputFieldDropdown | CompanionInputFieldMultiDropdown | CompanionInputFieldNumber | CompanionInputFieldCheckbox | CompanionInputFieldBonjourDevice | CompanionInputFieldSecret) & CompanionConfigField;
|
|
12
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/module-api/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,uBAAuB,EACvB,gCAAgC,EAChC,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,gCAAgC,EAChC,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,EAC7B,4BAA4B,EAC5B,MAAM,YAAY,CAAA;AAEnB;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;IACpE,KAAK,EAAE,MAAM,CAAA;CACb;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACpC,6BAA6B,GAC7B,wBAAwB,GACxB,4BAA4B,GAC5B,2BAA2B,GAC3B,gCAAgC,GAChC,yBAAyB,GACzB,2BAA2B,GAC3B,gCAAgC,GAChC,yBAAyB,CAC3B,GACA,oBAAoB,CAAA"}
|
|
@@ -12,6 +12,7 @@ export declare enum InstanceStatus {
|
|
|
12
12
|
UnknownWarning = "unknown_warning",
|
|
13
13
|
AuthenticationFailure = "authentication_failure"
|
|
14
14
|
}
|
|
15
|
+
export type LogLevel = 'info' | 'warn' | 'error' | 'debug';
|
|
15
16
|
export declare namespace Regex {
|
|
16
17
|
const IP = "/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/";
|
|
17
18
|
const HOSTNAME = "/^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9])$/";
|
|
@@ -27,3 +28,4 @@ export declare namespace Regex {
|
|
|
27
28
|
const SOMETHING = "/^.+$/";
|
|
28
29
|
const TIMECODE = "/^(0*[0-9]|1[0-9]|2[0-4]):(0*[0-9]|[1-5][0-9]|60):(0*[0-9]|[1-5][0-9]|60):(0*[0-9]|[12][0-9]|30)$/";
|
|
29
30
|
}
|
|
31
|
+
//# sourceMappingURL=enums.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/module-api/enums.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,cAAc;IACzB,EAAE,OAAO;IACT,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,iBAAiB,uBAAuB;IACxC,SAAS,eAAe;IACxB,YAAY,kBAAkB;IAC9B,cAAc,oBAAoB;IAClC,qBAAqB,2BAA2B;CAChD;AAED,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAG1D,yBAAiB,KAAK,CAAC;IAEf,MAAM,EAAE,mGAAmG,CAAA;IAC3G,MAAM,QAAQ,iHAC0F,CAAA;IACxG,MAAM,OAAO,0BAA0B,CAAA;IACvC,MAAM,IAAI,4LACyK,CAAA;IACnL,MAAM,WAAW,+CAA+C,CAAA;IAChE,MAAM,OAAO,+BAA+B,CAAA;IAC5C,MAAM,KAAK,2BAA2B,CAAA;IACtC,MAAM,YAAY,gCAAgC,CAAA;IAClD,MAAM,YAAY,6BAA6B,CAAA;IAC/C,MAAM,MAAM,aAAa,CAAA;IACzB,MAAM,aAAa,kBAAkB,CAAA;IACrC,MAAM,SAAS,WAAW,CAAA;IAC1B,MAAM,QAAQ,uGACgF,CAAA;CACrG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/module-api/enums.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,IAAY,cASX;AATD,WAAY,cAAc;IACzB,2BAAS,CAAA;IACT,2CAAyB,CAAA;IACzB,+CAA6B,CAAA;IAC7B,0DAAwC,CAAA;IACxC,0CAAwB,CAAA;IACxB,gDAA8B,CAAA;IAC9B,oDAAkC,CAAA;IAClC,kEAAgD,CAAA;AACjD,CAAC,EATW,cAAc,8BAAd,cAAc,QASzB;
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/module-api/enums.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,IAAY,cASX;AATD,WAAY,cAAc;IACzB,2BAAS,CAAA;IACT,2CAAyB,CAAA;IACzB,+CAA6B,CAAA;IAC7B,0DAAwC,CAAA;IACxC,0CAAwB,CAAA;IACxB,gDAA8B,CAAA;IAC9B,oDAAkC,CAAA;IAClC,kEAAgD,CAAA;AACjD,CAAC,EATW,cAAc,8BAAd,cAAc,QASzB;AAID,2DAA2D;AAC3D,IAAiB,KAAK,CAkBrB;AAlBD,WAAiB,KAAK;IACrB,kCAAkC;IACrB,QAAE,GAAG,gGAAgG,CAAA;IACrG,cAAQ,GACpB,8GAA8G,CAAA;IAClG,aAAO,GAAG,uBAAuB,CAAA;IACjC,UAAI,GAChB,yLAAyL,CAAA;IAC7K,iBAAW,GAAG,4CAA4C,CAAA;IAC1D,aAAO,GAAG,4BAA4B,CAAA;IACtC,WAAK,GAAG,wBAAwB,CAAA;IAChC,kBAAY,GAAG,6BAA6B,CAAA;IAC5C,kBAAY,GAAG,0BAA0B,CAAA;IACzC,YAAM,GAAG,UAAU,CAAA;IACnB,mBAAa,GAAG,eAAe,CAAA;IAC/B,eAAS,GAAG,QAAQ,CAAA;IACpB,cAAQ,GACpB,oGAAoG,CAAA;AACtG,CAAC,EAlBgB,KAAK,qBAAL,KAAK,QAkBrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../src/module-api/feedback.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SomeCompanionFeedbackInputField } from './feedback.js';
|
|
2
|
+
import type { SomeButtonGraphicsElement } from './graphics.js';
|
|
3
|
+
export interface CompanionGraphicsCompositeElementDefinition {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'composite';
|
|
6
|
+
name: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
options: SomeCompanionFeedbackInputField[];
|
|
9
|
+
elements: SomeButtonGraphicsElement[];
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=graphics-composite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphics-composite.d.ts","sourceRoot":"","sources":["../../src/module-api/graphics-composite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAE9D,MAAM,WAAW,2CAA2C;IAC3D,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;IAEjB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,+BAA+B,EAAE,CAAA;IAE1C,QAAQ,EAAE,yBAAyB,EAAE,CAAA;CACrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphics-composite.js","sourceRoot":"","sources":["../../src/module-api/graphics-composite.ts"],"names":[],"mappings":""}
|