@finos/legend-data-cube 0.0.40 → 0.0.42

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 (231) hide show
  1. package/lib/components/DataCube.d.ts.map +1 -1
  2. package/lib/components/DataCube.js +1 -1
  3. package/lib/components/DataCube.js.map +1 -1
  4. package/lib/components/DataCubePlaceholder.d.ts +0 -1
  5. package/lib/components/DataCubePlaceholder.d.ts.map +1 -1
  6. package/lib/components/DataCubePlaceholder.js.map +1 -1
  7. package/lib/components/core/DataCubeCodeCheckErrorAlert.d.ts.map +1 -1
  8. package/lib/components/core/DataCubeCodeCheckErrorAlert.js +5 -1
  9. package/lib/components/core/DataCubeCodeCheckErrorAlert.js.map +1 -1
  10. package/lib/components/view/extend/DataCubeColumnEditor.d.ts.map +1 -1
  11. package/lib/components/view/extend/DataCubeColumnEditor.js +5 -2
  12. package/lib/components/view/extend/DataCubeColumnEditor.js.map +1 -1
  13. package/lib/components/view/filter/DataCubeFilterEditor.d.ts.map +1 -1
  14. package/lib/components/view/filter/DataCubeFilterEditor.js +3 -3
  15. package/lib/components/view/filter/DataCubeFilterEditor.js.map +1 -1
  16. package/lib/index.css +2 -2
  17. package/lib/index.css.map +1 -1
  18. package/lib/package.json +5 -5
  19. package/lib/stores/core/DataCubeQueryBuilder.d.ts.map +1 -1
  20. package/lib/stores/core/DataCubeQueryBuilder.js +12 -6
  21. package/lib/stores/core/DataCubeQueryBuilder.js.map +1 -1
  22. package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts +5 -5
  23. package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts.map +1 -1
  24. package/lib/stores/core/DataCubeQueryBuilderUtils.js +20 -20
  25. package/lib/stores/core/DataCubeQueryBuilderUtils.js.map +1 -1
  26. package/lib/stores/core/DataCubeQueryEngine.d.ts +4 -2
  27. package/lib/stores/core/DataCubeQueryEngine.d.ts.map +1 -1
  28. package/lib/stores/core/DataCubeQueryEngine.js +13 -0
  29. package/lib/stores/core/DataCubeQueryEngine.js.map +1 -1
  30. package/lib/stores/core/DataCubeQuerySnapshot.d.ts +1 -1
  31. package/lib/stores/core/DataCubeQuerySnapshot.d.ts.map +1 -1
  32. package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts +2 -1
  33. package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -1
  34. package/lib/stores/core/DataCubeQuerySnapshotBuilder.js +86 -53
  35. package/lib/stores/core/DataCubeQuerySnapshotBuilder.js.map +1 -1
  36. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts +37 -8
  37. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts.map +1 -1
  38. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js +227 -203
  39. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js.map +1 -1
  40. package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts +3 -3
  41. package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts.map +1 -1
  42. package/lib/stores/core/filter/DataCubeQueryFilterEditorState.js +4 -8
  43. package/lib/stores/core/filter/DataCubeQueryFilterEditorState.js.map +1 -1
  44. package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts +7 -3
  45. package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts.map +1 -1
  46. package/lib/stores/core/filter/DataCubeQueryFilterOperation.js +16 -1
  47. package/lib/stores/core/filter/DataCubeQueryFilterOperation.js.map +1 -1
  48. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts +1 -1
  49. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts.map +1 -1
  50. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js +10 -14
  51. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js.map +1 -1
  52. package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts +1 -1
  53. package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts.map +1 -1
  54. package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js +10 -14
  55. package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js.map +1 -1
  56. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts +1 -1
  57. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts.map +1 -1
  58. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js +10 -14
  59. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js.map +1 -1
  60. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts +1 -1
  61. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts.map +1 -1
  62. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js +10 -14
  63. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js.map +1 -1
  64. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts +1 -2
  65. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts.map +1 -1
  66. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js +15 -90
  67. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js.map +1 -1
  68. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts +1 -1
  69. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts.map +1 -1
  70. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js +10 -14
  71. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js.map +1 -1
  72. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts +1 -1
  73. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts.map +1 -1
  74. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js +6 -14
  75. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js.map +1 -1
  76. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts +1 -1
  77. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts.map +1 -1
  78. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js +6 -14
  79. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js.map +1 -1
  80. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts +1 -1
  81. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts.map +1 -1
  82. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js +14 -18
  83. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js.map +1 -1
  84. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts +1 -1
  85. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts.map +1 -1
  86. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js +6 -14
  87. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js.map +1 -1
  88. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts +1 -1
  89. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts.map +1 -1
  90. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js +14 -18
  91. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js.map +1 -1
  92. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts +1 -1
  93. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts.map +1 -1
  94. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js +6 -14
  95. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js.map +1 -1
  96. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts +6 -4
  97. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts.map +1 -1
  98. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js +15 -15
  99. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js.map +1 -1
  100. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts +6 -4
  101. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts.map +1 -1
  102. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js +10 -15
  103. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js.map +1 -1
  104. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts +1 -1
  105. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts.map +1 -1
  106. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js +14 -18
  107. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js.map +1 -1
  108. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts +1 -1
  109. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts.map +1 -1
  110. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js +6 -14
  111. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js.map +1 -1
  112. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts +1 -1
  113. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts.map +1 -1
  114. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js +14 -18
  115. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js.map +1 -1
  116. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts +1 -1
  117. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts.map +1 -1
  118. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js +6 -14
  119. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js.map +1 -1
  120. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts +1 -1
  121. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts.map +1 -1
  122. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js +14 -14
  123. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js.map +1 -1
  124. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts +1 -1
  125. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts.map +1 -1
  126. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js +14 -14
  127. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js.map +1 -1
  128. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts +1 -1
  129. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts.map +1 -1
  130. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js +19 -19
  131. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js.map +1 -1
  132. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts +1 -1
  133. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts.map +1 -1
  134. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js +14 -14
  135. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js.map +1 -1
  136. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts +1 -1
  137. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts.map +1 -1
  138. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js +10 -14
  139. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js.map +1 -1
  140. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts +1 -1
  141. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts.map +1 -1
  142. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js +10 -14
  143. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js.map +1 -1
  144. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts +1 -1
  145. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts.map +1 -1
  146. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js +14 -14
  147. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js.map +1 -1
  148. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts +1 -1
  149. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts.map +1 -1
  150. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js +10 -14
  151. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js.map +1 -1
  152. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts +1 -1
  153. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts.map +1 -1
  154. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js +10 -14
  155. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js.map +1 -1
  156. package/lib/stores/core/model/DataCubeConfiguration.d.ts +2 -0
  157. package/lib/stores/core/model/DataCubeConfiguration.d.ts.map +1 -1
  158. package/lib/stores/core/model/DataCubeConfiguration.js +3 -1
  159. package/lib/stores/core/model/DataCubeConfiguration.js.map +1 -1
  160. package/lib/stores/view/DataCubeViewState.d.ts.map +1 -1
  161. package/lib/stores/view/DataCubeViewState.js +1 -1
  162. package/lib/stores/view/DataCubeViewState.js.map +1 -1
  163. package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js +2 -2
  164. package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js.map +1 -1
  165. package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts.map +1 -1
  166. package/lib/stores/view/extend/DataCubeColumnEditorState.js +3 -6
  167. package/lib/stores/view/extend/DataCubeColumnEditorState.js.map +1 -1
  168. package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts.map +1 -1
  169. package/lib/stores/view/filter/DataCubeFilterEditorState.js +3 -3
  170. package/lib/stores/view/filter/DataCubeFilterEditorState.js.map +1 -1
  171. package/lib/stores/view/grid/DataCubeGridClientEngine.js +1 -1
  172. package/lib/stores/view/grid/DataCubeGridClientEngine.js.map +1 -1
  173. package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
  174. package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js +5 -5
  175. package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js.map +1 -1
  176. package/lib/stores/view/grid/DataCubeGridMenuBuilder.d.ts.map +1 -1
  177. package/lib/stores/view/grid/DataCubeGridMenuBuilder.js +13 -5
  178. package/lib/stores/view/grid/DataCubeGridMenuBuilder.js.map +1 -1
  179. package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts.map +1 -1
  180. package/lib/stores/view/grid/DataCubeGridQueryBuilder.js +8 -5
  181. package/lib/stores/view/grid/DataCubeGridQueryBuilder.js.map +1 -1
  182. package/package.json +10 -10
  183. package/src/components/DataCube.tsx +1 -0
  184. package/src/components/DataCubePlaceholder.tsx +0 -1
  185. package/src/components/core/DataCubeCodeCheckErrorAlert.tsx +7 -3
  186. package/src/components/view/extend/DataCubeColumnEditor.tsx +7 -4
  187. package/src/components/view/filter/DataCubeFilterEditor.tsx +10 -19
  188. package/src/stores/core/DataCubeQueryBuilder.ts +20 -6
  189. package/src/stores/core/DataCubeQueryBuilderUtils.ts +38 -33
  190. package/src/stores/core/DataCubeQueryEngine.ts +17 -1
  191. package/src/stores/core/DataCubeQuerySnapshot.ts +1 -1
  192. package/src/stores/core/DataCubeQuerySnapshotBuilder.ts +148 -75
  193. package/src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts +332 -260
  194. package/src/stores/core/filter/DataCubeQueryFilterEditorState.ts +7 -11
  195. package/src/stores/core/filter/DataCubeQueryFilterOperation.ts +28 -6
  196. package/src/stores/core/filter/DataCubeQueryFilterOperation__Contain.tsx +13 -21
  197. package/src/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.tsx +17 -21
  198. package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWith.tsx +17 -21
  199. package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.tsx +17 -21
  200. package/src/stores/core/filter/DataCubeQueryFilterOperation__Equal.tsx +13 -98
  201. package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.tsx +17 -21
  202. package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.tsx +13 -19
  203. package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.tsx +9 -19
  204. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.tsx +17 -21
  205. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.tsx +13 -19
  206. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.tsx +17 -21
  207. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.tsx +13 -19
  208. package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.tsx +24 -20
  209. package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNull.tsx +14 -20
  210. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThan.tsx +17 -21
  211. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.tsx +13 -19
  212. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.tsx +17 -21
  213. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.tsx +13 -19
  214. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotContain.tsx +20 -19
  215. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.tsx +20 -19
  216. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.tsx +20 -19
  217. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.tsx +24 -19
  218. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.tsx +25 -18
  219. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.tsx +21 -18
  220. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.tsx +24 -19
  221. package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWith.tsx +17 -21
  222. package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.tsx +17 -21
  223. package/src/stores/core/model/DataCubeConfiguration.ts +9 -1
  224. package/src/stores/view/DataCubeViewState.ts +1 -0
  225. package/src/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.ts +2 -2
  226. package/src/stores/view/extend/DataCubeColumnEditorState.tsx +2 -5
  227. package/src/stores/view/filter/DataCubeFilterEditorState.tsx +3 -7
  228. package/src/stores/view/grid/DataCubeGridClientEngine.ts +1 -1
  229. package/src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx +6 -6
  230. package/src/stores/view/grid/DataCubeGridMenuBuilder.tsx +14 -5
  231. package/src/stores/view/grid/DataCubeGridQueryBuilder.ts +9 -5
