@breadstone/archipel-mcp 0.0.28 → 0.0.31

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 (52) hide show
  1. package/data/guides/queue-infrastructure.md +62 -0
  2. package/data/packages/platform-analytics/index.md +2 -0
  3. package/data/packages/platform-authentication/api/Class.AuthModule.md +3 -3
  4. package/data/packages/platform-authentication/api/Class.JwtAuthGuard.md +37 -5
  5. package/data/packages/platform-authentication/api/Interface.IAuthModuleOptions.md +12 -12
  6. package/data/packages/platform-authentication/api/index.md +1 -2
  7. package/data/packages/platform-authentication/index.md +2 -0
  8. package/data/packages/platform-blob-storage/api/Variable.AWS_S3_PROVIDER_OPTIONS.md +1 -1
  9. package/data/packages/platform-blob-storage/api/Variable.AZURE_BLOB_PROVIDER_OPTIONS.md +1 -1
  10. package/data/packages/platform-blob-storage/api/Variable.BLOB_PROVIDER.md +1 -1
  11. package/data/packages/platform-blob-storage/api/Variable.VERCEL_BLOB_PROVIDER_OPTIONS.md +1 -1
  12. package/data/packages/platform-blob-storage/index.md +2 -0
  13. package/data/packages/platform-caching/index.md +2 -0
  14. package/data/packages/platform-configuration/index.md +2 -0
  15. package/data/packages/platform-core/index.md +2 -0
  16. package/data/packages/platform-cryptography/index.md +2 -0
  17. package/data/packages/platform-database/index.md +2 -0
  18. package/data/packages/platform-documents/index.md +2 -0
  19. package/data/packages/platform-esigning/index.md +2 -0
  20. package/data/packages/platform-health/index.md +2 -0
  21. package/data/packages/platform-intelligence/index.md +2 -0
  22. package/data/packages/platform-logging/index.md +2 -0
  23. package/data/packages/platform-mailing/index.md +2 -0
  24. package/data/packages/platform-mapping/index.md +2 -0
  25. package/data/packages/platform-mcp/index.md +2 -0
  26. package/data/packages/platform-openapi/api/Class.SwaggerFeatureDiscovery.md +54 -3
  27. package/data/packages/platform-openapi/api/Class.SwaggerMultiDocumentService.md +7 -5
  28. package/data/packages/platform-openapi/api/Class.SwaggerTheme.md +24 -7
  29. package/data/packages/platform-openapi/api/Function.SwaggerFeature.md +18 -6
  30. package/data/packages/platform-openapi/api/Function.getRegisteredSwaggerFeatures.md +9 -2
  31. package/data/packages/platform-openapi/api/Function.getSwaggerFeatureMetadata.md +8 -5
  32. package/data/packages/platform-openapi/api/Interface.ISwaggerFeatureMetadata.md +33 -7
  33. package/data/packages/platform-openapi/api/Interface.ISwaggerThemeConfig.md +59 -0
  34. package/data/packages/platform-openapi/api/Variable.SWAGGER_FEATURE_METADATA_KEY.md +4 -1
  35. package/data/packages/platform-openapi/api/index.md +6 -5
  36. package/data/packages/platform-openapi/index.md +2 -0
  37. package/data/packages/platform-payments/index.md +2 -0
  38. package/data/packages/platform-queue/api/Class.VercelQueue.md +234 -0
  39. package/data/packages/platform-queue/api/Interface.IVercelQueueOptions.md +91 -0
  40. package/data/packages/platform-queue/api/Variable.VERCEL_CONFIG_ENTRIES.md +17 -0
  41. package/data/packages/platform-queue/api/Variable.VERCEL_QUEUE_CONSUMER_GROUP.md +14 -0
  42. package/data/packages/platform-queue/api/Variable.VERCEL_QUEUE_DEPLOYMENT_ID.md +14 -0
  43. package/data/packages/platform-queue/api/Variable.VERCEL_QUEUE_REGION.md +14 -0
  44. package/data/packages/platform-queue/api/Variable.VERCEL_QUEUE_TOKEN.md +16 -0
  45. package/data/packages/platform-queue/api/Variable.VERCEL_QUEUE_VISIBILITY_TIMEOUT_SECONDS.md +23 -0
  46. package/data/packages/platform-queue/api/index.md +8 -0
  47. package/data/packages/platform-queue/index.md +27 -3
  48. package/data/packages/platform-reporting/index.md +2 -0
  49. package/data/packages/platform-resources/index.md +2 -0
  50. package/data/packages/platform-telemetry/index.md +2 -0
  51. package/package.json +1 -1
  52. package/data/packages/platform-authentication/api/Class.GithubAuthGuard.md +0 -40
