@1hive/connect-core
Version:
Access and interact with Aragon Organizations and their apps.
40 lines • 1.17 kB
JavaScript
export function toArrayEntry(value) {
return Array.isArray(value) ? value : [value];
}
// Utility to normalize functions accepting optional filters,
// followed by an optional callback.
export 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];
}
const warned = new Map();
export 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);
}
}
//# sourceMappingURL=misc.js.map