@warlock.js/core 4.0.93 → 4.0.95
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-plugin.d.ts","sourceRoot":"","sources":["../../../src/validation/plugins/database-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"database-plugin.d.ts","sourceRoot":"","sources":["../../../src/validation/plugins/database-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAuBnD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,UA+H5B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {ScalarValidator,StringValidator,NumberValidator}from'@warlock.js/seal';import {existsRule}from'../database/exists.js';import {existsExceptCurrentIdRule}from'../database/exists-except-current-id.js';import {existsExceptCurrentUserRule}from'../database/exists-except-current-user.js';import {uniqueRule}from'../database/unique.js';import {uniqueExceptCurrentIdRule}from'../database/unique-except-current-id.js';import {uniqueExceptCurrentUserRule}from'../database/unique-except-current-user.js';/**
|
|
1
|
+
import {getModelFromRegistry}from'@warlock.js/cascade';import {ScalarValidator,StringValidator,NumberValidator}from'@warlock.js/seal';import {existsRule}from'../database/exists.js';import {existsExceptCurrentIdRule}from'../database/exists-except-current-id.js';import {existsExceptCurrentUserRule}from'../database/exists-except-current-user.js';import {uniqueRule}from'../database/unique.js';import {uniqueExceptCurrentIdRule}from'../database/unique-except-current-id.js';import {uniqueExceptCurrentUserRule}from'../database/unique-except-current-user.js';/**
|
|
2
2
|
* Database Validation Plugin
|
|
3
3
|
*
|
|
4
4
|
* Adds database validation methods to Seal validators:
|
|
@@ -6,6 +6,9 @@ import {ScalarValidator,StringValidator,NumberValidator}from'@warlock.js/seal';i
|
|
|
6
6
|
* - exists() - Verify record exists
|
|
7
7
|
* - And variants (exceptCurrentUser, exceptCurrentId)
|
|
8
8
|
*/
|
|
9
|
+
function resolveModel(model) {
|
|
10
|
+
return typeof model === "string" ? getModelFromRegistry(model) : model;
|
|
11
|
+
}
|
|
9
12
|
/**
|
|
10
13
|
* Database validation plugin for Seal
|
|
11
14
|
*/
|
|
@@ -22,7 +25,7 @@ const databasePlugin = {
|
|
|
22
25
|
const rule = this.addRule(uniqueRule, errorMessage);
|
|
23
26
|
rule.context.options = {
|
|
24
27
|
...options,
|
|
25
|
-
Model: model,
|
|
28
|
+
Model: resolveModel(model),
|
|
26
29
|
};
|
|
27
30
|
return this;
|
|
28
31
|
},
|
|
@@ -32,7 +35,7 @@ const databasePlugin = {
|
|
|
32
35
|
const rule = this.addRule(uniqueExceptCurrentUserRule, errorMessage);
|
|
33
36
|
rule.context.options = {
|
|
34
37
|
...options,
|
|
35
|
-
Model: model,
|
|
38
|
+
Model: resolveModel(model),
|
|
36
39
|
};
|
|
37
40
|
return this;
|
|
38
41
|
},
|
|
@@ -42,7 +45,7 @@ const databasePlugin = {
|
|
|
42
45
|
const rule = this.addRule(uniqueExceptCurrentIdRule, errorMessage);
|
|
43
46
|
rule.context.options = {
|
|
44
47
|
...options,
|
|
45
|
-
Model: model,
|
|
48
|
+
Model: resolveModel(model),
|
|
46
49
|
};
|
|
47
50
|
return this;
|
|
48
51
|
},
|
|
@@ -52,7 +55,7 @@ const databasePlugin = {
|
|
|
52
55
|
const rule = this.addRule(existsRule, errorMessage);
|
|
53
56
|
rule.context.options = {
|
|
54
57
|
...options,
|
|
55
|
-
Model: model,
|
|
58
|
+
Model: resolveModel(model),
|
|
56
59
|
};
|
|
57
60
|
return this;
|
|
58
61
|
},
|
|
@@ -62,7 +65,7 @@ const databasePlugin = {
|
|
|
62
65
|
const rule = this.addRule(existsExceptCurrentUserRule, errorMessage);
|
|
63
66
|
rule.context.options = {
|
|
64
67
|
...options,
|
|
65
|
-
Model: model,
|
|
68
|
+
Model: resolveModel(model),
|
|
66
69
|
};
|
|
67
70
|
return this;
|
|
68
71
|
},
|
|
@@ -72,7 +75,7 @@ const databasePlugin = {
|
|
|
72
75
|
const rule = this.addRule(existsExceptCurrentIdRule, errorMessage);
|
|
73
76
|
rule.context.options = {
|
|
74
77
|
...options,
|
|
75
|
-
Model: model,
|
|
78
|
+
Model: resolveModel(model),
|
|
76
79
|
};
|
|
77
80
|
return this;
|
|
78
81
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-plugin.js","sources":["../../../src/validation/plugins/database-plugin.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"database-plugin.js","sources":["../../../src/validation/plugins/database-plugin.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -16,27 +16,27 @@ declare module "@warlock.js/seal" {
|
|
|
16
16
|
}
|
|
17
17
|
interface ScalarValidator {
|
|
18
18
|
/** Value must be unique in database */
|
|
19
|
-
unique(model: ChildModel<Model
|
|
19
|
+
unique(model: ChildModel<Model> | string, optionsList?: Partial<UniqueRuleOptions> & {
|
|
20
20
|
errorMessage?: string;
|
|
21
21
|
}): this;
|
|
22
22
|
/** Value must be unique in database except current user */
|
|
23
|
-
uniqueExceptCurrentUser(model: ChildModel<Model
|
|
23
|
+
uniqueExceptCurrentUser(model: ChildModel<Model> | string, optionsList?: Partial<UniqueExceptCurrentUserRuleOptions> & {
|
|
24
24
|
errorMessage?: string;
|
|
25
25
|
}): this;
|
|
26
26
|
/** Value must be unique in database except current id */
|
|
27
|
-
uniqueExceptCurrentId(model: ChildModel<Model
|
|
27
|
+
uniqueExceptCurrentId(model: ChildModel<Model> | string, optionsList?: Partial<UniqueExceptCurrentIdRuleOptions> & {
|
|
28
28
|
errorMessage?: string;
|
|
29
29
|
}): this;
|
|
30
30
|
/** Value must exist in database */
|
|
31
|
-
exists(model: ChildModel<Model
|
|
31
|
+
exists(model: ChildModel<Model> | string, optionsList?: Partial<ExistsRuleOptions> & {
|
|
32
32
|
errorMessage?: string;
|
|
33
33
|
}): this;
|
|
34
34
|
/** Value must exist in database except current user */
|
|
35
|
-
existsExceptCurrentUser(model: ChildModel<Model
|
|
35
|
+
existsExceptCurrentUser(model: ChildModel<Model> | string, optionsList?: Partial<ExistsExceptCurrentUserRuleOptions> & {
|
|
36
36
|
errorMessage?: string;
|
|
37
37
|
}): this;
|
|
38
38
|
/** Value must exists in database except current id */
|
|
39
|
-
existsExceptCurrentId(model: ChildModel<Model
|
|
39
|
+
existsExceptCurrentId(model: ChildModel<Model> | string, optionsList?: Partial<ExistsExceptCurrentIdRuleOptions> & {
|
|
40
40
|
errorMessage?: string;
|
|
41
41
|
}): this;
|
|
42
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validation/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,gCAAgC,EAChC,kCAAkC,EAClC,iBAAiB,EACjB,gCAAgC,EAChC,kCAAkC,EAClC,iBAAiB,EAClB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,QAAQ,kBAAkB,CAAC;IAEhC,UAAiB,UAAU;QACzB,IAAI,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,aAAa,CAAC;QAC/C,SAAS,EAAE,CACT,cAAc,CAAC,EAAE,aAAa,EAC9B,YAAY,CAAC,EAAE,MAAM,KAClB,cAAc,GAAG;YACpB,SAAS,EAAE,aAAa,CAAC;SAC1B,CAAC;KACH;IAED,UAAU,eAAe;QACvB,uCAAuC;QACvC,MAAM,CACJ,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validation/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@warlock.js/core",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.95",
|
|
4
4
|
"description": "A robust nodejs framework for building blazing fast applications",
|
|
5
5
|
"main": "./esm/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -27,12 +27,12 @@
|
|
|
27
27
|
"@mongez/slug": "^1.0.7",
|
|
28
28
|
"@mongez/supportive-is": "^2.0.4",
|
|
29
29
|
"@mongez/time-wizard": "^1.0.6",
|
|
30
|
-
"@warlock.js/auth": "4.0.
|
|
31
|
-
"@warlock.js/cache": "4.0.
|
|
32
|
-
"@warlock.js/cascade": "4.0.
|
|
33
|
-
"@warlock.js/context": "4.0.
|
|
34
|
-
"@warlock.js/logger": "4.0.
|
|
35
|
-
"@warlock.js/seal": "4.0.
|
|
30
|
+
"@warlock.js/auth": "4.0.95",
|
|
31
|
+
"@warlock.js/cache": "4.0.95",
|
|
32
|
+
"@warlock.js/cascade": "4.0.95",
|
|
33
|
+
"@warlock.js/context": "4.0.95",
|
|
34
|
+
"@warlock.js/logger": "4.0.95",
|
|
35
|
+
"@warlock.js/seal": "4.0.95",
|
|
36
36
|
"axios": "^1.7.9",
|
|
37
37
|
"chokidar": "^5.0.0",
|
|
38
38
|
"dayjs": "^1.11.19",
|