@companion-module/base 1.7.0 → 1.7.1

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