@finos/legend-application-marketplace
Version:
Legend Marketplace application core
100 lines • 5.78 kB
TypeScript
/**
* Copyright (c) 2020-present, Goldman Sachs
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type CommandRegistrar } from '@finos/legend-application';
import { type DepotServerClient } from '@finos/legend-server-depot';
import type { LegendMarketplaceApplicationStore, LegendMarketplaceBaseStore } from '../LegendMarketplaceBaseStore.js';
import { ActionState, type GeneratorFn } from '@finos/legend-shared';
import { type V1_IngestEnvironment, V1_IngestEnvironmentClassification } from '@finos/legend-graph';
import { DataProductViewerState } from './DataProductViewerState.js';
import type { AuthContextProps } from 'react-oidc-context';
import type { LakehouseContractServerClient } from '@finos/legend-server-marketplace';
import { DataProductState, SandboxDataProductState, type BaseDataProductState } from './dataProducts/DataProducts.js';
import { type LakehousePlatformServerClient, type LakehouseIngestServerClient, IngestDeploymentServerConfig } from '@finos/legend-server-lakehouse';
export declare enum DataProductFilterType {
DEPLOY_TYPE = "DEPLOY_TYPE",
ENVIRONMENT_CLASSIFICATION = "ENVIRONMENT_CLASSIFICATION"
}
export declare enum DeployType {
SDLC = "SDLC",
SANDBOX = "SANDBOX"
}
export interface DataProductFilterConfig {
sdlcDeployFilter: boolean;
sandboxDeployFilter: boolean;
devEnvironmentClassificationFilter: boolean;
prodParallelEnvironmentClassificationFilter: boolean;
prodEnvironmentClassificationFilter: boolean;
}
declare class DataProductFilters {
sdlcDeployFilter: boolean;
sandboxDeployFilter: boolean;
devEnvironmentClassificationFilter: boolean;
prodParallelEnvironmentClassificationFilter: boolean;
prodEnvironmentClassificationFilter: boolean;
search?: string | undefined;
constructor(defaultBooleanFilters: DataProductFilterConfig, search?: string | undefined);
static default(): DataProductFilters;
get currentFilterValues(): DataProductFilterConfig;
}
export declare enum DataProductSort {
NAME_ALPHABETICAL = "Name A-Z",
NAME_REVERSE_ALPHABETICAL = "Name Z-A"
}
export declare class MarketplaceLakehouseStore implements CommandRegistrar {
readonly marketplaceBaseStore: LegendMarketplaceBaseStore;
readonly applicationStore: LegendMarketplaceApplicationStore;
readonly depotServerClient: DepotServerClient;
readonly lakehouseContractServerClient: LakehouseContractServerClient;
readonly lakehousePlatformServerClient: LakehousePlatformServerClient;
readonly lakehouseIngestServerClient: LakehouseIngestServerClient;
productStatesMap: Map<string, DataProductState>;
lakehouseIngestEnvironmentSummaries: IngestDeploymentServerConfig[];
lakehouseIngestEnvironmentsByDID: Map<string, IngestDeploymentServerConfig>;
lakehouseIngestEnvironmentDetails: V1_IngestEnvironment[];
sandboxDataProductStates: SandboxDataProductState[];
loadingProductsState: ActionState;
loadingLakehouseEnvironmentSummariesState: ActionState;
loadingLakehouseEnvironmentsByDIDState: ActionState;
loadingLakehouseEnvironmentDetailsState: ActionState;
loadingSandboxDataProductStates: ActionState;
filter: DataProductFilters;
sort: DataProductSort;
dataProductViewer: DataProductViewerState | undefined;
dummyDataProductStates: DataProductState[];
constructor(marketplaceBaseStore: LegendMarketplaceBaseStore, lakehouseServerClient: LakehouseContractServerClient, lakehousePlatformServerClient: LakehousePlatformServerClient, lakehouseIngestServerClient: LakehouseIngestServerClient, depotServerClient: DepotServerClient);
get filterSortProducts(): BaseDataProductState[] | undefined;
setLakehouseIngestEnvironmentSummaries(summaries: IngestDeploymentServerConfig[]): void;
setLakehouseIngestEnvironmentsByDID(environmentsByDID: Map<string, IngestDeploymentServerConfig>): void;
setLakehouseIngestEnvironmentDetails(environmentDetails: V1_IngestEnvironment[]): void;
setSandboxDataProductStates(sandboxDataProductStates: SandboxDataProductState[]): void;
setDataProductViewerState(val: DataProductViewerState | undefined): void;
handleFilterChange(filterType: DataProductFilterType, val: DeployType | V1_IngestEnvironmentClassification | undefined): void;
handleSearch(query: string | undefined): void;
setSort(sort: DataProductSort): void;
fetchDataProducts(): Promise<void>;
fetchLakehouseEnvironmentSummaries(token: string | undefined): Promise<void>;
fetchLakehouseEnvironmentSummary(ingestEnvironmentUrn: string, token: string | undefined): Promise<IngestDeploymentServerConfig | undefined>;
fetchLakehouseEnvironmentsByDID(dids: string[], token: string | undefined): Promise<void>;
fetchLakehouseEnvironmentDetails(token: string | undefined): Promise<void>;
fetchSandboxDataProducts(token: string | undefined): Promise<void>;
init(auth: AuthContextProps): GeneratorFn<void>;
initWithProduct(gav: string, path: string, auth: AuthContextProps): GeneratorFn<void>;
initWithSandboxProduct(ingestEnvironmentUrn: string, path: string, auth: AuthContextProps): GeneratorFn<void>;
registerCommands(): void;
deregisterCommands(): void;
}
export {};
//# sourceMappingURL=MarketplaceLakehouseStore.d.ts.map