@breadstone/archipel-mcp 0.0.23 → 0.0.26

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 (194) 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 +113 -49
  53. package/data/packages/platform-database/api/Class.RepositoryBase2.md +171 -0
  54. package/data/packages/platform-database/api/Function.aggregate.md +33 -0
  55. package/data/packages/platform-database/api/Function.aggregateRaw.md +34 -0
  56. package/data/packages/platform-database/api/Function.count.md +33 -0
  57. package/data/packages/platform-database/api/Function.create.md +33 -0
  58. package/data/packages/platform-database/api/Function.createMany.md +33 -0
  59. package/data/packages/platform-database/api/Function.createManyAndReturn.md +35 -0
  60. package/data/packages/platform-database/api/Function.findFirst.md +35 -0
  61. package/data/packages/platform-database/api/Function.findFirstOrThrow.md +34 -0
  62. package/data/packages/platform-database/api/Function.findMany.md +32 -0
  63. package/data/packages/platform-database/api/Function.findManyPaged.md +34 -0
  64. package/data/packages/platform-database/api/Function.findRaw.md +34 -0
  65. package/data/packages/platform-database/api/Function.findUnique.md +32 -0
  66. package/data/packages/platform-database/api/Function.findUniqueOrThrow.md +34 -0
  67. package/data/packages/platform-database/api/Function.groupBy.md +33 -0
  68. package/data/packages/platform-database/api/Function.paginator.md +1 -1
  69. package/data/packages/platform-database/api/Function.pipe.md +34 -0
  70. package/data/packages/platform-database/api/Function.pipeAll.md +35 -0
  71. package/data/packages/platform-database/api/Function.query2.md +35 -0
  72. package/data/packages/platform-database/api/Function.remove.md +33 -0
  73. package/data/packages/platform-database/api/Function.removeMany.md +33 -0
  74. package/data/packages/platform-database/api/Function.update.md +33 -0
  75. package/data/packages/platform-database/api/Function.updateMany.md +33 -0
  76. package/data/packages/platform-database/api/Function.updateManyAndReturn.md +35 -0
  77. package/data/packages/platform-database/api/Function.upsert.md +33 -0
  78. package/data/packages/platform-database/api/Interface.IDatabaseModuleConfig.md +3 -3
  79. package/data/packages/platform-database/api/Interface.IRepositoryQuery2.md +45 -0
  80. package/data/packages/platform-database/api/TypeAlias.DelegateArgs.md +1 -1
  81. package/data/packages/platform-database/api/TypeAlias.DelegateOperations.md +29 -0
  82. package/data/packages/platform-database/api/TypeAlias.DelegateReturnTypes.md +1 -1
  83. package/data/packages/platform-database/api/TypeAlias.PaginateFunction.md +1 -1
  84. package/data/packages/platform-database/api/TypeAlias.RepositoryOperationsAll.md +19 -0
  85. package/data/packages/platform-database/api/TypeAlias.RepositoryOperationsBase.md +34 -0
  86. package/data/packages/platform-database/api/Variable.DATABASE_MODULE_CONFIG.md +1 -1
  87. package/data/packages/platform-database/api/index.md +29 -1
  88. package/data/packages/platform-database/index.md +17 -5
  89. package/data/packages/platform-documents/api/Class.DocumentEngine.md +9 -5
  90. package/data/packages/platform-documents/index.md +1 -1
  91. package/data/packages/platform-esigning/api/Class.AdobeSignEsigningProvider.md +24 -0
  92. package/data/packages/platform-esigning/api/Class.DocuSignEsigningProvider.md +24 -0
  93. package/data/packages/platform-esigning/api/Class.DropboxSignEsigningProvider.md +24 -0
  94. package/data/packages/platform-esigning/api/Class.EsigningClientPort.md +20 -0
  95. package/data/packages/platform-esigning/api/Class.EsigningHealthIndicator.md +78 -0
  96. package/data/packages/platform-esigning/api/Class.InternalEsigningProvider.md +24 -0
  97. package/data/packages/platform-esigning/api/index.md +1 -0
  98. package/data/packages/platform-esigning/index.md +26 -2
  99. package/data/packages/platform-health/api/Class.HealthModule.md +42 -0
  100. package/data/packages/platform-health/api/Class.HealthOrchestrator.md +64 -0
  101. package/data/packages/platform-health/api/Interface.IHealthCheckResult.md +46 -0
  102. package/data/packages/platform-health/api/Interface.IHealthIndicator.md +41 -0
  103. package/data/packages/platform-health/api/Variable.HEALTH_INDICATORS_TOKEN.md +14 -0
  104. package/data/packages/platform-health/api/index.md +26 -0
  105. package/data/packages/platform-health/index.md +18 -7
  106. package/data/packages/platform-intelligence/api/Class.IntelligenceHealthIndicator.md +78 -0
  107. package/data/packages/platform-intelligence/api/index.md +1 -0
  108. package/data/packages/platform-intelligence/index.md +24 -1
  109. package/data/packages/platform-logging/api/Class.ContextLogger.md +152 -0
  110. package/data/packages/platform-logging/api/Class.LoggerModule.md +8 -2
  111. package/data/packages/platform-logging/api/Class.RequestContextStore.md +90 -0
  112. package/data/packages/platform-logging/api/Class.RequestIdMiddleware.md +68 -0
  113. package/data/packages/platform-logging/api/Interface.IRequestContext.md +34 -0
  114. package/data/packages/platform-logging/api/Variable.REQUEST_ID_HEADER.md +14 -0
  115. package/data/packages/platform-logging/api/index.md +11 -1
  116. package/data/packages/platform-logging/index.md +89 -7
  117. package/data/packages/platform-mailing/api/Class.MailHealthIndicator.md +5 -5
  118. package/data/packages/platform-mailing/api/Class.MailModule.md +28 -1
  119. package/data/packages/platform-mailing/api/Class.MailVerificationService.md +49 -16
  120. package/data/packages/platform-mailing/api/Class.SmtpConnectionVerifier.md +84 -0
  121. package/data/packages/platform-mailing/api/Interface.IMailModuleOptions.md +36 -0
  122. package/data/packages/platform-mailing/api/index.md +3 -1
  123. package/data/packages/platform-mailing/index.md +64 -8
  124. package/data/packages/platform-mapping/api/Class.MappingBuilder.md +110 -0
  125. package/data/packages/platform-mapping/api/Class.MappingError.md +56 -0
  126. package/data/packages/platform-mapping/api/Class.MappingModule.md +46 -0
  127. package/data/packages/platform-mapping/api/Class.MappingNotRegisteredError.md +52 -0
  128. package/data/packages/platform-mapping/api/Class.MappingProfileBase.md +52 -0
  129. package/data/packages/platform-mapping/api/Class.MappingService.md +284 -0
  130. package/data/packages/platform-mapping/api/Class.TypeMappingNotRegisteredError.md +53 -0
  131. package/data/packages/platform-mapping/api/Function.createMappingKey.md +39 -0
  132. package/data/packages/platform-mapping/api/Interface.IMappingBuilder.md +76 -0
  133. package/data/packages/platform-mapping/api/Interface.IMappingKey.md +58 -0
  134. package/data/packages/platform-mapping/api/Interface.IMappingProfile.md +32 -0
  135. package/data/packages/platform-mapping/api/TypeAlias.Constructor.md +28 -0
  136. package/data/packages/platform-mapping/api/index.md +38 -0
  137. package/data/packages/platform-mcp/api/Class.McpHealthIndicator.md +78 -0
  138. package/data/packages/platform-mcp/api/index.md +1 -0
  139. package/data/packages/platform-mcp/index.md +24 -1
  140. package/data/packages/platform-openapi/api/Function.SwaggerFeature.md +2 -2
  141. package/data/packages/platform-openapi/api/Function.getSwaggerFeatureMetadata.md +2 -2
  142. package/data/packages/platform-payments/api/Class.LemonSqueezyClient.md +24 -0
  143. package/data/packages/platform-payments/api/Class.MollieClient.md +24 -0
  144. package/data/packages/platform-payments/api/Class.PaddleClient.md +24 -0
  145. package/data/packages/platform-payments/api/Class.PaymentClientPort.md +20 -0
  146. package/data/packages/platform-payments/api/Class.PaymentHealthIndicator.md +78 -0
  147. package/data/packages/platform-payments/api/Class.StripeClient.md +28 -4
  148. package/data/packages/platform-payments/api/index.md +1 -0
  149. package/data/packages/platform-payments/index.md +26 -2
  150. package/data/packages/platform-queue/api/Class.AzureQueue.md +221 -0
  151. package/data/packages/platform-queue/api/Class.BullMqQueue.md +220 -0
  152. package/data/packages/platform-queue/api/Class.MemoryQueue.md +194 -0
  153. package/data/packages/platform-queue/api/Class.QueueError.md +51 -0
  154. package/data/packages/platform-queue/api/Class.QueueHealthIndicator.md +68 -0
  155. package/data/packages/platform-queue/api/Class.QueueJobNotFoundError.md +43 -0
  156. package/data/packages/platform-queue/api/Class.QueueJobStateError.md +48 -0
  157. package/data/packages/platform-queue/api/Class.QueueValidationError.md +43 -0
  158. package/data/packages/platform-queue/api/Interface.IAzureQueueOptions.md +48 -0
  159. package/data/packages/platform-queue/api/Interface.IBullMqQueueOptions.md +45 -0
  160. package/data/packages/platform-queue/api/Interface.IMemoryQueueOptions.md +32 -0
  161. package/data/packages/platform-queue/api/Interface.IQueue.md +173 -0
  162. package/data/packages/platform-queue/api/Interface.IQueueJob.md +139 -0
  163. package/data/packages/platform-queue/api/TypeAlias.QueueJobStatus.md +14 -0
  164. package/data/packages/platform-queue/api/Variable.AZURE_CONFIG_ENTRIES.md +17 -0
  165. package/data/packages/platform-queue/api/Variable.AZURE_CONNECTION_STRING.md +14 -0
  166. package/data/packages/platform-queue/api/Variable.AZURE_RECEIVE_WAIT_MS.md +21 -0
  167. package/data/packages/platform-queue/api/Variable.BULLMQ_CONFIG_ENTRIES.md +17 -0
  168. package/data/packages/platform-queue/api/Variable.BULLMQ_PREFIX.md +18 -0
  169. package/data/packages/platform-queue/api/Variable.BULLMQ_REDIS_URL.md +21 -0
  170. package/data/packages/platform-queue/api/Variable.PLATFORM_QUEUE_CONFIG_ENTRIES.md +17 -0
  171. package/data/packages/platform-queue/api/Variable.QUEUE_JOB_STATUS.md +30 -0
  172. package/data/packages/platform-queue/api/Variable.QUEUE_MAX_JOBS.md +21 -0
  173. package/data/packages/platform-queue/api/index.md +49 -0
  174. package/data/packages/platform-queue/index.md +168 -0
  175. package/data/packages/platform-resources/api/Class.BlobResourceStrategy.md +195 -0
  176. package/data/packages/platform-resources/api/Class.EmbeddedResourceStrategy.md +215 -0
  177. package/data/packages/platform-resources/api/Class.FileResourceStrategy.md +190 -0
  178. package/data/packages/platform-resources/api/Class.ResourceManager.md +477 -0
  179. package/data/packages/platform-resources/api/Class.ResourceModule.md +46 -0
  180. package/data/packages/platform-resources/api/Class.ResourceNotFoundError.md +60 -0
  181. package/data/packages/platform-resources/api/Interface.IBlobResourceStrategyConfig.md +28 -0
  182. package/data/packages/platform-resources/api/Interface.IBlobServiceAdapter.md +40 -0
  183. package/data/packages/platform-resources/api/Interface.IFileResourceStrategyConfig.md +72 -0
  184. package/data/packages/platform-resources/api/Interface.IResourceManagerConfig.md +89 -0
  185. package/data/packages/platform-resources/api/Interface.IResourceMetadata.md +94 -0
  186. package/data/packages/platform-resources/api/Interface.IResourceResult.md +34 -0
  187. package/data/packages/platform-resources/api/Interface.IResourceStrategy.md +134 -0
  188. package/data/packages/platform-resources/api/index.md +29 -0
  189. package/data/packages/platform-telemetry/api/Class.OtelSdkHolder.md +20 -2
  190. package/data/packages/platform-telemetry/api/Class.TelemetryHealthIndicator.md +78 -0
  191. package/data/packages/platform-telemetry/api/index.md +1 -0
  192. package/data/packages/platform-telemetry/index.md +25 -1
  193. package/data/patterns/config-pattern.md +3 -1
  194. package/package.json +1 -1
