@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,55 @@
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
+
17
+ import { type Hashable, hashArray } from '@finos/legend-shared';
18
+ import {
19
+ RootGraphFetchTree,
20
+ PropertyGraphFetchTree,
21
+ } from '@finos/legend-graph';
22
+ import { DATA_QUALITY_HASH_STRUCTURE } from '../../../DSL_DataQuality_HashUtils.js';
23
+
24
+ export class DataQualityRootGraphFetchTree
25
+ extends RootGraphFetchTree
26
+ implements Hashable
27
+ {
28
+ constraints: string[] = [];
29
+ override get hashCode(): string {
30
+ return hashArray([
31
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_ROOT_GRAPH_FETCH_TREE,
32
+ hashArray(this.subTrees),
33
+ hashArray(this.subTypeTrees),
34
+ hashArray(this.constraints),
35
+ this.class.valueForSerialization ?? '',
36
+ ]);
37
+ }
38
+ }
39
+
40
+ export class DataQualityPropertyGraphFetchTree
41
+ extends PropertyGraphFetchTree
42
+ implements Hashable
43
+ {
44
+ constraints: string[] = [];
45
+ override get hashCode(): string {
46
+ return hashArray([
47
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_PROPERTY_GRAPH_FETCH_TREE,
48
+ hashArray(this.subTrees),
49
+ this.property.value.name,
50
+ this.alias ?? '',
51
+ this.subType?.valueForSerialization ?? '',
52
+ hashArray(this.constraints),
53
+ ]);
54
+ }
55
+ }
@@ -0,0 +1,107 @@
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
+
17
+ import {
18
+ type PackageableElementVisitor,
19
+ type GraphFetchTree,
20
+ type Mapping,
21
+ type PackageableElementReference,
22
+ type PackageableRuntime,
23
+ type RawLambda,
24
+ PackageableElement,
25
+ } from '@finos/legend-graph';
26
+ import { type Hashable, hashArray } from '@finos/legend-shared';
27
+ import { DATA_QUALITY_HASH_STRUCTURE } from '../../../DSL_DataQuality_HashUtils.js';
28
+ import type { DataSpace } from '@finos/legend-extension-dsl-data-space/graph';
29
+ import type { DataQualityRootGraphFetchTree } from './DataQualityGraphFetchTree.js';
30
+
31
+ export abstract class DataQualityExecutionContext implements Hashable {
32
+ abstract get hashCode(): string;
33
+ }
34
+
35
+ export class DataSpaceDataQualityExecutionContext extends DataQualityExecutionContext {
36
+ context!: string;
37
+ dataSpace!: PackageableElementReference<DataSpace>;
38
+
39
+ override get hashCode(): string {
40
+ return hashArray([
41
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALTIY_DATASPACE_EXECUTION_CONTEXT,
42
+ this.context,
43
+ this.dataSpace.valueForSerialization ?? '',
44
+ ]);
45
+ }
46
+ }
47
+
48
+ export class MappingAndRuntimeDataQualityExecutionContext extends DataQualityExecutionContext {
49
+ mapping!: PackageableElementReference<Mapping>;
50
+ runtime!: PackageableElementReference<PackageableRuntime>;
51
+
52
+ override get hashCode(): string {
53
+ return hashArray([
54
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_MAPPING_AND_RUNTIME_EXECUTION_CONTEXT,
55
+ this.mapping.valueForSerialization ?? '',
56
+ this.runtime.valueForSerialization ?? '',
57
+ ]);
58
+ }
59
+ }
60
+
61
+ export class DataQualityClassValidationsConfiguration
62
+ extends PackageableElement
63
+ implements Hashable
64
+ {
65
+ context!: DataQualityExecutionContext;
66
+ dataQualityRootGraphFetchTree: DataQualityRootGraphFetchTree | undefined;
67
+ filter?: RawLambda | undefined;
68
+
69
+ protected override get _elementHashCode(): string {
70
+ return hashArray([
71
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_CONSTRAINTS_CONFIGURATION,
72
+ this.context,
73
+ this.filter ?? '',
74
+ this.dataQualityRootGraphFetchTree ?? '',
75
+ ]);
76
+ }
77
+
78
+ accept_PackageableElementVisitor<T>(
79
+ visitor: PackageableElementVisitor<T>,
80
+ ): T {
81
+ return visitor.visit_PackageableElement(this);
82
+ }
83
+ }
84
+
85
+ export class DataQualityServiceValidationConfiguration
86
+ extends PackageableElement
87
+ implements Hashable
88
+ {
89
+ serviceName: string | undefined;
90
+ contextName: string | undefined;
91
+ dataQualityRootGraphFetchTree: GraphFetchTree | undefined;
92
+
93
+ protected override get _elementHashCode(): string {
94
+ return hashArray([
95
+ DATA_QUALITY_HASH_STRUCTURE.DATA_QUALITY_SERVICE_VALIDATION_CONFIGURATION,
96
+ this.serviceName ?? '',
97
+ this.contextName ?? '',
98
+ this.dataQualityRootGraphFetchTree ?? '',
99
+ ]);
100
+ }
101
+
102
+ accept_PackageableElementVisitor<T>(
103
+ visitor: PackageableElementVisitor<T>,
104
+ ): T {
105
+ return visitor.visit_PackageableElement(this);
106
+ }
107
+ }
@@ -0,0 +1,46 @@
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
+
17
+ import type { BasicModel } from '@finos/legend-graph';
18
+ import { guaranteeNonNullable } from '@finos/legend-shared';
19
+ import {
20
+ DataQualityClassValidationsConfiguration,
21
+ DataQualityServiceValidationConfiguration,
22
+ } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
23
+
24
+ export const getOwnDataQualityClassValidationsConfiguration = (
25
+ path: string,
26
+ graph: BasicModel,
27
+ ): DataQualityClassValidationsConfiguration =>
28
+ guaranteeNonNullable(
29
+ graph.getOwnNullableExtensionElement(
30
+ path,
31
+ DataQualityClassValidationsConfiguration,
32
+ ),
33
+ `Can't find data quality class validation element on '${path}'`,
34
+ );
35
+
36
+ export const getOwnDataQualityServiceValidationsConfiguration = (
37
+ path: string,
38
+ graph: BasicModel,
39
+ ): DataQualityServiceValidationConfiguration =>
40
+ guaranteeNonNullable(
41
+ graph.getOwnNullableExtensionElement(
42
+ path,
43
+ DataQualityServiceValidationConfiguration,
44
+ ),
45
+ `Can't find data quality service validation element on '${path}'`,
46
+ );
@@ -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
+
17
+ import { AbstractPreset } from '@finos/legend-shared';
18
+ import packageJson from '../../package.json';
19
+ import { DSL_DataQuality_PureGraphPlugin } from '../graph/metamodel/DSL_DataQuality_PureGraphPlugin.js';
20
+ import { DSL_DataQuality_PureGraphManagerPlugin } from './DSL_DataQuality_PureGraphManagerPlugin.js';
21
+ import { DSL_DataQuality_PureProtocolProcessorPlugin } from './protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js';
22
+
23
+ export class DSL_DataQuality_GraphManagerPreset extends AbstractPreset {
24
+ constructor() {
25
+ super(packageJson.extensions.graphManagerPreset, packageJson.version, [
26
+ new DSL_DataQuality_PureGraphPlugin(),
27
+ new DSL_DataQuality_PureGraphManagerPlugin(),
28
+ new DSL_DataQuality_PureProtocolProcessorPlugin(),
29
+ ]);
30
+ }
31
+ }
@@ -0,0 +1,113 @@
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
+
17
+ import { action } from 'mobx';
18
+ import {
19
+ type DataQualityClassValidationsConfiguration,
20
+ type DataQualityExecutionContext,
21
+ DataSpaceDataQualityExecutionContext,
22
+ MappingAndRuntimeDataQualityExecutionContext,
23
+ } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
24
+ import { DataQualityRootGraphFetchTree } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js';
25
+ import {
26
+ type GraphFetchTree,
27
+ type PackageableElementReference,
28
+ type PackageableRuntime,
29
+ type RawLambda,
30
+ type ObserverContext,
31
+ observe_PackageableRuntime,
32
+ observe_RawLambda,
33
+ PackageableElementExplicitReference,
34
+ } from '@finos/legend-graph';
35
+ import {
36
+ observe_DataQualityRootGraphFetchTree,
37
+ observe_DataSpaceDataQualityExecutionContext,
38
+ observe_MappingAndRuntimeDataQualityExecutionContext,
39
+ } from './action/changeDetection/DSL_DataQuality_ObserverHelper.js';
40
+
41
+ export const dataQualityClassValidation_setDataQualityGraphFetchTree = action(
42
+ (
43
+ element: DataQualityClassValidationsConfiguration,
44
+ val: DataQualityRootGraphFetchTree | undefined,
45
+ ): void => {
46
+ element.dataQualityRootGraphFetchTree = val
47
+ ? observe_DataQualityRootGraphFetchTree(val)
48
+ : val;
49
+ },
50
+ );
51
+
52
+ export const dataQualityClassValidation_setDataQualityContext = action(
53
+ (
54
+ element: DataQualityClassValidationsConfiguration,
55
+ val: DataQualityExecutionContext,
56
+ ): void => {
57
+ if (val instanceof DataSpaceDataQualityExecutionContext) {
58
+ element.context = observe_DataSpaceDataQualityExecutionContext(val);
59
+ }
60
+ if (val instanceof MappingAndRuntimeDataQualityExecutionContext) {
61
+ element.context =
62
+ observe_MappingAndRuntimeDataQualityExecutionContext(val);
63
+ }
64
+ },
65
+ );
66
+
67
+ export const dataQualityClassValidation_setFilter = action(
68
+ (
69
+ element: DataQualityClassValidationsConfiguration,
70
+ val: RawLambda | undefined,
71
+ ): void => {
72
+ element.filter = val ? observe_RawLambda(val) : val;
73
+ },
74
+ );
75
+
76
+ export const dataQualityClassValidation_setContextDataQualityContext = action(
77
+ (element: DataQualityClassValidationsConfiguration, val: string): void => {
78
+ if (element.context instanceof DataSpaceDataQualityExecutionContext) {
79
+ element.context.context = val;
80
+ element.context = observe_DataSpaceDataQualityExecutionContext(
81
+ element.context,
82
+ );
83
+ }
84
+ },
85
+ );
86
+
87
+ export const dataQualityClassValidation_setRuntimeDataQualityContext = action(
88
+ (
89
+ element: DataQualityClassValidationsConfiguration,
90
+ val: PackageableElementReference<PackageableRuntime>,
91
+ observerContext: ObserverContext,
92
+ ): void => {
93
+ if (
94
+ element.context instanceof MappingAndRuntimeDataQualityExecutionContext
95
+ ) {
96
+ element.context.runtime = PackageableElementExplicitReference.create(
97
+ observe_PackageableRuntime(val.value, observerContext),
98
+ );
99
+ }
100
+ },
101
+ );
102
+ export const graphFetchTree_removeAllSubTrees = action(
103
+ (target: GraphFetchTree): void => {
104
+ target.subTrees = [];
105
+ },
106
+ );
107
+ export const dataQualityGraphFetchTree_removeConstraints = action(
108
+ (target: GraphFetchTree): void => {
109
+ if (target instanceof DataQualityRootGraphFetchTree) {
110
+ target.constraints = [];
111
+ }
112
+ },
113
+ );
@@ -0,0 +1,59 @@
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 packageJson from '../../package.json';
17
+ import {
18
+ type ElementObserver,
19
+ type PureGraphManagerExtensionBuilder,
20
+ type ObserverContext,
21
+ type PackageableElement,
22
+ PureGraphManagerPlugin,
23
+ } from '@finos/legend-graph';
24
+ import {
25
+ DataQualityClassValidationsConfiguration,
26
+ DataQualityServiceValidationConfiguration,
27
+ } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
28
+ import {
29
+ observe_DataQualityConstraintsConfiguration,
30
+ observe_DataQualityServiceValidationConfiguration,
31
+ } from './action/changeDetection/DSL_DataQuality_ObserverHelper.js';
32
+ import { DSL_DataQuality_buildGraphManagerExtension } from './protocol/pure/DSL_DataQuality_buildGraphManagerExtension.js';
33
+
34
+ export class DSL_DataQuality_PureGraphManagerPlugin extends PureGraphManagerPlugin {
35
+ constructor() {
36
+ super(packageJson.extensions.pureGraphManagerPlugin, packageJson.version);
37
+ }
38
+
39
+ override getExtraElementObservers(): ElementObserver[] {
40
+ return [
41
+ (
42
+ element: PackageableElement,
43
+ context: ObserverContext,
44
+ ): PackageableElement | undefined => {
45
+ if (element instanceof DataQualityClassValidationsConfiguration) {
46
+ return observe_DataQualityConstraintsConfiguration(element);
47
+ }
48
+ if (element instanceof DataQualityServiceValidationConfiguration) {
49
+ return observe_DataQualityServiceValidationConfiguration(element);
50
+ }
51
+ return undefined;
52
+ },
53
+ ];
54
+ }
55
+
56
+ override getExtraPureGraphManagerExtensionBuilders(): PureGraphManagerExtensionBuilder[] {
57
+ return [DSL_DataQuality_buildGraphManagerExtension];
58
+ }
59
+ }
@@ -0,0 +1,153 @@
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
+
17
+ import {
18
+ observe_Abstract_PackageableElement,
19
+ observe_Class,
20
+ observe_PackageableElementReference,
21
+ observe_PropertyReference,
22
+ observe_RawLambda,
23
+ skipObserved,
24
+ } from '@finos/legend-graph';
25
+ import { makeObservable, observable, override } from 'mobx';
26
+ import {
27
+ type DataQualityClassValidationsConfiguration,
28
+ type DataQualityServiceValidationConfiguration,
29
+ DataSpaceDataQualityExecutionContext,
30
+ MappingAndRuntimeDataQualityExecutionContext,
31
+ } from '../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
32
+ import { observe_DataSpace } from '@finos/legend-extension-dsl-data-space/graph';
33
+ import {
34
+ type DataQualityRootGraphFetchTree,
35
+ DataQualityPropertyGraphFetchTree,
36
+ } from '../../../graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js';
37
+
38
+ export const observe_DataSpaceDataQualityExecutionContext = skipObserved(
39
+ (
40
+ metamodel: DataSpaceDataQualityExecutionContext,
41
+ ): DataSpaceDataQualityExecutionContext => {
42
+ makeObservable<DataSpaceDataQualityExecutionContext>(metamodel, {
43
+ context: observable,
44
+ dataSpace: observable,
45
+ });
46
+ observe_DataSpace(metamodel.dataSpace.value);
47
+ return metamodel;
48
+ },
49
+ );
50
+
51
+ export const observe_MappingAndRuntimeDataQualityExecutionContext =
52
+ skipObserved(
53
+ (
54
+ metamodel: MappingAndRuntimeDataQualityExecutionContext,
55
+ ): MappingAndRuntimeDataQualityExecutionContext => {
56
+ makeObservable<MappingAndRuntimeDataQualityExecutionContext>(metamodel, {
57
+ mapping: observable,
58
+ runtime: observable,
59
+ });
60
+ observe_PackageableElementReference(metamodel.mapping);
61
+ observe_PackageableElementReference(metamodel.runtime);
62
+ return metamodel;
63
+ },
64
+ );
65
+
66
+ export const observe_DataQualityPropertyGraphFetchTree = skipObserved(
67
+ (
68
+ metamodel: DataQualityPropertyGraphFetchTree,
69
+ ): DataQualityPropertyGraphFetchTree => {
70
+ makeObservable<DataQualityPropertyGraphFetchTree>(metamodel, {
71
+ constraints: observable,
72
+ property: observable,
73
+ subTrees: observable,
74
+ });
75
+ observe_PropertyReference(metamodel.property);
76
+ metamodel.subTrees.forEach((subTree) => {
77
+ if (subTree instanceof DataQualityPropertyGraphFetchTree) {
78
+ observe_DataQualityPropertyGraphFetchTree(subTree);
79
+ }
80
+ });
81
+ return metamodel;
82
+ },
83
+ );
84
+
85
+ export const observe_DataQualityRootGraphFetchTree = skipObserved(
86
+ (metamodel: DataQualityRootGraphFetchTree): DataQualityRootGraphFetchTree => {
87
+ makeObservable<DataQualityRootGraphFetchTree>(metamodel, {
88
+ class: observable,
89
+ subTrees: observable,
90
+ constraints: observable,
91
+ });
92
+ observe_Class(metamodel.class.value);
93
+ metamodel.subTrees.forEach((subTree) => {
94
+ if (subTree instanceof DataQualityPropertyGraphFetchTree) {
95
+ observe_DataQualityPropertyGraphFetchTree(subTree);
96
+ }
97
+ });
98
+ return metamodel;
99
+ },
100
+ );
101
+ export const observe_DataQualityConstraintsConfiguration = skipObserved(
102
+ (
103
+ metamodel: DataQualityClassValidationsConfiguration,
104
+ ): DataQualityClassValidationsConfiguration => {
105
+ observe_Abstract_PackageableElement(metamodel);
106
+
107
+ makeObservable<
108
+ DataQualityClassValidationsConfiguration,
109
+ '_elementHashCode'
110
+ >(metamodel, {
111
+ _elementHashCode: override,
112
+ context: observable,
113
+ filter: observable,
114
+ dataQualityRootGraphFetchTree: observable,
115
+ });
116
+ if (metamodel.context instanceof DataSpaceDataQualityExecutionContext) {
117
+ observe_DataSpaceDataQualityExecutionContext(metamodel.context);
118
+ }
119
+ if (
120
+ metamodel.context instanceof MappingAndRuntimeDataQualityExecutionContext
121
+ ) {
122
+ observe_MappingAndRuntimeDataQualityExecutionContext(metamodel.context);
123
+ }
124
+ if (metamodel.filter) {
125
+ observe_RawLambda(metamodel.filter);
126
+ }
127
+ if (metamodel.dataQualityRootGraphFetchTree) {
128
+ observe_DataQualityRootGraphFetchTree(
129
+ metamodel.dataQualityRootGraphFetchTree,
130
+ );
131
+ }
132
+ return metamodel;
133
+ },
134
+ );
135
+
136
+ export const observe_DataQualityServiceValidationConfiguration = skipObserved(
137
+ (
138
+ metamodel: DataQualityServiceValidationConfiguration,
139
+ ): DataQualityServiceValidationConfiguration => {
140
+ observe_Abstract_PackageableElement(metamodel);
141
+
142
+ makeObservable<
143
+ DataQualityServiceValidationConfiguration,
144
+ '_elementHashCode'
145
+ >(metamodel, {
146
+ _elementHashCode: override,
147
+ contextName: observable,
148
+ serviceName: observable,
149
+ dataQualityRootGraphFetchTree: observable,
150
+ });
151
+ return metamodel;
152
+ },
153
+ );
@@ -0,0 +1,19 @@
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
+
17
+ export * from './DSL_DataQuality_GraphManagerPreset.js';
18
+ export * from './protocol/pure/v1/transformation/V1_ValueSpecificationBuilderHelper.js';
19
+ export * from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityGraphFetchTree.js';
@@ -0,0 +1,59 @@
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
+
17
+ import {
18
+ type AbstractPureGraphManager,
19
+ type RawExecutionPlan,
20
+ type ExecutionResult,
21
+ type PureModel,
22
+ type RootGraphFetchTree,
23
+ AbstractPureGraphManagerExtension,
24
+ } from '@finos/legend-graph';
25
+ import { guaranteeNonNullable } from '@finos/legend-shared';
26
+
27
+ export abstract class DSL_DataQuality_PureGraphManagerExtension extends AbstractPureGraphManagerExtension {
28
+ abstract generatePlan(
29
+ graph: PureModel,
30
+ packagePath: string,
31
+ ): Promise<RawExecutionPlan>;
32
+
33
+ abstract execute(
34
+ graph: PureModel,
35
+ packagePath: string,
36
+ previewLimit: number,
37
+ ): Promise<ExecutionResult>;
38
+
39
+ abstract debugExecutionPlanGeneration(
40
+ graph: PureModel,
41
+ packagePath: string,
42
+ ): Promise<{ plan: RawExecutionPlan; debug: string }>;
43
+
44
+ abstract fetchStructuralValidations(
45
+ graph: PureModel,
46
+ packagePath: string,
47
+ ): Promise<RootGraphFetchTree>;
48
+ }
49
+
50
+ export const getDataQualityPureGraphManagerExtension = (
51
+ graphManager: AbstractPureGraphManager,
52
+ ): DSL_DataQuality_PureGraphManagerExtension =>
53
+ guaranteeNonNullable(
54
+ graphManager.extensions.find(
55
+ (extension) =>
56
+ extension instanceof DSL_DataQuality_PureGraphManagerExtension,
57
+ ),
58
+ `Can't find Data Quality Pure graph manager extension`,
59
+ );