@creatio/base 0.823.0 → 0.831.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 (55) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/esm2022/lib/public/enums/aggregation-type.enum.mjs +10 -2
  3. package/esm2022/lib/public/enums/data-value-type.enum.mjs +51 -2
  4. package/esm2022/lib/public/esq/data-model/columns/base-query-column.mjs +15 -1
  5. package/esm2022/lib/public/esq/data-model/columns/entity-column/entity-query-column.mjs +2 -1
  6. package/esm2022/lib/public/esq/data-model/columns/functions/aggregation-function-column.mjs +2 -2
  7. package/esm2022/lib/public/esq/data-model/columns/functions/date-part-function-column.mjs +3 -1
  8. package/esm2022/lib/public/esq/data-model/enums/aggregation-eval-type.enum.mjs +5 -2
  9. package/esm2022/lib/public/esq/data-model/enums/arithmetic-operation.enum.mjs +5 -2
  10. package/esm2022/lib/public/esq/data-model/enums/comparison-type.enum.mjs +12 -2
  11. package/esm2022/lib/public/esq/data-model/enums/date-part-type.enum.mjs +11 -2
  12. package/esm2022/lib/public/esq/data-model/enums/expression-type.enum.mjs +5 -1
  13. package/esm2022/lib/public/esq/data-model/enums/filter-type.enum.mjs +9 -1
  14. package/esm2022/lib/public/esq/data-model/enums/function-type.enum.mjs +8 -2
  15. package/esm2022/lib/public/esq/data-model/enums/logical-operator-type.enum.mjs +4 -2
  16. package/esm2022/lib/public/esq/data-model/enums/order-direction.enum.mjs +4 -2
  17. package/esm2022/lib/public/esq/data-model/enums/query-macros-type.enum.mjs +31 -2
  18. package/esm2022/lib/public/esq/data-model/expressions/arithmetic/arithmetic-expression.mjs +2 -1
  19. package/esm2022/lib/public/esq/data-model/expressions/base-expression.mjs +3 -1
  20. package/esm2022/lib/public/esq/data-model/expressions/columns/column-expression.mjs +2 -1
  21. package/esm2022/lib/public/esq/data-model/expressions/esq-expression.inteface.mjs +2 -0
  22. package/esm2022/lib/public/esq/data-model/expressions/functions/aggregation-function-expression.mjs +2 -1
  23. package/esm2022/lib/public/esq/data-model/expressions/functions/argument-function-expression.mjs +2 -1
  24. package/esm2022/lib/public/esq/data-model/expressions/functions/date-part-function-expression.mjs +2 -1
  25. package/esm2022/lib/public/esq/data-model/expressions/functions/function-expression.mjs +4 -1
  26. package/esm2022/lib/public/esq/data-model/expressions/functions/length-function-expression.mjs +2 -1
  27. package/esm2022/lib/public/esq/data-model/expressions/functions/macros-function-expression.mjs +3 -1
  28. package/esm2022/lib/public/esq/data-model/expressions/functions/window-function-expression.mjs +2 -1
  29. package/esm2022/lib/public/esq/data-model/expressions/parameters/parameter-expression.mjs +3 -1
  30. package/esm2022/lib/public/esq/data-model/filters/base-filter.mjs +8 -3
  31. package/esm2022/lib/public/esq/data-model/filters/between-filter.mjs +9 -1
  32. package/esm2022/lib/public/esq/data-model/filters/compare-filter.mjs +9 -2
  33. package/esm2022/lib/public/esq/data-model/filters/esq-filter.interface.mjs +2 -0
  34. package/esm2022/lib/public/esq/data-model/filters/exists-filter.mjs +7 -1
  35. package/esm2022/lib/public/esq/data-model/filters/filter-group.mjs +12 -2
  36. package/esm2022/lib/public/esq/data-model/filters/in-filter.mjs +9 -2
  37. package/esm2022/lib/public/esq/data-model/filters/index.mjs +2 -1
  38. package/esm2022/lib/public/esq/data-model/filters/isnull-filter.mjs +9 -3
  39. package/esm2022/lib/public/esq/data-model/filters/single-filter.mjs +2 -1
  40. package/esm2022/lib/public/esq/data-model/queries/base-query.mjs +24 -6
  41. package/esm2022/lib/public/esq/data-model/queries/delete-query.mjs +5 -2
  42. package/esm2022/lib/public/esq/data-model/queries/entity-schema-query.mjs +5 -3
  43. package/esm2022/lib/public/esq/data-model/queries/insert-query.mjs +5 -8
  44. package/esm2022/lib/public/esq/data-model/queries/update-query.mjs +5 -10
  45. package/esm2022/lib/public/models/lookup-value.model.mjs +1 -1
  46. package/esm2022/lib/public/services/model/data-schema-attribute-value-masking-settings.mjs +2 -0
  47. package/esm2022/lib/public/services/model/data-schema-attribute.mjs +1 -1
  48. package/esm2022/lib/public/services/model/index.mjs +7 -6
  49. package/esm2022/lib/public/types/entity-column-value.mjs +1 -1
  50. package/esm2022/lib/public/types/guid.type.mjs +1 -1
  51. package/esm2022/lib/public/types/json-data.type.mjs +1 -1
  52. package/fesm2022/creatio-base.mjs +270 -42
  53. package/fesm2022/creatio-base.mjs.map +1 -1
  54. package/index.d.ts +389 -50
  55. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { classToPlain, Exclude, Expose } from 'class-transformer';
