@finbheara/names 0.9.1 → 0.10.0

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.
Files changed (40) hide show
  1. package/README.md +38 -1
  2. package/dist/chunks/{index-b2k3er3h.js → index-7sppf1vh.js} +90 -8
  3. package/dist/chunks/{index-b2k3er3h.js.map → index-7sppf1vh.js.map} +5 -3
  4. package/dist/chunks/{index-0qptxnwh.js → index-7vvt5hhy.js} +13 -2
  5. package/dist/chunks/{index-0qptxnwh.js.map → index-7vvt5hhy.js.map} +2 -2
  6. package/dist/chunks/index-ebebeamh.js +446 -0
  7. package/dist/chunks/index-ebebeamh.js.map +10 -0
  8. package/dist/chunks/{index-fzzq5txh.js → index-khxa4qjy.js} +2 -2
  9. package/dist/chunks/{index-2fsdvhaf.js → index-kw6gbrnq.js} +2 -2
  10. package/dist/chunks/{index-d4wr471g.js → index-pncn9y2r.js} +2 -2
  11. package/dist/chunks/index-qsznkk4s.js +3 -0
  12. package/dist/chunks/index-qsznkk4s.js.map +9 -0
  13. package/dist/chunks/{index-852w8w1s.js → index-r5fp3znj.js} +3 -3
  14. package/dist/chunks/{index-0vg56t5v.js → index-yq8hsd1f.js} +3 -3
  15. package/dist/chunks/phrase-672g18kw.js +11 -0
  16. package/dist/classifier/index.js +3 -3
  17. package/dist/cli/census.js +4 -4
  18. package/dist/index.js +25 -8
  19. package/dist/index.js.map +1 -1
  20. package/dist/lexicon/index.js +1 -1
  21. package/dist/measure/index.js +4 -4
  22. package/dist/normalize/index.js +17 -5
  23. package/dist/normalize/index.js.map +1 -1
  24. package/dist/phonetic/index.js +10 -0
  25. package/dist/phonetic/index.js.map +9 -0
  26. package/dist/types/index.d.ts +2 -0
  27. package/dist/types/normalize/block-keys.d.ts +53 -0
  28. package/dist/types/normalize/index.d.ts +2 -0
  29. package/dist/types/normalize/name-columns.d.ts +51 -0
  30. package/dist/types/phonetic/double-metaphone.d.ts +25 -0
  31. package/dist/types/phonetic/index.d.ts +11 -0
  32. package/names.txt +11 -0
  33. package/package.json +8 -2
  34. package/dist/chunks/phrase-dczgr4vs.js +0 -11
  35. /package/dist/chunks/{index-fzzq5txh.js.map → index-khxa4qjy.js.map} +0 -0
  36. /package/dist/chunks/{index-2fsdvhaf.js.map → index-kw6gbrnq.js.map} +0 -0
  37. /package/dist/chunks/{index-d4wr471g.js.map → index-pncn9y2r.js.map} +0 -0
  38. /package/dist/chunks/{index-852w8w1s.js.map → index-r5fp3znj.js.map} +0 -0
  39. /package/dist/chunks/{index-0vg56t5v.js.map → index-yq8hsd1f.js.map} +0 -0
  40. /package/dist/chunks/{phrase-dczgr4vs.js.map → phrase-672g18kw.js.map} +0 -0
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Double Metaphone: a phonetic key for a word, as it sounds rather than as it is spelt.
3
+ *
4
+ * Unlike Soundex it emits TWO codes per word, a primary and a secondary
5
+ * (alternate), so a word can be looked up under either pronunciation. That
6
+ * double-code behaviour is what a sound-alike lookup wants: `Smith` and `Smyth`
7
+ * (SM0 / XMT) collide, and `Kavanagh` / `Cavanagh` both encode to KFNK. It is a
8
+ * general key, not a surname key: a transcribed spoken word and a printed name are
9
+ * asked the same question, how does this sound.
10
+ *
11
+ * It follows the reference Double Metaphone control flow (2000): the same silent
12
+ * onsets (GN/KN/PN/WR/PS), GH / CH / C-variant / PH->F / vowel-only-at-start
13
+ * rules, Slavo-Germanic detection, and the 4-character code cap. It is NOT
14
+ * guaranteed byte-perfect against every entry of the reference test table, but it
15
+ * reproduces the standard rule set and groups the classic sound-alikes.
16
+ *
17
+ * Plain TypeScript, no dependencies and no state.
18
+ */
19
+ /**
20
+ * Encode `word` into its [primary, secondary] Double Metaphone codes. When the
21
+ * word has no phonetic alternate, secondary === primary. Non-letters are left
22
+ * to the caller to strip (`metaphoneBlocks` in `/normalize` keeps A-Z only); this
23
+ * operates on the raw uppercased string.
24
+ */
25
+ export declare function doubleMetaphone(word: string): [string, string];
@@ -0,0 +1,11 @@
1
+ /**
2
+ * `@finbheara/names/phonetic` — how a word sounds, as a key.
3
+ *
4
+ * A phonetic key groups spellings that are pronounced alike: `Smith` and `Smyth`,
5
+ * `Kavanagh` and `Cavanagh`, or a transcribed spoken word and the name it was
6
+ * heard as. It decides nothing about identity; two words that share a code are
7
+ * worth comparing, not the same.
8
+ *
9
+ * Self-contained: no lexicon, no particles, no state.
10
+ */
11
+ export { doubleMetaphone } from "./double-metaphone.ts";
package/names.txt CHANGED
@@ -5442,6 +5442,7 @@ Dial:L
5442
5442
  Diamond:FL
