@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
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FeedbackManager = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const base_js_1 = require("./base.js");
|
|
6
|
+
// eslint-disable-next-line n/no-missing-import
|
|
7
|
+
const index_js_1 = tslib_1.__importDefault(require("../../lib/debounce-fn/index.js"));
|
|
8
|
+
const util_js_1 = require("../util.js");
|
|
9
|
+
function convertFeedbackInstanceToEvent(type, feedback) {
|
|
10
|
+
return {
|
|
11
|
+
type: type,
|
|
12
|
+
id: feedback.id,
|
|
13
|
+
feedbackId: feedback.feedbackId,
|
|
14
|
+
controlId: feedback.controlId,
|
|
15
|
+
options: feedback.options,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
class FeedbackManager {
|
|
19
|
+
#parseVariablesInString;
|
|
20
|
+
#updateFeedbackValues;
|
|
21
|
+
#setFeedbackDefinitions;
|
|
22
|
+
#log;
|
|
23
|
+
#feedbackDefinitions = new Map();
|
|
24
|
+
#feedbackInstances = new Map();
|
|
25
|
+
// Feedback values waiting to be sent
|
|
26
|
+
#pendingFeedbackValues = new Map();
|
|
27
|
+
// Feedbacks currently being checked
|
|
28
|
+
#feedbacksBeingChecked = new Map();
|
|
29
|
+
// while in a context which provides an alternate parseVariablesInString, we should log when the original is called
|
|
30
|
+
#parseVariablesContext;
|
|
31
|
+
get parseVariablesContext() {
|
|
32
|
+
return this.#parseVariablesContext;
|
|
33
|
+
}
|
|
34
|
+
constructor(parseVariablesInString, updateFeedbackValues, setFeedbackDefinitions, log) {
|
|
35
|
+
this.#parseVariablesInString = parseVariablesInString;
|
|
36
|
+
this.#updateFeedbackValues = updateFeedbackValues;
|
|
37
|
+
this.#setFeedbackDefinitions = setFeedbackDefinitions;
|
|
38
|
+
this.#log = log;
|
|
39
|
+
}
|
|
40
|
+
getDefinitionIds() {
|
|
41
|
+
return Array.from(this.#feedbackDefinitions.keys());
|
|
42
|
+
}
|
|
43
|
+
getInstanceIds() {
|
|
44
|
+
return Array.from(this.#feedbackInstances.keys());
|
|
45
|
+
}
|
|
46
|
+
handleUpdateFeedbacks(feedbacks) {
|
|
47
|
+
for (const [id, feedback] of Object.entries(feedbacks)) {
|
|
48
|
+
const existing = this.#feedbackInstances.get(id);
|
|
49
|
+
if (existing && !feedback) {
|
|
50
|
+
// Call unsubscribe
|
|
51
|
+
const definition = this.#feedbackDefinitions.get(existing.feedbackId);
|
|
52
|
+
if (definition?.unsubscribe) {
|
|
53
|
+
const context = {
|
|
54
|
+
parseVariablesInString: async (text) => {
|
|
55
|
+
// No-op, any values parsed here will not be stable
|
|
56
|
+
return text;
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
Promise.resolve(definition.unsubscribe(convertFeedbackInstanceToEvent(definition.type, existing), context)).catch((e) => {
|
|
60
|
+
this.#log('error', `Feedback unsubscribe failed: ${JSON.stringify(existing)} - ${e?.message ?? e} ${e?.stack}`);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (!feedback || feedback.disabled) {
|
|
65
|
+
// Deleted
|
|
66
|
+
this.#feedbackInstances.delete(id);
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
// TODO module-lib - deep freeze the feedback to avoid mutation?
|
|
70
|
+
this.#feedbackInstances.set(id, { ...feedback });
|
|
71
|
+
// Inserted
|
|
72
|
+
if (!existing) {
|
|
73
|
+
const definition = this.#feedbackDefinitions.get(feedback.feedbackId);
|
|
74
|
+
if (definition?.subscribe) {
|
|
75
|
+
const context = {
|
|
76
|
+
parseVariablesInString: async (text) => {
|
|
77
|
+
// No-op, any values parsed here will not be stable
|
|
78
|
+
return text;
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
Promise.resolve(definition.subscribe(convertFeedbackInstanceToEvent(definition.type, feedback), context)).catch((e) => {
|
|
82
|
+
this.#log('error', `Feedback subscribe failed: ${JSON.stringify(feedback)} - ${e?.message ?? e} ${e?.stack}`);
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
// update the feedback value
|
|
87
|
+
this.#triggerCheckFeedback(id);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
async handleLearnFeedback(msg) {
|
|
92
|
+
const definition = this.#feedbackDefinitions.get(msg.feedback.feedbackId);
|
|
93
|
+
if (definition && definition.learn) {
|
|
94
|
+
const context = {
|
|
95
|
+
parseVariablesInString: async (text) => {
|
|
96
|
+
const res = await this.#parseVariablesInString({
|
|
97
|
+
text: text,
|
|
98
|
+
controlId: msg.feedback.controlId,
|
|
99
|
+
actionInstanceId: undefined,
|
|
100
|
+
feedbackInstanceId: msg.feedback.id,
|
|
101
|
+
});
|
|
102
|
+
return res.text;
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
const newOptions = await definition.learn({
|
|
106
|
+
id: msg.feedback.id,
|
|
107
|
+
feedbackId: msg.feedback.feedbackId,
|
|
108
|
+
controlId: msg.feedback.controlId,
|
|
109
|
+
options: msg.feedback.options,
|
|
110
|
+
type: definition.type,
|
|
111
|
+
}, context);
|
|
112
|
+
return {
|
|
113
|
+
options: newOptions,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
// Not supported
|
|
118
|
+
return {
|
|
119
|
+
options: undefined,
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
#triggerCheckFeedback(id) {
|
|
124
|
+
const existingRecheck = this.#feedbacksBeingChecked.get(id);
|
|
125
|
+
if (existingRecheck) {
|
|
126
|
+
// Already being checked
|
|
127
|
+
existingRecheck.needsRecheck = true;
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
const feedback0 = this.#feedbackInstances.get(id);
|
|
131
|
+
if (!feedback0)
|
|
132
|
+
return;
|
|
133
|
+
const feedback = feedback0;
|
|
134
|
+
const feedbackCheckStatus = {
|
|
135
|
+
needsRecheck: false,
|
|
136
|
+
};
|
|
137
|
+
// mark it as being checked
|
|
138
|
+
this.#feedbacksBeingChecked.set(id, feedbackCheckStatus);
|
|
139
|
+
Promise.resolve()
|
|
140
|
+
.then(async () => {
|
|
141
|
+
const definition = this.#feedbackDefinitions.get(feedback.feedbackId);
|
|
142
|
+
let value;
|
|
143
|
+
// Calculate the new value for the feedback
|
|
144
|
+
if (definition) {
|
|
145
|
+
// Set this while the promise starts executing
|
|
146
|
+
this.#parseVariablesContext = `Feedback ${feedback.feedbackId} (${id})`;
|
|
147
|
+
const context = {
|
|
148
|
+
parseVariablesInString: async (text) => {
|
|
149
|
+
const res = await this.#parseVariablesInString({
|
|
150
|
+
text: text,
|
|
151
|
+
controlId: feedback.controlId,
|
|
152
|
+
actionInstanceId: undefined,
|
|
153
|
+
feedbackInstanceId: id,
|
|
154
|
+
});
|
|
155
|
+
return res.text;
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
switch (definition.type) {
|
|
159
|
+
case 'boolean':
|
|
160
|
+
value = definition.callback({
|
|
161
|
+
...convertFeedbackInstanceToEvent('boolean', feedback),
|
|
162
|
+
type: 'boolean',
|
|
163
|
+
}, context);
|
|
164
|
+
break;
|
|
165
|
+
case 'value':
|
|
166
|
+
value = definition.callback({
|
|
167
|
+
...convertFeedbackInstanceToEvent('value', feedback),
|
|
168
|
+
type: 'value',
|
|
169
|
+
}, context);
|
|
170
|
+
break;
|
|
171
|
+
case 'advanced':
|
|
172
|
+
value = definition.callback({
|
|
173
|
+
...convertFeedbackInstanceToEvent('advanced', feedback),
|
|
174
|
+
type: 'advanced',
|
|
175
|
+
image: feedback.image,
|
|
176
|
+
}, context);
|
|
177
|
+
break;
|
|
178
|
+
default:
|
|
179
|
+
(0, util_js_1.assertNever)(definition);
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
182
|
+
this.#parseVariablesContext = undefined;
|
|
183
|
+
}
|
|
184
|
+
// Await the value before looking at this.#pendingFeedbackValues, to avoid race conditions
|
|
185
|
+
const resolvedValue = await value;
|
|
186
|
+
this.#pendingFeedbackValues.set(id, {
|
|
187
|
+
id: id,
|
|
188
|
+
controlId: feedback.controlId,
|
|
189
|
+
value: resolvedValue,
|
|
190
|
+
});
|
|
191
|
+
this.#sendFeedbackValues();
|
|
192
|
+
})
|
|
193
|
+
.catch((e) => {
|
|
194
|
+
console.error(`Feedback check failed: ${JSON.stringify(feedback)} - ${e?.message ?? e} ${e?.stack}`);
|
|
195
|
+
})
|
|
196
|
+
.finally(() => {
|
|
197
|
+
// ensure this.#parseVariablesContext is cleared
|
|
198
|
+
this.#parseVariablesContext = undefined;
|
|
199
|
+
// it is no longer being checked
|
|
200
|
+
this.#feedbacksBeingChecked.delete(id);
|
|
201
|
+
// If queued, trigger a check
|
|
202
|
+
if (feedbackCheckStatus.needsRecheck) {
|
|
203
|
+
setImmediate(() => {
|
|
204
|
+
this.#triggerCheckFeedback(id);
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Send pending feedback values (from this.#pendingFeedbackValues) to companion, with a debounce
|
|
211
|
+
*/
|
|
212
|
+
#sendFeedbackValues = (0, index_js_1.default)(() => {
|
|
213
|
+
const newValues = this.#pendingFeedbackValues;
|
|
214
|
+
this.#pendingFeedbackValues = new Map();
|
|
215
|
+
// Send the new values back
|
|
216
|
+
if (newValues.size > 0) {
|
|
217
|
+
this.#updateFeedbackValues({
|
|
218
|
+
values: Array.from(newValues.values()),
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
}, {
|
|
222
|
+
wait: 5,
|
|
223
|
+
maxWait: 25,
|
|
224
|
+
});
|
|
225
|
+
setFeedbackDefinitions(feedbacks) {
|
|
226
|
+
const hostFeedbacks = [];
|
|
227
|
+
this.#feedbackDefinitions.clear();
|
|
228
|
+
for (const [feedbackId, feedback] of Object.entries(feedbacks)) {
|
|
229
|
+
if (feedback) {
|
|
230
|
+
hostFeedbacks.push({
|
|
231
|
+
id: feedbackId,
|
|
232
|
+
name: feedback.name,
|
|
233
|
+
description: feedback.description,
|
|
234
|
+
options: (0, base_js_1.serializeIsVisibleFn)(feedback.options),
|
|
235
|
+
type: feedback.type,
|
|
236
|
+
defaultStyle: feedback.type === 'boolean' ? feedback.defaultStyle : undefined,
|
|
237
|
+
hasLearn: !!feedback.learn,
|
|
238
|
+
learnTimeout: feedback.learnTimeout,
|
|
239
|
+
showInvert: feedback.type === 'boolean' ? feedback.showInvert : false,
|
|
240
|
+
});
|
|
241
|
+
// Remember the definition locally
|
|
242
|
+
this.#feedbackDefinitions.set(feedbackId, feedback);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
this.#setFeedbackDefinitions({ feedbacks: hostFeedbacks });
|
|
246
|
+
}
|
|
247
|
+
checkFeedbacks(feedbackTypes) {
|
|
248
|
+
const types = new Set(feedbackTypes);
|
|
249
|
+
for (const [id, feedback] of this.#feedbackInstances.entries()) {
|
|
250
|
+
const definition = this.#feedbackDefinitions.get(feedback.feedbackId);
|
|
251
|
+
if (definition) {
|
|
252
|
+
if (types.size === 0 || types.has(feedback.feedbackId)) {
|
|
253
|
+
// update the feedback value
|
|
254
|
+
this.#triggerCheckFeedback(id);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
checkFeedbacksById(feedbackIds) {
|
|
260
|
+
for (const id of feedbackIds) {
|
|
261
|
+
// update the feedback value
|
|
262
|
+
this.#triggerCheckFeedback(id);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
subscribeFeedbacks(feedbackIds) {
|
|
266
|
+
let feedbacks = Array.from(this.#feedbackInstances.values());
|
|
267
|
+
const feedbackIdSet = new Set(feedbackIds);
|
|
268
|
+
if (feedbackIdSet.size)
|
|
269
|
+
feedbacks = feedbacks.filter((fb) => feedbackIdSet.has(fb.feedbackId));
|
|
270
|
+
for (const fb of feedbacks) {
|
|
271
|
+
const def = this.#feedbackDefinitions.get(fb.feedbackId);
|
|
272
|
+
if (def?.subscribe) {
|
|
273
|
+
const context = {
|
|
274
|
+
parseVariablesInString: async (text) => {
|
|
275
|
+
// No-op, any values parsed here will not be stable
|
|
276
|
+
return text;
|
|
277
|
+
},
|
|
278
|
+
};
|
|
279
|
+
Promise.resolve(def.subscribe(convertFeedbackInstanceToEvent(def.type, fb), context)).catch((e) => {
|
|
280
|
+
this.#log('error', `Feedback subscribe failed: ${JSON.stringify(fb)} - ${e?.message ?? e} ${e?.stack}`);
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
unsubscribeFeedbacks(feedbackIds) {
|
|
286
|
+
let feedbacks = Array.from(this.#feedbackInstances.values());
|
|
287
|
+
const feedbackIdSet = new Set(feedbackIds);
|
|
288
|
+
if (feedbackIdSet.size)
|
|
289
|
+
feedbacks = feedbacks.filter((fb) => feedbackIdSet.has(fb.feedbackId));
|
|
290
|
+
for (const fb of feedbacks) {
|
|
291
|
+
const def = this.#feedbackDefinitions.get(fb.feedbackId);
|
|
292
|
+
if (def && def.unsubscribe) {
|
|
293
|
+
const context = {
|
|
294
|
+
parseVariablesInString: async (text) => {
|
|
295
|
+
// No-op, any values parsed here will not be stable
|
|
296
|
+
return text;
|
|
297
|
+
},
|
|
298
|
+
};
|
|
299
|
+
Promise.resolve(def.unsubscribe(convertFeedbackInstanceToEvent(def.type, fb), context)).catch((e) => {
|
|
300
|
+
this.#log('error', `Feedback unsubscribe failed: ${JSON.stringify(fb)} - ${e?.message ?? e} ${e?.stack}`);
|
|
301
|
+
});
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
exports.FeedbackManager = FeedbackManager;
|
|
307
|
+
//# sourceMappingURL=feedback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/internal/feedback.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { CompanionStaticUpgradeScript } from '../module-api/upgrade.js';
|
|
2
|
+
import type { UpgradeActionInstance, UpgradeFeedbackInstance, UpgradeActionAndFeedbackInstancesResponse } from '../host-api/api.js';
|
|
3
|
+
/**
|
|
4
|
+
* Run through the upgrade scripts for the given data
|
|
5
|
+
* Note: this updates the inputs in place, but the result needs to be sent back to companion
|
|
6
|
+
* @param allActions Actions that may need upgrading
|
|
7
|
+
* @param allFeedbacks Feedbacks that may need upgrading
|
|
8
|
+
* @param defaultUpgradeIndex The lastUpgradeIndex of the connection, if known
|
|
9
|
+
* @param upgradeScripts The scripts that may be run
|
|
10
|
+
* @param config The current config of the module
|
|
11
|
+
* @param skipConfigAndSecretsUpgrade Whether to skip upgrading the config and secrets
|
|
12
|
+
* @returns The upgraded data that needs persisting
|
|
13
|
+
*/
|
|
14
|
+
export declare function runThroughUpgradeScripts(allActionsArray: UpgradeActionInstance[], allFeedbacksArray: UpgradeFeedbackInstance[], defaultUpgradeIndex: number | null, upgradeScripts: CompanionStaticUpgradeScript<any, any>[], config: unknown, secrets: unknown, skipConfigAndSecretsUpgrade: boolean): UpgradeActionAndFeedbackInstancesResponse;
|
|
15
|
+
//# sourceMappingURL=upgrade.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../src/internal/upgrade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGX,4BAA4B,EAC5B,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EACX,qBAAqB,EACrB,uBAAuB,EACvB,yCAAyC,EACzC,MAAM,oBAAoB,CAAA;AAO3B;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACvC,eAAe,EAAE,qBAAqB,EAAE,EACxC,iBAAiB,EAAE,uBAAuB,EAAE,EAC5C,mBAAmB,EAAE,MAAM,GAAG,IAAI,EAClC,cAAc,EAAE,4BAA4B,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EACxD,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,OAAO,EAChB,2BAA2B,EAAE,OAAO,GAClC,yCAAyC,CAgL3C"}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runThroughUpgradeScripts = runThroughUpgradeScripts;
|
|
4
|
+
const util_js_1 = require("../util.js");
|
|
5
|
+
function clone(val) {
|
|
6
|
+
return JSON.parse(JSON.stringify(val));
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Run through the upgrade scripts for the given data
|
|
10
|
+
* Note: this updates the inputs in place, but the result needs to be sent back to companion
|
|
11
|
+
* @param allActions Actions that may need upgrading
|
|
12
|
+
* @param allFeedbacks Feedbacks that may need upgrading
|
|
13
|
+
* @param defaultUpgradeIndex The lastUpgradeIndex of the connection, if known
|
|
14
|
+
* @param upgradeScripts The scripts that may be run
|
|
15
|
+
* @param config The current config of the module
|
|
16
|
+
* @param skipConfigAndSecretsUpgrade Whether to skip upgrading the config and secrets
|
|
17
|
+
* @returns The upgraded data that needs persisting
|
|
18
|
+
*/
|
|
19
|
+
function runThroughUpgradeScripts(allActionsArray, allFeedbacksArray, defaultUpgradeIndex, upgradeScripts, config, secrets, skipConfigAndSecretsUpgrade) {
|
|
20
|
+
// First we group all the actions and feedbacks by the version they currently are.
|
|
21
|
+
const pendingUpgradesGrouped = new Map();
|
|
22
|
+
const getPendingUpgradeGroup = (i) => {
|
|
23
|
+
let v = pendingUpgradesGrouped.get(i);
|
|
24
|
+
if (!v) {
|
|
25
|
+
v = { actions: [], feedbacks: [], config: false };
|
|
26
|
+
pendingUpgradesGrouped.set(i, v);
|
|
27
|
+
}
|
|
28
|
+
return v;
|
|
29
|
+
};
|
|
30
|
+
for (const action of allActionsArray) {
|
|
31
|
+
const upgradeIndex = action?.upgradeIndex ?? defaultUpgradeIndex;
|
|
32
|
+
if (action && typeof upgradeIndex === 'number') {
|
|
33
|
+
const pending = getPendingUpgradeGroup(upgradeIndex);
|
|
34
|
+
pending.actions.push(action.id);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
for (const feedback of allFeedbacksArray) {
|
|
38
|
+
const upgradeIndex = feedback?.upgradeIndex ?? defaultUpgradeIndex;
|
|
39
|
+
if (feedback && typeof upgradeIndex === 'number') {
|
|
40
|
+
const pending = getPendingUpgradeGroup(upgradeIndex);
|
|
41
|
+
pending.feedbacks.push(feedback.id);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
if (!skipConfigAndSecretsUpgrade) {
|
|
45
|
+
// If there is config we still need to upgrade that
|
|
46
|
+
for (let i = defaultUpgradeIndex ?? -1; i < upgradeScripts.length; i++) {
|
|
47
|
+
// ensure the group is registered
|
|
48
|
+
getPendingUpgradeGroup(i).config = true;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const allActions = Object.fromEntries(allActionsArray.map((a) => [a.id, a]));
|
|
52
|
+
const allFeedbacks = Object.fromEntries(allFeedbacksArray.map((a) => [a.id, a]));
|
|
53
|
+
const updatedFeedbacks = {};
|
|
54
|
+
const updatedActions = {};
|
|
55
|
+
let updatedConfig;
|
|
56
|
+
let updatedSecrets;
|
|
57
|
+
if (pendingUpgradesGrouped.size > 0) {
|
|
58
|
+
// Figure out which script to run first. Note: we track the last index we ran, so it is offset by one
|
|
59
|
+
const pendingUpgradeGroups = Array.from(pendingUpgradesGrouped.keys()).sort();
|
|
60
|
+
const firstUpgradeGroup = Math.min(...pendingUpgradeGroups, defaultUpgradeIndex ?? -1) + 1;
|
|
61
|
+
// Start building arrays of the ids which we are upgrading as we go
|
|
62
|
+
const actionsIdsToUpgrade = [];
|
|
63
|
+
const feedbackIdsToUpgrade = [];
|
|
64
|
+
// Perform the upgrades. We start on the first batch/instance, and work our way up to the last
|
|
65
|
+
const targetCount = upgradeScripts.length;
|
|
66
|
+
for (let i = firstUpgradeGroup; i < targetCount; i++) {
|
|
67
|
+
const group = pendingUpgradesGrouped.get(i - 1);
|
|
68
|
+
if (group) {
|
|
69
|
+
// Update the list of objects that need upgrading
|
|
70
|
+
actionsIdsToUpgrade.push(...group.actions);
|
|
71
|
+
feedbackIdsToUpgrade.push(...group.feedbacks);
|
|
72
|
+
}
|
|
73
|
+
// Only upgrade the config, if we are past the last version we had for it
|
|
74
|
+
const upgradeConfigAndSecrets = !!group?.config;
|
|
75
|
+
// Ensure there is something to upgrade
|
|
76
|
+
if (!upgradeConfigAndSecrets && actionsIdsToUpgrade.length === 0 && feedbackIdsToUpgrade.length === 0)
|
|
77
|
+
continue;
|
|
78
|
+
const inputConfig = updatedConfig ?? config;
|
|
79
|
+
const inputSecrets = updatedSecrets ?? secrets;
|
|
80
|
+
// We have an upgrade script that can be run
|
|
81
|
+
const fcn = upgradeScripts[i];
|
|
82
|
+
const res = fcn({
|
|
83
|
+
// Pass a clone to avoid mutations
|
|
84
|
+
currentConfig: clone(inputConfig),
|
|
85
|
+
}, {
|
|
86
|
+
config: upgradeConfigAndSecrets ? inputConfig : null,
|
|
87
|
+
secrets: upgradeConfigAndSecrets ? inputSecrets : null,
|
|
88
|
+
// Only pass the actions & feedbacks which need upgrading from this version
|
|
89
|
+
actions: actionsIdsToUpgrade
|
|
90
|
+
.map((id) => {
|
|
91
|
+
const inst = allActions[id];
|
|
92
|
+
if (inst) {
|
|
93
|
+
return (0, util_js_1.literal)({
|
|
94
|
+
id: inst.id,
|
|
95
|
+
controlId: inst.controlId,
|
|
96
|
+
actionId: inst.actionId,
|
|
97
|
+
options: inst.options !== undefined ? clone(inst.options) : {},
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
})
|
|
101
|
+
.filter((v) => !!v),
|
|
102
|
+
feedbacks: feedbackIdsToUpgrade
|
|
103
|
+
.map((id) => {
|
|
104
|
+
const inst = allFeedbacks[id];
|
|
105
|
+
if (inst) {
|
|
106
|
+
return (0, util_js_1.literal)({
|
|
107
|
+
id: inst.id,
|
|
108
|
+
controlId: inst.controlId,
|
|
109
|
+
feedbackId: inst.feedbackId,
|
|
110
|
+
options: inst.options !== undefined ? clone(inst.options) : {},
|
|
111
|
+
// TODO - style?
|
|
112
|
+
isInverted: inst.isInverted,
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
})
|
|
116
|
+
.filter((v) => !!v),
|
|
117
|
+
});
|
|
118
|
+
// Apply changes
|
|
119
|
+
if (upgradeConfigAndSecrets && res.updatedConfig)
|
|
120
|
+
updatedConfig = res.updatedConfig;
|
|
121
|
+
if (upgradeConfigAndSecrets && res.updatedSecrets)
|
|
122
|
+
updatedSecrets = res.updatedSecrets;
|
|
123
|
+
for (const action of res.updatedActions) {
|
|
124
|
+
if (action) {
|
|
125
|
+
const instance = allActions[action.id];
|
|
126
|
+
if (instance) {
|
|
127
|
+
instance.actionId = action.actionId;
|
|
128
|
+
instance.options = action.options;
|
|
129
|
+
instance.upgradeIndex = i;
|
|
130
|
+
// Mark it as changed
|
|
131
|
+
updatedActions[action.id] = instance;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
for (const feedback of res.updatedFeedbacks) {
|
|
136
|
+
if (feedback) {
|
|
137
|
+
const instance = allFeedbacks[feedback.id];
|
|
138
|
+
if (instance) {
|
|
139
|
+
instance.feedbackId = feedback.feedbackId;
|
|
140
|
+
instance.options = feedback.options;
|
|
141
|
+
instance.upgradeIndex = i;
|
|
142
|
+
// Mark it as changed
|
|
143
|
+
updatedFeedbacks[feedback.id] = {
|
|
144
|
+
...instance,
|
|
145
|
+
style: updatedFeedbacks[feedback.id]?.style ?? feedback.style,
|
|
146
|
+
isInverted: feedback.isInverted ?? false,
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
// Make sure that everything with a upgradeIndex set is sent back
|
|
153
|
+
for (const [id, action] of Object.entries(allActions)) {
|
|
154
|
+
if (!updatedActions[id] && typeof action?.upgradeIndex === 'number') {
|
|
155
|
+
// Send it back to acknowledge that it has been 'upgraded'
|
|
156
|
+
updatedActions[id] = action;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
for (const [id, feedback] of Object.entries(allFeedbacks)) {
|
|
160
|
+
if (!updatedFeedbacks[id] && typeof feedback?.upgradeIndex === 'number') {
|
|
161
|
+
// Send it back to acknowledge that it has been 'upgraded'
|
|
162
|
+
updatedFeedbacks[id] = feedback;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return {
|
|
167
|
+
updatedActions: Object.values(updatedActions),
|
|
168
|
+
updatedFeedbacks: Object.values(updatedFeedbacks),
|
|
169
|
+
updatedConfig,
|
|
170
|
+
updatedSecrets,
|
|
171
|
+
latestUpgradeIndex: upgradeScripts.length - 1,
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=upgrade.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../src/internal/upgrade.ts"],"names":[],"mappings":"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"}
|
package/dist/manifest.d.ts
CHANGED
|
@@ -2,3 +2,4 @@ import type { ModuleManifest, ModuleManifestMaintainer, ModuleManifestRuntime, M
|
|
|
2
2
|
export { ModuleManifest, ModuleManifestMaintainer, ModuleManifestRuntime, ModuleBonjourQuery };
|
|
3
3
|
/** Validate that a manifest looks correctly populated */
|
|
4
4
|
export declare function validateManifest(manifest: ModuleManifest, looseChecks: boolean): void;
|
|
5
|
+
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,cAAc,EACd,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,EAClB,MAAM,4BAA4B,CAAA;AAKnC,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,CAAA;AAE9F,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,GAAG,IAAI,CAmCrF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/module-api/action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,KAAK,EACX,qBAAqB,EACrB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,gCAAgC,EAChC,yBAAyB,EACzB,6BAA6B,EAC7B,4BAA4B,EAC5B,iCAAiC,EACjC,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAE3D,MAAM,MAAM,6BAA6B,GACtC,6BAA6B,GAC7B,wBAAwB,GACxB,4BAA4B,GAC5B,2BAA2B,GAC3B,gCAAgC,GAChC,yBAAyB,GACzB,2BAA2B,GAC3B,iCAAiC,CAAA;AAEpC;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,8BAA8B;IAC7E;;;;;;OAMG;IACH,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAA;CACjF;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACzC,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sCAAsC;IACtC,OAAO,EAAE,6BAA6B,EAAE,CAAA;IAExC;;;OAGG;IACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAA;IAEtC;;OAEG;IACH,8BAA8B,CAAC,EAAE,OAAO,CAAA;IAExC,mCAAmC;IACnC,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACjG;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClG;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAEpG;;OAEG;IACH,KAAK,CAAC,EAAE,CACP,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,sBAAsB,KAC3B,qBAAqB,GAAG,SAAS,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAA;IAEnF;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAC1C,CAAC,QAAQ,EAAE,MAAM,GAAG,yBAAyB,GAAG,SAAS,CAAA;CACzD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,oCAAoC;IACpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,oDAAoD;IACpD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,sCAAsC;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,+CAA+C;IAC/C,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAA;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAChE,4DAA4D;IAC5D,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAA;IAChB,+CAA+C;IAC/C,OAAO,EAAE,qBAAqB,CAAA;IAE9B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACd"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import type { CompanionActionDefinitions, CompanionRecordedAction } from './action.js';
|
|
2
2
|
import type { CompanionFeedbackDefinitions } from './feedback.js';
|
|
3
3
|
import type { CompanionPresetDefinitions } from './preset.js';
|
|
4
|
-
import type { InstanceStatus } from './enums.js';
|
|
5
|
-
import { type LogLevel } from '../logging.js';
|
|
4
|
+
import type { InstanceStatus, LogLevel } from './enums.js';
|
|
6
5
|
import type { InstanceBaseShared } from '../instance-base.js';
|
|
7
6
|
import type { CompanionVariableDefinition, CompanionVariableValue, CompanionVariableValues } from './variable.js';
|
|
8
7
|
import type { OSCSomeArguments } from '../common/osc.js';
|
|
9
8
|
import type { SomeCompanionConfigField } from './config.js';
|
|
10
9
|
import type { CompanionHTTPRequest, CompanionHTTPResponse } from './http.js';
|
|
11
10
|
import { SharedUdpSocket, SharedUdpSocketMessageCallback, SharedUdpSocketOptions } from './shared-udp-socket.js';
|
|
11
|
+
import { CompanionGraphicsCompositeElementDefinition } from './graphics-composite.js';
|
|
12
12
|
export interface InstanceBaseOptions {
|
|
13
13
|
/**
|
|
14
14
|
* Disable enforcement of variables requiring a definition.
|
|
@@ -27,7 +27,7 @@ export interface InstanceBaseOptions {
|
|
|
27
27
|
}
|
|
28
28
|
export declare abstract class InstanceBase<TConfig, TSecrets = undefined> implements InstanceBaseShared<TConfig, TSecrets> {
|
|
29
29
|
#private;
|
|
30
|
-
|
|
30
|
+
readonly id: string;
|
|
31
31
|
get instanceOptions(): InstanceBaseOptions;
|
|
32
32
|
/**
|
|
33
33
|
* The user chosen name for this instance.
|
|
@@ -38,6 +38,20 @@ export declare abstract class InstanceBase<TConfig, TSecrets = undefined> implem
|
|
|
38
38
|
* Create an instance of the module
|
|
39
39
|
*/
|
|
40
40
|
constructor(internal: unknown);
|
|
41
|
+
private _handleInit;
|
|
42
|
+
private _handleDestroy;
|
|
43
|
+
private _handleConfigUpdateAndLabel;
|
|
44
|
+
private _handleExecuteAction;
|
|
45
|
+
private _handleUpdateFeedbacks;
|
|
46
|
+
private _handleUpdateActions;
|
|
47
|
+
private _handleUpgradeActionsAndFeedbacks;
|
|
48
|
+
private _handleGetConfigFields;
|
|
49
|
+
private _handleHttpRequest;
|
|
50
|
+
private _handleLearnAction;
|
|
51
|
+
private _handleLearnFeedback;
|
|
52
|
+
private _handleStartStopRecordActions;
|
|
53
|
+
private _handleSharedUdpSocketMessage;
|
|
54
|
+
private _handleSharedUdpSocketError;
|
|
41
55
|
/**
|
|
42
56
|
* Main initialization function called
|
|
43
57
|
* once the module is OK to start doing things.
|
|
@@ -89,6 +103,11 @@ export declare abstract class InstanceBase<TConfig, TSecrets = undefined> implem
|
|
|
89
103
|
* @param presets The preset definitions
|
|
90
104
|
*/
|
|
91
105
|
setPresetDefinitions(presets: CompanionPresetDefinitions): void;
|
|
106
|
+
/**
|
|
107
|
+
* Set the composite graphics elements for this instance
|
|
108
|
+
* @param compositeElements The composite element definitions
|
|
109
|
+
*/
|
|
110
|
+
setCompositeElementDefinitions(compositeElements: CompanionGraphicsCompositeElementDefinition[]): void;
|
|
92
111
|
/**
|
|
93
112
|
* Set the variable definitions for this instance
|
|
94
113
|
* @param variables The variable definitions
|
|
@@ -192,3 +211,4 @@ export declare abstract class InstanceBase<TConfig, TSecrets = undefined> implem
|
|
|
192
211
|
createSharedUdpSocket(type: 'udp4' | 'udp6', callback?: SharedUdpSocketMessageCallback): SharedUdpSocket;
|
|
193
212
|
createSharedUdpSocket(options: SharedUdpSocketOptions, callback?: SharedUdpSocketMessageCallback): SharedUdpSocket;
|
|
194
213
|
}
|
|
214
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/module-api/base.ts"],"names":[],"mappings":"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"}
|