diginext-utils 3.11.4 → 3.12.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.
@@ -0,0 +1,7 @@
1
+ export declare const emailValidator: (email: string) => Promise<{
2
+ status: boolean;
3
+ reason?: undefined;
4
+ } | {
5
+ status: boolean;
6
+ reason: string[];
7
+ }>;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.emailValidator = void 0;
7
+ const deep_email_validator_1 = __importDefault(require("deep-email-validator"));
8
+ const lodash_1 = require("lodash");
9
+ function extractReasons(emailValidatorOutput) {
10
+ const reasons = [];
11
+ // Loop through each validator
12
+ for (const key in emailValidatorOutput.validators) {
13
+ const validator = emailValidatorOutput.validators[key];
14
+ if (validator.reason) {
15
+ reasons.push(validator.reason);
16
+ }
17
+ }
18
+ return reasons;
19
+ }
20
+ const emailValidator = async (email) => {
21
+ email = `${(0, lodash_1.toString)(email)}`;
22
+ const res = await (0, deep_email_validator_1.default)({
23
+ email: email,
24
+ sender: email,
25
+ validateRegex: true,
26
+ validateMx: true,
27
+ validateTypo: true,
28
+ validateDisposable: true,
29
+ validateSMTP: true,
30
+ });
31
+ if (res.valid)
32
+ return { status: true };
33
+ const reason = extractReasons(res);
34
+ return { status: false, reason };
35
+ };
36
+ exports.emailValidator = emailValidator;
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/email/index.ts"],"names":[],"mappings":";;;;;;AAAA,gFAA4C;AAC5C,mCAAkC;AAelC,SAAS,cAAc,CAAC,oBAA0C;IACjE,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,8BAA8B;IAC9B,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,UAAU,EAAE;QAClD,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,SAAS,CAAC,MAAM,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;SAC/B;KACD;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAEM,MAAM,cAAc,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;IACrD,KAAK,GAAG,GAAG,IAAA,iBAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;IAE7B,MAAM,GAAG,GAAG,MAAM,IAAA,8BAAQ,EAAC;QAC1B,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;QAClB,kBAAkB,EAAE,IAAI;QACxB,YAAY,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,IAAI,GAAG,CAAC,KAAK;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAEnC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC,CAAC;AAlBW,QAAA,cAAc,kBAkBzB"}
@@ -0,0 +1,7 @@
1
+ export declare const emailValidator: (email: string) => Promise<{
2
+ status: boolean;
3
+ reason?: undefined;
4
+ } | {
5
+ status: boolean;
6
+ reason: string[];
7
+ }>;
@@ -0,0 +1,30 @@
1
+ import validate from "deep-email-validator";
2
+ import { toString } from "lodash";
3
+ function extractReasons(emailValidatorOutput) {
4
+ const reasons = [];
5
+ // Loop through each validator
6
+ for (const key in emailValidatorOutput.validators) {
7
+ const validator = emailValidatorOutput.validators[key];
8
+ if (validator.reason) {
9
+ reasons.push(validator.reason);
10
+ }
11
+ }
12
+ return reasons;
13
+ }
14
+ export const emailValidator = async (email) => {
15
+ email = `${toString(email)}`;
16
+ const res = await validate({
17
+ email: email,
18
+ sender: email,
19
+ validateRegex: true,
20
+ validateMx: true,
21
+ validateTypo: true,
22
+ validateDisposable: true,
23
+ validateSMTP: true,
24
+ });
25
+ if (res.valid)
26
+ return { status: true };
27
+ const reason = extractReasons(res);
28
+ return { status: false, reason };
29
+ };
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/email/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAelC,SAAS,cAAc,CAAC,oBAA0C;IACjE,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,8BAA8B;IAC9B,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,UAAU,EAAE;QAClD,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,SAAS,CAAC,MAAM,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;SAC/B;KACD;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;IACrD,KAAK,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;IAE7B,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC;QAC1B,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;QAClB,kBAAkB,EAAE,IAAI;QACxB,YAAY,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,IAAI,GAAG,CAAC,KAAK;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAEnC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "diginext-utils",
3
- "version": "3.11.4",
3
+ "version": "3.12.0",
4
4
  "sideEffects": false,
5
5
  "readme": "README.md",
6
6
  "homepage": "https://wearetopgroup.com",
@@ -35,6 +35,7 @@
35
35
  "chalk": "4.1.2",
36
36
  "concurrently": "^7.2.2",
37
37
  "dayjs": "^1.11.5",
38
+ "deep-email-validator": "^0.1.21",
38
39
  "file-saver": "^2.0.5",
39
40
  "gsap": "^3.10.4",
40
41
  "lodash": "^4.17.21"