@finos/legend-query-builder 4.1.2 → 4.1.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/lib/components/QueryBuilderPropertyExpressionEditor.d.ts.map +1 -1
- package/lib/components/QueryBuilderPropertyExpressionEditor.js +1 -1
- package/lib/components/QueryBuilderPropertyExpressionEditor.js.map +1 -1
- package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
- package/lib/components/QueryBuilderResultPanel.js +91 -24
- package/lib/components/QueryBuilderResultPanel.js.map +1 -1
- package/lib/components/QueryBuilderTextEditor.d.ts.map +1 -1
- package/lib/components/QueryBuilderTextEditor.js +3 -1
- package/lib/components/QueryBuilderTextEditor.js.map +1 -1
- package/lib/components/execution-plan/AllocationExecutionNodeViewer.d.ts +23 -0
- package/lib/components/execution-plan/AllocationExecutionNodeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/AllocationExecutionNodeViewer.js +32 -0
- package/lib/components/execution-plan/AllocationExecutionNodeViewer.js.map +1 -0
- package/lib/components/execution-plan/ConstantExecutionNodeViewer.d.ts +23 -0
- package/lib/components/execution-plan/ConstantExecutionNodeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/ConstantExecutionNodeViewer.js +35 -0
- package/lib/components/execution-plan/ConstantExecutionNodeViewer.js.map +1 -0
- package/lib/components/execution-plan/DataTypeResultTypeViewer.d.ts +21 -0
- package/lib/components/execution-plan/DataTypeResultTypeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/DataTypeResultTypeViewer.js +31 -0
- package/lib/components/execution-plan/DataTypeResultTypeViewer.js.map +1 -0
- package/lib/components/execution-plan/ExecutionPlanViewer.d.ts +10 -4
- package/lib/components/execution-plan/ExecutionPlanViewer.d.ts.map +1 -1
- package/lib/components/execution-plan/ExecutionPlanViewer.js +74 -62
- package/lib/components/execution-plan/ExecutionPlanViewer.js.map +1 -1
- package/lib/components/execution-plan/FunctionParametersValidationNodeViewer.d.ts +25 -0
- package/lib/components/execution-plan/FunctionParametersValidationNodeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/FunctionParametersValidationNodeViewer.js +47 -0
- package/lib/components/execution-plan/FunctionParametersValidationNodeViewer.js.map +1 -0
- package/lib/components/execution-plan/RelationalTDSInstantiationExecutionNodeViewer.d.ts +23 -0
- package/lib/components/execution-plan/RelationalTDSInstantiationExecutionNodeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/RelationalTDSInstantiationExecutionNodeViewer.js +31 -0
- package/lib/components/execution-plan/RelationalTDSInstantiationExecutionNodeViewer.js.map +1 -0
- package/lib/components/execution-plan/ResultTypeViewer.d.ts +21 -0
- package/lib/components/execution-plan/ResultTypeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/ResultTypeViewer.js +33 -0
- package/lib/components/execution-plan/ResultTypeViewer.js.map +1 -0
- package/lib/components/execution-plan/SQLExecutionNodeViewer.d.ts +9 -1
- package/lib/components/execution-plan/SQLExecutionNodeViewer.d.ts.map +1 -1
- package/lib/components/execution-plan/SQLExecutionNodeViewer.js +12 -6
- package/lib/components/execution-plan/SQLExecutionNodeViewer.js.map +1 -1
- package/lib/components/execution-plan/SequenceExecutionNodeViewer.d.ts +23 -0
- package/lib/components/execution-plan/SequenceExecutionNodeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/SequenceExecutionNodeViewer.js +38 -0
- package/lib/components/execution-plan/SequenceExecutionNodeViewer.js.map +1 -0
- package/lib/components/execution-plan/TDSResultTypeViewer.d.ts +21 -0
- package/lib/components/execution-plan/TDSResultTypeViewer.d.ts.map +1 -0
- package/lib/components/execution-plan/TDSResultTypeViewer.js +25 -0
- package/lib/components/execution-plan/TDSResultTypeViewer.js.map +1 -0
- package/lib/components/explorer/QueryBuilderMilestoningEditor.d.ts.map +1 -1
- package/lib/components/explorer/QueryBuilderMilestoningEditor.js +3 -3
- package/lib/components/explorer/QueryBuilderMilestoningEditor.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js +25 -34
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.d.ts.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.js +68 -22
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.d.ts.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.js +4 -4
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.js.map +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.js +21 -32
- package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
- package/lib/components/shared/LambdaEditor.d.ts.map +1 -1
- package/lib/components/shared/LambdaEditor.js +10 -3
- package/lib/components/shared/LambdaEditor.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +4 -4
- package/lib/stores/QueryBuilderResultState.d.ts +0 -3
- package/lib/stores/QueryBuilderResultState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderResultState.js +2 -25
- package/lib/stores/QueryBuilderResultState.js.map +1 -1
- package/lib/stores/QueryBuilderTextEditorState.d.ts +3 -1
- package/lib/stores/QueryBuilderTextEditorState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderTextEditorState.js +2 -2
- package/lib/stores/QueryBuilderTextEditorState.js.map +1 -1
- package/lib/stores/QueryLoaderState.d.ts +2 -0
- package/lib/stores/QueryLoaderState.d.ts.map +1 -1
- package/lib/stores/QueryLoaderState.js +7 -3
- package/lib/stores/QueryLoaderState.js.map +1 -1
- package/lib/stores/execution-plan/ExecutionPlanState.d.ts +14 -1
- package/lib/stores/execution-plan/ExecutionPlanState.d.ts.map +1 -1
- package/lib/stores/execution-plan/ExecutionPlanState.js +86 -3
- package/lib/stores/execution-plan/ExecutionPlanState.js.map +1 -1
- package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js +3 -1
- package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js.map +1 -1
- package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.d.ts +4 -1
- package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js +5 -3
- package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js.map +1 -1
- package/lib/stores/shared/LambdaEditorState.d.ts +7 -2
- package/lib/stores/shared/LambdaEditorState.d.ts.map +1 -1
- package/lib/stores/shared/LambdaEditorState.js +7 -2
- package/lib/stores/shared/LambdaEditorState.js.map +1 -1
- package/package.json +12 -12
- package/src/components/QueryBuilderPropertyExpressionEditor.tsx +1 -2
- package/src/components/QueryBuilderResultPanel.tsx +146 -30
- package/src/components/QueryBuilderTextEditor.tsx +3 -1
- package/src/components/execution-plan/AllocationExecutionNodeViewer.tsx +77 -0
- package/src/components/execution-plan/ConstantExecutionNodeViewer.tsx +82 -0
- package/src/components/execution-plan/DataTypeResultTypeViewer.tsx +52 -0
- package/src/components/execution-plan/ExecutionPlanViewer.tsx +205 -195
- package/src/components/execution-plan/FunctionParametersValidationNodeViewer.tsx +118 -0
- package/src/components/execution-plan/RelationalTDSInstantiationExecutionNodeViewer.tsx +68 -0
- package/src/components/execution-plan/ResultTypeViewer.tsx +37 -0
- package/src/components/execution-plan/SQLExecutionNodeViewer.tsx +50 -19
- package/src/components/execution-plan/SequenceExecutionNodeViewer.tsx +95 -0
- package/src/components/execution-plan/TDSResultTypeViewer.tsx +59 -0
- package/src/components/explorer/QueryBuilderMilestoningEditor.tsx +5 -8
- package/src/components/fetch-structure/QueryBuilderPostFilterPanel.tsx +37 -62
- package/src/components/fetch-structure/QueryBuilderTDSPanel.tsx +161 -45
- package/src/components/fetch-structure/QueryBuilderTDSWindowPanel.tsx +6 -8
- package/src/components/filter/QueryBuilderFilterPanel.tsx +49 -73
- package/src/components/shared/LambdaEditor.tsx +10 -3
- package/src/stores/QueryBuilderResultState.ts +1 -42
- package/src/stores/QueryBuilderTextEditorState.ts +4 -2
- package/src/stores/QueryLoaderState.ts +11 -1
- package/src/stores/execution-plan/ExecutionPlanState.ts +142 -4
- package/src/stores/fetch-structure/tds/QueryBuilderTDSState.ts +3 -1
- package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.ts +8 -3
- package/src/stores/shared/LambdaEditorState.ts +12 -5
- package/tsconfig.json +8 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTypeResultTypeViewer.js","sourceRoot":"","sources":["../../../src/components/execution-plan/DataTypeResultTypeViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EACL,mCAAmC,GAEpC,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAC,MAAM,wBAAwB,GAEhC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;IACtB,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAC7B,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,UAAU,CAAC,IAAI,YAAY,mCAAmC,EAAE;QAClE,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;KACpC;IAED,IAAI,IAAI,KAAK,EAAE,EAAE;QACf,OAAO,mBAAK,CAAC;KACd;IAED,OAAO,CACL,eAAK,SAAS,EAAC,kCAAkC,aAC/C,KAAC,aAAa,IAAC,SAAS,EAAC,mDAAmD,YAC1E,8BACE,cAAK,SAAS,EAAC,yDAAyD,6BAElE,EACN,cAAK,SAAS,EAAC,0DAA0D,YACtE,IAAI,GACD,IACL,GACW,EAChB,KAAC,YAAY,KAAG,IACZ,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -13,13 +13,19 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
/// <reference types="react" resolution-mode="require"/>
|
|
17
16
|
import { type ExecutionPlanState } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
18
|
-
import { ExecutionPlan } from '@finos/legend-graph';
|
|
19
|
-
|
|
17
|
+
import { ExecutionPlan, ExecutionNode } from '@finos/legend-graph';
|
|
18
|
+
/**
|
|
19
|
+
* @modularize
|
|
20
|
+
* See https://github.com/finos/legend-studio/issues/65
|
|
21
|
+
*/
|
|
22
|
+
export declare const generateExecutionNodeLabel: (type: ExecutionNode) => string;
|
|
23
|
+
export declare const ExecutionPlanTree: ((props: {
|
|
20
24
|
executionPlanState: ExecutionPlanState;
|
|
21
25
|
executionPlan: ExecutionPlan;
|
|
22
|
-
}
|
|
26
|
+
}) => import("react/jsx-runtime").JSX.Element) & {
|
|
27
|
+
displayName: string;
|
|
28
|
+
};
|
|
23
29
|
export declare const ExecutionPlanViewer: ((props: {
|
|
24
30
|
executionPlanState: ExecutionPlanState;
|
|
25
31
|
}) => import("react/jsx-runtime").JSX.Element | null) & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionPlanViewer.d.ts","sourceRoot":"","sources":["../../../src/components/execution-plan/ExecutionPlanViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG
|
|
1
|
+
{"version":3,"file":"ExecutionPlanViewer.d.ts","sourceRoot":"","sources":["../../../src/components/execution-plan/ExecutionPlanViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6BH,OAAO,EAIL,KAAK,kBAAkB,EAExB,MAAM,mDAAmD,CAAC;AAE3D,OAAO,EACL,aAAa,EACb,aAAa,EAQd,MAAM,qBAAqB,CAAC;AAc7B;;;GAGG;AACH,eAAO,MAAM,0BAA0B,SAAU,aAAa,KAAG,MAgBhE,CAAC;AAyDF,eAAO,MAAM,iBAAiB,WACpB;IACN,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,aAAa,EAAE,aAAa,CAAC;CAC9B;;CA2EF,CAAC;AAqQF,eAAO,MAAM,mBAAmB,WACtB;IAAE,kBAAkB,EAAE,kBAAkB,CAAA;CAAE;;CA8EnD,CAAC"}
|
|
@@ -14,64 +14,52 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
import {
|
|
17
|
+
import { useEffect } from 'react';
|
|
18
18
|
import { Dialog, ResizablePanelGroup, ResizablePanelSplitter, ResizablePanel, ResizablePanelSplitterLine, clsx, TreeView, ChevronDownIcon, ChevronRightIcon, MenuContentItem, MenuContent, DropdownMenu, BlankPanelContent, PanelContent, ModalHeader, Modal, ModalBody, ModalFooter, PanelSideBarHeader, ModalFooterButton, PanelHeader, Panel, } from '@finos/legend-art';
|
|
19
|
-
import {
|
|
20
|
-
import { ExecutionNodeTreeNodeData, ExecutionPlanViewTreeNodeData, EXECUTION_PLAN_VIEW_MODE, } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
19
|
+
import { isNonNullable } from '@finos/legend-shared';
|
|
20
|
+
import { ExecutionNodeTreeNodeData, ExecutionPlanViewTreeNodeData, EXECUTION_PLAN_VIEW_MODE, generateExecutionNodeTreeNodeData, } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
21
21
|
import { observer } from 'mobx-react-lite';
|
|
22
|
-
import { ExecutionPlan, ExecutionNode, SQLExecutionNode, RelationalTDSInstantiationExecutionNode, } from '@finos/legend-graph';
|
|
22
|
+
import { ExecutionPlan, ExecutionNode, SQLExecutionNode, RelationalTDSInstantiationExecutionNode, FunctionParametersValidationNode, AllocationExecutionNode, ConstantExecutionNode, SequenceExecutionNode, } from '@finos/legend-graph';
|
|
23
23
|
import { SQLExecutionNodeViewer } from './SQLExecutionNodeViewer.js';
|
|
24
|
+
import { FunctionParametersValidationNodeViewer } from './FunctionParametersValidationNodeViewer.js';
|
|
25
|
+
import { AllocationExecutionNodeViewer } from './AllocationExecutionNodeViewer.js';
|
|
26
|
+
import { ConstantExecutionNodeViewer } from './ConstantExecutionNodeViewer.js';
|
|
27
|
+
import { SequenceExecutionNodeViewer } from './SequenceExecutionNodeViewer.js';
|
|
28
|
+
import { RelationalTDSInstantiationExecutionNodeViewer } from './RelationalTDSInstantiationExecutionNodeViewer.js';
|
|
24
29
|
import { CODE_EDITOR_LANGUAGE, CodeEditor, } from '@finos/legend-lego/code-editor';
|
|
25
30
|
import { DEFAULT_TAB_SIZE } from '@finos/legend-application';
|
|
31
|
+
const EXECUTION_PLAN = 'Execution Plan';
|
|
26
32
|
/**
|
|
27
33
|
* @modularize
|
|
28
34
|
* See https://github.com/finos/legend-studio/issues/65
|
|
29
35
|
*/
|
|
30
|
-
const generateExecutionNodeLabel = (type) => {
|
|
36
|
+
export const generateExecutionNodeLabel = (type) => {
|
|
31
37
|
if (type instanceof SQLExecutionNode) {
|
|
32
38
|
return `SQL Execution Node`;
|
|
33
39
|
}
|
|
34
40
|
else if (type instanceof RelationalTDSInstantiationExecutionNode) {
|
|
35
41
|
return `Relational TDS Instantiation Execution Node`;
|
|
36
42
|
}
|
|
43
|
+
else if (type instanceof FunctionParametersValidationNode) {
|
|
44
|
+
return `Function Parameters Validation Node`;
|
|
45
|
+
}
|
|
46
|
+
else if (type instanceof AllocationExecutionNode) {
|
|
47
|
+
return `Allocation Execution Node (${type.varName})`;
|
|
48
|
+
}
|
|
49
|
+
else if (type instanceof ConstantExecutionNode) {
|
|
50
|
+
return `Constant Execution Node`;
|
|
51
|
+
}
|
|
52
|
+
else if (type instanceof SequenceExecutionNode) {
|
|
53
|
+
return `Sequence Execution Node`;
|
|
54
|
+
}
|
|
37
55
|
else {
|
|
38
56
|
return 'Other';
|
|
39
57
|
}
|
|
40
58
|
};
|
|
41
|
-
const
|
|
42
|
-
const
|
|
43
|
-
const childrenIds = [];
|
|
44
|
-
executionNode.executionNodes
|
|
45
|
-
.slice()
|
|
46
|
-
.filter(filterByType(ExecutionNode))
|
|
47
|
-
.forEach((childExecutionNode) => {
|
|
48
|
-
addUniqueEntry(childrenIds, childExecutionNode._UUID);
|
|
49
|
-
});
|
|
50
|
-
executionNodeTreeNode.childrenIds = childrenIds;
|
|
51
|
-
return executionNodeTreeNode;
|
|
52
|
-
};
|
|
53
|
-
const generateExecutionPlanTreeNodeData = (executionPlan) => {
|
|
54
|
-
const executionPlanNode = new ExecutionPlanViewTreeNodeData(`Execution Plan`, `Execution Plan`, executionPlan);
|
|
55
|
-
const childrenIds = [];
|
|
56
|
-
const rootNodeId = executionPlan.rootExecutionNode._UUID;
|
|
57
|
-
addUniqueEntry(childrenIds, rootNodeId);
|
|
58
|
-
executionPlanNode.childrenIds = childrenIds;
|
|
59
|
-
return executionPlanNode;
|
|
60
|
-
};
|
|
61
|
-
const getExecutionPlanTreeData = (executionPlan) => {
|
|
62
|
-
const rootIds = [];
|
|
63
|
-
const nodes = new Map();
|
|
64
|
-
const executionPlanTreeNode = generateExecutionPlanTreeNodeData(executionPlan);
|
|
65
|
-
addUniqueEntry(rootIds, executionPlanTreeNode.id);
|
|
66
|
-
nodes.set(executionPlanTreeNode.id, executionPlanTreeNode);
|
|
67
|
-
return { rootIds, nodes };
|
|
68
|
-
};
|
|
69
|
-
const ExecutionNodeElementTreeNodeContainer = (props) => {
|
|
70
|
-
const { node, level, stepPaddingInRem, onNodeSelect, innerProps } = props;
|
|
71
|
-
const { onNodeExpand } = innerProps;
|
|
59
|
+
const ExecutionNodeElementTreeNodeContainer = observer((props) => {
|
|
60
|
+
const { node, level, stepPaddingInRem, onNodeSelect } = props;
|
|
72
61
|
const isExpandable = Boolean(node.childrenIds?.length);
|
|
73
62
|
const selectNode = () => onNodeSelect?.(node);
|
|
74
|
-
const expandNode = () => onNodeExpand(node);
|
|
75
63
|
const nodeExpandIcon = isExpandable ? (node.isOpen ? (_jsx(ChevronDownIcon, {})) : (_jsx(ChevronRightIcon, {}))) : (_jsx("div", {}));
|
|
76
64
|
return (_jsxs("div", { className: clsx('tree-view__node__container execution-plan-viewer__explorer-tree__node__container', {
|
|
77
65
|
'menu__trigger--on-menu-open': !node.isSelected,
|
|
@@ -79,60 +67,75 @@ const ExecutionNodeElementTreeNodeContainer = (props) => {
|
|
|
79
67
|
'execution-plan-viewer__explorer-tree__node__container--selected': node.isSelected,
|
|
80
68
|
}), style: {
|
|
81
69
|
paddingLeft: `${(level - 1) * (stepPaddingInRem ?? 1)}rem`,
|
|
82
|
-
}, onClick: selectNode, children: [_jsx("div", { className: "tree-view__node__icon", children: _jsx("div", { className: "tree-view__node__expand-icon",
|
|
83
|
-
};
|
|
84
|
-
export const ExecutionPlanTree = (props) => {
|
|
85
|
-
const { executionPlanState
|
|
86
|
-
// NOTE: We only need to compute this once so we use lazy initial state syntax
|
|
87
|
-
// See https://reactjs.org/docs/hooks-reference.html#lazy-initial-state
|
|
88
|
-
const [treeData, setTreeData] = useState(() => getExecutionPlanTreeData(executionPlan));
|
|
89
|
-
const onNodeSelect = (node) => {
|
|
90
|
-
if (node instanceof ExecutionPlanViewTreeNodeData) {
|
|
91
|
-
executionPlanState.transformMetadataToProtocolJson(node.executionPlan);
|
|
92
|
-
}
|
|
93
|
-
else if (node instanceof ExecutionNodeTreeNodeData) {
|
|
94
|
-
executionPlanState.transformMetadataToProtocolJson(node.executionNode);
|
|
95
|
-
}
|
|
96
|
-
executionPlanState.setSelectedNode(node);
|
|
97
|
-
};
|
|
70
|
+
}, onClick: selectNode, children: [_jsx("div", { className: "tree-view__node__icon", children: _jsx("div", { className: "tree-view__node__expand-icon", children: nodeExpandIcon }) }), _jsx("button", { className: "tree-view__node__label execution-plan-viewer__explorer-tree__node__label", tabIndex: -1, title: node.id, children: node.label })] }));
|
|
71
|
+
});
|
|
72
|
+
export const ExecutionPlanTree = observer((props) => {
|
|
73
|
+
const { executionPlanState } = props;
|
|
98
74
|
const onNodeExpand = (node) => {
|
|
99
75
|
if (node.childrenIds?.length) {
|
|
100
|
-
node.
|
|
76
|
+
node.setIsOpen(!node.isOpen);
|
|
101
77
|
if (node instanceof ExecutionPlanViewTreeNodeData) {
|
|
102
78
|
const rootNode = node.executionPlan.rootExecutionNode;
|
|
103
79
|
const rootNodeTreeNode = generateExecutionNodeTreeNodeData(rootNode, generateExecutionNodeLabel(rootNode), node);
|
|
104
|
-
|
|
80
|
+
executionPlanState.setTreeNode(rootNodeTreeNode.id, rootNodeTreeNode);
|
|
105
81
|
}
|
|
106
82
|
else if (node instanceof ExecutionNodeTreeNodeData) {
|
|
107
83
|
if (node.executionNode.executionNodes.length > 0) {
|
|
108
84
|
node.executionNode.executionNodes.forEach((exen) => {
|
|
109
85
|
const executionNodeTreeNode = generateExecutionNodeTreeNodeData(exen, generateExecutionNodeLabel(exen), node);
|
|
110
|
-
|
|
86
|
+
executionPlanState.setTreeNode(executionNodeTreeNode.id, executionNodeTreeNode);
|
|
111
87
|
});
|
|
112
88
|
}
|
|
113
89
|
}
|
|
114
90
|
}
|
|
115
|
-
|
|
91
|
+
executionPlanState.refreshTreeData();
|
|
92
|
+
};
|
|
93
|
+
const onNodeSelect = (node) => {
|
|
94
|
+
if (node instanceof ExecutionPlanViewTreeNodeData) {
|
|
95
|
+
executionPlanState.transformMetadataToProtocolJson(node.executionPlan);
|
|
96
|
+
}
|
|
97
|
+
else if (node instanceof ExecutionNodeTreeNodeData) {
|
|
98
|
+
executionPlanState.transformMetadataToProtocolJson(node.executionNode);
|
|
99
|
+
}
|
|
100
|
+
if (!(node.isOpen === true && node.isSelected === false)) {
|
|
101
|
+
onNodeExpand(node);
|
|
102
|
+
}
|
|
103
|
+
executionPlanState.setSelectedNode(node);
|
|
116
104
|
};
|
|
117
105
|
const getChildNodes = (node) => {
|
|
118
106
|
if (!node.childrenIds || node.childrenIds.length === 0) {
|
|
119
107
|
return [];
|
|
120
108
|
}
|
|
121
109
|
const childrenNodes = node.childrenIds
|
|
122
|
-
.map((id) =>
|
|
110
|
+
.map((id) => executionPlanState.nonNullableTreeData.nodes.get(id))
|
|
123
111
|
.filter(isNonNullable);
|
|
124
112
|
return childrenNodes;
|
|
125
113
|
};
|
|
126
114
|
return (_jsx(TreeView, { components: {
|
|
127
115
|
TreeNodeContainer: ExecutionNodeElementTreeNodeContainer,
|
|
128
|
-
}, treeData:
|
|
116
|
+
}, treeData: executionPlanState.nonNullableTreeData, getChildNodes: getChildNodes, onNodeSelect: onNodeSelect, innerProps: {
|
|
129
117
|
onNodeExpand,
|
|
130
118
|
} }));
|
|
131
|
-
};
|
|
119
|
+
});
|
|
132
120
|
const ExecutionNodeViewer = observer((props) => {
|
|
133
121
|
const { executionNode, executionPlanState } = props;
|
|
134
122
|
if (executionNode instanceof SQLExecutionNode) {
|
|
135
|
-
return (_jsx(SQLExecutionNodeViewer, { query: executionNode.sqlQuery, resultColumns: executionNode.resultColumns, executionPlanState: executionPlanState }));
|
|
123
|
+
return (_jsx(SQLExecutionNodeViewer, { query: executionNode.sqlQuery, resultColumns: executionNode.resultColumns, resultType: executionNode.resultType, executionPlanState: executionPlanState, viewJson: true }));
|
|
124
|
+
}
|
|
125
|
+
if (executionNode instanceof RelationalTDSInstantiationExecutionNode) {
|
|
126
|
+
return (_jsx(RelationalTDSInstantiationExecutionNodeViewer, { node: executionNode, executionPlanState: executionPlanState }));
|
|
127
|
+
}
|
|
128
|
+
if (executionNode instanceof FunctionParametersValidationNode) {
|
|
129
|
+
return (_jsx(FunctionParametersValidationNodeViewer, { functionParameters: executionNode.functionParameters, parameterValidationContext: executionNode.parameterValidationContext, executionPlanState: executionPlanState, resultType: executionNode.resultType }));
|
|
130
|
+
}
|
|
131
|
+
if (executionNode instanceof AllocationExecutionNode) {
|
|
132
|
+
return (_jsx(AllocationExecutionNodeViewer, { node: executionNode, executionPlanState: executionPlanState }));
|
|
133
|
+
}
|
|
134
|
+
if (executionNode instanceof ConstantExecutionNode) {
|
|
135
|
+
return (_jsx(ConstantExecutionNodeViewer, { cnode: executionNode, executionPlanState: executionPlanState }));
|
|
136
|
+
}
|
|
137
|
+
if (executionNode instanceof SequenceExecutionNode) {
|
|
138
|
+
return (_jsx(SequenceExecutionNodeViewer, { node: executionNode, executionPlanState: executionPlanState }));
|
|
136
139
|
}
|
|
137
140
|
return (_jsx(BlankPanelContent, { children: _jsxs("div", { className: "execution-node-viewer__unsupported-view", children: [_jsx("div", { className: "execution-node-viewer__unsupported-view__summary", children: `Can't display execution node` }), _jsx("button", { className: "btn--dark execution-node-viewer__unsupported-view__to-text-mode__btn", onClick: () => executionPlanState.setViewMode(EXECUTION_PLAN_VIEW_MODE.JSON), children: "View JSON" })] }) }));
|
|
138
141
|
});
|
|
@@ -147,6 +150,15 @@ const ExecutionPlanViewPanel = observer((props) => {
|
|
|
147
150
|
currentElement = executionPlanState.selectedNode.executionNode;
|
|
148
151
|
}
|
|
149
152
|
}
|
|
153
|
+
useEffect(() => {
|
|
154
|
+
if (executionPlanState.selectedNode === undefined) {
|
|
155
|
+
const firstNode = executionPlanState.treeData?.nodes.get(EXECUTION_PLAN);
|
|
156
|
+
if (firstNode instanceof ExecutionPlanViewTreeNodeData) {
|
|
157
|
+
executionPlanState.transformMetadataToProtocolJson(firstNode.executionPlan);
|
|
158
|
+
executionPlanState.setSelectedNode(firstNode);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}, [executionPlanState]);
|
|
150
162
|
const nativeViewModes = Object.values(EXECUTION_PLAN_VIEW_MODE);
|
|
151
163
|
return (_jsx("div", { className: "execution-plan-viewer__panel", children: executionPlanState.selectedNode !== undefined && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "panel__header execution-plan-viewer__panel__header", children: [_jsx("div", { className: "execution-plan-viewer__panel__header__tabs", children: _jsx("button", { className: "execution-plan-viewer__panel__header__tab execution-plan-viewer__panel__header__tab--active", children: executionPlanState.selectedNode.label }) }), _jsx(DropdownMenu, { className: "execution-plan-viewer__panel__view-mode__type", title: "View as...", content: _jsx(MenuContent, { className: "execution-plan-viewer__panel__view-mode__options execution-plan-viewer__panel__view-mode__options--with-group", children: _jsxs("div", { className: "execution-plan-viewer__panel__view-mode__option__group execution-plan-viewer__panel__view-mode__option__group--native", children: [_jsx("div", { className: "execution-plan-viewer__panel__view-mode__option__group__name", children: "native" }), _jsx("div", { className: "execution-plan-viewer__panel__view-mode__option__group__options", children: nativeViewModes.map((mode) => (_jsx(MenuContentItem, { className: "execution-plan-viewer__panel__view-mode__option", onClick: () => executionPlanState.setViewMode(mode), children: mode }, mode))) })] }) }), menuProps: {
|
|
152
164
|
anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
|
|
@@ -168,7 +180,7 @@ export const ExecutionPlanViewer = observer((props) => {
|
|
|
168
180
|
const { executionPlanState } = props;
|
|
169
181
|
const closePlanViewer = () => {
|
|
170
182
|
executionPlanState.setRawPlan(undefined);
|
|
171
|
-
executionPlanState.
|
|
183
|
+
executionPlanState.initialize(undefined);
|
|
172
184
|
executionPlanState.setExecutionPlanDisplayData('');
|
|
173
185
|
executionPlanState.setSelectedNode(undefined);
|
|
174
186
|
executionPlanState.setDebugText(undefined);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionPlanViewer.js","sourceRoot":"","sources":["../../../src/components/execution-plan/ExecutionPlanViewer.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExecutionPlanViewer.js","sourceRoot":"","sources":["../../../src/components/execution-plan/ExecutionPlanViewer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
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
|
+
import React from 'react';
|
|
17
|
+
import { type ExecutionPlanState } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
18
|
+
import { type VariableExpression, type ParameterValidationContext, type ResultType } from '@finos/legend-graph';
|
|
19
|
+
export declare const FunctionParametersValidationNodeViewer: React.FC<{
|
|
20
|
+
functionParameters: VariableExpression[];
|
|
21
|
+
parameterValidationContext: ParameterValidationContext[];
|
|
22
|
+
resultType: ResultType;
|
|
23
|
+
executionPlanState: ExecutionPlanState;
|
|
24
|
+
}>;
|
|
25
|
+
//# sourceMappingURL=FunctionParametersValidationNodeViewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FunctionParametersValidationNodeViewer.d.ts","sourceRoot":"","sources":["../../../src/components/execution-plan/FunctionParametersValidationNodeViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAE/B,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAU7B,eAAO,MAAM,sCAAsC,EAAE,KAAK,CAAC,EAAE,CAAC;IAC5D,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;IACzC,0BAA0B,EAAE,0BAA0B,EAAE,CAAC;IACzD,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CA2EC,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } 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 { observer } from 'mobx-react-lite';
|
|
18
|
+
import React from 'react';
|
|
19
|
+
import { EXECUTION_PLAN_VIEW_MODE, } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
20
|
+
import { Multiplicity, } from '@finos/legend-graph';
|
|
21
|
+
import { PanelListItem, PanelDivider, Button, PanelContent, } from '@finos/legend-art';
|
|
22
|
+
import { ResultTypeViewer } from './ResultTypeViewer.js';
|
|
23
|
+
export const FunctionParametersValidationNodeViewer = observer((props) => {
|
|
24
|
+
const { functionParameters, resultType, executionPlanState } = props;
|
|
25
|
+
const applicationStore = executionPlanState.applicationStore;
|
|
26
|
+
const showMultiplicity = (multiplicity) => {
|
|
27
|
+
if (multiplicity === Multiplicity.ZERO) {
|
|
28
|
+
return '[0]';
|
|
29
|
+
}
|
|
30
|
+
if (multiplicity === Multiplicity.ONE) {
|
|
31
|
+
return '[1]';
|
|
32
|
+
}
|
|
33
|
+
if (multiplicity === Multiplicity.ZERO_ONE) {
|
|
34
|
+
return '[0..1]';
|
|
35
|
+
}
|
|
36
|
+
if (multiplicity === Multiplicity.ZERO_MANY ||
|
|
37
|
+
multiplicity === Multiplicity.ONE_MANY) {
|
|
38
|
+
return '[*]';
|
|
39
|
+
}
|
|
40
|
+
if (multiplicity.upperBound === undefined) {
|
|
41
|
+
return `[${multiplicity.lowerBound.toString()}.. *]`;
|
|
42
|
+
}
|
|
43
|
+
return `[${multiplicity.lowerBound.toString()}..${multiplicity.upperBound.toString()}]`;
|
|
44
|
+
};
|
|
45
|
+
return (_jsxs(PanelContent, { darkMode: !applicationStore.layoutService.TEMPORARY__isLightColorThemeEnabled, children: [_jsx("div", { className: "query-builder__function-parameters-validation__container", children: _jsxs("div", { children: [_jsx(PanelListItem, { className: "query-builder__function-parameters-validation__container__item__label", children: "Variables Details" }), _jsx(PanelDivider, {}), _jsxs("table", { className: "table query-builder__function-parameters-validation__container__table", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { className: "table__cell--left", children: "Name" }), _jsx("th", { className: "table__cell--left", children: "Type" })] }) }), _jsx("tbody", { children: functionParameters.map((parameter) => (_jsx(React.Fragment, { children: _jsxs("tr", { children: [_jsx("td", { className: "table__cell--left", children: parameter.name }), _jsx("td", { className: "table__cell--left", children: `${parameter.genericType?.value.rawType.name} ${showMultiplicity(parameter.multiplicity)}` })] }) }, parameter.name))) })] })] }) }), _jsx(PanelDivider, {}), _jsx(ResultTypeViewer, { resultType: resultType }), _jsx("div", { className: "query-builder__function-parameters-validation__container", children: _jsx(Button, { className: "btn--dark execution-node-viewer__unsupported-view__to-text-mode__btn", onClick: () => executionPlanState.setViewMode(EXECUTION_PLAN_VIEW_MODE.JSON), text: "View JSON" }) }), _jsx(PanelDivider, {})] }));
|
|
46
|
+
});
|
|
47
|
+
//# sourceMappingURL=FunctionParametersValidationNodeViewer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FunctionParametersValidationNodeViewer.js","sourceRoot":"","sources":["../../../src/components/execution-plan/FunctionParametersValidationNodeViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,wBAAwB,GACzB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAGL,YAAY,GAEb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,MAAM,EACN,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,CAAC,MAAM,sCAAsC,GAK9C,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;IACtB,MAAM,EAAE,kBAAkB,EAAE,UAAU,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC;IACrE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,gBAAgB,CAAC;IAE7D,MAAM,gBAAgB,GAAG,CAAC,YAA0B,EAAU,EAAE;QAC9D,IAAI,YAAY,KAAK,YAAY,CAAC,IAAI,EAAE;YACtC,OAAO,KAAK,CAAC;SACd;QACD,IAAI,YAAY,KAAK,YAAY,CAAC,GAAG,EAAE;YACrC,OAAO,KAAK,CAAC;SACd;QACD,IAAI,YAAY,KAAK,YAAY,CAAC,QAAQ,EAAE;YAC1C,OAAO,QAAQ,CAAC;SACjB;QACD,IACE,YAAY,KAAK,YAAY,CAAC,SAAS;YACvC,YAAY,KAAK,YAAY,CAAC,QAAQ,EACtC;YACA,OAAO,KAAK,CAAC;SACd;QACD,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE;YACzC,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC;SACtD;QACD,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC;IAC1F,CAAC,CAAC;IACF,OAAO,CACL,MAAC,YAAY,IACX,QAAQ,EACN,CAAC,gBAAgB,CAAC,aAAa,CAAC,mCAAmC,aAGrE,cAAK,SAAS,EAAC,0DAA0D,YACvE,0BACE,KAAC,aAAa,IAAC,SAAS,EAAC,uEAAuE,kCAEhF,EAChB,KAAC,YAAY,KAAG,EAChB,iBAAO,SAAS,EAAC,uEAAuE,aACtF,0BACE,yBACE,aAAI,SAAS,EAAC,mBAAmB,qBAAU,EAC3C,aAAI,SAAS,EAAC,mBAAmB,qBAAU,IACxC,GACC,EACR,0BACG,kBAAkB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CACrC,KAAC,KAAK,CAAC,QAAQ,cACb,yBACE,aAAI,SAAS,EAAC,mBAAmB,YAAE,SAAS,CAAC,IAAI,GAAM,EACvD,aAAI,SAAS,EAAC,mBAAmB,YAC9B,GACC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IACvC,IAAI,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,GAC3C,IACF,IARc,SAAS,CAAC,IAAI,CASlB,CAClB,CAAC,GACI,IACF,IACJ,GACF,EACN,KAAC,YAAY,KAAG,EAChB,KAAC,gBAAgB,IAAC,UAAU,EAAE,UAAU,GAAI,EAC5C,cAAK,SAAS,EAAC,0DAA0D,YACvE,KAAC,MAAM,IACL,SAAS,EAAC,sEAAsE,EAChF,OAAO,EAAE,GAAS,EAAE,CAClB,kBAAkB,CAAC,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAE/D,IAAI,EAAC,WAAW,GAChB,GACE,EACN,KAAC,YAAY,KAAG,IACH,CAChB,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
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
|
+
/// <reference types="react" resolution-mode="require"/>
|
|
17
|
+
import { type ExecutionPlanState } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
18
|
+
import { type RelationalTDSInstantiationExecutionNode } from '@finos/legend-graph';
|
|
19
|
+
export declare const RelationalTDSInstantiationExecutionNodeViewer: React.FC<{
|
|
20
|
+
node: RelationalTDSInstantiationExecutionNode;
|
|
21
|
+
executionPlanState: ExecutionPlanState;
|
|
22
|
+
}>;
|
|
23
|
+
//# sourceMappingURL=RelationalTDSInstantiationExecutionNodeViewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RelationalTDSInstantiationExecutionNodeViewer.d.ts","sourceRoot":"","sources":["../../../src/components/execution-plan/RelationalTDSInstantiationExecutionNodeViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAEL,KAAK,uCAAuC,EAC7C,MAAM,qBAAqB,CAAC;AAK7B,eAAO,MAAM,6CAA6C,EAAE,KAAK,CAAC,EAAE,CAAC;IACnE,IAAI,EAAE,uCAAuC,CAAC;IAC9C,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAmCC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } 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 { observer } from 'mobx-react-lite';
|
|
18
|
+
import { EXECUTION_PLAN_VIEW_MODE, } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
19
|
+
import { SQLExecutionNode, } from '@finos/legend-graph';
|
|
20
|
+
import { PanelDivider, Button, PanelContent } from '@finos/legend-art';
|
|
21
|
+
import { SQLExecutionNodeViewerHelper } from './SQLExecutionNodeViewer.js';
|
|
22
|
+
import { ResultTypeViewer } from './ResultTypeViewer.js';
|
|
23
|
+
export const RelationalTDSInstantiationExecutionNodeViewer = observer((props) => {
|
|
24
|
+
const { node, executionPlanState } = props;
|
|
25
|
+
const resultType = node.resultType;
|
|
26
|
+
const applicationStore = executionPlanState.applicationStore;
|
|
27
|
+
return (_jsxs(PanelContent, { darkMode: !applicationStore.layoutService.TEMPORARY__isLightColorThemeEnabled, children: [node.executionNodes.length > 0 &&
|
|
28
|
+
node.executionNodes[0] !== undefined &&
|
|
29
|
+
node.executionNodes[0] instanceof SQLExecutionNode && (_jsx(SQLExecutionNodeViewerHelper, { query: node.executionNodes[0].sqlQuery, resultColumns: node.executionNodes[0].resultColumns, resultType: node.executionNodes[0].resultType, executionPlanState: executionPlanState })), _jsx(PanelDivider, {}), _jsx(ResultTypeViewer, { resultType: resultType }), _jsx("div", { className: "query-builder__sql__container", children: _jsx(Button, { className: "btn--dark execution-node-viewer__unsupported-view__to-text-mode__btn", onClick: () => executionPlanState.setViewMode(EXECUTION_PLAN_VIEW_MODE.JSON), text: "View JSON" }) }), _jsx(PanelDivider, {})] }));
|
|
30
|
+
});
|
|
31
|
+
//# sourceMappingURL=RelationalTDSInstantiationExecutionNodeViewer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RelationalTDSInstantiationExecutionNodeViewer.js","sourceRoot":"","sources":["../../../src/components/execution-plan/RelationalTDSInstantiationExecutionNodeViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAEL,wBAAwB,GACzB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EACL,gBAAgB,GAEjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,CAAC,MAAM,6CAA6C,GAGrD,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;IACtB,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACnC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,gBAAgB,CAAC;IAE7D,OAAO,CACL,MAAC,YAAY,IACX,QAAQ,EACN,CAAC,gBAAgB,CAAC,aAAa,CAAC,mCAAmC,aAGpE,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;gBAC7B,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,SAAS;gBACpC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,gBAAgB,IAAI,CACpD,KAAC,4BAA4B,IAC3B,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,EACtC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,aAAa,EACnD,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,EAC7C,kBAAkB,EAAE,kBAAkB,GACtC,CACH,EACH,KAAC,YAAY,KAAG,EAChB,KAAC,gBAAgB,IAAC,UAAU,EAAE,UAAU,GAAI,EAC5C,cAAK,SAAS,EAAC,+BAA+B,YAC5C,KAAC,MAAM,IACL,SAAS,EAAC,sEAAsE,EAChF,OAAO,EAAE,GAAS,EAAE,CAClB,kBAAkB,CAAC,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAE/D,IAAI,EAAC,WAAW,GAChB,GACE,EACN,KAAC,YAAY,KAAG,IACH,CAChB,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
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
|
+
/// <reference types="react" resolution-mode="require"/>
|
|
17
|
+
import { type ResultType } from '@finos/legend-graph';
|
|
18
|
+
export declare const ResultTypeViewer: React.FC<{
|
|
19
|
+
resultType: ResultType;
|
|
20
|
+
}>;
|
|
21
|
+
//# sourceMappingURL=ResultTypeViewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResultTypeViewer.d.ts","sourceRoot":"","sources":["../../../src/components/execution-plan/ResultTypeViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EACL,KAAK,UAAU,EAGhB,MAAM,qBAAqB,CAAC;AAI7B,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,UAAU,EAAE,UAAU,CAAC;CACxB,CASC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx, 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 { observer } from 'mobx-react-lite';
|
|
18
|
+
import { TDSResultType, DataTypeResultType, } from '@finos/legend-graph';
|
|
19
|
+
import { DataTypeResultTypeViewer } from './DataTypeResultTypeViewer.js';
|
|
20
|
+
import { TDSResultTypeViewer } from './TDSResultTypeViewer.js';
|
|
21
|
+
export const ResultTypeViewer = observer((props) => {
|
|
22
|
+
const { resultType } = props;
|
|
23
|
+
if (resultType instanceof DataTypeResultType) {
|
|
24
|
+
return _jsx(DataTypeResultTypeViewer, { resultType: resultType });
|
|
25
|
+
}
|
|
26
|
+
else if (resultType instanceof TDSResultType) {
|
|
27
|
+
return _jsx(TDSResultTypeViewer, { resultType: resultType });
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
return _jsx(_Fragment, {});
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=ResultTypeViewer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResultTypeViewer.js","sourceRoot":"","sources":["../../../src/components/execution-plan/ResultTypeViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAEL,aAAa,EACb,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAExB,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;IACtB,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAC7B,IAAI,UAAU,YAAY,kBAAkB,EAAE;QAC5C,OAAO,KAAC,wBAAwB,IAAC,UAAU,EAAE,UAAU,GAAI,CAAC;KAC7D;SAAM,IAAI,UAAU,YAAY,aAAa,EAAE;QAC9C,OAAO,KAAC,mBAAmB,IAAC,UAAU,EAAE,UAAU,GAAI,CAAC;KACxD;SAAM;QACL,OAAO,mBAAK,CAAC;KACd;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
/// <reference types="react" resolution-mode="require"/>
|
|
17
17
|
import { type ExecutionPlanState } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
18
|
-
import { type SQLResultColumn } from '@finos/legend-graph';
|
|
18
|
+
import { type SQLResultColumn, type ResultType } from '@finos/legend-graph';
|
|
19
19
|
/**
|
|
20
20
|
* TODO: Create a new `AbstractPlugin` for this, called `ExecutionPlanViewerPlugin`
|
|
21
21
|
* when we modularize relational and execution plan processing, etc.
|
|
@@ -23,9 +23,17 @@ import { type SQLResultColumn } from '@finos/legend-graph';
|
|
|
23
23
|
* @modularize
|
|
24
24
|
* See https://github.com/finos/legend-studio/issues/65
|
|
25
25
|
*/
|
|
26
|
+
export declare const SQLExecutionNodeViewerHelper: React.FC<{
|
|
27
|
+
query: string;
|
|
28
|
+
resultColumns: SQLResultColumn[];
|
|
29
|
+
resultType: ResultType;
|
|
30
|
+
executionPlanState: ExecutionPlanState;
|
|
31
|
+
}>;
|
|
26
32
|
export declare const SQLExecutionNodeViewer: React.FC<{
|
|
27
33
|
query: string;
|
|
28
34
|
resultColumns: SQLResultColumn[];
|
|
35
|
+
resultType: ResultType;
|
|
29
36
|
executionPlanState: ExecutionPlanState;
|
|
37
|
+
viewJson: boolean;
|
|
30
38
|
}>;
|
|
31
39
|
//# sourceMappingURL=SQLExecutionNodeViewer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SQLExecutionNodeViewer.d.ts","sourceRoot":"","sources":["../../../src/components/execution-plan/SQLExecutionNodeViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,
|
|
1
|
+
{"version":3,"file":"SQLExecutionNodeViewer.d.ts","sourceRoot":"","sources":["../../../src/components/execution-plan/SQLExecutionNodeViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EACL,KAAK,eAAe,EAEpB,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAe7B;;;;;;GAMG;AAEH,eAAO,MAAM,4BAA4B,EAAE,KAAK,CAAC,EAAE,CAAC;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAgFC,CAAC;AAEH,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,QAAQ,EAAE,OAAO,CAAC;CACnB,CA+BC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
3
|
* Copyright (c) 2020-present, Goldman Sachs
|
|
4
4
|
*
|
|
@@ -16,9 +16,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
16
16
|
*/
|
|
17
17
|
import { observer } from 'mobx-react-lite';
|
|
18
18
|
import { EXECUTION_PLAN_VIEW_MODE, } from '../../stores/execution-plan/ExecutionPlanState.js';
|
|
19
|
-
import { stringifyDataType } from '@finos/legend-graph';
|
|
19
|
+
import { stringifyDataType, } from '@finos/legend-graph';
|
|
20
20
|
import { PanelListItem, CopyIcon, PanelDivider, Button, PanelContent, } from '@finos/legend-art';
|
|
21
21
|
import { tryToFormatSql } from '../QueryBuilderResultPanel.js';
|
|
22
|
+
import { ResultTypeViewer } from './ResultTypeViewer.js';
|
|
22
23
|
import { CodeEditor, CODE_EDITOR_LANGUAGE, } from '@finos/legend-lego/code-editor';
|
|
23
24
|
/**
|
|
24
25
|
* TODO: Create a new `AbstractPlugin` for this, called `ExecutionPlanViewerPlugin`
|
|
@@ -27,8 +28,8 @@ import { CodeEditor, CODE_EDITOR_LANGUAGE, } from '@finos/legend-lego/code-edito
|
|
|
27
28
|
* @modularize
|
|
28
29
|
* See https://github.com/finos/legend-studio/issues/65
|
|
29
30
|
*/
|
|
30
|
-
export const
|
|
31
|
-
const { query, resultColumns, executionPlanState } = props;
|
|
31
|
+
export const SQLExecutionNodeViewerHelper = observer((props) => {
|
|
32
|
+
const { query, resultColumns, resultType, executionPlanState } = props;
|
|
32
33
|
const applicationStore = executionPlanState.applicationStore;
|
|
33
34
|
const copyExpression = (value) => {
|
|
34
35
|
applicationStore.clipboardService
|
|
@@ -36,8 +37,13 @@ export const SQLExecutionNodeViewer = observer((props) => {
|
|
|
36
37
|
.then(() => applicationStore.notificationService.notifySuccess('SQL Query copied', undefined, 2500))
|
|
37
38
|
.catch(applicationStore.alertUnhandledError);
|
|
38
39
|
};
|
|
39
|
-
return (_jsxs(
|
|
40
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "query-builder__sql__container", children: [_jsx(PanelDivider, {}), _jsxs("div", { children: [_jsx("div", { className: "query-builder__sql__container__item__label", children: _jsxs(PanelListItem, { children: ["SQL", _jsx("div", { children: _jsx("button", { onClick: () => {
|
|
40
41
|
copyExpression(query);
|
|
41
|
-
}, title: "Copy SQL Expression", className: "query-builder__sql__container__icon", children: _jsx(CopyIcon, {}) }) })] }) }), _jsx("div", { className: "query-builder__sql__container__code-editor", children: _jsx(CodeEditor, { inputValue: tryToFormatSql(query), language: CODE_EDITOR_LANGUAGE.SQL }) }), _jsx(PanelDivider, {})] }, query)] }), _jsx("div", { className: "query-builder__sql__container", children: _jsxs("div", { children: [_jsx(PanelListItem, { className: "query-builder__sql__container__item__label", children: "Result Columns" }), _jsx(PanelDivider, {}), _jsxs("table", { className: "table query-builder__sql__container__table", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { className: "table__cell--left", children: "Label" }), _jsx("th", { className: "table__cell--left", children: "Data Type" })] }) }), _jsx("tbody", { children: resultColumns.map((column) => (_jsxs("tr", { children: [_jsx("td", { className: "table__cell--left", children: column.label.replaceAll(`"`, '') }), column.dataType && (_jsx("td", { className: "table__cell--left", children: stringifyDataType(column.dataType) }))] }, column.label))) })] })] }) }), _jsx(
|
|
42
|
+
}, title: "Copy SQL Expression", className: "query-builder__sql__container__icon", children: _jsx(CopyIcon, {}) }) })] }) }), _jsx("div", { className: "query-builder__sql__container__code-editor", children: _jsx(CodeEditor, { inputValue: tryToFormatSql(query), language: CODE_EDITOR_LANGUAGE.SQL }) }), _jsx(PanelDivider, {})] }, query)] }), _jsx("div", { className: "query-builder__sql__container", children: _jsxs("div", { children: [_jsx(PanelListItem, { className: "query-builder__sql__container__item__label", children: "Result Columns" }), _jsx(PanelDivider, {}), _jsxs("table", { className: "table query-builder__sql__container__table", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { className: "table__cell--left", children: "Label" }), _jsx("th", { className: "table__cell--left", children: "Data Type" })] }) }), _jsx("tbody", { children: resultColumns.map((column) => (_jsxs("tr", { children: [_jsx("td", { className: "table__cell--left", children: column.label.replaceAll(`"`, '') }), column.dataType && (_jsx("td", { className: "table__cell--left", children: stringifyDataType(column.dataType) }))] }, column.label))) })] })] }) }), _jsx(ResultTypeViewer, { resultType: resultType })] }));
|
|
43
|
+
});
|
|
44
|
+
export const SQLExecutionNodeViewer = observer((props) => {
|
|
45
|
+
const { query, resultColumns, resultType, executionPlanState, viewJson } = props;
|
|
46
|
+
const applicationStore = executionPlanState.applicationStore;
|
|
47
|
+
return (_jsxs(PanelContent, { darkMode: !applicationStore.layoutService.TEMPORARY__isLightColorThemeEnabled, children: [_jsx(SQLExecutionNodeViewerHelper, { query: query, resultColumns: resultColumns, resultType: resultType, executionPlanState: executionPlanState }), viewJson && (_jsx("div", { className: "query-builder__sql__container", children: _jsx(Button, { className: "btn--dark execution-node-viewer__unsupported-view__to-text-mode__btn", onClick: () => executionPlanState.setViewMode(EXECUTION_PLAN_VIEW_MODE.JSON), text: "View JSON" }) })), _jsx(PanelDivider, {})] }));
|
|
42
48
|
});
|
|
43
49
|
//# sourceMappingURL=SQLExecutionNodeViewer.js.map
|