@bgord/bun 0.25.0 → 0.25.2

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 (73) hide show
  1. package/dist/api-version.middleware.d.ts +6 -1
  2. package/dist/api-version.middleware.d.ts.map +1 -1
  3. package/dist/api-version.middleware.js +2 -2
  4. package/dist/api-version.middleware.js.map +1 -1
  5. package/dist/build-info-repository.service.d.ts +6 -1
  6. package/dist/build-info-repository.service.d.ts.map +1 -1
  7. package/dist/build-info-repository.service.js +2 -2
  8. package/dist/build-info-repository.service.js.map +1 -1
  9. package/dist/clock-fixed.adapter.d.ts +10 -0
  10. package/dist/clock-fixed.adapter.d.ts.map +1 -0
  11. package/dist/clock-fixed.adapter.js +17 -0
  12. package/dist/clock-fixed.adapter.js.map +1 -0
  13. package/dist/clock-system.adapter.d.ts +7 -0
  14. package/dist/clock-system.adapter.d.ts.map +1 -0
  15. package/dist/clock-system.adapter.js +11 -0
  16. package/dist/clock-system.adapter.js.map +1 -0
  17. package/dist/clock.port.d.ts +6 -0
  18. package/dist/clock.port.d.ts.map +1 -0
  19. package/dist/clock.port.js +2 -0
  20. package/dist/clock.port.js.map +1 -0
  21. package/dist/command-envelope.d.ts +7 -1
  22. package/dist/command-envelope.d.ts.map +1 -1
  23. package/dist/command-envelope.js +3 -3
  24. package/dist/command-envelope.js.map +1 -1
  25. package/dist/event-envelope.d.ts +7 -1
  26. package/dist/event-envelope.d.ts.map +1 -1
  27. package/dist/event-envelope.js +3 -3
  28. package/dist/event-envelope.js.map +1 -1
  29. package/dist/healthcheck.service.d.ts +6 -1
  30. package/dist/healthcheck.service.d.ts.map +1 -1
  31. package/dist/healthcheck.service.js +3 -3
  32. package/dist/healthcheck.service.js.map +1 -1
  33. package/dist/index.d.ts +3 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +3 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/modules/preferences/command-handlers/handleSetUserLanguageCommand.d.ts +2 -1
  38. package/dist/modules/preferences/command-handlers/handleSetUserLanguageCommand.d.ts.map +1 -1
  39. package/dist/modules/preferences/command-handlers/handleSetUserLanguageCommand.js +2 -2
  40. package/dist/modules/preferences/command-handlers/handleSetUserLanguageCommand.js.map +1 -1
  41. package/dist/remote-file-storage-noop.adapter.d.ts +3 -1
  42. package/dist/remote-file-storage-noop.adapter.d.ts.map +1 -1
  43. package/dist/remote-file-storage-noop.adapter.js +5 -5
  44. package/dist/remote-file-storage-noop.adapter.js.map +1 -1
  45. package/dist/setup.service.d.ts +9 -1
  46. package/dist/setup.service.d.ts.map +1 -1
  47. package/dist/setup.service.js +10 -6
  48. package/dist/setup.service.js.map +1 -1
  49. package/dist/shield-rate-limit.middleware.d.ts +5 -1
  50. package/dist/shield-rate-limit.middleware.d.ts.map +1 -1
  51. package/dist/shield-rate-limit.middleware.js +2 -3
  52. package/dist/shield-rate-limit.middleware.js.map +1 -1
  53. package/dist/tsconfig.tsbuildinfo +1 -1
  54. package/dist/uptime.service.d.ts +2 -1
  55. package/dist/uptime.service.d.ts.map +1 -1
  56. package/dist/uptime.service.js +2 -2
  57. package/dist/uptime.service.js.map +1 -1
  58. package/package.json +3 -3
  59. package/readme.md +3 -0
  60. package/src/api-version.middleware.ts +9 -5
  61. package/src/build-info-repository.service.ts +5 -2
  62. package/src/clock-fixed.adapter.ts +22 -0
  63. package/src/clock-system.adapter.ts +13 -0
  64. package/src/clock.port.ts +6 -0
  65. package/src/command-envelope.ts +6 -3
  66. package/src/event-envelope.ts +6 -3
  67. package/src/healthcheck.service.ts +11 -11
  68. package/src/index.ts +3 -0
  69. package/src/modules/preferences/command-handlers/handleSetUserLanguageCommand.ts +3 -1
  70. package/src/remote-file-storage-noop.adapter.ts +7 -6
  71. package/src/setup.service.ts +19 -6
  72. package/src/shield-rate-limit.middleware.ts +5 -3
  73. package/src/uptime.service.ts +5 -2
@@ -1,6 +1,11 @@
1
+ import type { ClockPort } from "./clock.port";
2
+ type Dependencies = {
3
+ Clock: ClockPort;
4
+ };
1
5
  export declare class ApiVersion {
2
6
  static HEADER_NAME: string;
3
7
  static DEFAULT_API_VERSION: string;
4
- static attach: import("hono").MiddlewareHandler<any, string, {}>;
8
+ static build: (deps: Dependencies) => import("hono").MiddlewareHandler<any, string, {}>;
5
9
  }
10
+ export {};
6
11
  //# sourceMappingURL=api-version.middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-version.middleware.d.ts","sourceRoot":"","sources":["../src/api-version.middleware.ts"],"names":[],"mappings":"AAGA,qBAAa,UAAU;IACrB,MAAM,CAAC,WAAW,SAAiB;IAEnC,MAAM,CAAC,mBAAmB,SAAa;IAEvC,MAAM,CAAC,MAAM,oDAMV;CACJ"}
