@companion-module/base 1.99.0-nightly-feat-graphics-overhaul-20251222-140818-911eb31 → 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.
Files changed (150) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +12 -11
  3. package/assets/manifest.schema.json +1 -1
  4. package/dist/__mocks__/net.d.ts +31 -0
  5. package/dist/__mocks__/net.d.ts.map +1 -0
  6. package/dist/__mocks__/net.js +104 -0
  7. package/dist/__mocks__/net.js.map +1 -0
  8. package/dist/__mocks__/util.d.ts +9 -0
  9. package/dist/__mocks__/util.d.ts.map +1 -0
  10. package/dist/__mocks__/util.js +39 -0
  11. package/dist/__mocks__/util.js.map +1 -0
  12. package/dist/common/json-value.js +1 -2
  13. package/dist/common/json-value.js.map +1 -1
  14. package/dist/common/osc.js +1 -2
  15. package/dist/common/osc.js.map +1 -1
  16. package/dist/helpers/__tests__/tcp.spec.d.ts +2 -0
  17. package/dist/helpers/__tests__/tcp.spec.d.ts.map +1 -0
  18. package/dist/helpers/__tests__/tcp.spec.js +175 -0
  19. package/dist/helpers/__tests__/tcp.spec.js.map +1 -0
  20. package/dist/helpers/__tests__/udp.spec.d.ts +2 -0
  21. package/dist/helpers/__tests__/udp.spec.d.ts.map +1 -0
  22. package/dist/helpers/__tests__/udp.spec.js +197 -0
  23. package/dist/helpers/__tests__/udp.spec.js.map +1 -0
  24. package/dist/helpers/index.js +3 -6
  25. package/dist/helpers/index.js.map +1 -1
  26. package/dist/helpers/tcp.d.ts +1 -1
  27. package/dist/helpers/tcp.d.ts.map +1 -1
  28. package/dist/helpers/tcp.js +10 -15
  29. package/dist/helpers/tcp.js.map +1 -1
  30. package/dist/helpers/telnet.d.ts +1 -1
  31. package/dist/helpers/telnet.d.ts.map +1 -1
  32. package/dist/helpers/telnet.js +6 -11
  33. package/dist/helpers/telnet.js.map +1 -1
  34. package/dist/helpers/udp.d.ts +1 -1
  35. package/dist/helpers/udp.d.ts.map +1 -1
  36. package/dist/helpers/udp.js +7 -12
  37. package/dist/helpers/udp.js.map +1 -1
  38. package/dist/host-api/context.d.ts +59 -0
  39. package/dist/host-api/context.d.ts.map +1 -0
  40. package/dist/host-api/{api.js → context.js} +5 -3
  41. package/dist/host-api/context.js.map +1 -0
  42. package/dist/host-api/main.d.ts +2 -0
  43. package/dist/host-api/main.d.ts.map +1 -0
  44. package/dist/host-api/main.js +2 -0
  45. package/dist/host-api/main.js.map +1 -0
  46. package/dist/instance-base.js +1 -2
  47. package/dist/logging.d.ts +21 -0
  48. package/dist/logging.d.ts.map +1 -0
  49. package/dist/logging.js +22 -0
  50. package/dist/logging.js.map +1 -0
  51. package/dist/main.d.ts +7 -0
  52. package/dist/main.d.ts.map +1 -0
  53. package/dist/main.js +8 -0
  54. package/dist/main.js.map +1 -0
  55. package/dist/manifest.js +4 -8
  56. package/dist/manifest.js.map +1 -1
  57. package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts +2 -0
  58. package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts.map +1 -0
  59. package/dist/module-api/__tests__/shared-udp-socket.spec.js +270 -0
  60. package/dist/module-api/__tests__/shared-udp-socket.spec.js.map +1 -0
  61. package/dist/module-api/action.js +1 -2
  62. package/dist/module-api/base.d.ts +4 -33
  63. package/dist/module-api/base.d.ts.map +1 -1
  64. package/dist/module-api/base.js +49 -357
  65. package/dist/module-api/base.js.map +1 -1
  66. package/dist/module-api/common.d.ts +2 -8
  67. package/dist/module-api/common.d.ts.map +1 -1
  68. package/dist/module-api/common.js +1 -2
  69. package/dist/module-api/config.js +1 -2
  70. package/dist/module-api/enums.d.ts +0 -1
  71. package/dist/module-api/enums.d.ts.map +1 -1
  72. package/dist/module-api/enums.js +4 -7
  73. package/dist/module-api/enums.js.map +1 -1
  74. package/dist/module-api/feedback.d.ts +2 -1
  75. package/dist/module-api/feedback.d.ts.map +1 -1
  76. package/dist/module-api/feedback.js +1 -2
  77. package/dist/module-api/http.js +1 -2
  78. package/dist/module-api/index.d.ts +0 -2
  79. package/dist/module-api/index.d.ts.map +1 -1
  80. package/dist/module-api/index.js +12 -17
  81. package/dist/module-api/index.js.map +1 -1
  82. package/dist/module-api/input.d.ts +0 -20
  83. package/dist/module-api/input.d.ts.map +1 -1
  84. package/dist/module-api/input.js +1 -2
  85. package/dist/module-api/preset.d.ts +1 -48
  86. package/dist/module-api/preset.d.ts.map +1 -1
  87. package/dist/module-api/preset.js +1 -2
  88. package/dist/module-api/shared-udp-socket.d.ts +3 -4
  89. package/dist/module-api/shared-udp-socket.d.ts.map +1 -1
  90. package/dist/module-api/shared-udp-socket.js +18 -25
  91. package/dist/module-api/shared-udp-socket.js.map +1 -1
  92. package/dist/module-api/style.js +1 -2
  93. package/dist/module-api/upgrade.d.ts +7 -3
  94. package/dist/module-api/upgrade.d.ts.map +1 -1
  95. package/dist/module-api/upgrade.js +11 -16
  96. package/dist/module-api/upgrade.js.map +1 -1
  97. package/dist/module-api/variable.js +1 -2
  98. package/dist/util.d.ts +10 -0
  99. package/dist/util.d.ts.map +1 -1
  100. package/dist/util.js +15 -26
  101. package/dist/util.js.map +1 -1
  102. package/generated/validate_manifest.js +961 -1
  103. package/package.json +25 -36
  104. package/dist/entrypoint.d.ts +0 -11
  105. package/dist/entrypoint.d.ts.map +0 -1
  106. package/dist/entrypoint.js +0 -134
  107. package/dist/entrypoint.js.map +0 -1
  108. package/dist/host-api/api.d.ts +0 -402
  109. package/dist/host-api/api.d.ts.map +0 -1
  110. package/dist/host-api/api.js.map +0 -1
  111. package/dist/host-api/ipc-wrapper.d.ts +0 -37
  112. package/dist/host-api/ipc-wrapper.d.ts.map +0 -1
  113. package/dist/host-api/ipc-wrapper.js +0 -128
  114. package/dist/host-api/ipc-wrapper.js.map +0 -1
  115. package/dist/host-api/versions.d.ts +0 -12
  116. package/dist/host-api/versions.d.ts.map +0 -1
  117. package/dist/host-api/versions.js +0 -5
  118. package/dist/host-api/versions.js.map +0 -1
  119. package/dist/index.d.ts +0 -8
  120. package/dist/index.d.ts.map +0 -1
  121. package/dist/index.js +0 -22
  122. package/dist/index.js.map +0 -1
  123. package/dist/internal/actions.d.ts +0 -16
  124. package/dist/internal/actions.d.ts.map +0 -1
  125. package/dist/internal/actions.js +0 -223
  126. package/dist/internal/actions.js.map +0 -1
  127. package/dist/internal/base.d.ts +0 -11
  128. package/dist/internal/base.d.ts.map +0 -1
  129. package/dist/internal/base.js +0 -39
  130. package/dist/internal/base.js.map +0 -1
  131. package/dist/internal/feedback.d.ts +0 -20
  132. package/dist/internal/feedback.d.ts.map +0 -1
  133. package/dist/internal/feedback.js +0 -307
  134. package/dist/internal/feedback.js.map +0 -1
  135. package/dist/internal/upgrade.d.ts +0 -15
  136. package/dist/internal/upgrade.d.ts.map +0 -1
  137. package/dist/internal/upgrade.js +0 -174
  138. package/dist/internal/upgrade.js.map +0 -1
  139. package/dist/module-api/graphics-composite.d.ts +0 -11
  140. package/dist/module-api/graphics-composite.d.ts.map +0 -1
  141. package/dist/module-api/graphics-composite.js +0 -3
  142. package/dist/module-api/graphics-composite.js.map +0 -1
  143. package/dist/module-api/graphics.d.ts +0 -83
  144. package/dist/module-api/graphics.d.ts.map +0 -1
  145. package/dist/module-api/graphics.js +0 -12
  146. package/dist/module-api/graphics.js.map +0 -1
  147. package/lib/debounce-fn/index.d.ts +0 -83
  148. package/lib/debounce-fn/index.js +0 -78
  149. package/lib/debounce-fn/license +0 -9
  150. package/lib/debounce-fn/readme.md +0 -64
