UNPKG

@enonic/js-utils

Version:
64 lines (63 loc) 1.79 kB
// string/unStem.ts function unStemEnglish(word) { return ["arsen", "commun", "gener", "'s'", "'s", "ied", "s", "ies", "sses", "ss", "us", "", "bb", "dd", "ff", "gg", "bl", "mm", "nn", "pp", "rr", "at", "tt", "iz", "ed", "eed", "ing", "edly", "eedly", "ingly", "anci", "enci", "ogi", "li", "bli", "abli", "alli", "fulli", "lessli", "ousli", "entli", "aliti", "biliti", "iviti", "tional", "ational", "alism", "ation", "ization", "izer", "ator", "iveness", "fulness", "ousness", "icate", "ative", "alize", "iciti", "ical", "tional", "ational", "ful", "ness", "ic", "ance", "ence", "able", "ible", "ate", "ive", "ize", "iti", "al", "ism", "ion", "er", "ous", "ant", "ent", "ment", "ement", "e", "l", "succeed", "proceed", "exceed", "canning", "inning", "earring", "herring", "outing", "andes", "atlas", "bias", "cosmos", "dying", "early", "gently", "howe", "idly", "lying", "news", "only", "singly", "skies", "skis", "sky", "tying", "ugly"].map((post) => `${word}${post}`); } function unStemNorwegian(word) { return [ "a", "e", "ede", "ande", "ende", "ane", "ene", "hetene", "erte", "en", "heten", "ar", "er", "heter", "s", "as", "es", "edes", "endes", "enes", "hetenes", "ens", "hetens", "ers", "ets", "et", "het", "ert", "ast", "dt", "vt", "leg", "eleg", "ig", "eig", "lig", "elig", "els", "lov", "elov", "slov", "hetslov" ].map((post) => `${word}${post}`); } function unStem(word, language) { switch (language) { case "en": return unStemEnglish(word); case "no": return unStemNorwegian(word); default: throw new Error(`Unsupported lanugage:${language}`); } } export { unStem };