@companion-module/base 1.14.1 → 1.99.0-1-nightly-feat-2-0-20260118-141645-897e0fe

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 (131) hide show
  1. package/README.md +12 -11
  2. package/dist/__mocks__/net.d.ts +31 -0
  3. package/dist/__mocks__/net.d.ts.map +1 -0
  4. package/dist/__mocks__/net.js +104 -0
  5. package/dist/__mocks__/net.js.map +1 -0
  6. package/dist/__mocks__/util.d.ts +9 -0
  7. package/dist/__mocks__/util.d.ts.map +1 -0
  8. package/dist/__mocks__/util.js +39 -0
  9. package/dist/__mocks__/util.js.map +1 -0
  10. package/dist/common/json-value.js +1 -2
  11. package/dist/common/json-value.js.map +1 -1
  12. package/dist/common/osc.js +1 -2
  13. package/dist/common/osc.js.map +1 -1
  14. package/dist/entrypoint.d.ts +9 -0
  15. package/dist/entrypoint.d.ts.map +1 -1
  16. package/dist/entrypoint.js +5 -126
  17. package/dist/entrypoint.js.map +1 -1
  18. package/dist/helpers/__tests__/tcp.spec.d.ts +2 -0
  19. package/dist/helpers/__tests__/tcp.spec.d.ts.map +1 -0
  20. package/dist/helpers/__tests__/tcp.spec.js +175 -0
  21. package/dist/helpers/__tests__/tcp.spec.js.map +1 -0
  22. package/dist/helpers/__tests__/udp.spec.d.ts +2 -0
  23. package/dist/helpers/__tests__/udp.spec.d.ts.map +1 -0
  24. package/dist/helpers/__tests__/udp.spec.js +197 -0
  25. package/dist/helpers/__tests__/udp.spec.js.map +1 -0
  26. package/dist/helpers/index.js +3 -6
  27. package/dist/helpers/index.js.map +1 -1
  28. package/dist/helpers/tcp.d.ts +1 -1
  29. package/dist/helpers/tcp.d.ts.map +1 -1
  30. package/dist/helpers/tcp.js +10 -15
  31. package/dist/helpers/tcp.js.map +1 -1
  32. package/dist/helpers/telnet.d.ts +1 -1
  33. package/dist/helpers/telnet.d.ts.map +1 -1
  34. package/dist/helpers/telnet.js +6 -11
  35. package/dist/helpers/telnet.js.map +1 -1
  36. package/dist/helpers/udp.d.ts +1 -1
  37. package/dist/helpers/udp.d.ts.map +1 -1
  38. package/dist/helpers/udp.js +7 -12
  39. package/dist/helpers/udp.js.map +1 -1
  40. package/dist/host-api/context.d.ts +60 -0
  41. package/dist/host-api/context.d.ts.map +1 -0
  42. package/dist/host-api/{api.js → context.js} +5 -3
  43. package/dist/host-api/context.js.map +1 -0
  44. package/dist/instance-base.js +1 -2
  45. package/dist/logging.d.ts +21 -0
  46. package/dist/logging.d.ts.map +1 -0
  47. package/dist/logging.js +22 -0
  48. package/dist/logging.js.map +1 -0
  49. package/dist/main.d.ts +9 -0
  50. package/dist/main.d.ts.map +1 -0
  51. package/dist/{index.d.ts → main.js} +3 -2
  52. package/dist/main.js.map +1 -0
  53. package/dist/manifest.js +4 -8
  54. package/dist/manifest.js.map +1 -1
  55. package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts +2 -0
  56. package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts.map +1 -0
  57. package/dist/module-api/__tests__/shared-udp-socket.spec.js +270 -0
  58. package/dist/module-api/__tests__/shared-udp-socket.spec.js.map +1 -0
  59. package/dist/module-api/action.js +1 -2
  60. package/dist/module-api/base.d.ts +3 -18
  61. package/dist/module-api/base.d.ts.map +1 -1
  62. package/dist/module-api/base.js +50 -331
  63. package/dist/module-api/base.js.map +1 -1
  64. package/dist/module-api/common.d.ts +2 -2
  65. package/dist/module-api/common.js +1 -2
  66. package/dist/module-api/config.d.ts +2 -8
  67. package/dist/module-api/config.d.ts.map +1 -1
  68. package/dist/module-api/config.js +1 -2
  69. package/dist/module-api/enums.d.ts +0 -1
  70. package/dist/module-api/enums.d.ts.map +1 -1
  71. package/dist/module-api/enums.js +4 -7
  72. package/dist/module-api/enums.js.map +1 -1
  73. package/dist/module-api/feedback.d.ts +2 -1
  74. package/dist/module-api/feedback.d.ts.map +1 -1
  75. package/dist/module-api/feedback.js +1 -2
  76. package/dist/module-api/http.js +1 -2
  77. package/dist/module-api/index.js +12 -15
  78. package/dist/module-api/index.js.map +1 -1
  79. package/dist/module-api/input.d.ts +0 -20
  80. package/dist/module-api/input.d.ts.map +1 -1
  81. package/dist/module-api/input.js +1 -2
  82. package/dist/module-api/preset.js +1 -2
  83. package/dist/module-api/shared-udp-socket.d.ts +3 -4
  84. package/dist/module-api/shared-udp-socket.d.ts.map +1 -1
  85. package/dist/module-api/shared-udp-socket.js +18 -25
  86. package/dist/module-api/shared-udp-socket.js.map +1 -1
  87. package/dist/module-api/style.js +1 -2
  88. package/dist/module-api/upgrade.d.ts +7 -3
  89. package/dist/module-api/upgrade.d.ts.map +1 -1
  90. package/dist/module-api/upgrade.js +11 -16
  91. package/dist/module-api/upgrade.js.map +1 -1
  92. package/dist/module-api/variable.js +1 -2
  93. package/dist/util.d.ts +10 -0
  94. package/dist/util.d.ts.map +1 -1
  95. package/dist/util.js +15 -26
  96. package/dist/util.js.map +1 -1
  97. package/package.json +8 -37
  98. package/dist/host-api/api.d.ts +0 -389
  99. package/dist/host-api/api.d.ts.map +0 -1
  100. package/dist/host-api/api.js.map +0 -1
  101. package/dist/host-api/ipc-wrapper.d.ts +0 -37
  102. package/dist/host-api/ipc-wrapper.d.ts.map +0 -1
  103. package/dist/host-api/ipc-wrapper.js +0 -128
  104. package/dist/host-api/ipc-wrapper.js.map +0 -1
  105. package/dist/host-api/versions.d.ts +0 -12
  106. package/dist/host-api/versions.d.ts.map +0 -1
  107. package/dist/host-api/versions.js +0 -5
  108. package/dist/host-api/versions.js.map +0 -1
  109. package/dist/index.d.ts.map +0 -1
  110. package/dist/index.js +0 -22
  111. package/dist/index.js.map +0 -1
  112. package/dist/internal/actions.d.ts +0 -16
  113. package/dist/internal/actions.d.ts.map +0 -1
  114. package/dist/internal/actions.js +0 -223
  115. package/dist/internal/actions.js.map +0 -1
  116. package/dist/internal/base.d.ts +0 -11
  117. package/dist/internal/base.d.ts.map +0 -1
  118. package/dist/internal/base.js +0 -39
  119. package/dist/internal/base.js.map +0 -1
  120. package/dist/internal/feedback.d.ts +0 -20
  121. package/dist/internal/feedback.d.ts.map +0 -1
  122. package/dist/internal/feedback.js +0 -307
  123. package/dist/internal/feedback.js.map +0 -1
  124. package/dist/internal/upgrade.d.ts +0 -15
  125. package/dist/internal/upgrade.d.ts.map +0 -1
  126. package/dist/internal/upgrade.js +0 -174
  127. package/dist/internal/upgrade.js.map +0 -1
  128. package/lib/debounce-fn/index.d.ts +0 -83
  129. package/lib/debounce-fn/index.js +0 -78
  130. package/lib/debounce-fn/license +0 -9
  131. package/lib/debounce-fn/readme.md +0 -64
