signalk-container-helper 0.8.0 → 0.8.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.
package/dist/schema.d.ts CHANGED
@@ -6,7 +6,7 @@ export interface JsonSchemaFragment {
6
6
  readonly description?: string;
7
7
  readonly [key: string]: unknown;
8
8
  }
9
- export interface ManagedModeSchemaOptions {
9
+ export interface ManagedModeSchemaOptions<U extends string = "externalUrl"> {
10
10
  /** Product noun used in every string, e.g. "backup-server", "QuestDB". */
11
11
  productName: string;
12
12
  /**
@@ -17,13 +17,13 @@ export interface ManagedModeSchemaOptions {
17
17
  /** Example shown in the URL field, e.g. "http://192.168.1.50:3010". */
18
18
  exampleUrl?: string;
19
19
  /** Property name of the URL field. Default "externalUrl". */
20
- urlFieldName?: string;
20
+ urlFieldName?: U;
21
21
  /** Title override for the URL field. */
22
22
  urlTitle?: string;
23
23
  /** Default for the toggle. Default true. */
24
24
  defaultManaged?: boolean;
25
25
  }
26
- export interface ManagedModeSchema {
26
+ export interface ManagedModeSchema<U extends string = "externalUrl"> {
27
27
  managedContainer: JsonSchemaFragment;
28
28
  externalUrl: JsonSchemaFragment;
29
29
  /**
@@ -34,7 +34,11 @@ export interface ManagedModeSchema {
34
34
  * SCHEMA_DEFAULTS object beside its schema. Spreading this instead keeps the
35
35
  * two derived from the same literals, which is where the drift was.
36
36
  */
37
- defaults: Record<string, boolean | string>;
37
+ defaults: {
38
+ managedContainer: boolean;
39
+ } & {
40
+ [K in U]: string;
41
+ };
38
42
  }
39
43
  /**
40
44
  * Build the managed/self-hosted config fields for one plugin.
@@ -43,5 +47,5 @@ export interface ManagedModeSchema {
43
47
  * hosted somewhere else" — NOT "is there a container engine on another
44
48
  * machine". signalk-container drives local unix sockets only.
45
49
  */
46
- export declare function managedModeSchema(options: ManagedModeSchemaOptions): ManagedModeSchema;
50
+ export declare function managedModeSchema<U extends string = "externalUrl">(options: ManagedModeSchemaOptions<U>): ManagedModeSchema<U>;
47
51
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AA+BA,oEAAoE;AACpE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,WAAW,EAAE,kBAAkB,CAAC;IAChC;;;;;;;OAOG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,wBAAwB,GAChC,iBAAiB,CA6CnB"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AA+BA,oEAAoE;AACpE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,MAAM,GAAG,aAAa;IACxE,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,aAAa;IACjE,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,WAAW,EAAE,kBAAkB,CAAC;IAChC;;;;;;;OAOG;IACH,QAAQ,EAAE;QAAE,gBAAgB,EAAE,OAAO,CAAA;KAAE,GAAG;SAAG,CAAC,IAAI,CAAC,GAAG,MAAM;KAAE,CAAC;CAChE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,aAAa,EAChE,OAAO,EAAE,wBAAwB,CAAC,CAAC,CAAC,GACnC,iBAAiB,CAAC,CAAC,CAAC,CAgDtB"}
package/dist/schema.js CHANGED
@@ -62,6 +62,9 @@ export function managedModeSchema(options) {
62
62
  return {
63
63
  managedContainer,
64
64
  externalUrl,
65
+ // Cast: TS cannot see that a computed key of type U satisfies
66
+ // `{ [K in U]: string }` when U is generic. The value is correct by
67
+ // construction — urlFieldName IS the key, and its default IS "".
65
68
  defaults: {
66
69
  managedContainer: defaultManaged,
67
70
  [urlFieldName]: "",
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,EAAE;AACF,2DAA2D;AAC3D,EAAE;AACF,yEAAyE;AACzE,+EAA+E;AAC/E,+EAA+E;AAC/E,eAAe;AACf,EAAE;AACF,qEAAqE;AACrE,2EAA2E;AAC3E,4EAA4E;AAC5E,2EAA2E;AAC3E,+EAA+E;AAC/E,2DAA2D;AAC3D,EAAE;AACF,wEAAwE;AACxE,EAAE;AACF,mEAAmE;AACnE,6DAA6D;AAC7D,EAAE;AACF,2EAA2E;AAC3E,6EAA6E;AAC7E,mEAAmE;AACnE,yCAAyC;AACzC,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,4EAA4E;AAC5E,2CAA2C;AA2C3C;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAiC;IAEjC,MAAM,EACJ,WAAW,EACX,KAAK,EACL,UAAU,EACV,YAAY,GAAG,aAAa,EAC5B,QAAQ,EACR,cAAc,GAAG,IAAI,GACtB,GAAG,OAAO,CAAC;IAEZ,MAAM,KAAK,GAAG,QAAQ,IAAI,YAAY,WAAW,MAAM,CAAC;IACxD,MAAM,IAAI,GAAG,KAAK;QAChB,CAAC,CAAC,6BAA6B,KAAK,EAAE;QACtC,CAAC,CAAC,mBAAmB,WAAW,yBAAyB,CAAC;IAE5D,MAAM,gBAAgB,GAAuB;QAC3C,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,UAAU,WAAW,kCAAkC;QAC9D,WAAW,EACT,eAAe,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI;YAC9D,mCAAmC,WAAW,kBAAkB,KAAK,IAAI;KAC5E,CAAC;IAEF,MAAM,WAAW,GAAuB;QACtC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,KAAK;QACL,sEAAsE;QACtE,mDAAmD;QACnD,WAAW,EACT,6CAA6C;YAC7C,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1C,6CAA6C;YAC7C,sEAAsE;KACzE,CAAC;IAEF,OAAO;QACL,gBAAgB;QAChB,WAAW;QACX,QAAQ,EAAE;YACR,gBAAgB,EAAE,cAAc;YAChC,CAAC,YAAY,CAAC,EAAE,EAAE;SACnB;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,EAAE;AACF,2DAA2D;AAC3D,EAAE;AACF,yEAAyE;AACzE,+EAA+E;AAC/E,+EAA+E;AAC/E,eAAe;AACf,EAAE;AACF,qEAAqE;AACrE,2EAA2E;AAC3E,4EAA4E;AAC5E,2EAA2E;AAC3E,+EAA+E;AAC/E,2DAA2D;AAC3D,EAAE;AACF,wEAAwE;AACxE,EAAE;AACF,mEAAmE;AACnE,6DAA6D;AAC7D,EAAE;AACF,2EAA2E;AAC3E,6EAA6E;AAC7E,mEAAmE;AACnE,yCAAyC;AACzC,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,4EAA4E;AAC5E,2CAA2C;AA2C3C;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAoC;IAEpC,MAAM,EACJ,WAAW,EACX,KAAK,EACL,UAAU,EACV,YAAY,GAAG,aAAkB,EACjC,QAAQ,EACR,cAAc,GAAG,IAAI,GACtB,GAAG,OAAO,CAAC;IAEZ,MAAM,KAAK,GAAG,QAAQ,IAAI,YAAY,WAAW,MAAM,CAAC;IACxD,MAAM,IAAI,GAAG,KAAK;QAChB,CAAC,CAAC,6BAA6B,KAAK,EAAE;QACtC,CAAC,CAAC,mBAAmB,WAAW,yBAAyB,CAAC;IAE5D,MAAM,gBAAgB,GAAuB;QAC3C,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,UAAU,WAAW,kCAAkC;QAC9D,WAAW,EACT,eAAe,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI;YAC9D,mCAAmC,WAAW,kBAAkB,KAAK,IAAI;KAC5E,CAAC;IAEF,MAAM,WAAW,GAAuB;QACtC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,KAAK;QACL,sEAAsE;QACtE,mDAAmD;QACnD,WAAW,EACT,6CAA6C;YAC7C,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1C,6CAA6C;YAC7C,sEAAsE;KACzE,CAAC;IAEF,OAAO;QACL,gBAAgB;QAChB,WAAW;QACX,8DAA8D;QAC9D,oEAAoE;QACpE,iEAAiE;QACjE,QAAQ,EAAE;YACR,gBAAgB,EAAE,cAAc;YAChC,CAAC,YAAY,CAAC,EAAE,EAAE;SACqC;KAC1D,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "signalk-container-helper",
3
- "version": "0.8.0",
3
+ "version": "0.8.1",
4
4
  "description": "Helper library for Signal K plugins that manage containers via the signalk-container plugin",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",