@konfeature/ap-email-guessr 0.1.1 → 0.1.3

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 (31) hide show
  1. package/package.json +25 -3
  2. package/src/lib/actions/find-email.d.ts.map +1 -1
  3. package/src/lib/actions/find-email.js +38 -35
  4. package/src/lib/actions/find-email.js.map +1 -1
  5. package/src/lib/actions/generate-emails.js +9 -13
  6. package/src/lib/actions/generate-emails.js.map +1 -1
  7. package/src/lib/common/dns.js +23 -26
  8. package/src/lib/common/dns.js.map +1 -1
  9. package/src/lib/common/find-email.d.ts +4 -2
  10. package/src/lib/common/find-email.d.ts.map +1 -1
  11. package/src/lib/common/find-email.js +36 -36
  12. package/src/lib/common/find-email.js.map +1 -1
  13. package/src/lib/common/find-person.js +59 -55
  14. package/src/lib/common/find-person.js.map +1 -1
  15. package/src/lib/common/http.js +7 -5
  16. package/src/lib/common/http.js.map +1 -1
  17. package/src/lib/common/mx-fingerprint.js +3 -4
  18. package/src/lib/common/mx-fingerprint.js.map +1 -1
  19. package/src/lib/common/patterns.js +5 -6
  20. package/src/lib/common/patterns.js.map +1 -1
  21. package/src/lib/common/providers/o365.js +73 -81
  22. package/src/lib/common/providers/o365.js.map +1 -1
  23. package/src/lib/common/verifier.d.ts +2 -0
  24. package/src/lib/common/verifier.d.ts.map +1 -1
  25. package/src/lib/common/verifiers/no2bounce-verifier.d.ts +18 -6
  26. package/src/lib/common/verifiers/no2bounce-verifier.d.ts.map +1 -1
  27. package/src/lib/common/verifiers/no2bounce-verifier.js +251 -97
  28. package/src/lib/common/verifiers/no2bounce-verifier.js.map +1 -1
  29. package/src/lib/common/verifiers/o365-verifier.d.ts.map +1 -1
  30. package/src/lib/common/verifiers/o365-verifier.js +17 -18
  31. package/src/lib/common/verifiers/o365-verifier.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mx-fingerprint.js","sourceRoot":"","sources":["../../../../src/lib/common/mx-fingerprint.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;AA2GH,sCAuBC;AAOD,gEAQC;AA7GD,+EAA+E;AAC/E,kEAAkE;AAClE,MAAM,KAAK,GAAgB;IACvB;QACI,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;QAC7D,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,CAAC,cAAc,EAAE,gBAAgB,EAAE,uBAAuB,CAAC;QACpE,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,uBAAuB,EAAE,aAAa,EAAE,cAAc,CAAC;QACjE,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC;QACtC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,CAAC,6BAA6B,EAAE,4BAA4B,CAAC;QACtE,eAAe,EAAE,IAAI;KACxB;IACD;QACI,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE;YACL,oBAAoB;YACpB,gBAAgB;YAChB,kBAAkB;YAClB,WAAW;SACd;QACD,YAAY,EAAE,IAAI;KACrB;IACD,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE;IAC/E,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE;IACzD,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE;IACtE;QACI,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,CAAC,qBAAqB,EAAE,cAAc,CAAC;KACnD;CACJ,CAAC;AAEF,MAAM,IAAI,GAAe;IACrB,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,KAAK;IAChB,eAAe,EAAE,KAAK;IACtB,YAAY,EAAE,KAAK;CACtB,CAAC;AAEF,MAAM,KAAK,GAAe;IACtB,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,iBAAiB;IACvB,SAAS,EAAE,KAAK;IAChB,eAAe,EAAE,KAAK;IACtB,YAAY,EAAE,KAAK;CACtB,CAAC;AAEF,uEAAuE;AACvE,SAAgB,aAAa,CAAC,OAAiB;;IAC3C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAE3E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CACvD,CAAC;QACF,IAAI,GAAG,EAAE,CAAC;YACN,OAAO;gBACH,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,MAAA,IAAI,CAAC,SAAS,mCAAI,KAAK;gBAClC,eAAe,EAAE,MAAA,IAAI,CAAC,eAAe,mCAAI,KAAK;gBAC9C,YAAY,EAAE,MAAA,IAAI,CAAC,YAAY,mCAAI,KAAK;aAC3C,CAAC;QACN,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CAAC,QAAoB;IAC3D,OAAO,CACH,QAAQ,CAAC,YAAY;QACrB,QAAQ,CAAC,EAAE,KAAK,MAAM;QACtB,QAAQ,CAAC,EAAE,KAAK,OAAO;QACvB,QAAQ,CAAC,EAAE,KAAK,QAAQ;QACxB,QAAQ,CAAC,EAAE,KAAK,UAAU,CAC7B,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"mx-fingerprint.js","sourceRoot":"","sources":["../../../../src/lib/common/mx-fingerprint.ts"],"names":[],"mappings":"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"}
