@glue42/bbg-market-data
Version:
A high-level API that wraps existing Glue42 Bloomberg Bridge Market Data interop methods. The API is based on the jBloomberg open source wrapper.
53 lines (52 loc) • 1.52 kB
JavaScript
import { generate } from "shortid";
export function isNumber(value) {
return typeof value === "number";
}
export function isNullOrUndefined(obj) {
return obj === undefined || obj === null;
}
export function generateId() {
return generate();
}
export function isEmpty(value) {
return !value || value.length === 0;
}
export function isEmptyArray(array) {
return !Array.isArray(array) || isEmpty(array);
}
export function nameOf(_) {
return function (key) { return key; };
}
export function existValueInEnum(type, value) {
return (Object.keys(type)
.filter(function (k) { return isNaN(Number(k)); })
.filter(function (k) { return type[k] === value; }).length > 0);
}
export function extractErrorMessage(error, alternative) {
var stringError = typeof error === "string"
? error
: typeof error.message === "string"
? error.message
: typeof alternative != "string"
? alternative
: JSON.stringify(error);
return stringError;
}
export function callSafe(fn) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
if (typeof fn === "function") {
return fn.apply(void 0, args);
}
}
export function clone(objectToClone) {
try {
var cloned = JSON.parse(JSON.stringify(objectToClone));
return cloned;
}
catch (error) {
return null;
}
}