@@ -13,24 +13,53 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { V1_AppliedFunction, V1_AppliedProperty, V1_ColSpec, V1_ColSpecArray, V1_Lambda, type V1_ValueSpecification, type V1_PrimitiveValueSpecification } from '@finos/legend-graph';
16
+ import { V1_AppliedFunction, V1_ColSpec, V1_ColSpecArray, V1_GenericTypeInstance, type V1_ValueSpecification, V1_PrimitiveValueSpecification, V1_RelationType, V1_PackageableType, type V1_GenericType } from '@finos/legend-graph';
17
17
  import { type DataCubeColumn } from './model/DataCubeColumn.js';
18
18
  import { type Clazz } from '@finos/legend-shared';
19
- import { DataCubeQueryFilterOperator, type DataCubeOperationValue } from './DataCubeQueryEngine.js';
20
- import type { DataCubeQuerySnapshotFilter, DataCubeQuerySnapshotFilterCondition } from './DataCubeQuerySnapshot.js';
19
+ import { type DataCubeOperationValue } from './DataCubeQueryEngine.js';
20
+ import type { DataCubeQuerySnapshotFilter } from './DataCubeQuerySnapshot.js';
21
21
  import type { DataCubeQueryFilterOperation } from './filter/DataCubeQueryFilterOperation.js';
22
- export declare function _param<T extends V1_ValueSpecification>(func: V1_AppliedFunction, paramIdx: number, clazz: Clazz<T>): T;
22
+ export declare function _param<T extends V1_ValueSpecification>(func: V1_AppliedFunction, paramIdx: number, clazz: Clazz<T>, message?: string | undefined): T;
23
23
  export declare function _colSpecParam(func: V1_AppliedFunction, paramIdx: number): V1_ColSpec;
24
- export declare function _lambdaParam(func: V1_AppliedFunction, paramIdx: number): V1_Lambda;
25
24
  export declare function _colSpecArrayParam(func: V1_AppliedFunction, paramIdx: number): V1_ColSpecArray;
25
+ export declare function _genericTypeParam(func: V1_AppliedFunction, paramIdx: number): V1_GenericTypeInstance;
26
26
  export declare function _funcMatch(value: V1_ValueSpecification | undefined, functionNames: string | string[]): V1_AppliedFunction;
27
+ export declare function _relationType(genericType: V1_GenericType): V1_RelationType;
28
+ export declare function _packageableType(genericType: V1_GenericType): V1_PackageableType;
29
+ export declare function _operationPrimitiveValue(value: V1_PrimitiveValueSpecification): DataCubeOperationValue;
27
30
  /**
28
31
  * This method prunes expanded paths that are no longer valid due to changes in group by columns.
29
32
  * It finds the last common group by column between the previous and current group by columns and
30
33
  * prune the expanded paths beyond that point.
31
34
  */
