@xemahq/xema-service-nest 2.0.2 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +68 -15
  2. package/dist/database/index.d.ts +2 -0
  3. package/dist/database/index.d.ts.map +1 -0
  4. package/dist/database/index.js +7 -0
  5. package/dist/database/index.js.map +1 -0
  6. package/dist/database/xema-database.module.d.ts +16 -0
  7. package/dist/database/xema-database.module.d.ts.map +1 -0
  8. package/dist/database/xema-database.module.js +80 -0
  9. package/dist/database/xema-database.module.js.map +1 -0
  10. package/dist/events/index.d.ts +2 -0
  11. package/dist/events/index.d.ts.map +1 -0
  12. package/dist/events/index.js +7 -0
  13. package/dist/events/index.js.map +1 -0
  14. package/dist/events/xema-events.module.d.ts +18 -0
  15. package/dist/events/xema-events.module.d.ts.map +1 -0
  16. package/dist/events/xema-events.module.js +119 -0
  17. package/dist/events/xema-events.module.js.map +1 -0
  18. package/dist/index.d.ts +4 -4
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +12 -5
  21. package/dist/index.js.map +1 -1
  22. package/dist/lib/bootstrap-xema-service.d.ts +3 -1
  23. package/dist/lib/bootstrap-xema-service.d.ts.map +1 -1
  24. package/dist/lib/bootstrap-xema-service.js +13 -3
  25. package/dist/lib/bootstrap-xema-service.js.map +1 -1
  26. package/dist/lib/distribution-lock/distribution-lock-env.d.ts +3 -1
  27. package/dist/lib/distribution-lock/distribution-lock-env.d.ts.map +1 -1
  28. package/dist/lib/distribution-lock/distribution-lock-env.js +31 -6
  29. package/dist/lib/distribution-lock/distribution-lock-env.js.map +1 -1
  30. package/dist/lib/peers/xema-peers.module.d.ts +21 -0
  31. package/dist/lib/peers/xema-peers.module.d.ts.map +1 -0
  32. package/dist/lib/peers/xema-peers.module.js +110 -0
  33. package/dist/lib/peers/xema-peers.module.js.map +1 -0
  34. package/dist/lib/request-context/service-request-context.d.ts +7 -0
  35. package/dist/lib/request-context/service-request-context.d.ts.map +1 -0
  36. package/dist/lib/request-context/service-request-context.js +44 -0
  37. package/dist/lib/request-context/service-request-context.js.map +1 -0
  38. package/dist/lib/xema-service-module.d.ts +11 -5
  39. package/dist/lib/xema-service-module.d.ts.map +1 -1
  40. package/dist/lib/xema-service-module.js +81 -22
  41. package/dist/lib/xema-service-module.js.map +1 -1
  42. package/package.json +33 -5
  43. package/dist/lib/apply-xema-service-middleware.d.ts +0 -4
  44. package/dist/lib/apply-xema-service-middleware.d.ts.map +0 -1
  45. package/dist/lib/apply-xema-service-middleware.js +0 -8
  46. package/dist/lib/apply-xema-service-middleware.js.map +0 -1
package/README.md CHANGED
@@ -31,29 +31,82 @@ The `descriptor` is generated from the biome's `xema-biome.json` by
31
31
  `tooling/codegen/generate-service-bootstrap.mjs` — you declare name/version/
32
32
  dependencies **once** in the manifest, never again in `app.module.ts`.
33
33
 
34
+ A biome service writes its domain modules and ONE declaration per platform
35
+ concern it uses. Everything else — identity bootstrap, registry, auth, the
36
+ request-context middleware, health, the database bootstrap, event-hub
37
+ registration, the CloudEvents webhook, peer-client wiring — is the SDK's.
38
+
34
39
  ```ts
35
- import { Module, type MiddlewareConsumer, type NestModule } from '@nestjs/common';
36
- import { ConfigModule } from '@nestjs/config';
37
- import {
38
- XemaServiceModule,
39
- applyXemaServiceMiddleware,
40
- } from '@xemahq/xema-service-nest';
41
- import { MAILOPS_API_BOOTSTRAP } from './generated/mailops-api.bootstrap.generated';
40
+ // main.ts
41
+ void bootstrapXemaService({ appModule: AppModule, descriptor: FEED_API_BOOTSTRAP });
42
+
43
+ // app.module.ts
44
+ import { Module } from '@nestjs/common';
45
+ import { XemaPeersModule, PeerCredential, XemaServiceModule } from '@xemahq/xema-service-nest';
46
+ import { XemaDatabaseModule } from '@xemahq/xema-service-nest/database';
47
+ import { XemaEventsModule } from '@xemahq/xema-service-nest/events';
42
48
 
43
49
  @Module({
44
50
  imports: [
45
- ConfigModule.forRoot({ isGlobal: true, load: [appConfig] }),
46
- XemaServiceModule.forBiome(MAILOPS_API_BOOTSTRAP),
47
- // ...feature modules
51
+ XemaServiceModule.forBiome(FEED_API_BOOTSTRAP, {
52
+ config: { load: [feedConfig] }, // adapters built by `xemaConfig`
53
+ responseEnvelope: true, // the `{ data }` wire envelope
54
+ }),
55
+ XemaDatabaseModule.forBiome(FEED_API_BOOTSTRAP, {
56
+ prismaService: PrismaService, // createBiomePrismaService(...)
57
+ packageDir: __dirname,
58
+ }),
59
+ XemaEventsModule.forBiome(FEED_API_BOOTSTRAP, {
60
+ produces: [FEED_DESCRIPTORS],
61
+ consumes: [FEED_CONSUMED_DESCRIPTORS],
62
+ replayStore: PrismaService,
63
+ }),
64
+ XemaPeersModule.forRoot({
65
+ credential: PeerCredential.ServiceIdentity,
66
+ clients: {
67
+ 'artifact-store-api': configureArtifactStore,
68
+ // a peer that ships one client package per API surface
69
+ 'user-hub-api': [configureUserHub, configureUserHubInternal],
70
+ },
71
+ stopSignal: () => currentJobSignal(), // optional: a stopped job stops waiting on a token
72
+ }),
73
+ FeedModule, // the domain
48
74
  ],
49
75
  })
50
- export class AppModule implements NestModule {
51
- configure(consumer: MiddlewareConsumer): void {
52
- applyXemaServiceMiddleware(consumer);
53
- }
54
- }
76
+ export class AppModule {}
55
77
  ```
