@k8ts/instruments 0.2.1 → 0.4.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 (161) hide show
  1. package/dist/_embedder/base.js +3 -2
  2. package/dist/_embedder/index.js +0 -1
  3. package/dist/_string/index.js +0 -1
  4. package/dist/_string/markers.d.ts +2 -2
  5. package/dist/_string/markers.d.ts.map +1 -1
  6. package/dist/_string/markers.js +26 -11
  7. package/dist/_string/post-processor.js +1 -4
  8. package/dist/_string/pretty-objects.js +51 -50
  9. package/dist/_string/pretty-print.js +0 -1
  10. package/dist/_string/super-script.js +0 -1
  11. package/dist/api-kind/index.js +3 -1
  12. package/dist/cmd/cli-command.js +3 -1
  13. package/dist/cmd/cli-term.js +5 -1
  14. package/dist/cmd/index.js +0 -1
  15. package/dist/cmd/types.js +0 -1
  16. package/dist/data-sources/index.d.ts +37 -0
  17. package/dist/data-sources/index.d.ts.map +1 -0
  18. package/dist/data-sources/index.js +104 -0
  19. package/dist/displayers/displayers.js +2 -5
  20. package/dist/displayers/index.js +0 -1
  21. package/dist/env/env.js +1 -1
  22. package/dist/env/index.js +0 -1
  23. package/dist/env/types.js +0 -1
  24. package/dist/env/validate-name.js +0 -1
  25. package/dist/error.js +0 -1
  26. package/dist/forward-exports/delayed-exports.js +12 -18
  27. package/dist/forward-exports/index.js +0 -1
  28. package/dist/graph/base-node.d.ts +6 -4
  29. package/dist/graph/base-node.d.ts.map +1 -1
  30. package/dist/graph/base-node.js +60 -51
  31. package/dist/graph/base-origin-entity.js +15 -30
  32. package/dist/graph/dependencies.d.ts +2 -2
  33. package/dist/graph/dependencies.d.ts.map +1 -1
  34. package/dist/graph/dependencies.js +16 -19
  35. package/dist/graph/index.js +0 -1
  36. package/dist/graph/origin-node.d.ts +1 -1
  37. package/dist/graph/origin-node.d.ts.map +1 -1
  38. package/dist/graph/origin-node.js +33 -34
  39. package/dist/graph/relations.d.ts +2 -2
  40. package/dist/graph/relations.d.ts.map +1 -1
  41. package/dist/graph/relations.js +1 -4
  42. package/dist/graph/resource-node.d.ts +1 -1
  43. package/dist/graph/resource-node.d.ts.map +1 -1
  44. package/dist/graph/resource-node.js +16 -18
  45. package/dist/image/family.d.ts +10 -6
  46. package/dist/image/family.d.ts.map +1 -1
  47. package/dist/image/family.js +160 -44
  48. package/dist/image/index.js +0 -1
  49. package/dist/index.d.ts +1 -0
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +1 -1
  52. package/dist/kind-map/index.js +2 -1
  53. package/dist/manifest/index.js +0 -1
  54. package/dist/manifest/manifest-builder.d.ts +7 -11
  55. package/dist/manifest/manifest-builder.d.ts.map +1 -1
  56. package/dist/manifest/manifest-builder.js +3 -6
  57. package/dist/ports/error.js +1 -2
  58. package/dist/ports/index.js +0 -1
  59. package/dist/ports/map.js +1 -1
  60. package/dist/ports/set.d.ts +2 -2
  61. package/dist/ports/set.d.ts.map +1 -1
  62. package/dist/ports/set.js +16 -2
  63. package/dist/ports/tools/entry.js +0 -1
  64. package/dist/ports/tools/parse.js +0 -1
  65. package/dist/ports/types.d.ts +2 -2
  66. package/dist/ports/types.d.ts.map +1 -1
  67. package/dist/ports/types.js +0 -1
  68. package/dist/producer/index.js +0 -1
  69. package/dist/producer/producer.js +0 -1
  70. package/dist/ref-key/index.js +0 -1
  71. package/dist/ref-key/ref-key.js +2 -1
  72. package/dist/reference/forward-ref.js +13 -27
  73. package/dist/reference/index.js +0 -1
  74. package/dist/reference/refable.js +0 -1
  75. package/dist/resources/index.js +0 -1
  76. package/dist/resources/objects.js +4 -1
  77. package/dist/resources/parser.js +0 -1
  78. package/dist/resources/types.js +0 -1
  79. package/dist/src.tsbuildinfo +1 -1
  80. package/dist/tracing/git.js +1 -1
  81. package/dist/tracing/index.js +0 -1
  82. package/dist/tracing/trace.js +1 -1
  83. package/dist/tracing/traced.js +0 -1
  84. package/dist/units/index.js +0 -1
  85. package/dist/units/unit-parser.js +16 -11
  86. package/dist/units/units.js +0 -1
  87. package/package.json +3 -3
  88. package/src/_embedder/base.ts +1 -1
  89. package/src/_string/markers.ts +28 -9
  90. package/src/data-sources/index.ts +126 -0
  91. package/src/graph/base-node.ts +20 -10
  92. package/src/graph/dependencies.ts +2 -2
  93. package/src/graph/origin-node.ts +5 -5
  94. package/src/graph/relations.ts +2 -2
  95. package/src/graph/resource-node.ts +3 -3
  96. package/src/image/family.ts +45 -29
  97. package/src/index.ts +1 -0
  98. package/src/manifest/manifest-builder.ts +6 -5
  99. package/src/ports/set.ts +17 -3
  100. package/src/ports/types.ts +5 -3
  101. package/src/tsconfig.json +5 -0
  102. package/dist/_embedder/base.js.map +0 -1
  103. package/dist/_embedder/index.js.map +0 -1
  104. package/dist/_string/index.js.map +0 -1
  105. package/dist/_string/markers.js.map +0 -1
  106. package/dist/_string/post-processor.js.map +0 -1
  107. package/dist/_string/pretty-objects.js.map +0 -1
  108. package/dist/_string/pretty-print.js.map +0 -1
  109. package/dist/_string/super-script.js.map +0 -1
  110. package/dist/api-kind/index.js.map +0 -1
  111. package/dist/cmd/cli-command.js.map +0 -1
  112. package/dist/cmd/cli-term.js.map +0 -1
  113. package/dist/cmd/index.js.map +0 -1
  114. package/dist/cmd/types.js.map +0 -1
  115. package/dist/displayers/displayers.js.map +0 -1
  116. package/dist/displayers/index.js.map +0 -1
  117. package/dist/env/env.js.map +0 -1
  118. package/dist/env/index.js.map +0 -1
  119. package/dist/env/types.js.map +0 -1
  120. package/dist/env/validate-name.js.map +0 -1
  121. package/dist/error.js.map +0 -1
  122. package/dist/forward-exports/delayed-exports.js.map +0 -1
  123. package/dist/forward-exports/index.js.map +0 -1
  124. package/dist/graph/base-node.js.map +0 -1
  125. package/dist/graph/base-origin-entity.js.map +0 -1
  126. package/dist/graph/dependencies.js.map +0 -1
  127. package/dist/graph/index.js.map +0 -1
  128. package/dist/graph/origin-node.js.map +0 -1
  129. package/dist/graph/relations.js.map +0 -1
  130. package/dist/graph/resource-node.js.map +0 -1
  131. package/dist/image/family.js.map +0 -1
  132. package/dist/image/index.js.map +0 -1
  133. package/dist/index.js.map +0 -1
  134. package/dist/kind-map/index.js.map +0 -1
  135. package/dist/manifest/index.js.map +0 -1
  136. package/dist/manifest/manifest-builder.js.map +0 -1
  137. package/dist/ports/error.js.map +0 -1
  138. package/dist/ports/index.js.map +0 -1
  139. package/dist/ports/map.js.map +0 -1
  140. package/dist/ports/set.js.map +0 -1
  141. package/dist/ports/tools/entry.js.map +0 -1
  142. package/dist/ports/tools/parse.js.map +0 -1
  143. package/dist/ports/types.js.map +0 -1
  144. package/dist/producer/index.js.map +0 -1
  145. package/dist/producer/producer.js.map +0 -1
  146. package/dist/ref-key/index.js.map +0 -1
  147. package/dist/ref-key/ref-key.js.map +0 -1
  148. package/dist/reference/forward-ref.js.map +0 -1
  149. package/dist/reference/index.js.map +0 -1
  150. package/dist/reference/refable.js.map +0 -1
  151. package/dist/resources/index.js.map +0 -1
  152. package/dist/resources/objects.js.map +0 -1
  153. package/dist/resources/parser.js.map +0 -1
  154. package/dist/resources/types.js.map +0 -1
  155. package/dist/tracing/git.js.map +0 -1
  156. package/dist/tracing/index.js.map +0 -1
  157. package/dist/tracing/trace.js.map +0 -1
  158. package/dist/tracing/traced.js.map +0 -1
  159. package/dist/units/index.js.map +0 -1
  160. package/dist/units/unit-parser.js.map +0 -1
  161. package/dist/units/units.js.map +0 -1
