@finos/legend-extension-dsl-data-space 10.4.248 → 10.4.250

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 (37) hide show
  1. package/lib/components/DataSpaceLegendAIIntegration.d.ts +1 -18
  2. package/lib/components/DataSpaceLegendAIIntegration.d.ts.map +1 -1
  3. package/lib/components/DataSpaceLegendAIIntegration.js +9 -350
  4. package/lib/components/DataSpaceLegendAIIntegration.js.map +1 -1
  5. package/lib/components/DataSpaceLegendAISchema.d.ts +43 -0
  6. package/lib/components/DataSpaceLegendAISchema.d.ts.map +1 -0
  7. package/lib/components/DataSpaceLegendAISchema.js +397 -0
  8. package/lib/components/DataSpaceLegendAISchema.js.map +1 -0
  9. package/lib/components/index.d.ts +1 -0
  10. package/lib/components/index.d.ts.map +1 -1
  11. package/lib/components/index.js +1 -0
  12. package/lib/components/index.js.map +1 -1
  13. package/lib/graph-manager/action/analytics/DataSpaceAnalysis.d.ts +5 -0
  14. package/lib/graph-manager/action/analytics/DataSpaceAnalysis.d.ts.map +1 -1
  15. package/lib/graph-manager/action/analytics/DataSpaceAnalysis.js +5 -0
  16. package/lib/graph-manager/action/analytics/DataSpaceAnalysis.js.map +1 -1
  17. package/lib/graph-manager/protocol/pure/DSL_DataSpace_PureProtocolProcessorPlugin.d.ts.map +1 -1
  18. package/lib/graph-manager/protocol/pure/DSL_DataSpace_PureProtocolProcessorPlugin.js +10 -10
  19. package/lib/graph-manager/protocol/pure/DSL_DataSpace_PureProtocolProcessorPlugin.js.map +1 -1
  20. package/lib/graph-manager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.d.ts.map +1 -1
  21. package/lib/graph-manager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.js +18 -5
  22. package/lib/graph-manager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.js.map +1 -1
  23. package/lib/graph-manager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.d.ts +8 -0
  24. package/lib/graph-manager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.d.ts.map +1 -1
  25. package/lib/graph-manager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.js +13 -3
  26. package/lib/graph-manager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.js.map +1 -1
  27. package/lib/index.css +1 -1
  28. package/lib/package.json +1 -1
  29. package/package.json +6 -6
  30. package/src/components/DataSpaceLegendAIIntegration.tsx +18 -482
  31. package/src/components/DataSpaceLegendAISchema.ts +562 -0
  32. package/src/components/index.ts +1 -0
  33. package/src/graph-manager/action/analytics/DataSpaceAnalysis.ts +6 -0
  34. package/src/graph-manager/protocol/pure/DSL_DataSpace_PureProtocolProcessorPlugin.ts +16 -13
  35. package/src/graph-manager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.ts +35 -14
  36. package/src/graph-manager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.ts +33 -17
  37. package/tsconfig.json +1 -0
@@ -13,25 +13,8 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { type MappingModelCoverageAnalysisResult } from '@finos/legend-graph';
17
- import { type TDSServiceSchema, type LegendAIConfig, type LegendAIModelContext, type LegendAIExecutableInfo } from '@finos/legend-lego/legend-ai';
18
- import { type DiagramAnalysisResult } from '@finos/legend-extension-dsl-diagram';
16
+ import { type LegendAIConfig } from '@finos/legend-lego/legend-ai';
19
17
  import type { DataSpaceViewerState } from '../stores/DataSpaceViewerState.js';
