@finos/legend-application-marketplace 0.0.20 → 0.0.21

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 (223) hide show
  1. package/lib/__lib__/LegendMarketplaceNavigation.d.ts +2 -0
  2. package/lib/__lib__/LegendMarketplaceNavigation.d.ts.map +1 -1
  3. package/lib/__lib__/LegendMarketplaceNavigation.js +10 -1
  4. package/lib/__lib__/LegendMarketplaceNavigation.js.map +1 -1
  5. package/lib/app.css +2 -2
  6. package/lib/app.css.map +1 -1
  7. package/lib/application/LegendMarketplaceApplicationConfig.d.ts +10 -0
  8. package/lib/application/LegendMarketplaceApplicationConfig.d.ts.map +1 -1
  9. package/lib/application/LegendMarketplaceApplicationConfig.js +10 -0
  10. package/lib/application/LegendMarketplaceApplicationConfig.js.map +1 -1
  11. package/lib/application/LegendMarketplaceWebApplication.d.ts.map +1 -1
  12. package/lib/application/LegendMarketplaceWebApplication.js +12 -9
  13. package/lib/application/LegendMarketplaceWebApplication.js.map +1 -1
  14. package/lib/components/DataProductCard/LegendMarketplaceDataProductSearchCard.d.ts.map +1 -1
  15. package/lib/components/DataProductCard/LegendMarketplaceDataProductSearchCard.js +6 -3
  16. package/lib/components/DataProductCard/LegendMarketplaceDataProductSearchCard.js.map +1 -1
  17. package/lib/components/DataProductCard/LegendMarketplaceLightDataProductCard.d.ts.map +1 -1
  18. package/lib/components/DataProductCard/LegendMarketplaceLightDataProductCard.js +9 -6
  19. package/lib/components/DataProductCard/LegendMarketplaceLightDataProductCard.js.map +1 -1
  20. package/lib/components/{Lakehouse/LakehouseHeader.d.ts → Header/MarketplaceLakehouseHeader.d.ts} +2 -2
  21. package/lib/components/Header/MarketplaceLakehouseHeader.d.ts.map +1 -0
  22. package/lib/components/{Lakehouse/LakehouseHeader.js → Header/MarketplaceLakehouseHeader.js} +3 -3
  23. package/lib/components/Header/MarketplaceLakehouseHeader.js.map +1 -0
  24. package/lib/components/MarketplaceCard/LegendMarketplaceCard.d.ts +25 -0
  25. package/lib/components/MarketplaceCard/LegendMarketplaceCard.d.ts.map +1 -0
  26. package/lib/components/MarketplaceCard/LegendMarketplaceCard.js +32 -0
  27. package/lib/components/MarketplaceCard/LegendMarketplaceCard.js.map +1 -0
  28. package/lib/components/ProviderCard/LegendMarketplaceProviderCard.d.ts.map +1 -1
  29. package/lib/components/ProviderCard/LegendMarketplaceProviderCard.js +6 -3
  30. package/lib/components/ProviderCard/LegendMarketplaceProviderCard.js.map +1 -1
  31. package/lib/components/__test-utils__/LegendMarketplaceStoreTestUtils.d.ts.map +1 -1
  32. package/lib/components/__test-utils__/LegendMarketplaceStoreTestUtils.js +3 -6
  33. package/lib/components/__test-utils__/LegendMarketplaceStoreTestUtils.js.map +1 -1
  34. package/lib/index.css +2 -2
  35. package/lib/index.css.map +1 -1
  36. package/lib/package.json +2 -1
  37. package/lib/pages/Home/LegendMarketplaceHome.d.ts.map +1 -1
  38. package/lib/pages/Home/LegendMarketplaceHome.js +4 -4
  39. package/lib/pages/Home/LegendMarketplaceHome.js.map +1 -1
  40. package/lib/pages/Lakehouse/DataProductDataAccess.d.ts.map +1 -0
  41. package/lib/{components → pages}/Lakehouse/DataProductDataAccess.js +39 -6
  42. package/lib/pages/Lakehouse/DataProductDataAccess.js.map +1 -0
  43. package/lib/pages/Lakehouse/DataProductHolder.d.ts.map +1 -0
  44. package/lib/pages/Lakehouse/DataProductHolder.js.map +1 -0
  45. package/lib/pages/Lakehouse/DataProductViewer.d.ts.map +1 -0
  46. package/lib/pages/Lakehouse/DataProductViewer.js.map +1 -0
  47. package/lib/pages/Lakehouse/DataProductViewerActivityBar.d.ts.map +1 -0
  48. package/lib/pages/Lakehouse/DataProductViewerActivityBar.js.map +1 -0
  49. package/lib/pages/Lakehouse/DataProductWiki.d.ts.map +1 -0
  50. package/lib/pages/Lakehouse/DataProductWiki.js.map +1 -0
  51. package/lib/pages/Lakehouse/LakehouseDataProduct.d.ts.map +1 -0
  52. package/lib/{components → pages}/Lakehouse/LakehouseDataProduct.js +3 -3
  53. package/lib/pages/Lakehouse/LakehouseDataProduct.js.map +1 -0
  54. package/lib/{components/Lakehouse/LakehouseMarketplace.d.ts → pages/Lakehouse/MarketplaceLakehouseHome.d.ts} +2 -2
  55. package/lib/pages/Lakehouse/MarketplaceLakehouseHome.d.ts.map +1 -0
  56. package/lib/pages/Lakehouse/MarketplaceLakehouseHome.js +54 -0
  57. package/lib/pages/Lakehouse/MarketplaceLakehouseHome.js.map +1 -0
  58. package/lib/{components/Lakehouse/MarketLakehouseStoreProvider.d.ts → pages/Lakehouse/MarketplaceLakehouseStoreProvider.d.ts} +1 -1
  59. package/lib/pages/Lakehouse/MarketplaceLakehouseStoreProvider.d.ts.map +1 -0
  60. package/lib/{components/Lakehouse/MarketLakehouseStoreProvider.js → pages/Lakehouse/MarketplaceLakehouseStoreProvider.js} +1 -1
  61. package/lib/pages/Lakehouse/MarketplaceLakehouseStoreProvider.js.map +1 -0
  62. package/lib/pages/Lakehouse/entitlements/EntitlementsDashboard.d.ts +23 -0
  63. package/lib/pages/Lakehouse/entitlements/EntitlementsDashboard.d.ts.map +1 -0
  64. package/lib/{components/Lakehouse/entitlements/LakehouseEntitlements.js → pages/Lakehouse/entitlements/EntitlementsDashboard.js} +10 -86
  65. package/lib/pages/Lakehouse/entitlements/EntitlementsDashboard.js.map +1 -0
  66. package/lib/{components/Lakehouse/entitlements/DataContractCreator.d.ts → pages/Lakehouse/entitlements/EntitlementsDataContractCreator.d.ts} +1 -1
  67. package/lib/pages/Lakehouse/entitlements/EntitlementsDataContractCreator.d.ts.map +1 -0
  68. package/lib/{components/Lakehouse/entitlements/DataContractCreator.js → pages/Lakehouse/entitlements/EntitlementsDataContractCreator.js} +1 -1
  69. package/lib/pages/Lakehouse/entitlements/EntitlementsDataContractCreator.js.map +1 -0
  70. package/lib/pages/Lakehouse/entitlements/EntitlementsDataContractViewer.d.ts +22 -0
  71. package/lib/pages/Lakehouse/entitlements/EntitlementsDataContractViewer.d.ts.map +1 -0
  72. package/lib/pages/Lakehouse/entitlements/EntitlementsDataContractViewer.js +23 -0
  73. package/lib/pages/Lakehouse/entitlements/EntitlementsDataContractViewer.js.map +1 -0
  74. package/lib/pages/Lakehouse/entitlements/EntitlementsTaskViewer.d.ts +21 -0
  75. package/lib/pages/Lakehouse/entitlements/EntitlementsTaskViewer.d.ts.map +1 -0
  76. package/lib/pages/Lakehouse/entitlements/EntitlementsTaskViewer.js +32 -0
  77. package/lib/pages/Lakehouse/entitlements/EntitlementsTaskViewer.js.map +1 -0
  78. package/lib/pages/Lakehouse/entitlements/LakehouseEntitlements.d.ts +17 -0
  79. package/lib/pages/Lakehouse/entitlements/LakehouseEntitlements.d.ts.map +1 -0
  80. package/lib/pages/Lakehouse/entitlements/LakehouseEntitlements.js +55 -0
  81. package/lib/pages/Lakehouse/entitlements/LakehouseEntitlements.js.map +1 -0
  82. package/lib/pages/Lakehouse/entitlements/LakehouseEntitlementsStoreProvider.d.ts.map +1 -0
  83. package/lib/pages/Lakehouse/entitlements/LakehouseEntitlementsStoreProvider.js.map +1 -0
  84. package/lib/pages/Lakehouse/shared/GridItemViewer.d.ts +21 -0
  85. package/lib/pages/Lakehouse/shared/GridItemViewer.d.ts.map +1 -0
  86. package/lib/pages/Lakehouse/shared/GridItemViewer.js +46 -0
  87. package/lib/pages/Lakehouse/shared/GridItemViewer.js.map +1 -0
  88. package/lib/pages/Lakehouse/subscriptions/LakehouseSubscriptions.d.ts.map +1 -0
  89. package/lib/{components → pages}/Lakehouse/subscriptions/LakehouseSubscriptions.js +4 -6
  90. package/lib/pages/Lakehouse/subscriptions/LakehouseSubscriptions.js.map +1 -0
  91. package/lib/pages/Lakehouse/subscriptions/LakehouseSubscriptionsStoreProvider.d.ts.map +1 -0
  92. package/lib/pages/Lakehouse/subscriptions/LakehouseSubscriptionsStoreProvider.js.map +1 -0
  93. package/lib/pages/LegendMarketplacePage.d.ts +23 -0
  94. package/lib/pages/LegendMarketplacePage.d.ts.map +1 -0
  95. package/lib/pages/LegendMarketplacePage.js +23 -0
  96. package/lib/pages/LegendMarketplacePage.js.map +1 -0
  97. package/lib/pages/SearchResults/LegendMarketplaceSearchResults.d.ts.map +1 -1
  98. package/lib/pages/SearchResults/LegendMarketplaceSearchResults.js +13 -13
  99. package/lib/pages/SearchResults/LegendMarketplaceSearchResults.js.map +1 -1
  100. package/lib/pages/VendorData/LegendMarketplaceVendorData.d.ts.map +1 -1
  101. package/lib/pages/VendorData/LegendMarketplaceVendorData.js +6 -6
  102. package/lib/pages/VendorData/LegendMarketplaceVendorData.js.map +1 -1
  103. package/lib/stores/LakehouseContractServerClient.d.ts +3 -0
  104. package/lib/stores/LakehouseContractServerClient.d.ts.map +1 -1
  105. package/lib/stores/LakehouseContractServerClient.js +11 -0
  106. package/lib/stores/LakehouseContractServerClient.js.map +1 -1
  107. package/lib/stores/LegendMarketplaceBaseStore.d.ts +3 -0
  108. package/lib/stores/LegendMarketplaceBaseStore.d.ts.map +1 -1
  109. package/lib/stores/LegendMarketplaceBaseStore.js +8 -1
  110. package/lib/stores/LegendMarketplaceBaseStore.js.map +1 -1
  111. package/lib/stores/lakehouse/LakehouseUtils.d.ts +29 -1
  112. package/lib/stores/lakehouse/LakehouseUtils.d.ts.map +1 -1
  113. package/lib/stores/lakehouse/LakehouseUtils.js +203 -1
  114. package/lib/stores/lakehouse/LakehouseUtils.js.map +1 -1
  115. package/lib/stores/lakehouse/entitlements/{LakehouseEntitlementsMainViewState.d.ts → EntitlementsDashboardState.d.ts} +2 -2
  116. package/lib/stores/lakehouse/entitlements/EntitlementsDashboardState.d.ts.map +1 -0
  117. package/lib/stores/lakehouse/entitlements/{LakehouseEntitlementsMainViewState.js → EntitlementsDashboardState.js} +12 -3
  118. package/lib/stores/lakehouse/entitlements/EntitlementsDashboardState.js.map +1 -0
  119. package/lib/stores/lakehouse/entitlements/{DataContractState.d.ts → EntitlementsDataContractViewerState.d.ts} +11 -8
  120. package/lib/stores/lakehouse/entitlements/EntitlementsDataContractViewerState.d.ts.map +1 -0
  121. package/lib/stores/lakehouse/entitlements/EntitlementsDataContractViewerState.js +65 -0
  122. package/lib/stores/lakehouse/entitlements/EntitlementsDataContractViewerState.js.map +1 -0
  123. package/lib/stores/lakehouse/entitlements/{DataContractTaskState.d.ts → EntitlementsTaskViewerState.d.ts} +12 -6
  124. package/lib/stores/lakehouse/entitlements/EntitlementsTaskViewerState.d.ts.map +1 -0
  125. package/lib/stores/lakehouse/entitlements/{DataContractTaskState.js → EntitlementsTaskViewerState.js} +39 -21
  126. package/lib/stores/lakehouse/entitlements/EntitlementsTaskViewerState.js.map +1 -0
  127. package/lib/stores/lakehouse/entitlements/LakehouseEntitlementsStore.d.ts +4 -5
  128. package/lib/stores/lakehouse/entitlements/LakehouseEntitlementsStore.d.ts.map +1 -1
  129. package/lib/stores/lakehouse/entitlements/LakehouseEntitlementsStore.js +30 -13
  130. package/lib/stores/lakehouse/entitlements/LakehouseEntitlementsStore.js.map +1 -1
  131. package/package.json +5 -4
  132. package/src/__lib__/LegendMarketplaceNavigation.ts +15 -1
  133. package/src/application/LegendMarketplaceApplicationConfig.ts +25 -0
  134. package/src/application/LegendMarketplaceWebApplication.tsx +32 -13
  135. package/src/components/DataProductCard/LegendMarketplaceDataProductSearchCard.tsx +41 -33
  136. package/src/components/DataProductCard/LegendMarketplaceLightDataProductCard.tsx +33 -36
  137. package/src/components/{Lakehouse/LakehouseHeader.tsx → Header/MarketplaceLakehouseHeader.tsx} +2 -2
  138. package/src/components/MarketplaceCard/LegendMarketplaceCard.tsx +98 -0
  139. package/src/components/ProviderCard/LegendMarketplaceProviderCard.tsx +47 -39
  140. package/src/components/__test-utils__/LegendMarketplaceStoreTestUtils.tsx +2 -14
  141. package/src/pages/Home/LegendMarketplaceHome.tsx +42 -51
  142. package/src/{components → pages}/Lakehouse/DataProductDataAccess.tsx +77 -7
  143. package/src/{components → pages}/Lakehouse/LakehouseDataProduct.tsx +14 -23
  144. package/src/pages/Lakehouse/MarketplaceLakehouseHome.tsx +167 -0
  145. package/src/{components/Lakehouse/entitlements/LakehouseEntitlements.tsx → pages/Lakehouse/entitlements/EntitlementsDashboard.tsx} +20 -247
  146. package/src/pages/Lakehouse/entitlements/EntitlementsDataContractViewer.tsx +33 -0
  147. package/src/pages/Lakehouse/entitlements/EntitlementsTaskViewer.tsx +73 -0
  148. package/src/pages/Lakehouse/entitlements/LakehouseEntitlements.tsx +82 -0
  149. package/src/pages/Lakehouse/shared/GridItemViewer.tsx +105 -0
  150. package/src/{components → pages}/Lakehouse/subscriptions/LakehouseSubscriptions.tsx +15 -27
  151. package/src/pages/LegendMarketplacePage.tsx +26 -0
  152. package/src/pages/SearchResults/LegendMarketplaceSearchResults.tsx +58 -65
  153. package/src/pages/VendorData/LegendMarketplaceVendorData.tsx +44 -42
  154. package/src/stores/LakehouseContractServerClient.ts +29 -0
  155. package/src/stores/LegendMarketplaceBaseStore.ts +16 -1
  156. package/src/stores/lakehouse/LakehouseUtils.ts +252 -0
  157. package/src/stores/lakehouse/entitlements/{LakehouseEntitlementsMainViewState.ts → EntitlementsDashboardState.ts} +19 -3
  158. package/src/stores/lakehouse/entitlements/EntitlementsDataContractViewerState.ts +101 -0
  159. package/src/stores/lakehouse/entitlements/{DataContractTaskState.ts → EntitlementsTaskViewerState.ts} +62 -24
  160. package/src/stores/lakehouse/entitlements/LakehouseEntitlementsStore.ts +44 -23
  161. package/tsconfig.json +23 -17
  162. package/lib/components/Lakehouse/DataProductDataAccess.d.ts.map +0 -1
  163. package/lib/components/Lakehouse/DataProductDataAccess.js.map +0 -1
  164. package/lib/components/Lakehouse/DataProductHolder.d.ts.map +0 -1
  165. package/lib/components/Lakehouse/DataProductHolder.js.map +0 -1
  166. package/lib/components/Lakehouse/DataProductViewer.d.ts.map +0 -1
  167. package/lib/components/Lakehouse/DataProductViewer.js.map +0 -1
  168. package/lib/components/Lakehouse/DataProductViewerActivityBar.d.ts.map +0 -1
  169. package/lib/components/Lakehouse/DataProductViewerActivityBar.js.map +0 -1
  170. package/lib/components/Lakehouse/DataProductWiki.d.ts.map +0 -1
  171. package/lib/components/Lakehouse/DataProductWiki.js.map +0 -1
  172. package/lib/components/Lakehouse/LakehouseDataProduct.d.ts.map +0 -1
  173. package/lib/components/Lakehouse/LakehouseDataProduct.js.map +0 -1
  174. package/lib/components/Lakehouse/LakehouseHeader.d.ts.map +0 -1
  175. package/lib/components/Lakehouse/LakehouseHeader.js.map +0 -1
  176. package/lib/components/Lakehouse/LakehouseMarketplace.d.ts.map +0 -1
  177. package/lib/components/Lakehouse/LakehouseMarketplace.js +0 -51
  178. package/lib/components/Lakehouse/LakehouseMarketplace.js.map +0 -1
  179. package/lib/components/Lakehouse/MarketLakehouseStoreProvider.d.ts.map +0 -1
  180. package/lib/components/Lakehouse/MarketLakehouseStoreProvider.js.map +0 -1
  181. package/lib/components/Lakehouse/entitlements/DataContractCreator.d.ts.map +0 -1
  182. package/lib/components/Lakehouse/entitlements/DataContractCreator.js.map +0 -1
  183. package/lib/components/Lakehouse/entitlements/LakehouseEntitlements.d.ts +0 -28
  184. package/lib/components/Lakehouse/entitlements/LakehouseEntitlements.d.ts.map +0 -1
  185. package/lib/components/Lakehouse/entitlements/LakehouseEntitlements.js.map +0 -1
  186. package/lib/components/Lakehouse/entitlements/LakehouseEntitlementsStoreProvider.d.ts.map +0 -1
  187. package/lib/components/Lakehouse/entitlements/LakehouseEntitlementsStoreProvider.js.map +0 -1
  188. package/lib/components/Lakehouse/subscriptions/LakehouseSubscriptions.d.ts.map +0 -1
  189. package/lib/components/Lakehouse/subscriptions/LakehouseSubscriptions.js.map +0 -1
  190. package/lib/components/Lakehouse/subscriptions/LakehouseSubscriptionsStoreProvider.d.ts.map +0 -1
  191. package/lib/components/Lakehouse/subscriptions/LakehouseSubscriptionsStoreProvider.js.map +0 -1
  192. package/lib/stores/lakehouse/entitlements/DataContractState.d.ts.map +0 -1
  193. package/lib/stores/lakehouse/entitlements/DataContractState.js +0 -127
  194. package/lib/stores/lakehouse/entitlements/DataContractState.js.map +0 -1
  195. package/lib/stores/lakehouse/entitlements/DataContractTaskState.d.ts.map +0 -1
  196. package/lib/stores/lakehouse/entitlements/DataContractTaskState.js.map +0 -1
  197. package/lib/stores/lakehouse/entitlements/LakehouseEntitlementsMainViewState.d.ts.map +0 -1
  198. package/lib/stores/lakehouse/entitlements/LakehouseEntitlementsMainViewState.js.map +0 -1
  199. package/src/components/Lakehouse/LakehouseMarketplace.tsx +0 -184
  200. package/src/stores/lakehouse/entitlements/DataContractState.ts +0 -142
  201. /package/lib/{components → pages}/Lakehouse/DataProductDataAccess.d.ts +0 -0
  202. /package/lib/{components → pages}/Lakehouse/DataProductHolder.d.ts +0 -0
  203. /package/lib/{components → pages}/Lakehouse/DataProductHolder.js +0 -0
  204. /package/lib/{components → pages}/Lakehouse/DataProductViewer.d.ts +0 -0
  205. /package/lib/{components → pages}/Lakehouse/DataProductViewer.js +0 -0
  206. /package/lib/{components → pages}/Lakehouse/DataProductViewerActivityBar.d.ts +0 -0
  207. /package/lib/{components → pages}/Lakehouse/DataProductViewerActivityBar.js +0 -0
  208. /package/lib/{components → pages}/Lakehouse/DataProductWiki.d.ts +0 -0
  209. /package/lib/{components → pages}/Lakehouse/DataProductWiki.js +0 -0
  210. /package/lib/{components → pages}/Lakehouse/LakehouseDataProduct.d.ts +0 -0
  211. /package/lib/{components → pages}/Lakehouse/entitlements/LakehouseEntitlementsStoreProvider.d.ts +0 -0
  212. /package/lib/{components → pages}/Lakehouse/entitlements/LakehouseEntitlementsStoreProvider.js +0 -0
  213. /package/lib/{components → pages}/Lakehouse/subscriptions/LakehouseSubscriptions.d.ts +0 -0
  214. /package/lib/{components → pages}/Lakehouse/subscriptions/LakehouseSubscriptionsStoreProvider.d.ts +0 -0
  215. /package/lib/{components → pages}/Lakehouse/subscriptions/LakehouseSubscriptionsStoreProvider.js +0 -0
  216. /package/src/{components → pages}/Lakehouse/DataProductHolder.tsx +0 -0
  217. /package/src/{components → pages}/Lakehouse/DataProductViewer.tsx +0 -0
  218. /package/src/{components → pages}/Lakehouse/DataProductViewerActivityBar.tsx +0 -0
  219. /package/src/{components → pages}/Lakehouse/DataProductWiki.tsx +0 -0
  220. /package/src/{components/Lakehouse/MarketLakehouseStoreProvider.tsx → pages/Lakehouse/MarketplaceLakehouseStoreProvider.tsx} +0 -0
  221. /package/src/{components/Lakehouse/entitlements/DataContractCreator.tsx → pages/Lakehouse/entitlements/EntitlementsDataContractCreator.tsx} +0 -0
  222. /package/src/{components → pages}/Lakehouse/entitlements/LakehouseEntitlementsStoreProvider.tsx +0 -0
  223. /package/src/{components → pages}/Lakehouse/subscriptions/LakehouseSubscriptionsStoreProvider.tsx +0 -0
