@finos/legend-query-builder 4.15.0 → 4.15.2
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/QueryBuilderSideBar.d.ts.map +1 -1
- package/lib/components/QueryBuilderSideBar.js +4 -4
- package/lib/components/QueryBuilderSideBar.js.map +1 -1
- package/lib/components/__test-utils__/QueryBuilderComponentTestUtils.d.ts.map +1 -1
- package/lib/components/__test-utils__/QueryBuilderComponentTestUtils.js +2 -1
- package/lib/components/__test-utils__/QueryBuilderComponentTestUtils.js.map +1 -1
- package/lib/components/data-cube/QueryBuilderDataCube.d.ts.map +1 -1
- package/lib/components/data-cube/QueryBuilderDataCube.js +3 -10
- package/lib/components/data-cube/QueryBuilderDataCube.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js +1 -1
- package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js.map +1 -1
- package/lib/components/result/QueryBuilderResultPanel.d.ts.map +1 -1
- package/lib/components/result/QueryBuilderResultPanel.js +13 -1
- package/lib/components/result/QueryBuilderResultPanel.js.map +1 -1
- package/lib/components/result/tds/QueryBuilderTDSGridResult.d.ts.map +1 -1
- package/lib/components/result/tds/QueryBuilderTDSGridResult.js +4 -4
- package/lib/components/result/tds/QueryBuilderTDSGridResult.js.map +1 -1
- package/lib/components/shared/BasicValueSpecificationEditor.d.ts.map +1 -1
- package/lib/components/shared/BasicValueSpecificationEditor.js +5 -5
- package/lib/components/shared/BasicValueSpecificationEditor.js.map +1 -1
- package/lib/components/shared/CustomDatePicker.d.ts.map +1 -1
- package/lib/components/shared/CustomDatePicker.js +2 -2
- package/lib/components/shared/CustomDatePicker.js.map +1 -1
- package/lib/components/workflows/ClassQueryBuilder.d.ts.map +1 -1
- package/lib/components/workflows/ClassQueryBuilder.js +3 -3
- package/lib/components/workflows/ClassQueryBuilder.js.map +1 -1
- package/lib/components/workflows/MappingQueryBuilder.d.ts.map +1 -1
- package/lib/components/workflows/MappingQueryBuilder.js +3 -3
- package/lib/components/workflows/MappingQueryBuilder.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/package.json +7 -7
- package/lib/stores/data-cube/QueryBuilderDataCubeApplicationEngine.d.ts +1 -3
- package/lib/stores/data-cube/QueryBuilderDataCubeApplicationEngine.d.ts.map +1 -1
- package/lib/stores/data-cube/QueryBuilderDataCubeApplicationEngine.js +1 -7
- package/lib/stores/data-cube/QueryBuilderDataCubeApplicationEngine.js.map +1 -1
- package/lib/stores/data-cube/QueryBuilderDataCubeEngine.d.ts +5 -2
- package/lib/stores/data-cube/QueryBuilderDataCubeEngine.d.ts.map +1 -1
- package/lib/stores/data-cube/QueryBuilderDataCubeEngine.js +14 -2
- package/lib/stores/data-cube/QueryBuilderDataCubeEngine.js.map +1 -1
- package/lib/stores/data-cube/QueryBuilderDataCubeEngineHelper.d.ts +1 -1
- package/lib/stores/data-cube/QueryBuilderDataCubeEngineHelper.d.ts.map +1 -1
- package/lib/stores/data-cube/QueryBuilderDataCubeEngineHelper.js +8 -1
- package/lib/stores/data-cube/QueryBuilderDataCubeEngineHelper.js.map +1 -1
- package/lib/stores/shared/LambdaParameterState.d.ts +2 -1
- package/lib/stores/shared/LambdaParameterState.d.ts.map +1 -1
- package/lib/stores/shared/LambdaParameterState.js +1 -0
- package/lib/stores/shared/LambdaParameterState.js.map +1 -1
- package/package.json +17 -17
- package/src/components/QueryBuilderSideBar.tsx +11 -10
- package/src/components/__test-utils__/QueryBuilderComponentTestUtils.tsx +8 -2
- package/src/components/data-cube/QueryBuilderDataCube.tsx +4 -16
- package/src/components/fetch-structure/QueryBuilderResultModifierPanel.tsx +1 -1
- package/src/components/result/QueryBuilderResultPanel.tsx +23 -3
- package/src/components/result/tds/QueryBuilderTDSGridResult.tsx +11 -6
- package/src/components/shared/BasicValueSpecificationEditor.tsx +21 -15
- package/src/components/shared/CustomDatePicker.tsx +10 -17
- package/src/components/workflows/ClassQueryBuilder.tsx +6 -5
- package/src/components/workflows/MappingQueryBuilder.tsx +6 -5
- package/src/stores/data-cube/QueryBuilderDataCubeApplicationEngine.ts +1 -12
- package/src/stores/data-cube/QueryBuilderDataCubeEngine.ts +23 -0
- package/src/stores/data-cube/QueryBuilderDataCubeEngineHelper.ts +16 -1
- package/src/stores/shared/LambdaParameterState.ts +1 -0
@@ -13,7 +13,7 @@
|
|
13
13
|
* See the License for the specific language governing permissions and
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
|
-
import { V1_Lambda, RawLambda, TDSExecutionResult, type GraphManagerState, type PureModel, type V1_ValueSpecification } from '@finos/legend-graph';
|
16
|
+
import { V1_Lambda, RawLambda, TDSExecutionResult, type GraphManagerState, type PureModel, type V1_ValueSpecification, type ParameterValue } from '@finos/legend-graph';
|
17
17
|
import { DataCubeGetBaseQueryResult, DataCubeEngine, type CompletionItem, DataCubeQuerySource, type DataCubeInfrastructureInfo, type RelationType } from '@finos/legend-data-cube';
|
18
18
|
import { LogService } from '@finos/legend-shared';
|
19
19
|
export declare class _DataCubeQuery {
|
@@ -30,8 +30,10 @@ export declare class QueryBuilderDataCubeEngine extends DataCubeEngine {
|
|
30
30
|
readonly graphState: GraphManagerState;
|
31
31
|
readonly selectInitialQuery: RawLambda;
|
32
32
|
readonly mappingPath: string | undefined;
|
33
|
+
readonly parameterValues: ParameterValue[] | undefined;
|
33
34
|
readonly runtimePath: string;
|
34
|
-
|
35
|
+
_parameters: object | undefined;
|
36
|
+
constructor(selectQuery: RawLambda, parameterValues: ParameterValue[] | undefined, mappingPath: string | undefined, runtimePath: string, graphManagerState: GraphManagerState);
|
35
37
|
get sourceLabel(): string;
|
36
38
|
getBaseQuery(): Promise<DataCubeGetBaseQueryResult>;
|
37
39
|
buildBaseQuery(): Promise<DataCubeGetBaseQueryResult>;
|
@@ -40,6 +42,7 @@ export declare class QueryBuilderDataCubeEngine extends DataCubeEngine {
|
|
40
42
|
getInfrastructureInfo(): Promise<DataCubeInfrastructureInfo>;
|
41
43
|
getQueryTypeahead(code: string, query: V1_ValueSpecification): Promise<CompletionItem[]>;
|
42
44
|
parseQuery(code: string, returnSourceInformation?: boolean): Promise<V1_ValueSpecification>;
|
45
|
+
getQueryCode(query: V1_ValueSpecification, pretty?: boolean | undefined): Promise<string>;
|
43
46
|
getQueryRelationType(query: V1_ValueSpecification): Promise<RelationType>;
|
44
47
|
getRelationalType(query: RawLambda): Promise<RelationType>;
|
45
48
|
getQueryCodeRelationReturnType(code: string, baseQuery: V1_ValueSpecification): Promise<RelationType>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderDataCubeEngine.d.ts","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,SAAS,EACT,SAAS,EAET,kBAAkB,EAKlB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,qBAAqB,
|
1
|
+
{"version":3,"file":"QueryBuilderDataCubeEngine.d.ts","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,SAAS,EACT,SAAS,EAET,kBAAkB,EAKlB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,0BAA0B,EAC1B,cAAc,EACd,KAAK,cAAc,EACnB,mBAAmB,EACnB,KAAK,0BAA0B,EAC/B,KAAK,YAAY,EAElB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAiB,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEjE,qBAAa,cAAc;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC;gBAG1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,mBAAmB;CAO9B;AAED,qBAAa,+BAAgC,SAAQ,mBAAmB;CAAG;AAC3E,qBAAa,0BAA2B,SAAQ,cAAc;IAC5D,QAAQ,CAAC,UAAU,aAAoB;IACvC,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,kBAAkB,EAAE,SAAS,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;gBAG9B,WAAW,EAAE,SAAS,EACtB,eAAe,EAAE,cAAc,EAAE,GAAG,SAAS,EAC7C,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,iBAAiB;IAUtC,IAAI,WAAW,IAAI,MAAM,CAExB;IACQ,YAAY,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAItD,cAAc,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAsD3D,IAAI,KAAK,IAAI,SAAS,CAErB;IAED,OAAO,CAAC,2BAA2B;IAU1B,qBAAqB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAQtD,iBAAiB,CAC9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,cAAc,EAAE,CAAC;IAcb,UAAU,CACvB,IAAI,EAAE,MAAM,EACZ,uBAAuB,CAAC,EAAE,OAAO,GAChC,OAAO,CAAC,qBAAqB,CAAC;IAUxB,YAAY,CACnB,KAAK,EAAE,qBAAqB,EAC5B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAC3B,OAAO,CAAC,MAAM,CAAC;IAOT,oBAAoB,CAC3B,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,YAAY,CAAC;IAKlB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;IASjD,8BAA8B,CAC3C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,qBAAqB,GAC/B,OAAO,CAAC,YAAY,CAAC;IAWT,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC;QACrD,MAAM,EAAE,kBAAkB,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CA+BH"}
|
@@ -35,13 +35,16 @@ export class QueryBuilderDataCubeEngine extends DataCubeEngine {
|
|
35
35
|
graphState;
|
36
36
|
selectInitialQuery;
|
37
37
|
mappingPath;
|
38
|
+
parameterValues;
|
38
39
|
runtimePath;
|
39
|
-
|
40
|
+
_parameters;
|
41
|
+
constructor(selectQuery, parameterValues, mappingPath, runtimePath, graphManagerState) {
|
40
42
|
super();
|
41
43
|
this.graphState = graphManagerState;
|
42
44
|
this.selectInitialQuery = selectQuery;
|
43
45
|
this.mappingPath = mappingPath;
|
44
46
|
this.runtimePath = runtimePath;
|
47
|
+
this.parameterValues = parameterValues;
|
45
48
|
}
|
46
49
|
get sourceLabel() {
|
47
50
|
return `Query Builder Report`;
|
@@ -59,6 +62,7 @@ export class QueryBuilderDataCubeEngine extends DataCubeEngine {
|
|
59
62
|
srcFuncExp.body[0]) {
|
60
63
|
srcFuncExp = srcFuncExp.body[0];
|
61
64
|
}
|
65
|
+
this._parameters = this.selectInitialQuery.parameters;
|
62
66
|
const fromFuncExp = new V1_AppliedFunction();
|
63
67
|
fromFuncExp.function = _functionName(SUPPORTED_FUNCTIONS.FROM);
|
64
68
|
fromFuncExp.parameters = [srcFuncExp];
|
@@ -101,6 +105,8 @@ export class QueryBuilderDataCubeEngine extends DataCubeEngine {
|
|
101
105
|
// we return undefined as we assume the grid license is set at the application level where query builder is built
|
102
106
|
return Promise.resolve({
|
103
107
|
gridClientLicense: undefined,
|
108
|
+
simpleSampleDataTableName: '',
|
109
|
+
complexSampleDataTableName: '',
|
104
110
|
});
|
105
111
|
}
|
106
112
|
async getQueryTypeahead(code, query) {
|
@@ -114,6 +120,9 @@ export class QueryBuilderDataCubeEngine extends DataCubeEngine {
|
|
114
120
|
async parseQuery(code, returnSourceInformation) {
|
115
121
|
return V1_deserializeValueSpecification(await this.graphState.graphManager.pureCodeToValueSpecification(code, returnSourceInformation), []);
|
116
122
|
}
|
123
|
+
getQueryCode(query, pretty) {
|
124
|
+
return this.graphState.graphManager.valueSpecificationToPureCode(V1_serializeValueSpecification(query, []), pretty);
|
125
|
+
}
|
117
126
|
getQueryRelationType(query) {
|
118
127
|
const lambda = this.buildRawLambdaFromValueSpec(query);
|
119
128
|
return this.getRelationalType(lambda);
|
@@ -129,8 +138,11 @@ export class QueryBuilderDataCubeEngine extends DataCubeEngine {
|
|
129
138
|
}
|
130
139
|
async executeQuery(query) {
|
131
140
|
const lambda = this.buildRawLambdaFromValueSpec(query);
|
141
|
+
lambda.parameters = this._parameters;
|
132
142
|
const [executionWithMetadata, queryString] = await Promise.all([
|
133
|
-
this.graphState.graphManager.runQuery(lambda, undefined, undefined, this.graph
|
143
|
+
this.graphState.graphManager.runQuery(lambda, undefined, undefined, this.graph, {
|
144
|
+
parameterValues: this.parameterValues ?? [],
|
145
|
+
}),
|
134
146
|
this.graphState.graphManager.lambdaToPureCode(lambda),
|
135
147
|
]);
|
136
148
|
const expectedTDS = guaranteeType(executionWithMetadata.executionResult, TDSExecutionResult, 'Query returned expected to be of tabular data set');
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderDataCubeEngine.js","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,6BAA6B,EAC7B,kBAAkB,EAClB,mCAAmC,EACnC,gCAAgC,EAChC,YAAY,EACZ,8BAA8B,
|
1
|
+
{"version":3,"file":"QueryBuilderDataCubeEngine.js","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngine.ts"],"names":[],"mappings":"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"}
|
@@ -14,6 +14,6 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
import { type DataCubeEngine } from '@finos/legend-data-cube';
|
17
|
-
import type
|
17
|
+
import { type QueryBuilderState } from '../QueryBuilderState.js';
|
18
18
|
export declare const createDataCubeEngineFromQueryBuilder: (queryBuilderState: QueryBuilderState) => DataCubeEngine | undefined;
|
19
19
|
//# sourceMappingURL=QueryBuilderDataCubeEngineHelper.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderDataCubeEngineHelper.d.ts","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngineHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,
|
1
|
+
{"version":3,"file":"QueryBuilderDataCubeEngineHelper.d.ts","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngineHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAKjC,eAAO,MAAM,oCAAoC,sBAC5B,iBAAiB,KACnC,cAAc,GAAG,SA4BnB,CAAC"}
|
@@ -14,8 +14,10 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
import {} from '@finos/legend-data-cube';
|
17
|
+
import { QUERY_BUILDER_LAMBDA_WRITER_MODE, } from '../QueryBuilderState.js';
|
17
18
|
import { RuntimePointer } from '@finos/legend-graph';
|
18
19
|
import { QueryBuilderDataCubeEngine } from './QueryBuilderDataCubeEngine.js';
|
20
|
+
import { buildExecutionParameterValues } from '../shared/LambdaParameterState.js';
|
19
21
|
export const createDataCubeEngineFromQueryBuilder = (queryBuilderState) => {
|
20
22
|
const runtime = queryBuilderState.executionContextState.runtimeValue instanceof
|
21
23
|
RuntimePointer
|
@@ -25,7 +27,12 @@ export const createDataCubeEngineFromQueryBuilder = (queryBuilderState) => {
|
|
25
27
|
if (!runtime) {
|
26
28
|
return undefined;
|
27
29
|
}
|
28
|
-
const
|
30
|
+
const currentLambdaWriterMode = queryBuilderState.lambdaWriteMode;
|
31
|
+
// ensure we write in new tds mode
|
32
|
+
queryBuilderState.setLambdaWriteMode(QUERY_BUILDER_LAMBDA_WRITER_MODE.TYPED_FETCH_STRUCTURE);
|
33
|
+
const parameterValues = buildExecutionParameterValues(queryBuilderState.parametersState.parameterStates, queryBuilderState.graphManagerState);
|
34
|
+
const queryBuilderEngine = new QueryBuilderDataCubeEngine(queryBuilderState.buildQuery(), parameterValues, queryBuilderState.executionContextState.mapping?.path, runtime, queryBuilderState.graphManagerState);
|
35
|
+
queryBuilderState.setLambdaWriteMode(currentLambdaWriterMode);
|
29
36
|
return queryBuilderEngine;
|
30
37
|
};
|
31
38
|
//# sourceMappingURL=QueryBuilderDataCubeEngineHelper.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderDataCubeEngineHelper.js","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngineHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAuB,MAAM,yBAAyB,CAAC;
|
1
|
+
{"version":3,"file":"QueryBuilderDataCubeEngineHelper.js","sourceRoot":"","sources":["../../../src/stores/data-cube/QueryBuilderDataCubeEngineHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAuB,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EACL,gCAAgC,GAEjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAElF,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,iBAAoC,EACR,EAAE;IAC9B,MAAM,OAAO,GACX,iBAAiB,CAAC,qBAAqB,CAAC,YAAY;QACpD,cAAc;QACZ,CAAC,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,YAAY,CAAC,kBAAkB;aACpE,KAAK,CAAC,IAAI;QACf,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,eAAe,CAAC;IAClE,kCAAkC;IAClC,iBAAiB,CAAC,kBAAkB,CAClC,gCAAgC,CAAC,qBAAqB,CACvD,CAAC;IACF,MAAM,eAAe,GAAG,6BAA6B,CACnD,iBAAiB,CAAC,eAAe,CAAC,eAAe,EACjD,iBAAiB,CAAC,iBAAiB,CACpC,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAI,0BAA0B,CACvD,iBAAiB,CAAC,UAAU,EAAE,EAC9B,eAAe,EACf,iBAAiB,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,EACrD,OAAO,EACP,iBAAiB,CAAC,iBAAiB,CACpC,CAAC;IACF,iBAAiB,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC;IAC9D,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC"}
|
@@ -17,7 +17,8 @@ import { type ObserverContext, type Type, type ValueSpecification, type PureMode
|
|
17
17
|
import { type Hashable } from '@finos/legend-shared';
|
18
18
|
export declare enum PARAMETER_SUBMIT_ACTION {
|
19
19
|
RUN = "RUN",
|
20
|
-
EXPORT = "EXPORT"
|
20
|
+
EXPORT = "EXPORT",
|
21
|
+
DATA_CUBE = "DATA_CUBE"
|
21
22
|
}
|
22
23
|
export declare const buildParametersLetLambdaFunc: (graph: PureModel, lambdaParametersStates: LambdaParameterState[]) => LambdaFunction;
|
23
24
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LambdaParameterState.d.ts","sourceRoot":"","sources":["../../../src/stores/shared/LambdaParameterState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,IAAI,EACT,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,SAAS,EAKd,kBAAkB,EAGlB,cAAc,EAId,YAAY,EAKZ,cAAc,EAEf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,KAAK,QAAQ,EAMd,MAAM,sBAAsB,CAAC;AAQ9B,oBAAY,uBAAuB;IACjC,GAAG,QAAQ;IACX,MAAM,WAAW;
|
1
|
+
{"version":3,"file":"LambdaParameterState.d.ts","sourceRoot":"","sources":["../../../src/stores/shared/LambdaParameterState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,IAAI,EACT,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,SAAS,EAKd,kBAAkB,EAGlB,cAAc,EAId,YAAY,EAKZ,cAAc,EAEf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,KAAK,QAAQ,EAMd,MAAM,sBAAsB,CAAC;AAQ9B,oBAAY,uBAAuB;IACjC,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAOD,eAAO,MAAM,4BAA4B,UAChC,SAAS,0BACQ,oBAAoB,EAAE,KAC7C,cA6BF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,6CAA6C,mBACxC,oBAAoB,KACnC,OAIA,CAAC;AAEJ,eAAO,MAAM,oCAAoC,oBAC9B,oBAAoB,EAAE,KACtC,oBAAoB,EACgD,CAAC;AAExE,eAAO,MAAM,6BAA6B,gBAC3B,oBAAoB,EAAE,cACvB,iBAAiB,KAC5B,cAAc,EAUX,CAAC;AAEP,eAAO,MAAM,8BAA8B,cAC9B,SAAS,mBACH,oBAAoB,EAAE,qBACpB,iBAAiB,KACnC,SA0BF,CAAC;AAEF,eAAO,MAAM,qCAAqC,mBAChC,cAAc,mBACb,oBAAoB,EAAE,qBACpB,iBAAiB,KACnC,cAwBF,CAAC;AAEF,qBAAa,oBAAqB,YAAW,QAAQ;IACnD,QAAQ,CAAC,IAAI,SAAU;IACvB,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAE1C,KAAK,EAAE,kBAAkB,GAAG,SAAS,CAAC;gBAGpC,kBAAkB,EAAE,kBAAkB,EACtC,eAAe,EAAE,eAAe,EAChC,KAAK,EAAE,SAAS;IAclB,IAAI,QAAQ,IAAI,MAAM,CAKrB;IAED,kBAAkB,IAAI,IAAI;IAW1B,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,SAAS,GAAG,IAAI;IAWrD,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAUpC,kBAAkB,CAChB,kBAAkB,EAAE,kBAAkB,EACtC,GAAG,EAAE,YAAY,GAChB,IAAI;IAQP,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,YAAY,IAAI,IAAI,GAAG,SAAS,CAEnC;CACF;AAED,qBAAa,kCAAkC;IAC7C,SAAS,UAAS;IAClB,YAAY,EACR;QACE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC;KACf,GACD,SAAS,CAAC;;IAYd,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAIhC,eAAe,CACb,GAAG,EACC;QACE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC;KACf,GACD,SAAS,GACZ,IAAI;IAIP,IAAI,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvD,KAAK,IAAI,IAAI;CAId;AAED,8BAAsB,qBAAsB,YAAW,QAAQ;IAC7D,eAAe,EAAE,oBAAoB,EAAE,CAAM;IAC7C,0BAA0B,qCAA4C;;IAQtE,IAAI,QAAQ,IAAI,MAAM,CAKrB;IAED,YAAY,CAAC,GAAG,EAAE,oBAAoB,GAAG,IAAI;IAI7C,eAAe,CAAC,GAAG,EAAE,oBAAoB,GAAG,IAAI;IAIhD,aAAa,CAAC,GAAG,EAAE,oBAAoB,EAAE,GAAG,IAAI;CAGjD"}
|
@@ -22,6 +22,7 @@ export var PARAMETER_SUBMIT_ACTION;
|
|
22
22
|
(function (PARAMETER_SUBMIT_ACTION) {
|
23
23
|
PARAMETER_SUBMIT_ACTION["RUN"] = "RUN";
|
24
24
|
PARAMETER_SUBMIT_ACTION["EXPORT"] = "EXPORT";
|
25
|
+
PARAMETER_SUBMIT_ACTION["DATA_CUBE"] = "DATA_CUBE";
|
25
26
|
})(PARAMETER_SUBMIT_ACTION || (PARAMETER_SUBMIT_ACTION = {}));
|
26
27
|
var LAMABA_PARAMETER_HASH_STRUCTURE;
|
27
28
|
(function (LAMABA_PARAMETER_HASH_STRUCTURE) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LambdaParameterState.js","sourceRoot":"","sources":["../../../src/stores/shared/LambdaParameterState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAOL,WAAW,EACX,4BAA4B,EAC5B,0BAA0B,EAC1B,0BAA0B,EAC1B,kBAAkB,EAClB,wBAAwB,EACxB,mCAAmC,EACnC,cAAc,EACd,YAAY,EACZ,cAAc,EACd,0BAA0B,EAC1B,YAAY,EACZ,sBAAsB,EACtB,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,WAAW,EAEX,SAAS,EACT,iBAAiB,EACjB,IAAI,EACJ,aAAa,EACb,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACpE,OAAO,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EACL,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,uCAAuC,CAAC;AAE/C,MAAM,CAAN,IAAY,
|
1
|
+
{"version":3,"file":"LambdaParameterState.js","sourceRoot":"","sources":["../../../src/stores/shared/LambdaParameterState.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@finos/legend-query-builder",
|
3
|
-
"version": "4.15.
|
3
|
+
"version": "4.15.2",
|
4
4
|
"description": "Legend query builder core",
|
5
5
|
"keywords": [
|
6
6
|
"legend",
|
@@ -42,21 +42,21 @@
|
|
42
42
|
"test:watch": "jest --watch"
|
43
43
|
},
|
44
44
|
"dependencies": {
|
45
|
-
"@finos/legend-application": "16.0.
|
46
|
-
"@finos/legend-art": "7.1.
|
47
|
-
"@finos/legend-code-editor": "2.0.
|
48
|
-
"@finos/legend-data-cube": "0.0.
|
49
|
-
"@finos/legend-graph": "31.10.
|
50
|
-
"@finos/legend-lego": "2.0.
|
51
|
-
"@finos/legend-server-depot": "6.0.
|
52
|
-
"@finos/legend-shared": "10.0.
|
53
|
-
"@finos/legend-storage": "3.0.
|
45
|
+
"@finos/legend-application": "16.0.3",
|
46
|
+
"@finos/legend-art": "7.1.62",
|
47
|
+
"@finos/legend-code-editor": "2.0.3",
|
48
|
+
"@finos/legend-data-cube": "0.0.8",
|
49
|
+
"@finos/legend-graph": "31.10.37",
|
50
|
+
"@finos/legend-lego": "2.0.5",
|
51
|
+
"@finos/legend-server-depot": "6.0.62",
|
52
|
+
"@finos/legend-shared": "10.0.57",
|
53
|
+
"@finos/legend-storage": "3.0.107",
|
54
54
|
"@testing-library/dom": "10.4.0",
|
55
55
|
"@testing-library/react": "16.0.1",
|
56
|
-
"@types/react": "18.3.
|
56
|
+
"@types/react": "18.3.11",
|
57
57
|
"@types/react-dom": "18.3.0",
|
58
58
|
"chart.js": "4.4.4",
|
59
|
-
"mathjs": "13.
|
59
|
+
"mathjs": "13.2.0",
|
60
60
|
"mobx": "6.13.3",
|
61
61
|
"mobx-react-lite": "4.0.7",
|
62
62
|
"monaco-editor": "0.52.0",
|
@@ -65,18 +65,18 @@
|
|
65
65
|
"react-dnd": "16.0.1",
|
66
66
|
"react-dom": "18.3.1",
|
67
67
|
"serializr": "3.0.2",
|
68
|
-
"sql-formatter": "15.4.
|
68
|
+
"sql-formatter": "15.4.3"
|
69
69
|
},
|
70
70
|
"devDependencies": {
|
71
|
-
"@finos/legend-dev-utils": "2.1.
|
71
|
+
"@finos/legend-dev-utils": "2.1.25",
|
72
72
|
"@jest/globals": "29.7.0",
|
73
73
|
"cross-env": "7.0.3",
|
74
|
-
"eslint": "
|
74
|
+
"eslint": "9.12.0",
|
75
75
|
"jest": "29.7.0",
|
76
76
|
"npm-run-all": "4.1.5",
|
77
77
|
"rimraf": "6.0.1",
|
78
|
-
"sass": "1.79.
|
79
|
-
"typescript": "5.6.
|
78
|
+
"sass": "1.79.4",
|
79
|
+
"typescript": "5.6.3"
|
80
80
|
},
|
81
81
|
"peerDependencies": {
|
82
82
|
"react": "^18.0.0"
|
@@ -105,8 +105,8 @@ export const QueryBuilderClassSelector = observer(
|
|
105
105
|
const elementFilterOption = createFilter({
|
106
106
|
ignoreCase: true,
|
107
107
|
ignoreAccents: false,
|
108
|
-
stringify: (option: PackageableElementOption<Class>): string =>
|
109
|
-
option.value.path,
|
108
|
+
stringify: (option: { data: PackageableElementOption<Class> }): string =>
|
109
|
+
option.data.value.path,
|
110
110
|
});
|
111
111
|
|
112
112
|
const classOptions = classes
|
@@ -114,12 +114,12 @@ export const QueryBuilderClassSelector = observer(
|
|
114
114
|
.map((_class) => ({
|
115
115
|
value: _class,
|
116
116
|
label: generateClassLabel(_class, queryBuilderState),
|
117
|
-
}));
|
117
|
+
})) as PackageableElementOption<Class>[];
|
118
118
|
const selectedClassOption = queryBuilderState.class
|
119
|
-
? {
|
119
|
+
? ({
|
120
120
|
value: queryBuilderState.class,
|
121
121
|
label: generateClassLabel(queryBuilderState.class, queryBuilderState),
|
122
|
-
}
|
122
|
+
} as PackageableElementOption<Class>)
|
123
123
|
: null;
|
124
124
|
const changeClass = (val: PackageableElementOption<Class>): void => {
|
125
125
|
if (val.value === queryBuilderState.class) {
|
@@ -233,8 +233,9 @@ const BasicQueryBuilderSetup = observer(
|
|
233
233
|
const mappingFilterOption = createFilter({
|
234
234
|
ignoreCase: true,
|
235
235
|
ignoreAccents: false,
|
236
|
-
stringify: (option:
|
237
|
-
|
236
|
+
stringify: (option: {
|
237
|
+
data: PackageableElementOption<Mapping>;
|
238
|
+
}): string => option.data.value.path,
|
238
239
|
});
|
239
240
|
|
240
241
|
// runtime
|
@@ -263,9 +264,9 @@ const BasicQueryBuilderSetup = observer(
|
|
263
264
|
const runtimeFilterOption = createFilter({
|
264
265
|
ignoreCase: true,
|
265
266
|
ignoreAccents: false,
|
266
|
-
stringify: (option: { value: Runtime }): string =>
|
267
|
-
option.value instanceof RuntimePointer
|
268
|
-
? option.value.packageableRuntime.value.path
|
267
|
+
stringify: (option: { data: { value: Runtime } }): string =>
|
268
|
+
option.data.value instanceof RuntimePointer
|
269
|
+
? option.data.value.packageableRuntime.value.path
|
269
270
|
: 'custom',
|
270
271
|
});
|
271
272
|
|
@@ -55,6 +55,7 @@ import {
|
|
55
55
|
import { STYLE_PREFIX, STYLE_PREFIX__DARK } from '@finos/legend-art';
|
56
56
|
import { expect } from '@jest/globals';
|
57
57
|
import { QueryBuilderAdvancedWorkflowState } from '../../stores/query-workflow/QueryBuilderWorkFlowState.js';
|
58
|
+
import { Route, Routes } from '@finos/legend-application/browser';
|
58
59
|
|
59
60
|
const getSelectorContainerClassName = (lightMode?: boolean): string =>
|
60
61
|
'.' + `${lightMode ? STYLE_PREFIX : STYLE_PREFIX__DARK}__value-container`;
|
@@ -254,9 +255,14 @@ export const TEST__setUpQueryBuilder = async (
|
|
254
255
|
|
255
256
|
const renderResult = render(
|
256
257
|
<ApplicationStoreProvider store={MOCK__applicationStore}>
|
257
|
-
<TEST__BrowserEnvironmentProvider>
|
258
|
+
<TEST__BrowserEnvironmentProvider initialEntries={['/']}>
|
258
259
|
<ApplicationFrameworkProvider>
|
259
|
-
<
|
260
|
+
<Routes>
|
261
|
+
<Route
|
262
|
+
path="*"
|
263
|
+
element={<QueryBuilder queryBuilderState={queryBuilderState} />}
|
264
|
+
/>
|
265
|
+
</Routes>
|
260
266
|
</ApplicationFrameworkProvider>
|
261
267
|
</TEST__BrowserEnvironmentProvider>
|
262
268
|
</ApplicationStoreProvider>,
|
@@ -27,8 +27,7 @@ import {
|
|
27
27
|
WindowMaximizeIcon,
|
28
28
|
} from '@finos/legend-art';
|
29
29
|
import { useState } from 'react';
|
30
|
-
import {
|
31
|
-
import { QueryBuilderDataCubeEngine } from '../../stores/data-cube/QueryBuilderDataCubeEngine.js';
|
30
|
+
import { createDataCubeEngineFromQueryBuilder } from '../../stores/data-cube/QueryBuilderDataCubeEngineHelper.js';
|
32
31
|
|
33
32
|
const QueryBuilderDataCube = observer(
|
34
33
|
(props: { queryBuilderState: QueryBuilderState }) => {
|
@@ -36,22 +35,11 @@ const QueryBuilderDataCube = observer(
|
|
36
35
|
const applicationStore = new QueryBuilderDataCubeApplicationEngine(
|
37
36
|
queryBuilderState.applicationStore,
|
38
37
|
);
|
39
|
-
const
|
40
|
-
queryBuilderState
|
41
|
-
|
42
|
-
? queryBuilderState.executionContextState.runtimeValue
|
43
|
-
.packageableRuntime.value.path
|
44
|
-
: undefined;
|
45
|
-
if (!runtime) {
|
46
|
-
// TODO: add better message
|
38
|
+
const queryBuilderEngine =
|
39
|
+
createDataCubeEngineFromQueryBuilder(queryBuilderState);
|
40
|
+
if (!queryBuilderEngine) {
|
47
41
|
return null;
|
48
42
|
}
|
49
|
-
const queryBuilderEngine = new QueryBuilderDataCubeEngine(
|
50
|
-
queryBuilderState.buildQuery(),
|
51
|
-
queryBuilderState.executionContextState.mapping?.path,
|
52
|
-
runtime,
|
53
|
-
queryBuilderState.graphManagerState,
|
54
|
-
);
|
55
43
|
|
56
44
|
return (
|
57
45
|
<DataCubeProvider
|
@@ -408,6 +408,28 @@ export const QueryBuilderResultPanel = observer(
|
|
408
408
|
}
|
409
409
|
resultState.pressedRunQuery.complete();
|
410
410
|
};
|
411
|
+
|
412
|
+
const openDataCube = (): void => {
|
413
|
+
if (
|
414
|
+
queryParametersState.parameterStates.length &&
|
415
|
+
queryParametersState.parameterStates.find(
|
416
|
+
(param) =>
|
417
|
+
!queryBuilderState.milestoningState.isMilestoningParameter(
|
418
|
+
param.parameter,
|
419
|
+
),
|
420
|
+
)
|
421
|
+
) {
|
422
|
+
queryParametersState.parameterValuesEditorState.open(
|
423
|
+
(): Promise<void> => {
|
424
|
+
queryBuilderState.setIsCubeEnabled(true);
|
425
|
+
return Promise.resolve();
|
426
|
+
},
|
427
|
+
PARAMETER_SUBMIT_ACTION.DATA_CUBE,
|
428
|
+
);
|
429
|
+
} else {
|
430
|
+
queryBuilderState.setIsCubeEnabled(true);
|
431
|
+
}
|
432
|
+
};
|
411
433
|
const cancelQuery = applicationStore.guardUnhandledError(() =>
|
412
434
|
flowResult(resultState.cancelQuery()),
|
413
435
|
);
|
@@ -841,9 +863,7 @@ export const QueryBuilderResultPanel = observer(
|
|
841
863
|
</MenuContentItem>
|
842
864
|
{queryBuilderState.config?.TEMPORARY__enableExportToCube && (
|
843
865
|
<MenuContentItem
|
844
|
-
onClick={
|
845
|
-
queryBuilderState.setIsCubeEnabled(true)
|
846
|
-
}
|
866
|
+
onClick={openDataCube}
|
847
867
|
disabled={
|
848
868
|
!queryBuilderState.fetchStructureState.implementation
|
849
869
|
.canBeExportedToCube ||
|
@@ -44,6 +44,7 @@ import { QueryBuilderTDSState } from '../../../stores/fetch-structure/tds/QueryB
|
|
44
44
|
import { DEFAULT_LOCALE } from '../../../graph-manager/QueryBuilderConst.js';
|
45
45
|
import {
|
46
46
|
assertErrorThrown,
|
47
|
+
guaranteeNonNullable,
|
47
48
|
isBoolean,
|
48
49
|
isNumber,
|
49
50
|
isString,
|
@@ -393,18 +394,22 @@ export const QueryBuilderTDSGridResult = observer(
|
|
393
394
|
aggFuncParams.colDef.field,
|
394
395
|
)
|
395
396
|
? {
|
396
|
-
label:
|
397
|
-
|
397
|
+
label: guaranteeNonNullable(
|
398
|
+
resultState.wavgAggregationState.weightedColumnIdPairs.get(
|
399
|
+
aggFuncParams.colDef.field,
|
400
|
+
),
|
398
401
|
),
|
399
|
-
value:
|
400
|
-
|
402
|
+
value: guaranteeNonNullable(
|
403
|
+
resultState.wavgAggregationState.weightedColumnIdPairs.get(
|
404
|
+
aggFuncParams.colDef.field,
|
405
|
+
),
|
401
406
|
),
|
402
407
|
}
|
403
408
|
: null;
|
404
409
|
|
405
|
-
const onWeightedColumnOptionChange =
|
410
|
+
const onWeightedColumnOptionChange = (
|
406
411
|
option: { label: string; value: string } | null,
|
407
|
-
)
|
412
|
+
) => {
|
408
413
|
if (aggFuncParams?.colDef.field && option?.value) {
|
409
414
|
resultState.wavgAggregationState?.addWeightedColumnIdPair(
|
410
415
|
aggFuncParams.colDef.field,
|
@@ -233,9 +233,7 @@ const StringPrimitiveInstanceValueEditor = observer(
|
|
233
233
|
selectorConfig?: BasicValueSpecificationEditorSelectorConfig | undefined;
|
234
234
|
observerContext: ObserverContext;
|
235
235
|
handleBlur?: (() => void) | undefined;
|
236
|
-
handleKeyDown?:
|
237
|
-
| ((event: React.KeyboardEvent<HTMLInputElement>) => void)
|
238
|
-
| undefined;
|
236
|
+
handleKeyDown?: React.KeyboardEventHandler<HTMLDivElement> | undefined;
|
239
237
|
}
|
240
238
|
>(function StringPrimitiveInstanceValueEditor(props, ref) {
|
241
239
|
const {
|
@@ -261,7 +259,7 @@ const StringPrimitiveInstanceValueEditor = observer(
|
|
261
259
|
updateValueSpec(event.target.value);
|
262
260
|
};
|
263
261
|
// custom select
|
264
|
-
const selectedValue = { value: value, label: value };
|
262
|
+
const selectedValue = value ? { value: value, label: value } : null;
|
265
263
|
const reloadValuesFunc = selectorConfig?.reloadValues;
|
266
264
|
const changeValue = (
|
267
265
|
val: null | { value: number | string; label: string },
|
@@ -318,7 +316,7 @@ const StringPrimitiveInstanceValueEditor = observer(
|
|
318
316
|
className="value-spec-editor__enum-selector"
|
319
317
|
options={queryOptions}
|
320
318
|
onChange={changeValue}
|
321
|
-
value={selectedValue
|
319
|
+
value={selectedValue}
|
322
320
|
inputValue={value ?? ''}
|
323
321
|
onInputChange={handleInputChange}
|
324
322
|
darkMode={
|
@@ -333,8 +331,10 @@ const StringPrimitiveInstanceValueEditor = observer(
|
|
333
331
|
}}
|
334
332
|
hasError={!isValidInstanceValue(valueSpecification)}
|
335
333
|
placeholder={value === '' ? '(empty)' : undefined}
|
336
|
-
|
337
|
-
onKeyDown={
|
334
|
+
inputRef={ref as React.Ref<SelectComponent>}
|
335
|
+
onKeyDown={
|
336
|
+
handleKeyDown as React.KeyboardEventHandler<HTMLDivElement>
|
337
|
+
}
|
338
338
|
inputName={inputName}
|
339
339
|
/>
|
340
340
|
) : (
|
@@ -911,14 +911,18 @@ const PrimitiveCollectionInstanceValueEditor = observer(
|
|
911
911
|
saveEdit();
|
912
912
|
};
|
913
913
|
|
914
|
-
const handleKeyDown = (
|
914
|
+
const handleKeyDown: React.KeyboardEventHandler<HTMLDivElement> = (
|
915
|
+
event,
|
916
|
+
) => {
|
915
917
|
if ((event.key === 'Enter' || event.key === ',') && !event.shiftKey) {
|
916
918
|
addInputValueToSelectedOptions();
|
917
919
|
event.preventDefault();
|
918
920
|
}
|
919
921
|
};
|
920
922
|
|
921
|
-
const handlePaste
|
923
|
+
const handlePaste: React.ClipboardEventHandler<HTMLInputElement> = (
|
924
|
+
event,
|
925
|
+
) => {
|
922
926
|
const pastedText = event.clipboardData.getData('text');
|
923
927
|
const parsedData = parseCSVString(pastedText);
|
924
928
|
if (!parsedData) {
|
@@ -982,8 +986,7 @@ const PrimitiveCollectionInstanceValueEditor = observer(
|
|
982
986
|
}
|
983
987
|
isLoading={isLoading}
|
984
988
|
noMatchMessage={noMatchMessage}
|
985
|
-
placeholder={
|
986
|
-
inputPlaceholder={getPlaceHolder(expectedType)}
|
989
|
+
placeholder={getPlaceHolder(expectedType)}
|
987
990
|
components={{
|
988
991
|
DropdownIndicator: null,
|
989
992
|
}}
|
@@ -1121,14 +1124,18 @@ const EnumCollectionInstanceValueEditor = observer(
|
|
1121
1124
|
}
|
1122
1125
|
};
|
1123
1126
|
|
1124
|
-
const handleKeyDown = (
|
1127
|
+
const handleKeyDown: React.KeyboardEventHandler<HTMLDivElement> = (
|
1128
|
+
event,
|
1129
|
+
) => {
|
1125
1130
|
if ((event.key === 'Enter' || event.key === ',') && !event.shiftKey) {
|
1126
1131
|
addInputValueToSelectedOptions();
|
1127
1132
|
event.preventDefault();
|
1128
1133
|
}
|
1129
1134
|
};
|
1130
1135
|
|
1131
|
-
const handlePaste
|
1136
|
+
const handlePaste: React.ClipboardEventHandler<HTMLInputElement> = (
|
1137
|
+
event,
|
1138
|
+
) => {
|
1132
1139
|
const pastedText = event.clipboardData.getData('text');
|
1133
1140
|
const parsedData = parseCSVString(pastedText);
|
1134
1141
|
if (!parsedData) {
|
@@ -1199,8 +1206,7 @@ const EnumCollectionInstanceValueEditor = observer(
|
|
1199
1206
|
darkMode={
|
1200
1207
|
!applicationStore.layoutService.TEMPORARY__isLightColorThemeEnabled
|
1201
1208
|
}
|
1202
|
-
placeholder=
|
1203
|
-
inputPlaceholder="Add"
|
1209
|
+
placeholder="Add"
|
1204
1210
|
menuIsOpen={true}
|
1205
1211
|
inputName={inputName}
|
1206
1212
|
/>
|