@@ -28,6 +28,12 @@ For Azure Service Bus:
28
28
  yarn add @azure/service-bus
29
29
  ```
30
30
 
31
+ For Vercel Queues:
32
+
33
+ ```bash
34
+ yarn add @vercel/queue
35
+ ```
36
+
31
37
  ---
32
38
 
33
39
  ## Configuration
@@ -58,6 +64,18 @@ AZURE_RECEIVE_WAIT_MS=5000
58
64
 
59
65
  `AZURE_CONNECTION_STRING` is required when using `AzureQueue`. `AZURE_RECEIVE_WAIT_MS` is optional (defaults to `5000`).
60
66
 
67
+ ### Vercel Queues Variables
68
+
69
+ ```env
70
+ VERCEL_QUEUE_REGION=iad1
71
+ VERCEL_QUEUE_CONSUMER_GROUP=my-consumer
72
+ VERCEL_QUEUE_TOKEN=
73
+ VERCEL_QUEUE_DEPLOYMENT_ID=
74
+ VERCEL_QUEUE_VISIBILITY_TIMEOUT_SECONDS=300
75
+ ```
76
+
77
+ `VERCEL_QUEUE_REGION` and `VERCEL_QUEUE_CONSUMER_GROUP` are required when using `VercelQueue`. `VERCEL_QUEUE_TOKEN` is auto-fetched via OIDC when omitted. `VERCEL_QUEUE_VISIBILITY_TIMEOUT_SECONDS` defaults to `300`.
78
+
61
79
  ### Using Config Keys
62
80
 
63
81
  Import the typed config keys and pass them to your module registration:
@@ -66,6 +84,7 @@ Import the typed config keys and pass them to your module registration:
66
84
  import { PLATFORM_QUEUE_CONFIG_ENTRIES } from '@breadstone/archipel-platform-queue';
67
85
  import { BULLMQ_CONFIG_ENTRIES } from '@breadstone/archipel-platform-queue/bullmq';
68
86
  import { AZURE_CONFIG_ENTRIES } from '@breadstone/archipel-platform-queue/azure';
87
+ import { VERCEL_CONFIG_ENTRIES } from '@breadstone/archipel-platform-queue/vercel';
69
88
  ```
70
89
 
71
90
  ---
@@ -79,6 +98,7 @@ import { AZURE_CONFIG_ENTRIES } from '@breadstone/archipel-platform-queue/azure'
79
98
  | `MemoryQueue` | In-memory | No | Development, testing, single-instance apps |
80
99
  | `BullMqQueue` | Redis via BullMQ | Yes | Multi-instance deployments, distributed jobs|
81
100
  | `AzureQueue` | Azure Service Bus | Yes | Enterprise cloud messaging, peek-lock |
101
+ | `VercelQueue` | Vercel Queues | Yes | Serverless Vercel deployments |
82
102
 
83
103
  All implementations share the same `IQueue` contract, so switching providers requires only changing the import and constructor options — no business logic changes.
84
104
 
@@ -200,6 +220,48 @@ Senders and receivers are lazily created per queue name and cached for the lifet
200
220
 
201
221
  ---
202
222
 
