UNPKG

simple-pure-utils

Version:

Funciones puras para manipulación de objetos, arreglos, promesas y observables

20 lines • 1.98 kB
import { removeDiacritics } from "./diacritics"; /**Realiza una busqueda de texto y devuelve true si text encaja con pattern */ export function search(pattern, text) { if (!pattern) return true; if (!text) return false; pattern = removeDiacritics(pattern.toLowerCase()); text = removeDiacritics(text.toLowerCase()); const splitter = /(?:\s|\n|\r)/g; const tw = text.split(splitter); const pw = pattern.split(splitter); if (pw.length == 0) return true; if (pw.length == 1) return text.indexOf(pattern) != -1; const cadaPalabra = pw.map(x => text.indexOf(x) != -1).reduce((a, b) => a && b, true); return cadaPalabra; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlYXJjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFPaEQsOEVBQThFO0FBQzlFLE1BQU0sVUFBVSxNQUFNLENBQUMsT0FBa0MsRUFBRSxJQUErQjtJQUN0RixJQUFJLENBQUMsT0FBTztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQzFCLElBQUksQ0FBQyxJQUFJO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFeEIsT0FBTyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUU1QyxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUE7SUFDaEMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRW5DLElBQUksRUFBRSxDQUFDLE1BQU0sSUFBSSxDQUFDO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFDaEMsSUFBSSxFQUFFLENBQUMsTUFBTSxJQUFJLENBQUM7UUFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFFdkQsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBRXZGLE9BQU8sV0FBVyxDQUFDO0FBQ3ZCLENBQUMifQ==