@breadstone/archipel-mcp 0.0.23 → 0.0.25

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 (165) hide show
  1. package/data/guides/caching.md +33 -0
  2. package/data/guides/email-delivery.md +27 -1
  3. package/data/guides/esigning-integration.md +11 -5
  4. package/data/guides/health-indicators.md +220 -0
  5. package/data/guides/index.md +2 -0
  6. package/data/guides/queue-infrastructure.md +329 -0
  7. package/data/guides/telemetry-and-observability.md +20 -0
  8. package/data/packages/platform-analytics/api/Class.AnalyticsClientPort.md +20 -0
  9. package/data/packages/platform-analytics/api/Class.AnalyticsHealthIndicator.md +78 -0
  10. package/data/packages/platform-analytics/api/Class.AppInsightsAnalyticsClient.md +24 -0
  11. package/data/packages/platform-analytics/api/Class.DatadogAnalyticsClient.md +24 -0
  12. package/data/packages/platform-analytics/api/Class.NoopAnalyticsClient.md +24 -0
  13. package/data/packages/platform-analytics/api/Class.SentryAnalyticsClient.md +24 -0
  14. package/data/packages/platform-analytics/api/index.md +1 -0
  15. package/data/packages/platform-analytics/index.md +25 -1
  16. package/data/packages/platform-authentication/api/Class.AuthenticationHealthIndicator.md +68 -0
  17. package/data/packages/platform-authentication/api/index.md +1 -0
  18. package/data/packages/platform-authentication/index.md +25 -1
  19. package/data/packages/platform-blob-storage/api/Class.BlobHealthIndicator.md +7 -7
  20. package/data/packages/platform-blob-storage/api/Class.BlobModule.md +2 -2
  21. package/data/packages/platform-blob-storage/api/Interface.IAwsS3BlobProviderRegistration.md +3 -3
  22. package/data/packages/platform-blob-storage/api/Interface.IAzureBlobProviderRegistration.md +3 -3
  23. package/data/packages/platform-blob-storage/api/Interface.IBlobModuleOptions.md +5 -5
  24. package/data/packages/platform-blob-storage/api/Interface.ICustomBlobProviderRegistration.md +3 -3
  25. package/data/packages/platform-blob-storage/api/Interface.IVercelBlobProviderRegistration.md +3 -3
  26. package/data/packages/platform-blob-storage/api/TypeAlias.IBlobProviderRegistration.md +1 -1
  27. package/data/packages/platform-blob-storage/api/index.md +1 -1
  28. package/data/packages/platform-blob-storage/index.md +19 -14
  29. package/data/packages/platform-caching/api/Class.MemoryLayeredCache.md +10 -10
  30. package/data/packages/platform-caching/api/Class.NoopCacheMetricsRecorder.md +6 -6
  31. package/data/packages/platform-caching/api/Class.RedisLayeredCache.md +10 -10
  32. package/data/packages/platform-caching/api/Interface.ILayeredCache.md +9 -9
  33. package/data/packages/platform-caching/api/Interface.ILayeredCacheOptions.md +6 -6
  34. package/data/packages/platform-caching/api/Variable.CACHE_DEFAULT_TTL_MS.md +14 -0
  35. package/data/packages/platform-caching/api/Variable.CACHE_MAX_ENTRIES.md +14 -0
  36. package/data/packages/platform-caching/api/Variable.CACHE_STALE_WHILE_REVALIDATE.md +14 -0
  37. package/data/packages/platform-caching/api/Variable.PLATFORM_CACHING_CONFIG_ENTRIES.md +14 -0
  38. package/data/packages/platform-caching/api/Variable.REDIS_CONFIG_ENTRIES.md +14 -0
  39. package/data/packages/platform-caching/api/Variable.REDIS_KEY_PREFIX.md +14 -0
  40. package/data/packages/platform-caching/api/Variable.REDIS_TTL_SECONDS.md +14 -0
  41. package/data/packages/platform-caching/api/Variable.REDIS_URL.md +14 -0
  42. package/data/packages/platform-caching/api/index.md +13 -0
  43. package/data/packages/platform-caching/index.md +47 -1
  44. package/data/packages/platform-configuration/api/Function.createConfigKey.md +1 -1
  45. package/data/packages/platform-core/api/Class.HttpLoggerMiddleware.md +3 -3
  46. package/data/packages/platform-core/api/Function.maskSensitive.md +26 -0
  47. package/data/packages/platform-core/api/Function.maskSensitiveFields.md +26 -0
  48. package/data/packages/platform-core/api/index.md +2 -0
  49. package/data/packages/platform-core/index.md +11 -0
  50. package/data/packages/platform-database/api/Class.DatabaseHealthIndicator.md +8 -6
  51. package/data/packages/platform-database/api/Class.DatabaseModule.md +3 -3
  52. package/data/packages/platform-database/api/Class.RepositoryBase.md +20 -20
  53. package/data/packages/platform-database/api/Function.paginator.md +1 -1
  54. package/data/packages/platform-database/api/Interface.IDatabaseModuleConfig.md +3 -3
  55. package/data/packages/platform-database/api/TypeAlias.DelegateArgs.md +1 -1
  56. package/data/packages/platform-database/api/TypeAlias.DelegateReturnTypes.md +1 -1
  57. package/data/packages/platform-database/api/TypeAlias.PaginateFunction.md +1 -1
  58. package/data/packages/platform-database/api/Variable.DATABASE_MODULE_CONFIG.md +1 -1
  59. package/data/packages/platform-database/index.md +17 -5
  60. package/data/packages/platform-documents/api/Class.DocumentEngine.md +9 -5
  61. package/data/packages/platform-documents/index.md +1 -1
  62. package/data/packages/platform-esigning/api/Class.AdobeSignEsigningProvider.md +24 -0
  63. package/data/packages/platform-esigning/api/Class.DocuSignEsigningProvider.md +24 -0
  64. package/data/packages/platform-esigning/api/Class.DropboxSignEsigningProvider.md +24 -0
  65. package/data/packages/platform-esigning/api/Class.EsigningClientPort.md +20 -0
  66. package/data/packages/platform-esigning/api/Class.EsigningHealthIndicator.md +78 -0
  67. package/data/packages/platform-esigning/api/Class.InternalEsigningProvider.md +24 -0
  68. package/data/packages/platform-esigning/api/index.md +1 -0
  69. package/data/packages/platform-esigning/index.md +26 -2
  70. package/data/packages/platform-health/api/Class.HealthModule.md +42 -0
  71. package/data/packages/platform-health/api/Class.HealthOrchestrator.md +64 -0
  72. package/data/packages/platform-health/api/Interface.IHealthCheckResult.md +46 -0
  73. package/data/packages/platform-health/api/Interface.IHealthIndicator.md +41 -0
  74. package/data/packages/platform-health/api/Variable.HEALTH_INDICATORS_TOKEN.md +14 -0
  75. package/data/packages/platform-health/api/index.md +26 -0
  76. package/data/packages/platform-health/index.md +18 -7
  77. package/data/packages/platform-intelligence/api/Class.IntelligenceHealthIndicator.md +78 -0
  78. package/data/packages/platform-intelligence/api/index.md +1 -0
  79. package/data/packages/platform-intelligence/index.md +24 -1
  80. package/data/packages/platform-logging/api/Class.ContextLogger.md +152 -0
  81. package/data/packages/platform-logging/api/Class.LoggerModule.md +8 -2
  82. package/data/packages/platform-logging/api/Class.RequestContextStore.md +90 -0
  83. package/data/packages/platform-logging/api/Class.RequestIdMiddleware.md +68 -0
  84. package/data/packages/platform-logging/api/Interface.IRequestContext.md +34 -0
  85. package/data/packages/platform-logging/api/Variable.REQUEST_ID_HEADER.md +14 -0
  86. package/data/packages/platform-logging/api/index.md +11 -1
  87. package/data/packages/platform-logging/index.md +89 -7
  88. package/data/packages/platform-mailing/api/Class.MailHealthIndicator.md +5 -5
  89. package/data/packages/platform-mailing/api/Class.MailModule.md +28 -1
  90. package/data/packages/platform-mailing/api/Class.MailVerificationService.md +49 -16
  91. package/data/packages/platform-mailing/api/Class.SmtpConnectionVerifier.md +84 -0
  92. package/data/packages/platform-mailing/api/Interface.IMailModuleOptions.md +36 -0
  93. package/data/packages/platform-mailing/api/index.md +3 -1
  94. package/data/packages/platform-mailing/index.md +64 -8
  95. package/data/packages/platform-mapping/api/Class.MappingBuilder.md +110 -0
  96. package/data/packages/platform-mapping/api/Class.MappingError.md +56 -0
  97. package/data/packages/platform-mapping/api/Class.MappingModule.md +46 -0
  98. package/data/packages/platform-mapping/api/Class.MappingNotRegisteredError.md +52 -0
  99. package/data/packages/platform-mapping/api/Class.MappingProfileBase.md +52 -0
  100. package/data/packages/platform-mapping/api/Class.MappingService.md +284 -0
  101. package/data/packages/platform-mapping/api/Class.TypeMappingNotRegisteredError.md +53 -0
  102. package/data/packages/platform-mapping/api/Function.createMappingKey.md +39 -0
  103. package/data/packages/platform-mapping/api/Interface.IMappingBuilder.md +76 -0
  104. package/data/packages/platform-mapping/api/Interface.IMappingKey.md +58 -0
  105. package/data/packages/platform-mapping/api/Interface.IMappingProfile.md +32 -0
  106. package/data/packages/platform-mapping/api/TypeAlias.Constructor.md +28 -0
  107. package/data/packages/platform-mapping/api/index.md +38 -0
  108. package/data/packages/platform-mcp/api/Class.McpHealthIndicator.md +78 -0
  109. package/data/packages/platform-mcp/api/index.md +1 -0
  110. package/data/packages/platform-mcp/index.md +24 -1
  111. package/data/packages/platform-openapi/api/Function.SwaggerFeature.md +2 -2
  112. package/data/packages/platform-openapi/api/Function.getSwaggerFeatureMetadata.md +2 -2
  113. package/data/packages/platform-payments/api/Class.LemonSqueezyClient.md +24 -0
  114. package/data/packages/platform-payments/api/Class.MollieClient.md +24 -0
  115. package/data/packages/platform-payments/api/Class.PaddleClient.md +24 -0
  116. package/data/packages/platform-payments/api/Class.PaymentClientPort.md +20 -0
  117. package/data/packages/platform-payments/api/Class.PaymentHealthIndicator.md +78 -0
  118. package/data/packages/platform-payments/api/Class.StripeClient.md +28 -4
  119. package/data/packages/platform-payments/api/index.md +1 -0
  120. package/data/packages/platform-payments/index.md +26 -2
  121. package/data/packages/platform-queue/api/Class.AzureQueue.md +221 -0
  122. package/data/packages/platform-queue/api/Class.BullMqQueue.md +220 -0
  123. package/data/packages/platform-queue/api/Class.MemoryQueue.md +194 -0
  124. package/data/packages/platform-queue/api/Class.QueueError.md +51 -0
  125. package/data/packages/platform-queue/api/Class.QueueHealthIndicator.md +68 -0
  126. package/data/packages/platform-queue/api/Class.QueueJobNotFoundError.md +43 -0
  127. package/data/packages/platform-queue/api/Class.QueueJobStateError.md +48 -0
  128. package/data/packages/platform-queue/api/Class.QueueValidationError.md +43 -0
  129. package/data/packages/platform-queue/api/Interface.IAzureQueueOptions.md +48 -0
  130. package/data/packages/platform-queue/api/Interface.IBullMqQueueOptions.md +45 -0
  131. package/data/packages/platform-queue/api/Interface.IMemoryQueueOptions.md +32 -0
  132. package/data/packages/platform-queue/api/Interface.IQueue.md +173 -0
  133. package/data/packages/platform-queue/api/Interface.IQueueJob.md +139 -0
  134. package/data/packages/platform-queue/api/TypeAlias.QueueJobStatus.md +14 -0
  135. package/data/packages/platform-queue/api/Variable.AZURE_CONFIG_ENTRIES.md +17 -0
  136. package/data/packages/platform-queue/api/Variable.AZURE_CONNECTION_STRING.md +14 -0
  137. package/data/packages/platform-queue/api/Variable.AZURE_RECEIVE_WAIT_MS.md +21 -0
  138. package/data/packages/platform-queue/api/Variable.BULLMQ_CONFIG_ENTRIES.md +17 -0
  139. package/data/packages/platform-queue/api/Variable.BULLMQ_PREFIX.md +18 -0
  140. package/data/packages/platform-queue/api/Variable.BULLMQ_REDIS_URL.md +21 -0
  141. package/data/packages/platform-queue/api/Variable.PLATFORM_QUEUE_CONFIG_ENTRIES.md +17 -0
  142. package/data/packages/platform-queue/api/Variable.QUEUE_JOB_STATUS.md +30 -0
  143. package/data/packages/platform-queue/api/Variable.QUEUE_MAX_JOBS.md +21 -0
  144. package/data/packages/platform-queue/api/index.md +49 -0
  145. package/data/packages/platform-queue/index.md +168 -0
  146. package/data/packages/platform-resources/api/Class.BlobResourceStrategy.md +195 -0
  147. package/data/packages/platform-resources/api/Class.EmbeddedResourceStrategy.md +215 -0
  148. package/data/packages/platform-resources/api/Class.FileResourceStrategy.md +190 -0
  149. package/data/packages/platform-resources/api/Class.ResourceManager.md +477 -0
  150. package/data/packages/platform-resources/api/Class.ResourceModule.md +46 -0
  151. package/data/packages/platform-resources/api/Class.ResourceNotFoundError.md +60 -0
  152. package/data/packages/platform-resources/api/Interface.IBlobResourceStrategyConfig.md +28 -0
  153. package/data/packages/platform-resources/api/Interface.IBlobServiceAdapter.md +40 -0
  154. package/data/packages/platform-resources/api/Interface.IFileResourceStrategyConfig.md +72 -0
  155. package/data/packages/platform-resources/api/Interface.IResourceManagerConfig.md +89 -0
  156. package/data/packages/platform-resources/api/Interface.IResourceMetadata.md +94 -0
  157. package/data/packages/platform-resources/api/Interface.IResourceResult.md +34 -0
  158. package/data/packages/platform-resources/api/Interface.IResourceStrategy.md +134 -0
  159. package/data/packages/platform-resources/api/index.md +29 -0
  160. package/data/packages/platform-telemetry/api/Class.OtelSdkHolder.md +20 -2
  161. package/data/packages/platform-telemetry/api/Class.TelemetryHealthIndicator.md +78 -0
  162. package/data/packages/platform-telemetry/api/index.md +1 -0
  163. package/data/packages/platform-telemetry/index.md +25 -1
  164. package/data/patterns/config-pattern.md +3 -1
  165. package/package.json +1 -1