@@ -0,0 +1,21 @@
1
+ declare global {
2
+ /**
3
+ * INTERNAL USE ONLY
4
+ */
5
+ var SURFACE_LOGGER: LoggingSink | undefined;
6
+ }
7
+ export type LogLevel = 'info' | 'warn' | 'error' | 'debug';
8
+ export interface ModuleLogger {
9
+ debug: (message: string) => void;
10
+ info: (message: string) => void;
11
+ warn: (message: string) => void;
12
+ error: (message: string) => void;
13
+ }
14
+ export type LoggingSink = (source: string | undefined, level: LogLevel, message: string) => void;
15
+ /**
16
+ * Create a logger instance
17
+ * @param source The source path to use for the logger
18
+ * @returns A logger instance
19
+ */
20
+ export declare function createModuleLogger(source?: string): ModuleLogger;
21
+ //# sourceMappingURL=logging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../src/logging.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,cAAc,EAAE,WAAW,GAAG,SAAS,CAAA;CAC3C;AAED,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAE1D,MAAM,WAAW,YAAY;IAC5B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAChC;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;AAYhG;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAOhE"}
@@ -0,0 +1,22 @@
1
+ const defaultLoggingSink = (source, level, message) => {
2
+ // Default logging implementation for unit testing purposes, this should be replaced by the host application
3
+ console.log(`[${level.toUpperCase()}]${source ? ` [${source}]` : ''} ${message}`);
4
+ };
5
+ function logToSink(source, level, message) {
6
+ const sink = typeof global.SURFACE_LOGGER === 'function' ? global.SURFACE_LOGGER : defaultLoggingSink;
7
+ sink(source, level, message);
8
+ }
9
+ /**
10
+ * Create a logger instance
11
+ * @param source The source path to use for the logger
12
+ * @returns A logger instance
13
+ */
14
+ export function createModuleLogger(source) {
15
+ return {
16
+ debug: (message) => logToSink(source, 'debug', message),
17
+ info: (message) => logToSink(source, 'info', message),
18
+ warn: (message) => logToSink(source, 'warn', message),
19
+ error: (message) => logToSink(source, 'error', message),
20
+ };
21
+ }
22
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../src/logging.ts"],"names":[],"mappings":"AAkBA,MAAM,kBAAkB,GAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAClE,4GAA4G;IAC5G,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,OAAO,EAAE,CAAC,CAAA;AAClF,CAAC,CAAA;AAED,SAAS,SAAS,CAAC,MAA0B,EAAE,KAAe,EAAE,OAAe;IAC9E,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAA;IACrG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;AAC7B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAe;IACjD,OAAO;QACN,KAAK,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;QAC/D,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;QAC7D,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;QAC7D,KAAK,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;KAC/D,CAAA;AACF,CAAC"}
package/dist/main.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ export * from './logging.js';
2
+ export * from './manifest.js';
3
+ export * from './module-api/index.js';
4
+ export * from './common/osc.js';
5
+ export * from './common/json-value.js';
6
+ export * from './util.js';
7
+ export * from './helpers/index.js';
8
+ export { runEntrypoint, InstanceConstructor } from './entrypoint.js';
9
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,wBAAwB,CAAA;AACtC,cAAc,WAAW,CAAA;AACzB,cAAc,oBAAoB,CAAA;AAElC,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA"}
@@ -1,8 +1,9 @@
1
+ export * from './logging.js';
1
2
  export * from './manifest.js';
