@companion-surface/base 0.7.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.0.0](https://github.com/bitfocus/companion-surface-api/compare/companion-surface-base-v0.7.0...companion-surface-base-v1.0.0) (2025-12-15)
4
+
5
+
6
+ ### Features
7
+
8
+ * publish 1.0 ([49bc303](https://github.com/bitfocus/companion-surface-api/commit/49bc3039a56d963d0b67a66e992dea47ff413bc7))
9
+
10
+
11
+ ### Miscellaneous Chores
12
+
13
+ * release 1.0.0 ([5de1d61](https://github.com/bitfocus/companion-surface-api/commit/5de1d61537723348c736ed49168b88f116ac3919))
14
+
3
15
  ## [0.7.0](https://github.com/bitfocus/companion-surface-api/compare/companion-surface-base-v0.6.2...companion-surface-base-v0.7.0) (2025-12-01)
4
16
 
5
17
 
package/dist/manifest.js CHANGED
@@ -7,8 +7,8 @@ export function validateSurfaceManifest(manifest, looseChecks) {
7
7
  throw new Error(`Manifest 'type' must be 'surface'`);
8
8
  if (!looseChecks) {
9
9
  const manifestStr = JSON.stringify(manifest);
10
- if (manifestStr.includes('companion-module-your-module-name'))
11
- throw new Error(`Manifest incorrectly references template module 'companion-module-your-module-name'`);
10
+ if (manifestStr.includes('your-module-name'))
11
+ throw new Error(`Manifest incorrectly references template module 'your-module-name'`);
12
12
  if (manifestStr.includes('module-shortname'))
13
13
  throw new Error(`Manifest incorrectly references template module 'module-shortname'`);
14
14
  if (manifestStr.includes('A short one line description of your module'))
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AACA,8BAA8B;AAC9B,+CAA+C;AAC/C,OAAO,6BAA6B,MAAM,mCAAmC,CAAA;AAI7E,yDAAyD;AACzD,MAAM,UAAU,uBAAuB,CAAC,QAA+B,EAAE,WAAoB;IAC5F,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAErF,IAAI,CAAC,WAAW,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,WAAW,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,qFAAqF,CAAC,CAAA;QAEvG,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;QAEtF,IAAI,WAAW,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAA;QAEjH,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAE/E,IAAI,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;QAEhF,IAAI,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QAElF,IAAI,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;IACnF,CAAC;IAED,IAAI,CAAC,6BAA6B,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,6BAA6B,CAAC,MAAM,CAAA;QACnD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QAE9E,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IACzE,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AACA,8BAA8B;AAC9B,+CAA+C;AAC/C,OAAO,6BAA6B,MAAM,mCAAmC,CAAA;AAI7E,yDAAyD;AACzD,MAAM,UAAU,uBAAuB,CAAC,QAA+B,EAAE,WAAoB;IAC5F,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAErF,IAAI,CAAC,WAAW,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;QAEtF,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;QAEtF,IAAI,WAAW,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAA;QAEjH,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAE/E,IAAI,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;QAEhF,IAAI,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QAElF,IAAI,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;IACnF,CAAC;IAED,IAAI,CAAC,6BAA6B,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,6BAA6B,CAAC,MAAM,CAAA;QACnD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QAE9E,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IACzE,CAAC;AACF,CAAC"}
@@ -1,7 +1,26 @@
1
1
  import type { SurfaceSchemaPixelFormat } from '../../generated/surface-layout.d.ts';
2
2
  export interface CardGenerator {
3
+ /**
4
+ * Generate a basic placeholder status card.
5
+ * This is typically a large logo in the middle, with some status text along the bottom.
6
+ * @param width Width of the card in pixels
7
+ * @param height Height of the card in pixels
8
+ * @param pixelFormat Pixel format of the card
9
+ */
3
10
  generateBasicCard(width: number, height: number, pixelFormat: SurfaceSchemaPixelFormat): Promise<Uint8Array>;
11
+ /**
12
+ * Generate a basic status card designed for a wide and short LCD strip display.
13
+ * @param width Width of the card in pixels
14
+ * @param height Height of the card in pixels
15
+ * @param pixelFormat Pixel format of the card
16
+ */
4
17
  generateLcdStripCard(width: number, height: number, pixelFormat: SurfaceSchemaPixelFormat): Promise<Uint8Array>;
18
+ /**
19
+ * Generate a logo-only card.
20
+ * @param width Width of the card in pixels
21
+ * @param height Height of the card in pixels
22
+ * @param pixelFormat Pixel format of the card
23
+ */
5
24
  generateLogoCard(width: number, height: number, pixelFormat: SurfaceSchemaPixelFormat): Promise<Uint8Array>;
6
25
  }
7
26
  //# sourceMappingURL=cards.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../../src/surface-api/cards.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AAEnF,MAAM,WAAW,aAAa;IAC7B,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAG5G,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAE/G,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CAC3G"}
1
+ {"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../../src/surface-api/cards.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AAEnF,MAAM,WAAW,aAAa;IAC7B;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAE5G;;;;;OAKG;IAEH,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAE/G;;;;;OAKG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CAC3G"}
@@ -1,15 +1,57 @@
1
1
  export interface HostCapabilities {
2
2
  }
3
+ /**
4
+ * The context provided to a surface module when running
5
+ */
3
6
  export interface SurfaceContext {
7
+ /**
8
+ * Whether the surface is currently locked
9
+ */
4
10
  get isLocked(): boolean;
11
+ /**
12
+ * The capabilities of the host running the surface
13
+ */
5
14
  get capabilities(): HostCapabilities;
15
+ /**
16
+ * Disconnect the surface
17
+ * @param error Disconnection reason
18
+ */
6
19
  disconnect(error: Error): void;
20
+ /**
21
+ * Trigger a key down event on a control by its id
22
+ * @param controlId Id of the control
23
+ */
7
24
  keyDownById(controlId: string): void;
25
+ /**
26
+ * Trigger a key up event on a control by its id
27
+ * @param controlId Id of the control
28
+ */
8
29
  keyUpById(controlId: string): void;
30
+ /**
31
+ * Trigger a key down and a key up event on a control by its id
32
+ * @param controlId Id of the control
33
+ */
9
34
  keyDownUpById(controlId: string): void;
35
+ /**
36
+ * Trigger a left rotation event on a control by its id
37
+ * @param controlId Id of the control
38
+ */
10
39
  rotateLeftById(controlId: string): void;
40
+ /**
41
+ * Trigger a right rotation event on a control by its id
42
+ * @param controlId Id of the control
43
+ */
11
44
  rotateRightById(controlId: string): void;
45
+ /**
46
+ * Change the current page of the surface
47
+ * @param forward Whether to progress forward or backwards
48
+ */
12
49
  changePage(forward: boolean): void;
50
+ /**
51
+ * Send a value of a transferVariable from surface
52
+ * @param variable Name of the variable
53
+ * @param value Value of the variable
54
+ */
13
55
  sendVariableValue(variable: string, value: any): void;
14
56
  }
15
57
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/surface-api/context.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,gBAAgB;CAGhC;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,QAAQ,IAAI,OAAO,CAAA;IAEvB,IAAI,YAAY,IAAI,gBAAgB,CAAA;IAEpC,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IAE9B,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IAExC,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IAElC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAA;CACrD"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/surface-api/context.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,gBAAgB;CAGhC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAAA;IAEvB;;OAEG;IACH,IAAI,YAAY,IAAI,gBAAgB,CAAA;IAEpC;;;OAGG;IACH,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IAE9B;;;OAGG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC;;;OAGG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC;;;OAGG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC;;;OAGG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC;;;OAGG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IAExC;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IAElC;;;;OAIG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAAA;CACrD"}
@@ -1,6 +1,7 @@
1
1
  import type EventEmitter from 'node:events';
2
2
  import type { DiscoveredSurfaceInfo } from './plugin.js';
3
3
  export interface SurfacePluginDetectionEvents<TInfo> {
4
+ /** Emitted when surfaces are detected */
4
5
  surfacesAdded: [surfaceInfos: DiscoveredSurfaceInfo<TInfo>[]];
5
6
  }
6
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"detection.d.ts","sourceRoot":"","sources":["../../src/surface-api/detection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD,MAAM,WAAW,4BAA4B,CAAC,KAAK;IAClD,aAAa,EAAE,CAAC,YAAY,EAAE,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;CAE7D;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,KAAK,CAAE,SAAQ,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;IACvG;;;OAGG;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE5B;;;;OAIG;IACH,aAAa,CAAC,WAAW,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAA;CAC9D"}
1
+ {"version":3,"file":"detection.d.ts","sourceRoot":"","sources":["../../src/surface-api/detection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD,MAAM,WAAW,4BAA4B,CAAC,KAAK;IAClD,yCAAyC;IACzC,aAAa,EAAE,CAAC,YAAY,EAAE,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;CAE7D;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,KAAK,CAAE,SAAQ,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;IACvG;;;OAGG;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE5B;;;;OAIG;IACH,aAAa,CAAC,WAAW,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAA;CAC9D"}
@@ -55,9 +55,21 @@ export interface SurfacePlugin<TInfo> {
55
55
  */
56
56
  openSurface: (surfaceId: string, pluginInfo: TInfo, context: SurfaceContext) => Promise<OpenSurfaceResult>;
57
57
  }
58
+ /**
59
+ * Information about a discovered surface
60
+ */
58
61
  export interface DiscoveredSurfaceInfo<TInfo> {
62
+ /**
63
+ * Unique id of the surface. Typically a serialnumber
64
+ */
59
65
  surfaceId: string;
66
+ /**
67
+ * Human friendly description of the surface. Typically a model name
68
+ */
60
69
  description: string;
70
+ /**
71
+ * Plugin specific info about the surface
72
+ */
61
73
  pluginInfo: TInfo;
62
74
  }
63
75
  //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/surface-api/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,KAAK;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAElD;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAA;IAE5C;;;;OAIG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAErB;;;;OAIG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAExB;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,qBAAqB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAA;IAEnF;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAE/D;;;;;;;OAOG;IACH,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAC1G;AAED,MAAM,WAAW,qBAAqB,CAAC,KAAK;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,KAAK,CAAA;CACjB"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/surface-api/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,KAAK;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAElD;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAA;IAE5C;;;;OAIG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAErB;;;;OAIG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAExB;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,qBAAqB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAA;IAEnF;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAE/D;;;;;;;OAOG;IACH,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAC1G;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,KAAK;IAC3C;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,UAAU,EAAE,KAAK,CAAA;CACjB"}
@@ -24,12 +24,18 @@ export interface HIDDevice {
24
24
  }
25
25
  export type SurfaceId = string;
26
26
  export type ControlId = string;
27
+ /**
28
+ * Definition of a varaible produced by a surface
29
+ */
27
30
  export interface SurfaceInputVariable {
28
31
  id: string;
29
32
  type: 'input';
30
33
  name: string;
31
34
  description?: string;
32
35
  }
36
+ /**
37
+ * Definition of a varaible consumed by a surface
38
+ */
33
39
  export interface SurfaceOutputVariable {
34
40
  id: string;
35
41
  type: 'output';
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/surface-api/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAA;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAExE;;;GAGG;AACH,MAAM,WAAW,SAAS;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAE9B,MAAM,WAAW,oBAAoB;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,OAAO,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AACD,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC;;OAEG;IACH,UAAU,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,aAAa,EAAE,6BAA6B,CAAA;IAC5C;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,oBAAoB,GAAG,qBAAqB,CAAC,CAAA;IACvE;;;OAGG;IACH,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAEpC;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAEvB;;OAEG;IACH,YAAY,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAA;CAC9C;AAED,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,eAAe,CAAA;IACxB,aAAa,EAAE,oBAAoB,CAAA;CACnC;AAED,MAAM,WAAW,gBAAgB;IAChC,SAAS,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAA;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,QAAQ;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,2BAA2B;IAC3C,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,aAAa,CAAA;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/surface-api/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAA;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAExE;;;GAGG;AACH,MAAM,WAAW,SAAS;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAE9B;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,OAAO,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AACD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC;;OAEG;IACH,UAAU,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,aAAa,EAAE,6BAA6B,CAAA;IAC5C;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,oBAAoB,GAAG,qBAAqB,CAAC,CAAA;IACvE;;;OAGG;IACH,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAEpC;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAEvB;;OAEG;IACH,YAAY,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAA;CAC9C;AAED,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,eAAe,CAAA;IACxB,aAAa,EAAE,oBAAoB,CAAA;CACnC;AAED,MAAM,WAAW,gBAAgB;IAChC,SAAS,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAA;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,QAAQ;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,2BAA2B;IAC3C,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,aAAa,CAAA;CACrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@companion-surface/base",
3
- "version": "0.7.0",
3
+ "version": "1.0.0",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "repository": "https://github.com/bitfocus/companion-surface-api",
@@ -33,6 +33,6 @@
33
33
  },
34
34
  "devDependencies": {
35
35
  "ajv": "^8.17.1",
36
- "typedoc": "^0.28.14"
36
+ "typedoc": "^0.28.15"
37
37
  }
38
38
  }