@bgord/bun 1.2.5 → 1.2.7

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 (132) hide show
  1. package/dist/better-auth-logger.service.d.ts +5 -2
  2. package/dist/better-auth-logger.service.d.ts.map +1 -1
  3. package/dist/better-auth-logger.service.js +6 -6
  4. package/dist/better-auth-logger.service.js.map +1 -1
  5. package/dist/command-logger.service.d.ts +6 -2
  6. package/dist/command-logger.service.d.ts.map +1 -1
  7. package/dist/command-logger.service.js +4 -4
  8. package/dist/command-logger.service.js.map +1 -1
  9. package/dist/content-hash-noop.adapter.d.ts +7 -0
  10. package/dist/content-hash-noop.adapter.d.ts.map +1 -0
  11. package/dist/content-hash-noop.adapter.js +6 -0
  12. package/dist/content-hash-noop.adapter.js.map +1 -0
  13. package/dist/content-hash-sha256-bun.adapter.d.ts +7 -0
  14. package/dist/content-hash-sha256-bun.adapter.d.ts.map +1 -0
  15. package/dist/content-hash-sha256-bun.adapter.js +8 -0
  16. package/dist/content-hash-sha256-bun.adapter.js.map +1 -0
  17. package/dist/content-hash.port.d.ts +7 -0
  18. package/dist/content-hash.port.d.ts.map +1 -0
  19. package/dist/content-hash.port.js +2 -0
  20. package/dist/content-hash.port.js.map +1 -0
  21. package/dist/encryption-bun.adapter.d.ts +6 -2
  22. package/dist/encryption-bun.adapter.d.ts.map +1 -1
  23. package/dist/encryption-bun.adapter.js +5 -5
  24. package/dist/encryption-bun.adapter.js.map +1 -1
  25. package/dist/event-handler.service.d.ts +6 -2
  26. package/dist/event-handler.service.d.ts.map +1 -1
  27. package/dist/event-handler.service.js +4 -4
  28. package/dist/event-handler.service.js.map +1 -1
  29. package/dist/event-logger.service.d.ts +6 -2
  30. package/dist/event-logger.service.d.ts.map +1 -1
  31. package/dist/event-logger.service.js +4 -4
  32. package/dist/event-logger.service.js.map +1 -1
  33. package/dist/graceful-shutdown.service.d.ts +5 -2
  34. package/dist/graceful-shutdown.service.d.ts.map +1 -1
  35. package/dist/graceful-shutdown.service.js +18 -10
  36. package/dist/graceful-shutdown.service.js.map +1 -1
  37. package/dist/index.d.ts +6 -0
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +6 -0
  40. package/dist/index.js.map +1 -1
  41. package/dist/jobs.service.d.ts.map +1 -1
  42. package/dist/jobs.service.js.map +1 -1
  43. package/dist/mailer-smtp-with-logger.adapter.d.ts +5 -5
  44. package/dist/mailer-smtp-with-logger.adapter.d.ts.map +1 -1
  45. package/dist/mailer-smtp-with-logger.adapter.js +8 -8
  46. package/dist/mailer-smtp-with-logger.adapter.js.map +1 -1
  47. package/dist/markdown-generator-marked.adapter.d.ts +7 -0
  48. package/dist/markdown-generator-marked.adapter.d.ts.map +1 -0
  49. package/dist/markdown-generator-marked.adapter.js +12 -0
  50. package/dist/markdown-generator-marked.adapter.js.map +1 -0
  51. package/dist/markdown-generator-noop.adapter.d.ts +5 -0
  52. package/dist/markdown-generator-noop.adapter.d.ts.map +1 -0
  53. package/dist/markdown-generator-noop.adapter.js +6 -0
  54. package/dist/markdown-generator-noop.adapter.js.map +1 -0
  55. package/dist/markdown-generator.port.d.ts +4 -0
  56. package/dist/markdown-generator.port.d.ts.map +1 -0
  57. package/dist/markdown-generator.port.js +3 -0
  58. package/dist/markdown-generator.port.js.map +1 -0
  59. package/dist/pdf-generator-noop.adapter.d.ts +6 -2
  60. package/dist/pdf-generator-noop.adapter.d.ts.map +1 -1
  61. package/dist/pdf-generator-noop.adapter.js +8 -4
  62. package/dist/pdf-generator-noop.adapter.js.map +1 -1
  63. package/dist/prerequisites/clock-drift.d.ts +2 -2
  64. package/dist/prerequisites/clock-drift.js +3 -3
  65. package/dist/prerequisites/dns.d.ts +16 -0
  66. package/dist/prerequisites/dns.d.ts.map +1 -0
  67. package/dist/prerequisites/dns.js +30 -0
  68. package/dist/prerequisites/dns.js.map +1 -0
  69. package/dist/prerequisites/index.d.ts +1 -0
  70. package/dist/prerequisites/index.d.ts.map +1 -1
  71. package/dist/prerequisites/index.js +1 -0
  72. package/dist/prerequisites/index.js.map +1 -1
  73. package/dist/prerequisites/log-file.d.ts +2 -2
  74. package/dist/prerequisites/log-file.js +3 -3
  75. package/dist/prerequisites/mailer.d.ts +2 -2
  76. package/dist/prerequisites/mailer.js +3 -3
  77. package/dist/prerequisites/space.d.ts +2 -2
  78. package/dist/prerequisites/space.d.ts.map +1 -1
  79. package/dist/prerequisites/space.js +3 -3
  80. package/dist/prerequisites/space.js.map +1 -1
  81. package/dist/prerequisites/ssl-certificate-expiry.d.ts +2 -2
  82. package/dist/prerequisites/ssl-certificate-expiry.d.ts.map +1 -1
  83. package/dist/prerequisites/ssl-certificate-expiry.js +3 -3
  84. package/dist/prerequisites/ssl-certificate-expiry.js.map +1 -1
  85. package/dist/prerequisites/translations.d.ts +4 -4
  86. package/dist/prerequisites/translations.js +5 -5
  87. package/dist/prerequisites.service.d.ts +2 -2
  88. package/dist/prerequisites.service.js +3 -3
  89. package/dist/remote-file-storage-noop.adapter.d.ts +6 -3
  90. package/dist/remote-file-storage-noop.adapter.d.ts.map +1 -1
  91. package/dist/remote-file-storage-noop.adapter.js +10 -8
  92. package/dist/remote-file-storage-noop.adapter.js.map +1 -1
  93. package/dist/shield-rate-limit.middleware.d.ts.map +1 -1
  94. package/dist/shield-rate-limit.middleware.js.map +1 -1
  95. package/dist/timekeeper-noop.adapter.d.ts +6 -2
  96. package/dist/timekeeper-noop.adapter.d.ts.map +1 -1
  97. package/dist/timekeeper-noop.adapter.js +4 -4
  98. package/dist/timekeeper-noop.adapter.js.map +1 -1
  99. package/dist/translations.service.d.ts.map +1 -1
  100. package/dist/translations.service.js.map +1 -1
  101. package/dist/tsconfig.tsbuildinfo +1 -1
  102. package/package.json +8 -6
  103. package/readme.md +7 -0
  104. package/src/better-auth-logger.service.ts +6 -4
  105. package/src/command-logger.service.ts +4 -2
  106. package/src/content-hash-noop.adapter.ts +7 -0
  107. package/src/content-hash-sha256-bun.adapter.ts +10 -0
  108. package/src/content-hash.port.ts +5 -0
  109. package/src/encryption-bun.adapter.ts +5 -3
  110. package/src/event-handler.service.ts +4 -2
  111. package/src/event-logger.service.ts +4 -2
  112. package/src/graceful-shutdown.service.ts +18 -8
  113. package/src/index.ts +6 -0
  114. package/src/jobs.service.ts +1 -0
  115. package/src/mailer-smtp-with-logger.adapter.ts +8 -7
  116. package/src/markdown-generator-marked.adapter.ts +15 -0
  117. package/src/markdown-generator-noop.adapter.ts +7 -0
  118. package/src/markdown-generator.port.ts +3 -0
  119. package/src/pdf-generator-noop.adapter.ts +8 -2
  120. package/src/prerequisites/clock-drift.ts +4 -4
  121. package/src/prerequisites/dns.ts +36 -0
  122. package/src/prerequisites/index.ts +1 -0
  123. package/src/prerequisites/log-file.ts +4 -4
  124. package/src/prerequisites/mailer.ts +4 -4
  125. package/src/prerequisites/space.ts +4 -4
  126. package/src/prerequisites/ssl-certificate-expiry.ts +4 -4
  127. package/src/prerequisites/translations.ts +7 -7
  128. package/src/prerequisites.service.ts +4 -4
  129. package/src/remote-file-storage-noop.adapter.ts +13 -9
  130. package/src/shield-rate-limit.middleware.ts +1 -0
  131. package/src/timekeeper-noop.adapter.ts +4 -2
  132. package/src/translations.service.ts +1 -0