223
+ ## Vercel Queues
224
+
225
+ ### Basic Setup
226
+
227
+ `VercelQueue` uses the official `@vercel/queue` SDK (`PollingQueueClient`) for durable, serverless message streaming on Vercel:
228
+
229
+ ```typescript
230
+ import { Module } from '@nestjs/common';
231
+ import { VercelQueue } from '@breadstone/archipel-platform-queue/vercel';
232
+
233
+ @Module({
234
+ providers: [
235
+ {
236
+ provide: 'IQueue',
237
+ useFactory: () =>
238
+ new VercelQueue({
239
+ region: 'iad1',
240
+ consumerGroup: 'my-consumer',
241
+ }),
242
+ },
243
+ ],
244
+ exports: ['IQueue'],
245
+ })
246
+ export class QueueModule {}
247
+ ```
248
+
249
+ ### How It Works
250
+
251
+ `enqueue()` calls `send()` on the SDK to publish a message to the given topic. `dequeue()` calls `receive()`, which invokes a handler callback when a message is available. The handler is suspended via an internal gate promise until `markCompleted()` or `markFailed()` is called, at which point the handler completes and the SDK auto-acknowledges the message.
252
+
253
+ Both `markCompleted()` and `markFailed()` acknowledge (remove) the message. If retry behaviour is desired, re-enqueue the job explicitly.
254
+
255
+ ### Authentication
256
+
257
+ When deployed on Vercel, the SDK auto-fetches an OIDC token. For local development, provide a `token` in the constructor options.
258
+
259
+ ### Graceful Shutdown
260
+
261
+ `VercelQueue` implements `OnModuleDestroy` and releases all pending gates, causing in-flight SDK handlers to complete normally and acknowledge their messages.
262
+
263
+ ---
264
+
203
265
  ## Usage in Services
204
266
 
205
267
  Inject the `IQueue` token and use the same API regardless of the underlying provider:
@@ -12,6 +12,8 @@ Provider-agnostic analytics and error tracking module supporting multiple backen
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-analytics`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -5,7 +5,7 @@ editUrl: false
5
5
  ---
6
6
  # Class: AuthModule
7
7
 
8
- Defined in: [libs/platform-authentication/src/AuthModule.ts:146](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L146)
8
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:145](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L145)
9
9
 
10
10
  The `AuthModule` handles JWT-based authentication,
11
11
  including token creation and validation.
@@ -39,7 +39,7 @@ new AuthModule(): AuthModule;
39
39
  configure(consumer): void;
40
40
  ```
41
41
 
42
- Defined in: [libs/platform-authentication/src/AuthModule.ts:268](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L268)
42
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:265](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L265)
43
43
 
44
44
  #### Parameters
45
45
 
