diff options
Diffstat (limited to 'node_modules/locutus/php/strings/metaphone.js.map')
-rw-r--r-- | node_modules/locutus/php/strings/metaphone.js.map | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/node_modules/locutus/php/strings/metaphone.js.map b/node_modules/locutus/php/strings/metaphone.js.map new file mode 100644 index 0000000..4882abc --- /dev/null +++ b/node_modules/locutus/php/strings/metaphone.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../../src/php/strings/metaphone.js"],"names":["module","exports","metaphone","word","maxPhonemes","type","isNaN","isFinite","Math","floor","alpha","vowel","soft","leadingNonAlpha","RegExp","toUpperCase","replace","is","p","c","indexOf","i","cc","charAt","nc","nnc","pc","l","length","meta","traditional","substr"],"mappings":"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","file":"metaphone.js","sourcesContent":["module.exports = function metaphone (word, maxPhonemes) {\n // discuss at: http://locutus.io/php/metaphone/\n // original by: Greg Frazier\n // improved by: Brett Zamir (http://brett-zamir.me)\n // improved by: RafaĆ Kukawski (http://blog.kukawski.pl)\n // example 1: metaphone('Gnu')\n // returns 1: 'N'\n // example 2: metaphone('bigger')\n // returns 2: 'BKR'\n // example 3: metaphone('accuracy')\n // returns 3: 'AKKRS'\n // example 4: metaphone('batch batcher')\n // returns 4: 'BXBXR'\n\n var type = typeof word\n\n if (type === 'undefined' || type === 'object' && word !== null) {\n // weird!\n return null\n }\n\n // infinity and NaN values are treated as strings\n if (type === 'number') {\n if (isNaN(word)) {\n word = 'NAN'\n } else if (!isFinite(word)) {\n word = 'INF'\n }\n }\n\n if (maxPhonemes < 0) {\n return false\n }\n\n maxPhonemes = Math.floor(+maxPhonemes) || 0\n\n // alpha depends on locale, so this var might need an update\n // or should be turned into a regex\n // for now assuming pure a-z\n var alpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n var vowel = 'AEIOU'\n var soft = 'EIY'\n var leadingNonAlpha = new RegExp('^[^' + alpha + ']+')\n\n word = typeof word === 'string' ? word : ''\n word = word.toUpperCase().replace(leadingNonAlpha, '')\n\n if (!word) {\n return ''\n }\n\n var is = function (p, c) {\n return c !== '' && p.indexOf(c) !== -1\n }\n\n var i = 0\n var cc = word.charAt(0) // current char. Short name because it's used all over the function\n var nc = word.charAt(1) // next char\n var nnc // after next char\n var pc // previous char\n var l = word.length\n var meta = ''\n // traditional is an internal param that could be exposed for now let it be a local var\n var traditional = true\n\n switch (cc) {\n case 'A':\n meta += nc === 'E' ? nc : cc\n i += 1\n break\n case 'G':\n case 'K':\n case 'P':\n if (nc === 'N') {\n meta += nc\n i += 2\n }\n break\n case 'W':\n if (nc === 'R') {\n meta += nc\n i += 2\n } else if (nc === 'H' || is(vowel, nc)) {\n meta += 'W'\n i += 2\n }\n break\n case 'X':\n meta += 'S'\n i += 1\n break\n case 'E':\n case 'I':\n case 'O':\n case 'U':\n meta += cc\n i++\n break\n }\n\n for (; i < l && (maxPhonemes === 0 || meta.length < maxPhonemes); i += 1) { // eslint-disable-line no-unmodified-loop-condition,max-len\n cc = word.charAt(i)\n nc = word.charAt(i + 1)\n pc = word.charAt(i - 1)\n nnc = word.charAt(i + 2)\n\n if (cc === pc && cc !== 'C') {\n continue\n }\n\n switch (cc) {\n case 'B':\n if (pc !== 'M') {\n meta += cc\n }\n break\n case 'C':\n if (is(soft, nc)) {\n if (nc === 'I' && nnc === 'A') {\n meta += 'X'\n } else if (pc !== 'S') {\n meta += 'S'\n }\n } else if (nc === 'H') {\n meta += !traditional && (nnc === 'R' || pc === 'S') ? 'K' : 'X'\n i += 1\n } else {\n meta += 'K'\n }\n break\n case 'D':\n if (nc === 'G' && is(soft, nnc)) {\n meta += 'J'\n i += 1\n } else {\n meta += 'T'\n }\n break\n case 'G':\n if (nc === 'H') {\n if (!(is('BDH', word.charAt(i - 3)) || word.charAt(i - 4) === 'H')) {\n meta += 'F'\n i += 1\n }\n } else if (nc === 'N') {\n if (is(alpha, nnc) && word.substr(i + 1, 3) !== 'NED') {\n meta += 'K'\n }\n } else if (is(soft, nc) && pc !== 'G') {\n meta += 'J'\n } else {\n meta += 'K'\n }\n break\n case 'H':\n if (is(vowel, nc) && !is('CGPST', pc)) {\n meta += cc\n }\n break\n case 'K':\n if (pc !== 'C') {\n meta += 'K'\n }\n break\n case 'P':\n meta += nc === 'H' ? 'F' : cc\n break\n case 'Q':\n meta += 'K'\n break\n case 'S':\n if (nc === 'I' && is('AO', nnc)) {\n meta += 'X'\n } else if (nc === 'H') {\n meta += 'X'\n i += 1\n } else if (!traditional && word.substr(i + 1, 3) === 'CHW') {\n meta += 'X'\n i += 2\n } else {\n meta += 'S'\n }\n break\n case 'T':\n if (nc === 'I' && is('AO', nnc)) {\n meta += 'X'\n } else if (nc === 'H') {\n meta += '0'\n i += 1\n } else if (word.substr(i + 1, 2) !== 'CH') {\n meta += 'T'\n }\n break\n case 'V':\n meta += 'F'\n break\n case 'W':\n case 'Y':\n if (is(vowel, nc)) {\n meta += cc\n }\n break\n case 'X':\n meta += 'KS'\n break\n case 'Z':\n meta += 'S'\n break\n case 'F':\n case 'J':\n case 'L':\n case 'M':\n case 'N':\n case 'R':\n meta += cc\n break\n }\n }\n\n return meta\n}\n"]}
\ No newline at end of file |