2
3
  export * from './module-api/index.js';
3
4
  export * from './common/osc.js';
4
5
  export * from './common/json-value.js';
5
- export { literal, combineRgb, splitRgb, splitHsl, splitHsv, splitHex, RgbComponents, assertNever, parseEscapeCharacters, substituteEscapeCharacters, OptionsObject, } from './util.js';
6
+ export * from './util.js';
6
7
  export * from './helpers/index.js';
7
8
  export { runEntrypoint } from './entrypoint.js';
8
- //# sourceMappingURL=index.d.ts.map
9
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,wBAAwB,CAAA;AACtC,cAAc,WAAW,CAAA;AACzB,cAAc,oBAAoB,CAAA;AAElC,OAAO,EAAE,aAAa,EAAuB,MAAM,iBAAiB,CAAA"}
package/dist/manifest.js CHANGED
@@ -1,12 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateManifest = validateManifest;
4
- const tslib_1 = require("tslib");
5
1
  // @ts-expect-error no typings
6
2
  // eslint-disable-next-line n/no-missing-import
7
- const validate_manifest_js_1 = tslib_1.__importDefault(require("../generated/validate_manifest.js"));
3
+ import validateManifestSchema from '../generated/validate_manifest.js';
8
4
  /** Validate that a manifest looks correctly populated */
