@arikajs/validation 0.0.4 → 0.0.5

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 (92) hide show
  1. package/README.md +51 -15
  2. package/dist/Rules/Alpha.d.ts +6 -0
  3. package/dist/Rules/Alpha.d.ts.map +1 -0
  4. package/dist/Rules/Alpha.js +15 -0
  5. package/dist/Rules/Alpha.js.map +1 -0
  6. package/dist/Rules/AlphaNum.d.ts +6 -0
  7. package/dist/Rules/AlphaNum.d.ts.map +1 -0
  8. package/dist/Rules/AlphaNum.js +15 -0
  9. package/dist/Rules/AlphaNum.js.map +1 -0
  10. package/dist/Rules/Boolean.d.ts +6 -0
  11. package/dist/Rules/Boolean.d.ts.map +1 -0
  12. package/dist/Rules/Boolean.js +14 -0
  13. package/dist/Rules/Boolean.js.map +1 -0
  14. package/dist/Rules/Confirmed.d.ts +8 -0
  15. package/dist/Rules/Confirmed.d.ts.map +1 -0
  16. package/dist/Rules/Confirmed.js +17 -0
  17. package/dist/Rules/Confirmed.js.map +1 -0
  18. package/dist/Rules/In.d.ts +8 -0
  19. package/dist/Rules/In.d.ts.map +1 -0
  20. package/dist/Rules/In.js +16 -0
  21. package/dist/Rules/In.js.map +1 -0
  22. package/dist/Rules/IsArray.d.ts +6 -0
  23. package/dist/Rules/IsArray.d.ts.map +1 -0
  24. package/dist/Rules/IsArray.js +13 -0
  25. package/dist/Rules/IsArray.js.map +1 -0
  26. package/dist/Rules/NotIn.d.ts +8 -0
  27. package/dist/Rules/NotIn.d.ts.map +1 -0
  28. package/dist/Rules/NotIn.js +16 -0
  29. package/dist/Rules/NotIn.js.map +1 -0
  30. package/dist/Rules/Url.d.ts +6 -0
  31. package/dist/Rules/Url.d.ts.map +1 -0
  32. package/dist/Rules/Url.js +21 -0
  33. package/dist/Rules/Url.js.map +1 -0
  34. package/dist/ValidationError.d.ts +5 -0
  35. package/dist/ValidationError.d.ts.map +1 -1
  36. package/dist/ValidationError.js +22 -0
  37. package/dist/ValidationError.js.map +1 -1
  38. package/dist/Validator.d.ts.map +1 -1
  39. package/dist/Validator.js +53 -15
  40. package/dist/Validator.js.map +1 -1
  41. package/dist/index.d.ts +9 -0
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +9 -0
  44. package/dist/index.js.map +1 -1
  45. package/dist/src/Rules/Alpha.d.ts +6 -0
  46. package/dist/src/Rules/Alpha.d.ts.map +1 -0
  47. package/dist/src/Rules/Alpha.js +15 -0
  48. package/dist/src/Rules/Alpha.js.map +1 -0
  49. package/dist/src/Rules/AlphaNum.d.ts +6 -0
  50. package/dist/src/Rules/AlphaNum.d.ts.map +1 -0
  51. package/dist/src/Rules/AlphaNum.js +15 -0
  52. package/dist/src/Rules/AlphaNum.js.map +1 -0
  53. package/dist/src/Rules/Boolean.d.ts +6 -0
  54. package/dist/src/Rules/Boolean.d.ts.map +1 -0
  55. package/dist/src/Rules/Boolean.js +14 -0
  56. package/dist/src/Rules/Boolean.js.map +1 -0
  57. package/dist/src/Rules/Confirmed.d.ts +8 -0
  58. package/dist/src/Rules/Confirmed.d.ts.map +1 -0
  59. package/dist/src/Rules/Confirmed.js +17 -0
  60. package/dist/src/Rules/Confirmed.js.map +1 -0
  61. package/dist/src/Rules/In.d.ts +8 -0
  62. package/dist/src/Rules/In.d.ts.map +1 -0
  63. package/dist/src/Rules/In.js +16 -0
  64. package/dist/src/Rules/In.js.map +1 -0
  65. package/dist/src/Rules/IsArray.d.ts +6 -0
  66. package/dist/src/Rules/IsArray.d.ts.map +1 -0
  67. package/dist/src/Rules/IsArray.js +13 -0
  68. package/dist/src/Rules/IsArray.js.map +1 -0
  69. package/dist/src/Rules/NotIn.d.ts +8 -0
  70. package/dist/src/Rules/NotIn.d.ts.map +1 -0
  71. package/dist/src/Rules/NotIn.js +16 -0
  72. package/dist/src/Rules/NotIn.js.map +1 -0
  73. package/dist/src/Rules/Url.d.ts +6 -0
  74. package/dist/src/Rules/Url.d.ts.map +1 -0
  75. package/dist/src/Rules/Url.js +21 -0
  76. package/dist/src/Rules/Url.js.map +1 -0
  77. package/dist/src/ValidationError.d.ts +5 -0
  78. package/dist/src/ValidationError.d.ts.map +1 -1
  79. package/dist/src/ValidationError.js +22 -0
  80. package/dist/src/ValidationError.js.map +1 -1
  81. package/dist/src/Validator.d.ts.map +1 -1
  82. package/dist/src/Validator.js +53 -15
  83. package/dist/src/Validator.js.map +1 -1
  84. package/dist/src/index.d.ts +9 -0
  85. package/dist/src/index.d.ts.map +1 -1
  86. package/dist/src/index.js +9 -0
  87. package/dist/src/index.js.map +1 -1
  88. package/dist/tests/EnterpriseFeatures.test.d.ts +2 -0
  89. package/dist/tests/EnterpriseFeatures.test.d.ts.map +1 -0
  90. package/dist/tests/EnterpriseFeatures.test.js +116 -0
  91. package/dist/tests/EnterpriseFeatures.test.js.map +1 -0
  92. package/package.json +43 -41