@@ -12,10 +12,9 @@ exports.normalizeNamePart = normalizeNamePart;
12
12
  exports.normalizeDomain = normalizeDomain;
13
13
  exports.generateEmailCandidates = generateEmailCandidates;
14
14
  function stripDiacritics(input) {
15
- var _a;
16
15
  let result = "";
17
16
  for (const char of input.normalize("NFKD")) {
18
- const code = (_a = char.codePointAt(0)) !== null && _a !== void 0 ? _a : 0;
17
+ const code = char.codePointAt(0) ?? 0;
19
18
  // Drop combining diacritical marks (U+0300–U+036F).
20
19
  if (code >= 0x0300 && code <= 0x036f) {
21
20
  continue;
@@ -26,13 +25,13 @@ function stripDiacritics(input) {
26
25
  }
27
26
  /** Lowercase, strip accents and keep only [a-z0-9]. */
28
27
  function normalizeNamePart(value) {
29
- return stripDiacritics(value !== null && value !== void 0 ? value : "")
28
+ return stripDiacritics(value ?? "")
30
29
  .toLowerCase()
31
30
  .replace(/[^a-z0-9]/g, "");
32
31
  }
33
32
  /** Strip protocol, path, leading "@" and lowercase a domain input. */
34
33
  function normalizeDomain(value) {
35
- return (value !== null && value !== void 0 ? value : "")
34
+ return (value ?? "")
36
35
  .trim()
37
36
  .toLowerCase()
38
37
  .replace(/^https?:\/\//, "")
@@ -75,7 +74,6 @@ const PATTERNS = [
75
74
  * Returns an empty array when the domain or both name parts are missing.
76
75
  */
77
76
  function generateEmailCandidates(params) {
78
- var _a;
79
77
  const first = normalizeNamePart(params.firstName);
80
78
  const last = normalizeNamePart(params.lastName);
81
79
  const domain = normalizeDomain(params.domain);
@@ -98,7 +96,8 @@ function generateEmailCandidates(params) {
98
96
  seen.add(local);
99
97
  locals.push(local);
100
98
  }
101
- const limit = (_a = params.maxVariants) !== null && _a !== void 0 ? _a : (params.patternSet === "common" ? COMMON_LIMIT : locals.length);
99
+ const limit = params.maxVariants ??
100
+ (params.patternSet === "common" ? COMMON_LIMIT : locals.length);
102
101
  return locals
103
102
  .slice(0, Math.max(0, limit))
104
103
  .map((local) => `${local}@${domain}`);
@@ -1 +1 @@
1
- {"version":3,"file":"patterns.js","sourceRoot":"","sources":["../../../../src/lib/common/patterns.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAgBH,8CAIC;AAGD,0CAQC;AA4DD,0DAkCC;AA3HD,SAAS,eAAe,CAAC,KAAa;;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,mCAAI,CAAC,CAAC;QACtC,oDAAoD;QACpD,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;YACnC,SAAS;QACb,CAAC;QACD,MAAM,IAAI,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,uDAAuD;AACvD,SAAgB,iBAAiB,CAAC,KAAa;IAC3C,OAAO,eAAe,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC;SAC9B,WAAW,EAAE;SACb,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,sEAAsE;AACtE,SAAgB,eAAe,CAAC,KAAa;IACzC,OAAO,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC;SACf,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;SACjB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAqBD,MAAM,gBAAgB,GAAG,mCAAmC,CAAC;AAE7D,kFAAkF;AAClF,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,GAAW,EAAE,CAAS,EAAU,EAAE,CACvD,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAEnC,4EAA4E;AAC5E,4EAA4E;AAC5E,+EAA+E;AAC/E,gDAAgD;AAChD,MAAM,QAAQ,GAAiC;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,2BAA2B;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,2BAA2B;IAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW;IACxC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW;IACxC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;CAChD,CAAC;AAEF;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,MAA4B;;IAChE,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAc;QACrB,KAAK;QACL,IAAI;QACJ,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;KACrB,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7D,SAAS;QACb,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,KAAK,GACP,MAAA,MAAM,CAAC,WAAW,mCAClB,CAAC,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEpE,OAAO,MAAM;SACR,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;SAC5B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"patterns.js","sourceRoot":"","sources":["../../../../src/lib/common/patterns.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAgBH,8CAIC;AAGD,0CAQC;AA4DD,0DAkCC;AA3HD,SAAS,eAAe,CAAC,KAAa;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtC,oDAAoD;QACpD,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;YACnC,SAAS;QACb,CAAC;QACD,MAAM,IAAI,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,uDAAuD;AACvD,SAAgB,iBAAiB,CAAC,KAAa;IAC3C,OAAO,eAAe,CAAC,KAAK,IAAI,EAAE,CAAC;SAC9B,WAAW,EAAE;SACb,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,sEAAsE;AACtE,SAAgB,eAAe,CAAC,KAAa;IACzC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;SACf,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;SACjB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAqBD,MAAM,gBAAgB,GAAG,mCAAmC,CAAC;AAE7D,kFAAkF;AAClF,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,GAAW,EAAE,CAAS,EAAU,EAAE,CACvD,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAEnC,4EAA4E;AAC5E,4EAA4E;AAC5E,+EAA+E;AAC/E,gDAAgD;AAChD,MAAM,QAAQ,GAAiC;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,2BAA2B;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,2BAA2B;IAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW;IACxC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa;IAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;IAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;IAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW;IACxC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY;CAChD,CAAC;AAEF;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,MAA4B;IAChE,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAc;QACrB,KAAK;QACL,IAAI;QACJ,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;KACrB,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7D,SAAS;QACb,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,KAAK,GACP,MAAM,CAAC,WAAW;QAClB,CAAC,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEpE,OAAO,MAAM;SACR,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;SAC5B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;AAC9C,CAAC"}
@@ -25,7 +25,6 @@ exports.isMicrosoftConsumerDomain = isMicrosoftConsumerDomain;
25
25
  exports.interpretIfExists = interpretIfExists;
26
26
  exports.getUserRealm = getUserRealm;
27
27
  exports.checkO365Account = checkO365Account;
28
- const tslib_1 = require("tslib");
29
28
  const http_1 = require("../http");
30
29
  exports.O365_UNCHECKED = {
31
30
  checked: false,
@@ -77,60 +76,55 @@ function interpretIfExists(code) {
77
76
  return null;
78
77
  }
79
78
  /** Classify a domain's Microsoft namespace. Returns null on any failure. */
80
- function getUserRealm(domain, timeoutMs) {
81
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
82
- const login = encodeURIComponent(`probe@${domain}`);
83
- try {
84
- const res = yield (0, http_1.httpRequest)({
85
- url: `https://login.microsoftonline.com/getuserrealm.srf?login=${login}&json=1`,
86
- method: "GET",
87
- timeoutMs,
88
- });
89
- if (res.status !== 200) {
90
- return null;
91
- }
92
- const data = JSON.parse(res.body);
93
- const ns = data.NameSpaceType;
94
- if (ns === "Managed" || ns === "Federated" || ns === "Unknown") {
95
- return ns;
96
- }
79
+ async function getUserRealm(domain, timeoutMs) {
80
+ const login = encodeURIComponent(`probe@${domain}`);
81
+ try {
82
+ const res = await (0, http_1.httpRequest)({
83
+ url: `https://login.microsoftonline.com/getuserrealm.srf?login=${login}&json=1`,
84
+ method: "GET",
85
+ timeoutMs,
86
+ });
87
+ if (res.status !== 200) {
97
88
  return null;
98
89
  }
99
- catch (_a) {
100
- return null;
90
+ const data = JSON.parse(res.body);
91
+ const ns = data.NameSpaceType;
92
+ if (ns === "Managed" || ns === "Federated" || ns === "Unknown") {
93
+ return ns;
101
94
  }
102
- });
95
+ return null;
96
+ }
97
+ catch {
98
+ return null;
99
+ }
103
100
  }
104
101
  /** Query GetCredentialType for a single address. Returns null code on failure. */
105
- function probeCredentialType(email, timeoutMs) {
106
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
107
- var _a;
108
- try {
109
- const res = yield (0, http_1.httpRequest)({
110
- url: "https://login.microsoftonline.com/common/GetCredentialType?mkt=en-US",
111
- method: "POST",
112
- headers: { "Content-Type": "application/json; charset=UTF-8" },
113
- body: JSON.stringify({
114
- Username: email,
115
- isOtherIdpSupported: true,
116
- }),
117
- timeoutMs,
118
- });
119
- if (res.status !== 200) {
120
- return { ifExistsResult: null, throttled: false };
121
- }
122
- const data = JSON.parse(res.body);
123
- return {
124
- ifExistsResult: typeof data.IfExistsResult === "number"
125
- ? data.IfExistsResult
126
- : null,
127
- throttled: ((_a = data.ThrottleStatus) !== null && _a !== void 0 ? _a : 0) !== 0,
128
- };
129
- }
130
- catch (_b) {
102
+ async function probeCredentialType(email, timeoutMs) {
103
+ try {
104
+ const res = await (0, http_1.httpRequest)({
105
+ url: "https://login.microsoftonline.com/common/GetCredentialType?mkt=en-US",
106
+ method: "POST",
107
+ headers: { "Content-Type": "application/json; charset=UTF-8" },
108
+ body: JSON.stringify({
109
+ Username: email,
110
+ isOtherIdpSupported: true,
111
+ }),
112
+ timeoutMs,
113
+ });
114
+ if (res.status !== 200) {
131
115
  return { ifExistsResult: null, throttled: false };
132
116
  }
133
- });
117
+ const data = JSON.parse(res.body);
118
+ return {
119
+ ifExistsResult: typeof data.IfExistsResult === "number"
120
+ ? data.IfExistsResult
121
+ : null,
122
+ throttled: (data.ThrottleStatus ?? 0) !== 0,
123
+ };
124
+ }
125
+ catch {
126
+ return { ifExistsResult: null, throttled: false };
127
+ }
134
128
  }
135
129
  /**
136
130
  * Run the account-existence check for one email, given a pre-resolved namespace
@@ -138,42 +132,40 @@ function probeCredentialType(email, timeoutMs) {
138
132
  * be Microsoft-backed (Managed namespace, Microsoft MX, or a consumer domain);
139
133
  * otherwise GetCredentialType returns noise for unrelated domains.
140
134
  */
141
- function checkO365Account(email, namespace, applicable, timeoutMs) {
142
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
143
- if (!applicable) {
144
- return Object.assign(Object.assign({}, exports.O365_UNCHECKED), { namespace, reason: "not_microsoft_domain" });
145
- }
146
- const probe = yield probeCredentialType(email, timeoutMs);
147
- if (probe.throttled) {
148
- return {
149
- checked: false,
150
- exists: null,
151
- namespace,
152
- ifExistsResult: probe.ifExistsResult,
153
- reason: "throttled",
154
- };
155
- }
156
- if (probe.ifExistsResult === null) {
157
- return {
158
- checked: false,
159
- exists: null,
160
- namespace,
161
- ifExistsResult: null,
162
- reason: "no_result",
163
- };
164
- }
165
- const exists = interpretIfExists(probe.ifExistsResult);
135
+ async function checkO365Account(email, namespace, applicable, timeoutMs) {
136
+ if (!applicable) {
137
+ return { ...exports.O365_UNCHECKED, namespace, reason: "not_microsoft_domain" };
138
+ }
139
+ const probe = await probeCredentialType(email, timeoutMs);
140
+ if (probe.throttled) {
166
141
  return {
167
- checked: exists !== null,
168
- exists,
142
+ checked: false,
143
+ exists: null,
169
144
  namespace,
170
145
  ifExistsResult: probe.ifExistsResult,
171
- reason: exists === true
172
- ? "account_exists"
173
- : exists === false
174
- ? "account_not_found"
175
- : "inconclusive",
146
+ reason: "throttled",
147
+ };
148
+ }
149
+ if (probe.ifExistsResult === null) {
150
+ return {
151
+ checked: false,
152
+ exists: null,
153
+ namespace,
154
+ ifExistsResult: null,
155
+ reason: "no_result",
176
156
  };
177
- });
157
+ }
158
+ const exists = interpretIfExists(probe.ifExistsResult);
159
+ return {
160
+ checked: exists !== null,
161
+ exists,
162
+ namespace,
163
+ ifExistsResult: probe.ifExistsResult,
164
+ reason: exists === true
165
+ ? "account_exists"
166
+ : exists === false
167
+ ? "account_not_found"
168
+ : "inconclusive",
169
+ };
178
170
  }
179
171
  //# sourceMappingURL=o365.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"o365.js","sourceRoot":"","sources":["../../../../../src/lib/common/providers/o365.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"o365.js","sourceRoot":"","sources":["../../../../../src/lib/common/providers/o365.ts"],"names":[],"mappings":"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"}
@@ -18,5 +18,7 @@ export interface VerifyOutcome {
18
18
  export interface Verifier {
19
19
  readonly name: string;
20
20
  verify(email: string): Promise<VerifyOutcome>;
21
+ /** Optional bulk path: returns one outcome per input email, in input order. */
22
+ verifyBatch?(emails: string[]): Promise<VerifyOutcome[]>;
21
23
  }
22
24
  //# sourceMappingURL=verifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/verifier.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAE1E,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,aAAa,CAAC;IACvB,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CACjD"}
1
+ {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/verifier.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAE1E,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,aAAa,CAAC;IACvB,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC9C,+EAA+E;IAC/E,WAAW,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;CAC5D"}
@@ -1,11 +1,14 @@
1
1
  /**
2
- * Verifier adapter for the no2bounce API (wire format confirmed against the
3
- * live API).
2
+ * Verifier adapter for the no2bounce API (wire format confirmed against the live
3
+ * API; the published docs were out of date).
4
4
  *
5
- * Async flow: POST a 1-email batch to get a `trackingId` (under `data`), then
6
- * GET-poll `?trackingId=` until the *top-level* `overallStatus` is "Completed".
7
- * For a single email the top-level count fields are that email's verdict.
8
- * Billing is 1 credit per email (`creditDebited`), with no refund on undeliverable.
5
+ * Async flow: POST an `emailList` to get a `trackingId` (under `data`), then
6
+ * GET-poll `?trackingId=`. A single address completes with top-level aggregate
7
+ * counts that are that address's verdict. A multi-address batch completes with
8
+ * those same counts (now sums, which can't identify individual addresses) plus
9
+ * `result.downloadFile` — a signed CSV whose rows
10
+ * (`email,finalScore,finalScoreValue,catchall`) carry the per-address verdicts.
11
+ * Billing is 1 credit per email with no refund, charged on submit.
9
12
  */
10
13
  import type { Verifier, VerifyVerdict } from "../verifier";
11
14
  export interface No2BounceOptions {
@@ -28,7 +31,16 @@ export interface DecodedResult {
28
31
  verdict: VerifyVerdict;
29
32
  catchAll: boolean;
30
33
  }
34
+ interface ReportRow {
35
+ value: string;
36
+ catchall: boolean;
37
+ }
31
38
  export declare function decodeSingle(r: PollResult): DecodedResult;
39
+ export declare function decodeReportRow(row: ReportRow): DecodedResult;
40
+ export declare function parseReport(csv: string): Map<string, ReportRow>;
41
+ export declare class No2BounceAuthError extends Error {
42
+ }
43
+ export declare function isInvalidToken(body: string): boolean;
32
44
  export declare function createNo2BounceVerifier(options: No2BounceOptions): Verifier;
33
45
  export {};
34
46
  //# sourceMappingURL=no2bounce-verifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"no2bounce-verifier.d.ts","sourceRoot":"","sources":["../../../../../src/lib/common/verifiers/no2bounce-verifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAiB,aAAa,EAAE,MAAM,aAAa,CAAC;AAI1E,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD,UAAU,UAAU;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;CACrB;AAKD,wBAAgB,YAAY,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,CAiBzD;AAaD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,GAAG,QAAQ,CAiF3E"}
1
+ {"version":3,"file":"no2bounce-verifier.d.ts","sourceRoot":"","sources":["../../../../../src/lib/common/verifiers/no2bounce-verifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAiB,aAAa,EAAE,MAAM,aAAa,CAAC;AAK1E,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD,UAAU,UAAU;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAMD,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,UAAU,SAAS;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACrB;AAKD,wBAAgB,YAAY,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,CAiBzD;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,SAAS,GAAG,aAAa,CAY7D;AAgCD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAyB/D;AAKD,qBAAa,kBAAmB,SAAQ,KAAK;CAAG;AAEhD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,GAAG,QAAQ,CAoL3E"}