@breadstone/archipel-mcp 0.0.21 → 0.0.23

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 (143) hide show
  1. package/README.md +32 -13
  2. package/data/guides/ai-text-generation.md +16 -24
  3. package/data/guides/cryptography-and-otp.md +2 -2
  4. package/data/guides/database-setup.md +4 -3
  5. package/data/guides/email-templates.md +52 -42
  6. package/data/guides/getting-started.md +6 -6
  7. package/data/guides/resource-management.md +9 -9
  8. package/data/packages/platform-authentication/api/Interface.IMfaSubjectUpdate.md +1 -1
  9. package/data/packages/platform-authentication/api/index.md +1 -1
  10. package/data/packages/platform-blob-storage/api/Variable.AWS_S3_PROVIDER_OPTIONS.md +1 -1
  11. package/data/packages/platform-blob-storage/api/Variable.AZURE_BLOB_PROVIDER_OPTIONS.md +1 -1
  12. package/data/packages/platform-blob-storage/api/Variable.BLOB_PROVIDER.md +1 -1
  13. package/data/packages/platform-blob-storage/api/Variable.VERCEL_BLOB_PROVIDER_OPTIONS.md +1 -1
  14. package/data/packages/platform-caching/api/Class.RedisLayeredCache.md +3 -3
  15. package/data/packages/platform-core/api/Class.ErrorTemplateService.md +1 -1
  16. package/data/packages/platform-core/api/Class.HostService.md +1 -1
  17. package/data/packages/platform-core/api/Variable.ID_GENERATOR_TOKEN.md +1 -1
  18. package/data/packages/platform-core/api/index.md +0 -27
  19. package/data/packages/platform-core/index.md +7 -4
  20. package/data/packages/platform-cryptography/api/Class.BcryptService.md +4 -4
  21. package/data/packages/platform-cryptography/api/Class.OtpService.md +6 -6
  22. package/data/packages/platform-cryptography/api/Variable.BCRYPT_OPTIONS.md +2 -2
  23. package/data/packages/platform-cryptography/api/Variable.MAX_BCRYPT_PASSWORD_BYTES.md +1 -1
  24. package/data/packages/platform-cryptography/api/Variable.MIN_BCRYPT_ROUNDS.md +1 -1
  25. package/data/packages/platform-cryptography/api/Variable.OTP_OPTIONS.md +2 -2
  26. package/data/packages/platform-cryptography/api/Variable.OTP_SERVICE_TOKEN.md +2 -2
  27. package/data/packages/platform-cryptography/api/Variable.TOTP_EPOCH_TOLERANCE.md +1 -1
  28. package/data/packages/platform-cryptography/api/index.md +3 -3
  29. package/data/packages/platform-documents/api/Class.BaseDocumentRenderer.md +32 -1
  30. package/data/packages/platform-documents/api/Class.DocumentEngine.md +4 -4
  31. package/data/packages/platform-documents/api/Class.DocumentModule.md +2 -2
  32. package/data/packages/platform-documents/api/Class.DocxDocumentRenderer2.md +333 -0
  33. package/data/packages/platform-documents/api/Class.PdfDocumentRenderer.md +355 -0
  34. package/data/packages/platform-documents/api/Interface.IDocumentModuleOptions.md +31 -5
  35. package/data/packages/platform-documents/api/Variable.DOCUMENT_MODULE_OPTIONS.md +1 -1
  36. package/data/packages/platform-documents/api/Variable.DOCUMENT_PARSER_TOKEN.md +1 -1
  37. package/data/packages/platform-documents/api/Variable.DOCUMENT_RENDERER_TOKEN.md +1 -1
  38. package/data/packages/platform-documents/api/Variable.IMAGE_PROCESSOR_TOKEN.md +1 -1
  39. package/data/packages/platform-documents/api/index.md +2 -0
  40. package/data/packages/platform-esigning/api/Class.EsigningClientPort.md +1 -1
  41. package/data/packages/platform-health/index.md +128 -0
  42. package/data/packages/platform-mailing/api/Class.DeliveryStrategyBase.md +0 -1
  43. package/data/packages/platform-mailing/api/Class.MailModule.md +1 -1
  44. package/data/packages/platform-mailing/api/Class.MailVerificationService.md +1 -1
  45. package/data/packages/platform-mailing/api/Class.TemplateFetchStrategyBase.md +0 -5
  46. package/data/packages/platform-mailing/api/Variable.SMTP_CONFIG_ENTRIES.md +14 -0
  47. package/data/packages/platform-mailing/api/Variable.SMTP_HOST.md +14 -0
  48. package/data/packages/platform-mailing/api/Variable.SMTP_PASSWORD.md +14 -0
  49. package/data/packages/platform-mailing/api/Variable.SMTP_PORT.md +14 -0
  50. package/data/packages/platform-mailing/api/Variable.SMTP_SECURE.md +14 -0
  51. package/data/packages/platform-mailing/api/Variable.SMTP_USER.md +14 -0
  52. package/data/packages/platform-mailing/api/index.md +7 -4
  53. package/data/packages/platform-mapping/index.md +121 -0
  54. package/data/packages/platform-mcp/api/Variable.MCP_MODULE_OPTIONS.md +1 -1
  55. package/data/packages/platform-openapi/api/Class.SwaggerMultiDocumentService.md +4 -4
  56. package/data/packages/platform-resources/index.md +135 -0
  57. package/data/packages/platform-telemetry/api/Class.OtelSdkHolder.md +1 -1
  58. package/data/packages/platform-telemetry/api/Variable.TELEMETRY_ENABLED.md +1 -1
  59. package/data/packages/platform-telemetry/api/Variable.TELEMETRY_FACADE.md +1 -1
  60. package/data/packages/platform-telemetry/api/Variable.TELEMETRY_OPTIONS.md +1 -1
  61. package/{src/knowledge/configPattern.js → data/patterns/config-pattern.md} +46 -49
  62. package/{src/knowledge/dtoPattern.js → data/patterns/dto-pattern.md} +58 -61
  63. package/{src/knowledge/errorHandlingPattern.js → data/patterns/error-handling-pattern.md} +35 -38
  64. package/{src/knowledge/guardPattern.js → data/patterns/guard-pattern.md} +35 -38
  65. package/{src/knowledge/mappingPattern.js → data/patterns/mapping-pattern.md} +43 -144
  66. package/data/patterns/module-pattern.md +182 -0
  67. package/data/patterns/query-pattern.md +137 -0
  68. package/data/patterns/repository-pattern.md +208 -0
  69. package/{src/knowledge/testingPattern.js → data/patterns/testing-pattern.md} +37 -40
  70. package/package.json +2 -2
  71. package/src/PatternsLoader.d.ts +12 -0
  72. package/src/PatternsLoader.js +65 -0
  73. package/src/generators/mappingPatternGenerator.d.ts +5 -0
  74. package/src/generators/mappingPatternGenerator.js +107 -0
  75. package/src/generators/modulePatternGenerator.d.ts +5 -0
  76. package/src/generators/modulePatternGenerator.js +107 -0
  77. package/src/generators/queryPatternGenerator.d.ts +4 -0
  78. package/src/generators/queryPatternGenerator.js +83 -0
  79. package/src/generators/repositoryPatternGenerator.d.ts +5 -0
  80. package/src/generators/repositoryPatternGenerator.js +165 -0
  81. package/src/main.js +15 -9
  82. package/src/models/IPatternDoc.d.ts +15 -0
  83. package/src/models/IPatternDoc.js +3 -0
  84. package/src/tools/registerGetConfigPatternTool.d.ts +2 -1
  85. package/src/tools/registerGetConfigPatternTool.js +5 -4
  86. package/src/tools/registerGetDtoPatternTool.d.ts +2 -1
  87. package/src/tools/registerGetDtoPatternTool.js +5 -4
  88. package/src/tools/registerGetErrorHandlingPatternTool.d.ts +2 -1
  89. package/src/tools/registerGetErrorHandlingPatternTool.js +5 -4
  90. package/src/tools/registerGetGuardPatternTool.d.ts +2 -1
  91. package/src/tools/registerGetGuardPatternTool.js +5 -4
  92. package/src/tools/registerGetMappingPatternTool.d.ts +2 -1
  93. package/src/tools/registerGetMappingPatternTool.js +6 -5
  94. package/src/tools/registerGetModulePatternTool.d.ts +2 -1
  95. package/src/tools/registerGetModulePatternTool.js +6 -5
  96. package/src/tools/registerGetQueryPatternTool.d.ts +2 -1
  97. package/src/tools/registerGetQueryPatternTool.js +6 -5
  98. package/src/tools/registerGetRepositoryPatternTool.d.ts +2 -1
  99. package/src/tools/registerGetRepositoryPatternTool.js +6 -5
  100. package/src/tools/registerGetTestingPatternTool.d.ts +2 -1
  101. package/src/tools/registerGetTestingPatternTool.js +5 -4
  102. package/data/packages/platform-core/api/Class.BlobResourceStrategy.md +0 -195
  103. package/data/packages/platform-core/api/Class.EmbeddedResourceStrategy.md +0 -215
  104. package/data/packages/platform-core/api/Class.FileResourceStrategy.md +0 -192
  105. package/data/packages/platform-core/api/Class.HealthModule.md +0 -42
  106. package/data/packages/platform-core/api/Class.HealthOrchestrator.md +0 -64
  107. package/data/packages/platform-core/api/Class.MappingBuilder.md +0 -110
  108. package/data/packages/platform-core/api/Class.MappingModule.md +0 -46
  109. package/data/packages/platform-core/api/Class.MappingNotRegisteredError.md +0 -56
  110. package/data/packages/platform-core/api/Class.MappingProfileBase.md +0 -52
  111. package/data/packages/platform-core/api/Class.MappingService.md +0 -284
  112. package/data/packages/platform-core/api/Class.ResourceManager.md +0 -565
  113. package/data/packages/platform-core/api/Class.ResourceModule.md +0 -46
  114. package/data/packages/platform-core/api/Class.TypeMappingNotRegisteredError.md +0 -57
  115. package/data/packages/platform-core/api/Function.createMappingKey.md +0 -39
  116. package/data/packages/platform-core/api/Interface.IBlobResourceStrategyConfig.md +0 -28
  117. package/data/packages/platform-core/api/Interface.IBlobServiceAdapter.md +0 -40
  118. package/data/packages/platform-core/api/Interface.IFileResourceStrategyConfig.md +0 -72
  119. package/data/packages/platform-core/api/Interface.IHealthCheckResult.md +0 -46
  120. package/data/packages/platform-core/api/Interface.IHealthIndicator.md +0 -41
  121. package/data/packages/platform-core/api/Interface.IMappingBuilder.md +0 -76
  122. package/data/packages/platform-core/api/Interface.IMappingKey.md +0 -58
  123. package/data/packages/platform-core/api/Interface.IMappingProfile.md +0 -32
  124. package/data/packages/platform-core/api/Interface.IResourceManagerConfig.md +0 -89
  125. package/data/packages/platform-core/api/Interface.IResourceMetadata.md +0 -94
  126. package/data/packages/platform-core/api/Interface.IResourceResult.md +0 -34
  127. package/data/packages/platform-core/api/Interface.IResourceStrategy.md +0 -134
  128. package/data/packages/platform-core/api/Variable.HEALTH_INDICATORS_TOKEN.md +0 -14
  129. package/data/packages/platform-mailing/api/Class.BlobTemplateFetchStrategy.md +0 -60
  130. package/data/packages/platform-mailing/api/Class.FileTemplateFetchStrategy.md +0 -58
  131. package/data/packages/platform-mailing/api/Class.LogDeliveryStrategy.md +0 -71
  132. package/src/knowledge/configPattern.d.ts +0 -5
  133. package/src/knowledge/dtoPattern.d.ts +0 -5
  134. package/src/knowledge/errorHandlingPattern.d.ts +0 -5
  135. package/src/knowledge/guardPattern.d.ts +0 -5
  136. package/src/knowledge/mappingPattern.d.ts +0 -6
  137. package/src/knowledge/modulePattern.d.ts +0 -6
  138. package/src/knowledge/modulePattern.js +0 -283
  139. package/src/knowledge/queryPattern.d.ts +0 -6
  140. package/src/knowledge/queryPattern.js +0 -215
  141. package/src/knowledge/repositoryPattern.d.ts +0 -6
  142. package/src/knowledge/repositoryPattern.js +0 -367
  143. package/src/knowledge/testingPattern.d.ts +0 -5
