UNPKG

concepts-parser

Version:
25 lines (24 loc) 892 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const data_1 = require("../data"); function filter(concepts, context) { const regexes = data_1.getValidPrefixes(context.lang); return concepts.filter(function (concept) { let text = context.text.substr(0, concept.index); for (let regex of regexes) { let result = regex.exec(text); if (result) { let value = text.substr(result.index); let indexSpace = 0; if (/^\s/.test(value)) { indexSpace = 1; value = value.substr(1); } concept.reset(value + concept.value, result.index + indexSpace, context.lang); return concept.isValid(); } } return true; }); } exports.filter = filter;