@@ -0,0 +1,105 @@
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 { Grid2, Typography } from '@mui/material';
18
+ import {
19
+ GridTiemStatus,
20
+ type GridItemDetail,
21
+ } from '../../../stores/lakehouse/LakehouseUtils.js';
22
+ import { clsx } from '@finos/legend-art';
23
+
24
+ export const GridItemsViewer = (props: {
25
+ details: GridItemDetail[];
26
+ title: string;
27
+ }) => {
28
+ const gridDetails = props.details;
29
+ const title = props.title;
30
+ return (
31
+ <>
32
+ <Typography
33
+ className="entitlements-grid-viewer__header"
34
+ variant="h6"
35
+ sx={{ marginBottom: '0.5rem' }}
36
+ >
37
+ {title}
38
+ </Typography>
39
+ <Grid2
40
+ container={true}
41
+ spacing={0}
42
+ sx={{
43
+ '--Grid-borderWidth': '1px',
44
+ borderTop: 'var(--Grid-borderWidth) solid',
45
+ borderLeft: 'var(--Grid-borderWidth) solid',
46
+ borderColor: 'divider',
47
+ '& > div': {
48
+ borderRight: 'var(--Grid-borderWidth) solid',
49
+ borderBottom: 'var(--Grid-borderWidth) solid',
50
+ borderColor: 'divider',
51
+ },
52
+ }}
53
+ >
54
+ {gridDetails.map((gridItem, index) => (
55
+ <>
56
+ <Grid2
57
+ container={false}
58
+ key={gridItem.name}
59
+ size={4}
60
+ sx={{
61
+ alignContent: 'center',
62
+ backgroundColor: index % 2 === 0 ? '#f5f5f5' : 'white',
63
+ }}
64
+ >
65
+ <Typography
66
+ variant="button"
67
+ fontWeight={'bold'}
68
+ sx={{ fontSize: '14px', padding: '6px' }}
69
+ >
70
+ {gridItem.name}
71
+ </Typography>
72
+ </Grid2>
73
+ <Grid2
74
+ container={false}
75
+ size={8}
76
+ sx={{
77
+ alignContent: 'center',
78
+ backgroundColor: index % 2 === 0 ? '#f5f5f5' : 'white',
79
+ }}
80
+ >
81
+ <Typography
82
+ variant="subtitle1"
83
+ sx={{ fontSize: '14px', padding: '6px' }}
84
+ className={clsx({
85
+ 'entitlements-grid-viewer__item-clickable-text': Boolean(
86
+ gridItem.onClick,
87
+ ),
88
+ 'entitlements-grid-viewer__status--success':
89
+ gridItem.status === GridTiemStatus.SUCCESS,
90
+ 'entitlements-grid-viewer__status--error':
91
+ gridItem.status === GridTiemStatus.ERROR,
92
+ 'entitlements-grid-viewer__status--in-progress':
93
+ gridItem.status === GridTiemStatus.INFO,
94
+ })}
95
+ onClick={() => gridItem.onClick?.()}
96
+ >
97
+ {gridItem.value}
98
+ </Typography>
99
+ </Grid2>
100
+ </>
101
+ ))}
102
+ </Grid2>
103
+ </>
104
+ );
105
+ };
@@ -36,9 +36,7 @@ import {
36
36
  Select,
37
37
  TextField,
38
38
  Typography,
39
- type SelectChangeEvent,
40
39
  } from '@mui/material';
