glasswork 1.4.1 → 1.6.0

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 (224) hide show
  1. package/CHANGELOG.md +75 -1
  2. package/README.md +6 -2
  3. package/dist/audit/audit-logger.d.ts +6 -1
  4. package/dist/audit/audit-logger.d.ts.map +1 -1
  5. package/dist/audit/audit-logger.js +6 -1
  6. package/dist/audit/audit-logger.js.map +1 -1
  7. package/dist/auth/assert.d.ts +4 -0
  8. package/dist/auth/assert.d.ts.map +1 -1
  9. package/dist/auth/assert.js +7 -3
  10. package/dist/auth/assert.js.map +1 -1
  11. package/dist/auth/better-auth-provider.js +13 -4
  12. package/dist/auth/better-auth-provider.js.map +1 -1
  13. package/dist/auth/errors.d.ts +17 -0
  14. package/dist/auth/errors.d.ts.map +1 -0
  15. package/dist/auth/errors.js +23 -0
  16. package/dist/auth/errors.js.map +1 -0
  17. package/dist/auth/index.d.ts +2 -1
  18. package/dist/auth/index.d.ts.map +1 -1
  19. package/dist/auth/index.js +1 -0
  20. package/dist/auth/index.js.map +1 -1
  21. package/dist/auth/middleware.d.ts +13 -0
  22. package/dist/auth/middleware.d.ts.map +1 -1
  23. package/dist/auth/middleware.js +19 -8
  24. package/dist/auth/middleware.js.map +1 -1
  25. package/dist/auth/types.d.ts +4 -0
  26. package/dist/auth/types.d.ts.map +1 -1
  27. package/dist/config/providers.d.ts.map +1 -1
  28. package/dist/config/providers.js +5 -4
  29. package/dist/config/providers.js.map +1 -1
  30. package/dist/core/bootstrap.d.ts +2 -2
  31. package/dist/core/bootstrap.d.ts.map +1 -1
  32. package/dist/core/bootstrap.js +162 -83
  33. package/dist/core/bootstrap.js.map +1 -1
  34. package/dist/core/contract.d.ts +9 -2
  35. package/dist/core/contract.d.ts.map +1 -1
  36. package/dist/core/contract.js +2 -1
  37. package/dist/core/contract.js.map +1 -1
  38. package/dist/core/errors.d.ts +16 -0
  39. package/dist/core/errors.d.ts.map +1 -0
  40. package/dist/core/errors.js +31 -0
  41. package/dist/core/errors.js.map +1 -0
  42. package/dist/core/glasswork-config.d.ts +42 -0
  43. package/dist/core/glasswork-config.d.ts.map +1 -0
  44. package/dist/core/glasswork-config.js +2 -0
  45. package/dist/core/glasswork-config.js.map +1 -0
  46. package/dist/core/index.d.ts +7 -4
  47. package/dist/core/index.d.ts.map +1 -1
  48. package/dist/core/index.js +5 -3
  49. package/dist/core/index.js.map +1 -1
  50. package/dist/core/job-services.d.ts +16 -0
  51. package/dist/core/job-services.d.ts.map +1 -0
  52. package/dist/core/job-services.js +19 -0
  53. package/dist/core/job-services.js.map +1 -0
  54. package/dist/core/lifecycle.d.ts +30 -2
  55. package/dist/core/lifecycle.d.ts.map +1 -1
  56. package/dist/core/lifecycle.js +100 -13
  57. package/dist/core/lifecycle.js.map +1 -1
  58. package/dist/core/module-graph.d.ts +7 -1
  59. package/dist/core/module-graph.d.ts.map +1 -1
  60. package/dist/core/module-graph.js +90 -21
  61. package/dist/core/module-graph.js.map +1 -1
  62. package/dist/core/module-inspection.d.ts +44 -0
  63. package/dist/core/module-inspection.d.ts.map +1 -0
  64. package/dist/core/module-inspection.js +114 -0
  65. package/dist/core/module-inspection.js.map +1 -0
  66. package/dist/core/module-runtime.d.ts +22 -0
  67. package/dist/core/module-runtime.d.ts.map +1 -0
  68. package/dist/core/module-runtime.js +252 -0
  69. package/dist/core/module-runtime.js.map +1 -0
  70. package/dist/core/module.d.ts +5 -1
  71. package/dist/core/module.d.ts.map +1 -1
  72. package/dist/core/module.js +15 -3
  73. package/dist/core/module.js.map +1 -1
  74. package/dist/core/request-scope.d.ts +1 -1
  75. package/dist/core/request-scope.d.ts.map +1 -1
  76. package/dist/core/request-scope.js +10 -8
  77. package/dist/core/request-scope.js.map +1 -1
  78. package/dist/core/types.d.ts +106 -10
  79. package/dist/core/types.d.ts.map +1 -1
  80. package/dist/email/compiler/compiler.d.ts.map +1 -1
  81. package/dist/email/compiler/compiler.js +24 -13
  82. package/dist/email/compiler/compiler.js.map +1 -1
  83. package/dist/email/email-service.d.ts +0 -4
  84. package/dist/email/email-service.d.ts.map +1 -1
  85. package/dist/email/email-service.js +2 -29
  86. package/dist/email/email-service.js.map +1 -1
  87. package/dist/email/html-to-text.d.ts +14 -0
  88. package/dist/email/html-to-text.d.ts.map +1 -0
  89. package/dist/email/html-to-text.js +47 -0
  90. package/dist/email/html-to-text.js.map +1 -0
  91. package/dist/email/index.d.ts +1 -0
  92. package/dist/email/index.d.ts.map +1 -1
  93. package/dist/email/index.js +1 -0
  94. package/dist/email/index.js.map +1 -1
  95. package/dist/email/ses.d.ts +7 -0
  96. package/dist/email/ses.d.ts.map +1 -0
  97. package/dist/email/ses.js +6 -0
  98. package/dist/email/ses.js.map +1 -0
  99. package/dist/email/smtp.d.ts +7 -0
  100. package/dist/email/smtp.d.ts.map +1 -0
  101. package/dist/email/smtp.js +6 -0
  102. package/dist/email/smtp.js.map +1 -0
  103. package/dist/email/transports/ses-transport.d.ts.map +1 -1
  104. package/dist/email/transports/ses-transport.js +6 -4
  105. package/dist/email/transports/ses-transport.js.map +1 -1
  106. package/dist/email/transports/smtp-transport.d.ts +40 -0
  107. package/dist/email/transports/smtp-transport.d.ts.map +1 -0
  108. package/dist/email/transports/smtp-transport.js +67 -0
  109. package/dist/email/transports/smtp-transport.js.map +1 -0
  110. package/dist/http/error-handler.d.ts +7 -1
  111. package/dist/http/error-handler.d.ts.map +1 -1
  112. package/dist/http/error-handler.js +18 -6
  113. package/dist/http/error-handler.js.map +1 -1
  114. package/dist/http/error-response.dto.d.ts +6 -0
  115. package/dist/http/error-response.dto.d.ts.map +1 -1
  116. package/dist/http/error-response.dto.js +6 -0
  117. package/dist/http/error-response.dto.js.map +1 -1
  118. package/dist/http/errors.d.ts +12 -0
  119. package/dist/http/errors.d.ts.map +1 -1
  120. package/dist/http/errors.js +35 -23
  121. package/dist/http/errors.js.map +1 -1
  122. package/dist/http/index.d.ts +1 -1
  123. package/dist/http/index.d.ts.map +1 -1
  124. package/dist/http/index.js +1 -1
  125. package/dist/http/index.js.map +1 -1
  126. package/dist/http/route-authorization.d.ts.map +1 -1
  127. package/dist/http/route-authorization.js +3 -3
  128. package/dist/http/route-authorization.js.map +1 -1
  129. package/dist/http/route-helpers.d.ts +2 -1
  130. package/dist/http/route-helpers.d.ts.map +1 -1
  131. package/dist/http/route-helpers.js +29 -2
  132. package/dist/http/route-helpers.js.map +1 -1
  133. package/dist/http/route-openapi-context.d.ts +15 -1
  134. package/dist/http/route-openapi-context.d.ts.map +1 -1
  135. package/dist/http/route-openapi-context.js.map +1 -1
  136. package/dist/http/route-response.d.ts +6 -2
  137. package/dist/http/route-response.d.ts.map +1 -1
  138. package/dist/http/route-response.js +36 -16
  139. package/dist/http/route-response.js.map +1 -1
  140. package/dist/http/route-types.d.ts +12 -4
  141. package/dist/http/route-types.d.ts.map +1 -1
  142. package/dist/http/route-types.js.map +1 -1
  143. package/dist/http/route-validation.d.ts.map +1 -1
  144. package/dist/http/route-validation.js +21 -1
  145. package/dist/http/route-validation.js.map +1 -1
  146. package/dist/jobs/drivers/eventbridge-scheduler-driver.d.ts +1 -0
  147. package/dist/jobs/drivers/eventbridge-scheduler-driver.d.ts.map +1 -1
  148. package/dist/jobs/drivers/eventbridge-scheduler-driver.js +12 -2
  149. package/dist/jobs/drivers/eventbridge-scheduler-driver.js.map +1 -1
  150. package/dist/jobs/drivers/mock-driver.d.ts +4 -0
  151. package/dist/jobs/drivers/mock-driver.d.ts.map +1 -1
  152. package/dist/jobs/drivers/mock-driver.js +10 -3
  153. package/dist/jobs/drivers/mock-driver.js.map +1 -1
  154. package/dist/jobs/drivers/sqs-driver.d.ts +1 -1
  155. package/dist/jobs/drivers/sqs-driver.d.ts.map +1 -1
  156. package/dist/jobs/drivers/sqs-driver.js +8 -2
  157. package/dist/jobs/drivers/sqs-driver.js.map +1 -1
  158. package/dist/jobs/errors.d.ts +14 -1
  159. package/dist/jobs/errors.d.ts.map +1 -1
  160. package/dist/jobs/errors.js +19 -2
  161. package/dist/jobs/errors.js.map +1 -1
  162. package/dist/jobs/index.d.ts +3 -3
  163. package/dist/jobs/index.d.ts.map +1 -1
  164. package/dist/jobs/index.js +1 -1
  165. package/dist/jobs/index.js.map +1 -1
  166. package/dist/jobs/job-service.d.ts +46 -7
  167. package/dist/jobs/job-service.d.ts.map +1 -1
  168. package/dist/jobs/job-service.js +63 -9
  169. package/dist/jobs/job-service.js.map +1 -1
  170. package/dist/jobs/scheduler.d.ts +6 -0
  171. package/dist/jobs/scheduler.d.ts.map +1 -0
  172. package/dist/jobs/scheduler.js +6 -0
  173. package/dist/jobs/scheduler.js.map +1 -0
  174. package/dist/jobs/sqs.d.ts +7 -0
  175. package/dist/jobs/sqs.d.ts.map +1 -0
  176. package/dist/jobs/sqs.js +7 -0
  177. package/dist/jobs/sqs.js.map +1 -0
  178. package/dist/jobs/types.d.ts +6 -1
  179. package/dist/jobs/types.d.ts.map +1 -1
  180. package/dist/jobs/utils.d.ts +6 -0
  181. package/dist/jobs/utils.d.ts.map +1 -1
  182. package/dist/jobs/utils.js +8 -0
  183. package/dist/jobs/utils.js.map +1 -1
  184. package/dist/jobs/worker.d.ts.map +1 -1
  185. package/dist/jobs/worker.js +28 -23
  186. package/dist/jobs/worker.js.map +1 -1
  187. package/dist/middleware/rate-limit.d.ts.map +1 -1
  188. package/dist/middleware/rate-limit.js +5 -4
  189. package/dist/middleware/rate-limit.js.map +1 -1
  190. package/dist/observability/exception-tracking.d.ts +23 -0
  191. package/dist/observability/exception-tracking.d.ts.map +1 -1
  192. package/dist/observability/exception-tracking.js +101 -6
  193. package/dist/observability/exception-tracking.js.map +1 -1
  194. package/dist/observability/index.d.ts +1 -1
  195. package/dist/observability/index.d.ts.map +1 -1
  196. package/dist/observability/index.js +1 -1
  197. package/dist/observability/index.js.map +1 -1
  198. package/dist/observability/sanitizers.d.ts.map +1 -1
  199. package/dist/observability/sanitizers.js +2 -0
  200. package/dist/observability/sanitizers.js.map +1 -1
  201. package/dist/openapi/drift.d.ts +17 -2
  202. package/dist/openapi/drift.d.ts.map +1 -1
  203. package/dist/openapi/drift.js +79 -5
  204. package/dist/openapi/drift.js.map +1 -1
  205. package/dist/openapi/openapi.d.ts.map +1 -1
  206. package/dist/openapi/openapi.js +2 -1
  207. package/dist/openapi/openapi.js.map +1 -1
  208. package/dist/utils/environment.d.ts +10 -2
  209. package/dist/utils/environment.d.ts.map +1 -1
  210. package/dist/utils/environment.js +20 -3
  211. package/dist/utils/environment.js.map +1 -1
  212. package/dist/utils/module-interop.d.ts +9 -0
  213. package/dist/utils/module-interop.d.ts.map +1 -0
  214. package/dist/utils/module-interop.js +16 -0
  215. package/dist/utils/module-interop.js.map +1 -0
  216. package/dist/utils/optional-dependency.d.ts +6 -0
  217. package/dist/utils/optional-dependency.d.ts.map +1 -0
  218. package/dist/utils/optional-dependency.js +16 -0
  219. package/dist/utils/optional-dependency.js.map +1 -0
  220. package/dist/utils/serialize-prisma-types.d.ts +51 -15
  221. package/dist/utils/serialize-prisma-types.d.ts.map +1 -1
  222. package/dist/utils/serialize-prisma-types.js +47 -16
  223. package/dist/utils/serialize-prisma-types.js.map +1 -1
  224. package/package.json +56 -12