1
+ {"version":3,"file":"api-version.middleware.d.ts","sourceRoot":"","sources":["../src/api-version.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,KAAK,YAAY,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzC,qBAAa,UAAU;IACrB,MAAM,CAAC,WAAW,SAAiB;IAEnC,MAAM,CAAC,mBAAmB,SAAa;IAEvC,MAAM,CAAC,KAAK,GAAI,MAAM,YAAY,uDAO7B;CACN"}
@@ -3,8 +3,8 @@ import { BuildInfoRepository } from "./build-info-repository.service";
3
3
  export class ApiVersion {
4
4
  static HEADER_NAME = "api-version";
5
5
  static DEFAULT_API_VERSION = "unknown";
6
- static attach = createMiddleware(async (c, next) => {
7
- const build = await BuildInfoRepository.extract();
6
+ static build = (deps) => createMiddleware(async (c, next) => {
7
+ const build = await BuildInfoRepository.extract(deps);
8
8
  c.res.headers.set(ApiVersion.HEADER_NAME, build.BUILD_VERSION ?? ApiVersion.DEFAULT_API_VERSION);
9
9
  await next();
10
10
  });
@@ -1 +1 @@
1
- {"version":3,"file":"api-version.middleware.js","sourceRoot":"","sources":["../src/api-version.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,MAAM,OAAO,UAAU;IACrB,MAAM,CAAC,WAAW,GAAG,aAAa,CAAC;IAEnC,MAAM,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAEvC,MAAM,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,CAAC;QAElD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,IAAI,UAAU,CAAC,mBAAmB,CAAC,CAAC;QAEjG,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"api-version.middleware.js","sourceRoot":"","sources":["../src/api-version.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAKtE,MAAM,OAAO,UAAU;IACrB,MAAM,CAAC,WAAW,GAAG,aAAa,CAAC;IAEnC,MAAM,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAEvC,MAAM,CAAC,KAAK,GAAG,CAAC,IAAkB,EAAE,EAAE,CACpC,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QACjC,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,IAAI,UAAU,CAAC,mBAAmB,CAAC,CAAC;QAEjG,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC,CAAC"}
@@ -1,10 +1,15 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "./clock.port";
2
3
  export type BuildInfoType = {
3
4
  BUILD_DATE: tools.TimestampType;
4
5
  BUILD_VERSION?: tools.BuildVersionType;
5
6
  };
7
+ type Dependencies = {
8
+ Clock: ClockPort;
9
+ };
6
10
  export declare class BuildInfoRepository {
7
- static extract(): Promise<BuildInfoType>;
11
+ static extract(deps: Dependencies): Promise<BuildInfoType>;
8
12
  static getPackageJson(): Promise<any>;
9
13
  }
14
+ export {};
10
15
  //# sourceMappingURL=build-info-repository.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-info-repository.service.d.ts","sourceRoot":"","sources":["../src/build-info-repository.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC;IAChC,aAAa,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC;CACxC,CAAC;AAEF,qBAAa,mBAAmB;WACjB,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;WAcjC,cAAc;CAG5B"}
1
+ {"version":3,"file":"build-info-repository.service.d.ts","sourceRoot":"","sources":["../src/build-info-repository.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC;IAChC,aAAa,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC;CACxC,CAAC;AAEF,KAAK,YAAY,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzC,qBAAa,mBAAmB;WACjB,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;WAcnD,cAAc;CAG5B"}
@@ -1,7 +1,7 @@
1
1
  import * as tools from "@bgord/tools";
2
2
  export class BuildInfoRepository {
3
- static async extract() {
4
- const BUILD_DATE = tools.Timestamp.parse(Date.now());
3
+ static async extract(deps) {
4
+ const BUILD_DATE = deps.Clock.nowMs();
5
5
  try {
6
6
  const packageJson = await BuildInfoRepository.getPackageJson();
7
7
  const BUILD_VERSION = tools.BuildVersion.parse(packageJson.version);
@@ -1 +1 @@
1
- {"version":3,"file":"build-info-repository.service.js","sourceRoot":"","sources":["../src/build-info-repository.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAOtC,MAAM,OAAO,mBAAmB;IAC9B,MAAM,CAAC,KAAK,CAAC,OAAO;QAClB,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,CAAC;YAE/D,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEpE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;QACvC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc;QACzB,OAAO,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;CACF"}
1
+ {"version":3,"file":"build-info-repository.service.js","sourceRoot":"","sources":["../src/build-info-repository.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAUtC,MAAM,OAAO,mBAAmB;IAC9B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAkB;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,CAAC;YAE/D,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEpE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;QACvC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc;QACzB,OAAO,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "./clock.port";
3
+ export declare class ClockFixedAdapter implements ClockPort {
4
+ private value;
5
+ constructor(candidate: number);
6
+ nowMs(): number & import("zod/v4").$brand<"Timestamp">;
7
+ now(): ReturnType<typeof tools.Time.Now>;
8
+ advanceBy(time: tools.TimeResult): void;
9
+ }
10
+ //# sourceMappingURL=clock-fixed.adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock-fixed.adapter.d.ts","sourceRoot":"","sources":["../src/clock-fixed.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,qBAAa,iBAAkB,YAAW,SAAS;IACjD,OAAO,CAAC,KAAK,CAAsB;gBAEvB,SAAS,EAAE,MAAM;IAI7B,KAAK;IAIL,GAAG,IAAI,UAAU,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;IAIxC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,GAAG,IAAI;CAGxC"}
@@ -0,0 +1,17 @@
1
+ import * as tools from "@bgord/tools";
2
+ export class ClockFixedAdapter {
3
+ value;
4
+ constructor(candidate) {
5
+ this.value = tools.Timestamp.parse(candidate);
6
+ }
7
+ nowMs() {
8
+ return tools.Timestamp.parse(this.value);
9
+ }
10
+ now() {
11
+ return tools.Time.Now(this.value);
12
+ }
13
+ advanceBy(time) {
14
+ this.value = tools.Timestamp.parse(this.value + time.ms);
15
+ }
16
+ }
17
+ //# sourceMappingURL=clock-fixed.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock-fixed.adapter.js","sourceRoot":"","sources":["../src/clock-fixed.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,iBAAiB;IACpB,KAAK,CAAsB;IAEnC,YAAY,SAAiB;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAED,KAAK;QACH,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,GAAG;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,SAAS,CAAC,IAAsB;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "./clock.port";
3
+ export declare class ClockSystemAdapter implements ClockPort {
4
+ nowMs(): number & import("zod/v4").$brand<"Timestamp">;
5
+ now(): ReturnType<typeof tools.Time.Now>;
6
+ }
7
+ //# sourceMappingURL=clock-system.adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock-system.adapter.d.ts","sourceRoot":"","sources":["../src/clock-system.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,qBAAa,kBAAmB,YAAW,SAAS;IAClD,KAAK;IAIL,GAAG,IAAI,UAAU,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;CAIzC"}
@@ -0,0 +1,11 @@
1
+ import * as tools from "@bgord/tools";
2
+ export class ClockSystemAdapter {
3
+ nowMs() {
4
+ return tools.Timestamp.parse(Date.now());
5
+ }
6
+ now() {
7
+ const now = tools.Timestamp.parse(Date.now());
8
+ return tools.Time.Now(now);
9
+ }
10
+ }
11
+ //# sourceMappingURL=clock-system.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock-system.adapter.js","sourceRoot":"","sources":["../src/clock-system.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,kBAAkB;IAC7B,KAAK;QACH,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,GAAG;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import type * as tools from "@bgord/tools";
2
+ export interface ClockPort {
3
+ nowMs(): tools.TimestampType;
4
+ now(): ReturnType<typeof tools.Time.Now>;
5
+ }
6
+ //# sourceMappingURL=clock.port.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock.port.d.ts","sourceRoot":"","sources":["../src/clock.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,SAAS;IACxB,KAAK,IAAI,KAAK,CAAC,aAAa,CAAC;IAC7B,GAAG,IAAI,UAAU,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;CAC1C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=clock.port.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock.port.js","sourceRoot":"","sources":["../src/clock.port.ts"],"names":[],"mappings":""}
@@ -1,12 +1,18 @@
1
+ import type { ClockPort } from "./clock.port";
1
2
  import type { IdProviderPort } from "./id-provider.port";
3
+ type Dependencies = {
4
+ IdProvider: IdProviderPort;
5
+ Clock: ClockPort;
6
+ };
2
7
  export declare const CommandEnvelopeSchema: {
3
8
  id: import("zod/v4").ZodUUID;
4
9
  correlationId: import("zod/v4").ZodUUID;
5
10
  createdAt: import("better-auth/*").$ZodBranded<import("zod/v4").ZodNumber, "Timestamp">;
6
11
  };
7
- export declare const createCommandEnvelope: (IdProvider: IdProviderPort) => {
12
+ export declare const createCommandEnvelope: (deps: Dependencies) => {
8
13
  readonly id: string;
9
14
  readonly correlationId: string;
10
15
  readonly createdAt: number & import("zod/v4").$brand<"Timestamp">;
11
16
  };
17
+ export {};
12
18
  //# sourceMappingURL=command-envelope.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-envelope.d.ts","sourceRoot":"","sources":["../src/command-envelope.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,eAAO,MAAM,qBAAqB;;;;CAIjC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,YAAY,cAAc;;;;CAKnD,CAAC"}
1
+ {"version":3,"file":"command-envelope.d.ts","sourceRoot":"","sources":["../src/command-envelope.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,KAAK,YAAY,GAAG;IAAE,UAAU,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAErE,eAAO,MAAM,qBAAqB;;;;CAIjC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,MAAM,YAAY;;;;CAK3C,CAAC"}
@@ -6,9 +6,9 @@ export const CommandEnvelopeSchema = {
6
6
  correlationId: UUID,
7
7
  createdAt: tools.Timestamp,
8
8
  };
9
- export const createCommandEnvelope = (IdProvider) => ({
10
- id: IdProvider.generate(),
9
+ export const createCommandEnvelope = (deps) => ({
10
+ id: deps.IdProvider.generate(),
11
11
  correlationId: CorrelationStorage.get(),
12
- createdAt: tools.Time.Now().value,
12
+ createdAt: deps.Clock.nowMs(),
13
13
  });
14
14
  //# sourceMappingURL=command-envelope.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-envelope.js","sourceRoot":"","sources":["../src/command-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,EAAE,EAAE,IAAI;IACR,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,KAAK,CAAC,SAAS;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,UAA0B,EAAE,EAAE,CAClE,CAAC;IACC,EAAE,EAAE,UAAU,CAAC,QAAQ,EAAE;IACzB,aAAa,EAAE,kBAAkB,CAAC,GAAG,EAAE;IACvC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK;CAClC,CAAU,CAAC"}
1
+ {"version":3,"file":"command-envelope.js","sourceRoot":"","sources":["../src/command-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,EAAE,EAAE,IAAI;IACR,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,KAAK,CAAC,SAAS;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,IAAkB,EAAE,EAAE,CAC1D,CAAC;IACC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;IAC9B,aAAa,EAAE,kBAAkB,CAAC,GAAG,EAAE;IACvC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;CAC9B,CAAU,CAAC"}
@@ -1,6 +1,11 @@
1
1
  import { z } from "zod/v4";
2
+ import type { ClockPort } from "./clock.port";
2
3
  import type { EventStreamType } from "./event-stream.vo";
3
4
  import type { IdProviderPort } from "./id-provider.port";
5
+ type Dependencies = {
6
+ IdProvider: IdProviderPort;
7
+ Clock: ClockPort;
8
+ };
4
9
  export declare const EventEnvelopeSchema: {
5
10
  id: z.ZodUUID;
6
11
  correlationId: z.ZodUUID;
@@ -9,11 +14,12 @@ export declare const EventEnvelopeSchema: {
9
14
  version: z.ZodLiteral<1>;
10
15
  revision: z.ZodOptional<z.ZodNumber>;
11
16
  };
12
- export declare const createEventEnvelope: (IdProvider: IdProviderPort, stream: EventStreamType) => {
17
+ export declare const createEventEnvelope: (stream: EventStreamType, deps: Dependencies) => {
13
18
  readonly id: string;
14
19
  readonly correlationId: string;
15
20
  readonly createdAt: number & z.core.$brand<"Timestamp">;
16
21
  readonly stream: string;
17
22
  readonly version: 1;
18
23
  };
24
+ export {};
19
25
  //# sourceMappingURL=event-envelope.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-envelope.d.ts","sourceRoot":"","sources":["../src/event-envelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,eAAO,MAAM,mBAAmB;;;;;;;CAO/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,YAAY,cAAc,EAAE,QAAQ,eAAe;;;;;;CAO1E,CAAC"}
1
+ {"version":3,"file":"event-envelope.d.ts","sourceRoot":"","sources":["../src/event-envelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,KAAK,YAAY,GAAG;IAAE,UAAU,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAErE,eAAO,MAAM,mBAAmB;;;;;;;CAO/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,QAAQ,eAAe,EAAE,MAAM,YAAY;;;;;;CAOlE,CAAC"}
@@ -10,10 +10,10 @@ export const EventEnvelopeSchema = {
10
10
  version: z.literal(1),
11
11
  revision: tools.RevisionValue.optional(),
12
12
  };
13
- export const createEventEnvelope = (IdProvider, stream) => ({
14
- id: IdProvider.generate(),
13
+ export const createEventEnvelope = (stream, deps) => ({
14
+ id: deps.IdProvider.generate(),
15
15
  correlationId: CorrelationStorage.get(),
16
- createdAt: tools.Time.Now().value,
16
+ createdAt: deps.Clock.nowMs(),
17
17
  stream,
18
18
  version: 1,
19
19
  });
@@ -1 +1 @@
1
- {"version":3,"file":"event-envelope.js","sourceRoot":"","sources":["../src/event-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,EAAE,EAAE,IAAI;IACR,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,KAAK,CAAC,SAAS;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE;CACzC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,UAA0B,EAAE,MAAuB,EAAE,EAAE,CACzF,CAAC;IACC,EAAE,EAAE,UAAU,CAAC,QAAQ,EAAE;IACzB,aAAa,EAAE,kBAAkB,CAAC,GAAG,EAAE;IACvC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK;IACjC,MAAM;IACN,OAAO,EAAE,CAAC;CACX,CAAU,CAAC"}
1
+ {"version":3,"file":"event-envelope.js","sourceRoot":"","sources":["../src/event-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,EAAE,EAAE,IAAI;IACR,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,KAAK,CAAC,SAAS;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE;CACzC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAuB,EAAE,IAAkB,EAAE,EAAE,CACjF,CAAC;IACC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;IAC9B,aAAa,EAAE,kBAAkB,CAAC,GAAG,EAAE;IACvC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IAC7B,MAAM;IACN,OAAO,EAAE,CAAC;CACX,CAAU,CAAC"}
@@ -1,7 +1,11 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "./clock.port";
2
3
  import * as prereqs from "./prerequisites.service";
4
+ type Dependencies = {
5
+ Clock: ClockPort;
6
+ };
3
7
  export declare class Healthcheck {
4
- static build: (prerequisites: prereqs.AbstractPrerequisite<prereqs.BasePrerequisiteConfig>[]) => [import("hono/types").H<import("hono").Env, string, {}, Promise<Response & import("hono").TypedResponse<{
8
+ static build: (prerequisites: prereqs.AbstractPrerequisite<prereqs.BasePrerequisiteConfig>[], deps: Dependencies) => [import("hono/types").H<import("hono").Env, string, {}, Promise<Response & import("hono").TypedResponse<{
5
9
  ok: prereqs.PrerequisiteStatusEnum;
6
10
  version: tools.BuildVersionType;
7
11
  details: {
@@ -19,4 +23,5 @@ export declare class Healthcheck {
19
23
  durationMs: tools.TimestampType;
20
24
  }, 200 | 424, "json">>>];
21
25
  }
26
+ export {};
22
27
  //# sourceMappingURL=healthcheck.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"healthcheck.service.d.ts","sourceRoot":"","sources":["../src/healthcheck.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAItC,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AAmBnD,qBAAa,WAAW;IACtB,MAAM,CAAC,KAAK,GAAI,eAAe,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE;YAdzF,OAAO,CAAC,sBAAsB;iBACzB,KAAK,CAAC,gBAAgB;;mBAEtB,OAAO,CAAC,qBAAqB;oBAC5B,OAAO,CAAC,sBAAsB;;;;mCAZG,2BAC5C;;;mBAeU,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;uBACf,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;;;6BAqCxC;CACN"}
1
+ {"version":3,"file":"healthcheck.service.d.ts","sourceRoot":"","sources":["../src/healthcheck.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AAanD,KAAK,YAAY,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzC,qBAAa,WAAW;IACtB,MAAM,CAAC,KAAK,GACV,eAAe,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE,EAC7E,MAAM,YAAY;YAZhB,OAAO,CAAC,sBAAsB;iBACzB,KAAK,CAAC,gBAAgB;;mBACb,OAAO,CAAC,qBAAqB;oBAAU,OAAO,CAAC,sBAAsB;;;;mCAVpE,2BACpB;;;mBAWkB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;uBAAa,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;;;6BAyC5E;CACN"}
@@ -6,9 +6,9 @@ import * as prereqs from "./prerequisites.service";
6
6
  import { Uptime } from "./uptime.service";
7
7
  const handler = createFactory();
8
8
  export class Healthcheck {
9
- static build = (prerequisites) => handler.createHandlers(async (c) => {
9
+ static build = (prerequisites, deps) => handler.createHandlers(async (c) => {
10
10
  const stopwatch = new tools.Stopwatch();
11
- const build = await BuildInfoRepository.extract();
11
+ const build = await BuildInfoRepository.extract(deps);
12
12
  const details = [];
13
13
  for (const prerequisite of prerequisites) {
14
14
  const status = await prerequisite.verify();
@@ -22,7 +22,7 @@ export class Healthcheck {
22
22
  ok,
23
23
  details,
24
24
  version: build.BUILD_VERSION ?? tools.BuildVersion.parse("unknown"),
25
- uptime: Uptime.get(),
25
+ uptime: Uptime.get(deps.Clock),
26
26
  memory: {
27
27
  bytes: MemoryConsumption.get().toBytes(),
28
28
  formatted: MemoryConsumption.get().format(tools.SizeUnit.MB),
@@ -1 +1 @@
1
- {"version":3,"file":"healthcheck.service.js","sourceRoot":"","sources":["../src/healthcheck.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAyB,MAAM,kBAAkB,CAAC;AAEjE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;AAgBhC,MAAM,OAAO,WAAW;IACtB,MAAM,CAAC,KAAK,GAAG,CAAC,aAA6E,EAAE,EAAE,CAC/F,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QAExC,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,CAAC;QAElD,MAAM,OAAO,GAA+C,EAAE,CAAC;QAE/D,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC;YAC5F,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,OAAO;YACxC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC;QAE3C,MAAM,IAAI,GAAG,EAAE,KAAK,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAEvE,MAAM,MAAM,GAA0B;YACpC,EAAE;YACF,OAAO;YACP,OAAO,EAAE,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;YACnE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;YACpB,MAAM,EAAE;gBACN,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;gBACxC,SAAS,EAAE,iBAAiB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;aAC7D;YACD,GAAG,SAAS,CAAC,IAAI,EAAE;SACpB,CAAC;QAEF,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"healthcheck.service.js","sourceRoot":"","sources":["../src/healthcheck.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAyB,MAAM,kBAAkB,CAAC;AAEjE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;AAYhC,MAAM,OAAO,WAAW;IACtB,MAAM,CAAC,KAAK,GAAG,CACb,aAA6E,EAC7E,IAAkB,EAClB,EAAE,CACF,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QAExC,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtD,MAAM,OAAO,GAA+C,EAAE,CAAC;QAE/D,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC;YAC5F,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,OAAO;YACxC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC;QAE3C,MAAM,IAAI,GAAG,EAAE,KAAK,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAEvE,MAAM,MAAM,GAA0B;YACpC,EAAE;YACF,OAAO;YACP,OAAO,EAAE,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;YACnE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YAC9B,MAAM,EAAE;gBACN,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;gBACxC,SAAS,EAAE,iBAAiB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;aAC7D;YACD,GAAG,SAAS,CAAC,IAAI,EAAE;SACpB,CAAC;QAEF,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -11,6 +11,9 @@ export * from "./cache-resolver.service";
11
11
  export * from "./cache-response.middleware";
12
12
  export * from "./client.vo";
13
13
  export * from "./client-from-hono.adapter";
14
+ export * from "./clock.port";
15
+ export * from "./clock-fixed.adapter";
16
+ export * from "./clock-system.adapter";
14
17
  export * from "./command.types";
15
18
  export * from "./command-envelope";
16
19
  export * from "./command-logger.service";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11,6 +11,9 @@ export * from "./cache-resolver.service";
11
11
  export * from "./cache-response.middleware";
12
12
  export * from "./client.vo";
13
13
  export * from "./client-from-hono.adapter";
14
+ export * from "./clock.port";
15
+ export * from "./clock-fixed.adapter";
16
+ export * from "./clock-system.adapter";
14
17
  export * from "./command.types";
15
18
  export * from "./command-envelope";
16
19
  export * from "./command-logger.service";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "../../../clock.port";
2
3
  import type { EventStoreLike } from "../../../event-store-like.types";
3
4
  import type { IdProviderPort } from "../../../id-provider.port";
4
5
  import type * as Commands from "../commands";
@@ -6,6 +7,6 @@ import * as Events from "../events";
6
7
  import type * as Ports from "../ports";
7
8
  import type * as VO from "../value-objects";
8
9
  type AcceptedEvent = Events.UserLanguageSetEventType;
9
- export declare const handleSetUserLanguageCommand: <L extends readonly tools.LanguageType[]>(EventStore: EventStoreLike<AcceptedEvent>, IdProvider: IdProviderPort, query: Ports.UserLanguageQueryPort, supported: VO.SupportedLanguagesSet<L>) => (command: Commands.SetUserLanguageCommandType) => Promise<void>;
10
+ export declare const handleSetUserLanguageCommand: <L extends readonly tools.LanguageType[]>(EventStore: EventStoreLike<AcceptedEvent>, IdProvider: IdProviderPort, Clock: ClockPort, query: Ports.UserLanguageQueryPort, supported: VO.SupportedLanguagesSet<L>) => (command: Commands.SetUserLanguageCommandType) => Promise<void>;
10
11
  export {};
11
12
  //# sourceMappingURL=handleSetUserLanguageCommand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handleSetUserLanguageCommand.d.ts","sourceRoot":"","sources":["../../../../src/modules/preferences/command-handlers/handleSetUserLanguageCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,KAAK,QAAQ,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAEpC,OAAO,KAAK,KAAK,KAAK,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE5C,KAAK,aAAa,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAErD,eAAO,MAAM,4BAA4B,GACtC,CAAC,SAAS,SAAS,KAAK,CAAC,YAAY,EAAE,EACtC,YAAY,cAAc,CAAC,aAAa,CAAC,EACzC,YAAY,cAAc,EAC1B,OAAO,KAAK,CAAC,qBAAqB,EAClC,WAAW,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,MAEjC,SAAS,QAAQ,CAAC,0BAA0B,kBAalD,CAAC"}
1
+ {"version":3,"file":"handleSetUserLanguageCommand.d.ts","sourceRoot":"","sources":["../../../../src/modules/preferences/command-handlers/handleSetUserLanguageCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,KAAK,QAAQ,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAEpC,OAAO,KAAK,KAAK,KAAK,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE5C,KAAK,aAAa,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAErD,eAAO,MAAM,4BAA4B,GACtC,CAAC,SAAS,SAAS,KAAK,CAAC,YAAY,EAAE,EACtC,YAAY,cAAc,CAAC,aAAa,CAAC,EACzC,YAAY,cAAc,EAC1B,OAAO,SAAS,EAChB,OAAO,KAAK,CAAC,qBAAqB,EAClC,WAAW,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,MAEjC,SAAS,QAAQ,CAAC,0BAA0B,kBAalD,CAAC"}
@@ -1,13 +1,13 @@
1
1
  import { createEventEnvelope } from "../../../event-envelope";
2
2
  import * as Events from "../events";
3
3
  import * as Invariants from "../invariants";
4
- export const handleSetUserLanguageCommand = (EventStore, IdProvider, query, supported) => async (command) => {
4
+ export const handleSetUserLanguageCommand = (EventStore, IdProvider, Clock, query, supported) => async (command) => {
5
5
  const candidate = supported.ensure(command.payload.language);
6
6
  const current = await query.get(command.payload.userId);
7
7
  if (Invariants.UserLanguageHasChanged.fails({ current, candidate: command.payload.language }))
8
8
  return;
9
9
  const event = Events.UserLanguageSetEvent.parse({
10
- ...createEventEnvelope(IdProvider, `preferences_${command.payload.userId}`),
10
+ ...createEventEnvelope(`preferences_${command.payload.userId}`, { IdProvider, Clock }),
11
11
  name: Events.USER_LANGUAGE_SET_EVENT,
12
12
  payload: { userId: command.payload.userId, language: candidate },
13
13
  });
@@ -1 +1 @@
1
- {"version":3,"file":"handleSetUserLanguageCommand.js","sourceRoot":"","sources":["../../../../src/modules/preferences/command-handlers/handleSetUserLanguageCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAI9D,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAM5C,MAAM,CAAC,MAAM,4BAA4B,GACvC,CACE,UAAyC,EACzC,UAA0B,EAC1B,KAAkC,EAClC,SAAsC,EACtC,EAAE,CACJ,KAAK,EAAE,OAA4C,EAAE,EAAE;IACrD,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAExD,IAAI,UAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QAAE,OAAO;IAEtG,MAAM,KAAK,GAAG,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC;QAC9C,GAAG,mBAAmB,CAAC,UAAU,EAAE,eAAe,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3E,IAAI,EAAE,MAAM,CAAC,uBAAuB;QACpC,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE;KACvB,CAAC,CAAC;IAE7C,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC"}
1
+ {"version":3,"file":"handleSetUserLanguageCommand.js","sourceRoot":"","sources":["../../../../src/modules/preferences/command-handlers/handleSetUserLanguageCommand.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAI9D,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAM5C,MAAM,CAAC,MAAM,4BAA4B,GACvC,CACE,UAAyC,EACzC,UAA0B,EAC1B,KAAgB,EAChB,KAAkC,EAClC,SAAsC,EACtC,EAAE,CACJ,KAAK,EAAE,OAA4C,EAAE,EAAE;IACrD,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAExD,IAAI,UAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QAAE,OAAO;IAEtG,MAAM,KAAK,GAAG,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC;QAC9C,GAAG,mBAAmB,CAAC,eAAe,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QACtF,IAAI,EAAE,MAAM,CAAC,uBAAuB;QACpC,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE;KACvB,CAAC,CAAC;IAE7C,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC"}
@@ -1,8 +1,10 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { ClockPort } from "./clock.port";
2
3
  import type { LoggerPort } from "./logger.port";
3
4
  import type { RemoteFileStoragePort, RemoteHeadResult, RemotePutFromPathInput, RemotePutFromPathResult } from "./remote-file-storage.port";
4
5
  type RemoteFileStorageNoopConfig = {
5
- logger: LoggerPort;
6
+ Logger: LoggerPort;
7
+ Clock: ClockPort;
6
8
  publicBaseUrl?: string;
7
9
  };
8
10
  export declare class RemoteFileStorageNoopAdapter implements RemoteFileStoragePort {
@@ -1 +1 @@
1
- {"version":3,"file":"remote-file-storage-noop.adapter.d.ts","sourceRoot":"","sources":["../src/remote-file-storage-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AAEpC,KAAK,2BAA2B,GAAG;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF,qBAAa,4BAA6B,YAAW,qBAAqB;IAC5D,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,2BAA2B;IAEhE,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,MAAM;IAKrC,WAAW,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgB5E,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAWzD,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAWnE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAQtD"}
1
+ {"version":3,"file":"remote-file-storage-noop.adapter.d.ts","sourceRoot":"","sources":["../src/remote-file-storage-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AAEpC,KAAK,2BAA2B,GAAG;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpG,qBAAa,4BAA6B,YAAW,qBAAqB;IAC5D,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,2BAA2B;IAEhE,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,MAAM;IAKrC,WAAW,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgB5E,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAWzD,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAWnE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAQtD"}
@@ -10,7 +10,7 @@ export class RemoteFileStorageNoopAdapter {
10
10
  return `${this.config.publicBaseUrl}/${key}`;
11
11
  }
12
12
  async putFromPath(input) {
13
- this.config.logger.info({
13
+ this.config.Logger.info({
14
14
  message: "[NOOP] RemoteFileStorageNoopAdapter putFromPath",
15
15
  component: "infra",
16
16
  operation: "RemoteFileStorageNoopAdapter.putFromPath",
@@ -19,12 +19,12 @@ export class RemoteFileStorageNoopAdapter {
19
19
  return {
20
20
  etag: "noop",
21
21
  size: tools.Size.fromBytes(10),
22
- lastModified: tools.Timestamp.parse(Date.now()),
22
+ lastModified: this.config.Clock.nowMs(),
23
23
  mime: new tools.Mime("text/plain"),
24
24
  };
25
25
  }
26
26
  async head(key) {
27
- this.config.logger.info({
27
+ this.config.Logger.info({
28
28
  message: "[NOOP] RemoteFileStorageNoopAdapter head",
29
29
  component: "infra",
30
30
  operation: "RemoteFileStorageNoopAdapter.head",
@@ -33,7 +33,7 @@ export class RemoteFileStorageNoopAdapter {
33
33
  return { exists: false };
34
34
  }
35
35
  async getStream(key) {
36
- this.config.logger.info({
36
+ this.config.Logger.info({
37
37
  message: "[NOOP] RemoteFileStorageNoopAdapter getStream",
38
38
  component: "infra",
39
39
  operation: "RemoteFileStorageNoopAdapter.getStream",
@@ -42,7 +42,7 @@ export class RemoteFileStorageNoopAdapter {
42
42
  return null;
43
43
  }
44
44
  async delete(key) {
45
- this.config.logger.info({
45
+ this.config.Logger.info({
46
46
  message: "[NOOP] RemoteFileStorageNoopAdapter delete",
47
47
  component: "infra",
48
48
  operation: "RemoteFileStorageNoopAdapter.delete",
@@ -1 +1 @@
1
- {"version":3,"file":"remote-file-storage-noop.adapter.js","sourceRoot":"","sources":["../src/remote-file-storage-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAWtC,MAAM,OAAO,4BAA4B;IACV;IAA7B,YAA6B,MAAmC;QAAnC,WAAM,GAAN,MAAM,CAA6B;IAAG,CAAC;IAEpE,SAAS,CAAC,GAAwB;QAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QACjD,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAA6B;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,iDAAiD;YAC1D,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,0CAA0C;YACrD,QAAQ,EAAE,EAAE,KAAK,EAAE;SACpB,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC/C,IAAI,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAwB;QACjC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,0CAA0C;YACnD,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,mCAAmC;YAC9C,QAAQ,EAAE,EAAE,GAAG,EAAE;SAClB,CAAC,CAAC;QAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAwB;QACtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,+CAA+C;YACxD,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,wCAAwC;YACnD,QAAQ,EAAE,EAAE,GAAG,EAAE;SAClB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAwB;QACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,4CAA4C;YACrD,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,qCAAqC;YAChD,QAAQ,EAAE,EAAE,GAAG,EAAE;SAClB,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"remote-file-storage-noop.adapter.js","sourceRoot":"","sources":["../src/remote-file-storage-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAYtC,MAAM,OAAO,4BAA4B;IACV;IAA7B,YAA6B,MAAmC;QAAnC,WAAM,GAAN,MAAM,CAA6B;IAAG,CAAC;IAEpE,SAAS,CAAC,GAAwB;QAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QACjD,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAA6B;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,iDAAiD;YAC1D,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,0CAA0C;YACrD,QAAQ,EAAE,EAAE,KAAK,EAAE;SACpB,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE;YACvC,IAAI,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAwB;QACjC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,0CAA0C;YACnD,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,mCAAmC;YAC9C,QAAQ,EAAE,EAAE,GAAG,EAAE;SAClB,CAAC,CAAC;QAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAwB;QACtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,+CAA+C;YACxD,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,wCAAwC;YACnD,QAAQ,EAAE,EAAE,GAAG,EAAE;SAClB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAwB;QACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,4CAA4C;YACrD,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,qCAAqC;YAChD,QAAQ,EAAE,EAAE,GAAG,EAAE;SAClB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,13 +1,21 @@
1
1
  import { cors } from "hono/cors";
2
+ import type { ClockPort } from "./clock.port";
2
3
  import type { I18nConfigType } from "./i18n.service";
4
+ import type { IdProviderPort } from "./id-provider.port";
3
5
  import type { LoggerPort } from "./logger.port";
4
6
  export declare const BODY_LIMIT_MAX_SIZE: number & import("zod/v4").$brand<"SizeValue">;
5
7
  type CorsOptions = Parameters<typeof cors>[0];
6
8
  type SetupOverridesType = {
7
9
  cors?: CorsOptions;
8
10
  };
11
+ type Dependencies = {
12
+ Logger: LoggerPort;
13
+ IdProvider: IdProviderPort;
14
+ I18n: I18nConfigType;
15
+ Clock: ClockPort;
16
+ };
9
17
  export declare class Setup {
10
- static essentials(logger: LoggerPort, i18n: I18nConfigType, overrides?: SetupOverridesType): (import("hono").MiddlewareHandler<any, string, {}> | import("hono").MiddlewareHandler<{
18
+ static essentials(deps: Dependencies, overrides?: SetupOverridesType): (import("hono").MiddlewareHandler<any, string, {}> | import("hono").MiddlewareHandler<{
11
19
  Variables: import("./etag-extractor.middleware").EtagVariables;
12
20
  }, string, {}>)[];
13
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"setup.service.d.ts","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAWjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,eAAO,MAAM,mBAAmB,+CAGpB,CAAC;AAGb,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9C,KAAK,kBAAkB,GAAG;IAAE,IAAI,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC;AAEjD,qBAAa,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,kBAAkB;;;CAwB3F"}
1
+ {"version":3,"file":"setup.service.d.ts","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAOjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,eAAO,MAAM,mBAAmB,+CAGpB,CAAC;AAGb,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9C,KAAK,kBAAkB,GAAG;IAAE,IAAI,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC;AAEjD,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,cAAc,CAAC;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,qBAAa,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,kBAAkB;;;CA4BrE"}
@@ -19,25 +19,29 @@ export const BODY_LIMIT_MAX_SIZE = new tools.Size({
19
19
  unit: tools.SizeUnit.kB,
20
20
  }).toBytes();
21
21
  export class Setup {
22
- static essentials(logger, i18n, overrides) {
22
+ static essentials(deps, overrides) {
23
23
  const corsOptions = overrides?.cors ?? { origin: "*" };
24
24
  return [
25
25
  secureHeaders(),
26
26
  bodyLimit({ maxSize: BODY_LIMIT_MAX_SIZE }),
27
27
  uaBlocker({ blocklist: BOTS_REGEX }),
28
- ApiVersion.attach,
28
+ ApiVersion.build({ Clock: deps.Clock }),
29
29
  cors(corsOptions),
30
30
  languageDetector({
31
- supportedLanguages: Object.keys(i18n.supportedLanguages),
32
- fallbackLanguage: i18n.defaultLanguage,
31
+ supportedLanguages: Object.keys(deps.I18n.supportedLanguages),
32
+ fallbackLanguage: deps.I18n.defaultLanguage,
33
33
  caches: false,
34
34
  }),
35
- requestId({ limitLength: 36, headerName: "x-correlation-id" }),
35
+ requestId({
36
+ limitLength: 36,
37
+ headerName: "x-correlation-id",
38
+ generator: () => deps.IdProvider.generate(),
39
+ }),
36
40
  TimeZoneOffset.attach,
37
41
  Context.attach,
38
42
  WeakETagExtractor.attach,
39
43
  ETagExtractor.attach,
40
- HttpLogger.build(logger),
44
+ HttpLogger.build(deps.Logger),
41
45
  timing(),
42
46
  CorrelationStorage.handle(),
43
47
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"setup.service.js","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC;IAChD,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE;CACxB,CAAC,CAAC,OAAO,EAAE,CAAC;AAOb,MAAM,OAAO,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,MAAkB,EAAE,IAAoB,EAAE,SAA8B;QACxF,MAAM,WAAW,GAAG,SAAS,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAEvD,OAAO;YACL,aAAa,EAAE;YACf,SAAS,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;YAC3C,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;YACpC,UAAU,CAAC,MAAM;YACjB,IAAI,CAAC,WAAW,CAAC;YACjB,gBAAgB,CAAC;gBACf,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBACxD,gBAAgB,EAAE,IAAI,CAAC,eAAe;gBACtC,MAAM,EAAE,KAAK;aACd,CAAC;YACF,SAAS,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC;YAC9D,cAAc,CAAC,MAAM;YACrB,OAAO,CAAC,MAAM;YACd,iBAAiB,CAAC,MAAM;YACxB,aAAa,CAAC,MAAM;YACpB,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;YACxB,MAAM,EAAE;YACR,kBAAkB,CAAC,MAAM,EAAE;SAC5B,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"setup.service.js","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAItD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC;IAChD,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE;CACxB,CAAC,CAAC,OAAO,EAAE,CAAC;AAcb,MAAM,OAAO,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,IAAkB,EAAE,SAA8B;QAClE,MAAM,WAAW,GAAG,SAAS,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAEvD,OAAO;YACL,aAAa,EAAE;YACf,SAAS,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;YAC3C,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;YACpC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YACvC,IAAI,CAAC,WAAW,CAAC;YACjB,gBAAgB,CAAC;gBACf,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBAC7D,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;gBAC3C,MAAM,EAAE,KAAK;aACd,CAAC;YACF,SAAS,CAAC;gBACR,WAAW,EAAE,EAAE;gBACf,UAAU,EAAE,kBAAkB;gBAC9B,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;aAC5C,CAAC;YACF,cAAc,CAAC,MAAM;YACrB,OAAO,CAAC,MAAM;YACd,iBAAiB,CAAC,MAAM;YACxB,aAAa,CAAC,MAAM;YACpB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7B,MAAM,EAAE;YACR,kBAAkB,CAAC,MAAM,EAAE;SAC5B,CAAC;IACJ,CAAC;CACF"}