56
78
 
79
+ ### Configuration is read at the runtime boundary, never at import
80
+
81
+ `config` makes the SDK own `ConfigModule.forRoot`, and defining it reads
82
+ nothing: no `.env` file, no `process.env` enumeration, no write-back. Each
83
+ `xemaConfig` adapter is handed its source when Nest creates the application —
84
+ the process environment for a dedicated service, the mount's own for a member
85
+ of a composed process. A `.env` file is a process concern: load it where the
86
+ process starts (`node --env-file=.env dist/main.js`).
87
+
88
+ ### Peer tokens honour cancellation
89
+
90
+ With `PeerCredential.ServiceIdentity`, every client's token mint receives the
91
+ request's own `AbortSignal` and, when `stopSignal` is declared, the current
92
+ job's — either one ends the wait. A service that calls some peers as itself
93
+ and others per call mounts `XemaPeersModule.forRoot` once per credential.
94
+
95
+ There is no `configure()`: `XemaServiceModule` mounts the request-context
96
+ middleware itself. A `@XemaPublicRoute` handler is excluded automatically, and
97
+ a controller guarded at CLASS level by a context-reading platform guard
98
+ (`ServiceActorGuard`, `InternalCallerGuard`, `TokenClassGuard`, `OrgRoleGuard`,
99
+ `PlatformAdminGuard` — each refuses without it) is opted in automatically. `requestContext: { extraExcludes,
100
+ additionalControllers }` carries only what cannot be derived.
101
+
102
+ ### Plugging in another platform SDK
103
+
104
+ Every platform concern is ONE `imports` entry that resolves the identity
105
+ bootstrap and the service registry from `XemaServiceModule.forBiome`'s global
106
+ providers — it never re-wires them. An authorization or workload-identity SDK
107
+ plugs in the same way: `SomeSdkModule.forBiome(DESCRIPTOR, { ...what only the
108
+ service knows })`, taking its own facts from the descriptor.
109
+
57
110
  ## Route policy stays with the biome
58
111
 
59
112
  This module wires the auth **stack**; it does **not** decide what your endpoints
