@finos/legend-graph 31.3.0 → 31.3.1

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.
@@ -107,7 +107,8 @@ export declare enum PackageableElementPointerType {
107
107
  export declare enum SUPPORTED_FUNCTIONS {
108
108
  LET = "meta::pure::functions::lang::letFunction",
109
109
  NEW = "meta::pure::functions::meta::new",
110
- FROM = "meta::pure::mapping::from"
110
+ FROM = "meta::pure::mapping::from",
111
+ IF = "meta::pure::functions::lang::if"
111
112
  }
112
113
  export declare const DATE_TIME_FORMAT_WITH_MILLISECONDS = "yyyy-MM-dd'T'HH:mm:ss.SSSxxxx";
113
114
  export declare const DATE_TIME_FORMAT = "yyyy-MM-dd'T'HH:mm:ssxxxx";
@@ -1 +1 @@
1
- {"version":3,"file":"MetaModelConst.d.ts","sourceRoot":"","sources":["../../src/graph/MetaModelConst.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAChD,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,WAAW,MAAM,CAAC;AAC/B,eAAO,MAAM,6BAA6B,QAAQ,CAAC;AACnD,eAAO,MAAM,4BAA4B,YAAY,CAAC;AACtD,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AACvE,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,eAAO,MAAM,WAAW,YAAY,CAAC;AACrC,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAC3C,eAAO,MAAM,8CAA8C,SAAS,CAAC;AACrE,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,sCAAsC,sBAAsB,CAAC;AAE1E,eAAO,MAAM,uBAAuB,UAAgB,CAAC;AAErD,oBAAY,iBAAiB;IAC3B,IAAI,SAAS;IACb,IAAI,SAAS;IACb,gBAAgB,0BAA0B;IAC1C,MAAM,gBAAgB;IACtB,uBAAuB,4BAA4B;CACpD;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,UAAU,eAAe;IAGzB,UAAU,eAAe;IACzB,IAAI,SAAS;CACd;AAED,oBAAY,gBAAgB;IAC1B,YAAY,gBAAgB;IAC5B,YAAY,gBAAgB;CAC7B;AAKD,eAAO,MAAM,YAAY,UA6BxB,CAAC;AAEF,oBAAY,cAAc;IAExB,GAAG,qCAAqC;IACxC,GAAG,qCAAqC;IAGxC,WAAW,8BAA8B;IACzC,gBAAgB,mCAAmC;IAGnD,OAAO,8CAA8C;IACrD,WAAW,6CAA6C;IACxD,OAAO,yCAAyC;IAChD,KAAK,uCAAuC;IAC5C,WAAW,qDAAqD;IAChE,QAAQ,gEAAgE;IACxE,SAAS,wCAAwC;IACjD,QAAQ,0CAA0C;IAClD,OAAO,iCAAiC;IACxC,OAAO,8CAA8C;IACrD,UAAU,+CAA+C;IACzD,OAAO,4CAA4C;IACnD,qBAAqB,mEAAmE;IACxF,eAAe,+DAA+D;IAC9E,wBAAwB,+DAA+D;IACvF,aAAa,iDAAiD;IAC9D,YAAY,kCAAkC;CAC/C;AAED,eAAO,MAAM,YAAY,QAAQ,CAAC;AAClC,eAAO,MAAM,0BAA0B,eAAe,CAAC;AAEvD,oBAAY,sBAAsB;IAChC,iBAAiB,qBAAqB;IACtC,mBAAmB,uBAAuB;IAC1C,UAAU,eAAe;CAC1B;AAED,oBAAY,mCAAmC;IAC7C,YAAY,gBAAgB;IAC5B,qBAAqB,uBAAuB;CAC7C;AAED,eAAO,MAAM,qCAAqC,UAAU,CAAC;AAC7D,eAAO,MAAM,mCAAmC,QAAQ,CAAC;AACzD,eAAO,MAAM,yCAAyC,mBAAmB,CAAC;AAC1E,eAAO,MAAM,uCAAuC,iBAAiB,CAAC;AAEtE,oBAAY,6BAA6B;IACvC,KAAK,UAAU;IACf,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,eAAe,oBAAoB;IACnC,OAAO,YAAY;CACpB;AAED,oBAAY,mBAAmB;IAC7B,GAAG,6CAA6C;IAChD,GAAG,qCAAqC;IAExC,IAAI,8BAA8B;CACnC;AAED,eAAO,MAAM,kCAAkC,kCACd,CAAC;AAClC,eAAO,MAAM,gBAAgB,8BAA8B,CAAC;AAC5D,eAAO,MAAM,WAAW,eAAe,CAAC"}
1
+ {"version":3,"file":"MetaModelConst.d.ts","sourceRoot":"","sources":["../../src/graph/MetaModelConst.ts"],"names":[],"mappings":"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"}
@@ -154,6 +154,7 @@ export var SUPPORTED_FUNCTIONS;
154
154
  SUPPORTED_FUNCTIONS["NEW"] = "meta::pure::functions::meta::new";
155
155
  // from
156
156
  SUPPORTED_FUNCTIONS["FROM"] = "meta::pure::mapping::from";
157
+ SUPPORTED_FUNCTIONS["IF"] = "meta::pure::functions::lang::if";
157
158
  })(SUPPORTED_FUNCTIONS || (SUPPORTED_FUNCTIONS = {}));
