@finos/legend-query-builder 4.17.26 → 4.17.28

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 (35) hide show
  1. package/lib/components/lineage/LineageViewer.d.ts.map +1 -1
  2. package/lib/components/lineage/LineageViewer.js +302 -7
  3. package/lib/components/lineage/LineageViewer.js.map +1 -1
  4. package/lib/components/lineage/PropertyOwnerNode.d.ts +31 -0
  5. package/lib/components/lineage/PropertyOwnerNode.d.ts.map +1 -0
  6. package/lib/components/lineage/PropertyOwnerNode.js +58 -0
  7. package/lib/components/lineage/PropertyOwnerNode.js.map +1 -0
  8. package/lib/index.css +17 -1
  9. package/lib/index.css.map +1 -1
  10. package/lib/package.json +1 -1
  11. package/lib/stores/QueryBuilderResultState.d.ts.map +1 -1
  12. package/lib/stores/QueryBuilderResultState.js +1 -0
  13. package/lib/stores/QueryBuilderResultState.js.map +1 -1
  14. package/lib/stores/explorer/QueryBuilderExplorerState.d.ts.map +1 -1
  15. package/lib/stores/explorer/QueryBuilderExplorerState.js +2 -0
  16. package/lib/stores/explorer/QueryBuilderExplorerState.js.map +1 -1
  17. package/lib/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -1
  18. package/lib/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.js +3 -1
  19. package/lib/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.js.map +1 -1
  20. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -1
  21. package/lib/stores/filter/QueryBuilderFilterState.js +3 -1
  22. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -1
  23. package/lib/stores/lineage/LineageState.d.ts +9 -1
  24. package/lib/stores/lineage/LineageState.d.ts.map +1 -1
  25. package/lib/stores/lineage/LineageState.js +25 -0
  26. package/lib/stores/lineage/LineageState.js.map +1 -1
  27. package/package.json +8 -8
  28. package/src/components/lineage/LineageViewer.tsx +542 -12
  29. package/src/components/lineage/PropertyOwnerNode.tsx +145 -0
  30. package/src/stores/QueryBuilderResultState.ts +1 -0
  31. package/src/stores/explorer/QueryBuilderExplorerState.ts +2 -0
  32. package/src/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.ts +3 -0
  33. package/src/stores/filter/QueryBuilderFilterState.ts +3 -0
  34. package/src/stores/lineage/LineageState.ts +31 -0
  35. package/tsconfig.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"LineageViewer.d.ts","sourceRoot":"","sources":["../../../src/components/lineage/LineageViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAwBH,OAAO,EACL,KAAK,YAAY,EAElB,MAAM,sCAAsC,CAAC;AA0d9C,eAAO,MAAM,aAAa,WAChB;IAAE,YAAY,EAAE,YAAY,CAAA;CAAE;;CA4CvC,CAAC"}
