@bgord/bun 1.1.5 → 1.1.6

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 (117) hide show
  1. package/dist/healthcheck.service.d.ts +7 -4
  2. package/dist/healthcheck.service.d.ts.map +1 -1
  3. package/dist/healthcheck.service.js +1 -1
  4. package/dist/healthcheck.service.js.map +1 -1
  5. package/dist/prerequisites/binary.d.ts +2 -1
  6. package/dist/prerequisites/binary.d.ts.map +1 -1
  7. package/dist/prerequisites/binary.js +7 -5
  8. package/dist/prerequisites/binary.js.map +1 -1
  9. package/dist/prerequisites/bun.d.ts +2 -1
  10. package/dist/prerequisites/bun.d.ts.map +1 -1
  11. package/dist/prerequisites/bun.js +10 -5
  12. package/dist/prerequisites/bun.js.map +1 -1
  13. package/dist/prerequisites/clock-drift.d.ts +2 -2
  14. package/dist/prerequisites/clock-drift.d.ts.map +1 -1
  15. package/dist/prerequisites/clock-drift.js +7 -5
  16. package/dist/prerequisites/clock-drift.js.map +1 -1
  17. package/dist/prerequisites/dependency-vulnerabilities.d.ts +2 -1
  18. package/dist/prerequisites/dependency-vulnerabilities.d.ts.map +1 -1
  19. package/dist/prerequisites/dependency-vulnerabilities.js +8 -6
  20. package/dist/prerequisites/dependency-vulnerabilities.js.map +1 -1
  21. package/dist/prerequisites/directory.d.ts +3 -2
  22. package/dist/prerequisites/directory.d.ts.map +1 -1
  23. package/dist/prerequisites/directory.js +6 -4
  24. package/dist/prerequisites/directory.js.map +1 -1
  25. package/dist/prerequisites/external-api.d.ts +2 -1
  26. package/dist/prerequisites/external-api.d.ts.map +1 -1
  27. package/dist/prerequisites/external-api.js +7 -5
  28. package/dist/prerequisites/external-api.js.map +1 -1
  29. package/dist/prerequisites/jobs.d.ts +2 -1
  30. package/dist/prerequisites/jobs.d.ts.map +1 -1
  31. package/dist/prerequisites/jobs.js +6 -4
  32. package/dist/prerequisites/jobs.js.map +1 -1
  33. package/dist/prerequisites/log-file.d.ts +2 -1
  34. package/dist/prerequisites/log-file.d.ts.map +1 -1
  35. package/dist/prerequisites/log-file.js +7 -5
  36. package/dist/prerequisites/log-file.js.map +1 -1
  37. package/dist/prerequisites/mailer.d.ts +2 -1
  38. package/dist/prerequisites/mailer.d.ts.map +1 -1
  39. package/dist/prerequisites/mailer.js +6 -4
  40. package/dist/prerequisites/mailer.js.map +1 -1
  41. package/dist/prerequisites/memory.d.ts +2 -1
  42. package/dist/prerequisites/memory.d.ts.map +1 -1
  43. package/dist/prerequisites/memory.js +5 -4
  44. package/dist/prerequisites/memory.js.map +1 -1
  45. package/dist/prerequisites/node.d.ts +2 -1
  46. package/dist/prerequisites/node.d.ts.map +1 -1
  47. package/dist/prerequisites/node.js +8 -5
  48. package/dist/prerequisites/node.js.map +1 -1
  49. package/dist/prerequisites/outside-connectivity.d.ts +2 -1
  50. package/dist/prerequisites/outside-connectivity.d.ts.map +1 -1
  51. package/dist/prerequisites/outside-connectivity.js +7 -5
  52. package/dist/prerequisites/outside-connectivity.js.map +1 -1
  53. package/dist/prerequisites/port.d.ts +2 -1
  54. package/dist/prerequisites/port.d.ts.map +1 -1
  55. package/dist/prerequisites/port.js +6 -4
  56. package/dist/prerequisites/port.js.map +1 -1
  57. package/dist/prerequisites/ram.d.ts +2 -1
  58. package/dist/prerequisites/ram.d.ts.map +1 -1
  59. package/dist/prerequisites/ram.js +7 -4
  60. package/dist/prerequisites/ram.js.map +1 -1
  61. package/dist/prerequisites/running-user.d.ts +2 -1
  62. package/dist/prerequisites/running-user.d.ts.map +1 -1
  63. package/dist/prerequisites/running-user.js +6 -4
  64. package/dist/prerequisites/running-user.js.map +1 -1
  65. package/dist/prerequisites/self.d.ts +2 -1
  66. package/dist/prerequisites/self.d.ts.map +1 -1
  67. package/dist/prerequisites/self.js +5 -3
  68. package/dist/prerequisites/self.js.map +1 -1
  69. package/dist/prerequisites/space.d.ts +2 -1
  70. package/dist/prerequisites/space.d.ts.map +1 -1
  71. package/dist/prerequisites/space.js +6 -5
  72. package/dist/prerequisites/space.js.map +1 -1
  73. package/dist/prerequisites/sqlite.d.ts +2 -1
  74. package/dist/prerequisites/sqlite.d.ts.map +1 -1
  75. package/dist/prerequisites/sqlite.js +7 -5
  76. package/dist/prerequisites/sqlite.js.map +1 -1
  77. package/dist/prerequisites/ssl-certificate-expiry.d.ts +2 -1
  78. package/dist/prerequisites/ssl-certificate-expiry.d.ts.map +1 -1
  79. package/dist/prerequisites/ssl-certificate-expiry.js +9 -5
  80. package/dist/prerequisites/ssl-certificate-expiry.js.map +1 -1
  81. package/dist/prerequisites/timezone-utc.d.ts +3 -2
  82. package/dist/prerequisites/timezone-utc.d.ts.map +1 -1
  83. package/dist/prerequisites/timezone-utc.js +6 -4
  84. package/dist/prerequisites/timezone-utc.js.map +1 -1
  85. package/dist/prerequisites/translations.d.ts +2 -1
  86. package/dist/prerequisites/translations.d.ts.map +1 -1
  87. package/dist/prerequisites/translations.js +8 -6
  88. package/dist/prerequisites/translations.js.map +1 -1
  89. package/dist/prerequisites.service.d.ts +24 -14
  90. package/dist/prerequisites.service.d.ts.map +1 -1
  91. package/dist/prerequisites.service.js +15 -11
  92. package/dist/prerequisites.service.js.map +1 -1
  93. package/dist/tsconfig.tsbuildinfo +1 -1
  94. package/package.json +2 -2
  95. package/src/healthcheck.service.ts +1 -1
  96. package/src/prerequisites/binary.ts +9 -5
  97. package/src/prerequisites/bun.ts +12 -5
  98. package/src/prerequisites/clock-drift.ts +8 -6
  99. package/src/prerequisites/dependency-vulnerabilities.ts +11 -6
  100. package/src/prerequisites/directory.ts +8 -5
  101. package/src/prerequisites/external-api.ts +9 -5
  102. package/src/prerequisites/jobs.ts +8 -4
  103. package/src/prerequisites/log-file.ts +9 -5
  104. package/src/prerequisites/mailer.ts +8 -4
  105. package/src/prerequisites/memory.ts +7 -4
  106. package/src/prerequisites/node.ts +10 -5
  107. package/src/prerequisites/outside-connectivity.ts +9 -5
  108. package/src/prerequisites/port.ts +10 -4
  109. package/src/prerequisites/ram.ts +9 -4
  110. package/src/prerequisites/running-user.ts +8 -4
  111. package/src/prerequisites/self.ts +7 -3
  112. package/src/prerequisites/space.ts +8 -5
  113. package/src/prerequisites/sqlite.ts +9 -5
  114. package/src/prerequisites/ssl-certificate-expiry.ts +12 -5
  115. package/src/prerequisites/timezone-utc.ts +8 -5
  116. package/src/prerequisites/translations.ts +10 -7
  117. package/src/prerequisites.service.ts +30 -15
