@finos/legend-query-builder 4.18.32 → 4.19.0

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 (74) hide show
  1. package/lib/__lib__/QueryBuilderSetting.d.ts +1 -2
  2. package/lib/__lib__/QueryBuilderSetting.d.ts.map +1 -1
  3. package/lib/__lib__/QueryBuilderSetting.js +0 -4
  4. package/lib/__lib__/QueryBuilderSetting.js.map +1 -1
  5. package/lib/components/QueryBuilder.d.ts.map +1 -1
  6. package/lib/components/QueryBuilder.js +3 -7
  7. package/lib/components/QueryBuilder.js.map +1 -1
  8. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts.map +1 -1
  9. package/lib/components/QueryBuilderUnsupportedQueryEditor.js +1 -2
  10. package/lib/components/QueryBuilderUnsupportedQueryEditor.js.map +1 -1
  11. package/lib/components/QueryLoader.d.ts.map +1 -1
  12. package/lib/components/QueryLoader.js +215 -92
  13. package/lib/components/QueryLoader.js.map +1 -1
  14. package/lib/components/{QueryChat.d.ts → lakehouse/IngestionDefinitionArtifactViewer.d.ts} +7 -5
  15. package/lib/components/lakehouse/IngestionDefinitionArtifactViewer.d.ts.map +1 -0
  16. package/lib/components/lakehouse/IngestionDefinitionArtifactViewer.js +122 -0
  17. package/lib/components/lakehouse/IngestionDefinitionArtifactViewer.js.map +1 -0
  18. package/lib/components/result/tds/QueryBuilderTDSResultShared.d.ts +2 -1
  19. package/lib/components/result/tds/QueryBuilderTDSResultShared.d.ts.map +1 -1
  20. package/lib/components/result/tds/QueryBuilderTDSResultShared.js +2 -2
  21. package/lib/components/result/tds/QueryBuilderTDSResultShared.js.map +1 -1
  22. package/lib/components/workflows/DataProductQueryBuilder.d.ts.map +1 -1
  23. package/lib/components/workflows/DataProductQueryBuilder.js +7 -4
  24. package/lib/components/workflows/DataProductQueryBuilder.js.map +1 -1
  25. package/lib/data-access-overview.css +1 -1
  26. package/lib/graph-manager/QueryBuilderConfig.d.ts +0 -8
  27. package/lib/graph-manager/QueryBuilderConfig.d.ts.map +1 -1
  28. package/lib/graph-manager/QueryBuilderConfig.js +0 -10
  29. package/lib/graph-manager/QueryBuilderConfig.js.map +1 -1
  30. package/lib/index.css +1 -17
  31. package/lib/index.css.map +1 -1
  32. package/lib/index.d.ts +1 -1
  33. package/lib/index.d.ts.map +1 -1
  34. package/lib/index.js +1 -1
  35. package/lib/index.js.map +1 -1
  36. package/lib/package.json +1 -1
  37. package/lib/stores/QueryBuilderState.d.ts +0 -5
  38. package/lib/stores/QueryBuilderState.d.ts.map +1 -1
  39. package/lib/stores/QueryBuilderState.js +0 -19
  40. package/lib/stores/QueryBuilderState.js.map +1 -1
  41. package/lib/stores/QueryBuilder_LegendApplicationPlugin_Extension.d.ts +0 -5
  42. package/lib/stores/QueryBuilder_LegendApplicationPlugin_Extension.d.ts.map +1 -1
  43. package/lib/stores/QueryLoaderState.d.ts +39 -3
  44. package/lib/stores/QueryLoaderState.d.ts.map +1 -1
  45. package/lib/stores/QueryLoaderState.js +129 -2
  46. package/lib/stores/QueryLoaderState.js.map +1 -1
  47. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.d.ts +6 -0
  48. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.d.ts.map +1 -1
  49. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.js +6 -3
  50. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.js.map +1 -1
  51. package/package.json +7 -7
  52. package/src/__lib__/QueryBuilderSetting.ts +0 -4
  53. package/src/components/QueryBuilder.tsx +0 -31
  54. package/src/components/QueryBuilderUnsupportedQueryEditor.tsx +0 -7
  55. package/src/components/QueryLoader.tsx +708 -381
  56. package/src/components/lakehouse/IngestionDefinitionArtifactViewer.tsx +370 -0
  57. package/src/components/result/tds/QueryBuilderTDSResultShared.tsx +6 -3
  58. package/src/components/workflows/DataProductQueryBuilder.tsx +20 -5
  59. package/src/graph-manager/QueryBuilderConfig.ts +0 -11
  60. package/src/index.ts +1 -1
  61. package/src/stores/QueryBuilderState.ts +0 -26
  62. package/src/stores/QueryBuilder_LegendApplicationPlugin_Extension.ts +0 -9
  63. package/src/stores/QueryLoaderState.ts +173 -2
  64. package/src/stores/workflows/dataProduct/DataProductQueryBuilderState.ts +17 -8
  65. package/tsconfig.json +1 -2
  66. package/lib/components/QueryChat.d.ts.map +0 -1
  67. package/lib/components/QueryChat.js +0 -26
  68. package/lib/components/QueryChat.js.map +0 -1
  69. package/lib/stores/QueryChatState.d.ts +0 -19
  70. package/lib/stores/QueryChatState.d.ts.map +0 -1
  71. package/lib/stores/QueryChatState.js +0 -18
  72. package/lib/stores/QueryChatState.js.map +0 -1
  73. package/src/components/QueryChat.tsx +0 -38
  74. package/src/stores/QueryChatState.ts +0 -19