41
- import { LakehouseMarketplaceHeader } from '../LakehouseHeader.js';
42
40
  import {
43
41
  type V1_DataSubscriptionTarget,
44
42
  V1_DataSubscriptionTargetType,
@@ -53,6 +51,7 @@ import {
53
51
  import { assertErrorThrown } from '@finos/legend-shared';
54
52
  import { flowResult } from 'mobx';
55
53
  import type { LakehouseSubscriptionsStore } from '../../../stores/lakehouse/subscriptions/LakehouseSubscriptionsStore.js';
54
+ import { LegendMarketplacePage } from '../../LegendMarketplacePage.js';
56
55
 
57
56
  export const LakehouseSubscriptionsCreateDialog = (props: {
58
57
  open: boolean;
@@ -69,7 +68,7 @@ export const LakehouseSubscriptionsCreateDialog = (props: {
69
68
  V1_DataSubscriptionTargetType.Snowflake,
70
69
  );
71
70
  const [snowflakeAccountId, setSnowflakeAccountId] = useState<string>('');
72
- const [snowflakeRegion, setSnowflakeRegion] = useState<V1_SnowflakeRegion>(
71
+ const [snowflakeRegion] = useState<V1_SnowflakeRegion>(
73
72
  V1_SnowflakeRegion.AWS_US_EAST_1,
74
73
  );
75
74
  const [snowflakeNetwork] = useState<V1_SnowflakeNetwork>(
@@ -152,9 +151,7 @@ export const LakehouseSubscriptionsCreateDialog = (props: {
152
151
  id="snowflake-region-select"
153
152
  value={snowflakeRegion}
154
153
  label="Snowflake Region"
155
- onChange={(event: SelectChangeEvent<V1_SnowflakeRegion>) => {
156
- setSnowflakeRegion(event.target.value as V1_SnowflakeRegion);
157
- }}
154
+ disabled={true}
158
155
  >
159
156
  {Object.values(V1_SnowflakeRegion).map((region) => (
160
157
  <MenuItem key={region} value={region}>
@@ -344,27 +341,18 @@ export const LakehouseSubscriptions = withLakehouseSubscriptionsStore(
344
341
  }, [auth.user?.access_token, subscriptionsStore]);
345
342
 
346
343
  return (
347
- <div className="app__page">
348
- <div className="legend-marketplace-home">
349
- <div className="legend-marketplace-data-product-home__body">
350
- <LakehouseMarketplaceHeader />
351
- <div className="legend-marketplace-home__content">
352
- <div className="legend-marketplace-data-product__content">
353
- <CubesLoadingIndicator
354
- isLoading={Boolean(
355
- subscriptionsStore.initializationState.isInProgress,
356
- )}
357
- >
358
- <CubesLoadingIndicatorIcon />
359
- </CubesLoadingIndicator>
360
- <LakehouseSubscriptionsMainView
361
- subscriptionsStore={subscriptionsStore}
362
- />
363
- </div>
364
- </div>
365
- </div>
366
- </div>
367
- </div>
344
+ <LegendMarketplacePage className="legend-marketplace-lakehouse-subscriptions">
345
+ <CubesLoadingIndicator
346
+ isLoading={Boolean(
347
+ subscriptionsStore.initializationState.isInProgress,
348
+ )}
349
+ >
350
+ <CubesLoadingIndicatorIcon />
351
+ </CubesLoadingIndicator>
352
+ <LakehouseSubscriptionsMainView
353
+ subscriptionsStore={subscriptionsStore}
354
+ />
355
+ </LegendMarketplacePage>
368
356
  );
369
357
  }),
370
358
  );
@@ -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
+
17
+ import { clsx } from '@finos/legend-art';
18
+ import { observer } from 'mobx-react-lite';
19
+ import type React from 'react';
20
+
21
+ export const LegendMarketplacePage = observer(
22
+ (props: { className?: string; children: React.ReactNode }) => {
23
+ const { className, children } = props;
24
+ return <div className={clsx('app__page', className)}>{children}</div>;
25
+ },
26
+ );
@@ -16,7 +16,6 @@
16
16
 
17
17
  import { observer } from 'mobx-react-lite';
18
18
  import { LegendMarketplaceSearchBar } from '../../components/SearchBar/LegendMarketplaceSearchBar.js';
19
- import { LegendMarketplaceHeader } from '../../components/Header/LegendMarketplaceHeader.js';
20
19
  import { useApplicationStore } from '@finos/legend-application';
21
20
  import { generateSearchResultsRoute } from '../../__lib__/LegendMarketplaceNavigation.js';
22
21
  import { DataProductSearchResult } from '@finos/legend-server-marketplace';
@@ -30,6 +29,7 @@ import { assertErrorThrown } from '@finos/legend-shared';
30
29
  import { LegendMarketplaceSearchResultDrawerContent } from './LegendMarketplaceSearchResultDrawerContent.js';
31
30
  import { Drawer, Grid2 as Grid } from '@mui/material';
32
31
  import { LegendMarketplaceProductSearchCard } from '../../components/DataProductCard/LegendMarketplaceDataProductSearchCard.js';
32
+ import { LegendMarketplacePage } from '../LegendMarketplacePage.js';
33
33
 
34
34
  export const LegendMarketplaceSearchResults = observer(() => {
35
35
  const applicationStore = useApplicationStore();
@@ -87,71 +87,64 @@ export const LegendMarketplaceSearchResults = observer(() => {
87
87
  };
88
88
 
89
89
  return (
90
- <div className="app__page">
91
- <div className="legend-marketplace-search-results">
92
- <div className="legend-marketplace-search-results__body">
93
- <LegendMarketplaceHeader />
94
- <div className="legend-marketplace-search-results__content">
95
- <div className="legend-marketplace-search-results__search-bar">
96
- <LegendMarketplaceSearchBar
97
- onSearch={onSearch}
98
- initialValue={params.query?.trim() ?? ''}
99
- />
100
- </div>
101
- <div className="legend-marketplace-search-results__results">
102
- <CubesLoadingIndicator isLoading={isLoading}>
103
- <CubesLoadingIndicatorIcon />
104
- </CubesLoadingIndicator>
105
- {isError ? (
106
- <div>Error loading results</div>
107
- ) : (
108
- <Grid
109
- container={true}
110
- spacing={{ xs: 2, lg: 3, xl: 4 }}
111
- columns={{ xs: 1, sm: 2, lg: 3, xxl: 4, xxxl: 5, xxxxl: 6 }}
112
- className="legend-marketplace-search-results__results__cards"
113
- >
114
- {results.map((result) => (
115
- <Grid
116
- key={`${result.vendor_name}-${result.data_product_name}`}
117
- size={1}
118
- >
119
- <LegendMarketplaceProductSearchCard
120
- productSearchResult={result}
121
- onPreviewClick={() => {
122
- setSelectedPreviewResult(result);
123
- }}
124
- onLearnMoreClick={() => {
125
- applicationStore.navigationService.navigator.visitAddress(
126
- result.data_product_link,
127
- );
128
- }}
129
- />
130
- </Grid>
131
- ))}
132
- </Grid>
133
- )}
134
- </div>
135
- </div>
136
- <Drawer
137
- anchor="right"
138
- open={selectedPreviewResult !== undefined}
139
- onClose={() => setSelectedPreviewResult(undefined)}
140
- slotProps={{
141
- paper: {
142
- sx: {
143
- width: '40%',
144
- maxWidth: '100rem',
145
- },
146
- },
147
- }}
90
+ <LegendMarketplacePage className="legend-marketplace-search-results">
91
+ <div className="legend-marketplace-search-results__search-bar">
92
+ <LegendMarketplaceSearchBar
93
+ onSearch={onSearch}
94
+ initialValue={params.query?.trim() ?? ''}
95
+ />
96
+ </div>
97
+ <div className="legend-marketplace-search-results__results">
98
+ <CubesLoadingIndicator isLoading={isLoading}>
99
+ <CubesLoadingIndicatorIcon />
100
+ </CubesLoadingIndicator>
101
+ {isError ? (
102
+ <div>Error loading results</div>
103
+ ) : (
104
+ <Grid
105
+ container={true}
106
+ spacing={{ xs: 4 }}
107
+ columns={{ xs: 1, sm: 2, lg: 3, xxl: 4, xxxl: 5, xxxxl: 6 }}
108
+ className="legend-marketplace-search-results__results__cards"
148
109
  >
149
- <LegendMarketplaceSearchResultDrawerContent
150
- productSearchResult={selectedPreviewResult}
151
- />
152
- </Drawer>
153
- </div>
110
+ {results.map((result) => (
111
+ <Grid
112
+ key={`${result.vendor_name}-${result.data_product_name}`}
113
+ size={1}
114
+ >
115
+ <LegendMarketplaceProductSearchCard
116
+ productSearchResult={result}
117
+ onPreviewClick={() => {
118
+ setSelectedPreviewResult(result);
119
+ }}
120
+ onLearnMoreClick={() => {
121
+ applicationStore.navigationService.navigator.visitAddress(
122
+ result.data_product_link,
123
+ );
124
+ }}
125
+ />
126
+ </Grid>
127
+ ))}
128
+ </Grid>
129
+ )}
154
130
  </div>
155
- </div>
131
+ <Drawer
132
+ anchor="right"
133
+ open={selectedPreviewResult !== undefined}
134
+ onClose={() => setSelectedPreviewResult(undefined)}
135
+ slotProps={{
136
+ paper: {
137
+ sx: {
138
+ width: '40%',
139
+ maxWidth: '100rem',
140
+ },
141
+ },
142
+ }}
143
+ >
144
+ <LegendMarketplaceSearchResultDrawerContent
145
+ productSearchResult={selectedPreviewResult}
146
+ />
147
+ </Drawer>
148
+ </LegendMarketplacePage>
156
149
  );
157
150
  });
@@ -15,7 +15,6 @@
15
15
  */
16
16
 
17
17
  import { observer } from 'mobx-react-lite';
18
- import { LegendMarketplaceHeader } from '../../components/Header/LegendMarketplaceHeader.js';
19
18
  import { useEffect, useState } from 'react';
20
19
  import { LegendMarketplaceSearchBar } from '../../components/SearchBar/LegendMarketplaceSearchBar.js';
21
20
  import {
@@ -25,6 +24,7 @@ import {
25
24
  Checkbox,
26
25
  FormControlLabel,
27
26
  FormGroup,
27
+ Grid2 as Grid,
28
28
  Typography,
29
29
  } from '@mui/material';
30
30
  import { flowResult } from 'mobx';
@@ -33,6 +33,7 @@ import type { ProviderResult } from '@finos/legend-server-marketplace';
33
33
  import { LegendMarketplaceProviderCard } from '../../components/ProviderCard/LegendMarketplaceProviderCard.js';
34
34
  import type { LegendMarketPlaceVendorDataState } from '../../stores/LegendMarketPlaceVendorDataState.js';
35
35
  import { useLegendMarketplaceBaseStore } from '../../application/LegendMarketplaceFrameworkProvider.js';
36
+ import { LegendMarketplacePage } from '../LegendMarketplacePage.js';
36
37
 
37
38
  export const RefinedVendorRadioSelector = observer(() => {
38
39
  const radioOptions = ['All', 'Datafeeds', 'Terminal License', 'Add-Ons'];
@@ -79,15 +80,21 @@ const SearchResultsRenderer = observer(
79
80
  <strong>See All&gt;</strong>
80
81
  </a>
81
82
  </div>
82
- <div className="legend-marketplace-vendordata-main-search-results__card-group">
83
+ <Grid
84
+ container={true}
85
+ spacing={{ xs: 4 }}
86
+ columns={{ xs: 1, sm: 2, lg: 3, xxl: 4, xxxl: 5, xxxxl: 6 }}
87
+ className="legend-marketplace-vendordata-main-search-results__card-group"
88
+ >
83
89
  {providerResults.map((provider) => (
84
- <LegendMarketplaceProviderCard
85
- key={provider.id}
86
- providerResult={provider}
87
- onAddToCartClick={() => onAddToCartClick(provider)}
88
- />
90
+ <Grid key={provider.id} size={1}>
91
+ <LegendMarketplaceProviderCard
92
+ providerResult={provider}
93
+ onAddToCartClick={() => onAddToCartClick(provider)}
94
+ />
95
+ </Grid>
89
96
  ))}
90
- </div>
97
+ </Grid>
91
98
  </div>
92
99
  );
93
100
  },
@@ -163,41 +170,36 @@ export const LegendMarketPlaceVendorData = observer(() => {
163
170
  }, [marketPlaceVendorDataState, applicationStore]);
164
171
 
165
172
  return (
166
- <div className="app__page">
167
- <div className="legend-marketplace-vendor-data">
168
- <LegendMarketplaceHeader />
169
- <div className="legend-marketplace-vendor-data__content">
170
- <div className="legend-marketplace-banner">
171
- <div className="legend-marketplace-banner__title">Vendor Data</div>
172
- <div className="legend-marketplace-banner__subtitle">
173
- <p>Discover high quality data</p>
174
- </div>
175
- </div>
176
- <div className="legend-marketplace-new-datasets">
177
- <h3>Recently Onboarded</h3>
178
- <div className="legend-marketplace-new-datasets__buttons">
179
- {marketPlaceVendorDataState.dataFeedProviders
180
- .slice(0, 10)
181
- .map((vendor) => (
182
- <Badge
183
- className="legend-marketplace-new-datasets__providers"
184
- title={vendor.productName}
185
- key={vendor.id}
186
- >
187
- {vendor.productName}
188
- </Badge>
189
- ))}
190
- </div>
191
- </div>
192
- <div className="legend-marketplace-body__content">
193
- <RefinedVendorRadioSelector />
194
- <LegendMarketplaceSearchBar onSearch={onChange} />
195
- <VendorDataMainContent
196
- marketPlaceVendorDataState={marketPlaceVendorDataState}
197
- />
198
- </div>
173
+ <LegendMarketplacePage className="legend-marketplace-vendor-data">
174
+ <div className="legend-marketplace-banner">
175
+ <div className="legend-marketplace-banner__title">Vendor Data</div>
176
+ <div className="legend-marketplace-banner__subtitle">
177
+ <p>Discover high quality data</p>
178
+ </div>
179
+ </div>
180
+ <div className="legend-marketplace-new-datasets">
181
+ <h3>Recently Onboarded</h3>
182
+ <div className="legend-marketplace-new-datasets__buttons">
183
+ {marketPlaceVendorDataState.dataFeedProviders
184
+ .slice(0, 10)
185
+ .map((vendor) => (
186
+ <Badge
187
+ className="legend-marketplace-new-datasets__providers"
188
+ title={vendor.productName}
189
+ key={vendor.id}
190
+ >
191
+ {vendor.productName}
192
+ </Badge>
193
+ ))}
199
194
  </div>
200
195
  </div>
201
- </div>
196
+ <div className="legend-marketplace-body__content">
197
+ <RefinedVendorRadioSelector />
198
+ <LegendMarketplaceSearchBar onSearch={onChange} />
199
+ <VendorDataMainContent
200
+ marketPlaceVendorDataState={marketPlaceVendorDataState}
201
+ />
202
+ </div>
203
+ </LegendMarketplacePage>
202
204
  );
203
205
  });
@@ -114,6 +114,7 @@ export class LakehouseContractServerClient extends AbstractServerClient {
114
114
  // ------------------------------------------- Tasks -------------------------------------------
115
115
 
116
116
  private _tasks = (): string => `${this.baseUrl}/datacontracts/tasks`;
117
+ private _contract_tasks = (): string => `${this._tasks()}/query/contract`;
117
118
 
118
119
  getPendingTasks = (
119
120
  user: string | undefined,
@@ -124,6 +125,34 @@ export class LakehouseContractServerClient extends AbstractServerClient {
124
125
  });
125
126
  };
126
127
 
128
+ getTask = (
129
+ taskId: string,
130
+ token: string | undefined,
131
+ ): Promise<PlainObject<V1_PendingTasksRespond>> => {
132
+ return this.get(
133
+ `${this._tasks()}/${encodeURIComponent(taskId)}`,
134
+ {},
135
+ this._token(token),
136
+ {
137
+ user: taskId,
138
+ },
139
+ );
140
+ };
141
+
142
+ getContractTasks = (
143
+ contractId: string,
144
+ token: string | undefined,
145
+ ): Promise<PlainObject<V1_PendingTasksRespond>> => {
146
+ return this.get(
147
+ `${this._contract_tasks()}/${encodeURIComponent(contractId)}`,
148
+ {},
149
+ this._token(token),
150
+ {
151
+ user: contractId,
152
+ },
153
+ );
154
+ };
155
+
127
156
  approveTask = (
128
157
  id: string,
129
158
  token: string | undefined,
@@ -28,7 +28,11 @@ import {
28
28
  import { flow, makeObservable } from 'mobx';
29
29
  import { DepotServerClient } from '@finos/legend-server-depot';
30
30
  import { MarketplaceServerClient } from '@finos/legend-server-marketplace';
31
- import { getCurrentUserIDFromEngineServer } from '@finos/legend-graph';
31
+ import {
32
+ getCurrentUserIDFromEngineServer,
33
+ type V1_EngineServerClient,
34
+ V1_RemoteEngine,
35
+ } from '@finos/legend-graph';
32
36
  import type { LegendMarketplaceApplicationConfig } from '../application/LegendMarketplaceApplicationConfig.js';
33
37
  import type { LegendMarketplacePluginManager } from '../application/LegendMarketplacePluginManager.js';
34
38
  import { LegendMarketplaceEventHelper } from '../__lib__/LegendMarketplaceEventHelper.js';
@@ -46,6 +50,8 @@ export class LegendMarketplaceBaseStore {
46
50
  readonly depotServerClient: DepotServerClient;
47
51
  readonly lakehouseServerClient: LakehouseContractServerClient | undefined;
48
52
  readonly pluginManager: LegendMarketplacePluginManager;
53
+ readonly engineServerClient: V1_EngineServerClient;
54
+ readonly remoteEngine: V1_RemoteEngine;
49
55
 
50
56
  readonly initState = ActionState.create();
51
57
 
@@ -85,6 +91,15 @@ export class LegendMarketplaceBaseStore {
85
91
  );
86
92
  }
87
93
 
94
+ this.remoteEngine = new V1_RemoteEngine(
95
+ {
96
+ baseUrl: this.applicationStore.config.engineServerUrl,
97
+ },
98
+ applicationStore.logService,
99
+ );
100
+ this.engineServerClient = this.remoteEngine.getEngineServerClient();
101
+ this.engineServerClient.setTracerService(applicationStore.tracerService);
102
+
88
103
  this.marketplaceVendorDataState = new LegendMarketPlaceVendorDataState(
89
104
  this.applicationStore,
90
105
  this,