@sap-cloud-sdk/core
- Version 1.54.2
- Published
- 1.64 MB
- 14 dependencies
- Apache-2.0 license
Install
npm i @sap-cloud-sdk/core
yarn add @sap-cloud-sdk/core
pnpm add @sap-cloud-sdk/core
Overview
[[include:core/README.md]]
@sap-cloud-sdk/core
Index
Variables
- circuitBreakerDefaultOptions
- clientCredentialsTokenCache
- content_transfer_encoding_line
- defaultDisallowedKeys
- deserializersCommon
- destinationCache
- DestinationSelectionStrategies
- destinationServiceCache
- entityDeserializerV2
- entityDeserializerV4
- entitySerializer
- entitySerializerV2
- entitySerializerV4
- EnvironmentAccessor
- filterFunctions
- filterFunctionsV4
- http_version
- mappingTenantFields
- mappingUserFields
- numberReturnTypeMapping
- oDataUri
- oDataUriV2
- oDataUriV4
- part_content_type_line
- responseDataAccessor
- responseDataAccessorV4
- serializersCommom
- serializersCommon
- uriConverter
- uriConverters
- uriConvertersCommon
- uriConvertersV2
- uriConvertersV4
- uriConverterV2
- uriConverterV4
- verificationKeyCache
Functions
- addAuthorizationHeader()
- addDestinationToRequestConfig()
- addProxyConfiguration()
- addProxyConfigurationInternet()
- addProxyConfigurationOnPrem()
- all()
- alwaysProvider()
- alwaysSubscriber()
- and()
- any()
- asc()
- audiences()
- basicHeader()
- buildAndAddAuthorizationHeader()
- buildAuthorizationHeaders()
- buildAxiosRequestConfig()
- buildCsrfHeaders()
- buildHeadersForDestination()
- buildHttpRequest()
- ceiling()
- checkMandatoryValue()
- clientCredentialsGrant()
- concat()
- contains()
- convertToUriForEdmString()
- createComplexType()
- createFilterFunction()
- createGetFilter()
- createGetResourcePathForKeys()
- customAttributes()
- day()
- decodeJwt()
- desc()
- deserializeBatchResponse()
- deserializeComplexType()
- deserializeComplexTypeV2()
- deserializeComplexTypeV4()
- deserializeEntity()
- deserializeEntityV2()
- deserializeEntityV4()
- destinationForServiceBinding()
- detectNewLineSymbol()
- edmDateTimeToMoment()
- edmToTs()
- edmToTsV2()
- edmToTsV4()
- endsWith()
- entityDeserializer()
- execute()
- executeHttpRequest()
- extractClientCredentials()
- extractCustomFields()
- extractEtagFromHeader()
- extractODataEtag()
- extractODataEtagV2()
- extractODataEtagV4()
- fetchInstanceDestinations()
- fetchSubaccountDestinations()
- fetchVerificationKeys()
- filterCustomRequestConfig()
- filterFunction()
- filterFunctionV4()
- filterNullishValues()
- floor()
- fractionalSeconds()
- fromEdmToNumber()
- fromNumberToEdm()
- getAgentConfig()
- getAuthHeaders()
- getAxiosConfigWithDefaults()
- getAxiosConfigWithDefaultsWithoutMethod()
- getCollectionResult()
- getDestination()
- getDestinationBasicCredentials()
- getDestinationByName()
- getDestinationCacheKey()
- getDestinationCacheKeyStrict()
- getDestinationConfig()
- getDestinationFromDestinationService()
- getDestinationFromEnvByName()
- getDestinationOptions()
- getDestinations()
- getDestinationsEnvVariable()
- getDestinationService()
- getDestinationServiceCredentials()
- getDestinationServiceCredentialsList()
- getDestinationServiceUri()
- getDestinationsFromEnv()
- getEdmType()
- getEntityConstructor()
- getEntityKeys()
- getEnvironmentVariable()
- getExpand()
- getExpandV2()
- getExpandV4()
- getFieldOptions()
- getGrantTokenCacheKey()
- getHeader()
- getHeaders()
- getHeaderValue()
- getLine()
- getLinkedCollectionResult()
- getOAuth2ClientCredentialsToken()
- getOrderBy()
- getProtocolOrDefault()
- getQueryParametersForFilter()
- getQueryParametersForOrderBy()
- getQueryParametersForSelection()
- getResourcePathForKeys()
- getResponseBody()
- getSelect()
- getSelectV2()
- getSelectV4()
- getService()
- getServiceCredentialsList()
- getServiceList()
- getSingleResult()
- getUrlProtocol()
- getVcapService()
- getXsuaaServiceCredentials()
- hasSubsequence()
- hasSubset()
- headerForClientCredentials()
- hour()
- indexOf()
- isBooleanFilterFunction()
- isCollectionResult()
- isComplexTypeNameSpace()
- isDestination()
- isDestinationConfiguration()
- isDestinationJson()
- isDestinationNameAndJwt()
- isEdmType()
- isExistentProperty()
- isExpandedProperty()
- isFilter()
- isFilterLambdaExpression()
- isFilterLink()
- isFilterList()
- isHttpSuccessCode()
- isIdenticalTenant()
- isNavigationProperty()
- isOf()
- isOrderableEdmType()
- isSelectedProperty()
- issuerUrl()
- isUnaryFilter()
- isUserToken()
- isWithETag()
- jwtBearerToken()
- jwtBearerTokenGrant()
- length()
- matchesPattern()
- maxDateTime()
- mergeHeaders()
- minDateTime()
- minute()
- momentToEdmDateTime()
- month()
- noDestinationErrorMessage()
- nonEnumerable()
- not()
- now()
- or()
- parseBatchResponse()
- parseDestination()
- parseEntityNameFromMetadataUri()
- parseHttpCode()
- parseProxyEnv()
- parseResponseData()
- prependDollar()
- proxyAgent()
- proxyHostAndPort()
- proxyStrategy()
- readPropertyWithWarn()
- refreshTokenGrant()
- removePropertyOnCondition()
- replaceDuplicateKeys()
- resolveService()
- retrieveJwt()
- round()
- sanitizeDestination()
- searchEnvVariablesForDestination()
- searchServiceBindingForDestination()
- second()
- secondsToTime()
- serializeBatchRequest()
- serializeChangeSet()
- serializeComplexType()
- serializeComplexTypeV2()
- serializeComplexTypeV4()
- serializeEntity()
- serializeEntityNonCustomFields()
- serializeEntityNonCustomFieldsV2()
- serializeEntityNonCustomFieldsV4()
- serializeEntityV2()
- serializeRequest()
- serviceToken()
- shouldHandleCsrfToken()
- splitBatchResponse()
- splitChangeSetResponse()
- splitResponse()
- startsWith()
- subscriberFirst()
- substring()
- substringOf()
- tenantFromJwt()
- throwErrorWhenReturnTypeIsUnionType()
- timeToSeconds()
- toBatchChangeSet()
- toBatchChangeSetV2()
- toBatchChangeSetV4()
- toBatchRetrieveBody()
- toBatchRetrieveBodyV2()
- toBatchRetrieveBodyV4()
- toDestinationNameUrl()
- toFilterableList()
- toGuid()
- toLower()
- toPascalCase()
- toPropertyFormat()
- toSanitizedHeaderObject()
- toStaticPropertyFormat()
- totalOffsetMinutes()
- toTitleFormat()
- toTypeNameFormat()
- toUpper()
- transformReturnValueForComplexType()
- transformReturnValueForComplexTypeList()
- transformReturnValueForComplexTypeListV2()
- transformReturnValueForComplexTypeListV4()
- transformReturnValueForComplexTypeV2()
- transformReturnValueForComplexTypeV4()
- transformReturnValueForEdmType()
- transformReturnValueForEdmTypeList()
- transformReturnValueForEdmTypeListV2()
- transformReturnValueForEdmTypeListV4()
- transformReturnValueForEdmTypeV2()
- transformReturnValueForEdmTypeV4()
- transformReturnValueForEntity()
- transformReturnValueForEntityList()
- transformReturnValueForEntityListV2()
- transformReturnValueForEntityListV4()
- transformReturnValueForEntityV2()
- transformReturnValueForEntityV4()
- transformReturnValueForUndefined()
- transformReturnValueForUndefinedV2()
- transformReturnValueForUndefinedV4()
- trim()
- tsToEdm()
- tsToEdmV2()
- tsToEdmV4()
- urlAndAgent()
- useOrFetchDestination()
- userApprovedServiceToken()
- userFromJwt()
- userTokenGrant()
- verifyJwt()
- verifyJwtWithKey()
- wrapJwtInHeader()
- year()
Classes
EntityBase
- asObject()
- entityBuilder()
- getCurrentMapKeys()
- getCurrentStateForKey()
- getCustomField()
- getCustomFields()
- getUpdatedCustomFields()
- getUpdatedProperties()
- getUpdatedPropertyNames()
- hasCustomField()
- initializeCustomFields()
- isConflictingCustomField()
- isVisitedEntity()
- remoteState
- setCustomField()
- setCustomFields()
- setOrInitializeRemoteState()
- setVersionIdentifier()
- versionIdentifier
ODataRequestConfig
- addCustomHeaders()
- addCustomQueryParameters()
- addCustomRequestConfiguration()
- appendedPaths
- appendPath()
- contentType
- customHeaders
- customQueryParameters
- customRequestConfiguration
- customServicePath
- defaultHeaders
- defaultServicePath
- fetchCsrfToken
- method
- payload
- prependDollarToQueryParameters()
- queryParameters()
- resourcePath()
UpdateRequestBuilderBase
- entity
- entitySerializer
- executeRequest()
- executeRequestRaw()
- extractODataEtag
- getPayload()
- ignoredFields()
- ignoreVersionIdentifier()
- isEmptyObject()
- oDataUri
- payloadManipulator
- prepare()
- replaceWholeEntityWithPut()
- requiredFields()
- setIgnoredFields()
- setRequiredFields()
- setVersionIdentifier()
- withCustomVersionIdentifier()
Interfaces
Destination
- authentication
- authTokens
- certificates
- clientId
- clientSecret
- cloudConnectorLocationId
- forwardAuthToken
- headers
- isTestDestination
- isTrustingAllCertificates
- keyStoreName
- keyStorePassword
- name
- origin
- originalProperties
- password
- proxyConfiguration
- proxyType
- queryParameters
- sapClient
- systemUser
- tokenServicePassword
- tokenServiceUrl
- tokenServiceUser
- type
- url
- username
Enums
Type Aliases
- ActionImportParameters
- AuthenticationType
- BatchResponse
- CollectionFieldType
- ComplexTypePropertyFields
- ConstructorOrField
- DeepFieldType
- DestinationOptions
- DestinationProxyType
- DestinationRetrievalOptions
- DestinationSelectionStrategy
- DestinationServiceCredentials
- EdmToPrimitive
- EdmToPrimitiveV2
- EdmToPrimitiveV4
- EdmType
- EdmTypeCommon
- EdmTypeDifferentConverters
- EdmTypeForEdmOrFieldType
- EdmTypeSameConverters
- EdmTypeSameConvertersUri
- EdmTypeShared
- EdmTypeV2
- EdmTypeV4
- EntityBuilderType
- EnumType
- ExclusiveEdmTypeV2
- ExclusiveEdmTypeV4
- ExecuteHttpRequestFn
- Expandable
- FieldType
- FieldTypeByEdmType
- Filterable
- FilterFunctionParameterType
- FilterFunctionPrimitiveParameterType
- FilterFunctionReturnType
- FilterFunctionReturnTypeV4
- FilterLambdaOperator
- FilterOperator
- FilterOperatorByType
- FunctionImportParameters
- HttpRequest
- IsOrderableField
- IsSelectableField
- JwtKeyMapping
- Method
- ODataVersionOf
- Orderable
- OrderableEdmType
- OrderableInput
- RegisteredJWTClaims
- RequestMethodType
- Selectable
- ServiceCredentials
- SimpleTypeFields
- XsuaaServiceCredentials
Namespaces
Variables
variable circuitBreakerDefaultOptions
const circuitBreakerDefaultOptions: { timeout: number; errorThresholdPercentage: number; volumeThreshold: number; resetTimeout: number;};
variable clientCredentialsTokenCache
const clientCredentialsTokenCache: { getGrantTokenFromCache: ( url: any, credentialsOrClientId: ClientCredentials | string ) => ClientCredentialsResponse | undefined; cacheRetrievedToken: ( url: any, credentialsOrClientId: ClientCredentials | string, token: ClientCredentialsResponse ) => void; clear: () => void; getCacheInstance: () => Cache<ClientCredentialsResponse>;};
variable content_transfer_encoding_line
const content_transfer_encoding_line: string;
Deprecated
Since v1.30.0.
variable defaultDisallowedKeys
const defaultDisallowedKeys: string[];
A list of request config keys that are not allowed to be customized by default.
variable deserializersCommon
const deserializersCommon: EdmTypeMapping;
variable destinationCache
const destinationCache: { retrieveDestinationFromCache: ( decodedJwt: Record<string, any>, name: string, isolation: IsolationStrategy ) => Destination | undefined; cacheRetrievedDestination: ( decodedJwt: Record<string, any>, destination: Destination, isolation: IsolationStrategy ) => void; cacheRetrievedDestinations: ( decodedJwt: Record<string, any>, retrievedDestinations: DestinationsByType, isolation: IsolationStrategy ) => void; clear: () => void; getCacheInstance: () => Cache<Destination>;};
variable DestinationSelectionStrategies
const DestinationSelectionStrategies: { alwaysProvider: typeof alwaysProvider; alwaysSubscriber: typeof alwaysSubscriber; subscriberFirst: typeof subscriberFirst;};
Selector of destination selection strategies. See [[alwaysProvider]], [[alwaysSubscriber]] and [[subscriberFirst]] for more information available selection strategies.
variable destinationServiceCache
const destinationServiceCache: { retrieveDestinationsFromCache: ( targetUrl: string, decodedJwt: JwtPayload, isolationStrategy?: IsolationStrategy | undefined ) => Destination[] | undefined; cacheRetrievedDestinations: ( destinationServiceUri: string, decodedJwt: JwtPayload, destinations: Destination[], isolationStrategy?: IsolationStrategy | undefined ) => void; clear: () => void; getCacheInstance: () => Cache<Destination[]>;};
variable entityDeserializerV2
const entityDeserializerV2: EntityDeserializer<any>;
Entity deserializer instance for v2 entities. See [[EntityDeserializer]] for the provided methods.
variable entityDeserializerV4
const entityDeserializerV4: EntityDeserializer<any>;
Entity deserializer instance for v4 entities. See [[EntityDeserializer]] for the provided methods.
variable entitySerializer
const entitySerializer: EntitySerializer<any, any>;
Entity serializer instance for v2 entities. See [[EntitySerializer]] for the provided methods.
variable entitySerializerV2
const entitySerializerV2: EntitySerializer<any, any>;
Entity serializer instance for v2 entities. See [[EntitySerializer]] for the provided methods.
variable entitySerializerV4
const entitySerializerV4: EntitySerializer<any, any>;
Entity serializer instance for v4 entities. See [[EntitySerializer]] for the provided methods.
variable EnvironmentAccessor
const EnvironmentAccessor: { getDestinationBasicCredentials: typeof getDestinationBasicCredentials; getDestinationServiceCredentials: typeof getDestinationServiceCredentials; getDestinationServiceCredentialsList: typeof getDestinationServiceCredentialsList; getServiceCredentialsList: typeof getServiceCredentialsList; getServiceList: typeof getServiceList; getVcapService: typeof getVcapService; getEnvironmentVariable: typeof getEnvironmentVariable; getDestinationServiceUri: typeof getDestinationServiceUri; getXsuaaServiceCredentials: typeof getXsuaaServiceCredentials;};
Deprecated
Since v1.5.0. Use directly exported functions instead
variable filterFunctions
const filterFunctions: { substringOf: typeof substringOf; replace: typeof replace; endsWith: typeof import('../odata-common').endsWith; startsWith: typeof import('../odata-common').startsWith; length: typeof import('../odata-common').length; indexOf: typeof import('../odata-common').indexOf; substring: typeof import('../odata-common').substring; toLower: typeof import('../odata-common').toLower; toUpper: typeof import('../odata-common').toUpper; trim: typeof import('../odata-common').trim; concat: typeof import('../odata-common').concat; round: typeof import('../odata-common').round; floor: typeof import('../odata-common').floor; ceiling: typeof import('../odata-common').ceiling; day: typeof import('../odata-common').day; hour: typeof import('../odata-common').hour; minute: typeof import('../odata-common').minute; month: typeof import('../odata-common').month; second: typeof import('../odata-common').second; year: typeof import('../odata-common').year; isOf: typeof import('../odata-common').isOf;};
OData v2 specific filter functions
variable filterFunctionsV4
const filterFunctionsV4: { contains: typeof contains; matchesPattern: typeof matchesPattern; fractionalSeconds: typeof fractionalSeconds; totalOffsetMinutes: typeof totalOffsetMinutes; maxDateTime: typeof maxDateTime; minDateTime: typeof minDateTime; now: typeof now; hasSubset: typeof hasSubset; hasSubsequence: typeof hasSubsequence; endsWith: typeof import('../odata-common').endsWith; startsWith: typeof import('../odata-common').startsWith; length: typeof import('../odata-common').length; indexOf: typeof import('../odata-common').indexOf; substring: typeof import('../odata-common').substring; toLower: typeof import('../odata-common').toLower; toUpper: typeof import('../odata-common').toUpper; trim: typeof import('../odata-common').trim; concat: typeof import('../odata-common').concat; round: typeof import('../odata-common').round; floor: typeof import('../odata-common').floor; ceiling: typeof import('../odata-common').ceiling; day: typeof import('../odata-common').day; hour: typeof import('../odata-common').hour; minute: typeof import('../odata-common').minute; month: typeof import('../odata-common').month; second: typeof import('../odata-common').second; year: typeof import('../odata-common').year; isOf: typeof import('../odata-common').isOf;};
OData v4 specific filter functions
variable http_version
const http_version: string;
Deprecated
Since v1.30.0.
variable mappingTenantFields
const mappingTenantFields: JwtKeyMapping<Tenant, 'zid' | 'zdn'>;
Mapping between key name in the Tenant and key name in decoded JWT.
variable mappingUserFields
const mappingUserFields: JwtKeyMapping< UserData, | 'user_id' | 'user_name' | 'given_name' | 'family_name' | 'email' | 'scope' | 'xs.user.attributes'>;
Mapping between key name in the User and key name in decoded JWT and the
variable numberReturnTypeMapping
const numberReturnTypeMapping: Record< string, 'Edm.Decimal' | 'Edm.Double' | 'Edm.Int32'>;
variable oDataUri
const oDataUri: ODataUriBase;
Instance of the [[ODataUri]] conversion interface for OData v2.
variable oDataUriV2
const oDataUriV2: ODataUriBase;
Instance of the [[ODataUri]] conversion interface for OData v2.
variable oDataUriV4
const oDataUriV4: ODataUri;
Instance of the [[ODataUri]] conversion interface for OData v4.
variable part_content_type_line
const part_content_type_line: string;
Deprecated
Since v1.30.0.
variable responseDataAccessor
const responseDataAccessor: ResponseDataAccessor;
variable responseDataAccessorV4
const responseDataAccessorV4: ResponseDataAccessor;
variable serializersCommom
const serializersCommom: EdmTypeMapping;
Deprecated
Since v1.27.0. Use [[serializersCommon]] instead.
variable serializersCommon
const serializersCommon: EdmTypeMapping;
variable uriConverter
const uriConverter: UriConverter;
variable uriConverters
const uriConverters: UriConverterMapping;
variable uriConvertersCommon
const uriConvertersCommon: UriConverterMapping;
variable uriConvertersV2
const uriConvertersV2: UriConverterMapping;
variable uriConvertersV4
const uriConvertersV4: UriConverterMapping;
variable uriConverterV2
const uriConverterV2: UriConverter;
variable uriConverterV4
const uriConverterV4: UriConverter;
variable verificationKeyCache
const verificationKeyCache: Cache<TokenKey>;
Functions
function addAuthorizationHeader
addAuthorizationHeader: <RequestT extends ODataRequestConfig>( request: ODataRequest<RequestT>, headers: Record<string, string>) => Promise<Record<string, string>>;
Parameter request
an ODataRequest.
Parameter headers
The headers that should be added to.
Returns
The provided headers with the new authorization headers.
Deprecated
Since v1.20.0. Use [[buildAuthorizationHeaders]] instead. Adds authorization headers for a given ODataRequest to existing headers.
function addDestinationToRequestConfig
addDestinationToRequestConfig: <T extends HttpRequestConfig>( destination: Destination | DestinationNameAndJwt, requestConfig: T) => Promise<T & DestinationHttpRequestConfig>;
Builds a [[DestinationHttpRequestConfig]] for the given destination and then merges it into the given request configuration. Setting of the given request configuration take precedence over any destination related configuration.
Parameter destination
A destination or a destination name and a JWT.
Parameter requestConfig
Any object representing an HTTP request.
Returns
The given request config merged with the config built for the given destination.
function addProxyConfiguration
addProxyConfiguration: ( destination: Destination, jwt?: string) => Promise<Destination>;
Given a destination and a JWT (required for subscriber destinations), this function will add a proxy configuration to a destination. See also [[ProxyConfiguration]].
This function will reject if no connectivity service is bound, no XSUAA service with plan application is bound or the client credentials grant with the XSUAA service fails.
Parameter destination
The destination to which the proxy configuration should be added.
Parameter jwt
The JWT of the current user.
Returns
A promise resolving to the destination with the added proxy configuration.
Deprecated
Since v1.16.0. Use [[addProxyConfigurationOnPrem]] instead.
function addProxyConfigurationInternet
addProxyConfigurationInternet: (destination: any) => Destination;
Adds the proxy configuration to a destination based on web proxies defined in environment variables. See [[ProxyConfiguration]] and [[proxyStrategy]] for details.
Parameter destination
to which the proxy configuration is added.
Returns
Destination containing the configuration for web proxy.
function addProxyConfigurationOnPrem
addProxyConfigurationOnPrem: ( destination: Destination, jwt: string | JwtPair | undefined) => Promise<Destination>;
function all
all: <EntityT extends EntityBase, LinkedEntityT extends EntityBase>( ...filters: Filterable<EntityT, LinkedEntityT>[]) => FilterLambdaExpression<EntityT>;
Will return the entity if all elements of the one-to-many link relation fulfill the condition.
Parameter filters
A filter condition like MyEntity.someMultiLink.someProperty.eq('value')
Returns
The lambda filter function to be considered in the query
function alwaysProvider
alwaysProvider: ( allDestinations: AllDestinations, destinationName: string) => Destination | null;
Constraints the selection to provider destinations.
Parameter allDestinations
Retrieved destinations.
Parameter destinationName
Name of the destination to retrieve.
Returns
the destination to retrieve, returns
null
, if no matched provider destination is found.
function alwaysSubscriber
alwaysSubscriber: ( allDestinations: AllDestinations, destinationName: string) => Destination | null;
Constraints the selection to subscriber destinations.
Parameter allDestinations
Retrieved destinations.
Parameter destinationName
Name of the destination to retrieve.
Returns
the destination to retrieve, returns
null
, if no matched subscriber destination is found.
function and
and: { <EntityT extends Entity>( expressions: Filterable<EntityT>[] ): FilterList<EntityT>; <EntityT extends Entity>( ...expressions: Filterable<EntityT, any>[] ): FilterList<EntityT>;};
Combine [[Filterable]]s with logical
and
to create a [[FilterList]].Example:
Entity.requestBuilder().getAll().filter(and(filterExp1, filterExp2));Note that the [[GetAllRequestBuilder.filter | GetAllRequestBuilderV2.filter]] and [[GetAllRequestBuilderV4.filter]] method take a rest parameter and thereby an array of filter expressions that are then combined conjunctively. As a consequence following is equivalent to the example above:
Entity.requestBuilder().getAll().filter(filterExp1, filterExp2);Parameter expressions
Filterables to be combined with logical
and
.Returns
The newly created FilterList.
function any
any: <EntityT extends EntityBase, LinkedEntityT extends EntityBase>( ...filters: Filterable<EntityT, LinkedEntityT>[]) => FilterLambdaExpression<EntityT>;
Will return the entity if at least one element of the one-to-many link relation fulfills the condition.
Parameter filters
A filter condition like MyEntity.someMultiLink.someProperty.eq('value')
Returns
The lambda filter function to be considered in the query
function asc
asc: <EntityT extends Entity>( orderBy: OrderableInput<EntityT>) => Order<EntityT>;
Create new Order by
orderBy._fieldName
in ascending order.Parameter orderBy
Field or link to be ordered by
Returns
New order
function audiences
audiences: (decodedToken: JwtPayload) => Set<string>;
Retrieve the audiences of a decoded JWT based on the audiences and scopes in the token.
Parameter decodedToken
Token to retrieve the audiences from.
Returns
A set of audiences.
function basicHeader
basicHeader: (username: string, password: string) => string;
function buildAndAddAuthorizationHeader
buildAndAddAuthorizationHeader: ( destination: Destination) => (headers: Record<string, any>) => Promise<Record<string, string>>;
Parameter destination
A destination.
Parameter headers
The headers that should be added to.
Returns
The provided headers with the new authorization headers.
Deprecated
Since v1.20.0. Use [[buildAuthorizationHeaders]] instead. Adds authorization headers for a given destination to existing headers.
function buildAuthorizationHeaders
buildAuthorizationHeaders: ( destination: Destination, customAuthHeader?: AuthenticationHeaderCloud | AuthenticationHeaderOnPrem) => Promise<AuthenticationHeaders>;
function buildAxiosRequestConfig
buildAxiosRequestConfig: <T extends HttpRequestConfig>( destination: Destination | DestinationNameAndJwt, requestConfig?: Partial<T>) => Promise<AxiosRequestConfig>;
This API is experimental and might change in newer versions. Use with caution.
Parameter destination
A destination or a destination name and a JWT.
Parameter requestConfig
Any object representing an HTTP request.
Modifiers
@experimental
function buildCsrfHeaders
buildCsrfHeaders: <T extends HttpRequestConfig>( destination: Destination | DestinationNameAndJwt, requestConfig: Partial<T>) => Promise<Record<string, any>>;
Get CSRF token and cookies for a destination and request configuration. The CSRF token and cookies will be retrieved based on the URL of the destination and the custom configuration given by the
requestConfig
. If there is a relative url in therequestConfig
it will be appended to the destination's URL, an absolute URL overwrites the destination related URL.Parameter destination
The destination to get the headers from
Parameter requestConfig
An http request configuration containing additional information about the request, like URL or headers
Returns
A promise to an object containing the CSRF related headers
function buildHeadersForDestination
buildHeadersForDestination: ( destination: Destination, customHeaders?: Record<string, any>) => Promise<Record<string, string>>;
function buildHttpRequest
buildHttpRequest: ( destination: Destination | DestinationNameAndJwt, customHeaders?: Record<string, any>) => Promise<DestinationHttpRequestConfig>;
Builds a [[DestinationHttpRequestConfig]] for the given destination. If a destination name (and a JWT) are provided, it will try to resolve the destination.
Parameter destination
A destination or a destination name and a JWT.
Parameter customHeaders
Custom default headers for the resulting HTTP request.
Returns
A [[DestinationHttpRequestConfig]].
function ceiling
ceiling: <EntityT extends Entity>( num: number | Field<EntityT, boolean, boolean> | NumberFilterFunction<EntityT>, returnType?: 'double' | 'decimal') => NumberFilterFunction<EntityT>;
Build a filter function to ceil a number. Evaluates to double or decimal, defaults to double.
Parameter num
The number to ceil. This can either be a number, a reference to a field or another filter function.
Parameter returnType
The return type to use.
Returns
The newly created filter function
function checkMandatoryValue
checkMandatoryValue: <InterfaceT, JwtKeysT>( key: keyof InterfaceT, mapping: JwtKeyMapping<InterfaceT, JwtKeysT>, jwtPayload: JwtPayload) => void;
Checks if a given key is present in the decoded JWT. If not, an error is thrown.
Parameter key
The key of the representation in typescript
Parameter mapping
The mapping between the typescript keys and the JWT key
Parameter jwtPayload
JWT payload to check fo the given key.
function clientCredentialsGrant
clientCredentialsGrant: ( tokenServiceUrlOrXsuaaServiceCredentials: string | XsuaaServiceCredentials, clientCredentials: ClientCredentials, options?: ResilienceOptions, customBody?: Record<string, any>) => Promise<ClientCredentialsResponse>;
Parameter tokenServiceUrlOrXsuaaServiceCredentials
The URL of the token service or the credentials of a XSUAA service instance.
Parameter clientCredentials
Client credentials for which to request a token.
Parameter options
Options to use by retrieving access token.
Parameter customBody
Object containing value required for the body request.
Returns
A promise resolving to the response.
Deprecated
Since v1.49.0 Use
@sap/xssec
lib instead. Executes a client credentials grant request. If the first parameter is an instance of [[XsuaaServiceCredentials]], the response's access_token will be verified. If the first parameter is a URI, the response will not be verified.
function concat
concat: <EntityT extends Entity>( str1: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, str2: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => StringFilterFunction<EntityT>;
Build a filter function to concatenate two strings. Evaluates to string.
Parameter str1
The first string to concatenate. This can either be a string, a reference to a field or another filter function.
Parameter str2
The second string to concatenate. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function contains
contains: <EntityT extends Entity>( substr: | string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => BooleanFilterFunction<EntityT>;
Build a filter function to test whether a string is a substring of the other. Evaluates to boolean.
Parameter substr
The substring to test for. This can either be a string, a reference to a field or another filter function.
Parameter str
The string to test. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function convertToUriForEdmString
convertToUriForEdmString: (value: any) => string;
function createComplexType
createComplexType: <ComplexT>( json: any, converters: { [converter: string]: CallableFunction }) => ComplexT;
Parameter json
A raw json object to deserialize a complex type from.
Parameter converters
A list of rules on how to convert json to the respective type in JavaScript or TypeScript.
Returns
A deserialized complex type representation.
Deprecated
Since v1.25.0. use [[deserializeComplexType]] instead.
function createFilterFunction
createFilterFunction: <EntityT extends Entity>( functionName: string, returnType: FilterFunctionReturnType, ...parameters: FilterFunctionParameterType<EntityT>[]) => | BooleanFilterFunction<EntityT> | NumberFilterFunction<EntityT> | StringFilterFunction<EntityT>;
function createGetFilter
createGetFilter: (uriConverter: UriConverter) => GetFilter;
Creates a getFilter function using the OData v2 or OData v4 URI converter. The concrete filter getters are initiated in odata/v2/uri-conversion/odata-uri.ts and odata/v4/uri-conversion/odata-uri.ts.
Parameter uriConverter
Uri converter for v2 or v4.
Returns
The filter getter. See interface [[GetFilter]]
function createGetResourcePathForKeys
createGetResourcePathForKeys: ( uriConverter: UriConverter) => GetResourcePathForKeys;
Creates a getResourcePathForKeys function using the OData v2 or OData v4 URI converter. The concrete instances for v2 or v4 are initiated in odata/v2/uri-conversion/odata-uri.ts and odata/v4/uri-conversion/odata-uri.ts.
Parameter uriConverter
Uri converter for v2 or v4.
Returns
The filter getter. See [[GetFilter]]
function customAttributes
customAttributes: (jwtPayload: JwtPayload) => Map<string, string[]>;
Extracts the custom attributes from the JWT.
Parameter jwtPayload
Token payload to read the custom attributes from.
Returns
Custom attributes added by the XSUAA service to the issued JWT.
function day
day: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the day of a date. Evaluates to int.
Parameter date
The date to get the day for. This can either be a date (Moment) or a reference to a field.
Returns
The newly created filter function
function decodeJwt
decodeJwt: (token: string) => JwtPayload;
Decode JWT.
Parameter token
JWT to be decoded
Returns
Decoded payload.
function desc
desc: <EntityT extends Entity>( orderBy: OrderableInput<EntityT>) => Order<EntityT>;
Create new Order by
orderBy._fieldName
in descending order.Parameter orderBy
Field or link to be ordered by
Returns
New order
function deserializeBatchResponse
deserializeBatchResponse: ( parsedBatchResponse: (ResponseData[] | ResponseData)[], entityToConstructorMap: Record<string, Constructable<Entity>>, responseDataAccessor: ResponseDataAccessor, deserializer: EntityDeserializer) => (ErrorResponse | ReadResponse | WriteResponses)[];
Deserialize the parsed batch response.
Parameter parsedBatchResponse
Two dimensional list of parsed batch sub responses.
Parameter entityToConstructorMap
A map that holds the entity type to constructor mapping.
Parameter responseDataAccessor
Response data access module.
Parameter deserializer
Entity deserializer.
Returns
An array of parsed sub responses of the batch response.
function deserializeComplexType
deserializeComplexType: ( json: Record<string, any>, complexType: import('..').ComplexTypeNamespace<any>) => any;
function deserializeComplexTypeV2
deserializeComplexTypeV2: ( json: Record<string, any>, complexType: import('..').ComplexTypeNamespace<any>) => any;
function deserializeComplexTypeV4
deserializeComplexTypeV4: ( json: Record<string, any>, complexType: import('..').ComplexTypeNamespace<any>) => any;
function deserializeEntity
deserializeEntity: ( json: any, entityConstructor: import('..').Constructable<any, unknown>, requestHeader?: any) => any;
function deserializeEntityV2
deserializeEntityV2: ( json: any, entityConstructor: import('..').Constructable<any, unknown>, requestHeader?: any) => any;
function deserializeEntityV4
deserializeEntityV4: ( json: any, entityConstructor: import('..').Constructable<any, unknown>, requestHeader?: any) => any;
function destinationForServiceBinding
destinationForServiceBinding: ( serviceInstanceName: string, options?: DestinationForServiceBindingsOptions) => Destination;
Tries to build a destination from a service binding with the given name. Throws an error if no services are bound at all, no service with the given name can be found, or the service type is not supported. The last error can be circumvent by using the second parameter to provide a custom function that transforms a service binding to a destination.
Parameter serviceInstanceName
The name of the service.
Parameter options
Options to customize the behavior of this function.
Returns
A destination.
function detectNewLineSymbol
detectNewLineSymbol: (str: string) => string;
Detects the system dependent line break in a string.
Parameter str
The string to check for line breaks. Should have at least two lines, otherwise an error will be thrown.
Returns
The system dependent line break
function edmDateTimeToMoment
edmDateTimeToMoment: (edmDateTime: string) => moment.Moment;
This function can be used for both Edm.DateTime and and Edm.DateTimeOffset.
function edmToTs
edmToTs: <T extends EdmType>( value: any, edmType: EdmTypeShared<'v2'>) => EdmToPrimitive<T>;
function edmToTsV2
edmToTsV2: <T extends EdmType>( value: any, edmType: EdmTypeShared<'v2'>) => EdmToPrimitive<T>;
function edmToTsV4
edmToTsV4: <T extends EdmType>( value: any, edmType: EdmTypeShared<'v4'>) => EdmToPrimitive<T>;
function endsWith
endsWith: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, suffix: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => BooleanFilterFunction<EntityT>;
Build a filter function to test whether a string ends with another. Evaluates to boolean.
Parameter str
The string to test. This can either be a string, a reference to a field or another filter function.
Parameter suffix
The suffix to test for. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function entityDeserializer
entityDeserializer: ( edmToTs: EdmToTsTypeV2 | EdmToTsTypeV4, extractODataETag: ExtractODataETagType, extractDataFromOneToManyLink: ExtractDataFromOneToManyLinkType) => EntityDeserializer;
Constructs an entityDeserializer given the OData v2 or v4 specific methods. The concrete deserializers are created in odata/v2/entity-deserializer.ts and odata/v4/entity-deserializer.ts
Parameter edmToTs
Converters emd input to ts values.
Parameter extractODataETag
Extractor for the ETag.
Parameter extractDataFromOneToManyLink
Extractor for data related to one to many links.
Returns
a entity deserializer as defined by [[EntityDeserializer]]
function execute
execute: <ReturnT>( executeFn: ExecuteHttpRequestFn<ReturnT>) => <T extends HttpRequestConfig>( destination: Destination | DestinationNameAndJwt, requestConfig: T, options?: HttpRequestOptions | undefined) => Promise<ReturnT>;
Takes as parameter a function that expects an [[HttpRequest]] and returns a Promise of [[HttpResponse]]. Returns a function that takes a destination and a request-config (extends [[HttpRequestConfig]]), builds an [[HttpRequest]] from them, and calls the provided execute function.
NOTE: If you simply want to execute a request without passing your own execute function, use [[executeHttpRequest]] instead.
Parameter executeFn
A function that can execute an [[HttpRequestConfig]].
Returns
A function expecting destination and a request.
function executeHttpRequest
executeHttpRequest: <T extends HttpRequestConfig>( destination: Destination | DestinationNameAndJwt, requestConfig: T, options?: HttpRequestOptions) => Promise<HttpResponse>;
Builds a [[DestinationHttpRequestConfig]] for the given destination, merges it into the given requestConfig and executes it (using Axios).
Parameter destination
A destination or a destination name and a JWT.
Parameter requestConfig
Any object representing an HTTP request.
Parameter options
An [[HttpRequestOptions]] of the http request for configuring e.g., csrf token delegation. By default, the SDK will not fetch the csrf token.
Returns
A promise resolving to an [[HttpResponse]].
function extractClientCredentials
extractClientCredentials: ( serviceCreds: ServiceCredentials) => ClientCredentials;
Extracts the credentials of a service into an instance of [[ClientCredentials]].
Parameter serviceCreds
The credentials of a service as read from VCAP_SERVICES.
Returns
A [[ClientCredentials]] instance.
function extractCustomFields
extractCustomFields: <EntityT extends Entity, JsonT>( json: Partial<JsonT>, entityConstructor: Constructable<EntityT>) => Record<string, any>;
Extracts all custom fields from the JSON payload for a single entity. In this context, a custom fields is every property that is not known in the corresponding entity class.
Parameter json
The JSON payload.
Parameter entityConstructor
The constructor function of the entity class.
Returns
An object containing the custom fields as key-value pairs.
function extractEtagFromHeader
extractEtagFromHeader: (headers: any) => string | undefined;
function extractODataEtag
extractODataEtag: (json: Record<string, any>) => string | undefined;
Extractor for the ETag for OData v2 responses used in [[entityDeserializer]].
Parameter json
Response data from which the ETag is extracted.
Returns
The ETag.
function extractODataEtagV2
extractODataEtagV2: (json: Record<string, any>) => string | undefined;
Extractor for the ETag for OData v2 responses used in [[entityDeserializer]].
Parameter json
Response data from which the ETag is extracted.
Returns
The ETag.
function extractODataEtagV4
extractODataEtagV4: (json: Record<string, any>) => string | undefined;
Extractor for the ETag for OData v4 responses used in [[entityDeserializer]].
Parameter json
Response data from which the ETag is extracted.
Returns
The ETag.
function fetchInstanceDestinations
fetchInstanceDestinations: ( destinationServiceUri: string, jwt: string, options?: ResilienceOptions & CachingOptions) => Promise<Destination[]>;
Fetches all instance destinations from the given URI.
Parameter destinationServiceUri
The URI of the destination service
Parameter jwt
The access token
Parameter options
Options to use by retrieving destinations
Returns
A promise resolving to a list of instance destinations
function fetchSubaccountDestinations
fetchSubaccountDestinations: ( destinationServiceUri: string, jwt: string, options?: ResilienceOptions & CachingOptions) => Promise<Destination[]>;
Fetches all subaccount destinations from the given URI.
Parameter destinationServiceUri
The URI of the destination service
Parameter jwt
The access token
Parameter options
Options to use by retrieving destinations
Returns
A promise resolving to a list of subaccount destinations
function fetchVerificationKeys
fetchVerificationKeys: { (xsuaaCredentials: XsuaaServiceCredentials, jku?: string): Promise<TokenKey[]>; (url: string, clientId: string, clientSecret: string): Promise<TokenKey[]>; (url: string): Promise<TokenKey[]>;};
Deprecated since v1.49.0. Use
fetchVerificationKeys(url: string)
instead. Credentials are ignored. Fetches verification keys from the XSUAA service for the given credentials.Parameter xsuaaCredentials
Credentials of the XSUAA service instance.
Parameter jku
Value of the jku property in the JWT header. If not provided the old legacy URL xsuaaCredentials.url/token_keys is used as a fallback which will not work for subscriber accounts created after 14th of April 2020.
Returns
An array of TokenKeys.
Deprecated since v1.49.0. Use
fetchVerificationKeys(url: string)
instead. Credentials are ignored. Fetches verification keys from the XSUAA service for the given URL, with the given pair of credentials.Parameter url
URL of the XSUAA service instance.
Parameter clientId
Client ID of the XSUAA service instance.
Parameter clientSecret
Client secret of the XSUAA service instance.
Returns
An array of token keys.
Fetches verification keys from the XSUAA service for the given URL.
Parameter url
URL of the XSUAA service instance.
Returns
An array of token keys.
function filterCustomRequestConfig
filterCustomRequestConfig: ( customRequestConfig: Record<string, string>, disallowedKeys?: string[]) => Record<string, string>;
Filter disallowed keys from a given custom request config object.
Parameter customRequestConfig
a given custom request config object to be filtered
Parameter disallowedKeys
A list of keys that are not allowed to be customized.
Returns
Filtered custom request config object.
function filterFunction
filterFunction: { <EntityT extends Entity>( functionName: string, returnType: 'boolean', ...parameters: FilterFunctionParameterType<EntityT>[] ): BooleanFilterFunction<EntityT>; <EntityT extends Entity>( functionName: string, returnType: 'int' | 'double' | 'decimal', ...parameters: any[] ): NumberFilterFunction<EntityT>; <EntityT extends Entity>( functionName: string, returnType: 'string', ...parameters: any[] ): StringFilterFunction<EntityT>;};
function filterFunctionV4
filterFunctionV4: { <EntityT extends Entity>( functionName: string, returnType: 'boolean', ...parameters: FilterFunctionParameterType<EntityT>[] ): BooleanFilterFunction<EntityT>; <EntityT extends Entity>( functionName: string, returnType: 'int' | 'double' | 'decimal', ...parameters: any[] ): NumberFilterFunction<EntityT>; <EntityT extends Entity>( functionName: string, returnType: 'string', ...parameters: any[] ): StringFilterFunction<EntityT>; <EntityT extends Entity>( functionName: string, returnType: 'datetimeoffset', ...parameters: any[] ): DateFilterFunction<EntityT>; <EntityT extends Entity>( functionName: string, returnType: 'boolean[]', ...parameters: any[] ): CollectionFilterFunction<EntityT, boolean>; <EntityT extends Entity>( functionName: string, returnType: 'string[]', ...parameters: any[] ): CollectionFilterFunction<EntityT, string>; <EntityT extends Entity>( functionName: string, returnType: 'int[]' | 'double[]' | 'decimal[]', ...parameters: any[] ): CollectionFilterFunction<EntityT, number>; <EntityT extends Entity>( functionName: string, returnType: 'datetimeoffset[]', ...parameters: any[] ): CollectionFilterFunction<EntityT, moment.Moment>;};
function filterNullishValues
filterNullishValues: (headers?: Record<string, any>) => Record<string, any>;
Parameter headers
A header object to be filtered.
Returns
- A filtered header object containing only headers with non-nullish values.
Deprecated
Since v1.32.0. Use [[pickNonNullish]] instead.
Filter headers that have nullish values.
function floor
floor: <EntityT extends Entity>( num: number | Field<EntityT, boolean, boolean> | NumberFilterFunction<EntityT>, returnType?: 'double' | 'decimal') => NumberFilterFunction<EntityT>;
Build a filter function to floor a number. Evaluates to double or decimal, defaults to double.
Parameter num
The number to floor. This can either be a number, a reference to a field or another filter function.
Parameter returnType
The return type to use.
Returns
The newly created filter function
function fractionalSeconds
fractionalSeconds: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the fractional seconds of a date. Evaluates to decimal.
Parameter date
The date to get the fractional seconds for. This can either be a date (Moment) or a reference to a field.
Returns
The newly created filter function
function fromEdmToNumber
fromEdmToNumber: (value: string | number) => number;
function fromNumberToEdm
fromNumberToEdm: (value: number) => number | string;
function getAgentConfig
getAgentConfig: (destination: Destination) => HttpAgentConfig | HttpsAgentConfig;
Returns the http or https-agent config depending on the destination URL. If the destination contains a proxy configuration, the agent will be a proxy-agent. If not it will be the default http-agent coming from node.
Parameter destination
determining which kind of configuration is returned
Returns
The http or http-agent configuration.
function getAuthHeaders
getAuthHeaders: ( destination: Destination, customHeaders?: Record<string, any>) => Promise<AuthenticationHeaders>;
function getAxiosConfigWithDefaults
getAxiosConfigWithDefaults: () => HttpRequestConfig;
Builds an Axios config with default configuration i.e. no_proxy, default http and https agent and GET as request method.
Returns
AxiosRequestConfig with default parameters
function getAxiosConfigWithDefaultsWithoutMethod
getAxiosConfigWithDefaultsWithoutMethod: () => Omit<HttpRequestConfig, 'method'>;
function getCollectionResult
getCollectionResult: (data: any) => any[];
Extract the collection data from the response. If the data does not contain a collection an empty array is returned.
Parameter data
Response of the OData v4 service.
Returns
Collection extracted from the response.
function getDestination
getDestination: ( name: string, options?: DestinationOptions) => Promise<Destination | null>;
Builds a destination from one of three sources (in the given order): - from the environment variable "destinations" - from service bindings - from the destination service
If you want to get a destination only from a specific source, use the corresponding function directly (
getDestinationFromEnvByName
,destinationForServiceBinding
,getDestinationFromDestinationService
).Parameter name
The name of the destination to be retrieved.
Parameter options
Configuration for how to retrieve destinations from the destination service.
Returns
A promise returning the requested destination on success.
function getDestinationBasicCredentials
getDestinationBasicCredentials: () => BasicCredentials;
Basic Credentials Getter from Destination service credentials needed for JWT generator.
Returns
Basic credentials.
function getDestinationByName
getDestinationByName: (name: string) => Destination | null;
Parameter name
Name of the destination
Returns
The requested destination if existent, otherwise
null
Deprecated
Since v1.4.2. Use [[getDestinationFromEnvByName]] instead.
Get a destination from the environment variables by name. Throws an error if there are multiple destinations with the same name. This is discouraged for productive use! Use destination-accessor/useOrFetchDestination for fetching destinations from the Cloud Foundry destination service.
function getDestinationCacheKey
getDestinationCacheKey: ( decodedJwt: Record<string, any>, destinationName: string, isolationStrategy: IsolationStrategy) => string;
Parameter decodedJwt
The decoded JWT of the current request.
Parameter destinationName
The name of the destination.
Parameter isolationStrategy
The strategy used to isolate cache entries.
Returns
The cache key.
Deprecated
Since v1.52.0. Use [[getDestinationCacheKeyStrict]] instead. Calculates a cache key based on the jwt and destination name for the given isolation strategy. Cache keys for strategies are non-overlapping, i.e. using a cache key for strategy [[IsolationStrategy.Tenant]] will not result in a cache hit for a destination that has been cached with strategy [[IsolationStrategy.Tenant_User]].
function getDestinationCacheKeyStrict
getDestinationCacheKeyStrict: ( decodedJwt: Record<string, any>, destinationName: string, isolationStrategy?: IsolationStrategy) => string | undefined;
Calculates a cache key based on the jwt and destination name for the given isolation strategy. Cache keys for strategies are non-overlapping, i.e. using a cache key for strategy [[IsolationStrategy.Tenant]] will not result in a cache hit for a destination that has been cached with strategy [[IsolationStrategy.Tenant_User]].
Parameter decodedJwt
The decoded JWT of the current request.
Parameter destinationName
The name of the destination.
Parameter isolationStrategy
The strategy used to isolate cache entries.
Returns
The cache key.
function getDestinationConfig
getDestinationConfig: (dest?: string | Destination) => Destination | null;
function getDestinationFromDestinationService
getDestinationFromDestinationService: ( name: string, options: DestinationOptions) => Promise<Destination | null>;
Retrieves a destination with the given name from the Cloud Foundry destination service. Returns
null
, if no destination can be found. Requires the following service bindings: destination, XSUAA By default, selects subscriber over provider and instance over subaccount destinations.If the destinations are read from the environment, the jwt will be ignored.
Parameter name
The name of the destination to be retrieved.
Parameter options
Configuration for how to retrieve destinations from the destination service.
Returns
A promise returning the requested destination on success.
function getDestinationFromEnvByName
getDestinationFromEnvByName: (name: string) => Destination | null;
Get a destination from the environment variables by name. If there are multiple destinations with the same name the first one will be used. This is discouraged for productive use! Use destination-accessor/useOrFetchDestination for fetching destinations from the Cloud Foundry destination service.
Parameter name
Name of the destination
Returns
The requested destination if existent, otherwise
null
function getDestinationOptions
getDestinationOptions: ( name: string, options?: DestinationOptions) => Promise<Destination | null>;
Parameter name
The name of the destination to be retrieved.
Parameter options
The options of the fetching query of the destination that include the JWT of the current request and the strategy for selecting a destination.
Returns
A promise returning the requested destination on success.
Deprecated
Since v1.0.1. Use [[getDestination]] instead.
Retrieves a destination with the given name from the Cloud Foundry destination service. Returns
null
, if no destination can be found. Requires the following service bindings: destination, XSUAA By default, selects subscriber over provider and instance over subaccount destinations.If the destinations are read from the environment, the jwt will be ignored.
function getDestinations
getDestinations: () => Destination[];
Returns
A list of destinations
Deprecated
Since v1.4.2. Use [[getDestinationsFromEnv]] instead.
Get all destinations from the environment variable "destinations". This is discouraged for productive use! Use destination-accessor/useOrFetchDestination for fetching destinations from the Cloud Foundry destination service.
function getDestinationsEnvVariable
getDestinationsEnvVariable: () => string | undefined;
function getDestinationService
getDestinationService: () => Service;
Get destination service if one is present.
Returns
Destination service
Throws
Error in case no destination service is found in the VCAP variables
function getDestinationServiceCredentials
getDestinationServiceCredentials: () => any;
First 'destination' credentials getter.
Returns
The 'destination' credentials object or
null
, if it does not exist.
function getDestinationServiceCredentialsList
getDestinationServiceCredentialsList: () => DestinationServiceCredentials[];
Destination credentials getter.
Returns
A list of 'credentials' objects in 'destination' service.
function getDestinationServiceUri
getDestinationServiceUri: () => string | null;
Destination URI getter NOTICE: If there exist more than one destination/uri, the function returns the first entry.
Returns
The first existing uri in destination or
null
, if not found.
function getDestinationsFromEnv
getDestinationsFromEnv: () => Destination[];
Get all destinations from the environment variable "destinations". This is discouraged for productive use! Use [[useOrFetchDestination]] for fetching destinations from the Cloud Foundry destination service.
Returns
A list of destinations
function getEdmType
getEdmType: <VersionT extends unknown>( complexTypeNameOrEdmType: string | EdmTypeShared<VersionT>, edmTypeOrUndefined?: EdmTypeShared<VersionT>) => EdmTypeShared<VersionT>;
Convenience method to get the [[EdmTypeShared]] from the overloaded constructor. The two scenarios are: -
complexTypeNameOrEdmType
is of typeEdmTypeShared
andedmTypeOrUndefined
isundefined
-complexTypeNameOrEdmType
is of typestring
andedmTypeOrUndefined
is of typeEdmTypeShared
Parameter complexTypeNameOrEdmType
Either the name of the complex type or the EDM type.
Parameter edmTypeOrUndefined
Either the EDM type or
undefined
.Returns
The EDM type resolved for the two arguments.
function getEntityConstructor
getEntityConstructor: <EntityT extends Entity, ComplexT>( fieldOf: ConstructorOrField<EntityT, ComplexT>) => Constructable<EntityT>;
Convenience method to get the entity constructor of the parent of a complex type.
Parameter fieldOf
Either an entity constructor or another complex type field.
Returns
The constructor of the transitive parent entity;
function getEntityKeys
getEntityKeys: <EntityT extends Entity>( entity: EntityT, entityConstructor: Constructable<EntityT>) => Record<string, any>;
Helper function that maps an entity to its keys map with their original names.
Parameter entity
Entity to map
Parameter entityConstructor
The constructor of the entity
Returns
object that includes all keys that represent given entity
function getEnvironmentVariable
getEnvironmentVariable: (name: string) => string | undefined | null;
Environment variables accessor.
Parameter name
Environment variable name.
Returns
Env variable value if defined. null: If not defined.
function getExpand
getExpand: <EntityT extends Entity>( selects?: Selectable<EntityT>[]) => Partial<{ expand: string }>;
Get an object containing the given expand as a query parameter, or an empty object if none was given. In this OData v2 expand, selected properties are automatically added to the expand.
Parameter selects
The selects which are expanded if necessary
Parameter entityConstructor
Constructor type of the entity to expand on
Returns
An object containing the query parameter or an empty object
function getExpandV2
getExpandV2: <EntityT extends Entity>( selects?: Selectable<EntityT>[]) => Partial<{ expand: string }>;
Get an object containing the given expand as a query parameter, or an empty object if none was given. In this OData v2 expand, selected properties are automatically added to the expand.
Parameter selects
The selects which are expanded if necessary
Parameter entityConstructor
Constructor type of the entity to expand on
Returns
An object containing the query parameter or an empty object
function getExpandV4
getExpandV4: <EntityT extends Entity>( expands: Expandable<EntityT>[] | undefined, entityConstructor: Constructable<EntityT>) => Partial<{ expand: string }>;
Get an object containing the given expand as a query parameter, or an empty object if none was given.
Parameter expands
The expands to transform to a query parameter
Parameter entityConstructor
Constructor type of the entity to expand on
Returns
An object containing the query parameter or an empty object
function getFieldOptions
getFieldOptions: < NullableT extends boolean = false, SelectableT extends boolean = false>( fieldOptions?: FieldOptions<NullableT, SelectableT>) => Required<FieldOptions<NullableT, SelectableT>>;
Get field options merged with default values. The given options take precedence.
Parameter fieldOptions
Given options.
Returns
Given options merged with default values.
function getGrantTokenCacheKey
getGrantTokenCacheKey: ( url: string, credentialsOrClientId: ClientCredentials | string) => string;
function getHeader
getHeader: (key: string, headers?: Record<string, any>) => Record<string, any>;
Parameter key
Name of the header to be found.
Parameter headers
Header object to be searched for given key.
Returns
- An object containing the given key (and value) in its original case, as found in
headers
or an empty object if not found.Deprecated
Since v1.32.0. Use [[pickIgnoreCase]] instead.
Find a header in a given header object, if available, independent of the case (lower / upper).
function getHeaders
getHeaders: ( keys: string[], headers?: Record<string, any>) => Record<string, any>;
Parameter keys
Name of the header to be found.
Parameter headers
Header object to be searched for given key.
Returns
- An object containing the given keys (and values) in its original case, as found in
headers
or an empty object if not found.Deprecated
Since v1.32.0. Use [[pickIgnoreCase]] instead.
Find headers in a given header object, if available, independent of the case (lower / upper).
function getHeaderValue
getHeaderValue: (key: string, headers?: Record<string, any>) => any | undefined;
Parameter key
Name of the header to be found.
Parameter headers
Header object to be searched for given key.
Returns
The value of the header with the given key or
undefined
.Deprecated
Since v1.32.0. Use [[pickValueIgnoreCase]] instead.
Get the value of a header based on the given key, independent of the case (lower / upper).
function getLine
getLine: (request: MethodRequestBuilder) => string;
Parameter request
One of [[GetAllRequestBuilder | getAll]], [[GetByKeyRequestBuilder | getByKey]], [[CreateRequestBuilder | create]], [[UpdateRequestBuilder | update]] or [[DeleteRequestBuilder | delete]] request builder.
Returns
The serialized request as
<HTTP method> <URL> <HTTP version>
.Deprecated
Since v1.30.0. This function won't be replaced. Serialize a request to a one line string containing the HTTP method, URL and HTTP version. For Example:
GET /sap/opu/odata/sap/API_BUSINESS_PARTNER/A_BusinessPartnerAddress?$format=json&$top=1 HTTP/1.1
function getLinkedCollectionResult
getLinkedCollectionResult: (data: any) => any[];
Extract the collection data from the one to many link response. If the data does not contain a collection an empty array is returned.
Parameter data
Response of the one to many link.
Returns
Collection extracted from the response.
function getOAuth2ClientCredentialsToken
getOAuth2ClientCredentialsToken: ( destination: Destination) => Promise<ClientCredentialsResponse>;
Parameter destination
A destination having
OAuth2ClientCredentials
authentication typeReturns
A promise returning the requested access token on success.
Deprecated
Since v1.47.0. Retrieves an access token required for "OAuth2ClientCredentials" destination authentication type.
function getOrderBy
getOrderBy: <EntityT extends Entity>( orderBy: Orderable<EntityT>[]) => Partial<{ orderby: string }>;
Get an object containing the given order bys as query parameter, or an empty object if none was given.
Parameter orderBy
A list of orderables to get the query parameters for
Returns
An object containing the query parameter or an empty object
function getProtocolOrDefault
getProtocolOrDefault: (destination: Destination) => Protocol;
Extracts the http protocol from the destination URL. The default value is http if no protocol is given.
Parameter destination
URL of this destination is parsed
Returns
The protocol, either https or http.
Throws
Error in case a unsupported protocol is given in the destination URL like rfc://example.com.
function getQueryParametersForFilter
getQueryParametersForFilter: <EntityT extends Entity>( filter: Filterable<EntityT>, entityConstructor: Constructable<EntityT>) => Partial<{ filter: string }>;
Parameter filter
The filter to transform to a query parameter
Parameter entityConstructor
Constructor type of the entity to filter on
Returns
An object containing the query parameter or an empty object
Deprecated
Since v1.21.0. Use [[ODataUri.getFilter]] instead. Get an object containing the given filter as query parameter, or an empty object if none was given.
function getQueryParametersForOrderBy
getQueryParametersForOrderBy: <EntityT extends Entity>( orderBy: Orderable<EntityT>[]) => Partial<{ orderby: string }>;
Parameter orderBy
A list of orderables to get the query parameters for
Returns
An object containing the query parameter or an empty object
Deprecated
Since v1.21.0. Use [[ODataUri.getOrderBy]] instead. Get an object containing the given order bys as query parameter, or an empty object if none was given.
function getQueryParametersForSelection
getQueryParametersForSelection: <EntityT extends Entity>( selects?: Selectable<EntityT>[]) => Partial<{ select: string; expand: string }>;
Parameter selects
The list of selectables to be transformed to query parameters
Returns
An object containing the query parameters or an empty object
Deprecated
Since v1.21.0. Use [[ODataUri.getSelect]] and [[ODataUri.getExpand]] instead.
Get an object containing the given Selectables as query parameter, or an empty object if none were given. This retrieves where in addition to the selection (
select
) there is also an expansion (expand
) needed.
function getResourcePathForKeys
getResourcePathForKeys: <EntityT extends EntityBase>( keys: Record<string, FieldType> | undefined, entityConstructor: Constructable<EntityT>) => string;
Parameter keys
Key-value pairs where the key is the name of a key property of the given entity and the value is the respective value
Parameter entityConstructor
Constructor type of the entity to get the resource path for
Parameter uriConverter
OData version specific converter for strings in URIs
Returns
The path to the resource
Deprecated
Since v1.21.0. Use [[ODataUri.getResourcePathForKeys]] instead. Get the resource path of an entity specified by key-value pairs.
function getResponseBody
getResponseBody: (response: string) => string;
Get the response body from the string representation of a response.
Parameter response
String representation of a response.
Returns
The response body as a one line string.
function getSelect
getSelect: <EntityT extends Entity>( selects?: Selectable<EntityT>[]) => Partial<{ select: string }>;
Get an object containing the given Selectables as query parameter, or an empty object if none were given. This retrieves where in addition to the selection (
select
) there is also an expansion (expand
) needed.Parameter selects
The list of selectables to be transformed to query parameters
Returns
An object containing the query parameters or an empty object
function getSelectV2
getSelectV2: <EntityT extends Entity>( selects?: Selectable<EntityT>[]) => Partial<{ select: string }>;
Get an object containing the given Selectables as query parameter, or an empty object if none were given. This retrieves where in addition to the selection (
select
) there is also an expansion (expand
) needed.Parameter selects
The list of selectables to be transformed to query parameters
Returns
An object containing the query parameters or an empty object
function getSelectV4
getSelectV4: <EntityT extends Entity>( selects?: Selectable<EntityT>[]) => Partial<{ select: string }>;
Get an object containing the given Selectables as query parameter, or an empty object if none were given. In OData v4 selected properties are not automatically expanded anymore and a manual expand needs to be performed.
Parameter selects
The list of selectables to be transformed to query parameters
Returns
An object containing the query parameters or an empty object
function getService
getService: (service: string) => Service | undefined;
Returns the first found instance for the given service type.
Parameter service
The service type.
Returns
The first found service.
function getServiceCredentialsList
getServiceCredentialsList: (service: string) => any[];
Credentials list getter for a given service.
Parameter service
Service name
Returns
Fetched credentials objects of existing service in 'VCAP_SERVICES'.
function getServiceList
getServiceList: (service: string) => Service[];
Services getter for a given service.
Parameter service
Service name.
Returns
List of service bindings of the given type. Returns an empty array if no service binding exists for the given type.
function getSingleResult
getSingleResult: (data: any) => Record<string, any>;
Extract the single entry data from the response. If the data does not contain a single object an empty object is returned.
Parameter data
Response of the OData v4 service.
Returns
A single object extracted from the response.
function getUrlProtocol
getUrlProtocol: (destination: Destination) => Protocol | undefined;
Parameter destination
URL of this destination is parsed
Returns
The protocol either
undefined
if no://
is found or anything before the delimiter.Deprecated
Since v1.5.1. use getProtocolOrDefault instead Takes the destination URL and return everything before the
://
.
function getVcapService
getVcapService: () => Record<string, any> | null;
'VCAP_SERVICES' Getter from environment variables. This function returns the VCAP_SERVICES as object or
null
, if it is not defined (i.e. no services are bound to the application).Returns
'VCAP_SERVICES' found in environment variables or
null
, if not defined. The key denotes the name ov the service and the value is the definition.
function getXsuaaServiceCredentials
getXsuaaServiceCredentials: ( token?: JwtPayload | string) => XsuaaServiceCredentials;
Takes a decoded JWT and uses the client_id and audience claims to determine the XSUAA service instance that issued the JWT. Returns the credentials if a match is found, otherwise throws an error. If no decoded JWT is specified, then returns the first existing XSUAA credential service plan "application".
Parameter token
Either an encoded or decoded JWT.
Returns
The credentials for a match, otherwise
null
.
function hasSubsequence
hasSubsequence: < EntityT extends Entity, ParamT extends unknown, ReturnT extends unknown>( subsequence: | ParamT[] | Field<EntityT, boolean, boolean> | CollectionFilterFunction<EntityT, ReturnT>, sequence: | ParamT[] | Field<EntityT, boolean, boolean> | CollectionFilterFunction<EntityT, ReturnT>) => BooleanFilterFunction<EntityT>;
Build a filter function to test whether a set is a subsequence of the other, i. e. whether the second parameter can be transformed into the first by removing items. Evaluates to boolean.
Parameter subsequence
The subsequence to test for. This can either be an array, a reference to a field or another filter function.
Parameter sequence
The sequence to test. This can either be an array, a reference to a field or another filter function.
Returns
The newly created filter function
function hasSubset
hasSubset: < EntityT extends Entity, ParamT extends unknown, ReturnT extends unknown>( subset: | ParamT[] | CollectionField<EntityT, any, boolean, boolean> | CollectionFilterFunction<EntityT, ReturnT>, set: | ParamT[] | CollectionField<EntityT, any, boolean, boolean> | CollectionFilterFunction<EntityT, ReturnT>) => BooleanFilterFunction<EntityT>;
Build a filter function to test whether a set is a subset of the other, i. e. whether the second parameter can be transformed into the first by reordering and / or removing items. Evaluates to boolean.
Parameter subset
The subset to test for. This can either be an array, a reference to a field or another filter function.
Parameter set
The set to test. This can either be an array, a reference to a field or another filter function.
Returns
The newly created filter function
function headerForClientCredentials
headerForClientCredentials: (clientCredentials: ClientCredentials) => string;
function hour
hour: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the hour of a date. Evaluates to int.
Parameter date
The date to get the hour for. This can either be a date (Moment) or a reference to a field.
Returns
The newly created filter function
function indexOf
indexOf: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, substr: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => NumberFilterFunction<EntityT>;
Build a filter function to get the start index of a substring. Evaluates to int.
Parameter str
The string to get the index from. This can either be a string, a reference to a field or another filter function.
Parameter substr
The substring to get the index for. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function isBooleanFilterFunction
isBooleanFilterFunction: <EntityT extends Entity>( filterable: Filterable<EntityT>) => filterable is BooleanFilterFunction<EntityT>;
function isCollectionResult
isCollectionResult: (data: any) => boolean;
Checks if the data contains a collection result.
Parameter data
Response of the OData v4 service
Returns
true
, if the data is a collection result
function isComplexTypeNameSpace
isComplexTypeNameSpace: (val: any) => val is ComplexTypeNamespace<any>;
function isDestination
isDestination: (destination: any) => destination is Destination;
function isDestinationConfiguration
isDestinationConfiguration: ( destination: any) => destination is DestinationConfiguration;
function isDestinationJson
isDestinationJson: (destination: any) => destination is DestinationJson;
function isDestinationNameAndJwt
isDestinationNameAndJwt: ( destination: any) => destination is DestinationNameAndJwt;
function isEdmType
isEdmType: ( val: any) => val is EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
Check whether a value is an EdmType. This will yield positive results for every string starting with
Edm.
.Parameter val
Value to test.
Returns
Whether the given value is of type [[EdmTypeShared]]
function isExistentProperty
isExistentProperty: <EntityT extends Entity, LinkedEntityT extends Entity>( json: any, link: Link<EntityT, LinkedEntityT>) => boolean;
function isExpandedProperty
isExpandedProperty: <EntityT extends Entity, LinkedEntityT extends Entity>( json: any, link: Link<EntityT, LinkedEntityT>) => boolean;
function isFilter
isFilter: <T extends Entity, FieldT extends unknown>( filterable: Filterable<T>) => filterable is Filter<T, FieldT>;
function isFilterLambdaExpression
isFilterLambdaExpression: <EntityT extends Entity>( filterable: Filterable<EntityT>) => filterable is FilterLambdaExpression<EntityT>;
hidden
function isFilterLink
isFilterLink: <EntityT extends Entity, LinkedT extends Entity>( filterable: Filterable<EntityT>) => filterable is FilterLink<EntityT, LinkedT>;
function isFilterList
isFilterList: <T extends Entity>( filterable: Filterable<T>) => filterable is FilterList<T>;
function isHttpSuccessCode
isHttpSuccessCode: (httpCode: number) => boolean;
function isIdenticalTenant
isIdenticalTenant: ( userTokenPayload: JwtPayload, providerTokenPayload: JwtPayload) => boolean;
Compare two decoded JWTs based on their
tenantId
s.Parameter userTokenPayload
User JWT payload.
Parameter providerTokenPayload
Provider JWT payload.
Returns
Whether the tenant is identical.
function isNavigationProperty
isNavigationProperty: (key: string, entityConstructor: any) => boolean;
Checks if the property with name key of the entity is a navigation property.
Parameter key
Name of the property.
Parameter entityConstructor
Constructor of the entity.
Returns
A boolean denoting whether an entity is a navigation property or not.
function isOf
isOf: { <EntityT extends Entity>(type: string): BooleanFilterFunction<EntityT>; <EntityT extends Entity>( expression: Field<EntityT, boolean, boolean>, type: string ): BooleanFilterFunction<EntityT>;};
Build a filter function to test whether a selection is of a given type. Evaluates to boolean.
Parameter type
The type to test for, e. g.
API_BUSINESS_PARTNER.A_BusinessPartner
.Returns
The newly created filter function
Build a filter function to test whether a field is of a given type. Evaluates to boolean.
Parameter expression
A reference to a field to test for type.
Parameter type
The type to test for, e. g.
API_BUSINESS_PARTNER.A_BusinessPartner
.Returns
The newly created filter function
function isOrderableEdmType
isOrderableEdmType: (edmType: EdmTypeShared<'any'>) => boolean;
Convenience function to check whether a given EDM type is of type [[OrderableEdmType]].
Parameter edmType
Literal EDM type string to check.
Returns
Whether the given
edmType
is of type [[OrderableEdmType]].
function isSelectedProperty
isSelectedProperty: <EntityT extends Entity>( json: any, field: Field<EntityT> | Link<EntityT>) => boolean;
function issuerUrl
issuerUrl: (decodedToken: JwtPayload) => string | undefined;
Get the issuer URL of a decoded JWT.
Parameter decodedToken
Token to read the issuer URL from.
Returns
The issuer URL if available.
function isUnaryFilter
isUnaryFilter: <T extends Entity>( filterable: Filterable<T>) => filterable is UnaryFilter<T>;
function isUserToken
isUserToken: (token: JwtPair | undefined) => token is JwtPair;
The user JWT can be a full JWT containing user information but also a reduced one setting only the iss value This method divides the two cases.
Parameter token
Token to be investigated
Returns
Boolean value with true if the input is a UserJwtPair
function isWithETag
isWithETag: (config: any) => config is WithETag;
function jwtBearerToken
jwtBearerToken: ( userJwt: string, service: string | Service, options?: ResilienceOptions) => Promise<string>;
Returns a jwt bearer token that can be used to call the given service. The token is fetched via a JWT bearer token grant using the user token + client credentials.
Throws an error if there is no instance of the given service type or the XSUAA service, or if the request to the XSUAA service fails.
Parameter userJwt
The JWT of the user for whom the access token should be fetched
Parameter service
The type of the service or an instance of [[Service]].
Parameter options
Options to influence resilience behavior (see [[ResilienceOptions]]). By default, usage of a circuit breaker is enabled.
Returns
A jwt bearer token.
function jwtBearerTokenGrant
jwtBearerTokenGrant: ( tokenServiceUrlOrXsuaaServiceCredentials: string | XsuaaServiceCredentials, clientCredentials: ClientCredentials, userJwt: string, options?: ResilienceOptions) => Promise<ClientCredentialsResponse>;
Parameter tokenServiceUrlOrXsuaaServiceCredentials
The URL of the token service or the credentials of a XSUAA service instance.
Parameter clientCredentials
The credentials (client_id, client_secret) of the target XSUAA service instance.
Parameter userJwt
The JWT of the user on whose behalf the request is executed.
Parameter options
Options to use by retrieving access token.
Returns
A promise resolving to the response of the XSUAA service.
Deprecated
Since v1.49.0 Use
@sap/xssec
lib instead. Executes a JWT bearer token grant request against the given URI.
function length
length: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => NumberFilterFunction<EntityT>;
Build a filter function to get the length of a string. Evaluates to int.
Parameter str
The string to compute the length for. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function matchesPattern
matchesPattern: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, regex: string) => BooleanFilterFunction<EntityT>;
Build a filter function to test whether a string matches a pattern. Evaluates to boolean.
Parameter str
The string to get the index from. This can either be a string, a reference to a field or another filter function.
Parameter regex
The pattern to test against. This should be a regular expression as a string.
Returns
The newly created filter function
function maxDateTime
maxDateTime: <EntityT extends Entity>() => NumberFilterFunction<EntityT>;
Build a filter function to get the latest possible point in time. Evaluates to DateTimeOffset.
Returns
The newly created filter function
function mergeHeaders
mergeHeaders: ( headers?: Record<string, any>, customHeaders?: Record<string, any>) => Record<string, any>;
Parameter headers
A base header object that contains the headers that will be compared with
customHeaders
.Parameter customHeaders
A header object to be compared with headers. Only headers present in
headers
will be compared.Returns
- An object containing all keys from both the header objects, where headers present in the
customHeaders
are replaced. Note that the case (upper / lower) used bycustomHeaders
will be used.Deprecated
Since v1.32.0. Use [[mergeIgnoreCase]] instead.
Create a header object by merging two header objects, where the custom headers take precedence.
function minDateTime
minDateTime: <EntityT extends Entity>() => NumberFilterFunction<EntityT>;
Build a filter function to get the earliest possible point in time. Evaluates to DateTimeOffset.
Returns
The newly created filter function
function minute
minute: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the minute of a date. Evaluates to int.
Parameter date
The date to get the minute for. This can either be a date (Moment) or a reference to a field.
Returns
The newly created filter function
function momentToEdmDateTime
momentToEdmDateTime: (momentInstance: moment.Moment) => string;
This function can be used for both Edm.DateTime and and Edm.DateTimeOffset.
function month
month: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the month of a date. Evaluates to int.
Parameter date
The date to get the month for. This can either be a date (Moment) or a reference to a field.
Returns
The newly created filter function
function noDestinationErrorMessage
noDestinationErrorMessage: ( destination: Destination | DestinationNameAndJwt) => string;
function nonEnumerable
nonEnumerable: (target: any, propertyKey: string) => void;
function not
not: <EntityT extends Entity>( filter: Filterable<EntityT>) => UnaryFilter<EntityT>;
Negate a filter.
Parameter filter
The filter to negate.
Returns
The negated filter.
function now
now: <EntityT extends Entity>() => NumberFilterFunction<EntityT>;
Build a filter function to get the current point in time. Evaluates to DateTimeOffset.
Returns
The newly created filter function
function or
or: { <EntityT extends Entity>( expressions: Filterable<EntityT>[] ): FilterList<EntityT>; <EntityT extends Entity>( ...expressions: Filterable<EntityT, any>[] ): FilterList<EntityT>;};
Combine [[Filterable]]s with logical
or
to create a [[FilterList]].Example:
Entity.requestBuilder().getAll().filter(or(filterExp1, filterExp2));Parameter expressions
Filterables to be combined with logical
or
Returns
The newly created FilterList
function parseBatchResponse
parseBatchResponse: ( batchResponse: HttpResponse) => (ResponseData | ResponseData[])[];
Parse the complete batch HTTP response.
Parameter batchResponse
HTTP response of a batch request.
Returns
An array of parsed sub responses of the batch response.
function parseDestination
parseDestination: ( destinationJson: DestinationJson | DestinationConfiguration) => Destination;
Takes a JSON object returned by any of the calls to the destination service and returns an SDK compatible destination object. This function only accepts destination configurations of type 'HTTP' and will error if no 'URL' is given.
Parameter destinationJson
A JSON object returned by the destination service.
Returns
An SDK compatible destination object.
function parseEntityNameFromMetadataUri
parseEntityNameFromMetadataUri: (uri: string) => string;
Parse the entity name from the metadata uri. This should be the
__metadata
property of a single entity in the response.Parameter uri
The URI to parse the entity name from
Returns
The entity name.
function parseHttpCode
parseHttpCode: (response: string) => number;
Parse the HTTP code of response.
Parameter response
String representation of the response.
Returns
The HTTP code.
function parseProxyEnv
parseProxyEnv: (proxyEnvValue: string) => ProxyConfiguration | undefined;
Parses the environment variable for the web proxy and extracts the values considering defaults like http for the protocol and 80 or 443 for the port. The general pattern to be parsed is
protocol://user:password@host:port
, where everything besides the host is optional. Special characters in the user and password need to be percent encoded.Parameter proxyEnvValue
Environment variable which is parsed.
Returns
Configuration with default values or
undefined
if the parsing failed.
function parseResponseData
parseResponseData: (response: string) => ResponseData;
Parse the body and http code of a batch sub response.
Parameter response
A batch sub response.
Returns
The parsed response.s
function prependDollar
prependDollar: (param: string) => string;
function proxyAgent
proxyAgent: ( destination: Destination, options?: AgentOptions) => HttpAgentConfig | HttpsAgentConfig;
Builds the http(s)-agent config. Note that the proxy agent type like http or https is determined by the destination RUL protocol. The protocol from the proxy is unrelated to this and in most cases http. All additional options are forwarded to tls.connect and net.connect see https://github.com/TooTallNate/node-https-proxy-agent#new-httpsproxyagentobject-options
Parameter destination
Destination containing the proxy configurations
Parameter options
Additional options for the agent
Returns
The http(s)-agent containing the proxy configuration
function proxyHostAndPort
proxyHostAndPort: () => HostAndPort;
function proxyStrategy
proxyStrategy: (destination: Destination) => ProxyStrategy;
Determines the proxy strategy. If noProxy is set the ProxyConfiguration in the destination is omitted. For onPremProxy or internetProxy the connectivity service or environment variables are checked to fill the [[ProxyConfiguration]].
Parameter destination
from which the proxy strategy is derived.
Returns
ProxyStrategy possible values are noProxy, internetProxy or onPremProxy.
function readPropertyWithWarn
readPropertyWithWarn: (jwtPayload: JwtPayload, property: string) => any;
function refreshTokenGrant
refreshTokenGrant: ( tokenServiceUrlOrXsuaaServiceCredentials: string | XsuaaServiceCredentials, clientCredentials: ClientCredentials, refreshToken: string, options?: ResilienceOptions) => Promise<UserTokenResponse>;
Parameter tokenServiceUrlOrXsuaaServiceCredentials
The URL of the token service or the credentials of a XSUAA service instance.
Parameter clientCredentials
The credentials (client_id, client_secret) of the target XSUAA service instance.
Parameter refreshToken
The refresh token that should be used to generate a new access token.
Parameter options
Options to use by retrieving access token.
Returns
A promise resolving to the response of the XSUAA service.
Deprecated
Since v1.41.0 Use [[jwtBearerTokenGrant]] instead. Executes a refresh token grant request against the given URI. If the first parameter is an instance of [[XsuaaServiceCredentials]], the response's access_token will be verified. If the first parameter is an URI, the response will not be verified.
function removePropertyOnCondition
removePropertyOnCondition: ( condition: (objectEntry: [string, any]) => boolean, body: Record<string, any>) => Record<string, any>;
function replaceDuplicateKeys
replaceDuplicateKeys: ( headers?: Record<string, any>, customHeaders?: Record<string, any>) => Record<string, any>;
Parameter headers
A base header object that contains the headers that will be compared with
customHeaders
.Parameter customHeaders
A header object to be compared with headers. Only headers present in
headers
will be compared.Returns
- An object containing all keys from the original
headers
object, where headers present in thecustomHeaders
are replaced. Note that the case (upper / lower) used bycustomHeaders
will be used.Deprecated
Since v1.32.0. Use [[mergeLeftIgnoreCase]] instead.
Create a header object by replacing headers that are set as custom headers.
function resolveService
resolveService: (service: string | Service) => Service;
Takes a string that represents the service type and resolves it by calling [[getService]]. If the parameter is already an instance of [[Service]], it is returned directly.
Throws an error when no service can be found for the given type.
Parameter service
A string representing the service type or a [[Service]] instance.
Returns
A [[Service]] instance.
function retrieveJwt
retrieveJwt: (req: IncomingMessage) => string | undefined;
Retrieve JWT from a request that is based on the node
IncomingMessage
. Fails if no authorization header is given or has the wrong format. Expected format is 'Bearer '.Parameter req
Request to retrieve the JWT from
Returns
JWT found in header
function round
round: <EntityT extends Entity>( num: number | Field<EntityT, boolean, boolean> | NumberFilterFunction<EntityT>, returnType?: 'double' | 'decimal') => NumberFilterFunction<EntityT>;
Build a filter function to round a number. Evaluates to double or decimal, defaults to double.
Parameter num
The number to round. This can either be a number, a reference to a field or another filter function.
Parameter returnType
The return type to use.
Returns
The newly created filter function
function sanitizeDestination
sanitizeDestination: (destination: Record<string, any>) => Destination;
Takes an existing or a parsed destination and returns an SDK compatible destination object.
Parameter destination
An object that adheres to the [[Destination]] interface.
Returns
An SDK compatible destination object.
function searchEnvVariablesForDestination
searchEnvVariablesForDestination: ( name: string, options?: DestinationOptions) => Destination | undefined;
function searchServiceBindingForDestination
searchServiceBindingForDestination: (name: string) => Destination | undefined;
function second
second: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the second of a date. Evaluates to int.
Parameter date
The date to get the second for. This can either be a date (moment.Moment) or a reference to a field.
Returns
The newly created filter function
function secondsToTime
secondsToTime: (n: number) => Time;
Converts from seconds to time as [[Time]].
Parameter n
Number of seconds to convert (should be positive).
Returns
Time The converted time from the given number of seconds
function serializeBatchRequest
serializeBatchRequest: ( request: BatchRequestBuilder, options?: BatchRequestSerializationOptions) => string;
Serialize a batch request to string. This is used for the batch request payload when executing the request.
Parameter request
Batch request to serialize.
Parameter options
Request serialization options.
Returns
String representation of the batch request.
function serializeChangeSet
serializeChangeSet: ( changeSet: BatchChangeSet, options?: BatchRequestSerializationOptions) => string | undefined;
Serialize change set to string.
Parameter changeSet
Change set containing a collection of write operations.
Parameter options
Request serialization options.
Returns
The serialized string representation of a change set.
function serializeComplexType
serializeComplexType: (fieldValue: any, complexTypeNameSpace: any) => any;
function serializeComplexTypeV2
serializeComplexTypeV2: ( entity: any, entityConstructor: import('..').Constructable<any, unknown>, diff?: boolean | undefined) => Record<string, any>;
function serializeComplexTypeV4
serializeComplexTypeV4: (fieldValue: any, complexTypeNameSpace: any) => any;
function serializeEntity
serializeEntity: ( entity: any, entityConstructor: import('..').Constructable<any, unknown>, diff?: boolean | undefined) => Record<string, any>;
function serializeEntityNonCustomFields
serializeEntityNonCustomFields: ( entity: any, entityConstructor: import('..').Constructable<any, unknown>) => Record<string, any>;
function serializeEntityNonCustomFieldsV2
serializeEntityNonCustomFieldsV2: ( entity: any, entityConstructor: import('..').Constructable<any, unknown>) => Record<string, any>;
function serializeEntityNonCustomFieldsV4
serializeEntityNonCustomFieldsV4: ( entity: any, entityConstructor: import('..').Constructable<any, unknown>) => Record<string, any>;
function serializeEntityV2
serializeEntityV2: ( entity: any, entityConstructor: import('..').Constructable<any, unknown>, diff?: boolean | undefined) => Record<string, any>;
function serializeRequest
serializeRequest: ( request: MethodRequestBuilder, options?: BatchRequestSerializationOptions) => string;
Serialize a multipart request to string.
Parameter request
One of [[GetAllRequestBuilder | getAll]], [[GetByKeyRequestBuilder | getByKey]], [[CreateRequestBuilder | create]], [[UpdateRequestBuilder | update]] or [[DeleteRequestBuilder | delete]] request builder.
Parameter options
Request serialization options.
Returns
The serialized string representation of a multipart request, including the multipart headers.
function serviceToken
serviceToken: ( service: string | Service, options?: CachingOptions & ResilienceOptions & { userJwt?: string | JwtPayload; xsuaaCredentials?: XsuaaServiceCredentials; }) => Promise<string>;
Returns an access token that can be used to call the given service. The token is fetched via a client credentials grant with the credentials of the given service. If multiple instances of the provided service exist, the first instance will be selected. When a JWT is passed, the tenant of the JWT will be used when performing the grant. When no JWT is passed, the grant will be performed using the provider tenant.
Throws an error if there is no instance of the given service type or the XSUAA service, or if the request to the XSUAA service fails.
Parameter service
The type of the service or an instance of [[Service]].
Parameter options
Options to influence caching and resilience behavior (see [[CachingOptions]] and [[ResilienceOptions]], respectively) and a JWT. By default, caching and usage of a circuit breaker are enabled.
Returns
Access token.
function shouldHandleCsrfToken
shouldHandleCsrfToken: ( requestConfig: HttpRequestConfig, options: HttpRequestOptions) => boolean;
function splitBatchResponse
splitBatchResponse: (response: HttpResponse) => string[];
Split a batch response into an array of sub responses for the retrieve requests and changesets.
Parameter response
The raw HTTP response.
Returns
A list of sub responses represented as strings.
function splitChangeSetResponse
splitChangeSetResponse: (changeSetResponse: string) => string[];
Split a changeset (sub) response into an array of sub responses.
Parameter changeSetResponse
The string representation of a change set response.
Returns
A list of sub responses represented as strings.
function splitResponse
splitResponse: (response: string, boundary: string) => string[];
Split a string representation of a response into sub responses given its boundary.
Parameter response
The string representation of the response to split.
Parameter boundary
The boundary to split by.
Returns
A list of sub responses represented as strings.
function startsWith
startsWith: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, prefix: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => BooleanFilterFunction<EntityT>;
Build a filter function to test whether a string starts with another. Evaluates to boolean.
Parameter str
The string to test. This can either be a string, a reference to a field or another filter function.
Parameter prefix
The prefix to test for. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function subscriberFirst
subscriberFirst: ( allDestinations: AllDestinations, destinationName: string) => Destination | null;
Prioritizes the selection of subscriber destinations.
Parameter allDestinations
Retrieved destinations.
Parameter destinationName
Name of the destination to retrieve.
Returns
the destination to retrieve, returns
null
if no matched destination is found.
function substring
substring: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, pos: number | Field<EntityT, boolean, boolean> | NumberFilterFunction<EntityT>, len?: number | Field<EntityT, boolean, boolean> | NumberFilterFunction<EntityT>) => StringFilterFunction<EntityT>;
Build a filter function to get a substring starting from a designated position. Evaluates to string.
Parameter str
The string to get a substring from. This can either be a string, a reference to a field or another filter function.
Parameter pos
The starting position of the substring. This can be either a number, a reference to a field or another filter function.
Parameter len
The length of the substring. This can be either a number, a reference to a field or another filter function.
Returns
The newly created filter function
function substringOf
substringOf: <EntityT extends Entity>( substr: | string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>, str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => BooleanFilterFunction<EntityT>;
Build a filter function to test whether a string is a substring of the other. Evaluates to boolean.
Parameter substr
The substring to test for. This can either be a string, a reference to a field or another filter function.
Parameter str
The string to test. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function tenantFromJwt
tenantFromJwt: (jwtPayload: JwtPayload) => Tenant;
Creates a tenant object from the JWT payload. Throws an error if the property
id
is not present in the payload.Parameter jwtPayload
Token payload to get the tenant information from.
Returns
Representation of the tenant.
function throwErrorWhenReturnTypeIsUnionType
throwErrorWhenReturnTypeIsUnionType: ( data: any, functionActionName: string) => never;
function timeToSeconds
timeToSeconds: (time: Time) => number;
Converts the given time to seconds in positive numerical format.
Parameter time
Time to convert.
Returns
number Time in seconds.
function toBatchChangeSet
toBatchChangeSet: < T extends | CreateRequestBuilder<Entity> | UpdateRequestBuilder<Entity> | DeleteRequestBuilder<Entity>>( changeSet: BatchChangeSet<T>) => string | undefined;
Parameter changeSet
Change set containing a collection of write operations.
Returns
The serialized string representation of a change set.
Deprecated
Since v1.30.0. Use [[serializeChangeSet]] instead. Serialize change set to string.
function toBatchChangeSetV2
toBatchChangeSetV2: < T extends | CreateRequestBuilder<Entity> | UpdateRequestBuilder<Entity> | DeleteRequestBuilder<Entity>>( changeSet: BatchChangeSet<T>) => string | undefined;
Parameter changeSet
Change set containing a collection of write operations.
Returns
The serialized string representation of a change set.
Deprecated
Since v1.30.0. Use [[serializeChangeSet]] instead. Serialize change set to string.
function toBatchChangeSetV4
toBatchChangeSetV4: < T extends | CreateRequestBuilder<Entity> | UpdateRequestBuilder<Entity> | DeleteRequestBuilder<Entity>>( changeSet: BatchChangeSet<T>) => string | undefined;
Parameter changeSet
Change set containing a collection of write operations.
Returns
The serialized string representation of a change set.
Deprecated
Since v1.30.0. Use [[serializeChangeSet]] instead. Serialize change set to string.
function toBatchRetrieveBody
toBatchRetrieveBody: ( request: GetAllRequestBuilder<Entity> | GetByKeyRequestBuilder<Entity>) => string;
Parameter request
The request builder of the retrieve request.
Returns
The request body.
Deprecated
Since v1.30.0. Use [[serializeRequest]] instead. Build a string as the request body of the retrieve request. Below is an example of the generated body, where the two empty line are mandatory to make the request valid. *** example starts *** Content-Type: application/http Content-Transfer-Encoding: binary
GET /SomeUrl/API_BUSINESS_PARTNER/A_BusinessPartnerBank?$format=json&$top=1 HTTP/1.1
*** example ends ***
function toBatchRetrieveBodyV2
toBatchRetrieveBodyV2: ( request: GetAllRequestBuilder<Entity> | GetByKeyRequestBuilder<Entity>) => string;
Parameter request
The request builder of the retrieve request.
Returns
The request body.
Deprecated
Since v1.30.0. Use [[serializeRequest]] instead. Build a string as the request body of the retrieve request. Below is an example of the generated body, where the two empty line are mandatory to make the request valid. *** example starts *** Content-Type: application/http Content-Transfer-Encoding: binary
GET /SomeUrl/API_BUSINESS_PARTNER/A_BusinessPartnerBank?$format=json&$top=1 HTTP/1.1
*** example ends ***
function toBatchRetrieveBodyV4
toBatchRetrieveBodyV4: ( request: GetAllRequestBuilder<Entity> | GetByKeyRequestBuilder<Entity>) => string;
Parameter request
The request builder of the retrieve request.
Returns
The request body.
Deprecated
Since v1.30.0. Use [[serializeRequest]] instead. Build a string as the request body of the retrieve request. Below is an example of the generated body, where the two empty line are mandatory to make the request valid. *** example starts *** Content-Type: application/http Content-Transfer-Encoding: binary
GET /SomeUrl/API_BUSINESS_PARTNER/A_BusinessPartnerBank?$format=json&$top=1 HTTP/1.1
*** example ends ***
function toDestinationNameUrl
toDestinationNameUrl: ( destination: Destination | DestinationNameAndJwt) => string;
function toFilterableList
toFilterableList: <EntityT extends Entity, LinkedEntityT extends Entity>( filters: Filterable<EntityT, LinkedEntityT>[]) => Filterable<EntityT>[];
function toGuid
toGuid: (value: string) => string;
function toLower
toLower: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => StringFilterFunction<EntityT>;
Build a filter function to transform a string to lower case. Evaluates to string.
Parameter str
The string to transform. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function toPascalCase
toPascalCase: (str: string) => string;
Parameter str
The string to be transformed.
Returns
The transformed string.
Deprecated
Since v1.32.2. Use functions from
@sap-cloud-sdk/util
instead. Converts a string to PascalCase format e.g. "MyNameInPascalCase".
function toPropertyFormat
toPropertyFormat: (str: string) => string;
Parameter str
The string to be transformed.
Returns
The transformed string.
Deprecated
Since v1.32.2. Use functions from
@sap-cloud-sdk/util
instead. Converts a string to the format used by properties. Use this for serialization.
function toSanitizedHeaderObject
toSanitizedHeaderObject: (key: string, value: any) => Record<string, any>;
Parameter key
Name of the header.
Parameter value
Value of the header.
Returns
- An object containing the given key and value of an empty object.
Deprecated
Since v1.32.0. Use [[toSanitizedObject]] instead. Create a header object based on the given key and value if neither key nor value are nullish.
function toStaticPropertyFormat
toStaticPropertyFormat: (str: string) => string;
Parameter str
The string to be transformed.
Returns
The transformed string.
Deprecated
Since v1.32.2. Use functions from
@sap-cloud-sdk/util
instead. Converts a string to the format used by static properties. Use this for serialization.
function totalOffsetMinutes
totalOffsetMinutes: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the signed number of minutes in the time zone offset. Evaluates to int.
Parameter date
The date to get the offset minutes for. This can either be a date (Moment) or a reference to a field.
Returns
The newly created filter function
function toTitleFormat
toTitleFormat: (str: string) => string;
Parameter str
The string to be transformed.
Returns
The transformed string.
Deprecated
Since v1.32.2. Use functions from
@sap-cloud-sdk/util
instead. Converts a string to a human readable format, e.g. it transformsto_BusinessPartner
toTo Business Partner
. Use this for serialization.
function toTypeNameFormat
toTypeNameFormat: (str: string) => string;
Parameter str
The string to be transformed.
Returns
The transformed string.
Deprecated
Since v1.32.2. Use functions from
@sap-cloud-sdk/util
instead. Converts a string to the format used by properties. Use this for serialization.
function toUpper
toUpper: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => StringFilterFunction<EntityT>;
Build a filter function to transform a string to upper case. Evaluates to string.
Parameter str
The string to transform. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function transformReturnValueForComplexType
transformReturnValueForComplexType: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForComplexTypeList
transformReturnValueForComplexTypeList: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT[];
function transformReturnValueForComplexTypeListV2
transformReturnValueForComplexTypeListV2: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT[];
function transformReturnValueForComplexTypeListV4
transformReturnValueForComplexTypeListV4: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT[];
function transformReturnValueForComplexTypeV2
transformReturnValueForComplexTypeV2: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForComplexTypeV4
transformReturnValueForComplexTypeV4: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForEdmType
transformReturnValueForEdmType: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForEdmTypeList
transformReturnValueForEdmTypeList: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT[];
function transformReturnValueForEdmTypeListV2
transformReturnValueForEdmTypeListV2: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT[];
function transformReturnValueForEdmTypeListV4
transformReturnValueForEdmTypeListV4: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT[];
function transformReturnValueForEdmTypeV2
transformReturnValueForEdmTypeV2: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForEdmTypeV4
transformReturnValueForEdmTypeV4: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForEntity
transformReturnValueForEntity: <ReturnT extends Entity>( data: any, entityConstructor: Constructable<ReturnT>) => ReturnT;
function transformReturnValueForEntityList
transformReturnValueForEntityList: <ReturnT extends Entity>( data: any, entityConstructor: Constructable<ReturnT>) => ReturnT[];
function transformReturnValueForEntityListV2
transformReturnValueForEntityListV2: <ReturnT extends Entity>( data: any, entityConstructor: Constructable<ReturnT>) => ReturnT[];
function transformReturnValueForEntityListV4
transformReturnValueForEntityListV4: <ReturnT extends Entity>( data: any, entityConstructor: Constructable<ReturnT>) => ReturnT[];
function transformReturnValueForEntityV2
transformReturnValueForEntityV2: <ReturnT extends Entity>( data: any, entityConstructor: Constructable<ReturnT>) => ReturnT;
function transformReturnValueForEntityV4
transformReturnValueForEntityV4: <ReturnT extends Entity>( data: any, entityConstructor: Constructable<ReturnT>) => ReturnT;
function transformReturnValueForUndefined
transformReturnValueForUndefined: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForUndefinedV2
transformReturnValueForUndefinedV2: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function transformReturnValueForUndefinedV4
transformReturnValueForUndefinedV4: <ReturnT>( data: any, builderFn: (data: any) => ReturnT) => ReturnT;
function trim
trim: <EntityT extends Entity>( str: string | Field<EntityT, boolean, boolean> | StringFilterFunction<EntityT>) => StringFilterFunction<EntityT>;
Build a filter function to trim whitespace from a string. Evaluates to string.
Parameter str
The string to trim whitespace from. This can either be a string, a reference to a field or another filter function.
Returns
The newly created filter function
function tsToEdm
tsToEdm: (value: any, edmType: EdmTypeShared<'v2'>) => any;
function tsToEdmV2
tsToEdmV2: (value: any, edmType: EdmTypeShared<'v2'>) => any;
function tsToEdmV4
tsToEdmV4: (value: any, edmType: EdmTypeShared<'v4'>) => any;
function urlAndAgent
urlAndAgent: ( targetUri: string) => Pick<HttpRequestConfig, 'url' | 'httpAgent' | 'httpsAgent' | 'proxy'>;
Builds part of the request config containing the URL and if needed proxy agents or normal http agents. Considers the
no_proxy
environment variable together with thetargetUri
.Parameter targetUri
Used as baseURL in request config.
Returns
HttpRequestConfig containing baseUrl and http(s) agents.
function useOrFetchDestination
useOrFetchDestination: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<Destination | null>;
Returns the parameter if it is a destination, calls [[getDestination]] otherwise (which will try to fetch the destination from the Cloud Foundry destination service).
Fetching a destination requires: - a binding to exactly one XSUAA service instance with service plan "application" - a binding to a destination service instance
If either of the prerequisites is not met or one of the services returns an error, this function will either throw an error or return a promise that rejects.
Parameter destination
A destination or the necessary parameters to fetch one.
Parameter options
Caching options by fetching destination.
Returns
A promise resolving to the requested destination on success.
function userApprovedServiceToken
userApprovedServiceToken: ( userJwt: string, service: string | Service, options?: ResilienceOptions) => Promise<string>;
Parameter userJwt
The JWT of the user for whom the access token should be fetched.
Parameter service
The type of the service or an instance of [[Service]].
Parameter options
Options to influence resilience behavior (see [[ResilienceOptions]]). By default, usage of a circuit breaker is enabled.
Returns
A user approved access token.
Deprecated
Since v1.41.0 Use [[jwtBearerToken]] instead. Returns a user approved access token that can be used to call the given service on behalf of the given user. The token is fetched via user token + refresh token grant. This can be necessary for scenarios in which a token for a service is required, but the service needs to know about the user on whose behalf the request is performed (for example to let the destination service perform principal propagation with SAP S/4HANA Cloud).
Throws an error if there is no instance of the given service type or the XSUAA service, or if the request to the XSUAA service fails.
function userFromJwt
userFromJwt: (jwtPayload: JwtPayload) => User;
Creates a user object from the decoded JWT. Throws an error if no
id
oruserName
property is present on the JWT payload.Parameter jwtPayload
Token payload to get the user from.
Returns
Representation of the user.
function userTokenGrant
userTokenGrant: ( tokenServiceUrlOrXsuaaServiceCredentials: string | XsuaaServiceCredentials, userJwt: string, clientId: string, options?: ResilienceOptions) => Promise<UserTokenResponse>;
Parameter tokenServiceUrlOrXsuaaServiceCredentials
The URL of the token service or the credentials of a XSUAA service instance.
Parameter userJwt
The JWT of the user on whose behalf the request is executed.
Parameter clientId
The client_id of the target XSUAA service instance.
Parameter options
Options to use by retrieving access token
Returns
A promise resolving to the response of the XSUAA service.
Deprecated
Since v1.41.0 Use [[jwtBearerTokenGrant]] instead. Executes a user token grant request against the given URI.
function verifyJwt
verifyJwt: (token: string, options?: VerifyJwtOptions) => Promise<JwtPayload>;
Verifies the given JWT and returns the decoded payload.
Parameter token
JWT to be verified
Parameter options
Options to control certain aspects of JWT verification behavior.
Returns
A Promise to the decoded and verified JWT.
function verifyJwtWithKey
verifyJwtWithKey: (token: string, key: string) => Promise<JwtPayload>;
Verifies the given JWT with the given key and returns the decoded payload.
Parameter token
JWT to be verified.
Parameter key
Key to use for verification.
Returns
A Promise to the decoded and verified JWT.
function wrapJwtInHeader
wrapJwtInHeader: (token: string) => { headers: { [key: string]: any; Authorization: string };};
Wraps the access token in header's authorization.
Parameter token
Token to attach in request header
Returns
The request header that holds the access token
function year
year: <EntityT extends Entity>( date: moment.Moment | Field<EntityT, boolean, boolean>) => NumberFilterFunction<EntityT>;
Build a filter function to get the year of a date. Evaluates to int.
Parameter date
The date to get the year for. This can either be a date (Moment) or a reference to a field.
Returns
The newly created filter function
Classes
class ActionFunctionImportRequestBuilder
abstract class ActionFunctionImportRequestBuilder< ParametersT, ReturnT> extends MethodRequestBuilder< | ODataFunctionImportRequestConfig<ParametersT> | ODataActionImportRequestConfig<ParametersT>> {}
Create OData request to execute a action or function import.
constructor
protected constructor( responseTransformer: (data: any) => ReturnT, requestConfig: | ODataFunctionImportRequestConfig<ParametersT> | ODataActionImportRequestConfig<ParametersT>);
Base class for function and actions imports
Parameter responseTransformer
Transformation function for the response.
Parameter requestConfig
Request config for a action or function import.
property responseTransformer
readonly responseTransformer: (data: any) => ReturnT;
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<ReturnT>;
Execute request
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the requested return type
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse>;
Execute request and return an [[HttpResponse]].
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]].
class ActionFunctionImportRequestBuilderBase
abstract class ActionFunctionImportRequestBuilder< ParametersT, ReturnT> extends MethodRequestBuilder< | ODataFunctionImportRequestConfig<ParametersT> | ODataActionImportRequestConfig<ParametersT>> {}
Create OData request to execute a action or function import.
constructor
protected constructor( responseTransformer: (data: any) => ReturnT, requestConfig: | ODataFunctionImportRequestConfig<ParametersT> | ODataActionImportRequestConfig<ParametersT>);
Base class for function and actions imports
Parameter responseTransformer
Transformation function for the response.
Parameter requestConfig
Request config for a action or function import.
property responseTransformer
readonly responseTransformer: (data: any) => ReturnT;
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<ReturnT>;
Execute request
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the requested return type
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse>;
Execute request and return an [[HttpResponse]].
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]].
class ActionImportParameter
class FunctionImportParameter<ValueT> {}
Internal representation of function import parameters. It adds metadata to the value.
constructor
constructor( originalName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4, value: {});
Creates an instance of FunctionImportParameter.
Parameter originalName
The original name of the parameter in the OData service.
Parameter edmType
Original EDM type.
Parameter value
Value to be used as parameter.
property edmType
edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
property originalName
originalName: string;
property value
value: {};
class ActionImportRequestBuilder
class ActionImportRequestBuilder< ParametersT, ReturnT> extends ActionFunctionImportRequestBuilderBase<ParametersT, ReturnT> {}
Create an OData request to execute an action import.
constructor
constructor( defaultServicePath: string, actionImportName: string, responseTransformer: (data: any) => ReturnT, parameters: ActionImportParameters<ParametersT>);
Creates an instance of ActionImportRequestBuilder.
Parameter defaultServicePath
Default path for the service the action belongs to
Parameter actionImportName
The name of the action import.
Parameter responseTransformer
Transformation function for the response
Parameter parameters
Parameters to be set in the action
property responseTransformer
readonly responseTransformer: (data: any) => ReturnT;
class AllFields
class AllFields<EntityT extends Entity> {}
constructor
constructor( _fieldName: string, _entityConstructor: Constructable<EntityT, unknown>);
property selectable
readonly selectable: boolean;
class AnyField
class AnyField<EntityT extends Entity> extends AnyFieldBase<EntityT, true> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a selectable property with with an unknown or currently unsupported EDM type like Edm.Geography.
class BatchChangeSet
class BatchChangeSet<RequestT extends MethodRequestBuilder = any> {}
Representation of a batch change set, which holds a collection of write operations.
constructor
constructor(requests: RequestT[], boundary?: string);
Create an instance of BatchChangeSet.
Parameter requests
Requests to combine to one change set.
Parameter boundary
Request boundary for separation of sub requests. Defaults to an auto generated value.
property boundary
readonly boundary: string;
property requests
readonly requests: RequestT[];
class BatchRequestBuilder
class BatchRequestBuilder extends MethodRequestBuilder<ODataBatchRequestConfig> {}
Create a batch request to invoke multiple requests as a batch. The batch request builder accepts retrieve requests, i. e. [[GetAllRequestBuilder | getAll]] and [[GetByKeyRequestBuilder | getByKey]] requests and change sets, which in turn can contain [[CreateRequestBuilder | create]], [[UpdateRequestBuilder | update]] or [[DeleteRequestBuilder | delete]] requests. The retrieve and change sets will be executed in order, while the order within a change set can vary.
constructor
constructor( defaultServicePath: string, requests: (BatchChangeSet<any> | MethodRequestBuilder<any>)[], entityToConstructorMap: Record<string, Constructable<Entity, unknown>>);
Creates an instance of ODataBatchRequestBuilder.
Parameter defaultServicePath
Service path
Parameter requests
An array of retrieve requests or change sets
Parameter entityToConstructorMap
A map that holds the entity type to constructor mapping
property defaultServicePath
readonly defaultServicePath: string;
property entityToConstructorMap
readonly entityToConstructorMap: Record<string, Constructable<Entity, unknown>>;
property requests
readonly requests: (BatchChangeSet<any> | MethodRequestBuilder<any>)[];
method build
build: { (): ODataRequest<ODataBatchRequestConfig>; ( destination: Destination | DestinationNameAndJwt, options?: DestinationRetrievalOptions ): Promise<ODataRequest<ODataBatchRequestConfig>>;};
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse>;
Execute request and return an [[HttpResponse]].
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]].
method withSubRequestPathType
withSubRequestPathType: (subRequestPathType: BatchSubRequestPathType) => this;
class BatchResponseDeserializer
class BatchResponseDeserializer {}
Represents the state needed to deserialize a parsed batch response using OData version specific deserialization data access.
constructor
constructor( entityToConstructorMap: Record<string, Constructable<Entity, unknown>>, responseDataAccessor: ResponseDataAccessor, deserializer: EntityDeserializer<any>);
Creates an instance of BatchResponseTransformer.
Parameter entityToConstructorMap
A map that holds the entity type to constructor mapping.
Parameter responseDataAccessor
Response data access module.
Parameter deserializer
Entity deserializer.
method deserializeBatchResponse
deserializeBatchResponse: ( parsedBatchResponse: (ResponseData[] | ResponseData)[]) => (ErrorResponse | ReadResponse | WriteResponses)[];
Deserialize the parsed batch response.
Parameter parsedBatchResponse
Two dimensional list of parsed batch sub responses.
Returns
An array of parsed sub responses of the batch response.
class BigNumberField
class BigNumberField<EntityT extends Entity> extends BigNumberFieldBase< EntityT, true> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a selectable property with a big number value.
class BinaryField
class BinaryField<EntityT extends Entity> extends BinaryFieldBase<EntityT, true> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a selectable property with a binary value.
class BinaryFieldBase
class BinaryFieldBase< EntityT extends Entity, SelectableT extends boolean = false> extends EdmTypeField<EntityT, string, false, SelectableT> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a property with a binary value.
class BooleanField
class BooleanField<EntityT extends Entity> extends BooleanFieldBase<EntityT, true> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a selectable property with a boolean value.
class BooleanFieldBase
class BooleanFieldBase< EntityT extends Entity, SelectableT extends boolean = false> extends EdmTypeField<EntityT, boolean, false, SelectableT> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a property with a boolean value.
class BooleanFilterFunction
class BooleanFilterFunction<EntityT extends Entity> extends FilterFunction< EntityT, boolean> {}
Representation of a filter function, that returns a value of type boolean.
constructor
constructor(functionName: string, parameters: any[]);
Creates an instance of BooleanFilterFunction.
Parameter functionName
Name of the function that returns a boolean value
Parameter parameters
Representation of the parameters passed to the filter function
class Cache
class Cache<T> implements CacheInterface<T> {}
Representation of a cache to transiently store objects locally for faster access.
constructor
constructor(validityTime?: moment.MomentInputObject);
method clear
clear: () => void;
Clear all cached items.
method get
get: (key: string | undefined) => T | undefined;
Getter of cached entries.
Parameter key
The key of the entry to retrieve.
Returns
The corresponding entry to the provided key if it is still valid, returns
undefined
otherwise.
method hasKey
hasKey: (key: string) => boolean;
Specifies whether an entry with a given key is defined in cache.
Parameter key
The entry's key
Returns
boolean A boolean value that indicates whether the entry exists in cache
method set
set: (key: string | undefined, entry: T, expirationTime?: number) => void;
Setter of entries in cache.
Parameter key
The entry's key
Parameter entry
The entry to cache
Parameter expirationTime
The time expressed in UTC in which the given entry expires
class CollectionField
class CollectionField< EntityT extends Entity, CollectionFieldT extends EdmTypeShared<'any'> | Record<string, any> = any, NullableT extends boolean = false, SelectableT extends boolean = false> extends Field<EntityT, NullableT, SelectableT> {}
Represents a field of an entity or a complex type, that can have a collection as value.
constructor
constructor( fieldName: string, _fieldOf: ConstructorOrField<EntityT, any>, _fieldType: CollectionFieldType<CollectionFieldT>, fieldOptions?: FieldOptions<NullableT, SelectableT>);
Creates an instance of CollectionField.
Parameter fieldName
Actual name of the field used in the OData request.
Parameter _fieldOf
The constructor of the entity or the complex type field this field belongs to.
Parameter _fieldType
Edm type of the field according to the metadata description.
Parameter fieldOptions
Optional settings for this field.
method fieldPath
fieldPath: () => string;
Gets the path to the complex type property represented by this.
Returns
The path to the complex type property.
class ComplexTypeAnyPropertyField
class ComplexTypeAnyPropertyField< EntityT extends Entity, ComplexT = any> extends AnyFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a complex type property with with an unknown or currently unsupported EDM type like Edm.Geography.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeAnyPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeBigNumberPropertyField
class ComplexTypeBigNumberPropertyField< EntityT extends Entity, ComplexT = any> extends BigNumberFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a complex type property with a big number value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeBigNumberPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeBigNumberPropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeBinaryPropertyField
class ComplexTypeBinaryPropertyField< EntityT extends Entity, ComplexT = any> extends BinaryFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a complex type property with a binary value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeBinaryPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeBinaryPropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeBooleanPropertyField
class ComplexTypeBooleanPropertyField< EntityT extends Entity, ComplexT = any> extends BooleanFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a complex type property with a boolean value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeBooleanPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeBooleanPropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeDatePropertyField
class ComplexTypeDatePropertyField< EntityT extends Entity, ComplexT = any> extends DateFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a complex type property with a date value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeDatePropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeDatePropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeDurationPropertyField
class ComplexTypeDurationPropertyField< EntityT extends Entity, ComplexT = any> extends DurtionFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a complex type property with a duration value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeDurationPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeDurationPropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeEnumPropertyField
class ComplexTypeEnumPropertyField< EntityT extends Entity, ComplexT = any> extends EnumFieldBase<EntityT> {}
Deprecated
Since v1.48.0. Use [[EnumField]] instead. Represents a complex type property with a enum value.
constructor
constructor(fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>);
Creates an instance of ComplexTypeEnumPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeField
abstract class ComplexTypeField< EntityT extends Entity, ComplexT = any, NullableT extends boolean = false, SelectableT extends boolean = false> extends Field<EntityT, NullableT, SelectableT> {}
Represents a complex type property of an entity or a complex type.
ComplexTypeField
s are used as static properties of entities and are generated from the metadata, i.e. for each property of an OData entity, that has a complex type, there exists one static instance ofComplexTypeField
(or rather one of its subclasses) in the corresponding generated class file.ComplexTypeField
s are used to represent the domain of complex or custom structures that can be used in select, filter and order by functions. For example, when constructing a query on the TimeSheetEntry entity, an instance ofComplexTypeField<TimeSheetEntry>
can be supplied as argument to the select function, e.g.TimeSheetEntry.TIME_SHEET_DATA_FIELDS
. Moreover, classes implementing this abstract class will provide property fields, that can be used for filtering and ordering.See also: [[Selectable]]
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, complexTypeName: string);
Parameter fieldName
Actual name of the field as used in the OData request.
Parameter entityConstructor
Constructor type of the entity the field belongs to.
Parameter complexTypeName
Name of the type of the field according to the metadata description.
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeField.
constructor
constructor(fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>);
Parameter fieldName
Actual name of the field as used in the OData request.
Parameter fieldOf
Either the parent entity constructor of the parent complex type this field belongs to.
Deprecated
Since v1.27.0. Use other constructors instead. Creates an instance of ComplexTypeField.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, complexType: ComplexTypeNamespace<ComplexT>, fieldOptions?: FieldOptions<NullableT, SelectableT>);
Creates an instance of ComplexTypeField.
Parameter fieldName
Actual name of the field as used in the OData request.
Parameter fieldOf
Either the parent entity constructor of the parent complex type this field belongs to.
Parameter complexType
The complex type of the complex type property represented by this.
Parameter fieldOptions
Optional settings for this field.
property complexTypeName
readonly complexTypeName?: string;
Note that this property is crucial, although not really used. If it is removed this class becomes structural equivalent to e.g. ComplexTypeStringPropertyField which leads to unexpected behavior on the
selectable
list of objects.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
method fieldPath
fieldPath: () => string;
Gets the path to the complex type property represented by this.
Returns
The path to the complex type property.
class ComplexTypeNumberPropertyField
class ComplexTypeNumberPropertyField< EntityT extends Entity, ComplexT = any> extends NumberFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a complex type property with a number value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeNumberPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeNumberPropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeStringPropertyField
class ComplexTypeStringPropertyField< EntityT extends Entity, ComplexT = any> extends StringFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a complex type property with a string value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeStringPropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeStringPropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class ComplexTypeTimePropertyField
class ComplexTypeTimePropertyField< EntityT extends Entity, ComplexT = any> extends TimeFieldBase<EntityT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a complex type property with a time value.
constructor
constructor( fieldName: string, fieldOf: ConstructorOrField<EntityT, ComplexT>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of ComplexTypeTimePropertyField.
Parameter fieldName
Actual name of the field used in the OData request
Parameter fieldOf
The constructor of the entity or the complex type this field belongs to
Parameter edmType
Type of the field according to the metadata description
constructor
constructor( fieldName: string, entityConstructor: Constructable<EntityT, unknown>, parentTypeName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Parameter fieldName
Actual name of the field used in the OData request
Parameter entityConstructor
Constructor type of the entity the field belongs to
Parameter parentTypeName
Name of the parent complex type
Parameter edmType
Type of the field according to the metadata description
Deprecated
Since v1.19.0.
Creates an instance of ComplexTypeTimePropertyField.
property fieldOf
readonly fieldOf: ConstructorOrField<EntityT, ComplexT>;
The constructor of the entity or the complex type this field belongs to
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries. Combines the parent complex type name with the field name.
Returns
Path to the field to be used in filter and order by queries.
class CountRequestBuilder
class CountRequestBuilder<EntityT extends Entity> extends MethodRequestBuilder< ODataCountRequestConfig<EntityT>> {}
Create an OData request to count entities based on the configuration of the request. A
CountRequestBuilder
allows only for execution of the request. If you want to apply query parameters like filter, skip or top do it on the [[GetAllRequestBuilder]] the count is created from.
constructor
constructor(getAllRequest: GetAllRequestBuilder<EntityT>);
Creates an instance of CountRequestBuilder.
Parameter _entityConstructor
Constructor of the entity to create the request for
property getAllRequest
readonly getAllRequest: GetAllRequestBuilder<EntityT>;
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<number>;
Execute request.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the number of entities
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse>;
Execute request and return an [[HttpResponse]].
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]].
class CreateRequestBuilder
class CreateRequestBuilder<EntityT extends Entity> extends CreateRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create OData request to create an entity.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity);
Creates an instance of CreateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be created
Parameter _entity
Entity to be created
class CreateRequestBuilderBase
abstract class CreateRequestBuilder<EntityT extends Entity> extends MethodRequestBuilder<ODataCreateRequestConfig<EntityT>> implements EntityIdentifiable<EntityT> {}
Abstract create request class holding the parts shared in OData v2 and v4.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity, odataUri: ODataUri, serializer: EntitySerializer<any, any>, deserializer: EntityDeserializer<any>, responseDataAccessor: ResponseDataAccessor);
Creates an instance of CreateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be created
Parameter _entity
Entity to be created
property deserializer
readonly deserializer: EntityDeserializer<any>;
property entity
readonly entity: Entity;
property odataUri
readonly odataUri: ODataUri;
property responseDataAccessor
readonly responseDataAccessor: ResponseDataAccessor;
property serializer
readonly serializer: EntitySerializer<any, any>;
method asChildOf
asChildOf: <ParentEntityT extends Entity>( parentEntity: ParentEntityT, linkField: Link<ParentEntityT, EntityT>) => this;
Specifies the parent of the entity to create.
Parameter parentEntity
Parent of the entity to create
Parameter linkField
Static representation of the navigation property that navigates from the parent entity to the child entity
Returns
The entity itself, to facilitate method chaining
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<EntityT>;
Execute query.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the created entity
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse>;
Execute request and return an [[HttpResponse]].
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]].
method prepare
prepare: () => this;
Returns
the builder itself
Deprecated
Since v1.29.0. This method should never be called, it has severe side effects. * Builds the payload of the query.
class CreateRequestBuilderV2
class CreateRequestBuilder<EntityT extends Entity> extends CreateRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create OData request to create an entity.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity);
Creates an instance of CreateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be created
Parameter _entity
Entity to be created
class CreateRequestBuilderV4
class CreateRequestBuilder<EntityT extends Entity> extends CreateRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create OData request to create an entity.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity);
Creates an instance of CreateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be created
Parameter _entity
Entity to be created
class CustomField
class CustomField< EntityT extends Entity, NullableT extends boolean = false> extends CustomFieldBase<EntityT, NullableT> {}
method edmDateTime
edmDateTime: () => OrderableEdmTypeField< EntityT, 'Edm.DateTime', NullableT, true>;
method edmTime
edmTime: () => OrderableEdmTypeField<EntityT, 'Edm.Time', NullableT, true>;
class CustomFieldV2
class CustomField< EntityT extends Entity, NullableT extends boolean = false> extends CustomFieldBase<EntityT, NullableT> {}
method edmDateTime
edmDateTime: () => OrderableEdmTypeField< EntityT, 'Edm.DateTime', NullableT, true>;
method edmTime
edmTime: () => OrderableEdmTypeField<EntityT, 'Edm.Time', NullableT, true>;
class CustomFieldV4
class CustomField< EntityT extends Entity, NullableT extends boolean = false> extends CustomFieldBase<EntityT, NullableT> {}
method edmDate
edmDate: () => OrderableEdmTypeField<EntityT, 'Edm.Date', NullableT, true>;
method edmDuration
edmDuration: () => OrderableEdmTypeField< EntityT, 'Edm.Duration', NullableT, true>;
method edmTimeOfDay
edmTimeOfDay: () => OrderableEdmTypeField< EntityT, 'Edm.TimeOfDay', NullableT, true>;
class DateField
class DateField<EntityT extends Entity> extends DateFieldBase<EntityT, true> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a selectable property with a date value.
class DateFieldBase
class DateFieldBase< EntityT extends Entity, SelectableT extends boolean = false> extends EdmTypeField<EntityT, moment.Moment, false, SelectableT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a property with a date value.
method greaterOrEqual
greaterOrEqual: (value: moment.Moment) => Filter<EntityT, moment.Moment>;
Creates an instance of Filter for this field and the given value using the operator 'ge', i.e.
>=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method greaterThan
greaterThan: (value: moment.Moment) => Filter<EntityT, moment.Moment>;
Creates an instance of Filter for this field and the given value using the operator 'gt', i.e.
>
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessOrEqual
lessOrEqual: (value: moment.Moment) => Filter<EntityT, moment.Moment>;
Creates an instance of Filter for this field and the given value using the operator 'le', i.e.
<=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessThan
lessThan: (value: moment.Moment) => Filter<EntityT, moment.Moment>;
Creates an instance of Filter for this field and the given value using the operator 'lt', i.e.
<
.Parameter value
Value to be used in the filter
Returns
The resulting filter
class DeleteRequestBuilder
class DeleteRequestBuilder< EntityT extends Entity> extends DeleteRequestBuilderBase<EntityT> {}
Create OData query to delete an entity.
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, keysOrEntity: Entity | Record<string, any>);
Creates an instance of DeleteRequestBuilder. If the entity is passed, version identifier will also be added.
Parameter entityConstructor
Constructor type of the entity to be deleted
Parameter keysOrEntity
Entity or Key-value pairs of key properties for the given entity
method setVersionIdentifier
setVersionIdentifier: (eTag: string) => this;
Add an eTag version identifier in the delete request header.
Parameter eTag
The version identifier of the entity
Returns
The builder itself, to facilitate method chaining
class DeleteRequestBuilderBase
abstract class DeleteRequestBuilder<EntityT extends Entity> extends MethodRequestBuilder<ODataDeleteRequestConfig<EntityT>> implements EntityIdentifiable<EntityT> {}
Abstract class to delete an entity holding the shared parts between OData v2 and v4
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, oDataUri: ODataUri, keysOrEntity: Entity | Record<string, any>);
Creates an instance of DeleteRequestBuilder. If the entity is passed, version identifier will also be added.
Parameter entityConstructor
Constructor type of the entity to be deleted
Parameter oDataUri
ODataUri conversion interface at runtime either v2 or v4
Parameter keysOrEntity
Entity or Key-value pairs of key properties for the given entity
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<void>;
Execute query.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving once the entity was deleted
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse>;
Execute request and return an [[HttpResponse]].
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]].
method ignoreVersionIdentifier
ignoreVersionIdentifier: () => this;
Instructs the request to force an overwrite of the entity by sending an 'If-Match: *' header instead of sending the ETag version identifier.
Returns
this The request itself to ease chaining while executing the request
method setVersionIdentifier
abstract setVersionIdentifier: (eTag: string) => this;
class DeleteRequestBuilderV2
class DeleteRequestBuilder< EntityT extends Entity> extends DeleteRequestBuilderBase<EntityT> {}
Create OData query to delete an entity.
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, keysOrEntity: Entity | Record<string, any>);
Creates an instance of DeleteRequestBuilder. If the entity is passed, version identifier will also be added.
Parameter entityConstructor
Constructor type of the entity to be deleted
Parameter keysOrEntity
Entity or Key-value pairs of key properties for the given entity
method setVersionIdentifier
setVersionIdentifier: (eTag: string) => this;
Add an eTag version identifier in the delete request header.
Parameter eTag
The version identifier of the entity
Returns
The builder itself, to facilitate method chaining
class DeleteRequestBuilderV4
class DeleteRequestBuilder<EntityT extends Entity> extends DeleteRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create OData query to delete an entity.
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, keysOrEntity: Record<string, any> | Entity);
Creates an instance of DeleteRequestBuilder. If the entity is passed, version identifier will also be added.
Parameter entityConstructor
Constructor type of the entity to be deleted
Parameter keysOrEntity
Entity or Key-value pairs of key properties for the given entity
method setVersionIdentifier
setVersionIdentifier: (etag: string) => this;
Add ETag version identifier in the delete request header.
Parameter etag
The version identifier of the entity.
Returns
The builder itself, to facilitate method chaining.
class DurationField
class DurationField<EntityT extends Entity> extends DurtionFieldBase< EntityT, true> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a selectable property with a duration value.
class DurtionFieldBase
class DurtionFieldBase< EntityT extends Entity, SelectableT extends boolean = false> extends EdmTypeField<EntityT, moment.Duration, false, SelectableT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a property with a duration value.
method greaterOrEqual
greaterOrEqual: (value: moment.Duration) => Filter<EntityT, moment.Duration>;
Creates an instance of Filter for this field and the given value using the operator 'ge', i.e.
>=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method greaterThan
greaterThan: (value: moment.Duration) => Filter<EntityT, moment.Duration>;
Creates an instance of Filter for this field and the given value using the operator 'gt', i.e.
>
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessOrEqual
lessOrEqual: (value: moment.Duration) => Filter<EntityT, moment.Duration>;
Creates an instance of Filter for this field and the given value using the operator 'le', i.e.
<=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessThan
lessThan: (value: moment.Duration) => Filter<EntityT, moment.Duration>;
Creates an instance of Filter for this field and the given value using the operator 'lt', i.e.
<
.Parameter value
Value to be used in the filter
Returns
The resulting filter
class EdmTypeField
class EdmTypeField< EntityT extends Entity, EdmOrFieldT extends EdmTypeShared<'any'> | FieldType, NullableT extends boolean = false, SelectableT extends boolean = false> extends Field<EntityT, NullableT, SelectableT> {}
Represents a property of an OData entity with an EDM type.
EdmTypeField
s are used as static properties of entities or EDM typed fields of complex type fields. They are generated from the OData metadata, i.e. for each property of an OData entity, that has an EDM type, there is one static instance ofEdmTypeField
(or rather one of its subclasses) in the corresponding generated class file.EdmTypeField
s are used to represent the domain of more or less primitive values that can be used in select, filter and order by functions. For example, when constructing a query on the BusinessPartner entity, an instance ofEdmTypeField<BusinessPartner, string>
can be supplied as argument to the select function, e.g.BusinessPartner.FIRST_NAME
.See also: [[Selectable]]
constructor
constructor( fieldName: string, _fieldOf: ConstructorOrField<EntityT, any>, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4, fieldOptions?: FieldOptions<NullableT, SelectableT>);
Creates an instance of EdmTypeField.
Parameter fieldName
Actual name of the field used in the OData request.
Parameter _fieldOf
Constructor type of the entity the field belongs to.
Parameter edmType
Type of the field according to the metadata description.
Parameter fieldOptions
Optional settings for this field.
property edmType
readonly edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
method equals
equals: ( value: FieldTypeByEdmType<EdmOrFieldT, NullableT>) => Filter<EntityT, FieldTypeByEdmType<EdmOrFieldT, NullableT>>;
Creates an instance of Filter for this field and the given value using the operator 'eq', i.e.
==
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries.
Returns
Path to the field to be used in filter and order by queries.
method notEquals
notEquals: ( value: FieldTypeByEdmType<EdmOrFieldT, NullableT>) => Filter<EntityT, FieldTypeByEdmType<EdmOrFieldT, NullableT>>;
Creates an instance of Filter for this field and the given value using the operator 'ne', i.e.
!=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
class Entity
class Entity extends EntityBase {}
Super class for all representations of OData v2 entity types.
method customFieldSelector
protected static customFieldSelector: < EntityT extends Entity, NullableT extends boolean = false>( fieldName: string, entityConstructor: Constructable<EntityT>, isNullable?: NullableT) => CustomField<EntityT, NullableT>;
class EntityBase
abstract class Entity {}
Super class for all representations of OData entity types.
constructor
constructor();
property remoteState
protected remoteState: { [keys: string]: any };
The remote state of the entity. Remote state refers to the last known state of the entity on the remote system from which it has been retrieved or to which it has been posted. It is stored as map, where the keys are stored in the format of the original OData properties.
property versionIdentifier
readonly versionIdentifier: string;
ETag version identifier accessor.
Returns
The ETag version identifier of the retrieved entity, returns
undefined
if not retrieved.
method asObject
protected asObject: (visitedEntities?: Entity[]) => Record<string, any>;
Creates an object containing all defined properties, navigation properties and custom fields in the entity.
Parameter visitedEntities
List of entities to check in case of circular dependencies.
Returns
Entity as an object with all defined entity fields
method entityBuilder
protected static entityBuilder: <EntityT extends Entity, EntityTypeT>( entityConstructor: Constructable<EntityT, EntityTypeT>) => EntityBuilderType<EntityT, EntityTypeT>;
method getCurrentMapKeys
protected getCurrentMapKeys: (visitedEntities?: Entity[]) => any;
Parameter visitedEntities
List of entities to check in case of circular dependencies.
Returns
Entity with all defined entity fields
Deprecated
Since v1.34.1. Use [[asObject]] instead. Returns a map of all defined fields in entity to their current values.
method getCurrentStateForKey
protected getCurrentStateForKey: ( key: string, visitedEntities?: Entity[]) => any;
method getCustomField
getCustomField: (fieldName: string) => any;
Custom field value getter.
Parameter fieldName
The name of the custom field
Returns
The value of the corresponding custom field
method getCustomFields
getCustomFields: () => Record<string, any>;
Returns a map that contains all entity custom fields.
Returns
A map of all defined custom fields in the entity
method getUpdatedCustomFields
getUpdatedCustomFields: () => Record<string, any>;
Returns all updated custom field properties compared to the last known remote state.
Returns
An object containing all updated custom properties, with their new values.
method getUpdatedProperties
getUpdatedProperties: () => Record<string, any>;
Returns all changed properties compared to the last known remote state. The returned properties do not include custom fields. Use [[getUpdatedCustomFields]], if you need custom fields.
Returns
Entity with all properties that changed
method getUpdatedPropertyNames
getUpdatedPropertyNames: () => string[];
Returns all changed property names compared to the last known remote state. The returned properties names do not include custom fields. Use [[getUpdatedCustomFields]], if you need custom fields.
Returns
Entity with all properties that changed
method hasCustomField
hasCustomField: (fieldName: string) => boolean;
Validates whether a custom field exists in the entity.
Parameter fieldName
The name of the custom field to update
Returns
A boolean value, that indicates whether a custom field is defined in entity
method initializeCustomFields
initializeCustomFields: (customFields: Record<string, any>) => this;
Parameter customFields
Extracted custom fields from a retrieved entity.
Returns
The entity itself, to facilitate method chaining.
Deprecated
Since v1.34.1. Use [[setCustomFields]] instead. Sets all retrieved custom fields in entity.
method isConflictingCustomField
protected isConflictingCustomField: (customFieldName: string) => boolean;
Validates whether a field name does not conflict with an original field name and thus can be defined as custom fields.
Parameter customFieldName
Field name to check
Returns
Boolean value that describes whether a field name can be defined as custom field
method isVisitedEntity
protected isVisitedEntity: <EntityT extends Entity>( entity: EntityT, visitedEntities?: Entity[]) => boolean;
method setCustomField
setCustomField: (fieldName: string, value: any) => this;
Sets a new custom field in the entity or updates it. Throws an error, if the provided custom field name is already defined by an original field in entity.
Parameter fieldName
The name of the custom field to update
Parameter value
The value of the field
Returns
The entity itself, to facilitate method chaining
method setCustomFields
setCustomFields: (customFields: Record<string, any>) => this;
Sets custom fields on an entity.
Parameter customFields
Custom fields to set on the entity.
Returns
The entity itself, to facilitate method chaining
method setOrInitializeRemoteState
setOrInitializeRemoteState: (state?: Record<string, any>) => this;
Parameter state
State to be set as remote state.
Returns
The entity itself, to facilitate method chaining
Deprecated
Since 1.12.0. Will be hidden in version 2.0. Initializes or sets the remoteState of the entity. This function is called on all read, create and update requests. This function should be called after [[initializeCustomFields]], if custom fields are defined.
method setVersionIdentifier
setVersionIdentifier: (etag: string | undefined) => this;
Set the ETag version identifier of the retrieved entity.
Parameter etag
The returned ETag version of the entity.
Returns
The entity itself, to facilitate method chaining.
class EntityBuilder
class EntityBuilder<EntityT extends Entity, JsonT> {}
constructor
constructor(_entityConstructor: Constructable<EntityT, JsonT>);
property entity
protected entity: Entity;
method build
build: () => EntityT;
Builds the entity.
Returns
The entity.
method fromJson
fromJson: (json: FromJsonType<JsonT>) => EntityT;
Builds an entity from JSON representation. If you have obtained the JSON as a request payload use the [[deserializeEntity]] methods. Note that fields not mappable to a field in the target entity are silently ignored.
Parameter json
Representation of the entity in JSON format.
Returns
Entity constructed from JSON representation.
method withCustomFields
withCustomFields: (customFields: Record<string, any>) => this;
Sets the custom fields for the entity.
Parameter customFields
The custom fields you want to add.
Returns
The entity builder itself for method chaining
class EntityV2
class Entity extends EntityBase {}
Super class for all representations of OData v2 entity types.
method customFieldSelector
protected static customFieldSelector: < EntityT extends Entity, NullableT extends boolean = false>( fieldName: string, entityConstructor: Constructable<EntityT>, isNullable?: NullableT) => CustomField<EntityT, NullableT>;
class EntityV4
abstract class Entity extends EntityBase {}
Super class for all representations of OData v4 entity types.
method customFieldSelector
protected static customFieldSelector: < EntityT extends Entity, NullableT extends boolean = false>( fieldName: string, entityConstructor: Constructable<EntityT>, isNullable?: NullableT) => CustomField<EntityT, NullableT>;
class EnumField
class EnumField< EntityT extends Entity, EnumT extends string = string, NullableT extends boolean = false, SelectableT extends boolean = false> extends Field<EntityT, NullableT, SelectableT> {}
Represents a property with an enum value.
constructor
constructor( fieldName: string, _fieldOf: ConstructorOrField<EntityT, any>, enumType?: Record<string, EnumT>, fieldOptions?: FieldOptions<NullableT, SelectableT>);
Creates an instance of EnumField.
Parameter fieldName
Actual name of the field used in the OData request.
Parameter _fieldOf
The constructor of the entity or the complex type field this field belongs to.
Parameter enumType
Enum type of the field according to the metadata description.
Parameter fieldOptions
Optional settings for this field.
property edmType
readonly edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
Deprecated
Since v1.48.0. This property is not used anymore.
property enumType
readonly enumType?: Record<string, EnumT>;
method equals
equals: (value: EnumType<EnumT>) => Filter<EntityT, string>;
Creates an instance of Filter for this field and the given value using the operator 'eq', i.e.
==
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method fieldPath
fieldPath: () => string;
Gets the path to the complex type property represented by this.
Returns
The path to the complex type property.
method notEquals
notEquals: (value: EnumType<EnumT>) => Filter<EntityT, string>;
Creates an instance of Filter for this field and the given value using the operator 'ne', i.e.
!=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
class Field
class Field< EntityT extends Entity, NullableT extends boolean = false, SelectableT extends boolean = false> implements EntityIdentifiable<EntityT> {}
Abstract representation a property of an OData entity.
Field
s are used as static properties of entities or properties of [[ComplexTypeField]]s and are generated from the metadata, i.e. for each property of an OData entity, there exists one static instance ofField
(or rather one of its subclasses) in the corresponding generated class file. Fields are used to represent the domain of values that can be used in select, filter and order by functions.See also: [[Selectable]], [[EdmTypeField]], [[ComplexTypeField]]
constructor
constructor( _fieldName: string, _entityConstructor: Constructable<EntityT, unknown>, fieldOptions?: FieldOptions<NullableT, SelectableT>);
Creates an instance of Field.
Parameter _fieldName
Actual name of the field used in the OData request
Parameter _entityConstructor
Constructor type of the entity the field belongs to
Parameter fieldOptions
Optional settings for this field.
method fieldPath
fieldPath: () => string;
Path to the field to be used in filter and order by queries.
Returns
Path to the field to be used in filter and order by queries.
class FieldBuilder
class FieldBuilder<FieldOfT extends ConstructorOrField<any>> {}
Field builder to orchestrate the creation of the different kinds of fields.
constructor
constructor(fieldOf: ConstructorOrField<any, any>);
Creates an instance of
FieldBuilder
.Parameter fieldOf
Entity or complex type field, for which the field builder shall create fields.
property fieldOf
fieldOf: ConstructorOrField<any, any>;
method buildCollectionField
buildCollectionField: < CollectionFieldT extends | Record<string, any> | EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4, NullableT extends boolean>( fieldName: string, collectionFieldType: CollectionFieldType<CollectionFieldT>, isNullable: NullableT) => CollectionField< EntityTypeFromFieldOf<FieldOfT>, CollectionFieldT, NullableT, IsSelectableField<FieldOfT>>;
Build a field for a property with a collection type. The type of the field can either be an EDM type or a complex type. Fields of entities are selectable; fields of complex types are not selectable.
Parameter fieldName
Name of the field.
Parameter collectionFieldType
Type of the collection. Can either be an EDM type or complex type (not complex type field).
Parameter isNullable
Whether the field is nullable.
Returns
A collection field with the given collection type.
method buildComplexTypeField
buildComplexTypeField: < ComplexTypeFieldT extends ComplexTypeField< EntityTypeFromFieldOf<FieldOfT>, any, NullableT, IsSelectableField<FieldOfT> >, ComplexT, NullableT extends boolean>( fieldName: string, complexTypeFieldCtor: ComplexTypeFieldConstructor< ComplexTypeFieldT, EntityTypeFromFieldOf<FieldOfT>, ComplexT, NullableT, IsSelectableField<FieldOfT> >, isNullable: NullableT) => ComplexTypeFieldT;
Build a field for a property with a complex type. Fields of entities are selectable; fields of complex types are not selectable.
Parameter fieldName
Name of the field.
Parameter complexTypeFieldCtor
Constructor of the complex type field.
Parameter isNullable
Whether the field is nullable.
Returns
A complex type field of the given type.
method buildEdmTypeField
buildEdmTypeField: { <EdmT extends OrderableEdmType, NullableT extends boolean>( fieldName: string, edmType: EdmT, isNullable: NullableT ): OrderableEdmTypeField< EntityTypeFromFieldOf<FieldOfT>, EdmT, NullableT, IsSelectableField<FieldOfT> >; < EdmT extends | 'Edm.String' | 'Edm.Boolean' | 'Edm.Binary' | 'Edm.Guid' | 'Edm.Any' | 'Edm.Enum', NullableT extends boolean >( fieldName: string, edmType: EdmT, isNullable: NullableT ): EdmTypeField< EntityTypeFromFieldOf<FieldOfT>, EdmT, NullableT, IsSelectableField<FieldOfT> >;};
method buildEnumField
buildEnumField: <EnumT extends string, NullableT extends boolean>( fieldName: string, enumType: Record<string, EnumT>, isNullable: NullableT) => EnumField< EntityTypeFromFieldOf<FieldOfT>, EnumT, NullableT, IsSelectableField<FieldOfT>>;
Build a field for a property with a enum type.
Parameter fieldName
Name of the field.
Parameter enumType
Enum type of this field.
Parameter isNullable
Whether the field is nullable.
Returns
A collection field with the given collection type.
class Filter
class Filter<EntityT extends Entity, FieldT extends FieldType | FieldType[]> implements EntityIdentifiable<EntityT> {}
Represents a filter expression to narrow the data on a [[GetAllRequestBuilder]] request for multiple entities that match the specified criteria. A filter refers to the field of an entity and restricts the request based on an operator and a value.
Entity.FIELD_NAME.operator(value)
Example:
Product.NAME.equals('cloud-sdk')
creates a filter for the entityProduct
that matches in case the fieldNAME
equals 'cloud-sdk'.See also: [[Filterable]]
constructor
constructor( field: string | FilterFunction<EntityT, FieldT>, operator: FilterOperator, value: {}, edmType?: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of Filter.
Parameter field
Name of the field of the entity to be filtered on or a filter function
Parameter operator
Function to be used for matching
Parameter value
Value to be used by the operator
Parameter edmType
EDM type of the field to filter on, needed for custom fields
property edmType
edmType?: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
property field
field: string | FilterFunction<EntityT, FieldT>;
property operator
operator: FilterOperator;
property value
value: {};
class FilterFunction
abstract class FilterFunction< EntityT extends Entity, ReturnT extends FieldType | FieldType[]> {}
Data structure to represent OData filter functions. Use the factory function [[filterFunction]] to create instances of
FilterFunction
.
constructor
constructor( functionName: string, parameters: any[], edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of FilterFunction.
Parameter functionName
Name of the function.
Parameter parameters
Representation of the parameters passed to the filter function.
Parameter edmType
EDM type of the return type of the filter function.
property edmType
readonly edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
property functionName
readonly functionName: string;
property parameters
readonly parameters: any[];
method equals
equals: (value: ReturnT) => Filter<EntityT, ReturnT>;
Creates an instance of Filter for this filter function and the given value using the operator 'eq', i.e.
==
.Parameter value
Value to be used in the filter
Parameter edmType
EDM type of the value, used when converting the value to URL. Use
Edm.String
as default value.Returns
The resulting filter
method notEquals
notEquals: (value: ReturnT) => Filter<EntityT, ReturnT>;
Creates an instance of Filter for this filter function and the given value using the operator 'ne', i.e.
!=
.Parameter value
Value to be used in the filter
Parameter edmType
EDM type of the value, used when converting the value to URL. Use
Edm.String
as default value.Returns
The resulting filter
method toString
toString: (parentFieldNames?: string[]) => string;
Parameter parentFieldNames
Names of parents in case the function is part of a filter on a navigation property
Returns
The filter function as string
Deprecated
Since v1.21.0. There will be no replacement. Let us know if you were using this functionality. Serializes the filter function into a string
class FilterLambdaExpression
class FilterLambdaExpression<EntityT extends Entity> {}
hidden
constructor
constructor(filters: FilterList<EntityT>, lambdaOperator: FilterLambdaOperator);
property filters
filters: FilterList<EntityT>;
property lambdaOperator
lambdaOperator: FilterLambdaOperator;
class FilterLink
class FilterLink<EntityT extends Entity, LinkedEntityT extends Entity = any> implements EntityIdentifiable<EntityT> {}
Data structure to represent filter on properties of a navigation property (link). In OData v2 filtering for navigation properties is ONLY supported for properties with a one-to-one cardinality ([[OneToOneLink]]).
Example: In the following filter statement
Entity.requestBuilder().filter(Entity.to_NavProperty.filter(LinkedEntity.property.equals(value)))
,Entity.to_NavProperty.filter(LinkedEntity.property.equals(value))
is aFilterLink
.In OData v4 filtering is also possible on one-to-many links. See [[OneToManyLink]].
constructor
constructor( link: Link<EntityT, LinkedEntityT>, filters: Filterable<LinkedEntityT, any>[]);
Creates an instance of
FilterLink
.Parameter link
Linked entity to be used in the filter.
Parameter filters
List of filterables for the linked entity.
property filters
filters: Filterable<LinkedEntityT, any>[];
property link
link: Link<EntityT, LinkedEntityT>;
class FilterList
class FilterList<EntityT extends Entity> implements EntityIdentifiable<EntityT> {}
Data structure to combine [[Filterable]]s conjunctively and / or disjunctively. A FilterList matches when all filterables within the
andFilters
match and when at least one filterable within theorFilters
matches. Should not be used directly.
constructor
constructor( andFilters?: Filterable<EntityT, any>[], orFilters?: Filterable<EntityT, any>[]);
Creates an instance of FilterList.
Parameter andFilters
Filters to be combined by logical conjunction (
and
)Parameter orFilters
Filters to be combined by logical disjunction (
or
)
property andFilters
andFilters: Filterable<EntityT, any>[];
property orFilters
orFilters: Filterable<EntityT, any>[];
method flatten
flatten: () => FilterList<EntityT>;
Returns
Flattened filter list.
Deprecated
Since v1.28.1. This function should not be used, since some OData Services might not support the flattened filter expression. Flattens
andFilters
andorFilters
as far as possible while staying logically equivalent.
class FunctionImportParameter
class FunctionImportParameter<ValueT> {}
Internal representation of function import parameters. It adds metadata to the value.
constructor
constructor( originalName: string, edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4, value: {});
Creates an instance of FunctionImportParameter.
Parameter originalName
The original name of the parameter in the OData service.
Parameter edmType
Original EDM type.
Parameter value
Value to be used as parameter.
property edmType
edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
property originalName
originalName: string;
property value
value: {};
class FunctionImportRequestBuilder
class FunctionImportRequestBuilder< ParametersT, ReturnT> extends ActionFunctionImportRequestBuilderBase<ParametersT, ReturnT> {}
Create OData request to execute a function import.
constructor
constructor( method: RequestMethodType, defaultServicePath: string, functionImportName: string, responseTransformer: (data: any) => ReturnT, parameters: FunctionImportParameters<ParametersT>);
Creates an instance of FunctionImportRequestBuilder.
Parameter method
HTTP method to be used for the request
Parameter defaultServicePath
Default path for the service the function belongs to
Parameter functionImportName
The name of the function import.
Parameter responseTransformer
Transformation function for the response
Parameter parameters
Parameters to be set in the function
property responseTransformer
readonly responseTransformer: (data: any) => ReturnT;
class FunctionImportRequestBuilderV2
class FunctionImportRequestBuilder< ParametersT, ReturnT> extends ActionFunctionImportRequestBuilderBase<ParametersT, ReturnT> {}
Create OData request to execute a function import.
constructor
constructor( method: RequestMethodType, defaultServicePath: string, functionImportName: string, responseTransformer: (data: any) => ReturnT, parameters: FunctionImportParameters<ParametersT>);
Creates an instance of FunctionImportRequestBuilder.
Parameter method
HTTP method to be used for the request
Parameter defaultServicePath
Default path for the service the function belongs to
Parameter functionImportName
The name of the function import.
Parameter responseTransformer
Transformation function for the response
Parameter parameters
Parameters to be set in the function
property responseTransformer
readonly responseTransformer: (data: any) => ReturnT;
class FunctionImportRequestBuilderV4
class FunctionImportRequestBuilder< ParametersT, ReturnT> extends ActionFunctionImportRequestBuilderBase<ParametersT, ReturnT> {}
Create OData request to execute a function import.
constructor
constructor( defaultServicePath: string, functionImportName: string, responseTransformer: (data: any) => ReturnT, parameters: FunctionImportParameters<ParametersT>);
Creates an instance of FunctionImportRequestBuilder.
Parameter defaultServicePath
Default path for the service the function belongs to
Parameter functionImportName
The name of the function import.
Parameter responseTransformer
Transformation function for the response
Parameter parameters
Parameters to be set in the function
property responseTransformer
readonly responseTransformer: (data: any) => ReturnT;
class GetAllRequestBuilder
class GetAllRequestBuilder<EntityT extends Entity> extends GetAllRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
constructor
constructor(entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of GetAllRequestBuilder.
Parameter entityConstructor
Constructor of the entity to create the request for
method filter
filter: { (expressions: Filterable<EntityT>[]): this; (...expressions: Filterable<EntityT, any>[]): this;};
Add filter statements to the request.
Parameter expressions
Filter expressions to restrict the response
Returns
The request builder itself, to facilitate method chaining
class GetAllRequestBuilderBase
abstract class GetAllRequestBuilder< EntityT extends Entity> extends GetRequestBuilder<EntityT, ODataGetAllRequestConfig<EntityT>> {}
Base class for the get all request builders [[GetAllRequestBuilderV2]] and [[GetAllRequestBuilderV4]]
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, getAllRequestConfig: ODataGetAllRequestConfig<EntityT>, entityDeserializer: EntityDeserializer<any>, dataAccessor: ResponseDataAccessor);
Creates an instance of GetAllRequestBuilder.
Parameter entityConstructor
Constructor of the entity to create the request for
Parameter getAllRequestConfig
Request config of the get all request.
property dataAccessor
readonly dataAccessor: ResponseDataAccessor;
property entityDeserializer
readonly entityDeserializer: EntityDeserializer<any>;
method count
count: () => CountRequestBuilder<EntityT>;
Count the number of entities.
Returns
A count request builder for execution
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<EntityT[]>;
Execute request.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the requested entities
method orderBy
orderBy: { (orderBy: Orderable<EntityT>[]): this; (...orderBy: Orderable<EntityT>[]): this;};
Add order-by statements to the request.
Parameter orderBy
OrderBy statements to order the response by
Returns
The request builder itself, to facilitate method chaining
method select
select: { (...selects: Selectable<EntityT>[]): this; (selects: Selectable<EntityT>[]): this;};
Restrict the response to the given selection of properties in the request.
Parameter selects
Fields to select in the request
Returns
The request builder itself, to facilitate method chaining
method skip
skip: (skip: number) => this;
Skip number of entities.
Parameter skip
Number of matching entities to skip. Useful for paging
Returns
The request builder itself, to facilitate method chaining
method top
top: (top: number) => this;
Limit number of returned entities.
Parameter top
Maximum number of entities to return in the response. Can be less, if less entities match the request
Returns
The request builder itself, to facilitate method chaining
class GetAllRequestBuilderV2
class GetAllRequestBuilder<EntityT extends Entity> extends GetAllRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
constructor
constructor(entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of GetAllRequestBuilder.
Parameter entityConstructor
Constructor of the entity to create the request for
method filter
filter: { (expressions: Filterable<EntityT>[]): this; (...expressions: Filterable<EntityT, any>[]): this;};
Add filter statements to the request.
Parameter expressions
Filter expressions to restrict the response
Returns
The request builder itself, to facilitate method chaining
class GetAllRequestBuilderV4
class GetAllRequestBuilder<EntityT extends Entity> extends GetAllRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
constructor
constructor(entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of GetAllRequestBuilder.
Parameter entityConstructor
Constructor of the entity to create the request for
method expand
expand: { (expands: Expandable<EntityT>[]): this; (...expands: Expandable<EntityT>[]): this;};
method filter
filter: (...expressions: Filterable<EntityT>[]) => this;
Add filter statements to the request.
Parameter expressions
Filter expressions to restrict the response
Returns
The request builder itself, to facilitate method chaining
class GetByKeyRequestBuilder
class GetByKeyRequestBuilder<EntityT extends Entity> extends GetByKeyRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create an OData request to get a single entity based on its key properties. The properties available in the response can be restricted by creating a [[GetAllRequestBuilder.select selection]], where no selection is equal to selecting all fields. Note that navigational properties are automatically expanded if they included in a select.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, keys: Record<string, any>);
Creates an instance of GetByKeyRequestBuilder.
Parameter _entityConstructor
Constructor of the entity to create the request for
Parameter keys
Key-value pairs where the key is the name of a key property of the given entity and the value is the respective value
class GetByKeyRequestBuilderBase
abstract class GetByKeyRequestBuilder< EntityT extends Entity> extends GetRequestBuilder<EntityT, ODataGetByKeyRequestConfig<EntityT>> {}
Abstract class to create a get by key request containing the shared functionality for OData v2 and v4.
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, keys: Record<string, any>, oDataUri: ODataUri, entityDeserializer: EntityDeserializer<any>, dataAccessor: ResponseDataAccessor);
Creates an instance of GetByKeyRequestBuilder.
Parameter entityConstructor
Constructor of the entity to create the request for
Parameter keys
Key-value pairs where the key is the name of a key property of the given entity and the value is the respective value
Parameter oDataUri
Uri conversion methods
Parameter entityDeserializer
Entity deserializer
property dataAccessor
readonly dataAccessor: ResponseDataAccessor;
property entityDeserializer
readonly entityDeserializer: EntityDeserializer<any>;
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<EntityT>;
Execute request.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the requested entity
method select
select: { (...selects: Selectable<EntityT>[]): this; (selects: Selectable<EntityT>[]): this;};
Restrict the response to the given selection of properties in the request.
Parameter selects
Fields to select in the request
Returns
The request builder itself, to facilitate method chaining
class GetByKeyRequestBuilderV2
class GetByKeyRequestBuilder<EntityT extends Entity> extends GetByKeyRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create an OData request to get a single entity based on its key properties. The properties available in the response can be restricted by creating a [[GetAllRequestBuilder.select selection]], where no selection is equal to selecting all fields. Note that navigational properties are automatically expanded if they included in a select.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, keys: Record<string, any>);
Creates an instance of GetByKeyRequestBuilder.
Parameter _entityConstructor
Constructor of the entity to create the request for
Parameter keys
Key-value pairs where the key is the name of a key property of the given entity and the value is the respective value
class GetByKeyRequestBuilderV4
class GetByKeyRequestBuilder<EntityT extends Entity> extends GetByKeyRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create an OData request to get a single entity based on its key properties. The properties available in the response can be restricted by creating a [[GetByKeyRequestBuilderV4.select selection]], where no selection is equal to selecting all fields of the entity. Navigational properties need to expanded explicitly by [[GetAllRequestBuilderV4.expand]]. where no selection is equal to selecting all fields.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, keys: Record<string, any>);
Creates an instance of GetByKeyRequestBuilder.
Parameter _entityConstructor
Constructor of the entity to create the request for
Parameter keys
Key-value pairs where the key is the name of a key property of the given entity and the value is the respective value
method expand
expand: { (expands: Expandable<EntityT>[]): this; (...expands: Expandable<EntityT>[]): this;};
class Link
class Link<EntityT extends Entity, LinkedEntityT extends Entity = any> implements EntityIdentifiable<EntityT> {}
Represents a navigation property of an OData entity.
OData is a relational data model, i.e. entities can be related to one another. For example, BusinessPartner is in a 1:n relation with BusinessPartnerAddress and in a 1:1 relation with Customer. Like normal properties, navigation properties can be used for selecting (expanding) and filtering. For example, when constructing a query on the BusinessPartner entity, an instance of
Link<BusinessPartner, Customer>
can be passed as argument to the select function, e.g.BusinessPartner.TO_CUSTOMER
.NOTE: Due to historical development the Link and its extensions are used in the following way: OData v2 entity: 1:N is a [[Link]], 1:0..1 is a [[OneToOneLink]] OData v4 entity: 1:N is a [[OneToManyLink]], 1:0..1 is a [[OneToOneLink]]
See also: [[Selectable]]
constructor
constructor( _fieldName: string, _entityConstructor: Constructable<EntityT, unknown>, _linkedEntity: Constructable<LinkedEntityT, unknown>);
Creates an instance of Link.
Parameter _fieldName
Name of the linking field to be used in the OData request.
Parameter _entityConstructor
Constructor type of the entity the field belongs to
Parameter _linkedEntity
Constructor type of the linked entity
property selects
readonly selects: Selectable<LinkedEntityT>[];
Deprecated
Since v1.21.0. Use [[_selects]] directly. List of selectables on the linked entity.
method clone
static clone: <EntityT1 extends Entity, LinkedEntityT1 extends Entity>( link: Link<EntityT1, LinkedEntityT1>) => Link<EntityT1, LinkedEntityT1>;
Parameter link
Link to be cloned
Returns
Newly created link
Deprecated
Since v1.21.0. Use [[clone]] instead. Create a new link based on a given link.
Create a new link based on a given link.
Parameter link
Link to be cloned
Returns
Newly created link
method expand
expand: (...expands: Expandable<LinkedEntityT>[]) => this;
method select
select: (...selects: Selectable<LinkedEntityT>[]) => this;
Creates a selection on a linked entity. Has the same behavior as [[GetAllRequestBuilder.select | GetAllRequestBuilderV2.select]] and [[GetByKeyRequestBuilderV4.select]] but for linked entities.
See also, [[Selectable]]
Parameter selects
Selection of fields or links on a linked entity
Returns
The link itself, to facilitate method chaining
class MethodRequestBuilder
abstract class MethodRequestBuilder< RequestConfigT extends ODataRequestConfig = any> {}
Base class for all request builders.
constructor
constructor(requestConfig: ODataRequestConfig);
Creates an instance of MethodRequestBuilder.
Parameter requestConfig
Request configuration to initialize with.
property requestConfig
requestConfig: ODataRequestConfig;
method addCustomHeaders
addCustomHeaders: (headers: Record<string, string>) => this;
Add custom headers to the request. Existing headers will be overwritten.
Parameter headers
Key-value pairs denoting additional custom headers.
Returns
The request builder itself, to facilitate method chaining.
method addCustomQueryParameters
addCustomQueryParameters: (queryParameters: Record<string, string>) => this;
Add custom query parameters to the request. If a query parameter with the given name already exists it is overwritten.
Parameter queryParameters
Key-value pairs denoting additional custom query parameters to be set in the request.
Returns
The request builder itself, to facilitate method chaining
method addCustomRequestConfiguration
addCustomRequestConfiguration: ( requestConfiguration: Record<string, string>) => this;
Add a custom request configuration to the request. Typically, this is used when specifying a response type for downloading files. If the custom request configuration contains [[defaultDisallowedKeys | disallowed keys]], those will be ignored.
Parameter requestConfiguration
Key-value pairs denoting additional custom request configuration options to be set in the request.
Returns
The request builder itself, to facilitate method chaining.
method appendPath
appendPath: (...path: string[]) => Omit<this, 'execute'>;
Append the given path to the URL. This can be used for querying navigation properties of an entity. To execute a request with an appended path use
executeRaw
to avoid errors during deserialization. When using this, theexecute
method is omitted from the return type.Parameter path
Path to be appended.
Returns
The request builder itself without "execute" function, to facilitate method chaining.
method build
build: { (): ODataRequest<RequestConfigT>; ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions ): Promise<ODataRequest<RequestConfigT>>;};
method relativeUrl
relativeUrl: () => string;
Create the relative URL based on configuration of the given builder.
Returns
The relative URL for the request
method setCustomServicePath
setCustomServicePath: (servicePath: string) => this;
Replace the default service path with the given custom path. In case of the SAP S/4HANA APIs the servicePath defaults to
/sap/opu/odata/sap/<SERVICE_NAME>
and can be overwritten here.Parameter servicePath
Path to override the default with
Returns
The request builder itself, to facilitate method chaining
method skipCsrfTokenFetching
skipCsrfTokenFetching: () => this;
Skip fetching csrf token for this request, which is typically useful when the csrf token is not required.
Returns
The request builder itself, to facilitate method chaining.
method url
url: ( destination: Destination | DestinationNameAndJwt, options?: DestinationRetrievalOptions) => Promise<string>;
Create the URL based on configuration of the given builder.
Parameter destination
Destination to execute the request against.
Parameter options
Options to employ when fetching destinations.
Returns
Promise resolving to the URL for the request
method withCustomHeaders
withCustomHeaders: (headers: Record<string, string>) => this;
Parameter headers
Key-value pairs denoting additional custom headers.
Returns
The request builder itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[addCustomHeaders]] instead. Add custom headers to the request.
method withCustomQueryParameters
withCustomQueryParameters: (queryParameters: Record<string, string>) => this;
Parameter queryParameters
Key-value pairs denoting additional custom query parameters to be set in the request.
Returns
The request builder itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[addCustomQueryParameters]] instead. Add custom query parameters to the request.
method withCustomServicePath
withCustomServicePath: (servicePath: string) => this;
Parameter servicePath
Path to override the default with.
Returns
The request builder itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[setCustomServicePath]] instead. Replace the default service path with the given custom path. In case of the SAP S/4HANA APIs the servicePath defaults to
/sap/opu/odata/sap/<SERVICE_NAME>
and can be overwritten here.
class MethodRequestBuilderBase
abstract class MethodRequestBuilder< RequestConfigT extends ODataRequestConfig = any> {}
Base class for all request builders.
constructor
constructor(requestConfig: ODataRequestConfig);
Creates an instance of MethodRequestBuilder.
Parameter requestConfig
Request configuration to initialize with.
property requestConfig
requestConfig: ODataRequestConfig;
method addCustomHeaders
addCustomHeaders: (headers: Record<string, string>) => this;
Add custom headers to the request. Existing headers will be overwritten.
Parameter headers
Key-value pairs denoting additional custom headers.
Returns
The request builder itself, to facilitate method chaining.
method addCustomQueryParameters
addCustomQueryParameters: (queryParameters: Record<string, string>) => this;
Add custom query parameters to the request. If a query parameter with the given name already exists it is overwritten.
Parameter queryParameters
Key-value pairs denoting additional custom query parameters to be set in the request.
Returns
The request builder itself, to facilitate method chaining
method addCustomRequestConfiguration
addCustomRequestConfiguration: ( requestConfiguration: Record<string, string>) => this;
Add a custom request configuration to the request. Typically, this is used when specifying a response type for downloading files. If the custom request configuration contains [[defaultDisallowedKeys | disallowed keys]], those will be ignored.
Parameter requestConfiguration
Key-value pairs denoting additional custom request configuration options to be set in the request.
Returns
The request builder itself, to facilitate method chaining.
method appendPath
appendPath: (...path: string[]) => Omit<this, 'execute'>;
Append the given path to the URL. This can be used for querying navigation properties of an entity. To execute a request with an appended path use
executeRaw
to avoid errors during deserialization. When using this, theexecute
method is omitted from the return type.Parameter path
Path to be appended.
Returns
The request builder itself without "execute" function, to facilitate method chaining.
method build
build: { (): ODataRequest<RequestConfigT>; ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions ): Promise<ODataRequest<RequestConfigT>>;};
method relativeUrl
relativeUrl: () => string;
Create the relative URL based on configuration of the given builder.
Returns
The relative URL for the request
method setCustomServicePath
setCustomServicePath: (servicePath: string) => this;
Replace the default service path with the given custom path. In case of the SAP S/4HANA APIs the servicePath defaults to
/sap/opu/odata/sap/<SERVICE_NAME>
and can be overwritten here.Parameter servicePath
Path to override the default with
Returns
The request builder itself, to facilitate method chaining
method skipCsrfTokenFetching
skipCsrfTokenFetching: () => this;
Skip fetching csrf token for this request, which is typically useful when the csrf token is not required.
Returns
The request builder itself, to facilitate method chaining.
method url
url: ( destination: Destination | DestinationNameAndJwt, options?: DestinationRetrievalOptions) => Promise<string>;
Create the URL based on configuration of the given builder.
Parameter destination
Destination to execute the request against.
Parameter options
Options to employ when fetching destinations.
Returns
Promise resolving to the URL for the request
method withCustomHeaders
withCustomHeaders: (headers: Record<string, string>) => this;
Parameter headers
Key-value pairs denoting additional custom headers.
Returns
The request builder itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[addCustomHeaders]] instead. Add custom headers to the request.
method withCustomQueryParameters
withCustomQueryParameters: (queryParameters: Record<string, string>) => this;
Parameter queryParameters
Key-value pairs denoting additional custom query parameters to be set in the request.
Returns
The request builder itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[addCustomQueryParameters]] instead. Add custom query parameters to the request.
method withCustomServicePath
withCustomServicePath: (servicePath: string) => this;
Parameter servicePath
Path to override the default with.
Returns
The request builder itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[setCustomServicePath]] instead. Replace the default service path with the given custom path. In case of the SAP S/4HANA APIs the servicePath defaults to
/sap/opu/odata/sap/<SERVICE_NAME>
and can be overwritten here.
class NumberField
class NumberField<EntityT extends Entity> extends NumberFieldBase<EntityT, true> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a selectable property with a number value.
class NumberFieldBase
class NumberFieldBase< EntityT extends Entity, SelectableT extends boolean = false> extends EdmTypeField<EntityT, number, false, SelectableT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a property with a number value.
method greaterOrEqual
greaterOrEqual: (value: number) => Filter<EntityT, number>;
Creates an instance of Filter for this field and the given value using the operator 'ge', i.e.
>=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method greaterThan
greaterThan: (value: number) => Filter<EntityT, number>;
Creates an instance of Filter for this field and the given value using the operator 'gt', i.e.
>
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessOrEqual
lessOrEqual: (value: number) => Filter<EntityT, number>;
Creates an instance of Filter for this field and the given value using the operator 'le', i.e.
<=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessThan
lessThan: (value: number) => Filter<EntityT, number>;
Creates an instance of Filter for this field and the given value using the operator 'lt', i.e.
<
.Parameter value
Value to be used in the filter
Returns
The resulting filter
class NumberFilterFunction
class NumberFilterFunction<EntityT extends Entity> extends OrderableFilterFunction< EntityT, number> {}
Representation of a filter function, that returns a value of type number. This supports int, double and decimal values.
constructor
constructor( functionName: string, parameters: any[], edmType: 'Edm.Decimal' | 'Edm.Double' | 'Edm.Int32');
Creates an instance of NumberFilterFunction.
Parameter functionName
Name of the function that returns a numeric value
Parameter parameters
Representation of the parameters passed to the filter function
Parameter edmType
Type of the returned numeric value. This influences the formatting of the returned value.
class ODataActionImportRequestConfig
class ODataActionImportRequestConfig<ParametersT> extends ODataRequestConfig {}
constructor
constructor( defaultServicePath: string, actionImportName: string, parameters: ActionImportParameters<ParametersT>);
Creates an instance of ODataActionImportRequestConfig.
Parameter defaultServicePath
Default path of the service
Parameter actionImportName
The name of the action import.
Parameter parameters
Parameters of the action imports
property actionImportName
readonly actionImportName: string;
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
class ODataBatchChangeSet
class ODataBatchChangeSet< RequestT extends | CreateRequestBuilder<Entity> | UpdateRequestBuilder<Entity> | DeleteRequestBuilder<Entity>> implements BatchChangeSet<RequestT> {}
Deprecated
Since v1.30.0. Use [[BatchChangeSet]] directly Representation of a batch change set, which holds a collection of write operations.
constructor
constructor(requests: RequestT[], boundary?: string);
Create an instance of ODataBatchChangeSet.
Parameter requests
Requests to combine to one change set.
Parameter boundary
Boundary used in the multipart request.
property boundary
readonly boundary: string;
property changeSetId
readonly changeSetId: string;
Deprecated
Since v1.30.0. Use [[boundary]] instead.
property requests
readonly requests: RequestT[];
class ODataBatchChangeSetV2
class ODataBatchChangeSet< RequestT extends | CreateRequestBuilder<Entity> | UpdateRequestBuilder<Entity> | DeleteRequestBuilder<Entity>> implements BatchChangeSet<RequestT> {}
Deprecated
Since v1.30.0. Use [[BatchChangeSet]] directly Representation of a batch change set, which holds a collection of write operations.
constructor
constructor(requests: RequestT[], boundary?: string);
Create an instance of ODataBatchChangeSet.
Parameter requests
Requests to combine to one change set.
Parameter boundary
Boundary used in the multipart request.
property boundary
readonly boundary: string;
property changeSetId
readonly changeSetId: string;
Deprecated
Since v1.30.0. Use [[boundary]] instead.
property requests
readonly requests: RequestT[];
class ODataBatchChangeSetV4
class ODataBatchChangeSet< RequestT extends | CreateRequestBuilder<Entity> | UpdateRequestBuilder<Entity> | DeleteRequestBuilder<Entity>> implements BatchChangeSet<RequestT> {}
Deprecated
Since v1.30.0. Use [[BatchChangeSet]] directly Representation of a batch change set, which holds a collection of write operations.
constructor
constructor(requests: RequestT[], boundary?: string);
Create an instance of ODataBatchChangeSet.
Parameter requests
Requests to combine to one change set.
Parameter boundary
Boundary used in the multipart request.
property boundary
readonly boundary: string;
property changeSetId
readonly changeSetId: string;
Deprecated
Since v1.30.0. Use [[boundary]] instead.
property requests
readonly requests: RequestT[];
class ODataBatchConfig
class ODataBatchConfig extends ODataBatchRequestConfig {}
constructor
constructor(defaultServicePath: string, batchId: string);
Parameter defaultServicePath
The default OData service path
Parameter batchId
The batch id for building the header and the payload.
Deprecated
Since v1.21.0. Use superclass instead. Creates an instance of ODataBatchConfig.
class ODataBatchRequestBuilder
class ODataBatchRequestBuilder extends BatchRequestBuilder {}
Create a batch request to invoke multiple requests as a batch. The batch request builder accepts retrieve requests, i. e. [[GetAllRequestBuilder | getAll]] and [[GetByKeyRequestBuilder | getByKey]] requests and change sets, which in turn can contain [[CreateRequestBuilder | create]], [[UpdateRequestBuilder | update]] or [[DeleteRequestBuilder | delete]] requests. The retrieve and change sets will be executed in order, while the order within a change set can vary.
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<BatchResponse[]>;
Execute the given request and return the according promise. Please notice: The sub-requests may fail even the main request is successful.
Parameter destination
Targeted destination on which the request is performed.
Parameter options
Options to employ when fetching destinations.
Returns
Promise resolving to the requested data.
class ODataBatchRequestBuilderV2
class ODataBatchRequestBuilder extends BatchRequestBuilder {}
Create a batch request to invoke multiple requests as a batch. The batch request builder accepts retrieve requests, i. e. [[GetAllRequestBuilder | getAll]] and [[GetByKeyRequestBuilder | getByKey]] requests and change sets, which in turn can contain [[CreateRequestBuilder | create]], [[UpdateRequestBuilder | update]] or [[DeleteRequestBuilder | delete]] requests. The retrieve and change sets will be executed in order, while the order within a change set can vary.
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<BatchResponse[]>;
Execute the given request and return the according promise. Please notice: The sub-requests may fail even the main request is successful.
Parameter destination
Targeted destination on which the request is performed.
Parameter options
Options to employ when fetching destinations.
Returns
Promise resolving to the requested data.
class ODataBatchRequestBuilderV4
class ODataBatchRequestBuilder extends BatchRequestBuilder {}
Create a batch request to invoke multiple requests as a batch. The batch request builder accepts retrieve requests, i. e. [[GetAllRequestBuilder | getAll]] and [[GetByKeyRequestBuilder | getByKey]] requests and change sets, which in turn can contain [[CreateRequestBuilder | create]], [[UpdateRequestBuilder | update]] or [[DeleteRequestBuilder | delete]] requests. The retrieve and change sets will be executed in order, while the order within a change set can vary.
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<BatchResponse[]>;
Execute the given request and return the according promise. Please notice: The sub-requests may fail even the main request is successful.
Parameter destination
Targeted destination on which the request is performed.
Parameter options
Options to employ when fetching destinations.
Returns
Promise resolving to the requested data.
class ODataBatchRequestConfig
class ODataBatchRequestConfig extends ODataRequestConfig {}
constructor
constructor(defaultServicePath: string, boundary?: string);
Creates an instance of ODataBatchRequestConfig.
Parameter defaultServicePath
The default OData service path
Parameter boundary
Request boundary for separation of subrequests. Defaults to an autogenerated value.
property batchId
readonly batchId: string;
Deprecated
Since v1.30.0. Use [[boundary]] instead.
property boundary
readonly boundary: string;
property content_type_prefix
static readonly content_type_prefix: string;
Deprecated
Since v1.30.0.
property defaultServicePath
readonly defaultServicePath: string;
property subRequestPathType
subRequestPathType: BatchSubRequestPathType;
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
method withSubRequestPathType
withSubRequestPathType: (subRequestPathType: BatchSubRequestPathType) => void;
class ODataCreateRequestConfig
class ODataCreateRequestConfig<EntityT extends Entity> extends ODataRequestConfig {}
OData create request configuration for an entity type.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, oDataUri: ODataUri);
Creates an instance of ODataRequest.
Parameter _entityConstructor
Constructor type of the entity to create a configuration for
property childField
childField: Link<Entity, EntityT>;
Field that links the parent entity class to the child entity class.
property parentKeys
parentKeys: Record<string, any>;
Keys of the parent of the entity to create. Defined only when attempting to create child entities.
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
method resourcePathAsChild
protected resourcePathAsChild: () => string;
class ODataCreateRequestConfigLegacy
class ODataCreateRequestConfig< EntityT extends EntityBase> extends ODataCreateRequestConfigBase<EntityT> {}
Deprecated
Since v1.21.0. Use superclass instead. OData create request configuration for an entity type.
constructor
constructor(_entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of ODataRequest.
Parameter _entityConstructor
Constructor type of the entity to create a configuration for
class ODataDeleteRequestConfig
class ODataDeleteRequestConfig<EntityT extends Entity> extends ODataRequestConfig implements WithKeys, WithETag {}
OData delete request configuration for an entity type.
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, oDataUri: ODataUri);
Creates an instance of ODataDeleteRequestConfig.
Parameter entityConstructor
Constructor type of the entity to create a configuration for
property entityConstructor
readonly entityConstructor: Constructable<EntityT, unknown>;
property eTag
eTag: string;
property keys
keys: Record<string, any>;
property versionIdentifierIgnored
versionIdentifierIgnored: boolean;
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
class ODataDeleteRequestConfigLegacy
class ODataDeleteRequestConfig< EntityT extends EntityBase> extends ODataDeleteRequestConfigBase<EntityT> {}
Deprecated
Since v1.21.0. Use superclass instead. OData delete request configuration for an entity type.
constructor
constructor(_entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of ODataRequest.
Parameter _entityConstructor
Constructor type of the entity to create a configuration for
class ODataFunctionImportRequestConfig
class ODataFunctionImportRequestConfig< ParametersT> extends ODataFunctionImportRequestConfigBase<ParametersT> {}
constructor
constructor( method: RequestMethodType, defaultServicePath: string, functionImportName: string, parameters: FunctionImportParameters<ParametersT>, oDataUri: ODataUri);
Creates an instance of ODataFunctionImportRequestConfig.
Parameter method
HTTP method for the request
Parameter defaultServicePath
Default path of the service
Parameter functionImportName
The name of the function import.
Parameter parameters
Object containing the parameters with a value and additional meta information
Parameter oDataUri
ODataUri conversion interface at runtime either v2 or v4
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
class ODataFunctionImportRequestConfigLegacy
class ODataFunctionImportRequestConfig< ParametersT> extends ODataFunctionImportRequestConfigBase<ParametersT> {}
Deprecated
Since v1.21.0. Use superclass instead. OData function import request configuration for a set of parameters.
constructor
constructor( method: RequestMethodType, defaultServicePath: string, functionImportName: string, parameters: FunctionImportParameters<ParametersT>);
Creates an instance of ODataFunctionImportRequestConfig.
Parameter method
HTTP method for the request
Parameter defaultServicePath
Default path of the service
Parameter functionImportName
The name of the function import.
Parameter parameters
Object containing the parameters with a value and additional meta information
class ODataFunctionImportRequestConfigV2
class ODataFunctionImportRequestConfig< ParametersT> extends ODataFunctionImportRequestConfigBase<ParametersT> {}
constructor
constructor( method: RequestMethodType, defaultServicePath: string, functionImportName: string, parameters: FunctionImportParameters<ParametersT>, oDataUri: ODataUri);
Creates an instance of ODataFunctionImportRequestConfig.
Parameter method
HTTP method for the request
Parameter defaultServicePath
Default path of the service
Parameter functionImportName
The name of the function import.
Parameter parameters
Object containing the parameters with a value and additional meta information
Parameter oDataUri
ODataUri conversion interface at runtime either v2 or v4
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
class ODataFunctionImportRequestConfigV4
class ODataFunctionImportRequestConfig< ParametersT> extends ODataFunctionImportRequestConfigBase<ParametersT> {}
constructor
constructor( method: RequestMethodType, defaultServicePath: string, functionImportName: string, parameters: FunctionImportParameters<ParametersT>, oDataUri: ODataUri);
Creates an instance of ODataFunctionImportRequestConfig.
Parameter method
HTTP method for the request
Parameter defaultServicePath
Default path of the service
Parameter functionImportName
The name of the function import.
Parameter parameters
Object containing the parameters with a value and additional meta information
Parameter oDataUri
ODataUri conversion interface at runtime either v2 or v4
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
class ODataGetAllRequestConfig
class ODataGetAllRequestConfig<EntityT extends Entity> extends ODataRequestConfig implements WithGetAllRestrictions<EntityT> {}
OData getAll request configuration for an entity type.
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, oDataUri: ODataUri);
Creates an instance of ODataGetAllRequestConfig.
Parameter entityConstructor
Constructor type of the entity to create a configuration for
property entityConstructor
readonly entityConstructor: Constructable<EntityT, unknown>;
property expands
expands: Expandable<EntityT>[];
property filter
filter: Filterable<EntityT, any>;
property orderBy
orderBy: Orderable<EntityT>[];
property selects
selects: Selectable<EntityT>[];
property skip
skip: number;
property top
top: number;
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
class ODataGetAllRequestConfigLegacy
class ODataGetAllRequestConfig< EntityT extends EntityBase> extends ODataGetAllRequestConfigBase<EntityT> {}
Deprecated
Since v1.21.0. Use superclass instead. OData delete request configuration for an entity type.
constructor
constructor(_entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of ODataGetAllRequestConfig.
Parameter _entityConstructor
Constructor type of the entity to create a configuration for
class ODataGetByKeyRequestConfig
class ODataGetByKeyRequestConfig<EntityT extends Entity> extends ODataRequestConfig implements WithKeys, WithSelection<EntityT> {}
OData getByKey request configuration for an entity type.
constructor
constructor( entityConstructor: Constructable<EntityT, unknown>, oDataUri: ODataUri);
Creates an instance of ODataGetByKeyRequestConfig.
Parameter entityConstructor
Constructor type of the entity to create a configuration for
property entityConstructor
readonly entityConstructor: Constructable<EntityT, unknown>;
property expands
expands: Expandable<EntityT>[];
property keys
keys: Record<string, any>;
property selects
selects: Selectable<EntityT>[];
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
class ODataGetByKeyRequestConfigLegacy
class ODataGetByKeyRequestConfig< EntityT extends EntityBase> extends ODataGetByKeyRequestConfigBase<EntityT> {}
Deprecated
Since v1.21.0. Use superclass instead. OData delete request configuration for an entity type.
constructor
constructor(_entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of ODataGetByKeyRequestConfig.
Parameter _entityConstructor
Constructor type of the entity to create a configuration for
class ODataRequest
class ODataRequest<RequestConfigT extends ODataRequestConfig> {}
OData request configuration for an entity type.
constructor
constructor(config: ODataRequestConfig, _destination?: Destination);
Creates an instance of ODataRequest.
Parameter config
Configuration of the request.
Parameter _destination
Destination to setup the request against.
property config
config: ODataRequestConfig;
property destination
destination: Destination;
method customHeaders
customHeaders: () => Record<string, any>;
Get all custom headers.
Returns
Key-value pairs where the key is the name of a header property and the value is the respective value
method defaultHeaders
defaultHeaders: () => Record<string, any>;
Get all default headers. If custom headers are set, those take precedence.
Returns
Key-value pairs where the key is the name of a header property and the value is the respective value
method eTagHeaders
eTagHeaders: () => Record<string, any>;
Get the eTag related headers, e. g.
if-match
.Returns
Key-value pairs where the key is the name of a header property and the value is the respective value
method execute
execute: () => Promise<HttpResponse>;
Execute the given request and return the according promise.
Returns
Promise resolving to the requested data
method headers
headers: () => Promise<Record<string, any>>;
Create object containing all headers, including custom headers for the given request.
Returns
Key-value pairs where the key is the name of a header property and the value is the respective value
method needsAuthentication
needsAuthentication: () => boolean;
Specifies whether the destination needs a specific authentication or not.
Returns
A boolean value that specifies whether the destination needs authentication or not
method query
query: () => string;
Get query parameters as string. Leads with
?
if there are parameters to return.Returns
Query parameter string
method relativeResourceUrl
relativeResourceUrl: (includeServicePath?: boolean) => string;
Returns the relative URL to a specific OData resource.
Parameter includeServicePath
Whether or not to include the service path in the URL.
Returns
The relative URL of the resource.
method relativeServiceUrl
relativeServiceUrl: () => string;
Returns the service URL relative to the url of the destination for a given OData request.
Returns
The relative URL of the service the given entity belongs to.
method relativeUrl
relativeUrl: ( includeServicePath?: boolean, includeQueryParameters?: boolean) => string;
Constructs a URL relative to the destination.
Parameter includeServicePath
Whether or not to include the service path in the URL.
Parameter includeQueryParameters
Whether or not to include the query parameters in the URL.
Returns
The relative URL for the request.
method resourceUrl
resourceUrl: () => string;
Returns the URL to a specific OData .resource, i.e. the entity collection.
Returns
The URL of the resource
method serviceUrl
serviceUrl: () => string;
Returns the service URL for a given OData request.
Returns
The URL of the service the given entity belongs to
method url
url: () => string;
Constructs an absolute URL for the given request.
Returns
The absolute URL for the request.
class ODataRequestConfig
abstract class ODataRequestConfig {}
constructor
constructor( method: RequestMethodType, defaultServicePath: string, contentType: string);
Deprecated
Since v1.30.0.
constructor
constructor( method: RequestMethodType, defaultServicePath: string, defaultHeaders?: Record<string, any>);
property appendedPaths
readonly appendedPaths: string[];
property contentType
readonly contentType: any;
Deprecated
Since v1.30.0. Use [[defaultHeaders]] instead.
property customHeaders
customHeaders: Record<string, string>;
property customQueryParameters
customQueryParameters: Record<string, string>;
property customRequestConfiguration
customRequestConfiguration: Record<string, string>;
property customServicePath
customServicePath: string;
property defaultHeaders
readonly defaultHeaders: Record<string, any>;
property defaultServicePath
readonly defaultServicePath: string;
property fetchCsrfToken
fetchCsrfToken: boolean;
property method
method: RequestMethodType;
property payload
payload: string | Record<string, any>;
method addCustomHeaders
addCustomHeaders: (headers: Record<string, string>) => void;
Add custom headers to the request. This is useful in case you want to provide your own authorization headers for example.
Parameter headers
Key-value pairs where the key is the name of a header property and the value is the respective value
method addCustomQueryParameters
addCustomQueryParameters: (queryParameters: Record<string, string>) => void;
Add custom query parameters to the request. This is useful in case your OData service allows non-standard query parameters.
Parameter queryParameters
Key-value pairs where the key is the name of a query parameter and the value is the respective value
method addCustomRequestConfiguration
addCustomRequestConfiguration: ( requestConfiguration: Record<string, string>) => void;
Add custom request configuration to the request.
Parameter requestConfiguration
Key-value pairs where the key is the name of a request configuration and the value is the respective value
method appendPath
appendPath: (...path: string[]) => void;
method prependDollarToQueryParameters
protected prependDollarToQueryParameters: ( params: Record<string, any>) => Record<string, any>;
method queryParameters
abstract queryParameters: () => Record<string, any>;
method resourcePath
abstract resourcePath: () => string;
class ODataUpdateRequestConfig
class ODataUpdateRequestConfig<EntityT extends Entity> extends ODataRequestConfig implements WithKeys, WithETag {}
OData update request configuration for an entity type.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, oDataUri: ODataUri);
Creates an instance of ODataUpdateRequestConfig.
Parameter _entityConstructor
Constructor type of the entity to create a configuration for
property eTag
eTag: string;
property keys
keys: Record<string, any>;
property versionIdentifierIgnored
versionIdentifierIgnored: boolean;
method queryParameters
queryParameters: () => Record<string, any>;
method resourcePath
resourcePath: () => string;
method updateWithPut
updateWithPut: () => void;
class ODataUpdateRequestConfigLegacy
class ODataUpdateRequestConfig< EntityT extends EntityBase> extends ODataUpdateRequestConfigBase<EntityT> {}
Deprecated
Since v1.21.0. Use superclass instead. OData delete request configuration for an entity type.
constructor
constructor(_entityConstructor: Constructable<EntityT, unknown>);
Creates an instance of ODataUpdateRequestConfig.
Parameter _entityConstructor
Constructor type of the entity to create a configuration for
class OneToManyLink
class OneToManyLink< EntityT extends Entity, LinkedEntityT extends Entity> extends Link<EntityT, LinkedEntityT> {}
Represents a one to many relation for OData v4 entities. For OData v2 entities the [[Link]] is used to represent one to many relation. See [[Link]] for more information.
method clone
clone: () => this;
method filter
filter: ( ...expressions: ( | Filterable<LinkedEntityT> | OneToManyLink<LinkedEntityT, any> )[]) => this;
Create filter statements to be applied to the OData request based on the linked entity values.
Parameter filters
Filters based on the linked entity.
Returns
Newly created
FilterLink
.
method orderBy
orderBy: (...orderBy: Orderable<LinkedEntityT>[]) => this;
Add order-by statements to the request. *
Parameter orderBy
OrderBy statements to order the response by.
Returns
The request builder itself, to facilitate method chaining.
method skip
skip: (skip: number) => this;
Skip number of entities.
Parameter skip
Number of matching entities to skip. Useful for paging.
Returns
The request builder itself, to facilitate method chaining.
method top
top: (top: number) => this;
Number of returned entities.
Parameter top
Maximum number of entities to return in the response. Can be less, if less entities match the request.
Returns
The request builder itself, to facilitate method chaining.
class OneToOneLink
class OneToOneLink< EntityT extends Entity, LinkedEntityT extends Entity> extends Link<EntityT, LinkedEntityT> {}
Represents a link from one entity to one other linked entity (as opposed to a list of linked entities). In OData v2 a
OneToOneLink
can be used to filter and order a selection on an entity based on filters and orders on a linked entity.
property filters
filters: Filterable<LinkedEntityT, any>;
Filterables to apply to the given entity based on the linked entity.
property orderBys
orderBys: Order<LinkedEntityT>[];
List of criteria of the linked entity to order the given entity by with descending priority.
method clone
static clone: <EntityT1 extends Entity, LinkedEntityT1 extends Entity>( link: OneToOneLink<EntityT1, LinkedEntityT1>) => OneToOneLink<EntityT1, LinkedEntityT1>;
Parameter link
Link to be cloned
Returns
Newly created link
Deprecated
Since v1.21.0. Use [[clone]] instead. Create a new one to one link based on a given link.
method filter
filter: ( ...filters: Filterable<LinkedEntityT>[]) => FilterLink<EntityT, LinkedEntityT>;
Create filter statements to be applied to the OData request based on the linked entity values.
Parameter filters
Filters based on the linked entity.
Returns
Newly created [[FilterLink]].
method orderBy
orderBy: ( ...orderBy: Orderable<LinkedEntityT>[]) => OrderLink<EntityT, LinkedEntityT>;
Create order statements for the OData request based on the linked entity. The given statements have descending priority.
Example:
Entity.requestBuilder().getAll().orderBy(Entity.TO_LINKED_ENTITY.orderBy(asc(LinkedEntity.PROPERTY1), desc(LinkedEntity.PROPERTY2)));Parameter orderBy
Criteria to order by
Returns
Newly created order link
class OpenApiRequestBuilder
class OpenApiRequestBuilder<ResponseT = any> {}
Request builder for OpenAPI requests.
constructor
constructor( method: Method, pathPattern: string, parameters?: OpenApiRequestParameters);
Create an instance of
OpenApiRequestBuilder
.Parameter method
HTTP method of the request to be built.
Parameter pathPattern
Path for the request containing path parameter references as in the OpenAPI specification.
Parameter parameters
Query parameters and or body to pass to the request.
property method
method: Method;
method addCustomHeaders
addCustomHeaders: (headers: Record<string, string>) => this;
Add custom headers to the request. If a header field with the given name already exists it is overwritten.
Parameter headers
Key-value pairs denoting additional custom headers.
Returns
The request builder itself, to facilitate method chaining.
method addCustomRequestConfiguration
addCustomRequestConfiguration: ( requestConfiguration: Record<string, string>) => this;
Add custom request configuration to the request. Typically, this is used when specifying response type for downloading files. If the custom request configuration contains keys in this list [[defaultDisallowedKeys]], they will be removed.
Parameter requestConfiguration
Key-value pairs denoting additional custom request configuration options to be set in the request.
Returns
The request builder itself, to facilitate method chaining.
method execute
execute: ( destination: Destination | DestinationNameAndJwt, destinationOptions?: DestinationOptions) => Promise<ResponseT>;
Execute request and get the response data. Use this to conveniently access the data of a service without technical information about the response.
Parameter destination
Destination to execute the request against.
Parameter destinationOptions
Options to employ when fetching destinations.
Returns
A promise resolving to the requested return type.
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, destinationOptions?: DestinationOptions) => Promise<HttpResponse>;
Execute request and get a raw HttpResponse, including all information about the HTTP response. This especially comes in handy, when you need to access the headers or status code of the response.
Parameter destination
Destination to execute the request against.
Parameter destinationOptions
Options to employ when fetching destinations.
Returns
A promise resolving to an HttpResponse.
method skipCsrfTokenFetching
skipCsrfTokenFetching: () => this;
Skip fetching csrf token for this request, which is typically useful when the csrf token is not required.
Returns
The request builder itself, to facilitate method chaining.
class Order
class Order<EntityT extends Entity> implements EntityIdentifiable<EntityT> {}
OData queries take this to determine the order of results.
constructor
constructor(_fieldName: string, orderType?: OrderType);
Creates an instance of Order.
Parameter _fieldName
Field to order by
Parameter orderType
Type of ordering, can be 'asc' for ascending or 'desc' for descending
property orderType
orderType: OrderType;
class OrderableEdmTypeField
class OrderableEdmTypeField< EntityT extends Entity, EdmT extends EdmTypeShared<'any'>, NullableT extends boolean = false, SelectableT extends boolean = false> extends EdmTypeField<EntityT, EdmT, NullableT, SelectableT> {}
[[EdmTypeField]], that represents a property with an EDM type, that can be compared with
greaterThan
,greaterOrEqual
,lessThan
andlessOrEqual
.
method greaterOrEqual
greaterOrEqual: ( value: FieldTypeByEdmType<EdmT, NullableT>) => Filter<EntityT, FieldTypeByEdmType<EdmT, NullableT>>;
Creates an instance of Filter for this field and the given value using the operator 'ge', i.e.
>=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method greaterThan
greaterThan: ( value: FieldTypeByEdmType<EdmT, NullableT>) => Filter<EntityT, FieldTypeByEdmType<EdmT, NullableT>>;
Creates an instance of Filter for this field and the given value using the operator 'gt', i.e.
>
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessOrEqual
lessOrEqual: ( value: FieldTypeByEdmType<EdmT, NullableT>) => Filter<EntityT, FieldTypeByEdmType<EdmT, NullableT>>;
Creates an instance of Filter for this field and the given value using the operator 'le', i.e.
<=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessThan
lessThan: ( value: FieldTypeByEdmType<EdmT, NullableT>) => Filter<EntityT, FieldTypeByEdmType<EdmT, NullableT>>;
Creates an instance of Filter for this field and the given value using the operator 'lt', i.e.
<
.Parameter value
Value to be used in the filter
Returns
The resulting filter
class OrderableFilterFunction
abstract class OrderableFilterFunction< EntityT extends Entity, ReturnT extends FieldType> extends FilterFunction<EntityT, ReturnT> {}
Representation of a filter function, that returns a value of an orderable type. This supports int, double and decimal values.
constructor
constructor( functionName: string, parameters: any[], edmType: EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4);
Creates an instance of OrderableFilterFunction.
Parameter functionName
Name of the function that returns a numeric value
Parameter parameters
Representation of the parameters passed to the filter function
Parameter edmType
Type of the returned numeric value. This influences the formatting of the returned value.
method greaterOrEqual
greaterOrEqual: (value: ReturnT) => Filter<EntityT, ReturnT>;
Creates an instance of Filter for this filter function and the given value using the operator 'ge', i.e.
>=
.Parameter value
Value to be used in the filter
Parameter edmType
EDM type of the field to filter on
Returns
The resulting filter
method greaterThan
greaterThan: (value: ReturnT) => Filter<EntityT, ReturnT>;
Creates an instance of Filter for this filter function and the given value using the operator 'gt', i.e.
>
.Parameter value
Value to be used in the filter
Parameter edmType
EDM type of the field to filter on
Returns
The resulting filter
method lessOrEqual
lessOrEqual: (value: ReturnT) => Filter<EntityT, ReturnT>;
Creates an instance of Filter for this filter function and the given value using the operator 'le', i.e.
<=
.Parameter value
Value to be used in the filter
Parameter edmType
EDM type of the field to filter on
Returns
The resulting filter
method lessThan
lessThan: (value: ReturnT) => Filter<EntityT, ReturnT>;
Creates an instance of Filter for this filter function and the given value using the operator 'lt', i.e.
<
.Parameter value
Value to be used in the filter
Parameter edmType
EDM type of the field to filter on
Returns
The resulting filter
class OrderLink
class OrderLink<EntityT extends Entity, LinkedEntityT extends Entity> {}
Link to represent an order by on a linked entity.
constructor
constructor( link: Link<EntityT, LinkedEntityT>, orderBy: Orderable<LinkedEntityT>[]);
Creates an instance of OrderLink.
Parameter link
Link to the entity to order by
Parameter orderBy
A list of orderables based on the linked entity
property entityType
readonly entityType: Entity;
property link
link: Link<EntityT, LinkedEntityT>;
property linkedEntityType
readonly linkedEntityType: Entity;
property orderBy
orderBy: Orderable<LinkedEntityT>[];
class RequestBuilder
abstract class RequestBuilder<EntityT extends Entity> implements EntityIdentifiable<EntityT> {}
method forEntity
static forEntity: <EntityCT extends Constructable<Entity, unknown>>( entity: EntityCT) => EntityBasedRequestBuilder<EntityCT>;
class StringField
class StringField<EntityT extends Entity> extends StringFieldBase<EntityT, true> {}
Deprecated
Since v1.47.0. Use [[EdmTypeField]] instead. Represents a selectable property with a string value.
class StringFilterFunction
class StringFilterFunction<EntityT extends Entity> extends FilterFunction< EntityT, string> {}
Representation of a filter function, that returns a value of type string.
constructor
constructor(functionName: string, parameters: any[]);
Creates an instance of StringFilterFunction.
Parameter functionName
Name of the function that returns a string value
Parameter parameters
Representation of the parameters passed to the filter function
class TimeField
class TimeField<EntityT extends Entity> extends TimeFieldBase<EntityT, true> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a selectable property with a time value.
class TimeFieldBase
class TimeFieldBase< EntityT extends Entity, SelectableT extends boolean = false> extends EdmTypeField<EntityT, Time, false, SelectableT> {}
Deprecated
Since v1.47.0. Use [[OrderableEdmTypeField]] instead. Represents a property with a time value.
method greaterOrEqual
greaterOrEqual: (value: Time) => Filter<EntityT, Time>;
Creates an instance of Filter for this field and the given value using the operator 'ge', i.e.
>=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method greaterThan
greaterThan: (value: Time) => Filter<EntityT, Time>;
Creates an instance of Filter for this field and the given value using the operator 'gt', i.e.
>
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessOrEqual
lessOrEqual: (value: Time) => Filter<EntityT, Time>;
Creates an instance of Filter for this field and the given value using the operator 'le', i.e.
<=
.Parameter value
Value to be used in the filter
Returns
The resulting filter
method lessThan
lessThan: (value: Time) => Filter<EntityT, Time>;
Creates an instance of Filter for this field and the given value using the operator 'lt', i.e.
<
.Parameter value
Value to be used in the filter
Returns
The resulting filter
class UnaryFilter
class UnaryFilter<EntityT extends Entity> {}
constructor
constructor(singleOperand: Filterable<EntityT, any>, operator: string);
property operator
operator: string;
property singleOperand
singleOperand: Filterable<EntityT, any>;
class UpdateRequestBuilder
class UpdateRequestBuilder<EntityT extends Entity> extends UpdateRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create OData query to update an entity.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity);
Creates an instance of UpdateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be updated
Parameter _entity
Entity to be updated
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<EntityT>;
Executes the query.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the entity once it was updated
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse | undefined>;
Execute request and return an [[HttpResponse]]. The request is only executed if some properties of the entity are modified.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]] when the request is executed or
undefined
otherwise.
class UpdateRequestBuilderBase
abstract class UpdateRequestBuilder<EntityT extends Entity> extends MethodRequestBuilder<ODataUpdateRequestConfig<EntityT>> implements EntityIdentifiable<EntityT> {}
Abstract class to create OData query to update an entity containing methods shared for OData v2 and v4.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity, oDataUri: ODataUri, entitySerializer: EntitySerializer<any, any>, extractODataEtag: (json: Record<string, any>) => string | undefined, payloadManipulator: (body: Record<string, any>) => Record<string, any>);
Creates an instance of UpdateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be updated
Parameter _entity
Entity to be updated
Parameter oDataUri
Collection of URI conversion methods
Parameter entitySerializer
Entity serializer
Parameter extractODataEtag
Extractor for ETag from payload
Parameter payloadManipulator
Manipulator for the payload.
property entity
readonly entity: Entity;
property entitySerializer
readonly entitySerializer: EntitySerializer<any, any>;
property extractODataEtag
readonly extractODataEtag: (json: Record<string, any>) => string | undefined;
property oDataUri
readonly oDataUri: ODataUri;
property payloadManipulator
readonly payloadManipulator: (body: Record<string, any>) => Record<string, any>;
method executeRequest
protected executeRequest: ( request: ODataRequest<ODataUpdateRequestConfig<EntityT>>) => Promise<EntityT>;
Executes the query.
Parameter request
Request object to be executed.
Returns
A promise resolving to the entity once it was updated.
method executeRequestRaw
protected executeRequestRaw: ( request: ODataRequest<ODataUpdateRequestConfig<EntityT>>) => Promise<HttpResponse>;
method getPayload
protected getPayload: () => Record<string, any>;
method ignoredFields
ignoredFields: { (...fields: Selectable<EntityT>[]): this; (fields: Selectable<EntityT>[]): this;};
Parameter fields
Enumeration of the fields to be ignored.
Returns
The entity itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[setIgnoredFields]] instead. Specifies entity fields to ignore by the update request.
method ignoreVersionIdentifier
ignoreVersionIdentifier: () => this;
Instructs the request to force an overwrite of the entity by sending an 'If-Match: *' header instead of sending the ETag version identifier.
Returns
The request itself to ease chaining while executing the request.
method isEmptyObject
protected isEmptyObject: (obj: any) => boolean;
method prepare
prepare: () => this;
Returns
the builder itself
Deprecated
Since v1.29.0. This method should never be called, it has severe side effects. Builds the payload and the entity keys of the query.
method replaceWholeEntityWithPut
replaceWholeEntityWithPut: () => this;
Explicitly configure 'PUT' as the method of the update request. By default, only the properties that have changed compared to the last known remote state are sent using 'PATCH', while with 'PUT', the whole entity is sent.
Returns
The entity itself, to facilitate method chaining.
method requiredFields
requiredFields: { (...fields: Selectable<EntityT>[]): this; (fields: Selectable<EntityT>[]): this;};
Parameter fields
Enumeration of the fields to be required.
Returns
The entity itself, to facilitate method chaining.
Deprecated
Since version 1.34.0 Use [[setRequiredFields]] instead. Specifies required entity keys for the update request.
method setIgnoredFields
setIgnoredFields: { (...fields: Selectable<EntityT>[]): this; (fields: Selectable<EntityT>[]): this;};
Sets entity fields to ignore by the update request.
Parameter fields
Enumeration of the fields to be ignored.
Returns
The entity itself, to facilitate method chaining.
method setRequiredFields
setRequiredFields: { (...fields: Selectable<EntityT>[]): this; (fields: Selectable<EntityT>[]): this;};
Sets required entity keys for the update request.
Parameter fields
Enumeration of the fields to be required.
Returns
The entity itself, to facilitate method chaining.
method setVersionIdentifier
setVersionIdentifier: (etag: string) => this;
Sets ETag version identifier of the entity to update.
Parameter etag
Custom ETag version identifier to be sent in the header of the request.
Returns
The request itself to ease chaining while executing the request.
method withCustomVersionIdentifier
withCustomVersionIdentifier: (etag: string) => this;
Parameter etag
Custom ETag version identifier to be sent in the header of the request.
Returns
The request itself to ease chaining while executing the request.
Deprecated
Since version 1.34.0 Use [[setVersionIdentifier]] instead. Specifies a custom ETag version identifier of the entity to update.
class UpdateRequestBuilderV2
class UpdateRequestBuilder<EntityT extends Entity> extends UpdateRequestBuilderBase<EntityT> implements EntityIdentifiable<EntityT> {}
Create OData query to update an entity.
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity);
Creates an instance of UpdateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be updated
Parameter _entity
Entity to be updated
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<EntityT>;
Executes the query.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the entity once it was updated
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse | undefined>;
Execute request and return an [[HttpResponse]]. The request is only executed if some properties of the entity are modified.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]] when the request is executed or
undefined
otherwise.
class UpdateRequestBuilderV4
class UpdateRequestBuilder< EntityT extends Entity> extends UpdateRequestBuilderBase<EntityT> {}
constructor
constructor( _entityConstructor: Constructable<EntityT, unknown>, _entity: Entity);
Creates an instance of UpdateRequestBuilder.
Parameter _entityConstructor
Constructor type of the entity to be updated
Parameter _entity
Entity to be updated
method execute
execute: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<EntityT>;
Executes the query.
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to the entity once it was updated
method executeRaw
executeRaw: ( destination: Destination | DestinationNameAndJwt, options?: DestinationOptions) => Promise<HttpResponse>;
Execute request and return an [[HttpResponse]].
Parameter destination
Destination to execute the request against
Parameter options
Options to employ when fetching destinations
Returns
A promise resolving to an [[HttpResponse]].
Interfaces
interface AllDestinations
interface AllDestinations {}
property provider
provider: DestinationsByType;
property subscriber
subscriber: DestinationsByType;
interface AuthAndExchangeTokens
interface AuthAndExchangeTokens {}
property authHeaderJwt
authHeaderJwt: string;
property exchangeHeaderJwt
exchangeHeaderJwt?: string;
property exchangeTenant
exchangeTenant?: string;
interface CacheEntry
interface CacheEntry<T> {}
interface CachingOptions
interface CachingOptions {}
property isolationStrategy
isolationStrategy?: IsolationStrategy;
The isolation strategy used for caching destinations. For the available options, see [[IsolationStrategy]]. By default, IsolationStrategy.Tenant is set.
property useCache
useCache?: boolean;
A boolean value that indicates whether to read destinations from cache.
interface ClientCredentials
interface ClientCredentials {}
interface ClientCredentialsResponse
interface ClientCredentialsResponse {}
property access_token
access_token: string;
property expires_in
expires_in: number;
The number of seconds until the access token expires.
property jti
jti: string;
property scope
scope: string;
property token_type
token_type: string;
interface CompleteDecodedJWT
interface CompleteDecodedJWT extends RegisteredJWTClaims {}
Deprecated
Since v1.46.0. Use
Jwt
instead. Interface to represent header and payload of a JWT.
interface ComplexTypeNamespace
interface ComplexTypeNamespace<ComplexT> {}
interface Constructable
interface Constructable<EntityT extends Entity, EntityTypeT = unknown> {}
method builder
builder: () => EntityBuilderType<EntityT, EntityTypeT>;
method customField
customField: ( fieldName: string, isNullable?: boolean) => CustomField<EntityT, boolean>;
method requestBuilder
requestBuilder: () => RequestBuilder<EntityT>;
construct signature
new (...args: any[]): EntityT;
interface DecodedJWT
interface DecodedJWT extends RegisteredJWTClaims {}
Deprecated
Since v1.20.0. Use [[JWTPayload]] if you want to represent the decoded JWT payload or [[CompleteDecodedJWT]] for the full decoded object. Interface to represent the payload of a JWT.
index signature
[otherKey: string]: any;
interface Destination
interface Destination {}
A resolved destination containing information needed to execute requests, such as the system URL.
You can create a destination as a local object when supplying all necessary information, or it could be retrieved from the destination service on SAP Business Technology Platform (via [[DestinationNameAndJwt]]). When creating a local object representing a destination, you need to supply at least the [[url]] and, if required by the target system, valid credentials with [[username]] and [[password]].
property authentication
authentication?: AuthenticationType;
Type of authentication to use.
Defaults to
NoAuthentication
, unless [[username]] and [[password]] are provided, in which case the default isBasicAuthentication
.
property authTokens
authTokens?: DestinationAuthToken[] | null;
Authentication tokens returned from destination service on SAP Business Technology Platform.
property certificates
certificates?: DestinationCertificate[];
Array of certificates used for authentication type ClientCertificateAuthentication.
property clientId
clientId?: string;
Client Id used to retrieve access token for "OAuth2ClientCredentials", "OAuth2UserTokenExchange" and "OAuth2JWTBearer" authentication.
property clientSecret
clientSecret?: string;
Client Secret used to retrieve access token for "OAuth2ClientCredentials", "OAuth2UserTokenExchange" and "OAuth2JWTBearer" authentication.
property cloudConnectorLocationId
cloudConnectorLocationId?: string;
Location ID of the Cloud Connector to be used for connection to an On-Premise system. Optional. Corresponds to property "CloudConnectorLocationId" in the additional properties of a destination.
property forwardAuthToken
forwardAuthToken?: boolean;
If set to true the auth token provided to the request execution is forwarded to the destination target.
property headers
headers?: Record<string, any>;
Additional headers to be used for calls against the destination, originally defined by
URL.headers.<header-name>
. The keys of this object denote the names of the headers and the values their values.
property isTestDestination
isTestDestination?: boolean;
Flag indicating whether the destination is for test purpose. Should be "undefined" or "false" for non-mocked destinations.
property isTrustingAllCertificates
isTrustingAllCertificates?: boolean;
Flag indicating whether all certificates should be accepted when communicating with the destination. Should not be "true" in production.
property keyStoreName
keyStoreName?: string;
Name of the key store/certificate to be used for ClientCertificateAuthentication.
property keyStorePassword
keyStorePassword?: string;
Password of the key store/certificate to be used for ClientCertificateAuthentication.
property name
name?: string | null;
Name of the destination retrieved from SAP Business Technology Platform.
property origin
origin?: DestinationOrigin;
Deprecated
Since v1.0.1. Origin of the destination in a multi-tenant setup on SAP Business Technology Platform (either from provider or subscriber account), optional.
property originalProperties
originalProperties?: { [key: string]: any;};
Further properties of the destination as defined in destination service on SAP Business Technology Platform, possibly empty.
property password
password?: string | null;
Password to use for basic authentication, optional if other means of authentication shall be used.
property proxyConfiguration
proxyConfiguration?: ProxyConfiguration;
ProxyConfiguration for on-premise connectivity and http(s) web proxies. Is present if proxyType of the destination equals "OnPremise" or environment variables [http_proxy] or [https_proxy] are set See [[ProxyConfiguration]].
property proxyType
proxyType?: DestinationProxyType;
Proxy type to specify whether the target resides on-premise (not used).
property queryParameters
queryParameters?: Record<string, any>;
Additional query parameters to be used for calls against the destination, originally defined by
URL.queries.<query-parameter-name>
. The keys of this object denote the names of the query parameters and the values their values.
property sapClient
sapClient?: string | undefined | null;
Client to target in an SAP system, will be added as HTTP header
sap-client
if set.
property systemUser
systemUser?: string;
System user to be used for OAuth2SAMLBearerAssertion authentication type.
property tokenServicePassword
tokenServicePassword?: string;
Password for tokenServiceUser (if required).
property tokenServiceUrl
tokenServiceUrl?: string;
URL to retrieve access token for "OAuth2ClientCredentials", "OAuth2UserTokenExchange" and "OAuth2JWTBearer" authentication.
property tokenServiceUser
tokenServiceUser?: string;
User for basic authentication to OAuth server (if required).
property type
type?: 'HTTP' | 'LDAP' | 'MAIL' | 'RFC';
The type of the destination, defaults to 'HTTP'. The SAP Cloud SDK only understands destinations of type 'HTTP'.
property url
url: string;
Base URL for calls to this destination. The URL has to define the protocol, like
http://
orhttps://
, and a host. The path for requests against this destination will be appended to the path defined in the URL as a new path segment.
property username
username?: string | null;
Username to use for basic authentication, optional if other means of authentication shall be used.
interface DestinationAccessorOptions
interface DestinationAccessorOptions {}
property iss
iss?: string;
This property is only considered in case no userJwt is provided. It is meant for situations where you do not have a token e.g. background processes. The value for iss is the issuer field of a JWT e.g. https://.localhost:8080/uaa/oauth/token'
ATTENTION: If this property is used, no validation of the provided subdomain value is done. This is differs from how the
userJwt
is handled. So be careful that the used value is not manipulated and breaks the tenant isolation of your application.
property selectionStrategy
selectionStrategy?: DestinationSelectionStrategy;
Method that implements the selection strategy of the retrieved destination. Uses [[subscriberFirst]] per default. Use the selector helper [[DestinationSelectionStrategies]] to select the appropriate selection strategy.
property userJwt
userJwt?: string;
The user token of the current request.
interface DestinationAuthToken
interface DestinationAuthToken {}
Represents authentication token returned from destination service.
property error
error: string | null;
property expiresIn
expiresIn: string;
property http_header
http_header: { key: string; value: string;};
property type
type: string;
property value
value: string;
interface DestinationCachingOptions
interface DestinationCachingOptions {}
Deprecated
Since version 1.16.0. Use [[CachingOptions]] instead.
property isolationStrategy
isolationStrategy?: IsolationStrategy;
The isolation strategy used for caching destinations. For the available options, see [[IsolationStrategy]]. By default, IsolationStrategy.Tenant is set.
property useCache
useCache?: boolean;
A boolean value that indicates whether to read destinations from cache.
interface DestinationCertificate
interface DestinationCertificate {}
Represents a certificate attached to a destination.
interface DestinationConfiguration
interface DestinationConfiguration {}
Configuration of a destination as it is available through the destination service.
property 'sap-client'
'sap-client'?: string;
property Authentication
Authentication?: AuthenticationType;
property clientId
clientId?: string;
property clientSecret
clientSecret?: string;
property Name
Name?: string;
property Password
Password?: string;
property ProxyType
ProxyType?: string;
property SystemUser
SystemUser?: string;
property tokenServicePass
tokenServicePass?: string;
property tokenServiceURL
tokenServiceURL?: string;
property tokenServiceURLType
tokenServiceURLType?: 'Common' | 'Dedicated;';
property tokenServiceUsername
tokenServiceUsername?: string;
property TrustAll
TrustAll?: string;
property Type
Type?: 'HTTP' | 'LDAP' | 'MAIL' | 'RFC';
property URL
URL: string;
property User
User?: string;
index signature
[key: string]: any;
interface DestinationForServiceBindingsOptions
interface DestinationForServiceBindingsOptions {}
Options to customize the behavior of [[destinationForServiceBinding]].
property transformationFn
transformationFn?: (serviceBinding: ServiceBinding) => Destination;
Custom transformation function to control how a [[Destination]] is built from the given [[ServiceBinding]].
interface DestinationHttpRequestConfig
interface DestinationHttpRequestConfig {}
property baseURL
baseURL: string;
property headers
headers: Record<string, string>;
property httpAgent
httpAgent?: http.Agent;
property httpsAgent
httpsAgent?: http.Agent;
property params
params?: Record<string, string>;
interface DestinationJson
interface DestinationJson {}
Destination configuration alongside authtokens and certificates.
property authTokens
authTokens?: Record<string, string>[];
property certificates
certificates?: Record<string, string>[];
property destinationConfiguration
destinationConfiguration: DestinationConfiguration;
index signature
[key: string]: any;
interface DestinationNameAndJwt
interface DestinationNameAndJwt {}
Declaration of a destination to be retrieved from an environment variable or from the destination service on SAP Business Technology Platform.
Use an object of this interface to specify which destination shall be used when executing a request. The destination will be retrieved via its [[DestinationNameAndJwt.destinationName]] according to the following algorithm: 1. If a destination of this [[DestinationNameAndJwt.destinationName]] is defined in the environment variable
destinations
(if available), it will be converted into a [[Destination]] and used for the request. 2. Otherwise, the destination service on SAP Business Technology Platform is queried for a destination with the given [[DestinationNameAndJwt.destinationName]], using the access token provided as value of property [[jwt]].
property destinationName
destinationName: string;
Name of the destination to retrieve, mandatory.
property jwt
jwt?: string;
An access token for the XSUAA service on SAP Business Technology Platform, provided as a JSON Web Token, only mandatory when destination shall be retrieved from destination service on SAP Business Technology Platform.
interface DestinationsByType
interface DestinationsByType {}
property instance
instance: Destination[];
property subaccount
subaccount: Destination[];
interface EntityDeserializer
interface EntityDeserializer<EntityT extends Entity = any> {}
Interface representing the return type of the builder function [[entityDeserializer]]
property deserializeComplexType
deserializeComplexType: ( json: Record<string, any>, complexType: ComplexTypeNamespace<any>) => any;
property deserializeEntity
deserializeEntity: ( json: any, entityConstructor: Constructable<EntityT>, requestHeader?: any) => EntityT;
interface EntityIdentifiable
interface EntityIdentifiable<T extends Entity> {}
interface EntitySerializer
interface EntitySerializer< EntityT extends Entity = any, ComplexTypeNamespaceT extends ComplexTypeNamespace<any> = any> {}
Interface representing the return type of the builder function [[entitySerializer]].
property serializeComplexType
serializeComplexType: ( fieldValue: any, complexTypeNameSpace: ComplexTypeNamespaceT) => any;
property serializeEntity
serializeEntity: ( entity: EntityT, entityConstructor: Constructable<EntityT>, diff?: boolean) => Record<string, any>;
property serializeEntityNonCustomFields
serializeEntityNonCustomFields: ( entity: EntityT, entityConstructor: Constructable<EntityT>) => Record<string, any>;
interface ErrorResponse
interface ErrorResponse {}
interface FieldOptions
interface FieldOptions< NullableT extends boolean = false, SelectableT extends boolean = false> {}
Optional settings for fields.
property isNullable
isNullable?: NullableT;
Whether the value of the field can be
null
.
property isSelectable
isSelectable?: SelectableT;
Whether the field can be reference in a
.select
statement.
interface GetFilter
interface GetFilter<EntityT extends Entity = any> {}
Interface representing the return of the getFilter creator [[createGetFilter]].
property getFilter
getFilter: GetFilterType<EntityT>;
interface HttpAgentConfig
interface HttpAgentConfig {}
Interface for the http-agent within the Axios request config.
property httpAgent
httpAgent: http.Agent;
interface HttpReponse
interface HttpReponse extends KnownHttpResponseFields {}
Deprecated
Since v1.6.4. Use [[HttpResponse]] instead.
index signature
[otherKey: string]: any;
interface HttpRequestConfig
interface HttpRequestConfig {}
This interface is compatible with AxiosRequestConfig.
property data
data?: any;
property headers
headers?: any;
property httpAgent
httpAgent?: any;
property httpsAgent
httpsAgent?: any;
property maxContentLength
maxContentLength?: number;
property method
method: Method;
property params
params?: Record<string, string>;
property proxy
proxy?: false;
property timeout
timeout?: number;
property url
url?: string;
index signature
[key: string]: any;
interface HttpRequestOptions
interface HttpRequestOptions {}
property fetchCsrfToken
fetchCsrfToken?: boolean;
A boolean value that indicates whether to fetch the csrf token for a non-get request. For a get request, the csrf token is not fetched and this option is ignored. By default, the value is
false
.
interface HttpResponse
interface HttpResponse extends KnownHttpResponseFields {}
index signature
[otherKey: string]: any;
interface HttpsAgentConfig
interface HttpsAgentConfig {}
Interface for the https-agent within the Axios request config.
property httpsAgent
httpsAgent: http.Agent;
interface JWTHeader
interface JWTHeader {}
Deprecated
Since v1.46.0. Use
JwtHeader
instead. Interface to represent the basic properties of a JWT header.
interface JwtPair
interface JwtPair {}
Object holding a decoded JWT payload received by decoding the encoded string also in this object.
interface JWTPayload
interface JWTPayload extends RegisteredJWTClaims {}
Deprecated
Since v1.46.0. Use
JwtPayload
instead. Interface to represent the payload of a JWT.
index signature
[otherKey: string]: any;
interface ODataUri
interface ODataUri {}
Union of necessary methods for the OData URI conversion. In v2/uri-conversion/odata-uri.ts and v4/uri-conversion/odata-uri.ts the instance for v2 and v4 are created.
method convertToUriFormat
convertToUriFormat: ( value: any, edmType: EdmTypeShared<'v2'> | EdmTypeShared<'v4'>) => string;
method getEntityKeys
getEntityKeys: <EntityT extends Entity>( entity: EntityT, entityConstructor: Constructable<EntityT>) => Record<string, any>;
method getExpand
getExpand: <EntityT extends Entity>( selects: Selectable<EntityT>[], expands: Expandable<EntityT>[], entityConstructor: Constructable<EntityT>) => Partial<{ expand: string }>;
method getFilter
getFilter: <EntityT extends Entity>( filter: Filterable<EntityT>, entityConstructor: Constructable<EntityT>) => Partial<{ filter: string }>;
method getOrderBy
getOrderBy: <EntityT extends Entity>( orderBy: Orderable<EntityT>[]) => Partial<{ orderby: string }>;
method getResourcePathForKeys
getResourcePathForKeys: <EntityT extends Entity>( keys: Record<string, FieldType>, entityConstructor: Constructable<EntityT>) => string;
method getSelect
getSelect: <EntityT extends Entity>( selects: Selectable<EntityT>[]) => Partial<{ select: string }>;
interface PropertyMetadata
interface PropertyMetadata<ComplexT = any> {}
property isCollection
isCollection?: boolean;
property name
name: keyof ComplexT;
property originalName
originalName: string;
property type
type: EdmTypeShared<'any'> | ComplexTypeNamespace<any>;
interface ProxyConfiguration
interface ProxyConfiguration {}
Proxy settings for connecting to an on-premise destination via connectivity proxy or web proxies. The ProxyConfiguration is
undefined
in most cases. The logic for setting it is as follow: - If the destination has proxy type "OnPremise" the connectivity service proxy is used. - Depending on the protocol in the destination URL the proxy environment variableshttp_proxy
andhttps_proxy
are considered.Valid form for the variable is
http://user:password@host:port
where everything besides the host is optional. For user and password non alphanumeric characters need to be percent-encoded. Note: The [no_proxy] environment variables contains a list of URLs for which no proxy will be used even if [http_proxy, https_proxy] are set. Wildcards like *.some.domain.com are not supported while checking the no_proxy env.
property headers
headers?: ProxyConfigurationHeaders;
HTTP headers to be added to a request if tunneled through the proxy. If the request is going to an OnPremise system via the connectivity proxy, the header contains the 'Proxy-Authorization' and the 'SAP-Connectivity-Authentication' header if a JWT is present on the current request. For web proxies only the 'Proxy-Authorization' enter the header fields if provided.
property host
host: string;
The host of the proxy.
property port
port: number;
The port of the proxy.
property protocol
protocol: Protocol;
The protocol used by the proxy
interface ProxyConfigurationHeaders
interface ProxyConfigurationHeaders {}
property 'Proxy-Authorization'
'Proxy-Authorization': string;
property 'SAP-Connectivity-Authentication'
'SAP-Connectivity-Authentication'?: string;
index signature
[header: string]: string | undefined;
interface ReadResponse
interface ReadResponse {}
interface RegisteredJWTClaimsBasic
interface RegisteredJWTClaimsBasic {}
Deprecated
Since v1.46.0. This interface will not be replaced. Use the higher level JWT types directly. Interface to represent the basic properties like issuer, audience etc.
interface RegisteredJWTClaimsTenant
interface RegisteredJWTClaimsTenant {}
Deprecated
Since v1.46.0. This interface will not be replaced. Use the higher level JWT types directly. Keys in the JWT related to the tenant.
interface RegisteredJWTClaimsUser
interface RegisteredJWTClaimsUser {}
Deprecated
Since v1.46.0. This interface will not be replaced. Use the higher level JWT types directly. Keys in the JWT related to the user.
property 'xs.user.attributes'
'xs.user.attributes'?: Map<string, string[]>;
property email
email?: string;
property family_name
family_name?: string;
property given_name
given_name?: string;
property scope
scope?: string[];
property user_id
user_id?: string;
property user_name
user_name?: string;
interface ResilienceOptions
interface ResilienceOptions {}
property enableCircuitBreaker
enableCircuitBreaker?: boolean;
A boolean value that indicates whether to execute request to SCP-CF services using circuit breaker.
interface ResponseData
interface ResponseData {}
interface ResponseDataAccessor
interface ResponseDataAccessor {}
property getCollectionResult
getCollectionResult: (data: any) => any[];
property getLinkedCollectionResult
getLinkedCollectionResult: (data: any) => any[];
property getSingleResult
getSingleResult: (data: any) => Record<string, any>;
property isCollectionResult
isCollectionResult: (data: any) => boolean;
interface Scope
interface Scope {}
Representation of the scope. A scope is assigned to a user via role-collection in cloud foundry.
property name
name: string;
interface SelectableEdmTypeField
interface SelectableEdmTypeField {}
Deprecated
Since v1.27.0. This will not be replaced. Use the generic
SelectableT
parameter of Fields instead. Interface denoting a selectable [[EdmTypeField]].
property selectable
selectable: true;
This property denotes that this is a selectable field.
interface Service
interface Service {}
property credentials
credentials: ServiceCredentials;
property label
label: string;
property name
name: string;
property tags
tags: string[];
index signature
[other: string]: any;
interface ServiceBinding
interface ServiceBinding {}
Represents the JSON object for a given service binding as obtained from the VCAP_SERVICE environment variable. To see service bindings, run
cf env <app-name>
in the terminal. This will produce output like this:{..."VCAP_SERVICES": {"s4-hana-cloud": [{"name": "...","type": "..."....}]}}In this example, the key "s4-hana-cloud" refers to an array of service bindings.
interface Tenant
interface Tenant {}
Representation of the tenant. A tenant represents the customer account on Cloud Foundry.
interface Time
interface Time {}
interface TokenKey
interface TokenKey {}
Response element returned from the XSUAA service's /token_key endpoint. Value holds the key that is used for verifying JWTs.
property algorithm
algorithm: string;
Encryption algorithm, e.g. RSA256.
property keyId
keyId: string;
ID of the key.
property keyType
keyType: string;
Key type, e.g. RSA.
property publicKeyExponent
publicKeyExponent: string;
RSA key exponent.
property publicKeyModulus
publicKeyModulus: string;
RSA key modulus.
property use
use: string;
Public key use parameter - identifies intended use of the public key.
property value
value: string;
The actual key.
interface UriConverter
interface UriConverter {}
Interface defining the methods of the URI converter. The concrete implementations are created in odata/v2/uri-conversion/uri-value-converter.ts and odata/v4/uri-conversion/uri-value-converter.ts
method convertToUriFormat
convertToUriFormat: ( value: any, edmType: EdmTypeShared<'v2'> | EdmTypeShared<'v4'>) => string;
interface User
interface User extends UserData {}
Representation of the user i.e. authenticated persona. The authentication is done by the XSUAA.
property hasScope
hasScope: (scope: Scope) => boolean;
interface UserTokenResponse
interface UserTokenResponse extends ClientCredentialsResponse {}
property refresh_token
refresh_token: string;
interface VerifyJwtOptions
interface VerifyJwtOptions {}
Options to control certain aspects of JWT verification behavior.
property cacheVerificationKeys
cacheVerificationKeys?: boolean;
interface WithETag
interface WithETag {}
property eTag
eTag: string;
property versionIdentifierIgnored
versionIdentifierIgnored: boolean;
interface WithGetAllRestrictions
interface WithGetAllRestrictions<EntityT extends Entity> extends WithSelection<EntityT> {}
interface WithSelection
interface WithSelection<EntityT extends Entity> {}
property selects
selects: Selectable<EntityT>[];
interface WriteResponse
interface WriteResponse {}
interface WriteResponses
interface WriteResponses {}
Enums
enum DestinationOrigin
enum DestinationOrigin { Subscriber = 'subscriber', Provider = 'provider',}
Deprecated
Since v1.0.1.
Represents the origin of a destination in a multi-tenant setup on SAP Business Technology Platform.
In a multi-tenant application on SAP Business Technology Platform, destinations can be defined both on provider account level ("PaaS tenant") as well as on the level of each subscriber account ("SaaS tenant").
member Provider
Provider = 'provider'
member Subscriber
Subscriber = 'subscriber'
enum DestinationType
enum DestinationType { Instance = 'instance', Subaccount = 'subaccount',}
The destinations endpoint distinguished between destinations maintained on service level (instance) and account level (subaccount). This enum is used as a switch in the [[fetchInstanceDestinations]], [[fetchSubaccountDestinations]] and [[destinationServiceCache]]
member Instance
Instance = 'instance'
member Subaccount
Subaccount = 'subaccount'
enum HttpMethod
enum HttpMethod { GET = 'GET', DELETE = 'DELETE', HEAD = 'HEAD', OPTIONS = 'OPTIONS', POST = 'POST', PUT = 'PUT', PATCH = 'PATCH',}
Deprecated
Since v1.20.0. Use method string directly, e. g. 'get' or 'GET'.
enum IsolationStrategy
enum IsolationStrategy { Tenant = 'Tenant', User = 'User', Tenant_User = 'TenantUser', No_Isolation = 'NoIsolation',}
Enumerator that selects the isolation type of destination in cache.
member No_Isolation
No_Isolation = 'NoIsolation'
member Tenant
Tenant = 'Tenant'
member Tenant_User
Tenant_User = 'TenantUser'
member User
User = 'User'
enum Protocol
enum Protocol { HTTP = 'http', HTTPS = 'https',}
enum ProxyStrategy
enum ProxyStrategy { NO_PROXY = 0, ON_PREMISE_PROXY = 1, INTERNET_PROXY = 2, PRIVATELINK_PROXY = 3,}
Enum representing the different strategies for proxies on requests. Possible situations are "NO_PROXY", use the connectivity service proxy for On-Premise connection or a usual web proxy. See also [[ProxyConfiguration]] for more details.
member INTERNET_PROXY
INTERNET_PROXY = 2
member NO_PROXY
NO_PROXY = 0
member ON_PREMISE_PROXY
ON_PREMISE_PROXY = 1
member PRIVATELINK_PROXY
PRIVATELINK_PROXY = 3
Type Aliases
type ActionImportParameters
type FunctionImportParameters<ParametersT> = { [K in keyof ParametersT]: FunctionImportParameter<ParametersT[K]>;};
Internal representation of all parameters of a function import as a map
type AuthenticationType
type AuthenticationType = | 'PrincipalPropagation' | 'NoAuthentication' | 'BasicAuthentication' | 'OAuth2SAMLBearerAssertion' | 'OAuth2ClientCredentials' | 'OAuth2UserTokenExchange' | 'ClientCertificateAuthentication' | 'OAuth2JWTBearer' | 'OAuth2Password';
type BatchResponse
type BatchResponse = ReadResponse | WriteResponses | ErrorResponse;
type CollectionFieldType
type CollectionFieldType< CollectionFieldT extends EdmTypeShared<'any'> | Record<string, any>> = CollectionFieldT | ComplexTypeNamespace<CollectionFieldT>;
Convenience type to reflect the type of the instances of a collection field. The actual type of the elements for complex type collections is [[ComplexTypeNamespace]].
type ComplexTypePropertyFields
type ComplexTypePropertyFields<EntityT extends Entity, ComplexT> = | EdmTypeField<EntityT, any, boolean, false> | OrderableEdmTypeField<EntityT, any, boolean, false> | ComplexTypeBigNumberPropertyField<EntityT, ComplexT> | ComplexTypeBinaryPropertyField<EntityT, ComplexT> | ComplexTypeBooleanPropertyField<EntityT, ComplexT> | ComplexTypeDatePropertyField<EntityT, ComplexT> | ComplexTypeNumberPropertyField<EntityT, ComplexT> | ComplexTypeStringPropertyField<EntityT, ComplexT> | ComplexTypeTimePropertyField<EntityT, ComplexT>;
type ConstructorOrField
type ConstructorOrField<EntityT extends Entity, ComplexT = any> = | Constructable<EntityT> | ComplexTypeField<EntityT, ComplexT, boolean, boolean>;
Union type to represent the parent of a field. This can either be an entity constructor or a complex type field.
type DeepFieldType
type DeepFieldType = | FieldType | { [keys: string]: DeepFieldType; };
Deprecated
Since v1.18.0. Use [[FieldType]] instead. Represents types of nested fields.
type DestinationOptions
type DestinationOptions = DestinationAccessorOptions & DestinationRetrievalOptions & VerifyJwtOptions;
type DestinationProxyType
type DestinationProxyType = 'OnPremise' | 'Internet' | 'PrivateLink' | null;
type DestinationRetrievalOptions
type DestinationRetrievalOptions = (DestinationCachingOptions | CachingOptions) & ResilienceOptions;
Options to use while fetching destinations. Encompasses both [[DestinationCachingOptions]] and [[ResilienceOptions]] interfaces.
type DestinationSelectionStrategy
type DestinationSelectionStrategy = ( allDestinations: AllDestinations, destinationName: string) => Destination | null;
type DestinationServiceCredentials
type DestinationServiceCredentials = ServiceCredentials & { identityzone: string; instanceid: string; tenantid: string; tenantmode: string; uaadomain: string; uri: string; url: string; verificationkey: string; xsappname: string;};
Credentials for the Destination service.
type EdmToPrimitive
type EdmToPrimitive<T extends EdmType> = T extends | 'Edm.Int16' | 'Edm.Int32' | 'Edm.Single' | 'Edm.Double' | 'Edm.Float' | 'Edm.Byte' | 'Edm.SByte' ? number : T extends 'Edm.Decimal' | 'Edm.Int64' ? BigNumber : T extends 'Edm.DateTime' | 'Edm.DateTimeOffset' ? moment.Moment : T extends 'Edm.String' | 'Edm.Guid' ? string : T extends 'Edm.Boolean' ? boolean : T extends 'Edm.Time' ? Time : any;
type EdmToPrimitiveV2
type EdmToPrimitive<T extends EdmType> = T extends | 'Edm.Int16' | 'Edm.Int32' | 'Edm.Single' | 'Edm.Double' | 'Edm.Float' | 'Edm.Byte' | 'Edm.SByte' ? number : T extends 'Edm.Decimal' | 'Edm.Int64' ? BigNumber : T extends 'Edm.DateTime' | 'Edm.DateTimeOffset' ? moment.Moment : T extends 'Edm.String' | 'Edm.Guid' ? string : T extends 'Edm.Boolean' ? boolean : T extends 'Edm.Time' ? Time : any;
type EdmToPrimitiveV4
type EdmToPrimitive<T extends EdmType> = T extends | 'Edm.Int16' | 'Edm.Int32' | 'Edm.Single' | 'Edm.Double' | 'Edm.Float' | 'Edm.Byte' | 'Edm.SByte' ? number : T extends 'Edm.Decimal' | 'Edm.Int64' ? BigNumber : T extends 'Edm.DateTime' | 'Edm.DateTimeOffset' ? moment.Moment : T extends 'Edm.String' | 'Edm.Guid' ? string : T extends 'Edm.Boolean' ? boolean : T extends 'Edm.Time' ? Time : any;
type EdmType
type EdmType = EdmTypeCommon | ExclusiveEdmTypeV2;
Allowed Edm types for OData v2.
type EdmTypeCommon
type EdmTypeCommon = EdmTypeSameConverters | EdmTypeDifferentConverters;
type EdmTypeDifferentConverters
type EdmTypeDifferentConverters = 'Edm.DateTimeOffset';
type EdmTypeForEdmOrFieldType
type EdmTypeForEdmOrFieldType<EdmOrFieldT extends EdmTypeShared<'any'> | FieldType> = EdmOrFieldT extends EdmTypeShared<'any'> ? EdmOrFieldT : EdmTypeShared<'any'>;
Convenience type to support legacy
EdmTypeField
with field type as generic parameter. This will become obsolete in the next major version update.
type EdmTypeSameConverters
type EdmTypeSameConverters = | 'Edm.String' | 'Edm.Boolean' | 'Edm.Decimal' | 'Edm.Double' | 'Edm.Single' | 'Edm.Float' | 'Edm.Int16' | 'Edm.Int32' | 'Edm.Int64' | 'Edm.SByte' | 'Edm.Binary' | 'Edm.Guid' | 'Edm.Byte' | 'Edm.Any';
type EdmTypeSameConvertersUri
type EdmTypeSameConvertersUri = Exclude< EdmTypeSameConverters, 'Edm.Guid' | 'Edm.Decimal'>;
type EdmTypeShared
type EdmTypeShared<VersionT extends ODataVersion | 'any'> = VersionT extends any ? EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4 : EdmTypeCommon | ExclusiveEdmTypeV2 | ExclusiveEdmTypeV4;
type EdmTypeV2
type EdmType = EdmTypeCommon | ExclusiveEdmTypeV2;
Allowed Edm types for OData v2.
type EdmTypeV4
type EdmType = EdmTypeCommon | ExclusiveEdmTypeV4;
Allowed Edm types for OData v4.
type EntityBuilderType
type EntityBuilderType<EntityT extends Entity, EntityTypeT> = { [property in keyof Required<EntityTypeT>]: ( value: EntityTypeT[property] ) => EntityBuilderType<EntityT, EntityTypeT>;} & EntityBuilder<EntityT, EntityTypeT>;
type EnumType
type EnumType<T extends string> = `${T}`;
Convenient type to reflect all the values of a string based enum as a union type.
See Also
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-1.html#template-literal-types
type ExclusiveEdmTypeV2
type ExclusiveEdmTypeV2 = 'Edm.DateTime' | 'Edm.Time';
type ExclusiveEdmTypeV4
type ExclusiveEdmTypeV4 = 'Edm.Date' | 'Edm.Duration' | 'Edm.TimeOfDay' | 'Edm.Enum';
type ExecuteHttpRequestFn
type ExecuteHttpRequestFn<ReturnT> = (request: HttpRequest) => Promise<ReturnT>;
type Expandable
type Expandable<EntityT extends Entity> = ODataVersionOf<EntityT> extends 'v2' ? never : OneToOneLink<EntityT, any> | OneToManyLink<EntityT, any> | AllFields<EntityT>;
Represents all expandables, i.e. everything that can be used in an
.expand
statement. Only relevant for OData v4 requests.
type FieldType
type FieldType = | string | number | boolean | Time | moment.Moment | moment.Duration | BigNumber | null | undefined;
Union type to represent all possible types of a field.
type FieldTypeByEdmType
type FieldTypeByEdmType< EdmOrFieldT extends EdmTypeShared<'any'> | FieldType, NullableT extends boolean> = NullableFieldType< EdmOrFieldT extends EdmTypeShared<'any'> ? NonNullableFieldTypeByEdmType<EdmOrFieldT> : EdmOrFieldT, NullableT>;
Convenience type that maps the given EDM type to a [[FieldType]]. It also considers whether the field is nullable.
type Filterable
type Filterable<EntityT extends Entity, LinkedEntityT extends Entity = any> = | Filter<EntityT, FieldType | FieldType[]> | FilterLink<EntityT> | FilterList<EntityT> | FilterLambdaExpression<EntityT> | UnaryFilter<EntityT> | BooleanFilterFunction<EntityT> | OneToManyLink<EntityT, LinkedEntityT>;
A union of all types that can be used for filtering.
type FilterFunctionParameterType
type FilterFunctionParameterType<EntityT extends Entity> = | FilterFunctionPrimitiveParameterType | Field<EntityT, boolean, boolean> | FilterFunction<EntityT, FieldType | FieldType[]> | FilterFunctionPrimitiveParameterType[];
Type of a parameter of a filter function. This can either be a primitive type, a reference to a field or another filter function.
type FilterFunctionPrimitiveParameterType
type FilterFunctionPrimitiveParameterType = number | string | moment.Moment;
Primitive type of a parameter of a filter function.
type FilterFunctionReturnType
type FilterFunctionReturnType = 'boolean' | 'int' | 'double' | 'decimal' | 'string';
type FilterFunctionReturnTypeV4
type FilterFunctionReturnType = | FilterFunctionReturnTypeBase | CollectionReturnType | 'datetimeoffset';
type FilterLambdaOperator
type FilterLambdaOperator = 'any' | 'all';
hidden
type FilterOperator
type FilterOperator = | FilterOperatorString | FilterOperatorBoolean | FilterOperatorNumber;
type FilterOperatorByType
type FilterOperatorByType<FieldT extends FieldType> = FieldT extends string ? FilterOperatorString : FieldT extends number ? FilterOperatorNumber : FilterOperatorBoolean;
type FunctionImportParameters
type FunctionImportParameters<ParametersT> = { [K in keyof ParametersT]: FunctionImportParameter<ParametersT[K]>;};
Internal representation of all parameters of a function import as a map
type HttpRequest
type HttpRequest = DestinationHttpRequestConfig & HttpRequestConfig;
type IsOrderableField
type IsOrderableField<EdmT extends EdmTypeShared<'any'>> = EdmT extends OrderableEdmType ? true : false;
Convenience type to determine whether a field should be orderable. If the given
EdmT
is of typeOrderableEdmTypes
, it is orderable.
type IsSelectableField
type IsSelectableField<FieldOfT extends ConstructorOrField<any>> = FieldOfT extends Constructable<any> ? true : false;
Convenience type to determine whether a field should be selectable. If the given
FieldOfT
is the type of an entity, it is selectable.
type JwtKeyMapping
type JwtKeyMapping<InterfaceT, JwtKeysT> = { [key in keyof InterfaceT]: { keyInJwt: JwtKeysT extends string ? JwtKeysT : keyof JwtKeysT; extractorFunction: (jwtPayload: JwtPayload) => any; };};
type Method
type Method = | 'get' | 'GET' | 'delete' | 'DELETE' | 'head' | 'HEAD' | 'options' | 'OPTIONS' | 'post' | 'POST' | 'put' | 'PUT' | 'patch' | 'PATCH';
HTTP Methods supported by the http-client.
type ODataVersionOf
type ODataVersionOf<T extends Entity> = T['_oDataVersion'];
type Orderable
type Orderable<EntityT extends Entity> = Order<EntityT> | OrderLink<EntityT, Entity>;
A union of all types that can be used for ordering.
type OrderableEdmType
type OrderableEdmType = | 'Edm.Decimal' | 'Edm.Double' | 'Edm.Single' | 'Edm.Float' | 'Edm.Int16' | 'Edm.Int32' | 'Edm.Int64' | 'Edm.SByte' | 'Edm.Byte' | 'Edm.DateTime' | 'Edm.DateTimeOffset' | 'Edm.Time' | 'Edm.Date' | 'Edm.Duration' | 'Edm.TimeOfDay';
EDM types that can be compared with
greaterThan
,greaterOrEqual
,lessThan
andlessOrEqual
.
type OrderableInput
type OrderableInput<EntityT extends Entity> = | SimpleTypeFields<EntityT> | Link<EntityT, Entity> | ComplexTypePropertyFields<EntityT, any>;
A union of all types that can be used as input for ordering.
type RegisteredJWTClaims
type RegisteredJWTClaims = RegisteredJWTClaimsBasic & RegisteredJWTClaimsUser & RegisteredJWTClaimsTenant;
Deprecated
Since v1.46.0. This interface will not be replaced. Use the higher level JWT types directly. Interface to represent the registered claims of a JWT.
type RequestMethodType
type RequestMethodType = 'get' | 'post' | 'patch' | 'delete' | 'put';
type Selectable
type Selectable<EntityT extends Entity> = ODataVersionOf<EntityT> extends 'v2' ? | SimpleTypeFields<EntityT> | Link<EntityT> | ComplexTypeField<EntityT, any, boolean, boolean> | CustomField<EntityT, boolean> | CollectionField<EntityT, any, boolean, boolean> | AllFields<EntityT> : ODataVersionOf<EntityT> extends 'v4' ? | SimpleTypeFields<EntityT> | ComplexTypeField<EntityT, any, boolean, boolean> | CustomField<EntityT, boolean> | CollectionField<EntityT, any, boolean, boolean> | AllFields<EntityT> : never;
type ServiceCredentials
type ServiceCredentials = { [other: string]: any; clientid: string;} & ( | { clientsecret: string; } | { certificate: string; key: string; });
Unspecific representation of a service's credentials as read from VCAP_SERVICES (for Cloud Foundry) or mounted secrets (for K8S).
type SimpleTypeFields
type SimpleTypeFields<EntityT extends Entity> = | EdmTypeField<EntityT, any, boolean, true> | OrderableEdmTypeField<EntityT, any, boolean, true> | BigNumberField<EntityT> | BinaryField<EntityT> | BooleanField<EntityT> | DateField<EntityT> | NumberField<EntityT> | StringField<EntityT> | TimeField<EntityT> | AnyField<EntityT>;
type XsuaaServiceCredentials
type XsuaaServiceCredentials = ServiceCredentials & { identityzone: string; identityzoneid: string; sburl: string; tenantid: string; tenantmode: string; uaadomain: string; url: string; verificationkey: string; xsappname: string;};
Credentials for the XSUAA service.
Namespaces
Package Files (190)
- dist/connectivity/scp-cf/authorization-header.d.ts
- dist/connectivity/scp-cf/cache.d.ts
- dist/connectivity/scp-cf/client-credentials-token-cache.d.ts
- dist/connectivity/scp-cf/connectivity-service-types.d.ts
- dist/connectivity/scp-cf/connectivity-service.d.ts
- dist/connectivity/scp-cf/destination/destination-accessor-types.d.ts
- dist/connectivity/scp-cf/destination/destination-accessor.d.ts
- dist/connectivity/scp-cf/destination/destination-cache.d.ts
- dist/connectivity/scp-cf/destination/destination-from-env.d.ts
- dist/connectivity/scp-cf/destination/destination-from-service.d.ts
- dist/connectivity/scp-cf/destination/destination-from-vcap.d.ts
- dist/connectivity/scp-cf/destination/destination-selection-strategies.d.ts
- dist/connectivity/scp-cf/destination/destination-service-cache.d.ts
- dist/connectivity/scp-cf/destination/destination-service-types.d.ts
- dist/connectivity/scp-cf/destination/destination-service.d.ts
- dist/connectivity/scp-cf/destination/destination.d.ts
- dist/connectivity/scp-cf/environment-accessor-types.d.ts
- dist/connectivity/scp-cf/environment-accessor.d.ts
- dist/connectivity/scp-cf/get-protocol.d.ts
- dist/connectivity/scp-cf/header-builder-for-destination.d.ts
- dist/connectivity/scp-cf/jwt.d.ts
- dist/connectivity/scp-cf/legacy/client-credentials-token.d.ts
- dist/connectivity/scp-cf/legacy/xsuaa-service.d.ts
- dist/connectivity/scp-cf/protocol.d.ts
- dist/connectivity/scp-cf/resilience-options.d.ts
- dist/connectivity/scp-cf/tenant.d.ts
- dist/connectivity/scp-cf/token-accessor.d.ts
- dist/connectivity/scp-cf/user.d.ts
- dist/connectivity/scp-cf/verification-keys.d.ts
- dist/connectivity/scp-cf/xsuaa-service-types.d.ts
- dist/header-util.d.ts
- dist/http-agent/agent-config.d.ts
- dist/http-agent/http-agent.d.ts
- dist/http-agent/proxy-util.d.ts
- dist/http-client/csrf-token-header.d.ts
- dist/http-client/http-client-types.d.ts
- dist/http-client/http-client.d.ts
- dist/http-client/http-request-config.d.ts
- dist/index.d.ts
- dist/odata-common/batch-response.d.ts
- dist/odata-common/edm-types.d.ts
- dist/odata-common/entity-builder.d.ts
- dist/odata-common/entity-deserializer.d.ts
- dist/odata-common/entity-serializer.d.ts
- dist/odata-common/entity.d.ts
- dist/odata-common/expandable.d.ts
- dist/odata-common/filter/boolean-filter-function.d.ts
- dist/odata-common/filter/filter-function-base.d.ts
- dist/odata-common/filter/filter-function.d.ts
- dist/odata-common/filter/filter-functions.d.ts
- dist/odata-common/filter/filter-lambda-expression.d.ts
- dist/odata-common/filter/filter-link.d.ts
- dist/odata-common/filter/filter-list.d.ts
- dist/odata-common/filter/filter.d.ts
- dist/odata-common/filter/filterable.d.ts
- dist/odata-common/filter/number-filter-function.d.ts
- dist/odata-common/filter/orderable-filter-function.d.ts
- dist/odata-common/filter/string-filter-function.d.ts
- dist/odata-common/filter/unary-filter.d.ts
- dist/odata-common/name-converter.d.ts
- dist/odata-common/odata-batch-consts.d.ts
- dist/odata-common/order/order-link.d.ts
- dist/odata-common/order/order.d.ts
- dist/odata-common/order/orderable.d.ts
- dist/odata-common/payload-value-converter.d.ts
- dist/odata-common/properties-util.d.ts
- dist/odata-common/request-builder/action-function-import-request-builder-base.d.ts
- dist/odata-common/request-builder/batch/batch-change-set.d.ts
- dist/odata-common/request-builder/batch/batch-request-builder.d.ts
- dist/odata-common/request-builder/batch/batch-request-serializer.d.ts
- dist/odata-common/request-builder/batch/batch-response-deserializer.d.ts
- dist/odata-common/request-builder/batch/batch-response-parser.d.ts
- dist/odata-common/request-builder/count-request-builder.d.ts
- dist/odata-common/request-builder/create-request-builder-base.d.ts
- dist/odata-common/request-builder/delete-request-builder-base.d.ts
- dist/odata-common/request-builder/get-all-request-builder-base.d.ts
- dist/odata-common/request-builder/get-by-key-request-builder.d.ts
- dist/odata-common/request-builder/request-builder-base.d.ts
- dist/odata-common/request-builder/request-builder.d.ts
- dist/odata-common/request-builder/update-request-builder-base.d.ts
- dist/odata-common/request/function-import-parameter.d.ts
- dist/odata-common/request/odata-batch-request-config.d.ts
- dist/odata-common/request/odata-create-request-config.d.ts
- dist/odata-common/request/odata-delete-request-config.d.ts
- dist/odata-common/request/odata-get-all-request-config.d.ts
- dist/odata-common/request/odata-get-by-key-request-config.d.ts
- dist/odata-common/request/odata-request-config.d.ts
- dist/odata-common/request/odata-request-traits.d.ts
- dist/odata-common/request/odata-request.d.ts
- dist/odata-common/request/odata-update-request-config.d.ts
- dist/odata-common/response-data-accessor.d.ts
- dist/odata-common/response-transformer.d.ts
- dist/odata-common/selectable/all-fields.d.ts
- dist/odata-common/selectable/collection-field.d.ts
- dist/odata-common/selectable/complex-type-field.d.ts
- dist/odata-common/selectable/complex-type-namespace.d.ts
- dist/odata-common/selectable/complex-type-property-fields.d.ts
- dist/odata-common/selectable/constructor-or-field.d.ts
- dist/odata-common/selectable/create-complex-type.d.ts
- dist/odata-common/selectable/edm-type-field.d.ts
- dist/odata-common/selectable/enum-field.d.ts
- dist/odata-common/selectable/field-builder.d.ts
- dist/odata-common/selectable/field.d.ts
- dist/odata-common/selectable/legacy/any-field.d.ts
- dist/odata-common/selectable/legacy/big-number-field.d.ts
- dist/odata-common/selectable/legacy/binary-field.d.ts
- dist/odata-common/selectable/legacy/boolean-field.d.ts
- dist/odata-common/selectable/legacy/date-field.d.ts
- dist/odata-common/selectable/legacy/duration-field.d.ts
- dist/odata-common/selectable/legacy/enum-field.d.ts
- dist/odata-common/selectable/legacy/number-field.d.ts
- dist/odata-common/selectable/legacy/selectable.d.ts
- dist/odata-common/selectable/legacy/string-field.d.ts
- dist/odata-common/selectable/legacy/time-field.d.ts
- dist/odata-common/selectable/link.d.ts
- dist/odata-common/selectable/one-to-many-link.d.ts
- dist/odata-common/selectable/one-to-one-link.d.ts
- dist/odata-common/selectable/orderable-edm-type-field.d.ts
- dist/odata-common/selectable/selectable.d.ts
- dist/odata-common/selectable/simple-type-fields.d.ts
- dist/odata-common/time.d.ts
- dist/odata-common/uri-conversion/get-filter.d.ts
- dist/odata-common/uri-conversion/get-keys.d.ts
- dist/odata-common/uri-conversion/get-orderby.d.ts
- dist/odata-common/uri-conversion/get-resource-path.d.ts
- dist/odata-common/uri-conversion/odata-uri.d.ts
- dist/odata-common/uri-conversion/uri-value-converter.d.ts
- dist/odata-v2/batch-change-set.d.ts
- dist/odata-v2/batch-request-serializer.d.ts
- dist/odata-v2/edm-types.d.ts
- dist/odata-v2/entity-deserializer.d.ts
- dist/odata-v2/entity-serializer.d.ts
- dist/odata-v2/entity.d.ts
- dist/odata-v2/extract-odata-etag.d.ts
- dist/odata-v2/filter-functions.d.ts
- dist/odata-v2/legacy-request-configs/odata-batch-request-config.d.ts
- dist/odata-v2/legacy-request-configs/odata-create-request-config.d.ts
- dist/odata-v2/legacy-request-configs/odata-delete-request-config.d.ts
- dist/odata-v2/legacy-request-configs/odata-function-import-request-config.d.ts
- dist/odata-v2/legacy-request-configs/odata-get-all-request-config.d.ts
- dist/odata-v2/legacy-request-configs/odata-get-by-key-request-config.d.ts
- dist/odata-v2/legacy-request-configs/odata-update-request-config.d.ts
- dist/odata-v2/payload-value-converter.d.ts
- dist/odata-v2/request-builder/batch-request-builder.d.ts
- dist/odata-v2/request-builder/create-request-builder.d.ts
- dist/odata-v2/request-builder/delete-request-builder.d.ts
- dist/odata-v2/request-builder/function-import-request-builder.d.ts
- dist/odata-v2/request-builder/get-all-request-builder.d.ts
- dist/odata-v2/request-builder/get-by-key-request-builder.d.ts
- dist/odata-v2/request-builder/response-transformers.d.ts
- dist/odata-v2/request-builder/update-request-builder.d.ts
- dist/odata-v2/request/odata-function-import-request-config.d.ts
- dist/odata-v2/selectable/custom-field.d.ts
- dist/odata-v2/uri-conversion/get-expand.d.ts
- dist/odata-v2/uri-conversion/get-filter.d.ts
- dist/odata-v2/uri-conversion/get-orderby.d.ts
- dist/odata-v2/uri-conversion/get-resource-path.d.ts
- dist/odata-v2/uri-conversion/get-select.d.ts
- dist/odata-v2/uri-conversion/get-selection.d.ts
- dist/odata-v2/uri-conversion/odata-uri.d.ts
- dist/odata-v2/uri-conversion/uri-value-converter.d.ts
- dist/odata-v4/batch-change-set.d.ts
- dist/odata-v4/batch-request-builder.d.ts
- dist/odata-v4/batch-request-serializer.d.ts
- dist/odata-v4/edm-types.d.ts
- dist/odata-v4/entity-deserializer.d.ts
- dist/odata-v4/entity-serializer.d.ts
- dist/odata-v4/entity.d.ts
- dist/odata-v4/extract-odata-etag.d.ts
- dist/odata-v4/filter-function.d.ts
- dist/odata-v4/filter-functions.d.ts
- dist/odata-v4/filter/filter-lambda-expression.d.ts
- dist/odata-v4/payload-value-converter.d.ts
- dist/odata-v4/request-builder/action-import-request-builder.d.ts
- dist/odata-v4/request-builder/create-request-builder.d.ts
- dist/odata-v4/request-builder/delete-request-builder.d.ts
- dist/odata-v4/request-builder/function-import-request-builder.d.ts
- dist/odata-v4/request-builder/get-all-request-builder.d.ts
- dist/odata-v4/request-builder/get-by-key-request-builder.d.ts
- dist/odata-v4/request-builder/response-data-accessor.d.ts
- dist/odata-v4/request-builder/response-transformers.d.ts
- dist/odata-v4/request-builder/update-request-builder.d.ts
- dist/odata-v4/request/odata-action-import-request-config.d.ts
- dist/odata-v4/request/odata-function-import-request-config.d.ts
- dist/odata-v4/selectable/custom-field.d.ts
- dist/odata-v4/uri-conversion/get-expand.d.ts
- dist/odata-v4/uri-conversion/get-select.d.ts
- dist/odata-v4/uri-conversion/odata-uri.d.ts
- dist/odata-v4/uri-conversion/uri-value-converter.d.ts
- dist/openapi/openapi-request-builder.d.ts
Dependencies (14)
Dev Dependencies (3)
Peer Dependencies (0)
No peer dependencies.
Badge
To add a badge like this oneto your package's README, use the codes available below.
You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/@sap-cloud-sdk/core
.
- Markdown[![jsDocs.io](https://img.shields.io/badge/jsDocs.io-reference-blue)](https://www.jsdocs.io/package/@sap-cloud-sdk/core)
- HTML<a href="https://www.jsdocs.io/package/@sap-cloud-sdk/core"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>
- Updated .
Package analyzed in 14464 ms. - Missing or incorrect documentation? Open an issue for this package.