@drieam/common
Version:
Default Drieam api wrapper
61 lines (51 loc) • 1.62 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isNotNil = isNotNil;
exports.req = req;
exports.delay = delay;
exports.promiseNoop = promiseNoop;
Object.defineProperty(exports, "get", {
enumerable: true,
get: function get() {
return _get.default;
}
});
Object.defineProperty(exports, "camelCase", {
enumerable: true,
get: function get() {
return _camelCase.default;
}
});
var _get = _interopRequireDefault(require("lodash/get"));
var _camelCase = _interopRequireDefault(require("lodash/camelCase"));
var _isNil = _interopRequireDefault(require("lodash/isNil"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function isNotNil(x) {
return !(0, _isNil.default)(x);
}
function req(appName, propName, props) {
if ((0, _isNil.default)(props[propName])) {
throw new Error("".concat(appName, ": ").concat(propName, " is required"));
}
}
function delay(callback) {
var ms = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
var timer = 0;
return function delayCallback() {
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
// eslint-disable-next-line @typescript-eslint/no-this-alias
var context = this;
clearTimeout(timer);
timer = window.setTimeout(function () {
callback.apply(context, args);
}, ms);
};
}
function promiseNoop() {
var filters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
return Promise.resolve(filters);
}
;