@start9labs/start-sdk 0.3.6-alpha7 → 0.3.6-alpha8

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 (196) hide show
  1. package/cjs/lib/StartSdk.d.ts +2 -17
  2. package/cjs/lib/StartSdk.js +2 -8
  3. package/cjs/lib/StartSdk.js.map +1 -1
  4. package/cjs/lib/backup/Backups.js +2 -1
  5. package/cjs/lib/backup/Backups.js.map +1 -1
  6. package/cjs/lib/backup/setupBackups.d.ts +1 -1
  7. package/cjs/lib/backup/setupBackups.js +2 -1
  8. package/cjs/lib/backup/setupBackups.js.map +1 -1
  9. package/cjs/lib/config/setupConfig.js +2 -1
  10. package/cjs/lib/config/setupConfig.js.map +1 -1
  11. package/cjs/lib/exver/index.d.ts +2 -2
  12. package/cjs/lib/exver/index.js +1 -0
  13. package/cjs/lib/exver/index.js.map +1 -1
  14. package/cjs/lib/health/HealthCheck.js +2 -1
  15. package/cjs/lib/health/HealthCheck.js.map +1 -1
  16. package/cjs/lib/health/checkFns/checkWebUrl.js +2 -1
  17. package/cjs/lib/health/checkFns/checkWebUrl.js.map +1 -1
  18. package/cjs/lib/index.d.ts +1 -0
  19. package/cjs/lib/index.js +4 -0
  20. package/cjs/lib/index.js.map +1 -1
  21. package/cjs/lib/inits/migrations/Migration.d.ts +14 -27
  22. package/cjs/lib/inits/migrations/Migration.js +10 -3
  23. package/cjs/lib/inits/migrations/Migration.js.map +1 -1
  24. package/cjs/lib/inits/migrations/setupMigrations.d.ts +10 -5
  25. package/cjs/lib/inits/migrations/setupMigrations.js +90 -26
  26. package/cjs/lib/inits/migrations/setupMigrations.js.map +1 -1
  27. package/cjs/lib/inits/setupInit.d.ts +2 -2
  28. package/cjs/lib/inits/setupInit.js +29 -5
  29. package/cjs/lib/inits/setupInit.js.map +1 -1
  30. package/cjs/lib/inits/setupInstall.d.ts +1 -1
  31. package/cjs/lib/inits/setupInstall.js +4 -5
  32. package/cjs/lib/inits/setupInstall.js.map +1 -1
  33. package/cjs/lib/inits/setupUninstall.d.ts +1 -1
  34. package/cjs/lib/inits/setupUninstall.js +1 -1
  35. package/cjs/lib/inits/setupUninstall.js.map +1 -1
  36. package/cjs/lib/mainFn/CommandController.d.ts +7 -4
  37. package/cjs/lib/mainFn/CommandController.js +18 -8
  38. package/cjs/lib/mainFn/CommandController.js.map +1 -1
  39. package/cjs/lib/mainFn/Daemon.d.ts +4 -2
  40. package/cjs/lib/mainFn/Daemon.js +7 -2
  41. package/cjs/lib/mainFn/Daemon.js.map +1 -1
  42. package/cjs/lib/mainFn/Daemons.d.ts +2 -2
  43. package/cjs/lib/mainFn/HealthDaemon.d.ts +6 -3
  44. package/cjs/lib/mainFn/HealthDaemon.js +23 -35
  45. package/cjs/lib/mainFn/HealthDaemon.js.map +1 -1
  46. package/cjs/lib/manifest/ManifestTypes.d.ts +1 -10
  47. package/cjs/lib/manifest/setupManifest.d.ts +2 -2
  48. package/cjs/lib/manifest/setupManifest.js +6 -2
  49. package/cjs/lib/manifest/setupManifest.js.map +1 -1
  50. package/cjs/lib/osBindings/Manifest.d.ts +2 -0
  51. package/cjs/lib/osBindings/PackageDataEntry.d.ts +2 -0
  52. package/cjs/lib/osBindings/SetDataVersionParams.d.ts +3 -0
  53. package/cjs/lib/osBindings/SetDataVersionParams.js +4 -0
  54. package/cjs/lib/osBindings/SetDataVersionParams.js.map +1 -0
  55. package/cjs/lib/osBindings/index.d.ts +1 -3
  56. package/cjs/lib/s9pk/merkleArchive/varint.js +2 -1
  57. package/cjs/lib/s9pk/merkleArchive/varint.js.map +1 -1
  58. package/cjs/lib/test/configBuilder.test.js +7 -4
  59. package/cjs/lib/test/configBuilder.test.js.map +1 -1
  60. package/cjs/lib/test/graph.test.d.ts +1 -0
  61. package/cjs/lib/test/graph.test.js +78 -0
  62. package/cjs/lib/test/graph.test.js.map +1 -0
  63. package/cjs/lib/test/output.sdk.d.ts +2 -214
  64. package/cjs/lib/test/output.sdk.js +9 -3
  65. package/cjs/lib/test/output.sdk.js.map +1 -1
  66. package/cjs/lib/test/startosTypeValidation.test.js +2 -0
  67. package/cjs/lib/test/startosTypeValidation.test.js.map +1 -1
  68. package/cjs/lib/types.d.ts +18 -14
  69. package/cjs/lib/types.js.map +1 -1
  70. package/cjs/lib/util/Overlay.d.ts +39 -2
  71. package/cjs/lib/util/Overlay.js +38 -6
  72. package/cjs/lib/util/Overlay.js.map +1 -1
  73. package/cjs/lib/util/asError.d.ts +1 -0
  74. package/cjs/lib/util/asError.js +11 -0
  75. package/cjs/lib/util/asError.js.map +1 -0
  76. package/cjs/lib/util/graph.d.ts +19 -0
  77. package/cjs/lib/util/graph.js +206 -0
  78. package/cjs/lib/util/graph.js.map +1 -0
  79. package/cjs/lib/util/index.d.ts +1 -0
  80. package/cjs/lib/util/index.js +3 -1
  81. package/cjs/lib/util/index.js.map +1 -1
  82. package/cjs/lib/version/VersionGraph.d.ts +18 -0
  83. package/cjs/lib/version/VersionGraph.js +104 -0
  84. package/cjs/lib/version/VersionGraph.js.map +1 -0
  85. package/cjs/lib/version/VersionInfo.d.ts +44 -0
  86. package/cjs/lib/version/VersionInfo.js +48 -0
  87. package/cjs/lib/version/VersionInfo.js.map +1 -0
  88. package/cjs/lib/version/index.d.ts +2 -0
  89. package/cjs/lib/version/index.js +19 -0
  90. package/cjs/lib/version/index.js.map +1 -0
  91. package/cjs/lib/versionInfo/VersionInfo.d.ts +44 -0
  92. package/cjs/lib/versionInfo/VersionInfo.js +48 -0
  93. package/cjs/lib/versionInfo/VersionInfo.js.map +1 -0
  94. package/cjs/lib/versionInfo/setupVersionGraph.d.ts +19 -0
  95. package/cjs/lib/versionInfo/setupVersionGraph.js +108 -0
  96. package/cjs/lib/versionInfo/setupVersionGraph.js.map +1 -0
  97. package/mjs/lib/StartSdk.d.ts +2 -17
  98. package/mjs/lib/StartSdk.js +2 -8
  99. package/mjs/lib/StartSdk.js.map +1 -1
  100. package/mjs/lib/backup/Backups.js +2 -1
  101. package/mjs/lib/backup/Backups.js.map +1 -1
  102. package/mjs/lib/backup/setupBackups.d.ts +1 -1
  103. package/mjs/lib/backup/setupBackups.js +2 -1
  104. package/mjs/lib/backup/setupBackups.js.map +1 -1
  105. package/mjs/lib/config/setupConfig.js +1 -1
  106. package/mjs/lib/config/setupConfig.js.map +1 -1
  107. package/mjs/lib/exver/index.d.ts +2 -2
  108. package/mjs/lib/exver/index.js +1 -0
  109. package/mjs/lib/exver/index.js.map +1 -1
  110. package/mjs/lib/health/HealthCheck.js +2 -1
  111. package/mjs/lib/health/HealthCheck.js.map +1 -1
  112. package/mjs/lib/health/checkFns/checkWebUrl.js +2 -1
  113. package/mjs/lib/health/checkFns/checkWebUrl.js.map +1 -1
  114. package/mjs/lib/index.d.ts +1 -0
  115. package/mjs/lib/index.js +1 -0
  116. package/mjs/lib/index.js.map +1 -1
  117. package/mjs/lib/inits/migrations/Migration.d.ts +14 -27
  118. package/mjs/lib/inits/migrations/Migration.js +9 -2
  119. package/mjs/lib/inits/migrations/Migration.js.map +1 -1
  120. package/mjs/lib/inits/migrations/setupMigrations.d.ts +10 -5
  121. package/mjs/lib/inits/migrations/setupMigrations.js +92 -28
  122. package/mjs/lib/inits/migrations/setupMigrations.js.map +1 -1
  123. package/mjs/lib/inits/setupInit.d.ts +2 -2
  124. package/mjs/lib/inits/setupInit.js +29 -5
  125. package/mjs/lib/inits/setupInit.js.map +1 -1
  126. package/mjs/lib/inits/setupInstall.d.ts +1 -1
  127. package/mjs/lib/inits/setupInstall.js +4 -5
  128. package/mjs/lib/inits/setupInstall.js.map +1 -1
  129. package/mjs/lib/inits/setupUninstall.d.ts +1 -1
  130. package/mjs/lib/inits/setupUninstall.js +1 -1
  131. package/mjs/lib/inits/setupUninstall.js.map +1 -1
  132. package/mjs/lib/mainFn/CommandController.d.ts +7 -4
  133. package/mjs/lib/mainFn/CommandController.js +17 -9
  134. package/mjs/lib/mainFn/CommandController.js.map +1 -1
  135. package/mjs/lib/mainFn/Daemon.d.ts +4 -2
  136. package/mjs/lib/mainFn/Daemon.js +7 -3
  137. package/mjs/lib/mainFn/Daemon.js.map +1 -1
  138. package/mjs/lib/mainFn/Daemons.d.ts +2 -2
  139. package/mjs/lib/mainFn/HealthDaemon.d.ts +6 -3
  140. package/mjs/lib/mainFn/HealthDaemon.js +22 -21
  141. package/mjs/lib/mainFn/HealthDaemon.js.map +1 -1
  142. package/mjs/lib/manifest/ManifestTypes.d.ts +1 -10
  143. package/mjs/lib/manifest/setupManifest.d.ts +2 -2
  144. package/mjs/lib/manifest/setupManifest.js +6 -2
  145. package/mjs/lib/manifest/setupManifest.js.map +1 -1
  146. package/mjs/lib/osBindings/Manifest.d.ts +2 -0
  147. package/mjs/lib/osBindings/PackageDataEntry.d.ts +2 -0
  148. package/mjs/lib/osBindings/SetDataVersionParams.d.ts +3 -0
  149. package/mjs/lib/osBindings/SetDataVersionParams.js +3 -0
  150. package/mjs/lib/osBindings/SetDataVersionParams.js.map +1 -0
  151. package/mjs/lib/osBindings/index.d.ts +1 -3
  152. package/mjs/lib/s9pk/merkleArchive/varint.js +2 -1
  153. package/mjs/lib/s9pk/merkleArchive/varint.js.map +1 -1
  154. package/mjs/lib/test/configBuilder.test.js +7 -4
  155. package/mjs/lib/test/configBuilder.test.js.map +1 -1
  156. package/mjs/lib/test/graph.test.d.ts +1 -0
  157. package/mjs/lib/test/graph.test.js +76 -0
  158. package/mjs/lib/test/graph.test.js.map +1 -0
  159. package/mjs/lib/test/output.sdk.d.ts +2 -214
  160. package/mjs/lib/test/output.sdk.js +9 -3
  161. package/mjs/lib/test/output.sdk.js.map +1 -1
  162. package/mjs/lib/test/startosTypeValidation.test.js +2 -0
  163. package/mjs/lib/test/startosTypeValidation.test.js.map +1 -1
  164. package/mjs/lib/types.d.ts +18 -14
  165. package/mjs/lib/types.js.map +1 -1
  166. package/mjs/lib/util/Overlay.d.ts +39 -2
  167. package/mjs/lib/util/Overlay.js +37 -5
  168. package/mjs/lib/util/Overlay.js.map +1 -1
  169. package/mjs/lib/util/asError.d.ts +1 -0
  170. package/mjs/lib/util/asError.js +7 -0
  171. package/mjs/lib/util/asError.js.map +1 -0
  172. package/mjs/lib/util/graph.d.ts +19 -0
  173. package/mjs/lib/util/graph.js +201 -0
  174. package/mjs/lib/util/graph.js.map +1 -0
  175. package/mjs/lib/util/index.d.ts +1 -0
  176. package/mjs/lib/util/index.js +1 -0
  177. package/mjs/lib/util/index.js.map +1 -1
  178. package/mjs/lib/version/VersionGraph.d.ts +18 -0
  179. package/mjs/lib/version/VersionGraph.js +102 -0
  180. package/mjs/lib/version/VersionGraph.js.map +1 -0
  181. package/mjs/lib/version/VersionInfo.d.ts +44 -0
  182. package/mjs/lib/version/VersionInfo.js +45 -0
  183. package/mjs/lib/version/VersionInfo.js.map +1 -0
  184. package/mjs/lib/version/index.d.ts +2 -0
  185. package/mjs/lib/version/index.js +3 -0
  186. package/mjs/lib/version/index.js.map +1 -0
  187. package/mjs/lib/versionInfo/VersionInfo.d.ts +44 -0
  188. package/mjs/lib/versionInfo/VersionInfo.js +45 -0
  189. package/mjs/lib/versionInfo/VersionInfo.js.map +1 -0
  190. package/mjs/lib/versionInfo/setupVersionGraph.d.ts +19 -0
  191. package/mjs/lib/versionInfo/setupVersionGraph.js +105 -0
  192. package/mjs/lib/versionInfo/setupVersionGraph.js.map +1 -0
  193. package/mjs/lib/versionInfo/setupVersionInfo.d.ts +19 -0
  194. package/mjs/lib/versionInfo/setupVersionInfo.js +105 -0
  195. package/mjs/lib/versionInfo/setupVersionInfo.js.map +1 -0
  196. package/package.json +1 -1
