@enonic/js-utils
Version:
Enonic XP JavaScript Utils
25 lines (22 loc) • 579 B
JavaScript
// array/flatten.ts
function flatten(arr, d = 1) {
return d > 0 ? arr.reduce((acc, val) => acc.concat(
Array.isArray(val) ? flatten(val, d - 1) : val
), []) : arr.slice();
}
// storage/query/constants.ts
var QUERY_OPERATOR_AND = "AND";
// storage/query/and.ts
function and(...args) {
const flattened = flatten(args);
if (Array.isArray(flattened)) {
if (flattened.length === 1) {
return `${QUERY_OPERATOR_AND} ${flattened}`;
}
return flattened.join(` ${QUERY_OPERATOR_AND} `);
}
return `${QUERY_OPERATOR_AND} ${flattened}`;
}
export {
and
};