this repo has no description
1function applyRules(rules, navigator, data) { 2 const { userAgent } = navigator !== null && navigator !== void 0 ? navigator : {}; 3 if (typeof userAgent !== 'string' || userAgent.trim() === '') { 4 return data; 5 } 6 for (const rule of rules){ 7 const patterns = rule.slice(0, -1); 8 const parser = rule[rule.length - 1]; 9 let match = null; 10 for (const pattern of patterns){ 11 match = userAgent.match(pattern); 12 if (match !== null) { 13 Object.assign(data, parser(match, navigator, data)); 14 break; 15 } 16 } 17 if (match !== null) break; 18 } 19 return data; 20} 21 22export { applyRules };