namefully 1.1.0 → 1.2.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 (156) hide show
  1. package/dist/example/index.js +2734 -0
  2. package/dist/lib/config.d.ts +121 -0
  3. package/dist/lib/config.js +189 -0
  4. package/dist/lib/config.js.map +1 -0
  5. package/dist/lib/constants.d.ts +4 -0
  6. package/dist/lib/constants.js +31 -0
  7. package/dist/lib/constants.js.map +1 -0
  8. package/dist/lib/error.d.ts +172 -0
  9. package/dist/lib/error.js +210 -0
  10. package/dist/lib/error.js.map +1 -0
  11. package/dist/lib/example/example.d.ts +1 -0
  12. package/dist/lib/full-name.d.ts +71 -0
  13. package/dist/lib/full-name.js +147 -0
  14. package/dist/lib/full-name.js.map +1 -0
  15. package/dist/lib/index.d.ts +16 -6
  16. package/dist/lib/index.js +29 -8
  17. package/dist/lib/index.js.map +1 -1
  18. package/dist/lib/name.d.ts +177 -0
  19. package/dist/lib/name.js +322 -0
  20. package/dist/lib/name.js.map +1 -0
  21. package/dist/lib/namefully.d.ts +285 -208
  22. package/dist/lib/namefully.js +576 -576
  23. package/dist/lib/namefully.js.map +1 -1
  24. package/dist/lib/parser.d.ts +46 -0
  25. package/dist/lib/parser.js +173 -0
  26. package/dist/lib/parser.js.map +1 -0
  27. package/dist/lib/src/config.d.ts +121 -0
  28. package/dist/lib/src/constants.d.ts +4 -0
  29. package/dist/lib/src/error.d.ts +172 -0
  30. package/dist/lib/src/full-name.d.ts +71 -0
  31. package/dist/lib/src/index.d.ts +20 -0
  32. package/dist/lib/src/name.d.ts +177 -0
  33. package/dist/lib/src/namefully.d.ts +379 -0
  34. package/dist/lib/src/parser.d.ts +46 -0
  35. package/dist/lib/src/types.d.ts +127 -0
  36. package/dist/lib/src/utils.d.ts +63 -0
  37. package/dist/lib/src/validator.d.ts +66 -0
  38. package/dist/lib/types.d.ts +127 -0
  39. package/dist/lib/types.js +181 -0
  40. package/dist/lib/types.js.map +1 -0
  41. package/dist/lib/utils.d.ts +63 -0
  42. package/dist/lib/utils.js +138 -0
  43. package/dist/lib/utils.js.map +1 -0
  44. package/dist/lib/validator.d.ts +66 -0
  45. package/dist/lib/validator.js +332 -0
  46. package/dist/lib/validator.js.map +1 -0
  47. package/dist/umd/namefully.js +2118 -2700
  48. package/dist/umd/namefully.js.map +1 -1
  49. package/dist/umd/namefully.min.js +1 -1
  50. package/dist/umd/namefully.min.js.LICENSE.txt +1 -18
  51. package/dist/umd/namefully.min.js.map +1 -1
  52. package/package.json +50 -54
  53. package/readme.md +132 -162
  54. package/changelog.md +0 -134
  55. package/dist/lib/core/constants.d.ts +0 -48
  56. package/dist/lib/core/constants.js +0 -101
  57. package/dist/lib/core/constants.js.map +0 -1
  58. package/dist/lib/core/core.d.ts +0 -17
  59. package/dist/lib/core/core.js +0 -24
  60. package/dist/lib/core/core.js.map +0 -1
  61. package/dist/lib/core/index.d.ts +0 -9
  62. package/dist/lib/core/index.js +0 -13
  63. package/dist/lib/core/index.js.map +0 -1
  64. package/dist/lib/core/parsers/array-name.parser.d.ts +0 -41
  65. package/dist/lib/core/parsers/array-name.parser.js +0 -86
  66. package/dist/lib/core/parsers/array-name.parser.js.map +0 -1
  67. package/dist/lib/core/parsers/array-string.parser.d.ts +0 -47
  68. package/dist/lib/core/parsers/array-string.parser.js +0 -95
  69. package/dist/lib/core/parsers/array-string.parser.js.map +0 -1
  70. package/dist/lib/core/parsers/index.d.ts +0 -11
  71. package/dist/lib/core/parsers/index.js +0 -11
  72. package/dist/lib/core/parsers/index.js.map +0 -1
  73. package/dist/lib/core/parsers/nama.parser.d.ts +0 -33
  74. package/dist/lib/core/parsers/nama.parser.js +0 -74
  75. package/dist/lib/core/parsers/nama.parser.js.map +0 -1
  76. package/dist/lib/core/parsers/parser.d.ts +0 -28
  77. package/dist/lib/core/parsers/parser.js +0 -3
  78. package/dist/lib/core/parsers/parser.js.map +0 -1
  79. package/dist/lib/core/parsers/string.parser.d.ts +0 -60
  80. package/dist/lib/core/parsers/string.parser.js +0 -62
  81. package/dist/lib/core/parsers/string.parser.js.map +0 -1
  82. package/dist/lib/core/utils.d.ts +0 -52
  83. package/dist/lib/core/utils.js +0 -178
  84. package/dist/lib/core/utils.js.map +0 -1
  85. package/dist/lib/models/enums.d.ts +0 -106
  86. package/dist/lib/models/enums.js +0 -114
  87. package/dist/lib/models/enums.js.map +0 -1
  88. package/dist/lib/models/firstname.d.ts +0 -77
  89. package/dist/lib/models/firstname.js +0 -131
  90. package/dist/lib/models/firstname.js.map +0 -1
  91. package/dist/lib/models/fullname.d.ts +0 -73
  92. package/dist/lib/models/fullname.js +0 -99
  93. package/dist/lib/models/fullname.js.map +0 -1
  94. package/dist/lib/models/index.d.ts +0 -13
  95. package/dist/lib/models/index.js +0 -16
  96. package/dist/lib/models/index.js.map +0 -1
  97. package/dist/lib/models/lastname.d.ts +0 -80
  98. package/dist/lib/models/lastname.js +0 -157
  99. package/dist/lib/models/lastname.js.map +0 -1
  100. package/dist/lib/models/misc.d.ts +0 -108
  101. package/dist/lib/models/misc.js +0 -3
  102. package/dist/lib/models/misc.js.map +0 -1
  103. package/dist/lib/models/name.d.ts +0 -76
  104. package/dist/lib/models/name.js +0 -115
  105. package/dist/lib/models/name.js.map +0 -1
  106. package/dist/lib/models/summary.d.ts +0 -26
  107. package/dist/lib/models/summary.js +0 -61
  108. package/dist/lib/models/summary.js.map +0 -1
  109. package/dist/lib/validators/array-name.validator.d.ts +0 -25
  110. package/dist/lib/validators/array-name.validator.js +0 -75
  111. package/dist/lib/validators/array-name.validator.js.map +0 -1
  112. package/dist/lib/validators/array-string.validator.d.ts +0 -43
  113. package/dist/lib/validators/array-string.validator.js +0 -76
  114. package/dist/lib/validators/array-string.validator.js.map +0 -1
  115. package/dist/lib/validators/common/validation-error.d.ts +0 -19
  116. package/dist/lib/validators/common/validation-error.js +0 -26
  117. package/dist/lib/validators/common/validation-error.js.map +0 -1
  118. package/dist/lib/validators/common/validation-rule.d.ts +0 -72
  119. package/dist/lib/validators/common/validation-rule.js +0 -76
  120. package/dist/lib/validators/common/validation-rule.js.map +0 -1
  121. package/dist/lib/validators/common/validation-type.d.ts +0 -24
  122. package/dist/lib/validators/common/validation-type.js +0 -28
  123. package/dist/lib/validators/common/validation-type.js.map +0 -1
  124. package/dist/lib/validators/firstname.validator.d.ts +0 -20
  125. package/dist/lib/validators/firstname.validator.js +0 -29
  126. package/dist/lib/validators/firstname.validator.js.map +0 -1
  127. package/dist/lib/validators/fullname.validator.d.ts +0 -21
  128. package/dist/lib/validators/fullname.validator.js +0 -38
  129. package/dist/lib/validators/fullname.validator.js.map +0 -1
  130. package/dist/lib/validators/index.d.ts +0 -21
  131. package/dist/lib/validators/index.js +0 -35
  132. package/dist/lib/validators/index.js.map +0 -1
  133. package/dist/lib/validators/lastname.validator.d.ts +0 -20
  134. package/dist/lib/validators/lastname.validator.js +0 -29
  135. package/dist/lib/validators/lastname.validator.js.map +0 -1
  136. package/dist/lib/validators/middlename.validator.d.ts +0 -20
  137. package/dist/lib/validators/middlename.validator.js +0 -38
  138. package/dist/lib/validators/middlename.validator.js.map +0 -1
  139. package/dist/lib/validators/nama.validator.d.ts +0 -21
  140. package/dist/lib/validators/nama.validator.js +0 -44
  141. package/dist/lib/validators/nama.validator.js.map +0 -1
  142. package/dist/lib/validators/namon.validator.d.ts +0 -20
  143. package/dist/lib/validators/namon.validator.js +0 -29
  144. package/dist/lib/validators/namon.validator.js.map +0 -1
  145. package/dist/lib/validators/prefix.validator.d.ts +0 -14
  146. package/dist/lib/validators/prefix.validator.js +0 -31
  147. package/dist/lib/validators/prefix.validator.js.map +0 -1
  148. package/dist/lib/validators/string-name.validator.d.ts +0 -20
  149. package/dist/lib/validators/string-name.validator.js +0 -29
  150. package/dist/lib/validators/string-name.validator.js.map +0 -1
  151. package/dist/lib/validators/suffix.validator.d.ts +0 -14
  152. package/dist/lib/validators/suffix.validator.js +0 -31
  153. package/dist/lib/validators/suffix.validator.js.map +0 -1
  154. package/dist/lib/validators/validator.d.ts +0 -13
  155. package/dist/lib/validators/validator.js +0 -9
  156. package/dist/lib/validators/validator.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"array-name.validator.js","sourceRoot":"","sources":["../../../src/validators/array-name.validator.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- /**
2
- * Array of string validator
3
- *
4
- * Created on March 15, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- import { NameIndex } from '../models';
8
- import { Validator, ValidatorType } from './index';
9
- /**
10
- * Represents a validator to help the array string parser
11
- * @class
12
- * @classdesc
13
- * This validator validates an array of string name following a specific order
14
- * based on the count of elements. It is expected that the array has to be between
15
- * two and five elements. Also, the order of appearance set in the configuration
16
- * influences how this validation is carried out.
17
- *
18
- * Ordered by first name, the validator validates the following:
19
- * - 2 elements: firstname lastname
20
- * - 3 elements: firstname middlename lastname
21
- * - 4 elements: prefix firstname middlename lastname
22
- * - 5 elements: prefix firstname middlename lastname suffix
23
- *
24
- * Ordered by last name, the validator validates the following:
25
- * - 2 elements: lastname firstname
26
- * - 3 elements: lastname firstname middlename
27
- * - 4 elements: prefix lastname firstname middlename
28
- * - 5 elements: prefix lastname firstname middlename suffix
29
- */
30
- export default class ArrayStringValidator implements Validator<string[]> {
31
- indexing: NameIndex;
32
- readonly type: ValidatorType;
33
- /**
34
- * Creates an instance of the validator
35
- * @param indexing how to index the name parts
36
- */
37
- constructor(indexing: NameIndex);
38
- /**
39
- * Validates the content of a name
40
- * @param {string} value data to validate
41
- */
42
- validate(values: string[]): void;
43
- }
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const constants_1 = require("../core/constants");
4
- const index_1 = require("./index");
5
- /**
6
- * Represents a validator to help the array string parser
7
- * @class
8
- * @classdesc
9
- * This validator validates an array of string name following a specific order
10
- * based on the count of elements. It is expected that the array has to be between
11
- * two and five elements. Also, the order of appearance set in the configuration
12
- * influences how this validation is carried out.
13
- *
14
- * Ordered by first name, the validator validates the following:
15
- * - 2 elements: firstname lastname
16
- * - 3 elements: firstname middlename lastname
17
- * - 4 elements: prefix firstname middlename lastname
18
- * - 5 elements: prefix firstname middlename lastname suffix
19
- *
20
- * Ordered by last name, the validator validates the following:
21
- * - 2 elements: lastname firstname
22
- * - 3 elements: lastname firstname middlename
23
- * - 4 elements: prefix lastname firstname middlename
24
- * - 5 elements: prefix lastname firstname middlename suffix
25
- */
26
- class ArrayStringValidator {
27
- /**
28
- * Creates an instance of the validator
29
- * @param indexing how to index the name parts
30
- */
31
- constructor(indexing) {
32
- this.indexing = indexing;
33
- this.type = index_1.ValidatorType.ARR_STRING;
34
- }
35
- /**
36
- * Validates the content of a name
37
- * @param {string} value data to validate
38
- */
39
- validate(values) {
40
- if (values.length < constants_1.MIN_NUMBER_NAME_PART || values.length > constants_1.MAX_NUMBER_NAME_PART)
41
- throw new index_1.ValidationError(`must be an array of ${constants_1.MIN_NUMBER_NAME_PART} - ` +
42
- `${constants_1.MAX_NUMBER_NAME_PART} elements`, 'Array of names');
43
- const pf = new index_1.PrefixValidator();
44
- const sf = new index_1.SuffixValidator();
45
- const fn = new index_1.FirstnameValidator();
46
- const ln = new index_1.LastnameValidator();
47
- const mn = new index_1.MiddlenameValidator();
48
- const index = this.indexing;
49
- switch (values.length) {
50
- case constants_1.FIRST_LAST_NAME_INDEX:
51
- fn.validate(values[index.firstname]);
52
- ln.validate(values[index.lastname]);
53
- break;
54
- case constants_1.FIRST_MIDDLE_LAST_NAME_INDEX:
55
- fn.validate(values[index.firstname]);
56
- mn.validate(values[index.middlename]);
57
- ln.validate(values[index.lastname]);
58
- break;
59
- case constants_1.PREFIX_FIRST_MIDDLE_LAST_NAME_INDEX:
60
- pf.validate(values[index.prefix]);
61
- fn.validate(values[index.firstname]);
62
- mn.validate(values[index.middlename]);
63
- ln.validate(values[index.lastname]);
64
- break;
65
- case constants_1.PREFIX_FIRST_MIDDLE_LAST_SUFFIX_NAME_INDEX:
66
- pf.validate(values[index.prefix]);
67
- fn.validate(values[index.firstname]);
68
- mn.validate(values[index.middlename]);
69
- ln.validate(values[index.lastname]);
70
- sf.validate(values[index.suffix]);
71
- break;
72
- }
73
- }
74
- }
75
- exports.default = ArrayStringValidator;
76
- //# sourceMappingURL=array-string.validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array-string.validator.js","sourceRoot":"","sources":["../../../src/validators/array-string.validator.ts"],"names":[],"mappings":";;AAOA,iDAO2B;AAC3B,mCASiB;AAEjB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAqB,oBAAoB;IAGrC;;;OAGG;IACH,YAAmB,QAAmB;QAAnB,aAAQ,GAAR,QAAQ,CAAW;QAN7B,SAAI,GAAkB,qBAAa,CAAC,UAAU,CAAC;IAMf,CAAC;IAE1C;;;OAGG;IACH,QAAQ,CAAC,MAAgB;QAErB,IAAI,MAAM,CAAC,MAAM,GAAG,gCAAoB,IAAI,MAAM,CAAC,MAAM,GAAG,gCAAoB;YAC5E,MAAM,IAAI,uBAAe,CACrB,uBAAuB,gCAAoB,KAAK;gBAChD,GAAG,gCAAoB,WAAW,EAClC,gBAAgB,CACnB,CAAA;QAEL,MAAM,EAAE,GAAG,IAAI,uBAAe,EAAE,CAAC;QACjC,MAAM,EAAE,GAAG,IAAI,uBAAe,EAAE,CAAC;QACjC,MAAM,EAAE,GAAG,IAAI,0BAAkB,EAAE,CAAC;QACpC,MAAM,EAAE,GAAG,IAAI,yBAAiB,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,IAAI,2BAAmB,EAAE,CAAC;QAErC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE5B,QAAO,MAAM,CAAC,MAAM,EAAE;YAClB,KAAK,iCAAqB;gBACtB,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACpC,MAAM;YACV,KAAK,wCAA4B;gBAC7B,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBACtC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACpC,MAAM;YACV,KAAK,+CAAmC;gBACpC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBAClC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBACtC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACpC,MAAM;YACV,KAAK,sDAA0C;gBAC3C,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBAClC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBACtC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACpC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;gBACjC,MAAM;SACb;IACL,CAAC;CACJ;AAvDD,uCAuDC"}
@@ -1,19 +0,0 @@
1
- /**
2
- * Validation error
3
- *
4
- * Created on March 06, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- /**
8
- * Represents a validation error
9
- * @class
10
- * @extends Error
11
- */
12
- export declare class ValidationError extends Error {
13
- /**
14
- * Create a validation `Error`
15
- * @param message of error to display
16
- * @param type categorizes the error
17
- */
18
- constructor(message?: string, type?: string);
19
- }
@@ -1,26 +0,0 @@
1
- "use strict";
2
- /**
3
- * Validation error
4
- *
5
- * Created on March 06, 2020
6
- * @author Ralph Florent <ralflornt@gmail.com>
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- /**
10
- * Represents a validation error
11
- * @class
12
- * @extends Error
13
- */
14
- class ValidationError extends Error {
15
- /**
16
- * Create a validation `Error`
17
- * @param message of error to display
18
- * @param type categorizes the error
19
- */
20
- constructor(message, type) {
21
- super(`${type ? type + ' :: ' + message : message}`);
22
- this.name = 'ValidationError';
23
- }
24
- }
25
- exports.ValidationError = ValidationError;
26
- //# sourceMappingURL=validation-error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation-error.js","sourceRoot":"","sources":["../../../../src/validators/common/validation-error.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,KAAK;IACtC;;;;OAIG;IACH,YAAY,OAAgB,EAAE,IAAa;QACvC,KAAK,CAAC,GAAI,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AAVD,0CAUC"}
@@ -1,72 +0,0 @@
1
- /**
2
- * Validation rules
3
- *
4
- * Created on March 06, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- /**
8
- * Represents a set of validation rules (regex)
9
- * @class
10
- * @static
11
- *
12
- * This regex is intented to match specific alphabets only as a person name does
13
- * not contain special characters. `\w` does not cover non-Latin characters. So,
14
- * it is extended using unicode chars to cover more cases (e.g., Icelandic).
15
- * It matches as follows:
16
- * [a-z]: Latin alphabet from a (index 97) to z (index 122)
17
- * [A-Z]: Latin alphabet from A (index 65) to Z (index 90)
18
- * [\u00C0-\u00D6]: Latin/German chars from À (index 192) to Ö (index 214)
19
- * [\u00D8-\u00f6]: German/Icelandic chars from Ø (index 216) to ö (index 246)
20
- * [\u00f8-\u00ff]: German/Icelandic chars from ø (index 248) to ÿ (index 255)
21
- * [\u0400-\u04FF]: Cyrillic alphabet from Ѐ (index 1024) to ӿ (index 1279)
22
- * [Ά-ωΑ-ώ]: Greek alphabet from Ά (index 902) to ω (index 969)
23
- */
24
- export declare class ValidationRule {
25
- static base: RegExp;
26
- /**
27
- * Matches one name part (namon) that is of nature:
28
- * - Latin (English, Spanish, French, etc.)
29
- * - European (Greek, Cyrillic, Icelandic, German)
30
- * - hyphenated
31
- * - with apostrophe
32
- * - with space
33
- */
34
- static namon: RegExp;
35
- /**
36
- * Matches 1+ name parts (namon) that are of nature:
37
- * - Latin (English, Spanish, French, etc.)
38
- * - European (Greek, Cyrillic, Icelandic, German)
39
- * - hyphenated
40
- * - with apostrophe
41
- * - with comma
42
- * - with period
43
- * - with space
44
- */
45
- static fullname: RegExp;
46
- /**
47
- * Matches one name part (namon) that is of nature:
48
- * - Latin (English, Spanish, French, etc.)
49
- * - European (Greek, Cyrillic, Icelandic, German)
50
- * - hyphenated
51
- * - with apostrophe
52
- */
53
- static firstname: RegExp;
54
- /**
55
- * Matches 1+ names part (namon) that are of nature:
56
- * - Latin (English, Spanish, French, etc.)
57
- * - European (Greek, Cyrillic, Icelandic, German)
58
- * - hyphenated
59
- * - with apostrophe
60
- * - with space
61
- */
62
- static middlename: RegExp;
63
- /**
64
- * Matches one name part (namon) that is of nature:
65
- * - Latin (English, Spanish, French, etc.)
66
- * - European (Greek, Cyrillic, Icelandic, German)
67
- * - hyphenated
68
- * - with apostrophe
69
- * - with space
70
- */
71
- static lastname: RegExp;
72
- }
@@ -1,76 +0,0 @@
1
- "use strict";
2
- /**
3
- * Validation rules
4
- *
5
- * Created on March 06, 2020
6
- * @author Ralph Florent <ralflornt@gmail.com>
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- /**
10
- * Represents a set of validation rules (regex)
11
- * @class
12
- * @static
13
- *
14
- * This regex is intented to match specific alphabets only as a person name does
15
- * not contain special characters. `\w` does not cover non-Latin characters. So,
16
- * it is extended using unicode chars to cover more cases (e.g., Icelandic).
17
- * It matches as follows:
18
- * [a-z]: Latin alphabet from a (index 97) to z (index 122)
19
- * [A-Z]: Latin alphabet from A (index 65) to Z (index 90)
20
- * [\u00C0-\u00D6]: Latin/German chars from À (index 192) to Ö (index 214)
21
- * [\u00D8-\u00f6]: German/Icelandic chars from Ø (index 216) to ö (index 246)
22
- * [\u00f8-\u00ff]: German/Icelandic chars from ø (index 248) to ÿ (index 255)
23
- * [\u0400-\u04FF]: Cyrillic alphabet from Ѐ (index 1024) to ӿ (index 1279)
24
- * [Ά-ωΑ-ώ]: Greek alphabet from Ά (index 902) to ω (index 969)
25
- */
26
- class ValidationRule {
27
- }
28
- exports.ValidationRule = ValidationRule;
29
- ValidationRule.base = /[a-zA-Z\u00C0-\u00D6\u00D8-\u00f6\u00f8-\u00ff\u0400-\u04FFΆ-ωΑ-ώ]/;
30
- /**
31
- * Matches one name part (namon) that is of nature:
32
- * - Latin (English, Spanish, French, etc.)
33
- * - European (Greek, Cyrillic, Icelandic, German)
34
- * - hyphenated
35
- * - with apostrophe
36
- * - with space
37
- */
38
- ValidationRule.namon = new RegExp(`^${ValidationRule.base.source}+(([' -]${ValidationRule.base.source})?${ValidationRule.base.source}*)*$`);
39
- /**
40
- * Matches 1+ name parts (namon) that are of nature:
41
- * - Latin (English, Spanish, French, etc.)
42
- * - European (Greek, Cyrillic, Icelandic, German)
43
- * - hyphenated
44
- * - with apostrophe
45
- * - with comma
46
- * - with period
47
- * - with space
48
- */
49
- ValidationRule.fullname = new RegExp(`^${ValidationRule.base.source}+(([',. -]${ValidationRule.base.source})?${ValidationRule.base.source}*)*$`);
50
- /**
51
- * Matches one name part (namon) that is of nature:
52
- * - Latin (English, Spanish, French, etc.)
53
- * - European (Greek, Cyrillic, Icelandic, German)
54
- * - hyphenated
55
- * - with apostrophe
56
- */
57
- ValidationRule.firstname = ValidationRule.namon;
58
- /**
59
- * Matches 1+ names part (namon) that are of nature:
60
- * - Latin (English, Spanish, French, etc.)
61
- * - European (Greek, Cyrillic, Icelandic, German)
62
- * - hyphenated
63
- * - with apostrophe
64
- * - with space
65
- */
66
- ValidationRule.middlename = new RegExp(`^${ValidationRule.base.source}+(([' -]${ValidationRule.base.source})?${ValidationRule.base.source}*)*$`);
67
- /**
68
- * Matches one name part (namon) that is of nature:
69
- * - Latin (English, Spanish, French, etc.)
70
- * - European (Greek, Cyrillic, Icelandic, German)
71
- * - hyphenated
72
- * - with apostrophe
73
- * - with space
74
- */
75
- ValidationRule.lastname = ValidationRule.namon;
76
- //# sourceMappingURL=validation-rule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation-rule.js","sourceRoot":"","sources":["../../../../src/validators/common/validation-rule.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,cAAc;;AAA3B,wCAoDC;AAnDU,mBAAI,GAAW,oEAAoE,CAAA;AAC1F;;;;;;;GAOG;AACI,oBAAK,GAAW,IAAI,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,WAAW,cAAc,CAAC,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC;AAE5I;;;;;;;;;GASG;AACI,uBAAQ,GAAW,IAAI,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,aAAa,cAAc,CAAC,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC;AAEjJ;;;;;;GAMG;AACI,wBAAS,GAAW,cAAc,CAAC,KAAK,CAAC;AAEhD;;;;;;;GAOG;AACI,yBAAU,GAAW,IAAI,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,WAAW,cAAc,CAAC,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC;AAEjJ;;;;;;;GAOG;AACI,uBAAQ,GAAW,cAAc,CAAC,KAAK,CAAC"}
@@ -1,24 +0,0 @@
1
- /**
2
- * Validation types
3
- *
4
- * Created on March 06, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- /**
8
- * Enum for the validation types
9
- * @enum
10
- */
11
- export declare enum ValidatorType {
12
- NONE = 0,
13
- NAMON = 1,
14
- NAMA = 2,
15
- ARR_NAMES = 3,
16
- ARR_STRING = 4,
17
- FULL_NAME = 5,
18
- PREFIX = 6,
19
- FIRST_NAME = 7,
20
- MIDDLE_NAME = 8,
21
- LAST_NAME = 9,
22
- SUFFIX = 10,
23
- CUSTOM = 11
24
- }
@@ -1,28 +0,0 @@
1
- "use strict";
2
- /**
3
- * Validation types
4
- *
5
- * Created on March 06, 2020
6
- * @author Ralph Florent <ralflornt@gmail.com>
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- /**
10
- * Enum for the validation types
11
- * @enum
12
- */
13
- var ValidatorType;
14
- (function (ValidatorType) {
15
- ValidatorType[ValidatorType["NONE"] = 0] = "NONE";
16
- ValidatorType[ValidatorType["NAMON"] = 1] = "NAMON";
17
- ValidatorType[ValidatorType["NAMA"] = 2] = "NAMA";
18
- ValidatorType[ValidatorType["ARR_NAMES"] = 3] = "ARR_NAMES";
19
- ValidatorType[ValidatorType["ARR_STRING"] = 4] = "ARR_STRING";
20
- ValidatorType[ValidatorType["FULL_NAME"] = 5] = "FULL_NAME";
21
- ValidatorType[ValidatorType["PREFIX"] = 6] = "PREFIX";
22
- ValidatorType[ValidatorType["FIRST_NAME"] = 7] = "FIRST_NAME";
23
- ValidatorType[ValidatorType["MIDDLE_NAME"] = 8] = "MIDDLE_NAME";
24
- ValidatorType[ValidatorType["LAST_NAME"] = 9] = "LAST_NAME";
25
- ValidatorType[ValidatorType["SUFFIX"] = 10] = "SUFFIX";
26
- ValidatorType[ValidatorType["CUSTOM"] = 11] = "CUSTOM";
27
- })(ValidatorType = exports.ValidatorType || (exports.ValidatorType = {}));
28
- //# sourceMappingURL=validation-type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation-type.js","sourceRoot":"","sources":["../../../../src/validators/common/validation-type.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH;;;GAGG;AACH,IAAY,aAcX;AAdD,WAAY,aAAa;IACrB,iDAAI,CAAA;IACJ,mDAAK,CAAA;IACL,iDAAI,CAAA;IACJ,2DAAS,CAAA;IACT,6DAAU,CAAA;IACV,2DAAS,CAAA;IACT,qDAAM,CAAA;IACN,6DAAU,CAAA;IACV,+DAAW,CAAA;IACX,2DAAS,CAAA;IACT,sDAAM,CAAA;IAEN,sDAAM,CAAA;AACV,CAAC,EAdW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAcxB"}
@@ -1,20 +0,0 @@
1
- /**
2
- * First name validator
3
- *
4
- * Created on March 15, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- import { Validator, ValidatorType } from './index';
8
- /**
9
- * Represents a first name validator
10
- * @class
11
- * @implements {Validator}
12
- */
13
- export default class FirstnameValidator implements Validator<string> {
14
- readonly type: ValidatorType;
15
- /**
16
- * Validates the content of a first name
17
- * @param {string} value data to validate
18
- */
19
- validate(value: string): void;
20
- }
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /**
4
- * First name validator
5
- *
6
- * Created on March 15, 2020
7
- * @author Ralph Florent <ralflornt@gmail.com>
8
- */
9
- const index_1 = require("./index");
10
- /**
11
- * Represents a first name validator
12
- * @class
13
- * @implements {Validator}
14
- */
15
- class FirstnameValidator {
16
- constructor() {
17
- this.type = index_1.ValidatorType.FIRST_NAME;
18
- }
19
- /**
20
- * Validates the content of a first name
21
- * @param {string} value data to validate
22
- */
23
- validate(value) {
24
- if (!index_1.ValidationRule.firstname.test(value))
25
- throw new index_1.ValidationError(`invalid string content '${value}'`, 'First name');
26
- }
27
- }
28
- exports.default = FirstnameValidator;
29
- //# sourceMappingURL=firstname.validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"firstname.validator.js","sourceRoot":"","sources":["../../../src/validators/firstname.validator.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,mCAAoF;AAEpF;;;;GAIG;AACH,MAAqB,kBAAkB;IAAvC;QACa,SAAI,GAAkB,qBAAa,CAAC,UAAU,CAAC;IAS5D,CAAC;IARG;;;OAGG;IACH,QAAQ,CAAC,KAAa;QAClB,IAAI,CAAC,sBAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;YACrC,MAAM,IAAI,uBAAe,CAAC,2BAA2B,KAAK,GAAG,EAAE,YAAY,CAAC,CAAC;IACrF,CAAC;CACJ;AAVD,qCAUC"}
@@ -1,21 +0,0 @@
1
- /**
2
- * `Fullname` validator
3
- *
4
- * Created on March 15, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- import { Fullname } from '../models/index';
8
- import { Validator, ValidatorType } from './index';
9
- /**
10
- * Represents a `Fullname` (JSON signature) validator for provided custom parser
11
- * @class
12
- * @implements {Validator}
13
- */
14
- export default class FullnameValidator implements Validator<Fullname> {
15
- readonly type: ValidatorType;
16
- /**
17
- * Validates that the `Fullname` contract is met
18
- * @param {Fullname} value data to validate
19
- */
20
- validate(v: Fullname): void;
21
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /**
4
- * `Fullname` validator
5
- *
6
- * Created on March 15, 2020
7
- * @author Ralph Florent <ralflornt@gmail.com>
8
- */
9
- const index_1 = require("../models/index");
10
- const index_2 = require("./index");
11
- /**
12
- * Represents a `Fullname` (JSON signature) validator for provided custom parser
13
- * @class
14
- * @implements {Validator}
15
- */
16
- class FullnameValidator {
17
- constructor() {
18
- this.type = index_2.ValidatorType.FULL_NAME;
19
- }
20
- /**
21
- * Validates that the `Fullname` contract is met
22
- * @param {Fullname} value data to validate
23
- */
24
- validate(v) {
25
- if (!v.firstname || !(v.firstname instanceof index_1.Firstname))
26
- throw new index_2.ValidationError('first name is corrupted', 'Fullname');
27
- if (!v.lastname || !(v.lastname instanceof index_1.Lastname))
28
- throw new index_2.ValidationError('last name is corrupted', 'Fullname');
29
- if (v.middlename && !(v.middlename instanceof Array))
30
- throw new index_2.ValidationError('middle name is corrupted', 'Fullname');
31
- if (v.prefix)
32
- new index_2.PrefixValidator().validate(v.prefix);
33
- if (v.suffix)
34
- new index_2.SuffixValidator().validate(v.suffix);
35
- }
36
- }
37
- exports.default = FullnameValidator;
38
- //# sourceMappingURL=fullname.validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fullname.validator.js","sourceRoot":"","sources":["../../../src/validators/fullname.validator.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,2CAAgE;AAChE,mCAAsG;AAEtG;;;;GAIG;AACH,MAAqB,iBAAiB;IAAtC;QACa,SAAI,GAAkB,qBAAa,CAAC,SAAS,CAAC;IAiB3D,CAAC;IAhBG;;;OAGG;IACH,QAAQ,CAAC,CAAW;QAChB,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,YAAY,iBAAS,CAAC;YACnD,MAAM,IAAI,uBAAe,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAC;QACrE,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,YAAY,gBAAQ,CAAC;YAChD,MAAM,IAAI,uBAAe,CAAC,wBAAwB,EAAE,UAAU,CAAC,CAAC;QACpE,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,YAAY,KAAK,CAAC;YAChD,MAAM,IAAI,uBAAe,CAAC,0BAA0B,EAAE,UAAU,CAAC,CAAC;QACtE,IAAI,CAAC,CAAC,MAAM;YACR,IAAI,uBAAe,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QAC5C,IAAI,CAAC,CAAC,MAAM;YACR,IAAI,uBAAe,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAChD,CAAC;CACJ;AAlBD,oCAkBC"}
@@ -1,21 +0,0 @@
1
- /**
2
- * Make all the locals available
3
- *
4
- * Created on March 06, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- export * from './common/validation-rule';
8
- export * from './common/validation-type';
9
- export * from './common/validation-error';
10
- export * from './validator';
11
- export { default as NamonValidator } from './namon.validator';
12
- export { default as PrefixValidator } from './prefix.validator';
13
- export { default as SuffixValidator } from './suffix.validator';
14
- export { default as FirstnameValidator } from './firstname.validator';
15
- export { default as LastnameValidator } from './lastname.validator';
16
- export { default as MiddlenameValidator } from './middlename.validator';
17
- export { default as FullnameValidator } from './fullname.validator';
18
- export { default as NamaValidator } from './nama.validator';
19
- export { default as ArrayNameValidator } from './array-name.validator';
20
- export { default as ArrayStringValidator } from './array-string.validator';
21
- export { default as StringNameValidator } from './string-name.validator';
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- /**
5
- * Make all the locals available
6
- *
7
- * Created on March 06, 2020
8
- * @author Ralph Florent <ralflornt@gmail.com>
9
- */
10
- tslib_1.__exportStar(require("./common/validation-rule"), exports);
11
- tslib_1.__exportStar(require("./common/validation-type"), exports);
12
- tslib_1.__exportStar(require("./common/validation-error"), exports);
13
- var namon_validator_1 = require("./namon.validator");
14
- exports.NamonValidator = namon_validator_1.default;
15
- var prefix_validator_1 = require("./prefix.validator");
16
- exports.PrefixValidator = prefix_validator_1.default;
17
- var suffix_validator_1 = require("./suffix.validator");
18
- exports.SuffixValidator = suffix_validator_1.default;
19
- var firstname_validator_1 = require("./firstname.validator");
20
- exports.FirstnameValidator = firstname_validator_1.default;
21
- var lastname_validator_1 = require("./lastname.validator");
22
- exports.LastnameValidator = lastname_validator_1.default;
23
- var middlename_validator_1 = require("./middlename.validator");
24
- exports.MiddlenameValidator = middlename_validator_1.default;
25
- var fullname_validator_1 = require("./fullname.validator");
26
- exports.FullnameValidator = fullname_validator_1.default;
27
- var nama_validator_1 = require("./nama.validator");
28
- exports.NamaValidator = nama_validator_1.default;
29
- var array_name_validator_1 = require("./array-name.validator");
30
- exports.ArrayNameValidator = array_name_validator_1.default;
31
- var array_string_validator_1 = require("./array-string.validator");
32
- exports.ArrayStringValidator = array_string_validator_1.default;
33
- var string_name_validator_1 = require("./string-name.validator");
34
- exports.StringNameValidator = string_name_validator_1.default;
35
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/validators/index.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,mEAAyC;AACzC,mEAAyC;AACzC,oEAA0C;AAG1C,qDAA8D;AAArD,2CAAA,OAAO,CAAkB;AAClC,uDAAgE;AAAvD,6CAAA,OAAO,CAAmB;AACnC,uDAAgE;AAAvD,6CAAA,OAAO,CAAmB;AACnC,6DAAsE;AAA7D,mDAAA,OAAO,CAAsB;AACtC,2DAAoE;AAA3D,iDAAA,OAAO,CAAqB;AACrC,+DAAwE;AAA/D,qDAAA,OAAO,CAAuB;AACvC,2DAAoE;AAA3D,iDAAA,OAAO,CAAqB;AACrC,mDAA4D;AAAnD,yCAAA,OAAO,CAAiB;AAEjC,+DAAsE;AAA9D,oDAAA,OAAO,CAAsB;AACrC,mEAA0E;AAAlE,wDAAA,OAAO,CAAwB;AACvC,iEAAwE;AAAhE,sDAAA,OAAO,CAAuB"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Last name validator
3
- *
4
- * Created on March 15, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- import { Validator, ValidatorType } from './index';
8
- /**
9
- * Represents a last name validator
10
- * @class
11
- * @implements {Validator}
12
- */
13
- export default class LastnameValidator implements Validator<string> {
14
- readonly type: ValidatorType;
15
- /**
16
- * Validates the content of a last name
17
- * @param {string} value data to validate
18
- */
19
- validate(value: string): void;
20
- }
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /**
4
- * Last name validator
5
- *
6
- * Created on March 15, 2020
7
- * @author Ralph Florent <ralflornt@gmail.com>
8
- */
9
- const index_1 = require("./index");
10
- /**
11
- * Represents a last name validator
12
- * @class
13
- * @implements {Validator}
14
- */
15
- class LastnameValidator {
16
- constructor() {
17
- this.type = index_1.ValidatorType.LAST_NAME;
18
- }
19
- /**
20
- * Validates the content of a last name
21
- * @param {string} value data to validate
22
- */
23
- validate(value) {
24
- if (!index_1.ValidationRule.lastname.test(value))
25
- throw new index_1.ValidationError(`invalid string content '${value}'`, 'Last name');
26
- }
27
- }
28
- exports.default = LastnameValidator;
29
- //# sourceMappingURL=lastname.validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lastname.validator.js","sourceRoot":"","sources":["../../../src/validators/lastname.validator.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,mCAAoF;AAEpF;;;;GAIG;AACH,MAAqB,iBAAiB;IAAtC;QACa,SAAI,GAAkB,qBAAa,CAAC,SAAS,CAAC;IAS3D,CAAC;IARG;;;OAGG;IACH,QAAQ,CAAC,KAAa;QAClB,IAAI,CAAC,sBAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;YACpC,MAAM,IAAI,uBAAe,CAAC,2BAA2B,KAAK,GAAG,EAAE,WAAW,CAAC,CAAC;IACpF,CAAC;CACJ;AAVD,oCAUC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Middle name validator
3
- *
4
- * Created on March 15, 2020
5
- * @author Ralph Florent <ralflornt@gmail.com>
6
- */
7
- import { Validator, ValidatorType } from './index';
8
- /**
9
- * Represents a middle name validator
10
- * @class
11
- * @implements {Validator}
12
- */
13
- export default class MiddlenameValidator implements Validator<string | string[]> {
14
- readonly type: ValidatorType;
15
- /**
16
- * Validates the content of a list of middle names
17
- * @param {string | string[]} values to validate
18
- */
19
- validate(values: string | string[]): void;
20
- }