5443
5443
  Diana:F
5444
5444
  Diane:F
5445
+ Dianne:F
5445
5446
  Diarmuid:M
5446
5447
  Diaz:L
5447
5448
  DiBiase:L
@@ -6189,6 +6190,7 @@ Eichler:L
6189
6190
  Eid:L
6190
6191
  Eide:L
6191
6192
  Eidem:L
6193
+ Eiden:L
6192
6194
  Eiermann:L
6193
6195
  Eifert:L
6194
6196
  Eigel:L
@@ -10142,6 +10144,7 @@ Jaime:NL
10142
10144
  Jaimelynn:F
10143
10145
  Jaimie:F
10144
10146
  Jaina:F
10147
+ Jair:M
10145
10148
  Jaisy:F
10146
10149
  Jajko:L
10147
10150
  Jajuga:L
@@ -10394,6 +10397,7 @@ Jirasek:L
10394
10397
  Jirschele:L
10395
10398
  Jit:L
10396
10399
  Jiu:L
10400
+ Jo:N
10397
10401
  Joan:F
10398
10402
  Joanette:L
10399
10403
  Joanie:F
@@ -13032,6 +13036,7 @@ Luce:L
13032
13036
  Lucero:L
13033
13037
  Lucey:A
13034
13038
  Lucht:L
13039
+ Luci:F
13035
13040
  Lucia:F
13036
13041
  Luciana:F
13037
13042
  Luciani:L
@@ -13467,6 +13472,7 @@ Makhlouf:L
13467
13472
  Maki:L
13468
13473
  Makina:F
13469
13474
  Makowski:L6
13475
+ Maks:M
13470
13476
  Maksim:M
13471
13477
  Makyla:F
13472
13478
  Malachowsky:L
@@ -13833,6 +13839,7 @@ Maryfrances:F
13833
13839
  MaryGrace:F
13834
13840
  Maryia:F
13835
13841
  Maryjane:F
13842
+ MaryJo:F
13836
13843
  MaryKate:F
13837
13844
  MaryKathleen:F
13838
13845
  Maryland:G
@@ -13891,6 +13898,7 @@ Mather:L
13891
13898
  Mathers:L
13892
13899
  Mathes:L
13893
13900
  Matheson:L5
13901
+ Mathew:M
13894
13902
  Mathews:L
13895
13903
  Mathewson:L5
13896
13904
  Mathias:L
@@ -19991,6 +19999,7 @@ Slazak:L
19991
19999
  Slead:L
19992
20000
  Sleeth:L
19993
20001
  Slemon:L
20002
+ Slentz:L
19994
20003
  Slevin:L
19995
20004
  Sleziak:L
19996
20005
  Slicer:LC
@@ -20569,6 +20578,7 @@ Stilley:L
20569
20578
  Stilling:LC
20570
20579
  Stillman:L
20571
20580
  Stillson:L5
20581
+ Stilson:L
20572
20582
  Stimson:L5
20573
20583
  Stina:F
20574
20584
  Stine:L
@@ -21506,6 +21516,7 @@ Topper:L
21506
21516
  Tor:M
21507
21517
  Torah:F
21508
21518
  Toren:L
21519
+ Torey:N
21509
21520
  Tori:F
21510
21521
  Toriana:F
21511
21522
  Torie:N
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finbheara/names",
3
- "version": "0.9.1",
3
+ "version": "0.10.0",
4
4
  "description": "A curated lexicon of personal, school and place names, the surname-particle vocabulary, a phrase classifier and a person-name normalizer",
5
5
  "keywords": [
6
6
  "names",
@@ -11,7 +11,9 @@
11
11
  "surnames",
12
12
  "given-names",
13
13
  "irish",
14
- "particles"
14
+ "particles",
15
+ "phonetic",
16
+ "double-metaphone"
15
17
  ],
16
18
  "license": "MIT",
17
19
  "author": "Finbheara Systems",
@@ -42,6 +44,10 @@
42
44
  "types": "./dist/types/normalize/index.d.ts",
43
45
  "default": "./dist/normalize/index.js"
44
46
  },
47
+ "./phonetic": {
48
+ "types": "./dist/types/phonetic/index.d.ts",
49
+ "default": "./dist/phonetic/index.js"
50
+ },
45
51
  "./measure": {
46
52
  "types": "./dist/types/measure/index.d.ts",
47
53
  "default": "./dist/measure/index.js"
@@ -1,11 +0,0 @@
1
- import {
2
- phraseClassifier2
3
- } from "./index-852w8w1s.js";
4
- import"./index-2fsdvhaf.js";
5
- import"./index-0qptxnwh.js";
6
- export {
7
- phraseClassifier2 as phraseClassifier
8
- };
9
-
10
- //# debugId=BD8F5B3E6DE1DCF664756E2164756E21
11
- //# sourceMappingURL=phrase-dczgr4vs.js.map