@finos/legend-query-builder 1.0.0 → 1.0.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/QueryBuilder_TestID.d.ts → application/QueryBuilderTesting.d.ts} +1 -1
- package/lib/application/QueryBuilderTesting.d.ts.map +1 -0
- package/lib/{components/QueryBuilder_TestID.js → application/QueryBuilderTesting.js} +1 -1
- package/lib/application/QueryBuilderTesting.js.map +1 -0
- package/lib/components/QueryBuilder.js +1 -1
- package/lib/components/QueryBuilder.js.map +1 -1
- package/lib/components/QueryBuilderComponentTestUtils.js +1 -1
- package/lib/components/QueryBuilderComponentTestUtils.js.map +1 -1
- package/lib/components/QueryBuilderConstantExpressionPanel.js +1 -1
- package/lib/components/QueryBuilderConstantExpressionPanel.js.map +1 -1
- package/lib/components/QueryBuilderParametersPanel.js +1 -1
- package/lib/components/QueryBuilderParametersPanel.js.map +1 -1
- package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
- package/lib/components/QueryBuilderResultPanel.js +2 -2
- package/lib/components/QueryBuilderResultPanel.js.map +1 -1
- package/lib/components/QueryBuilderSideBar.js +1 -1
- package/lib/components/QueryBuilderSideBar.js.map +1 -1
- package/lib/components/explorer/QueryBuilderExplorerPanel.js +1 -1
- package/lib/components/explorer/QueryBuilderExplorerPanel.js.map +1 -1
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.js +1 -1
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js +1 -1
- package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js +1 -1
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.js +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.js +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.js.map +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.js +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
- package/lib/components/shared/LambdaEditor.d.ts.map +1 -1
- package/lib/components/shared/LambdaEditor.js +2 -2
- package/lib/components/shared/LambdaEditor.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/package.json +1 -1
- package/lib/stores/QueryBuilderState.d.ts +2 -0
- package/lib/stores/QueryBuilderState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderState.js +13 -4
- package/lib/stores/QueryBuilderState.js.map +1 -1
- package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -1
- package/lib/stores/QueryBuilderStateBuilder.js +15 -4
- package/lib/stores/QueryBuilderStateBuilder.js.map +1 -1
- package/lib/stores/milestoning/QueryBuilderMilestoningHelper.d.ts +1 -0
- package/lib/stores/milestoning/QueryBuilderMilestoningHelper.d.ts.map +1 -1
- package/lib/stores/milestoning/QueryBuilderMilestoningHelper.js +21 -17
- package/lib/stores/milestoning/QueryBuilderMilestoningHelper.js.map +1 -1
- package/package.json +4 -4
- package/src/components/QueryBuilder.tsx +1 -1
- package/src/components/QueryBuilderComponentTestUtils.tsx +1 -1
- package/src/components/QueryBuilderConstantExpressionPanel.tsx +1 -1
- package/src/components/QueryBuilderParametersPanel.tsx +1 -1
- package/src/components/QueryBuilderResultPanel.tsx +2 -1
- package/src/components/QueryBuilderSideBar.tsx +1 -1
- package/src/components/explorer/QueryBuilderExplorerPanel.tsx +1 -1
- package/src/components/explorer/QueryBuilderPropertySearchPanel.tsx +1 -1
- package/src/components/fetch-structure/QueryBuilderGraphFetchTreePanel.tsx +1 -1
- package/src/components/fetch-structure/QueryBuilderPostFilterPanel.tsx +1 -1
- package/src/components/fetch-structure/QueryBuilderTDSPanel.tsx +1 -1
- package/src/components/fetch-structure/QueryBuilderTDSWindowPanel.tsx +1 -1
- package/src/components/filter/QueryBuilderFilterPanel.tsx +1 -1
- package/src/components/shared/LambdaEditor.tsx +2 -1
- package/src/index.ts +1 -1
- package/src/stores/QueryBuilderState.ts +15 -4
- package/src/stores/QueryBuilderStateBuilder.ts +23 -8
- package/src/stores/milestoning/QueryBuilderMilestoningHelper.ts +34 -27
- package/tsconfig.json +1 -1
- package/lib/components/QueryBuilder_TestID.d.ts.map +0 -1
- package/lib/components/QueryBuilder_TestID.js.map +0 -1
- /package/src/{components/QueryBuilder_TestID.ts → application/QueryBuilderTesting.ts} +0 -0
@@ -69,6 +69,8 @@ import { LambdaParameterState } from './shared/LambdaParameterState.js';
|
|
69
69
|
import { processTDS_OLAPGroupByExpression } from './fetch-structure/tds/window/QueryBuilderWindowStateBuilder.js';
|
70
70
|
import { processWatermarkExpression } from './watermark/QueryBuilderWatermarkStateBuilder.js';
|
71
71
|
import { QueryBuilderConstantExpressionState } from './QueryBuilderConstantsState.js';
|
72
|
+
import { checkIfEquivalent } from './milestoning/QueryBuilderMilestoningHelper.js';
|
73
|
+
import { QueryBuilderParametersState } from './QueryBuilderParametersState.js';
|
72
74
|
|
73
75
|
const processGetAllExpression = (
|
74
76
|
expression: SimpleFunctionExpression,
|
@@ -607,16 +609,29 @@ export const processParameters = (
|
|
607
609
|
parameters: VariableExpression[],
|
608
610
|
queryBuilderState: QueryBuilderState,
|
609
611
|
): void => {
|
610
|
-
const queryParameterState =
|
612
|
+
const queryParameterState = new QueryBuilderParametersState(
|
613
|
+
queryBuilderState,
|
614
|
+
);
|
615
|
+
// Here we won't process the parameters which are present in the previous state
|
616
|
+
// because we don't want to lose the parameter value
|
611
617
|
parameters.forEach((parameter) => {
|
612
|
-
const
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
)
|
617
|
-
|
618
|
-
|
618
|
+
const oldParamterState =
|
619
|
+
queryBuilderState.parametersState.parameterStates.find((ps) =>
|
620
|
+
checkIfEquivalent(ps.parameter, parameter),
|
621
|
+
);
|
622
|
+
if (oldParamterState) {
|
623
|
+
queryParameterState.addParameter(oldParamterState);
|
624
|
+
} else {
|
625
|
+
const parameterState = new LambdaParameterState(
|
626
|
+
parameter,
|
627
|
+
queryBuilderState.observableContext,
|
628
|
+
queryBuilderState.graphManagerState.graph,
|
629
|
+
);
|
630
|
+
parameterState.mockParameterValue();
|
631
|
+
queryParameterState.addParameter(parameterState);
|
632
|
+
}
|
619
633
|
});
|
634
|
+
queryBuilderState.parametersState = queryParameterState;
|
620
635
|
};
|
621
636
|
|
622
637
|
export const processQueryLambdaFunction = (
|
@@ -133,6 +133,40 @@ export const isDefaultDatePropagationSupported = (
|
|
133
133
|
return false;
|
134
134
|
};
|
135
135
|
|
136
|
+
export const checkIfEquivalent = (
|
137
|
+
param1: ValueSpecification | undefined,
|
138
|
+
param2: ValueSpecification | undefined,
|
139
|
+
): boolean => {
|
140
|
+
if (
|
141
|
+
param1?.multiplicity.lowerBound !== param2?.multiplicity.lowerBound ||
|
142
|
+
param1?.multiplicity.upperBound !== param2?.multiplicity.upperBound
|
143
|
+
) {
|
144
|
+
return false;
|
145
|
+
}
|
146
|
+
if (
|
147
|
+
param1 instanceof VariableExpression &&
|
148
|
+
param2 instanceof VariableExpression
|
149
|
+
) {
|
150
|
+
return param1.name === param2.name;
|
151
|
+
} else if (
|
152
|
+
param1 instanceof PrimitiveInstanceValue &&
|
153
|
+
param2 instanceof PrimitiveInstanceValue
|
154
|
+
) {
|
155
|
+
if (
|
156
|
+
param1.genericType.value.rawType.name === PRIMITIVE_TYPE.LATESTDATE &&
|
157
|
+
param2.genericType.value.rawType.name === PRIMITIVE_TYPE.LATESTDATE
|
158
|
+
) {
|
159
|
+
return true;
|
160
|
+
}
|
161
|
+
return (
|
162
|
+
param1.genericType.value.rawType.name ===
|
163
|
+
param2.genericType.value.rawType.name &&
|
164
|
+
param1.values[0] === param2.values[0]
|
165
|
+
);
|
166
|
+
}
|
167
|
+
return false;
|
168
|
+
};
|
169
|
+
|
136
170
|
/**
|
137
171
|
* Check if the parameter value of the milestoned property is
|
138
172
|
* the same as those specified in global scope, so that we can
|
@@ -144,33 +178,6 @@ export const matchMilestoningParameterValue = (
|
|
144
178
|
parameterValue: ValueSpecification,
|
145
179
|
milestoningDate: QueryBuilderMilestoningState,
|
146
180
|
): boolean => {
|
147
|
-
const checkIfEquivalent = (
|
148
|
-
param1: ValueSpecification | undefined,
|
149
|
-
param2: ValueSpecification | undefined,
|
150
|
-
): boolean => {
|
151
|
-
if (
|
152
|
-
param1 instanceof VariableExpression &&
|
153
|
-
param2 instanceof VariableExpression
|
154
|
-
) {
|
155
|
-
return param1.name === param2.name;
|
156
|
-
} else if (
|
157
|
-
param1 instanceof PrimitiveInstanceValue &&
|
158
|
-
param2 instanceof PrimitiveInstanceValue
|
159
|
-
) {
|
160
|
-
if (
|
161
|
-
param1.genericType.value.rawType.name === PRIMITIVE_TYPE.LATESTDATE &&
|
162
|
-
param2.genericType.value.rawType.name === PRIMITIVE_TYPE.LATESTDATE
|
163
|
-
) {
|
164
|
-
return true;
|
165
|
-
}
|
166
|
-
return (
|
167
|
-
param1.genericType.value.rawType.name ===
|
168
|
-
param2.genericType.value.rawType.name &&
|
169
|
-
param1.values[0] === param2.values[0]
|
170
|
-
);
|
171
|
-
}
|
172
|
-
return false;
|
173
|
-
};
|
174
181
|
switch (stereotype) {
|
175
182
|
case MILESTONING_STEREOTYPE.BITEMPORAL:
|
176
183
|
return (
|
package/tsconfig.json
CHANGED
@@ -36,9 +36,9 @@
|
|
36
36
|
"./src/application/QueryBuilderEvent.ts",
|
37
37
|
"./src/application/QueryBuilderSetting.ts",
|
38
38
|
"./src/application/QueryBuilderTelemetryHelper.ts",
|
39
|
+
"./src/application/QueryBuilderTesting.ts",
|
39
40
|
"./src/components/QueryBuilderComponentElement.ts",
|
40
41
|
"./src/components/QueryBuilder_LegendApplicationPlugin.ts",
|
41
|
-
"./src/components/QueryBuilder_TestID.ts",
|
42
42
|
"./src/components/QuerySetupUtils.ts",
|
43
43
|
"./src/graphManager/QueryBuilderHashUtils.ts",
|
44
44
|
"./src/graphManager/QueryBuilderSupportedFunctions.ts",
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilder_TestID.d.ts","sourceRoot":"","sources":["../../src/components/QueryBuilder_TestID.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,oBAAY,qBAAqB;IAC/B,2BAA2B,iCAAiC;IAE5D,aAAa,mBAAmB;IAChC,mBAAmB,0BAA0B;IAC7C,iBAAiB,wBAAwB;IACzC,yBAAyB,iCAAiC;IAC1D,oBAAoB,2BAA2B;IAC/C,yBAAyB,gCAAgC;IACzD,4BAA4B,2BAA2B;IACvD,sBAAsB,6BAA6B;IACnD,mCAAmC,4CAA4C;IAC/E,0BAA0B,kCAAkC;IAC5D,wBAAwB,8BAA8B;IACtD,uBAAuB,6BAA6B;CACrD"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilder_TestID.js","sourceRoot":"","sources":["../../src/components/QueryBuilder_TestID.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAN,IAAY,qBAeX;AAfD,WAAY,qBAAqB;IAC/B,qFAA4D,CAAA;IAE5D,yDAAgC,CAAA;IAChC,sEAA6C,CAAA;IAC7C,kEAAyC,CAAA;IACzC,mFAA0D,CAAA;IAC1D,wEAA+C,CAAA;IAC/C,kFAAyD,CAAA;IACzD,gFAAuD,CAAA;IACvD,4EAAmD,CAAA;IACnD,wGAA+E,CAAA;IAC/E,qFAA4D,CAAA;IAC5D,+EAAsD,CAAA;IACtD,6EAAoD,CAAA;AACtD,CAAC,EAfW,qBAAqB,GAArB,qBAAqB,KAArB,qBAAqB,QAehC"}
|
File without changes
|