@serum-enterprises/schema 2.0.1-beta.0 → 2.0.1-beta.1

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/build/Schema.js CHANGED
@@ -103,7 +103,7 @@ class AnyValidator extends Schema {
103
103
  validate(data, path = 'data') {
104
104
  if (!JSON.isJSON(data))
105
105
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be JSON`));
106
- return result_1.Result.Ok(void 0);
106
+ return result_1.Result.Ok(data);
107
107
  }
108
108
  toJSON() {
109
109
  return {
@@ -147,10 +147,10 @@ class BooleanValidator extends Schema {
147
147
  if (JSON.isBoolean(data)) {
148
148
  if (this.#equals.flag && this.#equals.value !== data)
149
149
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be ${this.#equals.value}${this.#nullable.flag ? '' : ' or Null'}`));
150
- return result_1.Result.Ok(void 0);
150
+ return result_1.Result.Ok(data);
151
151
  }
152
152
  if (this.#nullable.flag && JSON.isNull(data))
153
- return result_1.Result.Ok(void 0);
153
+ return result_1.Result.Ok(data);
154
154
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be a Boolean${this.#nullable.flag ? '' : ' or Null'}`));
155
155
  }
156
156
  toJSON() {
@@ -239,10 +239,10 @@ class NumberValidator extends Schema {
239
239
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be at least ${this.#min.value}`));
240
240
  if (this.#max.flag && this.#max.value < data)
241
241
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be at most ${this.#max.value}`));
242
- return result_1.Result.Ok(void 0);
242
+ return result_1.Result.Ok(data);
243
243
  }
244
244
  if (this.#nullable.flag && JSON.isNull(data))
245
- return result_1.Result.Ok(void 0);
245
+ return result_1.Result.Ok(data);
246
246
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be a Number${this.#nullable.flag ? '' : ' or Null'}`));
247
247
  }
248
248
  toJSON() {
@@ -324,10 +324,10 @@ class StringValidator extends Schema {
324
324
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be at least ${this.#min.value} characters long`));
325
325
  if (this.#max.flag && this.#max.value < data.length)
326
326
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be at most ${this.#max.value} characters long`));
327
- return result_1.Result.Ok(void 0);
327
+ return result_1.Result.Ok(data);
328
328
  }
329
329
  if (this.#nullable.flag && JSON.isNull(data))
330
- return result_1.Result.Ok(void 0);
330
+ return result_1.Result.Ok(data);
331
331
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be a String${this.#nullable.flag ? '' : ' or Null'}`));
332
332
  }
333
333
  toJSON() {
@@ -447,10 +447,10 @@ class ArrayValidator extends Schema {
447
447
  if (errors.length > 0)
448
448
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be a Tuple where every Element matches its respective Validator`, { cause: errors }));
449
449
  }
450
- return result_1.Result.Ok(void 0);
450
+ return result_1.Result.Ok(data);
451
451
  }
452
452
  if (this.#nullable.flag && JSON.isNull(data))
453
- return result_1.Result.Ok(void 0);
453
+ return result_1.Result.Ok(data);
454
454
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be an Array${this.#nullable.flag ? '' : ' or Null'}`));
455
455
  }
456
456
  toJSON() {
@@ -540,10 +540,10 @@ class ObjectValidator extends Schema {
540
540
  return result_1.Result.Err(new ValidationError(`Expected ${path} to have only the Properties defined in the Schema`, { cause: errors }));
541
541
  }
542
542
  }
543
- return result_1.Result.Ok(void 0);
543
+ return result_1.Result.Ok(data);
544
544
  }
545
545
  if (this.#nullable.flag && JSON.isNull(data))
546
- return result_1.Result.Ok(void 0);
546
+ return result_1.Result.Ok(data);
547
547
  return result_1.Result.Err(new ValidationError(`Expected ${path} to be an Object${this.#nullable.flag ? '' : ' or Null'}`));
548
548
  }
549
549
  toJSON() {
@@ -598,9 +598,9 @@ class OrValidator extends Schema {
598
598
  }, []);
599
599
  if (errors.length === this.#oneOf.value.length)
600
600
  return result_1.Result.Err(new ValidationError(`Expected ${path} to match at least one of the OneOf Validators`, { cause: errors }));
601
- return result_1.Result.Ok(void 0);
601
+ return result_1.Result.Ok(data);
602
602
  }
603
- return result_1.Result.Ok(void 0);
603
+ return result_1.Result.Ok(data);
604
604
  }
605
605
  toJSON() {
606
606
  const schema = {
@@ -654,7 +654,7 @@ class AndValidator extends Schema {
654
654
  if (errors.length > 0)
655
655
  return result_1.Result.Err(new ValidationError(`Expected ${path} to match all of the AllOf Validators`, { cause: errors }));
656
656
  }
657
- return result_1.Result.Ok(void 0);
657
+ return result_1.Result.Ok(data);
658
658
  }
659
659
  toJSON() {
660
660
  const schema = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@serum-enterprises/schema",
3
- "version": "2.0.1-beta.0",
3
+ "version": "2.0.1-beta.1",
4
4
  "engines": {
5
5
  "node": ">=14.0.0"
6
6
  },
package/src/Schema.ts CHANGED
@@ -63,7 +63,7 @@ export abstract class Schema {
63
63
  return (registry.get(schema['type']) as typeof Schema).fromJSON(schema, path, registry);
64
64
  }
65
65
 
66
- abstract validate(data: unknown, path?: string): Result<void, ValidationError>;
66
+ abstract validate(data: unknown, path?: string): Result<unknown, ValidationError>;
67
67
 
68
68
  abstract toJSON(): JSON.Object;
69
69
  }
@@ -82,11 +82,11 @@ class AnyValidator extends Schema {
82
82
  super();
83
83
  }
84
84
 
85
- validate(data: unknown, path: string = 'data'): Result<void, ValidationError> {
85
+ validate(data: unknown, path: string = 'data'): Result<unknown, ValidationError> {
86
86
  if (!JSON.isJSON(data))
87
87
  return Result.Err(new ValidationError(`Expected ${path} to be JSON`));
88
88
 
89
- return Result.Ok(void 0);
89
+ return Result.Ok(data);
90
90
  }
91
91
 
92
92
  toJSON(): JSON.Object {
@@ -141,16 +141,16 @@ class BooleanValidator extends Schema {
141
141
  return this;
142
142
  }
143
143
 
144
- validate(data: unknown, path: string = 'data'): Result<void, ValidationError> {
144
+ validate(data: unknown, path: string = 'data'): Result<unknown, ValidationError> {
145
145
  if (JSON.isBoolean(data)) {
146
146
  if (this.#equals.flag && this.#equals.value !== data)
147
147
  return Result.Err(new ValidationError(`Expected ${path} to be ${this.#equals.value}${this.#nullable.flag ? '' : ' or Null'}`));
148
148
 
149
- return Result.Ok(void 0);
149
+ return Result.Ok(data);
150
150
  }
151
151
 
152
152
  if (this.#nullable.flag && JSON.isNull(data))
153
- return Result.Ok(void 0);
153
+ return Result.Ok(data);
154
154
 
155
155
  return Result.Err(new ValidationError(`Expected ${path} to be a Boolean${this.#nullable.flag ? '' : ' or Null'}`));
156
156
  }
@@ -260,7 +260,7 @@ class NumberValidator extends Schema {
260
260
  return this;
261
261
  }
262
262
 
263
- validate(data: unknown, path: string = 'data'): Result<void, ValidationError> {
263
+ validate(data: unknown, path: string = 'data'): Result<unknown, ValidationError> {
264
264
  if (JSON.isNumber(data)) {
265
265
  if (this.#equals.flag && this.#equals.value !== data)
266
266
  return Result.Err(new ValidationError(`Expected ${path} to be ${this.#equals.value}`));
@@ -274,11 +274,11 @@ class NumberValidator extends Schema {
274
274
  if (this.#max.flag && this.#max.value < data)
275
275
  return Result.Err(new ValidationError(`Expected ${path} to be at most ${this.#max.value}`));
276
276
 
277
- return Result.Ok(void 0);
277
+ return Result.Ok(data);
278
278
  }
279
279
 
280
280
  if (this.#nullable.flag && JSON.isNull(data))
281
- return Result.Ok(void 0);
281
+ return Result.Ok(data);
282
282
 
283
283
  return Result.Err(new ValidationError(`Expected ${path} to be a Number${this.#nullable.flag ? '' : ' or Null'}`));
284
284
  }
@@ -382,7 +382,7 @@ class StringValidator extends Schema {
382
382
  return this;
383
383
  }
384
384
 
385
- validate(data: unknown, path: string = 'data'): Result<void, ValidationError> {
385
+ validate(data: unknown, path: string = 'data'): Result<unknown, ValidationError> {
386
386
  if (JSON.isString(data)) {
387
387
  if (this.#equals.flag && this.#equals.value !== data)
388
388
  return Result.Err(new ValidationError(`Expected ${path} to be ${this.#equals.value}`));
@@ -393,11 +393,11 @@ class StringValidator extends Schema {
393
393
  if (this.#max.flag && this.#max.value < data.length)
394
394
  return Result.Err(new ValidationError(`Expected ${path} to be at most ${this.#max.value} characters long`));
395
395
 
396
- return Result.Ok(void 0);
396
+ return Result.Ok(data);
397
397
  }
398
398
 
399
399
  if (this.#nullable.flag && JSON.isNull(data))
400
- return Result.Ok(void 0);
400
+ return Result.Ok(data);
401
401
 
402
402
  return Result.Err(new ValidationError(`Expected ${path} to be a String${this.#nullable.flag ? '' : ' or Null'}`));
403
403
 
@@ -537,7 +537,7 @@ class ArrayValidator extends Schema {
537
537
  return this;
538
538
  }
539
539
 
540
- validate(data: unknown, path: string = 'data'): Result<void, ValidationError> {
540
+ validate(data: unknown, path: string = 'data'): Result<unknown, ValidationError> {
541
541
  if (JSON.isArray(data)) {
542
542
  if (this.#min.flag && this.#min.value > data.length)
543
543
  return Result.Err(new ValidationError(`Expected ${path} to be at least ${this.#min.value} Elements long`));
@@ -568,11 +568,11 @@ class ArrayValidator extends Schema {
568
568
  return Result.Err(new ValidationError(`Expected ${path} to be a Tuple where every Element matches its respective Validator`, { cause: errors }));
569
569
  }
570
570
 
571
- return Result.Ok(void 0);
571
+ return Result.Ok(data);
572
572
  }
573
573
 
574
574
  if (this.#nullable.flag && JSON.isNull(data))
575
- return Result.Ok(void 0);
575
+ return Result.Ok(data);
576
576
 
577
577
  return Result.Err(new ValidationError(`Expected ${path} to be an Array${this.#nullable.flag ? '' : ' or Null'}`));
578
578
  }
@@ -676,7 +676,7 @@ class ObjectValidator extends Schema {
676
676
  return this;
677
677
  }
678
678
 
679
- validate(data: unknown, path: string = 'data'): Result<void, ValidationError> {
679
+ validate(data: unknown, path: string = 'data'): Result<unknown, ValidationError> {
680
680
  if (JSON.isObject(data)) {
681
681
  if (this.#schema.flag) {
682
682
  const errors: { [key: string]: ValidationError } = {};
@@ -701,11 +701,11 @@ class ObjectValidator extends Schema {
701
701
  }
702
702
  }
703
703
 
704
- return Result.Ok(void 0);
704
+ return Result.Ok(data);
705
705
  }
706
706
 
707
707
  if (this.#nullable.flag && JSON.isNull(data))
708
- return Result.Ok(void 0);
708
+ return Result.Ok(data);
709
709
 
710
710
  return Result.Err(new ValidationError(`Expected ${path} to be an Object${this.#nullable.flag ? '' : ' or Null'}`));
711
711
  }
@@ -770,7 +770,7 @@ class OrValidator extends Schema {
770
770
  return this;
771
771
  }
772
772
 
773
- validate(data: unknown, path: string = 'data'): Result<void, ValidationError> {
773
+ validate(data: unknown, path: string = 'data'): Result<unknown, ValidationError> {
774
774
  if (!JSON.isJSON(data))
775
775
  return Result.Err(new ValidationError(`Expected ${path} to be JSON`));
776
776
 
@@ -787,10 +787,10 @@ class OrValidator extends Schema {
787
787
  if (errors.length === this.#oneOf.value.length)
788
788
  return Result.Err(new ValidationError(`Expected ${path} to match at least one of the OneOf Validators`, { cause: errors }));
789
789
 
790
- return Result.Ok(void 0);
790
+ return Result.Ok(data);
791
791
  }
792
792
 
793
- return Result.Ok(void 0);
793
+ return Result.Ok(data);
794
794
  }
795
795
 
796
796
  toJSON(): JSON.Object {
@@ -852,7 +852,7 @@ class AndValidator extends Schema {
852
852
  return this;
853
853
  }
854
854
 
855
- validate(data: unknown, path?: string): Result<void, ValidationError> {
855
+ validate(data: unknown, path?: string): Result<unknown, ValidationError> {
856
856
  if (!JSON.isJSON(data))
857
857
  return Result.Err(new ValidationError(`Expected ${path} to be JSON`));
858
858
 
@@ -870,7 +870,7 @@ class AndValidator extends Schema {
870
870
  return Result.Err(new ValidationError(`Expected ${path} to match all of the AllOf Validators`, { cause: errors }));
871
871
  }
872
872
 
873
- return Result.Ok(void 0);
873
+ return Result.Ok(data);
874
874
 
875
875
  }
876
876
 
package/types/Schema.d.ts CHANGED
@@ -15,13 +15,13 @@ export declare abstract class Schema {
15
15
  static get And(): AndValidator;
16
16
  static get defaultRegistry(): Map<string, typeof Schema>;
17
17
  static fromJSON(schema: JSON.JSON, path?: string, registry?: Map<string, typeof Schema>): Result<Schema, SchemaError>;
18
- abstract validate(data: unknown, path?: string): Result<void, ValidationError>;
18
+ abstract validate(data: unknown, path?: string): Result<unknown, ValidationError>;
19
19
  abstract toJSON(): JSON.Object;
20
20
  }
21
21
  declare class AnyValidator extends Schema {
22
22
  static fromJSON(schema: JSON.JSON, path?: string): Result<AnyValidator, SchemaError>;
23
23
  constructor();
24
- validate(data: unknown, path?: string): Result<void, ValidationError>;
24
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
25
25
  toJSON(): JSON.Object;
26
26
  }
27
27
  declare class BooleanValidator extends Schema {
@@ -30,7 +30,7 @@ declare class BooleanValidator extends Schema {
30
30
  constructor();
31
31
  nullable(flag: boolean): this;
32
32
  equals(value: boolean): this;
33
- validate(data: unknown, path?: string): Result<void, ValidationError>;
33
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
34
34
  toJSON(): JSON.Object;
35
35
  }
36
36
  declare class NumberValidator extends Schema {
@@ -42,7 +42,7 @@ declare class NumberValidator extends Schema {
42
42
  integer(flag?: boolean): this;
43
43
  min(value: number): this;
44
44
  max(value: number): this;
45
- validate(data: unknown, path?: string): Result<void, ValidationError>;
45
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
46
46
  toJSON(): JSON.Object;
47
47
  }
48
48
  declare class StringValidator extends Schema {
@@ -53,7 +53,7 @@ declare class StringValidator extends Schema {
53
53
  equals(value: string): this;
54
54
  min(value: number): this;
55
55
  max(value: number): this;
56
- validate(data: unknown, path?: string): Result<void, ValidationError>;
56
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
57
57
  toJSON(): JSON.Object;
58
58
  }
59
59
  declare class ArrayValidator extends Schema {
@@ -65,7 +65,7 @@ declare class ArrayValidator extends Schema {
65
65
  max(value: number): this;
66
66
  every(validator: Schema): this;
67
67
  tuple(validators: Schema[]): this;
68
- validate(data: unknown, path?: string): Result<void, ValidationError>;
68
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
69
69
  toJSON(): JSON.Object;
70
70
  }
71
71
  declare class ObjectValidator extends Schema {
@@ -77,7 +77,7 @@ declare class ObjectValidator extends Schema {
77
77
  schema(value: {
78
78
  [key: string]: Schema;
79
79
  }, flag?: boolean): this;
80
- validate(data: unknown, path?: string): Result<void, ValidationError>;
80
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
81
81
  toJSON(): JSON.Object;
82
82
  }
83
83
  declare class OrValidator extends Schema {
@@ -85,7 +85,7 @@ declare class OrValidator extends Schema {
85
85
  static fromJSON(schema: JSON.JSON, path?: string, registry?: Map<string, typeof Schema>): Result<OrValidator, SchemaError>;
86
86
  constructor();
87
87
  oneOf(validators: Schema[]): this;
88
- validate(data: unknown, path?: string): Result<void, ValidationError>;
88
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
89
89
  toJSON(): JSON.Object;
90
90
  }
91
91
  declare class AndValidator extends Schema {
@@ -93,7 +93,7 @@ declare class AndValidator extends Schema {
93
93
  static fromJSON(schema: JSON.JSON, path?: string, registry?: Map<string, typeof Schema>): Result<AndValidator, SchemaError>;
94
94
  constructor();
95
95
  allOf(validators: Schema[]): this;
96
- validate(data: unknown, path?: string): Result<void, ValidationError>;
96
+ validate(data: unknown, path?: string): Result<unknown, ValidationError>;
97
97
  toJSON(): JSON.Object;
98
98
  }
99
99
  export {};