@@ -1,4 +1,5 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "../clock.port";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export declare class PrerequisiteMemory implements prereqs.Prerequisite {
4
5
  readonly kind = "memory";
@@ -8,6 +9,6 @@ export declare class PrerequisiteMemory implements prereqs.Prerequisite {
8
9
  constructor(config: prereqs.PrerequisiteConfigType & {
9
10
  maximum: tools.Size;
10
11
  });
11
- verify(): Promise<prereqs.VerifyOutcome>;
12
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
12
13
  }
13
14
  //# sourceMappingURL=memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/prerequisites/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,kBAAmB,YAAW,OAAO,CAAC,YAAY;IAC7D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;gBAEzB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAA;KAAE;IAOtE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAY/C"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/prerequisites/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,kBAAmB,YAAW,OAAO,CAAC,YAAY;IAC7D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;gBAEzB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAA;KAAE;IAOtE,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAc/D"}
@@ -11,16 +11,17 @@ export class PrerequisiteMemory {
11
11
  this.enabled = config.enabled === undefined ? true : config.enabled;
12
12
  this.maximum = config.maximum;
13
13
  }
14
- async verify() {
14
+ async verify(clock) {
15
+ const stopwatch = new tools.Stopwatch(clock.now());
15
16
  if (!this.enabled)
16
- return prereqs.Verification.undetermined();
17
+ return prereqs.Verification.undetermined(stopwatch.stop());
17
18
  const memoryConsumption = MemoryConsumption.get();
18
19
  if (memoryConsumption.isGreaterThan(this.maximum)) {
19
- return prereqs.Verification.failure({
20
+ return prereqs.Verification.failure(stopwatch.stop(), {
20
21
  message: `Memory consumption: ${memoryConsumption.format(tools.Size.unit.MB)}`,
21
22
  });
22
23
  }
23
- return prereqs.Verification.success();
24
+ return prereqs.Verification.success(stopwatch.stop());
24
25
  }
25
26
  }
26
27
  //# sourceMappingURL=memory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/prerequisites/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,QAAQ,CAAC;IAChB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAa;IAErC,YAAY,MAAgE;QAC1E,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC;QAElD,IAAI,iBAAiB,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC;gBAClC,OAAO,EAAE,uBAAuB,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;aAC/E,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/prerequisites/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,QAAQ,CAAC;IAChB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAa;IAErC,YAAY,MAAgE;QAC1E,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC;QAElD,IAAI,iBAAiB,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;gBACpD,OAAO,EAAE,uBAAuB,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;aAC/E,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "../clock.port";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export declare class PrerequisiteNode implements prereqs.Prerequisite {
4
5
  readonly kind = "node";
@@ -10,6 +11,6 @@ export declare class PrerequisiteNode implements prereqs.Prerequisite {
10
11
  version: tools.PackageVersion;
11
12
  current: string;
12
13
  });
13
- verify(): Promise<prereqs.VerifyOutcome>;
14
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
14
15
  }
15
16
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/prerequisites/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gBAAiB,YAAW,OAAO,CAAC,YAAY;IAC3D,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAQjG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAY/C"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/prerequisites/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gBAAiB,YAAW,OAAO,CAAC,YAAY;IAC3D,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAQjG,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAgB/D"}
@@ -12,17 +12,20 @@ export class PrerequisiteNode {
12
12
  this.version = config.version;
13
13
  this.current = config.current;
14
14
  }