158
159
  export const DATE_TIME_FORMAT_WITH_MILLISECONDS = "yyyy-MM-dd'T'HH:mm:ss.SSSxxxx";
159
160
  export const DATE_TIME_FORMAT = "yyyy-MM-dd'T'HH:mm:ssxxxx";
@@ -1 +1 @@
1
- {"version":3,"file":"MetaModelConst.js","sourceRoot":"","sources":["../../src/graph/MetaModelConst.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetaModelConst.js","sourceRoot":"","sources":["../../src/graph/MetaModelConst.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ import type { V1_CInteger } from '../../../../model/valueSpecification/raw/V1_CI
37
37
  import type { V1_CLatestDate } from '../../../../model/valueSpecification/raw/V1_CLatestDate.js';
38
38
  import type { V1_Collection } from '../../../../model/valueSpecification/raw/V1_Collection.js';
39
39
  import type { V1_CStrictDate } from '../../../../model/valueSpecification/raw/V1_CStrictDate.js';
40
- import { V1_CString } from '../../../../model/valueSpecification/raw/V1_CString.js';
40
+ import type { V1_CString } from '../../../../model/valueSpecification/raw/V1_CString.js';
41
41
  import type { V1_EnumValue } from '../../../../model/valueSpecification/raw/V1_EnumValue.js';
42
42
  import type { V1_KeyExpression } from '../../../../model/valueSpecification/raw/V1_KeyExpression.js';
43
43
  import type { V1_PackageableElementPtr } from '../../../../model/valueSpecification/raw/V1_PackageableElementPtr.js';
@@ -82,7 +82,7 @@ export declare const V1_buildBaseSimpleFunctionExpression: (processedParameters:
82
82
  * type-inferencing of the return and the parameters.
83
83
  */
84
84
  export declare const V1_buildGenericFunctionExpression: (functionName: string, parameters: V1_ValueSpecification[], openVariables: string[], compileContext: V1_GraphBuilderContext, processingContext: V1_ProcessingContext) => SimpleFunctionExpression;
85
- export declare const V1_buildGenericLetFunctionExpression: (functionName: string, parameters: V1_ValueSpecification[], openVariables: string[], compileContext: V1_GraphBuilderContext, processingContext: V1_ProcessingContext) => SimpleFunctionExpression;
85
+ export declare const V1_buildLetFunctionExpression: (functionName: string, parameters: V1_ValueSpecification[], openVariables: string[], compileContext: V1_GraphBuilderContext, processingContext: V1_ProcessingContext) => SimpleFunctionExpression;
86
86
  /**
87
87
  * This is fairly similar to how engine does function matching in a way.
88
88
  * Notice that Studio core should not attempt to do any function inferencing/matching
@@ -1 +1 @@
1
- {"version":3,"file":"V1_ValueSpecificationBuilderHelper.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"V1_ValueSpecificationBuilderHelper.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"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"}
@@ -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 { guaranteeNonNullable, guaranteeType, UnsupportedOperationError, isNonNullable, uniq, returnUndefOnError, assertTrue, } from '@finos/legend-shared';
16
+ import { guaranteeNonNullable, guaranteeType, UnsupportedOperationError, isNonNullable, uniq, returnUndefOnError, assertTrue, isString, } from '@finos/legend-shared';
17
17
  import { PRIMITIVE_TYPE, SUPPORTED_FUNCTIONS, } from '../../../../../../../../graph/MetaModelConst.js';
18
18
  import { LambdaFunction, FunctionType, LambdaFunctionInstanceValue, } from '../../../../../../../../graph/metamodel/pure/valueSpecification/LambdaFunction.js';
19
19
  import { VariableExpression } from '../../../../../../../../graph/metamodel/pure/valueSpecification/VariableExpression.js';
@@ -31,7 +31,6 @@ import { V1_ProcessingContext } from './V1_ProcessingContext.js';
31
31
  import { V1_PropertyGraphFetchTree } from '../../../../model/valueSpecification/raw/classInstance/graph/V1_PropertyGraphFetchTree.js';
32
32
  import { V1_Multiplicity } from '../../../../model/packageableElements/domain/V1_Multiplicity.js';
33
33
  import { V1_RootGraphFetchTree } from '../../../../model/valueSpecification/raw/classInstance/graph/V1_RootGraphFetchTree.js';
34
- import { V1_CString } from '../../../../model/valueSpecification/raw/V1_CString.js';
35
34
  import { V1_getAppliedProperty } from './V1_DomainBuilderHelper.js';
36
35
  import { Enumeration } from '../../../../../../../../graph/metamodel/pure/packageableElements/domain/Enumeration.js';
37
36
  import { EnumValueExplicitReference } from '../../../../../../../../graph/metamodel/pure/packageableElements/domain/EnumValueReference.js';
@@ -44,6 +43,7 @@ import { Multiplicity } from '../../../../../../../../graph/metamodel/pure/packa
44
43
  import { KeyExpression, KeyExpressionInstanceValue, } from '../../../../../../../../graph/metamodel/pure/valueSpecification/KeyExpressionInstanceValue.js';
45
44
  import { V1_SubTypeGraphFetchTree } from '../../../../model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.js';
46
45
  import { findMappingLocalProperty } from '../../../../../../../../graph/helpers/DSL_Mapping_Helper.js';
46
+ import { PrimitiveType } from '../../../../../../../../graph/metamodel/pure/packageableElements/domain/PrimitiveType.js';
47
47
  const buildPrimtiveInstanceValue = (type, values, context) => {
48
48
  const _genericType = context.resolveGenericType(type);
49
49
  const instance = new PrimitiveInstanceValue(_genericType);
@@ -100,17 +100,6 @@ export class V1_ValueSpecificationBuilder {
100
100
  }
101
101
  visit_AppliedFunction(appliedFunction) {
102
102
  this.processingContext.push(`Applying function '${appliedFunction.function}'`);
103
- if (matchFunctionName(appliedFunction.function, SUPPORTED_FUNCTIONS.LET)) {
104
- // We will build the let parameters to assign the right side of the expression to the left side
105
- const parameters = appliedFunction.parameters.map((expression) => returnUndefOnError(() => expression.accept_ValueSpecificationVisitor(new V1_ValueSpecificationBuilder(this.context, this.processingContext, this.openVariables))));
106
- const letName = guaranteeType(appliedFunction.parameters[0], V1_CString).value;
107
- // right side (value spec)
108
- const rightSide = parameters[1];
109
- const variableExpression = new VariableExpression(letName, rightSide?.multiplicity ?? Multiplicity.ONE);
110
- variableExpression.genericType = rightSide?.genericType;
111
- this.processingContext.addInferredVariables(letName, variableExpression);
112
- this.openVariables.push(letName);
113
- }
114
103
  const func = V1_buildFunctionExpression(appliedFunction.function, appliedFunction.parameters, this.openVariables, this.context, this.processingContext, this.checkFunctionName);
115
104
  this.processingContext.pop();
116
105
  return func;
@@ -278,9 +267,56 @@ export const V1_buildBaseSimpleFunctionExpression = (processedParameters, functi
278
267
  * type-inferencing of the return and the parameters.
279
268
  */
280
269
  export const V1_buildGenericFunctionExpression = (functionName, parameters, openVariables, compileContext, processingContext) => V1_buildBaseSimpleFunctionExpression(parameters.map((parameter) => parameter.accept_ValueSpecificationVisitor(new V1_ValueSpecificationBuilder(compileContext, processingContext, openVariables))), functionName, compileContext);
281
- export const V1_buildGenericLetFunctionExpression = (functionName, parameters, openVariables, compileContext, processingContext) => {
270
+ const resolveIfType = (type1, type2) => {
271
+ if (type1 === type2) {
272
+ return type1;
273
+ }
274
+ const dateTypes = [
275
+ PrimitiveType.STRICTDATE,
276
+ PrimitiveType.DATETIME,
277
+ PrimitiveType.STRICTDATE,
278
+ ];
279
+ if (type1 &&
280
+ dateTypes.includes(type1) &&
281
+ type2 &&
282
+ dateTypes.includes(type2)) {
283
+ return PrimitiveType.DATE;
284
+ }
285
+ return undefined;
286
+ };
287
+ export const V1_buildLetFunctionExpression = (functionName, parameters, openVariables, compileContext, processingContext) => {
288
+ let result;
282
289
  try {
283
- return V1_buildGenericFunctionExpression(functionName, parameters, openVariables, compileContext, processingContext);
290
+ const compiledLetFunc = V1_buildGenericFunctionExpression(functionName, parameters, openVariables, compileContext, processingContext);
291
+ if (compiledLetFunc.parametersValues.length === 2) {
292
+ const potentialIfFunction = compiledLetFunc.parametersValues[1];
293
+ if (potentialIfFunction instanceof SimpleFunctionExpression &&
294
+ matchFunctionName(potentialIfFunction.functionName, SUPPORTED_FUNCTIONS.IF)) {
295
+ const unknownValue = new INTERNAL__UnknownValueSpecification(V1_serializeValueSpecification(guaranteeNonNullable(parameters[1]), compileContext.extensions.plugins));
296
+ compiledLetFunc.parametersValues[1] = unknownValue;
297
+ if (potentialIfFunction.parametersValues.length === 3 &&
298
+ potentialIfFunction.parametersValues[1] instanceof
299
+ LambdaFunctionInstanceValue &&
300
+ potentialIfFunction.parametersValues[2] instanceof
301
+ LambdaFunctionInstanceValue) {
302
+ const trueExp = guaranteeType(potentialIfFunction.parametersValues[1], LambdaFunctionInstanceValue);
303
+ const falseExp = guaranteeType(potentialIfFunction.parametersValues[2], LambdaFunctionInstanceValue);
304
+ const trueType = trueExp.values[0]?.expressionSequence[0]?.genericType?.value
305
+ .rawType;
306
+ const falseType = falseExp.values[0]?.expressionSequence[0]?.genericType?.value
307
+ .rawType;
308
+ const resolvedTYpe = resolveIfType(trueType, falseType);
309
+ if (resolvedTYpe) {
310
+ unknownValue.genericType = GenericTypeExplicitReference.create(new GenericType(resolvedTYpe));
311
+ const variable = compiledLetFunc.parametersValues[0];
312
+ if (variable instanceof VariableExpression) {
313
+ variable.genericType = GenericTypeExplicitReference.create(new GenericType(resolvedTYpe));
314
+ }
315
+ }
316
+ }
317
+ }
318
+ }
319
+ result = compiledLetFunc;
284
320
  }
285
321
  catch (error) {
286
322
  // let statement
@@ -290,8 +326,24 @@ export const V1_buildGenericLetFunctionExpression = (functionName, parameters, o
290
326
  const rightSideParam = guaranteeNonNullable(parameters[1]);
291
327
  const rightSide = returnUndefOnError(() => rightSideParam.accept_ValueSpecificationVisitor(new V1_ValueSpecificationBuilder(compileContext, processingContext, openVariables))) ??
292
328
  new INTERNAL__UnknownValueSpecification(V1_serializeValueSpecification(rightSideParam, compileContext.extensions.plugins));
293
- return V1_buildBaseSimpleFunctionExpression([leftSide, rightSide], functionName, compileContext);
329
+ result = V1_buildBaseSimpleFunctionExpression([leftSide, rightSide], functionName, compileContext);
330
+ }
331
+ // post process let var with type
332
+ if (result.parametersValues.length === 2) {
333
+ const varSide = result.parametersValues[0];
334
+ if (varSide instanceof PrimitiveInstanceValue) {
335
+ const letName = varSide.values[0];
336
+ if (isString(letName) &&
337
+ varSide.genericType.value.rawType === PrimitiveType.STRING) {
338
+ const rightSide = result.parametersValues[1];
339
+ const variableExpression = new VariableExpression(letName, rightSide?.multiplicity ?? Multiplicity.ONE);
340
+ variableExpression.genericType = rightSide?.genericType;
341
+ processingContext.addInferredVariables(letName, variableExpression);
342
+ openVariables.push(letName);
343
+ }
344
+ }
294
345
  }
346
+ return result;
295
347
  };
296
348
  /**
297
349
  * This is fairly similar to how engine does function matching in a way.
@@ -310,7 +362,7 @@ checkFunctionName) {
310
362
  }
311
363
  if (matchFunctionName(functionName, Object.values(SUPPORTED_FUNCTIONS))) {
312
364
  if (matchFunctionName(functionName, SUPPORTED_FUNCTIONS.LET)) {
313
- return V1_buildGenericLetFunctionExpression(functionName, parameters, openVariables, compileContext, processingContext);
365
+ return V1_buildLetFunctionExpression(functionName, parameters, openVariables, compileContext, processingContext);
314
366
  }
315
367
  // NOTE: this is a catch-all builder that is only meant for basic function expression
316
368
  // such as and(), or(), etc. It will fail when type-inferencing/function-matching is required
@@ -1 +1 @@
1
- {"version":3,"file":"V1_ValueSpecificationBuilderHelper.js","sourceRoot":"","sources":["../../../../../../../../../src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"V1_ValueSpecificationBuilderHelper.js","sourceRoot":"","sources":["../../../../../../../../../src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"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"}
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-graph",
3
- "version": "31.3.0",
3
+ "version": "31.3.1",
4
4
  "description": "Legend graph and graph manager",
5
5
  "keywords": [
6
6
  "legend",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-graph",
3
- "version": "31.3.0",
3
+ "version": "31.3.1",
4
4
  "description": "Legend graph and graph manager",
5
5
  "keywords": [
6
6
  "legend",
@@ -161,6 +161,7 @@ export enum SUPPORTED_FUNCTIONS {
161
161
  NEW = 'meta::pure::functions::meta::new',
162
162
  // from
163
163
  FROM = 'meta::pure::mapping::from',
164
+ IF = 'meta::pure::functions::lang::if',
164
165
  }
165
166
 
166
167
  export const DATE_TIME_FORMAT_WITH_MILLISECONDS =
@@ -22,6 +22,7 @@ import {
22
22
  uniq,
23
23
  returnUndefOnError,
24
24
  assertTrue,
25
+ isString,
25
26
  } from '@finos/legend-shared';
26
27
  import {
27
28
  PRIMITIVE_TYPE,
@@ -82,7 +83,7 @@ import type { V1_CInteger } from '../../../../model/valueSpecification/raw/V1_CI
82
83
  import type { V1_CLatestDate } from '../../../../model/valueSpecification/raw/V1_CLatestDate.js';
83
84
  import type { V1_Collection } from '../../../../model/valueSpecification/raw/V1_Collection.js';
84
85
  import type { V1_CStrictDate } from '../../../../model/valueSpecification/raw/V1_CStrictDate.js';
85
- import { V1_CString } from '../../../../model/valueSpecification/raw/V1_CString.js';
86
+ import type { V1_CString } from '../../../../model/valueSpecification/raw/V1_CString.js';
86
87
  import type { V1_EnumValue } from '../../../../model/valueSpecification/raw/V1_EnumValue.js';
87
88
  import type { V1_KeyExpression } from '../../../../model/valueSpecification/raw/V1_KeyExpression.js';
88
89
  import { V1_getAppliedProperty } from './V1_DomainBuilderHelper.js';
@@ -107,6 +108,7 @@ import {
107
108
  } from '../../../../../../../../graph/metamodel/pure/valueSpecification/KeyExpressionInstanceValue.js';
108
109
  import { V1_SubTypeGraphFetchTree } from '../../../../model/valueSpecification/raw/classInstance/graph/V1_SubTypeGraphFetchTree.js';
109
110
  import { findMappingLocalProperty } from '../../../../../../../../graph/helpers/DSL_Mapping_Helper.js';
111
+ import { PrimitiveType } from '../../../../../../../../graph/metamodel/pure/packageableElements/domain/PrimitiveType.js';
110
112
 
111
113
  const buildPrimtiveInstanceValue = (
112
114
  type: PRIMITIVE_TYPE,
@@ -223,34 +225,6 @@ export class V1_ValueSpecificationBuilder
223
225
  this.processingContext.push(
224
226
  `Applying function '${appliedFunction.function}'`,
225
227
  );
226
- if (matchFunctionName(appliedFunction.function, SUPPORTED_FUNCTIONS.LET)) {
227
- // We will build the let parameters to assign the right side of the expression to the left side
228
- const parameters = appliedFunction.parameters.map((expression) =>
229
- returnUndefOnError(() =>
230
- expression.accept_ValueSpecificationVisitor(
231
- new V1_ValueSpecificationBuilder(
232
- this.context,
233
- this.processingContext,
234
- this.openVariables,
235
- ),
236
- ),
237
- ),
238
- );
239
- const letName = guaranteeType(
240
- appliedFunction.parameters[0],
241
- V1_CString,
242
- ).value;
243
- // right side (value spec)
244
- const rightSide = parameters[1];
245
- const variableExpression = new VariableExpression(
246
- letName,
247
- rightSide?.multiplicity ?? Multiplicity.ONE,
248
- );
249
-
250
- variableExpression.genericType = rightSide?.genericType;
251
- this.processingContext.addInferredVariables(letName, variableExpression);
252
- this.openVariables.push(letName);
253
- }
254
228
  const func = V1_buildFunctionExpression(
255
229
  appliedFunction.function,
256
230
  appliedFunction.parameters,
@@ -627,21 +601,98 @@ export const V1_buildGenericFunctionExpression = (
627
601
  compileContext,
628
602
  );
629
603
 
630
- export const V1_buildGenericLetFunctionExpression = (
604
+ const resolveIfType = (
605
+ type1: Type | undefined,
606
+ type2: Type | undefined,
607
+ ): Type | undefined => {
608
+ if (type1 === type2) {
609
+ return type1;
610
+ }
611
+ const dateTypes = [
612
+ PrimitiveType.STRICTDATE,
613
+ PrimitiveType.DATETIME,
614
+ PrimitiveType.STRICTDATE,
615
+ ];
616
+ if (
617
+ type1 &&
618
+ dateTypes.includes(type1) &&
619
+ type2 &&
620
+ dateTypes.includes(type2)
621
+ ) {
622
+ return PrimitiveType.DATE;
623
+ }
624
+ return undefined;
625
+ };
626
+
627
+ export const V1_buildLetFunctionExpression = (
631
628
  functionName: string,
632
629
  parameters: V1_ValueSpecification[],
633
630
  openVariables: string[],
634
631
  compileContext: V1_GraphBuilderContext,
635
632
  processingContext: V1_ProcessingContext,
636
633
  ): SimpleFunctionExpression => {
634
+ let result: SimpleFunctionExpression;
637
635
  try {
638
- return V1_buildGenericFunctionExpression(
636
+ const compiledLetFunc = V1_buildGenericFunctionExpression(
639
637
  functionName,
640
638
  parameters,
641
639
  openVariables,
642
640
  compileContext,
643
641
  processingContext,
644
642
  );
643
+ if (compiledLetFunc.parametersValues.length === 2) {
644
+ const potentialIfFunction = compiledLetFunc.parametersValues[1];
645
+ if (
646
+ potentialIfFunction instanceof SimpleFunctionExpression &&
647
+ matchFunctionName(
648
+ potentialIfFunction.functionName,
649
+ SUPPORTED_FUNCTIONS.IF,
650
+ )
651
+ ) {
652
+ const unknownValue = new INTERNAL__UnknownValueSpecification(
653
+ V1_serializeValueSpecification(
654
+ guaranteeNonNullable(parameters[1]),
655
+ compileContext.extensions.plugins,
656
+ ),
657
+ );
658
+ compiledLetFunc.parametersValues[1] = unknownValue;
659
+ if (
660
+ potentialIfFunction.parametersValues.length === 3 &&
661
+ potentialIfFunction.parametersValues[1] instanceof
662
+ LambdaFunctionInstanceValue &&
663
+ potentialIfFunction.parametersValues[2] instanceof
664
+ LambdaFunctionInstanceValue
665
+ ) {
666
+ const trueExp = guaranteeType(
667
+ potentialIfFunction.parametersValues[1],
668
+ LambdaFunctionInstanceValue,
669
+ );
670
+ const falseExp = guaranteeType(
671
+ potentialIfFunction.parametersValues[2],
672
+ LambdaFunctionInstanceValue,
673
+ );
674
+ const trueType =
675
+ trueExp.values[0]?.expressionSequence[0]?.genericType?.value
676
+ .rawType;
677
+ const falseType =
678
+ falseExp.values[0]?.expressionSequence[0]?.genericType?.value
679
+ .rawType;
680
+ const resolvedTYpe = resolveIfType(trueType, falseType);
681
+ if (resolvedTYpe) {
682
+ unknownValue.genericType = GenericTypeExplicitReference.create(
683
+ new GenericType(resolvedTYpe),
684
+ );
685
+ const variable = compiledLetFunc.parametersValues[0];
686
+ if (variable instanceof VariableExpression) {
687
+ variable.genericType = GenericTypeExplicitReference.create(
688
+ new GenericType(resolvedTYpe),
689
+ );
690
+ }
691
+ }
692
+ }
693
+ }
694
+ }
695
+ result = compiledLetFunc;
645
696
  } catch (error) {
646
697
  // let statement
647
698
  assertTrue(
@@ -676,12 +727,33 @@ export const V1_buildGenericLetFunctionExpression = (
676
727
  compileContext.extensions.plugins,
677
728
  ),
678
729
  );
679
- return V1_buildBaseSimpleFunctionExpression(
730
+ result = V1_buildBaseSimpleFunctionExpression(
680
731
  [leftSide, rightSide],
681
732
  functionName,
682
733
  compileContext,
683
734
  );
684
735
  }
736
+ // post process let var with type
737
+ if (result.parametersValues.length === 2) {
738
+ const varSide = result.parametersValues[0];
739
+ if (varSide instanceof PrimitiveInstanceValue) {
740
+ const letName = varSide.values[0];
741
+ if (
742
+ isString(letName) &&
743
+ varSide.genericType.value.rawType === PrimitiveType.STRING
744
+ ) {
745
+ const rightSide = result.parametersValues[1];
746
+ const variableExpression = new VariableExpression(
747
+ letName,
748
+ rightSide?.multiplicity ?? Multiplicity.ONE,
749
+ );
750
+ variableExpression.genericType = rightSide?.genericType;
751
+ processingContext.addInferredVariables(letName, variableExpression);
752
+ openVariables.push(letName);
753
+ }
754
+ }
755
+ }
756
+ return result;
685
757
  };
686
758
  /**
687
759
  * This is fairly similar to how engine does function matching in a way.
@@ -712,7 +784,7 @@ export function V1_buildFunctionExpression(
712
784
  }
713
785
  if (matchFunctionName(functionName, Object.values(SUPPORTED_FUNCTIONS))) {
714
786
  if (matchFunctionName(functionName, SUPPORTED_FUNCTIONS.LET)) {
715
- return V1_buildGenericLetFunctionExpression(
787
+ return V1_buildLetFunctionExpression(
716
788
  functionName,
717
789
  parameters,
718
790
  openVariables,