32
35
  export declare function _pruneExpandedPaths(prevGroupByCols: DataCubeColumn[], currentGroupByCols: DataCubeColumn[], expandedPaths: string[]): string[];
33
- export declare function _buildFilterSnapshot(vs: V1_ValueSpecification, filterOperations: DataCubeQueryFilterOperation[]): DataCubeQuerySnapshotFilter;
34
- export declare function _dataCubeOperationValue(vs: V1_PrimitiveValueSpecification): DataCubeOperationValue;
35
- export declare function _buildConditionSnapshotProperty(property: V1_AppliedProperty, operator: DataCubeQueryFilterOperator): DataCubeQuerySnapshotFilterCondition;
36
+ export declare function _extractExtendedColumns(func: V1_AppliedFunction): {
37
+ name: string;
38
+ type: string;
39
+ mapFn: import("@finos/legend-shared").PlainObject<T>;
40
+ reduceFn: import("@finos/legend-shared").PlainObject<T> | undefined;
41
+ }[];
42
+ export declare function _filter(value: V1_ValueSpecification, columnGetter: (name: string) => DataCubeColumn, filterOperations: DataCubeQueryFilterOperation[]): DataCubeQuerySnapshotFilter;
43
+ export declare function _unwrapNotFilterCondition(func: V1_AppliedFunction): V1_AppliedFunction;
44
+ /**
45
+ * Processes filter conditions of form: column | operator | value, e.g.
46
+ * $x.Age > 5
47
+ * $x.Name == 'abc'
48
+ * $x.Name->startsWith('abc')
49
+ * $x.Age > $x.Age2
50
+ * $x.Name == $x.Name2
51
+ */
52
+ export declare function _baseFilterCondition(expression: V1_AppliedFunction, columnGetter: (name: string) => DataCubeColumn, func: string): {
53
+ column: DataCubeColumn;
54
+ value: DataCubeOperationValue;
55
+ } | undefined;
56
+ /**
57
+ * Processes filter conditions of form: column (case-insensitive) | operator | value (case-insensitive), e.g.
58
+ * $x.Name->toLower() == 'abc'->toLower()
59
+ * $x.Name->toLower() == $x.Name2->toLower()
60
+ */
61
+ export declare function _caseSensitiveBaseFilterCondition(expression: V1_AppliedFunction, columnGetter: (name: string) => DataCubeColumn, func: string): {
62
+ column: DataCubeColumn;
63
+ value: DataCubeOperationValue;
64
+ } | undefined;
36
65
  //# sourceMappingURL=DataCubeQuerySnapshotBuilderUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataCubeQuerySnapshotBuilderUtils.d.ts","sourceRoot":"","sources":["../../../src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,EAUlB,UAAU,EACV,eAAe,EACf,SAAS,EACT,KAAK,qBAAqB,EAC1B,KAAK,8BAA8B,EAGpC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAML,KAAK,KAAK,EACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,2BAA2B,EAE3B,KAAK,sBAAsB,EAC5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,2BAA2B,EAC3B,oCAAoC,EACrC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AAI7F,wBAAgB,MAAM,CAAC,CAAC,SAAS,qBAAqB,EACpD,IAAI,EAAE,kBAAkB,EACxB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GACd,CAAC,CAUH;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,cAMvE;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,aAMtE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAM5E;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,qBAAqB,GAAG,SAAS,EACxC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,sBAejC;AAID;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,EAAE,cAAc,EAAE,EACjC,kBAAkB,EAAE,cAAc,EAAE,EACpC,aAAa,EAAE,MAAM,EAAE,YAwBxB;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,qBAAqB,EACzB,gBAAgB,EAAE,4BAA4B,EAAE,GAC/C,2BAA2B,CA2B7B;AAgMD,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,8BAA8B,GACjC,sBAAsB,CAuBxB;AAuBD,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,2BAA2B,GACpC,oCAAoC,CAMtC"}
