23 lines
449 B
JavaScript
23 lines
449 B
JavaScript
'use strict';
|
|
|
|
module.exports = function whenNotEmpty(fn, defaultFn) {
|
|
if (Array.isArray(this.items) && this.items.length) {
|
|
return fn(this);
|
|
}
|
|
|
|
if (Object.keys(this.items).length) {
|
|
return fn(this);
|
|
}
|
|
|
|
if (defaultFn !== undefined) {
|
|
if (Array.isArray(this.items) && !this.items.length) {
|
|
return defaultFn(this);
|
|
}
|
|
|
|
if (!Object.keys(this.items).length) {
|
|
return defaultFn(this);
|
|
}
|
|
}
|
|
|
|
return this;
|
|
}; |