From cb5f9f576aa6747f4ce85b727ea1c3b62c8fd047 Mon Sep 17 00:00:00 2001 From: Richard Moore Date: Wed, 3 Oct 2018 22:47:44 -0400 Subject: [PATCH] Fixed French and Spanish for browsers without Uint8Array.forEach. --- src.ts/wordlists/lang-es.ts | 13 ++++--------- src.ts/wordlists/lang-fr.ts | 12 ++++-------- 2 files changed, 8 insertions(+), 17 deletions(-) diff --git a/src.ts/wordlists/lang-es.ts b/src.ts/wordlists/lang-es.ts index d365076e22..d7985ce8fe 100644 --- a/src.ts/wordlists/lang-es.ts +++ b/src.ts/wordlists/lang-es.ts @@ -9,19 +9,14 @@ let lookup: { [word: string]: number } = {}; let wordlist: Array = null; function dropDiacritic(word: string): string { - let output: Array = []; - toUtf8Bytes(word.normalize('NFD').toLowerCase()).forEach((c) => { - if ((c >= 65 && c <= 90) || (c >= 97 && c <= 123)) { - output.push(c); - } - }); - return toUtf8String(output); + return toUtf8String(Array.prototype.filter.call(toUtf8Bytes(word.normalize('NFD').toLowerCase()), (c: number) => { + return ((c >= 65 && c <= 90) || (c >= 97 && c <= 123)); + })); } function expand(word: string): string { let output: Array = []; - - toUtf8Bytes(word).forEach((c) => { + Array.prototype.forEach.call(toUtf8Bytes(word), (c: number) => { // Acute accent if (c === 47) { output.push(204); diff --git a/src.ts/wordlists/lang-fr.ts b/src.ts/wordlists/lang-fr.ts index eb8597fc39..f84c1f92cb 100644 --- a/src.ts/wordlists/lang-fr.ts +++ b/src.ts/wordlists/lang-fr.ts @@ -9,19 +9,15 @@ let wordlist: Array = null; let lookup: { [word: string]: number } = { } function dropDiacritic(word: string): string { - let output: Array = []; - toUtf8Bytes(word.normalize('NFD').toLowerCase()).forEach((c) => { - if ((c >= 65 && c <= 90) || (c >= 97 && c <= 123)) { - output.push(c); - } - }); - return toUtf8String(output); + return toUtf8String(Array.prototype.filter.call(toUtf8Bytes(word.normalize('NFD').toLowerCase()), (c: number) => { + return ((c >= 65 && c <= 90) || (c >= 97 && c <= 123)); + })); } function expand(word: string): string { let output: Array = []; - toUtf8Bytes(word).forEach((c) => { + Array.prototype.forEach.call(toUtf8Bytes(word), (c: number) => { // Acute accent if (c === 47) { output.push(204);