@@ -0,0 +1,333 @@
1
+ ---
2
+ title: 'Class: DocxDocumentRenderer2'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: DocxDocumentRenderer2
7
+
8
+ Defined in: [renderer/DocxDocumentRenderer2.ts:17](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/DocxDocumentRenderer2.ts#L17)
9
+
10
+ DOCX document renderer.
11
+ Delegates template processing to the configured parser (Encodian, Mustache, etc.).
12
+ The parser handles all template syntax logic via its processXml() method.
13
+
14
+ ## Extends
15
+
16
+ - [`BaseDocumentRenderer`](Class.BaseDocumentRenderer)
17
+
18
+ ## Constructors
19
+
20
+ ### Constructor
21
+
22
+ ```ts
23
+ new DocxDocumentRenderer2(
24
+ options,
25
+ resourceManager,
26
+ imageProcessor): DocxDocumentRenderer2;
27
+ ```
28
+
29
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:29](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L29)
30
+
31
+ #### Parameters
32
+
33
+ | Parameter | Type | Description |
34
+ | ------ | ------ | ------ |
35
+ | `options` | \{ `debug`: `boolean`; `delimiters`: \{ `end`: `string`; `start`: `string`; \}; `imageProcessor`: \{ \}; `maxImageHeight`: `number`; `maxImageWidth`: `number`; `renderers`: \{ \}[]; \} | - |
36
+ | `options.debug` | `boolean` | Enable debug logging for document processing pipeline. When enabled, detailed logs will be written for: - Parser strategy selection - Template variable replacements - Data object transformations - Renderer processing steps |
37
+ | `options.delimiters` | \{ `end`: `string`; `start`: `string`; \} | Delimiters for template placeholders. |
38
+ | `options.delimiters.end` | `string` | Ending delimiter. **Default** `']]'` |
39
+ | `options.delimiters.start` | `string` | Starting delimiter. **Default** `'[['` |
40
+ | `options.imageProcessor` | \{ \} | Image processor implementation class. Import from `@breadstone/archipel-platform-documents/sharp` for the default Sharp-based processor. |
41
+ | `options.maxImageHeight` | `number` | Maximum image height in pixels. |
42
+ | `options.maxImageWidth` | `number` | Maximum image width in pixels. |
43
+ | `options.renderers` | \{ \}[] | Document renderer implementation classes. Import from `@breadstone/archipel-platform-documents/docx` and `/pdf` for the built-in renderers. |
44
+ | `resourceManager` | `ResourceManager` | - |
45
+ | `imageProcessor` | [`IImageProcessor`](Interface.IImageProcessor) | - |
46
+
47
+ #### Returns
48
+
49
+ `DocxDocumentRenderer2`
50
+
51
+ #### Inherited from
52
+
53
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`constructor`](Class.BaseDocumentRenderer#constructor)
54
+
55
+ ## Properties
56
+
57
+ ### \_imageProcessor
58
+
59
+ ```ts
60
+ protected readonly _imageProcessor: IImageProcessor;
61
+ ```
62
+
63
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:23](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L23)
64
+
65
+ #### Inherited from
66
+
67
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`_imageProcessor`](Class.BaseDocumentRenderer#_imageprocessor)
68
+
69
+ ***
70
+
71
+ ### \_options
72
+
73
+ ```ts
74
+ protected readonly _options: {
75
+ debug: boolean;
76
+ delimiters: {
77
+ end: string;
78
+ start: string;
79
+ };
80
+ imageProcessor: {
81
+ };
82
+ maxImageHeight: number;
83
+ maxImageWidth: number;
84
+ renderers: {
85
+ }[];
86
+ };
87
+ ```
88
+
89
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:21](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L21)
90
+
91
+ #### debug
92
+
93
+ ```ts
94
+ readonly debug: boolean;
95
+ ```
96
+
97
+ Enable debug logging for document processing pipeline.
98
+ When enabled, detailed logs will be written for:
99
+ - Parser strategy selection
100
+ - Template variable replacements
101
+ - Data object transformations
102
+ - Renderer processing steps
103
+
104
+ #### delimiters
105
+
106
+ ```ts
107
+ readonly delimiters: {
108
+ end: string;
109
+ start: string;
110
+ };
111
+ ```
112
+
113
+ Delimiters for template placeholders.
114
+
115
+ ##### delimiters.end
116
+
117
+ ```ts
118
+ readonly end: string;
119
+ ```
120
+
121
+ Ending delimiter.
122
+
123
+ ###### Default
124
+
125
+ ```ts
126
+ ']]'
127
+ ```
128
+
129
+ ##### delimiters.start
130
+
131
+ ```ts
132
+ readonly start: string;
133
+ ```
134
+
135
+ Starting delimiter.
136
+
137
+ ###### Default
138
+
139
+ ```ts
140
+ '[['
141
+ ```
142
+
143
+ #### imageProcessor
144
+
145
+ ```ts
146
+ readonly imageProcessor: {
147
+ };
148
+ ```
149
+
150
+ Image processor implementation class.
151
+ Import from `@breadstone/archipel-platform-documents/sharp` for the default Sharp-based processor.
152
+
153
+ #### maxImageHeight
154
+
155
+ ```ts
156
+ readonly maxImageHeight: number;
157
+ ```
158
+
159
+ Maximum image height in pixels.
160
+
161
+ #### maxImageWidth
162
+
163
+ ```ts
164
+ readonly maxImageWidth: number;
165
+ ```
166
+
167
+ Maximum image width in pixels.
168
+
169
+ #### renderers
170
+
171
+ ```ts
172
+ readonly renderers: {
173
+ }[];
174
+ ```
175
+
176
+ Document renderer implementation classes.
177
+ Import from `@breadstone/archipel-platform-documents/docx` and `/pdf` for the built-in renderers.
178
+
179
+ #### Inherited from
180
+
181
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`_options`](Class.BaseDocumentRenderer#_options)
182
+
183
+ ***
184
+
185
+ ### \_resourceManager
186
+
187
+ ```ts
188
+ protected readonly _resourceManager: ResourceManager;
189
+ ```
190
+
191
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:22](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L22)
192
+
193
+ #### Inherited from
194
+
195
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`_resourceManager`](Class.BaseDocumentRenderer#_resourcemanager)
196
+
197
+ ## Accessors
198
+
199
+ ### supportedFormats
200
+
201
+ #### Get Signature
202
+
203
+ ```ts
204
+ get supportedFormats(): readonly DocumentFormat[];
205
+ ```
206
+
207
+ Defined in: [renderer/DocxDocumentRenderer2.ts:25](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/DocxDocumentRenderer2.ts#L25)
208
+
209
+ Supported document formats.
210
+
211
+ ##### Returns
212
+
213
+ readonly [`DocumentFormat`](TypeAlias.DocumentFormat)[]
214
+
215
+ Supported document formats for this renderer.
216
+
217
+ #### Overrides
218
+
219
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`supportedFormats`](Class.BaseDocumentRenderer#supportedformats)
220
+
221
+ ## Methods
222
+
223
+ ### isImagePayload()
224
+
225
+ ```ts
226
+ protected isImagePayload(value): boolean;
227
+ ```
228
+
229
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:102](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L102)
230
+
231
+ Check if value is an image payload.
232
+
233
+ #### Parameters
234
+
235
+ | Parameter | Type | Description |
236
+ | ------ | ------ | ------ |
237
+ | `value` | `unknown` | Value to check |
238
+
239
+ #### Returns
240
+
241
+ `boolean`
242
+
243
+ True if image payload
244
+
245
+ #### Inherited from
246
+
247
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`isImagePayload`](Class.BaseDocumentRenderer#isimagepayload)
248
+
249
+ ***
250
+
251
+ ### preprocessData()
252
+
253
+ ```ts
254
+ protected preprocessData(data): Promise<Record<string, unknown>>;
255
+ ```
256
+
257
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:64](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L64)
258
+
259
+ Preprocess template data (process images).
260
+ Template syntax processing is handled later by parser.processXml().
261
+
262
+ #### Parameters
263
+
264
+ | Parameter | Type | Description |
265
+ | ------ | ------ | ------ |
266
+ | `data` | `Record`\<`string`, `unknown`\> | Raw template data |
267
+
268
+ #### Returns
269
+
270
+ `Promise`\<`Record`\<`string`, `unknown`\>\>
271
+
272
+ Processed data
273
+
274
+ #### Inherited from
275
+
276
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`preprocessData`](Class.BaseDocumentRenderer#preprocessdata)
277
+
278
+ ***
279
+
280
+ ### processImages()
281
+
282
+ ```ts
283
+ protected processImages(data): Promise<Record<string, unknown>>;
284
+ ```
285
+
286
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:75](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L75)
287
+
288
+ Process image payloads in data.
289
+
290
+ #### Parameters
291
+
292
+ | Parameter | Type | Description |
293
+ | ------ | ------ | ------ |
294
+ | `data` | `Record`\<`string`, `unknown`\> | Data object |
295
+
296
+ #### Returns
297
+
298
+ `Promise`\<`Record`\<`string`, `unknown`\>\>
299
+
300
+ Data with processed images
301
+
302
+ #### Inherited from
303
+
304
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`processImages`](Class.BaseDocumentRenderer#processimages)
305
+
306
+ ***
307
+
308
+ ### render()
309
+
310
+ ```ts
311
+ render(options): Promise<IRenderResult>;
312
+ ```
313
+
314
+ Defined in: [renderer/DocxDocumentRenderer2.ts:37](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/DocxDocumentRenderer2.ts#L37)
315
+
316
+ Render DOCX document from template.
317
+ Template processing is delegated to the parser (no template logic in renderer).
318
+
319
+ #### Parameters
320
+
321
+ | Parameter | Type | Description |
322
+ | ------ | ------ | ------ |
323
+ | `options` | [`IRenderOptions`](Interface.IRenderOptions) | Render options |
324
+
325
+ #### Returns
326
+
327
+ `Promise`\<[`IRenderResult`](Interface.IRenderResult)\>
328
+
329
+ Render result
330
+
331
+ #### Overrides
332
+
333
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`render`](Class.BaseDocumentRenderer#render)
@@ -0,0 +1,355 @@
1
+ ---
2
+ title: 'Class: PdfDocumentRenderer'
3
+ generated: true
4
+ editUrl: false
5
+ ---
6
+ # Class: PdfDocumentRenderer
7
+
8
+ Defined in: [renderer/PdfDocumentRenderer.ts:16](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/PdfDocumentRenderer.ts#L16)
9
+
10
+ PDF document renderer using pdf-lib.
11
+ Supports placeholder overlay and table rendering.
12
+
13
+ ## Extends
14
+
15
+ - [`BaseDocumentRenderer`](Class.BaseDocumentRenderer)
16
+
17
+ ## Constructors
18
+
19
+ ### Constructor
20
+
21
+ ```ts
22
+ new PdfDocumentRenderer(
23
+ options,
24
+ resourceManager,
25
+ imageProcessor): PdfDocumentRenderer;
26
+ ```
27
+
28
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:29](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L29)
29
+
30
+ #### Parameters
31
+
32
+ | Parameter | Type | Description |
33
+ | ------ | ------ | ------ |
34
+ | `options` | \{ `debug`: `boolean`; `delimiters`: \{ `end`: `string`; `start`: `string`; \}; `imageProcessor`: \{ \}; `maxImageHeight`: `number`; `maxImageWidth`: `number`; `renderers`: \{ \}[]; \} | - |
35
+ | `options.debug` | `boolean` | Enable debug logging for document processing pipeline. When enabled, detailed logs will be written for: - Parser strategy selection - Template variable replacements - Data object transformations - Renderer processing steps |
36
+ | `options.delimiters` | \{ `end`: `string`; `start`: `string`; \} | Delimiters for template placeholders. |
37
+ | `options.delimiters.end` | `string` | Ending delimiter. **Default** `']]'` |
38
+ | `options.delimiters.start` | `string` | Starting delimiter. **Default** `'[['` |
39
+ | `options.imageProcessor` | \{ \} | Image processor implementation class. Import from `@breadstone/archipel-platform-documents/sharp` for the default Sharp-based processor. |
40
+ | `options.maxImageHeight` | `number` | Maximum image height in pixels. |
41
+ | `options.maxImageWidth` | `number` | Maximum image width in pixels. |
42
+ | `options.renderers` | \{ \}[] | Document renderer implementation classes. Import from `@breadstone/archipel-platform-documents/docx` and `/pdf` for the built-in renderers. |
43
+ | `resourceManager` | `ResourceManager` | - |
44
+ | `imageProcessor` | [`IImageProcessor`](Interface.IImageProcessor) | - |
45
+
46
+ #### Returns
47
+
48
+ `PdfDocumentRenderer`
49
+
50
+ #### Inherited from
51
+
52
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`constructor`](Class.BaseDocumentRenderer#constructor)
53
+
54
+ ## Properties
55
+
56
+ ### \_imageProcessor
57
+
58
+ ```ts
59
+ protected readonly _imageProcessor: IImageProcessor;
60
+ ```
61
+
62
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:23](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L23)
63
+
64
+ #### Inherited from
65
+
66
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`_imageProcessor`](Class.BaseDocumentRenderer#_imageprocessor)
67
+
68
+ ***
69
+
70
+ ### \_options
71
+
72
+ ```ts
73
+ protected readonly _options: {
74
+ debug: boolean;
75
+ delimiters: {
76
+ end: string;
77
+ start: string;
78
+ };
79
+ imageProcessor: {
80
+ };
81
+ maxImageHeight: number;
82
+ maxImageWidth: number;
83
+ renderers: {
84
+ }[];
85
+ };
86
+ ```
87
+
88
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:21](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L21)
89
+
90
+ #### debug
91
+
92
+ ```ts
93
+ readonly debug: boolean;
94
+ ```
95
+
96
+ Enable debug logging for document processing pipeline.
97
+ When enabled, detailed logs will be written for:
98
+ - Parser strategy selection
99
+ - Template variable replacements
100
+ - Data object transformations
101
+ - Renderer processing steps
102
+
103
+ #### delimiters
104
+
105
+ ```ts
106
+ readonly delimiters: {
107
+ end: string;
108
+ start: string;
109
+ };
110
+ ```
111
+
112
+ Delimiters for template placeholders.
113
+
114
+ ##### delimiters.end
115
+
116
+ ```ts
117
+ readonly end: string;
118
+ ```
119
+
120
+ Ending delimiter.
121
+
122
+ ###### Default
123
+
124
+ ```ts
125
+ ']]'
126
+ ```
127
+
128
+ ##### delimiters.start
129
+
130
+ ```ts
131
+ readonly start: string;
132
+ ```
133
+
134
+ Starting delimiter.
135
+
136
+ ###### Default
137
+
138
+ ```ts
139
+ '[['
140
+ ```
141
+
142
+ #### imageProcessor
143
+
144
+ ```ts
145
+ readonly imageProcessor: {
146
+ };
147
+ ```
148
+
149
+ Image processor implementation class.
150
+ Import from `@breadstone/archipel-platform-documents/sharp` for the default Sharp-based processor.
151
+
152
+ #### maxImageHeight
153
+
154
+ ```ts
155
+ readonly maxImageHeight: number;
156
+ ```
157
+
158
+ Maximum image height in pixels.
159
+
160
+ #### maxImageWidth
161
+
162
+ ```ts
163
+ readonly maxImageWidth: number;
164
+ ```
165
+
166
+ Maximum image width in pixels.
167
+
168
+ #### renderers
169
+
170
+ ```ts
171
+ readonly renderers: {
172
+ }[];
173
+ ```
174
+
175
+ Document renderer implementation classes.
176
+ Import from `@breadstone/archipel-platform-documents/docx` and `/pdf` for the built-in renderers.
177
+
178
+ #### Inherited from
179
+
180
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`_options`](Class.BaseDocumentRenderer#_options)
181
+
182
+ ***
183
+
184
+ ### \_resourceManager
185
+
186
+ ```ts
187
+ protected readonly _resourceManager: ResourceManager;
188
+ ```
189
+
190
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:22](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L22)
191
+
192
+ #### Inherited from
193
+
194
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`_resourceManager`](Class.BaseDocumentRenderer#_resourcemanager)
195
+
196
+ ## Accessors
197
+
198
+ ### supportedFormats
199
+
200
+ #### Get Signature
201
+
202
+ ```ts
203
+ get supportedFormats(): readonly DocumentFormat[];
204
+ ```
205
+
206
+ Defined in: [renderer/PdfDocumentRenderer.ts:28](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/PdfDocumentRenderer.ts#L28)
207
+
208
+ Supported document formats.
209
+
210
+ ##### Returns
211
+
212
+ readonly [`DocumentFormat`](TypeAlias.DocumentFormat)[]
213
+
214
+ Supported document formats for this renderer.
215
+
216
+ #### Overrides
217
+
218
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`supportedFormats`](Class.BaseDocumentRenderer#supportedformats)
219
+
220
+ ## Methods
221
+
222
+ ### createFromScratch()
223
+
224
+ ```ts
225
+ createFromScratch(data): Promise<IRenderResult>;
226
+ ```
227
+
228
+ Defined in: [renderer/PdfDocumentRenderer.ts:108](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/PdfDocumentRenderer.ts#L108)
229
+
230
+ Create PDF from scratch (no template).
231
+
232
+ #### Parameters
233
+
234
+ | Parameter | Type | Description |
235
+ | ------ | ------ | ------ |
236
+ | `data` | `Record`\<`string`, `unknown`\> | Document data |
237
+
238
+ #### Returns
239
+
240
+ `Promise`\<[`IRenderResult`](Interface.IRenderResult)\>
241
+
242
+ Render result
243
+
244
+ ***
245
+
246
+ ### isImagePayload()
247
+
248
+ ```ts
249
+ protected isImagePayload(value): boolean;
250
+ ```
251
+
252
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:102](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L102)
253
+
254
+ Check if value is an image payload.
255
+
256
+ #### Parameters
257
+
258
+ | Parameter | Type | Description |
259
+ | ------ | ------ | ------ |
260
+ | `value` | `unknown` | Value to check |
261
+
262
+ #### Returns
263
+
264
+ `boolean`
265
+
266
+ True if image payload
267
+
268
+ #### Inherited from
269
+
270
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`isImagePayload`](Class.BaseDocumentRenderer#isimagepayload)
271
+
272
+ ***
273
+
274
+ ### preprocessData()
275
+
276
+ ```ts
277
+ protected preprocessData(data): Promise<Record<string, unknown>>;
278
+ ```
279
+
280
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:64](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L64)
281
+
282
+ Preprocess template data (process images).
283
+ Template syntax processing is handled later by parser.processXml().
284
+
285
+ #### Parameters
286
+
287
+ | Parameter | Type | Description |
288
+ | ------ | ------ | ------ |
289
+ | `data` | `Record`\<`string`, `unknown`\> | Raw template data |
290
+
291
+ #### Returns
292
+
293
+ `Promise`\<`Record`\<`string`, `unknown`\>\>
294
+
295
+ Processed data
296
+
297
+ #### Inherited from
298
+
299
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`preprocessData`](Class.BaseDocumentRenderer#preprocessdata)
300
+
301
+ ***
302
+
303
+ ### processImages()
304
+
305
+ ```ts
306
+ protected processImages(data): Promise<Record<string, unknown>>;
307
+ ```
308
+
309
+ Defined in: [renderer/abstracts/BaseDocumentRenderer.ts:75](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/abstracts/BaseDocumentRenderer.ts#L75)
310
+
311
+ Process image payloads in data.
312
+
313
+ #### Parameters
314
+
315
+ | Parameter | Type | Description |
316
+ | ------ | ------ | ------ |
317
+ | `data` | `Record`\<`string`, `unknown`\> | Data object |
318
+
319
+ #### Returns
320
+
321
+ `Promise`\<`Record`\<`string`, `unknown`\>\>
322
+
323
+ Data with processed images
324
+
325
+ #### Inherited from
326
+
327
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`processImages`](Class.BaseDocumentRenderer#processimages)
328
+
329
+ ***
330
+
331
+ ### render()
332
+
333
+ ```ts
334
+ render(options): Promise<IRenderResult>;
335
+ ```
336
+
337
+ Defined in: [renderer/PdfDocumentRenderer.ts:39](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-documents/src/renderer/PdfDocumentRenderer.ts#L39)
338
+
339
+ Render PDF document from template.
340
+
341
+ #### Parameters
342
+
343
+ | Parameter | Type | Description |
344
+ | ------ | ------ | ------ |
345
+ | `options` | [`IRenderOptions`](Interface.IRenderOptions) | Render options |
346
+
347
+ #### Returns
348
+
349
+ `Promise`\<[`IRenderResult`](Interface.IRenderResult)\>
350
+
351
+ Render result
352
+
353
+ #### Overrides
354
+
355
+ [`BaseDocumentRenderer`](Class.BaseDocumentRenderer).[`render`](Class.BaseDocumentRenderer#render)