package/README.md CHANGED
@@ -121,6 +121,14 @@ password: 'required|min:8|max:32'
121
121
  | `string` | Must be a string |
122
122
  | `number` | Must be numeric |
123
123
  | `required_if:field,value` | Required if another field matches a value |
124
+ | `in:foo,bar` | The field under validation must be included in the given list of values |
125
+ | `not_in:foo,bar` | The field under validation must not be included in the given list of values |
126
+ | `alpha` | The field under validation must be entirely alphabetic characters |
127
+ | `alpha_num` | The field under validation must be entirely alpha-numeric characters |
128
+ | `url` | Must be a valid URL |
129
+ | `boolean` | Must be a boolean (e.g., `true`, `false`, `1`, `0`) |
130
+ | `array` | Must be a JavaScript array |
131
+ | `confirmed` | The field must have a matching field of `_confirmation` (e.g. `password` needs `password_confirmation`) |
124
132
 
125
133
  ### 🚀 Advanced Features
126
134
 
@@ -183,6 +191,17 @@ if (validator.fails()) {
183
191
  }
184
192
  ```
185
193
 
194
+ ### Customizing Error Messages
195
+
196
+ You can pass an object of custom messages as the third argument to the `Validator` constructor. You can override globally for a rule or target specific fields.
197
+
198
+ ```ts
199
+ const validator = new Validator(data, rules, {
200
+ 'required': 'Hold up, you forgot the :attribute field!',
201
+ 'email.email': 'Dude, that is not a real email address!'
202
+ });
203
+ ```
204
+
186
205
  ---
187
206
 
188
207
  ## 🔌 Framework Integration
@@ -234,21 +253,37 @@ class UniqueEmail {
234
253
 
235
254
  ---
236
255
 
237
- ## 🧱 Project Structure
238
-
239
- - `src/`
240
- - `Validator.ts` – Main validation engine
241
- - `Rule.ts` – Rule interface
242
- - `Rules/` – Built-in rules
243
- - `Required.ts`, `Email.ts`, `Min.ts`, `Max.ts`
244
- - `ErrorBag.ts` – Error collection
245
- - `ValidationError.ts` – Error exception
246
- - `index.ts` – Public exports
247
- - `tests/` – Unit tests
248
- - `package.json`
249
- - `tsconfig.json`
250
- - `README.md`
251
- - `LICENSE`
256
+ ## 🏗 Architecture
257
+
258
+ ```text
259
+ validation/
260
+ ├── src/
261
+ │ ├── Rules
262
+ │ │ ├── Alpha.ts
263
+ │ │ ├── AlphaNum.ts
264
+ │ │ ├── Boolean.ts
265
+ │ │ ├── Confirmed.ts
266
+ │ │ ├── Email.ts
267
+ │ │ ├── In.ts
268
+ │ │ ├── IsArray.ts
269
+ │ │ ├── Max.ts
270
+ │ │ ├── Min.ts
271
+ │ │ ├── NotIn.ts
272
+ │ │ ├── Number.ts
273
+ │ │ ├── Required.ts
274
+ │ │ ├── RequiredIf.ts
275
+ │ │ ├── String.ts
276
+ │ │ └── Url.ts
277
+ │ ├── ErrorBag.ts
278
+ │ ├── index.ts
279
+ │ ├── Rule.ts
280
+ │ ├── ValidationError.ts
281
+ │ └── Validator.ts
282
+ ├── tests/
283
+ ├── package.json
284
+ ├── tsconfig.json
285
+ └── README.md
286
+ ```
252
287
 
253
288
  ---
254
289
 
@@ -269,3 +304,4 @@ class UniqueEmail {
269
304
  ## 🧠 Philosophy
270
305
 
271
306
  > “Validation is not restriction — it is protection.”
307
+
@@ -0,0 +1,6 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class Alpha implements Rule {
3
+ validate(value: any): boolean;
4
+ message(): string;
5
+ }
6
+ //# sourceMappingURL=Alpha.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Alpha.d.ts","sourceRoot":"","sources":["../../src/Rules/Alpha.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,KAAM,YAAW,IAAI;IAC9B,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAK7B,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Alpha = void 0;
4
+ class Alpha {
5
+ validate(value) {
6
+ if (typeof value !== 'string')
7
+ return false;
8
+ return /^[A-ZÅÄÖa-zåäö]+$/.test(value);
9
+ }
10
+ message() {
11
+ return 'The :attribute must only contain letters.';
12
+ }
13
+ }
14
+ exports.Alpha = Alpha;
15
+ //# sourceMappingURL=Alpha.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Alpha.js","sourceRoot":"","sources":["../../src/Rules/Alpha.ts"],"names":[],"mappings":";;;AAEA,MAAa,KAAK;IACd,QAAQ,CAAC,KAAU;QACf,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,OAAO,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO;QACH,OAAO,2CAA2C,CAAC;IACvD,CAAC;CACJ;AATD,sBASC"}
@@ -0,0 +1,6 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class AlphaNum implements Rule {
3
+ validate(value: any): boolean;
4
+ message(): string;
5
+ }
6
+ //# sourceMappingURL=AlphaNum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlphaNum.d.ts","sourceRoot":"","sources":["../../src/Rules/AlphaNum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,QAAS,YAAW,IAAI;IACjC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAK7B,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AlphaNum = void 0;
4
+ class AlphaNum {
5
+ validate(value) {
6
+ if (typeof value !== 'string' && typeof value !== 'number')
7
+ return false;
8
+ return /^[A-ZÅÄÖa-zåäö0-9]+$/.test(String(value));
9
+ }
10
+ message() {
11
+ return 'The :attribute must only contain letters and numbers.';
12
+ }
13
+ }
14
+ exports.AlphaNum = AlphaNum;
15
+ //# sourceMappingURL=AlphaNum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlphaNum.js","sourceRoot":"","sources":["../../src/Rules/AlphaNum.ts"],"names":[],"mappings":";;;AAEA,MAAa,QAAQ;IACjB,QAAQ,CAAC,KAAU;QACf,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACzE,OAAO,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,OAAO;QACH,OAAO,uDAAuD,CAAC;IACnE,CAAC;CACJ;AATD,4BASC"}
@@ -0,0 +1,6 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class IsBoolean implements Rule {
3
+ validate(value: any): boolean;
4
+ message(): string;
5
+ }
6
+ //# sourceMappingURL=Boolean.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Boolean.d.ts","sourceRoot":"","sources":["../../src/Rules/Boolean.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,SAAU,YAAW,IAAI;IAClC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAK7B,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IsBoolean = void 0;
4
+ class IsBoolean {
5
+ validate(value) {
6
+ const acceptable = [true, false, 1, 0, '1', '0', 'true', 'false'];
7
+ return acceptable.includes(value);
8
+ }
9
+ message() {
10
+ return 'The :attribute field must be true or false.';
11
+ }
12
+ }
13
+ exports.IsBoolean = IsBoolean;
14
+ //# sourceMappingURL=Boolean.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Boolean.js","sourceRoot":"","sources":["../../src/Rules/Boolean.ts"],"names":[],"mappings":";;;AAEA,MAAa,SAAS;IAClB,QAAQ,CAAC,KAAU;QACf,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAClE,OAAO,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,OAAO;QACH,OAAO,6CAA6C,CAAC;IACzD,CAAC;CACJ;AATD,8BASC"}
@@ -0,0 +1,8 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class Confirmed implements Rule {
3
+ private data;
4
+ constructor(data: any);
5
+ validate(value: any, attribute: string): boolean;
6
+ message(): string;
7
+ }
8
+ //# sourceMappingURL=Confirmed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirmed.d.ts","sourceRoot":"","sources":["../../src/Rules/Confirmed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,SAAU,YAAW,IAAI;IAClC,OAAO,CAAC,IAAI,CAAM;gBAEN,IAAI,EAAE,GAAG;IAIrB,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAKhD,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Confirmed = void 0;
4
+ class Confirmed {
5
+ constructor(data) {
6
+ this.data = data;
7
+ }
8
+ validate(value, attribute) {
9
+ const confirmField = `${attribute}_confirmation`;
10
+ return value === this.data[confirmField];
11
+ }
12
+ message() {
13
+ return 'The :attribute confirmation does not match.';
14
+ }
15
+ }
16
+ exports.Confirmed = Confirmed;
17
+ //# sourceMappingURL=Confirmed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirmed.js","sourceRoot":"","sources":["../../src/Rules/Confirmed.ts"],"names":[],"mappings":";;;AAEA,MAAa,SAAS;IAGlB,YAAY,IAAS;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,KAAU,EAAE,SAAiB;QAClC,MAAM,YAAY,GAAG,GAAG,SAAS,eAAe,CAAC;QACjD,OAAO,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO;QACH,OAAO,6CAA6C,CAAC;IACzD,CAAC;CACJ;AAfD,8BAeC"}
@@ -0,0 +1,8 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class In implements Rule {
3
+ private allowedValues;
4
+ constructor(allowedValues: any[]);
5
+ validate(value: any): boolean;
6
+ message(): string;
7
+ }
8
+ //# sourceMappingURL=In.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"In.d.ts","sourceRoot":"","sources":["../../src/Rules/In.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,EAAG,YAAW,IAAI;IAC3B,OAAO,CAAC,aAAa,CAAQ;gBAEjB,aAAa,EAAE,GAAG,EAAE;IAIhC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAI7B,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.In = void 0;
4
+ class In {
5
+ constructor(allowedValues) {
6
+ this.allowedValues = allowedValues;
7
+ }
8
+ validate(value) {
9
+ return this.allowedValues.map(String).includes(String(value));
10
+ }
11
+ message() {
12
+ return 'The selected :attribute is invalid.';
13
+ }
14
+ }
15
+ exports.In = In;
16
+ //# sourceMappingURL=In.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"In.js","sourceRoot":"","sources":["../../src/Rules/In.ts"],"names":[],"mappings":";;;AAEA,MAAa,EAAE;IAGX,YAAY,aAAoB;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,QAAQ,CAAC,KAAU;QACf,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,OAAO;QACH,OAAO,qCAAqC,CAAC;IACjD,CAAC;CACJ;AAdD,gBAcC"}
@@ -0,0 +1,6 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class IsArray implements Rule {
3
+ validate(value: any): boolean;
4
+ message(): string;
5
+ }
6
+ //# sourceMappingURL=IsArray.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsArray.d.ts","sourceRoot":"","sources":["../../src/Rules/IsArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,OAAQ,YAAW,IAAI;IAChC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAI7B,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IsArray = void 0;
4
+ class IsArray {
5
+ validate(value) {
6
+ return Array.isArray(value);
7
+ }
8
+ message() {
9
+ return 'The :attribute must be an array.';
10
+ }
11
+ }
12
+ exports.IsArray = IsArray;
13
+ //# sourceMappingURL=IsArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsArray.js","sourceRoot":"","sources":["../../src/Rules/IsArray.ts"],"names":[],"mappings":";;;AAEA,MAAa,OAAO;IAChB,QAAQ,CAAC,KAAU;QACf,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,OAAO;QACH,OAAO,kCAAkC,CAAC;IAC9C,CAAC;CACJ;AARD,0BAQC"}
@@ -0,0 +1,8 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class NotIn implements Rule {
3
+ private disallowedValues;
4
+ constructor(disallowedValues: any[]);
5
+ validate(value: any): boolean;
6
+ message(): string;
7
+ }
8
+ //# sourceMappingURL=NotIn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotIn.d.ts","sourceRoot":"","sources":["../../src/Rules/NotIn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,KAAM,YAAW,IAAI;IAC9B,OAAO,CAAC,gBAAgB,CAAQ;gBAEpB,gBAAgB,EAAE,GAAG,EAAE;IAInC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAI7B,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NotIn = void 0;
4
+ class NotIn {
5
+ constructor(disallowedValues) {
6
+ this.disallowedValues = disallowedValues;
7
+ }
8
+ validate(value) {
9
+ return !this.disallowedValues.map(String).includes(String(value));
10
+ }
11
+ message() {
12
+ return 'The selected :attribute is invalid.';
13
+ }
14
+ }
15
+ exports.NotIn = NotIn;
16
+ //# sourceMappingURL=NotIn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotIn.js","sourceRoot":"","sources":["../../src/Rules/NotIn.ts"],"names":[],"mappings":";;;AAEA,MAAa,KAAK;IAGd,YAAY,gBAAuB;QAC/B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;IAED,QAAQ,CAAC,KAAU;QACf,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,OAAO;QACH,OAAO,qCAAqC,CAAC;IACjD,CAAC;CACJ;AAdD,sBAcC"}
@@ -0,0 +1,6 @@
1
+ import { Rule } from '../Rule';
2
+ export declare class Url implements Rule {
3
+ validate(value: any): boolean;
4
+ message(): string;
5
+ }
6
+ //# sourceMappingURL=Url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Url.d.ts","sourceRoot":"","sources":["../../src/Rules/Url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,qBAAa,GAAI,YAAW,IAAI;IAC5B,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAU7B,OAAO,IAAI,MAAM;CAGpB"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Url = void 0;
4
+ class Url {
5
+ validate(value) {
6
+ if (typeof value !== 'string')
7
+ return false;
8
+ try {
9
+ new URL(value);
10
+ return true;
11
+ }
12
+ catch {
13
+ return false;
14
+ }
15
+ }
16
+ message() {
17
+ return 'The :attribute format is invalid.';
18
+ }
19
+ }
20
+ exports.Url = Url;
21
+ //# sourceMappingURL=Url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Url.js","sourceRoot":"","sources":["../../src/Rules/Url.ts"],"names":[],"mappings":";;;AAEA,MAAa,GAAG;IACZ,QAAQ,CAAC,KAAU;QACf,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,CAAC;YACD,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,OAAO;QACH,OAAO,mCAAmC,CAAC;IAC/C,CAAC;CACJ;AAdD,kBAcC"}
@@ -1,5 +1,10 @@
1
1
  export declare class ValidationError extends Error {
2
2
  errors: Record<string, string[]>;
3
+ status: number;
3
4
  constructor(errors: Record<string, string[]>);
5
+ /**
6
+ * Render the error into an HTTP response.
7
+ */
8
+ render(request: any, response: any): any;
4
9
  }
5
10
  //# sourceMappingURL=ValidationError.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationError.d.ts","sourceRoot":"","sources":["../src/ValidationError.ts"],"names":[],"mappings":"AAAA,qBAAa,eAAgB,SAAQ,KAAK;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBAAhC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;CAItD"}
1
+ {"version":3,"file":"ValidationError.d.ts","sourceRoot":"","sources":["../src/ValidationError.ts"],"names":[],"mappings":"AAAA,qBAAa,eAAgB,SAAQ,KAAK;IAGnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAF5C,MAAM,SAAO;gBAED,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAKnD;;OAEG;IACI,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;CAoB5C"}
@@ -5,8 +5,30 @@ class ValidationError extends Error {
5
5
  constructor(errors) {
6
6
  super('The given data was invalid.');
7
7
  this.errors = errors;
8
+ this.status = 422;
8
9
  this.name = 'ValidationError';
9
10
  }
11
+ /**
12
+ * Render the error into an HTTP response.
13
+ */
14
+ render(request, response) {
15
+ if (request.expectsJson()) {
16
+ return response.status(this.status).json({
17
+ message: this.message,
18
+ errors: this.errors
19
+ });
20
+ }
21
+ // For web requests, we redirect back with errors and old input
22
+ // Note: ArikaJS should have a session.flashErrors or similar.
23
+ // For now, we'll redirect back. If sessions are enabled, they will handle the flashing.
24
+ if (typeof response.back === 'function') {
25
+ return response.back(request);
26
+ }
27
+ return response.status(this.status).json({
28
+ message: this.message,
29
+ errors: this.errors
30
+ });
31
+ }
10
32
  }
11
33
  exports.ValidationError = ValidationError;
12
34
  //# sourceMappingURL=ValidationError.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationError.js","sourceRoot":"","sources":["../src/ValidationError.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAgB,SAAQ,KAAK;IACtC,YAAmB,MAAgC;QAC/C,KAAK,CAAC,6BAA6B,CAAC,CAAC;QADtB,WAAM,GAAN,MAAM,CAA0B;QAE/C,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AALD,0CAKC"}
1
+ {"version":3,"file":"ValidationError.js","sourceRoot":"","sources":["../src/ValidationError.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAgB,SAAQ,KAAK;IAGtC,YAAmB,MAAgC;QAC/C,KAAK,CAAC,6BAA6B,CAAC,CAAC;QADtB,WAAM,GAAN,MAAM,CAA0B;QAF5C,WAAM,GAAG,GAAG,CAAC;QAIhB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,OAAY,EAAE,QAAa;QACrC,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;gBACrC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;aACtB,CAAC,CAAC;QACP,CAAC;QAED,+DAA+D;QAC/D,+DAA+D;QAC/D,wFAAwF;QACxF,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACtC,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAC;IACP,CAAC;CACJ;AA/BD,0CA+BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAU9B,qBAAa,SAAS;IAClB,OAAO,CAAC,IAAI,CAAsB;IAClC,OAAO,CAAC,YAAY,CAAoD;IACxE,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,aAAa,CAA2B;gBAG5C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAM,EAC7D,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IAczC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAoDzC,OAAO,CAAC,iBAAiB;IAIZ,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAIlC,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAIvC;;OAEG;IACI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI;IAI7C,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,eAAe;CAwB1B"}
1
+ {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAkB9B,qBAAa,SAAS;IAClB,OAAO,CAAC,IAAI,CAAsB;IAClC,OAAO,CAAC,YAAY,CAAoD;IACxE,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,aAAa,CAA2B;gBAG5C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAM,EAC7D,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IAmBzC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAsDzC,OAAO,CAAC,iBAAiB;IAIZ,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAIlC,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAIvC;;OAEG;IACI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI;IAI7C,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,oBAAoB;IA6C5B,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,eAAe;CAwB1B"}
package/dist/Validator.js CHANGED
@@ -9,6 +9,14 @@ const Max_1 = require("./Rules/Max");
9
9
  const String_1 = require("./Rules/String");
10
10
  const Number_1 = require("./Rules/Number");
11
11
  const RequiredIf_1 = require("./Rules/RequiredIf");
12
+ const In_1 = require("./Rules/In");
13
+ const NotIn_1 = require("./Rules/NotIn");
14
+ const Alpha_1 = require("./Rules/Alpha");
15
+ const AlphaNum_1 = require("./Rules/AlphaNum");
16
+ const Url_1 = require("./Rules/Url");
17
+ const Boolean_1 = require("./Rules/Boolean");
18
+ const IsArray_1 = require("./Rules/IsArray");
19
+ const Confirmed_1 = require("./Rules/Confirmed");
12
20
  class Validator {
13
21
  constructor(data, rules = {}, messages = {}) {
14
22
  this.messages = {};
@@ -23,6 +31,11 @@ class Validator {
23
31
  this.customRules.set('email', new Email_1.Email());
24
32
  this.customRules.set('string', new String_1.IsString());
25
33
  this.customRules.set('number', new Number_1.IsNumber());
34
+ this.customRules.set('alpha', new Alpha_1.Alpha());
35
+ this.customRules.set('alpha_num', new AlphaNum_1.AlphaNum());
36
+ this.customRules.set('url', new Url_1.Url());
37
+ this.customRules.set('boolean', new Boolean_1.IsBoolean());
38
+ this.customRules.set('array', new IsArray_1.IsArray());
26
39
  }
27
40
  /**
28
41
  * Determine if the data passes the validation rules.
@@ -42,9 +55,10 @@ class Validator {
42
55
  continue;
43
56
  }
44
57
  let failed = false;
45
- for (const rule of ruleSet) {
58
+ for (const item of ruleSet) {
59
+ const { rule, name: ruleName } = item;
46
60
  // Skip pseudo-rules
47
- if (rule.name === 'nullable' || rule.name === 'bail') {
61
+ if (ruleName === 'nullable' || ruleName === 'bail') {
48
62
  continue;
49
63
  }
50
64
  // If value is null/undefined/empty and rule is NOT 'required' (or similar), skip validation
@@ -53,7 +67,8 @@ class Validator {
53
67
  }
54
68
  const passes = await rule.validate(value, attribute);
55
69
  if (!passes) {
56
- const message = this.formatMessage(rule.message(), attribute);
70
+ const defaultMessage = rule.message();
71
+ const message = this.formatMessage(defaultMessage, attribute, ruleName);
57
72
  this.errorBag.add(attribute, message);
58
73
  failed = true;
59
74
  if (shouldBail) {
@@ -100,7 +115,7 @@ class Validator {
100
115
  if (typeof r === 'string') {
101
116
  return r.split('|').map(sub => this.createRuleFromString(sub));
102
117
  }
103
- return r;
118
+ return { rule: r, name: r.constructor.name.toLowerCase() };
104
119
  });
105
120
  }
106
121
  createRuleFromString(ruleString) {
@@ -108,28 +123,41 @@ class Validator {
108
123
  const name = fullRule.trim();
109
124
  const params = rest.length > 0 ? rest.join(':') : '';
110
125
  const parameters = params ? params.split(',') : [];
126
+ let rule;
111
127
  switch (name) {
112
128
  case 'min':
113
- return new Min_1.Min(Number(parameters[0]));
129
+ rule = new Min_1.Min(Number(parameters[0]));
130
+ break;
114
131
  case 'max':
115
- return new Max_1.Max(Number(parameters[0]));
132
+ rule = new Max_1.Max(Number(parameters[0]));
133
+ break;
134
+ case 'in':
135
+ rule = new In_1.In(parameters);
136
+ break;
137
+ case 'not_in':
138
+ rule = new NotIn_1.NotIn(parameters);
139
+ break;
140
+ case 'confirmed':
141
+ rule = new Confirmed_1.Confirmed(this.data);
142
+ break;
116
143
  case 'required_if':
117
- return new RequiredIf_1.RequiredIf(parameters[0], parameters[1], this.data);
144
+ rule = new RequiredIf_1.RequiredIf(parameters[0], parameters[1], this.data);
145
+ break;
118
146
  case 'nullable':
119
147
  case 'bail':
120
- // Return a dummy rule that we'll handle in the main loop
121
- return {
122
- name,
148
+ rule = {
123
149
  validate: async () => true,
124
150
  message: () => ''
125
151
  };
152
+ break;
126
153
  default:
127
- const rule = this.customRules.get(name);
128
- if (!rule) {
154
+ const registered = this.customRules.get(name);
155
+ if (!registered) {
129
156
  throw new Error(`Validation rule '${name}' not found.`);
130
157
  }
131
- return rule;
158
+ rule = registered;
132
159
  }
160
+ return { rule, name };
133
161
  }
134
162
  getValue(key) {
135
163
  return key.split('.').reduce((o, i) => (o ? o[i] : undefined), this.data);
@@ -151,8 +179,18 @@ class Validator {
151
179
  isEmpty(value) {
152
180
  return value === null || value === undefined || value === '';
153
181
  }
154
- formatMessage(message, attribute) {
155
- return message.replace(':attribute', attribute);
182
+ formatMessage(defaultMessage, attribute, ruleName) {
183
+ // Look for exact attribute.rule custom message
184
+ let template = this.messages[`${attribute}.${ruleName}`];
185
+ // Look for general rule custom message
186
+ if (!template) {
187
+ template = this.messages[ruleName];
188
+ }
189
+ // Fallback to default message
190
+ if (!template) {
191
+ template = defaultMessage;
192
+ }
193
+ return template.replace(/:attribute/g, attribute);
156
194
  }
157
195
  expandRules(rules) {
158
196
  const expanded = {};
@@ -1 +1 @@
1
- {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,9 +3,18 @@ export * from './Validator';
3
3
  export * from './ErrorBag';
4
4
  export * from './ValidationError';
5
5
  export * from './Rules/Required';
6
+ export * from './Rules/RequiredIf';
6
7
  export * from './Rules/Email';
7
8
  export * from './Rules/Min';
8
9
  export * from './Rules/Max';
9
10
  export * from './Rules/String';
10
11
  export * from './Rules/Number';
12
+ export * from './Rules/In';
13
+ export * from './Rules/NotIn';
14
+ export * from './Rules/Alpha';
15
+ export * from './Rules/AlphaNum';
16
+ export * from './Rules/Url';
17
+ export * from './Rules/Boolean';
18
+ export * from './Rules/IsArray';
19
+ export * from './Rules/Confirmed';
11
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}