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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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
+ );