@1hive/connect-core
Version:
Access and interact with Aragon Organizations and their apps.
46 lines • 1.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.warn = exports.normalizeFiltersAndCallback = exports.toArrayEntry = void 0;
function toArrayEntry(value) {
return Array.isArray(value) ? value : [value];
}
exports.toArrayEntry = toArrayEntry;
// Utility to normalize functions accepting optional filters,
// followed by an optional callback.
function normalizeFiltersAndCallback(filtersOrCallback, callback) {
// Both defined
if (callback !== undefined) {
return [filtersOrCallback, callback];
}
// First param is the callback
if (typeof filtersOrCallback === 'function') {
return [undefined, filtersOrCallback];
}
// First param are the filters
if (filtersOrCallback !== undefined) {
return [filtersOrCallback, undefined];
}
// None defined
return [undefined, undefined];
}
exports.normalizeFiltersAndCallback = normalizeFiltersAndCallback;
const warned = new Map();
function warn(messages, once = true) {
if (process.env.NODE_ENV !== 'development') {
return;
}
if (!Array.isArray(messages)) {
messages = [messages];
}
if (!once) {
console.warn(...messages);
return;
}
const key = JSON.stringify(messages);
if (!warned.has(key)) {
console.warn(...messages);
warned.set(key, true);
}
}
exports.warn = warn;
//# sourceMappingURL=misc.js.map