@@ -57,7 +57,7 @@ export type PrerequisiteConfigType = { label: string; enabled?: boolean };
57
57
 
58
58
  export const PrerequisitesError = { Failure: "prerequisites.failure" } as const;
59
59
 
60
- type Dependencies = { logger: LoggerPort; clock: ClockPort };
60
+ type Dependencies = { Logger: LoggerPort; Clock: ClockPort };
61
61
 
62
62
  /** @public */
63
63
  export class Prerequisites {
@@ -69,16 +69,16 @@ export class Prerequisites {
69
69
  const results = await Promise.all(
70
70
  prerequisites.map(async (prerequisite) => ({
71
71
  prerequisite,
72
- outcome: await prerequisite.verify(this.deps.clock),
72
+ outcome: await prerequisite.verify(this.deps.Clock),
73
73
  })),
74
74
  );
75
75
 
76
76
  const failed = results.filter((result) => result.outcome.status === PrerequisiteStatusEnum.failure);
77
77
 
78
- if (failed.length === 0) return this.deps.logger.info({ message: "Prerequisites ok", ...this.base });
78
+ if (failed.length === 0) return this.deps.Logger.info({ message: "Prerequisites ok", ...this.base });
79
79
 
80
80
  for (const failure of failed) {
81
- this.deps.logger.error({
81
+ this.deps.Logger.error({
82
82
  message: "Prerequisite failed",
83
83
  metadata: { label: failure.prerequisite.label, kind: failure.prerequisite.kind },
84
84
  // @ts-expect-error
@@ -8,20 +8,24 @@ import type {
8
8
  RemotePutFromPathResult,
9
9
  } from "./remote-file-storage.port";
10
10
 
11
- type RemoteFileStorageNoopConfig = { Logger: LoggerPort; Clock: ClockPort; publicBaseUrl?: string };
11
+ type RemoteFileStorageNoopConfig = { publicBaseUrl?: string };
12
+ type Dependencies = { Logger: LoggerPort; Clock: ClockPort };
12
13
 
13
14
  export class RemoteFileStorageNoopAdapter implements RemoteFileStoragePort {
14
15
  private readonly base = { component: "infra", operation: "RemoteFileStorageNoopAdapter" };
15
16
 
16
- constructor(private readonly config: RemoteFileStorageNoopConfig) {}
17
+ constructor(
18
+ private readonly deps: Dependencies,
19
+ private readonly config?: RemoteFileStorageNoopConfig,
20
+ ) {}
17
21
 
18
22
  publicUrl(key: tools.ObjectKeyType): string {
19
- if (!this.config.publicBaseUrl) return `/${key}`;
20
- return `${this.config.publicBaseUrl}/${key}`;
23
+ if (!this.config?.publicBaseUrl) return `/${key}`;
24
+ return `${this.config?.publicBaseUrl}/${key}`;
21
25
  }
22
26
 
23
27
  async putFromPath(input: RemotePutFromPathInput): Promise<RemotePutFromPathResult> {
24
- this.config.Logger.info({
28
+ this.deps.Logger.info({
25
29
  message: "[NOOP] RemoteFileStorageNoopAdapter putFromPath",
26
30
  metadata: { input },
27
31
  ...this.base,
@@ -30,13 +34,13 @@ export class RemoteFileStorageNoopAdapter implements RemoteFileStoragePort {
30
34
  return {
31
35
  etag: "noop",
32
36
  size: tools.Size.fromBytes(10),
33
- lastModified: this.config.Clock.now(),
37
+ lastModified: this.deps.Clock.now(),
34
38
  mime: new tools.Mime("text/plain"),
35
39
  };
36
40
  }
37
41
 
38
42
  async head(key: tools.ObjectKeyType): Promise<RemoteHeadResult> {
39
- this.config.Logger.info({
43
+ this.deps.Logger.info({
40
44
  message: "[NOOP] RemoteFileStorageNoopAdapter head",
41
45
  metadata: { key },
42
46
  ...this.base,
@@ -46,7 +50,7 @@ export class RemoteFileStorageNoopAdapter implements RemoteFileStoragePort {
46
50
  }
47
51
 
48
52
  async getStream(key: tools.ObjectKeyType): Promise<ReadableStream | null> {
49
- this.config.Logger.info({
53
+ this.deps.Logger.info({
50
54
  message: "[NOOP] RemoteFileStorageNoopAdapter getStream",
51
55
  metadata: { key },
52
56
  ...this.base,
@@ -56,7 +60,7 @@ export class RemoteFileStorageNoopAdapter implements RemoteFileStoragePort {
56
60
  }
57
61
 
58
62
  async delete(key: tools.ObjectKeyType): Promise<void> {
59
- this.config.Logger.info({
63
+ this.deps.Logger.info({
60
64
  message: "[NOOP] RemoteFileStorageNoopAdapter delete",
61
65
  metadata: { key },
62
66
  ...this.base,
@@ -7,6 +7,7 @@ import type { RateLimitStorePort } from "./rate-limit-store.port";
7
7
 
8
8
  type SubjectResolver = (c: Context) => string;
9
9
  type RateLimitShieldOptionsType = { enabled: boolean; store: RateLimitStorePort; subject: SubjectResolver };
10
+
10
11
  type Dependencies = { Clock: ClockPort };
11
12
 
12
13
  export const AnonSubjectResolver: SubjectResolver = () => "anon";
@@ -1,10 +1,12 @@
1
1
  import type { ClockPort } from "./clock.port";
2
2
  import type { TimekeeperPort } from "./timekeeper.port";
3
3
 
4
+ type Dependencies = { Clock: ClockPort };
5
+
4
6
  export class TimekeeperNoopAdapter implements TimekeeperPort {
5
- constructor(private readonly clock: ClockPort) {}
7
+ constructor(private readonly deps: Dependencies) {}
6
8
 
7
9
  async get() {
8
- return this.clock.now();
10
+ return this.deps.Clock.now();
9
11
  }
10
12
  }
@@ -6,6 +6,7 @@ import type { LoggerPort } from "./logger.port";
6
6
  const handler = createFactory();
7
7
 
8
8
  type Config = TranslationsSupportedLanguagesType;
9
+
9
10
  type Dependencies = { JsonFileReader: JsonFileReaderPort; Logger: LoggerPort };
10
11
 
11
12
  export class Translations {