@finos/legend-server-marketplace
Version:
Legend Marketplace server client
157 lines • 6.86 kB
JavaScript
/**
* 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 { customListWithSchema, SerializationFactory, usingConstantValueSchema, usingModelSchema, } from '@finos/legend-shared';
import { createModelSchema, custom, list, optional, primitive, raw, } from 'serializr';
import { deserializeDataProductSearchResultDetails, deserializeLakehouseDataProductSearchResultOrigin, serializeDataProductSearchResultDetails, serializeLakehouseDataProductSearchResultOrigin, } from '../serializationHelpers/DataProductSerializationHelper.js';
export var DataProductSearchResultDetailsType;
(function (DataProductSearchResultDetailsType) {
DataProductSearchResultDetailsType["LAKEHOUSE"] = "lakehouse";
DataProductSearchResultDetailsType["LEGACY"] = "legacy";
DataProductSearchResultDetailsType["ERROR"] = "error";
})(DataProductSearchResultDetailsType || (DataProductSearchResultDetailsType = {}));
export var LakehouseDataProductSearchResultOriginType;
(function (LakehouseDataProductSearchResultOriginType) {
LakehouseDataProductSearchResultOriginType["SDLC"] = "SdlcDeployment";
LakehouseDataProductSearchResultOriginType["AD_HOC"] = "AdHocDeployment";
})(LakehouseDataProductSearchResultOriginType || (LakehouseDataProductSearchResultOriginType = {}));
export class LakehouseDataProductSearchResultOrigin {
}
export class LakehouseSDLCDataProductSearchResultOrigin extends LakehouseDataProductSearchResultOrigin {
groupId;
artifactId;
versionId;
path;
static serialization = new SerializationFactory(createModelSchema(LakehouseSDLCDataProductSearchResultOrigin, {
_type: usingConstantValueSchema(LakehouseDataProductSearchResultOriginType.SDLC),
groupId: primitive(),
artifactId: primitive(),
versionId: primitive(),
path: primitive(),
}));
}
export class LakehouseAdHocDataProductSearchResultOrigin extends LakehouseDataProductSearchResultOrigin {
static serialization = new SerializationFactory(createModelSchema(LakehouseAdHocDataProductSearchResultOrigin, {
_type: usingConstantValueSchema(LakehouseDataProductSearchResultOriginType.AD_HOC),
}));
}
export class DataProductSearchResultDetails {
}
export class LakehouseDataProductSearchResultDetails extends DataProductSearchResultDetails {
dataProductId;
deploymentId;
producerEnvironmentName;
producerEnvironmentType;
origin;
static serialization = new SerializationFactory(createModelSchema(LakehouseDataProductSearchResultDetails, {
_type: usingConstantValueSchema(DataProductSearchResultDetailsType.LAKEHOUSE),
dataProductId: primitive(),
deploymentId: primitive(),
producerEnvironmentName: primitive(),
producerEnvironmentType: optional(primitive()),
origin: custom(serializeLakehouseDataProductSearchResultOrigin, deserializeLakehouseDataProductSearchResultOrigin),
}));
}
export class LegacyDataProductSearchResultDetails extends DataProductSearchResultDetails {
groupId;
artifactId;
versionId;
path;
static serialization = new SerializationFactory(createModelSchema(LegacyDataProductSearchResultDetails, {
_type: usingConstantValueSchema(DataProductSearchResultDetailsType.LEGACY),
groupId: primitive(),
artifactId: primitive(),
versionId: primitive(),
path: primitive(),
}));
}
export class ErrorDataProductSearchResultDetails extends DataProductSearchResultDetails {
message;
static serialization = new SerializationFactory(createModelSchema(ErrorDataProductSearchResultDetails, {
_type: usingConstantValueSchema(DataProductSearchResultDetailsType.ERROR),
message: optional(primitive()),
}));
}
export class DataProductSearchResultMetadata {
next_page_number;
num_pages;
page_number;
page_size;
prev_page_number;
total_count;
lakehouse_count;
legacy_count;
external_source_count;
has_filtered_products;
static serialization = new SerializationFactory(createModelSchema(DataProductSearchResultMetadata, {
next_page_number: optional(primitive()),
num_pages: primitive(),
page_number: primitive(),
page_size: primitive(),
prev_page_number: optional(primitive()),
total_count: primitive(),
lakehouse_count: optional(primitive()),
legacy_count: optional(primitive()),
external_source_count: optional(primitive()),
has_filtered_products: optional(primitive()),
}));
}
export class DataProductSearchResult {
dataProductTitle;
dataProductDescription;
tags1;
tags2;
tag_score;
similarity;
dataProductDetails;
dataProductSource;
licenseTo;
hygiene_score;
meets_hygiene_threshold;
static serialization = new SerializationFactory(createModelSchema(DataProductSearchResult, {
dataProductTitle: optional(primitive()),
dataProductDescription: optional(primitive()),
embedding_type: primitive(),
vendor_name: primitive(),
tags1: list(primitive()),
tags2: list(primitive()),
tag_score: primitive(),
similarity: primitive(),
dataProductDetails: custom(serializeDataProductSearchResultDetails, deserializeDataProductSearchResultDetails),
dataProductSource: optional(primitive()),
licenseTo: optional(primitive()),
hygiene_score: optional(primitive()),
meets_hygiene_threshold: optional(primitive()),
}));
}
export class DataProductSearchFiltersMetadata {
taxonomy_tree;
static serialization = new SerializationFactory(createModelSchema(DataProductSearchFiltersMetadata, {
taxonomy_tree: list(raw()),
}));
}
export class DataProductSearchResponse {
results;
as_of_time;
metadata;
filters_metadata;
static serialization = new SerializationFactory(createModelSchema(DataProductSearchResponse, {
results: customListWithSchema(DataProductSearchResult.serialization.schema),
as_of_time: primitive(),
metadata: usingModelSchema(DataProductSearchResultMetadata.serialization.schema),
filters_metadata: optional(usingModelSchema(DataProductSearchFiltersMetadata.serialization.schema)),
}));
}
//# sourceMappingURL=DataProductSearchResult.js.map