@dereekb/model 10.0.4 → 10.0.6
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/index.cjs.d.ts +1 -0
- package/index.cjs.default.js +1 -0
- package/index.cjs.js +2781 -0
- package/index.cjs.mjs +2 -0
- package/index.esm.js +3992 -0
- package/package.json +13 -3
- package/src/lib/data/address/address.d.ts +1 -1
- package/src/lib/data/website/link.d.ts +1 -1
- package/src/lib/data/website/link.file.d.ts +2 -2
- package/src/lib/data/website/link.website.d.ts +2 -2
- package/src/lib/service/loader/model.loader.d.ts +1 -1
- package/src/lib/service/permission/permission.d.ts +2 -2
- package/src/lib/service/permission/permission.service.d.ts +4 -4
- package/src/lib/service/permission/role.d.ts +1 -1
- package/src/lib/transform/transform.d.ts +3 -3
- package/src/lib/transform/transform.function.d.ts +3 -3
- package/src/lib/transform/transform.result.d.ts +2 -2
- package/src/lib/transform/type.annotation.d.ts +1 -1
- package/src/lib/transform/type.d.ts +2 -2
- package/src/lib/validator/date.d.ts +2 -2
- package/src/lib/validator/phone.d.ts +2 -2
- package/src/lib/validator/url.d.ts +2 -2
- package/CHANGELOG.md +0 -1378
- package/src/index.js +0 -5
- package/src/index.js.map +0 -1
- package/src/lib/data/address/address.js +0 -73
- package/src/lib/data/address/address.js.map +0 -1
- package/src/lib/data/address/index.js +0 -5
- package/src/lib/data/address/index.js.map +0 -1
- package/src/lib/data/index.js +0 -6
- package/src/lib/data/index.js.map +0 -1
- package/src/lib/data/website/index.js +0 -7
- package/src/lib/data/website/index.js.map +0 -1
- package/src/lib/data/website/link.file.js +0 -104
- package/src/lib/data/website/link.file.js.map +0 -1
- package/src/lib/data/website/link.js +0 -48
- package/src/lib/data/website/link.js.map +0 -1
- package/src/lib/data/website/link.website.js +0 -228
- package/src/lib/data/website/link.website.js.map +0 -1
- package/src/lib/index.js +0 -8
- package/src/lib/index.js.map +0 -1
- package/src/lib/service/context.d.ts +0 -0
- package/src/lib/service/context.js +0 -2
- package/src/lib/service/context.js.map +0 -1
- package/src/lib/service/index.js +0 -6
- package/src/lib/service/index.js.map +0 -1
- package/src/lib/service/loader/index.js +0 -5
- package/src/lib/service/loader/index.js.map +0 -1
- package/src/lib/service/loader/model.loader.js +0 -3
- package/src/lib/service/loader/model.loader.js.map +0 -1
- package/src/lib/service/permission/index.js +0 -7
- package/src/lib/service/permission/index.js.map +0 -1
- package/src/lib/service/permission/permission.js +0 -21
- package/src/lib/service/permission/permission.js.map +0 -1
- package/src/lib/service/permission/permission.service.js +0 -50
- package/src/lib/service/permission/permission.service.js.map +0 -1
- package/src/lib/service/permission/role.js +0 -119
- package/src/lib/service/permission/role.js.map +0 -1
- package/src/lib/transform/index.js +0 -9
- package/src/lib/transform/index.js.map +0 -1
- package/src/lib/transform/transform.function.js +0 -28
- package/src/lib/transform/transform.function.js.map +0 -1
- package/src/lib/transform/transform.js +0 -70
- package/src/lib/transform/transform.js.map +0 -1
- package/src/lib/transform/transform.result.js +0 -17
- package/src/lib/transform/transform.result.js.map +0 -1
- package/src/lib/transform/type.annotation.js +0 -17
- package/src/lib/transform/type.annotation.js.map +0 -1
- package/src/lib/transform/type.js +0 -44
- package/src/lib/transform/type.js.map +0 -1
- package/src/lib/validator/date.js +0 -26
- package/src/lib/validator/date.js.map +0 -1
- package/src/lib/validator/index.js +0 -7
- package/src/lib/validator/index.js.map +0 -1
- package/src/lib/validator/phone.js +0 -72
- package/src/lib/validator/phone.js.map +0 -1
- package/src/lib/validator/url.js +0 -46
- package/src/lib/validator/url.js.map +0 -1
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AbstractModelPermissionService = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const permission_1 = require("./permission");
|
|
6
|
-
/**
|
|
7
|
-
* Abstract ModelPermissionService implementation.
|
|
8
|
-
*/
|
|
9
|
-
class AbstractModelPermissionService {
|
|
10
|
-
constructor(modelLoader) {
|
|
11
|
-
this.modelLoader = modelLoader;
|
|
12
|
-
}
|
|
13
|
-
roleMapForKeyContext(key, context) {
|
|
14
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
15
|
-
const model = yield this.modelLoader.loadModelForKey(key, context);
|
|
16
|
-
let result;
|
|
17
|
-
if (model != null) {
|
|
18
|
-
result = yield this.roleMapForModelContext(model, context);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
result = (0, permission_1.noAccessContextGrantedModelRoles)(context);
|
|
22
|
-
}
|
|
23
|
-
return result;
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
roleMapForModelContext(model, context) {
|
|
27
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
const output = yield this.outputForModel(model, context);
|
|
29
|
-
let result;
|
|
30
|
-
if (output != null && this.isUsableOutputForRoles(output, context)) {
|
|
31
|
-
result = yield this.getRoleMapForOutput(output, context, model);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
result = (0, permission_1.noAccessContextGrantedModelRoles)(context, output);
|
|
35
|
-
}
|
|
36
|
-
return result;
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
getRoleMapForOutput(output, context, model) {
|
|
40
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
41
|
-
const roleMap = yield this.roleMapForModel(output, context, model);
|
|
42
|
-
return (0, permission_1.contextGrantedModelRoles)(context, output, roleMap);
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
isUsableOutputForRoles(output, context) {
|
|
46
|
-
return true; // can override in parent functions to further filter roles.
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.AbstractModelPermissionService = AbstractModelPermissionService;
|
|
50
|
-
//# sourceMappingURL=permission.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"permission.service.js","sourceRoot":"","sources":["../../../../../../../packages/model/src/lib/service/permission/permission.service.ts"],"names":[],"mappings":";;;;AAEA,6CAAoH;AAgCpH;;GAEG;AACH,MAAsB,8BAA8B;IAClD,YAAqB,WAA8B;QAA9B,gBAAW,GAAX,WAAW,CAAmB;IAAG,CAAC;IAEjD,oBAAoB,CAAC,GAAW,EAAE,OAAU;;YAChD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACnE,IAAI,MAAyC,CAAC;YAE9C,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;aAC5D;iBAAM;gBACL,MAAM,GAAG,IAAA,6CAAgC,EAAU,OAAO,CAAC,CAAC;aAC7D;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAEK,sBAAsB,CAAC,KAAQ,EAAE,OAAU;;YAC/C,MAAM,MAAM,GAAa,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACnE,IAAI,MAAyC,CAAC;YAE9C,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;gBAClE,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;aACjE;iBAAM;gBACL,MAAM,GAAG,IAAA,6CAAgC,EAAU,OAAO,EAAE,MAAM,CAAC,CAAC;aACrE;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAEe,mBAAmB,CAAC,MAAS,EAAE,OAAU,EAAE,KAAQ;;YACjE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACnE,OAAO,IAAA,qCAAwB,EAAU,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACrE,CAAC;KAAA;IAIS,sBAAsB,CAAC,MAAS,EAAE,OAAU;QACpD,OAAO,IAAI,CAAC,CAAC,4DAA4D;IAC3E,CAAC;CAGF;AAzCD,wEAyCC"}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.grantedRoleKeysMapFromArray = exports.GrantedRoleMapReaderInstance = exports.grantedRoleMapReader = exports.isFullAccessRoleMap = exports.fullAccessRoleMap = exports.isNoAccessRoleMap = exports.noAccessRoleMap = exports.NO_ACCESS_ROLE_KEY = exports.FULL_ACCESS_ROLE_KEY = exports.GRANTED_DELETE_ROLE_KEY = exports.GRANTED_UPDATE_ROLE_KEY = exports.GRANTED_READ_ROLE_KEY = exports.isGrantedAdminLevelRole = exports.GRANTED_ADMIN_ROLE_KEY = exports.GRANTED_OWNER_ROLE_KEY = exports.GRANTED_SYS_ADMIN_ROLE_KEY = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
exports.GRANTED_SYS_ADMIN_ROLE_KEY = 'sysadmin';
|
|
6
|
-
exports.GRANTED_OWNER_ROLE_KEY = 'owner';
|
|
7
|
-
exports.GRANTED_ADMIN_ROLE_KEY = 'admin';
|
|
8
|
-
/**
|
|
9
|
-
* Returns true if the input role is a GrantedAdminRole or a GrantedOwnerRole.
|
|
10
|
-
*
|
|
11
|
-
* @param role
|
|
12
|
-
* @returns
|
|
13
|
-
*/
|
|
14
|
-
function isGrantedAdminLevelRole(role) {
|
|
15
|
-
return role === exports.GRANTED_ADMIN_ROLE_KEY || role === exports.GRANTED_OWNER_ROLE_KEY;
|
|
16
|
-
}
|
|
17
|
-
exports.isGrantedAdminLevelRole = isGrantedAdminLevelRole;
|
|
18
|
-
exports.GRANTED_READ_ROLE_KEY = 'read';
|
|
19
|
-
exports.GRANTED_UPDATE_ROLE_KEY = 'update';
|
|
20
|
-
exports.GRANTED_DELETE_ROLE_KEY = 'delete';
|
|
21
|
-
exports.FULL_ACCESS_ROLE_KEY = '__FULL__';
|
|
22
|
-
exports.NO_ACCESS_ROLE_KEY = '__EMPTY__';
|
|
23
|
-
function noAccessRoleMap() {
|
|
24
|
-
return {
|
|
25
|
-
[exports.NO_ACCESS_ROLE_KEY]: true
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
exports.noAccessRoleMap = noAccessRoleMap;
|
|
29
|
-
function isNoAccessRoleMap(input) {
|
|
30
|
-
return input[exports.NO_ACCESS_ROLE_KEY] === true;
|
|
31
|
-
}
|
|
32
|
-
exports.isNoAccessRoleMap = isNoAccessRoleMap;
|
|
33
|
-
function fullAccessRoleMap() {
|
|
34
|
-
return {
|
|
35
|
-
[exports.FULL_ACCESS_ROLE_KEY]: true
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
exports.fullAccessRoleMap = fullAccessRoleMap;
|
|
39
|
-
function isFullAccessRoleMap(input) {
|
|
40
|
-
return input[exports.FULL_ACCESS_ROLE_KEY] === true;
|
|
41
|
-
}
|
|
42
|
-
exports.isFullAccessRoleMap = isFullAccessRoleMap;
|
|
43
|
-
/**
|
|
44
|
-
* Creates a GrantedRoleMapReader.
|
|
45
|
-
*
|
|
46
|
-
* @param map
|
|
47
|
-
* @returns
|
|
48
|
-
*/
|
|
49
|
-
function grantedRoleMapReader(map) {
|
|
50
|
-
return new GrantedRoleMapReaderInstance(map);
|
|
51
|
-
}
|
|
52
|
-
exports.grantedRoleMapReader = grantedRoleMapReader;
|
|
53
|
-
class GrantedRoleMapReaderInstance {
|
|
54
|
-
constructor(_map) {
|
|
55
|
-
this._map = _map;
|
|
56
|
-
}
|
|
57
|
-
hasNoAccess() {
|
|
58
|
-
return this._map[exports.NO_ACCESS_ROLE_KEY];
|
|
59
|
-
}
|
|
60
|
-
truthMap(input) {
|
|
61
|
-
const result = {};
|
|
62
|
-
(0, util_1.forEachKeyValue)(input, {
|
|
63
|
-
forEach: ([role, value]) => {
|
|
64
|
-
if (this.hasRole(role)) {
|
|
65
|
-
result[role] = value;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
return result;
|
|
70
|
-
}
|
|
71
|
-
hasRole(role) {
|
|
72
|
-
return this.hasRoles('any', role);
|
|
73
|
-
}
|
|
74
|
-
hasRoles(setIncludes, inputRoles) {
|
|
75
|
-
if (this._map[exports.FULL_ACCESS_ROLE_KEY]) {
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
return this.containsRoles(setIncludes, inputRoles);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
containsRoles(setIncludes, inputRoles) {
|
|
83
|
-
const roles = (0, util_1.iterableToArray)(inputRoles);
|
|
84
|
-
if (setIncludes === 'any') {
|
|
85
|
-
return this.containsAnyRole(roles);
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
return this.containsEachRole(roles);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
containsAnyRole(roles) {
|
|
92
|
-
for (const role of roles) {
|
|
93
|
-
if (this._map[role]) {
|
|
94
|
-
return true;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
return false;
|
|
98
|
-
}
|
|
99
|
-
containsEachRole(roles) {
|
|
100
|
-
for (const role of roles) {
|
|
101
|
-
if (!this._map[role]) {
|
|
102
|
-
return false;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
return true;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
exports.GrantedRoleMapReaderInstance = GrantedRoleMapReaderInstance;
|
|
109
|
-
/**
|
|
110
|
-
* Converts the input array of roles to a GrantedRoleKeysMap.
|
|
111
|
-
*
|
|
112
|
-
* @param roles
|
|
113
|
-
* @returns
|
|
114
|
-
*/
|
|
115
|
-
function grantedRoleKeysMapFromArray(roles, value = true) {
|
|
116
|
-
return (0, util_1.arrayToObject)(roles, (x) => x, () => value);
|
|
117
|
-
}
|
|
118
|
-
exports.grantedRoleKeysMapFromArray = grantedRoleKeysMapFromArray;
|
|
119
|
-
//# sourceMappingURL=role.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../../../../packages/model/src/lib/service/permission/role.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./type"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./type.annotation"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./transform"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./transform.function"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./transform.result"), exports);
|
|
9
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/transform/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,4DAAkC;AAClC,sDAA4B;AAC5B,+DAAqC;AACrC,6DAAmC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.toTransformAndValidateFunctionResult = exports.toTransformAndValidateFunctionResultFactory = exports.transformAndValidateFunctionResultFactory = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
const transform_1 = require("./transform");
|
|
6
|
-
function transformAndValidateFunctionResultFactory(defaults) {
|
|
7
|
-
return toTransformAndValidateFunctionResultFactory((0, transform_1.transformAndValidateObjectFactory)(defaults));
|
|
8
|
-
}
|
|
9
|
-
exports.transformAndValidateFunctionResultFactory = transformAndValidateFunctionResultFactory;
|
|
10
|
-
function toTransformAndValidateFunctionResultFactory(transformAndValidateObjectFactory) {
|
|
11
|
-
return (classType, fn, handleValidationError) => {
|
|
12
|
-
const transformAndValidateObjectFn = transformAndValidateObjectFactory(classType, fn, handleValidationError);
|
|
13
|
-
return (input, context) => {
|
|
14
|
-
return toTransformAndValidateFunctionResult(transformAndValidateObjectFn(input, context));
|
|
15
|
-
};
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
exports.toTransformAndValidateFunctionResultFactory = toTransformAndValidateFunctionResultFactory;
|
|
19
|
-
function toTransformAndValidateFunctionResult(objectOutput) {
|
|
20
|
-
return (0, util_1.mapPromiseOrValue)(objectOutput, (x) => {
|
|
21
|
-
const { object, result } = x;
|
|
22
|
-
const fnResult = result;
|
|
23
|
-
fnResult.params = object;
|
|
24
|
-
return fnResult;
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
exports.toTransformAndValidateFunctionResult = toTransformAndValidateFunctionResult;
|
|
28
|
-
//# sourceMappingURL=transform.function.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transform.function.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/transform/transform.function.ts"],"names":[],"mappings":";;;AAAA,wCAA6E;AAC7E,2CAA0N;AAY1N,SAAgB,yCAAyC,CAAc,QAAsD;IAC3H,OAAO,2CAA2C,CAAC,IAAA,6CAAiC,EAAC,QAAQ,CAAC,CAAC,CAAC;AAClG,CAAC;AAFD,8FAEC;AAED,SAAgB,2CAA2C,CAAc,iCAAuE;IAC9I,OAAO,CAAiD,SAAuB,EAAE,EAA6B,EAAE,qBAAmE,EAAE,EAAE;QACrL,MAAM,4BAA4B,GAAG,iCAAiC,CAAU,SAAS,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAC;QAEtH,OAAO,CAAC,KAAQ,EAAE,OAAW,EAAE,EAAE;YAC/B,OAAO,oCAAoC,CAAC,4BAA4B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AARD,kGAQC;AAID,SAAgB,oCAAoC,CAAsB,YAAoE;IAC5I,OAAO,IAAA,wBAAiB,EAAC,YAAY,EAAE,CAAC,CAAyC,EAAE,EAAE;QACnF,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAkD,CAAC;QACpE,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;QACzB,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAPD,oFAOC"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformAndValidateObjectResult = exports.transformAndValidateObjectFactory = exports.transformAndValidateObject = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const class_transformer_1 = require("class-transformer");
|
|
6
|
-
const class_validator_1 = require("class-validator");
|
|
7
|
-
function transformAndValidateObject(config) {
|
|
8
|
-
const transformToResult = transformAndValidateObjectResult(config.classType, config.fn, config.optionsForContext);
|
|
9
|
-
const { handleValidationError } = config;
|
|
10
|
-
return (input, context) => transformToResult(input, context).then((x) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
-
const object = x.object;
|
|
12
|
-
let result;
|
|
13
|
-
if (x.success) {
|
|
14
|
-
result = x.result;
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
result = yield handleValidationError(x.validationErrors);
|
|
18
|
-
}
|
|
19
|
-
return {
|
|
20
|
-
object,
|
|
21
|
-
result
|
|
22
|
-
};
|
|
23
|
-
}));
|
|
24
|
-
}
|
|
25
|
-
exports.transformAndValidateObject = transformAndValidateObject;
|
|
26
|
-
/**
|
|
27
|
-
* Creates a new TransformAndValidateObjectFactory.
|
|
28
|
-
*
|
|
29
|
-
* @param defaults
|
|
30
|
-
* @returns
|
|
31
|
-
*/
|
|
32
|
-
function transformAndValidateObjectFactory(defaults) {
|
|
33
|
-
const { handleValidationError: defaultHandleValidationError, optionsForContext } = defaults;
|
|
34
|
-
return (classType, fn, handleValidationError) => {
|
|
35
|
-
const config = {
|
|
36
|
-
classType,
|
|
37
|
-
fn,
|
|
38
|
-
handleValidationError: handleValidationError !== null && handleValidationError !== void 0 ? handleValidationError : defaultHandleValidationError,
|
|
39
|
-
optionsForContext
|
|
40
|
-
};
|
|
41
|
-
return transformAndValidateObject(config);
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
exports.transformAndValidateObjectFactory = transformAndValidateObjectFactory;
|
|
45
|
-
/**
|
|
46
|
-
* Factory function that wraps the input class type and handler function to first transform the input object to a the given class, and then validate it.
|
|
47
|
-
*
|
|
48
|
-
* @param classType
|
|
49
|
-
* @param fn
|
|
50
|
-
* @returns
|
|
51
|
-
*/
|
|
52
|
-
function transformAndValidateObjectResult(classType, fn, inputOptionsForContext) {
|
|
53
|
-
const optionsForContext = inputOptionsForContext !== null && inputOptionsForContext !== void 0 ? inputOptionsForContext : (() => ({}));
|
|
54
|
-
return (input, context) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
const { transform: transformOptions, validate: validateOptions } = optionsForContext(context);
|
|
56
|
-
const object = (0, class_transformer_1.plainToInstance)(classType, input, Object.assign(Object.assign({}, transformOptions), {
|
|
57
|
-
// Note: Each variable on the target class must be marked with the @Expose() annotation.
|
|
58
|
-
excludeExtraneousValues: true }));
|
|
59
|
-
const validationErrors = yield (0, class_validator_1.validate)(object, validateOptions);
|
|
60
|
-
if (validationErrors.length) {
|
|
61
|
-
return { object, validationErrors, success: false };
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
const result = yield fn(object);
|
|
65
|
-
return { object, result, success: true };
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
exports.transformAndValidateObjectResult = transformAndValidateObjectResult;
|
|
70
|
-
//# sourceMappingURL=transform.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/transform/transform.ts"],"names":[],"mappings":";;;;AACA,yDAA2E;AAC3E,qDAA+E;AAqB/E,SAAgB,0BAA0B,CAA8D,MAA2C;IACjJ,MAAM,iBAAiB,GAAG,gCAAgC,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAClH,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAC;IAEzC,OAAO,CAAC,KAAQ,EAAE,OAAW,EAAE,EAAE,CAC/B,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAO,CAAC,EAAE,EAAE;QACjD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACxB,IAAI,MAAS,CAAC;QAEd,IAAI,CAAC,CAAC,OAAO,EAAE;YACb,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;SACnB;aAAM;YACL,MAAM,GAAG,MAAM,qBAAqB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;SAC1D;QAED,OAAO;YACL,MAAM;YACN,MAAM;SACP,CAAC;IACJ,CAAC,CAAA,CAAC,CAAC;AACP,CAAC;AApBD,gEAoBC;AAgBD;;;;;GAKG;AACH,SAAgB,iCAAiC,CAAc,QAAsD;IACnH,MAAM,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,GAAG,QAAQ,CAAC;IAE5F,OAAO,CAAiD,SAAuB,EAAE,EAA6B,EAAE,qBAAmE,EAAE,EAAE;QACrL,MAAM,MAAM,GAAwC;YAClD,SAAS;YACT,EAAE;YACF,qBAAqB,EAAE,qBAAqB,aAArB,qBAAqB,cAArB,qBAAqB,GAAK,4BAA4E;YAC7H,iBAAiB;SAClB,CAAC;QAEF,OAAO,0BAA0B,CAAa,MAAM,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAbD,8EAaC;AAyBD;;;;;;GAMG;AACH,SAAgB,gCAAgC,CAA8D,SAAuB,EAAE,EAA6B,EAAE,sBAAkF;IACtP,MAAM,iBAAiB,GAA8D,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5H,OAAO,CAAO,KAAQ,EAAE,OAAW,EAAE,EAAE;QACrC,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAE9F,MAAM,MAAM,GAAM,IAAA,mCAAe,EAAC,SAAS,EAAE,KAAK,kCAC7C,gBAAgB;YACnB,wFAAwF;YACxF,uBAAuB,EAAE,IAAI,IAC7B,CAAC;QAEH,MAAM,gBAAgB,GAAsB,MAAM,IAAA,0BAAQ,EAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAEpF,IAAI,gBAAgB,CAAC,MAAM,EAAE;YAC3B,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SACrD;aAAM;YACL,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;YAChC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAC1C;IACH,CAAC,CAAA,CAAC;AACJ,CAAC;AApBD,4EAoBC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformAndValidateResultFactory = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const transform_1 = require("./transform");
|
|
6
|
-
function transformAndValidateResultFactory(defaults) {
|
|
7
|
-
const factory = (0, transform_1.transformAndValidateObjectFactory)(defaults);
|
|
8
|
-
return (classType, fn, handleValidationError) => {
|
|
9
|
-
const transformAndValidateObjectFn = factory(classType, fn, handleValidationError);
|
|
10
|
-
return (input, context) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
-
const { result } = yield transformAndValidateObjectFn(input, context);
|
|
12
|
-
return result;
|
|
13
|
-
});
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
exports.transformAndValidateResultFactory = transformAndValidateResultFactory;
|
|
17
|
-
//# sourceMappingURL=transform.result.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transform.result.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/transform/transform.result.ts"],"names":[],"mappings":";;;;AACA,2CAAqJ;AASrJ,SAAgB,iCAAiC,CAAc,QAAsD;IACnH,MAAM,OAAO,GAAG,IAAA,6CAAiC,EAAC,QAAQ,CAAC,CAAC;IAE5D,OAAO,CAAiD,SAAuB,EAAE,EAA6B,EAAE,qBAAmE,EAAE,EAAE;QACrL,MAAM,4BAA4B,GAAG,OAAO,CAAU,SAAS,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAC;QAE5F,OAAO,CAAO,KAAQ,EAAE,OAAW,EAAE,EAAE;YACrC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,4BAA4B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC;QAChB,CAAC,CAAA,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,8EAWC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TransformStringValueToBoolean = exports.TransformCommaSeparatedNumberValueToArray = exports.TransformCommaSeparatedStringValueToArray = exports.TransformCommaSeparatedValueToArray = void 0;
|
|
4
|
-
const class_transformer_1 = require("class-transformer");
|
|
5
|
-
const type_1 = require("./type");
|
|
6
|
-
// MARK: Transform Annotations
|
|
7
|
-
function TransformCommaSeparatedValueToArray(mapFn) {
|
|
8
|
-
return (0, class_transformer_1.Transform)((0, type_1.transformCommaSeparatedValueToArray)(mapFn));
|
|
9
|
-
}
|
|
10
|
-
exports.TransformCommaSeparatedValueToArray = TransformCommaSeparatedValueToArray;
|
|
11
|
-
const TransformCommaSeparatedStringValueToArray = () => (0, class_transformer_1.Transform)(type_1.transformCommaSeparatedStringValueToArray);
|
|
12
|
-
exports.TransformCommaSeparatedStringValueToArray = TransformCommaSeparatedStringValueToArray;
|
|
13
|
-
const TransformCommaSeparatedNumberValueToArray = () => (0, class_transformer_1.Transform)(type_1.transformCommaSeparatedNumberValueToArray);
|
|
14
|
-
exports.TransformCommaSeparatedNumberValueToArray = TransformCommaSeparatedNumberValueToArray;
|
|
15
|
-
const TransformStringValueToBoolean = () => (0, class_transformer_1.Transform)((0, type_1.transformStringToBoolean)());
|
|
16
|
-
exports.TransformStringValueToBoolean = TransformStringValueToBoolean;
|
|
17
|
-
//# sourceMappingURL=type.annotation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"type.annotation.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/transform/type.annotation.ts"],"names":[],"mappings":";;;AACA,yDAA8C;AAC9C,iCAA6K;AAE7K,8BAA8B;AAC9B,SAAgB,mCAAmC,CAAI,KAA2B;IAChF,OAAO,IAAA,6BAAS,EAAC,IAAA,0CAAmC,EAAC,KAAK,CAAC,CAAC,CAAC;AAC/D,CAAC;AAFD,kFAEC;AAEM,MAAM,yCAAyC,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAS,EAAC,gDAAyC,CAAC,CAAC;AAAvG,QAAA,yCAAyC,6CAA8D;AAC7G,MAAM,yCAAyC,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAS,EAAC,gDAAyC,CAAC,CAAC;AAAvG,QAAA,yCAAyC,6CAA8D;AAE7G,MAAM,6BAA6B,GAAG,GAAG,EAAE,CAAC,IAAA,6BAAS,EAAC,IAAA,+BAAwB,GAAE,CAAC,CAAC;AAA5E,QAAA,6BAA6B,iCAA+C"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformCommaSeparatedStringValueToArray = exports.transformCommaSeparatedNumberValueToArray = exports.transformCommaSeparatedValueToArray = exports.transformStringToBoolean = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
// MARK: String
|
|
6
|
-
function transformStringToBoolean(defaultValue) {
|
|
7
|
-
return (params) => {
|
|
8
|
-
if (params.value) {
|
|
9
|
-
switch (params.value.toLowerCase()) {
|
|
10
|
-
case 't':
|
|
11
|
-
case 'true':
|
|
12
|
-
return true;
|
|
13
|
-
case 'f':
|
|
14
|
-
case 'false':
|
|
15
|
-
return false;
|
|
16
|
-
default:
|
|
17
|
-
return defaultValue;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return defaultValue;
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
exports.transformStringToBoolean = transformStringToBoolean;
|
|
26
|
-
// MARK: Comma Separated Values
|
|
27
|
-
function transformCommaSeparatedValueToArray(mapFn) {
|
|
28
|
-
return (params) => {
|
|
29
|
-
let result;
|
|
30
|
-
if (params.value) {
|
|
31
|
-
if (Array.isArray(params.value)) {
|
|
32
|
-
result = params.value;
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
result = (0, util_1.splitCommaSeparatedString)(params.value, mapFn);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return result;
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
exports.transformCommaSeparatedValueToArray = transformCommaSeparatedValueToArray;
|
|
42
|
-
exports.transformCommaSeparatedNumberValueToArray = transformCommaSeparatedValueToArray((x) => Number(x));
|
|
43
|
-
exports.transformCommaSeparatedStringValueToArray = transformCommaSeparatedValueToArray((x) => x);
|
|
44
|
-
//# sourceMappingURL=type.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/transform/type.ts"],"names":[],"mappings":";;;AAAA,wCAAoF;AAGpF,eAAe;AACf,SAAgB,wBAAwB,CAAC,YAAkC;IACzE,OAAO,CAAC,MAAyB,EAAE,EAAE;QACnC,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,QAAQ,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE;gBAClC,KAAK,GAAG,CAAC;gBACT,KAAK,MAAM;oBACT,OAAO,IAAI,CAAC;gBACd,KAAK,GAAG,CAAC;gBACT,KAAK,OAAO;oBACV,OAAO,KAAK,CAAC;gBACf;oBACE,OAAO,YAAY,CAAC;aACvB;SACF;aAAM;YACL,OAAO,YAAY,CAAC;SACrB;IACH,CAAC,CAAC;AACJ,CAAC;AAjBD,4DAiBC;AAED,+BAA+B;AAC/B,SAAgB,mCAAmC,CAAI,KAA2B;IAChF,OAAO,CAAC,MAAyB,EAAE,EAAE;QACnC,IAAI,MAAkB,CAAC;QAEvB,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gBAC/B,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;aACvB;iBAAM;gBACL,MAAM,GAAG,IAAA,gCAAyB,EAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aACzD;SACF;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAdD,kFAcC;AAEY,QAAA,yCAAyC,GAAG,mCAAmC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAClG,QAAA,yCAAyC,GAAG,mCAAmC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IsISO8601DayString = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
const class_validator_1 = require("class-validator");
|
|
6
|
-
/**
|
|
7
|
-
* isISO8601DayString validator
|
|
8
|
-
*/
|
|
9
|
-
function IsISO8601DayString(validationOptions) {
|
|
10
|
-
return function (object, propertyName) {
|
|
11
|
-
(0, class_validator_1.registerDecorator)({
|
|
12
|
-
name: 'isISO8601DayString',
|
|
13
|
-
target: object.constructor,
|
|
14
|
-
propertyName: propertyName,
|
|
15
|
-
options: validationOptions,
|
|
16
|
-
validator: {
|
|
17
|
-
validate: util_1.isISO8601DayString,
|
|
18
|
-
defaultMessage(args) {
|
|
19
|
-
return `"${args.value}" is not a ISO8601DayString.`;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
exports.IsISO8601DayString = IsISO8601DayString;
|
|
26
|
-
//# sourceMappingURL=date.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/validator/date.ts"],"names":[],"mappings":";;;AAAA,wCAA0E;AAC1E,qDAA4F;AAE5F;;GAEG;AACH,SAAgB,kBAAkB,CAAC,iBAAqC;IACtE,OAAO,UAAU,MAA6B,EAAE,YAAoB;QAClE,IAAA,mCAAiB,EAAC;YAChB,IAAI,EAAE,oBAAoB;YAC1B,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACT,QAAQ,EAAE,yBAAkB;gBAC5B,cAAc,CAAC,IAAyB;oBACtC,OAAO,IAAI,IAAI,CAAC,KAAK,8BAA8B,CAAC;gBACtD,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,gDAeC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./date"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./phone"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./url"), exports);
|
|
7
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/validator/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,kDAAwB;AACxB,gDAAsB"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IsE164PhoneNumberWithExtension = exports.IsE164PhoneNumberWithOptionalExtension = exports.IsE164PhoneNumber = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
const class_validator_1 = require("class-validator");
|
|
6
|
-
/**
|
|
7
|
-
* isE164PhoneNumber validator that does not allowed extensions.
|
|
8
|
-
*/
|
|
9
|
-
function IsE164PhoneNumber(validationOptions) {
|
|
10
|
-
return function (object, propertyName) {
|
|
11
|
-
(0, class_validator_1.registerDecorator)({
|
|
12
|
-
name: 'isE164PhoneNumber',
|
|
13
|
-
target: object.constructor,
|
|
14
|
-
propertyName: propertyName,
|
|
15
|
-
options: validationOptions,
|
|
16
|
-
validator: {
|
|
17
|
-
validate: (x) => (0, util_1.isE164PhoneNumber)(x, false),
|
|
18
|
-
defaultMessage(args) {
|
|
19
|
-
return `"${args.value}" is not a E164PhoneNumber with no extension.`;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
exports.IsE164PhoneNumber = IsE164PhoneNumber;
|
|
26
|
-
/**
|
|
27
|
-
* isE164PhoneNumber validator that allows extensions.
|
|
28
|
-
*
|
|
29
|
-
* @param validationOptions
|
|
30
|
-
* @returns
|
|
31
|
-
*/
|
|
32
|
-
function IsE164PhoneNumberWithOptionalExtension(validationOptions) {
|
|
33
|
-
return function (object, propertyName) {
|
|
34
|
-
(0, class_validator_1.registerDecorator)({
|
|
35
|
-
name: 'isE164PhoneNumber',
|
|
36
|
-
target: object.constructor,
|
|
37
|
-
propertyName: propertyName,
|
|
38
|
-
options: validationOptions,
|
|
39
|
-
validator: {
|
|
40
|
-
validate: (x) => (0, util_1.isE164PhoneNumber)(x, true),
|
|
41
|
-
defaultMessage(args) {
|
|
42
|
-
return `"${args.value}" is not an E164PhoneNumber or has an invalid extension.`;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
exports.IsE164PhoneNumberWithOptionalExtension = IsE164PhoneNumberWithOptionalExtension;
|
|
49
|
-
/**
|
|
50
|
-
* isE164PhoneNumberWithExtension validator
|
|
51
|
-
*
|
|
52
|
-
* @param validationOptions
|
|
53
|
-
* @returns
|
|
54
|
-
*/
|
|
55
|
-
function IsE164PhoneNumberWithExtension(validationOptions) {
|
|
56
|
-
return function (object, propertyName) {
|
|
57
|
-
(0, class_validator_1.registerDecorator)({
|
|
58
|
-
name: 'isE164PhoneNumberWithExtension',
|
|
59
|
-
target: object.constructor,
|
|
60
|
-
propertyName: propertyName,
|
|
61
|
-
options: validationOptions,
|
|
62
|
-
validator: {
|
|
63
|
-
validate: util_1.isE164PhoneNumberWithExtension,
|
|
64
|
-
defaultMessage(args) {
|
|
65
|
-
return `"${args.value}" is not a E164PhoneNumberWithExtension.`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
exports.IsE164PhoneNumberWithExtension = IsE164PhoneNumberWithExtension;
|
|
72
|
-
//# sourceMappingURL=phone.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"phone.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/validator/phone.ts"],"names":[],"mappings":";;;AAAA,wCAAyG;AACzG,qDAA4F;AAE5F;;GAEG;AACH,SAAgB,iBAAiB,CAAC,iBAAqC;IACrE,OAAO,UAAU,MAA6B,EAAE,YAAoB;QAClE,IAAA,mCAAiB,EAAC;YAChB,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACT,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,wBAAiB,EAAC,CAAC,EAAE,KAAK,CAAC;gBAC5C,cAAc,CAAC,IAAyB;oBACtC,OAAO,IAAI,IAAI,CAAC,KAAK,+CAA+C,CAAC;gBACvE,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,8CAeC;AAED;;;;;GAKG;AACH,SAAgB,sCAAsC,CAAC,iBAAqC;IAC1F,OAAO,UAAU,MAA6B,EAAE,YAAoB;QAClE,IAAA,mCAAiB,EAAC;YAChB,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACT,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,wBAAiB,EAAC,CAAC,EAAE,IAAI,CAAC;gBAC3C,cAAc,CAAC,IAAyB;oBACtC,OAAO,IAAI,IAAI,CAAC,KAAK,0DAA0D,CAAC;gBAClF,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,wFAeC;AAED;;;;;GAKG;AACH,SAAgB,8BAA8B,CAAC,iBAAqC;IAClF,OAAO,UAAU,MAA6B,EAAE,YAAoB;QAClE,IAAA,mCAAiB,EAAC;YAChB,IAAI,EAAE,gCAAgC;YACtC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACT,QAAQ,EAAE,qCAA8B;gBACxC,cAAc,CAAC,IAAyB;oBACtC,OAAO,IAAI,IAAI,CAAC,KAAK,0CAA0C,CAAC;gBAClE,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,wEAeC"}
|
package/src/lib/validator/url.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IsWebsiteUrlWithPrefix = exports.IsWebsiteUrl = void 0;
|
|
4
|
-
const util_1 = require("@dereekb/util");
|
|
5
|
-
const class_validator_1 = require("class-validator");
|
|
6
|
-
/**
|
|
7
|
-
* isWebsiteUrl validator
|
|
8
|
-
*/
|
|
9
|
-
function IsWebsiteUrl(validationOptions) {
|
|
10
|
-
return function (object, propertyName) {
|
|
11
|
-
(0, class_validator_1.registerDecorator)({
|
|
12
|
-
name: 'isWebsiteUrl',
|
|
13
|
-
target: object.constructor,
|
|
14
|
-
propertyName: propertyName,
|
|
15
|
-
options: validationOptions,
|
|
16
|
-
validator: {
|
|
17
|
-
validate: util_1.isWebsiteUrl,
|
|
18
|
-
defaultMessage(args) {
|
|
19
|
-
return `"${args.value}" is not a valid website url`;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
exports.IsWebsiteUrl = IsWebsiteUrl;
|
|
26
|
-
/**
|
|
27
|
-
* isWebsiteUrlWithPrefix validator
|
|
28
|
-
*/
|
|
29
|
-
function IsWebsiteUrlWithPrefix(validationOptions) {
|
|
30
|
-
return function (object, propertyName) {
|
|
31
|
-
(0, class_validator_1.registerDecorator)({
|
|
32
|
-
name: 'isWebsiteUrlWithPrefix',
|
|
33
|
-
target: object.constructor,
|
|
34
|
-
propertyName: propertyName,
|
|
35
|
-
options: validationOptions,
|
|
36
|
-
validator: {
|
|
37
|
-
validate: util_1.isWebsiteUrlWithPrefix,
|
|
38
|
-
defaultMessage(args) {
|
|
39
|
-
return `"${args.value}" is not a valid website url with a http/https prefix.`;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
exports.IsWebsiteUrlWithPrefix = IsWebsiteUrlWithPrefix;
|
|
46
|
-
//# sourceMappingURL=url.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"url.js","sourceRoot":"","sources":["../../../../../../packages/model/src/lib/validator/url.ts"],"names":[],"mappings":";;;AAAA,wCAA4F;AAC5F,qDAA4F;AAE5F;;GAEG;AACH,SAAgB,YAAY,CAAC,iBAAqC;IAChE,OAAO,UAAU,MAA6B,EAAE,YAAoB;QAClE,IAAA,mCAAiB,EAAC;YAChB,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACT,QAAQ,EAAE,mBAAY;gBACtB,cAAc,CAAC,IAAyB;oBACtC,OAAO,IAAI,IAAI,CAAC,KAAK,8BAA8B,CAAC;gBACtD,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,oCAeC;AAED;;GAEG;AACH,SAAgB,sBAAsB,CAAC,iBAAqC;IAC1E,OAAO,UAAU,MAA6B,EAAE,YAAoB;QAClE,IAAA,mCAAiB,EAAC;YAChB,IAAI,EAAE,wBAAwB;YAC9B,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACT,QAAQ,EAAE,6BAAsB;gBAChC,cAAc,CAAC,IAAyB;oBACtC,OAAO,IAAI,IAAI,CAAC,KAAK,wDAAwD,CAAC;gBAChF,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,wDAeC"}
|