@creatio/base 0.815.0 → 0.820.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.
Files changed (213) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/esm2022/lib/external/utils/date-utils.mjs +51 -0
  3. package/esm2022/lib/internal/enums/platform-apis.enum.mjs +16 -0
  4. package/esm2022/lib/internal/models/compatible-apis.model.mjs +2 -0
  5. package/esm2022/lib/internal/models/filtration-platform-api-options.model.mjs +2 -0
  6. package/esm2022/lib/internal/models/index.mjs +5 -0
  7. package/esm2022/lib/internal/models/platform-api-options.model.mjs +2 -0
  8. package/esm2022/lib/public/enums/message-channel-type.enum.mjs +24 -0
  9. package/esm2022/lib/public/esq/data-model/expressions/arithmetic/arithmetic-expression.mjs +60 -0
  10. package/esm2022/lib/public/esq/data-model/expressions/base-expression.mjs +68 -0
  11. package/esm2022/lib/public/esq/data-model/expressions/columns/column-expression.mjs +55 -0
  12. package/esm2022/lib/public/esq/data-model/expressions/functions/aggregation-function-expression.mjs +50 -0
  13. package/esm2022/lib/public/esq/data-model/expressions/functions/argument-function-expression.mjs +40 -0
  14. package/esm2022/lib/public/esq/data-model/expressions/functions/date-part-function-expression.mjs +43 -0
  15. package/esm2022/lib/public/esq/data-model/expressions/functions/function-expression.mjs +30 -0
  16. package/esm2022/lib/public/esq/data-model/expressions/functions/length-function-expression.mjs +43 -0
  17. package/esm2022/lib/public/esq/data-model/expressions/functions/macros-function-expression.mjs +53 -0
  18. package/esm2022/lib/public/esq/data-model/expressions/functions/window-function-expression.mjs +41 -0
  19. package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/mocks/expression.mock.mjs +7 -7
  20. package/esm2022/lib/public/esq/data-model/expressions/parameters/parameter-expression.mjs +117 -0
  21. package/esm2022/lib/public/esq/data-model/expressions/sub-queries/aggregation-sub-query-expression.mjs +43 -0
  22. package/esm2022/lib/public/esq/data-model/expressions/sub-queries/sub-query-expression.mjs +82 -0
  23. package/esm2022/lib/public/esq/data-model/filters/base-filter.mjs +68 -0
  24. package/esm2022/lib/public/esq/data-model/filters/between-filter.mjs +58 -0
  25. package/esm2022/lib/public/esq/data-model/filters/compare-filter.mjs +52 -0
  26. package/esm2022/lib/public/esq/data-model/filters/exists-filter.mjs +64 -0
  27. package/esm2022/lib/public/esq/data-model/filters/filter-group.mjs +247 -0
  28. package/esm2022/lib/public/esq/data-model/filters/in-filter.mjs +57 -0
  29. package/esm2022/lib/public/esq/data-model/filters/isnull-filter.mjs +52 -0
  30. package/esm2022/lib/public/esq/data-model/filters/mocks/filter.mock.mjs +34 -0
  31. package/esm2022/lib/public/esq/data-model/filters/single-filter.mjs +39 -0
  32. package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/base-filterable-query.mjs +1 -1
  33. package/esm2022/lib/public/esq/data-model/queries/entity-schema-query.mjs +242 -0
  34. package/esm2022/lib/public/exceptions/validation-utilities.mjs +66 -0
  35. package/{esm2020 → esm2022}/lib/public/models/index.mjs +2 -1
  36. package/esm2022/lib/public/models/message-channel-event.mjs +3 -0
  37. package/esm2022/lib/public/models/request/request-registration-config.model.mjs +2 -0
  38. package/esm2022/lib/public/models/subscription.mjs +39 -0
  39. package/{esm2020 → esm2022}/lib/public/services/index.mjs +2 -1
  40. package/esm2022/lib/public/services/message-channel/base-message-channel.service.mjs +3 -0
  41. package/esm2022/lib/public/services/message-channel/index.mjs +2 -0
  42. package/esm2022/lib/public/types/guid.type.mjs +53 -0
  43. package/{fesm2020 → fesm2022}/creatio-base.mjs +202 -120
  44. package/fesm2022/creatio-base.mjs.map +1 -0
  45. package/index.d.ts +130 -11
  46. package/package.json +7 -16
  47. package/esm2020/lib/external/utils/date-utils.mjs +0 -29
  48. package/esm2020/lib/internal/enums/platform-apis.enum.mjs +0 -12
  49. package/esm2020/lib/internal/models/index.mjs +0 -2
  50. package/esm2020/lib/public/enums/message-channel-type.enum.mjs +0 -11
  51. package/esm2020/lib/public/esq/data-model/expressions/arithmetic/arithmetic-expression.mjs +0 -60
  52. package/esm2020/lib/public/esq/data-model/expressions/base-expression.mjs +0 -68
  53. package/esm2020/lib/public/esq/data-model/expressions/columns/column-expression.mjs +0 -55
  54. package/esm2020/lib/public/esq/data-model/expressions/functions/aggregation-function-expression.mjs +0 -50
  55. package/esm2020/lib/public/esq/data-model/expressions/functions/argument-function-expression.mjs +0 -40
  56. package/esm2020/lib/public/esq/data-model/expressions/functions/date-part-function-expression.mjs +0 -43
  57. package/esm2020/lib/public/esq/data-model/expressions/functions/function-expression.mjs +0 -30
  58. package/esm2020/lib/public/esq/data-model/expressions/functions/length-function-expression.mjs +0 -43
  59. package/esm2020/lib/public/esq/data-model/expressions/functions/macros-function-expression.mjs +0 -53
  60. package/esm2020/lib/public/esq/data-model/expressions/functions/window-function-expression.mjs +0 -41
  61. package/esm2020/lib/public/esq/data-model/expressions/parameters/parameter-expression.mjs +0 -117
  62. package/esm2020/lib/public/esq/data-model/expressions/sub-queries/aggregation-sub-query-expression.mjs +0 -43
  63. package/esm2020/lib/public/esq/data-model/expressions/sub-queries/sub-query-expression.mjs +0 -82
  64. package/esm2020/lib/public/esq/data-model/filters/base-filter.mjs +0 -68
  65. package/esm2020/lib/public/esq/data-model/filters/between-filter.mjs +0 -58
  66. package/esm2020/lib/public/esq/data-model/filters/compare-filter.mjs +0 -52
  67. package/esm2020/lib/public/esq/data-model/filters/exists-filter.mjs +0 -64
  68. package/esm2020/lib/public/esq/data-model/filters/filter-group.mjs +0 -247
  69. package/esm2020/lib/public/esq/data-model/filters/in-filter.mjs +0 -57
  70. package/esm2020/lib/public/esq/data-model/filters/isnull-filter.mjs +0 -52
  71. package/esm2020/lib/public/esq/data-model/filters/mocks/filter.mock.mjs +0 -34
  72. package/esm2020/lib/public/esq/data-model/filters/single-filter.mjs +0 -39
  73. package/esm2020/lib/public/esq/data-model/queries/entity-schema-query.mjs +0 -242
  74. package/esm2020/lib/public/exceptions/validation-utilities.mjs +0 -66
  75. package/esm2020/lib/public/models/message-channel-event.mjs +0 -2
  76. package/esm2020/lib/public/models/request/request-registration-config.model.mjs +0 -2
  77. package/esm2020/lib/public/types/guid.type.mjs +0 -53
  78. package/fesm2015/creatio-base.mjs +0 -3313
  79. package/fesm2015/creatio-base.mjs.map +0 -1
  80. package/fesm2020/creatio-base.mjs.map +0 -1
  81. /package/{esm2020 → esm2022}/creatio-base.mjs +0 -0
  82. /package/{esm2020 → esm2022}/index.mjs +0 -0
  83. /package/{esm2020 → esm2022}/lib/external/utils/index.mjs +0 -0
  84. /package/{esm2020 → esm2022}/lib/index.mjs +0 -0
  85. /package/{esm2020 → esm2022}/lib/internal/enums/data-schema-attribute-type.enum.mjs +0 -0
  86. /package/{esm2020 → esm2022}/lib/internal/enums/data-source-scope.enum.mjs +0 -0
  87. /package/{esm2020 → esm2022}/lib/internal/enums/default-value-source.enum.mjs +0 -0
  88. /package/{esm2020 → esm2022}/lib/internal/enums/index.mjs +0 -0
  89. /package/{esm2020 → esm2022}/lib/internal/enums/lookup-mode.mjs +0 -0
  90. /package/{esm2020 → esm2022}/lib/internal/model/data-schema/data-schema-attribute-aggregation-config.model.mjs +0 -0
  91. /package/{esm2020 → esm2022}/lib/internal/model/data-schema/data-schema-attribute-function-config.model.mjs +0 -0
  92. /package/{esm2020 → esm2022}/lib/internal/model/data-schema/data-schema-validator-config.model.mjs +0 -0
  93. /package/{esm2020 → esm2022}/lib/internal/model/data-schema/index.mjs +0 -0
  94. /package/{esm2020 → esm2022}/lib/internal/model/data-source-config.mjs +0 -0
  95. /package/{esm2020 → esm2022}/lib/internal/model/index.mjs +0 -0
  96. /package/{esm2020 → esm2022}/lib/internal/models/default-value-schema.mjs +0 -0
  97. /package/{esm2020 → esm2022}/lib/public/enums/aggregation-function.enum.mjs +0 -0
  98. /package/{esm2020 → esm2022}/lib/public/enums/aggregation-type.enum.mjs +0 -0
  99. /package/{esm2020 → esm2022}/lib/public/enums/data-schema-type.enum.mjs +0 -0
  100. /package/{esm2020 → esm2022}/lib/public/enums/data-value-type.enum.mjs +0 -0
  101. /package/{esm2020 → esm2022}/lib/public/enums/index.mjs +0 -0
  102. /package/{esm2020 → esm2022}/lib/public/enums/model-in-page-action.enum.mjs +0 -0
  103. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/arithmetic/arithmetic-query-column.mjs +0 -0
  104. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/base-query-column.mjs +0 -0
  105. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/entity-column/entity-query-column.mjs +0 -0
  106. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/functions/aggregation-function-column.mjs +0 -0
  107. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/functions/date-part-function-column.mjs +0 -0
  108. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/functions/length-function-column.mjs +0 -0
  109. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/functions/macros-function-column.mjs +0 -0
  110. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/functions/window-function-column.mjs +0 -0
  111. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/index.mjs +0 -0
  112. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/parameters/parameter-query-column.mjs +0 -0
  113. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/query-column-test-utils.mjs +0 -0
  114. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/sub-queries/aggregation-sub-query-column.mjs +0 -0
  115. /package/{esm2020 → esm2022}/lib/public/esq/data-model/columns/sub-queries/sub-query-column.mjs +0 -0
  116. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/admin-unit-role-sources.enum.mjs +0 -0
  117. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/aggregation-eval-type.enum.mjs +0 -0
  118. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/arithmetic-operation.enum.mjs +0 -0
  119. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/comparison-type.enum.mjs +0 -0
  120. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/date-part-type.enum.mjs +0 -0
  121. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/expression-type.enum.mjs +0 -0
  122. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/filter-type.enum.mjs +0 -0
  123. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/function-type.enum.mjs +0 -0
  124. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/index.mjs +0 -0
  125. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/logical-operator-type.enum.mjs +0 -0
  126. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/order-direction.enum.mjs +0 -0
  127. /package/{esm2020 → esm2022}/lib/public/esq/data-model/enums/query-macros-type.enum.mjs +0 -0
  128. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/arithmetic/index.mjs +0 -0
  129. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/columns/index.mjs +0 -0
  130. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/expression-parser/base-expression-parser.mjs +0 -0
  131. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/expression-parser/expression-parser.mjs +0 -0
  132. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/expression-parser/expression-resolver.mjs +0 -0
  133. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/expression-parser/index.mjs +0 -0
  134. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/functions/index.mjs +0 -0
  135. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/index.mjs +0 -0
  136. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/mocks/index.mjs +0 -0
  137. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/parameters/index.mjs +0 -0
  138. /package/{esm2020 → esm2022}/lib/public/esq/data-model/expressions/sub-queries/index.mjs +0 -0
  139. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/filter-parser/base-filter-parser.mjs +0 -0
  140. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/filter-parser/filter-parser.mjs +0 -0
  141. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/filter-parser/filter-resolver.mjs +0 -0
  142. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/filter-parser/index.mjs +0 -0
  143. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/filter-test-utils.mjs +0 -0
  144. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/index.mjs +0 -0
  145. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/mocks/index.mjs +0 -0
  146. /package/{esm2020 → esm2022}/lib/public/esq/data-model/filters/mocks/parser.mock.mjs +0 -0
  147. /package/{esm2020 → esm2022}/lib/public/esq/data-model/index.mjs +0 -0
  148. /package/{esm2020 → esm2022}/lib/public/esq/data-model/metadata-provider/metadata-provider.mjs +0 -0
  149. /package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/base-query.mjs +0 -0
  150. /package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/delete-query.mjs +0 -0
  151. /package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/index.mjs +0 -0
  152. /package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/insert-query.mjs +0 -0
  153. /package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/query-operation-type.mjs +0 -0
  154. /package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/select-localization-query.mjs +0 -0
  155. /package/{esm2020 → esm2022}/lib/public/esq/data-model/queries/update-query.mjs +0 -0
  156. /package/{esm2020 → esm2022}/lib/public/esq/data-model/used-column.mjs +0 -0
  157. /package/{esm2020 → esm2022}/lib/public/esq/index.mjs +0 -0
  158. /package/{esm2020 → esm2022}/lib/public/exceptions/argument-empty-exception.mjs +0 -0
  159. /package/{esm2020 → esm2022}/lib/public/exceptions/argument-out-of-range-exception.mjs +0 -0
  160. /package/{esm2020 → esm2022}/lib/public/exceptions/index.mjs +0 -0
  161. /package/{esm2020 → esm2022}/lib/public/exceptions/item-not-found-exception.mjs +0 -0
  162. /package/{esm2020 → esm2022}/lib/public/exceptions/next-handler-already-specified-exception.mjs +0 -0
  163. /package/{esm2020 → esm2022}/lib/public/interfaces/index.mjs +0 -0
  164. /package/{esm2020 → esm2022}/lib/public/interfaces/serializable.mjs +0 -0
  165. /package/{esm2020 → esm2022}/lib/public/models/data-source/data-source-insert-result.model.mjs +0 -0
  166. /package/{esm2020 → esm2022}/lib/public/models/data-source/data-source-save-result.model.mjs +0 -0
  167. /package/{esm2020 → esm2022}/lib/public/models/data-source/index.mjs +0 -0
  168. /package/{esm2020 → esm2022}/lib/public/models/item-creation-config.mjs +0 -0
  169. /package/{esm2020 → esm2022}/lib/public/models/lookup-value.model.mjs +0 -0
  170. /package/{esm2020 → esm2022}/lib/public/models/model-init-config.mjs +0 -0
  171. /package/{esm2020 → esm2022}/lib/public/models/request/base-request.mjs +0 -0
  172. /package/{esm2020 → esm2022}/lib/public/models/request/index.mjs +0 -0
  173. /package/{esm2020 → esm2022}/lib/public/models/request-handler/index.mjs +0 -0
  174. /package/{esm2020 → esm2022}/lib/public/models/request-handler/request-handler.mjs +0 -0
  175. /package/{esm2020 → esm2022}/lib/public/models/view-model-collection.mjs +0 -0
  176. /package/{esm2020 → esm2022}/lib/public/models/view-model-context.mjs +0 -0
  177. /package/{esm2020 → esm2022}/lib/public/services/dialog/dialog.service.mjs +0 -0
  178. /package/{esm2020 → esm2022}/lib/public/services/dialog/index.mjs +0 -0
  179. /package/{esm2020 → esm2022}/lib/public/services/dialog/models/base-dialog-button-config.mjs +0 -0
  180. /package/{esm2020 → esm2022}/lib/public/services/dialog/models/dialog-action.mjs +0 -0
  181. /package/{esm2020 → esm2022}/lib/public/services/dialog/models/dialog-config.mjs +0 -0
  182. /package/{esm2020 → esm2022}/lib/public/services/dialog/models/index.mjs +0 -0
  183. /package/{esm2020 → esm2022}/lib/public/services/mask-service/base-mask.service.mjs +0 -0
  184. /package/{esm2020 → esm2022}/lib/public/services/mask-service/index.mjs +0 -0
  185. /package/{esm2020 → esm2022}/lib/public/services/mask-service/schema-view-mask.request.mjs +0 -0
  186. /package/{esm2020 → esm2022}/lib/public/services/model/base-model.mjs +0 -0
  187. /package/{esm2020 → esm2022}/lib/public/services/model/data-schema-attribute.mjs +0 -0
  188. /package/{esm2020 → esm2022}/lib/public/services/model/data-schema.mjs +0 -0
  189. /package/{esm2020 → esm2022}/lib/public/services/model/data-source-aggregation-config.mjs +0 -0
  190. /package/{esm2020 → esm2022}/lib/public/services/model/data-source-attribute.mjs +0 -0
  191. /package/{esm2020 → esm2022}/lib/public/services/model/data-source-can-execute-operation.mjs +0 -0
  192. /package/{esm2020 → esm2022}/lib/public/services/model/data-source-function-config.mjs +0 -0
  193. /package/{esm2020 → esm2022}/lib/public/services/model/data-source-paging-config.mjs +0 -0
  194. /package/{esm2020 → esm2022}/lib/public/services/model/data-source-parameter.mjs +0 -0
  195. /package/{esm2020 → esm2022}/lib/public/services/model/data-source-sorting-config.mjs +0 -0
  196. /package/{esm2020 → esm2022}/lib/public/services/model/index.mjs +0 -0
  197. /package/{esm2020 → esm2022}/lib/public/services/model/model-load-options.mjs +0 -0
  198. /package/{esm2020 → esm2022}/lib/public/services/sys-settings/base-sys-settings.service.mjs +0 -0
  199. /package/{esm2020 → esm2022}/lib/public/services/sys-settings/index.mjs +0 -0
  200. /package/{esm2020 → esm2022}/lib/public/types/abstract-type.mjs +0 -0
  201. /package/{esm2020 → esm2022}/lib/public/types/aggregation-eval.type.mjs +0 -0
  202. /package/{esm2020 → esm2022}/lib/public/types/button-color.type.mjs +0 -0
  203. /package/{esm2020 → esm2022}/lib/public/types/date-part.type.mjs +0 -0
  204. /package/{esm2020 → esm2022}/lib/public/types/entity-column-value.mjs +0 -0
  205. /package/{esm2020 → esm2022}/lib/public/types/function.type.mjs +0 -0
  206. /package/{esm2020 → esm2022}/lib/public/types/index.mjs +0 -0
  207. /package/{esm2020 → esm2022}/lib/public/types/json-data.type.mjs +0 -0
  208. /package/{esm2020 → esm2022}/lib/public/types/localizable-string.type.mjs +0 -0
  209. /package/{esm2020 → esm2022}/lib/public/types/localize-fn.type.mjs +0 -0
  210. /package/{esm2020 → esm2022}/lib/public/types/resolve-dependency-fn.type.mjs +0 -0
  211. /package/{esm2020 → esm2022}/lib/public/types/sort-direction.type.mjs +0 -0
  212. /package/{esm2020 → esm2022}/lib/public/types/teardown-logic.type.mjs +0 -0
  213. /package/{esm2020 → esm2022}/lib/public/types/type.mjs +0 -0
