@finos/legend-application-marketplace 0.0.14 → 0.0.15
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.
- package/lib/app.css +1 -1
- package/lib/application/LegendMarketplace.d.ts.map +1 -1
- package/lib/application/LegendMarketplace.js +1 -1
- package/lib/application/LegendMarketplace.js.map +1 -1
- package/lib/application/LegendMarketplaceApplicationConfig.d.ts +8 -0
- package/lib/application/LegendMarketplaceApplicationConfig.d.ts.map +1 -1
- package/lib/application/LegendMarketplaceApplicationConfig.js +3 -1
- package/lib/application/LegendMarketplaceApplicationConfig.js.map +1 -1
- package/lib/application/LegendMarketplaceWebApplication.d.ts +2 -0
- package/lib/application/LegendMarketplaceWebApplication.d.ts.map +1 -1
- package/lib/application/LegendMarketplaceWebApplication.js +22 -4
- package/lib/application/LegendMarketplaceWebApplication.js.map +1 -1
- package/lib/components/Lakehouse/LakehouseMarketplace.d.ts.map +1 -1
- package/lib/components/Lakehouse/LakehouseMarketplace.js +6 -0
- package/lib/components/Lakehouse/LakehouseMarketplace.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/package.json +3 -1
- package/lib/stores/LegendMarketplaceBaseStore.d.ts.map +1 -1
- package/lib/stores/LegendMarketplaceBaseStore.js +1 -0
- package/lib/stores/LegendMarketplaceBaseStore.js.map +1 -1
- package/lib/stores/MarketplaceLakehouseServerClient.d.ts +3 -1
- package/lib/stores/MarketplaceLakehouseServerClient.d.ts.map +1 -1
- package/lib/stores/MarketplaceLakehouseServerClient.js +3 -0
- package/lib/stores/MarketplaceLakehouseServerClient.js.map +1 -1
- package/package.json +3 -1
- package/src/application/LegendMarketplace.tsx +4 -1
- package/src/application/LegendMarketplaceApplicationConfig.ts +14 -2
- package/src/application/LegendMarketplaceWebApplication.tsx +53 -9
- package/src/components/Lakehouse/LakehouseMarketplace.tsx +9 -0
- package/src/stores/LegendMarketplaceBaseStore.ts +4 -0
- package/src/stores/MarketplaceLakehouseServerClient.ts +12 -1
package/lib/app.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplace.d.ts","sourceRoot":"","sources":["../../src/application/LegendMarketplace.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,mCAAmC,EAGxC,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,6CAA6C,EAClD,kCAAkC,EACnC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,yCAAyC,CAAC;AAIjG,qBAAa,iBAAkB,SAAQ,iBAAiB;IAC9C,MAAM,EAAE,kCAAkC,CAAC;IAC3C,aAAa,EAAE,8BAA8B,CAAC;IAEtD,MAAM,CAAC,MAAM,IAAI,iBAAiB;IAW5B,oBAAoB,CACxB,KAAK,EAAE,mCAAmC,CAAC,6CAA6C,CAAC,GACxF,OAAO,CAAC,uBAAuB,CAAC;IAI7B,eAAe,CACnB,gBAAgB,EAAE,iCAAiC,GAClD,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"LegendMarketplace.d.ts","sourceRoot":"","sources":["../../src/application/LegendMarketplace.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,mCAAmC,EAGxC,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,6CAA6C,EAClD,kCAAkC,EACnC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,yCAAyC,CAAC;AAIjG,qBAAa,iBAAkB,SAAQ,iBAAiB;IAC9C,MAAM,EAAE,kCAAkC,CAAC;IAC3C,aAAa,EAAE,8BAA8B,CAAC;IAEtD,MAAM,CAAC,MAAM,IAAI,iBAAiB;IAW5B,oBAAoB,CACxB,KAAK,EAAE,mCAAmC,CAAC,6CAA6C,CAAC,GACxF,OAAO,CAAC,uBAAuB,CAAC;IAI7B,eAAe,CACnB,gBAAgB,EAAE,iCAAiC,GAClD,OAAO,CAAC,IAAI,CAAC;CAUjB"}
|
|
@@ -34,7 +34,7 @@ export class LegendMarketplace extends LegendApplication {
|
|
|
34
34
|
return new LegendMarketplaceApplicationConfig(input);
|
|
35
35
|
}
|
|
36
36
|
async loadApplication(applicationStore) {
|
|
37
|
-
createRoot(getApplicationRootElement()).render(_jsx(ApplicationStoreProvider, { store: applicationStore, children: _jsx(LegendMarketplaceWebApplication, { baseUrl: this.baseAddress }) }));
|
|
37
|
+
createRoot(getApplicationRootElement()).render(_jsx(ApplicationStoreProvider, { store: applicationStore, children: _jsx(LegendMarketplaceWebApplication, { baseUrl: this.baseAddress, oidcConfig: this.config.marketplaceOidcConfig }) }));
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
//# sourceMappingURL=LegendMarketplace.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplace.js","sourceRoot":"","sources":["../../src/application/LegendMarketplace.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAGL,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,kCAAkC,GACnC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EAAE,uCAAuC,EAAE,MAAM,yDAAyD,CAAC;AAElH,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,8CAA8C,EAAE,MAAM,gEAAgE,CAAC;AAEhI,MAAM,OAAO,iBAAkB,SAAQ,iBAAiB;IAItD,MAAM,CAAC,MAAM;QACX,MAAM,WAAW,GAAG,IAAI,iBAAiB,CACvC,8BAA8B,CAAC,MAAM,EAAE,CACxC,CAAC;QACF,WAAW,CAAC,eAAe,CAAC;YAC1B,IAAI,8CAA8C,EAAE;YACpD,IAAI,uCAAuC,EAAE;SAC9C,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,KAAyF;QAEzF,OAAO,IAAI,kCAAkC,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,gBAAmD;QAEnD,UAAU,CAAC,yBAAyB,EAAE,CAAC,CAAC,MAAM,CAC5C,KAAC,wBAAwB,IAAC,KAAK,EAAE,gBAAgB,YAC/C,KAAC,+BAA+B,
|
|
1
|
+
{"version":3,"file":"LegendMarketplace.js","sourceRoot":"","sources":["../../src/application/LegendMarketplace.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAGL,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,kCAAkC,GACnC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EAAE,uCAAuC,EAAE,MAAM,yDAAyD,CAAC;AAElH,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,8CAA8C,EAAE,MAAM,gEAAgE,CAAC;AAEhI,MAAM,OAAO,iBAAkB,SAAQ,iBAAiB;IAItD,MAAM,CAAC,MAAM;QACX,MAAM,WAAW,GAAG,IAAI,iBAAiB,CACvC,8BAA8B,CAAC,MAAM,EAAE,CACxC,CAAC;QACF,WAAW,CAAC,eAAe,CAAC;YAC1B,IAAI,8CAA8C,EAAE;YACpD,IAAI,uCAAuC,EAAE;SAC9C,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,KAAyF;QAEzF,OAAO,IAAI,kCAAkC,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,gBAAmD;QAEnD,UAAU,CAAC,yBAAyB,EAAE,CAAC,CAAC,MAAM,CAC5C,KAAC,wBAAwB,IAAC,KAAK,EAAE,gBAAgB,YAC/C,KAAC,+BAA+B,IAC9B,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAqB,GAC7C,GACuB,CAC5B,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -15,13 +15,20 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { type PlainObject } from '@finos/legend-shared';
|
|
17
17
|
import { type LegendApplicationConfigurationData, type LegendApplicationConfigurationInput, LegendApplicationConfig } from '@finos/legend-application';
|
|
18
|
+
import type { AuthProviderProps } from 'react-oidc-context';
|
|
18
19
|
declare class LegendMarketplaceApplicationCoreOptions {
|
|
19
20
|
private static readonly serialization;
|
|
20
21
|
static create(configData: PlainObject<LegendMarketplaceApplicationCoreOptions>): LegendMarketplaceApplicationCoreOptions;
|
|
21
22
|
}
|
|
23
|
+
export interface LegendMarketplaceOidcConfig {
|
|
24
|
+
redirectPath: string;
|
|
25
|
+
silentRedirectPath: string;
|
|
26
|
+
authProviderProps: AuthProviderProps;
|
|
27
|
+
}
|
|
22
28
|
export interface LegendMarketplaceApplicationConfigurationData extends LegendApplicationConfigurationData {
|
|
23
29
|
marketplace: {
|
|
24
30
|
url: string;
|
|
31
|
+
oidcConfig?: LegendMarketplaceOidcConfig | undefined;
|
|
25
32
|
};
|
|
26
33
|
depot: {
|
|
27
34
|
url: string;
|
|
@@ -39,6 +46,7 @@ export interface LegendMarketplaceApplicationConfigurationData extends LegendApp
|
|
|
39
46
|
export declare class LegendMarketplaceApplicationConfig extends LegendApplicationConfig {
|
|
40
47
|
readonly options: LegendMarketplaceApplicationCoreOptions;
|
|
41
48
|
readonly marketplaceServerUrl: string;
|
|
49
|
+
readonly marketplaceOidcConfig?: LegendMarketplaceOidcConfig | undefined;
|
|
42
50
|
readonly engineServerUrl: string;
|
|
43
51
|
readonly depotServerUrl: string;
|
|
44
52
|
readonly lakehouseServerUrl?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplaceApplicationConfig.d.ts","sourceRoot":"","sources":["../../src/application/LegendMarketplaceApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EACxC,uBAAuB,EACxB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"LegendMarketplaceApplicationConfig.d.ts","sourceRoot":"","sources":["../../src/application/LegendMarketplaceApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EACxC,uBAAuB,EACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,cAAM,uCAAuC;IAC3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAEnC;IAEF,MAAM,CAAC,MAAM,CACX,UAAU,EAAE,WAAW,CAAC,uCAAuC,CAAC,GAC/D,uCAAuC;CAK3C;AAED,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,iBAAiB,CAAC;CACtC;AAED,MAAM,WAAW,6CACf,SAAQ,kCAAkC;IAC1C,WAAW,EAAE;QACX,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;KACtD,CAAC;IACF,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACvB,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,SAAS,CAAC,EAAE;QACV,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,MAAM,CAAC,EAAE;QACP,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAED,qBAAa,kCAAmC,SAAQ,uBAAuB;IAC7E,QAAQ,CAAC,OAAO,0CAAiD;IAEjE,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACzE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;gBAGhC,KAAK,EAAE,mCAAmC,CAAC,6CAA6C,CAAC;IAmElF,+BAA+B,IAAI,MAAM;CAGnD"}
|
|
@@ -25,6 +25,7 @@ class LegendMarketplaceApplicationCoreOptions {
|
|
|
25
25
|
export class LegendMarketplaceApplicationConfig extends LegendApplicationConfig {
|
|
26
26
|
options = new LegendMarketplaceApplicationCoreOptions();
|
|
27
27
|
marketplaceServerUrl;
|
|
28
|
+
marketplaceOidcConfig;
|
|
28
29
|
engineServerUrl;
|
|
29
30
|
depotServerUrl;
|
|
30
31
|
lakehouseServerUrl;
|
|
@@ -34,6 +35,7 @@ export class LegendMarketplaceApplicationConfig extends LegendApplicationConfig
|
|
|
34
35
|
// marketplace
|
|
35
36
|
assertNonNullable(input.configData.marketplace, `Can't configure application: 'marketplace' field is missing`);
|
|
36
37
|
this.marketplaceServerUrl = LegendApplicationConfig.resolveAbsoluteUrl(guaranteeNonEmptyString(input.configData.marketplace.url, `Can't configure application: 'marketplace.url' field is missing or empty`));
|
|
38
|
+
this.marketplaceOidcConfig = input.configData.marketplace.oidcConfig;
|
|
37
39
|
// engine
|
|
38
40
|
assertNonNullable(input.configData.engine, `Can't configure application: 'engine' field is missing`);
|
|
39
41
|
this.engineServerUrl = LegendApplicationConfig.resolveAbsoluteUrl(guaranteeNonEmptyString(input.configData.engine.url, `Can't configure application: 'engine.url' field is missing or empty`));
|
|
@@ -42,7 +44,7 @@ export class LegendMarketplaceApplicationConfig extends LegendApplicationConfig
|
|
|
42
44
|
this.depotServerUrl = LegendApplicationConfig.resolveAbsoluteUrl(guaranteeNonEmptyString(input.configData.depot.url, `Can't configure application: 'depot.url' field is missing or empty`));
|
|
43
45
|
// lakehouse
|
|
44
46
|
if (input.configData.lakehouse) {
|
|
45
|
-
this.lakehouseServerUrl = LegendApplicationConfig.resolveAbsoluteUrl(guaranteeNonEmptyString(input.configData.
|
|
47
|
+
this.lakehouseServerUrl = LegendApplicationConfig.resolveAbsoluteUrl(guaranteeNonEmptyString(input.configData.lakehouse.url, `Can't configure application: 'lakehouse.url' field is missing or empty`));
|
|
46
48
|
}
|
|
47
49
|
// studio
|
|
48
50
|
if (input.configData.studio) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplaceApplicationConfig.js","sourceRoot":"","sources":["../../src/application/LegendMarketplaceApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAEL,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"LegendMarketplaceApplicationConfig.js","sourceRoot":"","sources":["../../src/application/LegendMarketplaceApplicationConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAEL,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAGnC,MAAM,uCAAuC;IACnC,MAAM,CAAU,aAAa,GAAG,IAAI,oBAAoB,CAC9D,iBAAiB,CAAC,uCAAuC,EAAE,EAAE,CAAC,CAC/D,CAAC;IAEF,MAAM,CAAC,MAAM,CACX,UAAgE;QAEhE,OAAO,uCAAuC,CAAC,aAAa,CAAC,QAAQ,CACnE,UAAU,CACX,CAAC;IACJ,CAAC;;AA2BH,MAAM,OAAO,kCAAmC,SAAQ,uBAAuB;IACpE,OAAO,GAAG,IAAI,uCAAuC,EAAE,CAAC;IAExD,oBAAoB,CAAS;IAC7B,qBAAqB,CAA2C;IAChE,eAAe,CAAS;IACxB,cAAc,CAAS;IACvB,kBAAkB,CAAU;IAC5B,eAAe,CAAU;IAElC,YACE,KAAyF;QAEzF,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,cAAc;QACd,iBAAiB,CACf,KAAK,CAAC,UAAU,CAAC,WAAW,EAC5B,6DAA6D,CAC9D,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG,uBAAuB,CAAC,kBAAkB,CACpE,uBAAuB,CACrB,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,EAChC,0EAA0E,CAC3E,CACF,CAAC;QACF,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC;QAErE,SAAS;QACT,iBAAiB,CACf,KAAK,CAAC,UAAU,CAAC,MAAM,EACvB,wDAAwD,CACzD,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,uBAAuB,CAAC,kBAAkB,CAC/D,uBAAuB,CACrB,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAC3B,qEAAqE,CACtE,CACF,CAAC;QAEF,QAAQ;QACR,iBAAiB,CACf,KAAK,CAAC,UAAU,CAAC,KAAK,EACtB,uDAAuD,CACxD,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,uBAAuB,CAAC,kBAAkB,CAC9D,uBAAuB,CACrB,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAC1B,oEAAoE,CACrE,CACF,CAAC;QAEF,YAAY;QAEZ,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,kBAAkB,GAAG,uBAAuB,CAAC,kBAAkB,CAClE,uBAAuB,CACrB,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAC9B,wEAAwE,CACzE,CACF,CAAC;QACJ,CAAC;QACD,SAAS;QACT,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC5B,IAAI,CAAC,eAAe,GAAG,uBAAuB,CAAC,kBAAkB,CAC/D,uBAAuB,CACrB,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAC3B,qEAAqE,CACtE,CACF,CAAC;QACJ,CAAC;QAED,UAAU;QACV,IAAI,CAAC,OAAO,GAAG,uCAAuC,CAAC,MAAM,CAC3D,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,IAAI,EAAE,CACxC,CAAC;IACJ,CAAC;IAEQ,+BAA+B;QACtC,OAAO,oBAAoB,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -13,11 +13,13 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
+
import type { LegendMarketplaceOidcConfig } from './LegendMarketplaceApplicationConfig.js';
|
|
16
17
|
export declare const LegendMarketplaceWebApplicationRouter: (() => import("react/jsx-runtime").JSX.Element) & {
|
|
17
18
|
displayName: string;
|
|
18
19
|
};
|
|
19
20
|
export declare const LegendMarketplaceWebApplication: ((props: {
|
|
20
21
|
baseUrl: string;
|
|
22
|
+
oidcConfig?: LegendMarketplaceOidcConfig | undefined;
|
|
21
23
|
}) => import("react/jsx-runtime").JSX.Element) & {
|
|
22
24
|
displayName: string;
|
|
23
25
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplaceWebApplication.d.ts","sourceRoot":"","sources":["../../src/application/LegendMarketplaceWebApplication.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"LegendMarketplaceWebApplication.d.ts","sourceRoot":"","sources":["../../src/application/LegendMarketplaceWebApplication.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA+BH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AA8C3F,eAAO,MAAM,qCAAqC;;CA+ChD,CAAC;AAEH,eAAO,MAAM,+BAA+B,WAClC;IACN,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;CACtD;;CA0BF,CAAC"}
|
|
@@ -16,7 +16,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
16
16
|
*/
|
|
17
17
|
import { useEffect } from 'react';
|
|
18
18
|
import { observer } from 'mobx-react-lite';
|
|
19
|
-
import { GhostIcon } from '@finos/legend-art';
|
|
19
|
+
import { CubesLoadingIndicator, CubesLoadingIndicatorIcon, GhostIcon, } from '@finos/legend-art';
|
|
20
20
|
import { flowResult } from 'mobx';
|
|
21
21
|
import { useApplicationStore } from '@finos/legend-application';
|
|
22
22
|
import { BrowserEnvironmentProvider, Route, Routes, } from '@finos/legend-application/browser';
|
|
@@ -25,6 +25,7 @@ import { LEGEND_MARKETPLACE_ROUTE_PATTERN } from '../__lib__/LegendMarketplaceNa
|
|
|
25
25
|
import { LakehouseMarketplace } from '../components/Lakehouse/LakehouseMarketplace.js';
|
|
26
26
|
import { LegendMarketplaceHome } from '../pages/Home/LegendMarketplaceHome.js';
|
|
27
27
|
import { LegendMarketplaceSearchResults } from '../pages/SearchResults/LegendMarketplaceSearchResults.js';
|
|
28
|
+
import { AuthProvider, withAuthenticationRequired, } from 'react-oidc-context';
|
|
28
29
|
const NotFoundPage = observer(() => {
|
|
29
30
|
const applicationStore = useApplicationStore();
|
|
30
31
|
const currentPath = applicationStore.navigationService.navigator.getCurrentLocation();
|
|
@@ -36,10 +37,27 @@ export const LegendMarketplaceWebApplicationRouter = observer(() => {
|
|
|
36
37
|
useEffect(() => {
|
|
37
38
|
flowResult(baseStore.initialize()).catch(applicationStore.alertUnhandledError);
|
|
38
39
|
}, [applicationStore, baseStore]);
|
|
39
|
-
|
|
40
|
+
const ProtectedLakehouseMarketplace = withAuthenticationRequired(LakehouseMarketplace, {
|
|
41
|
+
OnRedirecting: () => (_jsx(CubesLoadingIndicator, { isLoading: true, children: _jsx(CubesLoadingIndicatorIcon, {}) })),
|
|
42
|
+
signinRedirectArgs: {
|
|
43
|
+
state: window.location.pathname,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
return (_jsx("div", { className: "app", children: baseStore.initState.hasCompleted && (_jsx(_Fragment, { children: _jsxs(Routes, { children: [_jsx(Route, { path: LEGEND_MARKETPLACE_ROUTE_PATTERN.LAKEHOUSE, element: _jsx(ProtectedLakehouseMarketplace, {}) }), _jsx(Route, { path: LEGEND_MARKETPLACE_ROUTE_PATTERN.DEFAULT, element: _jsx(LegendMarketplaceHome, {}) }), _jsx(Route, { path: LEGEND_MARKETPLACE_ROUTE_PATTERN.SEARCH_RESULTS, element: _jsx(LegendMarketplaceSearchResults, {}) }), _jsx(Route, { path: "*", element: _jsx(NotFoundPage, {}) })] }) })) }));
|
|
40
47
|
});
|
|
41
48
|
export const LegendMarketplaceWebApplication = observer((props) => {
|
|
42
|
-
const { baseUrl } = props;
|
|
43
|
-
|
|
49
|
+
const { baseUrl, oidcConfig } = props;
|
|
50
|
+
const onSigninCallback = (_user) => {
|
|
51
|
+
window.location.href = _user?.state ?? '/';
|
|
52
|
+
};
|
|
53
|
+
const mergedOIDCConfig = oidcConfig
|
|
54
|
+
? {
|
|
55
|
+
...oidcConfig.authProviderProps,
|
|
56
|
+
redirect_uri: `${window.location.origin}${oidcConfig.redirectPath}`,
|
|
57
|
+
silent_redirect_uri: `${window.location.origin}${oidcConfig.silentRedirectPath}`,
|
|
58
|
+
onSigninCallback,
|
|
59
|
+
}
|
|
60
|
+
: undefined;
|
|
61
|
+
return (_jsx(AuthProvider, { ...mergedOIDCConfig, children: _jsx(BrowserEnvironmentProvider, { baseUrl: baseUrl, children: _jsx(LegendMarketplaceFrameworkProvider, { children: _jsx(LegendMarketplaceWebApplicationRouter, {}) }) }) }));
|
|
44
62
|
});
|
|
45
63
|
//# sourceMappingURL=LegendMarketplaceWebApplication.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplaceWebApplication.js","sourceRoot":"","sources":["../../src/application/LegendMarketplaceWebApplication.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,
|
|
1
|
+
{"version":3,"file":"LegendMarketplaceWebApplication.js","sourceRoot":"","sources":["../../src/application/LegendMarketplaceWebApplication.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LakehouseMarketplace.d.ts","sourceRoot":"","sources":["../../../src/components/Lakehouse/LakehouseMarketplace.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"LakehouseMarketplace.d.ts","sourceRoot":"","sources":["../../../src/components/Lakehouse/LakehouseMarketplace.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA2BH,eAAO,MAAM,oBAAoB,wBAoGhC,CAAC"}
|
|
@@ -25,11 +25,17 @@ import { LATEST_VERSION_ALIAS, StoreProjectData, VersionedProjectData, } from '@
|
|
|
25
25
|
import { assertErrorThrown, guaranteeNonNullable } from '@finos/legend-shared';
|
|
26
26
|
import { EXTERNAL_APPLICATION_NAVIGATION__generateStudioSDLCProjectViewUrl } from '../../__lib__/LegendMarketplaceNavigation.js';
|
|
27
27
|
import { flowResult } from 'mobx';
|
|
28
|
+
import { useAuth } from 'react-oidc-context';
|
|
28
29
|
export const LakehouseMarketplace = withMarketplaceLakehouseStore(observer(() => {
|
|
29
30
|
const marketPlaceStore = useMarketplaceLakehouseStore();
|
|
31
|
+
const auth = useAuth();
|
|
30
32
|
useEffect(() => {
|
|
31
33
|
marketPlaceStore.init();
|
|
32
34
|
}, [marketPlaceStore]);
|
|
35
|
+
useEffect(() => {
|
|
36
|
+
// eslint-disable-next-line no-void
|
|
37
|
+
void marketPlaceStore.lakehouseServerClient.getDataProducts(auth.user?.access_token);
|
|
38
|
+
}, [auth.user?.access_token, marketPlaceStore.lakehouseServerClient]);
|
|
33
39
|
const openDataProduct = async (state) => {
|
|
34
40
|
const path = `${state.product.package}::${state.product.name}`;
|
|
35
41
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LakehouseMarketplace.js","sourceRoot":"","sources":["../../../src/components/Lakehouse/LakehouseMarketplace.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAG3F,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,iEAAiE,EAAE,MAAM,8CAA8C,CAAC;AACjI,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"LakehouseMarketplace.js","sourceRoot":"","sources":["../../../src/components/Lakehouse/LakehouseMarketplace.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAG3F,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,iEAAiE,EAAE,MAAM,8CAA8C,CAAC;AACjI,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,CAAC,MAAM,oBAAoB,GAAG,6BAA6B,CAC/D,QAAQ,CAAC,GAAG,EAAE;IACZ,MAAM,gBAAgB,GAAG,4BAA4B,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,SAAS,CAAC,GAAG,EAAE;QACb,gBAAgB,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,SAAS,CAAC,GAAG,EAAE;QACb,mCAAmC;QACnC,KAAK,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,CACzD,IAAI,CAAC,IAAI,EAAE,YAAY,CACxB,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAEtE,MAAM,eAAe,GAAG,KAAK,EAAE,KAAuB,EAAiB,EAAE;QACvE,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,oBAAoB,CACpC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,eAAe,EACxD,qBAAqB,CACtB,CAAC;YACF,MAAM,OAAO,GAAG,gBAAgB,CAAC,aAAa,CAAC,QAAQ,CACrD,MAAM,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,CACjD,KAAK,CAAC,aAAa,CAAC,OAAO,EAC3B,KAAK,CAAC,aAAa,CAAC,UAAU,CAC/B,CACF,CAAC;YACF,MAAM,SAAS,GACb,KAAK,CAAC,aAAa,CAAC,SAAS,KAAK,oBAAoB;gBACpD,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CACzC,MAAM,gBAAgB,CAAC,iBAAiB,CAAC,gBAAgB,CACvD,KAAK,CAAC,aAAa,CAAC,OAAO,EAC3B,KAAK,CAAC,aAAa,CAAC,UAAU,CAC/B,CACF,CAAC,SAAS;gBACb,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC;YAEpC,gBAAgB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,SAAS,CAAC,YAAY,CACxE,iEAAiE,CAC/D,SAAS,EACT,OAAO,CAAC,SAAS,EACjB,SAAS,EACT,IAAI,CACL,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,gBAAgB,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,WAAW,CAC/D,IAAI;gBACF,CAAC,CAAC,iCAAiC,IAAI,GAAG;gBAC1C,CAAC,CAAC,qBAAqB,CAC1B,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAC,WAAW,YACxB,cAAK,SAAS,EAAC,yBAAyB,YACtC,eAAK,SAAS,EAAC,+BAA+B,aAC5C,KAAC,uBAAuB,KAAG,EAC3B,cAAK,SAAS,EAAC,kCAAkC,YAC/C,eAAK,SAAS,EAAC,2CAA2C,aACxD,KAAC,qBAAqB,IACpB,SAAS,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,YAAY,YAE7D,KAAC,yBAAyB,KAAG,GACP,EACxB,cAAK,SAAS,EAAC,wCAAwC,YACrD,KAAC,IAAI,IACH,SAAS,EAAE,IAAI,EACf,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAChC,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EACvC,EAAE,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,YAE/B,gBAAgB,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAChD,KAAC,IAAI,IAEH,IAAI,EAAE,CAAC,YAEP,KAAC,2BAA2B,IAC1B,SAAS,EAAE,OAAO,CAAC,OAAO,EAC1B,OAAO,EAAE,CAAC,SAAoB,EAAE,EAAE;oDAChC,CAAC;wDACC,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;oDACvC,CAAC;gDACH,CAAC,GACD,IAVG,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAWpF,CACR,CAAC,GACG,GACH,IACF,GACF,IACF,GACF,GACF,CACP,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}
|
package/lib/index.css
CHANGED
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-application-marketplace",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.15",
|
|
4
4
|
"description": "Legend Marketplace application core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -62,9 +62,11 @@
|
|
|
62
62
|
"mobx-react-lite": "4.1.0",
|
|
63
63
|
"mobx-utils": "6.1.0",
|
|
64
64
|
"node-diff3": "3.1.2",
|
|
65
|
+
"oidc-client-ts": "^3.2.0",
|
|
65
66
|
"react": "19.0.0",
|
|
66
67
|
"react-dnd": "16.0.1",
|
|
67
68
|
"react-dom": "19.0.0",
|
|
69
|
+
"react-oidc-context": "^3.3.0",
|
|
68
70
|
"serializr": "3.0.3",
|
|
69
71
|
"yaml": "2.7.0"
|
|
70
72
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplaceBaseStore.d.ts","sourceRoot":"","sources":["../../src/stores/LegendMarketplaceBaseStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,WAAW,EAChB,WAAW,EAGZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAE3E,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,sDAAsD,CAAC;AAC/G,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kDAAkD,CAAC;AAEvG,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAEzF,MAAM,MAAM,iCAAiC,GAAG,gBAAgB,CAC9D,kCAAkC,EAClC,8BAA8B,CAC/B,CAAC;AAEF,qBAAa,0BAA0B;IACrC,QAAQ,CAAC,gBAAgB,EAAE,iCAAiC,CAAC;IAC7D,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAC1D,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,qBAAqB,EAAE,gCAAgC,GAAG,SAAS,CAAC;IAC7E,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IAEvD,QAAQ,CAAC,SAAS,cAAwB;gBAE9B,gBAAgB,EAAE,iCAAiC;
|
|
1
|
+
{"version":3,"file":"LegendMarketplaceBaseStore.d.ts","sourceRoot":"","sources":["../../src/stores/LegendMarketplaceBaseStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,WAAW,EAChB,WAAW,EAGZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAE3E,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,sDAAsD,CAAC;AAC/G,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kDAAkD,CAAC;AAEvG,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAEzF,MAAM,MAAM,iCAAiC,GAAG,gBAAgB,CAC9D,kCAAkC,EAClC,8BAA8B,CAC/B,CAAC;AAEF,qBAAa,0BAA0B;IACrC,QAAQ,CAAC,gBAAgB,EAAE,iCAAiC,CAAC;IAC7D,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAC1D,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,qBAAqB,EAAE,gCAAgC,GAAG,SAAS,CAAC;IAC7E,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IAEvD,QAAQ,CAAC,SAAS,cAAwB;gBAE9B,gBAAgB,EAAE,iCAAiC;IAmC9D,UAAU,IAAI,WAAW,CAAC,IAAI,CAAC;CAyCjC"}
|
|
@@ -49,6 +49,7 @@ export class LegendMarketplaceBaseStore {
|
|
|
49
49
|
this.lakehouseServerClient = new MarketplaceLakehouseServerClient({
|
|
50
50
|
baseUrl: this.applicationStore.config.lakehouseServerUrl,
|
|
51
51
|
});
|
|
52
|
+
this.lakehouseServerClient.setTracerService(this.applicationStore.tracerService);
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
55
|
*initialize() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendMarketplaceBaseStore.js","sourceRoot":"","sources":["../../src/stores/LegendMarketplaceBaseStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,WAAW,EACX,QAAQ,EACR,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,gCAAgC,EAChC,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAC;AAGvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAOzF,MAAM,OAAO,0BAA0B;IAC5B,gBAAgB,CAAoC;IACpD,uBAAuB,CAA0B;IACjD,iBAAiB,CAAoB;IACrC,qBAAqB,CAA+C;IACpE,aAAa,CAAiC;IAE9C,SAAS,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;IAE1C,YAAY,gBAAmD;QAC7D,cAAc,CAA6B,IAAI,EAAE;YAC/C,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,aAAa,GAAG,gBAAgB,CAAC,aAAa,CAAC;QAEpD,cAAc;QACd,IAAI,CAAC,uBAAuB,GAAG,IAAI,uBAAuB,CAAC;YACzD,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,oBAAoB;SAC7D,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAC3C,IAAI,CAAC,gBAAgB,CAAC,aAAa,CACpC,CAAC;QAEF,QAAQ;QACR,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC;YAC7C,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,cAAc;SACvD,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACrC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CACpC,CAAC;
|
|
1
|
+
{"version":3,"file":"LegendMarketplaceBaseStore.js","sourceRoot":"","sources":["../../src/stores/LegendMarketplaceBaseStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,11 +13,13 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { AbstractServerClient } from '@finos/legend-shared';
|
|
16
|
+
import { AbstractServerClient, type PlainObject } from '@finos/legend-shared';
|
|
17
17
|
export interface MarketplaceLakehouseServerClientConfig {
|
|
18
18
|
baseUrl: string;
|
|
19
19
|
}
|
|
20
20
|
export declare class MarketplaceLakehouseServerClient extends AbstractServerClient {
|
|
21
21
|
constructor(config: MarketplaceLakehouseServerClientConfig);
|
|
22
|
+
private _contracts;
|
|
23
|
+
getDataProducts: (token?: string | undefined) => Promise<PlainObject[]>;
|
|
22
24
|
}
|
|
23
25
|
//# sourceMappingURL=MarketplaceLakehouseServerClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarketplaceLakehouseServerClient.d.ts","sourceRoot":"","sources":["../../src/stores/MarketplaceLakehouseServerClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"MarketplaceLakehouseServerClient.d.ts","sourceRoot":"","sources":["../../src/stores/MarketplaceLakehouseServerClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE9E,MAAM,WAAW,sCAAsC;IACrD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,gCAAiC,SAAQ,oBAAoB;gBAC5D,MAAM,EAAE,sCAAsC;IAQ1D,OAAO,CAAC,UAAU,CAAgD;IAElE,eAAe,GAAI,QAAQ,MAAM,GAAG,SAAS,KAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAKlE;CACL"}
|
|
@@ -20,5 +20,8 @@ export class MarketplaceLakehouseServerClient extends AbstractServerClient {
|
|
|
20
20
|
baseUrl: config.baseUrl,
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
|
+
// --------------------------------------- Contracts ---------------------------------------
|
|
24
|
+
_contracts = () => `${this.baseUrl}/v1/contracts`;
|
|
25
|
+
getDataProducts = (token) => this.get(`${this._contracts()}/dataProducts`, {}, { Authorization: `Bearer ${token}` });
|
|
23
26
|
}
|
|
24
27
|
//# sourceMappingURL=MarketplaceLakehouseServerClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarketplaceLakehouseServerClient.js","sourceRoot":"","sources":["../../src/stores/MarketplaceLakehouseServerClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"MarketplaceLakehouseServerClient.js","sourceRoot":"","sources":["../../src/stores/MarketplaceLakehouseServerClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAoB,MAAM,sBAAsB,CAAC;AAM9E,MAAM,OAAO,gCAAiC,SAAQ,oBAAoB;IACxE,YAAY,MAA8C;QACxD,KAAK,CAAC;YACJ,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED,4FAA4F;IAEpF,UAAU,GAAG,GAAW,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,eAAe,CAAC;IAElE,eAAe,GAAG,CAAC,KAA0B,EAA0B,EAAE,CACvE,IAAI,CAAC,GAAG,CACN,GAAG,IAAI,CAAC,UAAU,EAAE,eAAe,EACnC,EAAE,EACF,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,CACrC,CAAC;CACL"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-application-marketplace",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.15",
|
|
4
4
|
"description": "Legend Marketplace application core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -62,9 +62,11 @@
|
|
|
62
62
|
"mobx-react-lite": "4.1.0",
|
|
63
63
|
"mobx-utils": "6.1.0",
|
|
64
64
|
"node-diff3": "3.1.2",
|
|
65
|
+
"oidc-client-ts": "^3.2.0",
|
|
65
66
|
"react": "19.0.0",
|
|
66
67
|
"react-dnd": "16.0.1",
|
|
67
68
|
"react-dom": "19.0.0",
|
|
69
|
+
"react-oidc-context": "^3.3.0",
|
|
68
70
|
"serializr": "3.0.3",
|
|
69
71
|
"yaml": "2.7.0"
|
|
70
72
|
},
|
|
@@ -58,7 +58,10 @@ export class LegendMarketplace extends LegendApplication {
|
|
|
58
58
|
): Promise<void> {
|
|
59
59
|
createRoot(getApplicationRootElement()).render(
|
|
60
60
|
<ApplicationStoreProvider store={applicationStore}>
|
|
61
|
-
<LegendMarketplaceWebApplication
|
|
61
|
+
<LegendMarketplaceWebApplication
|
|
62
|
+
baseUrl={this.baseAddress}
|
|
63
|
+
oidcConfig={this.config.marketplaceOidcConfig}
|
|
64
|
+
/>
|
|
62
65
|
</ApplicationStoreProvider>,
|
|
63
66
|
);
|
|
64
67
|
}
|
|
@@ -26,6 +26,7 @@ import {
|
|
|
26
26
|
type LegendApplicationConfigurationInput,
|
|
27
27
|
LegendApplicationConfig,
|
|
28
28
|
} from '@finos/legend-application';
|
|
29
|
+
import type { AuthProviderProps } from 'react-oidc-context';
|
|
29
30
|
|
|
30
31
|
class LegendMarketplaceApplicationCoreOptions {
|
|
31
32
|
private static readonly serialization = new SerializationFactory(
|
|
@@ -41,9 +42,18 @@ class LegendMarketplaceApplicationCoreOptions {
|
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
|
|
45
|
+
export interface LegendMarketplaceOidcConfig {
|
|
46
|
+
redirectPath: string;
|
|
47
|
+
silentRedirectPath: string;
|
|
48
|
+
authProviderProps: AuthProviderProps;
|
|
49
|
+
}
|
|
50
|
+
|
|
44
51
|
export interface LegendMarketplaceApplicationConfigurationData
|
|
45
52
|
extends LegendApplicationConfigurationData {
|
|
46
|
-
marketplace: {
|
|
53
|
+
marketplace: {
|
|
54
|
+
url: string;
|
|
55
|
+
oidcConfig?: LegendMarketplaceOidcConfig | undefined;
|
|
56
|
+
};
|
|
47
57
|
depot: { url: string };
|
|
48
58
|
engine: {
|
|
49
59
|
url: string;
|
|
@@ -60,6 +70,7 @@ export class LegendMarketplaceApplicationConfig extends LegendApplicationConfig
|
|
|
60
70
|
readonly options = new LegendMarketplaceApplicationCoreOptions();
|
|
61
71
|
|
|
62
72
|
readonly marketplaceServerUrl: string;
|
|
73
|
+
readonly marketplaceOidcConfig?: LegendMarketplaceOidcConfig | undefined;
|
|
63
74
|
readonly engineServerUrl: string;
|
|
64
75
|
readonly depotServerUrl: string;
|
|
65
76
|
readonly lakehouseServerUrl?: string;
|
|
@@ -81,6 +92,7 @@ export class LegendMarketplaceApplicationConfig extends LegendApplicationConfig
|
|
|
81
92
|
`Can't configure application: 'marketplace.url' field is missing or empty`,
|
|
82
93
|
),
|
|
83
94
|
);
|
|
95
|
+
this.marketplaceOidcConfig = input.configData.marketplace.oidcConfig;
|
|
84
96
|
|
|
85
97
|
// engine
|
|
86
98
|
assertNonNullable(
|
|
@@ -111,7 +123,7 @@ export class LegendMarketplaceApplicationConfig extends LegendApplicationConfig
|
|
|
111
123
|
if (input.configData.lakehouse) {
|
|
112
124
|
this.lakehouseServerUrl = LegendApplicationConfig.resolveAbsoluteUrl(
|
|
113
125
|
guaranteeNonEmptyString(
|
|
114
|
-
input.configData.
|
|
126
|
+
input.configData.lakehouse.url,
|
|
115
127
|
`Can't configure application: 'lakehouse.url' field is missing or empty`,
|
|
116
128
|
),
|
|
117
129
|
);
|
|
@@ -16,7 +16,11 @@
|
|
|
16
16
|
|
|
17
17
|
import { useEffect } from 'react';
|
|
18
18
|
import { observer } from 'mobx-react-lite';
|
|
19
|
-
import {
|
|
19
|
+
import {
|
|
20
|
+
CubesLoadingIndicator,
|
|
21
|
+
CubesLoadingIndicatorIcon,
|
|
22
|
+
GhostIcon,
|
|
23
|
+
} from '@finos/legend-art';
|
|
20
24
|
import { flowResult } from 'mobx';
|
|
21
25
|
import { useApplicationStore } from '@finos/legend-application';
|
|
22
26
|
import {
|
|
@@ -33,6 +37,13 @@ import { LEGEND_MARKETPLACE_ROUTE_PATTERN } from '../__lib__/LegendMarketplaceNa
|
|
|
33
37
|
import { LakehouseMarketplace } from '../components/Lakehouse/LakehouseMarketplace.js';
|
|
34
38
|
import { LegendMarketplaceHome } from '../pages/Home/LegendMarketplaceHome.js';
|
|
35
39
|
import { LegendMarketplaceSearchResults } from '../pages/SearchResults/LegendMarketplaceSearchResults.js';
|
|
40
|
+
import {
|
|
41
|
+
type AuthProviderProps,
|
|
42
|
+
AuthProvider,
|
|
43
|
+
withAuthenticationRequired,
|
|
44
|
+
} from 'react-oidc-context';
|
|
45
|
+
import type { User } from 'oidc-client-ts';
|
|
46
|
+
import type { LegendMarketplaceOidcConfig } from './LegendMarketplaceApplicationConfig.js';
|
|
36
47
|
|
|
37
48
|
const NotFoundPage = observer(() => {
|
|
38
49
|
const applicationStore = useApplicationStore();
|
|
@@ -87,6 +98,21 @@ export const LegendMarketplaceWebApplicationRouter = observer(() => {
|
|
|
87
98
|
applicationStore.alertUnhandledError,
|
|
88
99
|
);
|
|
89
100
|
}, [applicationStore, baseStore]);
|
|
101
|
+
|
|
102
|
+
const ProtectedLakehouseMarketplace = withAuthenticationRequired(
|
|
103
|
+
LakehouseMarketplace,
|
|
104
|
+
{
|
|
105
|
+
OnRedirecting: () => (
|
|
106
|
+
<CubesLoadingIndicator isLoading={true}>
|
|
107
|
+
<CubesLoadingIndicatorIcon />
|
|
108
|
+
</CubesLoadingIndicator>
|
|
109
|
+
),
|
|
110
|
+
signinRedirectArgs: {
|
|
111
|
+
state: window.location.pathname,
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
);
|
|
115
|
+
|
|
90
116
|
return (
|
|
91
117
|
<div className="app">
|
|
92
118
|
{baseStore.initState.hasCompleted && (
|
|
@@ -94,7 +120,7 @@ export const LegendMarketplaceWebApplicationRouter = observer(() => {
|
|
|
94
120
|
<Routes>
|
|
95
121
|
<Route
|
|
96
122
|
path={LEGEND_MARKETPLACE_ROUTE_PATTERN.LAKEHOUSE}
|
|
97
|
-
element={<
|
|
123
|
+
element={<ProtectedLakehouseMarketplace />}
|
|
98
124
|
/>
|
|
99
125
|
<Route
|
|
100
126
|
path={LEGEND_MARKETPLACE_ROUTE_PATTERN.DEFAULT}
|
|
@@ -113,15 +139,33 @@ export const LegendMarketplaceWebApplicationRouter = observer(() => {
|
|
|
113
139
|
});
|
|
114
140
|
|
|
115
141
|
export const LegendMarketplaceWebApplication = observer(
|
|
116
|
-
(props: {
|
|
117
|
-
|
|
142
|
+
(props: {
|
|
143
|
+
baseUrl: string;
|
|
144
|
+
oidcConfig?: LegendMarketplaceOidcConfig | undefined;
|
|
145
|
+
}) => {
|
|
146
|
+
const { baseUrl, oidcConfig } = props;
|
|
147
|
+
|
|
148
|
+
const onSigninCallback = (_user: User | undefined) => {
|
|
149
|
+
window.location.href = (_user?.state as string | undefined) ?? '/';
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
const mergedOIDCConfig: AuthProviderProps | undefined = oidcConfig
|
|
153
|
+
? {
|
|
154
|
+
...oidcConfig.authProviderProps,
|
|
155
|
+
redirect_uri: `${window.location.origin}${oidcConfig.redirectPath}`,
|
|
156
|
+
silent_redirect_uri: `${window.location.origin}${oidcConfig.silentRedirectPath}`,
|
|
157
|
+
onSigninCallback,
|
|
158
|
+
}
|
|
159
|
+
: undefined;
|
|
118
160
|
|
|
119
161
|
return (
|
|
120
|
-
<
|
|
121
|
-
<
|
|
122
|
-
<
|
|
123
|
-
|
|
124
|
-
|
|
162
|
+
<AuthProvider {...mergedOIDCConfig}>
|
|
163
|
+
<BrowserEnvironmentProvider baseUrl={baseUrl}>
|
|
164
|
+
<LegendMarketplaceFrameworkProvider>
|
|
165
|
+
<LegendMarketplaceWebApplicationRouter />
|
|
166
|
+
</LegendMarketplaceFrameworkProvider>
|
|
167
|
+
</BrowserEnvironmentProvider>
|
|
168
|
+
</AuthProvider>
|
|
125
169
|
);
|
|
126
170
|
},
|
|
127
171
|
);
|
|
@@ -37,15 +37,24 @@ import {
|
|
|
37
37
|
import { assertErrorThrown, guaranteeNonNullable } from '@finos/legend-shared';
|
|
38
38
|
import { EXTERNAL_APPLICATION_NAVIGATION__generateStudioSDLCProjectViewUrl } from '../../__lib__/LegendMarketplaceNavigation.js';
|
|
39
39
|
import { flowResult } from 'mobx';
|
|
40
|
+
import { useAuth } from 'react-oidc-context';
|
|
40
41
|
|
|
41
42
|
export const LakehouseMarketplace = withMarketplaceLakehouseStore(
|
|
42
43
|
observer(() => {
|
|
43
44
|
const marketPlaceStore = useMarketplaceLakehouseStore();
|
|
45
|
+
const auth = useAuth();
|
|
44
46
|
|
|
45
47
|
useEffect(() => {
|
|
46
48
|
marketPlaceStore.init();
|
|
47
49
|
}, [marketPlaceStore]);
|
|
48
50
|
|
|
51
|
+
useEffect(() => {
|
|
52
|
+
// eslint-disable-next-line no-void
|
|
53
|
+
void marketPlaceStore.lakehouseServerClient.getDataProducts(
|
|
54
|
+
auth.user?.access_token,
|
|
55
|
+
);
|
|
56
|
+
}, [auth.user?.access_token, marketPlaceStore.lakehouseServerClient]);
|
|
57
|
+
|
|
49
58
|
const openDataProduct = async (state: DataProductState): Promise<void> => {
|
|
50
59
|
const path = `${state.product.package}::${state.product.name}`;
|
|
51
60
|
try {
|
|
@@ -71,11 +71,15 @@ export class LegendMarketplaceBaseStore {
|
|
|
71
71
|
this.depotServerClient.setTracerService(
|
|
72
72
|
this.applicationStore.tracerService,
|
|
73
73
|
);
|
|
74
|
+
|
|
74
75
|
if (this.applicationStore.config.lakehouseServerUrl) {
|
|
75
76
|
// lakehouse server
|
|
76
77
|
this.lakehouseServerClient = new MarketplaceLakehouseServerClient({
|
|
77
78
|
baseUrl: this.applicationStore.config.lakehouseServerUrl,
|
|
78
79
|
});
|
|
80
|
+
this.lakehouseServerClient.setTracerService(
|
|
81
|
+
this.applicationStore.tracerService,
|
|
82
|
+
);
|
|
79
83
|
}
|
|
80
84
|
}
|
|
81
85
|
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import { AbstractServerClient } from '@finos/legend-shared';
|
|
17
|
+
import { AbstractServerClient, type PlainObject } from '@finos/legend-shared';
|
|
18
18
|
|
|
19
19
|
export interface MarketplaceLakehouseServerClientConfig {
|
|
20
20
|
baseUrl: string;
|
|
@@ -26,4 +26,15 @@ export class MarketplaceLakehouseServerClient extends AbstractServerClient {
|
|
|
26
26
|
baseUrl: config.baseUrl,
|
|
27
27
|
});
|
|
28
28
|
}
|
|
29
|
+
|
|
30
|
+
// --------------------------------------- Contracts ---------------------------------------
|
|
31
|
+
|
|
32
|
+
private _contracts = (): string => `${this.baseUrl}/v1/contracts`;
|
|
33
|
+
|
|
34
|
+
getDataProducts = (token?: string | undefined): Promise<PlainObject[]> =>
|
|
35
|
+
this.get(
|
|
36
|
+
`${this._contracts()}/dataProducts`,
|
|
37
|
+
{},
|
|
38
|
+
{ Authorization: `Bearer ${token}` },
|
|
39
|
+
);
|
|
29
40
|
}
|