@@ -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)
@@ -0,0 +1,284 @@
1
+ ---
2
+ title: 'Class: MappingService'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: MappingService
7
+
8
+ Defined in: [MappingService.ts:19](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L19)
9
+
10
+ Central mapping registry supporting keyed & type-based mappings.
11
+
12
+ ## Constructors
13
+
14
+ ### Constructor
15
+
16
+ ```ts
17
+ new MappingService(): MappingService;
18
+ ```
19
+
20
+ Defined in: [MappingService.ts:36](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L36)
21
+
22
+ Constructs a new instance of the `MappingService` class.
23
+
24
+ #### Returns
25
+
26
+ `MappingService`
27
+
28
+ ## Methods
29
+
30
+ ### map()
31
+
32
+ ```ts
33
+ map<TInput, TOutput>(key, source): TOutput;
34
+ ```
35
+
36
+ Defined in: [MappingService.ts:99](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L99)
37
+
38
+ Maps a source object to a destination type using a type-safe mapping key.
39
+ The key encodes both input and output types, ensuring compile-time type safety.
40
+
41
+ #### Type Parameters
42
+
43
+ | Type Parameter |
44
+ | ------ |
45
+ | `TInput` |
46
+ | `TOutput` |
47
+
48
+ #### Parameters
49
+
50
+ | Parameter | Type | Description |
51
+ | ------ | ------ | ------ |
52
+ | `key` | [`IMappingKey`](Interface.IMappingKey)\<`TInput`, `TOutput`\> | The type-safe mapping key. |
53
+ | `source` | `TInput` | The source object to map. |
54
+
55
+ #### Returns
56
+
57
+ `TOutput`
58
+
59
+ The mapped destination object.
60
+
61
+ #### Example
62
+
63
+ ```typescript
64
+ const response = this._mappingService.map(PRODUCT_MAPPING_KEY, productInput);
65
+ // response is automatically typed as ProductResponse
66
+ ```
67
+
68
+ ***
69
+
70
+ ### mapTypes()
71
+
72
+ ```ts
73
+ mapTypes<TSource, TDestination>(source, destination): TDestination;
74
+ ```
75
+
76
+ Defined in: [MappingService.ts:129](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L129)
77
+
78
+ Maps a source object to a destination type using a registered mapping function.
79
+
80
+ #### Type Parameters
81
+
82
+ | Type Parameter |
83
+ | ------ |
84
+ | `TSource` |
85
+ | `TDestination` |
86
+
87
+ #### Parameters
88
+
89
+ | Parameter | Type | Description |
90
+ | ------ | ------ | ------ |
91
+ | `source` | `TSource` | The source object to map. |
92
+ | `destination` | [`Constructor`](TypeAlias.Constructor)\<`TDestination`\> | The constructor of the destination type. |
93
+
94
+ #### Returns
95
+
96
+ `TDestination`
97
+
98
+ The mapped destination object.
99
+
100
+ ***
101
+
102
+ ### mapTypesArray()
103
+
104
+ ```ts
105
+ mapTypesArray<TSource, TDestination>(sources, destination): TDestination[];
106
+ ```
107
+
108
+ Defined in: [MappingService.ts:161](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L161)
109
+
110
+ Maps an array of source objects to an array of destination types using a registered mapping function.
111
+
112
+ #### Type Parameters
113
+
114
+ | Type Parameter |
115
+ | ------ |
116
+ | `TSource` |
117
+ | `TDestination` |
118
+
119
+ #### Parameters
120
+
121
+ | Parameter | Type | Description |
122
+ | ------ | ------ | ------ |
123
+ | `sources` | `TSource`[] | The array of source objects to map. |
124
+ | `destination` | [`Constructor`](TypeAlias.Constructor)\<`TDestination`\> | The constructor of the destination type. |
125
+
126
+ #### Returns
127
+
128
+ `TDestination`[]
129
+
130
+ The array of mapped destination objects.
131
+
132
+ ***
133
+
134
+ ### register()
135
+
136
+ ```ts
137
+ register<TSource, TDestination>(key, fn): void;
138
+ ```
139
+
140
+ Defined in: [MappingService.ts:54](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L54)
141
+
142
+ Registers a mapping function for a specific key.
143
+
144
+ #### Type Parameters
145
+
146
+ | Type Parameter |
147
+ | ------ |
148
+ | `TSource` |
149
+ | `TDestination` |
150
+
151
+ #### Parameters
152
+
153
+ | Parameter | Type | Description |
154
+ | ------ | ------ | ------ |
155
+ | `key` | `string` | The unique key for the mapping. |
156
+ | `fn` | (`source`) => `TDestination` | The mapping function. |
157
+
158
+ #### Returns
159
+
160
+ `void`
161
+
162
+ void
163
+
164
+ ***
165
+
166
+ ### registerMap()
167
+
168
+ ```ts
169
+ registerMap<TSource, TDestination>(
170
+ source,
171
+ destination,
172
+ fn): void;
173
+ ```
174
+
175
+ Defined in: [MappingService.ts:71](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L71)
176
+
177
+ Registers a mapping function for a specific source and destination type.
178
+
179
+ #### Type Parameters
180
+
181
+ | Type Parameter |
182
+ | ------ |
183
+ | `TSource` |
184
+ | `TDestination` |
185
+
186
+ #### Parameters
187
+
188
+ | Parameter | Type | Description |
189
+ | ------ | ------ | ------ |
190
+ | `source` | [`Constructor`](TypeAlias.Constructor)\<`TSource`\> | The constructor of the source type. |
191
+ | `destination` | [`Constructor`](TypeAlias.Constructor)\<`TDestination`\> | The constructor of the destination type. |
192
+ | `fn` | (`source`) => `TDestination` | The mapping function. |
193
+
194
+ #### Returns
195
+
196
+ `void`
197
+
198
+ void
199
+
200
+ ***
201
+
202
+ ### registerProfile()
203
+
204
+ ```ts
205
+ registerProfile(profile): void;
206
+ ```
207
+
208
+ Defined in: [MappingService.ts:175](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L175)
209
+
210
+ Registers a mapping profile containing multiple mappings.
211
+
212
+ #### Parameters
213
+
214
+ | Parameter | Type | Description |
215
+ | ------ | ------ | ------ |
216
+ | `profile` | [`IMappingProfile`](Interface.IMappingProfile) | The mapping profile to register. |
217
+
218
+ #### Returns
219
+
220
+ `void`
221
+
222
+ void
223
+
224
+ ***
225
+
226
+ ### tryMap()
227
+
228
+ ```ts
229
+ tryMap<TInput, TOutput>(key, source): TOutput | undefined;
230
+ ```
231
+
232
+ Defined in: [MappingService.ts:115](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L115)
233
+
234
+ Attempts to map returning undefined instead of throwing when mapping is absent.
235
+
236
+ #### Type Parameters
237
+
238
+ | Type Parameter |
239
+ | ------ |
240
+ | `TInput` |
241
+ | `TOutput` |
242
+
243
+ #### Parameters
244
+
245
+ | Parameter | Type | Description |
246
+ | ------ | ------ | ------ |
247
+ | `key` | [`IMappingKey`](Interface.IMappingKey)\<`TInput`, `TOutput`\> | The type-safe mapping key. |
248
+ | `source` | `TInput` | The source object to map. |
249
+
250
+ #### Returns
251
+
252
+ `TOutput` \| `undefined`
253
+
254
+ The mapped destination object or undefined if no mapping exists.
255
+
256
+ ***
257
+
258
+ ### tryMapTypes()
259
+
260
+ ```ts
261
+ tryMapTypes<TSource, TDestination>(source, destination): TDestination | undefined;
262
+ ```
263
+
264
+ Defined in: [MappingService.ts:142](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/MappingService.ts#L142)
265
+
266
+ Safe variant of [mapTypes](#maptypes) that returns undefined if not registered.
267
+
268
+ #### Type Parameters
269
+
270
+ | Type Parameter |
271
+ | ------ |
272
+ | `TSource` |
273
+ | `TDestination` |
274
+
275
+ #### Parameters
276
+
277
+ | Parameter | Type |
278
+ | ------ | ------ |
279
+ | `source` | `TSource` |
280
+ | `destination` | [`Constructor`](TypeAlias.Constructor)\<`TDestination`\> |
281
+
282
+ #### Returns
283
+
284
+ `TDestination` \| `undefined`
@@ -0,0 +1,53 @@
1
+ ---
2
+ title: 'Class: TypeMappingNotRegisteredError'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: TypeMappingNotRegisteredError
7
+
8
+ Defined in: [errors/TypeMappingNotRegisteredError.ts:12](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/TypeMappingNotRegisteredError.ts#L12)
9
+
10
+ Thrown when a type 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 TypeMappingNotRegisteredError(source, destination): TypeMappingNotRegisteredError;
22
+ ```
23
+
24
+ Defined in: [errors/TypeMappingNotRegisteredError.ts:15](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/TypeMappingNotRegisteredError.ts#L15)
25
+
26
+ #### Parameters
27
+
28
+ | Parameter | Type |
29
+ | ------ | ------ |
30
+ | `source` | `string` |
31
+ | `destination` | `string` |
32
+
33
+ #### Returns
34
+
35
+ `TypeMappingNotRegisteredError`
36
+
37
+ #### Overrides
38
+
39
+ [`MappingError`](Class.MappingError).[`constructor`](Class.MappingError#constructor)
40
+
41
+ ## Properties
42
+
43
+ ### code
44
+
45
+ ```ts
46
+ readonly code: string;
47
+ ```
48
+
49
+ Defined in: [errors/MappingError.ts:10](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/errors/MappingError.ts#L10)
50
+
51
+ #### Inherited from
52
+
53
+ [`MappingError`](Class.MappingError).[`code`](Class.MappingError#code)
@@ -0,0 +1,39 @@
1
+ ---
2
+ title: 'Function: createMappingKey()'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Function: createMappingKey()
7
+
8
+ ```ts
9
+ function createMappingKey<TInput, TOutput>(key): IMappingKey<TInput, TOutput>;
10
+ ```
11
+
12
+ Defined in: [types/MappingKey.ts:28](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/types/MappingKey.ts#L28)
13
+
14
+ Creates a type-safe mapping key.
15
+
16
+ ## Type Parameters
17
+
18
+ | Type Parameter |
19
+ | ------ |
20
+ | `TInput` |
21
+ | `TOutput` |
22
+
23
+ ## Parameters
24
+
25
+ | Parameter | Type | Description |
26
+ | ------ | ------ | ------ |
27
+ | `key` | `string` | The unique string identifier for the mapping. |
28
+
29
+ ## Returns
30
+
31
+ [`IMappingKey`](Interface.IMappingKey)\<`TInput`, `TOutput`\>
32
+
33
+ A branded mapping key that encodes the input and output types.
34
+
35
+ ## Example
36
+
37
+ ```typescript
38
+ export const PRODUCT_MAPPING_KEY = createMappingKey<IProductMappingInput, ProductResponse>('food.product');
39
+ ```
@@ -0,0 +1,76 @@
1
+ ---
2
+ title: 'Interface: IMappingBuilder'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Interface: IMappingBuilder
7
+
8
+ Defined in: [builder/interfaces/IMappingBuilder.ts:24](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/builder/interfaces/IMappingBuilder.ts#L24)
9
+
10
+ Defines the interface for a mapping builder.
11
+
12
+ ## Methods
13
+
14
+ ### createKeyedMap()
15
+
16
+ ```ts
17
+ createKeyedMap<TInput, TOutput>(key, fn): this;
18
+ ```
19
+
20
+ Defined in: [builder/interfaces/IMappingBuilder.ts:50](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/builder/interfaces/IMappingBuilder.ts#L50)
21
+
22
+ Creates a keyed mapping between two types with full type safety.
23
+ The mapping key encodes both input and output types at compile time.
24
+
25
+ #### Type Parameters
26
+
27
+ | Type Parameter |
28
+ | ------ |
29
+ | `TInput` |
30
+ | `TOutput` |
31
+
32
+ #### Parameters
33
+
34
+ | Parameter | Type | Description |
35
+ | ------ | ------ | ------ |
36
+ | `key` | [`IMappingKey`](Interface.IMappingKey)\<`TInput`, `TOutput`\> | The type-safe mapping key. |
37
+ | `fn` | (`source`) => `MappingCompatible`\<`TInput`, `TOutput`\> & `TOutput` | The mapping function that must return a valid destination. |
38
+
39
+ #### Returns
40
+
41
+ `this`
42
+
43
+ ***
44
+
45
+ ### createMap()
46
+
47
+ ```ts
48
+ createMap<TSource, TDestination>(
49
+ source,
50
+ destination,
51
+ fn): this;
52
+ ```
53
+
54
+ Defined in: [builder/interfaces/IMappingBuilder.ts:36](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/builder/interfaces/IMappingBuilder.ts#L36)
55
+
56
+ Creates a mapping between two types.
57
+ Ensures compile-time type compatibility between source and destination.
58
+
59
+ #### Type Parameters
60
+
61
+ | Type Parameter |
62
+ | ------ |
63
+ | `TSource` |
64
+ | `TDestination` |
65
+
66
+ #### Parameters
67
+
68
+ | Parameter | Type | Description |
69
+ | ------ | ------ | ------ |
70
+ | `source` | [`Constructor`](TypeAlias.Constructor)\<`TSource`\> | The source type. |
71
+ | `destination` | [`Constructor`](TypeAlias.Constructor)\<`TDestination`\> | The destination type. |
72
+ | `fn` | (`source`) => `MappingCompatible`\<`TSource`, `TDestination`\> & `TDestination` | The mapping function that must return a valid destination. |
73
+
74
+ #### Returns
75
+
76
+ `this`
@@ -0,0 +1,58 @@
1
+ ---
2
+ title: 'Interface: IMappingKey\<TInput, TOutput\>'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Interface: IMappingKey\<TInput, TOutput\>
7
+
8
+ Defined in: [types/MappingKey.ts:9](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/types/MappingKey.ts#L9)
9
+
10
+ Type-safe mapping key that encodes both input and output types.
11
+ This ensures compile-time type safety when using the mapping service.
12
+
13
+ ## Type Parameters
14
+
15
+ | Type Parameter | Description |
16
+ | ------ | ------ |
17
+ | `TInput` | The input type for the mapping. |
18
+ | `TOutput` | The output type for the mapping. |
19
+
20
+ ## Properties
21
+
22
+ ### \_brand
23
+
24
+ ```ts
25
+ readonly _brand: "MappingKey";
26
+ ```
27
+
28
+ Defined in: [types/MappingKey.ts:10](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/types/MappingKey.ts#L10)
29
+
30
+ ***
31
+
32
+ ### \_input
33
+
34
+ ```ts
35
+ readonly _input: TInput;
36
+ ```
37
+
38
+ Defined in: [types/MappingKey.ts:11](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/types/MappingKey.ts#L11)
39
+
40
+ ***
41
+
42
+ ### \_output
43
+
44
+ ```ts
45
+ readonly _output: TOutput;
46
+ ```
47
+
48
+ Defined in: [types/MappingKey.ts:12](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/types/MappingKey.ts#L12)
49
+
50
+ ***
51
+
52
+ ### key
53
+
54
+ ```ts
55
+ readonly key: string;
56
+ ```
57
+
58
+ Defined in: [types/MappingKey.ts:13](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/types/MappingKey.ts#L13)
@@ -0,0 +1,32 @@
1
+ ---
2
+ title: 'Interface: IMappingProfile'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Interface: IMappingProfile
7
+
8
+ Defined in: [profile/interfaces/IMappingProfile.ts:12](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/profile/interfaces/IMappingProfile.ts#L12)
9
+
10
+ Defines the interface for a mapping profile.
11
+
12
+ ## Methods
13
+
14
+ ### configure()
15
+
16
+ ```ts
17
+ configure(builder): void;
18
+ ```
19
+
20
+ Defined in: [profile/interfaces/IMappingProfile.ts:21](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/profile/interfaces/IMappingProfile.ts#L21)
21
+
22
+ Configures the mapping profile.
23
+
24
+ #### Parameters
25
+
26
+ | Parameter | Type | Description |
27
+ | ------ | ------ | ------ |
28
+ | `builder` | [`IMappingBuilder`](Interface.IMappingBuilder) | The mapping builder. |
29
+
30
+ #### Returns
31
+
32
+ `void`
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: 'Type Alias: Constructor\<T\>'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Type Alias: Constructor\<T\>
7
+
8
+ ```ts
9
+ type Constructor<T> = (...args) => T;
10
+ ```
11
+
12
+ Defined in: [types/Constructor.ts:1](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-mapping/src/types/Constructor.ts#L1)
13
+
14
+ ## Type Parameters
15
+
16
+ | Type Parameter |
17
+ | ------ |
18
+ | `T` |
19
+
20
+ ## Parameters
21
+
22
+ | Parameter | Type |
23
+ | ------ | ------ |
24
+ | ...`args` | `unknown`[] |
25
+
26
+ ## Returns
27
+
28
+ `T`
@@ -0,0 +1,38 @@
1
+ ---
2
+ title: '@breadstone/archipel-platform-mapping'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # @breadstone/archipel-platform-mapping
7
+
8
+ ## Classes
9
+
10
+ | Class | Description |
11
+ | ------ | ------ |
12
+ | [MappingBuilder](Class.MappingBuilder) | A mapping builder that uses the mapping service to register maps. |
13
+ | [MappingError](Class.MappingError) | Base class for mapping related domain errors. |
14
+ | [MappingModule](Class.MappingModule) | Module that provides mapping services and allows registration of mapping profiles. |
15
+ | [MappingNotRegisteredError](Class.MappingNotRegisteredError) | Thrown when a keyed mapping is requested but not registered. |
16
+ | [MappingProfileBase](Class.MappingProfileBase) | Base class for mapping profiles to simplify implementation. |
17
+ | [MappingService](Class.MappingService) | Central mapping registry supporting keyed & type-based mappings. |
18
+ | [TypeMappingNotRegisteredError](Class.TypeMappingNotRegisteredError) | Thrown when a type mapping is requested but not registered. |
19
+
20
+ ## Interfaces
21
+
22
+ | Interface | Description |
23
+ | ------ | ------ |
24
+ | [IMappingBuilder](Interface.IMappingBuilder) | Defines the interface for a mapping builder. |
25
+ | [IMappingKey](Interface.IMappingKey) | Type-safe mapping key that encodes both input and output types. This ensures compile-time type safety when using the mapping service. |
26
+ | [IMappingProfile](Interface.IMappingProfile) | Defines the interface for a mapping profile. |
27
+
28
+ ## Type Aliases
29
+
30
+ | Type Alias | Description |
31
+ | ------ | ------ |
32
+ | [Constructor](TypeAlias.Constructor) | - |
33
+
34
+ ## Functions
35
+
36
+ | Function | Description |
37
+ | ------ | ------ |
38
+ | [createMappingKey](Function.createMappingKey) | Creates a type-safe mapping key. |