9
- function validateManifest(manifest, looseChecks) {
5
+ export function validateManifest(manifest, looseChecks) {
10
6
  if (!looseChecks) {
11
7
  const manifestStr = JSON.stringify(manifest);
12
8
  if (manifestStr.includes('companion-module-your-module-name'))
@@ -27,8 +23,8 @@ function validateManifest(manifest, looseChecks) {
27
23
  if (manifest.legacyIds.includes(manifest.id)) {
28
24
  throw new Error(`Manifest contains itself '${manifest.id}' in legacyIds`);
29
25
  }
30
- if (!(0, validate_manifest_js_1.default)(manifest)) {
31
- const errors = validate_manifest_js_1.default.errors;
26
+ if (!validateManifestSchema(manifest)) {
27
+ const errors = validateManifestSchema.errors;
32
28
  if (!errors)
33
29
  throw new Error(`Manifest failed validation with unknown reason`);
34
30
  throw new Error(`Manifest validation failed: ${JSON.stringify(errors)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":";;AAaA,4CAmCC;;AA1CD,8BAA8B;AAC9B,+CAA+C;AAC/C,qGAAsE;AAItE,yDAAyD;AACzD,SAAgB,gBAAgB,CAAC,QAAwB,EAAE,WAAoB;IAC9E,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,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC1E,CAAC;IAED,IAAI,CAAC,IAAA,8BAAsB,EAAC,QAAQ,CAAC,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,8BAAsB,CAAC,MAAM,CAAA;QAC5C,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":"AAMA,8BAA8B;AAC9B,+CAA+C;AAC/C,OAAO,sBAAsB,MAAM,mCAAmC,CAAA;AAItE,yDAAyD;AACzD,MAAM,UAAU,gBAAgB,CAAC,QAAwB,EAAE,WAAoB;IAC9E,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,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC1E,CAAC;IAED,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAA;QAC5C,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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=shared-udp-socket.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-udp-socket.spec.d.ts","sourceRoot":"","sources":["../../../src/module-api/__tests__/shared-udp-socket.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,270 @@
1
+ import { describe, it, expect, vi } from 'vitest';
2
+ import { nanoid } from 'nanoid';
3
+ import { SharedUdpSocketImpl } from '../shared-udp-socket.js';
4
+ import { createManualPromise } from '../../__mocks__/util.js';
5
+ async function sleepImmediate() {
6
+ return new Promise((resolve) => setImmediate(resolve));
7
+ }
8
+ describe('Shared UDP', () => {
9
+ function createContext() {
10
+ return {
11
+ sharedUdpSocketHandlers: new Map(),
12
+ sharedUdpSocketJoin: vi.fn(() => {
13
+ throw new Error('Not implemented');
14
+ }),
15
+ sharedUdpSocketLeave: vi.fn(() => {
16
+ throw new Error('Not implemented');
17
+ }),
18
+ sharedUdpSocketSend: vi.fn(() => {
19
+ throw new Error('Not implemented');
20
+ }),
21
+ };
22
+ }
23
+ it('call fail before open', () => {
24
+ const ctx = createContext();
25
+ const socket = new SharedUdpSocketImpl(ctx, { type: 'udp4' });
26
+ expect(() => socket.close()).toThrow(/Socket is not open/);
27
+ expect(() => socket.send('', 12, '')).toThrow(/Socket is not open/);
28
+ });
29
+ describe('bind', () => {
30
+ it('ok', async () => {
31
+ const ctx = createContext();
32
+ const socket = new SharedUdpSocketImpl(ctx, { type: 'udp4' });
33
+ expect(socket.eventNames()).toHaveLength(0);
34
+ const sendPromises = [];
35
+ ctx.sharedUdpSocketJoin.mockImplementationOnce(async () => {
36
+ const sendPromise = createManualPromise();
37
+ sendPromises.push(sendPromise);
38
+ return sendPromise;
39
+ });
40
+ const bindCb = vi.fn();
41
+ socket.bind(5678, '1.2.3.4', bindCb);
42
+ // Opening a second time should fail
43
+ expect(() => socket.bind(5678, '1.2.3.4', bindCb)).toThrow(/Socket is already/);
44
+ await sleepImmediate();
45
+ expect(bindCb).toHaveBeenCalledTimes(0);
46
+ // Check now a listener
47
+ expect(socket.eventNames()).toHaveLength(1);
48
+ expect(socket.listenerCount('listening')).toBe(1);
49
+ // Check call was made
50
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(1);
51
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
52
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
53
+ expect(sendPromises).toHaveLength(1);
54
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledWith({
55
+ family: 'udp4',
56
+ portNumber: 5678,
57
+ });
58
+ // Mock receive a response
59
+ const handleId = nanoid();
60
+ sendPromises[0].manualResolve(handleId);
61
+ // Verify that opened successfully
62
+ await sleepImmediate();
63
+ expect(bindCb).toHaveBeenCalledTimes(1);
64
+ // Should be tracked now
65
+ expect(ctx.sharedUdpSocketHandlers.get(handleId)).toBe(socket);
66
+ });
67
+ it('error', async () => {
68
+ const ctx = createContext();
69
+ const socket = new SharedUdpSocketImpl(ctx, { type: 'udp4' });
70
+ expect(socket.eventNames()).toHaveLength(0);
71
+ const sendPromises = [];
72
+ ctx.sharedUdpSocketJoin.mockImplementationOnce(async () => {
73
+ const sendPromise = createManualPromise();
74
+ sendPromises.push(sendPromise);
75
+ return sendPromise;
76
+ });
77
+ const bindCb = vi.fn();
78
+ socket.bind(5678, '1.2.3.4', bindCb);
79
+ await sleepImmediate();
80
+ expect(bindCb).toHaveBeenCalledTimes(0);
81
+ // setup an error listener
82
+ const errorCb = vi.fn();
83
+ socket.on('error', errorCb);
84
+ // Check call was made
85
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(1);
86
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
87
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
88
+ expect(sendPromises).toHaveLength(1);
89
+ // Mock receive a response
90
+ const err = new Error('Some backend failure');
91
+ sendPromises[0].manualReject(err);
92
+ // Verify that opening failed
93
+ await sleepImmediate();
94
+ expect(bindCb).toHaveBeenCalledTimes(0);
95
+ expect(ctx.sharedUdpSocketHandlers.size).toBe(0);
96
+ // Error should have propogated
97
+ expect(errorCb).toHaveBeenCalledTimes(1);
98
+ expect(errorCb).toHaveBeenCalledWith(err);
99
+ });
100
+ });
101
+ async function createAndOpenSocket(ctx) {
102
+ const socket = new SharedUdpSocketImpl(ctx, { type: 'udp4' });
103
+ expect(socket.eventNames()).toHaveLength(0);
104
+ const sendPromises = [];
105
+ ctx.sharedUdpSocketJoin.mockImplementationOnce(async () => {
106
+ const sendPromise = createManualPromise();
107
+ sendPromises.push(sendPromise);
108
+ return sendPromise;
109
+ });
110
+ const bindCb = vi.fn();
111
+ socket.bind(5678, '1.2.3.4', bindCb);
112
+ // Mock receive a response
113
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(1);
114
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
115
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
116
+ expect(sendPromises).toHaveLength(1);
117
+ const handleId = nanoid();
118
+ sendPromises[0].manualResolve(handleId);
119
+ // Verify that opened successfully
120
+ await sleepImmediate();
121
+ expect(bindCb).toHaveBeenCalledTimes(1);
122
+ // Should be tracked now
123
+ expect(ctx.sharedUdpSocketHandlers.get(handleId)).toBe(socket);
124
+ ctx.sharedUdpSocketJoin.mockClear();
125
+ return { socket, handleId };
126
+ }
127
+ describe('send', () => {
128
+ it('ok', async () => {
129
+ const ctx = createContext();
130
+ const { socket, handleId } = await createAndOpenSocket(ctx);
131
+ const sendPromises = [];
132
+ ctx.sharedUdpSocketSend.mockImplementationOnce(async () => {
133
+ const sendPromise = createManualPromise();
134
+ sendPromises.push(sendPromise);
135
+ return sendPromise;
136
+ });
137
+ // Do send
138
+ const sendCb = vi.fn();
139
+ const message = Buffer.from('my fake message');
140
+ socket.send(message, 4789, '4.5.6.7', sendCb);
141
+ // Check callbacks
142
+ await sleepImmediate();
143
+ expect(sendCb).toHaveBeenCalledTimes(0);
144
+ // Check call was made
145
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(1);
146
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
147
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
148
+ expect(sendPromises).toHaveLength(1);
149
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledWith({
150
+ handleId,
151
+ message,
152
+ address: '4.5.6.7',
153
+ port: 4789,
154
+ });
155
+ // Mock receive a response
156
+ sendPromises[0].manualResolve(null);
157
+ // Verify the calback
158
+ await sleepImmediate();
159
+ expect(sendCb).toHaveBeenCalledTimes(1);
160
+ expect(ctx.sharedUdpSocketHandlers.has(handleId)).toBeTruthy();
161
+ });
162
+ it('error', async () => {
163
+ const ctx = createContext();
164
+ const { socket, handleId } = await createAndOpenSocket(ctx);
165
+ const sendPromises = [];
166
+ ctx.sharedUdpSocketSend.mockImplementationOnce(async () => {
167
+ const sendPromise = createManualPromise();
168
+ sendPromises.push(sendPromise);
169
+ return sendPromise;
170
+ });
171
+ // Do send
172
+ const sendCb = vi.fn();
173
+ const message = Buffer.from('my fake message');
174
+ socket.send(message, 4789, '4.5.6.7', sendCb);
175
+ const errorCb = vi.fn();
176
+ socket.on('error', errorCb);
177
+ // Check callbacks
178
+ await sleepImmediate();
179
+ expect(sendCb).toHaveBeenCalledTimes(0);
180
+ // Check call was made
181
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(1);
182
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
183
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
184
+ expect(sendPromises).toHaveLength(1);
185
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledWith({
186
+ handleId,
187
+ message,
188
+ address: '4.5.6.7',
189
+ port: 4789,
190
+ });
191
+ // Mock receive a response
192
+ const err = new Error('Some backend failure');
193
+ sendPromises[0].manualReject(err);
194
+ // Verify the calback
195
+ await sleepImmediate();
196
+ expect(sendCb).toHaveBeenCalledTimes(0);
197
+ expect(errorCb).toHaveBeenCalledTimes(1);
198
+ expect(errorCb).toHaveBeenCalledWith(err);
199
+ expect(ctx.sharedUdpSocketHandlers.has(handleId)).toBeTruthy();
200
+ });
201
+ });
202
+ describe('close', () => {
203
+ it('ok', async () => {
204
+ const ctx = createContext();
205
+ const { socket, handleId } = await createAndOpenSocket(ctx);
206
+ const sendPromises = [];
207
+ ctx.sharedUdpSocketLeave.mockImplementationOnce(async () => {
208
+ const sendPromise = createManualPromise();
209
+ sendPromises.push(sendPromise);
210
+ return sendPromise;
211
+ });
212
+ // Do send
213
+ const closeCb = vi.fn();
214
+ socket.close(closeCb);
215
+ // Check callbacks
216
+ await sleepImmediate();
217
+ expect(closeCb).toHaveBeenCalledTimes(0);
218
+ // Check call was made
219
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(1);
220
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
221
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
222
+ expect(sendPromises).toHaveLength(1);
223
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledWith({
224
+ handleId,
225
+ });
226
+ // Mock receive a response
227
+ sendPromises[0].manualResolve(null);
228
+ // Verify the calback
229
+ await sleepImmediate();
230
+ expect(closeCb).toHaveBeenCalledTimes(1);
231
+ expect(ctx.sharedUdpSocketHandlers.has(handleId)).toBeFalsy();
232
+ });
233
+ it('error', async () => {
234
+ const ctx = createContext();
235
+ const { socket, handleId } = await createAndOpenSocket(ctx);
236
+ const sendPromises = [];
237
+ ctx.sharedUdpSocketLeave.mockImplementationOnce(async () => {
238
+ const sendPromise = createManualPromise();
239
+ sendPromises.push(sendPromise);
240
+ return sendPromise;
241
+ });
242
+ // Do send
243
+ const closeCb = vi.fn();
244
+ socket.close(closeCb);
245
+ const errorCb = vi.fn();
246
+ socket.on('error', errorCb);
247
+ // Check callbacks
248
+ await sleepImmediate();
249
+ expect(closeCb).toHaveBeenCalledTimes(0);
250
+ // Check call was made
251
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(1);
252
+ expect(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
253
+ expect(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
254
+ expect(sendPromises).toHaveLength(1);
255
+ expect(ctx.sharedUdpSocketLeave).toHaveBeenCalledWith({
256
+ handleId,
257
+ });
258
+ // Mock receive a response
259
+ const err = new Error('Some backend failure');
260
+ sendPromises[0].manualReject(err);
261
+ // Verify the calback
262
+ await sleepImmediate();
263
+ expect(closeCb).toHaveBeenCalledTimes(0);
264
+ expect(errorCb).toHaveBeenCalledTimes(1);
265
+ expect(errorCb).toHaveBeenCalledWith(err);
266
+ expect(ctx.sharedUdpSocketHandlers.has(handleId)).toBeFalsy();
267
+ });
268
+ });
269
+ });
270
+ //# sourceMappingURL=shared-udp-socket.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-udp-socket.spec.js","sourceRoot":"","sources":["../../../src/module-api/__tests__/shared-udp-socket.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAiB,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAQ5E,KAAK,UAAU,cAAc;IAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;AACvD,CAAC;AAED,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC3B,SAAS,aAAa;QACrB,OAAO;YACN,uBAAuB,EAAE,IAAI,GAAG,EAA+B;YAC/D,mBAAmB,EAAE,EAAE,CAAC,EAAE,CAAwD,GAAG,EAAE;gBACtF,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;YACnC,CAAC,CAAC;YACF,oBAAoB,EAAE,EAAE,CAAC,EAAE,CAAyD,GAAG,EAAE;gBACxF,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;YACnC,CAAC,CAAC;YACF,mBAAmB,EAAE,EAAE,CAAC,EAAE,CAAwD,GAAG,EAAE;gBACtF,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;YACnC,CAAC,CAAC;SACF,CAAA;IACF,CAAC;IAED,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;QAC3B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAE7D,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;QAC1D,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACpE,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACrB,EAAE,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;YAC3B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAC7D,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAE3C,MAAM,YAAY,GAAyB,EAAE,CAAA;YAC7C,GAAG,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,KAAK,IAAI,EAAE;gBACzD,MAAM,WAAW,GAAG,mBAAmB,EAAO,CAAA;gBAC9C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAA;YACnB,CAAC,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACtB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;YAEpC,oCAAoC;YACpC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;YAE/E,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEvC,uBAAuB;YACvB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAC3C,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAEjD,sBAAsB;YACtB,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACpC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,oBAAoB,CAAC;gBACpD,MAAM,EAAE,MAAM;gBACd,UAAU,EAAE,IAAI;aACqB,CAAC,CAAA;YAEvC,0BAA0B;YAC1B,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAA;YACzB,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;YAEvC,kCAAkC;YAClC,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEvC,wBAAwB;YACxB,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACtB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;YAC3B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAC7D,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAE3C,MAAM,YAAY,GAAyB,EAAE,CAAA;YAC7C,GAAG,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,KAAK,IAAI,EAAE;gBACzD,MAAM,WAAW,GAAG,mBAAmB,EAAO,CAAA;gBAC9C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAA;YACnB,CAAC,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACtB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;YAEpC,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEvC,0BAA0B;YAC1B,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACvB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAE3B,sBAAsB;YACtB,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAEpC,0BAA0B;YAC1B,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;YAC7C,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YAEjC,6BAA6B;YAC7B,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAEhD,+BAA+B;YAC/B,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,KAAK,UAAU,mBAAmB,CAAC,GAAqC;QACvE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAC7D,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QAE3C,MAAM,YAAY,GAAyB,EAAE,CAAA;QAC7C,GAAG,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,KAAK,IAAI,EAAE;YACzD,MAAM,WAAW,GAAG,mBAAmB,EAAO,CAAA;YAC9C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC9B,OAAO,WAAW,CAAA;QACnB,CAAC,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QACtB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAEpC,0BAA0B;QAC1B,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACxD,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACzD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACxD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACpC,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAA;QACzB,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;QAEvC,kCAAkC;QAClC,MAAM,cAAc,EAAE,CAAA;QACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QAEvC,wBAAwB;QACxB,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9D,GAAG,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAA;QAEnC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IAC5B,CAAC;IAED,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACrB,EAAE,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;YAE3B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAA;YAE3D,MAAM,YAAY,GAAyB,EAAE,CAAA;YAC7C,GAAG,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,KAAK,IAAI,EAAE;gBACzD,MAAM,WAAW,GAAG,mBAAmB,EAAO,CAAA;gBAC9C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAA;YACnB,CAAC,CAAC,CAAA;YAEF,UAAU;YACV,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACtB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;YAC9C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;YAE7C,kBAAkB;YAClB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEvC,sBAAsB;YACtB,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACpC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,oBAAoB,CAAC;gBACpD,QAAQ;gBACR,OAAO;gBACP,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI;aAC2B,CAAC,CAAA;YAEvC,0BAA0B;YAC1B,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YAEnC,qBAAqB;YACrB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEvC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QAC/D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACtB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;YAE3B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAA;YAE3D,MAAM,YAAY,GAAyB,EAAE,CAAA;YAC7C,GAAG,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,KAAK,IAAI,EAAE;gBACzD,MAAM,WAAW,GAAG,mBAAmB,EAAO,CAAA;gBAC9C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAA;YACnB,CAAC,CAAC,CAAA;YAEF,UAAU;YACV,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACtB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;YAC9C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;YAE7C,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACvB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAE3B,kBAAkB;YAClB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEvC,sBAAsB;YACtB,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACpC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,oBAAoB,CAAC;gBACpD,QAAQ;gBACR,OAAO;gBACP,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI;aAC2B,CAAC,CAAA;YAEvC,0BAA0B;YAC1B,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;YAC7C,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YAEjC,qBAAqB;YACrB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;YAEzC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QAC/D,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;QACtB,EAAE,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;YAE3B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAA;YAE3D,MAAM,YAAY,GAAyB,EAAE,CAAA;YAC7C,GAAG,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,KAAK,IAAI,EAAE;gBAC1D,MAAM,WAAW,GAAG,mBAAmB,EAAO,CAAA;gBAC9C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAA;YACnB,CAAC,CAAC,CAAA;YAEF,UAAU;YACV,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACvB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAErB,kBAAkB;YAClB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAExC,sBAAsB;YACtB,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACpC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,oBAAoB,CAAC;gBACrD,QAAQ;aAC8B,CAAC,CAAA;YAExC,0BAA0B;YAC1B,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YAEnC,qBAAqB;YACrB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAExC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAC9D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACtB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAA;YAE3B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAA;YAE3D,MAAM,YAAY,GAAyB,EAAE,CAAA;YAC7C,GAAG,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,KAAK,IAAI,EAAE;gBAC1D,MAAM,WAAW,GAAG,mBAAmB,EAAO,CAAA;gBAC9C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC9B,OAAO,WAAW,CAAA;YACnB,CAAC,CAAC,CAAA;YAEF,UAAU;YACV,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACvB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAErB,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;YACvB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAE3B,kBAAkB;YAClB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAExC,sBAAsB;YACtB,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACpC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,oBAAoB,CAAC;gBACrD,QAAQ;aAC8B,CAAC,CAAA;YAExC,0BAA0B;YAC1B,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;YAC7C,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YAEjC,qBAAqB;YACrB,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;YAEzC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAC9D,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -1,3 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
3
2
  //# sourceMappingURL=action.js.map
@@ -1,7 +1,8 @@
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, LogLevel } from './enums.js';
4
+ import type { InstanceStatus } from './enums.js';
5
+ import { type LogLevel } from '../logging.js';
5
6
  import type { InstanceBaseShared } from '../instance-base.js';
6
7
  import type { CompanionVariableDefinition, CompanionVariableValue, CompanionVariableValues } from './variable.js';
7
8
  import type { OSCSomeArguments } from '../common/osc.js';
@@ -26,7 +27,7 @@ export interface InstanceBaseOptions {
26
27
  }
27
28
  export declare abstract class InstanceBase<TConfig, TSecrets = undefined> implements InstanceBaseShared<TConfig, TSecrets> {
28
29
  #private;
29
- readonly id: string;
30
+ get id(): string;
30
31
  get instanceOptions(): InstanceBaseOptions;
31
32
  /**
32
33
  * The user chosen name for this instance.
@@ -37,20 +38,6 @@ export declare abstract class InstanceBase<TConfig, TSecrets = undefined> implem
37
38
  * Create an instance of the module
38
39
  */
39
40
  constructor(internal: unknown);
40
- private _handleInit;
41
- private _handleDestroy;
42
- private _handleConfigUpdateAndLabel;
43
- private _handleExecuteAction;
44
- private _handleUpdateFeedbacks;
45
- private _handleUpdateActions;
46
- private _handleUpgradeActionsAndFeedbacks;
47
- private _handleGetConfigFields;
48
- private _handleHttpRequest;
49
- private _handleLearnAction;
50
- private _handleLearnFeedback;
51
- private _handleStartStopRecordActions;
52
- private _handleSharedUdpSocketMessage;
53
- private _handleSharedUdpSocketError;
54
41
  /**
55
42
  * Main initialization function called
56
43
  * once the module is OK to start doing things.
@@ -123,8 +110,6 @@ export declare abstract class InstanceBase<TConfig, TSecrets = undefined> implem
123
110
  *
124
111
  * Parse and replace all the variables in a string
125
112
  * Note: You must not use this for feedbacks, as your feedback will not update when the variable changes.
126
- * There is an alternate version of this supplied to each of the action/feedback callbacks that tracks
127
- * usages properly and will retrigger the feedback when the variables change.
128
113
  * @param text The text to parse
129
114
  * @returns The string with variables replaced with their values
130
115
  */
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/module-api/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/module-api/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACtF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAA;AACjE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAsB,KAAK,QAAQ,EAAqB,MAAM,eAAe,CAAA;AAEpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,KAAK,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AACjH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAC5E,OAAO,EACN,eAAe,EAEf,8BAA8B,EAC9B,sBAAsB,EACtB,MAAM,wBAAwB,CAAA;AAG/B,MAAM,WAAW,mBAAmB;IACnC;;;OAGG;IACH,yBAAyB,EAAE,OAAO,CAAA;IAElC;;;;;;;OAOG;IACH,sBAAsB,EAAE,OAAO,CAAA;CAC/B;AAED,8BAAsB,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAE,YAAW,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC;;IAMjH,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,IAAW,eAAe,IAAI,mBAAmB,CAEhD;IAED;;;OAGG;IACH,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED;;OAEG;gBACS,QAAQ,EAAE,OAAO;IAoB7B;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtF;;OAEG;IACH,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAEjC;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAEzE;;;;;OAKG;IACH,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,IAAI;IAChH,UAAU,CACT,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,EACrC,SAAS,EAAE,OAAO,GAAG,SAAS,EAC9B,UAAU,EAAE,QAAQ,GAAG,SAAS,GAC9B,IAAI;IAKP;;OAEG;IACH,QAAQ,CAAC,eAAe,IAAI,wBAAwB,EAAE;IAEtD;;;OAGG;IACH,iBAAiB,CAAC,CAAC,OAAO,EAAE,oBAAoB,GAAG,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAEzG;;;OAGG;IACH,4BAA4B,CAAC,CAAC,WAAW,EAAE,OAAO,GAAG,IAAI;IAEzD;;;OAGG;IACH,oBAAoB,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI;IAI/D;;;OAGG;IACH,sBAAsB,CAAC,SAAS,EAAE,4BAA4B,GAAG,IAAI;IAIrE;;;OAGG;IACH,oBAAoB,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI;IAI/D;;;OAGG;IACH,sBAAsB,CAAC,SAAS,EAAE,2BAA2B,EAAE,GAAG,IAAI;IAItE;;;OAGG;IACH,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAIxD;;;;OAIG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAIxE;;;;;;;OAOG;IACG,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI3D;;;OAGG;IACH,cAAc,CAAC,GAAG,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI;IAIhD;;;OAGG;IACH,kBAAkB,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI;IAIlD;;;;OAIG;IACH,gBAAgB,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAG9C;;;;OAIG;IACH,kBAAkB,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAIhD;;;;OAIG;IACH,kBAAkB,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI;IAGlD;;;;OAIG;IACH,oBAAoB,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI;IAIpD;;;;OAIG;IACH,YAAY,CAAC,MAAM,EAAE,uBAAuB,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAI1E;;;;;;OAMG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAI/E;;;;;;;;;OASG;IACH,YAAY,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAInE;;;;OAIG;IACH,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAqB3C;;;;;;;OAOG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,CAAC,EAAE,8BAA8B,GAAG,eAAe;IACxG,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,EAAE,QAAQ,CAAC,EAAE,8BAA8B,GAAG,eAAe;CAYlH"}