20
- import { type DataSpaceExecutableAnalysisResult } from '../graph-manager/action/analytics/DataSpaceAnalysis.js';
21
- /**
22
- * Extracts a {@link LegendAIModelContext} from diagram metamodel objects.
23
- * Diagrams always contain the actual Class metamodel references so this
24
- * works even when elementDocs documentation is empty or incomplete.
25
- */
26
- export declare function extractModelContextFromDiagrams(diagrams: DiagramAnalysisResult[]): LegendAIModelContext;
27
- /**
28
- * Enriches a {@link LegendAIModelContext} with mapping coverage data.
29
- * Marks entities that are root-mapped (directly queryable by the orchestrator)
30
- * so entity resolution can prefer them.
31
- */
32
- export declare function enrichModelContextWithMappingCoverage(modelContext: LegendAIModelContext, mappingCoverage: MappingModelCoverageAnalysisResult | undefined): void;
33
- export declare function extractExecutableInfo(executables: DataSpaceExecutableAnalysisResult[], modelContext: LegendAIModelContext, services: TDSServiceSchema[]): LegendAIExecutableInfo[];
34
- export declare function extractTDSServicesFromDataSpace(viewerState: DataSpaceViewerState): Promise<TDSServiceSchema[]>;
35
18
  export declare const DataSpaceLegendAIIntegration: ((props: {
36
19
  dataSpaceViewerState: DataSpaceViewerState;
37
20
  config: LegendAIConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"DataSpaceLegendAIIntegration.d.ts","sourceRoot":"","sources":["../../src/components/DataSpaceLegendAIIntegration.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAEL,KAAK,kCAAkC,EAIxC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAeL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAInB,KAAK,oBAAoB,EAIzB,KAAK,sBAAsB,EAI5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAEjF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAE9E,OAAO,EAIL,KAAK,iCAAiC,EACvC,MAAM,wDAAwD,CAAC;AA2ChE;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,qBAAqB,EAAE,GAChC,oBAAoB,CA8DtB;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,CACnD,YAAY,EAAE,oBAAoB,EAClC,eAAe,EAAE,kCAAkC,GAAG,SAAS,GAC9D,IAAI,CAYN;AAqGD,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,iCAAiC,EAAE,EAChD,YAAY,EAAE,oBAAoB,EAClC,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,sBAAsB,EAAE,CAgC1B;AAED,wBAAsB,+BAA+B,CACnD,WAAW,EAAE,oBAAoB,GAChC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAwF7B;AAuPD,eAAO,MAAM,4BAA4B,WAC/B;IACN,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;;CAKF,CAAC"}
1
+ {"version":3,"file":"DataSpaceLegendAIIntegration.d.ts","sourceRoot":"","sources":["../../src/components/DataSpaceLegendAIIntegration.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,EASL,KAAK,cAAc,EAIpB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AA+K9E,eAAO,MAAM,4BAA4B,WAC/B;IACN,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;;CAKF,CAAC"}
@@ -16,15 +16,11 @@ import { jsx as _jsx } from "react/jsx-runtime";
16
16
  */
17
17
  import { useState, useEffect, useMemo, useCallback } from 'react';
18
18
  import { observer } from 'mobx-react-lite';
19
- import { Enumeration, PRIMITIVE_TYPE, RelationalDatabaseTableSpecification, } from '@finos/legend-graph';
20
- import { LegendAIChat, LegendAIErrorBoundary, findLegendAIPlugin, extractParameterSchemas, buildPropertyDocIndex, enrichColumnsFromElementDocs, inferServiceRelationshipsFromAssociations, extractLambdaPreFilters, extractModelContext, LegendAIChatTelemetryEventType, bridgeLegendAIServices, useLegendAIChatTelemetryLogger, LegendAIMessageFeedbackRating, } from '@finos/legend-lego/legend-ai';
21
- import {} from '@finos/legend-extension-dsl-diagram';
22
- import { assertErrorThrown, LogEvent } from '@finos/legend-shared';
19
+ import {} from '@finos/legend-graph';
20
+ import { LegendAIChat, LegendAIErrorBoundary, findLegendAIPlugin, LegendAIChatTelemetryEventType, bridgeLegendAIServices, useLegendAIChatTelemetryLogger, LegendAIMessageFeedbackRating, } from '@finos/legend-lego/legend-ai';
21
+ import { LogEvent } from '@finos/legend-shared';
23
22
  import { DSL_DATASPACE_EVENT } from '../__lib__/DSL_DataSpace_Event.js';
24
- import { DataSpaceServiceExecutableInfo, DataSpaceMultiExecutionServiceExecutableInfo, DataSpaceExecutableTDSResult, } from '../graph-manager/action/analytics/DataSpaceAnalysis.js';
25
- import { DataSpaceSupportEmail, DataSpaceSupportCombinedInfo, } from '../graph/metamodel/pure/model/packageableElements/dataSpace/DSL_DataSpace_DataSpace.js';
26
- const MAX_QUERY_SCAN_LENGTH = 5_000;
27
- const MAX_QUERY_TEMPLATE_LENGTH = 1000;
23
+ import { buildDataSpaceModelContext, extractTDSServicesFromDataSpace, extractMetadataFromDataSpace, } from './DataSpaceLegendAISchema.js';
28
24
  const DATA_SPACE_TELEMETRY_EVENT_KEYS = {
29
25
  [LegendAIChatTelemetryEventType.QUESTION_ASKED]: DSL_DATASPACE_EVENT.LEGEND_AI_QUESTION_ASKED,
30
26
  [LegendAIChatTelemetryEventType.RESPONSE_RECEIVED]: DSL_DATASPACE_EVENT.LEGEND_AI_RESPONSE_RECEIVED,
@@ -38,304 +34,6 @@ const DATA_SPACE_TELEMETRY_EVENT_KEYS = {
38
34
  [LegendAIChatTelemetryEventType.PYTHON_CODE_TOGGLED]: DSL_DATASPACE_EVENT.LEGEND_AI_PYTHON_CODE_TOGGLED,
39
35
  [LegendAIChatTelemetryEventType.OPEN_IN_DATACUBE_CLICKED]: DSL_DATASPACE_EVENT.LEGEND_AI_OPEN_IN_DATACUBE_CLICKED,
40
36
  };
41
- const ENTITY_PATH_PATTERN = /(?<entityPath>[A-Za-z_]\w{0,63}(?:::[A-Za-z_]\w{0,63}){0,10})\.all\(\)/g;
42
- // ────────────────────────────────────────────────────────────────────────────
43
- // Diagram-based model context extraction (fallback when elementDocs is sparse)
44
- // ────────────────────────────────────────────────────────────────────────────
45
- /**
46
- * Extracts a {@link LegendAIModelContext} from diagram metamodel objects.
47
- * Diagrams always contain the actual Class metamodel references so this
48
- * works even when elementDocs documentation is empty or incomplete.
49
- */
50
- export function extractModelContextFromDiagrams(diagrams) {
51
- const entityMap = new Map();
52
- const associations = [];
53
- const enumPaths = new Map();
54
- for (const { diagram } of diagrams) {
55
- for (const classView of diagram.classViews) {
56
- const cls = classView.class.value;
57
- if (entityMap.has(cls.path)) {
58
- continue;
59
- }
60
- const properties = cls.properties.map((prop) => {
61
- const rawType = prop.genericType.value.rawType;
62
- const typePath = rawType.path;
63
- if (rawType instanceof Enumeration && !enumPaths.has(typePath)) {
64
- enumPaths.set(typePath, {
65
- path: typePath,
66
- name: rawType.name,
67
- values: rawType.values.map((v) => v.name),
68
- });
69
- }
70
- return {
71
- name: prop.name,
72
- type: typePath,
73
- isCollection: prop.multiplicity.upperBound === undefined ||
74
- prop.multiplicity.upperBound > 1,
75
- isOptional: prop.multiplicity.lowerBound === 0,
76
- };
77
- });
78
- const entity = {
79
- path: cls.path,
80
- name: cls.name,
81
- properties,
82
- };
83
- entityMap.set(cls.path, entity);
84
- }
85
- for (const assocView of diagram.associationViews) {
86
- const assoc = assocView.association.value;
87
- const [propA, propB] = assoc.properties;
88
- associations.push({
89
- name: assoc.name,
90
- leftEntity: assocView.from.classView.value.class.value.path,
91
- leftProperty: propA.name,
92
- rightEntity: assocView.to.classView.value.class.value.path,
93
- rightProperty: propB.name,
94
- });
95
- }
96
- }
97
- const result = {
98
- entities: Array.from(entityMap.values()),
99
- associations,
100
- };
101
- if (enumPaths.size > 0) {
102
- result.enumerations = Array.from(enumPaths.values());
103
- }
104
- return result;
105
- }
106
- /**
107
- * Enriches a {@link LegendAIModelContext} with mapping coverage data.
108
- * Marks entities that are root-mapped (directly queryable by the orchestrator)
109
- * so entity resolution can prefer them.
110
- */
111
- export function enrichModelContextWithMappingCoverage(modelContext, mappingCoverage) {
112
- if (!mappingCoverage) {
113
- return;
114
- }
115
- for (const entity of modelContext.entities) {
116
- const mapped = mappingCoverage.mappedEntities.find((me) => me.path === entity.path);
117
- if (mapped?.info?.isRootEntity) {
118
- entity.isRootMapped = true;
119
- }
120
- }
121
- }
122
- /**
123
- * Builds column-to-property mappings by matching TDS result column names
124
- * to model property names on the root entity.
125
- * Uses case-insensitive, whitespace/underscore-normalized comparison.
126
- */
127
- function buildColumnPropertyMappings(columns, rootEntity) {
128
- if (!rootEntity || rootEntity.properties.length === 0) {
129
- return undefined;
130
- }
131
- const normalizeName = (name) => name.toLowerCase().replaceAll(/[\s_]/g, '');
132
- const propLookup = new Map();
133
- for (const prop of rootEntity.properties) {
134
- propLookup.set(normalizeName(prop.name), prop.name);
135
- }
136
- const mappings = [];
137
- for (const colName of columns) {
138
- const propName = propLookup.get(normalizeName(colName));
139
- if (propName && propName !== colName) {
140
- mappings.push({ columnName: colName, propertyPath: propName });
141
- }
142
- }
143
- return mappings.length > 0 ? mappings : undefined;
144
- }
145
- function collectReferencedEntityPaths(queryStr) {
146
- const safeQuery = queryStr.slice(0, MAX_QUERY_SCAN_LENGTH);
147
- // Reset lastIndex defensively — the regex is module-scoped and reused.
148
- ENTITY_PATH_PATTERN.lastIndex = 0;
149
- const paths = [];
150
- const seen = new Set();
151
- let match;
152
- while ((match = ENTITY_PATH_PATTERN.exec(safeQuery)) !== null) {
153
- const path = match.groups?.entityPath;
154
- if (path && !seen.has(path)) {
155
- seen.add(path);
156
- paths.push(path);
157
- }
158
- }
159
- return paths;
160
- }
161
- function buildExecutableInfo(exec, entityMap, serviceParameters) {
162
- if (!(exec.info instanceof DataSpaceServiceExecutableInfo ||
163
- exec.info instanceof DataSpaceMultiExecutionServiceExecutableInfo)) {
164
- return undefined;
165
- }
166
- const queryStr = exec.info.query;
167
- const referencedEntityPaths = collectReferencedEntityPaths(queryStr);
168
- const rootEntityPath = referencedEntityPaths[0];
169
- if (!rootEntityPath) {
170
- return undefined;
171
- }
172
- const info = {
173
- title: exec.title,
174
- rootEntityPath,
175
- queryTemplate: queryStr.length > MAX_QUERY_TEMPLATE_LENGTH
176
- ? `${queryStr.slice(0, MAX_QUERY_TEMPLATE_LENGTH)}...`
177
- : queryStr,
178
- };
179
- if (referencedEntityPaths.length > 1) {
180
- info.referencedEntityPaths = referencedEntityPaths;
181
- }
182
- if (exec.description !== undefined) {
183
- info.description = exec.description;
184
- }
185
- const reqParams = serviceParameters.get(exec.title);
186
- if (reqParams && reqParams.length > 0) {
187
- info.requiredParameters = reqParams;
188
- }
189
- if (exec.result instanceof DataSpaceExecutableTDSResult) {
190
- const columnNames = exec.result.columns.map((c) => c.name);
191
- const colMappings = buildColumnPropertyMappings(columnNames, entityMap.get(rootEntityPath));
192
- if (colMappings) {
193
- info.columnPropertyMappings = colMappings;
194
- }
195
- }
196
- return info;
197
- }
198
- export function extractExecutableInfo(executables, modelContext, services) {
199
- const entityMap = new Map(modelContext.entities.map((e) => [e.path, e]));
200
- const serviceParameters = new Map();
201
- for (const svc of services) {
202
- if (svc.parameterSchemas && svc.parameterSchemas.length > 0) {
203
- serviceParameters.set(svc.title, svc.parameterSchemas.map((p) => ({
204
- name: p.name,
205
- type: p.type ?? PRIMITIVE_TYPE.STRING,
206
- })));
207
- }
208
- }
209
- const result = [];
210
- for (const exec of executables) {
211
- const info = buildExecutableInfo(exec, entityMap, serviceParameters);
212
- if (!info) {
213
- continue;
214
- }
215
- result.push(info);
216
- const queryableEntityPaths = info.referencedEntityPaths ?? [
217
- info.rootEntityPath,
218
- ];
219
- for (const entityPath of queryableEntityPaths) {
220
- const entity = entityMap.get(entityPath);
221
- if (entity) {
222
- entity.isQueryable = true;
223
- }
224
- }
225
- }
226
- return result;
227
- }
228
- export async function extractTDSServicesFromDataSpace(viewerState) {
229
- const executables = viewerState.dataSpaceAnalysisResult.executables;
230
- const graphManager = viewerState.graphManagerState.graphManager;
231
- const nested = await Promise.all(executables.map(async (exec) => {
232
- if (!(exec.info instanceof DataSpaceServiceExecutableInfo ||
233
- exec.info instanceof DataSpaceMultiExecutionServiceExecutableInfo) ||
234
- !(exec.result instanceof DataSpaceExecutableTDSResult)) {
235
- return [];
236
- }
237
- const info = exec.info;
238
- const tdsResult = exec.result;
239
- const { parameters, parameterSchemas, parameterExtractionFailed } = await extractParameterSchemas(info.query, graphManager, viewerState.graphManagerState);
240
- // Extract hardcoded pre-filter constraints from the lambda
241
- let preFilters;
242
- try {
243
- const rawLambda = await graphManager.pureCodeToLambda(info.query);
244
- const extracted = extractLambdaPreFilters(rawLambda.body);
245
- if (extracted.length > 0) {
246
- preFilters = extracted;
247
- }
248
- }
249
- catch (error) {
250
- assertErrorThrown(error);
251
- // pre-filter extraction is best-effort — a service without pre-filters
252
- // still works, the AI just won't know about hardcoded constraints.
253
- viewerState.applicationStore.logService.debug(LogEvent.create(DSL_DATASPACE_EVENT.ERROR_EXTRACT_LEGEND_AI_SERVICES), error);
254
- }
255
- const entry = {
256
- title: exec.title,
257
- pattern: info.pattern,
258
- columns: tdsResult.columns.map((col) => {
259
- const column = { name: col.name };
260
- if (col.type !== undefined) {
261
- column.type = col.type;
262
- }
263
- if (col.relationalType !== undefined) {
264
- column.relationalType = col.relationalType;
265
- }
266
- if (col.documentation !== undefined) {
267
- column.documentation = col.documentation;
268
- }
269
- if (col.sampleValues !== undefined) {
270
- column.sampleValues = col.sampleValues;
271
- }
272
- return column;
273
- }),
274
- parameters,
275
- ...(parameterSchemas.length > 0 ? { parameterSchemas } : {}),
276
- ...(parameterExtractionFailed
277
- ? { parameterExtractionFailed: true }
278
- : {}),
279
- ...(preFilters ? { preFilters } : {}),
280
- };
281
- if (exec.description !== undefined) {
282
- entry.description = exec.description;
283
- }
284
- return [entry];
285
- }));
286
- const services = nested.flat();
287
- // Enrich columns with documentation and nullability from elementDocs
288
- const propIndex = buildPropertyDocIndex(viewerState.dataSpaceAnalysisResult.elementDocs);
289
- if (propIndex.size > 0) {
290
- for (const svc of services) {
291
- enrichColumnsFromElementDocs(svc.columns, propIndex);
292
- }
293
- }
294
- return services;
295
- }
296
- function extractMetadataFromDataSpace(viewerState, coordinates, services) {
297
- const result = viewerState.dataSpaceAnalysisResult;
298
- let supportInfoText;
299
- if (result.supportInfo instanceof DataSpaceSupportEmail) {
300
- supportInfoText = result.supportInfo.address;
301
- }
302
- else if (result.supportInfo instanceof DataSpaceSupportCombinedInfo) {
303
- supportInfoText = (result.supportInfo.emails ?? []).join(', ');
304
- }
305
- const metadata = {
306
- name: result.title ?? result.name,
307
- coordinates,
308
- serviceSummaries: result.executables.map((exec) => {
309
- const summary = {
310
- title: exec.title,
311
- };
312
- if (exec.description !== undefined) {
313
- summary.description = exec.description;
314
- }
315
- if (exec.result instanceof DataSpaceExecutableTDSResult) {
316
- summary.columnNames = exec.result.columns.map((col) => col.name);
317
- }
318
- return summary;
319
- }),
320
- tags: result.taggedValues.map((tv) => ({
321
- profile: tv.profile,
322
- value: tv.value,
323
- })),
324
- };
325
- if (result.description !== undefined) {
326
- metadata.description = result.description;
327
- }
328
- if (supportInfoText !== undefined) {
329
- metadata.supportInfo = supportInfoText;
330
- }
331
- if (services.length >= 2) {
332
- const serviceRels = inferServiceRelationshipsFromAssociations(services, result.elementDocs);
333
- if (serviceRels.length > 0) {
334
- metadata.serviceRelationships = serviceRels;
335
- }
336
- }
337
- return metadata;
338
- }
339
37
  const DataSpaceLegendAIIntegrationInner = observer((props) => {
340
38
  const { dataSpaceViewerState, config, onClose, onMinimize } = props;
341
39
  const legendAIPlugin = useMemo(() => findLegendAIPlugin(dataSpaceViewerState.applicationStore.pluginManager.getApplicationPlugins()), [dataSpaceViewerState]);
@@ -361,50 +59,11 @@ const DataSpaceLegendAIIntegrationInner = observer((props) => {
361
59
  dataSpaceViewerState.currentRuntime,
362
60
  ]);
363
61
  const metadata = useMemo(() => extractMetadataFromDataSpace(dataSpaceViewerState, coordinates, services), [dataSpaceViewerState, coordinates, services]);
364
- const modelContext = useMemo(() => {
365
- const result = dataSpaceViewerState.dataSpaceAnalysisResult;
366
- let ctx;
367
- if (result.elementDocs.length > 0) {
368
- const docsCtx = extractModelContext(result.elementDocs);
369
- if (docsCtx.entities.length > 0) {
370
- ctx = docsCtx;
371
- }
372
- }
373
- // Fallback: extract from diagram metamodel objects (always available)
374
- if (!ctx && result.diagrams.length > 0) {
375
- const diagramCtx = extractModelContextFromDiagrams(result.diagrams);
376
- if (diagramCtx.entities.length > 0) {
377
- ctx = diagramCtx;
378
- }
379
- }
380
- if (!ctx) {
381
- return undefined;
382
- }
383
- const mappingPath = dataSpaceViewerState.currentExecutionContext.mapping.path;
384
- const mappingCoverage = result.mappingToMappingCoverageResult?.get(mappingPath);
385
- enrichModelContextWithMappingCoverage(ctx, mappingCoverage);
386
- if (result.executables.length > 0) {
387
- const execInfos = extractExecutableInfo(result.executables, ctx, services);
388
- if (execInfos.length > 0) {
389
- ctx.executables = execInfos;
390
- }
391
- }
392
- const physicalDatasets = dataSpaceViewerState.currentExecutionContext.datasets;
393
- if (physicalDatasets.length > 0) {
394
- ctx.datasets = physicalDatasets.map((ds) => ds instanceof RelationalDatabaseTableSpecification
395
- ? {
396
- name: ds.name,
397
- database: ds.database,
398
- schema: ds.schema,
399
- table: ds.table,
400
- }
401
- : { name: ds.name });
402
- }
403
- if (result.description) {
404
- ctx.dataspaceDescription = result.description;
405
- }
406
- return ctx;
407
- }, [
62
+ const modelContext = useMemo(() => buildDataSpaceModelContext(dataSpaceViewerState, services),
63
+ // Deps are the observable inputs the builder reads; the viewer state
64
+ // identity itself is stable for the lifetime of the panel.
65
+ // eslint-disable-next-line react-hooks/exhaustive-deps
66
+ [
408
67
  dataSpaceViewerState.dataSpaceAnalysisResult,
409
68
  dataSpaceViewerState.currentExecutionContext.mapping,
410
69
  dataSpaceViewerState.currentExecutionContext.datasets,
@@ -1 +1 @@
1
- {"version":3,"file":"DataSpaceLegendAIIntegration.js","sourceRoot":"","sources":["../../src/components/DataSpaceLegendAIIntegration.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataSpaceLegendAIIntegration.js","sourceRoot":"","sources":["../../src/components/DataSpaceLegendAIIntegration.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Copyright (c) 2026-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type GraphManagerState } from '@finos/legend-graph';
17
+ import { type TDSServiceSchema, type LegendAIProductMetadata, type LegendAIModelContext, type LegendAIExecutableInfo } from '@finos/legend-lego/legend-ai';
18
+ import type { DataSpaceViewerState } from '../stores/DataSpaceViewerState.js';
19
+ import { type DataSpaceExecutableAnalysisResult, type DataSpaceAnalysisResult, type DataSpaceExecutionContextAnalysisResult } from '../graph-manager/action/analytics/DataSpaceAnalysis.js';
20
+ export declare function extractExecutableInfo(executables: DataSpaceExecutableAnalysisResult[], modelContext: LegendAIModelContext, services: TDSServiceSchema[]): LegendAIExecutableInfo[];
21
+ /**
22
+ * Everything data space extraction needs, with no UI state involved. The
23
+ * execution context supplies the mapping and datasets the viewer would project.
24
+ */
25
+ export interface DataSpaceSchemaSource {
26
+ analysisResult: DataSpaceAnalysisResult;
27
+ executionContext: DataSpaceExecutionContextAnalysisResult;
28
+ graphManagerState: GraphManagerState;
29
+ }
30
+ export declare function extractTDSServicesFromDataSpaceSource(source: DataSpaceSchemaSource): Promise<TDSServiceSchema[]>;
31
+ export declare function extractMetadataFromDataSpaceAnalysis(result: DataSpaceAnalysisResult, coordinates: string, services: TDSServiceSchema[]): LegendAIProductMetadata;
32
+ /**
33
+ * Builds the orchestrator model context for a dataspace from element docs or
34
+ * diagrams, enriched with mapping coverage, executables, datasets, and functions.
35
+ */
36
+ export declare function buildDataSpaceModelContextFromSource(source: DataSpaceSchemaSource, services: TDSServiceSchema[]): LegendAIModelContext | undefined;
37
+ /** Adapts an open data space viewer to {@link extractTDSServicesFromDataSpaceSource}. */
38
+ export declare function extractTDSServicesFromDataSpace(viewerState: DataSpaceViewerState): Promise<TDSServiceSchema[]>;
39
+ /** Adapts an open data space viewer to {@link extractMetadataFromDataSpaceAnalysis}. */
40
+ export declare function extractMetadataFromDataSpace(viewerState: DataSpaceViewerState, coordinates: string, services: TDSServiceSchema[]): LegendAIProductMetadata;
41
+ /** Adapts an open data space viewer to {@link buildDataSpaceModelContextFromSource}. */
42
+ export declare function buildDataSpaceModelContext(viewerState: DataSpaceViewerState, services: TDSServiceSchema[]): LegendAIModelContext | undefined;
43
+ //# sourceMappingURL=DataSpaceLegendAISchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataSpaceLegendAISchema.d.ts","sourceRoot":"","sources":["../../src/components/DataSpaceLegendAISchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAML,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAQL,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAE5B,KAAK,oBAAoB,EAIzB,KAAK,sBAAsB,EAI5B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAIL,KAAK,iCAAiC,EACtC,KAAK,uBAAuB,EAC5B,KAAK,uCAAuC,EAC7C,MAAM,wDAAwD,CAAC;AA+MhE,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,iCAAiC,EAAE,EAChD,YAAY,EAAE,oBAAoB,EAClC,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,sBAAsB,EAAE,CAgC1B;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,uBAAuB,CAAC;IACxC,gBAAgB,EAAE,uCAAuC,CAAC;IAC1D,iBAAiB,EAAE,iBAAiB,CAAC;CACtC;AAED,wBAAsB,qCAAqC,CACzD,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAwE7B;AAED,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,uBAAuB,EAC/B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,uBAAuB,CA4CzB;AA2BD;;;GAGG;AACH,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,qBAAqB,EAC7B,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,oBAAoB,GAAG,SAAS,CAkDlC;AAED,yFAAyF;AACzF,wBAAsB,+BAA+B,CACnD,WAAW,EAAE,oBAAoB,GAChC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAI7B;AAED,wFAAwF;AACxF,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,oBAAoB,EACjC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,uBAAuB,CAMzB;AAED,wFAAwF;AACxF,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,oBAAoB,EACjC,QAAQ,EAAE,gBAAgB,EAAE,GAC3B,oBAAoB,GAAG,SAAS,CAKlC"}