@@ -11,15 +11,17 @@ import { Effects } from "../types";
11
11
  *
12
12
  */
13
13
  export declare class HealthDaemon {
14
- #private;
15
- readonly daemon: Promise<Daemon>;
14
+ private readonly daemon;
16
15
  readonly daemonIndex: number;
17
- readonly dependencies: HealthDaemon[];
16
+ private readonly dependencies;
18
17
  readonly id: string;
19
18
  readonly ids: string[];
20
19
  readonly ready: Ready;
21
20
  readonly effects: Effects;
22
21
  readonly sigtermTimeout: number;
22
+ private _health;
23
+ private healthWatchers;
24
+ private running;
23
25
  constructor(daemon: Promise<Daemon>, daemonIndex: number, dependencies: HealthDaemon[], id: string, ids: string[], ready: Ready, effects: Effects, sigtermTimeout?: number);
24
26
  /** Run after we want to do cleanup */
25
27
  term(termOptions?: {
@@ -30,6 +32,7 @@ export declare class HealthDaemon {
30
32
  addWatcher(watcher: () => unknown): void;
31
33
  get health(): Readonly<HealthCheckResult>;
32
34
  private changeRunning;
35
+ private healthCheckCleanup;
33
36
  private turnOffHealthCheck;
34
37
  private setupHealthCheck;
35
38
  private setHealth;
@@ -1,5 +1,6 @@
1
1
  import { defaultTrigger } from "../trigger/defaultTrigger";
2
2
  import { DEFAULT_SIGTERM_TIMEOUT } from ".";
3
+ import { asError } from "../util/asError";
3
4
  const oncePromise = () => {
4
5
  let resolve;
5
6
  const promise = new Promise((res) => {
@@ -23,9 +24,9 @@ export class HealthDaemon {
23
24
  ready;
24
25
  effects;
25
26
  sigtermTimeout;
26
- #health = { result: "starting", message: null };
27
- #healthWatchers = [];
28
- #running = false;
27
+ _health = { result: "starting", message: null };
28
+ healthWatchers = [];
29
+ running = false;
29
30
  constructor(daemon, daemonIndex, dependencies, id, ids, ready, effects, sigtermTimeout = DEFAULT_SIGTERM_TIMEOUT) {
30
31
  this.daemon = daemon;
31
32
  this.daemonIndex = daemonIndex;
@@ -40,25 +41,25 @@ export class HealthDaemon {
40
41
  }
41
42
  /** Run after we want to do cleanup */
42
43
  async term(termOptions) {
43
- this.#healthWatchers = [];
44
- this.#running = false;
45
- this.#healthCheckCleanup?.();
46
- await this.daemon.then((d) => d.stop({
44
+ this.healthWatchers = [];
45
+ this.running = false;
46
+ this.healthCheckCleanup?.();
47
+ await this.daemon.then((d) => d.term({
47
48
  timeout: this.sigtermTimeout,
48
49
  ...termOptions,
49
50
  }));
50
51
  }
51
52
  /** Want to add another notifier that the health might have changed */
52
53
  addWatcher(watcher) {
53
- this.#healthWatchers.push(watcher);
54
+ this.healthWatchers.push(watcher);
54
55
  }
55
56
  get health() {
56
- return Object.freeze(this.#health);
57
+ return Object.freeze(this._health);
57
58
  }
58
59
  async changeRunning(newStatus) {
59
- if (this.#running === newStatus)
60
+ if (this.running === newStatus)
60
61
  return;
61
- this.#running = newStatus;
62
+ this.running = newStatus;
62
63
  if (newStatus) {
63
64
  ;
64
65
  (await this.daemon).start();
@@ -71,21 +72,21 @@ export class HealthDaemon {
71
72
  this.setHealth({ result: "starting", message: null });
72
73
  }
73
74
  }
74
- #healthCheckCleanup = null;
75
+ healthCheckCleanup = null;
75
76
  turnOffHealthCheck() {
76
- this.#healthCheckCleanup?.();
77
+ this.healthCheckCleanup?.();
77
78
  }
78
79
  async setupHealthCheck() {
79
- if (this.#healthCheckCleanup)
80
+ if (this.healthCheckCleanup)
80
81
  return;
81
82
  const trigger = (this.ready.trigger ?? defaultTrigger)(() => ({
82
- lastResult: this.#health.result,
83
+ lastResult: this._health.result,
83
84
  }));
84
85
  const { promise: status, resolve: setStatus } = oncePromise();
85
86
  new Promise(async () => {
86
87
  for (let res = await Promise.race([status, trigger.next()]); !res.done; res = await Promise.race([status, trigger.next()])) {
87
88
  const response = await Promise.resolve(this.ready.fn()).catch((err) => {
88
- console.error(err);
89
+ console.error(asError(err));
89
90
  return {
90
91
  result: "failure",
91
92
  message: "message" in err ? err.message : String(err),
@@ -94,14 +95,14 @@ export class HealthDaemon {
94
95
  await this.setHealth(response);
95
96
  }
96
97
  }).catch((err) => console.error(`Daemon ${this.id} failed: ${err}`));
97
- this.#healthCheckCleanup = () => {
98
+ this.healthCheckCleanup = () => {
98
99
  setStatus({ done: true });
99
- this.#healthCheckCleanup = null;
100
+ this.healthCheckCleanup = null;
100
101
  };
101
102
  }
102
103
  async setHealth(health) {
103
- this.#health = health;
104
- this.#healthWatchers.forEach((watcher) => watcher());
104
+ this._health = health;
105
+ this.healthWatchers.forEach((watcher) => watcher());
105
106
  const display = this.ready.display;
106
107
  const result = health.result;
107
108
  if (!display) {
@@ -114,7 +115,7 @@ export class HealthDaemon {
114
115
  });
115
116
  }
116
117
  async updateStatus() {
117
- const healths = this.dependencies.map((d) => d.#health);
118
+ const healths = this.dependencies.map((d) => d._health);
118
119
  this.changeRunning(healths.every((x) => x.result === "success"));
119
120
  }
120
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HealthDaemon.js","sourceRoot":"","sources":["../../../../lib/mainFn/HealthDaemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HealthDaemon.js","sourceRoot":"","sources":["../../../../lib/mainFn/HealthDaemon.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,9 @@
1
- import { ValidateExVer, ValidateExVers } from "../exver";
2
1
  import { ImageId, ImageSource } from "../types";
3
- export type SDKManifest<Version extends string, Satisfies extends string[] = []> = {
2
+ export type SDKManifest = {
4
3
  /** The package identifier used by the OS. This must be unique amongst all other known packages */
5
4
  readonly id: string;
6
5
  /** A human readable service title */
7
6
  readonly title: string;
8
- /** Service version - accepts up to four digits, where the last confirms to revisions necessary for StartOs
9
- * - see documentation: https://github.com/Start9Labs/emver-rs. This value will change with each release of
10
- * the service
11
- */
12
- readonly version: Version & ValidateExVer<Version>;
13
- readonly satisfies?: Satisfies & ValidateExVers<Satisfies>;
14
- /** Release notes for the update - can be a string, paragraph or URL */
15
- readonly releaseNotes: string;
16
7
  /** The type of license for the project. Include the LICENSE in the root of the project directory. A license is required for a Start9 package.*/
17
8
  readonly license: string;
18
9
  /** The Start9 wrapper repository URL for the package. This repo contains the manifest file (this),
@@ -1,6 +1,7 @@
1
1
  import * as T from "../types";
2
2
  import { ImageId, VolumeId } from "../osBindings";
3
3
  import { SDKManifest, SDKImageConfig } from "./ManifestTypes";
4
+ import { VersionGraph } from "../version/VersionGraph";
4
5
  /**
5
6
  * This is an example of a function that takes a manifest and returns a new manifest with additional properties
6
7
  * @param manifest Manifests are the description of the package
@@ -12,5 +13,4 @@ export declare function setupManifest<Id extends string, Version extends string,
12
13
  assets: AssetTypes[];
13
14
  images: Record<ImagesTypes, SDKImageConfig>;
14
15
  volumes: VolumesTypes[];
15
- version: Version;
16
- }, Satisfies extends string[] = []>(manifest: SDKManifest<Version, Satisfies> & Manifest): Manifest & T.Manifest;
16
+ }, Satisfies extends string[] = []>(versions: VersionGraph<Version>, manifest: SDKManifest & Manifest): Manifest & T.Manifest;
@@ -4,7 +4,7 @@ import { SDKVersion } from "../StartSdk";
4
4
  * @param manifest Manifests are the description of the package
5
5
  * @returns The manifest with additional properties
6
6
  */
7
- export function setupManifest(manifest) {
7
+ export function setupManifest(versions, manifest) {
8
8
  const images = Object.entries(manifest.images).reduce((images, [k, v]) => {
9
9
  v.arch = v.arch || ["aarch64", "x86_64"];
10
10
  if (v.emulateMissingAs === undefined)
@@ -16,7 +16,11 @@ export function setupManifest(manifest) {
16
16
  ...manifest,
17
17
  gitHash: null,
18
18
  osVersion: SDKVersion,
19
- satisfies: manifest.satisfies || [],
19
+ version: versions.current.options.version,
20
+ releaseNotes: versions.current.options.releaseNotes,
21
+ satisfies: versions.current.options.satisfies || [],
22
+ canMigrateTo: versions.canMigrateTo().toString(),
23
+ canMigrateFrom: versions.canMigrateFrom().toString(),
20
24
  images,
21
25
  alerts: {
22
26
  install: manifest.alerts?.install || null,
@@ -1 +1 @@
1
- {"version":3,"file":"setupManifest.js","sourceRoot":"","sources":["../../../../lib/manifest/setupManifest.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAgB3B,QAAoD;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CACnD,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QACjB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QACxC,IAAI,CAAC,CAAC,gBAAgB,KAAK,SAAS;YAClC,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;QACxC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAgB,CAAA;QAC5B,OAAO,MAAM,CAAA;IACf,CAAC,EACD,EAAkC,CACnC,CAAA;IACD,OAAO;QACL,GAAG,QAAQ;QACX,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,UAAU;QACrB,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,EAAE;QACnC,MAAM;QACN,MAAM,EAAE;YACN,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI;YACzC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI;YACvC,SAAS,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,IAAI,IAAI;YAC7C,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI;YACzC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI;YACrC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI;SACpC;QACD,SAAS,EAAE,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS;QACvE,oBAAoB,EAAE;YACpB,MAAM,EAAE,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAC7D,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAC1B,CACF;YACD,GAAG,EAAE,QAAQ,CAAC,oBAAoB,EAAE,GAAG,IAAI,IAAI;YAC/C,IAAI,EACF,QAAQ,CAAC,oBAAoB,EAAE,IAAI,KAAK,SAAS;gBAC/C,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAC1B,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;oBACf,IAAI,MAAM,CAAC,gBAAgB,EAAE;wBAC3B,OAAO,IAAI,CAAA;qBACZ;oBACD,IAAI,IAAI,KAAK,IAAI,EAAE;wBACjB,OAAO,MAAM,CAAC,IAAI,CAAA;qBACnB;oBACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;gBACpD,CAAC,EACD,IAAuB,CACxB;gBACH,CAAC,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI;SAC1C;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"setupManifest.js","sourceRoot":"","sources":["../../../../lib/manifest/setupManifest.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ export type Manifest = {
13
13
  version: Version;
14
14
  satisfies: Array<Version>;
15
15
  releaseNotes: string;
16
+ canMigrateTo: string;
17
+ canMigrateFrom: string;
16
18
  license: string;
17
19
  wrapperRepo: string;
18
20
  upstreamRepo: string;
@@ -7,8 +7,10 @@ import type { PackageState } from "./PackageState";
7
7
  import type { ServiceInterface } from "./ServiceInterface";
8
8
  import type { ServiceInterfaceId } from "./ServiceInterfaceId";
9
9
  import type { Status } from "./Status";
10
+ import type { Version } from "./Version";
10
11
  export type PackageDataEntry = {
11
12
  stateInfo: PackageState;
13
+ dataVersion: Version | null;
12
14
  status: Status;
13
15
  registry: string | null;
14
16
  developerKey: string;
@@ -0,0 +1,3 @@
1
+ export type SetDataVersionParams = {
2
+ version: string;
3
+ };
@@ -0,0 +1,3 @@
1
+ // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
2
+ export {};
3
+ //# sourceMappingURL=SetDataVersionParams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetDataVersionParams.js","sourceRoot":"","sources":["../../../../lib/osBindings/SetDataVersionParams.ts"],"names":[],"mappings":"AAAA,4GAA4G"}
@@ -91,9 +91,6 @@ export { LanInfo } from "./LanInfo";
91
91
  export { ListServiceInterfacesParams } from "./ListServiceInterfacesParams";
92
92
  export { ListVersionSignersParams } from "./ListVersionSignersParams";
93
93
  export { LoginParams } from "./LoginParams";
94
- export { LshwDevice } from "./LshwDevice";
95
- export { LshwDisplay } from "./LshwDisplay";
96
- export { LshwProcessor } from "./LshwProcessor";
97
94
  export { MainStatus } from "./MainStatus";
98
95
  export { Manifest } from "./Manifest";
99
96
  export { MaybeUtf8String } from "./MaybeUtf8String";
@@ -135,6 +132,7 @@ export { SessionList } from "./SessionList";
135
132
  export { Sessions } from "./Sessions";
136
133
  export { Session } from "./Session";
137
134
  export { SetConfigured } from "./SetConfigured";
135
+ export { SetDataVersionParams } from "./SetDataVersionParams";
138
136
  export { SetDependenciesParams } from "./SetDependenciesParams";
139
137
  export { SetHealth } from "./SetHealth";
140
138
  export { SetMainStatusStatus } from "./SetMainStatusStatus";
@@ -1,3 +1,4 @@
1
+ import { asError } from "../../util/asError";
1
2
  const msb = 0x80;
2
3
  const dropMsb = 0x7f;
3
4
  const maxSize = Math.floor((8 * 8 + 7) / 7);
@@ -36,7 +37,7 @@ export class VarIntProcessor {
36
37
  return result;
37
38
  }
38
39
  else {
39
- console.error(this.buf);
40
+ console.error(asError(this.buf));
40
41
  return null;
41
42
  }
42
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"varint.js","sourceRoot":"","sources":["../../../../../lib/s9pk/merkleArchive/varint.ts"],"names":[],"mappings":"AAAA,MAAM,GAAG,GAAG,IAAI,CAAA;AAChB,MAAM,OAAO,GAAG,IAAI,CAAA;AACpB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;AAE3C,MAAM,OAAO,eAAe;IAClB,GAAG,CAAY;IACf,CAAC,CAAQ;IACjB;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;QAClC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;IACD,IAAI,CAAC,CAAS;QACZ,IAAI,IAAI,CAAC,CAAC,IAAI,OAAO,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACvC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACpB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA;IACb,CAAC;IACD,QAAQ;QACN,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;IACzD,CAAC;IACD,MAAM;QACJ,IAAI,MAAM,GAAG,CAAC,CAAA;QACd,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACrB,MAAM,UAAU,GAAG,CAAC,GAAG,OAAO,CAAA;YAC9B,MAAM,IAAI,UAAU,IAAI,KAAK,CAAA;YAC7B,KAAK,IAAI,CAAC,CAAA;YAEV,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,EAAE;gBACnC,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;gBACzB,MAAK;aACN;SACF;QAED,IAAI,OAAO,EAAE;YACX,OAAO,MAAM,CAAA;SACd;aAAM;YACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACvB,OAAO,IAAI,CAAA;SACZ;IACH,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;IACnC,IAAI,CAAC,GAAG,GAAG,CAAA;IACX,IAAI,CAAC,GAAG,CAAC,CAAA;IAET,OAAO,CAAC,IAAI,GAAG,EAAE;QACf,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;QAChB,CAAC,IAAI,CAAC,CAAA;QACN,CAAC,KAAK,CAAC,CAAA;KACR;IAED,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACV,CAAC,IAAI,CAAC,CAAA;IAEN,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;AAC/B,CAAC"}
1
+ {"version":3,"file":"varint.js","sourceRoot":"","sources":["../../../../../lib/s9pk/merkleArchive/varint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAE5C,MAAM,GAAG,GAAG,IAAI,CAAA;AAChB,MAAM,OAAO,GAAG,IAAI,CAAA;AACpB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;AAE3C,MAAM,OAAO,eAAe;IAClB,GAAG,CAAY;IACf,CAAC,CAAQ;IACjB;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;QAClC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;IACD,IAAI,CAAC,CAAS;QACZ,IAAI,IAAI,CAAC,CAAC,IAAI,OAAO,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACvC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACpB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA;IACb,CAAC;IACD,QAAQ;QACN,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;IACzD,CAAC;IACD,MAAM;QACJ,IAAI,MAAM,GAAG,CAAC,CAAA;QACd,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACrB,MAAM,UAAU,GAAG,CAAC,GAAG,OAAO,CAAA;YAC9B,MAAM,IAAI,UAAU,IAAI,KAAK,CAAA;YAC7B,KAAK,IAAI,CAAC,CAAA;YAEV,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,EAAE;gBACnC,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;gBACzB,MAAK;aACN;SACF;QAED,IAAI,OAAO,EAAE;YACX,OAAO,MAAM,CAAA;SACd;aAAM;YACL,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;YAChC,OAAO,IAAI,CAAA;SACZ;IACH,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;IACnC,IAAI,CAAC,GAAG,GAAG,CAAA;IACX,IAAI,CAAC,GAAG,CAAC,CAAA;IAET,OAAO,CAAC,IAAI,GAAG,EAAE;QACf,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;QAChB,CAAC,IAAI,CAAC,CAAA;QACN,CAAC,KAAK,CAAC,CAAA;KACR;IAED,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACV,CAAC,IAAI,CAAC,CAAA;IAEN,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;AAC/B,CAAC"}
@@ -5,6 +5,8 @@ import { Value } from "../config/builder/value";
5
5
  import { Variants } from "../config/builder/variants";
6
6
  import { setupManifest } from "../manifest/setupManifest";
7
7
  import { StartSdk } from "../StartSdk";
8
+ import { VersionGraph } from "../version/VersionGraph";
9
+ import { VersionInfo } from "../version/VersionInfo";
8
10
  describe("builder tests", () => {
9
11
  test("text", async () => {
10
12
  const bitcoinPropertiesBuilt = await Config.of({
@@ -351,13 +353,14 @@ describe("values", () => {
351
353
  });
352
354
  test("datetime", async () => {
353
355
  const sdk = StartSdk.of()
354
- .withManifest(setupManifest({
355
- id: "testOutput",
356
- title: "",
356
+ .withManifest(setupManifest(VersionGraph.of(VersionInfo.of({
357
357
  version: "1.0.0:0",
358
358
  releaseNotes: "",
359
+ migrations: {},
360
+ })), {
361
+ id: "testOutput",
362
+ title: "",
359
363
  license: "",
360
- replaces: [],
361
364
  wrapperRepo: "",
362
365
  upstreamRepo: "",
363
366
  supportSite: "",
@@ -1 +1 @@
1
- {"version":3,"file":"configBuilder.test.js","sourceRoot":"","sources":["../../../../lib/test/configBuilder.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configBuilder.test.js","sourceRoot":"","sources":["../../../../lib/test/configBuilder.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;QACtB,MAAM,sBAAsB,GAExB,MAAM,MAAM,CAAC,EAAE,CAAC;YAClB,kBAAkB,EAAE,KAAK,CAAC,IAAI,CAAC;gBAC7B,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE,uCAAuC;gBACpD,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;aAC5B,CAAC;SACH,CAAC,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;QACnB,MAAM,CAAC,sBAAsB,CAAC,CAAC,aAAa,CAAC;YAC3C,kBAAkB,EAAE;gBAClB,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,uCAAuC;gBACpD,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,IAAI;gBACjB,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,EAAE;gBACZ,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,MAAM;gBACjB,IAAI,EAAE,kBAAkB;gBACxB,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,IAAI;aACd;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,KAAK;SACf,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAC3B,UAAU,EAAmC,CAAC,IAAI,CAAC,CAAA;IACrD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;YACvB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC5B,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;QAC1C,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACjC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QACvD,UAAU,EAAkC,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;YACvB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;SACjD,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;QAC1C,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACjC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QACvD,UAAU,EAAkC,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;YACvB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;QAC1C,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC1B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QACvB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YACxB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QAC/B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YAC3B,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAM;YACjB,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,IAAI;SACV,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAClC,UAAU,EAAkC,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAM;YACjB,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,IAAI;SACV,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAClC,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI;SAClB,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACjC,UAAU,EAAkC,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YAC3B,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,IAAI;SAClB,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QACvB,UAAU,EAAkC,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QACjC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,IAAI;SAClB,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QACvB,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YAC3B,MAAM,EAAE;gBACN,CAAC,EAAE,GAAG;gBACN,CAAC,EAAE,GAAG;aACP;YACD,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACzB,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QACtD,UAAU,EAAqC,CAAC,IAAI,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QACjC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE;gBACN,CAAC,EAAE,GAAG;gBACN,CAAC,EAAE,GAAG;aACP;YACD,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACzB,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACzB,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC1B,UAAU,EAAwD,CAAC,IAAI,CAAC,CAAA;IAC1E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE;QAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC;YAC9B,IAAI,EAAE,SAAS;YACf,MAAM,EAAE;gBACN,CAAC,EAAE,GAAG;gBACN,CAAC,EAAE,GAAG;aACP;YACD,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI;SAChB,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QACxB,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QAEhC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QACxD,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QACtD,UAAU,EAA4C,CAAC,IAAI,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CACxB;YACE,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;SACd,EACD,MAAM,CAAC,EAAE,CAAC;YACR,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;gBACd,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,KAAK;aACf,CAAC;SACH,CAAC,CACH,CAAA;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QACjC,UAAU,EAA0C,CAAC,IAAI,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QACvB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CACvB;YACE,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YAC3B,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;SACd,EACD,QAAQ,CAAC,EAAE,CAAC;YACV,CAAC,EAAE;gBACD,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;oBACd,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;wBACd,IAAI,EAAE,GAAG;wBACT,WAAW,EAAE,IAAI;wBACjB,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,KAAK;qBACf,CAAC;iBACH,CAAC;aACH;SACF,CAAC,CACH,CAAA;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;QAE7D,UAAU,EAAmD,CAAC,IAAI,CAAC,CAAA;IACrE,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,OAAO;SACR,CAAA;QACR,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YACxB,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC7C,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,KAAK;aACf,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;YAC3B,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;YACvD,UAAU,EAAmC,CAAC,IAAI,CAAC,CAAA;YACnD,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,KAAK;aACf,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC3C,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;aAC5B,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;YAC1C,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;YACrE,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,IAAI;aACd,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;YACnC,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC3C,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;aACjD,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;YACrE,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,yBAAyB;aACnC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC3C,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;YAC1C,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;YACrE,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;aACd,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACvB,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC5C,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YAC/B,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;YACrE,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YAC1B,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,EAAE;iBACtB,YAAY,CACX,aAAa,CACX,YAAY,CAAC,EAAE,CACb,WAAW,CAAC,EAAE,CAAC;gBACb,OAAO,EAAE,SAAS;gBAClB,YAAY,EAAE,EAAE;gBAChB,UAAU,EAAE,EAAE;aACf,CAAC,CACH,EACD;gBACE,EAAE,EAAE,YAAY;gBAChB,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,EAAE;gBACf,YAAY,EAAE,EAAE;gBAChB,WAAW,EAAE,EAAE;gBACf,aAAa,EAAE,EAAE;gBACjB,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE;oBACX,KAAK,EAAE,EAAE;oBACT,IAAI,EAAE,EAAE;iBACT;gBACD,UAAU,EAAE,EAAE;gBACd,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,EAAE;gBACX,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE;oBACN,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,IAAI;oBACZ,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,IAAI;iBACX;gBACD,YAAY,EAAE;oBACZ,aAAa,EAAE;wBACb,WAAW,EAAE,EAAE;wBACf,QAAQ,EAAE,IAAI;wBACd,IAAI,EAAE,sCAAsC;qBAC7C;iBACF;aACF,CACF,CACF;iBACA,SAAS,EAAiB;iBAC1B,KAAK,CAAC,IAAI,CAAC,CAAA;YAEd,MAAM,KAAK,GAAG,KAAK,CAAC,eAAe,CACjC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;gBACpB,CAAC;gBAAA,KAAK,IAAI,EAAE;oBACV,CAAC;oBAAA,CAAC,MAAM,GAAG,CAAC,KAAK;yBACd,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;yBACnC,IAAI,EAAE,CAAe,CAAA;gBAC1B,CAAC,CAAA;gBAED,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;oBAC3B,SAAS,EAAE,MAAM;iBAClB,CAAA;YACH,CAAC,CACF,CAAA;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;YAClC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;YACrE,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,MAAM;aAClB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,eAAe,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC/C,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YACjC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;YACvD,UAAU,EAAkC,CAAC,IAAI,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YACxB,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvC,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC3B,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,GAAG,EAAE,IAAI;gBACT,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YACvB,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1B,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;YACzD,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;YACrE,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;aACf,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YACxB,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvC,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC3B,MAAM,EAAE;oBACN,CAAC,EAAE,GAAG;oBACN,CAAC,EAAE,GAAG;iBACP;gBACD,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YACzB,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YACzB,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YACzB,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC1B,UAAU,EAAqD,CAAC,IAAI,CAAC,CAAA;YACrE,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;aACf,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE;YAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC5C,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE;oBACN,CAAC,EAAE,GAAG;oBACN,CAAC,EAAE,GAAG;iBACP;gBACD,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC,CAAA;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;YACxB,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;YAChC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAE3B,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;YACtD,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;YACvD,UAAU,EAAyC,CAAC,IAAI,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,EAAE;aACZ,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACvB,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAC/B,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAChB;gBACE,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC3B,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;aACd,EACD,QAAQ,CAAC,EAAE,CAAC;gBACV,CAAC,EAAE;oBACD,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;wBACd,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;4BACd,IAAI,EAAE,GAAG;4BACT,WAAW,EAAE,IAAI;4BACjB,OAAO,EAAE,IAAI;4BACb,OAAO,EAAE,KAAK;yBACf,CAAC;qBACH,CAAC;iBACH;gBACD,CAAC,EAAE;oBACD,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;wBACd,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;4BACd,IAAI,EAAE,GAAG;4BACT,WAAW,EAAE,IAAI;4BACjB,OAAO,EAAE,IAAI;4BACb,OAAO,EAAE,KAAK;yBACf,CAAC;qBACH,CAAC;iBACH;aACF,CAAC,CACH,CAAA;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;YAE7D,UAAU,EAIP,CAAC,IAAI,CAAC,CAAA;YAET,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;YAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;gBAC1B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE;oBACR,CAAC,EAAE,EAAE;iBACN;aACF,CAAC,CAAA;YACF,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;gBAC1B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE;oBACR,CAAC,EAAE,EAAE;oBACL,CAAC,EAAE,EAAE;iBACN;aACF,CAAC,CAAA;YACF,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;gBAC1B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE;oBACR,CAAC,EAAE,EAAE;oBACL,CAAC,EAAE,EAAE;iBACN;gBACD,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;aACrB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAC9B,GAAG,EAAE,CAAC,CAAC;YACL,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YACpB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YAC3B,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;SACd,CAAC,EACF,QAAQ,CAAC,EAAE,CAAC;YACV,CAAC,EAAE;gBACD,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;oBACd,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;wBACd,IAAI,EAAE,GAAG;wBACT,WAAW,EAAE,IAAI;wBACjB,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,KAAK;qBACf,CAAC;iBACH,CAAC;aACH;YACD,CAAC,EAAE;gBACD,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;oBACd,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;wBACd,IAAI,EAAE,GAAG;wBACT,WAAW,EAAE,IAAI;wBACjB,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,KAAK;qBACf,CAAC;iBACH,CAAC;aACH;SACF,CAAC,CACH,CAAA;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;QAE7D,UAAU,EAMP,CAAC,IAAI,CAAC,CAAA;QAET,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;QAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;YAC1B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE;gBACR,CAAC,EAAE,EAAE;aACN;SACF,CAAC,CAAA;QACF,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;YAC1B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE;gBACR,CAAC,EAAE,EAAE;gBACL,CAAC,EAAE,EAAE;aACN;SACF,CAAC,CAAA;QACF,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;YAC1B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE;gBACR,CAAC,EAAE,EAAE;gBACL,CAAC,EAAE,EAAE;aACN;YACD,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;SACrB,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QACrB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CACtB,IAAI,CAAC,GAAG,CACN;YACE,IAAI,EAAE,MAAM;SACb,EACD;YACE,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;gBACd,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,WAAW,EAAE,IAAI;oBACjB,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,KAAK;iBACf,CAAC;aACH,CAAC;SACH,CACF,CACF,CAAA;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACtC,UAAU,EAA+C,CAAC,IAAI,CAAC,CAAA;IACjE,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CACtB,IAAI,CAAC,IAAI,CACP;YACE,IAAI,EAAE,MAAM;SACb,EACD;YACE,QAAQ,EAAE,EAAE;SACb,CACF,CACF,CAAA;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;QACtC,UAAU,EAAoC,CAAC,IAAI,CAAC,CAAA;IACtD,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CACtB,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;gBACtB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;aACvB,CAAC,CAAC,CACJ,CAAA;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,SAAS,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;YACtC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;YACzD,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;YACvD,UAAU,EAAoC,CAAC,IAAI,CAAC,CAAA;YACpD,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,EAAS,CAAC,CAAC,CAAC,aAAa,CAAC;gBACjD,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;aACvB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAI,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;YACtB,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,WAAW;gBACjB,WAAW,EACT,2DAA2D;gBAC7D,QAAQ,EAAE,KAAK;aAChB,CAAC;SACH,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QAC3D,UAAU,EAA4D,CAAC,IAAI,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;YACtB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;gBACd,IAAI,EAAE,WAAW;gBACjB,WAAW,EACT,2DAA2D;gBAC7D,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,KAAK;gBACd,GAAG,EAAE,IAAI;gBACT,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;aACZ,CAAC;SACH,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAC9B,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QAC7D,UAAU,EAA4D,CAAC,IAAI,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;YACtB,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;gBACb,IAAI,EAAE,WAAW;gBACjB,WAAW,EACT,2DAA2D;gBAC7D,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;aACd,CAAC;SACH,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;QAChC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QAC3D,UAAU,EAA4D,CAAC,IAAI,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;YACtB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;gBACd,IAAI,EAAE,WAAW;gBACjB,WAAW,EACT,2DAA2D;gBAC7D,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE;oBACN,CAAC,EAAE,GAAG;iBACP;aACF,CAAC;SACH,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YAChC,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,2DAA2D;YACxE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,IAAI;YACb,MAAM,EAAE;gBACN,CAAC,EAAE,GAAG;aACP;SACF,CAAC,CAAC,KAAK,CAAC,EAAS,CAAC,CAAA;QAEnB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;QAChC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QAC7D,UAAU,EAAyD,CAAC,IAAI,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;QACrC,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;YACtB,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;gBACnB,IAAI,EAAE,WAAW;gBACjB,WAAW,EACT,2DAA2D;gBAE7D,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,EAAE;gBACX,MAAM,EAAE;oBACN,CAAC,EAAE,GAAG;iBACP;gBACD,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;aAChB,CAAC;SACH,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QAC/B,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAClC,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QAC/D,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;QAC7D,UAAU,EAAwC,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,76 @@
1
+ import { Graph } from "../util/graph";
2
+ describe("graph", () => {
3
+ {
4
+ {
5
+ test("findVertex", () => {
6
+ const graph = new Graph();
7
+ const foo = graph.addVertex("foo", [], []);
8
+ const bar = graph.addVertex("bar", [{ from: foo, metadata: "foo-bar" }], []);
9
+ const baz = graph.addVertex("baz", [{ from: bar, metadata: "bar-baz" }], []);
10
+ const qux = graph.addVertex("qux", [{ from: baz, metadata: "baz-qux" }], []);
11
+ const match = Array.from(graph.findVertex((v) => v.metadata === "qux"));
12
+ expect(match).toHaveLength(1);
13
+ expect(match[0]).toBe(qux);
14
+ });
15
+ test("shortestPathA", () => {
16
+ const graph = new Graph();
17
+ const foo = graph.addVertex("foo", [], []);
18
+ const bar = graph.addVertex("bar", [{ from: foo, metadata: "foo-bar" }], []);
19
+ const baz = graph.addVertex("baz", [{ from: bar, metadata: "bar-baz" }], []);
20
+ const qux = graph.addVertex("qux", [{ from: baz, metadata: "baz-qux" }], []);
21
+ graph.addEdge("foo-qux", foo, qux);
22
+ expect(graph.shortestPath(foo, qux) || []).toHaveLength(1);
23
+ });
24
+ test("shortestPathB", () => {
25
+ const graph = new Graph();
26
+ const foo = graph.addVertex("foo", [], []);
27
+ const bar = graph.addVertex("bar", [{ from: foo, metadata: "foo-bar" }], []);
28
+ const baz = graph.addVertex("baz", [{ from: bar, metadata: "bar-baz" }], []);
29
+ const qux = graph.addVertex("qux", [{ from: baz, metadata: "baz-qux" }], []);
30
+ graph.addEdge("bar-qux", bar, qux);
31
+ expect(graph.shortestPath(foo, qux) || []).toHaveLength(2);
32
+ });
33
+ test("shortestPathC", () => {
34
+ const graph = new Graph();
35
+ const foo = graph.addVertex("foo", [], []);
36
+ const bar = graph.addVertex("bar", [{ from: foo, metadata: "foo-bar" }], []);
37
+ const baz = graph.addVertex("baz", [{ from: bar, metadata: "bar-baz" }], []);
38
+ const qux = graph.addVertex("qux", [{ from: baz, metadata: "baz-qux" }], [{ to: foo, metadata: "qux-foo" }]);
39
+ expect(graph.shortestPath(foo, qux) || []).toHaveLength(3);
40
+ });
41
+ test("bfs", () => {
42
+ const graph = new Graph();
43
+ const foo = graph.addVertex("foo", [], []);
44
+ const bar = graph.addVertex("bar", [{ from: foo, metadata: "foo-bar" }], []);
45
+ const baz = graph.addVertex("baz", [{ from: bar, metadata: "bar-baz" }], []);
46
+ const qux = graph.addVertex("qux", [
47
+ { from: foo, metadata: "foo-qux" },
48
+ { from: baz, metadata: "baz-qux" },
49
+ ], []);
50
+ const bfs = Array.from(graph.breadthFirstSearch(foo));
51
+ expect(bfs).toHaveLength(4);
52
+ expect(bfs[0]).toBe(foo);
53
+ expect(bfs[1]).toBe(bar);
54
+ expect(bfs[2]).toBe(qux);
55
+ expect(bfs[3]).toBe(baz);
56
+ });
57
+ test("reverseBfs", () => {
58
+ const graph = new Graph();
59
+ const foo = graph.addVertex("foo", [], []);
60
+ const bar = graph.addVertex("bar", [{ from: foo, metadata: "foo-bar" }], []);
61
+ const baz = graph.addVertex("baz", [{ from: bar, metadata: "bar-baz" }], []);
62
+ const qux = graph.addVertex("qux", [
63
+ { from: foo, metadata: "foo-qux" },
64
+ { from: baz, metadata: "baz-qux" },
65
+ ], []);
66
+ const bfs = Array.from(graph.reverseBreadthFirstSearch(qux));
67
+ expect(bfs).toHaveLength(4);
68
+ expect(bfs[0]).toBe(qux);
69
+ expect(bfs[1]).toBe(foo);
70
+ expect(bfs[2]).toBe(baz);
71
+ expect(bfs[3]).toBe(bar);
72
+ });
73
+ }
74
+ }
75
+ });
76
+ //# sourceMappingURL=graph.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph.test.js","sourceRoot":"","sources":["../../../../lib/test/graph.test.ts"],"names":[],"mappings":"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"}