@@ -1,5 +1,7 @@
1
1
  import type { AwilixContainer } from 'awilix';
2
2
  import type { Context, ErrorHandler, Hono, MiddlewareHandler } from 'hono';
3
+ import type { TypeTransformer } from '../utils/serialize-prisma-types.js';
4
+ import type { ConfiguredDecimalSerialization, ConfiguredStrictTypes } from './glasswork-config.js';
3
5
  import type { RouteFactory } from './route-factory.js';
4
6
  /**
5
7
  * Type alias for the return type of route() - a non-empty array of middleware handlers.
@@ -58,8 +60,8 @@ export interface OnModuleInit {
58
60
  * - Executed in parallel with other services' onModuleDestroy hooks
59
61
  *
60
62
  * **Error Handling:**
61
- * - Errors are logged but do not prevent other services from cleaning up
62
- * - Best practice: Use try-catch within your hook to prevent errors
63
+ * - Errors are logged and do not prevent other services from cleaning up
64
+ * - `stop()` rejects after every hook has finished, with the error or an `AggregateError`
63
65
  *
64
66
  * **Use Cases:**
65
67
  * - Closing database connections
@@ -86,16 +88,45 @@ export type ProviderConfig = Constructor | {
86
88
  provide: string | Constructor;
87
89
  useClass: Constructor;
88
90
  scope?: ServiceScope;
91
+ /** Release a SINGLETON or SCOPED instance when its container or scope is disposed. */
92
+ dispose?: ProviderDisposer;
89
93
  } | {
90
94
  provide: string;
95
+ /** Borrowed: Glasswork never disposes a value provider. */
91
96
  useValue: unknown;
92
97
  } | {
93
98
  provide: string;
94
99
  useFactory: (dependencies: any) => unknown;
100
+ /** Declare factory dependencies to order async initialization (cradle injection). */
95
101
  inject?: string[];
96
102
  scope?: ServiceScope;
103
+ /**
104
+ * Await the factory's promise during bootstrap. Defaults to true for native `async`
105
+ * functions. Set it for factories that return a promise without being declared `async`,
106
+ * such as transpiled or bundled code. Async factories must use SINGLETON scope.
107
+ */
108
+ async?: boolean;
109
+ /**
110
+ * Release a SINGLETON or SCOPED value when its container or scope is disposed. An async factory's
111
+ * disposer receives the resolved value.
112
+ */
113
+ dispose?: ProviderDisposer;
97
114
  };
