@local901/validator 0.3.0 → 0.3.2
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.
- package/Validator.d.ts +1 -1
- package/Validator.js.map +1 -1
- package/errors/ValidationError.d.ts +7 -7
- package/errors/ValidationError.js +1 -1
- package/errors/ValidationError.js.map +1 -1
- package/package.json +1 -1
- package/types/string/StringValidator.d.ts +1 -1
- package/types/string/StringValidator.js +4 -1
- package/types/string/StringValidator.js.map +1 -1
package/Validator.d.ts
CHANGED
|
@@ -36,7 +36,7 @@ export declare abstract class Validator<T = unknown> {
|
|
|
36
36
|
* @param input Input value to validate.
|
|
37
37
|
* @throws ValidationError When input is invalid.
|
|
38
38
|
*/
|
|
39
|
-
validateOrThrow(input: unknown): asserts input is
|
|
39
|
+
validateOrThrow<TYPE extends T = T>(input: unknown): asserts input is TYPE;
|
|
40
40
|
/**
|
|
41
41
|
* Type narrow input using the validation result.
|
|
42
42
|
*
|
package/Validator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":";;;AACA,8DAAwE;AAqBxE,MAAsB,SAAS;IAGjB,WAAW,CAAC,KAAiB,EAAE,OAAe,EAAE,MAAuB;QAC7E,OAAO,IAAI,iCAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAUD;;;;;OAKG;IACI,QAAQ,CAAC,KAAc;QAC1B,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IACD;;;;;OAKG;IACI,eAAe,
|
|
1
|
+
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":";;;AACA,8DAAwE;AAqBxE,MAAsB,SAAS;IAGjB,WAAW,CAAC,KAAiB,EAAE,OAAe,EAAE,MAAuB;QAC7E,OAAO,IAAI,iCAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAUD;;;;;OAKG;IACI,QAAQ,CAAC,KAAc;QAC1B,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IACD;;;;;OAKG;IACI,eAAe,CAAqB,KAAc;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,QAAQ,CAAC;QACnB,CAAC;QACD,OAAO;IACX,CAAC;IAED;;;;;;OAMG;IACI,cAAc,CAAC,MAAe,EAAE,MAAiC;QACpE,OAAO,CAAC,MAAM,CAAC;IACnB,CAAC;IASD;;;;OAIG;IACI,SAAS;QACZ,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,IAAI,CAAC,MAAM,EAAE;SACnB,CAAC;IACN,CAAC;CACJ;AAnED,8BAmEC"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { ErrorValue } from "./ErrorType";
|
|
2
|
-
export type ErrorFields<T> = (T extends object ? T extends ReadonlyArray<infer I> ? Record<number, ValidationError<I
|
|
3
|
-
[K in keyof T]: ValidationError<T[K]
|
|
4
|
-
} : never) | Record<number, ValidationError<T
|
|
5
|
-
export type ErrorJsonFields<T> = (T extends object ? T extends ReadonlyArray<infer I> ? Record<number, ValidationJson<I
|
|
6
|
-
[K in keyof T]: ValidationJson<T[K]
|
|
7
|
-
} : never) | Record<number, ValidationJson<T
|
|
2
|
+
export type ErrorFields<T> = (T extends object ? T extends ReadonlyArray<infer I> ? Partial<Record<number, ValidationError<I>>> : Partial<{
|
|
3
|
+
[K in keyof T]: ValidationError<T[K]>;
|
|
4
|
+
}> : never) | Partial<Record<number, ValidationError<T>>>;
|
|
5
|
+
export type ErrorJsonFields<T> = (T extends object ? T extends ReadonlyArray<infer I> ? Partial<Record<number, ValidationJson<I>>> : Partial<{
|
|
6
|
+
[K in keyof T]: ValidationJson<T[K]>;
|
|
7
|
+
}> : never) | Partial<Record<number, ValidationJson<T>>>;
|
|
8
8
|
export type ValidationJson<T> = {
|
|
9
9
|
type: string;
|
|
10
10
|
error: ErrorValue;
|
|
11
11
|
message: string;
|
|
12
|
-
fields?: Record<string | number, ErrorJsonFields<T
|
|
12
|
+
fields?: Partial<Record<string | number, ErrorJsonFields<T>>>;
|
|
13
13
|
};
|
|
14
14
|
export declare class ValidationError<T extends unknown = unknown> extends Error {
|
|
15
15
|
private readonly _message;
|
|
@@ -18,7 +18,7 @@ class ValidationError extends Error {
|
|
|
18
18
|
toJson() {
|
|
19
19
|
let fields;
|
|
20
20
|
if (this.fields) {
|
|
21
|
-
fields = Object.fromEntries(Object.entries(this.fields).map(([key, error]) => [key, error
|
|
21
|
+
fields = Object.fromEntries(Object.entries(this.fields).map(([key, error]) => [key, error?.toJson()]));
|
|
22
22
|
}
|
|
23
23
|
return {
|
|
24
24
|
message: this._message,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationError.js","sourceRoot":"","sources":["../../src/errors/ValidationError.ts"],"names":[],"mappings":";;;AAyBA,MAAa,eAEX,SAAQ,KAAK;IACM,QAAQ,CAAS;IAClB,IAAI,CAAS;IACb,KAAK,CAAa;IAClB,MAAM,CAAkB;IAExC,YAAmB,IAAY,EAAE,KAAiB,EAAE,OAAe,EAAE,MAAuB;QACxF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAEM,MAAM;QACT,IAAI,MAAsC,CAAC;QAE3C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"ValidationError.js","sourceRoot":"","sources":["../../src/errors/ValidationError.ts"],"names":[],"mappings":";;;AAyBA,MAAa,eAEX,SAAQ,KAAK;IACM,QAAQ,CAAS;IAClB,IAAI,CAAS;IACb,KAAK,CAAa;IAClB,MAAM,CAAkB;IAExC,YAAmB,IAAY,EAAE,KAAiB,EAAE,OAAe,EAAE,MAAuB;QACxF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAEM,MAAM;QACT,IAAI,MAAsC,CAAC;QAE3C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3G,CAAC;QAED,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM;SACT,CAAA;IACL,CAAC;CACJ;AAhCD,0CAgCC"}
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@ export interface StringValidationOptions {
|
|
|
8
8
|
/** The regex the value has to match. */
|
|
9
9
|
regex?: RegExp | string;
|
|
10
10
|
/** Allowed values. (Will ignore all other options.) */
|
|
11
|
-
enum?: string[];
|
|
11
|
+
enum?: readonly string[];
|
|
12
12
|
}
|
|
13
13
|
export declare class stringValidator<T extends string = string> extends Validator<T> {
|
|
14
14
|
private readonly options;
|
|
@@ -41,7 +41,10 @@ class stringValidator extends Validator_1.Validator {
|
|
|
41
41
|
}
|
|
42
42
|
/** @inheritdoc */
|
|
43
43
|
config() {
|
|
44
|
-
return {
|
|
44
|
+
return {
|
|
45
|
+
...this.options,
|
|
46
|
+
enum: this.options.enum ? [...this.options.enum] : undefined,
|
|
47
|
+
};
|
|
45
48
|
}
|
|
46
49
|
}
|
|
47
50
|
exports.stringValidator = stringValidator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringValidator.js","sourceRoot":"","sources":["../../../src/types/string/StringValidator.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AAEnD,+CAAkE;AAalE,MAAa,eAA2C,SAAQ,qBAAY;IAGpC;IAFpB,IAAI,GAAG,QAAQ,CAAC;IAEhC,YAAoC,UAAmC,EAAE;QACrE,KAAK,EAAE,CAAC;QADwB,YAAO,GAAP,OAAO,CAA8B;IAEzE,CAAC;IAED,kBAAkB;IACF,cAAc,CAAC,KAAc;QACzC,cAAc;QACd,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC;QAC7E,CAAC;QAED,cAAc;QACd,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CACnB,qBAAS,CAAC,QAAQ,EAClB,yCAAyC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAC5E,CAAC;QACN,CAAC;QAED,wBAAwB;QACxB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,WAAW,EAAE,mCAAmC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;QAC3G,CAAC;QAED,wBAAwB;QACxB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,UAAU,EAAE,mCAAmC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;QAC1G,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YACvE,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,gBAAgB,EAAE,wBAChD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ;gBAClC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;gBACpB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MACzB,IAAI,CAAC,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,kBAAkB;IACC,MAAM;QACrB,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"StringValidator.js","sourceRoot":"","sources":["../../../src/types/string/StringValidator.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AAEnD,+CAAkE;AAalE,MAAa,eAA2C,SAAQ,qBAAY;IAGpC;IAFpB,IAAI,GAAG,QAAQ,CAAC;IAEhC,YAAoC,UAAmC,EAAE;QACrE,KAAK,EAAE,CAAC;QADwB,YAAO,GAAP,OAAO,CAA8B;IAEzE,CAAC;IAED,kBAAkB;IACF,cAAc,CAAC,KAAc;QACzC,cAAc;QACd,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC;QAC7E,CAAC;QAED,cAAc;QACd,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CACnB,qBAAS,CAAC,QAAQ,EAClB,yCAAyC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAC5E,CAAC;QACN,CAAC;QAED,wBAAwB;QACxB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,WAAW,EAAE,mCAAmC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;QAC3G,CAAC;QAED,wBAAwB;QACxB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,UAAU,EAAE,mCAAmC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;QAC1G,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YACvE,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAS,CAAC,gBAAgB,EAAE,wBAChD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ;gBAClC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;gBACpB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MACzB,IAAI,CAAC,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,kBAAkB;IACC,MAAM;QACrB,OAAO;YACH,GAAG,IAAI,CAAC,OAAO;YACf,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC/D,CAAC;IACN,CAAC;CACJ;AArDD,0CAqDC"}
|