@@ -0,0 +1,64 @@
1
+ import { ɵSingleFilter } from './single-filter';
2
+ import { ɵComparisonType, ɵFilterType } from '../enums';
3
+ /**
4
+ * @public
5
+ * @description The comparison filter class [Exists according to the specified condition].
6
+ * @extends {ɵSingleFilter}
7
+ */
8
+ export class ɵExistsFilter extends ɵSingleFilter {
9
+ /**
10
+ * @internal
11
+ * @dontChange
12
+ */
13
+ static { this._instanceOfKey = 'devkit_ExistsFilter'; }
14
+ /**
15
+ * @internal
16
+ * @dontChange
17
+ */
18
+ static get _instanceOfKeys() {
19
+ return [...ɵSingleFilter._instanceOfKeys, this._instanceOfKey];
20
+ }
21
+ constructor(leftExpression, subFilters, comparisonType = ɵComparisonType.Exists, isAggregative = true) {
22
+ super(ɵFilterType.Exists, comparisonType, leftExpression);
23
+ this.subFilters = subFilters?.clone();
24
+ this.isAggregative = isAggregative;
25
+ }
26
+ /**
27
+ * Parses filter from json.
28
+ * @public
29
+ */
30
+ static fromJson(dto, filterParser, expressionParser) {
31
+ const leftExpression = expressionParser.fromJson(dto['leftExpression'], filterParser);
32
+ const subFiltersDto = dto['subFilters'];
33
+ let subFilters;
34
+ if (subFiltersDto) {
35
+ subFilters = filterParser.fromJson(dto['subFilters']);
36
+ }
37
+ return new ɵExistsFilter(leftExpression, subFilters, dto['comparisonType'], dto['isAggregative']);
38
+ }
39
+ /**
40
+ * @public
41
+ * @description Clones instance.
42
+ */
43
+ clone() {
44
+ const filter = new ɵExistsFilter(this.leftExpression, this.subFilters, this.comparisonType, this.isAggregative);
45
+ filter.isEnabled = this.isEnabled;
46
+ filter.trimDateTimeParameterToDate = this.trimDateTimeParameterToDate;
47
+ return filter;
48
+ }
49
+ /** {@inheritDoc ɵSerializable.toJson} */
50
+ toJson() {
51
+ const result = super.toJson();
52
+ if (this.subFilters) {
53
+ result['subFilters'] = this.serializeItem(this.subFilters);
54
+ }
55
+ return result;
56
+ }
57
+ /**
58
+ * @internal
59
+ */
60
+ _getUsedColumns() {
61
+ return [...super._getUsedColumns(), ...(this.subFilters?._getUsedColumns() ?? [])];
62
+ }
63
+ }
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhpc3RzLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGV2a2l0L2Jhc2Uvc3JjL2xpYi9wdWJsaWMvZXNxL2RhdGEtbW9kZWwvZmlsdGVycy9leGlzdHMtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUt4RDs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLGFBQWMsU0FBUSxhQUFhO0lBQy9DOzs7T0FHRzthQUN1QixtQkFBYyxHQUFXLHFCQUFxQixDQUFDO0lBRXpFOzs7T0FHRztJQUNPLE1BQU0sS0FBSyxlQUFlO1FBQ25DLE9BQU8sQ0FBQyxHQUFHLGFBQWEsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFZRCxZQUNDLGNBQStCLEVBQy9CLFVBQXlCLEVBQ3pCLGlCQUFrQyxlQUFlLENBQUMsTUFBTSxFQUN4RCxhQUFhLEdBQUcsSUFBSTtRQUVwQixLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDdEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxRQUFRLENBR3BCLEdBQWdCLEVBQUUsWUFBMkIsRUFBRSxnQkFBbUM7UUFDbkYsTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUMvQyxHQUFHLENBQUMsZ0JBQWdCLENBQWdCLEVBQ3BDLFlBQVksQ0FDTyxDQUFDO1FBQ3JCLE1BQU0sYUFBYSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQWdCLENBQUM7UUFDdkQsSUFBSSxVQUFVLENBQUM7UUFDZixJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ25CLFVBQVUsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQWdCLENBQWlCLENBQUM7UUFDdEYsQ0FBQztRQUNELE9BQU8sSUFBSSxhQUFhLENBQ3ZCLGNBQWMsRUFDZCxVQUFVLEVBQ1YsR0FBRyxDQUFDLGdCQUFnQixDQUFvQixFQUN4QyxHQUFHLENBQUMsZUFBZSxDQUFZLENBQy9CLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSztRQUNYLE1BQU0sTUFBTSxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNoSCxNQUFNLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbEMsTUFBTSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQztRQUN0RSxPQUFPLE1BQU0sQ0FBQztJQUNmLENBQUM7SUFFRCx5Q0FBeUM7SUFDbEMsTUFBTTtRQUNaLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM5QixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2YsQ0FBQztJQUVEOztPQUVHO0lBQ0ksZUFBZTtRQUNyQixPQUFPLENBQUMsR0FBRyxLQUFLLENBQUMsZUFBZSxFQUFFLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgybVGaWx0ZXJHcm91cCB9IGZyb20gJy4vZmlsdGVyLWdyb3VwJztcbmltcG9ydCB7IMm1QmFzZUZpbHRlclBhcnNlciB9IGZyb20gJy4vZmlsdGVyLXBhcnNlci9iYXNlLWZpbHRlci1wYXJzZXInO1xuaW1wb3J0IHsgybVTaW5nbGVGaWx0ZXIgfSBmcm9tICcuL3NpbmdsZS1maWx0ZXInO1xuaW1wb3J0IHsgybVKc29uT2JqZWN0IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgybVDb21wYXJpc29uVHlwZSwgybVGaWx0ZXJUeXBlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgybVCYXNlRXhwcmVzc2lvbiB9IGZyb20gJy4uL2V4cHJlc3Npb25zL2Jhc2UtZXhwcmVzc2lvbic7XG5pbXBvcnQgeyDJtUJhc2VFeHByZXNzaW9uUGFyc2VyIH0gZnJvbSAnLi4vZXhwcmVzc2lvbnMvZXhwcmVzc2lvbi1wYXJzZXIvYmFzZS1leHByZXNzaW9uLXBhcnNlcic7XG5pbXBvcnQgeyBVc2VkQ29sdW1uIH0gZnJvbSAnLi4vdXNlZC1jb2x1bW4nO1xuXG4vKipcbiAqIEBwdWJsaWNcbiAqIEBkZXNjcmlwdGlvbiBUaGUgY29tcGFyaXNvbiBmaWx0ZXIgY2xhc3MgW0V4aXN0cyBhY2NvcmRpbmcgdG8gdGhlIHNwZWNpZmllZCBjb25kaXRpb25dLlxuICogQGV4dGVuZHMge8m1U2luZ2xlRmlsdGVyfVxuICovXG5leHBvcnQgY2xhc3MgybVFeGlzdHNGaWx0ZXIgZXh0ZW5kcyDJtVNpbmdsZUZpbHRlciB7XG5cdC8qKlxuXHQgKiBAaW50ZXJuYWxcblx0ICogQGRvbnRDaGFuZ2Vcblx0ICovXG5cdHByb3RlY3RlZCBzdGF0aWMgcmVhZG9ubHkgX2luc3RhbmNlT2ZLZXk6IHN0cmluZyA9ICdkZXZraXRfRXhpc3RzRmlsdGVyJztcblxuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqIEBkb250Q2hhbmdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc3RhdGljIGdldCBfaW5zdGFuY2VPZktleXMoKTogc3RyaW5nW10ge1xuXHRcdHJldHVybiBbLi4uybVTaW5nbGVGaWx0ZXIuX2luc3RhbmNlT2ZLZXlzLCB0aGlzLl9pbnN0YW5jZU9mS2V5XTtcblx0fVxuXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gU3VicXVlcnkgZmlsdGVycy4gQ2Fubm90IGNvbnRhaW4gZmlsdGVycyB3aXRoIG90aGVyIHN1YnF1ZXJpZXMuXG5cdCAqL1xuXHRwdWJsaWMgcmVhZG9ubHkgc3ViRmlsdGVycz86IMm1RmlsdGVyR3JvdXA7XG5cblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiBJbmRpY2F0ZXMgdGhhdCB0aGUgZmlsdGVyIGlzIGFnZ3JlZ2F0aW5nLlxuXHQgKi9cblx0cHVibGljIHJlYWRvbmx5IGlzQWdncmVnYXRpdmU6IGJvb2xlYW47XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0bGVmdEV4cHJlc3Npb246IMm1QmFzZUV4cHJlc3Npb24sXG5cdFx0c3ViRmlsdGVycz86IMm1RmlsdGVyR3JvdXAsXG5cdFx0Y29tcGFyaXNvblR5cGU6IMm1Q29tcGFyaXNvblR5cGUgPSDJtUNvbXBhcmlzb25UeXBlLkV4aXN0cyxcblx0XHRpc0FnZ3JlZ2F0aXZlID0gdHJ1ZSxcblx0KSB7XG5cdFx0c3VwZXIoybVGaWx0ZXJUeXBlLkV4aXN0cywgY29tcGFyaXNvblR5cGUsIGxlZnRFeHByZXNzaW9uKTtcblx0XHR0aGlzLnN1YkZpbHRlcnMgPSBzdWJGaWx0ZXJzPy5jbG9uZSgpO1xuXHRcdHRoaXMuaXNBZ2dyZWdhdGl2ZSA9IGlzQWdncmVnYXRpdmU7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGZpbHRlciBmcm9tIGpzb24uXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZnJvbUpzb248XG5cdFx0VEZpbHRlclBhcnNlciBleHRlbmRzIHR5cGVvZiDJtUJhc2VGaWx0ZXJQYXJzZXIsXG5cdFx0VEV4cHJlc3Npb25QYXJzZXIgZXh0ZW5kcyB0eXBlb2YgybVCYXNlRXhwcmVzc2lvblBhcnNlcixcblx0PihkdG86IMm1SnNvbk9iamVjdCwgZmlsdGVyUGFyc2VyOiBURmlsdGVyUGFyc2VyLCBleHByZXNzaW9uUGFyc2VyOiBURXhwcmVzc2lvblBhcnNlcik6IMm1RXhpc3RzRmlsdGVyIHtcblx0XHRjb25zdCBsZWZ0RXhwcmVzc2lvbiA9IGV4cHJlc3Npb25QYXJzZXIuZnJvbUpzb24oXG5cdFx0XHRkdG9bJ2xlZnRFeHByZXNzaW9uJ10gYXMgybVKc29uT2JqZWN0LFxuXHRcdFx0ZmlsdGVyUGFyc2VyLFxuXHRcdCkgYXMgybVCYXNlRXhwcmVzc2lvbjtcblx0XHRjb25zdCBzdWJGaWx0ZXJzRHRvID0gZHRvWydzdWJGaWx0ZXJzJ10gYXMgybVKc29uT2JqZWN0O1xuXHRcdGxldCBzdWJGaWx0ZXJzO1xuXHRcdGlmIChzdWJGaWx0ZXJzRHRvKSB7XG5cdFx0XHRzdWJGaWx0ZXJzID0gZmlsdGVyUGFyc2VyLmZyb21Kc29uKGR0b1snc3ViRmlsdGVycyddIGFzIMm1SnNvbk9iamVjdCkgYXMgybVGaWx0ZXJHcm91cDtcblx0XHR9XG5cdFx0cmV0dXJuIG5ldyDJtUV4aXN0c0ZpbHRlcihcblx0XHRcdGxlZnRFeHByZXNzaW9uLFxuXHRcdFx0c3ViRmlsdGVycyxcblx0XHRcdGR0b1snY29tcGFyaXNvblR5cGUnXSBhcyDJtUNvbXBhcmlzb25UeXBlLFxuXHRcdFx0ZHRvWydpc0FnZ3JlZ2F0aXZlJ10gYXMgYm9vbGVhbixcblx0XHQpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENsb25lcyBpbnN0YW5jZS5cblx0ICovXG5cdHB1YmxpYyBjbG9uZSgpOiDJtUV4aXN0c0ZpbHRlciB7XG5cdFx0Y29uc3QgZmlsdGVyID0gbmV3IMm1RXhpc3RzRmlsdGVyKHRoaXMubGVmdEV4cHJlc3Npb24sIHRoaXMuc3ViRmlsdGVycywgdGhpcy5jb21wYXJpc29uVHlwZSwgdGhpcy5pc0FnZ3JlZ2F0aXZlKTtcblx0XHRmaWx0ZXIuaXNFbmFibGVkID0gdGhpcy5pc0VuYWJsZWQ7XG5cdFx0ZmlsdGVyLnRyaW1EYXRlVGltZVBhcmFtZXRlclRvRGF0ZSA9IHRoaXMudHJpbURhdGVUaW1lUGFyYW1ldGVyVG9EYXRlO1xuXHRcdHJldHVybiBmaWx0ZXI7XG5cdH1cblxuXHQvKioge0Bpbmhlcml0RG9jIMm1U2VyaWFsaXphYmxlLnRvSnNvbn0gKi9cblx0cHVibGljIHRvSnNvbigpOiDJtUpzb25PYmplY3Qge1xuXHRcdGNvbnN0IHJlc3VsdCA9IHN1cGVyLnRvSnNvbigpO1xuXHRcdGlmICh0aGlzLnN1YkZpbHRlcnMpIHtcblx0XHRcdHJlc3VsdFsnc3ViRmlsdGVycyddID0gdGhpcy5zZXJpYWxpemVJdGVtKHRoaXMuc3ViRmlsdGVycyk7XG5cdFx0fVxuXHRcdHJldHVybiByZXN1bHQ7XG5cdH1cblxuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqL1xuXHRwdWJsaWMgX2dldFVzZWRDb2x1bW5zKCk6IFVzZWRDb2x1bW5bXSB7XG5cdFx0cmV0dXJuIFsuLi5zdXBlci5fZ2V0VXNlZENvbHVtbnMoKSwgLi4uKHRoaXMuc3ViRmlsdGVycz8uX2dldFVzZWRDb2x1bW5zKCkgPz8gW10pXTtcblx0fVxufVxuIl19
@@ -0,0 +1,247 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Exclude, Expose } from 'class-transformer';
3
+ import { ɵBaseFilter } from './base-filter';
4
+ import { ɵBetweenFilter } from './between-filter';
5
+ import { ɵCompareFilter } from './compare-filter';
6
+ import { ɵExistsFilter } from './exists-filter';
7
+ import { ɵInFilter } from './in-filter';
8
+ import { ɵIsNullFilter } from './isnull-filter';
9
+ import { ɵgenerateGuid } from '../../../../public/types';
10
+ import { ɵValidationUtilities } from '../../../exceptions';
11
+ import { ɵComparisonType } from '../enums/comparison-type.enum';
12
+ import { ɵFilterType } from '../enums/filter-type.enum';
13
+ import { ɵLogicalOperatorType } from '../enums/logical-operator-type.enum';
14
+ import { ɵQueryMacrosType } from '../enums/query-macros-type.enum';
15
+ import { ɵColumnExpression } from '../expressions/columns/column-expression';
16
+ import { ɵMacrosFunctionExpression } from '../expressions/functions/macros-function-expression';
17
+ import { ɵParameterExpression } from '../expressions/parameters/parameter-expression';
18
+ /**
19
+ * @public
20
+ * @description Group of filters. Groups of filters can be nested into each other,
21
+ * i.e. The collection itself can be an element of another collection.
22
+ * @extends {ɵBaseFilter}
23
+ */
24
+ export class ɵFilterGroup extends ɵBaseFilter {
25
+ /**
26
+ * @internal
27
+ * @dontChange
28
+ */
29
+ static { this._instanceOfKey = 'devkit_FilterGroup'; }
30
+ /**
31
+ * @internal
32
+ * @dontChange
33
+ */
34
+ static get _instanceOfKeys() {
35
+ return [...ɵBaseFilter._instanceOfKeys, this._instanceOfKey];
36
+ }
37
+ /**
38
+ * @public
39
+ * @description Return collecion of deserialized filters.
40
+ */
41
+ get items() {
42
+ const result = {};
43
+ this.filters.forEach((filter, key) => {
44
+ result[key] = this.serializeItem(filter);
45
+ });
46
+ return result;
47
+ }
48
+ constructor(logicalOperation = ɵLogicalOperatorType.And, rootSchemaName) {
49
+ super(ɵFilterType.FilterGroup);
50
+ /**
51
+ * @public
52
+ * @description Collection of child filters.
53
+ */
54
+ this.filters = new Map();
55
+ this.logicalOperation = logicalOperation;
56
+ this.rootSchemaName = rootSchemaName;
57
+ }
58
+ /**
59
+ * @public
60
+ * @description Parses filter group from json.
61
+ */
62
+ static fromJson(dto, filterParser) {
63
+ const logicalOperation = dto['logicalOperation'];
64
+ const group = new ɵFilterGroup(logicalOperation || ɵLogicalOperatorType.And, dto['rootSchemaName']);
65
+ Object.entries(dto['items']).forEach(([key, filterDTO]) => {
66
+ group.add(filterParser.fromJson(filterDTO), key);
67
+ });
68
+ return group;
69
+ }
70
+ /** {@inheritDoc ɵSerializable.toJson} */
71
+ toJson() {
72
+ const result = {};
73
+ result['filterType'] = this.filterType;
74
+ result['isEnabled'] = this.isEnabled;
75
+ result['logicalOperation'] = this.logicalOperation;
76
+ result['trimDateTimeParameterToDate'] = this.trimDateTimeParameterToDate;
77
+ result['items'] = this.items;
78
+ if (this.rootSchemaName) {
79
+ result['rootSchemaName'] = this.rootSchemaName;
80
+ }
81
+ return result;
82
+ }
83
+ _createParameterValueExpressions(values) {
84
+ return values.map((value) => new ɵParameterExpression({
85
+ value: value,
86
+ }));
87
+ }
88
+ /**
89
+ * @public
90
+ * @description Returns filter item by index.
91
+ * @param index Item index.
92
+ * @returns Filter.
93
+ */
94
+ getItemByIndex(index) {
95
+ return this.items[Object.keys(this.items)[index]];
96
+ }
97
+ /**
98
+ * @public
99
+ * @description Creates and adds compare filter by value.
100
+ * @param comparisonType Comparison type.
101
+ * @param columnPath Column path.
102
+ * @param parameterValue Parameter value.
103
+ * @param filterKey Filter key.
104
+ */
105
+ addSchemaColumnFilterWithParameter(comparisonType, columnPath, parameterValue, filterKey) {
106
+ const leftExpression = new ɵColumnExpression({ columnPath });
107
+ const rightExpression = new ɵParameterExpression({ value: parameterValue });
108
+ const filter = new ɵCompareFilter(comparisonType, leftExpression, rightExpression);
109
+ this.add(filter, filterKey);
110
+ }
111
+ /**
112
+ * @public
113
+ * @description Creates and adds in filter by values.
114
+ * @param comparisonType Comparison type.
115
+ * @param columnPath Column path.
116
+ * @param parameterValues Parameter values.
117
+ * @param filterKey Filter key.
118
+ */
119
+ addSchemaColumnInFilterWithParameters(comparisonType, columnPath, parameterValues, filterKey) {
120
+ const leftExpression = new ɵColumnExpression({ columnPath });
121
+ const expressions = this._createParameterValueExpressions(parameterValues);
122
+ const filter = new ɵInFilter(comparisonType, leftExpression, expressions);
123
+ this.add(filter, filterKey);
124
+ }
125
+ /**
126
+ * @public
127
+ * @description Creates and adds in filter for primary column.
128
+ * @param primaryColumnValues Primary column values.
129
+ * @param filterKey Filter key.
130
+ */
131
+ addPrimarySchemaColumnInFilter(primaryColumnValues, filterKey) {
132
+ const leftExpression = new ɵMacrosFunctionExpression({ macrosType: ɵQueryMacrosType.PrimaryColumn });
133
+ const expressions = this._createParameterValueExpressions(primaryColumnValues);
134
+ const filter = new ɵInFilter(ɵComparisonType.Equal, leftExpression, expressions);
135
+ this.add(filter, filterKey);
136
+ }
137
+ /**
138
+ * @public
139
+ * @description Creates and adds null filter.
140
+ * @param columnPath Path of column.
141
+ * @param filterKey Filter key.
142
+ */
143
+ addSchemaColumnIsNullFilter(columnPath, filterKey) {
144
+ const leftExpression = new ɵColumnExpression({ columnPath });
145
+ const filter = new ɵIsNullFilter(ɵComparisonType.Is_null, leftExpression);
146
+ this.add(filter, filterKey);
147
+ }
148
+ /**
149
+ * @public
150
+ * @description Creates and adds not null filter.
151
+ * @param columnPath Column path.
152
+ * @param filterKey Filter key.
153
+ */
154
+ addSchemaColumnIsNotNullFilter(columnPath, filterKey) {
155
+ const leftExpression = new ɵColumnExpression({ columnPath });
156
+ const filter = new ɵIsNullFilter(ɵComparisonType.Is_not_null, leftExpression);
157
+ this.add(filter, filterKey);
158
+ }
159
+ /**
160
+ * @public
161
+ * @description Creates and adds filter between less value and greater value.
162
+ * @param columnPath Column path.
163
+ * @param lessParamValue Less parameter value.
164
+ * @param greaterParamValue Greater parameter value.
165
+ * @param filterKey Filter key.
166
+ */
167
+ addSchemaColumnBetweenFilterWithParameters(columnPath, lessParamValue, greaterParamValue, filterKey) {
168
+ const leftExpression = new ɵColumnExpression({ columnPath });
169
+ const rightLessExpression = new ɵParameterExpression({ value: lessParamValue });
170
+ const rightGreaterExpression = new ɵParameterExpression({ value: greaterParamValue });
171
+ const filter = new ɵBetweenFilter(leftExpression, rightLessExpression, rightGreaterExpression);
172
+ this.add(filter, filterKey);
173
+ }
174
+ /**
175
+ * @public
176
+ * @description Creates and adds exists filter.
177
+ * @param columnPath Column path.
178
+ * @param subFilters Filters for exists expression.
179
+ * @param filterKey Filter key.
180
+ */
181
+ addExistsFilter(columnPath, subFilters, filterKey) {
182
+ const leftExpression = new ɵColumnExpression({ columnPath });
183
+ const filter = new ɵExistsFilter(leftExpression, subFilters);
184
+ this.add(filter, filterKey);
185
+ }
186
+ /**
187
+ * @public
188
+ * @description Creates and adds not exists filter.
189
+ * @param columnPath Column path.
190
+ * @param subFilters Filters for exist expression.
191
+ * @param filterKey Filter key.
192
+ */
193
+ addNotExistsFilter(columnPath, subFilters, filterKey) {
194
+ const leftExpression = new ɵColumnExpression({ columnPath });
195
+ const filter = new ɵExistsFilter(leftExpression, subFilters, ɵComparisonType.Not_exists);
196
+ this.add(filter, filterKey);
197
+ }
198
+ /**
199
+ * @public
200
+ * @description Adds filter.
201
+ * @param filter Instance of filter.
202
+ * @param filterKey Filter key.
203
+ */
204
+ add(filter, filterKey) {
205
+ ɵValidationUtilities.checkArgumentEmpty('filter', filter);
206
+ const key = filterKey || ɵgenerateGuid();
207
+ this.filters.set(key, filter);
208
+ }
209
+ /**
210
+ * @public
211
+ * @description Clones instance.
212
+ */
213
+ clone() {
214
+ const filterGroup = new ɵFilterGroup(this.logicalOperation, this.rootSchemaName);
215
+ this.filters.forEach((filter, filterKey) => {
216
+ filterGroup.filters.set(filterKey, filter.clone());
217
+ });
218
+ filterGroup.isEnabled = this.isEnabled;
219
+ filterGroup.trimDateTimeParameterToDate = this.trimDateTimeParameterToDate;
220
+ return filterGroup;
221
+ }
222
+ /**
223
+ * @internal
224
+ */
225
+ _getUsedColumns() {
226
+ const result = [];
227
+ this.filters.forEach((filter) => {
228
+ let filterUsedColumns = filter._getUsedColumns ? filter._getUsedColumns() : [];
229
+ filterUsedColumns = filterUsedColumns.map((usedColumn) => ({
230
+ path: usedColumn.path,
231
+ schemaName: usedColumn.schemaName ?? this.rootSchemaName,
232
+ }));
233
+ result.push(...filterUsedColumns);
234
+ });
235
+ return result;
236
+ }
237
+ }
238
+ __decorate([
239
+ Exclude(),
240
+ __metadata("design:type", Object)
241
+ ], ɵFilterGroup.prototype, "filters", void 0);
242
+ __decorate([
243
+ Expose(),
244
+ __metadata("design:type", Object),
245
+ __metadata("design:paramtypes", [])
246
+ ], ɵFilterGroup.prototype, "items", null);
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXZraXQvYmFzZS9zcmMvbGliL3B1YmxpYy9lc3EvZGF0YS1tb2RlbC9maWx0ZXJzL2ZpbHRlci1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBc0IsYUFBYSxFQUFzQixNQUFNLDBCQUEwQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDaEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7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TyxFQUFFOzs2Q0FDcUM7QUFNL0M7SUFBQyxNQUFNLEVBQUU7Ozt5Q0FPUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV4Y2x1ZGUsIEV4cG9zZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuaW1wb3J0IHsgybVCYXNlRmlsdGVyIH0gZnJvbSAnLi9iYXNlLWZpbHRlcic7XG5pbXBvcnQgeyDJtUJldHdlZW5GaWx0ZXIgfSBmcm9tICcuL2JldHdlZW4tZmlsdGVyJztcbmltcG9ydCB7IMm1Q29tcGFyZUZpbHRlciB9IGZyb20gJy4vY29tcGFyZS1maWx0ZXInO1xuaW1wb3J0IHsgybVFeGlzdHNGaWx0ZXIgfSBmcm9tICcuL2V4aXN0cy1maWx0ZXInO1xuaW1wb3J0IHsgybVCYXNlRmlsdGVyUGFyc2VyIH0gZnJvbSAnLi9maWx0ZXItcGFyc2VyL2Jhc2UtZmlsdGVyLXBhcnNlcic7XG5pbXBvcnQgeyDJtUluRmlsdGVyIH0gZnJvbSAnLi9pbi1maWx0ZXInO1xuaW1wb3J0IHsgybVJc051bGxGaWx0ZXIgfSBmcm9tICcuL2lzbnVsbC1maWx0ZXInO1xuaW1wb3J0IHsgybVFbnRpdHlDb2x1bW5WYWx1ZSwgybVnZW5lcmF0ZUd1aWQsIMm1R3VpZCwgybVKc29uT2JqZWN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vcHVibGljL3R5cGVzJztcbmltcG9ydCB7IMm1VmFsaWRhdGlvblV0aWxpdGllcyB9IGZyb20gJy4uLy4uLy4uL2V4Y2VwdGlvbnMnO1xuaW1wb3J0IHsgybVDb21wYXJpc29uVHlwZSB9IGZyb20gJy4uL2VudW1zL2NvbXBhcmlzb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IMm1RmlsdGVyVHlwZSB9IGZyb20gJy4uL2VudW1zL2ZpbHRlci10eXBlLmVudW0nO1xuaW1wb3J0IHsgybVMb2dpY2FsT3BlcmF0b3JUeXBlIH0gZnJvbSAnLi4vZW51bXMvbG9naWNhbC1vcGVyYXRvci10eXBlLmVudW0nO1xuaW1wb3J0IHsgybVRdWVyeU1hY3Jvc1R5cGUgfSBmcm9tICcuLi9lbnVtcy9xdWVyeS1tYWNyb3MtdHlwZS5lbnVtJztcbmltcG9ydCB7IMm1Q29sdW1uRXhwcmVzc2lvbiB9IGZyb20gJy4uL2V4cHJlc3Npb25zL2NvbHVtbnMvY29sdW1uLWV4cHJlc3Npb24nO1xuaW1wb3J0IHsgybVNYWNyb3NGdW5jdGlvbkV4cHJlc3Npb24gfSBmcm9tICcuLi9leHByZXNzaW9ucy9mdW5jdGlvbnMvbWFjcm9zLWZ1bmN0aW9uLWV4cHJlc3Npb24nO1xuaW1wb3J0IHsgybVQYXJhbWV0ZXJFeHByZXNzaW9uIH0gZnJvbSAnLi4vZXhwcmVzc2lvbnMvcGFyYW1ldGVycy9wYXJhbWV0ZXItZXhwcmVzc2lvbic7XG5pbXBvcnQgeyBVc2VkQ29sdW1uIH0gZnJvbSAnLi4vdXNlZC1jb2x1bW4nO1xuXG4vKipcbiAqIEBwdWJsaWNcbiAqIEBkZXNjcmlwdGlvbiBHcm91cCBvZiBmaWx0ZXJzLiBHcm91cHMgb2YgZmlsdGVycyBjYW4gYmUgbmVzdGVkIGludG8gZWFjaCBvdGhlcixcbiAqIGkuZS4gVGhlIGNvbGxlY3Rpb24gaXRzZWxmIGNhbiBiZSBhbiBlbGVtZW50IG9mIGFub3RoZXIgY29sbGVjdGlvbi5cbiAqIEBleHRlbmRzIHvJtUJhc2VGaWx0ZXJ9XG4gKi9cbmV4cG9ydCBjbGFzcyDJtUZpbHRlckdyb3VwIGV4dGVuZHMgybVCYXNlRmlsdGVyIHtcblx0LyoqXG5cdCAqIEBpbnRlcm5hbFxuXHQgKiBAZG9udENoYW5nZVxuXHQgKi9cblx0cHJvdGVjdGVkIHN0YXRpYyByZWFkb25seSBfaW5zdGFuY2VPZktleTogc3RyaW5nID0gJ2RldmtpdF9GaWx0ZXJHcm91cCc7XG5cblx0LyoqXG5cdCAqIEBpbnRlcm5hbFxuXHQgKiBAZG9udENoYW5nZVxuXHQgKi9cblx0cHJvdGVjdGVkIHN0YXRpYyBnZXQgX2luc3RhbmNlT2ZLZXlzKCk6IHN0cmluZ1tdIHtcblx0XHRyZXR1cm4gWy4uLsm1QmFzZUZpbHRlci5faW5zdGFuY2VPZktleXMsIHRoaXMuX2luc3RhbmNlT2ZLZXldO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENvbGxlY3Rpb24gb2YgY2hpbGQgZmlsdGVycy5cblx0ICovXG5cdEBFeGNsdWRlKClcblx0cHVibGljIGZpbHRlcnMgPSBuZXcgTWFwPMm1R3VpZCwgybVCYXNlRmlsdGVyPigpO1xuXG5cdC8qKlxuXHQgKiBAcHVibGljXG5cdCAqIEBkZXNjcmlwdGlvbiBSZXR1cm4gY29sbGVjaW9uIG9mIGRlc2VyaWFsaXplZCBmaWx0ZXJzLlxuXHQgKi9cblx0QEV4cG9zZSgpXG5cdHB1YmxpYyBnZXQgaXRlbXMoKTogeyBba2V5OiBzdHJpbmddOiDJtUJhc2VGaWx0ZXIgfSB7XG5cdFx0Y29uc3QgcmVzdWx0ID0ge307XG5cdFx0dGhpcy5maWx0ZXJzLmZvckVhY2goKGZpbHRlciwga2V5KSA9PiB7XG5cdFx0XHRyZXN1bHRba2V5XSA9IHRoaXMuc2VyaWFsaXplSXRlbShmaWx0ZXIpO1xuXHRcdH0pO1xuXHRcdHJldHVybiByZXN1bHQ7XG5cdH1cblxuXHQvKipcblx0ICogQGRlc2NyaXB0aW9uIFRoZSB0eXBlIG9mIHRoZSBsb2dpY2FsIG9wZXJhdGlvbiBmb3IgYSBjb21iaW5hdGlvbiBvZiBmaWx0ZXJzIGluIHRoZSBjb2xsZWN0aW9uLlxuXHQgKi9cblx0cHVibGljIGxvZ2ljYWxPcGVyYXRpb246IMm1TG9naWNhbE9wZXJhdG9yVHlwZTtcblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiBSb290IHNjaGVtYSBuYW1lLlxuXHQgKi9cblx0cHVibGljIHJvb3RTY2hlbWFOYW1lPzogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKGxvZ2ljYWxPcGVyYXRpb24gPSDJtUxvZ2ljYWxPcGVyYXRvclR5cGUuQW5kLCByb290U2NoZW1hTmFtZT86IHN0cmluZykge1xuXHRcdHN1cGVyKMm1RmlsdGVyVHlwZS5GaWx0ZXJHcm91cCk7XG5cdFx0dGhpcy5sb2dpY2FsT3BlcmF0aW9uID0gbG9naWNhbE9wZXJhdGlvbjtcblx0XHR0aGlzLnJvb3RTY2hlbWFOYW1lID0gcm9vdFNjaGVtYU5hbWU7XG5cdH1cblxuXHQvKipcblx0ICogQHB1YmxpY1xuXHQgKiBAZGVzY3JpcHRpb24gUGFyc2VzIGZpbHRlciBncm91cCBmcm9tIGpzb24uXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGZyb21Kc29uPFQgZXh0ZW5kcyB0eXBlb2YgybVCYXNlRmlsdGVyUGFyc2VyPihkdG86IMm1SnNvbk9iamVjdCwgZmlsdGVyUGFyc2VyOiBUKTogybVGaWx0ZXJHcm91cCB7XG5cdFx0Y29uc3QgbG9naWNhbE9wZXJhdGlvbiA9IGR0b1snbG9naWNhbE9wZXJhdGlvbiddIGFzIMm1TG9naWNhbE9wZXJhdG9yVHlwZTtcblx0XHRjb25zdCBncm91cCA9IG5ldyDJtUZpbHRlckdyb3VwKGxvZ2ljYWxPcGVyYXRpb24gfHwgybVMb2dpY2FsT3BlcmF0b3JUeXBlLkFuZCwgZHRvWydyb290U2NoZW1hTmFtZSddIGFzIHN0cmluZyk7XG5cdFx0T2JqZWN0LmVudHJpZXMoZHRvWydpdGVtcyddIGFzIMm1SnNvbk9iamVjdCkuZm9yRWFjaCgoW2tleSwgZmlsdGVyRFRPXSkgPT4ge1xuXHRcdFx0Z3JvdXAuYWRkKGZpbHRlclBhcnNlci5mcm9tSnNvbihmaWx0ZXJEVE8gYXMgybVKc29uT2JqZWN0KSBhcyDJtUJhc2VGaWx0ZXIsIGtleSk7XG5cdFx0fSk7XG5cdFx0cmV0dXJuIGdyb3VwO1xuXHR9XG5cblx0LyoqIHtAaW5oZXJpdERvYyDJtVNlcmlhbGl6YWJsZS50b0pzb259ICovXG5cdHB1YmxpYyB0b0pzb24oKTogybVKc29uT2JqZWN0IHtcblx0XHRjb25zdCByZXN1bHQgPSB7fTtcblx0XHRyZXN1bHRbJ2ZpbHRlclR5cGUnXSA9IHRoaXMuZmlsdGVyVHlwZTtcblx0XHRyZXN1bHRbJ2lzRW5hYmxlZCddID0gdGhpcy5pc0VuYWJsZWQ7XG5cdFx0cmVzdWx0Wydsb2dpY2FsT3BlcmF0aW9uJ10gPSB0aGlzLmxvZ2ljYWxPcGVyYXRpb247XG5cdFx0cmVzdWx0Wyd0cmltRGF0ZVRpbWVQYXJhbWV0ZXJUb0RhdGUnXSA9IHRoaXMudHJpbURhdGVUaW1lUGFyYW1ldGVyVG9EYXRlO1xuXHRcdHJlc3VsdFsnaXRlbXMnXSA9IHRoaXMuaXRlbXM7XG5cdFx0aWYgKHRoaXMucm9vdFNjaGVtYU5hbWUpIHtcblx0XHRcdHJlc3VsdFsncm9vdFNjaGVtYU5hbWUnXSA9IHRoaXMucm9vdFNjaGVtYU5hbWU7XG5cdFx0fVxuXHRcdHJldHVybiByZXN1bHQ7XG5cdH1cblxuXHRwcml2YXRlIF9jcmVhdGVQYXJhbWV0ZXJWYWx1ZUV4cHJlc3Npb25zKHZhbHVlczogybVFbnRpdHlDb2x1bW5WYWx1ZVtdKTogybVQYXJhbWV0ZXJFeHByZXNzaW9uW10ge1xuXHRcdHJldHVybiB2YWx1ZXMubWFwKFxuXHRcdFx0KHZhbHVlKSA9PlxuXHRcdFx0XHRuZXcgybVQYXJhbWV0ZXJFeHByZXNzaW9uKHtcblx0XHRcdFx0XHR2YWx1ZTogdmFsdWUsXG5cdFx0XHRcdH0pLFxuXHRcdCk7XG5cdH1cblxuXHQvKipcblx0ICogQHB1YmxpY1xuXHQgKiBAZGVzY3JpcHRpb24gUmV0dXJucyBmaWx0ZXIgaXRlbSBieSBpbmRleC5cblx0ICogQHBhcmFtIGluZGV4IEl0ZW0gaW5kZXguXG5cdCAqIEByZXR1cm5zIEZpbHRlci5cblx0ICovXG5cdHB1YmxpYyBnZXRJdGVtQnlJbmRleChpbmRleDogbnVtYmVyKTogybVCYXNlRmlsdGVyIHtcblx0XHRyZXR1cm4gdGhpcy5pdGVtc1tPYmplY3Qua2V5cyh0aGlzLml0ZW1zKVtpbmRleF1dO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYW5kIGFkZHMgY29tcGFyZSBmaWx0ZXIgYnkgdmFsdWUuXG5cdCAqIEBwYXJhbSBjb21wYXJpc29uVHlwZSBDb21wYXJpc29uIHR5cGUuXG5cdCAqIEBwYXJhbSBjb2x1bW5QYXRoIENvbHVtbiBwYXRoLlxuXHQgKiBAcGFyYW0gcGFyYW1ldGVyVmFsdWUgUGFyYW1ldGVyIHZhbHVlLlxuXHQgKiBAcGFyYW0gZmlsdGVyS2V5IEZpbHRlciBrZXkuXG5cdCAqL1xuXHRwdWJsaWMgYWRkU2NoZW1hQ29sdW1uRmlsdGVyV2l0aFBhcmFtZXRlcihcblx0XHRjb21wYXJpc29uVHlwZTogybVDb21wYXJpc29uVHlwZSxcblx0XHRjb2x1bW5QYXRoOiBzdHJpbmcsXG5cdFx0cGFyYW1ldGVyVmFsdWU6IMm1RW50aXR5Q29sdW1uVmFsdWUsXG5cdFx0ZmlsdGVyS2V5Pzogc3RyaW5nLFxuXHQpOiB2b2lkIHtcblx0XHRjb25zdCBsZWZ0RXhwcmVzc2lvbiA9IG5ldyDJtUNvbHVtbkV4cHJlc3Npb24oeyBjb2x1bW5QYXRoIH0pO1xuXHRcdGNvbnN0IHJpZ2h0RXhwcmVzc2lvbiA9IG5ldyDJtVBhcmFtZXRlckV4cHJlc3Npb24oeyB2YWx1ZTogcGFyYW1ldGVyVmFsdWUgfSk7XG5cdFx0Y29uc3QgZmlsdGVyID0gbmV3IMm1Q29tcGFyZUZpbHRlcihjb21wYXJpc29uVHlwZSwgbGVmdEV4cHJlc3Npb24sIHJpZ2h0RXhwcmVzc2lvbik7XG5cdFx0dGhpcy5hZGQoZmlsdGVyLCBmaWx0ZXJLZXkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYW5kIGFkZHMgaW4gZmlsdGVyIGJ5IHZhbHVlcy5cblx0ICogQHBhcmFtIGNvbXBhcmlzb25UeXBlIENvbXBhcmlzb24gdHlwZS5cblx0ICogQHBhcmFtIGNvbHVtblBhdGggQ29sdW1uIHBhdGguXG5cdCAqIEBwYXJhbSBwYXJhbWV0ZXJWYWx1ZXMgUGFyYW1ldGVyIHZhbHVlcy5cblx0ICogQHBhcmFtIGZpbHRlcktleSBGaWx0ZXIga2V5LlxuXHQgKi9cblx0cHVibGljIGFkZFNjaGVtYUNvbHVtbkluRmlsdGVyV2l0aFBhcmFtZXRlcnMoXG5cdFx0Y29tcGFyaXNvblR5cGU6IMm1Q29tcGFyaXNvblR5cGUsXG5cdFx0Y29sdW1uUGF0aDogc3RyaW5nLFxuXHRcdHBhcmFtZXRlclZhbHVlczogybVFbnRpdHlDb2x1bW5WYWx1ZVtdLFxuXHRcdGZpbHRlcktleT86IHN0cmluZyxcblx0KTogdm9pZCB7XG5cdFx0Y29uc3QgbGVmdEV4cHJlc3Npb24gPSBuZXcgybVDb2x1bW5FeHByZXNzaW9uKHsgY29sdW1uUGF0aCB9KTtcblx0XHRjb25zdCBleHByZXNzaW9ucyA9IHRoaXMuX2NyZWF0ZVBhcmFtZXRlclZhbHVlRXhwcmVzc2lvbnMocGFyYW1ldGVyVmFsdWVzKTtcblx0XHRjb25zdCBmaWx0ZXIgPSBuZXcgybVJbkZpbHRlcihjb21wYXJpc29uVHlwZSwgbGVmdEV4cHJlc3Npb24sIGV4cHJlc3Npb25zKTtcblx0XHR0aGlzLmFkZChmaWx0ZXIsIGZpbHRlcktleSk7XG5cdH1cblxuXHQvKipcblx0ICogQHB1YmxpY1xuXHQgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhbmQgYWRkcyBpbiBmaWx0ZXIgZm9yIHByaW1hcnkgY29sdW1uLlxuXHQgKiBAcGFyYW0gcHJpbWFyeUNvbHVtblZhbHVlcyBQcmltYXJ5IGNvbHVtbiB2YWx1ZXMuXG5cdCAqIEBwYXJhbSBmaWx0ZXJLZXkgRmlsdGVyIGtleS5cblx0ICovXG5cdHB1YmxpYyBhZGRQcmltYXJ5U2NoZW1hQ29sdW1uSW5GaWx0ZXIocHJpbWFyeUNvbHVtblZhbHVlczogybVFbnRpdHlDb2x1bW5WYWx1ZVtdLCBmaWx0ZXJLZXk/OiBzdHJpbmcpOiB2b2lkIHtcblx0XHRjb25zdCBsZWZ0RXhwcmVzc2lvbiA9IG5ldyDJtU1hY3Jvc0Z1bmN0aW9uRXhwcmVzc2lvbih7IG1hY3Jvc1R5cGU6IMm1UXVlcnlNYWNyb3NUeXBlLlByaW1hcnlDb2x1bW4gfSk7XG5cdFx0Y29uc3QgZXhwcmVzc2lvbnMgPSB0aGlzLl9jcmVhdGVQYXJhbWV0ZXJWYWx1ZUV4cHJlc3Npb25zKHByaW1hcnlDb2x1bW5WYWx1ZXMpO1xuXHRcdGNvbnN0IGZpbHRlciA9IG5ldyDJtUluRmlsdGVyKMm1Q29tcGFyaXNvblR5cGUuRXF1YWwsIGxlZnRFeHByZXNzaW9uLCBleHByZXNzaW9ucyk7XG5cdFx0dGhpcy5hZGQoZmlsdGVyLCBmaWx0ZXJLZXkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYW5kIGFkZHMgbnVsbCBmaWx0ZXIuXG5cdCAqIEBwYXJhbSBjb2x1bW5QYXRoIFBhdGggb2YgY29sdW1uLlxuXHQgKiBAcGFyYW0gZmlsdGVyS2V5IEZpbHRlciBrZXkuXG5cdCAqL1xuXHRwdWJsaWMgYWRkU2NoZW1hQ29sdW1uSXNOdWxsRmlsdGVyKGNvbHVtblBhdGg6IHN0cmluZywgZmlsdGVyS2V5Pzogc3RyaW5nKTogdm9pZCB7XG5cdFx0Y29uc3QgbGVmdEV4cHJlc3Npb24gPSBuZXcgybVDb2x1bW5FeHByZXNzaW9uKHsgY29sdW1uUGF0aCB9KTtcblx0XHRjb25zdCBmaWx0ZXIgPSBuZXcgybVJc051bGxGaWx0ZXIoybVDb21wYXJpc29uVHlwZS5Jc19udWxsLCBsZWZ0RXhwcmVzc2lvbik7XG5cdFx0dGhpcy5hZGQoZmlsdGVyLCBmaWx0ZXJLZXkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYW5kIGFkZHMgbm90IG51bGwgZmlsdGVyLlxuXHQgKiBAcGFyYW0gY29sdW1uUGF0aCBDb2x1bW4gcGF0aC5cblx0ICogQHBhcmFtIGZpbHRlcktleSBGaWx0ZXIga2V5LlxuXHQgKi9cblx0cHVibGljIGFkZFNjaGVtYUNvbHVtbklzTm90TnVsbEZpbHRlcihjb2x1bW5QYXRoOiBzdHJpbmcsIGZpbHRlcktleT86IHN0cmluZyk6IHZvaWQge1xuXHRcdGNvbnN0IGxlZnRFeHByZXNzaW9uID0gbmV3IMm1Q29sdW1uRXhwcmVzc2lvbih7IGNvbHVtblBhdGggfSk7XG5cdFx0Y29uc3QgZmlsdGVyID0gbmV3IMm1SXNOdWxsRmlsdGVyKMm1Q29tcGFyaXNvblR5cGUuSXNfbm90X251bGwsIGxlZnRFeHByZXNzaW9uKTtcblx0XHR0aGlzLmFkZChmaWx0ZXIsIGZpbHRlcktleSk7XG5cdH1cblxuXHQvKipcblx0ICogQHB1YmxpY1xuXHQgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhbmQgYWRkcyBmaWx0ZXIgYmV0d2VlbiBsZXNzIHZhbHVlIGFuZCBncmVhdGVyIHZhbHVlLlxuXHQgKiBAcGFyYW0gY29sdW1uUGF0aCBDb2x1bW4gcGF0aC5cblx0ICogQHBhcmFtIGxlc3NQYXJhbVZhbHVlIExlc3MgcGFyYW1ldGVyIHZhbHVlLlxuXHQgKiBAcGFyYW0gZ3JlYXRlclBhcmFtVmFsdWUgR3JlYXRlciBwYXJhbWV0ZXIgdmFsdWUuXG5cdCAqIEBwYXJhbSBmaWx0ZXJLZXkgRmlsdGVyIGtleS5cblx0ICovXG5cdHB1YmxpYyBhZGRTY2hlbWFDb2x1bW5CZXR3ZWVuRmlsdGVyV2l0aFBhcmFtZXRlcnMoXG5cdFx0Y29sdW1uUGF0aDogc3RyaW5nLFxuXHRcdGxlc3NQYXJhbVZhbHVlOiBEYXRlIHwgbnVtYmVyLFxuXHRcdGdyZWF0ZXJQYXJhbVZhbHVlOiBEYXRlIHwgbnVtYmVyLFxuXHRcdGZpbHRlcktleT86IHN0cmluZyxcblx0KTogdm9pZCB7XG5cdFx0Y29uc3QgbGVmdEV4cHJlc3Npb24gPSBuZXcgybVDb2x1bW5FeHByZXNzaW9uKHsgY29sdW1uUGF0aCB9KTtcblx0XHRjb25zdCByaWdodExlc3NFeHByZXNzaW9uID0gbmV3IMm1UGFyYW1ldGVyRXhwcmVzc2lvbih7IHZhbHVlOiBsZXNzUGFyYW1WYWx1ZSB9KTtcblx0XHRjb25zdCByaWdodEdyZWF0ZXJFeHByZXNzaW9uID0gbmV3IMm1UGFyYW1ldGVyRXhwcmVzc2lvbih7IHZhbHVlOiBncmVhdGVyUGFyYW1WYWx1ZSB9KTtcblx0XHRjb25zdCBmaWx0ZXIgPSBuZXcgybVCZXR3ZWVuRmlsdGVyKGxlZnRFeHByZXNzaW9uLCByaWdodExlc3NFeHByZXNzaW9uLCByaWdodEdyZWF0ZXJFeHByZXNzaW9uKTtcblx0XHR0aGlzLmFkZChmaWx0ZXIsIGZpbHRlcktleSk7XG5cdH1cblxuXHQvKipcblx0ICogQHB1YmxpY1xuXHQgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhbmQgYWRkcyBleGlzdHMgZmlsdGVyLlxuXHQgKiBAcGFyYW0gY29sdW1uUGF0aCBDb2x1bW4gcGF0aC5cblx0ICogQHBhcmFtIHN1YkZpbHRlcnMgRmlsdGVycyBmb3IgZXhpc3RzIGV4cHJlc3Npb24uXG5cdCAqIEBwYXJhbSBmaWx0ZXJLZXkgRmlsdGVyIGtleS5cblx0ICovXG5cdHB1YmxpYyBhZGRFeGlzdHNGaWx0ZXIoY29sdW1uUGF0aDogc3RyaW5nLCBzdWJGaWx0ZXJzPzogybVGaWx0ZXJHcm91cCwgZmlsdGVyS2V5Pzogc3RyaW5nKTogdm9pZCB7XG5cdFx0Y29uc3QgbGVmdEV4cHJlc3Npb24gPSBuZXcgybVDb2x1bW5FeHByZXNzaW9uKHsgY29sdW1uUGF0aCB9KTtcblx0XHRjb25zdCBmaWx0ZXIgPSBuZXcgybVFeGlzdHNGaWx0ZXIobGVmdEV4cHJlc3Npb24sIDzJtUZpbHRlckdyb3VwPnN1YkZpbHRlcnMpO1xuXHRcdHRoaXMuYWRkKGZpbHRlciwgZmlsdGVyS2V5KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBAcHVibGljXG5cdCAqIEBkZXNjcmlwdGlvbiBDcmVhdGVzIGFuZCBhZGRzIG5vdCBleGlzdHMgZmlsdGVyLlxuXHQgKiBAcGFyYW0gY29sdW1uUGF0aCBDb2x1bW4gcGF0aC5cblx0ICogQHBhcmFtIHN1YkZpbHRlcnMgRmlsdGVycyBmb3IgZXhpc3QgZXhwcmVzc2lvbi5cblx0ICogQHBhcmFtIGZpbHRlcktleSBGaWx0ZXIga2V5LlxuXHQgKi9cblx0cHVibGljIGFkZE5vdEV4aXN0c0ZpbHRlcihjb2x1bW5QYXRoOiBzdHJpbmcsIHN1YkZpbHRlcnM/OiDJtUZpbHRlckdyb3VwLCBmaWx0ZXJLZXk/OiBzdHJpbmcpOiB2b2lkIHtcblx0XHRjb25zdCBsZWZ0RXhwcmVzc2lvbiA9IG5ldyDJtUNvbHVtbkV4cHJlc3Npb24oeyBjb2x1bW5QYXRoIH0pO1xuXHRcdGNvbnN0IGZpbHRlciA9IG5ldyDJtUV4aXN0c0ZpbHRlcihsZWZ0RXhwcmVzc2lvbiwgPMm1RmlsdGVyR3JvdXA+c3ViRmlsdGVycywgybVDb21wYXJpc29uVHlwZS5Ob3RfZXhpc3RzKTtcblx0XHR0aGlzLmFkZChmaWx0ZXIsIGZpbHRlcktleSk7XG5cdH1cblxuXHQvKipcblx0ICogQHB1YmxpY1xuXHQgKiBAZGVzY3JpcHRpb24gQWRkcyBmaWx0ZXIuXG5cdCAqIEBwYXJhbSBmaWx0ZXIgSW5zdGFuY2Ugb2YgZmlsdGVyLlxuXHQgKiBAcGFyYW0gZmlsdGVyS2V5IEZpbHRlciBrZXkuXG5cdCAqL1xuXHRwdWJsaWMgYWRkKGZpbHRlcjogybVCYXNlRmlsdGVyLCBmaWx0ZXJLZXk/OiBzdHJpbmcpOiB2b2lkIHtcblx0XHTJtVZhbGlkYXRpb25VdGlsaXRpZXMuY2hlY2tBcmd1bWVudEVtcHR5KCdmaWx0ZXInLCBmaWx0ZXIpO1xuXHRcdGNvbnN0IGtleSA9IGZpbHRlcktleSB8fCDJtWdlbmVyYXRlR3VpZCgpO1xuXHRcdHRoaXMuZmlsdGVycy5zZXQoa2V5LCBmaWx0ZXIpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENsb25lcyBpbnN0YW5jZS5cblx0ICovXG5cdHB1YmxpYyBjbG9uZSgpOiDJtUZpbHRlckdyb3VwIHtcblx0XHRjb25zdCBmaWx0ZXJHcm91cCA9IG5ldyDJtUZpbHRlckdyb3VwKHRoaXMubG9naWNhbE9wZXJhdGlvbiwgdGhpcy5yb290U2NoZW1hTmFtZSk7XG5cdFx0dGhpcy5maWx0ZXJzLmZvckVhY2goKGZpbHRlciwgZmlsdGVyS2V5KSA9PiB7XG5cdFx0XHRmaWx0ZXJHcm91cC5maWx0ZXJzLnNldChmaWx0ZXJLZXksIGZpbHRlci5jbG9uZSgpKTtcblx0XHR9KTtcblx0XHRmaWx0ZXJHcm91cC5pc0VuYWJsZWQgPSB0aGlzLmlzRW5hYmxlZDtcblx0XHRmaWx0ZXJHcm91cC50cmltRGF0ZVRpbWVQYXJhbWV0ZXJUb0RhdGUgPSB0aGlzLnRyaW1EYXRlVGltZVBhcmFtZXRlclRvRGF0ZTtcblx0XHRyZXR1cm4gZmlsdGVyR3JvdXA7XG5cdH1cblxuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqL1xuXHRwdWJsaWMgX2dldFVzZWRDb2x1bW5zKCk6IFVzZWRDb2x1bW5bXSB7XG5cdFx0Y29uc3QgcmVzdWx0OiBVc2VkQ29sdW1uW10gPSBbXTtcblx0XHR0aGlzLmZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG5cdFx0XHRsZXQgZmlsdGVyVXNlZENvbHVtbnMgPSBmaWx0ZXIuX2dldFVzZWRDb2x1bW5zID8gZmlsdGVyLl9nZXRVc2VkQ29sdW1ucygpIDogW107XG5cdFx0XHRmaWx0ZXJVc2VkQ29sdW1ucyA9IGZpbHRlclVzZWRDb2x1bW5zLm1hcCgodXNlZENvbHVtbikgPT4gKHtcblx0XHRcdFx0cGF0aDogdXNlZENvbHVtbi5wYXRoLFxuXHRcdFx0XHRzY2hlbWFOYW1lOiB1c2VkQ29sdW1uLnNjaGVtYU5hbWUgPz8gdGhpcy5yb290U2NoZW1hTmFtZSxcblx0XHRcdH0pKTtcblx0XHRcdHJlc3VsdC5wdXNoKC4uLmZpbHRlclVzZWRDb2x1bW5zKTtcblx0XHR9KTtcblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG59XG4iXX0=
@@ -0,0 +1,57 @@
1
+ import { ɵSingleFilter } from './single-filter';
2
+ import { ɵFilterType } from '../enums';
3
+ /**
4
+ * @public
5
+ * @description In-Filter Class
6
+ * @extends {ɵSingleFilter}
7
+ */
8
+ export class ɵInFilter extends ɵSingleFilter {
9
+ /**
10
+ * @internal
11
+ * @dontChange
12
+ */
13
+ static { this._instanceOfKey = 'devkit_InFilter'; }
14
+ /**
15
+ * @internal
16
+ * @dontChange
17
+ */
18
+ static get _instanceOfKeys() {
19
+ return [...ɵSingleFilter._instanceOfKeys, this._instanceOfKey];
20
+ }
21
+ constructor(comparisonType, leftExpression, rightExpressions) {
22
+ super(ɵFilterType.In, comparisonType, leftExpression);
23
+ this.rightExpressions = rightExpressions.map((expression) => expression?.clone()) ?? [];
24
+ }
25
+ /**
26
+ * @description Parses in filter from json.
27
+ * @public
28
+ */
29
+ static fromJson(dto, filterParser, expressionParser) {
30
+ const dtoRightExpressions = (dto['rightExpressions'] ?? []);
31
+ return new ɵInFilter(dto['comparisonType'], expressionParser.fromJson(dto['leftExpression'], filterParser), dtoRightExpressions.map((expression) => expressionParser.fromJson(expression, filterParser)));
32
+ }
33
+ /** {@inheritDoc ɵBaseFilter.clone} */
34
+ clone() {
35
+ const filter = new ɵInFilter(this.comparisonType, this.leftExpression, this.rightExpressions);
36
+ filter.isEnabled = this.isEnabled;
37
+ filter.trimDateTimeParameterToDate = this.trimDateTimeParameterToDate;
38
+ return filter;
39
+ }
40
+ /** {@inheritDoc ɵSerializable.toJson} */
41
+ toJson() {
42
+ return {
43
+ ...super.toJson(),
44
+ rightExpressions: this.rightExpressions.map((expression) => this.serializeItem(expression)),
45
+ };
46
+ }
47
+ /**
48
+ * @internal
49
+ */
50
+ _getUsedColumns() {
51
+ const rightExpressionsUsedColumns = this.rightExpressions
52
+ .map((expression) => expression._getUsedColumns())
53
+ .flat();
54
+ return [...super._getUsedColumns(), ...rightExpressionsUsedColumns];
55
+ }
56
+ }
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXZraXQvYmFzZS9zcmMvbGliL3B1YmxpYy9lc3EvZGF0YS1tb2RlbC9maWx0ZXJzL2luLWZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUFtQixXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFLeEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxTQUFVLFNBQVEsYUFBYTtJQUMzQzs7O09BR0c7YUFDdUIsbUJBQWMsR0FBVyxpQkFBaUIsQ0FBQztJQUVyRTs7O09BR0c7SUFDTyxNQUFNLEtBQUssZUFBZTtRQUNuQyxPQUFPLENBQUMsR0FBRyxhQUFhLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBT0QsWUFBWSxjQUErQixFQUFFLGNBQStCLEVBQUUsZ0JBQW1DO1FBQ2hILEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekYsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxRQUFRLENBR3BCLEdBQWdCLEVBQUUsWUFBMkIsRUFBRSxnQkFBbUM7UUFDbkYsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBZSxDQUFDO1FBQzFFLE9BQU8sSUFBSSxTQUFTLENBQ25CLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBb0IsRUFDeEMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBZ0IsRUFBRSxZQUFZLENBQW9CLEVBQ2hHLG1CQUFtQixDQUFDLEdBQUcsQ0FDdEIsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxVQUF5QixFQUFFLFlBQVksQ0FBb0IsQ0FDckcsQ0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVELHNDQUFzQztJQUMvQixLQUFLO1FBQ1gsTUFBTSxNQUFNLEdBQUcsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlGLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNsQyxNQUFNLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDO1FBQ3RFLE9BQU8sTUFBTSxDQUFDO0lBQ2YsQ0FBQztJQUVELHlDQUF5QztJQUNsQyxNQUFNO1FBQ1osT0FBTztZQUNOLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNqQixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQzNGLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxlQUFlO1FBQ3JCLE1BQU0sMkJBQTJCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQjthQUN2RCxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxlQUFlLEVBQUUsQ0FBQzthQUNqRCxJQUFJLEVBQUUsQ0FBQztRQUNULE9BQU8sQ0FBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLEVBQUUsRUFBRSxHQUFHLDJCQUEyQixDQUFDLENBQUM7SUFDckUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IMm1QmFzZUZpbHRlclBhcnNlciB9IGZyb20gJy4vZmlsdGVyLXBhcnNlci9iYXNlLWZpbHRlci1wYXJzZXInO1xuaW1wb3J0IHsgybVTaW5nbGVGaWx0ZXIgfSBmcm9tICcuL3NpbmdsZS1maWx0ZXInO1xuaW1wb3J0IHsgybVKc29uQXJyYXksIMm1SnNvbk9iamVjdCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2pzb24tZGF0YS50eXBlJztcbmltcG9ydCB7IMm1Q29tcGFyaXNvblR5cGUsIMm1RmlsdGVyVHlwZSB9IGZyb20gJy4uL2VudW1zJztcbmltcG9ydCB7IMm1QmFzZUV4cHJlc3Npb24gfSBmcm9tICcuLi9leHByZXNzaW9ucy9iYXNlLWV4cHJlc3Npb24nO1xuaW1wb3J0IHsgybVCYXNlRXhwcmVzc2lvblBhcnNlciB9IGZyb20gJy4uL2V4cHJlc3Npb25zL2V4cHJlc3Npb24tcGFyc2VyL2Jhc2UtZXhwcmVzc2lvbi1wYXJzZXInO1xuaW1wb3J0IHsgVXNlZENvbHVtbiB9IGZyb20gJy4uL3VzZWQtY29sdW1uJztcblxuLyoqXG4gKiBAcHVibGljXG4gKiBAZGVzY3JpcHRpb24gSW4tRmlsdGVyIENsYXNzXG4gKiBAZXh0ZW5kcyB7ybVTaW5nbGVGaWx0ZXJ9XG4gKi9cbmV4cG9ydCBjbGFzcyDJtUluRmlsdGVyIGV4dGVuZHMgybVTaW5nbGVGaWx0ZXIge1xuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqIEBkb250Q2hhbmdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc3RhdGljIHJlYWRvbmx5IF9pbnN0YW5jZU9mS2V5OiBzdHJpbmcgPSAnZGV2a2l0X0luRmlsdGVyJztcblxuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqIEBkb250Q2hhbmdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc3RhdGljIGdldCBfaW5zdGFuY2VPZktleXMoKTogc3RyaW5nW10ge1xuXHRcdHJldHVybiBbLi4uybVTaW5nbGVGaWx0ZXIuX2luc3RhbmNlT2ZLZXlzLCB0aGlzLl9pbnN0YW5jZU9mS2V5XTtcblx0fVxuXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gQW4gYXJyYXkgb2YgZXhwcmVzc2lvbnMgdGhhdCB3aWxsIGJlIGNvbXBhcmVkIHdpdGgge0BsaW5rICNsZWZ0RXhwcmVzc2lvbn0uXG5cdCAqL1xuXHRwdWJsaWMgcmVhZG9ubHkgcmlnaHRFeHByZXNzaW9uczogybVCYXNlRXhwcmVzc2lvbltdO1xuXG5cdGNvbnN0cnVjdG9yKGNvbXBhcmlzb25UeXBlOiDJtUNvbXBhcmlzb25UeXBlLCBsZWZ0RXhwcmVzc2lvbjogybVCYXNlRXhwcmVzc2lvbiwgcmlnaHRFeHByZXNzaW9uczogybVCYXNlRXhwcmVzc2lvbltdKSB7XG5cdFx0c3VwZXIoybVGaWx0ZXJUeXBlLkluLCBjb21wYXJpc29uVHlwZSwgbGVmdEV4cHJlc3Npb24pO1xuXHRcdHRoaXMucmlnaHRFeHByZXNzaW9ucyA9IHJpZ2h0RXhwcmVzc2lvbnMubWFwKChleHByZXNzaW9uKSA9PiBleHByZXNzaW9uPy5jbG9uZSgpKSA/PyBbXTtcblx0fVxuXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gUGFyc2VzIGluIGZpbHRlciBmcm9tIGpzb24uXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZnJvbUpzb248XG5cdFx0VEZpbHRlclBhcnNlciBleHRlbmRzIHR5cGVvZiDJtUJhc2VGaWx0ZXJQYXJzZXIsXG5cdFx0VEV4cHJlc3Npb25QYXJzZXIgZXh0ZW5kcyB0eXBlb2YgybVCYXNlRXhwcmVzc2lvblBhcnNlcixcblx0PihkdG86IMm1SnNvbk9iamVjdCwgZmlsdGVyUGFyc2VyOiBURmlsdGVyUGFyc2VyLCBleHByZXNzaW9uUGFyc2VyOiBURXhwcmVzc2lvblBhcnNlcik6IMm1SW5GaWx0ZXIge1xuXHRcdGNvbnN0IGR0b1JpZ2h0RXhwcmVzc2lvbnMgPSAoZHRvWydyaWdodEV4cHJlc3Npb25zJ10gPz8gW10pIGFzIMm1SnNvbkFycmF5O1xuXHRcdHJldHVybiBuZXcgybVJbkZpbHRlcihcblx0XHRcdGR0b1snY29tcGFyaXNvblR5cGUnXSBhcyDJtUNvbXBhcmlzb25UeXBlLFxuXHRcdFx0ZXhwcmVzc2lvblBhcnNlci5mcm9tSnNvbihkdG9bJ2xlZnRFeHByZXNzaW9uJ10gYXMgybVKc29uT2JqZWN0LCBmaWx0ZXJQYXJzZXIpIGFzIMm1QmFzZUV4cHJlc3Npb24sXG5cdFx0XHRkdG9SaWdodEV4cHJlc3Npb25zLm1hcChcblx0XHRcdFx0KGV4cHJlc3Npb24pID0+IGV4cHJlc3Npb25QYXJzZXIuZnJvbUpzb24oZXhwcmVzc2lvbiBhcyDJtUpzb25PYmplY3QsIGZpbHRlclBhcnNlcikgYXMgybVCYXNlRXhwcmVzc2lvbixcblx0XHRcdCksXG5cdFx0KTtcblx0fVxuXG5cdC8qKiB7QGluaGVyaXREb2MgybVCYXNlRmlsdGVyLmNsb25lfSAqL1xuXHRwdWJsaWMgY2xvbmUoKTogybVJbkZpbHRlciB7XG5cdFx0Y29uc3QgZmlsdGVyID0gbmV3IMm1SW5GaWx0ZXIodGhpcy5jb21wYXJpc29uVHlwZSwgdGhpcy5sZWZ0RXhwcmVzc2lvbiwgdGhpcy5yaWdodEV4cHJlc3Npb25zKTtcblx0XHRmaWx0ZXIuaXNFbmFibGVkID0gdGhpcy5pc0VuYWJsZWQ7XG5cdFx0ZmlsdGVyLnRyaW1EYXRlVGltZVBhcmFtZXRlclRvRGF0ZSA9IHRoaXMudHJpbURhdGVUaW1lUGFyYW1ldGVyVG9EYXRlO1xuXHRcdHJldHVybiBmaWx0ZXI7XG5cdH1cblxuXHQvKioge0Bpbmhlcml0RG9jIMm1U2VyaWFsaXphYmxlLnRvSnNvbn0gKi9cblx0cHVibGljIHRvSnNvbigpOiDJtUpzb25PYmplY3Qge1xuXHRcdHJldHVybiB7XG5cdFx0XHQuLi5zdXBlci50b0pzb24oKSxcblx0XHRcdHJpZ2h0RXhwcmVzc2lvbnM6IHRoaXMucmlnaHRFeHByZXNzaW9ucy5tYXAoKGV4cHJlc3Npb24pID0+IHRoaXMuc2VyaWFsaXplSXRlbShleHByZXNzaW9uKSksXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBAaW50ZXJuYWxcblx0ICovXG5cdHB1YmxpYyBfZ2V0VXNlZENvbHVtbnMoKTogVXNlZENvbHVtbltdIHtcblx0XHRjb25zdCByaWdodEV4cHJlc3Npb25zVXNlZENvbHVtbnMgPSB0aGlzLnJpZ2h0RXhwcmVzc2lvbnNcblx0XHRcdC5tYXAoKGV4cHJlc3Npb24pID0+IGV4cHJlc3Npb24uX2dldFVzZWRDb2x1bW5zKCkpXG5cdFx0XHQuZmxhdCgpO1xuXHRcdHJldHVybiBbLi4uc3VwZXIuX2dldFVzZWRDb2x1bW5zKCksIC4uLnJpZ2h0RXhwcmVzc2lvbnNVc2VkQ29sdW1uc107XG5cdH1cbn1cbiJdfQ==
@@ -0,0 +1,52 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Expose } from 'class-transformer';
3
+ import { ɵSingleFilter } from './single-filter';
4
+ import { ɵComparisonType, ɵFilterType } from '../enums';
5
+ /**
6
+ * @public
7
+ * @description IsNull filter Class
8
+ * @extends {ɵSingleFilter}
9
+ */
10
+ export class ɵIsNullFilter extends ɵSingleFilter {
11
+ /**
12
+ * @internal
13
+ * @dontChange
14
+ */
15
+ static { this._instanceOfKey = 'devkit_IsNullFilter'; }
16
+ /**
17
+ * @internal
18
+ * @dontChange
19
+ */
20
+ static get _instanceOfKeys() {
21
+ return [...ɵSingleFilter._instanceOfKeys, this._instanceOfKey];
22
+ }
23
+ constructor(comparisonType, leftExpression) {
24
+ super(ɵFilterType.IsNull, comparisonType, leftExpression);
25
+ }
26
+ /**
27
+ * @description Flag that indicates if expression is empty or not.
28
+ */
29
+ get isNull() {
30
+ return this.comparisonType === ɵComparisonType.Is_null;
31
+ }
32
+ /**
33
+ * @description Parses isNull filter from json.
34
+ * @public
35
+ */
36
+ static fromJson(dto, filterParser, expressionParser) {
37
+ return new ɵIsNullFilter(dto['comparisonType'], expressionParser.fromJson(dto['leftExpression'], filterParser));
38
+ }
39
+ /** {@inheritDoc ɵBaseFilter.clone} */
40
+ clone() {
41
+ const filter = new ɵIsNullFilter(this.comparisonType, this.leftExpression);
42
+ filter.isEnabled = this.isEnabled;
43
+ filter.trimDateTimeParameterToDate = this.trimDateTimeParameterToDate;
44
+ return filter;
45
+ }
46
+ }
47
+ __decorate([
48
+ Expose(),
49
+ __metadata("design:type", Boolean),
50
+ __metadata("design:paramtypes", [])
51
+ ], ɵIsNullFilter.prototype, "isNull", null);
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNudWxsLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGV2a2l0L2Jhc2Uvc3JjL2xpYi9wdWJsaWMvZXNxL2RhdGEtbW9kZWwvZmlsdGVycy9pc251bGwtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBSXhEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sYUFBYyxTQUFRLGFBQWE7SUFDL0M7OztPQUdHO2FBQ3VCLG1CQUFjLEdBQVcscUJBQXFCLENBQUM7SUFFekU7OztPQUdHO0lBQ08sTUFBTSxLQUFLLGVBQWU7UUFDbkMsT0FBTyxDQUFDLEdBQUcsYUFBYSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFlBQVksY0FBK0IsRUFBRSxjQUErQjtRQUMzRSxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDVyxNQUFNO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGNBQWMsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDO0lBQ3hELENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsUUFBUSxDQUdwQixHQUFnQixFQUFFLFlBQTJCLEVBQUUsZ0JBQW1DO1FBQ25GLE9BQU8sSUFBSSxhQUFhLENBQ3ZCLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBb0IsRUFDeEMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBZ0IsRUFBRSxZQUFZLENBQW9CLENBQ2hHLENBQUM7SUFDSCxDQUFDO0lBRUQsc0NBQXNDO0lBQy9CLEtBQUs7UUFDWCxNQUFNLE1BQU0sR0FBRyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzRSxNQUFNLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbEMsTUFBTSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQztRQUN0RSxPQUFPLE1BQU0sQ0FBQztJQUNmLENBQUM7O0FBekJEO0lBQUMsTUFBTSxFQUFFOzs7MkNBR1IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFeHBvc2UgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmltcG9ydCB7IMm1QmFzZUZpbHRlclBhcnNlciB9IGZyb20gJy4vZmlsdGVyLXBhcnNlci9iYXNlLWZpbHRlci1wYXJzZXInO1xuaW1wb3J0IHsgybVTaW5nbGVGaWx0ZXIgfSBmcm9tICcuL3NpbmdsZS1maWx0ZXInO1xuaW1wb3J0IHsgybVKc29uT2JqZWN0IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgybVDb21wYXJpc29uVHlwZSwgybVGaWx0ZXJUeXBlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgybVCYXNlRXhwcmVzc2lvbiB9IGZyb20gJy4uL2V4cHJlc3Npb25zL2Jhc2UtZXhwcmVzc2lvbic7XG5pbXBvcnQgeyDJtUJhc2VFeHByZXNzaW9uUGFyc2VyIH0gZnJvbSAnLi4vZXhwcmVzc2lvbnMvZXhwcmVzc2lvbi1wYXJzZXIvYmFzZS1leHByZXNzaW9uLXBhcnNlcic7XG5cbi8qKlxuICogQHB1YmxpY1xuICogQGRlc2NyaXB0aW9uIElzTnVsbCBmaWx0ZXIgQ2xhc3NcbiAqIEBleHRlbmRzIHvJtVNpbmdsZUZpbHRlcn1cbiAqL1xuZXhwb3J0IGNsYXNzIMm1SXNOdWxsRmlsdGVyIGV4dGVuZHMgybVTaW5nbGVGaWx0ZXIge1xuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqIEBkb250Q2hhbmdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc3RhdGljIHJlYWRvbmx5IF9pbnN0YW5jZU9mS2V5OiBzdHJpbmcgPSAnZGV2a2l0X0lzTnVsbEZpbHRlcic7XG5cblx0LyoqXG5cdCAqIEBpbnRlcm5hbFxuXHQgKiBAZG9udENoYW5nZVxuXHQgKi9cblx0cHJvdGVjdGVkIHN0YXRpYyBnZXQgX2luc3RhbmNlT2ZLZXlzKCk6IHN0cmluZ1tdIHtcblx0XHRyZXR1cm4gWy4uLsm1U2luZ2xlRmlsdGVyLl9pbnN0YW5jZU9mS2V5cywgdGhpcy5faW5zdGFuY2VPZktleV07XG5cdH1cblxuXHRjb25zdHJ1Y3Rvcihjb21wYXJpc29uVHlwZTogybVDb21wYXJpc29uVHlwZSwgbGVmdEV4cHJlc3Npb246IMm1QmFzZUV4cHJlc3Npb24pIHtcblx0XHRzdXBlcijJtUZpbHRlclR5cGUuSXNOdWxsLCBjb21wYXJpc29uVHlwZSwgbGVmdEV4cHJlc3Npb24pO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiBGbGFnIHRoYXQgaW5kaWNhdGVzIGlmIGV4cHJlc3Npb24gaXMgZW1wdHkgb3Igbm90LlxuXHQgKi9cblx0QEV4cG9zZSgpXG5cdHB1YmxpYyBnZXQgaXNOdWxsKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmNvbXBhcmlzb25UeXBlID09PSDJtUNvbXBhcmlzb25UeXBlLklzX251bGw7XG5cdH1cblxuXHQvKipcblx0ICogQGRlc2NyaXB0aW9uIFBhcnNlcyBpc051bGwgZmlsdGVyIGZyb20ganNvbi5cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0cHVibGljIHN0YXRpYyBmcm9tSnNvbjxcblx0XHRURmlsdGVyUGFyc2VyIGV4dGVuZHMgdHlwZW9mIMm1QmFzZUZpbHRlclBhcnNlcixcblx0XHRURXhwcmVzc2lvblBhcnNlciBleHRlbmRzIHR5cGVvZiDJtUJhc2VFeHByZXNzaW9uUGFyc2VyLFxuXHQ+KGR0bzogybVKc29uT2JqZWN0LCBmaWx0ZXJQYXJzZXI6IFRGaWx0ZXJQYXJzZXIsIGV4cHJlc3Npb25QYXJzZXI6IFRFeHByZXNzaW9uUGFyc2VyKTogybVJc051bGxGaWx0ZXIge1xuXHRcdHJldHVybiBuZXcgybVJc051bGxGaWx0ZXIoXG5cdFx0XHRkdG9bJ2NvbXBhcmlzb25UeXBlJ10gYXMgybVDb21wYXJpc29uVHlwZSxcblx0XHRcdGV4cHJlc3Npb25QYXJzZXIuZnJvbUpzb24oZHRvWydsZWZ0RXhwcmVzc2lvbiddIGFzIMm1SnNvbk9iamVjdCwgZmlsdGVyUGFyc2VyKSBhcyDJtUJhc2VFeHByZXNzaW9uLFxuXHRcdCk7XG5cdH1cblxuXHQvKioge0Bpbmhlcml0RG9jIMm1QmFzZUZpbHRlci5jbG9uZX0gKi9cblx0cHVibGljIGNsb25lKCk6IMm1SXNOdWxsRmlsdGVyIHtcblx0XHRjb25zdCBmaWx0ZXIgPSBuZXcgybVJc051bGxGaWx0ZXIodGhpcy5jb21wYXJpc29uVHlwZSwgdGhpcy5sZWZ0RXhwcmVzc2lvbik7XG5cdFx0ZmlsdGVyLmlzRW5hYmxlZCA9IHRoaXMuaXNFbmFibGVkO1xuXHRcdGZpbHRlci50cmltRGF0ZVRpbWVQYXJhbWV0ZXJUb0RhdGUgPSB0aGlzLnRyaW1EYXRlVGltZVBhcmFtZXRlclRvRGF0ZTtcblx0XHRyZXR1cm4gZmlsdGVyO1xuXHR9XG59XG4iXX0=
@@ -0,0 +1,34 @@
1
+ import { classToPlain } from 'class-transformer';
2
+ import { ɵFilterType } from '../../enums';
3
+ import { ɵBaseFilter } from '../base-filter';
4
+ export class ɵFilterMock extends ɵBaseFilter {
5
+ /**
6
+ * @internal
7
+ * @dontChange
8
+ */
9
+ static { this._instanceOfKey = 'devkit_FilterMock'; }
10
+ /**
11
+ * @internal
12
+ * @dontChange
13
+ */
14
+ static get _instanceOfKeys() {
15
+ return [...ɵBaseFilter._instanceOfKeys, this._instanceOfKey];
16
+ }
17
+ constructor(filterType = ɵFilterType.None) {
18
+ super(filterType);
19
+ }
20
+ // eslint-disable-next-line @typescript-eslint/ban-types
21
+ get plainObject() {
22
+ return classToPlain(this, { exposeUnsetFields: false, excludePrefixes: ['_'] });
23
+ }
24
+ clone() {
25
+ return new ɵFilterMock(this.filterType);
26
+ }
27
+ /**
28
+ * @internal
29
+ */
30
+ _getUsedColumns() {
31
+ return [];
32
+ }
33
+ }
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLm1vY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RldmtpdC9iYXNlL3NyYy9saWIvcHVibGljL2VzcS9kYXRhLW1vZGVsL2ZpbHRlcnMvbW9ja3MvZmlsdGVyLm1vY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE1BQU0sT0FBTyxXQUFZLFNBQVEsV0FBVztJQUMzQzs7O09BR0c7YUFDdUIsbUJBQWMsR0FBVyxtQkFBbUIsQ0FBQztJQUV2RTs7O09BR0c7SUFDTyxNQUFNLEtBQUssZUFBZTtRQUNuQyxPQUFPLENBQUMsR0FBRyxXQUFXLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsWUFBWSxhQUEwQixXQUFXLENBQUMsSUFBSTtRQUNyRCxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVELHdEQUF3RDtJQUN4RCxJQUFXLFdBQVc7UUFDckIsT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRU0sS0FBSztRQUNYLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNJLGVBQWU7UUFDckIsT0FBTyxFQUFFLENBQUM7SUFDWCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xhc3NUb1BsYWluIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG5pbXBvcnQgeyDJtUZpbHRlclR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBVc2VkQ29sdW1uIH0gZnJvbSAnLi4vLi4vdXNlZC1jb2x1bW4nO1xuaW1wb3J0IHsgybVCYXNlRmlsdGVyIH0gZnJvbSAnLi4vYmFzZS1maWx0ZXInO1xuXG5leHBvcnQgY2xhc3MgybVGaWx0ZXJNb2NrIGV4dGVuZHMgybVCYXNlRmlsdGVyIHtcblx0LyoqXG5cdCAqIEBpbnRlcm5hbFxuXHQgKiBAZG9udENoYW5nZVxuXHQgKi9cblx0cHJvdGVjdGVkIHN0YXRpYyByZWFkb25seSBfaW5zdGFuY2VPZktleTogc3RyaW5nID0gJ2RldmtpdF9GaWx0ZXJNb2NrJztcblxuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqIEBkb250Q2hhbmdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc3RhdGljIGdldCBfaW5zdGFuY2VPZktleXMoKTogc3RyaW5nW10ge1xuXHRcdHJldHVybiBbLi4uybVCYXNlRmlsdGVyLl9pbnN0YW5jZU9mS2V5cywgdGhpcy5faW5zdGFuY2VPZktleV07XG5cdH1cblxuXHRjb25zdHJ1Y3RvcihmaWx0ZXJUeXBlOiDJtUZpbHRlclR5cGUgPSDJtUZpbHRlclR5cGUuTm9uZSkge1xuXHRcdHN1cGVyKGZpbHRlclR5cGUpO1xuXHR9XG5cblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHlwZXNcblx0cHVibGljIGdldCBwbGFpbk9iamVjdCgpOiBvYmplY3Qge1xuXHRcdHJldHVybiBjbGFzc1RvUGxhaW4odGhpcywgeyBleHBvc2VVbnNldEZpZWxkczogZmFsc2UsIGV4Y2x1ZGVQcmVmaXhlczogWydfJ10gfSk7XG5cdH1cblxuXHRwdWJsaWMgY2xvbmUoKTogybVGaWx0ZXJNb2NrIHtcblx0XHRyZXR1cm4gbmV3IMm1RmlsdGVyTW9jayh0aGlzLmZpbHRlclR5cGUpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBpbnRlcm5hbFxuXHQgKi9cblx0cHVibGljIF9nZXRVc2VkQ29sdW1ucygpOiBVc2VkQ29sdW1uW10ge1xuXHRcdHJldHVybiBbXTtcblx0fVxufVxuIl19
@@ -0,0 +1,39 @@
1
+ import { ɵBaseFilter } from './base-filter';
2
+ /**
3
+ * @public
4
+ * @description Basic filter class with one condition.
5
+ * @extends {ɵBaseFilter}
6
+ */
7
+ export class ɵSingleFilter extends ɵBaseFilter {
8
+ /**
9
+ * @internal
10
+ * @dontChange
11
+ */
12
+ static { this._instanceOfKey = 'devkit_SingleFilter'; }
13
+ /**
14
+ * @internal
15
+ * @dontChange
16
+ */
17
+ static get _instanceOfKeys() {
18
+ return [...ɵBaseFilter._instanceOfKeys, this._instanceOfKey];
19
+ }
20
+ constructor(filterType, comparisonType, leftExpression) {
21
+ super(filterType);
22
+ this.comparisonType = comparisonType;
23
+ this.leftExpression = leftExpression?.clone();
24
+ }
25
+ /** {@inheritDoc ɵSerializable.toJson} */
26
+ toJson() {
27
+ return {
28
+ ...super.toJson(),
29
+ leftExpression: this.serializeItem(this.leftExpression),
30
+ };
31
+ }
32
+ /**
33
+ * @internal
34
+ */
35
+ _getUsedColumns() {
36
+ return this.leftExpression._getUsedColumns();
37
+ }
38
+ }
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGV2a2l0L2Jhc2Uvc3JjL2xpYi9wdWJsaWMvZXNxL2RhdGEtbW9kZWwvZmlsdGVycy9zaW5nbGUtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNNUM7Ozs7R0FJRztBQUNILE1BQU0sT0FBZ0IsYUFBYyxTQUFRLFdBQVc7SUFDdEQ7OztPQUdHO2FBQ3VCLG1CQUFjLEdBQVcscUJBQXFCLENBQUM7SUFFekU7OztPQUdHO0lBQ08sTUFBTSxLQUFLLGVBQWU7UUFDbkMsT0FBTyxDQUFDLEdBQUcsV0FBVyxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQVlELFlBQXNCLFVBQXVCLEVBQUUsY0FBK0IsRUFBRSxjQUErQjtRQUM5RyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELHlDQUF5QztJQUNsQyxNQUFNO1FBQ1osT0FBTztZQUNOLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNqQixjQUFjLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1NBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxlQUFlO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgybVCYXNlRmlsdGVyIH0gZnJvbSAnLi9iYXNlLWZpbHRlcic7XG5pbXBvcnQgeyDJtUpzb25PYmplY3QgfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyDJtUNvbXBhcmlzb25UeXBlLCDJtUZpbHRlclR5cGUgfSBmcm9tICcuLi9lbnVtcyc7XG5pbXBvcnQgeyDJtUJhc2VFeHByZXNzaW9uIH0gZnJvbSAnLi4vZXhwcmVzc2lvbnMvYmFzZS1leHByZXNzaW9uJztcbmltcG9ydCB7IFVzZWRDb2x1bW4gfSBmcm9tICcuLi91c2VkLWNvbHVtbic7XG5cbi8qKlxuICogQHB1YmxpY1xuICogQGRlc2NyaXB0aW9uIEJhc2ljIGZpbHRlciBjbGFzcyB3aXRoIG9uZSBjb25kaXRpb24uXG4gKiBAZXh0ZW5kcyB7ybVCYXNlRmlsdGVyfVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgybVTaW5nbGVGaWx0ZXIgZXh0ZW5kcyDJtUJhc2VGaWx0ZXIge1xuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqIEBkb250Q2hhbmdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgc3RhdGljIHJlYWRvbmx5IF9pbnN0YW5jZU9mS2V5OiBzdHJpbmcgPSAnZGV2a2l0X1NpbmdsZUZpbHRlcic7XG5cblx0LyoqXG5cdCAqIEBpbnRlcm5hbFxuXHQgKiBAZG9udENoYW5nZVxuXHQgKi9cblx0cHJvdGVjdGVkIHN0YXRpYyBnZXQgX2luc3RhbmNlT2ZLZXlzKCk6IHN0cmluZ1tdIHtcblx0XHRyZXR1cm4gWy4uLsm1QmFzZUZpbHRlci5faW5zdGFuY2VPZktleXMsIHRoaXMuX2luc3RhbmNlT2ZLZXldO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiBUeXBlIG9mIGNvbXBhcmlzb24gb3BlcmF0aW9uLlxuXHQgKi9cblx0cHVibGljIHJlYWRvbmx5IGNvbXBhcmlzb25UeXBlOiDJtUNvbXBhcmlzb25UeXBlO1xuXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gVGhlIHRlc3QgZXhwcmVzc2lvbi5cblx0ICovXG5cdHB1YmxpYyByZWFkb25seSBsZWZ0RXhwcmVzc2lvbjogybVCYXNlRXhwcmVzc2lvbjtcblxuXHRwcm90ZWN0ZWQgY29uc3RydWN0b3IoZmlsdGVyVHlwZTogybVGaWx0ZXJUeXBlLCBjb21wYXJpc29uVHlwZTogybVDb21wYXJpc29uVHlwZSwgbGVmdEV4cHJlc3Npb246IMm1QmFzZUV4cHJlc3Npb24pIHtcblx0XHRzdXBlcihmaWx0ZXJUeXBlKTtcblx0XHR0aGlzLmNvbXBhcmlzb25UeXBlID0gY29tcGFyaXNvblR5cGU7XG5cdFx0dGhpcy5sZWZ0RXhwcmVzc2lvbiA9IGxlZnRFeHByZXNzaW9uPy5jbG9uZSgpO1xuXHR9XG5cblx0LyoqIHtAaW5oZXJpdERvYyDJtVNlcmlhbGl6YWJsZS50b0pzb259ICovXG5cdHB1YmxpYyB0b0pzb24oKTogybVKc29uT2JqZWN0IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0Li4uc3VwZXIudG9Kc29uKCksXG5cdFx0XHRsZWZ0RXhwcmVzc2lvbjogdGhpcy5zZXJpYWxpemVJdGVtKHRoaXMubGVmdEV4cHJlc3Npb24pLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqL1xuXHRwdWJsaWMgX2dldFVzZWRDb2x1bW5zKCk6IFVzZWRDb2x1bW5bXSB7XG5cdFx0cmV0dXJuIHRoaXMubGVmdEV4cHJlc3Npb24uX2dldFVzZWRDb2x1bW5zKCk7XG5cdH1cbn1cbiJdfQ==
@@ -46,4 +46,4 @@ __decorate([
46
46
  Exclude(),
47
47
  __metadata("design:type", Object)
48
48
  ], ɵBaseFilterableQuery.prototype, "filters", void 0);
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWx0ZXJhYmxlLXF1ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXZraXQvYmFzZS9zcmMvbGliL3B1YmxpYy9lc3EvZGF0YS1tb2RlbC9xdWVyaWVzL2Jhc2UtZmlsdGVyYWJsZS1xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3ZEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLG9CQUFxQixTQUFRLFVBQVU7SUFPNUQsWUFBc0IsYUFBa0MsRUFBRSxjQUFzQjtRQUMvRSxLQUFLLENBQUMsYUFBYSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBUHRDOztXQUVHO1FBRWEsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFJN0MsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFlBQVk7UUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELGtEQUFrRDtJQUMzQyxXQUFXO1FBQ2pCLE9BQU87WUFDTixHQUFHLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDdEIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFO1NBQzlCLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxlQUFlO1FBQ3JCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDbkQsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFO2dCQUMzQixVQUFVLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7YUFDNUM7UUFDRixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sV0FBVyxDQUFDO0lBQ3BCLENBQUM7Q0FDRDtBQW5DQTtJQUFDLE9BQU8sRUFBRTs7cURBQ21DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXhjbHVkZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuaW1wb3J0IHsgybVCYXNlUXVlcnkgfSBmcm9tICcuL2Jhc2UtcXVlcnknO1xuaW1wb3J0IHsgybVRdWVyeU9wZXJhdGlvblR5cGUgfSBmcm9tICcuL3F1ZXJ5LW9wZXJhdGlvbi10eXBlJztcbmltcG9ydCB7IMm1RmlsdGVyR3JvdXAgfSBmcm9tICcuLi9maWx0ZXJzL2ZpbHRlci1ncm91cCc7XG5pbXBvcnQgeyBVc2VkQ29sdW1uIH0gZnJvbSAnLi4vdXNlZC1jb2x1bW4nO1xuXG4vKipcbiAqIEBwdWJsaWNcbiAqIEBkZXNjcmlwdGlvbiBUaGUgYmFzZSBjbGFzcyBvZiB0aGUgZmlsdGVyZWQgZGF0YSByZXF1ZXN0LlxuICogQGV4dGVuZHMge8m1QmFzZVF1ZXJ5fVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgybVCYXNlRmlsdGVyYWJsZVF1ZXJ5IGV4dGVuZHMgybVCYXNlUXVlcnkge1xuXHQvKipcblx0ICogQGRlc2NyaXB0aW9uIENvbGxlY3Rpb24gb2YgZmlsdGVycy5cblx0ICovXG5cdEBFeGNsdWRlKClcblx0cHVibGljIHJlYWRvbmx5IGZpbHRlcnMgPSBuZXcgybVGaWx0ZXJHcm91cCgpO1xuXG5cdHByb3RlY3RlZCBjb25zdHJ1Y3RvcihvcGVyYXRpb25UeXBlOiDJtVF1ZXJ5T3BlcmF0aW9uVHlwZSwgcm9vdFNjaGVtYU5hbWU6IHN0cmluZykge1xuXHRcdHN1cGVyKG9wZXJhdGlvblR5cGUsIHJvb3RTY2hlbWFOYW1lKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBAcHVibGljXG5cdCAqIEBkZXNjcmlwdGlvbiBDbGVhcnMgYWxsIGZpbHRlcnMuXG5cdCAqL1xuXHRwdWJsaWMgY2xlYXJGaWx0ZXJzKCk6IHZvaWQge1xuXHRcdHRoaXMuZmlsdGVycy5maWx0ZXJzLmNsZWFyKCk7XG5cdH1cblxuXHQvKioge0Bpbmhlcml0RG9jIMm1TWV0YWRhdGFQcm92aWRlci5nZXRNZXRhZGF0YX0gKi9cblx0cHVibGljIGdldE1ldGFkYXRhKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0Li4uc3VwZXIuZ2V0TWV0YWRhdGEoKSxcblx0XHRcdGZpbHRlcnM6IHRoaXMuZmlsdGVycy50b0pzb24oKSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEBpbnRlcm5hbFxuXHQgKi9cblx0cHVibGljIF9nZXRVc2VkQ29sdW1ucygpOiBVc2VkQ29sdW1uW10ge1xuXHRcdGNvbnN0IHVzZWRDb2x1bW5zID0gdGhpcy5maWx0ZXJzLl9nZXRVc2VkQ29sdW1ucygpO1xuXHRcdHVzZWRDb2x1bW5zLmZvckVhY2goKHVzZWRDb2x1bW4pID0+IHtcblx0XHRcdGlmICghdXNlZENvbHVtbi5zY2hlbWFOYW1lKSB7XG5cdFx0XHRcdHVzZWRDb2x1bW4uc2NoZW1hTmFtZSA9IHRoaXMucm9vdFNjaGVtYU5hbWU7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0cmV0dXJuIHVzZWRDb2x1bW5zO1xuXHR9XG59XG4iXX0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWx0ZXJhYmxlLXF1ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXZraXQvYmFzZS9zcmMvbGliL3B1YmxpYy9lc3EvZGF0YS1tb2RlbC9xdWVyaWVzL2Jhc2UtZmlsdGVyYWJsZS1xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3ZEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLG9CQUFxQixTQUFRLFVBQVU7SUFPNUQsWUFBc0IsYUFBa0MsRUFBRSxjQUFzQjtRQUMvRSxLQUFLLENBQUMsYUFBYSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBUHRDOztXQUVHO1FBRWEsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFJN0MsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFlBQVk7UUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELGtEQUFrRDtJQUMzQyxXQUFXO1FBQ2pCLE9BQU87WUFDTixHQUFHLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDdEIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFO1NBQzlCLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxlQUFlO1FBQ3JCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDbkQsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzVCLFVBQVUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUM3QyxDQUFDO1FBQ0YsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFdBQVcsQ0FBQztJQUNwQixDQUFDO0NBQ0Q7QUFsQ2dCO0lBRGYsT0FBTyxFQUFFOztxREFDbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFeGNsdWRlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG5pbXBvcnQgeyDJtUJhc2VRdWVyeSB9IGZyb20gJy4vYmFzZS1xdWVyeSc7XG5pbXBvcnQgeyDJtVF1ZXJ5T3BlcmF0aW9uVHlwZSB9IGZyb20gJy4vcXVlcnktb3BlcmF0aW9uLXR5cGUnO1xuaW1wb3J0IHsgybVGaWx0ZXJHcm91cCB9IGZyb20gJy4uL2ZpbHRlcnMvZmlsdGVyLWdyb3VwJztcbmltcG9ydCB7IFVzZWRDb2x1bW4gfSBmcm9tICcuLi91c2VkLWNvbHVtbic7XG5cbi8qKlxuICogQHB1YmxpY1xuICogQGRlc2NyaXB0aW9uIFRoZSBiYXNlIGNsYXNzIG9mIHRoZSBmaWx0ZXJlZCBkYXRhIHJlcXVlc3QuXG4gKiBAZXh0ZW5kcyB7ybVCYXNlUXVlcnl9XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyDJtUJhc2VGaWx0ZXJhYmxlUXVlcnkgZXh0ZW5kcyDJtUJhc2VRdWVyeSB7XG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gQ29sbGVjdGlvbiBvZiBmaWx0ZXJzLlxuXHQgKi9cblx0QEV4Y2x1ZGUoKVxuXHRwdWJsaWMgcmVhZG9ubHkgZmlsdGVycyA9IG5ldyDJtUZpbHRlckdyb3VwKCk7XG5cblx0cHJvdGVjdGVkIGNvbnN0cnVjdG9yKG9wZXJhdGlvblR5cGU6IMm1UXVlcnlPcGVyYXRpb25UeXBlLCByb290U2NoZW1hTmFtZTogc3RyaW5nKSB7XG5cdFx0c3VwZXIob3BlcmF0aW9uVHlwZSwgcm9vdFNjaGVtYU5hbWUpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBwdWJsaWNcblx0ICogQGRlc2NyaXB0aW9uIENsZWFycyBhbGwgZmlsdGVycy5cblx0ICovXG5cdHB1YmxpYyBjbGVhckZpbHRlcnMoKTogdm9pZCB7XG5cdFx0dGhpcy5maWx0ZXJzLmZpbHRlcnMuY2xlYXIoKTtcblx0fVxuXG5cdC8qKiB7QGluaGVyaXREb2MgybVNZXRhZGF0YVByb3ZpZGVyLmdldE1ldGFkYXRhfSAqL1xuXHRwdWJsaWMgZ2V0TWV0YWRhdGEoKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHQuLi5zdXBlci5nZXRNZXRhZGF0YSgpLFxuXHRcdFx0ZmlsdGVyczogdGhpcy5maWx0ZXJzLnRvSnNvbigpLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQGludGVybmFsXG5cdCAqL1xuXHRwdWJsaWMgX2dldFVzZWRDb2x1bW5zKCk6IFVzZWRDb2x1bW5bXSB7XG5cdFx0Y29uc3QgdXNlZENvbHVtbnMgPSB0aGlzLmZpbHRlcnMuX2dldFVzZWRDb2x1bW5zKCk7XG5cdFx0dXNlZENvbHVtbnMuZm9yRWFjaCgodXNlZENvbHVtbikgPT4ge1xuXHRcdFx0aWYgKCF1c2VkQ29sdW1uLnNjaGVtYU5hbWUpIHtcblx0XHRcdFx0dXNlZENvbHVtbi5zY2hlbWFOYW1lID0gdGhpcy5yb290U2NoZW1hTmFtZTtcblx0XHRcdH1cblx0XHR9KTtcblx0XHRyZXR1cm4gdXNlZENvbHVtbnM7XG5cdH1cbn1cbiJdfQ==