@xemahq/biome-database-nest 0.10.1 → 0.11.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.
- package/dist/lib/adapter.d.ts.map +1 -1
- package/dist/lib/adapter.js.map +1 -1
- package/dist/lib/control-plane-discovery.d.ts +1 -1
- package/dist/lib/control-plane-discovery.d.ts.map +1 -1
- package/dist/lib/control-plane-discovery.js.map +1 -1
- package/dist/lib/nest/prisma-service-factory.d.ts +1 -1
- package/dist/lib/nest/prisma-service-factory.d.ts.map +1 -1
- package/dist/lib/nest/prisma-service-factory.js.map +1 -1
- package/dist/lib/schema-name.js.map +1 -1
- package/dist/lib/tenant-isolation/unscoped-models.d.ts.map +1 -1
- package/dist/lib/tenant-isolation/unscoped-models.js.map +1 -1
- package/package.json +7 -5
- package/src/lib/adapter.ts +6 -3
- package/src/lib/control-plane-discovery.ts +10 -2
- package/src/lib/nest/prisma-service-factory.ts +4 -3
- package/src/lib/schema-name.ts +1 -1
- package/src/lib/tenant-isolation/unscoped-models.ts +4 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAQ9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AA0CpD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,mBAAmB,GAC1B,QAAQ,CAWV;AAeD,wBAAgB,+BAA+B,CAC7C,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,KAAK,CAAC,EAAE,MAAM,GACb,QAAQ,CAmCV"}
|
package/dist/lib/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { KernelState } from '@xemahq/kernel-contracts/kernel-state';
|
|
2
1
|
import { type EagerResolveOptions } from '@xemahq/service-registry-nest';
|
|
2
|
+
import type { KernelState } from '@xemahq/kernel-contracts/kernel-state';
|
|
3
3
|
export declare const ORG_DATABASE_POOL_SERVICE_NAME = "org-database-pool-api";
|
|
4
4
|
export type ControlPlaneDiscoveryOptions = EagerResolveOptions;
|
|
5
5
|
export declare function resolveControlPlaneBaseUrl(kernelState: KernelState, options?: ControlPlaneDiscoveryOptions): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-plane-discovery.d.ts","sourceRoot":"","sources":["../../src/lib/control-plane-discovery.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"control-plane-discovery.d.ts","sourceRoot":"","sources":["../../src/lib/control-plane-discovery.ts"],"names":[],"mappings":"AAaA,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAGzE,eAAO,MAAM,8BAA8B,0BAA0B,CAAC;AAGtE,MAAM,MAAM,4BAA4B,GAAG,mBAAmB,CAAC;AAQ/D,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,WAAW,EACxB,OAAO,CAAC,EAAE,4BAA4B,GACrC,OAAO,CAAC,MAAM,CAAC,CAMjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-plane-discovery.js","sourceRoot":"","sources":["../../src/lib/control-plane-discovery.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"control-plane-discovery.js","sourceRoot":"","sources":["../../src/lib/control-plane-discovery.ts"],"names":[],"mappings":";;;AAgCA,gEASC;AA5BD,yEAGuC;AAK1B,QAAA,8BAA8B,GAAG,uBAAuB,CAAC;AAWtE,SAAgB,0BAA0B,CACxC,WAAwB,EACxB,OAAsC;IAEtC,OAAO,IAAA,6CAAqB,EAC1B,WAAW,EACX,sCAA8B,EAC9B,OAAO,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { OnModuleDestroy, OnModuleInit, Type } from '@nestjs/common';
|
|
2
1
|
import { TenantIsolationMode } from '../tenant-isolation/tenant-isolation-mode';
|
|
3
2
|
import { type UnscopedModelDeclarations } from '../tenant-isolation/unscoped-models';
|
|
3
|
+
import type { OnModuleDestroy, OnModuleInit, Type } from '@nestjs/common';
|
|
4
4
|
export type BiomePrismaClientCtor<TClient extends BiomePrismaClient> = new (...args: any[]) => TClient;
|
|
5
5
|
export interface BiomePrismaClient {
|
|
6
6
|
$connect(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prisma-service-factory.d.ts","sourceRoot":"","sources":["../../../src/lib/nest/prisma-service-factory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prisma-service-factory.d.ts","sourceRoot":"","sources":["../../../src/lib/nest/prisma-service-factory.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,mBAAmB,EAEpB,MAAM,2CAA2C,CAAC;AAQnD,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAY1E,MAAM,MAAM,qBAAqB,CAAC,OAAO,SAAS,iBAAiB,IAAI,KAIrE,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,OAAO,CAAC;AAGb,MAAM,WAAW,iBAAiB;IAChC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAGD,MAAM,WAAW,6BAA6B;IAK5C,QAAQ,CAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAEpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAK3B,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IA0B1C,QAAQ,CAAC,cAAc,CAAC,EAAE,yBAAyB,CAAC;CACrD;AAGD,MAAM,WAAW,+BAA+B;IAE9C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,CAAC,EAAE,6BAA6B,CAAC;CAC1D;AAMD,MAAM,WAAW,eAAe,CAAC,OAAO;IAOtC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAM/B,QAAQ,IAAI,OAAO,CAAC;CACrB;AAGD,MAAM,MAAM,0BAA0B,CAAC,OAAO,IAAI,OAAO,GACvD,eAAe,CAAC,OAAO,CAAC,GACxB,YAAY,GACZ,eAAe,CAAC;AA2ElB,wBAAgB,wBAAwB,CAAC,OAAO,SAAS,iBAAiB,EACxE,gBAAgB,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAChD,sBAAsB,CAAC,EAAE,MAAM,GAAG,+BAA+B,GAChE,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAoL3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prisma-service-factory.js","sourceRoot":"","sources":["../../../src/lib/nest/prisma-service-factory.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"prisma-service-factory.js","sourceRoot":"","sources":["../../../src/lib/nest/prisma-service-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-name.js","sourceRoot":"","sources":["../../src/lib/schema-name.ts"],"names":[],"mappings":";;;AA8BA,sDA+BC;AA7DD,6CAIsB;AAMT,QAAA,oBAAoB,GAAG,SAAS,CAAC;AAE9C,MAAM,aAAa,GAAG,OAAO,CAAC;AAkB9B,SAAgB,qBAAqB,CAAC,OAAe,EAAE,KAAc;IACnE,MAAM,gBAAgB,GAAG,IAAA,sCAAyB,EAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,mCAAmC,OAAO,oCAAoC,CAC/E,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAChB,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,4BAAoB,CAAC;IACxE,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAA,sCAAyB,EAAC,KAAK,CAAC,CAAC;IAE5E,IAAI,CAAC,YAAY,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CACb,iCAAiC,KAAK,oCAAoC,CAC3E,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,YAAY;QAC5B,CAAC,CAAC,GAAG,aAAa,IAAI,gBAAgB,EAAE;QACxC,CAAC,CAAC,GAAG,aAAa,IAAI,gBAAgB,KAAK,cAAc,EAAE,CAAC;IAI9D,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"schema-name.js","sourceRoot":"","sources":["../../src/lib/schema-name.ts"],"names":[],"mappings":";;;AA8BA,sDA+BC;AA7DD,6CAIsB;AAMT,QAAA,oBAAoB,GAAG,SAAS,CAAC;AAE9C,MAAM,aAAa,GAAG,OAAO,CAAC;AAkB9B,SAAgB,qBAAqB,CAAC,OAAe,EAAE,KAAc;IACnE,MAAM,gBAAgB,GAAG,IAAA,sCAAyB,EAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,mCAAmC,OAAO,oCAAoC,CAC/E,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAChB,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,4BAAoB,CAAC;IACxE,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAA,sCAAyB,EAAC,KAAK,CAAC,CAAC;IAE5E,IAAI,CAAC,YAAY,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CACb,iCAAiC,KAAK,oCAAoC,CAC3E,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,YAAY;QAC5B,CAAC,CAAC,GAAG,aAAa,IAAI,gBAAgB,EAAE;QACxC,CAAC,CAAC,GAAG,aAAa,IAAI,gBAAgB,KAAK,cAAc,EAAE,CAAC;IAI9D,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAE9D,OAAO,IAAA,0BAAa,EAAC;QACnB,SAAS;QACT,SAAS,EAAE,2CAA8B;QACzC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;KAC/B,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unscoped-models.d.ts","sourceRoot":"","sources":["../../../src/lib/tenant-isolation/unscoped-models.ts"],"names":[],"mappings":"AAmCA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"unscoped-models.d.ts","sourceRoot":"","sources":["../../../src/lib/tenant-isolation/unscoped-models.ts"],"names":[],"mappings":"AAmCA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAQ1E,MAAM,WAAW,wBAAwB;IAMvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAOxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAGD,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAC9C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,wBAAwB,CAAC,CAClD,CAAC;AAGF,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAMD,qBAAa,6BAA8B,SAAQ,KAAK;IAEtD,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAEvC,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;gBAG5C,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,iBAAiB,EAAE,SAAS,MAAM,EAAE,EACpC,QAAQ,EAAE,MAAM;CASnB;AAMD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,QAAQ,CACd,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,CAAC,CAC1E,EACD,QAAQ,EAAE,MAAM,GACf,SAAS,MAAM,EAAE,CAKnB;AAQD,wBAAgB,kCAAkC,CAChD,YAAY,EAAE,yBAAyB,GACtC,SAAS,kCAAkC,EAAE,CA6B/C;AAGD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,iBAAiB,EAAE,SAAS,MAAM,EAAE,EACpC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACb,MAAM,CAgCR;AAED,MAAM,WAAW,2BAA2B;IAE1C,QAAQ,CAAC,MAAM,EAAE,QAAQ,CACvB,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,SAAS;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC,CAC1E,CAAC;IACF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IAEnC,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC;IAEnD,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;CACxC;AAiBD,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,2BAA2B,GACnC,IAAI,CAgDN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unscoped-models.js","sourceRoot":"","sources":["../../../src/lib/tenant-isolation/unscoped-models.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"unscoped-models.js","sourceRoot":"","sources":["../../../src/lib/tenant-isolation/unscoped-models.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xemahq/biome-database-nest",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.0",
|
|
4
4
|
"description": "Explicit database migration ownership, least-privilege runtime verification, and schema-qualified Prisma wiring for Xema biome services.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Neuralchowder Inc. <developer@xema.dev> (https://xema.dev)",
|
|
@@ -28,13 +28,14 @@
|
|
|
28
28
|
"@types/jest": "^30.0.0",
|
|
29
29
|
"@types/node": "25.2.3",
|
|
30
30
|
"@types/pg": "^8.16.0",
|
|
31
|
-
"@xemahq/identity-client": "^0.
|
|
32
|
-
"@xemahq/kernel-contracts": "^
|
|
31
|
+
"@xemahq/identity-client": "^0.7.0",
|
|
32
|
+
"@xemahq/kernel-contracts": "^1.2.0",
|
|
33
33
|
"@xemahq/xema-decorators": "^0.5.0",
|
|
34
34
|
"jest": "^30.3.0",
|
|
35
35
|
"prettier": "3.6.2",
|
|
36
36
|
"ts-jest": "^29.4.9",
|
|
37
37
|
"typescript": "5.9.3",
|
|
38
|
+
"@xemahq/platform-common": "^0.7.0",
|
|
38
39
|
"@xemahq/service-registry-nest": "0.5.0"
|
|
39
40
|
},
|
|
40
41
|
"peerDependencies": {
|
|
@@ -46,11 +47,11 @@
|
|
|
46
47
|
"@xemahq/identity-client": ">=0.4.0",
|
|
47
48
|
"@xemahq/kernel-contracts": ">=0.13.0",
|
|
48
49
|
"@xemahq/service-registry-nest": ">=0.2.0",
|
|
49
|
-
"@xemahq/xema-decorators": ">=0.2.0"
|
|
50
|
+
"@xemahq/xema-decorators": ">=0.2.0",
|
|
51
|
+
"@xemahq/platform-common": "^0.5.9 || ^0.6.0 || ^0.7.0"
|
|
50
52
|
},
|
|
51
53
|
"dependencies": {
|
|
52
54
|
"@xemahq/migration-runner-prisma": "^0.1.2",
|
|
53
|
-
"@xemahq/platform-common": "^0.6.1",
|
|
54
55
|
"pg": "8.16.3"
|
|
55
56
|
},
|
|
56
57
|
"exports": {
|
|
@@ -68,6 +69,7 @@
|
|
|
68
69
|
"clean": "rm -rf dist",
|
|
69
70
|
"build": "tsc -p tsconfig.build.json",
|
|
70
71
|
"format": "prettier --write \"src/**/*.ts\"",
|
|
72
|
+
"lint": "eslint .",
|
|
71
73
|
"test": "jest",
|
|
72
74
|
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
73
75
|
}
|
package/src/lib/adapter.ts
CHANGED
|
@@ -4,9 +4,10 @@ import {
|
|
|
4
4
|
ensureBiomeDbSearchPath,
|
|
5
5
|
} from '@xemahq/platform-common';
|
|
6
6
|
|
|
7
|
-
import type { BiomeDatabaseConfig } from './config';
|
|
8
7
|
import { resolveBiomeDatabaseConfigFromEnv } from './config';
|
|
9
8
|
|
|
9
|
+
import type { BiomeDatabaseConfig } from './config';
|
|
10
|
+
|
|
10
11
|
const DEFAULT_POOL_MAX = 3;
|
|
11
12
|
|
|
12
13
|
/**
|
|
@@ -47,7 +48,9 @@ function buildBiomeConnectionString(config: BiomeDatabaseConfig): string {
|
|
|
47
48
|
* Constructing the adapter correctly is the ONLY thing this function does, so
|
|
48
49
|
* the correct construction is the only construction a biome can perform.
|
|
49
50
|
*/
|
|
50
|
-
export function createBiomePrismaAdapter(
|
|
51
|
+
export function createBiomePrismaAdapter(
|
|
52
|
+
config: BiomeDatabaseConfig,
|
|
53
|
+
): PrismaPg {
|
|
51
54
|
const connectionString = buildBiomeConnectionString(config);
|
|
52
55
|
return new PrismaPg(
|
|
53
56
|
{
|
|
@@ -80,7 +83,7 @@ export function createBiomePrismaAdapterFromEnv(
|
|
|
80
83
|
const isDefault = dbKey === undefined || dbKey === '' || dbKey === 'primary';
|
|
81
84
|
const upperSuffix = isDefault
|
|
82
85
|
? ''
|
|
83
|
-
: `_${dbKey
|
|
86
|
+
: `_${dbKey.toUpperCase().replace(/[^A-Z0-9]/g, '_')}`;
|
|
84
87
|
|
|
85
88
|
const directUrl = env[`DATABASE_URL${upperSuffix}`];
|
|
86
89
|
const schema = env[`DB_SCHEMA${upperSuffix}`];
|
|
@@ -11,8 +11,12 @@
|
|
|
11
11
|
* (`KERNEL_STATE_TOKEN`) with bounded retry, because the app-wide registry is not
|
|
12
12
|
* yet hydrated at factory time. See that helper for the full rationale.
|
|
13
13
|
*/
|
|
14
|
+
import {
|
|
15
|
+
resolveHttpUrlEagerly,
|
|
16
|
+
type EagerResolveOptions,
|
|
17
|
+
} from '@xemahq/service-registry-nest';
|
|
18
|
+
|
|
14
19
|
import type { KernelState } from '@xemahq/kernel-contracts/kernel-state';
|
|
15
|
-
import { resolveHttpUrlEagerly, type EagerResolveOptions } from '@xemahq/service-registry-nest';
|
|
16
20
|
|
|
17
21
|
/** Registry name under which `org-database-pool-api` self-registers. */
|
|
18
22
|
export const ORG_DATABASE_POOL_SERVICE_NAME = 'org-database-pool-api';
|
|
@@ -30,5 +34,9 @@ export function resolveControlPlaneBaseUrl(
|
|
|
30
34
|
kernelState: KernelState,
|
|
31
35
|
options?: ControlPlaneDiscoveryOptions,
|
|
32
36
|
): Promise<string> {
|
|
33
|
-
return resolveHttpUrlEagerly(
|
|
37
|
+
return resolveHttpUrlEagerly(
|
|
38
|
+
kernelState,
|
|
39
|
+
ORG_DATABASE_POOL_SERVICE_NAME,
|
|
40
|
+
options,
|
|
41
|
+
);
|
|
34
42
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { OnModuleDestroy, OnModuleInit, Type } from '@nestjs/common';
|
|
2
1
|
import { Injectable, Logger } from '@nestjs/common';
|
|
3
2
|
import { getAmbientOrgId } from '@xemahq/platform-common';
|
|
4
3
|
|
|
@@ -19,6 +18,8 @@ import {
|
|
|
19
18
|
type UnscopedModelDeclarations,
|
|
20
19
|
} from '../tenant-isolation/unscoped-models';
|
|
21
20
|
|
|
21
|
+
import type { OnModuleDestroy, OnModuleInit, Type } from '@nestjs/common';
|
|
22
|
+
|
|
22
23
|
/**
|
|
23
24
|
* Minimal structural shape of a generated Prisma `PrismaClient` as far as the
|
|
24
25
|
* lifecycle wrapper cares: it is a constructor whose single (optional) argument
|
|
@@ -306,7 +307,7 @@ export function createBiomePrismaService<TClient extends BiomePrismaClient>(
|
|
|
306
307
|
const value = Reflect.get(target, prop, target);
|
|
307
308
|
return typeof value === 'function' ? value.bind(target) : value;
|
|
308
309
|
},
|
|
309
|
-
})
|
|
310
|
+
});
|
|
310
311
|
}
|
|
311
312
|
|
|
312
313
|
const ambientClient = requireExtends()(
|
|
@@ -344,7 +345,7 @@ export function createBiomePrismaService<TClient extends BiomePrismaClient>(
|
|
|
344
345
|
const value = Reflect.get(target, prop, target);
|
|
345
346
|
return typeof value === 'function' ? value.bind(target) : value;
|
|
346
347
|
},
|
|
347
|
-
})
|
|
348
|
+
});
|
|
348
349
|
}
|
|
349
350
|
|
|
350
351
|
async onModuleInit(): Promise<void> {
|
package/src/lib/schema-name.ts
CHANGED
|
@@ -52,7 +52,7 @@ export function deriveBiomeSchemaName(biomeId: string, dbKey?: string): string {
|
|
|
52
52
|
|
|
53
53
|
// The hash covers the raw parts so the disambiguating suffix is stable across
|
|
54
54
|
// calls and distinguishes inputs that sanitise to the same prefix.
|
|
55
|
-
const hashParts = isDefaultKey ? [biomeId] : [biomeId, dbKey
|
|
55
|
+
const hashParts = isDefaultKey ? [biomeId] : [biomeId, dbKey];
|
|
56
56
|
|
|
57
57
|
return fitIdentifier({
|
|
58
58
|
candidate,
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
* ─────────────────────────────────────────────────────────────────────────────
|
|
35
35
|
*/
|
|
36
36
|
import { TenantIsolationMode } from './tenant-isolation-mode';
|
|
37
|
+
|
|
37
38
|
import type { TenantIsolationLogger } from './tenant-isolation.extension';
|
|
38
39
|
|
|
39
40
|
/**
|
|
@@ -99,7 +100,9 @@ export class UndeclaredUnscopedModelsError extends Error {
|
|
|
99
100
|
* `orgField` — the set the isolation extension can never auto-scope.
|
|
100
101
|
*/
|
|
101
102
|
export function collectUnscopableModels(
|
|
102
|
-
models: Readonly<
|
|
103
|
+
models: Readonly<
|
|
104
|
+
Record<string, { readonly fields: readonly { readonly name: string }[] }>
|
|
105
|
+
>,
|
|
103
106
|
orgField: string,
|
|
104
107
|
): readonly string[] {
|
|
105
108
|
return Object.entries(models)
|