UNPKG

@sap-cloud-sdk/odata-v4

Version:

SAP Cloud SDK for JavaScript common functions of OData client generator and OpenAPI clint generator.

79 lines 3.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.transformReturnValueForUndefined = transformReturnValueForUndefined; exports.transformReturnValueForEntity = transformReturnValueForEntity; exports.transformReturnValueForEntityList = transformReturnValueForEntityList; exports.transformReturnValueForComplexType = transformReturnValueForComplexType; exports.transformReturnValueForComplexTypeList = transformReturnValueForComplexTypeList; exports.transformReturnValueForEdmType = transformReturnValueForEdmType; exports.transformReturnValueForEdmTypeList = transformReturnValueForEdmTypeList; const de_serializers_1 = require("../de-serializers"); const response_data_accessor_1 = require("./response-data-accessor"); /** * Transform the payload of the OData response to undefined. * This function is used in function imports, when no values need to be returned. * @param data - The OData payload. * @param builderFn - The deserialization function for transforming the payload. * @returns The transformed value. */ function transformReturnValueForUndefined(data, builderFn) { return builderFn(data); } /** * Transform the payload of an OData response to an entity by using the given (de-)serializers. * @param data - The OData payload. * @param entityApi - Entity API that holds the (de-)serializers. * @returns The transformed value. */ function transformReturnValueForEntity(data, entityApi) { return (0, de_serializers_1.entityDeserializer)(entityApi.deSerializers) .deserializeEntity((0, response_data_accessor_1.getSingleResult)(data), entityApi) .setOrInitializeRemoteState(); } /** * Transform the payload of the OData response to array of entities by using given (de-)serializers. * @param data - The OData payload. * @param entityApi - Entity API that holds the (de-)serializers. * @returns The transformed value. */ function transformReturnValueForEntityList(data, entityApi) { const deserializeEntity = (0, de_serializers_1.entityDeserializer)(entityApi.deSerializers).deserializeEntity; return (0, response_data_accessor_1.getCollectionResult)(data).map(entityJson => deserializeEntity(entityJson, entityApi).setOrInitializeRemoteState()); } /** * Transform the payload of the OData response to a complex type by using given deserialization function. * @param data - The OData payload. * @param builderFn - The deserialization function for transforming the payload. * @returns The transformed value. */ function transformReturnValueForComplexType(data, builderFn) { return builderFn((0, response_data_accessor_1.getSingleResult)(data)); } /** * Transform the payload of the OData response to complex type array by using given deserialization function. * @param data - The OData payload. * @param builderFn - The deserialization function for transforming the payload. * @returns The transformed value. */ function transformReturnValueForComplexTypeList(data, builderFn) { return (0, response_data_accessor_1.getCollectionResult)(data).map(json => builderFn(json)); } /** * Transform the payload of the OData response to edm type by using given deserialization function. * @param data - The OData payload. * @param builderFn - The deserialization function for transforming the payload. * @returns The transformed value. */ function transformReturnValueForEdmType(data, builderFn) { return builderFn((0, response_data_accessor_1.getSingleResult)(data)); } /** * Transform the payload of the OData response to edm type array by using given deserialization function. * @param data - The OData payload. * @param builderFn - The deserialization function for transforming the payload. * @returns The transformed value. */ function transformReturnValueForEdmTypeList(data, builderFn) { return (0, response_data_accessor_1.getCollectionResult)(data).map(builderFn); } //# sourceMappingURL=response-transformers.js.map