@burdenoff/be-sdk 2026.709.1 → 2026.710.2
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/auth/index.d.ts +2 -1
- package/dist/cache/index.d.ts +1 -1
- package/dist/cache/index.js +1 -1
- package/dist/{chunk-OOHO33FX.js → chunk-3XJUXXES.js} +4 -4
- package/dist/{chunk-OOHO33FX.js.map → chunk-3XJUXXES.js.map} +1 -1
- package/dist/{chunk-UIMPJNWC.js → chunk-7UJXIX4I.js} +7 -3
- package/dist/chunk-7UJXIX4I.js.map +1 -0
- package/dist/{chunk-UYE4IEPT.js → chunk-CAI5GJJ6.js} +51 -11
- package/dist/chunk-CAI5GJJ6.js.map +1 -0
- package/dist/{chunk-5BCCI2FV.js → chunk-GCY2FTHD.js} +3 -3
- package/dist/{chunk-5BCCI2FV.js.map → chunk-GCY2FTHD.js.map} +1 -1
- package/dist/{chunk-IDKU7OGF.js → chunk-GVZ5BDER.js} +4 -4
- package/dist/{chunk-IDKU7OGF.js.map → chunk-GVZ5BDER.js.map} +1 -1
- package/dist/{chunk-WHSIZCJX.js → chunk-LHLOJS52.js} +2 -2
- package/dist/{chunk-WHSIZCJX.js.map → chunk-LHLOJS52.js.map} +1 -1
- package/dist/export/index.js +4 -4
- package/dist/gateway/index.js +3 -3
- package/dist/gateway/security/index.js +1 -1
- package/dist/{index-D3lGLwby.d.ts → index-Bxzzlu4x.d.ts} +5 -43
- package/dist/{index-DkObbJD_.d.ts → index-Mr2ATGnY.d.ts} +1 -0
- package/dist/index.d.ts +4 -3
- package/dist/index.js +10 -10
- package/dist/init/index.js +4 -4
- package/dist/layer/index.js +1 -1
- package/dist/prisma/index.d.ts +2 -1
- package/dist/server/index.d.ts +3 -2
- package/dist/server/index.js +1 -1
- package/dist/{types-CXVleyWq.d.ts → types-DNF8bOx0.d.ts} +2 -10
- package/dist/workspace-extension-TquhDEKU.d.ts +40 -0
- package/package.json +1 -1
- package/dist/chunk-UIMPJNWC.js.map +0 -1
- package/dist/chunk-UYE4IEPT.js.map +0 -1
package/dist/export/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { BaseModuleExporter, PaginationService, convertToCSV, csvToJSON, estimateCSVSize, getCSVHeaders, parseCSV, triggerExportJob } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
1
|
+
export { BaseModuleExporter, PaginationService, convertToCSV, csvToJSON, estimateCSVSize, getCSVHeaders, parseCSV, triggerExportJob } from '../chunk-GCY2FTHD.js';
|
|
2
|
+
import '../chunk-GVZ5BDER.js';
|
|
3
|
+
import '../chunk-LHLOJS52.js';
|
|
4
|
+
import '../chunk-7UJXIX4I.js';
|
|
5
5
|
import '../chunk-VFCMR5GX.js';
|
|
6
6
|
import '../chunk-RZOFS2BQ.js';
|
|
7
7
|
import '../chunk-YFOHAHZE.js';
|
package/dist/gateway/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { CircuitState, GatewayClient, GatewayError, GatewayErrorType, createGatewayClient, createGatewayClientFromEnv } from '../chunk-
|
|
2
|
-
export { security_exports as Security } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { CircuitState, GatewayClient, GatewayError, GatewayErrorType, createGatewayClient, createGatewayClientFromEnv } from '../chunk-GVZ5BDER.js';
|
|
2
|
+
export { security_exports as Security } from '../chunk-LHLOJS52.js';
|
|
3
|
+
import '../chunk-7UJXIX4I.js';
|
|
4
4
|
export { signServiceJwt } from '../chunk-VFCMR5GX.js';
|
|
5
5
|
import '../chunk-RZOFS2BQ.js';
|
|
6
6
|
import '../chunk-YFOHAHZE.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { DEFAULT_ARMOR_CONFIG, DEFAULT_COST_MAP, DEFAULT_TIERS, MemoryValkey, __resetMetricsForTest, __setSecurityValkeyForTest, buildSecurityPlugins, checkRateLimit, createArmorPlugins, createOperationTimeoutPlugin, createOtelPlugin, createQueryComplexityPlugin, createRateLimitPlugin, getMetrics, getSecurityValkey, initializeMetrics, initializeOtel, initializeSecurityValkey, mergeCostMap, resolveActor, resolveSecurityOptionsFromEnv, resolveTiersFromEnv, scrapeMetrics, shutdownOtel } from '../../chunk-
|
|
1
|
+
export { DEFAULT_ARMOR_CONFIG, DEFAULT_COST_MAP, DEFAULT_TIERS, MemoryValkey, __resetMetricsForTest, __setSecurityValkeyForTest, buildSecurityPlugins, checkRateLimit, createArmorPlugins, createOperationTimeoutPlugin, createOtelPlugin, createQueryComplexityPlugin, createRateLimitPlugin, getMetrics, getSecurityValkey, initializeMetrics, initializeOtel, initializeSecurityValkey, mergeCostMap, resolveActor, resolveSecurityOptionsFromEnv, resolveTiersFromEnv, scrapeMetrics, shutdownOtel } from '../../chunk-LHLOJS52.js';
|
|
2
2
|
import '../../chunk-CBZNP6RF.js';
|
|
3
3
|
import '../../chunk-XE4OXN2W.js';
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,44 +1,6 @@
|
|
|
1
1
|
import { P as PrismaClientBase, b as PrismaClientWrapper, c as PrismaClientConfig, a as PrismaClientConstructorOptions, D as DatabaseReturnType, d as DatabaseHealth, C as ConnectionState, e as PrismaEvent, f as PrismaLogDefinition, g as PrismaLogEvent, h as PrismaLogLevel, i as PrismaQueryEvent, j as PrismaTransactionOptions, k as configurePrismaLogging, l as createConnectionPool, m as createPrismaAdapter, n as createPrismaClient, o as ensureServiceApplicationName } from './client-ODOgzzs0.js';
|
|
2
2
|
import { G as GraphEventEmitter } from './prisma-extension-krXnYnrN.js';
|
|
3
|
-
|
|
4
|
-
interface WorkspaceContext {
|
|
5
|
-
workspaceId?: string;
|
|
6
|
-
tenantId?: string;
|
|
7
|
-
actorId?: string;
|
|
8
|
-
actorType?: string;
|
|
9
|
-
organizationId?: string;
|
|
10
|
-
projectId?: string;
|
|
11
|
-
appId?: string;
|
|
12
|
-
onBehalfOf?: string;
|
|
13
|
-
}
|
|
14
|
-
declare function setWorkspaceContext(context: WorkspaceContext): void;
|
|
15
|
-
declare function getWorkspaceContext(): WorkspaceContext | undefined;
|
|
16
|
-
declare function withWorkspaceContext<T>(context: WorkspaceContext, fn: () => Promise<T>): Promise<T>;
|
|
17
|
-
declare function withWorkspaceContextSync<T>(context: WorkspaceContext, fn: () => T): T;
|
|
18
|
-
interface WorkspaceExtensionConfig {
|
|
19
|
-
enabled?: boolean;
|
|
20
|
-
enableReadIsolation?: boolean;
|
|
21
|
-
enableDeleteIsolation?: boolean;
|
|
22
|
-
enableUpdateWhereIsolation?: boolean;
|
|
23
|
-
populateContextJson?: boolean;
|
|
24
|
-
populateCreatedBy?: boolean;
|
|
25
|
-
populateUpdatedBy?: boolean;
|
|
26
|
-
populateTenantId?: boolean;
|
|
27
|
-
excludeModels?: string[];
|
|
28
|
-
excludeModelsFromReadIsolation?: string[];
|
|
29
|
-
strictMode?: boolean;
|
|
30
|
-
allowedUnguardedOperations?: string[];
|
|
31
|
-
debug?: boolean;
|
|
32
|
-
enableApplicationNameTagging?: boolean;
|
|
33
|
-
enableRlsGucTagging?: boolean;
|
|
34
|
-
}
|
|
35
|
-
declare function injectWhereWorkspaceId(where: Record<string, unknown> | undefined, wsCtx?: WorkspaceContext): Record<string, unknown> | undefined;
|
|
36
|
-
type RawPrismaForTagging = {
|
|
37
|
-
$executeRawUnsafe: (query: string, ...values: unknown[]) => Promise<number>;
|
|
38
|
-
};
|
|
39
|
-
declare function maybeTagConnection(rawPrisma: RawPrismaForTagging, wsCtx: WorkspaceContext): Promise<void>;
|
|
40
|
-
declare function maybeSetRlsGuc(rawPrisma: RawPrismaForTagging, wsCtx: WorkspaceContext): Promise<void>;
|
|
41
|
-
declare function addWorkspaceExtension<T>(baseClient: T, config?: WorkspaceExtensionConfig): T;
|
|
3
|
+
import { W as WorkspaceExtensionConfig, a as WorkspaceContext, b as addWorkspaceExtension, g as getWorkspaceContext, i as injectWhereWorkspaceId, m as maybeSetRlsGuc, c as maybeTagConnection, s as setWorkspaceContext, w as withWorkspaceContext, d as withWorkspaceContextSync } from './workspace-extension-TquhDEKU.js';
|
|
42
4
|
|
|
43
5
|
interface DatabaseClientConfig extends PrismaClientConfig {
|
|
44
6
|
productName: string;
|
|
@@ -170,8 +132,8 @@ declare const index_PrismaLogEvent: typeof PrismaLogEvent;
|
|
|
170
132
|
declare const index_PrismaLogLevel: typeof PrismaLogLevel;
|
|
171
133
|
declare const index_PrismaQueryEvent: typeof PrismaQueryEvent;
|
|
172
134
|
declare const index_PrismaTransactionOptions: typeof PrismaTransactionOptions;
|
|
173
|
-
|
|
174
|
-
|
|
135
|
+
declare const index_WorkspaceContext: typeof WorkspaceContext;
|
|
136
|
+
declare const index_WorkspaceExtensionConfig: typeof WorkspaceExtensionConfig;
|
|
175
137
|
declare const index_addWorkspaceExtension: typeof addWorkspaceExtension;
|
|
176
138
|
declare const index_buildContextWhereClause: typeof buildContextWhereClause;
|
|
177
139
|
declare const index_buildContextWhereConditions: typeof buildContextWhereConditions;
|
|
@@ -212,7 +174,7 @@ declare const index_toContextJson: typeof toContextJson;
|
|
|
212
174
|
declare const index_withWorkspaceContext: typeof withWorkspaceContext;
|
|
213
175
|
declare const index_withWorkspaceContextSync: typeof withWorkspaceContextSync;
|
|
214
176
|
declare namespace index {
|
|
215
|
-
export { index_ConnectionState as ConnectionState, type index_ContextFilterInput as ContextFilterInput, type index_DatabaseClient as DatabaseClient, type index_DatabaseClientConfig as DatabaseClientConfig, index_DatabaseHealth as DatabaseHealth, index_DatabaseReturnType as DatabaseReturnType, type index_FieldExtractionOptions as FieldExtractionOptions, type index_FieldExtractionResult as FieldExtractionResult, type index_InputJsonValue as InputJsonValue, type index_JsonValue as JsonValue, type index_ModelFieldsMap as ModelFieldsMap, type index_OperationContext as OperationContext, type index_PoolTuningEnv as PoolTuningEnv, index_PrismaClientBase as PrismaClientBase, index_PrismaClientConfig as PrismaClientConfig, index_PrismaClientConstructorOptions as PrismaClientConstructorOptions, index_PrismaClientWrapper as PrismaClientWrapper, index_PrismaEvent as PrismaEvent, type index_PrismaJsonFilter as PrismaJsonFilter, index_PrismaLogDefinition as PrismaLogDefinition, index_PrismaLogEvent as PrismaLogEvent, index_PrismaLogLevel as PrismaLogLevel, index_PrismaQueryEvent as PrismaQueryEvent, index_PrismaTransactionOptions as PrismaTransactionOptions,
|
|
177
|
+
export { index_ConnectionState as ConnectionState, type index_ContextFilterInput as ContextFilterInput, type index_DatabaseClient as DatabaseClient, type index_DatabaseClientConfig as DatabaseClientConfig, index_DatabaseHealth as DatabaseHealth, index_DatabaseReturnType as DatabaseReturnType, type index_FieldExtractionOptions as FieldExtractionOptions, type index_FieldExtractionResult as FieldExtractionResult, type index_InputJsonValue as InputJsonValue, type index_JsonValue as JsonValue, type index_ModelFieldsMap as ModelFieldsMap, type index_OperationContext as OperationContext, type index_PoolTuningEnv as PoolTuningEnv, index_PrismaClientBase as PrismaClientBase, index_PrismaClientConfig as PrismaClientConfig, index_PrismaClientConstructorOptions as PrismaClientConstructorOptions, index_PrismaClientWrapper as PrismaClientWrapper, index_PrismaEvent as PrismaEvent, type index_PrismaJsonFilter as PrismaJsonFilter, index_PrismaLogDefinition as PrismaLogDefinition, index_PrismaLogEvent as PrismaLogEvent, index_PrismaLogLevel as PrismaLogLevel, index_PrismaQueryEvent as PrismaQueryEvent, index_PrismaTransactionOptions as PrismaTransactionOptions, index_WorkspaceContext as WorkspaceContext, index_WorkspaceExtensionConfig as WorkspaceExtensionConfig, index_addWorkspaceExtension as addWorkspaceExtension, index_buildContextWhereClause as buildContextWhereClause, index_buildContextWhereConditions as buildContextWhereConditions, index_checkDatabaseHealth as checkDatabaseHealth, index_configurePrismaLogging as configurePrismaLogging, index_contextMatches as contextMatches, index_createConnectionPool as createConnectionPool, index_createContextFromSDK as createContextFromSDK, index_createDatabaseClient as createDatabaseClient, index_createDatabaseClientFromEnv as createDatabaseClientFromEnv, index_createPrismaAdapter as createPrismaAdapter, index_createPrismaClient as createPrismaClient, index_ensureServiceApplicationName as ensureServiceApplicationName, index_extractFieldsFromModel as extractFieldsFromModel, index_getAllModelNames as getAllModelNames, index_getDatabaseManager as getDatabaseManager, index_getDatabaseProductName as getDatabaseProductName, index_getDatabaseStats as getDatabaseStats, index_getDatabaseVersion as getDatabaseVersion, index_getDb as getDb, index_getModelFields as getModelFields, index_getWorkspaceContext as getWorkspaceContext, index_hasModel as hasModel, index_initializeDatabase as initializeDatabase, index_initializeDatabaseWithConfig as initializeDatabaseWithConfig, index_injectWhereWorkspaceId as injectWhereWorkspaceId, index_isDatabaseInitialized as isDatabaseInitialized, index_loadGeneratedFields as loadGeneratedFields, index_maybeSetRlsGuc as maybeSetRlsGuc, index_maybeTagConnection as maybeTagConnection, index_mergeContext as mergeContext, index_parseContext as parseContext, index_resetDatabaseManager as resetDatabaseManager, index_resolvePoolTuningFromEnv as resolvePoolTuningFromEnv, index_setWorkspaceContext as setWorkspaceContext, index_testConnection as testConnection, index_toContextJson as toContextJson, index_withWorkspaceContext as withWorkspaceContext, index_withWorkspaceContextSync as withWorkspaceContextSync };
|
|
216
178
|
}
|
|
217
179
|
|
|
218
|
-
export {
|
|
180
|
+
export { resetDatabaseManager as A, resolvePoolTuningFromEnv as B, type ContextFilterInput as C, type DatabaseClient as D, testConnection as E, type FieldExtractionOptions as F, toContextJson as G, type InputJsonValue as I, type JsonValue as J, type ModelFieldsMap as M, type OperationContext as O, type PoolTuningEnv as P, type DatabaseClientConfig as a, type FieldExtractionResult as b, type PrismaJsonFilter as c, buildContextWhereClause as d, buildContextWhereConditions as e, checkDatabaseHealth as f, contextMatches as g, createContextFromSDK as h, index as i, createDatabaseClient as j, createDatabaseClientFromEnv as k, extractFieldsFromModel as l, getAllModelNames as m, getDatabaseManager as n, getDatabaseProductName as o, getDatabaseStats as p, getDatabaseVersion as q, getDb as r, getModelFields as s, hasModel as t, initializeDatabase as u, initializeDatabaseWithConfig as v, isDatabaseInitialized as w, loadGeneratedFields as x, mergeContext as y, parseContext as z };
|
|
@@ -182,6 +182,7 @@ declare class ValkeyGlideProvider implements ICacheProvider {
|
|
|
182
182
|
private scanClusterKeys;
|
|
183
183
|
private getKeys;
|
|
184
184
|
private ensureConnected;
|
|
185
|
+
private withConnectBudget;
|
|
185
186
|
connect(): Promise<void>;
|
|
186
187
|
disconnect(): Promise<void>;
|
|
187
188
|
isConnected(): boolean;
|
package/dist/index.d.ts
CHANGED
|
@@ -19,11 +19,11 @@ export { TemporalClient, TemporalClientConfig, TemporalClientFactory, TemporalWo
|
|
|
19
19
|
export { createInternalClient, createInternalClientForTenant, createInternalClientForWorkspaces } from './client/internal-client.js';
|
|
20
20
|
export { PlanTier, RESOURCE_CAP_DEFAULTS, ResourceCap, ResourceCapDefaults, ResourceCapExceededError, ResourceCapsConfig, ResourceCapsModule, ResourceName, getResourceCaps } from './resource-caps/index.js';
|
|
21
21
|
export { i as Sharing } from './index-kssw5ziY.js';
|
|
22
|
-
export { i as Cache } from './index-
|
|
22
|
+
export { i as Cache } from './index-Mr2ATGnY.js';
|
|
23
23
|
export { i as Middleware } from './index-DSOpj8DI.js';
|
|
24
24
|
export { i as Observability } from './index-4gKQKZ2B.js';
|
|
25
25
|
export { i as GraphQL } from './index-joONjwLt.js';
|
|
26
|
-
export { i as Prisma } from './index-
|
|
26
|
+
export { i as Prisma } from './index-Bxzzlu4x.js';
|
|
27
27
|
export { i as Utils } from './index-PaojfSdd.js';
|
|
28
28
|
export { i as I18n, I as I18nCapableContext, T as Translator, c as createTranslator, g as getLanguage, a as getLocale, h as hasI18n, t } from './index-D4l1u8VR.js';
|
|
29
29
|
export { i as Export } from './index-B4ciT3OZ.js';
|
|
@@ -37,12 +37,13 @@ export { i as FeatureFlags } from './index-BdPnlJ8_.js';
|
|
|
37
37
|
export { i as Captcha, R as RecaptchaVerifyOptions, a as RecaptchaVerifyResult, b as isCaptchaEnabled, v as verifyCaptcha, c as verifyCaptchaIfEnabled } from './index-B70b5mYS.js';
|
|
38
38
|
export { i as Platform } from './index-lcW5eSTp.js';
|
|
39
39
|
export { C as CircuitBreakerConfig, h as DEFAULT_CIRCUIT_BREAKER_CONFIG, i as DEFAULT_GATEWAY_RETRY_CONFIG, D as DEFAULT_GATEWAY_ROUTING, b as DEFAULT_LAYER_RESOURCES, c as DEFAULT_LAYER_STREAMS, f as GatewayRequestHeaders, g as GatewayRetryConfig, G as GatewayRoutingConfig, L as LayerConfig, a as LayerFullConfig, d as LayerGatewayConfig, e as LayerResourceUrls, S as ServiceLayer } from './layer-GNAVXBMf.js';
|
|
40
|
-
import './types-
|
|
40
|
+
import './types-DNF8bOx0.js';
|
|
41
41
|
import 'graphql';
|
|
42
42
|
import 'graphql-yoga';
|
|
43
43
|
import './client-ODOgzzs0.js';
|
|
44
44
|
import '@prisma/adapter-pg';
|
|
45
45
|
import 'pg';
|
|
46
|
+
import './workspace-extension-TquhDEKU.js';
|
|
46
47
|
import './types-C8TbSdEj.js';
|
|
47
48
|
import 'graphql-request';
|
|
48
49
|
import '@envelop/core';
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { ActivityModule, UsageModule, TrackerModule } from './chunk-XN3DNXXV.js';
|
|
2
2
|
export { ActivityModule, TrackerModule, UsageModule } from './chunk-XN3DNXXV.js';
|
|
3
|
-
export {
|
|
3
|
+
export { prisma_exports as Prisma } from './chunk-IDJ7P2O3.js';
|
|
4
4
|
import { RBACModule } from './chunk-S32JOMMW.js';
|
|
5
5
|
export { RBACModule, createRBACDirective, createRBACDirectiveForLayer, createRBACDirectiveFromEnv } from './chunk-S32JOMMW.js';
|
|
6
6
|
export { RESOURCE_CAP_DEFAULTS, ResourceCapExceededError, ResourceCapsModule, getResourceCaps } from './chunk-VDDOGIWY.js';
|
|
7
|
+
import './chunk-MXLCLLCI.js';
|
|
7
8
|
export { sharing_exports as Sharing } from './chunk-XD5ZK727.js';
|
|
8
9
|
export { TemporalClient, TemporalClientFactory, TemporalModule, TemporalWorker, TemporalWorkerFactory, TemporalWorkerManager } from './chunk-IC7YDBGE.js';
|
|
9
10
|
export { instrumentation_exports as Instrumentation } from './chunk-ACYGOENW.js';
|
|
@@ -12,9 +13,8 @@ export { middleware_exports as Middleware } from './chunk-2HANKZZM.js';
|
|
|
12
13
|
import { TenantNotificationsModule, NotificationsModule } from './chunk-ZMCD5XAK.js';
|
|
13
14
|
export { tenant_notifications_exports as Notifications, NotificationsModule } from './chunk-ZMCD5XAK.js';
|
|
14
15
|
export { observability_exports as Observability } from './chunk-5LXDPGDH.js';
|
|
15
|
-
export {
|
|
16
|
-
|
|
17
|
-
export { export_exports as Export } from './chunk-5BCCI2FV.js';
|
|
16
|
+
export { platform_exports as Platform } from './chunk-YCKM7FS7.js';
|
|
17
|
+
export { export_exports as Export } from './chunk-GCY2FTHD.js';
|
|
18
18
|
export { feature_flags_exports as FeatureFlags } from './chunk-MNKU7I2G.js';
|
|
19
19
|
import { GraphModule } from './chunk-ROKCS4QL.js';
|
|
20
20
|
export { graph_exports as Graph, GraphModule } from './chunk-ROKCS4QL.js';
|
|
@@ -27,18 +27,18 @@ export { graphql_exports as GraphQL } from './chunk-X4NELQLV.js';
|
|
|
27
27
|
import './chunk-QLVKMWFA.js';
|
|
28
28
|
import './chunk-MHNA7IS7.js';
|
|
29
29
|
export { i18n_exports as I18n, createTranslator, getLanguage, getLocale, hasI18n, t } from './chunk-ULFFX3YE.js';
|
|
30
|
-
export { init_exports as Init } from './chunk-
|
|
31
|
-
import { GatewayClient, GatewayError, GatewayErrorType } from './chunk-
|
|
32
|
-
export { gateway_exports as Gateway } from './chunk-
|
|
33
|
-
import './chunk-
|
|
34
|
-
export { layer_exports as Layer } from './chunk-
|
|
30
|
+
export { init_exports as Init } from './chunk-3XJUXXES.js';
|
|
31
|
+
import { GatewayClient, GatewayError, GatewayErrorType } from './chunk-GVZ5BDER.js';
|
|
32
|
+
export { gateway_exports as Gateway } from './chunk-GVZ5BDER.js';
|
|
33
|
+
import './chunk-LHLOJS52.js';
|
|
34
|
+
export { layer_exports as Layer } from './chunk-7UJXIX4I.js';
|
|
35
35
|
import './chunk-VFCMR5GX.js';
|
|
36
36
|
import { ContextManager } from './chunk-RZOFS2BQ.js';
|
|
37
37
|
export { ContextManager } from './chunk-RZOFS2BQ.js';
|
|
38
38
|
import { AuthModule } from './chunk-RXMOV3YE.js';
|
|
39
39
|
export { AuthModule } from './chunk-RXMOV3YE.js';
|
|
40
40
|
export { utils_exports as Utils } from './chunk-B7I4TABG.js';
|
|
41
|
-
export { cache_exports as Cache } from './chunk-
|
|
41
|
+
export { cache_exports as Cache } from './chunk-CAI5GJJ6.js';
|
|
42
42
|
export { captcha_exports as Captcha, isCaptchaEnabled, verifyCaptcha, verifyCaptchaIfEnabled } from './chunk-YMZEUTD2.js';
|
|
43
43
|
export { createInternalClient, createInternalClientForTenant, createInternalClientForWorkspaces } from './chunk-VI4VSNTI.js';
|
|
44
44
|
export { crypto_exports as Crypto } from './chunk-SBS4S2PJ.js';
|
package/dist/init/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { getSDKState, initializeBurdenoffSDK, isSDKInitialized, resetSDK } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
1
|
+
export { getSDKState, initializeBurdenoffSDK, isSDKInitialized, resetSDK } from '../chunk-3XJUXXES.js';
|
|
2
|
+
import '../chunk-GVZ5BDER.js';
|
|
3
|
+
import '../chunk-LHLOJS52.js';
|
|
4
|
+
import '../chunk-7UJXIX4I.js';
|
|
5
5
|
import '../chunk-VFCMR5GX.js';
|
|
6
6
|
import '../chunk-RZOFS2BQ.js';
|
|
7
7
|
import '../chunk-YFOHAHZE.js';
|
package/dist/layer/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { LayerManager, createLayerManagerFromEnv, detectLayerFromServiceName, getGatewayUrlForLayer, validateLayerConfig } from '../chunk-
|
|
1
|
+
export { LayerManager, createLayerManagerFromEnv, detectLayerFromServiceName, getGatewayUrlForLayer, validateLayerConfig } from '../chunk-7UJXIX4I.js';
|
|
2
2
|
export { DEFAULT_GATEWAY_ROUTING, DEFAULT_LAYER_RESOURCES, DEFAULT_LAYER_STREAMS } from '../chunk-YFOHAHZE.js';
|
|
3
3
|
import '../chunk-CBZNP6RF.js';
|
|
4
4
|
import '../chunk-XE4OXN2W.js';
|
package/dist/prisma/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { C as ContextFilterInput, D as DatabaseClient, a as DatabaseClientConfig, F as FieldExtractionOptions, b as FieldExtractionResult, I as InputJsonValue, J as JsonValue, M as ModelFieldsMap, O as OperationContext, P as PoolTuningEnv, c as PrismaJsonFilter,
|
|
1
|
+
export { C as ContextFilterInput, D as DatabaseClient, a as DatabaseClientConfig, F as FieldExtractionOptions, b as FieldExtractionResult, I as InputJsonValue, J as JsonValue, M as ModelFieldsMap, O as OperationContext, P as PoolTuningEnv, c as PrismaJsonFilter, d as buildContextWhereClause, e as buildContextWhereConditions, f as checkDatabaseHealth, g as contextMatches, h as createContextFromSDK, j as createDatabaseClient, k as createDatabaseClientFromEnv, l as extractFieldsFromModel, m as getAllModelNames, n as getDatabaseManager, o as getDatabaseProductName, p as getDatabaseStats, q as getDatabaseVersion, r as getDb, s as getModelFields, t as hasModel, u as initializeDatabase, v as initializeDatabaseWithConfig, w as isDatabaseInitialized, x as loadGeneratedFields, y as mergeContext, z as parseContext, A as resetDatabaseManager, B as resolvePoolTuningFromEnv, E as testConnection, G as toContextJson } from '../index-Bxzzlu4x.js';
|
|
2
2
|
export { C as ConnectionState, d as DatabaseHealth, D as DatabaseReturnType, P as PrismaClientBase, c as PrismaClientConfig, a as PrismaClientConstructorOptions, b as PrismaClientWrapper, e as PrismaEvent, f as PrismaLogDefinition, g as PrismaLogEvent, h as PrismaLogLevel, i as PrismaQueryEvent, j as PrismaTransactionOptions, k as configurePrismaLogging, l as createConnectionPool, m as createPrismaAdapter, n as createPrismaClient, o as ensureServiceApplicationName } from '../client-ODOgzzs0.js';
|
|
3
|
+
export { a as WorkspaceContext, W as WorkspaceExtensionConfig, b as addWorkspaceExtension, g as getWorkspaceContext, i as injectWhereWorkspaceId, m as maybeSetRlsGuc, c as maybeTagConnection, s as setWorkspaceContext, w as withWorkspaceContext, d as withWorkspaceContextSync } from '../workspace-extension-TquhDEKU.js';
|
|
3
4
|
import '../prisma-extension-krXnYnrN.js';
|
|
4
5
|
import '@prisma/adapter-pg';
|
|
5
6
|
import 'pg';
|
package/dist/server/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { W as WorkspaceSecret, I as IActor, J as JWTPayload, S as ServerDefinition, a as ServerInstance, b as ITenant, G as GraphQLContext, Y as YogaPlugin } from '../types-
|
|
2
|
-
export { C as ConsentContext, E as ElysiaApp, c as IContextFilterInput, d as IOperationContext, e as IOrganization, f as IProduct, g as IProject, h as ITracking, i as IWorkspace, M as ModuleGraphConfig, P as PrismaClientConstructor, R as RESTEndpoint, j as ServerConfig, k as ServerI18nConfig, l as ServerInfo, m as WspaceGraphQLContext } from '../types-
|
|
1
|
+
import { W as WorkspaceSecret, I as IActor, J as JWTPayload, S as ServerDefinition, a as ServerInstance, b as ITenant, G as GraphQLContext, Y as YogaPlugin } from '../types-DNF8bOx0.js';
|
|
2
|
+
export { C as ConsentContext, E as ElysiaApp, c as IContextFilterInput, d as IOperationContext, e as IOrganization, f as IProduct, g as IProject, h as ITracking, i as IWorkspace, M as ModuleGraphConfig, P as PrismaClientConstructor, R as RESTEndpoint, j as ServerConfig, k as ServerI18nConfig, l as ServerInfo, m as WspaceGraphQLContext } from '../types-DNF8bOx0.js';
|
|
3
3
|
import * as jose from 'jose';
|
|
4
4
|
import { VerifyOptions } from 'jsonwebtoken';
|
|
5
5
|
import { I as I18n } from '../i18n-DrdPTann.js';
|
|
@@ -7,6 +7,7 @@ import { GraphQLError } from 'graphql';
|
|
|
7
7
|
export { I as I18nContext, L as LocaleCode } from '../types-C8TbSdEj.js';
|
|
8
8
|
export { P as PrismaClientBase } from '../client-ODOgzzs0.js';
|
|
9
9
|
import 'graphql-yoga';
|
|
10
|
+
import '../workspace-extension-TquhDEKU.js';
|
|
10
11
|
import '@prisma/adapter-pg';
|
|
11
12
|
import 'pg';
|
|
12
13
|
|
package/dist/server/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createHumanReadableErrorPlugin, formatHttpError, normalizeGraphQLResponse, createHttpErrorResponse } from '../chunk-OQLDXOZ3.js';
|
|
2
2
|
export { UserFacingGraphQLError, createHttpErrorResponse, createHumanReadableErrorPlugin, createWorkspaceGuardPlugin, formatHttpError, normalizeError, normalizeExecutionResultErrors, normalizeGraphQLResponse, normalizeGraphQLResponsePayload, toUserFacingGraphQLError } from '../chunk-OQLDXOZ3.js';
|
|
3
3
|
import { getWorkspaceQuotaRegistry } from '../chunk-32KT5RF2.js';
|
|
4
|
-
import { getMetricsRegistry } from '../chunk-REF7PANB.js';
|
|
5
4
|
import { setWorkspaceContext } from '../chunk-MXLCLLCI.js';
|
|
5
|
+
import { getMetricsRegistry } from '../chunk-REF7PANB.js';
|
|
6
6
|
import { I18n } from '../chunk-ULFFX3YE.js';
|
|
7
7
|
import { ContextManager } from '../chunk-RZOFS2BQ.js';
|
|
8
8
|
import { logger } from '../chunk-CBZNP6RF.js';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { GraphQLSchema } from 'graphql';
|
|
2
2
|
import { PubSub } from 'graphql-yoga';
|
|
3
3
|
import { P as PrismaClientBase, a as PrismaClientConstructorOptions } from './client-ODOgzzs0.js';
|
|
4
|
+
import { W as WorkspaceExtensionConfig } from './workspace-extension-TquhDEKU.js';
|
|
4
5
|
import { I as I18nContext, L as LocaleCode } from './types-C8TbSdEj.js';
|
|
5
6
|
|
|
6
7
|
interface IActor {
|
|
@@ -144,16 +145,7 @@ interface ServerDefinition {
|
|
|
144
145
|
restEndpoints?: RESTEndpoint[];
|
|
145
146
|
yogaPlugins?: YogaPlugin[];
|
|
146
147
|
buildContext?: (defaultContext: GraphQLContext) => Promise<GraphQLContext> | GraphQLContext;
|
|
147
|
-
workspaceExtensionConfig?:
|
|
148
|
-
strictMode?: boolean;
|
|
149
|
-
excludeModels?: string[];
|
|
150
|
-
excludeModelsFromReadIsolation?: string[];
|
|
151
|
-
allowedUnguardedOperations?: string[];
|
|
152
|
-
enableReadIsolation?: boolean;
|
|
153
|
-
enableDeleteIsolation?: boolean;
|
|
154
|
-
enableUpdateWhereIsolation?: boolean;
|
|
155
|
-
debug?: boolean;
|
|
156
|
-
};
|
|
148
|
+
workspaceExtensionConfig?: WorkspaceExtensionConfig;
|
|
157
149
|
disableWorkspaceExtension?: boolean;
|
|
158
150
|
onShutdown?: () => Promise<void>;
|
|
159
151
|
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
interface WorkspaceContext {
|
|
2
|
+
workspaceId?: string;
|
|
3
|
+
tenantId?: string;
|
|
4
|
+
actorId?: string;
|
|
5
|
+
actorType?: string;
|
|
6
|
+
organizationId?: string;
|
|
7
|
+
projectId?: string;
|
|
8
|
+
appId?: string;
|
|
9
|
+
onBehalfOf?: string;
|
|
10
|
+
}
|
|
11
|
+
declare function setWorkspaceContext(context: WorkspaceContext): void;
|
|
12
|
+
declare function getWorkspaceContext(): WorkspaceContext | undefined;
|
|
13
|
+
declare function withWorkspaceContext<T>(context: WorkspaceContext, fn: () => Promise<T>): Promise<T>;
|
|
14
|
+
declare function withWorkspaceContextSync<T>(context: WorkspaceContext, fn: () => T): T;
|
|
15
|
+
interface WorkspaceExtensionConfig {
|
|
16
|
+
enabled?: boolean;
|
|
17
|
+
enableReadIsolation?: boolean;
|
|
18
|
+
enableDeleteIsolation?: boolean;
|
|
19
|
+
enableUpdateWhereIsolation?: boolean;
|
|
20
|
+
populateContextJson?: boolean;
|
|
21
|
+
populateCreatedBy?: boolean;
|
|
22
|
+
populateUpdatedBy?: boolean;
|
|
23
|
+
populateTenantId?: boolean;
|
|
24
|
+
excludeModels?: string[];
|
|
25
|
+
excludeModelsFromReadIsolation?: string[];
|
|
26
|
+
strictMode?: boolean;
|
|
27
|
+
allowedUnguardedOperations?: string[];
|
|
28
|
+
debug?: boolean;
|
|
29
|
+
enableApplicationNameTagging?: boolean;
|
|
30
|
+
enableRlsGucTagging?: boolean;
|
|
31
|
+
}
|
|
32
|
+
declare function injectWhereWorkspaceId(where: Record<string, unknown> | undefined, wsCtx?: WorkspaceContext): Record<string, unknown> | undefined;
|
|
33
|
+
type RawPrismaForTagging = {
|
|
34
|
+
$executeRawUnsafe: (query: string, ...values: unknown[]) => Promise<number>;
|
|
35
|
+
};
|
|
36
|
+
declare function maybeTagConnection(rawPrisma: RawPrismaForTagging, wsCtx: WorkspaceContext): Promise<void>;
|
|
37
|
+
declare function maybeSetRlsGuc(rawPrisma: RawPrismaForTagging, wsCtx: WorkspaceContext): Promise<void>;
|
|
38
|
+
declare function addWorkspaceExtension<T>(baseClient: T, config?: WorkspaceExtensionConfig): T;
|
|
39
|
+
|
|
40
|
+
export { type WorkspaceExtensionConfig as W, type WorkspaceContext as a, addWorkspaceExtension as b, maybeTagConnection as c, withWorkspaceContextSync as d, getWorkspaceContext as g, injectWhereWorkspaceId as i, maybeSetRlsGuc as m, setWorkspaceContext as s, withWorkspaceContext as w };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@burdenoff/be-sdk",
|
|
3
|
-
"version": "2026.
|
|
3
|
+
"version": "2026.710.2",
|
|
4
4
|
"description": "Backend SDK for Burdenoff products providing unified access to notifications, RBAC, activity tracking, usage monitoring, and more",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/layer/index.ts"],"names":["LayerManager","config","gatewayConfig","resourceConfig","routingConfig","serviceIdentity","serviceName","DEFAULT_GATEWAY_ROUTING","layer","resolveGatewayConfig","resolveResourceConfig","logger","debug","envPrefix","toUpperCase","internalGatewayUrl","process","env","internalGateway","host","port","graphqlPath","crossLayerEnvPrefix","crossLayerGatewayUrl","crossLayerGateway","defaults","DEFAULT_LAYER_RESOURCES","eventQueueUrl","valkeyUrl","temporalAddress","temporalNamespace","rbacGatewayUrl","getLayer","getServiceName","getServiceIdentity","getInternalGatewayUrl","getCrossLayerGatewayUrl","getEventQueueUrl","getValkeyUrl","getTemporalAddress","getTemporalNamespace","getRbacGatewayUrl","getDefaultStreams","DEFAULT_LAYER_STREAMS","getFullConfig","gateways","resources","isWspaceLayer","isGlobalLayer","getOppositeLayer","createLayerManagerFromEnv","Error","detectLayerFromServiceName","startsWith","undefined","getGatewayUrlForLayer","sourceLayer","targetLayer","sourceManager","routing","validateLayerConfig","expectedPrefix","warn"],"mappings":"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","file":"chunk-UIMPJNWC.js","sourcesContent":["/**\n * Layer Detection and Configuration Module\n *\n * Provides layer-aware configuration and gateway URL resolution\n * for wspace (workspace) and global (tenant) service layers.\n *\n * @module layer\n * @category Configuration\n *\n * @example\n * ```typescript\n * import { LayerManager } from '@burdenoff/be-sdk/layer';\n *\n * // Create layer manager for a wspace service\n * const layer = new LayerManager({\n * layer: 'wspace',\n * serviceName: 'wspace-tags-svc',\n * });\n *\n * // Get gateway URLs\n * const internalUrl = layer.getInternalGatewayUrl(); // wspace-int-gateway\n * const crossLayerUrl = layer.getCrossLayerGatewayUrl(); // global-public-gateway\n * ```\n */\n\nimport {\n type ServiceLayer,\n type LayerConfig,\n type LayerGatewayConfig,\n type LayerResourceUrls,\n type LayerFullConfig,\n type GatewayRoutingConfig,\n DEFAULT_GATEWAY_ROUTING,\n DEFAULT_LAYER_RESOURCES,\n DEFAULT_LAYER_STREAMS,\n} from '../types/layer.js';\nimport { logger } from '../logger/index.js';\n\n/**\n * Layer Manager - Provides layer-aware configuration and URL resolution\n */\nexport class LayerManager {\n private config: LayerConfig;\n private gatewayConfig: LayerGatewayConfig;\n private resourceConfig: LayerResourceUrls;\n private routingConfig: GatewayRoutingConfig;\n\n constructor(config: LayerConfig) {\n this.config = {\n serviceIdentity: config.serviceName, // Default to service name\n ...config,\n };\n\n // Load routing config for layer\n this.routingConfig = DEFAULT_GATEWAY_ROUTING[config.layer];\n\n // Initialize gateway config\n this.gatewayConfig = this.resolveGatewayConfig();\n\n // Initialize resource config\n this.resourceConfig = this.resolveResourceConfig();\n\n logger.debug('[LayerManager] Initialized', {\n layer: this.config.layer,\n serviceName: this.config.serviceName,\n serviceIdentity: this.config.serviceIdentity,\n });\n }\n\n /**\n * Resolve gateway configuration from environment or defaults\n */\n private resolveGatewayConfig(): LayerGatewayConfig {\n const envPrefix = this.config.layer.toUpperCase();\n\n // Internal gateway URL\n const internalGatewayUrl =\n process.env[`${envPrefix}_INT_GATEWAY_URL`] ||\n `http://${this.routingConfig.internalGateway.host}:${this.routingConfig.internalGateway.port}${this.routingConfig.internalGateway.graphqlPath}`;\n\n // Cross-layer gateway URL\n const crossLayerEnvPrefix = this.config.layer === 'wspace' ? 'GLOBAL' : 'WSPACE';\n const crossLayerGatewayUrl =\n process.env[`${crossLayerEnvPrefix}_PUBLIC_GATEWAY_URL`] ||\n `http://${this.routingConfig.crossLayerGateway.host}:${this.routingConfig.crossLayerGateway.port}${this.routingConfig.crossLayerGateway.graphqlPath}`;\n\n return {\n internalGatewayUrl,\n crossLayerGatewayUrl,\n };\n }\n\n /**\n * Resolve resource configuration from environment or defaults\n */\n private resolveResourceConfig(): LayerResourceUrls {\n const envPrefix = this.config.layer.toUpperCase();\n const defaults = DEFAULT_LAYER_RESOURCES[this.config.layer];\n\n return {\n // Event queue is fleet-shared (ACA Managed Redis or local shared-valkey).\n // REDIS_URL (set in ACA KV / local .env) always wins; the per-layer\n // default is only the local-dev compose fallback.\n eventQueueUrl: process.env['REDIS_URL'] || defaults.eventQueueUrl,\n valkeyUrl: process.env[`${envPrefix}_VALKEY_URL`] || defaults.valkeyUrl,\n temporalAddress: process.env[`${envPrefix}_TEMPORAL_ADDRESS`] || defaults.temporalAddress,\n temporalNamespace: process.env[`${envPrefix}_TEMPORAL_NAMESPACE`] || defaults.temporalNamespace,\n rbacGatewayUrl: process.env[`${envPrefix}_RBAC_GATEWAY_URL`] || defaults.rbacGatewayUrl,\n };\n }\n\n /**\n * Get the layer type\n */\n getLayer(): ServiceLayer {\n return this.config.layer;\n }\n\n /**\n * Get the service name\n */\n getServiceName(): string {\n return this.config.serviceName;\n }\n\n /**\n * Get the service identity (for bypass headers)\n */\n getServiceIdentity(): string {\n return this.config.serviceIdentity || this.config.serviceName;\n }\n\n /**\n * Get internal gateway URL (same layer M2M calls)\n */\n getInternalGatewayUrl(): string {\n return this.gatewayConfig.internalGatewayUrl;\n }\n\n /**\n * Get cross-layer gateway URL (cross layer calls via public gateway)\n */\n getCrossLayerGatewayUrl(): string {\n return this.gatewayConfig.crossLayerGatewayUrl;\n }\n\n /**\n * Get event queue (Redis Streams) URL for this layer\n */\n getEventQueueUrl(): string {\n return this.resourceConfig.eventQueueUrl;\n }\n\n /**\n * Get Valkey URL for this layer\n */\n getValkeyUrl(): string {\n return this.resourceConfig.valkeyUrl;\n }\n\n /**\n * Get Temporal address for this layer\n */\n getTemporalAddress(): string {\n return this.resourceConfig.temporalAddress;\n }\n\n /**\n * Get Temporal namespace for this layer\n */\n getTemporalNamespace(): string {\n return this.resourceConfig.temporalNamespace;\n }\n\n /**\n * Get RBAC gateway URL for this layer\n */\n getRbacGatewayUrl(): string {\n return this.resourceConfig.rbacGatewayUrl;\n }\n\n /**\n * Get default streams for this layer\n */\n getDefaultStreams(): Array<{ name: string; subjects: string[]; description?: string }> {\n return DEFAULT_LAYER_STREAMS[this.config.layer];\n }\n\n /**\n * Get full configuration\n */\n getFullConfig(): LayerFullConfig {\n return {\n ...this.config,\n gateways: this.gatewayConfig,\n resources: this.resourceConfig,\n };\n }\n\n /**\n * Check if this is a wspace layer service\n */\n isWspaceLayer(): boolean {\n return this.config.layer === 'wspace';\n }\n\n /**\n * Check if this is a global layer service\n */\n isGlobalLayer(): boolean {\n return this.config.layer === 'global';\n }\n\n /**\n * Get the opposite layer\n */\n getOppositeLayer(): ServiceLayer {\n return this.config.layer === 'wspace' ? 'global' : 'wspace';\n }\n}\n\n/**\n * Create LayerManager from environment variables\n *\n * Environment variables:\n * - SERVICE_LAYER: 'wspace' | 'global'\n * - SERVICE_NAME: Service name (e.g., 'wspace-tags-svc')\n * - SERVICE_IDENTITY: Service identity for bypass headers (defaults to SERVICE_NAME)\n *\n * @throws Error if SERVICE_LAYER is not set or invalid\n */\nexport function createLayerManagerFromEnv(): LayerManager {\n const layer = process.env['SERVICE_LAYER'] as ServiceLayer;\n\n if (!layer || (layer !== 'wspace' && layer !== 'global')) {\n throw new Error(\n `[LayerManager] Invalid or missing SERVICE_LAYER environment variable. ` +\n `Expected 'wspace' or 'global', got '${layer}'`\n );\n }\n\n const serviceName = process.env['SERVICE_NAME'];\n if (!serviceName) {\n throw new Error('[LayerManager] SERVICE_NAME environment variable is required');\n }\n\n const serviceIdentity = process.env['SERVICE_IDENTITY'] || serviceName;\n\n return new LayerManager({\n layer,\n serviceName,\n serviceIdentity,\n });\n}\n\n/**\n * Detect layer from service name\n *\n * @param serviceName - Service name (e.g., 'wspace-tags-svc', 'global-auth-svc')\n * @returns Detected layer or undefined if unable to detect\n */\nexport function detectLayerFromServiceName(serviceName: string): ServiceLayer | undefined {\n if (serviceName.startsWith('wspace-')) {\n return 'wspace';\n }\n if (serviceName.startsWith('global-')) {\n return 'global';\n }\n return undefined;\n}\n\n/**\n * Get gateway URL for a target layer from a source layer\n *\n * @param sourceLayer - Layer making the call\n * @param targetLayer - Layer being called\n * @param sourceManager - LayerManager for the source layer (optional, for URL resolution)\n * @returns Gateway URL to use for the call\n */\nexport function getGatewayUrlForLayer(\n sourceLayer: ServiceLayer,\n targetLayer: ServiceLayer,\n sourceManager?: LayerManager\n): string {\n // Same layer = internal gateway\n if (sourceLayer === targetLayer) {\n if (sourceManager) {\n return sourceManager.getInternalGatewayUrl();\n }\n const routing = DEFAULT_GATEWAY_ROUTING[sourceLayer];\n return `http://${routing.internalGateway.host}:${routing.internalGateway.port}${routing.internalGateway.graphqlPath}`;\n }\n\n // Different layer = cross-layer public gateway\n if (sourceManager) {\n return sourceManager.getCrossLayerGatewayUrl();\n }\n const routing = DEFAULT_GATEWAY_ROUTING[sourceLayer];\n return `http://${routing.crossLayerGateway.host}:${routing.crossLayerGateway.port}${routing.crossLayerGateway.graphqlPath}`;\n}\n\n/**\n * Validate layer configuration\n *\n * @param config - Layer configuration to validate\n * @throws Error if configuration is invalid\n */\nexport function validateLayerConfig(config: LayerConfig): void {\n if (!config.layer) {\n throw new Error('[LayerManager] layer is required');\n }\n if (config.layer !== 'wspace' && config.layer !== 'global') {\n throw new Error(`[LayerManager] Invalid layer '${config.layer}'. Must be 'wspace' or 'global'`);\n }\n if (!config.serviceName) {\n throw new Error('[LayerManager] serviceName is required');\n }\n\n // Validate naming convention\n const expectedPrefix = `${config.layer}-`;\n if (!config.serviceName.startsWith(expectedPrefix)) {\n logger.warn('[LayerManager] Service name does not follow naming convention', {\n serviceName: config.serviceName,\n expectedPrefix,\n layer: config.layer,\n });\n }\n}\n\n// Re-export types for convenience\nexport type {\n ServiceLayer,\n LayerConfig,\n LayerGatewayConfig,\n LayerResourceUrls,\n LayerFullConfig,\n GatewayRoutingConfig,\n} from '../types/layer.js';\n\nexport { DEFAULT_GATEWAY_ROUTING, DEFAULT_LAYER_RESOURCES, DEFAULT_LAYER_STREAMS } from '../types/layer.js';\n"]}
|