15
- async verify() {
15
+ async verify(clock) {
16
+ const stopwatch = new tools.Stopwatch(clock.now());
16
17
  if (!this.enabled)
17
- return prereqs.Verification.undetermined();
18
+ return prereqs.Verification.undetermined(stopwatch.stop());
18
19
  try {
19
20
  const current = tools.PackageVersion.fromStringWithV(this.current);
20
21
  if (current.isGreaterThanOrEqual(this.version))
21
- return prereqs.Verification.success();
22
- return prereqs.Verification.failure({ message: `Version: ${this.current}` });
22
+ return prereqs.Verification.success(stopwatch.stop());
23
+ return prereqs.Verification.failure(stopwatch.stop(), { message: `Version: ${this.current}` });
23
24
  }
24
25
  catch {
25
- return prereqs.Verification.failure({ message: `Invalid version passed: ${this.current}` });
26
+ return prereqs.Verification.failure(stopwatch.stop(), {
27
+ message: `Invalid version passed: ${this.current}`,
28
+ });
26
29
  }
27
30
  }
28
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/prerequisites/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IAClB,IAAI,GAAG,MAAM,CAAC;IACd,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAuB;IAC9B,OAAO,CAAS;IAEjC,YAAY,MAA2F;QACrG,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEnE,IAAI,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YACtF,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC/E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,2BAA2B,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/prerequisites/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IAClB,IAAI,GAAG,MAAM,CAAC;IACd,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAuB;IAC9B,OAAO,CAAS;IAEjC,YAAY,MAA2F;QACrG,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEnE,IAAI,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACtG,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjG,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;gBACpD,OAAO,EAAE,2BAA2B,IAAI,CAAC,OAAO,EAAE;aACnD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
@@ -1,3 +1,4 @@
1
+ import type { ClockPort } from "../clock.port";
1
2
  import * as prereqs from "../prerequisites.service";
2
3
  export declare class PrerequisiteOutsideConnectivity implements prereqs.Prerequisite {
3
4
  readonly kind = "outside-connectivity";
@@ -5,6 +6,6 @@ export declare class PrerequisiteOutsideConnectivity implements prereqs.Prerequi
5
6
  readonly enabled?: boolean;
6
7
  private readonly url;
7
8
  constructor(config: prereqs.PrerequisiteConfigType);
8
- verify(): Promise<prereqs.VerifyOutcome>;
9
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
9
10
  }
10
11
  //# sourceMappingURL=outside-connectivity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"outside-connectivity.d.ts","sourceRoot":"","sources":["../../src/prerequisites/outside-connectivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,+BAAgC,YAAW,OAAO,CAAC,YAAY;IAC1E,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAwB;gBAEhC,MAAM,EAAE,OAAO,CAAC,sBAAsB;IAK5C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAY/C"}
1
+ {"version":3,"file":"outside-connectivity.d.ts","sourceRoot":"","sources":["../../src/prerequisites/outside-connectivity.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,+BAAgC,YAAW,OAAO,CAAC,YAAY;IAC1E,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAwB;gBAEhC,MAAM,EAAE,OAAO,CAAC,sBAAsB;IAK5C,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAc/D"}
@@ -1,3 +1,4 @@
1
+ import * as tools from "@bgord/tools";
1
2
  import * as prereqs from "../prerequisites.service";
2
3
  export class PrerequisiteOutsideConnectivity {
3
4
  kind = "outside-connectivity";
@@ -8,17 +9,18 @@ export class PrerequisiteOutsideConnectivity {
8
9
  this.label = config.label;
9
10
  this.enabled = config.enabled === undefined ? true : config.enabled;
10
11
  }
11
- async verify() {
12
+ async verify(clock) {
13
+ const stopwatch = new tools.Stopwatch(clock.now());
12
14
  try {
13
15
  if (!this.enabled)
14
- return prereqs.Verification.undetermined();
16
+ return prereqs.Verification.undetermined(stopwatch.stop());
15
17
  const response = await fetch(this.url, { method: "HEAD" });
16
18
  if (response.ok)
17
- return prereqs.Verification.success();
18
- return prereqs.Verification.failure({ message: `HTTP ${response.status}` });
19
+ return prereqs.Verification.success(stopwatch.stop());
20
+ return prereqs.Verification.failure(stopwatch.stop(), { message: `HTTP ${response.status}` });
19
21
  }
20
22
  catch (error) {
21
- return prereqs.Verification.failure(error);
23
+ return prereqs.Verification.failure(stopwatch.stop(), error);
22
24
  }
23
25
  }
24
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"outside-connectivity.js","sourceRoot":"","sources":["../../src/prerequisites/outside-connectivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,+BAA+B;IACjC,IAAI,GAAG,sBAAsB,CAAC;IAC9B,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,GAAG,GAAG,oBAAoB,CAAC;IAE5C,YAAY,MAAsC;QAChD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YAE9D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAE3D,IAAI,QAAQ,CAAC,EAAE;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YACvD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAc,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"outside-connectivity.js","sourceRoot":"","sources":["../../src/prerequisites/outside-connectivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,+BAA+B;IACjC,IAAI,GAAG,sBAAsB,CAAC;IAC9B,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,GAAG,GAAG,oBAAoB,CAAC;IAE5C,YAAY,MAAsC;QAChD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YAE9E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAE3D,IAAI,QAAQ,CAAC,EAAE;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACvE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,KAAc,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;CACF"}
@@ -1,3 +1,4 @@
1
+ import type { ClockPort } from "../clock.port";
1
2
  import type { PortType } from "../port.vo";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export declare class PrerequisitePort implements prereqs.Prerequisite {
@@ -8,6 +9,6 @@ export declare class PrerequisitePort implements prereqs.Prerequisite {
8
9
  constructor(config: prereqs.PrerequisiteConfigType & {
9
10
  port: PortType;
10
11
  });
11
- verify(): Promise<prereqs.VerifyOutcome>;
12
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
12
13
  }
13
14
  //# sourceMappingURL=port.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../src/prerequisites/port.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gBAAiB,YAAW,OAAO,CAAC,YAAY;IAC3D,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAW;gBAEpB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE;IAOjE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAS/C"}
1
+ {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../src/prerequisites/port.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gBAAiB,YAAW,OAAO,CAAC,YAAY;IAC3D,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAW;gBAEpB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE;IAOjE,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAa/D"}
@@ -1,4 +1,5 @@
1
1
  import net from "node:net";
2
+ import * as tools from "@bgord/tools";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export class PrerequisitePort {
4
5
  kind = "port";
@@ -10,13 +11,14 @@ export class PrerequisitePort {
10
11
  this.enabled = config.enabled === undefined ? true : config.enabled;
11
12
  this.port = config.port;
12
13
  }
13
- async verify() {
14
+ async verify(clock) {
15
+ const stopwatch = new tools.Stopwatch(clock.now());
14
16
  if (!this.enabled)
15
- return prereqs.Verification.undetermined();
17
+ return prereqs.Verification.undetermined(stopwatch.stop());
16
18
  return new Promise((resolve) => {
17
19
  const server = net.createServer();
18
- server.listen(this.port, () => server.close(() => resolve(prereqs.Verification.success())));
19
- server.on("error", () => resolve(prereqs.Verification.failure()));
20
+ server.listen(this.port, () => server.close(() => resolve(prereqs.Verification.success(stopwatch.stop()))));
21
+ server.on("error", () => resolve(prereqs.Verification.failure(stopwatch.stop())));
20
22
  });
21
23
  }
22
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"port.js","sourceRoot":"","sources":["../../src/prerequisites/port.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IAClB,IAAI,GAAG,MAAM,CAAC;IACd,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,IAAI,CAAW;IAEhC,YAAY,MAA2D;QACrE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5F,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"port.js","sourceRoot":"","sources":["../../src/prerequisites/port.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IAClB,IAAI,GAAG,MAAM,CAAC;IACd,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,IAAI,CAAW;IAEhC,YAAY,MAA2D;QACrE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAC5B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAC5E,CAAC;YACF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "../clock.port";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export declare class PrerequisiteRAM implements prereqs.Prerequisite {
4
5
  readonly kind = "ram";
@@ -8,6 +9,6 @@ export declare class PrerequisiteRAM implements prereqs.Prerequisite {
8
9
  constructor(config: prereqs.PrerequisiteConfigType & {
9
10
  minimum: tools.Size;
10
11
  });
11
- verify(): Promise<prereqs.VerifyOutcome>;
12
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
12
13
  }
13
14
  //# sourceMappingURL=ram.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ram.d.ts","sourceRoot":"","sources":["../../src/prerequisites/ram.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,eAAgB,YAAW,OAAO,CAAC,YAAY;IAC1D,QAAQ,CAAC,IAAI,SAAS;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;gBAEzB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAA;KAAE;IAOtE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAQ/C"}
1
+ {"version":3,"file":"ram.d.ts","sourceRoot":"","sources":["../../src/prerequisites/ram.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,eAAgB,YAAW,OAAO,CAAC,YAAY;IAC1D,QAAQ,CAAC,IAAI,SAAS;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;gBAEzB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAA;KAAE;IAOtE,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAY/D"}
@@ -11,13 +11,16 @@ export class PrerequisiteRAM {
11
11
  this.enabled = config.enabled === undefined ? true : config.enabled;
12
12
  this.minimum = config.minimum;
13
13
  }
14
- async verify() {
14
+ async verify(clock) {
15
+ const stopwatch = new tools.Stopwatch(clock.now());
15
16
  if (!this.enabled)
16
- return prereqs.Verification.undetermined();
17
+ return prereqs.Verification.undetermined(stopwatch.stop());
17
18
  const freeRAM = tools.Size.fromBytes(os.freemem());
18
19
  if (freeRAM.isGreaterThan(this.minimum))
19
- return prereqs.Verification.success();
20
- return prereqs.Verification.failure({ message: `Free RAM: ${freeRAM.format(tools.Size.unit.MB)}` });
20
+ return prereqs.Verification.success(stopwatch.stop());
21
+ return prereqs.Verification.failure(stopwatch.stop(), {
22
+ message: `Free RAM: ${freeRAM.format(tools.Size.unit.MB)}`,
23
+ });
21
24
  }
22
25
  }
23
26
  //# sourceMappingURL=ram.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ram.js","sourceRoot":"","sources":["../../src/prerequisites/ram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,eAAe;IACjB,IAAI,GAAG,KAAK,CAAC;IACb,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAa;IAErC,YAAY,MAAgE;QAC1E,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QAEnD,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC/E,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,aAAa,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACtG,CAAC;CACF"}
1
+ {"version":3,"file":"ram.js","sourceRoot":"","sources":["../../src/prerequisites/ram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,eAAe;IACjB,IAAI,GAAG,KAAK,CAAC;IACb,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAa;IAErC,YAAY,MAAgE;QAC1E,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QAEnD,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;YACpD,OAAO,EAAE,aAAa,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;SAC3D,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,3 +1,4 @@
1
+ import type { ClockPort } from "../clock.port";
1
2
  import * as prereqs from "../prerequisites.service";
2
3
  export declare class PrerequisiteRunningUser implements prereqs.Prerequisite {
3
4
  readonly kind = "running-user";
@@ -7,6 +8,6 @@ export declare class PrerequisiteRunningUser implements prereqs.Prerequisite {
7
8
  constructor(config: prereqs.PrerequisiteConfigType & {
8
9
  username: string;
9
10
  });
10
- verify(): Promise<prereqs.VerifyOutcome>;
11
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
11
12
  }
12
13
  //# sourceMappingURL=running-user.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"running-user.d.ts","sourceRoot":"","sources":["../../src/prerequisites/running-user.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,uBAAwB,YAAW,OAAO,CAAC,YAAY;IAClE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAOnE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAQ/C"}
1
+ {"version":3,"file":"running-user.d.ts","sourceRoot":"","sources":["../../src/prerequisites/running-user.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,uBAAwB,YAAW,OAAO,CAAC,YAAY;IAClE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAOnE,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAU/D"}
@@ -1,4 +1,5 @@
1
1
  import os from "node:os";
2
+ import * as tools from "@bgord/tools";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export class PrerequisiteRunningUser {
4
5
  kind = "running-user";
@@ -10,13 +11,14 @@ export class PrerequisiteRunningUser {
10
11
  this.enabled = config.enabled === undefined ? true : config.enabled;
11
12
  this.username = config.username;
12
13
  }
13
- async verify() {
14
+ async verify(clock) {
15
+ const stopwatch = new tools.Stopwatch(clock.now());
14
16
  if (!this.enabled)
15
- return prereqs.Verification.undetermined();
17
+ return prereqs.Verification.undetermined(stopwatch.stop());
16
18
  const current = os.userInfo().username;
17
19
  if (current === this.username)
18
- return prereqs.Verification.success();
19
- return prereqs.Verification.failure({ message: `Current user: ${current}` });
20
+ return prereqs.Verification.success(stopwatch.stop());
21
+ return prereqs.Verification.failure(stopwatch.stop(), { message: `Current user: ${current}` });
20
22
  }
21
23
  }
22
24
  //# sourceMappingURL=running-user.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"running-user.js","sourceRoot":"","sources":["../../src/prerequisites/running-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,uBAAuB;IACzB,IAAI,GAAG,cAAc,CAAC;IACtB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,QAAQ,CAAS;IAElC,YAAY,MAA6D;QACvE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC;QAEvC,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACrE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,iBAAiB,OAAO,EAAE,EAAE,CAAC,CAAC;IAC/E,CAAC;CACF"}
1
+ {"version":3,"file":"running-user.js","sourceRoot":"","sources":["../../src/prerequisites/running-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,uBAAuB;IACzB,IAAI,GAAG,cAAc,CAAC;IACtB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,QAAQ,CAAS;IAElC,YAAY,MAA6D;QACvE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC;QAEvC,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACrF,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,iBAAiB,OAAO,EAAE,EAAE,CAAC,CAAC;IACjG,CAAC;CACF"}
@@ -1,9 +1,10 @@
1
+ import type { ClockPort } from "../clock.port";
1
2
  import * as prereqs from "../prerequisites.service";
2
3
  export declare class PrerequisiteSelf implements prereqs.Prerequisite {
3
4
  readonly kind = "self";
4
5
  readonly label: prereqs.PrerequisiteLabelType;
5
6
  readonly enabled?: boolean;
6
7
  constructor(config: prereqs.PrerequisiteConfigType);
7
- verify(): Promise<prereqs.VerifyOutcome>;
8
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
8
9
  }
9
10
  //# sourceMappingURL=self.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"self.d.ts","sourceRoot":"","sources":["../../src/prerequisites/self.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gBAAiB,YAAW,OAAO,CAAC,YAAY;IAC3D,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB;IAK5C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAI/C"}
1
+ {"version":3,"file":"self.d.ts","sourceRoot":"","sources":["../../src/prerequisites/self.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gBAAiB,YAAW,OAAO,CAAC,YAAY;IAC3D,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB;IAK5C,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAM/D"}
@@ -1,3 +1,4 @@
1
+ import * as tools from "@bgord/tools";
1
2
  import * as prereqs from "../prerequisites.service";
2
3
  export class PrerequisiteSelf {
3
4
  kind = "self";
@@ -7,10 +8,11 @@ export class PrerequisiteSelf {
7
8
  this.label = config.label;
8
9
  this.enabled = config.enabled === undefined ? true : config.enabled;
9
10
  }
10
- async verify() {
11
+ async verify(clock) {
12
+ const stopwatch = new tools.Stopwatch(clock.now());
11
13
  if (!this.enabled)
12
- return prereqs.Verification.undetermined();
13
- return prereqs.Verification.success();
14
+ return prereqs.Verification.undetermined(stopwatch.stop());
15
+ return prereqs.Verification.success(stopwatch.stop());
14
16
  }
15
17
  }
16
18
  //# sourceMappingURL=self.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"self.js","sourceRoot":"","sources":["../../src/prerequisites/self.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IAClB,IAAI,GAAG,MAAM,CAAC;IACd,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAElC,YAAY,MAAsC;QAChD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAC9D,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"self.js","sourceRoot":"","sources":["../../src/prerequisites/self.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gBAAgB;IAClB,IAAI,GAAG,MAAM,CAAC;IACd,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAElC,YAAY,MAAsC;QAChD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "../clock.port";
2
3
  import type { DiskSpaceCheckerPort } from "../disk-space-checker.port";
3
4
  import * as prereqs from "../prerequisites.service";
4
5
  export declare class PrerequisiteSpace implements prereqs.Prerequisite {
@@ -11,6 +12,6 @@ export declare class PrerequisiteSpace implements prereqs.Prerequisite {
11
12
  minimum: tools.Size;
12
13
  checker: DiskSpaceCheckerPort;
13
14
  });
14
- verify(): Promise<prereqs.VerifyOutcome>;
15
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
15
16
  }
16
17
  //# sourceMappingURL=space.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../src/prerequisites/space.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,iBAAkB,YAAW,OAAO,CAAC,YAAY;IAC5D,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;gBAG7C,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC;QAAC,OAAO,EAAE,oBAAoB,CAAA;KAAE;IAS3F,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAe/C"}
1
+ {"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../src/prerequisites/space.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,iBAAkB,YAAW,OAAO,CAAC,YAAY;IAC5D,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;gBAG7C,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC;QAAC,OAAO,EAAE,oBAAoB,CAAA;KAAE;IAS3F,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAiB/D"}
@@ -13,20 +13,21 @@ export class PrerequisiteSpace {
13
13
  this.minimum = config.minimum;
14
14
  this.checker = config.checker;
15
15
  }
16
- async verify() {
16
+ async verify(clock) {
17
+ const stopwatch = new tools.Stopwatch(clock.now());
17
18
  if (!this.enabled)
18
- return prereqs.Verification.undetermined();
19
+ return prereqs.Verification.undetermined(stopwatch.stop());
19
20
  try {
20
21
  const root = path.sep;
21
22
  const freeDiskSpace = await this.checker.get(root);
22
23
  if (freeDiskSpace.isGreaterThan(this.minimum))
23
- return prereqs.Verification.success();
24
- return prereqs.Verification.failure({
24
+ return prereqs.Verification.success(stopwatch.stop());
25
+ return prereqs.Verification.failure(stopwatch.stop(), {
25
26
  message: `Free disk space: ${freeDiskSpace.format(tools.Size.unit.MB)}`,
26
27
  });
27
28
  }
28
29
  catch (error) {
29
- return prereqs.Verification.failure(error);
30
+ return prereqs.Verification.failure(stopwatch.stop(), error);
30
31
  }
31
32
  }
32
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"space.js","sourceRoot":"","sources":["../../src/prerequisites/space.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,iBAAiB;IACnB,IAAI,GAAG,OAAO,CAAC;IACf,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAa;IACpB,OAAO,CAAuB;IAE/C,YACE,MAA+F;QAE/F,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAEnD,IAAI,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YACrF,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC;gBAClC,OAAO,EAAE,oBAAoB,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;aACxE,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAc,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"space.js","sourceRoot":"","sources":["../../src/prerequisites/space.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,iBAAiB;IACnB,IAAI,GAAG,OAAO,CAAC;IACf,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,OAAO,CAAa;IACpB,OAAO,CAAuB;IAE/C,YACE,MAA+F;QAE/F,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAEnD,IAAI,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACrG,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;gBACpD,OAAO,EAAE,oBAAoB,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;aACxE,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,KAAc,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import type { Database } from "bun:sqlite";
2
+ import type { ClockPort } from "../clock.port";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export declare class PrerequisiteSQLite implements prereqs.Prerequisite {
4
5
  readonly kind = "sqlite";
@@ -8,6 +9,6 @@ export declare class PrerequisiteSQLite implements prereqs.Prerequisite {
8
9
  constructor(config: prereqs.PrerequisiteConfigType & {
9
10
  sqlite: Database;
10
11
  });
11
- verify(): Promise<prereqs.VerifyOutcome>;
12
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
12
13
  }
13
14
  //# sourceMappingURL=sqlite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,kBAAmB,YAAW,OAAO,CAAC,YAAY;IAC7D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAOnE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAgB/C"}
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,kBAAmB,YAAW,OAAO,CAAC,YAAY;IAC7D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAOnE,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAkB/D"}
@@ -1,3 +1,4 @@
1
+ import * as tools from "@bgord/tools";
1
2
  import * as prereqs from "../prerequisites.service";
2
3
  export class PrerequisiteSQLite {
3
4
  kind = "sqlite";
@@ -9,18 +10,19 @@ export class PrerequisiteSQLite {
9
10
  this.enabled = config.enabled === undefined ? true : config.enabled;
10
11
  this.sqlite = config.sqlite;
11
12
  }
12
- async verify() {
13
+ async verify(clock) {
14
+ const stopwatch = new tools.Stopwatch(clock.now());
13
15
  if (!this.enabled)
14
- return prereqs.Verification.undetermined();
16
+ return prereqs.Verification.undetermined(stopwatch.stop());
15
17
  try {
16
18
  const integrity = this.sqlite.query("PRAGMA integrity_check;").get();
17
19
  if (!integrity || (integrity.integrity_check ?? "").toLowerCase() !== "ok") {
18
- return prereqs.Verification.failure({ message: "Integrity check failed" });
20
+ return prereqs.Verification.failure(stopwatch.stop(), { message: "Integrity check failed" });
19
21
  }
20
- return prereqs.Verification.success();
22
+ return prereqs.Verification.success(stopwatch.stop());
21
23
  }
22
24
  catch (error) {
23
- return prereqs.Verification.failure(error);
25
+ return prereqs.Verification.failure(stopwatch.stop(), error);
24
26
  }
25
27
  }
26
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,QAAQ,CAAC;IAChB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,MAAM,CAAW;IAElC,YAAY,MAA6D;QACvE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,GAAG,EAErD,CAAC;YAEd,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC3E,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAc,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,QAAQ,CAAC;IAChB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,MAAM,CAAW;IAElC,YAAY,MAA6D;QACvE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,GAAG,EAErD,CAAC;YAEd,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC3E,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC/F,CAAC;YACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,KAAc,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import type { CertificateInspectorPort } from "../certificate-inspector.port";
2
+ import type { ClockPort } from "../clock.port";
2
3
  import * as prereqs from "../prerequisites.service";
3
4
  export declare class PrerequisiteSSLCertificateExpiry implements prereqs.Prerequisite {
4
5
  readonly kind = "ssl-certificate-expiry";
@@ -12,6 +13,6 @@ export declare class PrerequisiteSSLCertificateExpiry implements prereqs.Prerequ
12
13
  days: number;
13
14
  inspector: CertificateInspectorPort;
14
15
  });
15
- verify(): Promise<prereqs.VerifyOutcome>;
16
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
16
17
  }
17
18
  //# sourceMappingURL=ssl-certificate-expiry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ssl-certificate-expiry.d.ts","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gCAAiC,YAAW,OAAO,CAAC,YAAY;IAC3E,QAAQ,CAAC,IAAI,4BAA4B;IACzC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;gBAGnD,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QACvC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,wBAAwB,CAAC;KACrC;IAUG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAW/C"}
1
+ {"version":3,"file":"ssl-certificate-expiry.d.ts","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gCAAiC,YAAW,OAAO,CAAC,YAAY;IAC3E,QAAQ,CAAC,IAAI,4BAA4B;IACzC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;gBAGnD,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QACvC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,wBAAwB,CAAC;KACrC;IAUG,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAgB/D"}
@@ -1,3 +1,4 @@
1
+ import * as tools from "@bgord/tools";
1
2
  import * as prereqs from "../prerequisites.service";
2
3
  export class PrerequisiteSSLCertificateExpiry {
3
4
  kind = "ssl-certificate-expiry";
@@ -13,16 +14,19 @@ export class PrerequisiteSSLCertificateExpiry {
13
14
  this.days = config.days;
14
15
  this.inspector = config.inspector;
15
16
  }
16
- async verify() {
17
+ async verify(clock) {
18
+ const stopwatch = new tools.Stopwatch(clock.now());
17
19
  if (!this.enabled)
18
- return prereqs.Verification.undetermined();
20
+ return prereqs.Verification.undetermined(stopwatch.stop());
19
21
  const result = await this.inspector.inspect(this.host);
20
22
  if (!result.success)
21
- return prereqs.Verification.failure({ message: "Certificate unavailable" });
23
+ return prereqs.Verification.failure(stopwatch.stop(), { message: "Certificate unavailable" });
22
24
  if (result.daysRemaining <= this.days) {
23
- return prereqs.Verification.failure({ message: `${result.daysRemaining} days remaining` });
25
+ return prereqs.Verification.failure(stopwatch.stop(), {
26
+ message: `${result.daysRemaining} days remaining`,
27
+ });
24
28
  }
25
- return prereqs.Verification.success();
29
+ return prereqs.Verification.success(stopwatch.stop());
26
30
  }
27
31
  }
28
32
  //# sourceMappingURL=ssl-certificate-expiry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ssl-certificate-expiry.js","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gCAAgC;IAClC,IAAI,GAAG,wBAAwB,CAAC;IAChC,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,IAAI,CAAS;IACb,IAAI,CAAS;IACb,SAAS,CAA2B;IAErD,YACE,MAIC;QAED,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;QACjG,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,aAAa,iBAAiB,EAAE,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"ssl-certificate-expiry.js","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gCAAgC;IAClC,IAAI,GAAG,wBAAwB,CAAC;IAChC,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,IAAI,CAAS;IACb,IAAI,CAAS;IACb,SAAS,CAA2B;IAErD,YACE,MAIC;QAED,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgB;QAC3B,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;QAChG,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;gBACpD,OAAO,EAAE,GAAG,MAAM,CAAC,aAAa,iBAAiB;aAClD,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;CACF"}
@@ -1,5 +1,6 @@
1
- import type * as tools from "@bgord/tools";
1
+ import * as tools from "@bgord/tools";
2
2
  import { z } from "zod/v4";
3
+ import type { ClockPort } from "../clock.port";
3
4
  import * as prereqs from "../prerequisites.service";
4
5
  export declare const TimezoneUtc: z.ZodLiteral<"UTC">;
5
6
  export declare class PrerequisiteTimezoneUTC implements prereqs.Prerequisite {
@@ -10,6 +11,6 @@ export declare class PrerequisiteTimezoneUTC implements prereqs.Prerequisite {
10
11
  constructor(config: prereqs.PrerequisiteConfigType & {
11
12
  timezone: tools.TimezoneType;
12
13
  });
13
- verify(): Promise<prereqs.VerifyOutcome>;
14
+ verify(clock: ClockPort): Promise<prereqs.VerifyOutcome>;
14
15
  }
15
16
  //# sourceMappingURL=timezone-utc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"timezone-utc.d.ts","sourceRoot":"","sources":["../../src/prerequisites/timezone-utc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,eAAO,MAAM,WAAW,qBAAmB,CAAC;AAE5C,qBAAa,uBAAwB,YAAW,OAAO,CAAC,YAAY;IAClE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;KAAE;IAO/E,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAQ/C"}
1
+ {"version":3,"file":"timezone-utc.d.ts","sourceRoot":"","sources":["../../src/prerequisites/timezone-utc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,eAAO,MAAM,WAAW,qBAAmB,CAAC;AAE5C,qBAAa,uBAAwB,YAAW,OAAO,CAAC,YAAY;IAClE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;KAAE;IAO/E,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAU/D"}