@lucern/sdk 0.3.0-alpha.2 → 0.3.0-alpha.4
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/adminClient.d.ts +2 -0
- package/dist/adminClient.js +195 -3
- package/dist/adminClient.js.map +1 -1
- package/dist/answersClient.d.ts +2 -0
- package/dist/answersClient.js +195 -3
- package/dist/answersClient.js.map +1 -1
- package/dist/audiencesClient.d.ts +2 -0
- package/dist/audiencesClient.js +195 -3
- package/dist/audiencesClient.js.map +1 -1
- package/dist/auditClient.d.ts +2 -0
- package/dist/auditClient.js +197 -5
- package/dist/auditClient.js.map +1 -1
- package/dist/authContext.d.ts +56 -0
- package/dist/authContext.js +170 -0
- package/dist/authContext.js.map +1 -0
- package/dist/authDeviceClient.d.ts +49 -0
- package/dist/authDeviceClient.js +108 -0
- package/dist/authDeviceClient.js.map +1 -0
- package/dist/beliefs/index.d.ts +19 -2
- package/dist/beliefs/index.js +2648 -327
- package/dist/beliefs/index.js.map +1 -1
- package/dist/beliefsClient.d.ts +2 -0
- package/dist/beliefsClient.js +199 -7
- package/dist/beliefsClient.js.map +1 -1
- package/dist/boundaryClientSurface.d.ts +20 -0
- package/dist/boundaryClientSurface.js +66 -0
- package/dist/boundaryClientSurface.js.map +1 -0
- package/dist/{client-B6aWUUwp.d.ts → client-DOLqClbU.d.ts} +548 -9
- package/dist/client.d.ts +20 -3
- package/dist/client.js +2648 -327
- package/dist/client.js.map +1 -1
- package/dist/contextClient.d.ts +2 -0
- package/dist/contextClient.js +201 -9
- package/dist/contextClient.js.map +1 -1
- package/dist/contracts/api-enums.contract.d.ts +1 -1
- package/dist/contracts/api-enums.contract.js.map +1 -1
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.js +104 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/mcpTools.d.ts +46 -1
- package/dist/contracts/mcpTools.js +102 -0
- package/dist/contracts/mcpTools.js.map +1 -1
- package/dist/contradictions/index.d.ts +19 -2
- package/dist/contradictions/index.js +2648 -327
- package/dist/contradictions/index.js.map +1 -1
- package/dist/coreClient.d.ts +9 -0
- package/dist/coreClient.js +195 -3
- package/dist/coreClient.js.map +1 -1
- package/dist/decisions/index.d.ts +19 -2
- package/dist/decisions/index.js +2648 -327
- package/dist/decisions/index.js.map +1 -1
- package/dist/decisionsClient.d.ts +2 -0
- package/dist/decisionsClient.js +198 -6
- package/dist/decisionsClient.js.map +1 -1
- package/dist/edges/index.d.ts +19 -2
- package/dist/edges/index.js +2648 -327
- package/dist/edges/index.js.map +1 -1
- package/dist/embeddingsClient.d.ts +106 -0
- package/dist/embeddingsClient.js +708 -0
- package/dist/embeddingsClient.js.map +1 -0
- package/dist/eventingClient.d.ts +96 -0
- package/dist/eventingClient.js +705 -0
- package/dist/eventingClient.js.map +1 -0
- package/dist/eventsCore.d.ts +2 -0
- package/dist/eventsCore.js +195 -3
- package/dist/eventsCore.js.map +1 -1
- package/dist/evidence/index.d.ts +19 -2
- package/dist/evidence/index.js +2648 -327
- package/dist/evidence/index.js.map +1 -1
- package/dist/evidenceClient.d.ts +2 -0
- package/dist/evidenceClient.js +195 -3
- package/dist/evidenceClient.js.map +1 -1
- package/dist/gatewayFacades.d.ts +38 -3
- package/dist/gatewayFacades.js +371 -12
- package/dist/gatewayFacades.js.map +1 -1
- package/dist/graphAnalysisClient.d.ts +147 -0
- package/dist/graphAnalysisClient.js +756 -0
- package/dist/graphAnalysisClient.js.map +1 -0
- package/dist/graphClient.d.ts +2 -0
- package/dist/graphClient.js +202 -10
- package/dist/graphClient.js.map +1 -1
- package/dist/graphRecommendationsClient.d.ts +56 -0
- package/dist/graphRecommendationsClient.js +646 -0
- package/dist/graphRecommendationsClient.js.map +1 -0
- package/dist/graphStateClassifierClient.d.ts +73 -0
- package/dist/graphStateClassifierClient.js +694 -0
- package/dist/graphStateClassifierClient.js.map +1 -0
- package/dist/harnessClient.d.ts +2 -0
- package/dist/harnessClient.js +197 -5
- package/dist/harnessClient.js.map +1 -1
- package/dist/identityClient.d.ts +89 -3
- package/dist/identityClient.js +363 -4
- package/dist/identityClient.js.map +1 -1
- package/dist/index.d.ts +23 -4
- package/dist/index.js +3098 -353
- package/dist/index.js.map +1 -1
- package/dist/infisicalRuntime.d.ts +42 -0
- package/dist/infisicalRuntime.js +291 -0
- package/dist/infisicalRuntime.js.map +1 -0
- package/dist/jobsClient.d.ts +98 -0
- package/dist/jobsClient.js +704 -0
- package/dist/jobsClient.js.map +1 -0
- package/dist/learningClient.d.ts +2 -0
- package/dist/learningClient.js +197 -5
- package/dist/learningClient.js.map +1 -1
- package/dist/lenses/index.d.ts +43 -2
- package/dist/lenses/index.js +2648 -327
- package/dist/lenses/index.js.map +1 -1
- package/dist/mcpClient.d.ts +28 -0
- package/dist/mcpClient.js +650 -0
- package/dist/mcpClient.js.map +1 -0
- package/dist/modelRuntimeClient.d.ts +72 -0
- package/dist/modelRuntimeClient.js +681 -0
- package/dist/modelRuntimeClient.js.map +1 -0
- package/dist/nodes/index.d.ts +37 -2
- package/dist/nodes/index.js +2648 -327
- package/dist/nodes/index.js.map +1 -1
- package/dist/ontologies/index.d.ts +19 -2
- package/dist/ontologies/index.js +2648 -327
- package/dist/ontologies/index.js.map +1 -1
- package/dist/ontologyClient.d.ts +2 -0
- package/dist/ontologyClient.js +195 -3
- package/dist/ontologyClient.js.map +1 -1
- package/dist/ontologyLinksClient.d.ts +71 -0
- package/dist/ontologyLinksClient.js +675 -0
- package/dist/ontologyLinksClient.js.map +1 -0
- package/dist/orgGraphSearchClient.d.ts +85 -0
- package/dist/orgGraphSearchClient.js +652 -0
- package/dist/orgGraphSearchClient.js.map +1 -0
- package/dist/packRuntime.d.ts +1 -2
- package/dist/packsClient.d.ts +2 -0
- package/dist/packsClient.js +195 -3
- package/dist/packsClient.js.map +1 -1
- package/dist/policyClient.d.ts +2 -0
- package/dist/policyClient.js +195 -3
- package/dist/policyClient.js.map +1 -1
- package/dist/questions/index.d.ts +19 -2
- package/dist/questions/index.js +2648 -327
- package/dist/questions/index.js.map +1 -1
- package/dist/reportsClient.d.ts +2 -0
- package/dist/reportsClient.js +197 -5
- package/dist/reportsClient.js.map +1 -1
- package/dist/schemaClient.d.ts +2 -0
- package/dist/schemaClient.js +195 -3
- package/dist/schemaClient.js.map +1 -1
- package/dist/sdkSurface.d.ts +2 -0
- package/dist/sourcesClient.d.ts +2 -0
- package/dist/sourcesClient.js +195 -3
- package/dist/sourcesClient.js.map +1 -1
- package/dist/telemetryClient.d.ts +94 -0
- package/dist/telemetryClient.js +719 -0
- package/dist/telemetryClient.js.map +1 -0
- package/dist/toolRegistryClient.d.ts +107 -0
- package/dist/toolRegistryClient.js +733 -0
- package/dist/toolRegistryClient.js.map +1 -0
- package/dist/topics/index.d.ts +19 -2
- package/dist/topics/index.js +2648 -327
- package/dist/topics/index.js.map +1 -1
- package/dist/topicsClient.d.ts +2 -0
- package/dist/topicsClient.js +200 -8
- package/dist/topicsClient.js.map +1 -1
- package/dist/workflowClient.d.ts +43 -7
- package/dist/workflowClient.js +200 -8
- package/dist/workflowClient.js.map +1 -1
- package/dist/worktrees/index.d.ts +43 -2
- package/dist/worktrees/index.js +2648 -327
- package/dist/worktrees/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import * as tool_contracts_star from '@lucern/contracts/tool-contracts';
|
|
2
|
+
import { LUCERN_OPERATION_MANIFEST } from '@lucern/contracts/function-registry/manifest';
|
|
2
3
|
|
|
3
4
|
var __defProp = Object.defineProperty;
|
|
4
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
7
12
|
var __copyProps = (to, from, except, desc) => {
|
|
8
13
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
9
14
|
for (let key of __getOwnPropNames(from))
|
|
@@ -16,6 +21,15 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
|
|
|
16
21
|
|
|
17
22
|
// src/contracts/mcpTools.ts
|
|
18
23
|
var mcpTools_exports = {};
|
|
24
|
+
__export(mcpTools_exports, {
|
|
25
|
+
MCP_ALWAYS_ALLOWED_TOOL_NAMES: () => MCP_ALWAYS_ALLOWED_TOOL_NAMES,
|
|
26
|
+
buildMcpToolContracts: () => buildMcpToolContracts,
|
|
27
|
+
buildMcpToolManifest: () => buildMcpToolManifest,
|
|
28
|
+
getMcpToolExposure: () => getMcpToolExposure,
|
|
29
|
+
isMcpToolAllowed: () => isMcpToolAllowed,
|
|
30
|
+
mcpContractToInputSchema: () => mcpContractToInputSchema,
|
|
31
|
+
mcpContractToManifestEntry: () => mcpContractToManifestEntry
|
|
32
|
+
});
|
|
19
33
|
|
|
20
34
|
// src/contracts/tool-contracts.ts
|
|
21
35
|
var tool_contracts_exports = {};
|
|
@@ -23,5 +37,93 @@ __reExport(tool_contracts_exports, tool_contracts_star);
|
|
|
23
37
|
|
|
24
38
|
// src/contracts/mcpTools.ts
|
|
25
39
|
__reExport(mcpTools_exports, tool_contracts_exports);
|
|
40
|
+
var OPERATION_MANIFEST = LUCERN_OPERATION_MANIFEST;
|
|
41
|
+
var MCP_ALWAYS_ALLOWED_TOOL_NAMES = ["identity_whoami"];
|
|
42
|
+
function getMcpToolExposure(toolName) {
|
|
43
|
+
return OPERATION_MANIFEST[toolName]?.surfaces.mcp ?? "none";
|
|
44
|
+
}
|
|
45
|
+
function decorateMcpToolContract(toolName, contract) {
|
|
46
|
+
const exposure = getMcpToolExposure(toolName);
|
|
47
|
+
if (exposure === "none") {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
return exposure === "internal" || contract.internal ? { ...contract, internal: true } : contract;
|
|
51
|
+
}
|
|
52
|
+
function buildMcpToolContracts(options = {}) {
|
|
53
|
+
const merged = {
|
|
54
|
+
...tool_contracts_exports.MCP_TOOL_CONTRACTS,
|
|
55
|
+
...options.extensions ?? {}
|
|
56
|
+
};
|
|
57
|
+
return Object.fromEntries(
|
|
58
|
+
Object.entries(merged).flatMap(([toolName, contract]) => {
|
|
59
|
+
const decorated = decorateMcpToolContract(toolName, contract);
|
|
60
|
+
return decorated ? [[toolName, decorated]] : [];
|
|
61
|
+
})
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
function mcpContractToInputSchema(contract) {
|
|
65
|
+
const properties = {};
|
|
66
|
+
for (const [paramName, paramDef] of Object.entries(contract.parameters)) {
|
|
67
|
+
const prop = {
|
|
68
|
+
type: paramDef.type,
|
|
69
|
+
description: paramDef.description
|
|
70
|
+
};
|
|
71
|
+
if (paramDef.enum) {
|
|
72
|
+
prop.enum = paramDef.enum;
|
|
73
|
+
}
|
|
74
|
+
properties[paramName] = prop;
|
|
75
|
+
}
|
|
76
|
+
return {
|
|
77
|
+
type: "object",
|
|
78
|
+
properties,
|
|
79
|
+
required: contract.required
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
function mcpContractToManifestEntry(name, contract) {
|
|
83
|
+
return {
|
|
84
|
+
name,
|
|
85
|
+
description: contract.description,
|
|
86
|
+
inputSchema: mcpContractToInputSchema(contract),
|
|
87
|
+
internal: Boolean(contract.internal),
|
|
88
|
+
ownerModule: contract.ownerModule,
|
|
89
|
+
ontologyPrimitive: contract.ontologyPrimitive,
|
|
90
|
+
tier: contract.tier
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function isMcpToolAllowed(toolName, options = {}) {
|
|
94
|
+
const contracts = options.contracts ?? buildMcpToolContracts();
|
|
95
|
+
const contract = contracts[toolName];
|
|
96
|
+
const alwaysAllowed = /* @__PURE__ */ new Set([
|
|
97
|
+
...MCP_ALWAYS_ALLOWED_TOOL_NAMES,
|
|
98
|
+
...options.alwaysAllowedTools ?? []
|
|
99
|
+
]);
|
|
100
|
+
if (alwaysAllowed.has(toolName)) {
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
if (options.sessionType === "user" && contract?.internal) {
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
if (options.permittedTools !== void 0 && options.permittedTools !== null) {
|
|
107
|
+
return options.permittedTools.some((tool) => tool.toolName === toolName);
|
|
108
|
+
}
|
|
109
|
+
if (options.allowedTools === null || options.allowedTools === void 0) {
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
return options.allowedTools.includes(toolName);
|
|
113
|
+
}
|
|
114
|
+
function buildMcpToolManifest(args = {}) {
|
|
115
|
+
const contracts = args.contracts ?? buildMcpToolContracts();
|
|
116
|
+
return Object.entries(contracts).filter(([name, contract]) => {
|
|
117
|
+
if (args.visibility?.sessionType === "user" && contract.internal) {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
return isMcpToolAllowed(name, {
|
|
121
|
+
...args.visibility,
|
|
122
|
+
contracts
|
|
123
|
+
});
|
|
124
|
+
}).map(([name, contract]) => mcpContractToManifestEntry(name, contract));
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export { MCP_ALWAYS_ALLOWED_TOOL_NAMES, buildMcpToolContracts, buildMcpToolManifest, getMcpToolExposure, isMcpToolAllowed, mcpContractToInputSchema, mcpContractToManifestEntry };
|
|
26
128
|
//# sourceMappingURL=mcpTools.js.map
|
|
27
129
|
//# sourceMappingURL=mcpTools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/contracts/mcpTools.ts","../../src/contracts/tool-contracts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/contracts/mcpTools.ts","../../src/contracts/tool-contracts.ts"],"names":[],"mappings":"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","file":"mcpTools.js","sourcesContent":["export * from \"./tool-contracts\";\n\nimport { LUCERN_OPERATION_MANIFEST } from \"@lucern/contracts/function-registry/manifest\";\nimport {\n MCP_TOOL_CONTRACTS,\n type McpToolContract,\n} from \"./tool-contracts\";\n\ntype OperationManifestEntry =\n (typeof LUCERN_OPERATION_MANIFEST)[keyof typeof LUCERN_OPERATION_MANIFEST];\n\nconst OPERATION_MANIFEST = LUCERN_OPERATION_MANIFEST as Record<\n string,\n OperationManifestEntry | undefined\n>;\n\nexport const MCP_ALWAYS_ALLOWED_TOOL_NAMES = [\"identity_whoami\"] as const;\n\nexport type McpToolInputSchema = {\n type: \"object\";\n properties: Record<string, unknown>;\n required: string[];\n};\n\nexport type McpPermittedTool = {\n toolName: string;\n requiredRole?: string;\n approvalGateId?: string;\n isCore?: boolean;\n category?: string;\n};\n\nexport type McpToolManifestEntry = {\n name: string;\n description: string;\n inputSchema: McpToolInputSchema;\n internal: boolean;\n ownerModule: string;\n ontologyPrimitive: McpToolContract[\"ontologyPrimitive\"];\n tier: McpToolContract[\"tier\"];\n};\n\nexport type McpToolContractMap = Record<string, McpToolContract>;\n\nexport type BuildMcpToolContractsOptions = {\n extensions?: McpToolContractMap;\n};\n\nexport type McpToolVisibilityOptions = {\n contracts?: McpToolContractMap;\n sessionType?: \"agent\" | \"user\";\n permittedTools?: readonly McpPermittedTool[] | null;\n allowedTools?: readonly string[] | null;\n alwaysAllowedTools?: readonly string[];\n};\n\nexport function getMcpToolExposure(\n toolName: string\n): \"public\" | \"internal\" | \"none\" {\n return OPERATION_MANIFEST[toolName]?.surfaces.mcp ?? \"none\";\n}\n\nfunction decorateMcpToolContract(\n toolName: string,\n contract: McpToolContract\n): McpToolContract | null {\n const exposure = getMcpToolExposure(toolName);\n if (exposure === \"none\") {\n return null;\n }\n return exposure === \"internal\" || contract.internal\n ? { ...contract, internal: true }\n : contract;\n}\n\nexport function buildMcpToolContracts(\n options: BuildMcpToolContractsOptions = {}\n): McpToolContractMap {\n const merged = {\n ...MCP_TOOL_CONTRACTS,\n ...(options.extensions ?? {}),\n };\n\n return Object.fromEntries(\n Object.entries(merged).flatMap(([toolName, contract]) => {\n const decorated = decorateMcpToolContract(toolName, contract);\n return decorated ? [[toolName, decorated]] : [];\n })\n );\n}\n\nexport function mcpContractToInputSchema(\n contract: McpToolContract\n): McpToolInputSchema {\n const properties: Record<string, unknown> = {};\n\n for (const [paramName, paramDef] of Object.entries(contract.parameters)) {\n const prop: Record<string, unknown> = {\n type: paramDef.type,\n description: paramDef.description,\n };\n if (paramDef.enum) {\n prop.enum = paramDef.enum;\n }\n properties[paramName] = prop;\n }\n\n return {\n type: \"object\",\n properties,\n required: contract.required,\n };\n}\n\nexport function mcpContractToManifestEntry(\n name: string,\n contract: McpToolContract\n): McpToolManifestEntry {\n return {\n name,\n description: contract.description,\n inputSchema: mcpContractToInputSchema(contract),\n internal: Boolean(contract.internal),\n ownerModule: contract.ownerModule,\n ontologyPrimitive: contract.ontologyPrimitive,\n tier: contract.tier,\n };\n}\n\nexport function isMcpToolAllowed(\n toolName: string,\n options: McpToolVisibilityOptions = {}\n): boolean {\n const contracts = options.contracts ?? buildMcpToolContracts();\n const contract = contracts[toolName];\n const alwaysAllowed = new Set([\n ...MCP_ALWAYS_ALLOWED_TOOL_NAMES,\n ...(options.alwaysAllowedTools ?? []),\n ]);\n\n if (alwaysAllowed.has(toolName)) {\n return true;\n }\n if (options.sessionType === \"user\" && contract?.internal) {\n return false;\n }\n\n if (options.permittedTools !== undefined && options.permittedTools !== null) {\n return options.permittedTools.some((tool) => tool.toolName === toolName);\n }\n\n if (options.allowedTools === null || options.allowedTools === undefined) {\n return true;\n }\n return options.allowedTools.includes(toolName);\n}\n\nexport function buildMcpToolManifest(args: {\n contracts?: McpToolContractMap;\n visibility?: McpToolVisibilityOptions;\n} = {}): McpToolManifestEntry[] {\n const contracts = args.contracts ?? buildMcpToolContracts();\n return Object.entries(contracts)\n .filter(([name, contract]) => {\n if (args.visibility?.sessionType === \"user\" && contract.internal) {\n return false;\n }\n return isMcpToolAllowed(name, {\n ...args.visibility,\n contracts,\n });\n })\n .map(([name, contract]) => mcpContractToManifestEntry(name, contract));\n}\n","export * from \"@lucern/contracts/tool-contracts\";\n\n"]}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { PlatformGatewaySuccess } from '../coreClient.js';
|
|
2
|
-
import { L as LucernClientConfig } from '../client-
|
|
2
|
+
import { L as LucernClientConfig } from '../client-DOLqClbU.js';
|
|
3
3
|
import * as v1 from '@lucern/contracts/graph/v1';
|
|
4
4
|
export { v1 as graphContracts };
|
|
5
5
|
import * as sdkMethods_contract from '@lucern/contracts/sdk-methods.contract';
|
|
6
6
|
export { sdkMethods_contract as methodSchemas };
|
|
7
7
|
import * as toolContracts from '@lucern/contracts/tool-contracts';
|
|
8
8
|
export { toolContracts as toolSchemas };
|
|
9
|
+
import '../authContext.js';
|
|
10
|
+
import '../contracts/auth-session.contract.js';
|
|
9
11
|
import '../types.js';
|
|
10
12
|
import '../contracts/workflow-runtime.contract.js';
|
|
11
13
|
import '../contracts/lens-workflow.contract.js';
|
|
@@ -13,14 +15,28 @@ import '../contracts/lens-filter.contract.js';
|
|
|
13
15
|
import '../audiencesClient.js';
|
|
14
16
|
import '../schemaClient.js';
|
|
15
17
|
import '../harnessClient.js';
|
|
16
|
-
import '../identityClient.js';
|
|
17
18
|
import '../adminClient.js';
|
|
18
19
|
import '../controlObjectOwnership.js';
|
|
19
20
|
import '../beliefsClient.js';
|
|
20
21
|
import '../opinion.js';
|
|
22
|
+
import '../authDeviceClient.js';
|
|
23
|
+
import '../mcpClient.js';
|
|
24
|
+
import '@lucern/contracts/mcp-gateway-boundary.contract';
|
|
25
|
+
import '../identityClient.js';
|
|
21
26
|
import '../packsClient.js';
|
|
22
27
|
import '../customTools.js';
|
|
23
28
|
import 'zod';
|
|
29
|
+
import '../toolRegistryClient.js';
|
|
30
|
+
import '../telemetryClient.js';
|
|
31
|
+
import '../jobsClient.js';
|
|
32
|
+
import '../modelRuntimeClient.js';
|
|
33
|
+
import '../graphStateClassifierClient.js';
|
|
34
|
+
import '../boundaryClientSurface.js';
|
|
35
|
+
import '../ontologyLinksClient.js';
|
|
36
|
+
import '../orgGraphSearchClient.js';
|
|
37
|
+
import '../graphRecommendationsClient.js';
|
|
38
|
+
import '../graphAnalysisClient.js';
|
|
39
|
+
import '../embeddingsClient.js';
|
|
24
40
|
import '../policyClient.js';
|
|
25
41
|
import '../ontologyClient.js';
|
|
26
42
|
import '../contextTypes.js';
|
|
@@ -30,6 +46,7 @@ import '../auditClient.js';
|
|
|
30
46
|
import '../contextClient.js';
|
|
31
47
|
import '../decisionsClient.js';
|
|
32
48
|
import '../evidenceClient.js';
|
|
49
|
+
import '../eventingClient.js';
|
|
33
50
|
import '../graphClient.js';
|
|
34
51
|
import '../learningClient.js';
|
|
35
52
|
import '../reportsClient.js';
|