@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,321 @@
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 {} from '@finos/legend-art';
17
+ import { addUniqueEntry, assertErrorThrown, assertType, deleteEntry, hashArray, LogEvent, UnsupportedOperationError, } from '@finos/legend-shared';
18
+ import { action, computed, makeObservable, observable } from 'mobx';
19
+ import { Class, GRAPH_MANAGER_EVENT, PackageableElementExplicitReference, PropertyExplicitReference, getAllClassConstraints, isStubbed_RawLambda, TYPE_CAST_TOKEN, } from '@finos/legend-graph';
20
+ import { graphFetchTree_addSubTree, graphFetchTree_removeSubTree, QueryBuilderExplorerTreePropertyNodeData, QueryBuilderExplorerTreeSubTypeNodeData, } from '@finos/legend-query-builder';
21
+ import { DataQualityPropertyGraphFetchTree, DataQualityRootGraphFetchTree, } from '../../graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js';
22
+ import { ConstraintState } from '../states/ConstraintState.js';
23
+ import { DATA_QUALITY_HASH_STRUCTURE } from '../../graph/metamodel/DSL_DataQuality_HashUtils.js';
24
+ import { dataQualityGraphFetchTree_removeConstraints, graphFetchTree_removeAllSubTrees, } from '../../graph-manager/DSL_DataQuality_GraphModifierHelper.js';
25
+ export class DataQualityGraphFetchTreeNodeData {
26
+ id;
27
+ label;
28
+ tree;
29
+ parentId;
30
+ editorStore;
31
+ isOpen;
32
+ isReadOnly;
33
+ childrenIds = [];
34
+ constraints = [];
35
+ constructor(editorStore, id, label, parentId, graphFetchTreeNode) {
36
+ makeObservable(this, {
37
+ hashCode: computed,
38
+ constraints: observable,
39
+ isReadOnly: observable,
40
+ setConstraintsForClass: action,
41
+ setIsReadOnly: action,
42
+ });
43
+ this.id = id;
44
+ this.label = label;
45
+ this.parentId = parentId;
46
+ this.tree = graphFetchTreeNode;
47
+ // NOTE: in this tree, every node is open
48
+ this.isOpen = true;
49
+ this.editorStore = editorStore;
50
+ }
51
+ setIsReadOnly(isReadOnly) {
52
+ this.isReadOnly = isReadOnly;
53
+ }
54
+ setConstraintsForClass(_class, constraintsToSelect) {
55
+ const constraints = getAllClassConstraints(_class).map((constraint) => new ConstraintState(constraint));
56
+ const lambdas = new Map();
57
+ const index = new Map();
58
+ constraints.forEach((constraintState) => {
59
+ if (!isStubbed_RawLambda(constraintState.constraint.functionDefinition)) {
60
+ lambdas.set(constraintState.lambdaId, constraintState.constraint.functionDefinition);
61
+ index.set(constraintState.lambdaId, constraintState);
62
+ if (constraintsToSelect.find((constraintName) => constraintState.constraint.name === constraintName)) {
63
+ constraintState.isSelected = true;
64
+ }
65
+ }
66
+ });
67
+ if (lambdas.size) {
68
+ this.editorStore.graphManagerState.graphManager
69
+ .lambdasToPureCode(lambdas)
70
+ .then((res) => {
71
+ res.forEach((grammarText, key) => {
72
+ const constraintState = index.get(key);
73
+ constraintState?.setLambdaString(constraintState.extractLambdaString(grammarText));
74
+ });
75
+ this.constraints = constraints;
76
+ })
77
+ .catch((error) => {
78
+ assertErrorThrown(error);
79
+ this.editorStore.applicationStore.logService.error(LogEvent.create(GRAPH_MANAGER_EVENT.PARSING_FAILURE), error);
80
+ });
81
+ }
82
+ }
83
+ get type() {
84
+ if (this.tree instanceof DataQualityPropertyGraphFetchTree) {
85
+ return this.tree.property.value.genericType.value.rawType;
86
+ }
87
+ if (this.tree instanceof DataQualityRootGraphFetchTree) {
88
+ return this.tree.class.value;
89
+ }
90
+ throw new UnsupportedOperationError(`Can't get type of Graph Fetch Tree`, this.tree);
91
+ }
92
+ get hashCode() {
93
+ return hashArray([
94
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_GRAPH_FETCH_TREE_NODE_DATA,
95
+ this.id,
96
+ this.label,
97
+ this.tree,
98
+ this.parentId ?? '',
99
+ hashArray(this.childrenIds),
100
+ ]);
101
+ }
102
+ }
103
+ export const generateRootGraphFetchTreeNodeID = (parentNodeId, classValue) => `${parentNodeId ? `${parentNodeId}.` : ''}${classValue ? `${TYPE_CAST_TOKEN}${classValue}` : ''}`;
104
+ const getPrunableNodes = (treeData) => Array.from(treeData.nodes.values()).filter((node) => (node.type instanceof Class &&
105
+ node.childrenIds.length === 0 &&
106
+ node.constraints.length === 0) ||
107
+ // orphan node
108
+ (node.tree instanceof DataQualityPropertyGraphFetchTree &&
109
+ node.parentId &&
110
+ !treeData.nodes.has(node.parentId)));
111
+ const removeNode = (treeData, node) => {
112
+ const parentNode = node.parentId
113
+ ? treeData.nodes.get(node.parentId)
114
+ : undefined;
115
+ if (parentNode) {
116
+ deleteEntry(parentNode.childrenIds, node.id);
117
+ graphFetchTree_removeSubTree(parentNode.tree, node.tree);
118
+ }
119
+ else {
120
+ if (node.tree instanceof DataQualityRootGraphFetchTree) {
121
+ deleteEntry(treeData.rootIds, node.id);
122
+ dataQualityGraphFetchTree_removeConstraints(node.tree);
123
+ graphFetchTree_removeAllSubTrees(node.tree);
124
+ }
125
+ graphFetchTree_removeSubTree(treeData.tree, node.tree);
126
+ }
127
+ treeData.nodes.delete(node.id);
128
+ };
129
+ const pruneTreeData = (treeData) => {
130
+ let prunableNodes = getPrunableNodes(treeData);
131
+ while (prunableNodes.length) {
132
+ prunableNodes.forEach((node) => {
133
+ removeNode(treeData, node);
134
+ });
135
+ prunableNodes = getPrunableNodes(treeData);
136
+ }
137
+ };
138
+ export const removeNodeRecursively = (treeData, node) => {
139
+ removeNode(treeData, node);
140
+ pruneTreeData(treeData);
141
+ };
142
+ export const generateGraphFetchTreeNodeID = (property, parentNodeId, subType) => `${parentNodeId ? `${parentNodeId}.` : ''}${property.name}${subType ? `${TYPE_CAST_TOKEN}${subType.path}` : ''}`;
143
+ const buildGraphFetchSubTree = (editorStore, tree, parentNode, nodes, fetchConstraints, isReadOnly) => {
144
+ assertType(tree, DataQualityPropertyGraphFetchTree, 'Graph fetch sub-tree must be a property graph fetch tree');
145
+ const property = tree.property.value;
146
+ const subType = tree.subType?.value;
147
+ const parentNodeId = parentNode?.id;
148
+ const node = new DataQualityGraphFetchTreeNodeData(editorStore, generateGraphFetchTreeNodeID(property, parentNodeId, subType), property.name, parentNodeId, tree);
149
+ node.setIsReadOnly(isReadOnly);
150
+ if (node.type instanceof Class &&
151
+ fetchConstraints &&
152
+ tree.constraints.length) {
153
+ node.setConstraintsForClass(node.type, tree.constraints);
154
+ }
155
+ tree.subTrees.forEach((subTree) => {
156
+ const subTreeNode = buildGraphFetchSubTree(editorStore, subTree, node, nodes, fetchConstraints, isReadOnly);
157
+ addUniqueEntry(node.childrenIds, subTreeNode.id);
158
+ nodes.set(subTreeNode.id, subTreeNode);
159
+ });
160
+ return node;
161
+ };
162
+ const buildRootGraphFetchSubTree = (editorStore, tree, parentNode, nodes, fetchConstraints, isReadonly) => {
163
+ const parentNodeId = parentNode?.id;
164
+ const node = new DataQualityGraphFetchTreeNodeData(editorStore, generateRootGraphFetchTreeNodeID(parentNodeId, tree.class.valueForSerialization ?? ''), tree.class.value.name, parentNodeId, tree);
165
+ node.setIsReadOnly(isReadonly);
166
+ if (node.type instanceof Class &&
167
+ fetchConstraints &&
168
+ tree.constraints.length) {
169
+ node.setConstraintsForClass(node.type, tree.constraints);
170
+ }
171
+ tree.subTrees.forEach((subTree) => {
172
+ const subTreeNode = buildGraphFetchSubTree(editorStore, subTree, node, nodes, fetchConstraints, isReadonly);
173
+ addUniqueEntry(node.childrenIds, subTreeNode.id);
174
+ nodes.set(subTreeNode.id, subTreeNode);
175
+ });
176
+ return node;
177
+ };
178
+ export const buildGraphFetchTreeData = (editorStore, tree, displayRoot = false, fetchConstraints, isReadOnly) => {
179
+ const rootIds = [];
180
+ const nodes = new Map();
181
+ if (displayRoot) {
182
+ const rootNode = buildRootGraphFetchSubTree(editorStore, tree, undefined, nodes, fetchConstraints, isReadOnly);
183
+ addUniqueEntry(rootIds, rootNode.id);
184
+ nodes.set(rootNode.id, rootNode);
185
+ }
186
+ else {
187
+ tree.subTrees.forEach((subTree) => {
188
+ const subTreeNode = buildGraphFetchSubTree(editorStore, subTree, undefined, nodes, fetchConstraints, isReadOnly);
189
+ addUniqueEntry(rootIds, subTreeNode.id);
190
+ nodes.set(subTreeNode.id, subTreeNode);
191
+ });
192
+ }
193
+ return { rootIds, nodes, tree };
194
+ };
195
+ export const isGraphFetchTreeDataEmpty = (treeData) => treeData.tree.subTrees.length === 0;
196
+ export const isConstraintsClassesTreeEmpty = (treeData) => treeData.rootIds.length === 0;
197
+ export const updateNodeConstraints = (treeData, node, constraint, addConstraint) => {
198
+ //update the node of graph fetch tree present
199
+ const updatedTreeNode = node.tree;
200
+ if (addConstraint) {
201
+ updatedTreeNode.constraints.push(constraint.name);
202
+ }
203
+ else {
204
+ updatedTreeNode.constraints = updatedTreeNode.constraints.filter((constraintName) => constraintName !== constraint.name);
205
+ }
206
+ };
207
+ export const addQueryBuilderPropertyNode = (treeData, explorerTreeData, node, dataQualityState) => {
208
+ const editorStore = dataQualityState.editorStore;
209
+ const rootNodeId = generateRootGraphFetchTreeNodeID(undefined, treeData.tree.class.valueForSerialization ?? '');
210
+ //root node and property node handled differently
211
+ //handling property node
212
+ if (node instanceof QueryBuilderExplorerTreePropertyNodeData) {
213
+ // traverse the property node all the way to the root and resolve the
214
+ // chain of property that leads to this property node
215
+ const propertyGraphFetchTrees = [
216
+ new DataQualityPropertyGraphFetchTree(PropertyExplicitReference.create(node.property), undefined),
217
+ ];
218
+ let parentExplorerTreeNode = explorerTreeData.nodes.get(node.parentId);
219
+ while (parentExplorerTreeNode instanceof
220
+ QueryBuilderExplorerTreePropertyNodeData ||
221
+ parentExplorerTreeNode instanceof QueryBuilderExplorerTreeSubTypeNodeData) {
222
+ let subType = undefined;
223
+ let subtypeAssigned = false;
224
+ while (parentExplorerTreeNode instanceof
225
+ QueryBuilderExplorerTreeSubTypeNodeData) {
226
+ if (!subtypeAssigned) {
227
+ subType = PackageableElementExplicitReference.create(parentExplorerTreeNode.subclass);
228
+ subtypeAssigned = true;
229
+ }
230
+ parentExplorerTreeNode = explorerTreeData.nodes.get(parentExplorerTreeNode.parentId);
231
+ }
232
+ if (parentExplorerTreeNode instanceof
233
+ QueryBuilderExplorerTreePropertyNodeData &&
234
+ parentExplorerTreeNode.mappingData.entityMappedProperty?.subType &&
235
+ parentExplorerTreeNode.type instanceof Class) {
236
+ subType = PackageableElementExplicitReference.create(parentExplorerTreeNode.type);
237
+ }
238
+ if (parentExplorerTreeNode instanceof
239
+ QueryBuilderExplorerTreePropertyNodeData) {
240
+ const propertyGraphFetchTree = new DataQualityPropertyGraphFetchTree(PropertyExplicitReference.create(parentExplorerTreeNode.property), subType);
241
+ propertyGraphFetchTree.subTrees.push(propertyGraphFetchTrees[0]);
242
+ propertyGraphFetchTrees.unshift(propertyGraphFetchTree);
243
+ parentExplorerTreeNode = explorerTreeData.nodes.get(parentExplorerTreeNode.parentId);
244
+ }
245
+ else {
246
+ dataQualityState.applicationStore.notificationService.notifyError(`Can't cast the root class of graph fetch structure to its subtype`);
247
+ return;
248
+ }
249
+ }
250
+ // traverse the chain of property from the root class to find a node in the
251
+ // current graph fetch tree that matches any of this property, consider
252
+ // this the starting point
253
+ //
254
+ // If we found a match, use that as the starting point, otherwise, use the root
255
+ // of the graph fetch tree as the starting point
256
+ //
257
+ // NOTE: here we assume that we don't allow specifying duplicated nodes.
258
+ // perhaps we need to allow that behavior in the future so people can customize the
259
+ // shape of the object (e.g. same field but under different aliases)
260
+ //current node id will be pointing root node id
261
+ let currentNodeId = rootNodeId;
262
+ let parentNode = treeData.nodes.get(rootNodeId);
263
+ let newSubTree;
264
+ for (const propertyGraphFetchTree of propertyGraphFetchTrees) {
265
+ currentNodeId = generateGraphFetchTreeNodeID(propertyGraphFetchTree.property.value, currentNodeId, propertyGraphFetchTree.subType?.value);
266
+ const existingGraphFetchNode = treeData.nodes.get(currentNodeId);
267
+ if (existingGraphFetchNode) {
268
+ parentNode = existingGraphFetchNode;
269
+ }
270
+ else {
271
+ newSubTree = propertyGraphFetchTree;
272
+ break;
273
+ }
274
+ }
275
+ // construct the query builder graph fetch subtree from the starting point
276
+ if (newSubTree) {
277
+ const childNode = buildGraphFetchSubTree(editorStore, newSubTree, parentNode, treeData.nodes, false, false);
278
+ treeData.nodes.set(childNode.id, childNode);
279
+ if (parentNode) {
280
+ addUniqueEntry(parentNode.childrenIds, childNode.id);
281
+ graphFetchTree_addSubTree(parentNode.tree, childNode.tree, dataQualityState.dataQualityQueryBuilderState.observerContext);
282
+ }
283
+ else {
284
+ //this case arises when we reach upto rootNode
285
+ let rootNode = treeData.nodes.get(rootNodeId);
286
+ //check if root node exists in actual tree made
287
+ if (!rootNode) {
288
+ rootNode = buildRootGraphFetchSubTree(editorStore, treeData.tree, undefined, treeData.nodes, false, false);
289
+ addUniqueEntry(treeData.rootIds, rootNode.id);
290
+ treeData.nodes.set(rootNode.id, rootNode);
291
+ }
292
+ addUniqueEntry(rootNode.childrenIds, childNode.id);
293
+ graphFetchTree_addSubTree(treeData.tree, childNode.tree, dataQualityState.dataQualityQueryBuilderState.observerContext);
294
+ }
295
+ }
296
+ const nodeToShowConstraintsFor = treeData.nodes.get(`${rootNodeId}.${node.id}`);
297
+ //fetching constraints for class node and making sure constraints is populated for the first time
298
+ if (nodeToShowConstraintsFor &&
299
+ node.type instanceof Class &&
300
+ nodeToShowConstraintsFor.constraints.length === 0) {
301
+ nodeToShowConstraintsFor.setConstraintsForClass(node.type, []);
302
+ treeData.nodes.set(nodeToShowConstraintsFor.id, nodeToShowConstraintsFor);
303
+ }
304
+ }
305
+ else {
306
+ //this case arises when root node is dragged
307
+ let rootNodeFromTree = treeData.nodes.get(rootNodeId);
308
+ //check if root node already exists in data quality root graph fetch tree
309
+ if (!rootNodeFromTree) {
310
+ rootNodeFromTree = buildRootGraphFetchSubTree(editorStore, treeData.tree, undefined, treeData.nodes, false, false);
311
+ addUniqueEntry(treeData.rootIds, rootNodeFromTree.id);
312
+ }
313
+ //making sure root node is class type and constraints is fetch for first time
314
+ if (node.type instanceof Class &&
315
+ rootNodeFromTree.constraints.length === 0) {
316
+ rootNodeFromTree.setConstraintsForClass(node.type, []);
317
+ }
318
+ treeData.nodes.set(rootNodeFromTree.id, rootNodeFromTree);
319
+ }
320
+ };
321
+ //# sourceMappingURL=DataQualityGraphFetchTreeUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityGraphFetchTreeUtil.js","sourceRoot":"","sources":["../../../src/components/utils/DataQualityGraphFetchTreeUtil.ts"],"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
+ export declare enum DATA_QUALITY_HASH_STRUCTURE {
17
+ DATA_QUALITY_CONSTRAINTS_CONFIGURATION = "DATA_QUALITY_CONSTRAINTS_CONFIGURATION",
18
+ DATA_QUALITY_SERVICE_VALIDATION_CONFIGURATION = "DATA_QUALITY_SERVICE_VALIDATION_CONFIGURATION",
19
+ DATA_QUALTIY_DATASPACE_EXECUTION_CONTEXT = "DATA_QUALITY_DATASPACE_EXECUTION_CONTEXT",
20
+ DATA_QUALITY_MAPPING_AND_RUNTIME_EXECUTION_CONTEXT = "DATA_QUALITY_MAPPING_AND_RUNTIME_EXECUTION_CONTEXT",
21
+ DATA_QUALITY_GRAPH_FETCH_STATE = "DATA_QUALITY_GRAPH_FETCH_STATE",
22
+ DATA_QUALITY_GRAPH_FETCH_TREE = "DATA_QUALITY_GRAPH_FETCH_TREE",
23
+ DATA_QUALITY_ROOT_GRAPH_FETCH_TREE = "DATA_QUALITY_ROOT_GRAPH_FETCH_TREE",
24
+ DATA_QUALITY_PROPERTY_GRAPH_FETCH_TREE = "DATA_QUALITY_PROPERTY_GRAPH_FETCH_TREE",
25
+ DATA_QUALITY_SUBTYPE_GRAPH_FETCH_TREE = "DATA_QUALITY_SUBTYPE_GRAPH_FETCH_TREE",
26
+ DATA_QUALITY_GRAPH_FETCH_TREE_NODE_DATA = "DATA_QUALITY_GRAPH_FETCH_TREE_NODE_DATA",
27
+ DATA_QUALITY_STATE = "DATA_QUALITY_STATE"
28
+ }
29
+ //# sourceMappingURL=DSL_DataQuality_HashUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DSL_DataQuality_HashUtils.d.ts","sourceRoot":"","sources":["../../../src/graph/metamodel/DSL_DataQuality_HashUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,oBAAY,2BAA2B;IACrC,sCAAsC,2CAA2C;IACjF,6CAA6C,kDAAkD;IAC/F,wCAAwC,6CAA6C;IACrF,kDAAkD,uDAAuD;IACzG,8BAA8B,mCAAmC;IACjE,6BAA6B,kCAAkC;IAC/D,kCAAkC,uCAAuC;IACzE,sCAAsC,2CAA2C;IACjF,qCAAqC,0CAA0C;IAC/E,uCAAuC,4CAA4C;IACnF,kBAAkB,uBAAuB;CAC1C"}
@@ -0,0 +1,30 @@
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
+ export var DATA_QUALITY_HASH_STRUCTURE;
17
+ (function (DATA_QUALITY_HASH_STRUCTURE) {
18
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_CONSTRAINTS_CONFIGURATION"] = "DATA_QUALITY_CONSTRAINTS_CONFIGURATION";
19
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_SERVICE_VALIDATION_CONFIGURATION"] = "DATA_QUALITY_SERVICE_VALIDATION_CONFIGURATION";
20
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALTIY_DATASPACE_EXECUTION_CONTEXT"] = "DATA_QUALITY_DATASPACE_EXECUTION_CONTEXT";
21
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_MAPPING_AND_RUNTIME_EXECUTION_CONTEXT"] = "DATA_QUALITY_MAPPING_AND_RUNTIME_EXECUTION_CONTEXT";
22
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_GRAPH_FETCH_STATE"] = "DATA_QUALITY_GRAPH_FETCH_STATE";
23
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_GRAPH_FETCH_TREE"] = "DATA_QUALITY_GRAPH_FETCH_TREE";
24
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_ROOT_GRAPH_FETCH_TREE"] = "DATA_QUALITY_ROOT_GRAPH_FETCH_TREE";
25
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_PROPERTY_GRAPH_FETCH_TREE"] = "DATA_QUALITY_PROPERTY_GRAPH_FETCH_TREE";
26
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_SUBTYPE_GRAPH_FETCH_TREE"] = "DATA_QUALITY_SUBTYPE_GRAPH_FETCH_TREE";
27
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_GRAPH_FETCH_TREE_NODE_DATA"] = "DATA_QUALITY_GRAPH_FETCH_TREE_NODE_DATA";
28
+ DATA_QUALITY_HASH_STRUCTURE["DATA_QUALITY_STATE"] = "DATA_QUALITY_STATE";
29
+ })(DATA_QUALITY_HASH_STRUCTURE || (DATA_QUALITY_HASH_STRUCTURE = {}));
30
+ //# sourceMappingURL=DSL_DataQuality_HashUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DSL_DataQuality_HashUtils.js","sourceRoot":"","sources":["../../../src/graph/metamodel/DSL_DataQuality_HashUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAN,IAAY,2BAYX;AAZD,WAAY,2BAA2B;IACrC,gHAAiF,CAAA;IACjF,8HAA+F,CAAA;IAC/F,oHAAqF,CAAA;IACrF,wIAAyG,CAAA;IACzG,gGAAiE,CAAA;IACjE,8FAA+D,CAAA;IAC/D,wGAAyE,CAAA;IACzE,gHAAiF,CAAA;IACjF,8GAA+E,CAAA;IAC/E,kHAAmF,CAAA;IACnF,wEAAyC,CAAA;AAC3C,CAAC,EAZW,2BAA2B,KAA3B,2BAA2B,QAYtC"}
@@ -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 Clazz } from '@finos/legend-shared';
17
+ import { type PackageableElement, PureGraphPlugin } from '@finos/legend-graph';
18
+ export declare class DSL_DataQuality_PureGraphPlugin extends PureGraphPlugin {
19
+ constructor();
20
+ getExtraPureGraphExtensionClasses(): Clazz<PackageableElement>[];
21
+ }
22
+ //# sourceMappingURL=DSL_DataQuality_PureGraphPlugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DSL_DataQuality_PureGraphPlugin.d.ts","sourceRoot":"","sources":["../../../src/graph/metamodel/DSL_DataQuality_PureGraphPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,KAAK,kBAAkB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAO/E,qBAAa,+BAAgC,SAAQ,eAAe;;IAKzD,iCAAiC,IAAI,KAAK,CAAC,kBAAkB,CAAC,EAAE;CAM1E"}
@@ -0,0 +1,31 @@
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 {} from '@finos/legend-shared';
17
+ import { PureGraphPlugin } from '@finos/legend-graph';
18
+ import packageJson from '../../../package.json';
19
+ import { DataQualityClassValidationsConfiguration, DataQualityServiceValidationConfiguration, } from './pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
20
+ export class DSL_DataQuality_PureGraphPlugin extends PureGraphPlugin {
21
+ constructor() {
22
+ super(packageJson.extensions.pureGraphPlugin, packageJson.version);
23
+ }
24
+ getExtraPureGraphExtensionClasses() {
25
+ return [
26
+ DataQualityClassValidationsConfiguration,
27
+ DataQualityServiceValidationConfiguration,
28
+ ];
29
+ }
30
+ }
31
+ //# sourceMappingURL=DSL_DataQuality_PureGraphPlugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DSL_DataQuality_PureGraphPlugin.js","sourceRoot":"","sources":["../../../src/graph/metamodel/DSL_DataQuality_PureGraphPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAA2B,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EACL,wCAAwC,EACxC,yCAAyC,GAC1C,MAAM,+EAA+E,CAAC;AAEvF,MAAM,OAAO,+BAAgC,SAAQ,eAAe;IAClE;QACE,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACrE,CAAC;IAEQ,iCAAiC;QACxC,OAAO;YACL,wCAAwC;YACxC,yCAAyC;SAC1C,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,26 @@
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 Hashable } from '@finos/legend-shared';
17
+ import { RootGraphFetchTree, PropertyGraphFetchTree } from '@finos/legend-graph';
18
+ export declare class DataQualityRootGraphFetchTree extends RootGraphFetchTree implements Hashable {
19
+ constraints: string[];
20
+ get hashCode(): string;
21
+ }
22
+ export declare class DataQualityPropertyGraphFetchTree extends PropertyGraphFetchTree implements Hashable {
23
+ constraints: string[];
24
+ get hashCode(): string;
25
+ }
26
+ //# sourceMappingURL=DataQualityGraphFetchTree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityGraphFetchTree.d.ts","sourceRoot":"","sources":["../../../../../../src/graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,sBAAsB,CAAC;AAChE,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,qBAAqB,CAAC;AAG7B,qBAAa,6BACX,SAAQ,kBACR,YAAW,QAAQ;IAEnB,WAAW,EAAE,MAAM,EAAE,CAAM;IAC3B,IAAa,QAAQ,IAAI,MAAM,CAQ9B;CACF;AAED,qBAAa,iCACX,SAAQ,sBACR,YAAW,QAAQ;IAEnB,WAAW,EAAE,MAAM,EAAE,CAAM;IAC3B,IAAa,QAAQ,IAAI,MAAM,CAS9B;CACF"}
@@ -0,0 +1,44 @@
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 { hashArray } from '@finos/legend-shared';
17
+ import { RootGraphFetchTree, PropertyGraphFetchTree, } from '@finos/legend-graph';
18
+ import { DATA_QUALITY_HASH_STRUCTURE } from '../../../DSL_DataQuality_HashUtils.js';
19
+ export class DataQualityRootGraphFetchTree extends RootGraphFetchTree {
20
+ constraints = [];
21
+ get hashCode() {
22
+ return hashArray([
23
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_ROOT_GRAPH_FETCH_TREE,
24
+ hashArray(this.subTrees),
25
+ hashArray(this.subTypeTrees),
26
+ hashArray(this.constraints),
27
+ this.class.valueForSerialization ?? '',
28
+ ]);
29
+ }
30
+ }
31
+ export class DataQualityPropertyGraphFetchTree extends PropertyGraphFetchTree {
32
+ constraints = [];
33
+ get hashCode() {
34
+ return hashArray([
35
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_PROPERTY_GRAPH_FETCH_TREE,
36
+ hashArray(this.subTrees),
37
+ this.property.value.name,
38
+ this.alias ?? '',
39
+ this.subType?.valueForSerialization ?? '',
40
+ hashArray(this.constraints),
41
+ ]);
42
+ }
43
+ }
44
+ //# sourceMappingURL=DataQualityGraphFetchTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityGraphFetchTree.js","sourceRoot":"","sources":["../../../../../../src/graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAiB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EACL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAEpF,MAAM,OAAO,6BACX,SAAQ,kBAAkB;IAG1B,WAAW,GAAa,EAAE,CAAC;IAC3B,IAAa,QAAQ;QACnB,OAAO,SAAS,CAAC;YACf,2BAA2B,CAAC,kCAAkC;YAC9D,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;YACxB,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;YAC5B,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,qBAAqB,IAAI,EAAE;SACvC,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,OAAO,iCACX,SAAQ,sBAAsB;IAG9B,WAAW,GAAa,EAAE,CAAC;IAC3B,IAAa,QAAQ;QACnB,OAAO,SAAS,CAAC;YACf,2BAA2B,CAAC,sCAAsC;YAClE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,KAAK,IAAI,EAAE;YAChB,IAAI,CAAC,OAAO,EAAE,qBAAqB,IAAI,EAAE;YACzC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;SAC5B,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,47 @@
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 PackageableElementVisitor, type GraphFetchTree, type Mapping, type PackageableElementReference, type PackageableRuntime, type RawLambda, PackageableElement } from '@finos/legend-graph';
17
+ import { type Hashable } from '@finos/legend-shared';
18
+ import type { DataSpace } from '@finos/legend-extension-dsl-data-space/graph';
19
+ import type { DataQualityRootGraphFetchTree } from './DataQualityGraphFetchTree.js';
20
+ export declare abstract class DataQualityExecutionContext implements Hashable {
21
+ abstract get hashCode(): string;
22
+ }
23
+ export declare class DataSpaceDataQualityExecutionContext extends DataQualityExecutionContext {
24
+ context: string;
25
+ dataSpace: PackageableElementReference<DataSpace>;
26
+ get hashCode(): string;
27
+ }
28
+ export declare class MappingAndRuntimeDataQualityExecutionContext extends DataQualityExecutionContext {
29
+ mapping: PackageableElementReference<Mapping>;
30
+ runtime: PackageableElementReference<PackageableRuntime>;
31
+ get hashCode(): string;
32
+ }
33
+ export declare class DataQualityClassValidationsConfiguration extends PackageableElement implements Hashable {
34
+ context: DataQualityExecutionContext;
35
+ dataQualityRootGraphFetchTree: DataQualityRootGraphFetchTree | undefined;
36
+ filter?: RawLambda | undefined;
37
+ protected get _elementHashCode(): string;
38
+ accept_PackageableElementVisitor<T>(visitor: PackageableElementVisitor<T>): T;
39
+ }
40
+ export declare class DataQualityServiceValidationConfiguration extends PackageableElement implements Hashable {
41
+ serviceName: string | undefined;
42
+ contextName: string | undefined;
43
+ dataQualityRootGraphFetchTree: GraphFetchTree | undefined;
44
+ protected get _elementHashCode(): string;
45
+ accept_PackageableElementVisitor<T>(visitor: PackageableElementVisitor<T>): T;
46
+ }
47
+ //# sourceMappingURL=DataQualityValidationConfiguration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataQualityValidationConfiguration.d.ts","sourceRoot":"","sources":["../../../../../../src/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,2BAA2B,EAChC,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,kBAAkB,EACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,sBAAsB,CAAC;AAEhE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAEpF,8BAAsB,2BAA4B,YAAW,QAAQ;IACnE,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC;CACjC;AAED,qBAAa,oCAAqC,SAAQ,2BAA2B;IACnF,OAAO,EAAG,MAAM,CAAC;IACjB,SAAS,EAAG,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAEnD,IAAa,QAAQ,IAAI,MAAM,CAM9B;CACF;AAED,qBAAa,4CAA6C,SAAQ,2BAA2B;IAC3F,OAAO,EAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,EAAG,2BAA2B,CAAC,kBAAkB,CAAC,CAAC;IAE1D,IAAa,QAAQ,IAAI,MAAM,CAM9B;CACF;AAED,qBAAa,wCACX,SAAQ,kBACR,YAAW,QAAQ;IAEnB,OAAO,EAAG,2BAA2B,CAAC;IACtC,6BAA6B,EAAE,6BAA6B,GAAG,SAAS,CAAC;IACzE,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAE/B,cAAuB,gBAAgB,IAAI,MAAM,CAOhD;IAED,gCAAgC,CAAC,CAAC,EAChC,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC,GACpC,CAAC;CAGL;AAED,qBAAa,yCACX,SAAQ,kBACR,YAAW,QAAQ;IAEnB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,6BAA6B,EAAE,cAAc,GAAG,SAAS,CAAC;IAE1D,cAAuB,gBAAgB,IAAI,MAAM,CAOhD;IAED,gCAAgC,CAAC,CAAC,EAChC,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC,GACpC,CAAC;CAGL"}