1
+ import { classToPlain, Exclude, Expose, instanceToPlain } from 'class-transformer';
2
2
  import { __decorate, __metadata } from 'tslib';
3
3
  import { isFunction } from 'lodash';
4
4
 
@@ -123,6 +123,53 @@ var ɵPlatformAPIs;
123
123
 
124
124
  /**
125
125
  * @public
126
+ * @generativeApi
127
+ * @description possible BE valur types. Try to keep it same as {@link ɵEntityColumnValue}.
128
+ * 0 - Global unique identifier.
129
+ * 1 - String.
130
+ * 4 - Integer.
131
+ * 5 - Real number.
132
+ * 6 - Currency.
133
+ * 7 - Date and time.
134
+ * 8 - Date.
135
+ * 9 - Time.
136
+ * 10 - Lookup.
137
+ * 11 - Enumeration.
138
+ * 12 - Boolean.
139
+ * 13 - Binary data object.
140
+ * 14 - The object of image binary data.
141
+ * 15 - Custom object.
142
+ * 16 - Image from a lookup.
143
+ * 17 - Collection of items.
144
+ * 18 - Color.
145
+ * 19 - Localized string.
146
+ * 20 - Object (Entity).
147
+ * 21 - Collection of objects (EntityCollection).
148
+ * 22 - List of object column values (EntityColumnMappingCollection).
149
+ * 23 - Hash string.
150
+ * 24 - Encrypted string.
151
+ * 25 - File.
152
+ * 26 - Mapping.
153
+ * 27 - Short length text.
154
+ * 28 - Medium length text.
155
+ * 29 - Unlimited length text.
156
+ * 30 - Long length text.
157
+ * 31 - float1.
158
+ * 32 - float2.
159
+ * 33 - float3.
160
+ * 34 - float4.
161
+ * 35 - Localizable parameter values list.
162
+ * 36 - Process not localizable text.
163
+ * 37 - Stage indicator.
164
+ * 38 - Serializable list of values.
165
+ * 39 - Serializable list of composite values.
166
+ * 40 - float8.
167
+ * 41 - File.
168
+ * 42 - Phone.
169
+ * 43 - Text with formating tags.
170
+ * 44 - Web link.
171
+ * 45 - Email.
172
+ * 46 - Composite object.
126
173
  * Types of values.
127
174
  */
128
175
  var ɵDataValueType;
@@ -148,7 +195,9 @@ var ɵDataValueType;
148
195
  */
149
196
  ɵDataValueType[ɵDataValueType["Money"] = 6] = "Money";
150
197
  /**
151
- * @description Date and time.
198
+ * @description Date and time. if used this type of a value, then value should consist of two parts:
199
+ * "dateValue": "ISO 8601 date string",
200
+ * "value": "\"ISO 8601 date string\""
152
201
  */
153
202
  ɵDataValueType[ɵDataValueType["DateTime"] = 7] = "DateTime";
154
203
  /**
@@ -293,7 +342,15 @@ var ɵDataValueType;
293
342
 
294
343
  /**
295
344
  * @public
296
- * The type of the aggregation (can be set to None).
345
+ * @generativeApi
346
+ * @description The type of aggregation function used in queries and data operations.
347
+ * 0 - None (No aggregation),
348
+ * 1 - Count (Count records - can be used with any column type),
349
+ * 2 - Sum (Total of values - numeric columns only),
350
+ * 3 - Avg (Average value - numeric columns only),
351
+ * 4 - Min (Minimum value - numeric and date columns),
352
+ * 5 - Max (Maximum value - numeric and date columns),
353
+ * 6 - TopOne (First record - any column type)
297
354
  */
298
355
  var ɵAggregationType;
