UNPKG

@enonic/js-utils

Version:
46 lines (43 loc) 987 B
// value/isDate.ts function isDate(value) { return Object.prototype.toString.call(value).slice(8, -1) === "Date"; } // storage/query/dsl/term.ts var DSL_EXPRESSION_VALUE_TYPE_DATE_TIME = "dateTime"; var DSL_EXPRESSION_VALUE_TYPE_TIME = "time"; // storage/query/dsl/range.ts function ifDateCastToISOString(v) { if (isDate(v)) { return v.toISOString(); } return v; } function range(field, limits = {}, boost, type) { const range2 = { field }; if (limits.gt) { range2.gt = ifDateCastToISOString(limits.gt); } if (limits.gte) { range2.gte = ifDateCastToISOString(limits.gte); } if (limits.lt) { range2.lt = ifDateCastToISOString(limits.lt); } if (limits.lte) { range2.lte = ifDateCastToISOString(limits.lte); } if (boost) { range2.boost = boost; } if (type === DSL_EXPRESSION_VALUE_TYPE_TIME || type === DSL_EXPRESSION_VALUE_TYPE_DATE_TIME) { range2.type = type; } return { range: range2 }; } export { range };