@@ -24,15 +24,18 @@ import {
24
24
  type AbstractPureGraphManager,
25
25
  type Query,
26
26
  type RawLambda,
27
+ type V1_Query,
27
28
  QuerySearchSpecification,
28
29
  GRAPH_MANAGER_EVENT,
29
30
  QuerySearchSortBy,
31
+ V1_PureGraphManager,
30
32
  } from '@finos/legend-graph';
31
33
  import {
32
34
  type GeneratorFn,
33
35
  ActionState,
34
36
  assertErrorThrown,
35
37
  guaranteeNonNullable,
38
+ guaranteeType,
36
39
  LogEvent,
37
40
  } from '@finos/legend-shared';
38
41
  import { makeObservable, observable, action, flow } from 'mobx';
@@ -54,20 +57,37 @@ export enum SORT_BY_OPTIONS {
54
57
 
55
58
  export type SortByOption = { label: SORT_BY_OPTIONS; value: SORT_BY_OPTIONS };
56
59
 
60
+ /**
61
+ * One side of a grammar diff between two query revisions in the history view.
62
+ * `isLatest` refers to the current (latest) version, whose content is not part
63
+ * of the `/history` payload and is fetched on demand.
64
+ */
65
+ export interface QueryRevisionDiffInput {
66
+ label: string;
67
+ isLatest: boolean;
68
+ content: string | undefined;
69
+ }
70
+
57
71
  export class QueryLoaderState {
58
72
  readonly applicationStore: GenericLegendApplicationStore;
59
73
  readonly graphManager: AbstractPureGraphManager;
60
74
 
61
75
  readonly searchQueriesState = ActionState.create();
62
76
  readonly renameQueryState = ActionState.create();
77
+ readonly revertQueryState = ActionState.create();
63
78
  readonly deleteQueryState = ActionState.create();
64
79
  readonly previewQueryState = ActionState.create();
80
+ readonly queryHistoryState = ActionState.create();
81
+ readonly queryHistoryDiffState = ActionState.create();
65
82
 
66
83
  readonly decorateSearchSpecification?:
67
84
  | ((val: QuerySearchSpecification) => QuerySearchSpecification)
68
85
  | undefined;
69
86
 
70
- readonly loadQuery: (query: LightQuery) => void;
87
+ readonly loadQuery: (
88
+ query: LightQuery,
89
+ revisionId?: string | undefined,
90
+ ) => void;
71
91
  readonly fetchDefaultQueries?: (() => Promise<LightQuery[]>) | undefined;
72
92
  readonly generateDefaultQueriesSummaryText?:
73
93
  | ((queries: LightQuery[]) => string)
@@ -95,6 +115,21 @@ export class QueryLoaderState {
95
115
  queryPreviewContent?: QueryInfo | { name: string; content: string };
96
116
  sortBy = SORT_BY_OPTIONS.SORT_BY_VIEW;
97
117
 
118
+ // version history
119
+ showHistoryViewer = false;
120
+ // true when the history viewer is opened directly (e.g. from the editor menu)
121
+ // rather than drilled into from the query list — in this mode there is no
122
+ // query list to go "back" to, so the back button is hidden
123
+ isHistoryViewerStandalone = false;
124
+ historyQuery?: LightQuery | undefined;
125
+ queryHistoryRevisions: V1_Query[] = [];
126
+
127
+ // grammar diff between two revisions in the history view
128
+ selectedRevisionKeysForDiff: string[] = [];
129
+ showHistoryDiff = false;
130
+ historyDiffGrammars?: { from: string; to: string } | undefined;
131
+ historyDiffLabels?: { from: string; to: string } | undefined;
132
+
98
133
  constructor(
99
134
  applicationStore: GenericLegendApplicationStore,
100
135
  graphManager: AbstractPureGraphManager,
@@ -103,7 +138,7 @@ export class QueryLoaderState {
103
138
  | ((val: QuerySearchSpecification) => QuerySearchSpecification)
104
139
  | undefined;
105
140
 
106
- loadQuery: (query: LightQuery) => void;
141
+ loadQuery: (query: LightQuery, revisionId?: string | undefined) => void;
107
142
  fetchDefaultQueries?: (() => Promise<LightQuery[]>) | undefined;
108
143
  generateDefaultQueriesSummaryText?:
109
144
  | ((queries: LightQuery[]) => string)
@@ -125,17 +160,33 @@ export class QueryLoaderState {
125
160
  isCuratedTemplateToggled: observable,
126
161
  curatedTemplateQuerySpecifications: observable,
127
162
  sortBy: observable,
163
+ showHistoryViewer: observable,
164
+ isHistoryViewerStandalone: observable,
165
+ historyQuery: observable,
166
+ queryHistoryRevisions: observable,
167
+ selectedRevisionKeysForDiff: observable,
168
+ showHistoryDiff: observable,
169
+ historyDiffGrammars: observable.ref,
170
+ historyDiffLabels: observable.ref,
128
171
  setSortBy: action,
129
172
  setSearchText: action,
130
173
  setQueryLoaderDialogOpen: action,
131
174
  setQueries: action,
132
175
  setShowCurrentUserQueriesOnly: action,
133
176
  setShowPreviewViewer: action,
177
+ setShowHistoryViewer: action,
178
+ setHistoryViewerStandalone: action,
179
+ toggleRevisionForDiff: action,
180
+ clearHistoryDiffSelection: action,
181
+ setShowHistoryDiff: action,
134
182
  setIsCuratedTemplateToggled: action,
135
183
  searchQueries: flow,
136
184
  getPreviewQueryContent: flow,
185
+ getQueryHistory: flow,
186
+ computeHistoryDiff: flow,
137
187
  deleteQuery: flow,
138
188
  renameQuery: flow,
189
+ revertToRevision: flow,
139
190
  initialize: flow,
140
191
  });
141
192
 
@@ -200,6 +251,39 @@ export class QueryLoaderState {
200
251
  this.showPreviewViewer = val;
201
252
  }
202
253
 
254
+ setShowHistoryViewer(val: boolean): void {
255
+ this.showHistoryViewer = val;
256
+ }
257
+
258
+ setHistoryViewerStandalone(val: boolean): void {
259
+ this.isHistoryViewerStandalone = val;
260
+ }
261
+
262
+ toggleRevisionForDiff(key: string): void {
263
+ if (this.selectedRevisionKeysForDiff.includes(key)) {
264
+ this.selectedRevisionKeysForDiff =
265
+ this.selectedRevisionKeysForDiff.filter((entry) => entry !== key);
266
+ } else {
267
+ // only two revisions can be compared, so keep the two most recently picked
268
+ this.selectedRevisionKeysForDiff = [
269
+ ...this.selectedRevisionKeysForDiff,
270
+ key,
271
+ ].slice(-2);
272
+ }
273
+ }
274
+
275
+ clearHistoryDiffSelection(): void {
276
+ this.selectedRevisionKeysForDiff = [];
277
+ }
278
+
279
+ setShowHistoryDiff(val: boolean): void {
280
+ this.showHistoryDiff = val;
281
+ if (!val) {
282
+ this.historyDiffGrammars = undefined;
283
+ this.historyDiffLabels = undefined;
284
+ }
285
+ }
286
+
203
287
  setShowCurrentUserQueriesOnly(val: boolean): void {
204
288
  this.showCurrentUserQueriesOnly = val;
205
289
  }
@@ -207,6 +291,10 @@ export class QueryLoaderState {
207
291
  reset(): void {
208
292
  this.setShowCurrentUserQueriesOnly(false);
209
293
  this.setIsCuratedTemplateToggled(false);
294
+ this.setShowHistoryViewer(false);
295
+ this.setHistoryViewerStandalone(false);
296
+ this.setShowHistoryDiff(false);
297
+ this.clearHistoryDiffSelection();
210
298
  }
211
299
 
212
300
  *initialize(queryBuilderState: QueryBuilderState): GeneratorFn<void> {
@@ -346,6 +434,33 @@ export class QueryLoaderState {
346
434
  }
347
435
  }
348
436
 
437
+ *revertToRevision(revisionId: string): GeneratorFn<void> {
438
+ const query = guaranteeNonNullable(
439
+ this.historyQuery,
440
+ `Can't revert: no query is being viewed in history`,
441
+ );
442
+ this.revertQueryState.inProgress();
443
+ try {
444
+ const reverted = (yield this.graphManager.revertQueryToRevision(
445
+ query.id,
446
+ revisionId,
447
+ )) as LightQuery;
448
+ this.applicationStore.notificationService.notifySuccess(
449
+ 'Reverted query to the selected revision',
450
+ );
451
+ this.revertQueryState.pass();
452
+ // the revert is saved as the new current version, so close the loader and
453
+ // load it straight away (as the current head, not a historical revision)
454
+ this.setShowHistoryViewer(false);
455
+ this.setQueryLoaderDialogOpen(false);
456
+ this.loadQuery(reverted);
457
+ } catch (error) {
458
+ assertErrorThrown(error);
459
+ this.applicationStore.notificationService.notifyError(error);
460
+ this.revertQueryState.fail();
461
+ }
462
+ }
463
+
349
464
  *deleteQuery(queryId: string): GeneratorFn<void> {
350
465
  this.deleteQueryState.inProgress();
351
466
  try {
@@ -399,4 +514,60 @@ export class QueryLoaderState {
399
514
  this.previewQueryState.fail();
400
515
  }
401
516
  }
517
+
518
+ *getQueryHistory(query: LightQuery): GeneratorFn<void> {
519
+ this.queryHistoryState.inProgress();
520
+ try {
521
+ const revisions = (yield guaranteeType(
522
+ this.graphManager,
523
+ V1_PureGraphManager,
524
+ ).getQueryHistory(query.id)) as V1_Query[];
525
+ this.historyQuery = query;
526
+ this.queryHistoryRevisions = revisions;
527
+ this.clearHistoryDiffSelection();
528
+ this.setShowHistoryDiff(false);
529
+ this.setShowHistoryViewer(true);
530
+ this.queryHistoryState.pass();
531
+ } catch (error) {
532
+ assertErrorThrown(error);
533
+ this.applicationStore.notificationService.notifyError(error);
534
+ this.queryHistoryState.fail();
535
+ }
536
+ }
537
+
538
+ private async resolveRevisionGrammar(
539
+ side: QueryRevisionDiffInput,
540
+ ): Promise<string> {
541
+ if (side.isLatest) {
542
+ // the latest/current version is not returned by `/history`, so fetch it
543
+ const info = await this.graphManager.getQueryInfo(
544
+ guaranteeNonNullable(this.historyQuery).id,
545
+ );
546
+ return this.graphManager.prettyLambdaContent(info.content);
547
+ }
548
+ return this.graphManager.prettyLambdaContent(
549
+ guaranteeNonNullable(side.content),
550
+ );
551
+ }
552
+
553
+ *computeHistoryDiff(
554
+ from: QueryRevisionDiffInput,
555
+ to: QueryRevisionDiffInput,
556
+ ): GeneratorFn<void> {
557
+ this.queryHistoryDiffState.inProgress();
558
+ try {
559
+ const [fromGrammar, toGrammar] = (yield Promise.all([
560
+ this.resolveRevisionGrammar(from),
561
+ this.resolveRevisionGrammar(to),
562
+ ])) as [string, string];
563
+ this.historyDiffGrammars = { from: fromGrammar, to: toGrammar };
564
+ this.historyDiffLabels = { from: from.label, to: to.label };
565
+ this.setShowHistoryDiff(true);
566
+ this.queryHistoryDiffState.pass();
567
+ } catch (error) {
568
+ assertErrorThrown(error);
569
+ this.applicationStore.notificationService.notifyError(error);
570
+ this.queryHistoryDiffState.fail();
571
+ }
572
+ }
402
573
  }
@@ -182,6 +182,12 @@ export const buildModelAccessPointGroupOption = (
182
182
  export type ExecutionIdOption = {
183
183
  label: string;
184
184
  tag: string;
185
+ /**
186
+ * For Lakehouse access points, this is the enclosing access point group id.
187
+ * Used in the UI to disambiguate access points that share the same title/id
188
+ * across different groups.
189
+ */
190
+ groupId?: string | undefined;
185
191
  value:
186
192
  | NativeModelExecutionContext
187
193
  | ModelAccessPointGroup
@@ -545,6 +551,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
545
551
  .map((ap) => ({
546
552
  label: ap.title ?? ap.id,
547
553
  tag: 'LAKEHOUSE',
554
+ groupId: ap.__owner.id,
548
555
  value: ap,
549
556
  }));
550
557
  return [...modelOptions, ...lakehouseOptions, ...nativeOptions].sort(
@@ -570,6 +577,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
570
577
  return {
571
578
  label: state.exectionValue.title ?? state.exectionValue.id,
572
579
  tag: 'LAKEHOUSE',
580
+ groupId: state.exectionValue.__owner.id,
573
581
  value: state.exectionValue,
574
582
  };
575
583
  }
@@ -744,17 +752,18 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
744
752
  this.changeRuntime(this.executionState.selectedRuntime);
745
753
  } else if (
746
754
  this.executionState instanceof LakehouseDataProductExecutionState &&
747
- accessor &&
748
- this.executionState.selectedRuntime instanceof PackageableRuntime
755
+ accessor
749
756
  ) {
750
757
  this.setSourceElement(accessor);
751
- this.changeRuntime(
752
- new RuntimePointer(
753
- PackageableElementExplicitReference.create(
754
- this.executionState.selectedRuntime,
758
+ if (this.executionState.selectedRuntime instanceof PackageableRuntime) {
759
+ this.changeRuntime(
760
+ new RuntimePointer(
761
+ PackageableElementExplicitReference.create(
762
+ this.executionState.selectedRuntime,
763
+ ),
755
764
  ),
756
- ),
757
- );
765
+ );
766
+ }
758
767
  }
759
768
  if (mapping) {
760
769
  const coverageResult = this.mappingToMappingCoverageResult?.get(
package/tsconfig.json CHANGED
@@ -102,7 +102,6 @@
102
102
  "./src/stores/QueryBuilderValueSpecificationBuilderHelper.ts",
103
103
  "./src/stores/QueryBuilderValueSpecificationHelper.ts",
104
104
  "./src/stores/QueryBuilder_LegendApplicationPlugin_Extension.ts",
105
- "./src/stores/QueryChatState.ts",
106
105
  "./src/stores/QueryLoaderState.ts",
107
106
  "./src/stores/ServiceInfo.ts",
108
107
  "./src/stores/__test-utils__/QueryBuilderStateTestUtils.ts",
@@ -240,7 +239,6 @@
240
239
  "./src/components/QueryBuilderSideBar.tsx",
241
240
  "./src/components/QueryBuilderTextEditor.tsx",
242
241
  "./src/components/QueryBuilderUnsupportedQueryEditor.tsx",
243
- "./src/components/QueryChat.tsx",
244
242
  "./src/components/QueryLoader.tsx",
245
243
  "./src/components/QueryUsageViewer.tsx",
246
244
  "./src/components/ServiceQuerySetupUtils.tsx",
@@ -279,6 +277,7 @@
279
277
  "./src/components/fetch-structure/QueryBuilderTDSPanel.tsx",
280
278
  "./src/components/fetch-structure/QueryBuilderTDSWindowPanel.tsx",
281
279
  "./src/components/filter/QueryBuilderFilterPanel.tsx",
280
+ "./src/components/lakehouse/IngestionDefinitionArtifactViewer.tsx",
282
281
  "./src/components/lineage/LineageViewer.tsx",
283
282
  "./src/components/lineage/PropertyOwnerNode.tsx",
284
283
  "./src/components/result/QueryBuilderResultPanel.tsx",
@@ -1 +0,0 @@
1
- {"version":3,"file":"QueryChat.d.ts","sourceRoot":"","sources":["../../src/components/QueryChat.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,eAAO,MAAM,SAAS,WACZ;IAAE,iBAAiB,EAAE,iBAAiB,CAAA;CAAE;;CAejD,CAAC"}
@@ -1,26 +0,0 @@
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 { observer } from 'mobx-react-lite';
17
- import { useApplicationStore } from '@finos/legend-application';
18
- export const QueryChat = observer((props) => {
19
- const { queryBuilderState } = props;
20
- const applicationStore = useApplicationStore();
21
- const extraQueryChatConfigurations = applicationStore.pluginManager
22
- .getApplicationPlugins()
23
- .flatMap((plugin) => plugin.getExtraQueryChatRenderers?.() ?? []);
24
- return extraQueryChatConfigurations[0]?.(queryBuilderState);
25
- });
26
- //# sourceMappingURL=QueryChat.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QueryChat.js","sourceRoot":"","sources":["../../src/components/QueryChat.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAIhE,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAC/B,CAAC,KAA+C,EAAE,EAAE;IAClD,MAAM,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC;IACpC,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAE/C,MAAM,4BAA4B,GAAG,gBAAgB,CAAC,aAAa;SAChE,qBAAqB,EAAE;SACvB,OAAO,CACN,CAAC,MAAM,EAAE,EAAE,CAEP,MACD,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,CACzC,CAAC;IAEJ,OAAO,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAC9D,CAAC,CACF,CAAC"}
@@ -1,19 +0,0 @@
1
- /**
2
- * Copyright (c) 2020-present, Goldman Sachs
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- export declare abstract class QueryChatState {
17
- abstract abort(): void;
18
- }
19
- //# sourceMappingURL=QueryChatState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QueryChatState.d.ts","sourceRoot":"","sources":["../../src/stores/QueryChatState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,8BAAsB,cAAc;IAClC,QAAQ,CAAC,KAAK,IAAI,IAAI;CACvB"}
@@ -1,18 +0,0 @@
1
- /**
2
- * Copyright (c) 2020-present, Goldman Sachs
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- export class QueryChatState {
17
- }
18
- //# sourceMappingURL=QueryChatState.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QueryChatState.js","sourceRoot":"","sources":["../../src/stores/QueryChatState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,OAAgB,cAAc;CAEnC"}
@@ -1,38 +0,0 @@
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
-
17
- import { observer } from 'mobx-react-lite';
18
- import { useApplicationStore } from '@finos/legend-application';
19
- import type { QueryBuilder_LegendApplicationPlugin_Extension } from '../stores/QueryBuilder_LegendApplicationPlugin_Extension.js';
20
- import type { QueryBuilderState } from '../stores/QueryBuilderState.js';
21
-
22
- export const QueryChat = observer(
23
- (props: { queryBuilderState: QueryBuilderState }) => {
24
- const { queryBuilderState } = props;
25
- const applicationStore = useApplicationStore();
26
-
27
- const extraQueryChatConfigurations = applicationStore.pluginManager
28
- .getApplicationPlugins()
29
- .flatMap(
30
- (plugin) =>
31
- (
32
- plugin as QueryBuilder_LegendApplicationPlugin_Extension
33
- ).getExtraQueryChatRenderers?.() ?? [],
34
- );
35
-
36
- return extraQueryChatConfigurations[0]?.(queryBuilderState);
37
- },
38
- );
@@ -1,19 +0,0 @@
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
-
17
- export abstract class QueryChatState {
18
- abstract abort(): void;
19
- }