Package that contains general utility functions that we reuse multiple times in the SDK. While primarily designed for internal usage, they might also be benefical for consumers of the SDK.
Default logger for the SAP Cloud SDK for unhandled exceptions.
Format for logging in Kibana.
Format for local logging.
Calls rambda's assoc function if the provided value is neither null nor undefined. Note that this is different to JS idiomatic checks for truthy/falsy values, i.e. an empty string will result in assoc being called.
The key to associate with the given value.
The value to associate with the given key.
A copy of the input object with the new key-value pair if the value is neither null nor undefined.
Works similar to Ramdas pipe function, but works on promises, which allows using async functions.
The functions to be chained.
Create a logger for the given message context.
Either a key for the message context of all messages produced by the logger or an object with additional keys to set in the message.
A newly created or an already existing logger for the given context.
Disable logging of exceptions. Enabled by default.
Enable logging of exceptions. Enabled by default.
Creates a new error using the provided message and appends the causes stacktrace to the new error's stacktrace.
The message of the new error.
The original error.
A new error instance.
Flatten a multidimensional array
Multidimensional array to be flattened
Calls rambda's merge function if second object is neither null nor undefined.
The object to merge into.
The object which to merge into a.
A copy of the merge(a, b) or a if b is undefined or null.
Checks if a chain of properties exists on the given object.
The object to be checked.
True if the property chain leads to a truthy value, false otherwise.
Takes an object and returns a new object whose keys are renamed according to the provided key mapping. Any keys in the input object not present in the key mapping will be present in the output object as-is. If a key in the key mapping is not present in the input object, the output object will contain the key with value "undefined".
An object mapping keys of the input object to keys of the output object.
The input object.
An object with renamed keys.
Remove all duplicates from array
Array of strings that might contain duplicates
Array of unique strings