@finos/legend-extension-dsl-data-space 9.2.4 → 9.2.6

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 (62) hide show
  1. package/lib/components/DSL_DataSpace_LegendApplicationPlugin.d.ts +2 -1
  2. package/lib/components/DSL_DataSpace_LegendApplicationPlugin.d.ts.map +1 -1
  3. package/lib/components/DSL_DataSpace_LegendApplicationPlugin.js +8 -0
  4. package/lib/components/DSL_DataSpace_LegendApplicationPlugin.js.map +1 -1
  5. package/lib/components/DataSpaceDataAccess.d.ts.map +1 -1
  6. package/lib/components/DataSpaceDataAccess.js +70 -66
  7. package/lib/components/DataSpaceDataAccess.js.map +1 -1
  8. package/lib/components/DataSpaceDiagramViewer.js +1 -1
  9. package/lib/components/DataSpaceDiagramViewer.js.map +1 -1
  10. package/lib/components/DataSpaceModelsDocumentation.d.ts.map +1 -1
  11. package/lib/components/DataSpaceModelsDocumentation.js +337 -34
  12. package/lib/components/DataSpaceModelsDocumentation.js.map +1 -1
  13. package/lib/components/DataSpaceQuickStart.d.ts.map +1 -1
  14. package/lib/components/DataSpaceQuickStart.js +33 -12
  15. package/lib/components/DataSpaceQuickStart.js.map +1 -1
  16. package/lib/components/DataSpaceViewer.d.ts.map +1 -1
  17. package/lib/components/DataSpaceViewer.js +1 -1
  18. package/lib/components/DataSpaceViewer.js.map +1 -1
  19. package/lib/components/DataSpaceWiki.d.ts.map +1 -1
  20. package/lib/components/DataSpaceWiki.js +0 -1
  21. package/lib/components/DataSpaceWiki.js.map +1 -1
  22. package/lib/graphManager/action/analytics/DataSpaceAnalysis.d.ts +45 -9
  23. package/lib/graphManager/action/analytics/DataSpaceAnalysis.d.ts.map +1 -1
  24. package/lib/graphManager/action/analytics/DataSpaceAnalysis.js +55 -12
  25. package/lib/graphManager/action/analytics/DataSpaceAnalysis.js.map +1 -1
  26. package/lib/graphManager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.d.ts.map +1 -1
  27. package/lib/graphManager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.js +51 -8
  28. package/lib/graphManager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.js.map +1 -1
  29. package/lib/graphManager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.d.ts +15 -3
  30. package/lib/graphManager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.d.ts.map +1 -1
  31. package/lib/graphManager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.js +16 -2
  32. package/lib/graphManager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.js.map +1 -1
  33. package/lib/index.css +2 -2
  34. package/lib/index.css.map +1 -1
  35. package/lib/package.json +7 -10
  36. package/lib/stores/DataSpaceModelsDocumentationState.d.ts +93 -0
  37. package/lib/stores/DataSpaceModelsDocumentationState.d.ts.map +1 -0
  38. package/lib/stores/DataSpaceModelsDocumentationState.js +396 -0
  39. package/lib/stores/DataSpaceModelsDocumentationState.js.map +1 -0
  40. package/lib/stores/DataSpaceViewerState.d.ts +5 -0
  41. package/lib/stores/DataSpaceViewerState.d.ts.map +1 -1
  42. package/lib/stores/DataSpaceViewerState.js +6 -1
  43. package/lib/stores/DataSpaceViewerState.js.map +1 -1
  44. package/package.json +18 -21
  45. package/src/components/DSL_DataSpace_LegendApplicationPlugin.ts +10 -0
  46. package/src/components/DataSpaceDataAccess.tsx +101 -96
  47. package/src/components/DataSpaceDiagramViewer.tsx +1 -1
  48. package/src/components/DataSpaceModelsDocumentation.tsx +1043 -46
  49. package/src/components/DataSpaceQuickStart.tsx +69 -15
  50. package/src/components/DataSpaceViewer.tsx +2 -4
  51. package/src/components/DataSpaceWiki.tsx +0 -2
  52. package/src/graphManager/action/analytics/DataSpaceAnalysis.ts +71 -19
  53. package/src/graphManager/protocol/pure/v1/V1_DSL_DataSpace_PureGraphManagerExtension.ts +97 -29
  54. package/src/graphManager/protocol/pure/v1/engine/analytics/V1_DataSpaceAnalysis.ts +22 -3
  55. package/src/stores/DataSpaceModelsDocumentationState.ts +588 -0
  56. package/src/stores/DataSpaceViewerState.ts +14 -0
  57. package/tsconfig.json +1 -1
  58. package/lib/graphManager/action/analytics/HACKY__DataSpaceUsageShowcase.d.ts +0 -57
  59. package/lib/graphManager/action/analytics/HACKY__DataSpaceUsageShowcase.d.ts.map +0 -1
  60. package/lib/graphManager/action/analytics/HACKY__DataSpaceUsageShowcase.js +0 -209
  61. package/lib/graphManager/action/analytics/HACKY__DataSpaceUsageShowcase.js.map +0 -1
  62. package/src/graphManager/action/analytics/HACKY__DataSpaceUsageShowcase.ts +0 -313
@@ -15,44 +15,347 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
15
  * limitations under the License.
16
16
  */
17
17
  import { observer } from 'mobx-react-lite';
18
- import { AnchorLinkIcon, SearchIcon } from '@finos/legend-art';
18
+ import { AnchorLinkIcon, BasePopover, ChevronDownIcon, ChevronRightIcon, ClockIcon, CogIcon, DropdownMenu, FilterIcon, InfoCircleIcon, MenuContent, MenuContentItem, MoreVerticalIcon, SearchIcon, TimesIcon, Tooltip, clsx, TreeView, PackageIcon, CheckSquareIcon, MinusSquareIcon, EmptySquareIcon, CaretRightIcon, CaretLeftIcon, } from '@finos/legend-art';
19
19
  import {} from '../stores/DataSpaceViewerState.js';
20
- import { AgGridReact } from '@ag-grid-community/react';
21
- import { ClientSideRowModelModule } from '@ag-grid-community/client-side-row-model';
22
20
  import { DataSpaceWikiPlaceholder } from './DataSpacePlaceholder.js';