@@ -0,0 +1,2 @@
1
+ export { servicePackageRoot, XemaDatabaseModule, type XemaDatabaseOptions, type XemaPrismaServiceClass, } from './xema-database.module';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.XemaDatabaseModule = exports.servicePackageRoot = void 0;
4
+ var xema_database_module_1 = require("./xema-database.module");
5
+ Object.defineProperty(exports, "servicePackageRoot", { enumerable: true, get: function () { return xema_database_module_1.servicePackageRoot; } });
6
+ Object.defineProperty(exports, "XemaDatabaseModule", { enumerable: true, get: function () { return xema_database_module_1.XemaDatabaseModule; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":";;;AAGA,+DAKgC;AAJ9B,0HAAA,kBAAkB,OAAA;AAClB,0HAAA,kBAAkB,OAAA"}
@@ -0,0 +1,16 @@
1
+ import { type EraseOrgDataOptions, type TenantScopedApi } from '@xemahq/biome-database-nest';
2
+ import type { BiomeServiceDescriptor } from '../lib/biome-service-descriptor';
3
+ import type { BiomeHealthDb } from '../lib/health/health.controller';
4
+ import type { DynamicModule, Type } from '@nestjs/common';
5
+ export type XemaPrismaServiceClass = Type<BiomeHealthDb & TenantScopedApi<unknown>> & (new () => BiomeHealthDb & TenantScopedApi<unknown>);
6
+ export interface XemaDatabaseOptions {
7
+ readonly prismaService: XemaPrismaServiceClass;
8
+ readonly packageDir: string;
9
+ readonly requiredExtensions?: readonly string[];
10
+ readonly orgErasure?: false | EraseOrgDataOptions;
11
+ }
12
+ export declare function servicePackageRoot(from: string): string;
13
+ export declare class XemaDatabaseModule {
14
+ static forBiome(descriptor: BiomeServiceDescriptor, options: XemaDatabaseOptions): DynamicModule;
15
+ }
16
+ //# sourceMappingURL=xema-database.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xema-database.module.d.ts","sourceRoot":"","sources":["../../src/database/xema-database.module.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAKrC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAY,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAUpE,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,GACjF,CAAC,UAAU,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAEvD,MAAM,WAAW,mBAAmB;IAKlC,QAAQ,CAAC,aAAa,EAAE,sBAAsB,CAAC;IAW/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAK5B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAQhD,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,GAAG,mBAAmB,CAAC;CACnD;AAMD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAevD;AA0BD,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CACb,UAAU,EAAE,sBAAsB,EAClC,OAAO,EAAE,mBAAmB,GAC3B,aAAa;CA8CjB"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.XemaDatabaseModule = void 0;
10
+ exports.servicePackageRoot = servicePackageRoot;
11
+ const node_fs_1 = require("node:fs");
12
+ const node_path_1 = require("node:path");
13
+ const common_1 = require("@nestjs/common");
14
+ const biome_database_nest_1 = require("@xemahq/biome-database-nest");
15
+ const health_module_1 = require("../lib/health/health.module");
16
+ function servicePackageRoot(from) {
17
+ let dir = (0, node_path_1.resolve)(from);
18
+ for (;;) {
19
+ if ((0, node_fs_1.existsSync)((0, node_path_1.join)(dir, 'package.json'))) {
20
+ return dir;
21
+ }
22
+ const parent = (0, node_path_1.dirname)(dir);
23
+ if (parent === dir) {
24
+ throw new Error(`servicePackageRoot: no package.json at or above "${from}". Pass ` +
25
+ '`packageDir: __dirname` from a file inside the service package.');
26
+ }
27
+ dir = parent;
28
+ }
29
+ }
30
+ let XemaDatabaseModuleHost = class XemaDatabaseModuleHost {
31
+ };
32
+ XemaDatabaseModuleHost = __decorate([
33
+ (0, common_1.Module)({})
34
+ ], XemaDatabaseModuleHost);
35
+ class XemaDatabaseModule {
36
+ static forBiome(descriptor, options) {
37
+ const biomeId = descriptor.biomeId;
38
+ if (biomeId === undefined) {
39
+ throw new Error(`XemaDatabaseModule (${descriptor.name}): the descriptor carries no ` +
40
+ '`biomeId`, and a biome database is keyed on it — the control plane ' +
41
+ 'derives the schema and runtime role from the biome, never from the ' +
42
+ 'service name. Pass the generated bootstrap constant.');
43
+ }
44
+ const prisma = options.prismaService;
45
+ const providers = [
46
+ {
47
+ provide: prisma,
48
+ useFactory: () => new prisma(),
49
+ inject: [biome_database_nest_1.BIOME_DATABASE_READY],
50
+ },
51
+ ];
52
+ return {
53
+ module: XemaDatabaseModuleHost,
54
+ global: true,
55
+ imports: [
56
+ biome_database_nest_1.BiomeDatabaseModule.forRoot({
57
+ biomeId,
58
+ migrationMode: biome_database_nest_1.BiomeDatabaseMigrationMode.ApplicationManaged,
59
+ databases: [{ workspaceDir: servicePackageRoot(options.packageDir) }],
60
+ ...(options.requiredExtensions !== undefined
61
+ ? { requiredExtensions: options.requiredExtensions }
62
+ : {}),
63
+ }),
64
+ ...(options.orgErasure === false
65
+ ? []
66
+ : [
67
+ biome_database_nest_1.OrgErasureModule.forRoot({
68
+ prismaServiceToken: prisma,
69
+ ...(options.orgErasure ?? {}),
70
+ }),
71
+ ]),
72
+ health_module_1.BiomeHealthModule.forPrisma(prisma),
73
+ ],
74
+ providers,
75
+ exports: [prisma],
76
+ };
77
+ }
78
+ }
79
+ exports.XemaDatabaseModule = XemaDatabaseModule;
80
+ //# sourceMappingURL=xema-database.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xema-database.module.js","sourceRoot":"","sources":["../../src/database/xema-database.module.ts"],"names":[],"mappings":";;;;;;;;;AAmEA,gDAeC;AAlFD,qCAAqC;AACrC,yCAAmD;AAEnD,2CAAwC;AACxC,qEAOqC;AAErC,+DAAgE;AAsDhE,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,IAAI,GAAG,GAAG,IAAA,mBAAO,EAAC,IAAI,CAAC,CAAC;IACxB,SAAS,CAAC;QACR,IAAI,IAAA,oBAAU,EAAC,IAAA,gBAAI,EAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;YAC1C,OAAO,GAAG,CAAC;QACb,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,mBAAO,EAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,oDAAoD,IAAI,UAAU;gBAChE,iEAAiE,CACpE,CAAC;QACJ,CAAC;QACD,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;AACH,CAAC;AAGD,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;CAAG,CAAA;AAAzB,sBAAsB;IAD3B,IAAA,eAAM,EAAC,EAAE,CAAC;GACL,sBAAsB,CAAG;AAuB/B,MAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CACb,UAAkC,EAClC,OAA4B;QAE5B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,uBAAuB,UAAU,CAAC,IAAI,+BAA+B;gBACnE,qEAAqE;gBACrE,qEAAqE;gBACrE,sDAAsD,CACzD,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;QACrC,MAAM,SAAS,GAAe;YAC5B;gBACE,OAAO,EAAE,MAAM;gBAGf,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,MAAM,EAAE;gBAC9B,MAAM,EAAE,CAAC,0CAAoB,CAAC;aAC/B;SACF,CAAC;QACF,OAAO;YACL,MAAM,EAAE,sBAAsB;YAC9B,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE;gBACP,yCAAmB,CAAC,OAAO,CAAC;oBAC1B,OAAO;oBACP,aAAa,EAAE,gDAA0B,CAAC,kBAAkB;oBAC5D,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBACrE,GAAG,CAAC,OAAO,CAAC,kBAAkB,KAAK,SAAS;wBAC1C,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE;wBACpD,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;gBACF,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,KAAK;oBAC9B,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACE,sCAAgB,CAAC,OAAO,CAAC;4BACvB,kBAAkB,EAAE,MAAM;4BAC1B,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;yBAC9B,CAAC;qBACH,CAAC;gBACN,iCAAiB,CAAC,SAAS,CAAC,MAAM,CAAC;aACpC;YACD,SAAS;YACT,OAAO,EAAE,CAAC,MAAM,CAAC;SAClB,CAAC;IACJ,CAAC;CACF;AAlDD,gDAkDC"}
@@ -0,0 +1,2 @@
1
+ export { XEMA_EVENTS_WEBHOOK_PATH, XemaEventsModule, type XemaEventsOptions, } from './xema-events.module';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.XemaEventsModule = exports.XEMA_EVENTS_WEBHOOK_PATH = void 0;
4
+ var xema_events_module_1 = require("./xema-events.module");
5
+ Object.defineProperty(exports, "XEMA_EVENTS_WEBHOOK_PATH", { enumerable: true, get: function () { return xema_events_module_1.XEMA_EVENTS_WEBHOOK_PATH; } });
6
+ Object.defineProperty(exports, "XemaEventsModule", { enumerable: true, get: function () { return xema_events_module_1.XemaEventsModule; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":";;;AAIA,2DAI8B;AAH5B,8HAAA,wBAAwB,OAAA;AACxB,sHAAA,gBAAgB,OAAA"}
@@ -0,0 +1,18 @@
1
+ import { type EventDescriptor } from '@xemahq/events';
2
+ import type { BiomeServiceDescriptor } from '../lib/biome-service-descriptor';
3
+ import type { DynamicModule, InjectionToken } from '@nestjs/common';
4
+ export declare const XEMA_EVENTS_WEBHOOK_PATH = "webhooks/events";
5
+ type DescriptorSet = readonly EventDescriptor[];
6
+ export interface XemaEventsOptions {
7
+ readonly produces?: readonly DescriptorSet[];
8
+ readonly consumes?: readonly DescriptorSet[];
9
+ readonly subscribe?: readonly string[];
10
+ readonly ownedDataTypes?: readonly string[];
11
+ readonly eventDomain?: string;
12
+ readonly replayStore?: InjectionToken;
13
+ }
14
+ export declare class XemaEventsModule {
15
+ static forBiome(descriptor: BiomeServiceDescriptor, options: XemaEventsOptions): DynamicModule;
16
+ }
17
+ export {};
18
+ //# sourceMappingURL=xema-events.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xema-events.module.d.ts","sourceRoot":"","sources":["../../src/events/xema-events.module.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AAuBxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAIpE,eAAO,MAAM,wBAAwB,oBAAoB,CAAC;AAK1D,KAAK,aAAa,GAAG,SAAS,eAAe,EAAE,CAAC;AAUhD,MAAM,WAAW,iBAAiB;IAEhC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAE7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAO7C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAOvC,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAE5C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAc9B,QAAQ,CAAC,WAAW,CAAC,EAAE,cAAc,CAAC;CACvC;AAuDD,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CACb,UAAU,EAAE,sBAAsB,EAClC,OAAO,EAAE,iBAAiB,GACzB,aAAa;CAkFjB"}
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.XemaEventsModule = exports.XEMA_EVENTS_WEBHOOK_PATH = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@nestjs/core");
15
+ const swagger_1 = require("@nestjs/swagger");
16
+ const event_hub_client_1 = require("@xemahq/event-hub-client");
17
+ const events_1 = require("@xemahq/events");
18
+ const nest_1 = require("@xemahq/events/nest");
19
+ const identity_client_1 = require("@xemahq/identity-client");
20
+ const platform_common_1 = require("@xemahq/platform-common");
21
+ const service_registry_nest_1 = require("@xemahq/service-registry-nest");
22
+ const xema_decorators_1 = require("@xemahq/xema-decorators");
23
+ const service_mount_scope_1 = require("../lib/service-mount-scope");
24
+ exports.XEMA_EVENTS_WEBHOOK_PATH = 'webhooks/events';
25
+ const EVENT_HUB_SCHEMA_VERSION = '1.0.0';
26
+ let XemaCloudEventWebhookController = class XemaCloudEventWebhookController extends nest_1.CloudEventWebhookController {
27
+ constructor(dispatcher) {
28
+ super(dispatcher);
29
+ }
30
+ handleWebhook(body, headers) {
31
+ return super.handleWebhook(body, headers);
32
+ }
33
+ };
34
+ __decorate([
35
+ (0, xema_decorators_1.XemaPublicRoute)({ reason: xema_decorators_1.PublicRouteReason.WebhookIngestion }),
36
+ (0, common_1.Post)('events'),
37
+ (0, common_1.HttpCode)(common_1.HttpStatus.OK),
38
+ (0, common_1.UseGuards)(event_hub_client_1.EventHubWebhookGuard),
39
+ __metadata("design:type", Function),
40
+ __metadata("design:paramtypes", [Object, Object]),
41
+ __metadata("design:returntype", Promise)
42
+ ], XemaCloudEventWebhookController.prototype, "handleWebhook", null);
43
+ XemaCloudEventWebhookController = __decorate([
44
+ (0, swagger_1.ApiExcludeController)(),
45
+ (0, xema_decorators_1.XemaResource)('webhook'),
46
+ (0, common_1.Controller)('webhooks'),
47
+ __metadata("design:paramtypes", [nest_1.EventDispatcherService])
48
+ ], XemaCloudEventWebhookController);
49
+ function flatten(sets) {
50
+ return (sets ?? []).flatMap((set) => [...set]);
51
+ }
52
+ class XemaEventsModule {
53
+ static forBiome(descriptor, options) {
54
+ const produced = flatten(options.produces);
55
+ const consumed = flatten(options.consumes);
56
+ if (produced.length === 0 && consumed.length === 0) {
57
+ throw new Error(`XemaEventsModule (${descriptor.name}): neither \`produces\` nor ` +
58
+ '`consumes` names a descriptor. A service that neither publishes nor ' +
59
+ 'handles an event does not mount the events module.');
60
+ }
61
+ const subscribe = [...(options.subscribe ?? consumed.map((d) => d.type))];
62
+ const dataTypes = [
63
+ ...(0, events_1.producedDataTypes)({
64
+ from: [produced],
65
+ alwaysInclude: options.ownedDataTypes ?? [],
66
+ }),
67
+ ];
68
+ const eventHub = event_hub_client_1.EventHubModule.forRootAsync({
69
+ useFactory: async (identity, kernelState) => ({
70
+ eventHubUrl: await (0, service_registry_nest_1.resolveHttpUrlEagerly)(kernelState, 'event-hub-api'),
71
+ serviceId: descriptor.name,
72
+ serviceName: descriptor.displayName,
73
+ ...(options.eventDomain !== undefined
74
+ ? { eventDomain: options.eventDomain }
75
+ : {}),
76
+ schemaVersion: EVENT_HUB_SCHEMA_VERSION,
77
+ dataTypes,
78
+ eventTypes: subscribe,
79
+ tokenProvider: () => identity.getAccessToken(),
80
+ ...(subscribe.length > 0
81
+ ? {
82
+ webhookUrl: `${(0, service_registry_nest_1.buildSelfHttpEndpointUrl)({ get: (key) => (0, service_mount_scope_1.resolveEnv)(key) }, descriptor.name)}/${exports.XEMA_EVENTS_WEBHOOK_PATH}`,
83
+ }
84
+ : {}),
85
+ }),
86
+ inject: [identity_client_1.IdentityBootstrapService, service_registry_nest_1.KERNEL_STATE_TOKEN],
87
+ });
88
+ const cloudEvents = nest_1.CloudEventsModule.forRootAsync({
89
+ useFactory: (client) => {
90
+ const registry = new events_1.EventRegistry();
91
+ registry.register(produced);
92
+ registry.register(consumed.filter((d) => !produced.some((p) => p.type === d.type)));
93
+ return { registry, transport: new nest_1.EventHubCloudEventTransport(client) };
94
+ },
95
+ inject: [event_hub_client_1.EventHubClient],
96
+ discovery: {
97
+ discoveryModule: core_1.DiscoveryModule,
98
+ discoveryService: core_1.DiscoveryService,
99
+ },
100
+ extraProviders: [
101
+ { provide: nest_1.EVENT_DISPATCHER_CONSUMER_NAME, useValue: descriptor.name },
102
+ ...(options.replayStore !== undefined
103
+ ? [
104
+ { provide: platform_common_1.IDEMPOTENCY_DATA_STORE_CLIENT, useExisting: options.replayStore },
105
+ { provide: platform_common_1.IDEMPOTENCY_SERVICE, useClass: platform_common_1.DataStoreIdempotencyService },
106
+ ]
107
+ : []),
108
+ ],
109
+ });
110
+ return {
111
+ module: XemaEventsModule,
112
+ imports: [eventHub, cloudEvents],
113
+ controllers: subscribe.length > 0 ? [XemaCloudEventWebhookController] : [],
114
+ exports: [eventHub, cloudEvents],
115
+ };
116
+ }
117
+ }
118
+ exports.XemaEventsModule = XemaEventsModule;
119
+ //# sourceMappingURL=xema-events.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xema-events.module.js","sourceRoot":"","sources":["../../src/events/xema-events.module.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { HttpCapabilityProjectionModule, isHttpCapabilityProjectionEnabled, XemaServiceModule, type XemaServiceConfigOptions, type XemaServiceModuleOptions, buildPlatformAuthOptions, } from './lib/xema-service-module';
1
+ export { HttpCapabilityProjectionModule, isHttpCapabilityProjectionEnabled, XemaServiceModule, XEMA_REQUEST_CONTEXT_OPTIONS, type XemaServiceConfigOptions, type XemaServiceModuleOptions, buildPlatformAuthOptions, } from './lib/xema-service-module';
2
2
  export * from './lib/http-capability-projection';
3
3
  export { findOptionalProvider } from './lib/resolve-optional-provider';
4
4
  export { AuthorityDomain, AuthorityEffectReason, AuthorityResource, AuthorityVerb, classifyAuthorityEffect, classifyAuthorityEffectFacts, isAuthorityResourceSegment, isMutatingVerb, type AuthorityEffectClassification, type CapabilityRefFacts, type ClassifyAuthorityEffectOptions, type FirstPartyDomainOracle, } from './lib/capability-authority-effect';
@@ -7,13 +7,13 @@ export { type BootstrapSwaggerOptions, type ResolvedSwaggerConfig, DEFAULT_PORT,
7
7
  export { applyKeycloakSwagger } from './lib/bootstrap-swagger';
8
8
  export { applySpecCorsHeaders, type SpecCorsResponse } from './lib/spec-cors';
9
9
  export { buildTelemetryConfigInput, DEPLOYMENT_ENVIRONMENT_ENV, SERVICE_VERSION_ENV, } from './lib/telemetry-input';
10
- export { DISTRIBUTION_LOCK_PATH_ENV, DistributionLockRequirement, loadDistributionLockFromEnv, readDistributionLockFile, type LoadDistributionLockOptions, } from './lib/distribution-lock/distribution-lock-env';
10
+ export { DISTRIBUTION_LOCK_PATH_ENV, DISTRIBUTION_LOCK_SHA256_ENV, distributionLockSha256, DistributionLockRequirement, loadDistributionLockFromEnv, readDistributionLockFile, type LoadDistributionLockOptions, } from './lib/distribution-lock/distribution-lock-env';
11
11
  export { FIRST_PARTY_CAPABILITY_DOMAINS_TOKEN, FirstPartyCapabilityDomainsModule, type FirstPartyCapabilityDomainsModuleOptions, } from './lib/distribution-lock/first-party-capability-domains.module';
12
12
  export { BIOME_HEALTH_DB, BIOME_HEALTH_READINESS, BiomeHealthController, DatabaseHealthReadiness, StatelessHealthReadiness, type BiomeHealthDb, type BiomeHealthReadiness, } from './lib/health/health.controller';
13
13
  export { BiomeHealthModule } from './lib/health/health.module';
14
14
  export { bindHttpServerBeforeHooks, BootConvergenceModule, BootConvergenceRunner, BootConvergenceState, DEFAULT_BOOT_CONVERGENCE_RETRY, XEMA_BOOT_CONVERGENCE_RETRY, XEMA_BOOT_CONVERGENCE_TASK, type BootConvergenceRetryPolicy, type BootConvergenceStatus, type BootConvergenceTask, } from './lib/boot';
15
- export { applyXemaServiceMiddleware } from './lib/apply-xema-service-middleware';
16
- export { type ConfigureAuthMiddlewareOptions } from '@xemahq/platform-common';
15
+ export { PeerCredential, XemaPeersModule, peerServiceTokenCallback, type PeerClientConfigurer, type PeerClientConfigurers, type PeerStopSignalResolver, type XemaPeersOptions, } from './lib/peers/xema-peers.module';
16
+ export { discoverContextRequiringControllers, type XemaRequestContextOptions, } from './lib/request-context/service-request-context';
17
17
  export { validateServiceDescriptor, ServiceDescriptorError, type ServiceDescriptor, type ValidateServiceDescriptorOptions, } from './lib/service-descriptor';
18
18
  export { validateBiomeServiceDescriptor, BiomeServiceDescriptorError, type BiomeServiceDescriptor, } from './lib/biome-service-descriptor';
19
19
  export { ServiceKind } from '@xemahq/xema-decorators';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,13 +14,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.IdentityBootstrapService = exports.IdentityBootstrapModule = exports.ServiceKind = exports.BiomeServiceDescriptorError = exports.validateBiomeServiceDescriptor = exports.ServiceDescriptorError = exports.validateServiceDescriptor = exports.applyXemaServiceMiddleware = exports.XEMA_BOOT_CONVERGENCE_TASK = exports.XEMA_BOOT_CONVERGENCE_RETRY = exports.DEFAULT_BOOT_CONVERGENCE_RETRY = exports.BootConvergenceState = exports.BootConvergenceRunner = exports.BootConvergenceModule = exports.bindHttpServerBeforeHooks = exports.BiomeHealthModule = exports.StatelessHealthReadiness = exports.DatabaseHealthReadiness = exports.BiomeHealthController = exports.BIOME_HEALTH_READINESS = exports.BIOME_HEALTH_DB = exports.FirstPartyCapabilityDomainsModule = exports.FIRST_PARTY_CAPABILITY_DOMAINS_TOKEN = exports.readDistributionLockFile = exports.loadDistributionLockFromEnv = exports.DistributionLockRequirement = exports.DISTRIBUTION_LOCK_PATH_ENV = exports.SERVICE_VERSION_ENV = exports.DEPLOYMENT_ENVIRONMENT_ENV = exports.buildTelemetryConfigInput = exports.applySpecCorsHeaders = exports.applyKeycloakSwagger = exports.SWAGGER_PUBLIC_JSON_PATH = exports.DEFAULT_SWAGGER_JSON_PATH = exports.DEFAULT_SWAGGER_DOCS_PATH = exports.DEFAULT_PORT = exports.bootstrapXemaService = exports.isMutatingVerb = exports.isAuthorityResourceSegment = exports.classifyAuthorityEffectFacts = exports.classifyAuthorityEffect = exports.AuthorityVerb = exports.AuthorityResource = exports.AuthorityEffectReason = exports.AuthorityDomain = exports.findOptionalProvider = exports.buildPlatformAuthOptions = exports.XemaServiceModule = exports.isHttpCapabilityProjectionEnabled = exports.HttpCapabilityProjectionModule = void 0;
18
- exports.PROCESS_LIVE_PATH = exports.DB_POOL_MAX_ENV = exports.poolCeilingEnvFragment = exports.joinPoolCeiling = exports.findMountConfigViolations = exports.composeXemaProcess = exports.assertMountConfigScoped = exports.xemaConfigSourceFromRecord = exports.xemaConfigSourceFromReader = exports.xemaConfigSourceForMount = exports.xemaConfigNamespace = exports.xemaConfig = exports.resolveConfigSource = exports.isXemaConfigFactory = exports.XEMA_SCOPED_CONFIG = exports.uninstallServiceMountScope = exports.resolveEnvViewFrom = exports.resolveEnvView = exports.resolveEnvFrom = exports.resolveEnv = exports.requireScopedEnvView = exports.requireEnvFrom = exports.requireEnv = exports.isServiceMountScopeInstalled = exports.installServiceMountScope = exports.currentServiceMount = exports.XEMA_SERVICE_MOUNT_SCOPE = exports.XEMA_SCOPED_ENV_VIEW = exports.unwrapCapabilityEnvelope = exports.longRunningSucceeded = exports.longRunningRunning = exports.longRunningFailed = exports.longRunningAccepted = exports.LONG_RUNNING_STATUS_INPUT_JSON_SCHEMA = exports.LONG_RUNNING_INVOCATION_STATUS_JSON_SCHEMA = exports.LONG_RUNNING_INVOCATION_RESPONSE_JSON_SCHEMA = exports.CapabilityRouterUnavailableError = exports.CapabilityRouterRefusedError = exports.CapabilityMetaToolFailure = exports.CapabilityMetaToolClient = exports.CapabilityInvokerModule = exports.CapabilityInvoker = exports.CapabilityInvokeClient = exports.CapabilityInvocationError = exports.CapabilityDecisionStatus = exports.CapabilityDecisionMalformedError = exports.CAPABILITY_SEARCH_PLACEHOLDER_REF = exports.buildAgentExecutionContext = exports.xemaOrgScopedClaim = exports.RegistryResolvedCapabilityRegistryClient = void 0;
19
- exports.runComposedProcess = exports.readServiceEntry = exports.PROCESS_READY_PATH = exports.PROCESS_PROBE_PREFIX = void 0;
17
+ exports.validateServiceDescriptor = exports.discoverContextRequiringControllers = exports.peerServiceTokenCallback = exports.XemaPeersModule = exports.PeerCredential = exports.XEMA_BOOT_CONVERGENCE_TASK = exports.XEMA_BOOT_CONVERGENCE_RETRY = exports.DEFAULT_BOOT_CONVERGENCE_RETRY = exports.BootConvergenceState = exports.BootConvergenceRunner = exports.BootConvergenceModule = exports.bindHttpServerBeforeHooks = exports.BiomeHealthModule = exports.StatelessHealthReadiness = exports.DatabaseHealthReadiness = exports.BiomeHealthController = exports.BIOME_HEALTH_READINESS = exports.BIOME_HEALTH_DB = exports.FirstPartyCapabilityDomainsModule = exports.FIRST_PARTY_CAPABILITY_DOMAINS_TOKEN = exports.readDistributionLockFile = exports.loadDistributionLockFromEnv = exports.DistributionLockRequirement = exports.distributionLockSha256 = exports.DISTRIBUTION_LOCK_SHA256_ENV = exports.DISTRIBUTION_LOCK_PATH_ENV = exports.SERVICE_VERSION_ENV = exports.DEPLOYMENT_ENVIRONMENT_ENV = exports.buildTelemetryConfigInput = exports.applySpecCorsHeaders = exports.applyKeycloakSwagger = exports.SWAGGER_PUBLIC_JSON_PATH = exports.DEFAULT_SWAGGER_JSON_PATH = exports.DEFAULT_SWAGGER_DOCS_PATH = exports.DEFAULT_PORT = exports.bootstrapXemaService = exports.isMutatingVerb = exports.isAuthorityResourceSegment = exports.classifyAuthorityEffectFacts = exports.classifyAuthorityEffect = exports.AuthorityVerb = exports.AuthorityResource = exports.AuthorityEffectReason = exports.AuthorityDomain = exports.findOptionalProvider = exports.buildPlatformAuthOptions = exports.XEMA_REQUEST_CONTEXT_OPTIONS = exports.XemaServiceModule = exports.isHttpCapabilityProjectionEnabled = exports.HttpCapabilityProjectionModule = void 0;
18
+ exports.assertMountConfigScoped = exports.xemaConfigSourceFromRecord = exports.xemaConfigSourceFromReader = exports.xemaConfigSourceForMount = exports.xemaConfigNamespace = exports.xemaConfig = exports.resolveConfigSource = exports.isXemaConfigFactory = exports.XEMA_SCOPED_CONFIG = exports.uninstallServiceMountScope = exports.resolveEnvViewFrom = exports.resolveEnvView = exports.resolveEnvFrom = exports.resolveEnv = exports.requireScopedEnvView = exports.requireEnvFrom = exports.requireEnv = exports.isServiceMountScopeInstalled = exports.installServiceMountScope = exports.currentServiceMount = exports.XEMA_SERVICE_MOUNT_SCOPE = exports.XEMA_SCOPED_ENV_VIEW = exports.unwrapCapabilityEnvelope = exports.longRunningSucceeded = exports.longRunningRunning = exports.longRunningFailed = exports.longRunningAccepted = exports.LONG_RUNNING_STATUS_INPUT_JSON_SCHEMA = exports.LONG_RUNNING_INVOCATION_STATUS_JSON_SCHEMA = exports.LONG_RUNNING_INVOCATION_RESPONSE_JSON_SCHEMA = exports.CapabilityRouterUnavailableError = exports.CapabilityRouterRefusedError = exports.CapabilityMetaToolFailure = exports.CapabilityMetaToolClient = exports.CapabilityInvokerModule = exports.CapabilityInvoker = exports.CapabilityInvokeClient = exports.CapabilityInvocationError = exports.CapabilityDecisionStatus = exports.CapabilityDecisionMalformedError = exports.CAPABILITY_SEARCH_PLACEHOLDER_REF = exports.buildAgentExecutionContext = exports.xemaOrgScopedClaim = exports.RegistryResolvedCapabilityRegistryClient = exports.IdentityBootstrapService = exports.IdentityBootstrapModule = exports.ServiceKind = exports.BiomeServiceDescriptorError = exports.validateBiomeServiceDescriptor = exports.ServiceDescriptorError = void 0;
19
+ exports.runComposedProcess = exports.readServiceEntry = exports.PROCESS_READY_PATH = exports.PROCESS_PROBE_PREFIX = exports.PROCESS_LIVE_PATH = exports.DB_POOL_MAX_ENV = exports.poolCeilingEnvFragment = exports.joinPoolCeiling = exports.findMountConfigViolations = exports.composeXemaProcess = void 0;
20
20
  var xema_service_module_1 = require("./lib/xema-service-module");
21
21
  Object.defineProperty(exports, "HttpCapabilityProjectionModule", { enumerable: true, get: function () { return xema_service_module_1.HttpCapabilityProjectionModule; } });
22
22
  Object.defineProperty(exports, "isHttpCapabilityProjectionEnabled", { enumerable: true, get: function () { return xema_service_module_1.isHttpCapabilityProjectionEnabled; } });
23
23
  Object.defineProperty(exports, "XemaServiceModule", { enumerable: true, get: function () { return xema_service_module_1.XemaServiceModule; } });
24
+ Object.defineProperty(exports, "XEMA_REQUEST_CONTEXT_OPTIONS", { enumerable: true, get: function () { return xema_service_module_1.XEMA_REQUEST_CONTEXT_OPTIONS; } });
24
25
  Object.defineProperty(exports, "buildPlatformAuthOptions", { enumerable: true, get: function () { return xema_service_module_1.buildPlatformAuthOptions; } });
25
26
  __exportStar(require("./lib/http-capability-projection"), exports);
26
27
  var resolve_optional_provider_1 = require("./lib/resolve-optional-provider");
@@ -51,6 +52,8 @@ Object.defineProperty(exports, "DEPLOYMENT_ENVIRONMENT_ENV", { enumerable: true,
51
52
  Object.defineProperty(exports, "SERVICE_VERSION_ENV", { enumerable: true, get: function () { return telemetry_input_1.SERVICE_VERSION_ENV; } });
52
53
  var distribution_lock_env_1 = require("./lib/distribution-lock/distribution-lock-env");
53
54
  Object.defineProperty(exports, "DISTRIBUTION_LOCK_PATH_ENV", { enumerable: true, get: function () { return distribution_lock_env_1.DISTRIBUTION_LOCK_PATH_ENV; } });
55
+ Object.defineProperty(exports, "DISTRIBUTION_LOCK_SHA256_ENV", { enumerable: true, get: function () { return distribution_lock_env_1.DISTRIBUTION_LOCK_SHA256_ENV; } });
56
+ Object.defineProperty(exports, "distributionLockSha256", { enumerable: true, get: function () { return distribution_lock_env_1.distributionLockSha256; } });
54
57
  Object.defineProperty(exports, "DistributionLockRequirement", { enumerable: true, get: function () { return distribution_lock_env_1.DistributionLockRequirement; } });
55
58
  Object.defineProperty(exports, "loadDistributionLockFromEnv", { enumerable: true, get: function () { return distribution_lock_env_1.loadDistributionLockFromEnv; } });
56
59
  Object.defineProperty(exports, "readDistributionLockFile", { enumerable: true, get: function () { return distribution_lock_env_1.readDistributionLockFile; } });
@@ -73,8 +76,12 @@ Object.defineProperty(exports, "BootConvergenceState", { enumerable: true, get:
73
76
  Object.defineProperty(exports, "DEFAULT_BOOT_CONVERGENCE_RETRY", { enumerable: true, get: function () { return boot_1.DEFAULT_BOOT_CONVERGENCE_RETRY; } });
74
77
  Object.defineProperty(exports, "XEMA_BOOT_CONVERGENCE_RETRY", { enumerable: true, get: function () { return boot_1.XEMA_BOOT_CONVERGENCE_RETRY; } });
75
78
  Object.defineProperty(exports, "XEMA_BOOT_CONVERGENCE_TASK", { enumerable: true, get: function () { return boot_1.XEMA_BOOT_CONVERGENCE_TASK; } });
76
- var apply_xema_service_middleware_1 = require("./lib/apply-xema-service-middleware");
77
- Object.defineProperty(exports, "applyXemaServiceMiddleware", { enumerable: true, get: function () { return apply_xema_service_middleware_1.applyXemaServiceMiddleware; } });
79
+ var xema_peers_module_1 = require("./lib/peers/xema-peers.module");
80
+ Object.defineProperty(exports, "PeerCredential", { enumerable: true, get: function () { return xema_peers_module_1.PeerCredential; } });
81
+ Object.defineProperty(exports, "XemaPeersModule", { enumerable: true, get: function () { return xema_peers_module_1.XemaPeersModule; } });
82
+ Object.defineProperty(exports, "peerServiceTokenCallback", { enumerable: true, get: function () { return xema_peers_module_1.peerServiceTokenCallback; } });
83
+ var service_request_context_1 = require("./lib/request-context/service-request-context");
84
+ Object.defineProperty(exports, "discoverContextRequiringControllers", { enumerable: true, get: function () { return service_request_context_1.discoverContextRequiringControllers; } });
78
85
  var service_descriptor_1 = require("./lib/service-descriptor");
79
86
  Object.defineProperty(exports, "validateServiceDescriptor", { enumerable: true, get: function () { return service_descriptor_1.validateServiceDescriptor; } });
80
87
  Object.defineProperty(exports, "ServiceDescriptorError", { enumerable: true, get: function () { return service_descriptor_1.ServiceDescriptorError; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -12,8 +12,10 @@ export interface BootstrapXemaServiceOptions {
12
12
  readonly corsAllowedOrigins?: readonly string[];
13
13
  readonly swagger?: boolean | BootstrapSwaggerOptions;
14
14
  readonly registerGlobalExceptionFilter?: boolean;
15
- readonly registerResponseEnvelopeInterceptor?: boolean;
15
+ readonly rawBody?: boolean;
16
+ readonly beforeBodyParsers?: (app: NestExpressApplication) => void | Promise<void>;
16
17
  readonly configureApp?: (app: NestExpressApplication) => void | Promise<void>;
18
+ readonly onPublicDocument?: (app: NestExpressApplication, publicDoc: OpenApiDoc) => void | Promise<void>;
17
19
  }
18
20
  export declare function bootstrapXemaService(options: BootstrapXemaServiceOptions): Promise<INestApplication>;
19
21
  export interface CreatedXemaServiceApp {
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-xema-service.d.ts","sourceRoot":"","sources":["../../src/lib/bootstrap-xema-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAkB,MAAM,gBAAgB,CAAC;AAUxD,OAAO,EAQL,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAO/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAO1D,MAAM,WAAW,2BAA2B;IAE1C,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAiBlC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC;IAO5C,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAK7C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAWhC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAOhD,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAOrD,QAAQ,CAAC,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAQjD,QAAQ,CAAC,mCAAmC,CAAC,EAAE,OAAO,CAAC;IAQvD,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,sBAAsB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/E;AAgDD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,gBAAgB,CAAC,CAgG3B;AAGD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,EAAE,sBAAsB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,CAAC;CAC5C;AA4BD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,2BAA2B,EACpC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,EAC7C,WAAW,GAAE;IAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAO,GAClD,OAAO,CAAC,qBAAqB,CAAC,CAwEhC;AAOD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,gBAAgB,EACrB,SAAS,EAAE,UAAU,GAAG,SAAS,EACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
1
+ {"version":3,"file":"bootstrap-xema-service.d.ts","sourceRoot":"","sources":["../../src/lib/bootstrap-xema-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAkB,MAAM,gBAAgB,CAAC;AASxD,OAAO,EAQL,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAO/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAO1D,MAAM,WAAW,2BAA2B;IAE1C,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAiBlC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC;IAO5C,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAK7C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAWhC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAOhD,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAOrD,QAAQ,CAAC,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAMjD,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAS3B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,sBAAsB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAQnF,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,sBAAsB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAS9E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAC1B,GAAG,EAAE,sBAAsB,EAC3B,SAAS,EAAE,UAAU,KAClB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AA+CD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,gBAAgB,CAAC,CAgG3B;AAGD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,EAAE,sBAAsB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,UAAU,GAAG,SAAS,CAAC;CAC5C;AAkCD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,2BAA2B,EACpC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,EAC7C,WAAW,GAAE;IAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAO,GAClD,OAAO,CAAC,qBAAqB,CAAC,CAsFhC;AAOD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,gBAAgB,EACrB,SAAS,EAAE,UAAU,GAAG,SAAS,EACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
@@ -29,12 +29,22 @@ async function bootstrapXemaService(options) {
29
29
  await initXemaServiceApp(app, publicDoc, logger, options.descriptor.name);
30
30
  return app;
31
31
  }
32
+ const CLOUDEVENTS_JSON_MEDIA_TYPE = 'application/cloudevents+json';
33
+ const CLOUDEVENTS_BODY_LIMIT = '1mb';
32
34
  async function createXemaServiceApp(options, readEnv, nestOptions = {}) {
33
35
  const app = await core_1.NestFactory.create(options.appModule, {
34
36
  ...nestOptions,
37
+ ...(options.rawBody === true ? { rawBody: true } : {}),
35
38
  cors: (0, bootstrap_internals_1.resolveCorsOptions)(options.corsAllowedOrigins, () => readEnv('CORS_ALLOWED_ORIGINS')),
36
39
  });
40
+ if (options.beforeBodyParsers) {
41
+ await options.beforeBodyParsers(app);
42
+ }
37
43
  (0, platform_common_1.applyStandardBodyParsers)(app);
44
+ app.useBodyParser('json', {
45
+ type: CLOUDEVENTS_JSON_MEDIA_TYPE,
46
+ limit: CLOUDEVENTS_BODY_LIMIT,
47
+ });
38
48
  app.useGlobalPipes(new common_1.ValidationPipe({
39
49
  whitelist: true,
40
50
  forbidNonWhitelisted: true,
@@ -43,9 +53,6 @@ async function createXemaServiceApp(options, readEnv, nestOptions = {}) {
43
53
  if (options.registerGlobalExceptionFilter !== false) {
44
54
  app.useGlobalFilters(new platform_common_1.GlobalExceptionFilter());
45
55
  }
46
- if (options.registerResponseEnvelopeInterceptor === true) {
47
- app.useGlobalInterceptors(new platform_common_1.ResponseEnvelopeInterceptor());
48
- }
49
56
  if (options.configureApp) {
50
57
  await options.configureApp(app);
51
58
  }
@@ -67,6 +74,9 @@ async function createXemaServiceApp(options, readEnv, nestOptions = {}) {
67
74
  ? swaggerConfig
68
75
  : { ...swaggerConfig, jwtIssuer })
69
76
  : undefined;
77
+ if (publicDoc !== undefined && options.onPublicDocument) {
78
+ await options.onPublicDocument(app, publicDoc);
79
+ }
70
80
  return { app, publicDoc };
71
81
  }
72
82
  async function initXemaServiceApp(app, publicDoc, logger, serviceName) {
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-xema-service.js","sourceRoot":"","sources":["../../src/lib/bootstrap-xema-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap-xema-service.js","sourceRoot":"","sources":["../../src/lib/bootstrap-xema-service.ts"],"names":[],"mappings":"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"}