1
+ {"version":3,"file":"LineageViewer.d.ts","sourceRoot":"","sources":["../../../src/components/lineage/LineageViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAwBH,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,sCAAsC,CAAC;AA2+B9C,eAAO,MAAM,aAAa,WAChB;IAAE,YAAY,EAAE,YAAY,CAAA;CAAE;;CA6CvC,CAAC"}
@@ -14,12 +14,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- import { useEffect } from 'react';
18
- import { PanelContent, clsx, Dialog, Modal, ModalHeader, ModalBody, ModalFooter, ModalFooterButton, } from '@finos/legend-art';
17
+ import React, { useEffect } from 'react';
18
+ import { clsx, Dialog, Modal, ModalBody, ModalFooter, ModalFooterButton, ModalHeader, PanelContent, } from '@finos/legend-art';
19
19
  import { observer } from 'mobx-react-lite';
20
- import { ReactFlow, Background, Controls, MiniMap, ReactFlowProvider, Position, } from 'reactflow';
20
+ import { Background, Controls, MiniMap, Position, ReactFlow, ReactFlowProvider, } from 'reactflow';
21
21
  import { LINEAGE_VIEW_MODE, } from '../../stores/lineage/LineageState.js';
22
- import {} from '@finos/legend-graph';
22
+ import { PropertyOwnerNode, } from '@finos/legend-graph';
23
+ import { PropertyOwnerNode as PropertyOwnerNodeComponent, } from './PropertyOwnerNode.js';
23
24
  function autoLayoutNodesAndEdges(nodes, edges, xSpacing = 220, ySpacing = 120, areaHeight = 800) {
24
25
  // Build in-degree map
25
26
  const nodeIds = nodes.map((n) => n.id);
@@ -131,7 +132,7 @@ const convertGraphToFlow = (graph) => {
131
132
  }
132
133
  const nodeList = graph.nodes.map((node) => ({
133
134
  id: node.data.id,
134
- label: node.data.text || node.data.id,
135
+ label: node.data.text,
135
136
  }));
136
137
  const edgeList = graph.edges.map((edge) => ({
137
138
  source: edge.data.source.data.id,
@@ -331,6 +332,297 @@ const convertReportLineageToFlow = (reportLineage) => {
331
332
  },
332
333
  };
333
334
  };
335
+ const convertPropertyLineageToFlow = (propertyLineage, selectedSourcePropertiesMap) => {
336
+ if (!propertyLineage?.propertyOwner.length) {
337
+ return {
338
+ nodes: [
339
+ {
340
+ id: 'no-property-lineage',
341
+ data: { label: 'No Property Lineage Generated' },
342
+ position: { x: 350, y: 300 },
343
+ type: 'default',
344
+ style: {
345
+ backgroundColor: '#f5f5f5',
346
+ border: '1px solid #ccc',
347
+ borderRadius: '5px',
348
+ padding: '10px',
349
+ width: 200,
350
+ },
351
+ },
352
+ ],
353
+ edges: [],
354
+ bounds: { width: 800, height: 600 },
355
+ };
356
+ }
357
+ const nodeList = propertyLineage.propertyOwner.map((node) => ({
358
+ id: node.id,
359
+ label: node.name,
360
+ isPropertyOwner: node instanceof PropertyOwnerNode,
361
+ node: node,
362
+ }));
363
+ const edgeList = propertyLineage.ownerLink.map((link) => ({
364
+ source: link.source,
365
+ target: link.target,
366
+ }));
367
+ const nodeIds = new Set(nodeList.map((n) => n.id));
368
+ const validEdgeList = edgeList.filter((edge) => {
369
+ return !(!nodeIds.has(edge.source) || !nodeIds.has(edge.target));
370
+ });
371
+ const nodeDimensions = new Map();
372
+ nodeList.forEach((nodeItem) => {
373
+ const isPropertyOwner = nodeItem.isPropertyOwner;
374
+ const highlightedProperties = selectedSourcePropertiesMap?.get(nodeItem.id);
375
+ const hasHighlightedProperties = (highlightedProperties?.size ?? 0) > 0;
376
+ let nodeWidth = 220;
377
+ let nodeHeight = isPropertyOwner ? 80 : 60;
378
+ if (hasHighlightedProperties && isPropertyOwner) {
379
+ const propertyCount = Math.min(highlightedProperties?.size ?? 0, 20);
380
+ // Header (50px) + properties (32px each including margins) + container padding (20px)
381
+ const propertiesHeight = propertyCount * 32; // 28px min-height + 4px margin
382
+ nodeHeight = 50 + propertiesHeight + 20;
383
+ nodeHeight = Math.max(nodeHeight, 160);
384
+ nodeHeight = Math.min(nodeHeight, 800);
385
+ nodeWidth = 340;
386
+ }
387
+ nodeDimensions.set(nodeItem.id, { width: nodeWidth, height: nodeHeight });
388
+ });
389
+ const maxHeight = Math.max(...Array.from(nodeDimensions.values()).map((d) => d.height));
390
+ const dynamicYSpacing = Math.max(220, maxHeight + 100);
391
+ const dynamicXSpacing = 380;
392
+ const positions = autoLayoutNodesAndEdges(nodeList, validEdgeList, dynamicXSpacing, dynamicYSpacing);
393
+ const bounds = getLayoutBounds(positions);
394
+ const nodes = nodeList.map((nodeItem) => {
395
+ const isPropertyOwner = nodeItem.isPropertyOwner;
396
+ const highlightedProperties = selectedSourcePropertiesMap?.get(nodeItem.id);
397
+ let allProperties = [];
398
+ if (isPropertyOwner && nodeItem.node instanceof PropertyOwnerNode) {
399
+ const properties = nodeItem.node.properties;
400
+ allProperties = properties.map((prop) => ({
401
+ name: prop.name,
402
+ dataType: prop.dataType,
403
+ propertyType: prop.propertyType,
404
+ }));
405
+ }
406
+ const dimensions = nodeDimensions.get(nodeItem.id) ?? {
407
+ width: 220,
408
+ height: 80,
409
+ };
410
+ const nodeData = {
411
+ label: nodeItem.label,
412
+ isPropertyOwner: isPropertyOwner,
413
+ highlightedProperties: highlightedProperties,
414
+ allProperties: allProperties,
415
+ };
416
+ return {
417
+ id: nodeItem.id,
418
+ data: nodeData,
419
+ position: positions[nodeItem.id] ?? { x: 0, y: 0 },
420
+ type: isPropertyOwner ? 'propertyOwner' : 'default',
421
+ sourcePosition: Position.Right,
422
+ targetPosition: Position.Left,
423
+ style: {
424
+ width: dimensions.width,
425
+ height: dimensions.height,
426
+ background: 'transparent',
427
+ border: 'none',
428
+ padding: 0,
429
+ margin: 0,
430
+ },
431
+ width: dimensions.width,
432
+ height: dimensions.height,
433
+ };
434
+ });
435
+ const edges = validEdgeList.map((edge, idx) => ({
436
+ id: `${edge.source}-${edge.target}-${idx}`,
437
+ source: edge.source,
438
+ target: edge.target,
439
+ type: 'smoothstep',
440
+ style: { strokeWidth: 2, stroke: '#1976d2' },
441
+ }));
442
+ const expandedBounds = {
443
+ width: Math.max(bounds.width, 1200),
444
+ height: Math.max(bounds.height, 800),
445
+ };
446
+ return { nodes, edges, bounds: expandedBounds };
447
+ };
448
+ const collectSourceOwnerProperties = (property, map, visited = new Set(), depth = 0) => {
449
+ if (depth > 50) {
450
+ return;
451
+ }
452
+ if (!Array.isArray(property.sourceProperties) ||
453
+ property.sourceProperties.length === 0) {
454
+ return;
455
+ }
456
+ const propertyKey = `${property.ownerID}-${property.name}`;
457
+ if (visited.has(propertyKey)) {
458
+ return;
459
+ }
460
+ visited.add(propertyKey);
461
+ try {
462
+ property.sourceProperties.forEach((sourceProp) => {
463
+ if (!map.has(sourceProp.ownerID)) {
464
+ map.set(sourceProp.ownerID, new Set());
465
+ }
466
+ const sourceSet = map.get(sourceProp.ownerID);
467
+ if (sourceSet) {
468
+ sourceSet.add(sourceProp.name);
469
+ }
470
+ collectSourceOwnerProperties(sourceProp, map, visited, depth + 1);
471
+ });
472
+ }
473
+ catch {
474
+ return;
475
+ }
476
+ finally {
477
+ visited.delete(propertyKey);
478
+ }
479
+ };
480
+ const findRelevantEdges = (highlightedNodeIds, allEdges) => {
481
+ const relevantEdgeIds = new Set();
482
+ allEdges.forEach((edge) => {
483
+ if (highlightedNodeIds.has(edge.source) &&
484
+ highlightedNodeIds.has(edge.target)) {
485
+ relevantEdgeIds.add(edge.id);
486
+ }
487
+ });
488
+ return relevantEdgeIds;
489
+ };
490
+ const PROPERTY_LINEAGE_NODE_TYPES = {
491
+ propertyOwner: PropertyOwnerNodeComponent,
492
+ };
493
+ const PropertyOwnerPanel = observer((props) => {
494
+ const { lineageState, selectedNodeId } = props;
495
+ const propertyLineage = lineageState.lineageData?.propertyLineage;
496
+ if (!selectedNodeId || !propertyLineage) {
497
+ return (_jsxs("div", { className: "property-lineage__panel", children: [_jsx("div", { className: "property-lineage__panel-header", children: _jsx("h3", { children: "Properties" }) }), _jsx("div", { className: "property-lineage__panel-content", children: _jsx("p", { children: "Select a node with properties to view details" }) })] }));
498
+ }
499
+ const selectedNode = propertyLineage.propertyOwner.find((node) => node.id === selectedNodeId);
500
+ const isPropertyOwner = selectedNode instanceof PropertyOwnerNode;
501
+ if (!isPropertyOwner) {
502
+ return (_jsxs("div", { className: "property-lineage__panel", children: [_jsx("div", { className: "property-lineage__panel-header", children: _jsx("h3", { children: "Properties" }) }), _jsx("div", { className: "property-lineage__panel-content", children: _jsx("p", { children: "Selected node has no properties" }) })] }));
503
+ }
504
+ const propertyOwnerNode = selectedNode;
505
+ const handlePropertyClick = (property) => {
506
+ const propertyKey = `${property.ownerID}-${property.name}`;
507
+ const currentSelection = lineageState.selectedProperty;
508
+ lineageState.setSelectedProperty(currentSelection === propertyKey ? undefined : propertyKey);
509
+ if (currentSelection === propertyKey) {
510
+ lineageState.setSelectedSourcePropertiesMap(undefined);
511
+ }
512
+ else {
513
+ const map = new Map();
514
+ collectSourceOwnerProperties(property, map, new Set(), 0);
515
+ lineageState.setSelectedSourcePropertiesMap(map);
516
+ }
517
+ };
518
+ const properties = propertyOwnerNode.properties;
519
+ let highlightedSourceProps = undefined;
520
+ if (lineageState.selectedSourcePropertiesMap?.has(propertyOwnerNode.id)) {
521
+ highlightedSourceProps = lineageState.selectedSourcePropertiesMap.get(propertyOwnerNode.id);
522
+ }
523
+ return (_jsxs("div", { className: "property-lineage__panel", children: [_jsxs("div", { className: "property-lineage__panel-header", children: [_jsx("h3", { children: propertyOwnerNode.name }), _jsxs("span", { className: "property-lineage__panel-subtitle", children: [properties.length, " properties"] })] }), _jsx("div", { className: "property-lineage__panel-content", children: properties.length === 0 ? (_jsx("p", { children: "No properties found" })) : (_jsx("div", { className: "property-lineage__properties-list", children: properties.map((property) => {
524
+ const propertyKey = `${property.ownerID}-${property.name}`;
525
+ const isSelected = lineageState.selectedProperty === propertyKey;
526
+ const isSourceHighlighted = highlightedSourceProps?.has(property.name);
527
+ return (_jsxs("div", { className: clsx('property-lineage__property-item', {
528
+ 'property-lineage__property-item--selected': isSelected,
529
+ 'property-lineage__property-item--source-highlighted': isSourceHighlighted,
530
+ }), onClick: () => handlePropertyClick(property), style: { cursor: 'pointer' }, children: [_jsx("div", { className: "property-lineage__property-name", children: property.name }), _jsxs("div", { className: "property-lineage__property-details", children: [_jsx("span", { className: "property-lineage__property-type", children: property.dataType ?? 'Unknown' }), _jsx("span", { className: "property-lineage__property-scope", children: property.propertyType })] }), property.scope && (_jsx("div", { className: "property-lineage__property-scope-detail", children: property.scope })), Array.isArray(property.sourceProperties) &&
531
+ property.sourceProperties.length > 0 && (_jsxs("div", { className: "property-lineage__property-sources", children: [property.sourceProperties.length, " source properties"] }))] }, propertyKey));
532
+ }) })) })] }));
533
+ });
534
+ const PropertyLineageGraphViewer = observer((props) => {
535
+ const { lineageState, nodes, edges } = props;
536
+ const getHighlightMaps = () => {
537
+ const highlightedNodeIds = new Set();
538
+ const sourcePropertiesMap = lineageState.selectedSourcePropertiesMap ??
539
+ new Map();
540
+ if (!lineageState.selectedProperty ||
541
+ !lineageState.selectedPropertyOwnerNode) {
542
+ return { highlightedNodeIds, sourcePropertiesMap };
543
+ }
544
+ const propertyLineage = lineageState.lineageData?.propertyLineage;
545
+ if (!propertyLineage) {
546
+ return { highlightedNodeIds, sourcePropertiesMap };
547
+ }
548
+ const selectedNode = propertyLineage.propertyOwner.find((node) => node.id === lineageState.selectedPropertyOwnerNode);
549
+ if (!(selectedNode instanceof PropertyOwnerNode)) {
550
+ return { highlightedNodeIds, sourcePropertiesMap };
551
+ }
552
+ const [ownerID, propertyName] = lineageState.selectedProperty.split('-');
553
+ const selectedProperty = selectedNode.properties.find((prop) => prop.ownerID === ownerID && prop.name === propertyName);
554
+ if (selectedProperty) {
555
+ highlightedNodeIds.add(selectedProperty.ownerID);
556
+ for (const ownerId of sourcePropertiesMap.keys()) {
557
+ highlightedNodeIds.add(ownerId);
558
+ }
559
+ }
560
+ return { highlightedNodeIds, sourcePropertiesMap };
561
+ };
562
+ const { highlightedNodeIds, sourcePropertiesMap } = getHighlightMaps();
563
+ const onNodeClick = (_event, node) => {
564
+ if (node.data.isPropertyOwner) {
565
+ lineageState.setSelectedPropertyOwnerNode(lineageState.selectedPropertyOwnerNode === node.id
566
+ ? undefined
567
+ : node.id);
568
+ lineageState.setSelectedProperty(undefined);
569
+ lineageState.setSelectedSourcePropertiesMap(undefined);
570
+ }
571
+ };
572
+ const enhancedNodes = nodes.map((node) => {
573
+ const isSelected = lineageState.selectedPropertyOwnerNode === node.id;
574
+ // Remove unnecessary type annotation
575
+ const isHighlighted = highlightedNodeIds.has(node.id);
576
+ // Add type for updatedData to avoid unsafe assignment
577
+ const updatedData = {
578
+ ...node.data,
579
+ isSelected,
580
+ isHighlighted,
581
+ };
582
+ return {
583
+ ...node,
584
+ data: updatedData,
585
+ style: {
586
+ ...node.style,
587
+ cursor: node.data.isPropertyOwner ? 'pointer' : 'default',
588
+ background: node.type === 'propertyOwner'
589
+ ? 'transparent'
590
+ : node.style?.backgroundColor,
591
+ border: node.type === 'propertyOwner'
592
+ ? 'none'
593
+ : isSelected
594
+ ? '3px solid #ff6b35'
595
+ : isHighlighted
596
+ ? '3px solid #4caf50'
597
+ : node.style?.border,
598
+ zIndex: isSelected ? 1000 : isHighlighted ? 100 : 1,
599
+ },
600
+ };
601
+ });
602
+ const highlightedEdgeIds = findRelevantEdges(highlightedNodeIds, edges);
603
+ const enhancedEdges = edges.map((edge) => {
604
+ const isHighlighted = highlightedEdgeIds.has(edge.id);
605
+ return {
606
+ ...edge,
607
+ style: {
608
+ ...edge.style,
609
+ strokeWidth: isHighlighted ? 4 : 2,
610
+ stroke: isHighlighted ? '#4caf50' : '#1976d2',
611
+ opacity: isHighlighted ? 1 : 0.6,
612
+ },
613
+ };
614
+ });
615
+ // DO NOT set selectedSourcePropertiesMap here as it causes infinite re-renders
616
+ // The map is already set in handlePropertyClick
617
+ return (_jsxs("div", { style: { height: '100%', width: '100%', display: 'flex' }, children: [_jsx("div", { style: { flex: 1, height: '100%' }, children: _jsx(ReactFlowProvider, { children: _jsxs(ReactFlow, { nodes: enhancedNodes, edges: enhancedEdges, nodeTypes: PROPERTY_LINEAGE_NODE_TYPES, defaultEdgeOptions: { type: 'default' }, defaultViewport: { x: 0, y: 0, zoom: 0.6 }, fitView: true, fitViewOptions: {
618
+ padding: 0.2,
619
+ minZoom: 0.3,
620
+ maxZoom: 1.5,
621
+ }, nodesDraggable: true, onNodeClick: onNodeClick, nodeExtent: [
622
+ [-1000, -1000],
623
+ [3000, 3000],
624
+ ], children: [_jsx(Background, {}), _jsx(MiniMap, {}), _jsx(Controls, {})] }, `${lineageState.selectedProperty}-${sourcePropertiesMap.size}`) }) }), lineageState.selectedPropertyOwnerNode && (_jsx("div", { style: { width: '350px', borderLeft: '1px solid #ccc' }, children: _jsx(PropertyOwnerPanel, { lineageState: lineageState, selectedNodeId: lineageState.selectedPropertyOwnerNode }) }))] }));
625
+ });
334
626
  // Graph Viewer Component
335
627
  const LineageGraphViewer = observer((props) => {
336
628
  const { nodes, edges } = props;
@@ -340,11 +632,13 @@ const TAB_ORDER = [
340
632
  LINEAGE_VIEW_MODE.DATABASE_LINEAGE,
341
633
  LINEAGE_VIEW_MODE.CLASS_LINEAGE,
342
634
  LINEAGE_VIEW_MODE.REPORT_LINEAGE,
635
+ LINEAGE_VIEW_MODE.PROPERTY_LINEAGE,
343
636
  ];
344
637
  const TAB_LABELS = {
345
638
  [LINEAGE_VIEW_MODE.CLASS_LINEAGE]: 'Class Lineage',
346
639
  [LINEAGE_VIEW_MODE.DATABASE_LINEAGE]: 'Database Lineage',
347
640
  [LINEAGE_VIEW_MODE.REPORT_LINEAGE]: 'Report Lineage',
641
+ [LINEAGE_VIEW_MODE.PROPERTY_LINEAGE]: 'Property Lineage',
348
642
  };
349
643
  const LineageTabSelector = observer((props) => {
350
644
  const { lineageState } = props;
@@ -356,17 +650,18 @@ const LineageViewerContent = observer((props) => {
356
650
  const { lineageState } = props;
357
651
  const selectedTab = lineageState.selectedTab;
358
652
  const lineageData = lineageState.lineageData;
359
- // Prepare all three graphs
360
653
  const classLineageFlow = convertGraphToFlow(lineageData?.classLineage);
361
654
  const databaseLineageFlow = convertGraphToFlow(lineageData?.databaseLineage);
362
655
  const reportLineageFlow = convertReportLineageToFlow(lineageData?.reportLineage);
363
- return (_jsx("div", { className: "query-builder__execution-plan-form--editor", style: { height: '100%' }, children: _jsxs("div", { className: "panel", style: { height: '100%' }, children: [_jsx(LineageTabSelector, { lineageState: lineageState }), _jsxs(PanelContent, { children: [selectedTab === LINEAGE_VIEW_MODE.CLASS_LINEAGE && (_jsx(LineageGraphViewer, { nodes: classLineageFlow.nodes, edges: classLineageFlow.edges })), selectedTab === LINEAGE_VIEW_MODE.DATABASE_LINEAGE && (_jsx(LineageGraphViewer, { nodes: databaseLineageFlow.nodes, edges: databaseLineageFlow.edges })), selectedTab === LINEAGE_VIEW_MODE.REPORT_LINEAGE && (_jsx(LineageGraphViewer, { nodes: reportLineageFlow.nodes, edges: reportLineageFlow.edges }))] })] }) }));
656
+ const propertyLineageFlow = convertPropertyLineageToFlow(lineageData?.propertyLineage, lineageState.selectedSourcePropertiesMap);
657
+ return (_jsx("div", { className: "query-builder__execution-plan-form--editor", style: { height: '100%' }, children: _jsxs("div", { className: "panel", style: { height: '100%' }, children: [_jsx(LineageTabSelector, { lineageState: lineageState }), _jsxs(PanelContent, { children: [selectedTab === LINEAGE_VIEW_MODE.CLASS_LINEAGE && (_jsx(LineageGraphViewer, { nodes: classLineageFlow.nodes, edges: classLineageFlow.edges })), selectedTab === LINEAGE_VIEW_MODE.DATABASE_LINEAGE && (_jsx(LineageGraphViewer, { nodes: databaseLineageFlow.nodes, edges: databaseLineageFlow.edges })), selectedTab === LINEAGE_VIEW_MODE.REPORT_LINEAGE && (_jsx(LineageGraphViewer, { nodes: reportLineageFlow.nodes, edges: reportLineageFlow.edges })), selectedTab === LINEAGE_VIEW_MODE.PROPERTY_LINEAGE && (_jsx(PropertyLineageGraphViewer, { lineageState: lineageState, nodes: propertyLineageFlow.nodes, edges: propertyLineageFlow.edges }))] })] }) }));
364
658
  });
365
659
  export const LineageViewer = observer((props) => {
366
660
  const { lineageState } = props;
367
661
  const closePlanViewer = () => {
368
662
  lineageState.setLineageData(undefined);
369
663
  lineageState.setSelectedTab(LINEAGE_VIEW_MODE.DATABASE_LINEAGE);
664
+ lineageState.clearPropertySelections();
370
665
  };
371
666
  useEffect(() => {
372
667
  lineageState.setSelectedTab(LINEAGE_VIEW_MODE.DATABASE_LINEAGE);
@@ -1 +1 @@
1
- {"version":3,"file":"LineageViewer.js","sourceRoot":"","sources":["../../../src/components/lineage/LineageViewer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LineageViewer.js","sourceRoot":"","sources":["../../../src/components/lineage/LineageViewer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Copyright (c) 2020-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
+ export interface PropertyOwnerNodeData {
17
+ label: string;
18
+ isPropertyOwner: boolean;
19
+ highlightedProperties?: Set<string> | undefined;
20
+ allProperties?: Array<{
21
+ name: string;
22
+ dataType?: string | undefined;
23
+ propertyType: string | undefined;
24
+ }> | undefined;
25
+ isSelected?: boolean | undefined;
26
+ isHighlighted?: boolean | undefined;
27
+ }
28
+ export declare const PropertyOwnerNode: (props: {
29
+ data: PropertyOwnerNodeData;
30
+ }) => import("react/jsx-runtime").JSX.Element;
31
+ //# sourceMappingURL=PropertyOwnerNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyOwnerNode.d.ts","sourceRoot":"","sources":["../../../src/components/lineage/PropertyOwnerNode.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAChD,aAAa,CAAC,EACV,KAAK,CAAC;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC9B,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;KAClC,CAAC,GACF,SAAS,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACrC;AAED,eAAO,MAAM,iBAAiB,GAAI,OAAO;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,4CA6GvE,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2020-present, Goldman Sachs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import React from 'react';
18
+ import { Handle, Position } from 'reactflow';
19
+ import { clsx } from '@finos/legend-art';
20
+ export const PropertyOwnerNode = (props) => {
21
+ const { data } = props;
22
+ const { label, isPropertyOwner, highlightedProperties, allProperties, isSelected, isHighlighted, } = data;
23
+ const hasHighlightedProperties = !!highlightedProperties && highlightedProperties.size > 0;
24
+ const showPropertyList = isPropertyOwner && hasHighlightedProperties;
25
+ const safeAllProperties = Array.isArray(allProperties) ? allProperties : [];
26
+ const filteredProperties = safeAllProperties
27
+ .filter((prop) => highlightedProperties?.has(prop.name))
28
+ .slice(0, 20);
29
+ const remainingCount = Math.max(0, safeAllProperties.filter((prop) => highlightedProperties?.has(prop.name))
30
+ .length - 20);
31
+ const needsScrolling = filteredProperties.length > 4;
32
+ return (_jsxs(_Fragment, { children: [_jsx(Handle, { type: "target", position: Position.Left, style: { left: -5 } }), _jsxs("div", { className: clsx('property-owner-node', {
33
+ 'property-owner-node--selected': isSelected,
34
+ 'property-owner-node--highlighted': isHighlighted,
35
+ 'property-owner-node--with-properties': showPropertyList,
36
+ 'property-owner-node--property-owner': isPropertyOwner,
37
+ 'property-owner-node--scrollable': needsScrolling,
38
+ }), style: {
39
+ width: '100%',
40
+ height: '100%',
41
+ minHeight: showPropertyList ? '160px' : '80px',
42
+ overflow: 'hidden',
43
+ position: 'absolute',
44
+ top: 0,
45
+ left: 0,
46
+ margin: 0,
47
+ padding: 0,
48
+ boxSizing: 'border-box',
49
+ }, children: [_jsxs("div", { className: "property-owner-node__header", children: [_jsx("div", { className: "property-owner-node__title", children: label }), isPropertyOwner && (_jsxs("div", { className: "property-owner-node__badge", children: [safeAllProperties.length, " properties"] }))] }), showPropertyList && (_jsx("div", { className: "property-owner-node__properties", children: _jsxs("div", { className: clsx('property-owner-node__properties-list', {
50
+ 'property-owner-node__properties-list--scrollable': needsScrolling,
51
+ }), children: [filteredProperties.map((property) => {
52
+ const propertyIsSelected = highlightedProperties.has(property.name);
53
+ return (_jsxs("div", { className: clsx('property-owner-node__property', {
54
+ 'property-owner-node__property--selected': propertyIsSelected,
55
+ }), children: [_jsx("div", { className: "property-owner-node__property-name", children: property.name }), _jsxs("div", { className: "property-owner-node__property-meta", children: [_jsx("span", { className: "property-owner-node__property-type", children: property.dataType ?? 'Unknown' }), _jsx("span", { className: "property-owner-node__property-scope", children: property.propertyType ?? 'Unknown' })] })] }, property.name));
56
+ }), remainingCount > 0 && (_jsx("div", { className: "property-owner-node__property property-owner-node__property--more", children: _jsxs("div", { className: "property-owner-node__property-name", children: ["... and ", remainingCount, " more"] }) }))] }) }))] }), _jsx(Handle, { type: "source", position: Position.Right, style: { right: -5 } })] }));
57
+ };
58
+ //# sourceMappingURL=PropertyOwnerNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyOwnerNode.js","sourceRoot":"","sources":["../../../src/components/lineage/PropertyOwnerNode.tsx"],"names":[],"mappings":"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"}