@@ -33,10 +33,6 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
33
33
  }
34
34
  return useValue ? value : void 0;
35
35
  };
36
- var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
37
- if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
38
- return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
39
- };
40
36
  var __importDefault = (this && this.__importDefault) || function (mod) {
41
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
42
38
  };
@@ -52,18 +48,18 @@ let ResourceNode = (() => {
52
48
  let _classDecorators = [(0, displayers_1.displayers)({
53
49
  simple: s => `[${s.shortFqn}]`,
54
50
  pretty(resource, format) {
55
- format ?? (format = "global");
51
+ format ??= "global";
56
52
  let kindName = chalk_1.default.greenBright(resource.kind.name);
57
53
  if (format !== "lowkey") {
58
54
  kindName = chalk_1.default.bold(kindName);
59
55
  }
60
56
  const resourceName = chalk_1.default.blueBright(resource.name);
61
57
  const mainPart = `${kindName}/${resourceName}`;
62
- let originPart = ` (${displayers_1.displayers.get(resource.origin).prefix()})`;
58
+ let originPart = `${displayers_1.displayers.get(resource.origin).prefix()}`;
63
59
  let text = "";
64
60
  text += mainPart;
65
61
  if (format !== "local") {
66
- text += originPart;
62
+ text = `${originPart}${text}`;
67
63
  }
68
64
  return text;
69
65
  }
@@ -72,8 +68,19 @@ let ResourceNode = (() => {
72
68
  let _classExtraInitializers = [];
73
69
  let _classThis;
74
70
  let _classSuper = base_node_1.BaseNode;
75
- var ResourceNode = _classThis = class extends _classSuper {
76
- get needs() {
71
+ var ResourceNode = class extends _classSuper {
72
+ static { _classThis = this; }
73
+ static {
74
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
75
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
76
+ ResourceNode = _classThis = _classDescriptor.value;
77
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
78
+ __runInitializers(_classThis, _classExtraInitializers);
79
+ }
80
+ origin;
81
+ entity;
82
+ key;
83
+ get relations() {
77
84
  return (0, doddle_1.seq)(this._relations.needs);
78
85
  }
79
86
  get trace() {
@@ -130,15 +137,6 @@ let ResourceNode = (() => {
130
137
  this.key = key;
131
138
  }
132
139
  };
133
- __setFunctionName(_classThis, "ResourceNode");
134
- (() => {
135
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
136
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
137
- ResourceNode = _classThis = _classDescriptor.value;
138
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
139
- __runInitializers(_classThis, _classExtraInitializers);
140
- })();
141
140
  return ResourceNode = _classThis;
142
141
  })();
143
142
  exports.ResourceNode = ResourceNode;
144
- //# sourceMappingURL=resource-node.js.map
@@ -2,25 +2,29 @@ export type JoinIfNotEmpty<A extends string, J extends string, B extends string>
2
2
  export declare class ImageHost<Text extends string = string> {
3
3
  private readonly _url;
4
4
  constructor(source: Text);
5
+ author<Author extends string>(name: Author): ImageAuthor<JoinIfNotEmpty<Text, "/", Author>>;
5
6
  image<Image extends string>(name: Image): BaseImage<JoinIfNotEmpty<Text, "/", Image>>;
6
7
  get [Symbol.toStringTag](): Text;
7
8
  }
9
+ export declare class ImageAuthor<Text extends string = string> {
10
+ private readonly _url;
11
+ constructor(base: string, name: string);
12
+ image<Image extends string>(name: Image): BaseImage<JoinIfNotEmpty<Text, "/", Image>>;
13
+ }
8
14
  export declare class BaseImage<Text extends string = string> {
9
- private readonly _source;
15
+ private readonly _base;
10
16
  private readonly _name;
11
- constructor(_source: ImageHost, _name: string);
17
+ constructor(_base: string, _name: string);
12
18
  tag<Tag extends string>(tag: Tag): TaggedImage<JoinIfNotEmpty<Text, ":", Tag>>;
13
- get [Symbol.toStringTag](): string;
14
19
  }
15
20
  export declare class TaggedImage<Text extends string = string> {
16
21
  private readonly _family;
17
22
  private readonly _tag;
18
23
  constructor(_family: BaseImage<string>, _tag: string);
19
- get text(): string;
20
- get [Symbol.toStringTag](): string;
21
24
  }
22
25
  export declare namespace Image {
23
- function name<Name extends string>(name: Name): BaseImage<Name>;
26
+ function author<Author extends string>(name: Author): ImageAuthor<Author>;
27
+ function name<Name extends `${string}/${string}`>(name: Name): BaseImage<Name>;
24
28
  function host<Host extends string>(url: Host): ImageHost<Host>;
25
29
  }
26
30
  //# sourceMappingURL=family.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"family.d.ts","sourceRoot":"","sources":["../../src/image/family.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,EAAE,GACzF,CAAC,GACD,CAAC,SAAS,EAAE,GACV,CAAC,GACD,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAA;AACtB,qBAAa,SAAS,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IAC/C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAM;gBACf,MAAM,EAAE,IAAI;IAKxB,KAAK,CAAC,KAAK,SAAS,MAAM,EAAE,IAAI,EAAE,KAAK;IAIvC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAEvB;CACJ;AAED,qBAAa,SAAS,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IAE3C,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBADL,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,MAAM;IAKlC,GAAG,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,GAAG;IAIhC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAKvB;CACJ;AAED,qBAAa,WAAW,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IAE7C,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAC1B,IAAI,EAAE,MAAM;IAKjC,IAAI,IAAI,WAMP;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAEvB;CACJ;AAED,yBAAiB,KAAK,CAAC;IACnB,SAAgB,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,IAAI,EAAE,IAAI,mBAEnD;IAED,SAAgB,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,GAAG,EAAE,IAAI,mBAElD;CACJ"}
1
+ {"version":3,"file":"family.d.ts","sourceRoot":"","sources":["../../src/image/family.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,EAAE,GACzF,CAAC,GACD,CAAC,SAAS,EAAE,GACV,CAAC,GACD,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAA;AACtB,qBAGa,SAAS,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IAC/C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAM;gBACf,MAAM,EAAE,IAAI;IAIxB,MAAM,CAAC,MAAM,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM;IAI1C,KAAK,CAAC,KAAK,SAAS,MAAM,EAAE,IAAI,EAAE,KAAK;IAIvC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAEvB;CACJ;AACD,qBAGa,WAAW,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IACjD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAM;gBACf,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAItC,KAAK,CAAC,KAAK,SAAS,MAAM,EAAE,IAAI,EAAE,KAAK;CAG1C;AACD,qBAQa,SAAS,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IAE3C,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBADL,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM;IAGlC,GAAG,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,GAAG;CAGnC;AACD,qBASa,WAAW,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IAE7C,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAC1B,IAAI,EAAE,MAAM;CAEpC;AAED,yBAAiB,KAAK,CAAC;IACnB,SAAgB,MAAM,CAAC,MAAM,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,uBAEzD;IACD,SAAgB,IAAI,CAAC,IAAI,SAAS,GAAG,MAAM,IAAI,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,mBAElE;IAED,SAAgB,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,GAAG,EAAE,IAAI,mBAElD;CACJ"}
@@ -1,56 +1,173 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Image = exports.TaggedImage = exports.BaseImage = exports.ImageHost = void 0;
4
- class ImageHost {
5
- constructor(source) {
6
- this._url = source;
7
- this.toString = () => this[Symbol.toStringTag];
8
- }
9
- image(name) {
10
- return new BaseImage(this, name);
2
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
5
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
6
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
7
+ var _, done = false;
8
+ for (var i = decorators.length - 1; i >= 0; i--) {
9
+ var context = {};
10
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
11
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
13
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
14
+ if (kind === "accessor") {
15
+ if (result === void 0) continue;
16
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
17
+ if (_ = accept(result.get)) descriptor.get = _;
18
+ if (_ = accept(result.set)) descriptor.set = _;
19
+ if (_ = accept(result.init)) initializers.unshift(_);
20
+ }
21
+ else if (_ = accept(result)) {
22
+ if (kind === "field") initializers.unshift(_);
23
+ else descriptor[key] = _;
24
+ }
11
25
  }
12
- get [Symbol.toStringTag]() {
13
- return this._url;
26
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
+ done = true;
28
+ };
29
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
+ var useValue = arguments.length > 2;
31
+ for (var i = 0; i < initializers.length; i++) {
32
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
14
33
  }
15
- }
34
+ return useValue ? value : void 0;
35
+ };
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.Image = exports.TaggedImage = exports.BaseImage = exports.ImageAuthor = exports.ImageHost = void 0;
38
+ const displayers_1 = require("../displayers");
39
+ let ImageHost = (() => {
40
+ let _classDecorators = [(0, displayers_1.displayers)({
41
+ simple: s => s._url
42
+ })];
43
+ let _classDescriptor;
44
+ let _classExtraInitializers = [];
45
+ let _classThis;
46
+ var ImageHost = class {
47
+ static { _classThis = this; }
48
+ static {
49
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
50
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
51
+ ImageHost = _classThis = _classDescriptor.value;
52
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
53
+ __runInitializers(_classThis, _classExtraInitializers);
54
+ }
55
+ _url;
56
+ constructor(source) {
57
+ this._url = source;
58
+ }
59
+ author(name) {
60
+ return new ImageAuthor(this.toString(), name);
61
+ }
62
+ image(name) {
63
+ return new BaseImage(this.toString(), name);
64
+ }
65
+ get [Symbol.toStringTag]() {
66
+ return this._url;
67
+ }
68
+ };
69
+ return ImageHost = _classThis;
70
+ })();
16
71
  exports.ImageHost = ImageHost;
17
- class BaseImage {
18
- constructor(_source, _name) {
19
- this._source = _source;
20
- this._name = _name;
21
- this.toString = () => this[Symbol.toStringTag];
22
- }
23
- tag(tag) {
24
- return new TaggedImage(this, tag);
25
- }
26
- get [Symbol.toStringTag]() {
27
- if (this._source[Symbol.toStringTag] === "") {
28
- return this._name;
72
+ let ImageAuthor = (() => {
73
+ let _classDecorators = [(0, displayers_1.displayers)({
74
+ simple: s => s._url
75
+ })];
76
+ let _classDescriptor;
77
+ let _classExtraInitializers = [];
78
+ let _classThis;
79
+ var ImageAuthor = class {
80
+ static { _classThis = this; }
81
+ static {
82
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
83
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
84
+ ImageAuthor = _classThis = _classDescriptor.value;
85
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
86
+ __runInitializers(_classThis, _classExtraInitializers);
29
87
  }
30
- return [this._source, this._name].join("/");
31
- }
32
- }
88
+ _url;
89
+ constructor(base, name) {
90
+ this._url = base === "" ? name : [base, name].join("/");
91
+ }
92
+ image(name) {
93
+ return new BaseImage(this.toString(), name);
94
+ }
95
+ };
96
+ return ImageAuthor = _classThis;
97
+ })();
98
+ exports.ImageAuthor = ImageAuthor;
99
+ let BaseImage = (() => {
100
+ let _classDecorators = [(0, displayers_1.displayers)({
101
+ simple: s => {
102
+ if (!s._base) {
103
+ return s._name;
104
+ }
105
+ return [s._base, s._name].join("/");
106
+ }
107
+ })];
108
+ let _classDescriptor;
109
+ let _classExtraInitializers = [];
110
+ let _classThis;
111
+ var BaseImage = class {
112
+ static { _classThis = this; }
113
+ static {
114
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
115
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
116
+ BaseImage = _classThis = _classDescriptor.value;
117
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
118
+ __runInitializers(_classThis, _classExtraInitializers);
119
+ }
120
+ _base;
121
+ _name;
122
+ constructor(_base, _name) {
123
+ this._base = _base;
124
+ this._name = _name;
125
+ }
126
+ tag(tag) {
127
+ return new TaggedImage(this, tag);
128
+ }
129
+ };
130
+ return BaseImage = _classThis;
131
+ })();
33
132
  exports.BaseImage = BaseImage;
34
- class TaggedImage {
35
- constructor(_family, _tag) {
36
- this._family = _family;
37
- this._tag = _tag;
38
- this.toString = () => this.text;
39
- }
40
- get text() {
41
- const fam = this._family[Symbol.toStringTag];
42
- if (this._tag === "") {
43
- return fam;
133
+ let TaggedImage = (() => {
134
+ let _classDecorators = [(0, displayers_1.displayers)({
135
+ simple: s => {
136
+ const fam = s._family.toString();
137
+ if (s._tag === "") {
138
+ return fam;
139
+ }
140
+ return [fam, s._tag].join(":");
141
+ }
142
+ })];
143
+ let _classDescriptor;
144
+ let _classExtraInitializers = [];
145
+ let _classThis;
146
+ var TaggedImage = class {
147
+ static { _classThis = this; }
148
+ static {
149
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
150
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
151
+ TaggedImage = _classThis = _classDescriptor.value;
152
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
153
+ __runInitializers(_classThis, _classExtraInitializers);
44
154
  }
45
- return [fam, this._tag].join(":");
46
- }
47
- get [Symbol.toStringTag]() {
48
- return this.text;
49
- }
50
- }
155
+ _family;
156
+ _tag;
157
+ constructor(_family, _tag) {
158
+ this._family = _family;
159
+ this._tag = _tag;
160
+ }
161
+ };
162
+ return TaggedImage = _classThis;
163
+ })();
51
164
  exports.TaggedImage = TaggedImage;
52
165
  var Image;
53
166
  (function (Image) {
167
+ function author(name) {
168
+ return new ImageHost("").author(name);
169
+ }
170
+ Image.author = author;
54
171
  function name(name) {
55
172
  return new ImageHost("").image(name);
56
173
  }
@@ -60,4 +177,3 @@ var Image;
60
177
  }
61
178
  Image.host = host;
62
179
  })(Image || (exports.Image = Image = {}));
63
- //# sourceMappingURL=family.js.map
@@ -6,4 +6,3 @@ Object.defineProperty(exports, "BaseImage", { enumerable: true, get: function ()
6
6
  Object.defineProperty(exports, "Image", { enumerable: true, get: function () { return family_1.Image; } });
7
7
  Object.defineProperty(exports, "ImageHost", { enumerable: true, get: function () { return family_1.ImageHost; } });
8
8
  Object.defineProperty(exports, "TaggedImage", { enumerable: true, get: function () { return family_1.TaggedImage; } });
9
- //# sourceMappingURL=index.js.map
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ export * from "./_embedder";
2
2
  export * from "./_string";
3
3
  export * from "./api-kind";
4
4
  export * from "./cmd";
5
+ export * from "./data-sources";
5
6
  export * from "./displayers";
6
7
  export * from "./env";
7
8
  export * from "./forward-exports";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA;AAC5B,cAAc,OAAO,CAAA;AACrB,cAAc,mBAAmB,CAAA;AACjC,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,OAAO,CAAA;AACrB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,OAAO,CAAA;AACrB,cAAc,mBAAmB,CAAA;AACjC,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA"}
package/dist/index.js CHANGED
@@ -18,6 +18,7 @@ __exportStar(require("./_embedder"), exports);
18
18
  __exportStar(require("./_string"), exports);
19
19
  __exportStar(require("./api-kind"), exports);
20
20
  __exportStar(require("./cmd"), exports);
21
+ __exportStar(require("./data-sources"), exports);
21
22
  __exportStar(require("./displayers"), exports);
22
23
  __exportStar(require("./env"), exports);
23
24
  __exportStar(require("./forward-exports"), exports);
@@ -32,4 +33,3 @@ __exportStar(require("./reference"), exports);
32
33
  __exportStar(require("./resources"), exports);
33
34
  __exportStar(require("./tracing"), exports);
34
35
  __exportStar(require("./units"), exports);
35
- //# sourceMappingURL=index.js.map
@@ -7,6 +7,8 @@ const error_1 = require("../error");
7
7
  const ref_key_1 = require("../ref-key");
8
8
  const separator = "/";
9
9
  class KindMap {
10
+ _entryMap;
11
+ _parent;
10
12
  constructor(_entryMap = (0, immutable_1.Map)([]), _parent = undefined) {
11
13
  this._entryMap = _entryMap;
12
14
  this._parent = _parent;
@@ -120,4 +122,3 @@ class KindMap {
120
122
  }
121
123
  }
122
124
  exports.KindMap = KindMap;
123
- //# sourceMappingURL=index.js.map
@@ -18,4 +18,3 @@ exports.ManifestSourceEmbedder = void 0;
18
18
  const base_1 = require("../_embedder/base");
19
19
  exports.ManifestSourceEmbedder = new base_1.Embedder("ManifestSource");
20
20
  __exportStar(require("./manifest-builder"), exports);
21
- //# sourceMappingURL=index.js.map
@@ -1,11 +1,12 @@
1
1
  import { BaseManifest, ManifestIdentFields, ManifestMetadata, PreManifest } from ".";
2
2
  import { MetadataEntity } from "../graph/resource-node";
3
+ type MaybePromise<T> = T | Promise<T>;
3
4
  export declare namespace ManifestBuilder {
4
5
  interface Out {
5
- body: () => PreManifest;
6
- metadata: () => ManifestMetadata;
6
+ body: () => MaybePromise<PreManifest>;
7
+ metadata: () => Partial<ManifestMetadata>;
7
8
  ident: () => ManifestIdentFields;
8
- manifest: () => BaseManifest;
9
+ manifest: () => MaybePromise<BaseManifest>;
9
10
  }
10
11
  type In<Target extends MetadataEntity = MetadataEntity> = Partial<{
11
12
  [K in keyof Out]: (self: Target) => ReturnType<Out[K]>;
@@ -22,16 +23,11 @@ declare class BuilderDecorator {
22
23
  }, input: ManifestBuilder.In<MetadataEntity>): void;
23
24
  private _metadata;
24
25
  private _idents;
25
- manifest(trait: ManifestBuilder.Out, self: MetadataEntity): {
26
- metadata: {
27
- name?: string;
28
- namespace?: string;
29
- annotations?: Record<string, string>;
30
- labels?: Record<string, string>;
31
- };
26
+ manifest(trait: ManifestBuilder.Out, self: MetadataEntity): Promise<{
27
+ metadata: Partial<ManifestMetadata>;
32
28
  kind: string;
33
29
  apiVersion: string;
34
- };
30
+ }>;
35
31
  idents(self: MetadataEntity): {
36
32
  kind: string;
37
33
  apiVersion: string;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-builder.d.ts","sourceRoot":"","sources":["../../src/manifest/manifest-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAEhB,WAAW,EACd,MAAM,GAAG,CAAA;AAEV,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,yBAAiB,eAAe,CAAC;IAC7B,UAAiB,GAAG;QAChB,IAAI,EAAE,MAAM,WAAW,CAAA;QACvB,QAAQ,EAAE,MAAM,gBAAgB,CAAA;QAChC,KAAK,EAAE,MAAM,mBAAmB,CAAA;QAChC,QAAQ,EAAE,MAAM,YAAY,CAAA;KAC/B;IAED,KAAY,EAAE,CAAC,MAAM,SAAS,cAAc,GAAG,cAAc,IAAI,OAAO,CAAC;SACpE,CAAC,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACzD,CAAC,GAAG;QACD,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,CAAA;KACtC,GAAG;QACA,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;KACvD,CAAA;CACJ;AAED,cAAM,gBAAgB;IAClB,OAAO,CAAC,OAAO,CAA8D;IAE7E,SAAS,CACL,IAAI,EAAE;QAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,cAAc,CAAA;KAAE,EAC9C,KAAK,EAAE,eAAe,CAAC,EAAE,CAAC,cAAc,CAAC;IAM7C,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,OAAO;IAOf,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc;;gBA/B/C,CAAC;qBAA0B,CAAC;uBAI1C,CAAC;kBACc,CAAC;;;;;IAoCZ,MAAM,CAAC,IAAI,EAAE,cAAc;;;;IAM3B,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe,CAAC,GAAG;IAWhD,IAAI,SAAS,KACD,MAAM,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,cAAc,EACzD,OAAO,eAAe,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,MAEvC,MAAM,MAAM,YAK3B;CACJ;AAED,eAAO,MAAM,OAAO,kBAAyB,CAAA;AAE7C,eAAO,MAAM,QAAQ,GAbL,MAAM,uBAAuB,GAAG,EAAE,KAAK,cAAc,uDAGjD,YAAY,WAUS,CAAA"}
1
+ {"version":3,"file":"manifest-builder.d.ts","sourceRoot":"","sources":["../../src/manifest/manifest-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAEhB,WAAW,EACd,MAAM,GAAG,CAAA;AAEV,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;AACrC,yBAAiB,eAAe,CAAC;IAC7B,UAAiB,GAAG;QAChB,IAAI,EAAE,MAAM,YAAY,CAAC,WAAW,CAAC,CAAA;QACrC,QAAQ,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAA;QACzC,KAAK,EAAE,MAAM,mBAAmB,CAAA;QAChC,QAAQ,EAAE,MAAM,YAAY,CAAC,YAAY,CAAC,CAAA;KAC7C;IAED,KAAY,EAAE,CAAC,MAAM,SAAS,cAAc,GAAG,cAAc,IAAI,OAAO,CAAC;SACpE,CAAC,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACzD,CAAC,GAAG;QACD,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,CAAA;KACtC,GAAG;QACA,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;KACvD,CAAA;CACJ;AAED,cAAM,gBAAgB;IAClB,OAAO,CAAC,OAAO,CAA8D;IAE7E,SAAS,CACL,IAAI,EAAE;QAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,cAAc,CAAA;KAAE,EAC9C,KAAK,EAAE,eAAe,CAAC,EAAE,CAAC,cAAc,CAAC;IAM7C,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,OAAO;IAOT,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc;;;;;IAU/D,MAAM,CAAC,IAAI,EAAE,cAAc;;;;IAM3B,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe,CAAC,GAAG;IAWhD,IAAI,SAAS,KACD,MAAM,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,cAAc,EACzD,OAAO,eAAe,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,MAEvC,MAAM,MAAM,YAK3B;CACJ;AAED,eAAO,MAAM,OAAO,kBAAyB,CAAA;AAE7C,eAAO,MAAM,QAAQ,GAbL,MAAM,uBAAuB,GAAG,EAAE,KAAK,cAAc,uDAGjD,YAAY,WAUS,CAAA"}
@@ -4,9 +4,7 @@ exports.manifest = exports.Builder = void 0;
4
4
  const _1 = require(".");
5
5
  const base_1 = require("../_embedder/base");
6
6
  class BuilderDecorator {
7
- constructor() {
8
- this._system = new base_1.Embedder("builder");
9
- }
7
+ _system = new base_1.Embedder("builder");
10
8
  implement(ctor, input) {
11
9
  this._system.set(ctor.prototype, {
12
10
  ...input
@@ -26,11 +24,11 @@ class BuilderDecorator {
26
24
  kind: self.kind.name
27
25
  };
28
26
  }
29
- manifest(trait, self) {
27
+ async manifest(trait, self) {
30
28
  const mani = {
31
29
  ...trait.ident(),
32
30
  metadata: trait.metadata(),
33
- ...trait.body()
31
+ ...(await trait.body())
34
32
  };
35
33
  _1.ManifestSourceEmbedder.set(mani, self);
36
34
  return mani;
@@ -63,4 +61,3 @@ class BuilderDecorator {
63
61
  exports.Builder = new BuilderDecorator();
64
62
  exports.manifest = exports.Builder.decorator;
65
63
  // writing the decorator itself
66
- //# sourceMappingURL=manifest-builder.js.map
@@ -2,12 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PortError = void 0;
4
4
  class PortError extends Error {
5
+ name = "PortError";
5
6
  constructor(message, extra = {}) {
6
7
  super(message);
7
8
  this.name = "PortError";
8
- this.name = "PortError";
9
9
  Object.assign(this, extra);
10
10
  }
11
11
  }
12
12
  exports.PortError = PortError;
13
- //# sourceMappingURL=error.js.map
@@ -10,4 +10,3 @@ Object.defineProperty(exports, "PortSet", { enumerable: true, get: function () {
10
10
  function ports(input) {
11
11
  return set_1.PortSet.make(input);
12
12
  }
13
- //# sourceMappingURL=index.js.map
package/dist/ports/map.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PortMap = void 0;
4
4
  const error_1 = require("./error");
5
5
  class PortMap {
6
+ _map;
6
7
  constructor(_map) {
7
8
  this._map = _map;
8
9
  }
@@ -35,4 +36,3 @@ class PortMap {
35
36
  }
36
37
  }
37
38
  exports.PortMap = PortMap;
38
- //# sourceMappingURL=map.js.map
@@ -8,11 +8,11 @@ export declare class PortSet<Names extends string = never> {
8
8
  union<InNames extends string>(other: PortSet<InNames>): PortSet<Names | InNames>;
9
9
  add<Name extends string>(name: Name, port: InputPort, protocol: InputProtocol): PortSet<Names | Name>;
10
10
  add<Name extends string>(name: Name, entry: InputPortSetEntry): PortSet<Names | Name>;
11
- add<InNames extends string>(input: InputPortSetRecord<InNames>): PortSet<Names | InNames>;
11
+ add<InNames extends string>(input?: InputPortSetRecord<InNames>): PortSet<Names | InNames>;
12
12
  pick<InNames extends Names>(...name: InNames[]): PortSet<InNames>;
13
13
  get(name: Names): PortSetEntry;
14
14
  get values(): Map<Names, PortSetEntry>;
15
15
  map(mapping: InputPortMapping<Names>): PortMap<Names>;
16
- static make<Names extends string>(input: InputPortSetRecord<Names>): PortSet<Names>;
16
+ static make<Names extends string>(input?: InputPortSetRecord<Names>): PortSet<Names>;
17
17
  }
18
18
  //# sourceMappingURL=set.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/ports/set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,KAAK,EACR,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,YAAY,EACf,MAAM,SAAS,CAAA;AAGhB,qBAAa,OAAO,CAAC,KAAK,SAAS,MAAM,GAAG,KAAK;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,GAAE,GAAG,CAAC,KAAK,EAAE,YAAY,CAAS;IAEnE,OAAO,CAAC,MAAM;IAId,KAAK,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;IAGhF,GAAG,CAAC,IAAI,SAAS,MAAM,EACnB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,aAAa,GACxB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,IAAI,SAAS,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IACrF,GAAG,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;IAczF,IAAI,CAAC,OAAO,SAAS,KAAK,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjE,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY;IAO9B,IAAI,MAAM,6BAET;IAED,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAgBrD,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,MAAM,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC;CAGrE"}
1
+ {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/ports/set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,KAAK,EACR,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,YAAY,EACf,MAAM,SAAS,CAAA;AAGhB,qBAAa,OAAO,CAAC,KAAK,SAAS,MAAM,GAAG,KAAK;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,GAAE,GAAG,CAAC,KAAK,EAAE,YAAY,CAAS;IAEnE,OAAO,CAAC,MAAM;IAId,KAAK,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;IAGhF,GAAG,CAAC,IAAI,SAAS,MAAM,EACnB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,aAAa,GACxB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,IAAI,SAAS,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IACrF,GAAG,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;IAiB1F,IAAI,CAAC,OAAO,SAAS,KAAK,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjE,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY;IAO9B,IAAI,MAAM,6BAET;IAED,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IA2BrD,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,MAAM,EAAE,KAAK,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC;CAGtE"}
package/dist/ports/set.js CHANGED
@@ -6,6 +6,7 @@ const error_1 = require("./error");
6
6
  const map_1 = require("./map");
7
7
  const entry_1 = require("./tools/entry");
8
8
  class PortSet {
9
+ _map;
9
10
  constructor(_map = (0, immutable_1.Map)()) {
10
11
  this._map = _map;
11
12
  }
@@ -16,6 +17,9 @@ class PortSet {
16
17
  return new PortSet(this._map.merge(other._map));
17
18
  }
18
19
  add(a, b, c) {
20
+ if (!a) {
21
+ return this;
22
+ }
19
23
  if (c) {
20
24
  return this._apply(map => map.set(a, { name: a, port: +b, protocol: c.toUpperCase() }));
21
25
  }
@@ -44,11 +48,22 @@ class PortSet {
44
48
  if (!(entry.name in mapping)) {
45
49
  throw new error_1.PortError(`Port ${entry.name} not found in mapping`);
46
50
  }
51
+ const portIn = mapping[entry.name];
52
+ let portVal;
53
+ if (typeof portIn === "boolean") {
54
+ portVal = entry.port;
55
+ }
56
+ else if (typeof portIn === "number") {
57
+ portVal = portIn;
58
+ }
59
+ else {
60
+ throw new error_1.PortError(`Port ${entry.name} mapping value must be a number or boolean`);
61
+ }
47
62
  return {
48
63
  name: entry.name,
49
64
  protocol: entry.protocol,
50
65
  source: entry.port,
51
- target: mapping[entry.name]
66
+ target: portVal
52
67
  };
53
68
  }));
54
69
  }
@@ -57,4 +72,3 @@ class PortSet {
57
72
  }
58
73
  }
59
74
  exports.PortSet = PortSet;
60
- //# sourceMappingURL=set.js.map
@@ -33,4 +33,3 @@ function portRecordInput(record) {
33
33
  .map((v, k) => parsePortInput(k, v))
34
34
  .map((value, key) => portSetEntry(key, value));
35
35
  }
36
- //# sourceMappingURL=entry.js.map
@@ -32,4 +32,3 @@ function parsePortSpec(name, input) {
32
32
  parseError: result.reason
33
33
  });
34
34
  }
35
- //# sourceMappingURL=parse.js.map
@@ -31,7 +31,7 @@ export interface InputPortMapEntry {
31
31
  export type InputPortSetRecord<Names extends string = string> = {
32
32
  [K in Names]: InputPortSetSpec;
33
33
  };
34
- export type InputPortMapping<Names extends string = string> = {
35
- [K in Names]: number;
34
+ export type InputPortMapping<Names extends string = string> = [Names] extends [never] ? never : {
35
+ [K in Names]: number | true;
36
36
  };
37
37
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ports/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,QAAQ,CAAA;CACrB;AAED,MAAM,MAAM,IAAI,GAAG,MAAM,CAAA;AACzB,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,GAAG,IAAI,EAAE,CAAA;AACxC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAC1D,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAA;AACpC,MAAM,MAAM,cAAc,GAAG,GAAG,IAAI,IAAI,aAAa,EAAE,CAAA;AACvD,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;CACrB;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,aAAa,CAAA;CAC1B;AAED,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,SAAS,GAAG,cAAc,CAAA;AAE7E,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,IAAI,CAAA;IACZ,MAAM,EAAE,IAAI,CAAA;IACZ,QAAQ,EAAE,aAAa,CAAA;CAC1B;AAED,MAAM,MAAM,kBAAkB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,IAAI;KAC3D,CAAC,IAAI,KAAK,GAAG,gBAAgB;CACjC,CAAA;AACD,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,IAAI;KACzD,CAAC,IAAI,KAAK,GAAG,MAAM;CACvB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ports/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,QAAQ,CAAA;CACrB;AAED,MAAM,MAAM,IAAI,GAAG,MAAM,CAAA;AACzB,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,GAAG,IAAI,EAAE,CAAA;AACxC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAC1D,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAA;AACpC,MAAM,MAAM,cAAc,GAAG,GAAG,IAAI,IAAI,aAAa,EAAE,CAAA;AACvD,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;CACrB;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,aAAa,CAAA;CAC1B;AAED,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,SAAS,GAAG,cAAc,CAAA;AAE7E,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,IAAI,CAAA;IACZ,MAAM,EAAE,IAAI,CAAA;IACZ,QAAQ,EAAE,aAAa,CAAA;CAC1B;AAED,MAAM,MAAM,kBAAkB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,IAAI;KAC3D,CAAC,IAAI,KAAK,GAAG,gBAAgB;CACjC,CAAA;AACD,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAC/E,KAAK,GACL;KACK,CAAC,IAAI,KAAK,GAAG,MAAM,GAAG,IAAI;CAC9B,CAAA"}
@@ -1,3 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -15,4 +15,3 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./producer"), exports);
18
- //# sourceMappingURL=index.js.map
@@ -10,4 +10,3 @@ var Producer;
10
10
  }
11
11
  Producer.map = map;
12
12
  })(Producer || (exports.Producer = Producer = {}));
13
- //# sourceMappingURL=producer.js.map
@@ -15,4 +15,3 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./ref-key"), exports);
18
- //# sourceMappingURL=index.js.map