21
+ import { DataSpaceAssociationDocumentationEntry, DataSpaceBasicDocumentationEntry, DataSpaceClassDocumentationEntry, DataSpaceEnumerationDocumentationEntry, DataSpaceModelDocumentationEntry, DataSpacePropertyDocumentationEntry, } from '../graphManager/action/analytics/DataSpaceAnalysis.js';
22
+ import { debounce, isNonNullable, prettyCONSTName } from '@finos/legend-shared';
23
+ import { useApplicationStore } from '@finos/legend-application';
24
+ import { CORE_PURE_PATH, ELEMENT_PATH_DELIMITER, MILESTONING_STEREOTYPE, PROPERTY_ACCESSOR, getMultiplicityDescription, } from '@finos/legend-graph';
25
+ import { useMemo, useRef } from 'react';
26
+ import { ModelsDocumentationFilterTreeTypeNodeData, ModelsDocumentationFilterTreeElementNodeData, ModelsDocumentationFilterTreePackageNodeData, ModelsDocumentationFilterTreeNodeCheckType, uncheckFilterTreeNode, checkFilterTreeNode, uncheckAllFilterTree, ModelsDocumentationFilterTreeRootNodeData, } from '../stores/DataSpaceModelsDocumentationState.js';
27
+ import { DataGrid, } from '@finos/legend-lego/data-grid';
28
+ import { FuzzySearchAdvancedConfigMenu } from '@finos/legend-application/components';
29
+ const getMilestoningLabel = (val) => {
30
+ switch (val) {
31
+ case MILESTONING_STEREOTYPE.BITEMPORAL:
32
+ return 'Bi-temporal';
33
+ case MILESTONING_STEREOTYPE.BUSINESS_TEMPORAL:
34
+ return 'Business Temporal';
35
+ case MILESTONING_STEREOTYPE.PROCESSING_TEMPORAL:
36
+ return 'Processing Temporal';
37
+ default:
38
+ return undefined;
39
+ }
40
+ };
41
+ const ElementInfoTooltip = (props) => {
42
+ const { entry, children } = props;
43
+ return (_jsx(Tooltip, { arrow: false, placement: "bottom-end", disableInteractive: true, classes: {
44
+ tooltip: 'data-space__viewer__tooltip',
45
+ tooltipPlacementRight: 'data-space__viewer__tooltip--right',
46
+ }, TransitionProps: {
47
+ // disable transition
48
+ // NOTE: somehow, this is the only workaround we have, if for example
49
+ // we set `appear = true`, the tooltip will jump out of position
50
+ timeout: 0,
51
+ }, title: _jsxs("div", { className: "data-space__viewer__tooltip__content", children: [_jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Name" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: entry.name })] }), _jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Path" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: entry.path })] }), entry instanceof DataSpaceClassDocumentationEntry &&
52
+ entry.milestoning !== undefined && (_jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Milestoning" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: getMilestoningLabel(entry.milestoning) })] }))] }), children: children }));
53
+ };
54
+ const PropertyInfoTooltip = (props) => {
55
+ const { entry, elementEntry, children } = props;
56
+ return (_jsx(Tooltip, { arrow: false, placement: "bottom-end", disableInteractive: true, classes: {
57
+ tooltip: 'data-space__viewer__tooltip',
58
+ tooltipPlacementRight: 'data-space__viewer__tooltip--right',
59
+ }, TransitionProps: {
60
+ // disable transition
61
+ // NOTE: somehow, this is the only workaround we have, if for example
62
+ // we set `appear = true`, the tooltip will jump out of position
63
+ timeout: 0,
64
+ }, title: _jsxs("div", { className: "data-space__viewer__tooltip__content", children: [_jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Name" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: entry.name })] }), _jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Owner" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: elementEntry.path })] }), entry.type && (_jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Type" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: entry.type })] })), entry.multiplicity && (_jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Multiplicity" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: getMultiplicityDescription(entry.multiplicity) })] })), entry.milestoning && (_jsxs("div", { className: "data-space__viewer__tooltip__item", children: [_jsx("div", { className: "data-space__viewer__tooltip__item__label", children: "Milestoning" }), _jsx("div", { className: "data-space__viewer__tooltip__item__value", children: getMilestoningLabel(entry.milestoning) })] }))] }), children: children }));
65
+ };
66
+ const ElementContentCellRenderer = observer((params) => {
67
+ const { data, dataSpaceViewerState } = params;
68
+ const applicationStore = useApplicationStore();
69
+ const showHumanizedForm = dataSpaceViewerState.modelsDocumentationState.showHumanizedForm;
70
+ if (!data) {
71
+ return null;
72
+ }
73
+ const copyPath = () => {
74
+ applicationStore.clipboardService
75
+ .copyTextToClipboard(data.elementEntry.path)
76
+ .catch(applicationStore.alertUnhandledError);
77
+ };
78
+ const label = showHumanizedForm
79
+ ? prettyCONSTName(data.elementEntry.name)
80
+ : data.elementEntry.name;
81
+ if (data.elementEntry instanceof DataSpaceClassDocumentationEntry) {
82
+ return (_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell", title: `Class: ${data.elementEntry.path}`, children: [_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__label", children: [_jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__icon data-space__viewer__models-documentation__grid__cell__label__icon--class", children: "C" }), _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__text", children: label }), data.elementEntry.milestoning && (_jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__milestoning-badge", title: `Milestoning: ${getMilestoningLabel(data.elementEntry.milestoning)}`, children: _jsx(ClockIcon, {}) }))] }), _jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__actions", children: [_jsx(ElementInfoTooltip, { entry: data.elementEntry, children: _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__action", children: _jsx(InfoCircleIcon, { className: "data-space__viewer__models-documentation__grid__cell__action__info" }) }) }), _jsx(DropdownMenu, { className: "data-space__viewer__models-documentation__grid__cell__action", menuProps: {
83
+ anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
84
+ transformOrigin: { vertical: 'top', horizontal: 'right' },
85
+ elevation: 7,
86
+ }, content: _jsxs(MenuContent, { children: [_jsx(MenuContentItem, { onClick: copyPath, children: "Copy Path" }), _jsx(MenuContentItem, { disabled: true, children: "Preview Data" })] }), children: _jsx(MoreVerticalIcon, {}) })] })] }));
87
+ }
88
+ else if (data.elementEntry instanceof DataSpaceEnumerationDocumentationEntry) {
89
+ return (_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell", title: `Enumeration: ${data.elementEntry.path}`, children: [_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__label", children: [_jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__icon data-space__viewer__models-documentation__grid__cell__label__icon--enumeration", children: "E" }), _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__text", children: label })] }), _jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__actions", children: [_jsx(ElementInfoTooltip, { entry: data.elementEntry, children: _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__action", children: _jsx(InfoCircleIcon, { className: "data-space__viewer__models-documentation__grid__cell__action__info" }) }) }), _jsx(DropdownMenu, { className: "data-space__viewer__models-documentation__grid__cell__action", menuProps: {
90
+ anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
91
+ transformOrigin: { vertical: 'top', horizontal: 'right' },
92
+ elevation: 7,
93
+ }, content: _jsx(MenuContent, { children: _jsx(MenuContentItem, { onClick: copyPath, children: "Copy Path" }) }), children: _jsx(MoreVerticalIcon, {}) })] })] }));
94
+ }
95
+ else if (data.elementEntry instanceof DataSpaceAssociationDocumentationEntry) {
96
+ return (_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell", title: `Association: ${data.elementEntry.path}`, children: [_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__label", children: [_jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__icon data-space__viewer__models-documentation__grid__cell__label__icon--association", children: "A" }), _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__text", children: label })] }), _jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__actions", children: [_jsx(ElementInfoTooltip, { entry: data.elementEntry, children: _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__action", children: _jsx(InfoCircleIcon, { className: "data-space__viewer__models-documentation__grid__cell__action__info" }) }) }), _jsx(DropdownMenu, { className: "data-space__viewer__models-documentation__grid__cell__action", menuProps: {
97
+ anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
98
+ transformOrigin: { vertical: 'top', horizontal: 'right' },
99
+ elevation: 7,
100
+ }, content: _jsx(MenuContent, { children: _jsx(MenuContentItem, { onClick: copyPath, children: "Copy Path" }) }), children: _jsx(MoreVerticalIcon, {}) })] })] }));
101
+ }
102
+ return null;
103
+ });
104
+ const SubElementDocContentCellRenderer = observer((params) => {
105
+ const { data, dataSpaceViewerState } = params;
106
+ const applicationStore = useApplicationStore();
107
+ const showHumanizedForm = dataSpaceViewerState.modelsDocumentationState.showHumanizedForm;
108
+ if (!data) {
109
+ return null;
110
+ }
111
+ const label = showHumanizedForm ? prettyCONSTName(data.text) : data.text;
112
+ if (data.entry instanceof DataSpaceModelDocumentationEntry) {
113
+ return null;
114
+ }
115
+ else if (data.entry instanceof DataSpacePropertyDocumentationEntry) {
116
+ return (_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell", title: `Property: ${data.elementEntry.path}${PROPERTY_ACCESSOR}${data.entry.name}`, children: [_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__label", children: [_jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__icon data-space__viewer__models-documentation__grid__cell__label__icon--property", children: "P" }), _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__text", children: label }), data.entry.milestoning && (_jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__milestoning-badge", title: `Milestoning: ${getMilestoningLabel(data.entry.milestoning)}`, children: _jsx(ClockIcon, {}) }))] }), _jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__actions", children: [_jsx(PropertyInfoTooltip, { entry: data.entry, elementEntry: data.elementEntry, children: _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__action", children: _jsx(InfoCircleIcon, { className: "data-space__viewer__models-documentation__grid__cell__action__info" }) }) }), _jsx(DropdownMenu, { className: "data-space__viewer__models-documentation__grid__cell__action", menuProps: {
117
+ anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
118
+ transformOrigin: { vertical: 'top', horizontal: 'right' },
119
+ elevation: 7,
120
+ }, content: _jsx(MenuContent, { children: _jsx(MenuContentItem, { disabled: true, children: "Preview Data" }) }), children: _jsx(MoreVerticalIcon, {}) })] })] }));
121
+ }
122
+ else if (data.entry instanceof DataSpaceBasicDocumentationEntry) {
123
+ const copyValue = () => {
124
+ applicationStore.clipboardService
125
+ .copyTextToClipboard(data.elementEntry.path + PROPERTY_ACCESSOR + data.entry.name)
126
+ .catch(applicationStore.alertUnhandledError);
127
+ };
128
+ return (_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell", title: `Enum: ${data.elementEntry.path}${PROPERTY_ACCESSOR}${data.entry.name}`, children: [_jsxs("div", { className: "data-space__viewer__models-documentation__grid__cell__label", children: [_jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__icon data-space__viewer__models-documentation__grid__cell__label__icon--enum", children: "e" }), _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__label__text", children: label })] }), _jsx("div", { className: "data-space__viewer__models-documentation__grid__cell__actions", children: _jsx(DropdownMenu, { className: "data-space__viewer__models-documentation__grid__cell__action", menuProps: {
129
+ anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
130
+ transformOrigin: { vertical: 'top', horizontal: 'right' },
131
+ elevation: 7,
132
+ }, content: _jsx(MenuContent, { children: _jsx(MenuContentItem, { onClick: copyValue, children: "Copy Value" }) }), children: _jsx(MoreVerticalIcon, {}) }) })] }));
133
+ }
134
+ return null;
135
+ });
136
+ const ElementDocumentationCellRenderer = (params) => {
137
+ const data = params.data;
138
+ if (!data) {
139
+ return null;
140
+ }
141
+ return data.documentation.trim() ? (data.documentation) : (_jsx("div", { className: "data-space__viewer__grid__empty-cell", children: "No documentation provided" }));
142
+ };
143
+ const DataSpaceModelsDocumentationGridPanel = observer((props) => {
144
+ const { dataSpaceViewerState } = props;
145
+ const documentationState = dataSpaceViewerState.modelsDocumentationState;
146
+ return (_jsx("div", { className: clsx('data-space__viewer__models-documentation__grid data-space__viewer__grid ag-theme-balham-dark', {
147
+ 'data-space__viewer__models-documentation__grid--shrink': documentationState.showFilterPanel,
148
+ }), children: _jsx(DataGrid, { rowData: documentationState.filteredSearchResults, overlayNoRowsTemplate: `<div class="data-space__viewer__grid--empty">No documentation found</div>`,
149
+ // highlight element row
150
+ getRowClass: (params) => params.data?.entry instanceof DataSpaceModelDocumentationEntry
151
+ ? 'data-space__viewer__models-documentation__grid__element-row'
152
+ : undefined, alwaysShowVerticalScroll: true, gridOptions: {
153
+ suppressScrollOnNewData: true,
154
+ getRowId: (rowData) => rowData.data.uuid,
155
+ }, suppressFieldDotNotation: true, columnDefs: [
156
+ {
157
+ minWidth: 50,
158
+ sortable: true,
159
+ resizable: true,
160
+ cellRendererParams: {
161
+ dataSpaceViewerState,
162
+ },
163
+ cellRenderer: ElementContentCellRenderer,
164
+ headerName: 'Model',
165
+ flex: 1,
166
+ },
167
+ {
168
+ minWidth: 50,
169
+ sortable: false,
170
+ resizable: true,
171
+ cellRendererParams: {
172
+ dataSpaceViewerState,
173
+ },
174
+ cellRenderer: SubElementDocContentCellRenderer,
175
+ headerName: '',
176
+ flex: 1,
177
+ },
178
+ {
179
+ minWidth: 50,
180
+ sortable: false,
181
+ resizable: false,
182
+ headerClass: 'data-space__viewer__grid__last-column-header',
183
+ cellRenderer: ElementDocumentationCellRenderer,
184
+ headerName: 'Documentation',
185
+ flex: 1,
186
+ wrapText: true,
187
+ autoHeight: true,
188
+ },
189
+ ] }) }));
190
+ });
191
+ const getFilterTreeNodeIcon = (node) => {
192
+ if (node instanceof ModelsDocumentationFilterTreeElementNodeData) {
193
+ if (node.typePath === CORE_PURE_PATH.CLASS) {
194
+ return (_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__type-icon data-space__viewer__models-documentation__filter__tree__node__type-icon--class", children: "C" }));
195
+ }
196
+ else if (node.typePath === CORE_PURE_PATH.ENUMERATION) {
197
+ return (_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__type-icon data-space__viewer__models-documentation__filter__tree__node__type-icon--enumeration", children: "E" }));
198
+ }
199
+ else if (node.typePath === CORE_PURE_PATH.ASSOCIATION) {
200
+ return (_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__type-icon data-space__viewer__models-documentation__filter__tree__node__type-icon--association", children: "A" }));
201
+ }
202
+ }
203
+ else if (node instanceof ModelsDocumentationFilterTreePackageNodeData) {
204
+ return (_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__type-icon data-space__viewer__models-documentation__filter__tree__node__type-icon--package", children: _jsx(PackageIcon, {}) }));
205
+ }
206
+ else if (node instanceof ModelsDocumentationFilterTreeTypeNodeData) {
207
+ switch (node.typePath) {
208
+ case CORE_PURE_PATH.CLASS:
209
+ return (_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__type-icon data-space__viewer__models-documentation__filter__tree__node__type-icon--class", children: "C" }));
210
+ case CORE_PURE_PATH.ENUMERATION:
211
+ return (_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__type-icon data-space__viewer__models-documentation__filter__tree__node__type-icon--enumeration", children: "E" }));
212
+ case CORE_PURE_PATH.ASSOCIATION:
213
+ return (_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__type-icon data-space__viewer__models-documentation__filter__tree__node__type-icon--association", children: "A" }));
214
+ default:
215
+ return undefined;
216
+ }
217
+ }
218
+ return undefined;
219
+ };
220
+ const getFilterNodeCount = (node, documentationState) => {
221
+ if (node instanceof ModelsDocumentationFilterTreeElementNodeData) {
222
+ return documentationState.searchResults.filter((result) => node.elementPath === result.elementEntry.path).length;
223
+ }
224
+ else if (node instanceof ModelsDocumentationFilterTreePackageNodeData) {
225
+ return documentationState.searchResults.filter((result) => node.packagePath === result.elementEntry.path ||
226
+ result.elementEntry.path.startsWith(`${node.packagePath}${ELEMENT_PATH_DELIMITER}`)).length;
227
+ }
228
+ else if (node instanceof ModelsDocumentationFilterTreeTypeNodeData) {
229
+ return node.typePath === CORE_PURE_PATH.CLASS
230
+ ? documentationState.searchResults.filter((entry) => entry.elementEntry instanceof DataSpaceClassDocumentationEntry).length
231
+ : node.typePath === CORE_PURE_PATH.ENUMERATION
232
+ ? documentationState.searchResults.filter((entry) => entry.elementEntry instanceof
233
+ DataSpaceEnumerationDocumentationEntry).length
234
+ : node.typePath === CORE_PURE_PATH.ASSOCIATION
235
+ ? documentationState.searchResults.filter((entry) => entry.elementEntry instanceof
236
+ DataSpaceAssociationDocumentationEntry).length
237
+ : undefined;
238
+ }
239
+ else if (node instanceof ModelsDocumentationFilterTreeRootNodeData) {
240
+ return documentationState.searchResults.length;
241
+ }
242
+ return undefined;
243
+ };
244
+ const DataSpaceModelsDocumentationFilterTreeNodeContainer = observer((props) => {
245
+ const { node, level, innerProps } = props;
246
+ const { documentationState, refreshTreeData, uncheckTree, updateFilter } = innerProps;
247
+ const isExpandable = Boolean(node.childrenIds.length);
248
+ const expandIcon = isExpandable ? (node.isOpen ? (_jsx(ChevronDownIcon, {})) : (_jsx(ChevronRightIcon, {}))) : (_jsx("div", {}));
249
+ const checkerIcon = node.checkType === ModelsDocumentationFilterTreeNodeCheckType.CHECKED ? (_jsx(CheckSquareIcon, {})) : node.checkType ===
250
+ ModelsDocumentationFilterTreeNodeCheckType.PARTIALLY_CHECKED ? (_jsx(MinusSquareIcon, {})) : (_jsx(EmptySquareIcon, {}));
251
+ const nodeCount = getFilterNodeCount(node, documentationState);
252
+ const toggleChecker = (event) => {
253
+ event.stopPropagation();
254
+ if (node.checkType === ModelsDocumentationFilterTreeNodeCheckType.CHECKED) {
255
+ uncheckFilterTreeNode(node);
256
+ }
257
+ else {
258
+ checkFilterTreeNode(node);
259
+ }
260
+ refreshTreeData();
261
+ updateFilter();
262
+ };
263
+ const toggleExpandNode = (event) => {
264
+ event.stopPropagation();
265
+ if (isExpandable) {
266
+ node.setIsOpen(!node.isOpen);
267
+ refreshTreeData();
268
+ }
269
+ };
270
+ const onNodeClick = () => {
271
+ uncheckTree();
272
+ checkFilterTreeNode(node);
273
+ if (isExpandable && !node.isOpen) {
274
+ node.setIsOpen(true);
275
+ }
276
+ refreshTreeData();
277
+ updateFilter();
278
+ };
279
+ return (_jsxs("div", { className: "tree-view__node__container data-space__viewer__models-documentation__filter__tree__node__container", style: {
280
+ paddingLeft: `${(level - 1) * 1.4}rem`,
281
+ display: 'flex',
282
+ }, onClick: onNodeClick, children: [_jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__expand-icon", onClick: toggleExpandNode, children: expandIcon }), _jsx("div", { className: "data-space__viewer__models-documentation__filter__tree__node__checker", onClick: toggleChecker, children: checkerIcon }), getFilterTreeNodeIcon(node), _jsx("div", { className: "tree-view__node__label data-space__viewer__models-documentation__filter__tree__node__label", children: node.label }), nodeCount !== undefined && (_jsx("div", { className: "tree-view__node__label data-space__viewer__models-documentation__filter__tree__node__count", children: nodeCount }))] }));
283
+ });
284
+ const DataSpaceModelsDocumentationFilterPanel = observer((props) => {
285
+ const { dataSpaceViewerState } = props;
286
+ const documentationState = dataSpaceViewerState.modelsDocumentationState;
287
+ const resetAll = () => documentationState.resetAllFilters();
288
+ const resetTypeFilter = () => documentationState.resetTypeFilter();
289
+ const resetPackageFilter = () => documentationState.resetPackageFilter();
290
+ return (_jsxs("div", { className: "data-space__viewer__models-documentation__filter__panel", children: [_jsx("div", { className: "data-space__viewer__models-documentation__filter__group", children: _jsxs("div", { className: "data-space__viewer__models-documentation__filter__group__header", children: [_jsx("div", { className: "data-space__viewer__models-documentation__filter__group__header__label", children: "Filter" }), _jsx("div", { className: "data-space__viewer__models-documentation__filter__group__header__actions", children: _jsx("button", { className: "data-space__viewer__models-documentation__filter__group__header__reset", tabIndex: -1, disabled: !documentationState.isFilterCustomized, onClick: resetAll, children: "Reset All" }) })] }) }), _jsxs("div", { className: "data-space__viewer__models-documentation__filter__group data-space__viewer__models-documentation__filter__group--by-type", children: [_jsxs("div", { className: "data-space__viewer__models-documentation__filter__group__header", children: [_jsx("div", { className: "data-space__viewer__models-documentation__filter__group__header__label", children: "Filter by Type" }), _jsx("div", { className: "data-space__viewer__models-documentation__filter__group__header__actions", children: _jsx("button", { className: "data-space__viewer__models-documentation__filter__group__header__reset", tabIndex: -1, disabled: !documentationState.isTypeFilterCustomized, onClick: resetTypeFilter, children: "Reset" }) })] }), _jsx("div", { className: "data-space__viewer__models-documentation__filter__group__content", children: _jsx(TreeView, { components: {
291
+ TreeNodeContainer: DataSpaceModelsDocumentationFilterTreeNodeContainer,
292
+ }, treeData: documentationState.typeFilterTreeData, getChildNodes: (node) => node.childrenIds
293
+ .map((id) => documentationState.typeFilterTreeData.nodes.get(id))
294
+ .filter(isNonNullable)
295
+ .sort((a, b) => a.label.localeCompare(b.label)), innerProps: {
296
+ documentationState,
297
+ refreshTreeData: () => documentationState.resetTypeFilterTreeData(),
298
+ uncheckTree: () => uncheckAllFilterTree(documentationState.typeFilterTreeData),
299
+ updateFilter: () => documentationState.updateTypeFilter(),
300
+ } }) })] }), _jsxs("div", { className: "data-space__viewer__models-documentation__filter__group data-space__viewer__models-documentation__filter__group--by-package", children: [_jsxs("div", { className: "data-space__viewer__models-documentation__filter__group__header", children: [_jsx("div", { className: "data-space__viewer__models-documentation__filter__group__header__label", children: "Filter by Package" }), _jsx("div", { className: "data-space__viewer__models-documentation__filter__group__header__actions", children: _jsx("button", { className: "data-space__viewer__models-documentation__filter__group__header__reset", tabIndex: -1, disabled: !documentationState.isPackageFilterCustomized, onClick: resetPackageFilter, children: "Reset" }) })] }), _jsx("div", { className: "data-space__viewer__models-documentation__filter__group__content", children: _jsx(TreeView, { components: {
301
+ TreeNodeContainer: DataSpaceModelsDocumentationFilterTreeNodeContainer,
302
+ }, treeData: documentationState.packageFilterTreeData, getChildNodes: (node) => node.childrenIds
303
+ .map((id) => documentationState.packageFilterTreeData.nodes.get(id))
304
+ .filter(isNonNullable)
305
+ .sort((a, b) => a.label.localeCompare(b.label)), innerProps: {
306
+ documentationState,
307
+ refreshTreeData: () => documentationState.resetPackageFilterTreeData(),
308
+ uncheckTree: () => uncheckAllFilterTree(documentationState.packageFilterTreeData),
309
+ updateFilter: () => documentationState.updatePackageFilter(),
310
+ } }) })] })] }));
311
+ });
312
+ const DataSpaceModelsDocumentationSearchBar = observer((props) => {
313
+ const { dataSpaceViewerState } = props;
314
+ const searchInputRef = useRef(null);
315
+ const searchConfigTriggerRef = useRef(null);
316
+ const documentationState = dataSpaceViewerState.modelsDocumentationState;
317
+ const searchText = documentationState.searchText;
318
+ const debouncedSearch = useMemo(() => debounce(() => documentationState.search(), 100), [documentationState]);
319
+ const onSearchTextChange = (event) => {
320
+ documentationState.setSearchText(event.target.value);
321
+ debouncedSearch.cancel();
322
+ debouncedSearch();
323
+ };
324
+ // actions
325
+ const clearSearchText = () => {
326
+ documentationState.resetSearch();
327
+ searchInputRef.current?.focus();
328
+ };
329
+ const toggleSearchConfigMenu = () => documentationState.setShowSearchConfigurationMenu(!documentationState.showSearchConfigurationMenu);
330
+ const onKeyDown = (event) => {
331
+ if (event.code === 'Escape') {
332
+ searchInputRef.current?.select();
333
+ }
334
+ };
335
+ // search config menu
336
+ const closeSearchConfigMenu = () => documentationState.setShowSearchConfigurationMenu(false);
337
+ const onSearchConfigMenuOpen = () => searchInputRef.current?.focus();
338
+ return (_jsxs("div", { className: "data-space__viewer__models-documentation__search", children: [_jsx("input", { ref: searchInputRef, onKeyDown: onKeyDown, className: "data-space__viewer__models-documentation__search__input input--dark", spellCheck: false, onChange: onSearchTextChange, value: searchText, placeholder: "Search documentation" }), _jsx("button", { ref: searchConfigTriggerRef, className: clsx('data-space__viewer__models-documentation__search__input__config__trigger', {
339
+ 'data-space__viewer__models-documentation__search__input__config__trigger--toggled': documentationState.showSearchConfigurationMenu,
340
+ 'data-space__viewer__models-documentation__search__input__config__trigger--active': documentationState.searchConfigurationState
341
+ .isAdvancedSearchActive,
342
+ }), tabIndex: -1, onClick: toggleSearchConfigMenu, title: `${documentationState.searchConfigurationState.isAdvancedSearchActive
343
+ ? 'Advanced search is currently active\n'
344
+ : ''}Click to toggle search config menu`, children: _jsx(CogIcon, {}) }), _jsx(BasePopover, { open: Boolean(documentationState.showSearchConfigurationMenu), TransitionProps: {
345
+ onEnter: onSearchConfigMenuOpen,
346
+ }, anchorEl: searchConfigTriggerRef.current, onClose: closeSearchConfigMenu, anchorOrigin: {
347
+ vertical: 'bottom',
348
+ horizontal: 'center',
349
+ }, transformOrigin: {
350
+ vertical: 'top',
351
+ horizontal: 'center',
352
+ }, children: _jsx(FuzzySearchAdvancedConfigMenu, { configState: documentationState.searchConfigurationState }) }), !searchText ? (_jsx("div", { className: "data-space__viewer__models-documentation__search__input__search__icon", children: _jsx(SearchIcon, {}) })) : (_jsx("button", { className: "data-space__viewer__models-documentation__search__input__clear-btn", tabIndex: -1, onClick: clearSearchText, title: "Clear", children: _jsx(TimesIcon, {}) }))] }));
353
+ });
23
354
  export const DataSpaceModelsDocumentation = observer((props) => {
24
355
  const { dataSpaceViewerState } = props;
25
356
  const documentationEntries = dataSpaceViewerState.dataSpaceAnalysisResult.elementDocs;
26
- return (_jsxs("div", { className: "data-space__viewer__wiki__section", children: [_jsx("div", { className: "data-space__viewer__wiki__section__header", children: _jsxs("div", { className: "data-space__viewer__wiki__section__header__label", children: ["Models Documentation", _jsx("div", { className: "data-space__viewer__wiki__section__header__anchor", children: _jsx(AnchorLinkIcon, {}) })] }) }), _jsxs("div", { className: "data-space__viewer__wiki__section__content", children: [documentationEntries.length > 0 && (_jsxs("div", { className: "data-space__viewer__models-documentation", children: [_jsx("div", { className: "data-space__viewer__models-documentation__search", children: _jsxs("div", { className: "data-space__viewer__models-documentation__search__input-group", children: [_jsx("input", { className: "data-space__viewer__models-documentation__search__input-group__input input" }), _jsx("div", { className: "data-space__viewer__models-documentation__search__input-group__icon", children: _jsx(SearchIcon, {}) })] }) }), _jsx("div", { className: "data-space__viewer__models-documentation__grid data-space__viewer__grid ag-theme-balham-dark", children: _jsx(AgGridReact, { rowData: documentationEntries, gridOptions: {
27
- suppressScrollOnNewData: true,
28
- getRowId: (rowData) => rowData.data.uuid,
29
- }, modules: [ClientSideRowModelModule], suppressFieldDotNotation: true, columnDefs: [
30
- {
31
- minWidth: 50,
32
- sortable: true,
33
- resizable: true,
34
- field: 'elementPath',
35
- headerName: 'Model',
36
- flex: 1,
37
- },
38
- {
39
- minWidth: 50,
40
- sortable: false,
41
- resizable: true,
42
- field: 'subElementText',
43
- headerName: '',
44
- flex: 1,
45
- },
46
- {
47
- minWidth: 50,
48
- sortable: false,
49
- resizable: true,
50
- field: 'doc',
51
- headerName: 'Documentation',
52
- flex: 1,
53
- wrapText: true,
54
- autoHeight: true,
55
- },
56
- ] }) })] })), documentationEntries.length === 0 && (_jsx(DataSpaceWikiPlaceholder, { message: "No documentation provided" }))] })] }));
357
+ const documentationState = dataSpaceViewerState.modelsDocumentationState;
358
+ const toggleFilterPanel = () => documentationState.setShowFilterPanel(!documentationState.showFilterPanel);
359
+ return (_jsxs("div", { className: "data-space__viewer__wiki__section", children: [_jsx("div", { className: "data-space__viewer__wiki__section__header", children: _jsxs("div", { className: "data-space__viewer__wiki__section__header__label", children: ["Models Documentation", _jsx("div", { className: "data-space__viewer__wiki__section__header__anchor", children: _jsx(AnchorLinkIcon, {}) })] }) }), _jsxs("div", { className: "data-space__viewer__wiki__section__content", children: [documentationEntries.length > 0 && (_jsxs("div", { className: "data-space__viewer__models-documentation", children: [_jsxs("div", { className: "data-space__viewer__models-documentation__header", children: [_jsxs("button", { className: "data-space__viewer__models-documentation__filter__toggler", title: "Toggle Filter Panel", tabIndex: -1, onClick: toggleFilterPanel, children: [_jsx("div", { className: "data-space__viewer__models-documentation__filter__toggler__arrow", children: documentationState.showFilterPanel ? (_jsx(CaretLeftIcon, {})) : (_jsx(CaretRightIcon, {})) }), _jsx("div", { className: "data-space__viewer__models-documentation__filter__toggler__icon", children: _jsx(FilterIcon, {}) })] }), _jsx(DataSpaceModelsDocumentationSearchBar, { dataSpaceViewerState: dataSpaceViewerState })] }), _jsxs("div", { className: "data-space__viewer__models-documentation__content", children: [documentationState.showFilterPanel && (_jsx(DataSpaceModelsDocumentationFilterPanel, { dataSpaceViewerState: dataSpaceViewerState })), _jsx(DataSpaceModelsDocumentationGridPanel, { dataSpaceViewerState: dataSpaceViewerState })] })] })), documentationEntries.length === 0 && (_jsx(DataSpaceWikiPlaceholder, { message: "No documentation provided" }))] })] }));
57
360
  });
58
361
  //# sourceMappingURL=DataSpaceModelsDocumentation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataSpaceModelsDocumentation.js","sourceRoot":"","sources":["../../src/components/DataSpaceModelsDocumentation.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAA6B,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,MAAM,CAAC,MAAM,4BAA4B,GAAG,QAAQ,CAClD,CAAC,KAAqD,EAAE,EAAE;IACxD,MAAM,EAAE,oBAAoB,EAAE,GAAG,KAAK,CAAC;IACvC,MAAM,oBAAoB,GACxB,oBAAoB,CAAC,uBAAuB,CAAC,WAAW,CAAC;IAE3D,OAAO,CACL,eAAK,SAAS,EAAC,mCAAmC,aAChD,cAAK,SAAS,EAAC,2CAA2C,YACxD,eAAK,SAAS,EAAC,kDAAkD,qCAE/D,cAAK,SAAS,EAAC,mDAAmD,YAChE,KAAC,cAAc,KAAG,GACd,IACF,GACF,EACN,eAAK,SAAS,EAAC,4CAA4C,aACxD,oBAAoB,CAAC,MAAM,GAAG,CAAC,IAAI,CAClC,eAAK,SAAS,EAAC,0CAA0C,aACvD,cAAK,SAAS,EAAC,kDAAkD,YAC/D,eAAK,SAAS,EAAC,+DAA+D,aAC5E,gBAAO,SAAS,EAAC,4EAA4E,GAAG,EAChG,cAAK,SAAS,EAAC,qEAAqE,YAClF,KAAC,UAAU,KAAG,GACV,IACF,GACF,EACN,cAAK,SAAS,EAAC,8FAA8F,YAC3G,KAAC,WAAW,IACV,OAAO,EAAE,oBAAoB,EAC7B,WAAW,EAAE;wCACX,uBAAuB,EAAE,IAAI;wCAC7B,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;qCACzC,EACD,OAAO,EAAE,CAAC,wBAAwB,CAAC,EACnC,wBAAwB,EAAE,IAAI,EAC9B,UAAU,EAAE;wCACV;4CACE,QAAQ,EAAE,EAAE;4CACZ,QAAQ,EAAE,IAAI;4CACd,SAAS,EAAE,IAAI;4CACf,KAAK,EAAE,aAAa;4CACpB,UAAU,EAAE,OAAO;4CACnB,IAAI,EAAE,CAAC;yCACR;wCACD;4CACE,QAAQ,EAAE,EAAE;4CACZ,QAAQ,EAAE,KAAK;4CACf,SAAS,EAAE,IAAI;4CACf,KAAK,EAAE,gBAAgB;4CACvB,UAAU,EAAE,EAAE;4CACd,IAAI,EAAE,CAAC;yCACR;wCACD;4CACE,QAAQ,EAAE,EAAE;4CACZ,QAAQ,EAAE,KAAK;4CACf,SAAS,EAAE,IAAI;4CACf,KAAK,EAAE,KAAK;4CACZ,UAAU,EAAE,eAAe;4CAC3B,IAAI,EAAE,CAAC;4CACP,QAAQ,EAAE,IAAI;4CACd,UAAU,EAAE,IAAI;yCACjB;qCACF,GACD,GACE,IACF,CACP,EACA,oBAAoB,CAAC,MAAM,KAAK,CAAC,IAAI,CACpC,KAAC,wBAAwB,IAAC,OAAO,EAAC,2BAA2B,GAAG,CACjE,IACG,IACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"DataSpaceModelsDocumentation.js","sourceRoot":"","sources":["../../src/components/DataSpaceModelsDocumentation.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DataSpaceQuickStart.d.ts","sourceRoot":"","sources":["../../src/components/DataSpaceQuickStart.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAYH,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAkT9E,eAAO,MAAM,mBAAmB,WACtB;IAAE,oBAAoB,EAAE,oBAAoB,CAAA;CAAE;;CAmDvD,CAAC"}
1
+ {"version":3,"file":"DataSpaceQuickStart.d.ts","sourceRoot":"","sources":["../../src/components/DataSpaceQuickStart.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAYH,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAwW9E,eAAO,MAAM,mBAAmB,WACtB;IAAE,oBAAoB,EAAE,oBAAoB,CAAA;CAAE;;CAmDvD,CAAC"}
@@ -15,27 +15,43 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
15
  * limitations under the License.
16
16
  */
17
17
  import { observer } from 'mobx-react-lite';
18
- import { AnchorLinkIcon, CodeIcon, CopyIcon, MoreVerticalIcon, QueryIcon, QuestionCircleIcon, clsx, } from '@finos/legend-art';
18
+ import { AnchorLinkIcon, CodeIcon, CopyIcon, LegendLogo, MoreVerticalIcon, QuestionCircleIcon, clsx, } from '@finos/legend-art';
19
19
  import {} from '../stores/DataSpaceViewerState.js';
20
- import { AgGridReact } from '@ag-grid-community/react';
21
- import { ClientSideRowModelModule } from '@ag-grid-community/client-side-row-model';
22
- import { EDITOR_LANGUAGE, TextInputEditor, useApplicationStore, } from '@finos/legend-application';
20
+ import { CODE_EDITOR_LANGUAGE, useApplicationStore, } from '@finos/legend-application';
23
21
  import { DataSpaceExecutableTDSResult, } from '../graphManager/action/analytics/DataSpaceAnalysis.js';
24
22
  import { DataSpaceMarkdownTextViewer } from './DataSpaceMarkdownTextViewer.js';
25
23
  import { useState } from 'react';
26
24
  import { DataSpaceWikiPlaceholder } from './DataSpacePlaceholder.js';
25
+ import { DataGrid, } from '@finos/legend-lego/data-grid';
26
+ import { CodeEditor } from '@finos/legend-lego/code-editor';
27
27
  var TDS_EXECUTABLE_ACTION_TAB;
28
28
  (function (TDS_EXECUTABLE_ACTION_TAB) {
29
29
  TDS_EXECUTABLE_ACTION_TAB["COLUMN_SPECS"] = "COLUMN_SPECS";
30
30
  TDS_EXECUTABLE_ACTION_TAB["QUERY"] = "QUERY";
31
31
  TDS_EXECUTABLE_ACTION_TAB["QUERY_TEXT"] = "QUERY_TEXT";
32
32
  })(TDS_EXECUTABLE_ACTION_TAB || (TDS_EXECUTABLE_ACTION_TAB = {}));
33
+ const MIN_NUMBER_OF_ROWS_FOR_AUTO_HEIGHT = 15;
34
+ const TDSColumnDocumentationCellRenderer = (params) => {
35
+ const data = params.data;
36
+ if (!data) {
37
+ return null;
38
+ }
39
+ return data.documentation?.trim() ? (data.documentation) : (_jsx("div", { className: "data-space__viewer__grid__empty-cell", children: "No documentation provided" }));
40
+ };
41
+ const TDSColumnSampleValuesCellRenderer = (params) => {
42
+ const data = params.data;
43
+ if (!data) {
44
+ return null;
45
+ }
46
+ return data.sampleValues?.trim() ? (data.sampleValues) : (_jsx("div", { className: "data-space__viewer__grid__empty-cell", children: "No sample values provided" }));
47
+ };
33
48
  const DataSpaceExecutableTDSResultView = observer((props) => {
34
49
  const { dataSpaceViewerState, executableAnalysisResult, tdsResult } = props;
35
50
  const applicationStore = useApplicationStore();
36
51
  const [selectedTab, setSelectedTab] = useState(TDS_EXECUTABLE_ACTION_TAB.COLUMN_SPECS);
37
52
  const queryText = executableAnalysisResult.info?.query;
38
53
  const columnSpecifications = tdsResult.columns;
54
+ const autoHeight = tdsResult.columns.length <= MIN_NUMBER_OF_ROWS_FOR_AUTO_HEIGHT;
39
55
  const extractTDSExecutableActionConfigurations = applicationStore.pluginManager
40
56
  .getApplicationPlugins()
41
57
  .flatMap((plugin) => plugin.getExtraDataSpaceTDSExecutableActionConfigurations?.() ?? []);
@@ -44,27 +60,31 @@ const DataSpaceExecutableTDSResultView = observer((props) => {
44
60
  'data-space__viewer__quickstart__item__content__tab--active': selectedTab === TDS_EXECUTABLE_ACTION_TAB.COLUMN_SPECS,
45
61
  }), tabIndex: -1, onClick: () => setSelectedTab(TDS_EXECUTABLE_ACTION_TAB.COLUMN_SPECS), children: _jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__label", children: "Column Specifications" }) }), _jsxs("button", { className: clsx('data-space__viewer__quickstart__item__content__tab', {
46
62
  'data-space__viewer__quickstart__item__content__tab--active': selectedTab === TDS_EXECUTABLE_ACTION_TAB.QUERY,
47
- }), tabIndex: -1, onClick: () => setSelectedTab(TDS_EXECUTABLE_ACTION_TAB.QUERY), children: [_jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__icon", children: _jsx(QueryIcon, { className: "data-space__viewer__quickstart__item__content__tab__icon--query" }) }), _jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__label", children: "Query" })] }), extractTDSExecutableActionConfigurations.map((config) => (_jsxs("button", { className: clsx('data-space__viewer__quickstart__item__content__tab', {
63
+ }), tabIndex: -1, onClick: () => setSelectedTab(TDS_EXECUTABLE_ACTION_TAB.QUERY), children: [_jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__icon", children: _jsx(LegendLogo, { className: "data-space__viewer__quickstart__item__content__tab__icon--query" }) }), _jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__label", children: "Query" })] }), extractTDSExecutableActionConfigurations.map((config) => (_jsxs("button", { className: clsx('data-space__viewer__quickstart__item__content__tab', {
48
64
  'data-space__viewer__quickstart__item__content__tab--active': selectedTab === config.key,
49
65
  }), tabIndex: -1, onClick: () => setSelectedTab(config.key), children: [config.icon !== undefined && (_jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__icon", children: config.icon })), _jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__label", children: config.title })] }, config.key)))] }), queryText !== undefined && (_jsx("button", { className: clsx('data-space__viewer__quickstart__item__content__tab', {
50
66
  'data-space__viewer__quickstart__item__content__tab--active': selectedTab === TDS_EXECUTABLE_ACTION_TAB.QUERY_TEXT,
51
- }), tabIndex: -1, onClick: () => setSelectedTab(TDS_EXECUTABLE_ACTION_TAB.QUERY_TEXT), children: _jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__icon", children: _jsx(CodeIcon, { className: "data-space__viewer__quickstart__item__content__tab__icon--query" }) }) }))] }), _jsxs("div", { className: "data-space__viewer__quickstart__item__content__tab__content", children: [selectedTab === TDS_EXECUTABLE_ACTION_TAB.COLUMN_SPECS && (_jsx("div", { className: "data-space__viewer__quickstart__tds__column-specs data-space__viewer__grid ag-theme-balham-dark", children: _jsx(AgGridReact, { rowData: columnSpecifications, gridOptions: {
67
+ }), tabIndex: -1, onClick: () => setSelectedTab(TDS_EXECUTABLE_ACTION_TAB.QUERY_TEXT), children: _jsx("div", { className: "data-space__viewer__quickstart__item__content__tab__icon", children: _jsx(CodeIcon, { className: "data-space__viewer__quickstart__item__content__tab__icon--query" }) }) }))] }), _jsxs("div", { className: clsx('data-space__viewer__quickstart__item__content__tab__content', {
68
+ 'data-space__viewer__quickstart__item__content__tab__content': autoHeight,
69
+ }), children: [selectedTab === TDS_EXECUTABLE_ACTION_TAB.COLUMN_SPECS && (_jsx("div", { className: "data-space__viewer__quickstart__tds__column-specs data-space__viewer__grid ag-theme-balham-dark", children: _jsx(DataGrid, { domLayout: autoHeight ? 'autoHeight' : 'normal', rowData: columnSpecifications, gridOptions: {
52
70
  suppressScrollOnNewData: true,
53
71
  getRowId: (rowData) => rowData.data.uuid,
54
- }, modules: [ClientSideRowModelModule], suppressFieldDotNotation: true, columnDefs: [
72
+ }, suppressFieldDotNotation: true, columnDefs: [
55
73
  {
56
74
  minWidth: 50,
57
75
  sortable: true,
58
76
  resizable: true,
59
77
  field: 'name',
60
- headerName: `Column (${columnSpecifications.length})`,
78
+ headerValueGetter: () => `Column ${columnSpecifications.length
79
+ ? ` (${columnSpecifications.length})`
80
+ : ''}`,
61
81
  flex: 1,
62
82
  },
63
83
  {
64
84
  minWidth: 50,
65
85
  sortable: false,
66
86
  resizable: true,
67
- field: 'documentation',
87
+ cellRenderer: TDSColumnDocumentationCellRenderer,
68
88
  headerName: 'Documentation',
69
89
  flex: 1,
70
90
  wrapText: true,
@@ -73,15 +93,16 @@ const DataSpaceExecutableTDSResultView = observer((props) => {
73
93
  {
74
94
  minWidth: 50,
75
95
  sortable: false,
76
- resizable: true,
77
- field: 'sample_values',
96
+ resizable: false,
97
+ headerClass: 'data-space__viewer__grid__last-column-header',
98
+ cellRenderer: TDSColumnSampleValuesCellRenderer,
78
99
  headerName: 'Sample Values',
79
100
  flex: 1,
80
101
  },
81
102
  ] }) })), selectedTab === TDS_EXECUTABLE_ACTION_TAB.QUERY && (_jsx("div", { className: "data-space__viewer__quickstart__tds__query", children: _jsxs("div", { className: "data-space__viewer__quickstart__tds__query__actions", children: [_jsx("button", { className: "data-space__viewer__quickstart__tds__query__action btn--dark", tabIndex: -1, onClick: () => {
82
103
  // TODO: wire this so we can go to the query for the service
83
104
  }, children: "Open in Query" }), _jsx("button", { className: "data-space__viewer__quickstart__tds__query__action btn--dark", tabIndex: -1, disabled: true, children: "Open in Query with Test Data" })] }) })), selectedTab === TDS_EXECUTABLE_ACTION_TAB.QUERY_TEXT &&
84
- queryText !== undefined && (_jsxs("div", { className: "data-space__viewer__quickstart__tds__query-text", children: [_jsx("div", { className: "data-space__viewer__quickstart__tds__query-text__content", children: _jsx(TextInputEditor, { inputValue: queryText, isReadOnly: true, language: EDITOR_LANGUAGE.PURE, showMiniMap: false, hideGutter: true }) }), _jsxs("div", { className: "data-space__viewer__quickstart__tds__query-text__actions", children: [_jsx("button", { className: "data-space__viewer__quickstart__tds__query-text__action", tabIndex: -1, title: "Copy", onClick: () => {
105
+ queryText !== undefined && (_jsxs("div", { className: "data-space__viewer__quickstart__tds__query-text", children: [_jsx("div", { className: "data-space__viewer__quickstart__tds__query-text__content", children: _jsx(CodeEditor, { inputValue: queryText, isReadOnly: true, language: CODE_EDITOR_LANGUAGE.PURE, showMiniMap: false, hideGutter: true }) }), _jsxs("div", { className: "data-space__viewer__quickstart__tds__query-text__actions", children: [_jsx("button", { className: "data-space__viewer__quickstart__tds__query-text__action", tabIndex: -1, title: "Copy", onClick: () => {
85
106
  applicationStore.clipboardService
86
107
  .copyTextToClipboard(queryText)
87
108
  .catch(applicationStore.alertUnhandledError);
@@ -1 +1 @@
1
- {"version":3,"file":"DataSpaceQuickStart.js","sourceRoot":"","sources":["../../src/components/DataSpaceQuickStart.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataSpaceQuickStart.js","sourceRoot":"","sources":["../../src/components/DataSpaceQuickStart.tsx"],"names":[],"mappings":"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"}