@@ -1,307 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/internal/feedback.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,174 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../src/internal/upgrade.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=graphics-composite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"graphics-composite.js","sourceRoot":"","sources":["../../src/module-api/graphics-composite.ts"],"names":[],"mappings":""}
@@ -1,83 +0,0 @@
1
- export type ExpressionOrValue<T> = {
2
- value: T;
3
- isExpression: false;
4
- } | {
5
- value: string;
6
- isExpression: true;
7
- };
8
- /**
9
- * The type of a button graphics element as stored in places where it can be edited
10
- */
11
- export type SomeButtonGraphicsElement = ButtonGraphicsGroupElement | ButtonGraphicsCompositeElement | ButtonGraphicsTextElement | ButtonGraphicsImageElement | ButtonGraphicsBoxElement | ButtonGraphicsLineElement;
12
- export interface ButtonGraphicsElementBase {
13
- id?: string;
14
- name?: string;
15
- enabled?: ExpressionOrValue<boolean>;
16
- opacity?: ExpressionOrValue<number>;
17
- }
18
- export interface ButtonGraphicsDrawBounds {
19
- x?: ExpressionOrValue<number>;
20
- y?: ExpressionOrValue<number>;
21
- width?: ExpressionOrValue<number>;
22
- height?: ExpressionOrValue<number>;
23
- }
24
- export interface ButtonGraphicsCanvasElement {
25
- decoration?: ExpressionOrValue<ButtonGraphicsDecorationType>;
26
- }
27
- export declare enum ButtonGraphicsDecorationType {
28
- FollowDefault = "default",
29
- TopBar = "topbar",
30
- Border = "border",
31
- None = "none"
32
- }
33
- export interface ButtonGraphicsGroupElement extends ButtonGraphicsElementBase, ButtonGraphicsDrawBounds {
34
- type: 'group';
35
- children: SomeButtonGraphicsElement[];
36
- }
37
- export interface ButtonGraphicsCompositeElement<TOptions = Record<string, any>> extends ButtonGraphicsElementBase, ButtonGraphicsDrawBounds {
38
- type: 'composite';
39
- elementId: string;
40
- /**
41
- * Custom elements have options defined by their composite definition
42
- */
43
- options: {
44
- [key in keyof TOptions]?: ExpressionOrValue<TOptions[key]>;
45
- };
46
- }
47
- export type HorizontalAlignment = 'left' | 'center' | 'right';
48
- export type VerticalAlignment = 'top' | 'center' | 'bottom';
49
- export type LineOrientation = 'inside' | 'center' | 'outside';
50
- export type ImageFillMode = 'crop' | 'fill' | 'fit' | 'fit_or_shrink';
51
- export interface ButtonGraphicsTextElement extends ButtonGraphicsElementBase, ButtonGraphicsDrawBounds {
52
- type: 'text';
53
- text: ExpressionOrValue<string>;
54
- fontsize?: ExpressionOrValue<'auto' | number>;
55
- color?: ExpressionOrValue<number>;
56
- halign?: ExpressionOrValue<HorizontalAlignment>;
57
- valign?: ExpressionOrValue<VerticalAlignment>;
58
- outlineColor?: ExpressionOrValue<number>;
59
- }
60
- export interface ButtonGraphicsImageElement extends ButtonGraphicsElementBase, ButtonGraphicsDrawBounds {
61
- type: 'image';
62
- base64Image: ExpressionOrValue<string | null>;
63
- halign?: ExpressionOrValue<HorizontalAlignment>;
64
- valign?: ExpressionOrValue<VerticalAlignment>;
65
- fillMode?: ExpressionOrValue<ImageFillMode>;
66
- }
67
- export interface ButtonGraphicsBorderProperties {
68
- borderWidth?: ExpressionOrValue<number>;
69
- borderColor?: ExpressionOrValue<number>;
70
- borderPosition?: ExpressionOrValue<LineOrientation>;
71
- }
72
- export interface ButtonGraphicsBoxElement extends ButtonGraphicsElementBase, ButtonGraphicsDrawBounds, ButtonGraphicsBorderProperties {
73
- type: 'box';
74
- color?: ExpressionOrValue<number>;
75
- }
76
- export interface ButtonGraphicsLineElement extends ButtonGraphicsElementBase, ButtonGraphicsBorderProperties {
77
- type: 'line';
78
- fromX?: ExpressionOrValue<number>;
79
- fromY?: ExpressionOrValue<number>;
80
- toX?: ExpressionOrValue<number>;
81
- toY?: ExpressionOrValue<number>;
82
- }
83
- //# sourceMappingURL=graphics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"graphics.d.ts","sourceRoot":"","sources":["../../src/module-api/graphics.ts"],"names":[],"mappings":"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"}