115
+ /** Releases a resolved provider instance; runs once when `stop()` or a scope disposes it. */
116
+ export type ProviderDisposer = (instance: any) => void | Promise<void>;
117
+ /**
118
+ * Replaces a provider for one bootstrap. Set `module` (the module or its name) to replace
119
+ * the provider in that module only, for example when several modules declare a private
120
+ * provider with the same name.
121
+ */
122
+ export type ProviderOverride = ProviderConfig | (Exclude<ProviderConfig, Constructor> & {
123
+ module: ModuleConfig | string;
124
+ });
98
125
  export type { RouteBinder, RouteFactory } from './route-factory.js';
126
+ /** Deferred module import, evaluated during bootstrap. */
127
+ export interface ForwardReference {
128
+ forwardRef: () => ModuleConfig;
129
+ }
99
130
  /**
100
131
  * Module configuration
101
132
  */
@@ -115,11 +146,11 @@ export interface ModuleConfig {
115
146
  /**
116
147
  * Modules to import (access their exported providers)
117
148
  */
118
- imports?: ModuleConfig[];
149
+ imports?: (ModuleConfig | ForwardReference)[];
119
150
  /**
120
151
  * Providers to export (available to importing modules)
121
152
  */
122
- exports?: (Constructor | string)[];
153
+ exports?: (Constructor | string | ModuleConfig | ForwardReference)[];
123
154
  /**
124
155
  * Route factory function(s).
125
156
  * Can be a single factory or an array of factories that will be merged.
@@ -236,6 +267,56 @@ export type OpenAPIResponseProcessor = (response: OpenAPIResponseObject, context
236
267
  */
237
268
  export interface RouteConfigExtensions {
238
269
  }
270
+ /**
271
+ * Response serialization for every route. The `decimals` and `strictTypes` types follow the
272
+ * {@link GlassworkConfig} declaration, so the runtime option cannot drift from the types.
273
+ * A route's own `strictTypes` and `serialization.transformers` still apply on top.
274
+ */
275
+ export type SerializationOptions = {
276
+ /**
277
+ * Transformers for every route. They run after a route's own transformers and before the
278
+ * built-in Date and Decimal handling.
279
+ */
280
+ transformers?: TypeTransformer[];
281
+ } & (ConfiguredDecimalSerialization extends 'string' ? {
282
+ /** Decimals serialize with `toFixed()`, as `GlassworkConfig` declares. */
283
+ decimals: 'string';
284
+ } : {
285
+ /**
286
+ * Decimals serialize with `toNumber()`. Declare `decimals: 'string'` in `GlassworkConfig`
287
+ * to serialize them as strings; this option then requires the same value.
288
+ */
289
+ decimals?: 'number';
290
+ }) & (ConfiguredStrictTypes extends true ? {
291
+ /** Every route skips automatic serialization, as `GlassworkConfig` declares. */
292
+ strictTypes: true;
293
+ } : {
294
+ /**
295
+ * Every route serializes automatically unless it sets `strictTypes: true`. Declare
296
+ * `strictTypes: true` in `GlassworkConfig` to turn it around; this option then
297
+ * requires `true`.
298
+ */
299
+ strictTypes?: false;
300
+ });
301
+ /**
302
+ * Whether {@link GlassworkConfig} declares a value that differs from the defaults, which makes
303
+ * the `serialization` bootstrap option required.
304
+ */
305
+ export type RequiresSerializationOption = ConfiguredDecimalSerialization extends 'string' ? true : ConfiguredStrictTypes;
306
+ /**
307
+ * The `serialization` bootstrap option, required once {@link GlassworkConfig} declares a
308
+ * value that differs from the defaults.
309
+ */
310
+ export type ConfiguredSerializationOption = RequiresSerializationOption extends true ? {
311
+ /** Response serialization for every route; required to match `GlassworkConfig`. */
312
+ serialization: SerializationOptions;
313
+ } : {
314
+ /**
315
+ * Response serialization for every route: Decimal format, strict types and
316
+ * transformers. Declare the same values in `GlassworkConfig` for the route types.
317
+ */
318
+ serialization?: SerializationOptions;
319
+ };
239
320
  /**
240
321
  * OpenAPI configuration options
241
322
  */
@@ -428,15 +509,28 @@ export interface ExceptionTrackingOptions {
428
509
  * ```
429
510
  */
430
511
  trackStatusCodes?: (statusCode: number) => boolean;
512
+ /**
513
+ * Maximum time `stop()` waits for reports that are still being sent (default: 2000 ms).
514
+ * The flush is best effort: a timeout or failure is logged and never fails `stop()`.
515
+ */
516
+ flushTimeoutMs?: number;
431
517
  }
518
+ /**
519
+ * The `options` parameter of `bootstrap()`: required once {@link GlassworkConfig} requires the
520
+ * `serialization` option, so forgetting it is a compile error.
521
+ */
522
+ export type BootstrapArguments = RequiresSerializationOption extends true ? [options: BootstrapOptions] : [options?: BootstrapOptions];
432
523
  /**
433
524
  * Bootstrap options
434
525
  */
435
- export interface BootstrapOptions {
526
+ export interface BootstrapOptions extends ConfiguredSerializationOption {
436
527
  /** Runtime initializes providers; contract mode only registers route metadata. */
437
528
  mode?: 'runtime' | 'contract';
438
- /** Applied after module registration and before any provider is initialized. */
439
- providerOverrides?: ProviderConfig[];
529
+ /**
530
+ * Applied after module registration and before any provider is initialized. An override
531
+ * without `module` replaces the provider in every module that declares it.
532
+ */
533
+ providerOverrides?: ProviderOverride[];
440
534
  /**
441
535
  * Environment (auto-detected from NODE_ENV if not provided)
442
536
  */
@@ -489,15 +583,17 @@ export interface BootstrapResult {
489
583
  */
490
584
  app: Hono;
491
585
  /**
492
- * Awilix container (fully accessible)
586
+ * Awilix container view for the root module: local providers and imported exports.
493
587
  */
494
588
  container: AwilixContainer;
495
589
  /**
496
- * Start the application (run lifecycle hooks)
590
+ * Start the application: run `onModuleInit` hooks once. Concurrent calls resolve together
591
+ * when every hook has finished; after a failure, every call rejects with the same error.
497
592
  */
498
593
  start: () => Promise<void>;
499
594
  /**
500
- * Stop the application (run lifecycle hooks)
595
+ * Stop the application: run `onModuleDestroy` hooks once, after a pending start has
596
+ * settled. Concurrent calls share the same completion; `start()` rejects afterwards.
501
597
  */
502
598
  stop: () => Promise<void>;
503
599
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/email/compiler/compiler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAgB,MAAM,YAAY,CAAC;AAEjE;;;;;;;;;;GAUG;AAEH;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC;AACrF,MAAM,MAAM,aAAa,GAAG,CAC1B,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,KACd,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEpD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,aAAa,EAC1B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,gBAAgB,CAAC,CA6B3B;AAwnBD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACtE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/email/compiler/compiler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAgB,MAAM,YAAY,CAAC;AAEjE;;;;;;;;;;GAUG;AAEH;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC;AACrF,MAAM,MAAM,aAAa,GAAG,CAC1B,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,KACd,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEpD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,aAAa,EAC1B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,gBAAgB,CAAC,CA6B3B;AAmoBD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACtE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
@@ -77,30 +77,41 @@ export function render(ctx: ${interfaceName}): { html: string; text: string } {
77
77
 
78
78
  /**
79
79
  * Converts HTML to plain text for email clients that don't support HTML.
80
+ * Same logic as htmlToText in glasswork/email: skips the head, comments, scripts and
81
+ * hidden preheader text, and keeps link targets.
80
82
  */
81
83
  function htmlToText(html: string): string {
82
84
  return html
83
- // Remove style and script tags with content
85
+ .replace(/<head[\\s\\S]*?<\\/head>/gi, '')
86
+ .replace(/<!--[\\s\\S]*?-->/g, '')
84
87
  .replace(/<style[^>]*>[\\s\\S]*?<\\/style>/gi, '')
85
88
  .replace(/<script[^>]*>[\\s\\S]*?<\\/script>/gi, '')
86
- // Convert line breaks
89
+ .replace(/<(div|span)\\s[^>]*display:\\s*none[^>]*>[\\s\\S]*?<\\/\\1>/gi, '')
90
+ .replace(/<a\\s[^>]*href="([^"]*)"[^>]*>([\\s\\S]*?)<\\/a>/gi, (_match, href, label) => {
91
+ const text = label.replace(/<[^>]+>/g, '').trim();
92
+ if (text) return text === href ? href : text + ': ' + href;
93
+ const alt = /<img\\s[^>]*alt="([^"]*)"/i.exec(label);
94
+ return (alt && alt[1]) || href;
95
+ })
87
96
  .replace(/<br\\s*\\/?>/gi, '\\n')
88
- // Convert block elements to newlines
89
- .replace(/<\\/(p|div|tr|h[1-6])>/gi, '\\n')
90
- // Convert list items
91
- .replace(/<li[^>]*>/gi, '• ')
92
- .replace(/<\\/li>/gi, '\\n')
93
- // Remove remaining HTML tags
97
+ .replace(/<li(\\s[^>]*)?>/gi, '• ')
98
+ .replace(/<\\/(p|div|li|tr|table|h[1-6])>/gi, '\\n')
94
99
  .replace(/<[^>]+>/g, '')
95
- // Decode common HTML entities
96
100
  .replace(/&nbsp;/gi, ' ')
97
- .replace(/&amp;/gi, '&')
98
101
  .replace(/&lt;/gi, '<')
99
102
  .replace(/&gt;/gi, '>')
100
103
  .replace(/&quot;/gi, '"')
101
- .replace(/&#39;/gi, "'")
102
- // Clean up whitespace
103
- .replace(/\\n\\s*\\n\\s*\\n/g, '\\n\\n')
104
+ .replace(/&#(\\d+);/g, (match, code) =>
105
+ Number(code) <= 0x10ffff ? String.fromCodePoint(Number(code)) : match
106
+ )
107
+ .replace(/&#x([0-9a-f]+);/gi, (match, code) =>
108
+ Number.parseInt(code, 16) <= 0x10ffff ? String.fromCodePoint(Number.parseInt(code, 16)) : match
109
+ )
110
+ .replace(/&amp;/gi, '&')
111
+ .split('\\n')
112
+ .map((line) => line.replace(/[ \\t]+/g, ' ').trim())
113
+ .join('\\n')
114
+ .replace(/\\n{3,}/g, '\\n\\n')
104
115
  .trim();
105
116
  }
106
117
 
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/email/compiler/compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/email/compiler/compiler.ts"],"names":[],"mappings":"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"}
@@ -49,9 +49,5 @@ export declare class EmailService {
49
49
  * Gets the transport name for debugging
50
50
  */
51
51
  get transportName(): string;
52
- /**
53
- * Converts HTML to plain text for email clients that don't support HTML
54
- */
55
- private htmlToText;
56
52
  }
57
53
  //# sourceMappingURL=email-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"email-service.d.ts","sourceRoot":"","sources":["../../src/email/email-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EAEhB,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAC7D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAa;IAErC,YAAY,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,UAAU,EAMnD;IAED;;;;;;OAMG;IACG,OAAO,CACX,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EACvD,OAAO,CAAC,EAAE,WAAW,EACrB,OAAO,GAAE,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAM,GAC/C,OAAO,CAAC,WAAW,CAAC,CAwBtB;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED;;OAEG;IACH,OAAO,CAAC,UAAU;CA2BnB"}
1
+ {"version":3,"file":"email-service.d.ts","sourceRoot":"","sources":["../../src/email/email-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EAEhB,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAC7D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAa;IAErC,YAAY,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,UAAU,EAMnD;IAED;;;;;;OAMG;IACG,OAAO,CACX,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EACvD,OAAO,CAAC,EAAE,WAAW,EACrB,OAAO,GAAE,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAM,GAC/C,OAAO,CAAC,WAAW,CAAC,CAwBtB;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,MAAM,CAE1B;CACF"}
@@ -1,4 +1,5 @@
1
1
  import { createLogger } from '../utils/logger.js';
2
+ import { htmlToText } from './html-to-text.js';
2
3
  /**
3
4
  * Email service for sending emails through configured transport
4
5
  *
@@ -42,7 +43,7 @@ export class EmailService {
42
43
  ...message,
43
44
  from: options?.from || message.from || this.defaultFrom,
44
45
  replyTo: options?.replyTo || message.replyTo || this.defaultReplyTo,
45
- text: message.text || this.htmlToText(message.html),
46
+ text: message.text || htmlToText(message.html),
46
47
  };
47
48
  const result = await this.transport.send(fullMessage);
48
49
  // Call onSent hook if configured
@@ -66,33 +67,5 @@ export class EmailService {
66
67
  get transportName() {
67
68
  return this.transport.name;
68
69
  }
69
- /**
70
- * Converts HTML to plain text for email clients that don't support HTML
71
- */
72
- htmlToText(html) {
73
- return (html
74
- // Remove style and script tags with content
75
- .replace(/<style[^>]*>[\s\S]*?<\/style>/gi, '')
76
- .replace(/<script[^>]*>[\s\S]*?<\/script>/gi, '')
77
- // Convert line breaks
78
- .replace(/<br\s*\/?>/gi, '\n')
79
- // Convert block elements to newlines
80
- .replace(/<\/(p|div|tr|h[1-6])>/gi, '\n')
81
- // Convert list items
82
- .replace(/<li[^>]*>/gi, '• ')
83
- .replace(/<\/li>/gi, '\n')
84
- // Remove remaining HTML tags
85
- .replace(/<[^>]+>/g, '')
86
- // Decode common HTML entities
87
- .replace(/&nbsp;/gi, ' ')
88
- .replace(/&amp;/gi, '&')
89
- .replace(/&lt;/gi, '<')
90
- .replace(/&gt;/gi, '>')
91
- .replace(/&quot;/gi, '"')
92
- .replace(/&#39;/gi, "'")
93
- // Clean up whitespace
94
- .replace(/\n\s*\n\s*\n/g, '\n\n')
95
- .trim());
96
- }
97
70
  }
98
71
  //# sourceMappingURL=email-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"email-service.js","sourceRoot":"","sources":["../../src/email/email-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"email-service.js","sourceRoot":"","sources":["../../src/email/email-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAsB/C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,YAAY;IACN,MAAM,CAAsC;IAC5C,SAAS,CAAiB;IAC1B,WAAW,CAAS;IACpB,cAAc,CAAU;IACxB,MAAM,CAAc;IAErC,YAAY,MAAmB,EAAE,MAAmB;QAClD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,YAAY,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CACX,OAAuD,EACvD,OAAqB,EACrB,OAAO,GAAuC,EAAE;QAEhD,MAAM,WAAW,GAAiB;YAChC,GAAG,OAAO;YACV,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW;YACvD,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc;YACnE,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;SAC/C,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEtD,iCAAiC;QACjC,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE;oBACrC,GAAG,OAAO;oBACV,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7D,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,8BAA8B;gBAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Converts email HTML to the plain-text part of a message.
3
+ *
4
+ * Skips everything a reader never sees as text: the head (title, styles, font links),
5
+ * comments including Outlook conditional comments, scripts, and hidden preheader text
6
+ * such as MJML's `mj-preview`. Links keep their target after the label, and a link that
7
+ * only wraps an image (a logo) becomes the image's alt text. Lines are trimmed and at
8
+ * most one blank line separates blocks.
9
+ *
10
+ * The template compiler emits the same logic inline, so compiled templates stay free of
11
+ * runtime imports; `test/email/html-to-text.spec.ts` keeps both in step.
12
+ */
13
+ export declare function htmlToText(html: string): string;
14
+ //# sourceMappingURL=html-to-text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-to-text.d.ts","sourceRoot":"","sources":["../../src/email/html-to-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsC/C"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Converts email HTML to the plain-text part of a message.
3
+ *
4
+ * Skips everything a reader never sees as text: the head (title, styles, font links),
5
+ * comments including Outlook conditional comments, scripts, and hidden preheader text
6
+ * such as MJML's `mj-preview`. Links keep their target after the label, and a link that
7
+ * only wraps an image (a logo) becomes the image's alt text. Lines are trimmed and at
8
+ * most one blank line separates blocks.
9
+ *
10
+ * The template compiler emits the same logic inline, so compiled templates stay free of
11
+ * runtime imports; `test/email/html-to-text.spec.ts` keeps both in step.
12
+ */
13
+ export function htmlToText(html) {
14
+ return (html
15
+ .replace(/<head[\s\S]*?<\/head>/gi, '')
16
+ .replace(/<!--[\s\S]*?-->/g, '')
17
+ .replace(/<style[^>]*>[\s\S]*?<\/style>/gi, '')
18
+ .replace(/<script[^>]*>[\s\S]*?<\/script>/gi, '')
19
+ .replace(/<(div|span)\s[^>]*display:\s*none[^>]*>[\s\S]*?<\/\1>/gi, '')
20
+ .replace(/<a\s[^>]*href="([^"]*)"[^>]*>([\s\S]*?)<\/a>/gi, (_match, href, label) => {
21
+ const text = label.replace(/<[^>]+>/g, '').trim();
22
+ if (text)
23
+ return text === href ? href : `${text}: ${href}`;
24
+ const alt = /<img\s[^>]*alt="([^"]*)"/i.exec(label);
25
+ return alt?.[1] || href;
26
+ })
27
+ .replace(/<br\s*\/?>/gi, '\n')
28
+ .replace(/<li(\s[^>]*)?>/gi, '• ')
29
+ .replace(/<\/(p|div|li|tr|table|h[1-6])>/gi, '\n')
30
+ .replace(/<[^>]+>/g, '')
31
+ .replace(/&nbsp;/gi, ' ')
32
+ .replace(/&lt;/gi, '<')
33
+ .replace(/&gt;/gi, '>')
34
+ .replace(/&quot;/gi, '"')
35
+ .replace(/&#(\d+);/g, (match, code) => Number(code) <= 0x10ffff ? String.fromCodePoint(Number(code)) : match)
36
+ .replace(/&#x([0-9a-f]+);/gi, (match, code) => Number.parseInt(code, 16) <= 0x10ffff
37
+ ? String.fromCodePoint(Number.parseInt(code, 16))
38
+ : match)
39
+ // Last, so an escaped entity such as &amp;lt; stays literal text.
40
+ .replace(/&amp;/gi, '&')
41
+ .split('\n')
42
+ .map((line) => line.replace(/[ \t]+/g, ' ').trim())
43
+ .join('\n')
44
+ .replace(/\n{3,}/g, '\n\n')
45
+ .trim());
46
+ }
47
+ //# sourceMappingURL=html-to-text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-to-text.js","sourceRoot":"","sources":["../../src/email/html-to-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,CACL,IAAI;SACD,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;SACtC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;SAC/B,OAAO,CAAC,iCAAiC,EAAE,EAAE,CAAC;SAC9C,OAAO,CAAC,mCAAmC,EAAE,EAAE,CAAC;SAChD,OAAO,CAAC,yDAAyD,EAAE,EAAE,CAAC;SACtE,OAAO,CAAC,gDAAgD,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QACjF,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,IAAI,IAAI;YAAE,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,IAAI,EAAE,CAAC;QAC3D,MAAM,GAAG,GAAG,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpD,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC1B,CAAC,CAAC;SACD,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC;SAC7B,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC;SACjC,OAAO,CAAC,kCAAkC,EAAE,IAAI,CAAC;SACjD,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC;SACxB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC;SACxB,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CACpC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CACtE;SACA,OAAO,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,QAAQ;QACnC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,KAAK,CACV;QACD,kEAAkE;SACjE,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;SAClD,IAAI,CAAC,IAAI,CAAC;SACV,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B,IAAI,EAAE,CACV,CAAC;AACJ,CAAC"}
@@ -3,6 +3,7 @@ export type { CompiledTemplate, CompilerOptions, InferredType, Token, TokenType,
3
3
  export { compile, extractTypes, generateInterface, tokenize } from './compiler/index.js';
4
4
  export { type EmailConfigInput, EmailConfigSchema, type MockTransportConfigInput, MockTransportConfigSchema, type SESTransportConfigInput, SESTransportConfigSchema, type SMTPTransportConfigInput, SMTPTransportConfigSchema, type TransportConfigInput, TransportConfigSchema, validateEmailConfig, } from './config.js';
5
5
  export { EmailService, type SendOptions } from './email-service.js';
6
+ export { htmlToText } from './html-to-text.js';
6
7
  export { createTemplateRegistry, type TemplateDefinition, TemplateRegistry, type TemplateRenderFn, } from './template-registry.js';
7
8
  export { type SendTemplateOptions, TemplatedEmailService, } from './templated-email-service.js';
8
9
  export { MockTransport, type StoredEmail } from './transports/mock-transport.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/email/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,KAAK,EACL,SAAS,GACV,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEzF,OAAO,EACL,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EACL,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,KAAK,gBAAgB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,mBAAmB,EACxB,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,YAAY,EACV,eAAe,EACf,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,2BAA2B,EAChC,cAAc,EAEd,uBAAuB,EACvB,KAAK,cAAc,EACnB,KAAK,yBAAyB,EAC9B,qBAAqB,EAErB,oBAAoB,EACpB,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAE5B,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,sBAAsB,EAE3B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/email/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,KAAK,EACL,SAAS,GACV,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEzF,OAAO,EACL,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EACL,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,KAAK,gBAAgB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,mBAAmB,EACxB,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,YAAY,EACV,eAAe,EACf,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,2BAA2B,EAChC,cAAc,EAEd,uBAAuB,EACvB,KAAK,cAAc,EACnB,KAAK,yBAAyB,EAC9B,qBAAqB,EAErB,oBAAoB,EACpB,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAE5B,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,sBAAsB,EAE3B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
@@ -6,6 +6,7 @@ export { compile, extractTypes, generateInterface, tokenize } from './compiler/i
6
6
  export { EmailConfigSchema, MockTransportConfigSchema, SESTransportConfigSchema, SMTPTransportConfigSchema, TransportConfigSchema, validateEmailConfig, } from './config.js';
7
7
  // Services
8
8
  export { EmailService } from './email-service.js';
9
+ export { htmlToText } from './html-to-text.js';
9
10
  // Template registry
10
11
  export { createTemplateRegistry, TemplateRegistry, } from './template-registry.js';
11
12
  export { TemplatedEmailService, } from './templated-email-service.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/email/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAE5B,OAAO,EAGL,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AAQzC,kCAAkC;AAClC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACzF,gBAAgB;AAChB,OAAO,EAEL,iBAAiB,EAEjB,yBAAyB,EAEzB,wBAAwB,EAExB,yBAAyB,EAEzB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,WAAW;AACX,OAAO,EAAE,YAAY,EAAoB,MAAM,oBAAoB,CAAC;AACpE,oBAAoB;AACpB,OAAO,EACL,sBAAsB,EAEtB,gBAAgB,GAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAoB,MAAM,gCAAgC,CAAC;AACjF,aAAa;AACb,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAe7D,+BAA+B;AAC/B,OAAO,EAIL,cAAc;AACd,kBAAkB;AAClB,uBAAuB,EAGvB,qBAAqB;AACrB,UAAU;AACV,oBAAoB,EACpB,eAAe;AAUf,aAAa;AACb,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/email/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAE5B,OAAO,EAGL,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AAQzC,kCAAkC;AAClC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACzF,gBAAgB;AAChB,OAAO,EAEL,iBAAiB,EAEjB,yBAAyB,EAEzB,wBAAwB,EAExB,yBAAyB,EAEzB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,WAAW;AACX,OAAO,EAAE,YAAY,EAAoB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,oBAAoB;AACpB,OAAO,EACL,sBAAsB,EAEtB,gBAAgB,GAEjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAoB,MAAM,gCAAgC,CAAC;AACjF,aAAa;AACb,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAe7D,+BAA+B;AAC/B,OAAO,EAIL,cAAc;AACd,kBAAkB;AAClB,uBAAuB,EAGvB,qBAAqB;AACrB,UAAU;AACV,oBAAoB,EACpB,eAAe;AAUf,aAAa;AACb,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @module glasswork/email/ses
3
+ * Amazon SES email transport. Requires `@aws-sdk/client-sesv2`.
4
+ */
5
+ export { SESTransport } from './transports/ses-transport.js';
6
+ export type { SESTransportConfig } from './types.js';
7
+ //# sourceMappingURL=ses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ses.d.ts","sourceRoot":"","sources":["../../src/email/ses.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module glasswork/email/ses
3
+ * Amazon SES email transport. Requires `@aws-sdk/client-sesv2`.
4
+ */
5
+ export { SESTransport } from './transports/ses-transport.js';
6
+ //# sourceMappingURL=ses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ses.js","sourceRoot":"","sources":["../../src/email/ses.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @module glasswork/email/smtp
3
+ * SMTP email transport. Requires `nodemailer`.
4
+ */
5
+ export { SmtpTransport, type SmtpTransporter, type SmtpTransportOptions, } from './transports/smtp-transport.js';
6
+ export type { SMTPTransportConfig } from './types.js';
7
+ //# sourceMappingURL=smtp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smtp.d.ts","sourceRoot":"","sources":["../../src/email/smtp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,aAAa,EACb,KAAK,eAAe,EACpB,KAAK,oBAAoB,GAC1B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module glasswork/email/smtp
3
+ * SMTP email transport. Requires `nodemailer`.
4
+ */
5
+ export { SmtpTransport, } from './transports/smtp-transport.js';
6
+ //# sourceMappingURL=smtp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smtp.js","sourceRoot":"","sources":["../../src/email/smtp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,aAAa,GAGd,MAAM,gCAAgC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ses-transport.d.ts","sourceRoot":"","sources":["../../../src/email/transports/ses-transport.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAQjG;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,YAAa,YAAW,cAAc;IACjD,QAAQ,CAAC,IAAI,SAAS;IACtB,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C,YAAY,MAAM,EAAE,kBAAkB,EAErC;IAED;;OAEG;YACW,SAAS;IAiBjB,IAAI,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAUtD;IAED;;OAEG;YACW,eAAe;IA+D7B;;OAEG;YACW,YAAY;IAkD1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;OAEG;IACH,OAAO,CAAC,cAAc;IAoBtB;;OAEG;IACH,OAAO,CAAC,YAAY;IA0BpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAUtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAsBpB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,yBAAyB;IA6BjC,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,0BAA0B;IA4BlC,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB;CAQ1B"}
1
+ {"version":3,"file":"ses-transport.d.ts","sourceRoot":"","sources":["../../../src/email/transports/ses-transport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAcjG;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,YAAa,YAAW,cAAc;IACjD,QAAQ,CAAC,IAAI,SAAS;IACtB,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C,YAAY,MAAM,EAAE,kBAAkB,EAErC;IAED;;OAEG;YACW,SAAS;IAkBjB,IAAI,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAUtD;IAED;;OAEG;YACW,eAAe;IA8D7B;;OAEG;YACW,YAAY;IAiD1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;OAEG;IACH,OAAO,CAAC,cAAc;IAoBtB;;OAEG;IACH,OAAO,CAAC,YAAY;IA0BpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAUtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAsBpB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,yBAAyB;IA6BjC,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,0BAA0B;IA4BlC,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB;CAQ1B"}