@decaf-ts/decorator-validation 1.11.10 → 1.11.12
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/README.md +1 -1
- package/dist/decorator-validation.cjs +1 -1
- package/dist/decorator-validation.cjs.map +1 -1
- package/dist/decorator-validation.js +1 -1
- package/dist/decorator-validation.js.map +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/model/Model.d.ts +0 -103
- package/lib/esm/model/Model.js +11 -250
- package/lib/esm/model/Model.js.map +1 -1
- package/lib/esm/model/ModelRegistry.d.ts +181 -0
- package/lib/esm/model/ModelRegistry.js +291 -0
- package/lib/esm/model/ModelRegistry.js.map +1 -0
- package/lib/esm/model/index.d.ts +1 -0
- package/lib/esm/model/index.js +1 -0
- package/lib/esm/model/index.js.map +1 -1
- package/lib/esm/model/validation.d.ts +1 -1
- package/lib/esm/model/validation.js +6 -6
- package/lib/esm/model/validation.js.map +1 -1
- package/lib/esm/overrides/Metadata.d.ts +4 -1
- package/lib/esm/overrides/overrides.js +49 -0
- package/lib/esm/overrides/overrides.js.map +1 -1
- package/lib/esm/overrides/types.d.ts +1 -1
- package/lib/esm/utils/constants.d.ts +1 -0
- package/lib/esm/utils/constants.js +1 -0
- package/lib/esm/utils/constants.js.map +1 -1
- package/lib/esm/utils/index.d.ts +1 -0
- package/lib/esm/utils/index.js +1 -0
- package/lib/esm/utils/index.js.map +1 -1
- package/lib/esm/utils/serialization.d.ts +0 -41
- package/lib/esm/utils/serialization.js +1 -72
- package/lib/esm/utils/serialization.js.map +1 -1
- package/lib/esm/utils/serializers.d.ts +41 -0
- package/lib/esm/utils/serializers.js +73 -0
- package/lib/esm/utils/serializers.js.map +1 -0
- package/lib/esm/validation/Validation.js +1 -1
- package/lib/esm/validation/Validation.js.map +1 -1
- package/lib/esm/validation/Validators/constants.d.ts +1 -0
- package/lib/esm/validation/Validators/constants.js +1 -0
- package/lib/esm/validation/Validators/constants.js.map +1 -1
- package/lib/esm/validation/Validators/utils.js +1 -1
- package/lib/esm/validation/Validators/utils.js.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/model/Model.cjs +14 -255
- package/lib/model/Model.d.ts +0 -103
- package/lib/model/Model.js.map +1 -1
- package/lib/model/ModelRegistry.cjs +296 -0
- package/lib/model/ModelRegistry.d.ts +181 -0
- package/lib/model/ModelRegistry.js.map +1 -0
- package/lib/model/index.cjs +1 -0
- package/lib/model/index.d.ts +1 -0
- package/lib/model/index.js.map +1 -1
- package/lib/model/validation.cjs +6 -6
- package/lib/model/validation.d.ts +1 -1
- package/lib/model/validation.js.map +1 -1
- package/lib/overrides/Metadata.d.ts +4 -1
- package/lib/overrides/overrides.cjs +49 -0
- package/lib/overrides/overrides.js.map +1 -1
- package/lib/overrides/types.d.ts +1 -1
- package/lib/utils/constants.cjs +2 -1
- package/lib/utils/constants.d.ts +1 -0
- package/lib/utils/constants.js.map +1 -1
- package/lib/utils/index.cjs +1 -0
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/serialization.cjs +2 -74
- package/lib/utils/serialization.d.ts +0 -41
- package/lib/utils/serialization.js.map +1 -1
- package/lib/utils/serializers.cjs +77 -0
- package/lib/utils/serializers.d.ts +41 -0
- package/lib/utils/serializers.js.map +1 -0
- package/lib/validation/Validation.cjs +4 -4
- package/lib/validation/Validation.js.map +1 -1
- package/lib/validation/Validators/constants.cjs +1 -0
- package/lib/validation/Validators/constants.d.ts +1 -0
- package/lib/validation/Validators/constants.js.map +1 -1
- package/lib/validation/Validators/utils.cjs +6 -6
- package/lib/validation/Validators/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,6 +5,7 @@ const decoration_1 = require("@decaf-ts/decoration");
|
|
|
5
5
|
const Model_1 = require("./../model/Model.cjs");
|
|
6
6
|
const constants_1 = require("./../validation/Validators/constants.cjs");
|
|
7
7
|
const constants_2 = require("./../model/constants.cjs");
|
|
8
|
+
const ModelRegistry_1 = require("./../model/ModelRegistry.cjs");
|
|
8
9
|
decoration_1.Metadata.validationFor = function (model, property, key) {
|
|
9
10
|
const meta = decoration_1.Metadata.get(model);
|
|
10
11
|
if (!meta)
|
|
@@ -78,4 +79,52 @@ decoration_1.Metadata.getPropDesignTypes = function (model, prop) {
|
|
|
78
79
|
const designTypes = (Array.isArray(designType) ? designType : [designType]).map((e) => (e = typeof e === "function" && !e.name ? e() : e));
|
|
79
80
|
return { designTypes, designType };
|
|
80
81
|
}.bind(decoration_1.Metadata);
|
|
82
|
+
decoration_1.Metadata.isModel = function isModel(target) {
|
|
83
|
+
try {
|
|
84
|
+
if (target instanceof Model_1.Model)
|
|
85
|
+
return true;
|
|
86
|
+
const constr = decoration_1.Metadata.constr(target);
|
|
87
|
+
if (!constr || constr === target)
|
|
88
|
+
return false;
|
|
89
|
+
return !!decoration_1.Metadata.modelName(constr);
|
|
90
|
+
//
|
|
91
|
+
// // return target instanceof Model || !!Metadata.modelName(target as any);
|
|
92
|
+
// const modelName = Metadata.modelName(target as any);
|
|
93
|
+
// return target instanceof Model || !!Model.get(modelName);
|
|
94
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
95
|
+
}
|
|
96
|
+
catch (e) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
}.bind(decoration_1.Metadata);
|
|
100
|
+
decoration_1.Metadata.isPropertyModel = function isPropertyModel(target, attribute) {
|
|
101
|
+
const isModel = decoration_1.Metadata.isModel(target[attribute]);
|
|
102
|
+
if (isModel)
|
|
103
|
+
return true;
|
|
104
|
+
const metadata = decoration_1.Metadata.type(target.constructor, attribute);
|
|
105
|
+
if (!metadata)
|
|
106
|
+
return undefined;
|
|
107
|
+
return ModelRegistry_1.ModelRegistryManager.getRegistry().get(metadata.name)
|
|
108
|
+
? metadata.name
|
|
109
|
+
: undefined;
|
|
110
|
+
}.bind(decoration_1.Metadata);
|
|
111
|
+
decoration_1.Metadata.getAttributes = function getAttributes(model) {
|
|
112
|
+
const constructor = model instanceof Model_1.Model ? model.constructor : model;
|
|
113
|
+
const seen = new Set();
|
|
114
|
+
const collect = (current) => {
|
|
115
|
+
if (!current)
|
|
116
|
+
return [];
|
|
117
|
+
const parent = Object.getPrototypeOf(current);
|
|
118
|
+
const attributes = collect(parent);
|
|
119
|
+
const props = decoration_1.Metadata.properties(current) ?? [];
|
|
120
|
+
for (const prop of props) {
|
|
121
|
+
if (!seen.has(prop)) {
|
|
122
|
+
seen.add(prop);
|
|
123
|
+
attributes.push(prop);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return attributes;
|
|
127
|
+
};
|
|
128
|
+
return collect(constructor);
|
|
129
|
+
}.bind(decoration_1.Metadata);
|
|
81
130
|
//# sourceMappingURL=overrides.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/overrides/overrides.ts"],"names":[],"mappings":";;AAAA,0BAAoB;AACpB,qDAA6D;AAC7D,gDAAuC;AAGvC,wEAG4C;AAC5C,wDAAoD;
|
|
1
|
+
{"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/overrides/overrides.ts"],"names":[],"mappings":"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"}
|
package/lib/overrides/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BasicMetadata } from "@decaf-ts/decoration";
|
|
2
|
-
import { ValidatorOptions } from "../validation/
|
|
2
|
+
import { ValidatorOptions } from "../validation/types";
|
|
3
3
|
export type ExtendedMetadata<M> = BasicMetadata<M> & {
|
|
4
4
|
validation: Record<keyof M, ValidatorOptions>;
|
|
5
5
|
};
|
package/lib/utils/constants.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ModelKeys = void 0;
|
|
3
|
+
exports.DefaultSerializationMethod = exports.ModelKeys = void 0;
|
|
4
4
|
const decoration_1 = require("@decaf-ts/decoration");
|
|
5
5
|
/**
|
|
6
6
|
* @description Enum containing metadata keys used for reflection in the model system
|
|
@@ -34,4 +34,5 @@ var ModelKeys;
|
|
|
34
34
|
ModelKeys["DECORATORS"] = "decorators";
|
|
35
35
|
ModelKeys["CONSTRUCTOR"] = "__original";
|
|
36
36
|
})(ModelKeys || (exports.ModelKeys = ModelKeys = {}));
|
|
37
|
+
exports.DefaultSerializationMethod = "json";
|
|
37
38
|
//# sourceMappingURL=constants.js.map
|
package/lib/utils/constants.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";;;AAAA,qDAAsD;AACtD;;;;;;;;;;;;;;;;;;GAkBG;AACH,IAAY,SAWX;AAXD,WAAY,SAAS;IACnB,wCAA6C,CAAA;IAC7C,iCAAsC,CAAA;IACtC,4BAAe,CAAA;IACf,+BAAkB,CAAA;IAClB,4CAA+B,CAAA;IAC/B,uCAA0B,CAAA;IAC1B,gCAAmB,CAAA;IACnB,4CAA+B,CAAA;IAC/B,sCAAyB,CAAA;IACzB,uCAA6C,CAAA;AAC/C,CAAC,EAXW,SAAS,yBAAT,SAAS,QAWpB"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";;;AAAA,qDAAsD;AACtD;;;;;;;;;;;;;;;;;;GAkBG;AACH,IAAY,SAWX;AAXD,WAAY,SAAS;IACnB,wCAA6C,CAAA;IAC7C,iCAAsC,CAAA;IACtC,4BAAe,CAAA;IACf,+BAAkB,CAAA;IAClB,4CAA+B,CAAA;IAC/B,uCAA0B,CAAA;IAC1B,gCAAmB,CAAA;IACnB,4CAA+B,CAAA;IAC/B,sCAAyB,CAAA;IACzB,uCAA6C,CAAA;AAC/C,CAAC,EAXW,SAAS,yBAAT,SAAS,QAWpB;AACY,QAAA,0BAA0B,GAAG,MAAM,CAAC"}
|
package/lib/utils/index.cjs
CHANGED
|
@@ -20,6 +20,7 @@ __exportStar(require("./equality.cjs"), exports);
|
|
|
20
20
|
__exportStar(require("./hashing.cjs"), exports);
|
|
21
21
|
__exportStar(require("./PathProxy.cjs"), exports);
|
|
22
22
|
__exportStar(require("./registry.cjs"), exports);
|
|
23
|
+
__exportStar(require("./serializers.cjs"), exports); // before serialization on purpose
|
|
23
24
|
__exportStar(require("./serialization.cjs"), exports);
|
|
24
25
|
__exportStar(require("./strings.cjs"), exports);
|
|
25
26
|
__exportStar(require("./types.cjs"), exports);
|
package/lib/utils/index.d.ts
CHANGED
package/lib/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA4B;AAC5B,8CAAwB;AACxB,iDAA2B;AAC3B,gDAA0B;AAC1B,kDAA4B;AAC5B,iDAA2B;AAC3B,sDAAgC;AAChC,gDAA0B;AAC1B,8CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA4B;AAC5B,8CAAwB;AACxB,iDAA2B;AAC3B,gDAA0B;AAC1B,kDAA4B;AAC5B,iDAA2B;AAC3B,oDAA8B,CAAC,kCAAkC;AACjE,sDAAgC;AAChC,gDAA0B;AAC1B,8CAAwB"}
|
|
@@ -1,81 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Serialization =
|
|
4
|
-
const decoration_1 = require("@decaf-ts/decoration");
|
|
5
|
-
const Model_1 = require("./../model/Model.cjs");
|
|
3
|
+
exports.Serialization = void 0;
|
|
6
4
|
const constants_1 = require("./constants.cjs");
|
|
7
|
-
exports.DefaultSerializationMethod = "json";
|
|
8
|
-
/**
|
|
9
|
-
* @summary Concrete implementation of a {@link Serializer} in JSON format
|
|
10
|
-
* @description JS's native JSON.stringify (used here) is not deterministic
|
|
11
|
-
* and therefore should not be used for hashing purposes
|
|
12
|
-
*
|
|
13
|
-
* To keep dependencies low, we will not implement this, but we recommend
|
|
14
|
-
* implementing a similar {@link JSONSerializer} using 'deterministic-json' libraries
|
|
15
|
-
*
|
|
16
|
-
* @class JSONSerializer
|
|
17
|
-
* @implements Serializer
|
|
18
|
-
*
|
|
19
|
-
* @category Model
|
|
20
|
-
*/
|
|
21
|
-
class JSONSerializer {
|
|
22
|
-
constructor() { }
|
|
23
|
-
/**
|
|
24
|
-
* @summary prepares the model for serialization
|
|
25
|
-
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
26
|
-
* so the object can be recognized upon deserialization
|
|
27
|
-
*
|
|
28
|
-
* @param {T} model
|
|
29
|
-
* @protected
|
|
30
|
-
*/
|
|
31
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
32
|
-
preSerialize(model, ...args) {
|
|
33
|
-
// TODO: nested preserialization (so increase performance when deserializing)
|
|
34
|
-
// TODO: Verify why there is no metadata
|
|
35
|
-
const toSerialize = Object.assign({}, model);
|
|
36
|
-
let metadata;
|
|
37
|
-
try {
|
|
38
|
-
metadata = decoration_1.Metadata.modelName(model.constructor);
|
|
39
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
metadata = undefined;
|
|
43
|
-
}
|
|
44
|
-
toSerialize[constants_1.ModelKeys.ANCHOR] = metadata || model.constructor.name;
|
|
45
|
-
return toSerialize;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* @summary Rebuilds a model from a serialization
|
|
49
|
-
* @param {string} str
|
|
50
|
-
*
|
|
51
|
-
* @throws {Error} If it fails to parse the string, or to build the model
|
|
52
|
-
*/
|
|
53
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
54
|
-
deserialize(str, ...args) {
|
|
55
|
-
const deserialization = JSON.parse(str);
|
|
56
|
-
const className = deserialization[constants_1.ModelKeys.ANCHOR];
|
|
57
|
-
if (!className)
|
|
58
|
-
throw new Error("Could not find class reference in serialized model");
|
|
59
|
-
const model = Model_1.Model.build(deserialization, className);
|
|
60
|
-
return model;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* @summary Serializes a model
|
|
64
|
-
* @param {T} model
|
|
65
|
-
*
|
|
66
|
-
* @throws {Error} if fails to serialize
|
|
67
|
-
*/
|
|
68
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
69
|
-
serialize(model, ...args) {
|
|
70
|
-
return JSON.stringify(this.preSerialize(model));
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
exports.JSONSerializer = JSONSerializer;
|
|
74
5
|
class Serialization {
|
|
75
|
-
static { this.current =
|
|
76
|
-
static { this.cache = {
|
|
77
|
-
json: new JSONSerializer(),
|
|
78
|
-
}; }
|
|
6
|
+
static { this.current = constants_1.DefaultSerializationMethod; }
|
|
79
7
|
constructor() { }
|
|
80
8
|
static get(key) {
|
|
81
9
|
if (key in this.cache)
|
|
@@ -1,46 +1,5 @@
|
|
|
1
1
|
import { Constructor } from "@decaf-ts/decoration";
|
|
2
2
|
import { Serializer } from "./types";
|
|
3
|
-
import { Model } from "../model/Model";
|
|
4
|
-
export declare const DefaultSerializationMethod = "json";
|
|
5
|
-
/**
|
|
6
|
-
* @summary Concrete implementation of a {@link Serializer} in JSON format
|
|
7
|
-
* @description JS's native JSON.stringify (used here) is not deterministic
|
|
8
|
-
* and therefore should not be used for hashing purposes
|
|
9
|
-
*
|
|
10
|
-
* To keep dependencies low, we will not implement this, but we recommend
|
|
11
|
-
* implementing a similar {@link JSONSerializer} using 'deterministic-json' libraries
|
|
12
|
-
*
|
|
13
|
-
* @class JSONSerializer
|
|
14
|
-
* @implements Serializer
|
|
15
|
-
*
|
|
16
|
-
* @category Model
|
|
17
|
-
*/
|
|
18
|
-
export declare class JSONSerializer<T extends Model<boolean>> implements Serializer<T> {
|
|
19
|
-
constructor();
|
|
20
|
-
/**
|
|
21
|
-
* @summary prepares the model for serialization
|
|
22
|
-
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
23
|
-
* so the object can be recognized upon deserialization
|
|
24
|
-
*
|
|
25
|
-
* @param {T} model
|
|
26
|
-
* @protected
|
|
27
|
-
*/
|
|
28
|
-
protected preSerialize(model: T, ...args: any[]): Record<string, any>;
|
|
29
|
-
/**
|
|
30
|
-
* @summary Rebuilds a model from a serialization
|
|
31
|
-
* @param {string} str
|
|
32
|
-
*
|
|
33
|
-
* @throws {Error} If it fails to parse the string, or to build the model
|
|
34
|
-
*/
|
|
35
|
-
deserialize(str: string, ...args: any[]): T;
|
|
36
|
-
/**
|
|
37
|
-
* @summary Serializes a model
|
|
38
|
-
* @param {T} model
|
|
39
|
-
*
|
|
40
|
-
* @throws {Error} if fails to serialize
|
|
41
|
-
*/
|
|
42
|
-
serialize(model: T, ...args: any[]): string;
|
|
43
|
-
}
|
|
44
3
|
export declare class Serialization {
|
|
45
4
|
private static current;
|
|
46
5
|
private static cache;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../../src/utils/serialization.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../../src/utils/serialization.ts"],"names":[],"mappings":";;;AAEA,+CAAyD;AAEzD,MAAa,aAAa;aACT,YAAO,GAAW,sCAA0B,CAAC;IAI5D,gBAAuB,CAAC;IAEhB,MAAM,CAAC,GAAG,CAAC,GAAW;QAC5B,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,4CAA4C,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,CAAC,QAAQ,CACb,GAAW,EACX,IAAkC,EAClC,UAAU,GAAG,KAAK;QAElB,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK;YACnB,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,qBAAqB,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,UAAU;YAAE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACrC,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,GAAQ,EAAE,MAAe,EAAE,GAAG,IAAW;QACxD,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,GAAW,EAAE,MAAe,EAAE,GAAG,IAAW;QAC7D,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAc;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;;AAnCH,sCAoCC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.JSONSerializer = void 0;
|
|
4
|
+
const decoration_1 = require("@decaf-ts/decoration");
|
|
5
|
+
const Model_1 = require("./../model/Model.cjs");
|
|
6
|
+
const constants_1 = require("./constants.cjs");
|
|
7
|
+
const serialization_1 = require("./serialization.cjs");
|
|
8
|
+
/**
|
|
9
|
+
* @summary Concrete implementation of a {@link Serializer} in JSON format
|
|
10
|
+
* @description JS's native JSON.stringify (used here) is not deterministic
|
|
11
|
+
* and therefore should not be used for hashing purposes
|
|
12
|
+
*
|
|
13
|
+
* To keep dependencies low, we will not implement this, but we recommend
|
|
14
|
+
* implementing a similar {@link JSONSerializer} using 'deterministic-json' libraries
|
|
15
|
+
*
|
|
16
|
+
* @class JSONSerializer
|
|
17
|
+
* @implements Serializer
|
|
18
|
+
*
|
|
19
|
+
* @category Model
|
|
20
|
+
*/
|
|
21
|
+
class JSONSerializer {
|
|
22
|
+
constructor() { }
|
|
23
|
+
/**
|
|
24
|
+
* @summary prepares the model for serialization
|
|
25
|
+
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
26
|
+
* so the object can be recognized upon deserialization
|
|
27
|
+
*
|
|
28
|
+
* @param {T} model
|
|
29
|
+
* @protected
|
|
30
|
+
*/
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
32
|
+
preSerialize(model, ...args) {
|
|
33
|
+
// TODO: nested preserialization (so increase performance when deserializing)
|
|
34
|
+
// TODO: Verify why there is no metadata
|
|
35
|
+
const toSerialize = Object.assign({}, model);
|
|
36
|
+
let metadata;
|
|
37
|
+
try {
|
|
38
|
+
metadata = decoration_1.Metadata.modelName(model.constructor);
|
|
39
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
metadata = undefined;
|
|
43
|
+
}
|
|
44
|
+
toSerialize[constants_1.ModelKeys.ANCHOR] = metadata || model.constructor.name;
|
|
45
|
+
return toSerialize;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* @summary Rebuilds a model from a serialization
|
|
49
|
+
* @param {string} str
|
|
50
|
+
*
|
|
51
|
+
* @throws {Error} If it fails to parse the string, or to build the model
|
|
52
|
+
*/
|
|
53
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
54
|
+
deserialize(str, ...args) {
|
|
55
|
+
const deserialization = JSON.parse(str);
|
|
56
|
+
const className = deserialization[constants_1.ModelKeys.ANCHOR];
|
|
57
|
+
if (!className)
|
|
58
|
+
throw new Error("Could not find class reference in serialized model");
|
|
59
|
+
const model = Model_1.Model.build(deserialization, className);
|
|
60
|
+
return model;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* @summary Serializes a model
|
|
64
|
+
* @param {T} model
|
|
65
|
+
*
|
|
66
|
+
* @throws {Error} if fails to serialize
|
|
67
|
+
*/
|
|
68
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
69
|
+
serialize(model, ...args) {
|
|
70
|
+
return JSON.stringify(this.preSerialize(model));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
exports.JSONSerializer = JSONSerializer;
|
|
74
|
+
serialization_1.Serialization["cache"] = {
|
|
75
|
+
json: new JSONSerializer(),
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=serializers.js.map
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Serializer } from "./types";
|
|
2
|
+
import { Model } from "../model/Model";
|
|
3
|
+
/**
|
|
4
|
+
* @summary Concrete implementation of a {@link Serializer} in JSON format
|
|
5
|
+
* @description JS's native JSON.stringify (used here) is not deterministic
|
|
6
|
+
* and therefore should not be used for hashing purposes
|
|
7
|
+
*
|
|
8
|
+
* To keep dependencies low, we will not implement this, but we recommend
|
|
9
|
+
* implementing a similar {@link JSONSerializer} using 'deterministic-json' libraries
|
|
10
|
+
*
|
|
11
|
+
* @class JSONSerializer
|
|
12
|
+
* @implements Serializer
|
|
13
|
+
*
|
|
14
|
+
* @category Model
|
|
15
|
+
*/
|
|
16
|
+
export declare class JSONSerializer<T extends Model<boolean>> implements Serializer<T> {
|
|
17
|
+
constructor();
|
|
18
|
+
/**
|
|
19
|
+
* @summary prepares the model for serialization
|
|
20
|
+
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
21
|
+
* so the object can be recognized upon deserialization
|
|
22
|
+
*
|
|
23
|
+
* @param {T} model
|
|
24
|
+
* @protected
|
|
25
|
+
*/
|
|
26
|
+
protected preSerialize(model: T, ...args: any[]): Record<string, any>;
|
|
27
|
+
/**
|
|
28
|
+
* @summary Rebuilds a model from a serialization
|
|
29
|
+
* @param {string} str
|
|
30
|
+
*
|
|
31
|
+
* @throws {Error} If it fails to parse the string, or to build the model
|
|
32
|
+
*/
|
|
33
|
+
deserialize(str: string, ...args: any[]): T;
|
|
34
|
+
/**
|
|
35
|
+
* @summary Serializes a model
|
|
36
|
+
* @param {T} model
|
|
37
|
+
*
|
|
38
|
+
* @throws {Error} if fails to serialize
|
|
39
|
+
*/
|
|
40
|
+
serialize(model: T, ...args: any[]): string;
|
|
41
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializers.js","sourceRoot":"","sources":["../../src/utils/serializers.ts"],"names":[],"mappings":";;;AACA,qDAA6D;AAC7D,gDAAuC;AACvC,+CAAwC;AACxC,uDAAgD;AAEhD;;;;;;;;;;;;GAYG;AACH,MAAa,cAAc;IACzB,gBAAe,CAAC;IAChB;;;;;;;OAOG;IACH,6DAA6D;IACnD,YAAY,CAAC,KAAQ,EAAE,GAAG,IAAW;QAC7C,6EAA6E;QAC7E,wCAAwC;QACxC,MAAM,WAAW,GAAwB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAClE,IAAI,QAAQ,CAAC;QACb,IAAI,CAAC;YACH,QAAQ,GAAG,qBAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,WAA0B,CAAC,CAAC;YAChE,6DAA6D;QAC/D,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,QAAQ,GAAG,SAAS,CAAC;QACvB,CAAC;QACD,WAAW,CAAC,qBAAS,CAAC,MAAM,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;QACnE,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,6DAA6D;IAC7D,WAAW,CAAC,GAAW,EAAE,GAAG,IAAW;QACrC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,eAAe,CAAC,qBAAS,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS;YACZ,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,MAAM,KAAK,GAAM,aAAK,CAAC,KAAK,CAAC,eAAe,EAAE,SAAS,CAAiB,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,6DAA6D;IAC7D,SAAS,CAAC,KAAQ,EAAE,GAAG,IAAW;QAChC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;CACF;AApDD,wCAoDC;AAED,6BAAa,CAAC,OAAO,CAAC,GAAG;IACvB,IAAI,EAAE,IAAI,cAAc,EAAE;CAC3B,CAAC"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Validation = void 0;
|
|
4
4
|
const ValidatorRegistry_1 = require("./Validators/ValidatorRegistry.cjs");
|
|
5
5
|
const constants_1 = require("./Validators/constants.cjs");
|
|
6
|
-
const
|
|
6
|
+
const constants_2 = require("./../utils/constants.cjs");
|
|
7
7
|
const decoration_1 = require("@decaf-ts/decoration");
|
|
8
8
|
/**
|
|
9
9
|
* @summary Static class acting as a namespace for the Validation
|
|
@@ -74,14 +74,14 @@ class Validation {
|
|
|
74
74
|
return this.getRegistry().getKeys();
|
|
75
75
|
}
|
|
76
76
|
static registerDecorator(key, decorator) {
|
|
77
|
-
const meta = decoration_1.Metadata["innerGet"](Symbol.for(
|
|
77
|
+
const meta = decoration_1.Metadata["innerGet"](Symbol.for(constants_2.ModelKeys.DECORATORS), decoration_1.Metadata.key(constants_1.ValidationKeys.REFLECT, key));
|
|
78
78
|
if (meta?.[key])
|
|
79
79
|
return;
|
|
80
|
-
decoration_1.Metadata.set(
|
|
80
|
+
decoration_1.Metadata.set(constants_2.ModelKeys.DECORATORS, decoration_1.Metadata.key(constants_1.ValidationKeys.REFLECT, key), decorator);
|
|
81
81
|
}
|
|
82
82
|
static decoratorFromKey(key) {
|
|
83
83
|
try {
|
|
84
|
-
return decoration_1.Metadata["innerGet"](Symbol.for(
|
|
84
|
+
return decoration_1.Metadata["innerGet"](Symbol.for(constants_2.ModelKeys.DECORATORS), decoration_1.Metadata.key(constants_1.ValidationKeys.REFLECT, key));
|
|
85
85
|
}
|
|
86
86
|
catch (e) {
|
|
87
87
|
throw new Error(`No decorator registered under ${key}: ${e}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validation.js","sourceRoot":"","sources":["../../src/validation/Validation.ts"],"names":[],"mappings":";;;AAEA,0EAAmE;AACnE,0DAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"Validation.js","sourceRoot":"","sources":["../../src/validation/Validation.ts"],"names":[],"mappings":";;;AAEA,0EAAmE;AACnE,0DAAwD;AACxD,wDAA+C;AAC/C,qDAAgD;AAEhD;;;;;;;GAOG;AACH,MAAa,UAAU;aACN,4BAAuB,GACpC,SAAS,CAAC;IAEZ,gBAAuB,CAAC;IAExB;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAChB,iBAAgD,EAChD,gBAAsD;QAEtD,IAAI,gBAAgB,IAAI,UAAU,CAAC,uBAAuB;YACxD,UAAU,CAAC,uBAAuB,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;gBACjE,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC3C,IAAI,SAAS;oBAAE,iBAAiB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;QACL,UAAU,CAAC,uBAAuB,GAAG,iBAAiB,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,WAAW;QACxB,IAAI,CAAC,UAAU,CAAC,uBAAuB;YACrC,UAAU,CAAC,uBAAuB,GAAG,IAAI,qCAAiB,EAAE,CAAC;QAC/D,OAAO,UAAU,CAAC,uBAAuB,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,GAAG,CAAsB,YAAoB;QAClD,OAAO,UAAU,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CACb,GAAG,SAAsC;QAEzC,OAAO,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,GAAG,CAAC,GAAW;QACpB,OAAO,0BAAc,CAAC,OAAO,GAAG,GAAG,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAI;QACT,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,iBAAiB,CACtB,GAAW,EACX,SAAgD;QAEhD,MAAM,IAAI,GAAG,qBAAQ,CAAC,UAAU,CAAC,CAC/B,MAAM,CAAC,GAAG,CAAC,qBAAS,CAAC,UAAU,CAAC,EAChC,qBAAQ,CAAC,GAAG,CAAC,0BAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CACO,CAAC;QACnD,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC;YAAE,OAAO;QACxB,qBAAQ,CAAC,GAAG,CACV,qBAAS,CAAC,UAAU,EACpB,qBAAQ,CAAC,GAAG,CAAC,0BAAc,CAAC,OAAO,EAAE,GAAG,CAAC,EACzC,SAAS,CACV,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,GAAW;QACjC,IAAI,CAAC;YACH,OAAO,qBAAQ,CAAC,UAAU,CAAC,CACzB,MAAM,CAAC,GAAG,CAAC,qBAAS,CAAC,UAAU,CAAC,EAChC,qBAAQ,CAAC,GAAG,CAAC,0BAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CAC1C,CAAC;QACJ,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;;AAlGH,gCAmGC"}
|
|
@@ -196,5 +196,6 @@ exports.DEFAULT_PATTERNS = {
|
|
|
196
196
|
PASSWORD: {
|
|
197
197
|
CHAR8_ONE_OF_EACH: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&_\-.,])[A-Za-z\d@$!%*?&_\-.,]{8,}$/g,
|
|
198
198
|
},
|
|
199
|
+
asd: "^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\\.)+(?:[a-z\u00a1-\uffff]{2,}\\.?))(?::\\d{2,5})?(?:[/?#]\\S*)?$",
|
|
199
200
|
};
|
|
200
201
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/validation/Validators/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;AAEH;;;;;;;GAOG;AACU,QAAA,wBAAwB,GAAG;IACtC,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,UAAU;IACrB,kBAAkB,EAAE,iBAAiB;IACrC,YAAY,EAAE,aAAa;IAC3B,qBAAqB,EAAE,oBAAoB;CACnC,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;;;;;GAOG;AACU,QAAA,cAAc,GAAG;IAC5B,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,WAAW;IACvB,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,WAAW;IACvB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;IACZ,GAAG,gCAAwB;CACnB,CAAC;AAEX;;;;;;GAMG;AACU,QAAA,WAAW,GAAG;IACzB,SAAS;IACT,UAAU;IACV,OAAO;IACP,OAAO;IACP,KAAK;IACL,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,SAAS;IACT,UAAU;IACV,UAAU;CACX,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,kBAAkB,GAAG;IAChC,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,WAAW;IACX,UAAU;IACV,QAAQ;IACR,UAAU;CACX,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;;;;;GAOG;AACU,QAAA,sBAAsB,GAA2B;IAC5D,QAAQ,EAAE,wBAAwB;IAClC,GAAG,EAAE,0BAA0B;IAC/B,GAAG,EAAE,0BAA0B;IAC/B,UAAU,EAAE,2BAA2B;IACvC,UAAU,EAAE,2BAA2B;IACvC,OAAO,EAAE,sCAAsC;IAC/C,KAAK,EAAE,gCAAgC;IACvC,GAAG,EAAE,8BAA8B;IACnC,IAAI,EAAE,0CAA0C;IAChD,IAAI,EAAE,kCAAkC;IACxC,IAAI,EAAE,iCAAiC;IACvC,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EACN,4HAA4H;IAC9H,IAAI,EAAE,qBAAqB;IAC3B,eAAe,EAAE,+BAA+B;IAChD,MAAM,EAAE,uCAAuC;IAC/C,IAAI,EAAE,6CAA6C;IACnD,SAAS,EAAE,wCAAwC;IACnD,kBAAkB,EAAE,oDAAoD;IACxE,YAAY,EAAE,2CAA2C;IACzD,qBAAqB,EACnB,uDAAuD;IACzD,MAAM,EAAE,6CAA6C;IACrD,IAAI,EAAE,0CAA0C;CACjD,CAAC;AAEF;;;;;;;;;GASG;AAEH;;;;;;;GAOG;AACU,QAAA,gBAAgB,GAAG;IAC9B,KAAK,EACH,4JAA4J;IAC9J,GAAG,EAAE,yaAAya;IAC9a,QAAQ,EAAE;QACR,iBAAiB,EACf,iFAAiF;KACpF;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/validation/Validators/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;AAEH;;;;;;;GAOG;AACU,QAAA,wBAAwB,GAAG;IACtC,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,UAAU;IACrB,kBAAkB,EAAE,iBAAiB;IACrC,YAAY,EAAE,aAAa;IAC3B,qBAAqB,EAAE,oBAAoB;CACnC,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;;;;;GAOG;AACU,QAAA,cAAc,GAAG;IAC5B,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,WAAW;IACvB,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,WAAW;IACvB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;IACZ,GAAG,gCAAwB;CACnB,CAAC;AAEX;;;;;;GAMG;AACU,QAAA,WAAW,GAAG;IACzB,SAAS;IACT,UAAU;IACV,OAAO;IACP,OAAO;IACP,KAAK;IACL,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,SAAS;IACT,UAAU;IACV,UAAU;CACX,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,kBAAkB,GAAG;IAChC,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,WAAW;IACX,UAAU;IACV,QAAQ;IACR,UAAU;CACX,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;;;;;GAOG;AACU,QAAA,sBAAsB,GAA2B;IAC5D,QAAQ,EAAE,wBAAwB;IAClC,GAAG,EAAE,0BAA0B;IAC/B,GAAG,EAAE,0BAA0B;IAC/B,UAAU,EAAE,2BAA2B;IACvC,UAAU,EAAE,2BAA2B;IACvC,OAAO,EAAE,sCAAsC;IAC/C,KAAK,EAAE,gCAAgC;IACvC,GAAG,EAAE,8BAA8B;IACnC,IAAI,EAAE,0CAA0C;IAChD,IAAI,EAAE,kCAAkC;IACxC,IAAI,EAAE,iCAAiC;IACvC,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EACN,4HAA4H;IAC9H,IAAI,EAAE,qBAAqB;IAC3B,eAAe,EAAE,+BAA+B;IAChD,MAAM,EAAE,uCAAuC;IAC/C,IAAI,EAAE,6CAA6C;IACnD,SAAS,EAAE,wCAAwC;IACnD,kBAAkB,EAAE,oDAAoD;IACxE,YAAY,EAAE,2CAA2C;IACzD,qBAAqB,EACnB,uDAAuD;IACzD,MAAM,EAAE,6CAA6C;IACrD,IAAI,EAAE,0CAA0C;CACjD,CAAC;AAEF;;;;;;;;;GASG;AAEH;;;;;;;GAOG;AACU,QAAA,gBAAgB,GAAG;IAC9B,KAAK,EACH,4JAA4J;IAC9J,GAAG,EAAE,yaAAya;IAC9a,QAAQ,EAAE;QACR,iBAAiB,EACf,iFAAiF;KACpF;IACD,GAAG,EAAE,scAAsc;CAC5c,CAAC"}
|
|
@@ -8,7 +8,7 @@ exports.checkTypes = checkTypes;
|
|
|
8
8
|
exports.evaluateDesignTypes = evaluateDesignTypes;
|
|
9
9
|
exports.valueLength = valueLength;
|
|
10
10
|
const constants_1 = require("./../../constants/index.cjs");
|
|
11
|
-
const
|
|
11
|
+
const strings_1 = require("./../../utils/strings.cjs");
|
|
12
12
|
// /**
|
|
13
13
|
// * Safely retrieves a nested property value from an object using a dot-notated path string.
|
|
14
14
|
// *
|
|
@@ -116,7 +116,7 @@ const isSupported = (value) => {
|
|
|
116
116
|
function isValidForGteOrLteComparison(a, b) {
|
|
117
117
|
if (isSupported(a) && isSupported(b))
|
|
118
118
|
return true;
|
|
119
|
-
throw new TypeError((0,
|
|
119
|
+
throw new TypeError((0, strings_1.sf)(constants_1.COMPARISON_ERROR_MESSAGES.UNSUPPORTED_TYPES_COMPARISON, getTypeName(a), getTypeName(b)));
|
|
120
120
|
}
|
|
121
121
|
/**
|
|
122
122
|
* @summary Compares two values to determine if the first is less than the second.
|
|
@@ -143,7 +143,7 @@ function isLessThan(a, b) {
|
|
|
143
143
|
return Number(a) < b;
|
|
144
144
|
if (aType === "number" && bType === "bigint")
|
|
145
145
|
return a < Number(b);
|
|
146
|
-
throw new TypeError((0,
|
|
146
|
+
throw new TypeError((0, strings_1.sf)(constants_1.COMPARISON_ERROR_MESSAGES.TYPE_MISMATCH_COMPARISON, aType, bType));
|
|
147
147
|
}
|
|
148
148
|
if ((aType === "number" && bType === "number") ||
|
|
149
149
|
(aType === "bigint" && bType === "bigint")) {
|
|
@@ -156,7 +156,7 @@ function isLessThan(a, b) {
|
|
|
156
156
|
throw new TypeError(constants_1.COMPARISON_ERROR_MESSAGES.INVALID_DATE_COMPARISON);
|
|
157
157
|
return a.getTime() < b.getTime();
|
|
158
158
|
}
|
|
159
|
-
throw new TypeError((0,
|
|
159
|
+
throw new TypeError((0, strings_1.sf)(constants_1.COMPARISON_ERROR_MESSAGES.UNSUPPORTED_TYPES_COMPARISON, getTypeName(a), getTypeName(b)));
|
|
160
160
|
}
|
|
161
161
|
/**
|
|
162
162
|
* Checks if `a` is greater than `b`.
|
|
@@ -182,7 +182,7 @@ function isGreaterThan(a, b) {
|
|
|
182
182
|
return Number(a) > b;
|
|
183
183
|
if (aType === "number" && bType === "bigint")
|
|
184
184
|
return a > Number(b);
|
|
185
|
-
throw new Error((0,
|
|
185
|
+
throw new Error((0, strings_1.sf)(constants_1.COMPARISON_ERROR_MESSAGES.TYPE_MISMATCH_COMPARISON, aType, bType));
|
|
186
186
|
}
|
|
187
187
|
if ((aType === "number" && bType === "number") ||
|
|
188
188
|
(aType === "bigint" && bType === "bigint")) {
|
|
@@ -195,7 +195,7 @@ function isGreaterThan(a, b) {
|
|
|
195
195
|
throw new TypeError(constants_1.COMPARISON_ERROR_MESSAGES.INVALID_DATE_COMPARISON);
|
|
196
196
|
return a.getTime() > b.getTime();
|
|
197
197
|
}
|
|
198
|
-
throw new TypeError((0,
|
|
198
|
+
throw new TypeError((0, strings_1.sf)(constants_1.COMPARISON_ERROR_MESSAGES.UNSUPPORTED_TYPES_COMPARISON, getTypeName(a), getTypeName(b)));
|
|
199
199
|
}
|
|
200
200
|
/**
|
|
201
201
|
* @description Checks if a value matches a specified type name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/validation/Validators/utils.ts"],"names":[],"mappings":";;AA0GA,oEAUC;AAeD,gCAyCC;AAeD,sCAwCC;AASD,8BASC;AASD,gCAEC;AASD,kDAiBC;AAQD,kCAIC;AAtSD,2DAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/validation/Validators/utils.ts"],"names":[],"mappings":"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"}
|