@@ -59,7 +59,7 @@ Defined in: [libs/platform-authentication/src/AuthModule.ts:268](https://github.
59
59
  static register(options): DynamicModule;
60
60
  ```
61
61
 
62
- Defined in: [libs/platform-authentication/src/AuthModule.ts:156](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L156)
62
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:155](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L155)
63
63
 
64
64
  Registers the auth module with the provided port implementations.
65
65
 
@@ -5,9 +5,12 @@ editUrl: false
5
5
  ---
6
6
  # Class: JwtAuthGuard
7
7
 
8
- Defined in: [libs/platform-authentication/src/guards/JwtAuthGuard.ts:14](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/guards/JwtAuthGuard.ts#L14)
8
+ Defined in: [libs/platform-authentication/src/guards/JwtAuthGuard.ts:19](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/guards/JwtAuthGuard.ts#L19)
9
9
 
10
10
  The `JwtAuthGuard` protects routes using JWT-based authentication.
11
+ It checks for the `@Public()` decorator metadata.
12
+ When registered as `APP_GUARD`, all routes require JWT authentication by default.
13
+ Routes decorated with `@Public()` are exempt.
11
14
 
12
15
  ## Extends
13
16
 
@@ -18,23 +21,52 @@ The `JwtAuthGuard` protects routes using JWT-based authentication.
18
21
  ### Constructor
19
22
 
20
23
  ```ts
21
- new JwtAuthGuard(...args): JwtAuthGuard;
24
+ new JwtAuthGuard(reflector): JwtAuthGuard;
22
25
  ```
23
26
 
24
- Defined in: node\_modules/@nestjs/passport/dist/interfaces/type.interface.d.ts:2
27
+ Defined in: [libs/platform-authentication/src/guards/JwtAuthGuard.ts:22](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/guards/JwtAuthGuard.ts#L22)
25
28
 
26
29
  #### Parameters
27
30
 
28
31
  | Parameter | Type |
29
32
  | ------ | ------ |
30
- | ...`args` | `any`[] |
33
+ | `reflector` | `Reflector` |
31
34
 
32
35
  #### Returns
33
36
 
34
37
  `JwtAuthGuard`
35
38
 
36
- #### Inherited from
39
+ #### Overrides
37
40
 
38
41
  ```ts
39
42
  AuthGuard('jwt').constructor
40
43
  ```
44
+
45
+ ## Methods
46
+
47
+ ### canActivate()
48
+
49
+ ```ts
50
+ canActivate(context): boolean | Promise<boolean> | Observable<boolean>;
51
+ ```
52
+
53
+ Defined in: [libs/platform-authentication/src/guards/JwtAuthGuard.ts:30](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/guards/JwtAuthGuard.ts#L30)
54
+
55
+ #### Parameters
56
+
57
+ | Parameter | Type | Description |
58
+ | ------ | ------ | ------ |
59
+ | `context` | `ExecutionContext` | Current execution context. Provides access to details about the current request pipeline. |
60
+
61
+ #### Returns
62
+
63
+ `boolean` \| `Promise`\<`boolean`\> \| `Observable`\<`boolean`\>
64
+
65
+ Value indicating whether or not the current request is allowed to
66
+ proceed.
67
+
68
+ #### Overrides
69
+
70
+ ```ts
71
+ AuthGuard('jwt').canActivate
72
+ ```
@@ -5,7 +5,7 @@ editUrl: false
5
5
  ---
6
6
  # Interface: IAuthModuleOptions
7
7
 
8
- Defined in: [libs/platform-authentication/src/AuthModule.ts:57](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L57)
8
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:56](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L56)
9
9
 
10
10
  Options for configuring the `AuthModule`.
11
11
 
@@ -17,7 +17,7 @@ Options for configuring the `AuthModule`.
17
17
  optional additionalConfigEntries?: readonly Omit<IConfigRegistryEntry<unknown>, "module">[];
18
18
  ```
19
19
 
20
- Defined in: [libs/platform-authentication/src/AuthModule.ts:97](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L97)
20
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:96](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L96)
21
21
 
22
22
  Optional additional configuration entries to register (e.g. provider-specific OAuth keys).
23
23
  Import them from the provider-specific sub-paths
@@ -31,7 +31,7 @@ Import them from the provider-specific sub-paths
31
31
  optional additionalProviders?: Provider[];
32
32
  ```
33
33
 
34
- Defined in: [libs/platform-authentication/src/AuthModule.ts:119](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L119)
34
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:118](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L118)
35
35
 
36
36
  Optional additional providers required by optional features (e.g. TOTP MFA).
37
37
  Import them from the provider-specific sub-paths
@@ -45,7 +45,7 @@ Import them from the provider-specific sub-paths
45
45
  authSubject: Type<AuthSubjectPort>;
46
46
  ```
47
47
 
48
- Defined in: [libs/platform-authentication/src/AuthModule.ts:61](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L61)
48
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:60](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L60)
49
49
 
50
50
  Implementation of the auth subject port (user lookup for JWT/Local/Anonymous connectors).
51
51
 