299
356
  (function (ɵAggregationType) {
@@ -469,7 +526,10 @@ var eAdminUnitRoleSources;
469
526
 
470
527
  /**
471
528
  * @public
472
- * @description Scope of the aggregation function.
529
+ * @generativeApi
530
+ * @description Defines the scope or evaluation mode for aggregation functions.
531
+ * 0 - None (No specific scope defined), 1 - All (Includes all values including duplicates),
532
+ * 2 - Distinct (Only unique values, eliminates duplicates)
473
533
  */
474
534
  var ɵAggregationEvalType;
475
535
  (function (ɵAggregationEvalType) {
@@ -489,7 +549,10 @@ var ɵAggregationEvalType;
489
549
 
490
550
  /**
491
551
  * @public
492
- * @description Arithmetic operation.
552
+ * @generativeApi
553
+ * @description Represents arithmetic operations that can be performed in queries and expressions.
554
+ * 0 - Addition (Adds values), 1 - Subtraction (Subtracts values),
555
+ * 2 - Multiplication (Multiplies values), 3 - Division (Divides values)
493
556
  */
494
557
  var ɵArithmeticOperation;
495
558
  (function (ɵArithmeticOperation) {
@@ -513,7 +576,16 @@ var ɵArithmeticOperation;
513
576
 
514
577
  /**
515
578
  * @public
516
- * @description The type of comparison operation in the filter.
579
+ * @generativeApi
580
+ * @description The type of comparison operation used in filters and query conditions.
581
+ 1 - Is_null (Value is null), 2 - Is_not_null (Value is not null),
582
+ * 3 - Equal (Value equals), 4 - Not_equal (Value doesn't equal), 5 - Less (Value is less than),
583
+ * 6 - Less_or_equal (Value is less than or equal), 7 - Greater (Value is greater than),
584
+ * 8 - Greater_or_equal (Value is greater than or equal), 9 - Start_with (Value starts with string),
585
+ * 10 - Not_start_with (Value doesn't start with string), 11 - Contain (Value contains string),
586
+ * 12 - Not_contain (Value doesn't contain string), 13 - End_with (Value ends with string),
587
+ * 14 - Not_end_with (Value doesn't end with string), 15 - Exists (Value exists),
588
+ * 16 - Not_exists (Value doesn't exist)
517
589
  */
518
590
  /* eslint-disable @typescript-eslint/naming-convention */
519
591
  var ɵComparisonType;
@@ -521,6 +593,7 @@ var ɵComparisonType;
521
593
  /**
522
594
  * @public
523
595
  * @description Value is between two specified values.
596
+ * @hidden
524
597
  */
525
598
  ɵComparisonType[ɵComparisonType["Between"] = 0] = "Between";
526
599
  /**
@@ -607,7 +680,16 @@ var ɵComparisonType;
607
680
 
608
681
  /**
609
682
  * @public
610
- * @description Part of the date.
683
+ * @generativeApi
684
+ * @description Defines possible parts of the date.
685
+ * 0 - Empty value.
686
+ * 1 - Day.
687
+ * 2 - Week.
688
+ * 3 - Month.
689
+ * 4 - Year.
690
+ * 5 - Day of the week.
691
+ * 6 - Hour.
692
+ * 7 - Minute.
611
693
  */
612
694
  var ɵDatePartType;
613
695
  (function (ɵDatePartType) {
@@ -647,7 +729,11 @@ var ɵDatePartType;
647
729
 
648
730
  /**
649
731
  * @public
732
+ * @generativeApi
650
733
  * @description Type of expression.
734
+ * 0 - SchemaColumn (Reference to a data column), 1 - Function (Function call expression),
735
+ * 2 - Parameter (Parameter value), 3 - SubQuery (Nested query expression),
736
+ * 4 - ArithmeticOperation (Mathematical operation)
651
737
  */
652
738
  var ɵExpressionType;
653
739
  (function (ɵExpressionType) {
@@ -676,6 +762,12 @@ var ɵExpressionType;
676
762
  /**
677
763
  * @public
678
764
  * @description The type of filter.
765
+ * - 0 None, No filter applied.
766
+ * - 1 Compare, Comparison filter (e.g., equal to, greater than).
767
+ * - 2 IsNull, Checks if a value is null.
768
+ * - 4 In, Checks if a value is in a specified set of values.
769
+ * - 5 Exists, Checks if a value exists.
770
+ * - 6 FilterGroup, A group of filters combined with logical operators (AND, OR).
679
771
  */
680
772
  var ɵFilterType;
681
773
  (function (ɵFilterType) {
@@ -697,6 +789,8 @@ var ɵFilterType;
697
789
  /**
698
790
  * @public
699
791
  * @description Checks if a value is between two specified values.
792
+ * should be used with {@link ɵBetweenFilter}
793
+ * @hidden
700
794
  */
701
795
  ɵFilterType[ɵFilterType["Between"] = 3] = "Between";
702
796
  /**
@@ -718,7 +812,13 @@ var ɵFilterType;
718
812
 
719
813
  /**
720
814
  * @public
721
- * @description The type of function in the filter.
815
+ * @generativeApi
816
+ * @description The type of function in the filter, or in the aggregation function
817
+ * 0 - None (Function type not defined), 1 - Macros (Substitution by macro),
818
+ * 2 - Aggregation (Aggregating function), 3 - DatePart (Date fragment),
819
+ * 4 - Length (Size of value in bytes), 5 - Window (Window query function),
820
+ * 6 - DateAdd (Date addition), 7 - DateDiff (Date difference).
821
+ * if used in aggregation function, use 2 by default.
722
822
  */
723
823
  var ɵFunctionType;
724
824
  (function (ɵFunctionType) {
@@ -758,7 +858,9 @@ var ɵFunctionType;
758
858
 
759
859
  /**
760
860
  * @public
761
- * @description The type of logical operation.
861
+ * @generativeApi
862
+ * @description The type of logical operation used to combine multiple conditions in filters.
863
+ * 0 - And (All conditions must be true), 1 - Or (At least one condition must be true)
762
864
  */
763
865
  var ɵLogicalOperatorType;
764
866
  (function (ɵLogicalOperatorType) {
@@ -774,7 +876,9 @@ var ɵLogicalOperatorType;
774
876
 
775
877
  /**
776
878
  * @public
777
- * @description Sort order (can be set to None).
879
+ * @generativeApi
880
+ * @description Specifies the sort direction for query results.
881
+ * 0 - None (No specific ordering), 1 - Asc (Ascending order, A-Z, 0-9), 2 - Desc (Descending order, Z-A, 9-0)
778
882
  */
779
883
  var ɵOrderDirection;
780
884
  (function (ɵOrderDirection) {
@@ -794,7 +898,36 @@ var ɵOrderDirection;
794
898
 
795
899
  /**
796
900
  * @public
797
- * @description The type of macros.
901
+ * @generativeApi
902
+ * @description Defines the types of macros that can be used in queries.
903
+ * 0 - None (No macro), 1 - CurrentUser (Current user ID), 2 - CurrentUserContact (User's contact),
904
+ * 3 - Yesterday (Previous day), 4 - Today (Current day), 5 - Tomorrow (Next day),
905
+ * 6 - PreviousWeek (Last week), 7 - CurrentWeek (This week), 8 - NextWeek (Coming week),
906
+ * 9 - PreviousMonth (Last month), 10 - CurrentMonth (This month), 11 - NextMonth (Coming month)
907
+ * 12 - Previous quarter.
908
+ * 13 - Current quarter.
909
+ * 14 - Next quarter.
910
+ * 15 - Previous half of the year.
911
+ * 16 - Current half-year.
912
+ * 17 - Next half-year.
913
+ * 18 - Last year.
914
+ * 19 - This year.
915
+ * 20 - Previous hour.
916
+ * 21 - Current hour.
917
+ * 22 - Next hour.
918
+ * 23 - Next year.
919
+ * 24 - Next N Days.
920
+ * 25 - Previous N days.
921
+ * 26 - Next N hours.
922
+ * 27 - Previous N hours.
923
+ * 34 - Primary column.
924
+ * 35 - Primary displayed column.
925
+ * 36 - Primary image display column.
926
+ * 37 - Anniversary today.
927
+ * 38 - Anniversary on the date computed as today plus days offset.
928
+ * 39 - Anniversary on the next several days.
929
+ * 40 - Anniversary on the previous several days.
930
+ * 41 - Primary color display column.
798
931
  */
799
932
  var ɵQueryMacrosType;
800
933
  (function (ɵQueryMacrosType) {
@@ -946,6 +1079,7 @@ var ɵQueryMacrosType;
946
1079
 
947
1080
  /**
948
1081
  * @public
1082
+ * @generativeApi
949
1083
  * @abstract
950
1084
  * @description The base class of the expression.
951
1085
  * @extends {ɵSerializable}
@@ -976,6 +1110,7 @@ class ɵBaseExpression {
976
1110
  constructor(config) {
977
1111
  /**
978
1112
  * @description True if expression has brackets.
1113
+ * @default false
979
1114
  */
980
1115
  this.isBlock = false;
981
1116
  this.isBlock = config?.isBlock;
@@ -1013,6 +1148,7 @@ class ɵBaseExpression {
1013
1148
 
1014
1149
  /**
1015
1150
  * @public
1151
+ * @genearativeApi
1016
1152
  * @description Arithmetic expression.
1017
1153
  * @extends {ɵBaseExpression}
1018
1154
  */
@@ -1071,6 +1207,7 @@ class ɵArithmeticExpression extends ɵBaseExpression {
1071
1207
 
1072
1208
  /**
1073
1209
  * @public
1210
+ * @generativeApi
1074
1211
  * @description A class that defines an expression of type column EntitySchema.
1075
1212
  * @extends {ɵBaseExpression}
1076
1213
  */
@@ -1142,7 +1279,9 @@ class ɵBaseExpressionParser {
1142
1279
  /**
1143
1280
  * @public
1144
1281
  * @abstract
1282
+ * @generativeApi
1145
1283
  * @description A class that describes a functional expression.
1284
+ * Functional expressions are evaluated on BE to produce a value based on the function type.
1146
1285
  * @extends {ɵFunctionExpression}
1147
1286
  */
1148
1287
  class ɵFunctionExpression extends ɵBaseExpression {
@@ -1162,6 +1301,7 @@ class ɵFunctionExpression extends ɵBaseExpression {
1162
1301
  super(config);
1163
1302
  /**
1164
1303
  * @description Expression type. Default 'Function'.
1304
+ * @default 1.
1165
1305
  */
1166
1306
  this.expressionType = ɵExpressionType.Function;
1167
1307
  }
@@ -1170,6 +1310,7 @@ class ɵFunctionExpression extends ɵBaseExpression {
1170
1310
  /**
1171
1311
  * @public
1172
1312
  * @abstract
1313
+ * @generativeApi
1173
1314
  * @description A class that describes a functional expression with argument.
1174
1315
  * @extends {ɵFunctionExpression}
1175
1316
  */
@@ -1208,6 +1349,7 @@ class ɵArgumentFunctionExpression extends ɵFunctionExpression {
1208
1349
 
1209
1350
  /**
1210
1351
  * @public
1352
+ * @generativeApi
1211
1353
  * @description A class that describes expression with aggregate function.
1212
1354
  * @extends {ɵArgumentFunctionExpression}
1213
1355
  */
@@ -1256,6 +1398,7 @@ class ɵAggregationFunctionExpression extends ɵArgumentFunctionExpression {
1256
1398
 
1257
1399
  /**
1258
1400
  * @public
1401
+ * @gererativeApi
1259
1402
  * @description A class that describes expression part of date function.
1260
1403
  * @extends {ɵArgumentFunctionExpression}
1261
1404
  */
@@ -1297,6 +1440,7 @@ class ɵDatePartFunctionExpression extends ɵArgumentFunctionExpression {
1297
1440
 
1298
1441
  /**
1299
1442
  * @public
1443
+ * @generativeApi
1300
1444
  * @description A class that describes expression with length function.
1301
1445
  * @extends {ɵArgumentFunctionExpression}
1302
1446
  */
@@ -1338,6 +1482,7 @@ class ɵLengthFunctionExpression extends ɵArgumentFunctionExpression {
1338
1482
 
1339
1483
  /**
1340
1484
  * @public
1485
+ * @generativeApi
1341
1486
  * @description A class that describes expression with macros function.
1342
1487
  * @extends {ɵFunctionExpression}
1343
1488
  */
@@ -1358,6 +1503,7 @@ class ɵMacrosFunctionExpression extends ɵFunctionExpression {
1358
1503
  super(config);
1359
1504
  /**
1360
1505
  * @description Function type. Default 'Macros'.
1506
+ * @default 1
1361
1507
  */
1362
1508
  this.functionType = ɵFunctionType.Macros;
1363
1509
  this.macrosType = config?.macrosType;
@@ -1389,6 +1535,7 @@ class ɵMacrosFunctionExpression extends ɵFunctionExpression {
1389
1535
 
1390
1536
  /**
1391
1537
  * @public
1538
+ * @generativeApi
1392
1539
  * @description A class that describes expression with window function.
1393
1540
  * @extends {ɵArgumentFunctionExpression}
1394
1541
  */
@@ -1428,7 +1575,9 @@ class ɵWindowFunctionExpression extends ɵArgumentFunctionExpression {
1428
1575
 
1429
1576
  /**
1430
1577
  * @public
1578
+ * @generativeApi
1431
1579
  * @description The class that defines the parametric expression.
1580
+ * It means that result of this expression is a parameter value.
1432
1581
  * @extends {ɵBaseExpression}
1433
1582
  */
1434
1583
  class ɵParameterExpression extends ɵBaseExpression {
@@ -1537,10 +1686,13 @@ __decorate([
1537
1686
  __metadata("design:type", Number)
1538
1687
  ], ɵParameterExpression.prototype, "dataValueType", void 0);
1539
1688
 
1689
+ /* Do not enable this rule because of issue https://github.com/vega/ts-json-schema-generator/issues/1531 */
1690
+ /* eslint-disable @typescript-eslint/no-inferrable-types */
1540
1691
  /**
1541
1692
  * @public
1542
1693
  * @abstract
1543
- * @description The base class of the filter.
1694
+ * @generativeApi
1695
+ * @description Base class for all filters in the system.
1544
1696
  * @extends {ɵSerializable}
1545
1697
  */
1546
1698
  class ɵBaseFilter {
@@ -1569,10 +1721,12 @@ class ɵBaseFilter {
1569
1721
  constructor(filterType) {
1570
1722
  /**
1571
1723
  * @description Indicates that the filter is active and will be taken into account when building the query.
1724
+ * @default true
1572
1725
  */
1573
1726
  this.isEnabled = true;
1574
1727
  /**
1575
- * @description Drop the time for the date / time type parameters.
1728
+ * @description Drop the time for the date / time type parameters. In FilterGroup this option is not supported.
1729
+ * @default false
1576
1730
  */
1577
1731
  this.trimDateTimeParameterToDate = false;
1578
1732
  this.filterType = filterType;
@@ -1606,6 +1760,7 @@ class ɵBaseFilter {
1606
1760
 
1607
1761
  /**
1608
1762
  * @public
1763
+ * @generativeApi
1609
1764
  * @description Basic filter class with one condition.
1610
1765
  * @extends {ɵBaseFilter}
1611
1766
  */
@@ -1644,7 +1799,10 @@ class ɵSingleFilter extends ɵBaseFilter {
1644
1799
 
1645
1800
  /**
1646
1801
  * @public
1802
+ * generativeApi
1647
1803
  * @description Filter class of the "Between" type.
1804
+ * It contains RightLessExpression and RightGreaterExpression,
1805
+ * which represent the boundaries of values for filtering.
1648
1806
  * @extends {ɵSingleFilter}
1649
1807
  */
1650
1808
  class ɵBetweenFilter extends ɵSingleFilter {
@@ -1662,6 +1820,11 @@ class ɵBetweenFilter extends ɵSingleFilter {
1662
1820
  }
1663
1821
  constructor(leftExpression, rightLessExpression, rightGreaterExpression) {
1664
1822
  super(ɵFilterType.Between, ɵComparisonType.Between, leftExpression);
1823
+ /**
1824
+ * @description Type of filter.
1825
+ * @default 3
1826
+ * */
1827
+ this.filterType = ɵFilterType.Between;
1665
1828
  this.rightLessExpression = rightLessExpression?.clone();
1666
1829
  this.rightGreaterExpression = rightGreaterExpression?.clone();
1667
1830
  }
@@ -1700,7 +1863,9 @@ class ɵBetweenFilter extends ɵSingleFilter {
1700
1863
 
1701
1864
  /**
1702
1865
  * @public
1703
- * @description Comparison filter class.
1866
+ * @generativeApi
1867
+ * @description Filter class for comparing two expressions. leftExpression describes column from the schema,
1868
+ * by which the comparison is made, rightExpression describes the value to which the column is compared.
1704
1869
  * @extends {ɵSingleFilter}
1705
1870
  */
1706
1871
  class ɵCompareFilter extends ɵSingleFilter {
@@ -1718,6 +1883,11 @@ class ɵCompareFilter extends ɵSingleFilter {
1718
1883
  }
1719
1884
  constructor(comparisonType, leftExpression, rightExpression) {
1720
1885
  super(ɵFilterType.Compare, comparisonType, leftExpression);
1886
+ /**
1887
+ * @description Type of filter.
1888
+ * @default 1
1889
+ */
1890
+ this.filterType = ɵFilterType.Compare;
1721
1891
  this.rightExpression = rightExpression?.clone();
1722
1892
  }
1723
1893
  /**
@@ -1750,6 +1920,7 @@ class ɵCompareFilter extends ɵSingleFilter {
1750
1920
 
1751
1921
  /**
1752
1922
  * @public
1923
+ * @generativeApi
1753
1924
  * @description The comparison filter class [Exists according to the specified condition].
1754
1925
  * @extends {ɵSingleFilter}
1755
1926
  */
@@ -1768,6 +1939,11 @@ class ɵExistsFilter extends ɵSingleFilter {
1768
1939
  }
1769
1940
  constructor(leftExpression, subFilters, comparisonType = ɵComparisonType.Exists, isAggregative = true) {
1770
1941
  super(ɵFilterType.Exists, comparisonType, leftExpression);
1942
+ /**
1943
+ * @description Type of filter.
1944
+ * @default 5
1945
+ */
1946
+ this.filterType = ɵFilterType.Exists;
1771
1947
  this.subFilters = subFilters?.clone();
1772
1948
  this.isAggregative = isAggregative;
1773
1949
  }
@@ -1812,7 +1988,9 @@ class ɵExistsFilter extends ɵSingleFilter {
1812
1988
 
1813
1989
  /**
1814
1990
  * @public
1815
- * @description In-Filter Class
1991
+ * @generativeApi
1992
+ * @description Filter that checks if the value of {@link #leftExpression} is satisfied
1993
+ * by each of expressions in the array of {@link #rightExpressions}.
1816
1994
  * @extends {ɵSingleFilter}
1817
1995
  */
1818
1996
  class ɵInFilter extends ɵSingleFilter {
@@ -1830,6 +2008,11 @@ class ɵInFilter extends ɵSingleFilter {
1830
2008
  }
1831
2009
  constructor(comparisonType, leftExpression, rightExpressions) {
1832
2010
  super(ɵFilterType.In, comparisonType, leftExpression);
2011
+ /**
2012
+ * @description Type of filter. 4 means filter of type "In".
2013
+ * @default 4
2014
+ */
2015
+ this.filterType = ɵFilterType.In;
1833
2016
  this.rightExpressions = rightExpressions.map((expression) => expression?.clone()) ?? [];
1834
2017
  }
1835
2018
  /**
@@ -1867,7 +2050,8 @@ class ɵInFilter extends ɵSingleFilter {
1867
2050
 
1868
2051
  /**
1869
2052
  * @public
1870
- * @description IsNull filter Class
2053
+ * @generativeApi
2054
+ * @description Filter that checks if the value of {@link #leftExpression} equals to null or not.
1871
2055
  * @extends {ɵSingleFilter}
1872
2056
  */
1873
2057
  class ɵIsNullFilter extends ɵSingleFilter {
@@ -1877,7 +2061,7 @@ class ɵIsNullFilter extends ɵSingleFilter {
1877
2061
  */
1878
2062
  static { this._instanceOfKey = 'devkit_IsNullFilter'; }
1879
2063
  /**
1880
- * @internal
2064
+ * @internale
1881
2065
  * @dontChange
1882
2066
  */
1883
2067
  static get _instanceOfKeys() {
@@ -1888,6 +2072,11 @@ class ɵIsNullFilter extends ɵSingleFilter {
1888
2072
  console.warn(`Invalid comparison type: ${ɵComparisonType[comparisonType]} in IsNullFilter.`);
1889
2073
  }
1890
2074
  super(ɵFilterType.IsNull, ɵIsNullFilter._getComparisonType(comparisonType), leftExpression);
2075
+ /**
2076
+ * @description Type of filter.
2077
+ * @default 2
2078
+ */
2079
+ this.filterType = ɵFilterType.IsNull;
1891
2080
  /**
1892
2081
  * @description Flag that indicates if expression is empty or not.
1893
2082
  */
@@ -2097,7 +2286,10 @@ class ɵFilterGroup extends ɵBaseFilter {
2097
2286
  }
2098
2287
  /**
2099
2288
  * @public
2100
- * @description Return collecion of deserialized filters.
2289
+ * @description Returns collection of child filters or filter groups.
2290
+ * Each item is a key-value pair,
2291
+ * where the key is autogenerated or user-defined name, and value - filter or a filter group
2292
+ * @default {}
2101
2293
  */
2102
2294
  get items() {
2103
2295
  const result = {};
@@ -2108,8 +2300,14 @@ class ɵFilterGroup extends ɵBaseFilter {
2108
2300
  }
2109
2301
  constructor(logicalOperation = ɵLogicalOperatorType.And, rootSchemaName) {
2110
2302
  super(ɵFilterType.FilterGroup);
2303
+ /**
2304
+ * @description Type of filter.
2305
+ * @default 6
2306
+ */
2307
+ this.filterType = ɵFilterType.FilterGroup;
2111
2308
  /**
2112
2309
  * @public
2310
+ * @hidden
2113
2311
  * @description Collection of child filters.
2114
2312
  */
2115
2313
  this.filters = new Map();
@@ -2639,9 +2837,12 @@ function ɵgetFilterPlainObj(filterPlainObj) {
2639
2837
  };
2640
2838
  }
2641
2839
 
2840
+ /* Do not enable this rule because of issue https://github.com/vega/ts-json-schema-generator/issues/1531 */
2841
+ /* eslint-disable @typescript-eslint/no-inferrable-types */
2642
2842
  /**
2643
2843
  * @public
2644
2844
  * @abstract
2845
+ * @generativeApi
2645
2846
  * @classdesc Class contains info about column for query.
2646
2847
  */
2647
2848
  class ɵBaseQueryColumn {
@@ -2700,6 +2901,16 @@ class ɵBaseQueryColumn {
2700
2901
  _getUsedColumns() {
2701
2902
  return this.expression._getUsedColumns();
2702
2903
  }
2904
+ /**
2905
+ * @internal
2906
+ * @description Converts instance to json object.
2907
+ */
2908
+ toJson() {
2909
+ return instanceToPlain(this, {
2910
+ exposeUnsetFields: false,
2911
+ excludePrefixes: ['_'],
2912
+ });
2913
+ }
2703
2914
  }
2704
2915
 
2705
2916
  /**
@@ -2716,6 +2927,7 @@ class ɵArithmeticQueryColumn extends ɵBaseQueryColumn {
2716
2927
 
2717
2928
  /**
2718
2929
  * @public
2930
+ * @generativeApi
2719
2931
  * @classdesc Class contains info about common column from entity.
2720
2932
  * @extends {ɵBaseQueryColumn}
2721
2933
  */
@@ -2770,7 +2982,7 @@ class ɵSubQueryColumn extends ɵBaseQueryColumn {
2770
2982
 
2771
2983
  /**
2772
2984
  * @public
2773
- * @classdesc Class contains info about column with aggregation function.
2985
+ * @description Class contains info about column with aggregation function.
2774
2986
  * @extends {ɵBaseQueryColumn}
2775
2987
  */
2776
2988
  class ɵAggregationFunctionColumn extends ɵBaseQueryColumn {
@@ -2786,7 +2998,9 @@ class ɵAggregationFunctionColumn extends ɵBaseQueryColumn {
2786
2998
 
2787
2999
  /**
2788
3000
  * @public
3001
+ * @generativeApi
2789
3002
  * @classdesc Class contains info about column with date part.
3003
+ * @description Class contains info about column with date part.
2790
3004
  * @extends {ɵBaseQueryColumn}
2791
3005
  */
2792
3006
  class ɵDatePartFunctionColumn extends ɵBaseQueryColumn {
@@ -2866,20 +3080,37 @@ function ɵgetColumnPlainObj(expressionPlainObj) {
2866
3080
  * @description The base class of the data request. Implements {@link ɵMetadataProvider}
2867
3081
  */
2868
3082
  class ɵBaseQuery {
2869
- // region Constructors: Protected
3083
+ get queryDtoType() {
3084
+ return this._queryDtoType;
3085
+ }
2870
3086
  constructor(operationType, rootSchemaName) {
2871
3087
  this.operationType = operationType;
2872
3088
  this.rootSchemaName = rootSchemaName;
2873
3089
  ɵValidationUtilities.checkArgumentEmpty('_operationType', operationType);
2874
3090
  ɵValidationUtilities.checkArgumentEmpty('_rootSchemaName', rootSchemaName);
2875
3091
  }
2876
- // endregion
2877
- // region Methods: Public
2878
3092
  /** {@inheritDoc ɵMetadataProvider.getMetadata} */
2879
3093
  getMetadata() {
2880
- return classToPlain(this, { exposeUnsetFields: false, excludePrefixes: ['_'] });
3094
+ return instanceToPlain(this, { exposeUnsetFields: false, excludePrefixes: ['_'] });
2881
3095
  }
2882
3096
  }
3097
+ __decorate([
3098
+ Exclude()
3099
+ /**
3100
+ * @internal
3101
+ */
3102
+ ,
3103
+ __metadata("design:type", String)
3104
+ ], ɵBaseQuery.prototype, "_queryDtoType", void 0);
3105
+ __decorate([
3106
+ Expose({ name: '__type' })
3107
+ /**
3108
+ * @internal
3109
+ */
3110
+ ,
3111
+ __metadata("design:type", String),
3112
+ __metadata("design:paramtypes", [])
3113
+ ], ɵBaseQuery.prototype, "queryDtoType", null);
2883
3114
 
2884
3115
  /**
2885
3116
  * @public
@@ -2960,9 +3191,12 @@ var ɵQueryOperationType;
2960
3191
  * @extends {ɵBaseFilterableQuery}
2961
3192
  */
2962
3193
  class ɵDeleteQuery extends ɵBaseFilterableQuery {
2963
- // region Constructors: Public
2964
3194
  constructor(rootSchemaName) {
2965
3195
  super(ɵQueryOperationType.Delete, rootSchemaName);
3196
+ /**
3197
+ * @internal
3198
+ */
3199
+ this._queryDtoType = 'Terrasoft.Nui.ServiceModel.DataContract.DeleteQuery';
2966
3200
  }
2967
3201
  }
2968
3202
 
@@ -2975,6 +3209,10 @@ class ɵEntitySchemaQuery extends ɵBaseFilterableQuery {
2975
3209
  constructor(rootSchemaName) {
2976
3210
  super(ɵQueryOperationType.Select, rootSchemaName);
2977
3211
  this._columns = new Map();
3212
+ /**
3213
+ * @internal
3214
+ */
3215
+ this._queryDtoType = 'Terrasoft.Nui.ServiceModel.DataContract.SelectQuery';
2978
3216
  /**
2979
3217
  * @description Determines if merge duplicates in query result.
2980
3218
  */
@@ -3002,8 +3240,6 @@ class ɵEntitySchemaQuery extends ɵBaseFilterableQuery {
3002
3240
  this._columns.set(key, column);
3003
3241
  }
3004
3242
  }
3005
- // endregion
3006
- // region Methods: Public
3007
3243
  /**
3008
3244
  * @public
3009
3245
  * @description Returns column instance by column alias.
@@ -3206,15 +3442,14 @@ class ɵEntitySchemaQuery extends ɵBaseFilterableQuery {
3206
3442
  * @description Request to insert data.
3207
3443
  */
3208
3444
  class ɵInsertQuery extends ɵBaseQuery {
3209
- // endregion
3210
- // region Constructors: Public
3211
3445
  constructor(rootSchemaName) {
3212
3446
  super(ɵQueryOperationType.Insert, rootSchemaName);
3213
- // region Fields: Private
3214
3447
  this._columnValues = new Map();
3448
+ /**
3449
+ * @internal
3450
+ */
3451
+ this._queryDtoType = 'Terrasoft.Nui.ServiceModel.DataContract.InsertQuery';
3215
3452
  }
3216
- // endregion
3217
- // region Properties: Public
3218
3453
  /**
3219
3454
  * @description A collection of column values for updating entities.
3220
3455
  */
@@ -3223,8 +3458,6 @@ class ɵInsertQuery extends ɵBaseQuery {
3223
3458
  items: classToPlain(this._columnValues),
3224
3459
  };
3225
3460
  }
3226
- // endregion
3227
- // region Methods: Public
3228
3461
  /**
3229
3462
  * @public
3230
3463
  * @description Adds the value parameter. An instance of the value-parameter is created and
@@ -3250,21 +3483,18 @@ __decorate([
3250
3483
  * @extends {ɵBaseFilterableQuery}
3251
3484
  */
3252
3485
  class ɵUpdateQuery extends ɵBaseFilterableQuery {
3253
- // endregion
3254
- // region Constructors: Public
3255
3486
  constructor(rootSchemaName) {
3256
3487
  super(ɵQueryOperationType.Update, rootSchemaName);
3257
- // region Fields: Private
3258
3488
  this._columnValues = new Map();
3259
- // endregion
3260
- // region Fields: Public
3489
+ /**
3490
+ * @internal
3491
+ */
3492
+ this._queryDtoType = 'Terrasoft.Nui.ServiceModel.DataContract.UpdateQuery';
3261
3493
  /**
3262
3494
  * @description Flag that indicates whether to force save data.
3263
3495
  */
3264
3496
  this.isForceUpdate = false;
3265
3497
  }
3266
- // endregion
3267
- // region Properties: Public
3268
3498
  /**
3269
3499
  * @description A collection of column values for updating entities.
3270
3500
  */
@@ -3273,8 +3503,6 @@ class ɵUpdateQuery extends ɵBaseFilterableQuery {
3273
3503
  items: classToPlain(this._columnValues),
3274
3504
  };
3275
3505
  }
3276
- // endregion
3277
- // region Methods: Public
3278
3506
  /**
3279
3507
  * @public
3280
3508
  * @description Adds the value parameter. An instance of the value-parameter is created and