starts-with.js (643B)
1 const field = require('../../field'); 2 3 module.exports = { 4 detect : function (query) { 5 if (!query) return false; 6 if ('object' !== typeof query) return false; 7 if ('string' !== typeof query.field) return false; 8 return ('*' === query.field.substr(-1)); 9 }, 10 compile: function (query) { 11 query.field = query.field.substr(0, query.field.length - 1); 12 return function (data) { 13 return field(query.field, data, function (value) { 14 if ('string' !== typeof value) return false; 15 return value.toLowerCase().substr(0, query.term.length) === query.term.toLowerCase(); 16 }) ? query.boost : 0; 17 }; 18 }, 19 };