@finos/legend-extension-dsl-data-quality 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +1 -0
  3. package/lib/components/DSL_DataQuality_ClassElementDriver.d.ts +46 -0
  4. package/lib/components/DSL_DataQuality_ClassElementDriver.d.ts.map +1 -0
  5. package/lib/components/DSL_DataQuality_ClassElementDriver.js +116 -0
  6. package/lib/components/DSL_DataQuality_ClassElementDriver.js.map +1 -0
  7. package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.d.ts +30 -0
  8. package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.d.ts.map +1 -0
  9. package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js +161 -0
  10. package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js.map +1 -0
  11. package/lib/components/DSL_DataQuality_LegendStudioPlugin_Extension.d.ts +25 -0
  12. package/lib/components/DSL_DataQuality_LegendStudioPlugin_Extension.d.ts.map +1 -0
  13. package/lib/components/DSL_DataQuality_LegendStudioPlugin_Extension.js +2 -0
  14. package/lib/components/DSL_DataQuality_LegendStudioPlugin_Extension.js.map +1 -0
  15. package/lib/components/DSL_DataQuality_ServiceElementDriver.d.ts +27 -0
  16. package/lib/components/DSL_DataQuality_ServiceElementDriver.d.ts.map +1 -0
  17. package/lib/components/DSL_DataQuality_ServiceElementDriver.js +41 -0
  18. package/lib/components/DSL_DataQuality_ServiceElementDriver.js.map +1 -0
  19. package/lib/components/DSL_NewDataQualityClassValidationElement.d.ts +19 -0
  20. package/lib/components/DSL_NewDataQualityClassValidationElement.d.ts.map +1 -0
  21. package/lib/components/DSL_NewDataQualityClassValidationElement.js +64 -0
  22. package/lib/components/DSL_NewDataQualityClassValidationElement.js.map +1 -0
  23. package/lib/components/DSL_NewDataQualityServiceValidationElement.d.ts +19 -0
  24. package/lib/components/DSL_NewDataQualityServiceValidationElement.d.ts.map +1 -0
  25. package/lib/components/DSL_NewDataQualityServiceValidationElement.js +41 -0
  26. package/lib/components/DSL_NewDataQualityServiceValidationElement.js.map +1 -0
  27. package/lib/components/DataQualityClassValidationEditor.d.ts +19 -0
  28. package/lib/components/DataQualityClassValidationEditor.d.ts.map +1 -0
  29. package/lib/components/DataQualityClassValidationEditor.js +29 -0
  30. package/lib/components/DataQualityClassValidationEditor.js.map +1 -0
  31. package/lib/components/DataQualityConstraintsSelection.d.ts +39 -0
  32. package/lib/components/DataQualityConstraintsSelection.d.ts.map +1 -0
  33. package/lib/components/DataQualityConstraintsSelection.js +133 -0
  34. package/lib/components/DataQualityConstraintsSelection.js.map +1 -0
  35. package/lib/components/DataQualityDataSpaceBuilder.d.ts +22 -0
  36. package/lib/components/DataQualityDataSpaceBuilder.d.ts.map +1 -0
  37. package/lib/components/DataQualityDataSpaceBuilder.js +101 -0
  38. package/lib/components/DataQualityDataSpaceBuilder.js.map +1 -0
  39. package/lib/components/DataQualityExplorerPanel.d.ts +29 -0
  40. package/lib/components/DataQualityExplorerPanel.d.ts.map +1 -0
  41. package/lib/components/DataQualityExplorerPanel.js +185 -0
  42. package/lib/components/DataQualityExplorerPanel.js.map +1 -0
  43. package/lib/components/DataQualityFilterPanel.d.ts +24 -0
  44. package/lib/components/DataQualityFilterPanel.d.ts.map +1 -0
  45. package/lib/components/DataQualityFilterPanel.js +32 -0
  46. package/lib/components/DataQualityFilterPanel.js.map +1 -0
  47. package/lib/components/DataQualityMappingAndRuntimeBuilder.d.ts +22 -0
  48. package/lib/components/DataQualityMappingAndRuntimeBuilder.d.ts.map +1 -0
  49. package/lib/components/DataQualityMappingAndRuntimeBuilder.js +98 -0
  50. package/lib/components/DataQualityMappingAndRuntimeBuilder.js.map +1 -0
  51. package/lib/components/DataQualityResultPanel.d.ts +22 -0
  52. package/lib/components/DataQualityResultPanel.d.ts.map +1 -0
  53. package/lib/components/DataQualityResultPanel.js +110 -0
  54. package/lib/components/DataQualityResultPanel.js.map +1 -0
  55. package/lib/components/DataQualityResultValues.d.ts +24 -0
  56. package/lib/components/DataQualityResultValues.d.ts.map +1 -0
  57. package/lib/components/DataQualityResultValues.js +31 -0
  58. package/lib/components/DataQualityResultValues.js.map +1 -0
  59. package/lib/components/DataQualityServiceValidationEditor.d.ts +19 -0
  60. package/lib/components/DataQualityServiceValidationEditor.d.ts.map +1 -0
  61. package/lib/components/DataQualityServiceValidationEditor.js +29 -0
  62. package/lib/components/DataQualityServiceValidationEditor.js.map +1 -0
  63. package/lib/components/DataQualitySideBar.d.ts +40 -0
  64. package/lib/components/DataQualitySideBar.d.ts.map +1 -0
  65. package/lib/components/DataQualitySideBar.js +78 -0
  66. package/lib/components/DataQualitySideBar.js.map +1 -0
  67. package/lib/components/DataQualityStructuralValidationsPanel.d.ts +22 -0
  68. package/lib/components/DataQualityStructuralValidationsPanel.d.ts.map +1 -0
  69. package/lib/components/DataQualityStructuralValidationsPanel.js +50 -0
  70. package/lib/components/DataQualityStructuralValidationsPanel.js.map +1 -0
  71. package/lib/components/DataQualityTabs.d.ts +22 -0
  72. package/lib/components/DataQualityTabs.d.ts.map +1 -0
  73. package/lib/components/DataQualityTabs.js +58 -0
  74. package/lib/components/DataQualityTabs.js.map +1 -0
  75. package/lib/components/DataQualityValidationEditor.d.ts +23 -0
  76. package/lib/components/DataQualityValidationEditor.d.ts.map +1 -0
  77. package/lib/components/DataQualityValidationEditor.js +24 -0
  78. package/lib/components/DataQualityValidationEditor.js.map +1 -0
  79. package/lib/components/constants/DataQualityConstants.d.ts +24 -0
  80. package/lib/components/constants/DataQualityConstants.d.ts.map +1 -0
  81. package/lib/components/constants/DataQualityConstants.js +25 -0
  82. package/lib/components/constants/DataQualityConstants.js.map +1 -0
  83. package/lib/components/index.d.ts +19 -0
  84. package/lib/components/index.d.ts.map +1 -0
  85. package/lib/components/index.js +19 -0
  86. package/lib/components/index.js.map +1 -0
  87. package/lib/components/states/ConstraintState.d.ts +30 -0
  88. package/lib/components/states/ConstraintState.d.ts.map +1 -0
  89. package/lib/components/states/ConstraintState.js +55 -0
  90. package/lib/components/states/ConstraintState.js.map +1 -0
  91. package/lib/components/states/DataQualityClassValidationState.d.ts +43 -0
  92. package/lib/components/states/DataQualityClassValidationState.d.ts.map +1 -0
  93. package/lib/components/states/DataQualityClassValidationState.js +162 -0
  94. package/lib/components/states/DataQualityClassValidationState.js.map +1 -0
  95. package/lib/components/states/DataQualityGraphFetchTreeState.d.ts +34 -0
  96. package/lib/components/states/DataQualityGraphFetchTreeState.d.ts.map +1 -0
  97. package/lib/components/states/DataQualityGraphFetchTreeState.js +70 -0
  98. package/lib/components/states/DataQualityGraphFetchTreeState.js.map +1 -0
  99. package/lib/components/states/DataQualityQueryBuilderState.d.ts +19 -0
  100. package/lib/components/states/DataQualityQueryBuilderState.d.ts.map +1 -0
  101. package/lib/components/states/DataQualityQueryBuilderState.js +19 -0
  102. package/lib/components/states/DataQualityQueryBuilderState.js.map +1 -0
  103. package/lib/components/states/DataQualityResultState.d.ts +44 -0
  104. package/lib/components/states/DataQualityResultState.d.ts.map +1 -0
  105. package/lib/components/states/DataQualityResultState.js +154 -0
  106. package/lib/components/states/DataQualityResultState.js.map +1 -0
  107. package/lib/components/states/DataQualityServiceValidationState.d.ts +25 -0
  108. package/lib/components/states/DataQualityServiceValidationState.d.ts.map +1 -0
  109. package/lib/components/states/DataQualityServiceValidationState.js +33 -0
  110. package/lib/components/states/DataQualityServiceValidationState.js.map +1 -0
  111. package/lib/components/states/DataQualityState.d.ts +67 -0
  112. package/lib/components/states/DataQualityState.d.ts.map +1 -0
  113. package/lib/components/states/DataQualityState.js +204 -0
  114. package/lib/components/states/DataQualityState.js.map +1 -0
  115. package/lib/components/utils/DataQualityGraphFetchTreeUtil.d.ts +51 -0
  116. package/lib/components/utils/DataQualityGraphFetchTreeUtil.d.ts.map +1 -0
  117. package/lib/components/utils/DataQualityGraphFetchTreeUtil.js +321 -0
  118. package/lib/components/utils/DataQualityGraphFetchTreeUtil.js.map +1 -0
  119. package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts +29 -0
  120. package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts.map +1 -0
  121. package/lib/graph/metamodel/DSL_DataQuality_HashUtils.js +30 -0
  122. package/lib/graph/metamodel/DSL_DataQuality_HashUtils.js.map +1 -0
  123. package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.d.ts +22 -0
  124. package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.d.ts.map +1 -0
  125. package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.js +31 -0
  126. package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.js.map +1 -0
  127. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.d.ts +26 -0
  128. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.d.ts.map +1 -0
  129. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js +44 -0
  130. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js.map +1 -0
  131. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.d.ts +47 -0
  132. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.d.ts.map +1 -0
  133. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js +75 -0
  134. package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js.map +1 -0
  135. package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.d.ts +20 -0
  136. package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.d.ts.map +1 -0
  137. package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.js +20 -0
  138. package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.js.map +1 -0
  139. package/lib/graph-manager/DSL_DataQuality_GraphManagerPreset.d.ts +20 -0
  140. package/lib/graph-manager/DSL_DataQuality_GraphManagerPreset.d.ts.map +1 -0
  141. package/lib/graph-manager/DSL_DataQuality_GraphManagerPreset.js +30 -0
  142. package/lib/graph-manager/DSL_DataQuality_GraphManagerPreset.js.map +1 -0
  143. package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.d.ts +26 -0
  144. package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.d.ts.map +1 -0
  145. package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.js +57 -0
  146. package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.js.map +1 -0
  147. package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.d.ts +7 -0
  148. package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.d.ts.map +1 -0
  149. package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.js +42 -0
  150. package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.js.map +1 -0
  151. package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.d.ts +24 -0
  152. package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.d.ts.map +1 -0
  153. package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.js +98 -0
  154. package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.js.map +1 -0
  155. package/lib/graph-manager/index.d.ts +19 -0
  156. package/lib/graph-manager/index.d.ts.map +1 -0
  157. package/lib/graph-manager/index.js +19 -0
  158. package/lib/graph-manager/index.js.map +1 -0
  159. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.d.ts +27 -0
  160. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.d.ts.map +1 -0
  161. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.js +21 -0
  162. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.js.map +1 -0
  163. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.d.ts +25 -0
  164. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.d.ts.map +1 -0
  165. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js +140 -0
  166. package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js.map +1 -0
  167. package/lib/graph-manager/protocol/pure/DSL_DataQuality_buildGraphManagerExtension.d.ts +18 -0
  168. package/lib/graph-manager/protocol/pure/DSL_DataQuality_buildGraphManagerExtension.d.ts.map +1 -0
  169. package/lib/graph-manager/protocol/pure/DSL_DataQuality_buildGraphManagerExtension.js +20 -0
  170. package/lib/graph-manager/protocol/pure/DSL_DataQuality_buildGraphManagerExtension.js.map +1 -0
  171. package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.d.ts +41 -0
  172. package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.d.ts.map +1 -0
  173. package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.js +95 -0
  174. package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.js.map +1 -0
  175. package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.d.ts +46 -0
  176. package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.d.ts.map +1 -0
  177. package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.js +76 -0
  178. package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.js.map +1 -0
  179. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityPropertyGraphFetchTree.d.ts +22 -0
  180. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityPropertyGraphFetchTree.d.ts.map +1 -0
  181. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityPropertyGraphFetchTree.js +32 -0
  182. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityPropertyGraphFetchTree.js.map +1 -0
  183. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityRootGraphFetchTree.d.ts +22 -0
  184. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityRootGraphFetchTree.d.ts.map +1 -0
  185. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityRootGraphFetchTree.js +31 -0
  186. package/lib/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityRootGraphFetchTree.js.map +1 -0
  187. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationBuilderHelper.d.ts +24 -0
  188. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationBuilderHelper.d.ts.map +1 -0
  189. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationBuilderHelper.js +92 -0
  190. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationBuilderHelper.js.map +1 -0
  191. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationSerializer.d.ts +20 -0
  192. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationSerializer.d.ts.map +1 -0
  193. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationSerializer.js +56 -0
  194. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationSerializer.js.map +1 -0
  195. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationTransformer.d.ts +22 -0
  196. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationTransformer.d.ts.map +1 -0
  197. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationTransformer.js +70 -0
  198. package/lib/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationTransformer.js.map +1 -0
  199. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.d.ts +29 -0
  200. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.d.ts.map +1 -0
  201. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.js +80 -0
  202. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.js.map +1 -0
  203. package/lib/index.css +17 -0
  204. package/lib/index.css.map +1 -0
  205. package/lib/package.json +87 -0
  206. package/package.json +87 -0
  207. package/src/components/DSL_DataQuality_ClassElementDriver.tsx +175 -0
  208. package/src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx +220 -0
  209. package/src/components/DSL_DataQuality_LegendStudioPlugin_Extension.ts +39 -0
  210. package/src/components/DSL_DataQuality_ServiceElementDriver.tsx +57 -0
  211. package/src/components/DSL_NewDataQualityClassValidationElement.tsx +156 -0
  212. package/src/components/DSL_NewDataQualityServiceValidationElement.tsx +74 -0
  213. package/src/components/DataQualityClassValidationEditor.tsx +49 -0
  214. package/src/components/DataQualityConstraintsSelection.tsx +376 -0
  215. package/src/components/DataQualityDataSpaceBuilder.tsx +274 -0
  216. package/src/components/DataQualityExplorerPanel.tsx +584 -0
  217. package/src/components/DataQualityFilterPanel.tsx +50 -0
  218. package/src/components/DataQualityMappingAndRuntimeBuilder.tsx +224 -0
  219. package/src/components/DataQualityResultPanel.tsx +335 -0
  220. package/src/components/DataQualityResultValues.tsx +61 -0
  221. package/src/components/DataQualityServiceValidationEditor.tsx +49 -0
  222. package/src/components/DataQualitySideBar.tsx +216 -0
  223. package/src/components/DataQualityStructuralValidationsPanel.tsx +105 -0
  224. package/src/components/DataQualityTabs.tsx +104 -0
  225. package/src/components/DataQualityValidationEditor.tsx +52 -0
  226. package/src/components/constants/DataQualityConstants.ts +24 -0
  227. package/src/components/index.ts +19 -0
  228. package/src/components/states/ConstraintState.ts +70 -0
  229. package/src/components/states/DataQualityClassValidationState.ts +308 -0
  230. package/src/components/states/DataQualityGraphFetchTreeState.ts +125 -0
  231. package/src/components/states/DataQualityQueryBuilderState.ts +19 -0
  232. package/src/components/states/DataQualityResultState.ts +217 -0
  233. package/src/components/states/DataQualityServiceValidationState.ts +56 -0
  234. package/src/components/states/DataQualityState.ts +354 -0
  235. package/src/components/utils/DataQualityGraphFetchTreeUtil.ts +592 -0
  236. package/src/graph/metamodel/DSL_DataQuality_HashUtils.ts +29 -0
  237. package/src/graph/metamodel/DSL_DataQuality_PureGraphPlugin.ts +36 -0
  238. package/src/graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.ts +55 -0
  239. package/src/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.ts +107 -0
  240. package/src/graph-manager/DSL_DataQuality_GraphManagerHelper.ts +46 -0
  241. package/src/graph-manager/DSL_DataQuality_GraphManagerPreset.ts +31 -0
  242. package/src/graph-manager/DSL_DataQuality_GraphModifierHelper.ts +113 -0
  243. package/src/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.ts +59 -0
  244. package/src/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.ts +153 -0
  245. package/src/graph-manager/index.ts +19 -0
  246. package/src/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.ts +59 -0
  247. package/src/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.ts +283 -0
  248. package/src/graph-manager/protocol/pure/DSL_DataQuality_buildGraphManagerExtension.ts +27 -0
  249. package/src/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.ts +246 -0
  250. package/src/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.ts +103 -0
  251. package/src/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityPropertyGraphFetchTree.ts +37 -0
  252. package/src/graph-manager/protocol/pure/v1/model/graphFetch/V1_DataQualityRootGraphFetchTree.ts +36 -0
  253. package/src/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationBuilderHelper.ts +241 -0
  254. package/src/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationSerializer.ts +113 -0
  255. package/src/graph-manager/protocol/pure/v1/transformation/V1_ValueSpecificationTransformer.ts +139 -0
  256. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.ts +186 -0
  257. package/style/_data-quality-validation-builder.scss +1660 -0
  258. package/style/index.scss +67 -0
  259. package/tsconfig.json +137 -0
  260. package/tsconfig.package.json +9 -0
