de-compromise 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +15 -11
- package/builds/de-compromise.cjs +2284 -1216
- package/builds/de-compromise.min.js +3 -1
- package/builds/de-compromise.mjs +3 -1
- package/package.json +42 -39
- package/src/01-one/lexicon/_data.js +22 -22
- package/src/01-one/lexicon/compute/root.js +3 -3
- package/src/01-one/lexicon/lexicon.js +6 -6
- package/src/01-one/lexicon/methods/_data.js +29 -174
- package/src/01-one/lexicon/methods/adjectives/_test-back.js +1 -1
- package/src/01-one/lexicon/methods/adjectives/_test.js +4 -4
- package/src/01-one/lexicon/methods/adjectives/inflect.js +1 -1
- package/src/01-one/lexicon/methods/adjectives/new/adjective.js +1 -1
- package/src/01-one/lexicon/methods/adjectives/new/comparative.js +1 -1
- package/src/01-one/lexicon/methods/adjectives/new/superlative.js +1 -1
- package/src/01-one/lexicon/methods/adjectives/toRoot.js +1 -1
- package/src/01-one/lexicon/methods/nouns/_test-back.js +6 -6
- package/src/01-one/lexicon/methods/nouns/new.js +1 -1
- package/src/01-one/lexicon/methods/nouns/toPlural.js +2 -2
- package/src/01-one/lexicon/methods/nouns/toSingular.js +2 -2
- package/src/01-one/lexicon/methods/verbs/conjugate.js +4 -4
- package/src/01-one/lexicon/methods/verbs/custom/_test-from.js +6 -6
- package/src/01-one/lexicon/methods/verbs/custom/_test-to.js +7 -7
- package/src/01-one/lexicon/methods/verbs/custom/fromPastParticiple.js +1 -1
- package/src/01-one/lexicon/methods/verbs/custom/rules.js +2 -2
- package/src/01-one/lexicon/methods/verbs/custom/toPastParticiple.js +2 -2
- package/src/01-one/lexicon/methods/verbs/irregulars.js +6 -6
- package/src/01-one/lexicon/methods/verbs/toRoot.js +8 -8
- package/src/01-one/splitter/build.js +3 -3
- package/src/01-one/splitter/compute/splitter.js +4 -4
- package/src/01-one/splitter/model/index.js +4 -4
- package/src/01-one/splitter/trie.js +3 -3
- package/src/01-one/tagset/plugin.js +1 -1
- package/src/01-one/tagset/tags/dates.js +10 -0
- package/src/01-one/tagset/tags/misc.js +21 -2
- package/src/01-one/tagset/tags/nouns.js +26 -1
- package/src/01-one/tagset/tags/values.js +10 -0
- package/src/01-one/tagset/tags/verbs.js +18 -0
- package/src/01-one/tokenizer/is-sentence.js +3 -3
- package/src/01-one/tokenizer/unicode.js +2 -2
- package/src/02-two/preTagger/compute/1st-pass/regex.js +4 -4
- package/src/02-two/preTagger/compute/1st-pass/titlecase.js +2 -2
- package/src/02-two/preTagger/compute/1st-pass/year.js +2 -2
- package/src/02-two/preTagger/compute/2nd-pass/acronym.js +3 -3
- package/src/02-two/preTagger/compute/2nd-pass/fallback.js +2 -2
- package/src/02-two/preTagger/compute/2nd-pass/prefix-lookup.js +5 -5
- package/src/02-two/preTagger/compute/2nd-pass/suffix-lookup.js +5 -5
- package/src/02-two/preTagger/compute/index.js +1 -1
- package/src/03-three/adjectives/api.js +3 -3
- package/src/03-three/nouns/api.js +6 -6
- package/src/03-three/numbers/api.js +35 -35
- package/src/03-three/numbers/data.js +2 -2
- package/src/03-three/numbers/format/index.js +2 -2
- package/src/03-three/numbers/format/toText.js +12 -12
- package/src/03-three/numbers/parse/fromText.js +3 -3
- package/src/03-three/numbers/parse/index.js +5 -5
- package/src/03-three/verbs/api.js +1 -1
- package/src/_version.js +1 -1
- package/src/index.js +2 -2
- package/types/index.d.cts +9 -0
- package/types/index.d.ts +2 -2
- package/types/view/de.ts +1 -1
- package/types/view/one.ts +1 -1
|
@@ -5,7 +5,7 @@ import inflectAdj from './methods/adjectives/inflect.js'
|
|
|
5
5
|
import inflectNoun from './methods/nouns/toPlural.js'
|
|
6
6
|
import misc from './misc.js'
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
const lexicon = Object.assign({}, misc)
|
|
9
9
|
|
|
10
10
|
const tagMap = {
|
|
11
11
|
first: 'FirstPerson',
|
|
@@ -22,7 +22,7 @@ const canEnrich = (lex, w) => !lex[w] || lex[w] === 'Verb'
|
|
|
22
22
|
|
|
23
23
|
const addWords = function (obj, tag, lex) {
|
|
24
24
|
Object.keys(obj).forEach(k => {
|
|
25
|
-
|
|
25
|
+
const w = obj[k]
|
|
26
26
|
if (canEnrich(lex, w) && tagMap[k]) {
|
|
27
27
|
lex[w] = [tag, tagMap[k]]
|
|
28
28
|
}
|
|
@@ -30,9 +30,9 @@ const addWords = function (obj, tag, lex) {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
// 1st pass - add all words directly from the lexicon
|
|
33
|
-
|
|
33
|
+
const unpacked = {}
|
|
34
34
|
Object.keys(lexData).forEach(tag => {
|
|
35
|
-
|
|
35
|
+
const wordsObj = unpack(lexData[tag])
|
|
36
36
|
unpacked[tag] = Object.keys(wordsObj)
|
|
37
37
|
unpacked[tag].forEach(w => {
|
|
38
38
|
lexicon[w] = lexicon[w] || tag
|
|
@@ -74,12 +74,12 @@ Object.keys(unpacked).forEach(tag => {
|
|
|
74
74
|
}
|
|
75
75
|
// inflect our adjectives
|
|
76
76
|
if (tag === 'Adjective') {
|
|
77
|
-
|
|
77
|
+
const obj = inflectAdj(w)
|
|
78
78
|
addWords(obj, 'Adjective', lexicon)
|
|
79
79
|
}
|
|
80
80
|
// add plural forms for our nouns
|
|
81
81
|
if (tag === 'Noun' || tag === 'MaleNoun' || tag === 'FemaleNoun' || tag === 'NeuterNoun') {
|
|
82
|
-
|
|
82
|
+
const plural = inflectNoun(w).one
|
|
83
83
|
if (plural && plural !== w) {
|
|
84
84
|
if (!lexicon[plural]) {
|
|
85
85
|
lexicon[plural] = 'Plural'
|