@bitrix24/b24jssdk
Version:
Bitrix24 REST API JavaScript SDK
42 lines (39 loc) • 1.31 kB
JavaScript
/**
* @package @bitrix24/b24jssdk
* @version 2.2.0
* @copyright (c) 2026 Bitrix24
* @license MIT
* @see https://github.com/bitrix24/b24jssdk
* @see https://bitrix24.github.io/b24jssdk/
*/
;
var __defProp = Object.defineProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
const LOG_METHODS = [
"log",
"debug",
"info",
"notice",
"warning",
"error",
"critical",
"alert",
"emergency"
];
function warnOnNonPromiseLogger(logger, source) {
if (logger === null || typeof logger !== "object") {
console.warn(
`[b24jssdk] ${source}: the value passed to setLogger() is not an object. Expected an implementation of LoggerInterface.`
);
return;
}
const missing = LOG_METHODS.filter((name) => typeof logger[name] !== "function");
if (missing.length > 0) {
console.warn(
`[b24jssdk] ${source}: the logger passed to setLogger() is missing ${missing.join(", ")}. LoggerInterface declares every level as Promise<void>; the SDK calls them fire-and-forget, so a missing or non-promise method raises a TypeError at the callsite.`
);
}
}
__name(warnOnNonPromiseLogger, "warnOnNonPromiseLogger");
exports.warnOnNonPromiseLogger = warnOnNonPromiseLogger;
//# sourceMappingURL=assert-logger-shape.cjs.map