@@ -57,7 +57,7 @@ Implementation of the auth subject port (user lookup for JWT/Local/Anonymous con
57
57
  optional challengeStore?: Type<ChallengeStorePort>;
58
58
  ```
59
59
 
60
- Defined in: [libs/platform-authentication/src/AuthModule.ts:126](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L126)
60
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:125](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L125)
61
61
 
62
62
  Optional implementation of the challenge store port.
63
63
  Defaults to an in-memory store suitable for single-instance deployments.
@@ -71,7 +71,7 @@ For multi-instance deployments, provide a Redis-backed implementation.
71
71
  optional mfaChannels?: Type<any>[];
72
72
  ```
73
73
 
74
- Defined in: [libs/platform-authentication/src/AuthModule.ts:112](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L112)
74
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:111](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L111)
75
75
 
76
76
  Optional array of additional MFA channel types to register (e.g. `TotpMfaChannel`).
77
77
  Import them from the provider-specific sub-paths
@@ -87,7 +87,7 @@ Built-in channels (SMS, Email, Push) are always registered.
87
87
  mfaSubject: Type<MfaSubjectPort>;
88
88
  ```
89
89
 
90
- Defined in: [libs/platform-authentication/src/AuthModule.ts:66](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L66)
90
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:65](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L65)
91
91
 
92
92
  Implementation of the MFA subject port (MFA state persistence).
93
93
 
@@ -99,7 +99,7 @@ Implementation of the MFA subject port (MFA state persistence).
99
99
  sessionPersistence: Type<SessionPersistencePort>;
100
100
  ```
101
101
 
102
- Defined in: [libs/platform-authentication/src/AuthModule.ts:71](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L71)
102
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:70](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L70)
103
103
 
104
104
  Implementation of the session persistence port.
105
105
 
@@ -111,7 +111,7 @@ Implementation of the session persistence port.
111
111
  optional socialAuth?: Type<SocialAuthPort>;
112
112
  ```
113
113
 
114
- Defined in: [libs/platform-authentication/src/AuthModule.ts:82](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L82)
114
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:81](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L81)
115
115
 
116
116
  Optional implementation of the social auth port (OAuth connectors).
117
117
  When provided together with `socialConnectors`, the social auth flow is enabled.
@@ -124,7 +124,7 @@ When provided together with `socialConnectors`, the social auth flow is enabled.
124
124
  optional socialConnectors?: Type<any>[];
125
125
  ```
126
126
 
127
- Defined in: [libs/platform-authentication/src/AuthModule.ts:90](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L90)
127
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:89](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L89)
128
128
 
129
129
  Optional array of social connector types to register (e.g. `AppleConnector`, `GithubConnector`).
130
130
  Import them from the provider-specific sub-paths
@@ -139,7 +139,7 @@ Requires `socialAuth` to be set.
139
139
  optional tokenEnricher?: Type<TokenEnricherPort>;
140
140
  ```
141
141
 
142
- Defined in: [libs/platform-authentication/src/AuthModule.ts:103](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L103)
142
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:102](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L102)
143
143
 
144
144
  Optional implementation of the token enricher port.
145
145
  When provided, additional claims are added to JWT tokens.
@@ -152,6 +152,6 @@ When provided, additional claims are added to JWT tokens.
152
152
  verificationSubject: Type<VerificationSubjectPort>;
153
153
  ```
154
154
 
