UNPKG

compromise

Version:
58 lines (52 loc) 1.69 kB
'use strict'; //list of inconsistent parts-of-speech const conflicts = [ //top-level pos are all inconsistent ['Noun', 'Verb', 'Adjective', 'Adverb', 'Determiner', 'Conjunction', 'Preposition', 'QuestionWord', 'Expression', 'Url', 'PhoneNumber', 'Email', 'Emoji'], //exlusive-nouns ['Person', 'Organization', 'Value', 'Place', 'Actor', 'Demonym', 'Pronoun'], //things that can't be plural ['Plural', 'Singular'], ['Plural', 'Pronoun'], ['Plural', 'Person'], ['Plural', 'Organization'], ['Plural', 'Currency'], ['Plural', 'Ordinal'], //exlusive-people ['MaleName', 'FemaleName'], ['FirstName', 'LastName', 'Honorific'], //adjectives ['Comparative', 'Superlative'], //values ['Value', 'Verb', 'Adjective'], ['Value', 'Year'], ['Ordinal', 'Cardinal'], ['TextValue', 'NumericValue'], ['NiceNumber', 'TextValue'], ['Ordinal', 'Currency'], //$5.50th //verbs ['PastTense', 'PerfectTense', 'Pluperfect', 'FuturePerfect', 'Copula', 'Modal', 'Participle', 'Infinitive', 'Gerund'], //date ['Month', 'WeekDay', 'Year', 'Duration'], ['Particle', 'Conjunction', 'Adverb', 'Preposition'], ['Date', 'Verb', 'Adjective', 'Person'], //phrases ['NounPhrase', 'VerbPhrase', 'AdjectivePhrase', 'ConditionalPhrase'], //a/an -> 1 ['Value', 'Determiner'], ['Verb', 'NounPhrase'], ['Noun', 'VerbPhrase'], //cases ['UpperCase', 'TitleCase', 'CamelCase'] ]; const find = (tag) => { let arr = []; for (let i = 0; i < conflicts.length; i++) { if (conflicts[i].indexOf(tag) !== -1) { arr = arr.concat(conflicts[i]); } } return arr.filter((t) => t !== tag); }; module.exports = find; // console.log(find('Person'));