@@ -5,16 +5,16 @@ editUrl: false
5
5
  ---
6
6
  # ~~Class: MailVerificationService~~
7
7
 
8
- Defined in: [platform-mailing/src/services/MailVerificationService.ts:20](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/MailVerificationService.ts#L20)
9
-
10
- Verifies SMTP server connectivity. Does **not** validate individual email
11
- addresses - only checks whether the configured SMTP transport is reachable.
8
+ Defined in: [platform-mailing/src/services/MailVerificationService.ts:15](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/MailVerificationService.ts#L15)
12
9
 
13
10
  ## Deprecated
14
11
 
15
- Renamed to `SmtpConnectionVerifier` in a future release to better
16
- reflect its actual purpose. Prefer wrapping this in a health-check rather
17
- than calling it directly.
12
+ Use [SmtpConnectionVerifier](Class.SmtpConnectionVerifier) instead. This class will be
13
+ removed in a future major release.
14
+
15
+ ## Extends
16
+
17
+ - [`SmtpConnectionVerifier`](Class.SmtpConnectionVerifier)
18
18
 
19
19
  ## Constructors
20
20
 
@@ -24,9 +24,9 @@ than calling it directly.
24
24
  new MailVerificationService(configService): MailVerificationService;
25
25
  ```
26
26
 
27
- Defined in: [platform-mailing/src/services/MailVerificationService.ts:35](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/MailVerificationService.ts#L35)
27
+ Defined in: [platform-mailing/src/services/SmtpConnectionVerifier.ts:32](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/SmtpConnectionVerifier.ts#L32)
28
28
 
29
- Constructs a new instance of the `MailVerificationService` class.
29
+ Constructs a new instance of the [SmtpConnectionVerifier](Class.SmtpConnectionVerifier) class.
30
30
 
31
31
  #### Parameters
32
32
 
@@ -38,6 +38,10 @@ Constructs a new instance of the `MailVerificationService` class.
38
38
 
39
39
  `MailVerificationService`
40
40
 
41
+ #### Inherited from
42
+
43
+ [`SmtpConnectionVerifier`](Class.SmtpConnectionVerifier).[`constructor`](Class.SmtpConnectionVerifier#constructor)
44
+
41
45
  ## Methods
42
46
 
43
47
  ### ~~sendTestEmail()~~
@@ -50,9 +54,9 @@ sendTestEmail(
50
54
  text): Promise<void>;
51
55
  ```
52
56
 
53
- Defined in: [platform-mailing/src/services/MailVerificationService.ts:76](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/MailVerificationService.ts#L76)
57
+ Defined in: [platform-mailing/src/services/SmtpConnectionVerifier.ts:74](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/SmtpConnectionVerifier.ts#L74)
54
58
 
55
- Send an email for testing purposes or verification
59
+ Send an email for testing purposes.
56
60
 
57
61
  #### Parameters
58
62
 
@@ -67,26 +71,55 @@ Send an email for testing purposes or verification
67
71
 
68
72
  `Promise`\<`void`\>
69
73
 
74
+ #### Inherited from
75
+
76
+ [`SmtpConnectionVerifier`](Class.SmtpConnectionVerifier).[`sendTestEmail`](Class.SmtpConnectionVerifier#sendtestemail)
77
+
78
+ ***
79
+
80
+ ### ~~verifyConnection()~~
81
+
82
+ ```ts
83
+ verifyConnection(): Promise<boolean>;
84
+ ```
85
+
86
+ Defined in: [platform-mailing/src/services/SmtpConnectionVerifier.ts:54](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/SmtpConnectionVerifier.ts#L54)
87
+
88
+ Verifies that the configured SMTP server is reachable.
89
+
90
+ #### Returns
91
+
92
+ `Promise`\<`boolean`\>
93
+
94
+ `true` if the SMTP server is reachable, `false` otherwise.
95
+
96
+ #### Inherited from
97
+
98
+ [`SmtpConnectionVerifier`](Class.SmtpConnectionVerifier).[`verifyConnection`](Class.SmtpConnectionVerifier#verifyconnection)
99
+
70
100
  ***
71
101
 
72
102
  ### ~~verifyEmail()~~
73
103
 
74
104
  ```ts
75
- verifyEmail(email): Promise<boolean>;
105
+ verifyEmail(_email): Promise<boolean>;
76
106
  ```
77
107
 
78
- Defined in: [platform-mailing/src/services/MailVerificationService.ts:54](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/MailVerificationService.ts#L54)
108
+ Defined in: [platform-mailing/src/services/MailVerificationService.ts:27](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/MailVerificationService.ts#L27)
79
109
 
80
- Verifies if the email address is valid and reachable.
110
+ Verifies SMTP server connectivity.
81
111
 
82
112
  #### Parameters
83
113
 
84
114
  | Parameter | Type | Description |
85
115
  | ------ | ------ | ------ |
86
- | `email` | `string` | The email address to verify |
116
+ | `_email` | `string` | Unused. Kept for backward compatibility. |
87
117
 
88
118
  #### Returns
89
119
 
90
120
  `Promise`\<`boolean`\>
91
121
 
92
- Promise\<boolean\> - Resolves true if email exists, false otherwise
122
+ #### Deprecated
123
+
124
+ Use [SmtpConnectionVerifier.verifyConnection](Class.SmtpConnectionVerifier#verifyconnection) instead.
125
+ The `email` parameter was never used.
@@ -0,0 +1,84 @@
1
+ ---
2
+ title: 'Class: SmtpConnectionVerifier'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: SmtpConnectionVerifier
7
+
8
+ Defined in: [platform-mailing/src/services/SmtpConnectionVerifier.ts:17](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/SmtpConnectionVerifier.ts#L17)
9
+
10
+ Verifies SMTP server connectivity. Does **not** validate individual email
11
+ addresses — only checks whether the configured SMTP transport is reachable.
12
+
13
+ ## Extended by
14
+
15
+ - [`MailVerificationService`](Class.MailVerificationService)
16
+
17
+ ## Constructors
18
+
19
+ ### Constructor
20
+
21
+ ```ts
22
+ new SmtpConnectionVerifier(configService): SmtpConnectionVerifier;
23
+ ```
24
+
25
+ Defined in: [platform-mailing/src/services/SmtpConnectionVerifier.ts:32](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/SmtpConnectionVerifier.ts#L32)
26
+
27
+ Constructs a new instance of the SmtpConnectionVerifier class.
28
+
29
+ #### Parameters
30
+
31
+ | Parameter | Type |
32
+ | ------ | ------ |
33
+ | `configService` | `ConfigService` |
34
+
35
+ #### Returns
36
+
37
+ `SmtpConnectionVerifier`
38
+
39
+ ## Methods
40
+
41
+ ### sendTestEmail()
42
+
43
+ ```ts
44
+ sendTestEmail(
45
+ from,
46
+ to,
47
+ subject,
48
+ text): Promise<void>;
49
+ ```
50
+
51
+ Defined in: [platform-mailing/src/services/SmtpConnectionVerifier.ts:74](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/SmtpConnectionVerifier.ts#L74)
52
+
53
+ Send an email for testing purposes.
54
+
55
+ #### Parameters
56
+
57
+ | Parameter | Type |
58
+ | ------ | ------ |
59
+ | `from` | `string` |
60
+ | `to` | `string` |
61
+ | `subject` | `string` |
62
+ | `text` | `string` |
63
+
64
+ #### Returns
65
+
66
+ `Promise`\<`void`\>
67
+
68
+ ***
69
+
70
+ ### verifyConnection()
71
+
72
+ ```ts
73
+ verifyConnection(): Promise<boolean>;
74
+ ```
75
+
76
+ Defined in: [platform-mailing/src/services/SmtpConnectionVerifier.ts:54](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/services/SmtpConnectionVerifier.ts#L54)
77
+
78
+ Verifies that the configured SMTP server is reachable.
79
+
80
+ #### Returns
81
+
82
+ `Promise`\<`boolean`\>
83
+
84
+ `true` if the SMTP server is reachable, `false` otherwise.
@@ -0,0 +1,36 @@
1
+ ---
2
+ title: 'Interface: IMailModuleOptions'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Interface: IMailModuleOptions
7
+
8
+ Defined in: [platform-mailing/src/tokens/MailModule.ts:23](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/tokens/MailModule.ts#L23)
9
+
10
+ Options for configuring the [MailModule](Class.MailModule).
11
+
12
+ ## Properties
13
+
14
+ ### configEntries?
15
+
16
+ ```ts
17
+ readonly optional configEntries?: readonly Omit<IConfigRegistryEntry<unknown>, "module">[];
18
+ ```
19
+
20
+ Defined in: [platform-mailing/src/tokens/MailModule.ts:34](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/tokens/MailModule.ts#L34)
21
+
22
+ Additional or overriding configuration entries.
23
+ Merged with the platform default entries.
24
+
25
+ ***
26
+
27
+ ### isGlobal?
28
+
29
+ ```ts
30
+ readonly optional isGlobal?: boolean;
31
+ ```
32
+
33
+ Defined in: [platform-mailing/src/tokens/MailModule.ts:28](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mailing/src/tokens/MailModule.ts#L28)
34
+
35
+ Whether to register the module globally.
36
+ Defaults to `true`.
@@ -16,10 +16,11 @@ editUrl: false
16
16
  | [MailModule](Class.MailModule) | Represents the mail module. |
17
17
  | [MailService](Class.MailService) | Represents the `MailService` class. |
18
18
  | [MailTemplateEngine](Class.MailTemplateEngine) | The `MailTemplateEngine` class. |
19
- | [~~MailVerificationService~~](Class.MailVerificationService) | Verifies SMTP server connectivity. Does **not** validate individual email addresses - only checks whether the configured SMTP transport is reachable. |
19
+ | [~~MailVerificationService~~](Class.MailVerificationService) | - |
20
20
  | [PostmarkDeliveryStrategy](Class.PostmarkDeliveryStrategy) | The `PostmarkDeliveryStrategy` class. |
21
21
  | [ResendDeliveryStrategy](Class.ResendDeliveryStrategy) | Delivers emails via the Resend API. |
22
22
  | [SendGridDeliveryStrategy](Class.SendGridDeliveryStrategy) | Delivers emails via the SendGrid API. |
23
+ | [SmtpConnectionVerifier](Class.SmtpConnectionVerifier) | Verifies SMTP server connectivity. Does **not** validate individual email addresses — only checks whether the configured SMTP transport is reachable. |
23
24
  | [SmtpDeliveryStrategy](Class.SmtpDeliveryStrategy) | The `SmtpDeliveryStrategy` class. |
24
25
  | [TemplateFetchStrategyBase](Class.TemplateFetchStrategyBase) | Represents the base class for template fetch strategies. |
25
26
 
@@ -29,6 +30,7 @@ editUrl: false
29
30
  | ------ | ------ |
30
31
  | [IMailAttachment](Interface.IMailAttachment) | Represents an email attachment. |
31
32
  | [IMailEvents](Interface.IMailEvents) | Represents the contract of events emitted by the mail domain. |
33
+ | [IMailModuleOptions](Interface.IMailModuleOptions) | Options for configuring the [MailModule](Class.MailModule). |
32
34
  | [IMailTemplateVariants](Interface.IMailTemplateVariants) | Represents the in-memory structure for a single template (multiple formats). |
33
35
 
34
36
  ## Type Aliases
@@ -2,7 +2,7 @@
2
2
  title: platform-mailing
3
3
  description: Multi-strategy email delivery with support for SMTP, Postmark, Resend, SendGrid, and Mailgun.
4
4
  order: 7
5
- tags: [mailing, email, smtp, postmark, resend, sendgrid, mailgun, templates, verification, strategy-pattern]
5
+ tags: [mailing, email, smtp, postmark, resend, sendgrid, mailgun, templates, verification, strategy-pattern, health]
6
6
  package: '@breadstone/archipel-platform-mailing'
7
7
  ---
8
8
 
@@ -285,9 +285,32 @@ Load templates from blob storage (e.g., Vercel Blob):
285
285
 
286
286
  ---
287
287
 
288
- ## MailVerificationService
288
+ ## SmtpConnectionVerifier
289
289
 
290
- Email address verification flow:
290
+ Verifies SMTP server connectivity. Replaces the deprecated `MailVerificationService`.
291
+
292
+ ```typescript
293
+ import { SmtpConnectionVerifier } from '@breadstone/archipel-platform-mailing';
294
+
295
+ @Injectable()
296
+ export class HealthCheckService {
297
+ constructor(private readonly _smtpVerifier: SmtpConnectionVerifier) {}
298
+
299
+ public async checkSmtp(): Promise<boolean> {
300
+ return this._smtpVerifier.verifyConnection();
301
+ }
302
+
303
+ public async sendTestEmail(to: string): Promise<boolean> {
304
+ return this._smtpVerifier.sendTestEmail(to);
305
+ }
306
+ }
307
+ ```
308
+
309
+ ## MailVerificationService (Deprecated)
310
+
311
+ ::: warning Deprecated
312
+ `MailVerificationService` is deprecated. Use `SmtpConnectionVerifier` instead — it provides `verifyConnection()` for SMTP connectivity checks and `sendTestEmail()` for sending test messages.
313
+ :::
291
314
 
292
315
  ```typescript
293
316
  import { MailVerificationService } from '@breadstone/archipel-platform-mailing';
@@ -304,15 +327,47 @@ export class RegistrationService {
304
327
 
305
328
  ---
306
329
 
330
+ ## MailModule.register()
331
+
332
+ The `MailModule` supports a `register()` static method for explicit module configuration:
333
+
334
+ ```typescript
335
+ import { MailModule } from '@breadstone/archipel-platform-mailing';
336
+
337
+ @Module({
338
+ imports: [
339
+ MailModule.register({
340
+ configEntries: MY_CUSTOM_CONFIG_ENTRIES, // optional
341
+ isGlobal: true, // optional, default: false
342
+ }),
343
+ ],
344
+ })
345
+ export class AppModule {}
346
+ ```
347
+
348
+ ---
349
+
307
350
  ## Health Check
308
351
 
352
+ The `MailHealthIndicator` validates that the required mail configuration values (`MAIL_HOST`, `MAIL_USER`, `MAIL_PORT`) are present and non-empty. Import it from the `/health` subpath:
353
+
309
354
  ```typescript
310
- import { MailHealthIndicator } from '@breadstone/archipel-platform-mailing';
355
+ import { MailHealthIndicator } from '@breadstone/archipel-platform-mailing/health';
356
+ import { HealthModule } from '@breadstone/archipel-platform-health';
311
357
 
312
- // Registered with HealthOrchestrator automatically
313
- // Checks mail delivery readiness
358
+ @Module({
359
+ imports: [
360
+ MailModule.register({ /* ... */ }),
361
+ HealthModule.withIndicators([MailHealthIndicator]),
362
+ ],
363
+ })
364
+ export class AppModule {}
314
365
  ```
315
366
 
367
+ | Key | Check | Dependencies |
368
+ | --- | ----- | ------------ |
369
+ | `mail` | Validates mail host, user, and port config | `ConfigService` |
370
+
316
371
  ---
317
372
 
318
373
  ## Real-World Example: Transactional Email Pipeline
@@ -389,7 +444,8 @@ try {
389
444
  | --------------------------- | -------------- | ------------------------------- |
390
445
  | `MailModule` | NestJS Module | Global mail module |
391
446
  | `MailService` | Service | Send emails (plain + templated) |
392
- | `MailVerificationService` | Service | Email verification |
447
+ | `SmtpConnectionVerifier` | Service | SMTP connectivity verification |
448
+ | `MailVerificationService` | Service | ~~Email verification~~ (deprecated — use `SmtpConnectionVerifier`) |
393
449
  | `MailTemplateEngine` | Service | Template variable substitution |
394
450
  | `DeliveryStrategyBase` | Abstract class | Base for delivery strategies |
395
451
  | `SmtpDeliveryStrategy` | Strategy | SMTP transport (built-in) |
@@ -399,7 +455,7 @@ try {
399
455
  | `MailgunDeliveryStrategy` | Strategy | Mailgun API |
400
456
  | `FileTemplateFetchStrategy` | Strategy | File-based templates |
401
457
  | `BlobTemplateFetchStrategy` | Strategy | Blob-stored templates |
402
- | `MailHealthIndicator` | Health | Mail readiness check |
458
+ | `MailHealthIndicator` | Health | Mail readiness check (`/health` subpath) |
403
459
  | `MailDeliveryError` | Error class | Domain error for delivery failures |
404
460
 
405
461
  ### Provider subpaths
@@ -0,0 +1,110 @@
1
+ ---
2
+ title: 'Class: MappingBuilder'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: MappingBuilder
7
+
8
+ Defined in: [builder/MappingBuilder.ts:15](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/builder/MappingBuilder.ts#L15)
9
+
10
+ A mapping builder that uses the mapping service to register maps.
11
+
12
+ ## Implements
13
+
14
+ - [`IMappingBuilder`](Interface.IMappingBuilder)
15
+
16
+ ## Constructors
17
+
18
+ ### Constructor
19
+
20
+ ```ts
21
+ new MappingBuilder(service): MappingBuilder;
22
+ ```
23
+
24
+ Defined in: [builder/MappingBuilder.ts:29](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/builder/MappingBuilder.ts#L29)
25
+
26
+ Constructs a new instance of the `MappingBuilder` class.
27
+
28
+ #### Parameters
29
+
30
+ | Parameter | Type |
31
+ | ------ | ------ |
32
+ | `service` | [`MappingService`](Class.MappingService) |
33
+
34
+ #### Returns
35
+
36
+ `MappingBuilder`
37
+
38
+ ## Methods
39
+
40
+ ### createKeyedMap()
41
+
42
+ ```ts
43
+ createKeyedMap<TInput, TOutput>(key, fn): this;
44
+ ```
45
+
46
+ Defined in: [builder/MappingBuilder.ts:64](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/builder/MappingBuilder.ts#L64)
47
+
48
+ Creates a keyed mapping between two types with full type safety.
49
+ The mapping key encodes both input and output types at compile time.
50
+
51
+ #### Type Parameters
52
+
53
+ | Type Parameter |
54
+ | ------ |
55
+ | `TInput` |
56
+ | `TOutput` |
57
+
58
+ #### Parameters
59
+
60
+ | Parameter | Type | Description |
61
+ | ------ | ------ | ------ |
62
+ | `key` | [`IMappingKey`](Interface.IMappingKey)\<`TInput`, `TOutput`\> | The type-safe mapping key. |
63
+ | `fn` | (`source`) => `TOutput` | The mapping function. |
64
+
65
+ #### Returns
66
+
67
+ `this`
68
+
69
+ #### Implementation of
70
+
71
+ [`IMappingBuilder`](Interface.IMappingBuilder).[`createKeyedMap`](Interface.IMappingBuilder#createkeyedmap)
72
+
73
+ ***
74
+
75
+ ### createMap()
76
+
77
+ ```ts
78
+ createMap<TSource, TDestination>(
79
+ source,
80
+ destination,
81
+ fn): this;
82
+ ```
83
+
84
+ Defined in: [builder/MappingBuilder.ts:46](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/builder/MappingBuilder.ts#L46)
85
+
86
+ Creates a mapping between two types.
87
+ Enforces compile-time type compatibility check.
88
+
89
+ #### Type Parameters
90
+
91
+ | Type Parameter |
92
+ | ------ |
93
+ | `TSource` |
94
+ | `TDestination` |
95
+
96
+ #### Parameters
97
+
98
+ | Parameter | Type | Description |
99
+ | ------ | ------ | ------ |
100
+ | `source` | [`Constructor`](TypeAlias.Constructor)\<`TSource`\> | The source type. |
101
+ | `destination` | [`Constructor`](TypeAlias.Constructor)\<`TDestination`\> | The destination type. |
102
+ | `fn` | (`source`) => `TDestination` | The mapping function. |
103
+
104
+ #### Returns
105
+
106
+ `this`
107
+
108
+ #### Implementation of
109
+
110
+ [`IMappingBuilder`](Interface.IMappingBuilder).[`createMap`](Interface.IMappingBuilder#createmap)
@@ -0,0 +1,56 @@
1
+ ---
2
+ title: 'Abstract Class: MappingError'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Abstract Class: MappingError
7
+
8
+ Defined in: [errors/MappingError.ts:7](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/MappingError.ts#L7)
9
+
10
+ Base class for mapping related domain errors.
11
+
12
+ ## Extends
13
+
14
+ - `Error`
15
+
16
+ ## Extended by
17
+
18
+ - [`MappingNotRegisteredError`](Class.MappingNotRegisteredError)
19
+ - [`TypeMappingNotRegisteredError`](Class.TypeMappingNotRegisteredError)
20
+
21
+ ## Constructors
22
+
23
+ ### Constructor
24
+
25
+ ```ts
26
+ protected new MappingError(message, code): MappingError;
27
+ ```
28
+
29
+ Defined in: [errors/MappingError.ts:16](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/MappingError.ts#L16)
30
+
31
+ #### Parameters
32
+
33
+ | Parameter | Type |
34
+ | ------ | ------ |
35
+ | `message` | `string` |
36
+ | `code` | `string` |
37
+
38
+ #### Returns
39
+
40
+ `MappingError`
41
+
42
+ #### Overrides
43
+
44
+ ```ts
45
+ Error.constructor
46
+ ```
47
+
48
+ ## Properties
49
+
50
+ ### code
51
+
52
+ ```ts
53
+ readonly code: string;
54
+ ```
55
+
56
+ Defined in: [errors/MappingError.ts:10](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/MappingError.ts#L10)
@@ -0,0 +1,46 @@
1
+ ---
2
+ title: 'Class: MappingModule'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: MappingModule
7
+
8
+ Defined in: [MappingModule.ts:19](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingModule.ts#L19)
9
+
10
+ Module that provides mapping services and allows registration of mapping profiles.
11
+
12
+ ## Constructors
13
+
14
+ ### Constructor
15
+
16
+ ```ts
17
+ new MappingModule(): MappingModule;
18
+ ```
19
+
20
+ #### Returns
21
+
22
+ `MappingModule`
23
+
24
+ ## Methods
25
+
26
+ ### withProfiles()
27
+
28
+ ```ts
29
+ static withProfiles(profiles): DynamicModule;
30
+ ```
31
+
32
+ Defined in: [MappingModule.ts:27](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingModule.ts#L27)
33
+
34
+ Configures the module with the given mapping profiles.
35
+
36
+ #### Parameters
37
+
38
+ | Parameter | Type | Description |
39
+ | ------ | ------ | ------ |
40
+ | `profiles` | `Type`\<[`IMappingProfile`](Interface.IMappingProfile)\>[] | An array of mapping profile types to register. |
41
+
42
+ #### Returns
43
+
44
+ `DynamicModule`
45
+
46
+ A dynamic module with the specified profiles registered.
@@ -0,0 +1,52 @@
1
+ ---
2
+ title: 'Class: MappingNotRegisteredError'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: MappingNotRegisteredError
7
+
8
+ Defined in: [errors/MappingNotRegisteredError.ts:12](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/MappingNotRegisteredError.ts#L12)
9
+
10
+ Thrown when a keyed mapping is requested but not registered.
11
+
12
+ ## Extends
13
+
14
+ - [`MappingError`](Class.MappingError)
15
+
16
+ ## Constructors
17
+
18
+ ### Constructor
19
+
20
+ ```ts
21
+ new MappingNotRegisteredError(key): MappingNotRegisteredError;
22
+ ```
23
+
24
+ Defined in: [errors/MappingNotRegisteredError.ts:15](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/MappingNotRegisteredError.ts#L15)
25
+
26
+ #### Parameters
27
+
28
+ | Parameter | Type |
29
+ | ------ | ------ |
30
+ | `key` | `string` |
31
+
32
+ #### Returns
33
+
34
+ `MappingNotRegisteredError`
35
+
36
+ #### Overrides
37
+
38
+ [`MappingError`](Class.MappingError).[`constructor`](Class.MappingError#constructor)
39
+
40
+ ## Properties
41
+
42
+ ### code
43
+
44
+ ```ts
45
+ readonly code: string;
46
+ ```
47
+
48
+ Defined in: [errors/MappingError.ts:10](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/MappingError.ts#L10)
49
+
50
+ #### Inherited from
51
+
52
+ [`MappingError`](Class.MappingError).[`code`](Class.MappingError#code)
@@ -0,0 +1,52 @@
1
+ ---
2
+ title: 'Abstract Class: MappingProfileBase'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Abstract Class: MappingProfileBase
7
+
8
+ Defined in: [profile/MappingProfileBase.ts:13](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/profile/MappingProfileBase.ts#L13)
9
+
10
+ Base class for mapping profiles to simplify implementation.
11
+
12
+ ## Implements
13
+
14
+ - [`IMappingProfile`](Interface.IMappingProfile)
15
+
16
+ ## Constructors
17
+
18
+ ### Constructor
19
+
20
+ ```ts
21
+ new MappingProfileBase(): MappingProfileBase;
22
+ ```
23
+
24
+ #### Returns
25
+
26
+ `MappingProfileBase`
27
+
28
+ ## Methods
29
+
30
+ ### configure()
31
+
32
+ ```ts
33
+ abstract configure(builder): void;
34
+ ```
35
+
36
+ Defined in: [profile/MappingProfileBase.ts:23](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/profile/MappingProfileBase.ts#L23)
37
+
38
+ Configures the mapping profile.
39
+
40
+ #### Parameters
41
+
42
+ | Parameter | Type | Description |
43
+ | ------ | ------ | ------ |
44
+ | `builder` | [`IMappingBuilder`](Interface.IMappingBuilder) | The mapping builder. |
45
+
46
+ #### Returns
47
+
48
+ `void`
49
+
50
+ #### Implementation of
51
+
52
+ [`IMappingProfile`](Interface.IMappingProfile).[`configure`](Interface.IMappingProfile#configure)