155
- Defined in: [libs/platform-authentication/src/AuthModule.ts:76](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L76)
155
+ Defined in: [libs/platform-authentication/src/AuthModule.ts:75](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-authentication/src/AuthModule.ts#L75)
156
156
 
157
157
  Implementation of the verification subject port (email/pin verification).
@@ -17,10 +17,9 @@ editUrl: false
17
17
  | [AuthTokenService](Class.AuthTokenService) | Generic service responsible for creating JWT access tokens. Builds a base payload from [IAuthSubject](Interface.IAuthSubject) and optionally enriches it via the [TokenEnricherPort](Class.TokenEnricherPort) with product-specific claims. |
18
18
  | [ChallengeService](Class.ChallengeService) | Stores and validates MFA login challenges. |
19
19
  | [ChallengeStorePort](Class.ChallengeStorePort) | Abstract port for persisting MFA challenge state. |
20
- | [GithubAuthGuard](Class.GithubAuthGuard) | The `GithubAuthGuard` protects routes using GitHub authentication. |
21
20
  | [GithubConnector](Class.GithubConnector) | - |
22
21
  | [GoogleConnector](Class.GoogleConnector) | The `GoogleConnector` integrates Google OAuth authentication. |
23
- | [JwtAuthGuard](Class.JwtAuthGuard) | The `JwtAuthGuard` protects routes using JWT-based authentication. |
22
+ | [JwtAuthGuard](Class.JwtAuthGuard) | The `JwtAuthGuard` protects routes using JWT-based authentication. It checks for the `@Public()` decorator metadata. When registered as `APP_GUARD`, all routes require JWT authentication by default. Routes decorated with `@Public()` are exempt. |
24
23
  | [JwtPayloadBase](Class.JwtPayloadBase) | Abstract base class for JWT payloads. Products extend this to add their own claims (e.g. `profileId`, `isPro`). Used as both a serialization contract and NestJS injection token. |
25
24
  | [LastActiveMiddleware](Class.LastActiveMiddleware) | Middleware to automatically update the lastActive timestamp for authenticated sessions. Extracts the JWT token from the Authorization header and updates the session asynchronously. |
26
25
  | [LocalAuthGuard](Class.LocalAuthGuard) | The `LocalAuthGuard` protects routes using local authentication. |
@@ -12,6 +12,8 @@ Full-featured authentication library supporting JWT tokens, OAuth social login (
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-authentication`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -9,4 +9,4 @@ editUrl: false
9
9
  const AWS_S3_PROVIDER_OPTIONS: typeof AWS_S3_PROVIDER_OPTIONS;
10
10
  ```
11
11
 
12
- Defined in: [BlobStorageTokens.ts:6](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/BlobStorageTokens.ts#L6)
12
+ Defined in: [tokens/BlobStorageTokens.ts:6](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/tokens/BlobStorageTokens.ts#L6)
@@ -9,4 +9,4 @@ editUrl: false
9
9
  const AZURE_BLOB_PROVIDER_OPTIONS: typeof AZURE_BLOB_PROVIDER_OPTIONS;
10
10
  ```
11
11
 
12
- Defined in: [BlobStorageTokens.ts:5](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/BlobStorageTokens.ts#L5)
12
+ Defined in: [tokens/BlobStorageTokens.ts:5](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/tokens/BlobStorageTokens.ts#L5)
@@ -9,4 +9,4 @@ editUrl: false
9
9
  const BLOB_PROVIDER: typeof BLOB_PROVIDER;
10
10
  ```
11
11
 
12
- Defined in: [BlobStorageTokens.ts:3](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/BlobStorageTokens.ts#L3)
12
+ Defined in: [tokens/BlobStorageTokens.ts:3](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/tokens/BlobStorageTokens.ts#L3)
@@ -9,4 +9,4 @@ editUrl: false
9
9
  const VERCEL_BLOB_PROVIDER_OPTIONS: typeof VERCEL_BLOB_PROVIDER_OPTIONS;
10
10
  ```
11
11
 
12
- Defined in: [BlobStorageTokens.ts:4](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/BlobStorageTokens.ts#L4)
12
+ Defined in: [tokens/BlobStorageTokens.ts:4](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-blob-storage/src/tokens/BlobStorageTokens.ts#L4)
@@ -12,6 +12,8 @@ Cloud file storage abstraction supporting pluggable providers and optional metad
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-blob-storage`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ Layered caching library providing both an in-memory LRU cache and a Redis-backed
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-caching`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -14,6 +14,8 @@ Type-safe configuration management for NestJS applications. Provides compile-tim
14
14
 
15
15
  **Package:** `@breadstone/archipel-platform-configuration`
16
16
 
17
+ <InstallTabs />
18
+
17
19
  ## Quick Start
18
20
 
19
21
  ```typescript
@@ -14,6 +14,8 @@ The foundation library that every other Archipel package depends on. Provides ob
14
14
 
15
15
  **Package:** `@breadstone/archipel-platform-core`
16
16
 
17
+ <InstallTabs />
18
+
17
19
  ## Installation
18
20
 
19
21
  ```typescript
@@ -12,6 +12,8 @@ Cryptographic building blocks for NestJS applications: bcrypt password hashing,
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-cryptography`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ Prisma ORM integration with PostgreSQL featuring a repository base class, type-s
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-database`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ Template-based document generation engine supporting DOCX and PDF output. Uses p
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-documents`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ Provider-agnostic e-signing infrastructure for NestJS. Exposes a unified `Esigni
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-esigning`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Architecture
16
18
 
17
19
  ```mermaid
@@ -12,6 +12,8 @@ Health check orchestration for NestJS applications built on `@nestjs/terminus`.
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-health`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Installation
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ Multi-provider AI text generation library supporting OpenAI, Anthropic, Google G
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-intelligence`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ Configurable logging module for NestJS applications with application-wide log-le
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-logging`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Quick Start
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ Multi-strategy email delivery system with pluggable transports (SMTP, Postmark,
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-mailing`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Architecture
16
18
 
17
19
  ```mermaid
@@ -12,6 +12,8 @@ Type-safe object-to-object mapping framework for transforming domain entities in
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-mapping`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Installation
16
18
 
17
19
  ```typescript
@@ -12,6 +12,8 @@ A reusable NestJS module for building [Model Context Protocol (MCP)](https://mod
12
12
 
13
13
  **Package:** `@breadstone/archipel-platform-mcp`
14
14
 
15
+ <InstallTabs />
16
+
15
17
  ## Installation
16
18
 
17
19
  ```typescript
@@ -5,7 +5,7 @@ editUrl: false
5
5
  ---
6
6
  # Class: SwaggerFeatureDiscovery
7
7
 
8
- Defined in: [discovery/SwaggerFeatureDiscovery.ts:13](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/discovery/SwaggerFeatureDiscovery.ts#L13)
8
+ Defined in: [discovery/SwaggerFeatureDiscovery.ts:19](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/discovery/SwaggerFeatureDiscovery.ts#L19)
9
9
 
10
10
  Centralizes the discovery of Swagger features declared across backend modules.
11
11
 
@@ -29,7 +29,7 @@ new SwaggerFeatureDiscovery(): SwaggerFeatureDiscovery;
29
29
  registerDefaultFeatures(featureRegistry): this;
30
30
  ```
31
31
 
32
- Defined in: [discovery/SwaggerFeatureDiscovery.ts:45](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/discovery/SwaggerFeatureDiscovery.ts#L45)
32
+ Defined in: [discovery/SwaggerFeatureDiscovery.ts:51](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/discovery/SwaggerFeatureDiscovery.ts#L51)
33
33
 
34
34
  Registers the default composite Swagger documents that aggregate the complete API.
35
35
 
@@ -53,7 +53,7 @@ The discovery instance for chaining.
53
53
  registerDiscoveredFeatures(featureRegistry): this;
54
54
  ```
55
55
 
56
- Defined in: [discovery/SwaggerFeatureDiscovery.ts:23](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/discovery/SwaggerFeatureDiscovery.ts#L23)
56
+ Defined in: [discovery/SwaggerFeatureDiscovery.ts:29](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/discovery/SwaggerFeatureDiscovery.ts#L29)
57
57
 
58
58
  Registers all discovered feature modules in the provided Swagger registry.
59
59
 
@@ -68,3 +68,54 @@ Registers all discovered feature modules in the provided Swagger registry.
68
68
  `this`
69
69
 
70
70
  The discovery instance for chaining.
71
+
72
+ ***
73
+
74
+ ### setupMultiDocumentSwagger()
75
+
76
+ ```ts
77
+ static setupMultiDocumentSwagger(
78
+ app,
79
+ config,
80
+ host,
81
+ resource,
82
+ content,
83
+ themeConfig?): Promise<void>;
84
+ ```
85
+
86
+ Defined in: [discovery/SwaggerFeatureDiscovery.ts:90](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/discovery/SwaggerFeatureDiscovery.ts#L90)
87
+
88
+ Auto-discovers and sets up multi-document Swagger in a single call.
89
+ Handles feature discovery, registry setup, and service initialization.
90
+
91
+ #### Parameters
92
+
93
+ | Parameter | Type | Description |
94
+ | ------ | ------ | ------ |
95
+ | `app` | `INestApplication` | The NestJS application instance |
96
+ | `config` | `ConfigService` | Configuration service for reading app settings |
97
+ | `host` | `HostService` | Host service for determining base URL |
98
+ | `resource` | `ResourceManager` | Resource manager for loading theme assets |
99
+ | `content` | `ContentTemplateEngine` | Content template engine for rendering HTML |
100
+ | `themeConfig?` | [`ISwaggerThemeConfig`](Interface.ISwaggerThemeConfig) | Optional theme configuration for branding colors |
101
+
102
+ #### Returns
103
+
104
+ `Promise`\<`void`\>
105
+
106
+ Promise resolving when setup is complete
107
+
108
+ #### Static
109
+
110
+ #### Example
111
+
112
+ ```typescript
113
+ await SwaggerFeatureDiscovery.setupMultiDocumentSwagger(
114
+ app,
115
+ config,
116
+ host,
117
+ resource,
118
+ content,
119
+ { primary: '#0066cc', secondary: '#003d99' }
120
+ );
121
+ ```
@@ -5,7 +5,7 @@ editUrl: false
5
5
  ---
6
6
  # Class: SwaggerMultiDocumentService
7
7
 
8
- Defined in: [services/SwaggerMultiDocumentService.ts:15](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L15)
8
+ Defined in: [services/SwaggerMultiDocumentService.ts:16](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L16)
9
9
 
10
10
  ## Constructors
11
11
 
@@ -18,10 +18,11 @@ new SwaggerMultiDocumentService(
18
18
  hostService,
19
19
  featureRegistry,
20
20
  resourceManager,
21
- contentTemplateEngine): SwaggerMultiDocumentService;
21
+ contentTemplateEngine,
22
+ themeConfig?): SwaggerMultiDocumentService;
22
23
  ```
23
24
 
24
- Defined in: [services/SwaggerMultiDocumentService.ts:31](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L31)
25
+ Defined in: [services/SwaggerMultiDocumentService.ts:32](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L32)
25
26
 
26
27
  #### Parameters
27
28
 
@@ -33,6 +34,7 @@ Defined in: [services/SwaggerMultiDocumentService.ts:31](https://github.com/RueD
33
34
  | `featureRegistry` | [`SwaggerFeatureRegistry`](Class.SwaggerFeatureRegistry) |
34
35
  | `resourceManager` | `ResourceManager` |
35
36
  | `contentTemplateEngine` | `ContentTemplateEngine` |
37
+ | `themeConfig?` | [`ISwaggerThemeConfig`](Interface.ISwaggerThemeConfig) |
36
38
 
37
39
  #### Returns
38
40
 
@@ -49,7 +51,7 @@ generateOpenApiDocuments(): {
49
51
  }[];
50
52
  ```
51
53
 
52
- Defined in: [services/SwaggerMultiDocumentService.ts:79](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L79)
54
+ Defined in: [services/SwaggerMultiDocumentService.ts:81](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L81)
53
55
 
54
56
  Generates OpenAPI documents for every registered feature without wiring HTTP routes.
55
57
 
@@ -68,7 +70,7 @@ Generates OpenAPI documents for every registered feature without wiring HTTP rou
68
70
  setupMultipleSwaggerDocuments(): Promise<void>;
69
71
  ```
70
72
 
71
- Defined in: [services/SwaggerMultiDocumentService.ts:55](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L55)
73
+ Defined in: [services/SwaggerMultiDocumentService.ts:57](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-openapi/src/services/SwaggerMultiDocumentService.ts#L57)
72
74
 
73
75
  Setup multiple Swagger documents for different features
74
76