@@ -0,0 +1,101 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2020-present, Goldman Sachs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { observer } from 'mobx-react-lite';
18
+ import { useApplicationStore } from '@finos/legend-application';
19
+ import { useEffect } from 'react';
20
+ import { guaranteeType } from '@finos/legend-shared';
21
+ import { flowResult } from 'mobx';
22
+ import { getMappingCompatibleRuntimes, PackageableElementExplicitReference, RuntimePointer, } from '@finos/legend-graph';
23
+ import { DataQualityClassSelector } from './DataQualitySideBar.js';
24
+ import { CheckIcon, createFilter, MenuContentItemIcon, MenuContentItemLabel, MoreHorizontalIcon, PlayIcon, CustomSelectorInput, ControlledDropdownMenu, MenuContent, MenuContentItem, PURE_RuntimeIcon, } from '@finos/legend-art';
25
+ import { resolveUsableDataSpaceClasses } from '@finos/legend-extension-dsl-data-space/graph';
26
+ import { DataSpaceIcon } from '@finos/legend-extension-dsl-data-space/application';
27
+ import { buildDataSpaceOption, buildExecutionContextOption, formatDataSpaceOptionLabel, } from '@finos/legend-extension-dsl-data-space/application-query';
28
+ import { buildRuntimeValueOption, getRuntimeOptionFormatter, } from '@finos/legend-query-builder';
29
+ export const DataQualityDataSpaceBuilderSetupPanelContent = observer((props) => {
30
+ const { dataQualityState } = props;
31
+ const { dataQualityQueryBuilderState } = dataQualityState;
32
+ const dataSpace = dataQualityState.dataSpace;
33
+ if (!dataSpace) {
34
+ return null;
35
+ }
36
+ const applicationStore = useApplicationStore();
37
+ // data space
38
+ const dataSpaceOptions = dataQualityState.dataSpaces.map(buildDataSpaceOption);
39
+ const selectedDataSpaceOption = {
40
+ label: dataSpace.title ?? dataSpace.name,
41
+ value: {
42
+ title: dataSpace.title,
43
+ name: dataSpace.name,
44
+ path: dataSpace.path,
45
+ defaultExecutionContext: dataSpace.defaultExecutionContext.name,
46
+ },
47
+ };
48
+ const executionContextOptions = dataSpace.executionContexts.map(buildExecutionContextOption);
49
+ const runtimeOptions = getMappingCompatibleRuntimes(dataQualityQueryBuilderState.executionContextState.mapping, dataQualityState.graphManagerState.usableRuntimes)
50
+ .map((rt) => new RuntimePointer(PackageableElementExplicitReference.create(rt)))
51
+ .map(buildRuntimeValueOption);
52
+ const selectedRuntimeOption = dataQualityQueryBuilderState
53
+ .executionContextState.runtimeValue
54
+ ? buildRuntimeValueOption(dataQualityQueryBuilderState.executionContextState.runtimeValue)
55
+ : null;
56
+ const classes = resolveUsableDataSpaceClasses(dataSpace, dataQualityQueryBuilderState.executionContextState.mapping, dataQualityState.graphManagerState);
57
+ const onDataSpaceOptionChange = (option) => {
58
+ dataQualityState.onDataSpaceChange(option.value);
59
+ dataQualityState.updateElementOnDataSpaceChange();
60
+ };
61
+ const selectedExecutionContextOption = buildExecutionContextOption(dataQualityState.executionContext);
62
+ const onExecutionContextOptionChange = (option) => {
63
+ if (option.value === dataQualityState.executionContext) {
64
+ return;
65
+ }
66
+ dataQualityState.setExecutionContext(option.value);
67
+ dataQualityState.propagateExecutionContextChange(option.value);
68
+ dataQualityState.updateElementOnExecutionContextChange(option.value.name);
69
+ dataQualityState.onExecutionContextChange?.(option.value);
70
+ };
71
+ const changeRuntime = (option) => {
72
+ if (option.value ===
73
+ dataQualityQueryBuilderState.executionContextState.runtimeValue) {
74
+ return;
75
+ }
76
+ dataQualityQueryBuilderState.changeRuntime(option.value);
77
+ dataQualityState.onRuntimeChange?.(option.value);
78
+ };
79
+ const runtimeFilterOption = createFilter({
80
+ ignoreCase: true,
81
+ ignoreAccents: false,
82
+ stringify: (option) => guaranteeType(option.value, RuntimePointer).packageableRuntime.value
83
+ .path,
84
+ });
85
+ useEffect(() => {
86
+ flowResult(dataQualityState.loadDataSpaces()).catch(applicationStore.alertUnhandledError);
87
+ }, [dataQualityState, applicationStore]);
88
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "data-quality-validation__setup__config-group", children: [_jsxs("div", { className: "data-quality-validation__setup__config-group__header", children: [_jsx("div", { className: "data-quality-validation__setup__config-group__header__title", children: "data space execution context" }), _jsx(ControlledDropdownMenu, { className: "data-quality-validation__setup__config-group__header__dropdown-trigger", title: "Show Settings...", content: _jsx(MenuContent, { children: _jsxs(MenuContentItem, { onClick: () => dataQualityState.setShowRuntimeSelector(!dataQualityState.showRuntimeSelector), children: [_jsx(MenuContentItemIcon, { children: dataQualityState.showRuntimeSelector ? (_jsx(CheckIcon, {})) : null }), _jsx(MenuContentItemLabel, { children: "Show Runtime Selector" })] }) }), menuProps: {
89
+ anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
90
+ transformOrigin: { vertical: 'top', horizontal: 'right' },
91
+ }, children: _jsx(MoreHorizontalIcon, {}) })] }), _jsxs("div", { className: "data-quality-validation__setup__config-group__content", children: [_jsxs("div", { className: "data-quality-validation__setup__config-group__item", children: [_jsx("div", { className: "btn--sm data-quality-validation__setup__config-group__item__label", title: "data space", children: _jsx(DataSpaceIcon, {}) }), _jsx(CustomSelectorInput, { className: "panel__content__form__section__dropdown data-quality-validation__setup__config-group__item__selector", options: dataSpaceOptions, isLoading: dataQualityState.loadDataSpacesState.isInProgress, onChange: onDataSpaceOptionChange, value: selectedDataSpaceOption, placeholder: "Search for data space...", escapeClearsValue: true, darkMode: !applicationStore.layoutService
92
+ .TEMPORARY__isLightColorThemeEnabled, formatOptionLabel: formatDataSpaceOptionLabel })] }), _jsxs("div", { className: "data-quality-validation__setup__config-group__item", children: [_jsx("div", { className: "btn--sm data-quality-validation__setup__config-group__item__label", title: "execution context", children: _jsx(PlayIcon, { className: "data-quality-validation__setup__data-space__icon__execution-context" }) }), _jsx(CustomSelectorInput, { className: "panel__content__form__section__dropdown data-quality-validation__setup__config-group__item__selector", placeholder: "Choose an execution context...", options: executionContextOptions, disabled: executionContextOptions.length < 1 ||
93
+ (executionContextOptions.length === 1 &&
94
+ Boolean(selectedExecutionContextOption)), onChange: onExecutionContextOptionChange, value: selectedExecutionContextOption, darkMode: !applicationStore.layoutService
95
+ .TEMPORARY__isLightColorThemeEnabled })] }), dataQualityState.showRuntimeSelector && (_jsxs("div", { className: "data-quality-validation__setup__config-group__item", children: [_jsx("div", { className: "btn--sm data-quality-validation__setup__config-group__item__label", title: "runtime", children: _jsx(PURE_RuntimeIcon, {}) }), _jsx(CustomSelectorInput, { className: "panel__content__form__section__dropdown data-quality-validation__setup__config-group__item__selector", placeholder: "Choose a runtime...", noMatchMessage: "No compatible runtime found for specified execution context", options: runtimeOptions, onChange: changeRuntime, value: selectedRuntimeOption, darkMode: !applicationStore.layoutService
96
+ .TEMPORARY__isLightColorThemeEnabled, filterOption: runtimeFilterOption, formatOptionLabel: getRuntimeOptionFormatter({
97
+ darkMode: !applicationStore.layoutService
98
+ .TEMPORARY__isLightColorThemeEnabled,
99
+ }), disabled: true })] }))] })] }), _jsx(DataQualityClassSelector, { dataQualityState: dataQualityState, classes: classes, noMatchMessage: "No compatible class found for specified execution context" })] }));
100
+ });
101
+ //# sourceMappingURL=DataQualityDataSpaceBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityDataSpaceBuilder.js","sourceRoot":"","sources":["../../src/components/DataQualityDataSpaceBuilder.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import type { DataQualityState } from './states/DataQualityState.js';
17
+ import { type QueryBuilderExplorerTreeNodeData } from '@finos/legend-query-builder';
18
+ import { type TreeNodeContainerProps } from '@finos/legend-art';
19
+ export declare const QueryBuilderExplorerTreeNodeContainer: ((props: TreeNodeContainerProps<QueryBuilderExplorerTreeNodeData, {
20
+ dataQualityState: DataQualityState;
21
+ }>) => import("react/jsx-runtime").JSX.Element | null) & {
22
+ displayName: string;
23
+ };
24
+ export declare const DataQualityExplorerPanel: ((props: {
25
+ dataQualityState: DataQualityState;
26
+ }) => import("react/jsx-runtime").JSX.Element) & {
27
+ displayName: string;
28
+ };
29
+ //# sourceMappingURL=DataQualityExplorerPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityExplorerPanel.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityExplorerPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAGrE,OAAO,EAEL,KAAK,gCAAgC,EAatC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,sBAAsB,EAuB5B,MAAM,mBAAmB,CAAC;AAW3B,eAAO,MAAM,qCAAqC,WAEvC,sBAAsB,CAC3B,gCAAgC,EAChC;IACE,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CACF;;CAoOJ,CAAC;AA4IF,eAAO,MAAM,wBAAwB,WAC3B;IAAE,gBAAgB,EAAE,gBAAgB,CAAA;CAAE;;CAoI/C,CAAC"}
@@ -0,0 +1,185 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2020-present, Goldman Sachs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { useEffect, useState } from 'react';
18
+ import { observer } from 'mobx-react-lite';
19
+ import { useDrag } from 'react-dnd';
20
+ import { useApplicationStore } from '@finos/legend-application';
21
+ import { guaranteeNonNullable, prettyCONSTName } from '@finos/legend-shared';
22
+ import { flowResult } from 'mobx';
23
+ import { DATA_QUALITY_VALIDATION_TEST_ID } from './constants/DataQualityConstants.js';
24
+ import { QUERY_BUILDER_EXPLORER_TREE_DND_TYPE, QueryBuilderExplorerTreePropertyNodeData, QueryBuilderExplorerTreeRootNodeData, QueryBuilderExplorerTreeSubTypeNodeData, checkForDeprecatedNode, getQueryBuilderPropertyNodeData, getQueryBuilderSubTypeNodeData, QueryBuilderPropertyInfoTooltip, QueryBuilderRootClassInfoTooltip, QueryBuilderSubclassInfoTooltip, renderPropertyTypeIcon, getQueryBuilderExplorerTreeNodeSortRank, } from '@finos/legend-query-builder';
25
+ import { CheckIcon, ChevronDownIcon, ChevronRightIcon, clsx, CompressIcon, InfoCircleIcon, MenuContentItemIcon, MenuContentItemLabel, MoreVerticalIcon, PanelHeaderActions, BlankPanelContent, DragPreviewLayer, MenuContent, MenuContentItem, PanelHeader, PanelHeaderActionItem, PanelLoadingIndicator, PURE_ClassIcon, TreeView, useDragPreviewLayer, ControlledDropdownMenu, } from '@finos/legend-art';
26
+ import { Class, DerivedProperty, Enumeration, PrimitiveType, TYPE_CAST_TOKEN, getAllClassDerivedProperties, getAllClassProperties, } from '@finos/legend-graph';
27
+ export const QueryBuilderExplorerTreeNodeContainer = observer((props) => {
28
+ const { node, level, stepPaddingInRem, onNodeSelect, innerProps } = props;
29
+ const { dataQualityState } = innerProps;
30
+ const { dataQualityQueryBuilderState } = dataQualityState;
31
+ const [isSelectedFromContextMenu] = useState(false);
32
+ const explorerState = dataQualityQueryBuilderState.explorerState;
33
+ const [, dragConnector, dragPreviewConnector] = useDrag(() => ({
34
+ type: node.type instanceof Enumeration
35
+ ? QUERY_BUILDER_EXPLORER_TREE_DND_TYPE.ENUM_PROPERTY
36
+ : node.type instanceof Class
37
+ ? QUERY_BUILDER_EXPLORER_TREE_DND_TYPE.CLASS_PROPERTY
38
+ : QUERY_BUILDER_EXPLORER_TREE_DND_TYPE.PRIMITIVE_PROPERTY,
39
+ item: () => node instanceof QueryBuilderExplorerTreeSubTypeNodeData
40
+ ? {}
41
+ : { node },
42
+ }), [node]);
43
+ useDragPreviewLayer(dragPreviewConnector);
44
+ const isExpandable = Boolean(node.childrenIds.length);
45
+ const isDerivedProperty = node instanceof QueryBuilderExplorerTreePropertyNodeData &&
46
+ node.property instanceof DerivedProperty;
47
+ const isMultiple = (node instanceof QueryBuilderExplorerTreePropertyNodeData &&
48
+ (node.property.multiplicity.upperBound === undefined ||
49
+ node.property.multiplicity.upperBound > 1)) ||
50
+ (node instanceof QueryBuilderExplorerTreeSubTypeNodeData &&
51
+ (node.multiplicity.upperBound === undefined ||
52
+ node.multiplicity.upperBound > 1));
53
+ const allowPreview = node.mappingData.mapped &&
54
+ node instanceof QueryBuilderExplorerTreePropertyNodeData &&
55
+ node.type instanceof PrimitiveType &&
56
+ !node.isPartOfDerivedPropertyBranch;
57
+ const nodeExpandIcon = isExpandable ? (node.isOpen ? (_jsx(ChevronDownIcon, {})) : (_jsx(ChevronRightIcon, {}))) : (_jsx("div", {}));
58
+ const propertyName = explorerState.humanizePropertyName
59
+ ? node instanceof QueryBuilderExplorerTreeSubTypeNodeData
60
+ ? TYPE_CAST_TOKEN + prettyCONSTName(node.label)
61
+ : prettyCONSTName(node.label)
62
+ : node instanceof QueryBuilderExplorerTreeSubTypeNodeData
63
+ ? TYPE_CAST_TOKEN + node.label
64
+ : node.label;
65
+ const selectNode = () => onNodeSelect?.(node);
66
+ if (!node.mappingData.mapped &&
67
+ // NOTE: we always want to show at least the root node
68
+ !(node instanceof QueryBuilderExplorerTreeRootNodeData) &&
69
+ !explorerState.showUnmappedProperties) {
70
+ return null;
71
+ }
72
+ return (_jsxs("div", { className: clsx('data-quality-tree-view__node__container data-quality-validation-explorer-tree__node__container', {
73
+ 'data-quality-validation-explorer-tree__node__container--selected-from-context-menu': isSelectedFromContextMenu,
74
+ 'data-quality-validation-explorer-tree__node__container--unmapped': !node.mappingData.mapped,
75
+ 'data-quality-validation-explorer-tree__node__container--selected': node.isSelected,
76
+ }), title: !node.mappingData.mapped
77
+ ? node instanceof QueryBuilderExplorerTreeRootNodeData
78
+ ? 'Root class is not mapped'
79
+ : 'Property is not mapped'
80
+ : undefined, onClick: selectNode, ref: node.mappingData.mapped ? dragConnector : undefined, style: {
81
+ paddingLeft: `${(level - 1) * (stepPaddingInRem ?? 1) + 0.5}rem`,
82
+ display: 'flex',
83
+ }, children: [node instanceof QueryBuilderExplorerTreeRootNodeData && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "data-quality-tree-view__node__icon data-quality-validation-explorer-tree__node__icon", children: [_jsx("div", { className: "data-quality-validation-explorer-tree__expand-icon", children: nodeExpandIcon }), _jsx("div", { className: "data-quality-validation-explorer-tree__type-icon", children: _jsx(PURE_ClassIcon, {}) })] }), _jsx("div", { className: "data-quality-tree-view__node__label data-quality-validation-explorer-tree__node__label data-quality-validation-explorer-tree__node__label--with-action", children: node.label }), _jsx("div", { className: "data-quality-validation-explorer-tree__node__actions", children: _jsx(QueryBuilderRootClassInfoTooltip, { _class: guaranteeNonNullable(dataQualityQueryBuilderState.class), children: _jsx("div", { className: "data-quality-validation-explorer-tree__node__action data-quality-validation-explorer-tree__node__info", "data-testid": DATA_QUALITY_VALIDATION_TEST_ID.DATA_QUALITY_VALIDATION_TOOLTIP_ICON, children: _jsx(InfoCircleIcon, {}) }) }) })] })), (node instanceof QueryBuilderExplorerTreePropertyNodeData ||
84
+ node instanceof QueryBuilderExplorerTreeSubTypeNodeData) && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "data-quality-tree-view__node__icon data-quality-validation-explorer-tree__node__icon", ref: node.elementRef, children: [_jsx("div", { className: "data-quality-validation-explorer-tree__expand-icon", children: nodeExpandIcon }), _jsx("div", { className: "data-quality-validation-explorer-tree__type-icon", children: renderPropertyTypeIcon(node.type) })] }), _jsxs("div", { className: clsx('data-quality-tree-view__node__label data-quality-validation-explorer-tree__node__label data-quality-validation-explorer-tree__node__label--with-action', {
85
+ 'data-quality-validation-explorer-tree__node__label--with-preview': allowPreview,
86
+ }, {
87
+ 'data-quality-validation-explorer-tree__node__label--highlight': node.isHighlighting,
88
+ }), onAnimationEnd: () => node.setIsHighlighting(false), children: [_jsx("div", { className: clsx('data-quality-validation-explorer-tree__node__label--property__name', {
89
+ 'data-quality-validation-explorer-tree__node__label--deprecated': checkForDeprecatedNode(node, explorerState.queryBuilderState.graphManagerState.graph, explorerState.nonNullableTreeData),
90
+ }), children: propertyName }), isDerivedProperty && (_jsx("div", { className: "data-quality-validation-explorer-tree__node__label__derived-property", title: "Property is derived and may require user to specify parameter values", children: "(...)" })), isMultiple && (_jsx("div", { className: "data-quality-validation-explorer-tree__node__label__multiple", title: "Multiple values of this property can cause row explosion", children: "*" }))] }), _jsxs("div", { className: "data-quality-validation-explorer-tree__node__actions", children: [node instanceof QueryBuilderExplorerTreePropertyNodeData && (_jsx(QueryBuilderPropertyInfoTooltip, { title: propertyName, property: node.property, path: node.id, isMapped: node.mappingData.mapped, type: node.type, children: _jsx("div", { className: "data-quality-validation-explorer-tree__node__action data-quality-validation-explorer-tree__node__info", "data-testid": DATA_QUALITY_VALIDATION_TEST_ID.DATA_QUALITY_VALIDATION_TOOLTIP_ICON, children: _jsx(InfoCircleIcon, {}) }) })), node instanceof QueryBuilderExplorerTreeSubTypeNodeData && (_jsx(QueryBuilderSubclassInfoTooltip, { subclass: node.subclass, path: node.id, isMapped: node.mappingData.mapped, multiplicity: node.multiplicity, children: _jsx("div", { className: "data-quality-validation-explorer-tree__node__action data-quality-validation-explorer-tree__node__info", "data-testid": DATA_QUALITY_VALIDATION_TEST_ID.DATA_QUALITY_VALIDATION_TOOLTIP_ICON, children: _jsx(InfoCircleIcon, {}) }) }))] })] }))] }));
91
+ });
92
+ const QueryBuilderExplorerTreeNodeView = observer((props) => {
93
+ const { node, level, onNodeSelect, getChildNodes, stepPaddingInRem, innerProps, } = props;
94
+ const { dataQualityState } = innerProps;
95
+ const { dataQualityQueryBuilderState } = dataQualityState;
96
+ if (!node.mappingData.mapped &&
97
+ // NOTE: we always want to show at least the root node
98
+ !(node instanceof QueryBuilderExplorerTreeRootNodeData) &&
99
+ !dataQualityQueryBuilderState.explorerState.showUnmappedProperties) {
100
+ return null;
101
+ }
102
+ return (_jsxs("div", { className: "data-quality-tree-view__node__block", children: [_jsx(QueryBuilderExplorerTreeNodeContainer, { node: node, level: level + 1, stepPaddingInRem: stepPaddingInRem, onNodeSelect: onNodeSelect, innerProps: innerProps }), node.isOpen &&
103
+ getChildNodes(node).map((childNode) => (_jsx(QueryBuilderExplorerTreeNodeView, { node: childNode, level: level + 1, onNodeSelect: onNodeSelect, getChildNodes: getChildNodes, innerProps: innerProps }, childNode.id)))] }));
104
+ });
105
+ const QueryBuilderExplorerTree = observer((props) => {
106
+ const { dataQualityState } = props;
107
+ const { dataQualityQueryBuilderState } = dataQualityState;
108
+ const explorerState = dataQualityQueryBuilderState.explorerState;
109
+ const treeData = explorerState.nonNullableTreeData;
110
+ const onNodeSelect = (node) => {
111
+ if (node.childrenIds.length) {
112
+ node.isOpen = !node.isOpen;
113
+ if (node.isOpen &&
114
+ node instanceof QueryBuilderExplorerTreePropertyNodeData &&
115
+ node.type instanceof Class) {
116
+ getAllClassProperties(node.type)
117
+ .concat(getAllClassDerivedProperties(node.type))
118
+ .forEach((property) => {
119
+ const propertyTreeNodeData = getQueryBuilderPropertyNodeData(property, node, guaranteeNonNullable(explorerState.mappingModelCoverageAnalysisResult));
120
+ if (propertyTreeNodeData) {
121
+ treeData.nodes.set(propertyTreeNodeData.id, propertyTreeNodeData);
122
+ }
123
+ });
124
+ node.type._subclasses.forEach((subclass) => {
125
+ const subTypeTreeNodeData = getQueryBuilderSubTypeNodeData(subclass, node, guaranteeNonNullable(explorerState.mappingModelCoverageAnalysisResult));
126
+ treeData.nodes.set(subTypeTreeNodeData.id, subTypeTreeNodeData);
127
+ });
128
+ }
129
+ }
130
+ explorerState.refreshTree();
131
+ };
132
+ const getChildNodes = (node) => {
133
+ const dataToReturn = node.childrenIds
134
+ .map((id) => treeData.nodes.get(id))
135
+ .filter((childNode) => childNode instanceof QueryBuilderExplorerTreeSubTypeNodeData ||
136
+ childNode instanceof QueryBuilderExplorerTreePropertyNodeData)
137
+ // simple properties come first
138
+ .sort((a, b) => a.label.localeCompare(b.label))
139
+ .sort((a, b) => getQueryBuilderExplorerTreeNodeSortRank(b) -
140
+ getQueryBuilderExplorerTreeNodeSortRank(a));
141
+ return dataToReturn;
142
+ };
143
+ return (_jsx(TreeView, { components: {
144
+ TreeNodeContainer: QueryBuilderExplorerTreeNodeContainer,
145
+ TreeNodeView: QueryBuilderExplorerTreeNodeView,
146
+ }, className: "data-quality-validation-explorer-tree__root", treeData: treeData, onNodeSelect: onNodeSelect, getChildNodes: getChildNodes, innerProps: {
147
+ dataQualityState,
148
+ } }));
149
+ });
150
+ export const DataQualityExplorerPanel = observer((props) => {
151
+ const { dataQualityState } = props;
152
+ const { dataQualityQueryBuilderState } = dataQualityState;
153
+ const explorerState = dataQualityQueryBuilderState.explorerState;
154
+ const applicationStore = useApplicationStore();
155
+ const collapseTree = () => {
156
+ if (explorerState.treeData) {
157
+ Array.from(explorerState.treeData.nodes.values()).forEach((node) => {
158
+ node.isOpen = false;
159
+ });
160
+ explorerState.refreshTree();
161
+ }
162
+ };
163
+ const toggleShowUnmappedProperties = () => explorerState.setShowUnmappedProperties(!explorerState.showUnmappedProperties);
164
+ const toggleHumanizePropertyName = () => explorerState.setHumanizePropertyName(!explorerState.humanizePropertyName);
165
+ const toggleHighlightUsedProperties = () => explorerState.setHighlightUsedProperties(!explorerState.highlightUsedProperties);
166
+ useEffect(() => {
167
+ flowResult(explorerState.analyzeMappingModelCoverage()).catch((error) => {
168
+ applicationStore.alertUnhandledError(error);
169
+ });
170
+ }, [
171
+ applicationStore,
172
+ explorerState,
173
+ dataQualityQueryBuilderState.executionContextState.mapping,
174
+ ]);
175
+ return (_jsxs("div", { "data-testid": DATA_QUALITY_VALIDATION_TEST_ID.DATA_QUALITY_VALIDATION_EXPLORER, className: clsx('panel data-quality-validation__explorer', {
176
+ backdrop__element: applicationStore.layoutService.showBackdrop,
177
+ }), children: [_jsx(PanelHeader, { title: "explorer", children: _jsxs(PanelHeaderActions, { children: [_jsx(PanelHeaderActionItem, { onClick: collapseTree, title: "Collapse Tree", children: _jsx(CompressIcon, {}) }), _jsx(ControlledDropdownMenu, { className: "panel__header__action", title: "Show Options Menu...", content: _jsxs(MenuContent, { children: [_jsxs(MenuContentItem, { onClick: toggleShowUnmappedProperties, children: [_jsx(MenuContentItemIcon, { children: explorerState.showUnmappedProperties ? (_jsx(CheckIcon, {})) : null }), _jsx(MenuContentItemLabel, { children: "Show Unmapped Properties" })] }), _jsxs(MenuContentItem, { onClick: toggleHumanizePropertyName, children: [_jsx(MenuContentItemIcon, { children: explorerState.humanizePropertyName ? (_jsx(CheckIcon, {})) : null }), _jsx(MenuContentItemLabel, { children: "Humanize Property Name" })] }), _jsxs(MenuContentItem, { onClick: toggleHighlightUsedProperties, children: [_jsx(MenuContentItemIcon, { children: explorerState.highlightUsedProperties ? (_jsx(CheckIcon, {})) : null }), _jsx(MenuContentItemLabel, { children: "Highlight already used properties" })] })] }), menuProps: {
178
+ anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
179
+ transformOrigin: { vertical: 'top', horizontal: 'left' },
180
+ elevation: 7,
181
+ }, children: _jsx(MoreVerticalIcon, { className: "data-quality-validation__icon__more-options" }) })] }) }), _jsxs("div", { className: "panel__content data-quality-validation-explorer-tree__content", children: [_jsx(PanelLoadingIndicator, { isLoading: explorerState.mappingModelCoverageAnalysisState.isInProgress }), _jsx(DragPreviewLayer, { labelGetter: (item) => explorerState.humanizePropertyName
182
+ ? prettyCONSTName(item.node.label)
183
+ : item.node.label, types: Object.values(QUERY_BUILDER_EXPLORER_TREE_DND_TYPE) }), explorerState.mappingModelCoverageAnalysisState.isInProgress ? (_jsx(BlankPanelContent, { children: explorerState.mappingModelCoverageAnalysisState.message })) : (_jsxs(_Fragment, { children: [!explorerState.treeData && (_jsx(BlankPanelContent, { children: "Specify the class, mapping, and runtime to start building query" })), explorerState.treeData && (_jsx(QueryBuilderExplorerTree, { dataQualityState: dataQualityState }))] }))] })] }));
184
+ });
185
+ //# sourceMappingURL=DataQualityExplorerPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityExplorerPanel.js","sourceRoot":"","sources":["../../src/components/DataQualityExplorerPanel.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import type { DataQualityState } from './states/DataQualityState.js';
17
+ import { type QueryBuilderFilterState } from '@finos/legend-query-builder';
18
+ export declare const DataQualityFilterPanel: ((props: {
19
+ dataQualityState: DataQualityState;
20
+ filterState: QueryBuilderFilterState;
21
+ }) => import("react/jsx-runtime").JSX.Element) & {
22
+ displayName: string;
23
+ };
24
+ //# sourceMappingURL=DataQualityFilterPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityFilterPanel.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityFilterPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,6BAA6B,CAAC;AAIrC,eAAO,MAAM,sBAAsB,WACzB;IACN,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,uBAAuB,CAAC;CACtC;;CAoBF,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2020-present, Goldman Sachs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { observer } from 'mobx-react-lite';
18
+ import { QueryBuilderFilterPanel, } from '@finos/legend-query-builder';
19
+ import { useEffect } from 'react';
20
+ import { reaction } from 'mobx';
21
+ export const DataQualityFilterPanel = observer((props) => {
22
+ const { dataQualityState } = props;
23
+ const { dataQualityQueryBuilderState } = dataQualityState;
24
+ useEffect(() => {
25
+ const disposer = reaction(() => dataQualityQueryBuilderState.filterState.hashCode, () => {
26
+ dataQualityState.updateFilterElement();
27
+ });
28
+ return () => disposer();
29
+ }, [dataQualityState, dataQualityQueryBuilderState.filterState.hashCode]);
30
+ return (_jsx(QueryBuilderFilterPanel, { queryBuilderState: dataQualityQueryBuilderState }));
31
+ });
32
+ //# sourceMappingURL=DataQualityFilterPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityFilterPanel.js","sourceRoot":"","sources":["../../src/components/DataQualityFilterPanel.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAEL,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAC5C,CAAC,KAGA,EAAE,EAAE;IACH,MAAM,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC;IACnC,MAAM,EAAE,4BAA4B,EAAE,GAAG,gBAAgB,CAAC;IAE1D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,QAAQ,CACvB,GAAG,EAAE,CAAC,4BAA4B,CAAC,WAAW,CAAC,QAAQ,EACvD,GAAG,EAAE;YACH,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;QACzC,CAAC,CACF,CAAC;QACF,OAAO,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC,EAAE,CAAC,gBAAgB,EAAE,4BAA4B,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE1E,OAAO,CACL,KAAC,uBAAuB,IACtB,iBAAiB,EAAE,4BAA4B,GAC/C,CACH,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import type { DataQualityClassValidationState } from './states/DataQualityClassValidationState.js';
17
+ export declare const DataQualityMappingAndRuntimeBuilder: ((props: {
18
+ dataQualityState: DataQualityClassValidationState;
19
+ }) => import("react/jsx-runtime").JSX.Element) & {
20
+ displayName: string;
21
+ };
22
+ //# sourceMappingURL=DataQualityMappingAndRuntimeBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityMappingAndRuntimeBuilder.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityMappingAndRuntimeBuilder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAwBH,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,6CAA6C,CAAC;AAMnG,eAAO,MAAM,mCAAmC,WACtC;IAAE,gBAAgB,EAAE,+BAA+B,CAAA;CAAE;;CAkL9D,CAAC"}
@@ -0,0 +1,98 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2020-present, Goldman Sachs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { observer } from 'mobx-react-lite';
18
+ import { useApplicationStore } from '@finos/legend-application';
19
+ import { buildElementOption, getPackageableElementOptionFormatter, } from '@finos/legend-lego/graph-editor';
20
+ import { getMappingCompatibleClasses, getMappingCompatibleRuntimes, PackageableElementExplicitReference, RuntimePointer, } from '@finos/legend-graph';
21
+ import { createFilter, CustomSelectorInput, PURE_MappingIcon, PURE_RuntimeIcon, } from '@finos/legend-art';
22
+ import { DataQualityClassSelector } from './DataQualitySideBar.js';
23
+ import { buildRuntimeValueOption, getRuntimeOptionFormatter, } from '@finos/legend-query-builder';
24
+ export const DataQualityMappingAndRuntimeBuilder = observer((props) => {
25
+ const { dataQualityState } = props;
26
+ const { dataQualityQueryBuilderState } = dataQualityState;
27
+ const applicationStore = useApplicationStore();
28
+ const getRuntimesBasedOnMapping = () => dataQualityQueryBuilderState.executionContextState.mapping
29
+ ? getMappingCompatibleRuntimes(dataQualityQueryBuilderState.executionContextState.mapping, dataQualityState.graphManagerState.usableRuntimes).map((rt) => new RuntimePointer(PackageableElementExplicitReference.create(rt)))
30
+ : [];
31
+ const mappingOptions = dataQualityState.graphManagerState.usableMappings.map(buildElementOption);
32
+ const selectedMappingOption = dataQualityQueryBuilderState
33
+ .executionContextState.mapping
34
+ ? buildElementOption(dataQualityQueryBuilderState.executionContextState.mapping)
35
+ : null;
36
+ const changeMapping = (val) => {
37
+ if (val.value ===
38
+ dataQualityQueryBuilderState.executionContextState.mapping ||
39
+ dataQualityState.isMappingReadOnly) {
40
+ return;
41
+ }
42
+ dataQualityState.changeMapping(val.value);
43
+ const runtimeOptions = getRuntimesBasedOnMapping();
44
+ if (runtimeOptions.length) {
45
+ dataQualityQueryBuilderState.changeRuntime(runtimeOptions[0]);
46
+ }
47
+ dataQualityState.updateElementOnMappingChange();
48
+ const classes = getMappingCompatibleClasses(dataQualityQueryBuilderState.executionContextState.mapping, dataQualityState.graphManagerState.usableClasses);
49
+ if (runtimeOptions.length && classes.length) {
50
+ dataQualityState.changeClass(classes[0]);
51
+ dataQualityState.updateElementOnClassChange();
52
+ }
53
+ };
54
+ const mappingFilterOption = createFilter({
55
+ ignoreCase: true,
56
+ ignoreAccents: false,
57
+ stringify: (option) => option.value.path,
58
+ });
59
+ const runtimeOptions = getRuntimesBasedOnMapping().map(buildRuntimeValueOption);
60
+ const selectedRuntimeOption = dataQualityQueryBuilderState
61
+ .executionContextState.runtimeValue
62
+ ? buildRuntimeValueOption(dataQualityQueryBuilderState.executionContextState.runtimeValue)
63
+ : null;
64
+ const classes = selectedRuntimeOption
65
+ ? getMappingCompatibleClasses(dataQualityQueryBuilderState.executionContextState.mapping, dataQualityState.graphManagerState.usableClasses)
66
+ : [];
67
+ const changeRuntime = (val) => {
68
+ if (val.value ===
69
+ dataQualityQueryBuilderState.executionContextState.runtimeValue ||
70
+ dataQualityState.isRuntimeReadOnly) {
71
+ return;
72
+ }
73
+ dataQualityQueryBuilderState.changeRuntime(val.value);
74
+ dataQualityState.updateElementOnRuntimeChange(val.value);
75
+ };
76
+ const runtimeFilterOption = createFilter({
77
+ ignoreCase: true,
78
+ ignoreAccents: false,
79
+ stringify: (option) => option.value instanceof RuntimePointer
80
+ ? option.value.packageableRuntime.value.path
81
+ : 'custom',
82
+ });
83
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "data-quality-validation__setup__config-group", children: [_jsx("div", { className: "data-quality-validation__setup__config-group__header", children: _jsx("div", { className: "data-quality-validation__setup__config-group__header__title", children: "execution context" }) }), _jsxs("div", { className: "data-quality-validation__setup__config-group__content", children: [_jsxs("div", { className: "data-quality-validation__setup__config-group__item", children: [_jsx("div", { className: "btn--sm data-quality-validation__setup__config-group__item__label", title: "mapping", children: _jsx(PURE_MappingIcon, {}) }), _jsx(CustomSelectorInput, { className: "panel__content__form__section__dropdown data-quality-validation__setup__config-group__item__selector", placeholder: mappingOptions.length
84
+ ? 'Choose a mapping...'
85
+ : 'No mapping found', disabled: dataQualityState.isMappingReadOnly, options: mappingOptions, onChange: changeMapping, value: selectedMappingOption, darkMode: !applicationStore.layoutService
86
+ .TEMPORARY__isLightColorThemeEnabled, filterOption: mappingFilterOption, formatOptionLabel: getPackageableElementOptionFormatter({
87
+ darkMode: !applicationStore.layoutService
88
+ .TEMPORARY__isLightColorThemeEnabled,
89
+ }) })] }), _jsxs("div", { className: "data-quality-validation__setup__config-group__item", children: [_jsx("div", { className: "btn--sm data-quality-validation__setup__config-group__item__label", title: "runtime", children: _jsx(PURE_RuntimeIcon, {}) }), _jsx(CustomSelectorInput, { className: "panel__content__form__section__dropdown data-quality-validation__setup__config-group__item__selector", placeholder: runtimeOptions.length
90
+ ? 'Choose a runtime...'
91
+ : 'No runtime found', disabled: dataQualityState.isRuntimeReadOnly ||
92
+ !dataQualityQueryBuilderState.executionContextState.mapping, options: runtimeOptions, onChange: changeRuntime, value: selectedRuntimeOption, darkMode: !applicationStore.layoutService
93
+ .TEMPORARY__isLightColorThemeEnabled, filterOption: runtimeFilterOption, formatOptionLabel: getRuntimeOptionFormatter({
94
+ darkMode: !applicationStore.layoutService
95
+ .TEMPORARY__isLightColorThemeEnabled,
96
+ }) })] })] })] }), _jsx(DataQualityClassSelector, { dataQualityState: dataQualityState, classes: classes })] }));
97
+ });
98
+ //# sourceMappingURL=DataQualityMappingAndRuntimeBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityMappingAndRuntimeBuilder.js","sourceRoot":"","sources":["../../src/components/DataQualityMappingAndRuntimeBuilder.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import type { DataQualityState } from './states/DataQualityState.js';
17
+ export declare const DataQualityResultPanel: ((props: {
18
+ dataQualityState: DataQualityState;
19
+ }) => import("react/jsx-runtime").JSX.Element) & {
20
+ displayName: string;
21
+ };
22
+ //# sourceMappingURL=DataQualityResultPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityResultPanel.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityResultPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAgDrE,eAAO,MAAM,sBAAsB,WACzB;IAAE,gBAAgB,EAAE,gBAAgB,CAAA;CAAE;;CA4Q/C,CAAC"}