1
+ {"version":3,"file":"DataCubeQuerySnapshotBuilderUtils.d.ts","sourceRoot":"","sources":["../../../src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAEL,kBAAkB,EAWlB,UAAU,EACV,eAAe,EACf,sBAAsB,EACtB,KAAK,qBAAqB,EAC1B,8BAA8B,EAG9B,eAAe,EACf,kBAAkB,EAClB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EASL,KAAK,KAAK,EACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAML,KAAK,sBAAsB,EAC5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,2BAA2B,EAE5B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AAI7F,wBAAgB,MAAM,CAAC,CAAC,SAAS,qBAAqB,EACpD,IAAI,EAAE,kBAAkB,EACxB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EACf,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAC3B,CAAC,CAWH;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,cAMvE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAM5E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,0BAO3E;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,qBAAqB,GAAG,SAAS,EACxC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,sBAejC;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,cAAc,mBAMxD;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,cAAc,sBAM3D;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,8BAA8B,GACpC,sBAAsB,CAmBxB;AAID;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,EAAE,cAAc,EAAE,EACjC,kBAAkB,EAAE,cAAc,EAAE,EACpC,aAAa,EAAE,MAAM,EAAE,YAwBxB;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB;;;;;IAoD/D;AAED,wBAAgB,OAAO,CACrB,KAAK,EAAE,qBAAqB,EAC5B,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,EAC9C,gBAAgB,EAAE,4BAA4B,EAAE,GAC/C,2BAA2B,CAiC7B;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,kBAAkB,sBAUjE;AA8FD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,EAC9C,IAAI,EAAE,MAAM;;;cAiCb;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,EAC9C,IAAI,EAAE,MAAM;;;cAmDb"}
@@ -13,30 +13,64 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { PRIMITIVE_TYPE, V1_AppliedFunction, V1_AppliedProperty, V1_CBoolean, V1_CDateTime, V1_CDecimal, V1_CFloat, V1_CInteger, V1_CStrictDate, V1_CStrictTime, V1_CString, V1_ClassInstance, V1_ColSpec, V1_ColSpecArray, V1_Lambda, extractElementNameFromPath as _name, matchFunctionName, } from '@finos/legend-graph';
16
+ import { PRIMITIVE_TYPE, V1_AppliedFunction, V1_AppliedProperty, V1_CBoolean, V1_CDateTime, V1_CDecimal, V1_CFloat, V1_CInteger, V1_CStrictDate, V1_CStrictTime, V1_CString, V1_ClassInstance, V1_ColSpec, V1_ColSpecArray, V1_GenericTypeInstance, V1_PrimitiveValueSpecification, extractElementNameFromPath as _name, matchFunctionName, V1_RelationType, V1_PackageableType, } from '@finos/legend-graph';
17
17
  import {} from './model/DataCubeColumn.js';
18
- import { assertTrue, assertType, guaranteeNonNullable, guaranteeType, UnsupportedOperationError, } from '@finos/legend-shared';
19
- import { DataCubeFunction, DataCubeQueryFilterGroupOperator, DataCubeQueryFilterOperator, TREE_COLUMN_VALUE_SEPARATOR, } from './DataCubeQueryEngine.js';
20
- import { _functionName } from './DataCubeQueryBuilderUtils.js';
18
+ import { assertTrue, assertType, at, guaranteeNonNullable, guaranteeType, IllegalStateError, uniq, UnsupportedOperationError, } from '@finos/legend-shared';
19
+ import { DataCubeFunction, DataCubeOperationAdvancedValueType, DataCubeQueryFilterGroupOperator, getDataType, TREE_COLUMN_VALUE_SEPARATOR, } from './DataCubeQueryEngine.js';
20
+ import { _serializeValueSpecification } from './DataCubeQueryBuilderUtils.js';
21
21
  // --------------------------------- UTILITIES ---------------------------------
22
- export function _param(func, paramIdx, clazz) {
22
+ export function _param(func, paramIdx, clazz, message) {
23
23
  assertTrue(func.parameters.length >= paramIdx + 1, `Can't process ${_name(func.function)}() expression: Expected at least ${paramIdx + 1} parameter(s)`);
24
- return guaranteeType(func.parameters[paramIdx], clazz, `Can't process ${_name(func.function)}() expression: Found unexpected type for parameter at index ${paramIdx}`);
24
+ return guaranteeType(func.parameters[paramIdx], clazz, message ??
25
+ `Can't process ${_name(func.function)}() expression: Found unexpected type for parameter at index ${paramIdx}`);
25
26
  }
26
27
  export function _colSpecParam(func, paramIdx) {
27
28
  return guaranteeType(_param(func, paramIdx, V1_ClassInstance).value, V1_ColSpec, `Can't process ${_name(func.function)}() expression: Expected parameter at index ${paramIdx} to be a column specification`);
28
29
  }
29
- export function _lambdaParam(func, paramIdx) {
30
- return guaranteeType(_param(func, paramIdx, V1_Lambda), V1_Lambda, `Can't process ${_name(func.function)}: Expected parameter at index ${paramIdx} to be a lambda expression`);
31
- }
32
30
  export function _colSpecArrayParam(func, paramIdx) {
33
31
  return guaranteeType(_param(func, paramIdx, V1_ClassInstance).value, V1_ColSpecArray, `Can't process ${_name(func.function)}() expression: Expected parameter at index ${paramIdx} to be a column specification list`);
34
32
  }
33
+ export function _genericTypeParam(func, paramIdx) {
34
+ return _param(func, paramIdx, V1_GenericTypeInstance, `Can't process ${_name(func.function)}: Expected parameter at index ${paramIdx} to be a generic type instance`);
35
+ }
35
36
  export function _funcMatch(value, functionNames) {
36
37
  assertType(value, V1_AppliedFunction, `Can't process function: Found unexpected value specification type`);
37
- assertTrue(matchFunctionName(value.function, Array.isArray(functionNames) ? functionNames : [functionNames]), `Can't process function: Expected function name to be one of [${Array.isArray(functionNames) ? functionNames.join(', ') : functionNames}]`);
38
+ assertTrue(matchFunctionName(value.function, Array.isArray(functionNames) ? functionNames : [functionNames]), `Can't process function: Expected function to be one of [${uniq((Array.isArray(functionNames) ? functionNames : [functionNames]).map(_name)).join(', ')}]`);
38
39
  return value;
39
40
  }
41
+ export function _relationType(genericType) {
42
+ return guaranteeType(genericType.typeArguments[0]?.rawType, V1_RelationType, `Can't process generic type: failed to extract relation type`);
43
+ }
44
+ export function _packageableType(genericType) {
45
+ return guaranteeType(genericType.rawType, V1_PackageableType, `Can't process generic type: failed to extract packageable type`);
46
+ }
47
+ export function _operationPrimitiveValue(value) {
48
+ if (value instanceof V1_CString) {
49
+ return { value: value.value, type: PRIMITIVE_TYPE.STRING };
50
+ }
51
+ else if (value instanceof V1_CBoolean) {
52
+ return { value: value.value, type: PRIMITIVE_TYPE.BOOLEAN };
53
+ }
54
+ else if (value instanceof V1_CDecimal) {
55
+ return { value: value.value, type: PRIMITIVE_TYPE.DECIMAL };
56
+ }
57
+ else if (value instanceof V1_CInteger) {
58
+ return { value: value.value, type: PRIMITIVE_TYPE.INTEGER };
59
+ }
60
+ else if (value instanceof V1_CFloat) {
61
+ return { value: value.value, type: PRIMITIVE_TYPE.FLOAT };
62
+ }
63
+ else if (value instanceof V1_CStrictDate) {
64
+ return { value: value.value, type: PRIMITIVE_TYPE.STRICTDATE };
65
+ }
66
+ else if (value instanceof V1_CDateTime) {
67
+ return { value: value.value, type: PRIMITIVE_TYPE.DATETIME };
68
+ }
69
+ else if (value instanceof V1_CStrictTime) {
70
+ return { value: value.value, type: PRIMITIVE_TYPE.STRICTTIME };
71
+ }
72
+ throw new UnsupportedOperationError(`Can't process primitive value`);
73
+ }
40
74
  // --------------------------------- BUILDING BLOCKS ---------------------------------
41
75
  /**
42
76
  * This method prunes expanded paths that are no longer valid due to changes in group by columns.
@@ -62,225 +96,215 @@ export function _pruneExpandedPaths(prevGroupByCols, currentGroupByCols, expande
62
96
  .filter((path) => path.split(TREE_COLUMN_VALUE_SEPARATOR).length <= lastCommonIndex + 1)
63
97
  .sort();
64
98
  }
65
- export function _buildFilterSnapshot(vs, filterOperations) {
66
- const filterSnapshot = {};
67
- const filterConditionSnapshot = [];
68
- if (vs instanceof V1_AppliedFunction) {
69
- switch (vs.function) {
70
- case DataCubeQueryFilterGroupOperator.OR:
71
- case DataCubeQueryFilterGroupOperator.AND:
72
- filterSnapshot.groupOperator = vs.function;
73
- break;
74
- default:
75
- filterSnapshot.groupOperator = DataCubeQueryFilterGroupOperator.AND;
76
- }
77
- if (vs.function === DataCubeQueryFilterGroupOperator.AND ||
78
- vs.function === DataCubeQueryFilterGroupOperator.OR) {
79
- vs.parameters.forEach((param) => {
80
- filterConditionSnapshot.push(_buildSubFilter(param, filterOperations));
81
- });
82
- }
83
- else {
84
- filterConditionSnapshot.push(_buildSubFilter(vs, filterOperations));
85
- }
86
- }
87
- filterSnapshot.conditions = filterConditionSnapshot;
88
- return filterSnapshot;
89
- }
90
- function _buildSubFilter(vs, filterOperations) {
91
- if (vs instanceof V1_AppliedFunction) {
92
- if (Object.values(DataCubeFunction)
93
- .map((op) => _functionName(op))
94
- .includes(vs.function) &&
95
- vs.function !== _functionName(DataCubeFunction.NOT)) {
96
- const condition = _buildFilterConditionSnapshot(vs);
97
- return _buildDataCubeQueryFilter(condition[0], condition[1], filterOperations);
99
+ export function _extractExtendedColumns(func) {
100
+ const extendFuncs = [];
101
+ let currentFunc = func;
102
+ while (currentFunc instanceof V1_AppliedFunction) {
103
+ // since we are processing a chain of extend(), we can finish processing when
104
+ // encountering a different function.
105
+ if (!matchFunctionName(currentFunc.function, DataCubeFunction.EXTEND)) {
106
+ break;
98
107
  }
99
- else if (vs.function === _functionName(DataCubeFunction.NOT)) {
100
- const notCondition = _buildNotFilterConditionSnapshot(vs.parameters[0]);
101
- if (notCondition) {
102
- return _buildDataCubeQueryFilter(notCondition[0], notCondition[1], filterOperations);
108
+ if (currentFunc.parameters.length === 2) {
109
+ const valueSpecification = currentFunc.parameters[0];
110
+ if (!(valueSpecification instanceof V1_AppliedFunction)) {
111
+ throw new IllegalStateError(`Can't process extend() expression: Expected a chain of function calls (e.g. x()->y()->z())`);
103
112
  }
104
113
  else {
105
- const filterSnapshot = _buildFilterSnapshot(vs.parameters[0], filterOperations);
106
- filterSnapshot.not = true;
107
- return filterSnapshot;
114
+ currentFunc.parameters = currentFunc.parameters.slice(1);
115
+ extendFuncs.unshift(currentFunc);
116
+ currentFunc = valueSpecification;
108
117
  }
109
118
  }
110
- else if (vs.parameters[0] instanceof V1_AppliedFunction) {
111
- return _buildFilterSnapshot(vs, filterOperations);
119
+ else {
120
+ assertTrue(currentFunc.parameters.length === 1, `Can't process extend() expression: Expected 1 parameter, got ${currentFunc.parameters.length}`);
121
+ extendFuncs.unshift(currentFunc);
122
+ break;
112
123
  }
113
124
  }
114
- return undefined;
125
+ return extendFuncs.map((extendFunc) => {
126
+ const colSpecs = _colSpecArrayParam(extendFunc, 0).colSpecs;
127
+ assertTrue(colSpecs.length === 1, `Can't process extend() expression: Expected 1 column specification, got ${colSpecs.length}`);
128
+ const colSpec = at(colSpecs, 0);
129
+ return {
130
+ name: colSpec.name,
131
+ type: '', // NOTE: we don't have type information for extended columns at this point
132
+ mapFn: _serializeValueSpecification(guaranteeNonNullable(colSpec.function1, `Can't process extend() expression: Expected a transformation function expression`)),
133
+ reduceFn: colSpec.function2
134
+ ? _serializeValueSpecification(colSpec.function2)
135
+ : undefined,
136
+ };
137
+ });
115
138
  }
116
- function _buildFilterConditionSnapshot(af) {
117
- if (af.parameters[1] && af.parameters[1] instanceof V1_AppliedProperty) {
118
- switch (af.function) {
119
- case _functionName(DataCubeFunction.EQUAL):
120
- return [af, DataCubeQueryFilterOperator.EQUAL_COLUMN];
121
- case _functionName(DataCubeFunction.GREATER_THAN):
122
- return [af, DataCubeQueryFilterOperator.GREATER_THAN_COLUMN];
123
- case _functionName(DataCubeFunction.GREATER_THAN_OR_EQUAL):
124
- return [af, DataCubeQueryFilterOperator.GREATER_THAN_OR_EQUAL_COLUMN];
125
- case _functionName(DataCubeFunction.LESS_THAN):
126
- return [af, DataCubeQueryFilterOperator.GREATER_THAN_OR_EQUAL_COLUMN];
127
- case _functionName(DataCubeFunction.LESS_THAN):
128
- return [af, DataCubeQueryFilterOperator.LESS_THAN_COLUMN];
129
- case _functionName(DataCubeFunction.LESS_THAN_OR_EQUAL):
130
- return [af, DataCubeQueryFilterOperator.LESS_THAN_OR_EQUAL_COLUMN];
131
- default:
132
- return undefined;
133
- }
139
+ export function _filter(value, columnGetter, filterOperations) {
140
+ if (!(value instanceof V1_AppliedFunction)) {
141
+ throw new Error(`Can't process filter() expression: Expected a function expression`);
142
+ }
143
+ const group = {
144
+ // default to AND group for case where there is only one condition
145
+ groupOperator: DataCubeQueryFilterGroupOperator.AND,
146
+ conditions: [],
147
+ };
148
+ if (matchFunctionName(value.function, DataCubeFunction.AND)) {
149
+ value.parameters.forEach((param) => {
150
+ group.conditions.push(_filterCondition(param, columnGetter, filterOperations));
151
+ });
134
152
  }
135
- else if (af.parameters[0] instanceof V1_AppliedFunction &&
136
- af.parameters[0].function === _functionName(DataCubeFunction.TO_LOWERCASE)) {
137
- return _buildCaseInsensitiveFilterConditionSnapshot(af);
153
+ else if (matchFunctionName(value.function, DataCubeFunction.OR)) {
154
+ group.groupOperator = DataCubeQueryFilterGroupOperator.OR;
155
+ value.parameters.forEach((param) => {
156
+ group.conditions.push(_filterCondition(param, columnGetter, filterOperations));
157
+ });
138
158
  }
139
159
  else {
140
- switch (af.function) {
141
- case _functionName(DataCubeFunction.CONTAINS):
142
- return [af, DataCubeQueryFilterOperator.CONTAIN];
143
- case _functionName(DataCubeFunction.ENDS_WITH):
144
- return [af, DataCubeQueryFilterOperator.END_WITH];
145
- case _functionName(DataCubeFunction.EQUAL):
146
- return [af, DataCubeQueryFilterOperator.EQUAL];
147
- case _functionName(DataCubeFunction.GREATER_THAN):
148
- return [af, DataCubeQueryFilterOperator.GREATER_THAN];
149
- case _functionName(DataCubeFunction.GREATER_THAN_OR_EQUAL):
150
- return [af, DataCubeQueryFilterOperator.GREATER_THAN_OR_EQUAL];
151
- case _functionName(DataCubeFunction.IS_EMPTY):
152
- return [af, DataCubeQueryFilterOperator.IS_NULL];
153
- case _functionName(DataCubeFunction.LESS_THAN):
154
- return [af, DataCubeQueryFilterOperator.LESS_THAN];
155
- case _functionName(DataCubeFunction.LESS_THAN_OR_EQUAL):
156
- return [af, DataCubeQueryFilterOperator.LESS_THAN_OR_EQUAL];
157
- case _functionName(DataCubeFunction.STARTS_WITH):
158
- return [af, DataCubeQueryFilterOperator.START_WITH];
159
- default:
160
- return undefined;
161
- }
160
+ // handles the case where the root is a simple condition or a NOT condition
161
+ group.conditions.push(_filterCondition(value, columnGetter, filterOperations));
162
162
  }
163
+ return group;
164
+ }
165
+ export function _unwrapNotFilterCondition(func) {
166
+ assertTrue(matchFunctionName(func.function, DataCubeFunction.NOT), `Can't process filter condition expression: failed to unwrap not() function`);
167
+ assertTrue(func.parameters.length === 1, `Can't process not() function: Expected 1 parameter`);
168
+ return _param(func, 0, V1_AppliedFunction);
163
169
  }
164
- function _buildCaseInsensitiveFilterConditionSnapshot(af) {
165
- const func = af;
166
- if (af.parameters[0] instanceof V1_AppliedFunction &&
167
- af.parameters[1] instanceof V1_AppliedFunction) {
168
- func.parameters = [
169
- af.parameters[0].parameters[0],
170
- af.parameters[1].parameters[0],
171
- ];
170
+ function _filterCondition(value, columnGetter, filterOperations) {
171
+ if (!(value instanceof V1_AppliedFunction)) {
172
+ throw new UnsupportedOperationError(`Can't process filter condition expression: Expected a function expression`);
173
+ }
174
+ // handle group condition
175
+ if (matchFunctionName(value.function, [
176
+ DataCubeFunction.AND,
177
+ DataCubeFunction.OR,
178
+ ])) {
179
+ return _filter(value, columnGetter, filterOperations);
172
180
  }
173
- if (func.parameters[1] && func.parameters[1] instanceof V1_AppliedProperty) {
174
- switch (af.function) {
175
- case _functionName(DataCubeFunction.EQUAL):
176
- return [
177
- func,
178
- DataCubeQueryFilterOperator.EQUAL_CASE_INSENSITIVE_COLUMN,
179
- ];
180
- default:
181
- return undefined;
181
+ // run through the list of supported filter operations to find the one that can process the condition
182
+ for (const filterOperation of filterOperations) {
183
+ const condition = filterOperation.buildConditionSnapshot(value, columnGetter);
184
+ if (condition) {
185
+ return condition;
182
186
  }
183
187
  }
184
- else {
185
- switch (af.function) {
186
- case _functionName(DataCubeFunction.CONTAINS):
187
- return [func, DataCubeQueryFilterOperator.CONTAIN_CASE_INSENSITIVE];
188
- case _functionName(DataCubeFunction.ENDS_WITH):
189
- return [func, DataCubeQueryFilterOperator.END_WITH_CASE_INSENSITIVE];
190
- case _functionName(DataCubeFunction.EQUAL):
191
- return [func, DataCubeQueryFilterOperator.EQUAL_CASE_INSENSITIVE];
192
- case _functionName(DataCubeFunction.STARTS_WITH):
193
- return [func, DataCubeQueryFilterOperator.START_WITH_CASE_INSENSITIVE];
194
- default:
195
- return undefined;
188
+ // if no match found, proceed to unwrap if it's a NOT condition
189
+ if (matchFunctionName(value.function, DataCubeFunction.NOT)) {
190
+ // run through the list of supported filter operations to find the one that can process the condition
191
+ // again. Processing in this order ensures cases like x != y can be recognized as NOT_EQUAL operator
192
+ // instead of NOT(x == y)
193
+ const unwrapped = _unwrapNotFilterCondition(value);
194
+ for (const filterOperation of filterOperations) {
195
+ const condition = filterOperation.buildConditionSnapshot(unwrapped, columnGetter);
196
+ if (condition) {
197
+ condition.not = true;
198
+ return condition;
199
+ }
200
+ }
201
+ // if no match found, try to see if the condition is a group condition and process
202
+ if (unwrapped instanceof V1_AppliedFunction &&
203
+ matchFunctionName(unwrapped.function, [
204
+ DataCubeFunction.AND,
205
+ DataCubeFunction.OR,
206
+ ])) {
207
+ const condition = _filter(unwrapped, columnGetter, filterOperations);
208
+ condition.not = true;
209
+ return condition;
196
210
  }
197
211
  }
212
+ // if no match found, throw error, we encountered a filter condition form that we don't support
213
+ throw new Error(`Can't process filter condition: no matching operator found`);
198
214
  }
199
- function _buildNotFilterConditionSnapshot(af) {
200
- if (af.parameters[1] && af.parameters[1] instanceof V1_AppliedProperty) {
201
- switch (af.function) {
202
- case _functionName(DataCubeFunction.EQUAL):
203
- return [af, DataCubeQueryFilterOperator.NOT_EQUAL_COLUMN];
204
- default:
205
- return undefined;
206
- }
215
+ function _filterConditionValue(value, column, columnGetter) {
216
+ if (value instanceof V1_PrimitiveValueSpecification) {
217
+ return _operationPrimitiveValue(value);
207
218
  }
208
- else if (af.parameters[0] instanceof V1_AppliedFunction &&
209
- af.parameters[0].function === _functionName(DataCubeFunction.TO_LOWERCASE)) {
210
- if (af.function === _functionName(DataCubeFunction.EQUAL)) {
211
- const func = af;
212
- if (af.parameters[0] instanceof V1_AppliedFunction &&
213
- af.parameters[1] instanceof V1_AppliedFunction) {
214
- func.parameters = [
215
- af.parameters[0].parameters[0],
216
- af.parameters[1].parameters[0],
217
- ];
218
- }
219
- if (func.parameters[1] &&
220
- func.parameters[1] instanceof V1_AppliedProperty) {
221
- return [
222
- func,
223
- DataCubeQueryFilterOperator.NOT_EQUAL_CASE_INSENSITIVE_COLUMN,
224
- ];
225
- }
226
- return [func, DataCubeQueryFilterOperator.NOT_EQUAL_CASE_INSENSITIVE];
219
+ else if (value instanceof V1_AppliedProperty) {
220
+ const column2 = columnGetter(value.property);
221
+ if (getDataType(column.type) !== getDataType(column2.type)) {
222
+ return undefined;
227
223
  }
224
+ return {
225
+ value: column2.name,
226
+ type: DataCubeOperationAdvancedValueType.COLUMN,
227
+ };
228
228
  }
229
- else {
230
- switch (af.function) {
231
- case _functionName(DataCubeFunction.CONTAINS):
232
- return [af, DataCubeQueryFilterOperator.NOT_CONTAIN];
233
- case _functionName(DataCubeFunction.ENDS_WITH):
234
- return [af, DataCubeQueryFilterOperator.NOT_END_WITH];
235
- case _functionName(DataCubeFunction.EQUAL):
236
- return [af, DataCubeQueryFilterOperator.NOT_EQUAL];
237
- case _functionName(DataCubeFunction.IS_EMPTY):
238
- return [af, DataCubeQueryFilterOperator.IS_NOT_NULL];
239
- case _functionName(DataCubeFunction.STARTS_WITH):
240
- return [af, DataCubeQueryFilterOperator.NOT_START_WITH];
241
- default:
242
- return undefined;
243
- }
229
+ else if (value === undefined) {
230
+ return {
231
+ type: DataCubeOperationAdvancedValueType.VOID,
232
+ };
244
233
  }
245
234
  return undefined;
246
235
  }
247
- export function _dataCubeOperationValue(vs) {
248
- switch (true) {
249
- case vs instanceof V1_CString:
250
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.STRING, vs.value);
251
- case vs instanceof V1_CBoolean:
252
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.BOOLEAN, vs.value);
253
- case vs instanceof V1_CDecimal:
254
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.DECIMAL, vs.value);
255
- case vs instanceof V1_CInteger:
256
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.INTEGER, vs.value);
257
- case vs instanceof V1_CFloat:
258
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.FLOAT, vs.value);
259
- case vs instanceof V1_CStrictDate:
260
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.STRICTDATE, vs.value);
261
- case vs instanceof V1_CDateTime:
262
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.DATETIME, vs.value);
263
- case vs instanceof V1_CStrictTime:
264
- return _buildDataCubeOperationValue(PRIMITIVE_TYPE.STRICTTIME, vs.value);
265
- default:
266
- throw new UnsupportedOperationError(`Unsupported primitive value '${vs}'`);
236
+ /**
237
+ * Processes filter conditions of form: column | operator | value, e.g.
238
+ * $x.Age > 5
239
+ * $x.Name == 'abc'
240
+ * $x.Name->startsWith('abc')
241
+ * $x.Age > $x.Age2
242
+ * $x.Name == $x.Name2
243
+ */
244
+ export function _baseFilterCondition(expression, columnGetter, func) {
245
+ if (matchFunctionName(expression.function, func)) {
246
+ if (expression.parameters.length !== 2 &&
247
+ expression.parameters.length !== 1) {
248
+ return undefined;
249
+ }
250
+ const column = expression.parameters[0] instanceof V1_AppliedProperty
251
+ ? columnGetter(expression.parameters[0].property)
252
+ : undefined;
253
+ if (!column) {
254
+ return undefined;
255
+ }
256
+ const value = _filterConditionValue(expression.parameters[1], column, columnGetter);
257
+ if (!value) {
258
+ return undefined;
259
+ }
260
+ return {
261
+ column,
262
+ value,
263
+ };
267
264
  }
265
+ return undefined;
268
266
  }
269
- function _buildDataCubeQueryFilter(af, operator, filterOperations) {
270
- const filterOperation = filterOperations.find((op) => op.operator === operator);
271
- return filterOperation?.buildConditionSnapshot(af);
272
- }
273
- function _buildDataCubeOperationValue(type, value) {
274
- return {
275
- value: value,
276
- type: type,
277
- };
278
- }
279
- export function _buildConditionSnapshotProperty(property, operator) {
280
- return {
281
- name: property.property,
282
- operator: operator,
283
- type: property.class, // TODO: fix this in engine (missing class in V1_AppliedProperty)
284
- };
267
+ /**
268
+ * Processes filter conditions of form: column (case-insensitive) | operator | value (case-insensitive), e.g.
269
+ * $x.Name->toLower() == 'abc'->toLower()
270
+ * $x.Name->toLower() == $x.Name2->toLower()
271
+ */
272
+ export function _caseSensitiveBaseFilterCondition(expression, columnGetter, func) {
273
+ if (matchFunctionName(expression.function, func)) {
274
+ if (expression.parameters.length !== 2) {
275
+ return undefined;
276
+ }
277
+ const param1 = expression.parameters[0];
278
+ if (!(param1 instanceof V1_AppliedFunction) ||
279
+ !matchFunctionName(param1.function, DataCubeFunction.TO_LOWERCASE)) {
280
+ return undefined;
281
+ }
282
+ if (param1.parameters.length !== 1) {
283
+ return undefined;
284
+ }
285
+ const column = param1.parameters[0] instanceof V1_AppliedProperty
286
+ ? columnGetter(param1.parameters[0].property)
287
+ : undefined;
288
+ if (!column) {
289
+ return undefined;
290
+ }
291
+ const param2 = expression.parameters[1];
292
+ if (!(param2 instanceof V1_AppliedFunction) ||
293
+ !matchFunctionName(param2.function, DataCubeFunction.TO_LOWERCASE)) {
294
+ return undefined;
295
+ }
296
+ if (param2.parameters.length !== 1) {
297
+ return undefined;
298
+ }
299
+ const value = _filterConditionValue(param2.parameters[0], column, columnGetter);
300
+ if (!value) {
301
+ return undefined;
302
+ }
303
+ return {
304
+ column,
305
+ value,
306
+ };
307
+ }
308
+ return undefined;
285
309
  }
286
310
  //# sourceMappingURL=DataCubeQuerySnapshotBuilderUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataCubeQuerySnapshotBuilderUtils.js","sourceRoot":"","sources":["../../../src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataCubeQuerySnapshotBuilderUtils.js","sourceRoot":"","sources":["../../../src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,sBAAsB,EAEtB,8BAA8B,EAC9B,0BAA0B,IAAI,KAAK,EACnC,iBAAiB,EACjB,eAAe,EACf,kBAAkB,GAEnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,EACL,UAAU,EACV,UAAU,EACV,EAAE,EACF,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,IAAI,EACJ,yBAAyB,GAE1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,kCAAkC,EAClC,gCAAgC,EAChC,WAAW,EACX,2BAA2B,GAE5B,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAG9E,gFAAgF;AAEhF,MAAM,UAAU,MAAM,CACpB,IAAwB,EACxB,QAAgB,EAChB,KAAe,EACf,OAA4B;IAE5B,UAAU,CACR,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,QAAQ,GAAG,CAAC,EACtC,iBAAiB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,oCAAoC,QAAQ,GAAG,CAAC,eAAe,CACrG,CAAC;IACF,OAAO,aAAa,CAClB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EACzB,KAAK,EACL,OAAO;QACL,iBAAiB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,+DAA+D,QAAQ,EAAE,CACjH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAwB,EAAE,QAAgB;IACtE,OAAO,aAAa,CAClB,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,KAAK,EAC9C,UAAU,EACV,iBAAiB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,8CAA8C,QAAQ,+BAA+B,CAC3H,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAwB,EAAE,QAAgB;IAC3E,OAAO,aAAa,CAClB,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,KAAK,EAC9C,eAAe,EACf,iBAAiB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,8CAA8C,QAAQ,oCAAoC,CAChI,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAwB,EAAE,QAAgB;IAC1E,OAAO,MAAM,CACX,IAAI,EACJ,QAAQ,EACR,sBAAsB,EACtB,iBAAiB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAiC,QAAQ,gCAAgC,CAC/G,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,KAAwC,EACxC,aAAgC;IAEhC,UAAU,CACR,KAAK,EACL,kBAAkB,EAClB,mEAAmE,CACpE,CAAC;IACF,UAAU,CACR,iBAAiB,CACf,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAC/D,EACD,2DAA2D,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC3J,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,WAA2B;IACvD,OAAO,aAAa,CAClB,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,EACrC,eAAe,EACf,6DAA6D,CAC9D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,WAA2B;IAC1D,OAAO,aAAa,CAClB,WAAW,CAAC,OAAO,EACnB,kBAAkB,EAClB,gEAAgE,CACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAqC;IAErC,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC;IAC7D,CAAC;SAAM,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACxC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;SAAM,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACxC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;SAAM,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACxC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;SAAM,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;QACtC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC;IAC5D,CAAC;SAAM,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;QAC3C,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,UAAU,EAAE,CAAC;IACjE,CAAC;SAAM,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;QACzC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC;IAC/D,CAAC;SAAM,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;QAC3C,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,UAAU,EAAE,CAAC;IACjE,CAAC;IACD,MAAM,IAAI,yBAAyB,CAAC,+BAA+B,CAAC,CAAC;AACvE,CAAC;AAED,sFAAsF;AAEtF;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,eAAiC,EACjC,kBAAoC,EACpC,aAAuB;IAEvB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,IACE,oBAAoB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC3C,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAClD,oBAAoB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;gBAC3C,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAClD,CAAC;YACD,MAAM;QACR,CAAC;QACD,eAAe,GAAG,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,aAAa;SACjB,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,MAAM,IAAI,eAAe,GAAG,CAAC,CACxE;SACA,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAwB;IAC9D,MAAM,WAAW,GAAyB,EAAE,CAAC;IAC7C,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,OAAO,WAAW,YAAY,kBAAkB,EAAE,CAAC;QACjD,6EAA6E;QAC7E,qCAAqC;QACrC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,QAAQ,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;YACtE,MAAM;QACR,CAAC;QAED,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,kBAAkB,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,CAAC,kBAAkB,YAAY,kBAAkB,CAAC,EAAE,CAAC;gBACxD,MAAM,IAAI,iBAAiB,CACzB,4FAA4F,CAC7F,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACzD,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBACjC,WAAW,GAAG,kBAAkB,CAAC;YACnC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,UAAU,CACR,WAAW,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EACnC,gEAAgE,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,CAChG,CAAC;YACF,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACjC,MAAM;QACR,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACpC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC5D,UAAU,CACR,QAAQ,CAAC,MAAM,KAAK,CAAC,EACrB,2EAA2E,QAAQ,CAAC,MAAM,EAAE,CAC7F,CAAC;QACF,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAChC,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,EAAE,EAAE,0EAA0E;YACpF,KAAK,EAAE,4BAA4B,CACjC,oBAAoB,CAClB,OAAO,CAAC,SAAS,EACjB,kFAAkF,CACnF,CACF;YACD,QAAQ,EAAE,OAAO,CAAC,SAAS;gBACzB,CAAC,CAAC,4BAA4B,CAAC,OAAO,CAAC,SAAS,CAAC;gBACjD,CAAC,CAAC,SAAS;SACd,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,KAA4B,EAC5B,YAA8C,EAC9C,gBAAgD;IAEhD,IAAI,CAAC,CAAC,KAAK,YAAY,kBAAkB,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAgC;QACzC,kEAAkE;QAClE,aAAa,EAAE,gCAAgC,CAAC,GAAG;QACnD,UAAU,EAAE,EAAE;KACf,CAAC;IAEF,IAAI,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5D,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACjC,KAAK,CAAC,UAAU,CAAC,IAAI,CACnB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,gBAAgB,CAAC,CACxD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC;QAClE,KAAK,CAAC,aAAa,GAAG,gCAAgC,CAAC,EAAE,CAAC;QAC1D,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACjC,KAAK,CAAC,UAAU,CAAC,IAAI,CACnB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,gBAAgB,CAAC,CACxD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,2EAA2E;QAC3E,KAAK,CAAC,UAAU,CAAC,IAAI,CACnB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,gBAAgB,CAAC,CACxD,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,IAAwB;IAChE,UAAU,CACR,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EACtD,4EAA4E,CAC7E,CAAC;IACF,UAAU,CACR,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAC5B,oDAAoD,CACrD,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,gBAAgB,CACvB,KAA4B,EAC5B,YAA8C,EAC9C,gBAAgD;IAEhD,IAAI,CAAC,CAAC,KAAK,YAAY,kBAAkB,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,yBAAyB,CACjC,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IAED,yBAAyB;IACzB,IACE,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE;QAChC,gBAAgB,CAAC,GAAG;QACpB,gBAAgB,CAAC,EAAE;KACpB,CAAC,EACF,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;IACxD,CAAC;IAED,qGAAqG;IACrG,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,eAAe,CAAC,sBAAsB,CACtD,KAAK,EACL,YAAY,CACb,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,IAAI,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5D,qGAAqG;QACrG,oGAAoG;QACpG,yBAAyB;QACzB,MAAM,SAAS,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QACnD,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE,CAAC;YAC/C,MAAM,SAAS,GAAG,eAAe,CAAC,sBAAsB,CACtD,SAAS,EACT,YAAY,CACb,CAAC;YACF,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,CAAC,GAAG,GAAG,IAAI,CAAC;gBACrB,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,kFAAkF;QAClF,IACE,SAAS,YAAY,kBAAkB;YACvC,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACpC,gBAAgB,CAAC,GAAG;gBACpB,gBAAgB,CAAC,EAAE;aACpB,CAAC,EACF,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;YACrE,SAAS,CAAC,GAAG,GAAG,IAAI,CAAC;YACrB,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,+FAA+F;IAC/F,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAwC,EACxC,MAAsB,EACtB,YAA8C;IAE9C,IAAI,KAAK,YAAY,8BAA8B,EAAE,CAAC;QACpD,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;SAAM,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3D,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,IAAI;YACnB,IAAI,EAAE,kCAAkC,CAAC,MAAM;SAChD,CAAC;IACJ,CAAC;SAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO;YACL,IAAI,EAAE,kCAAkC,CAAC,IAAI;SAC9C,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,UAA8B,EAC9B,YAA8C,EAC9C,IAAY;IAEZ,IAAI,iBAAiB,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;QACjD,IACE,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAClC,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAClC,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GACV,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,kBAAkB;YACpD,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjD,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAG,qBAAqB,CACjC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EACxB,MAAM,EACN,YAAY,CACb,CAAC;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO;YACL,MAAM;YACN,KAAK;SACN,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iCAAiC,CAC/C,UAA8B,EAC9B,YAA8C,EAC9C,IAAY;IAEZ,IAAI,iBAAiB,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;QACjD,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACxC,IACE,CAAC,CAAC,MAAM,YAAY,kBAAkB,CAAC;YACvC,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAClE,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,MAAM,GACV,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,kBAAkB;YAChD,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACxC,IACE,CAAC,CAAC,MAAM,YAAY,kBAAkB,CAAC;YACvC,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAClE,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,KAAK,GAAG,qBAAqB,CACjC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EACpB,MAAM,EACN,YAAY,CACb,CAAC;QAEF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO;YACL,MAAM;YACN,KAAK;SACN,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -13,11 +13,11 @@ export declare abstract class DataCubeFilterEditorTreeNode {
13
13
  export declare class DataCubeFilterEditorConditionTreeNode extends DataCubeFilterEditorTreeNode {
14
14
  column: DataCubeColumn;
15
15
  operation: DataCubeQueryFilterOperation;
16
- value: DataCubeOperationValue | undefined;
17
- constructor(parent: DataCubeFilterEditorConditionGroupTreeNode | undefined, column: DataCubeColumn, operation: DataCubeQueryFilterOperation, value: DataCubeOperationValue | undefined, not: boolean | undefined);
16
+ value: DataCubeOperationValue;
17
+ constructor(parent: DataCubeFilterEditorConditionGroupTreeNode | undefined, column: DataCubeColumn, operation: DataCubeQueryFilterOperation, value: DataCubeOperationValue, not: boolean | undefined);
18
18
  setColumn(col: DataCubeColumn): void;
19
19
  setOperation(operation: DataCubeQueryFilterOperation): void;
20
- setValue(value: DataCubeOperationValue | undefined): void;
20
+ setValue(value: DataCubeOperationValue): void;
21
21
  updateValue(value: unknown): void;
22
22
  }
23
23
  export declare class DataCubeFilterEditorConditionGroupTreeNode extends DataCubeFilterEditorTreeNode {