@contember/engine-content-api 1.2.0-alpha.3 → 1.2.0-alpha.4
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/dist/src/acl/VariableInjector.d.ts +0 -1
- package/dist/src/acl/VariableInjector.d.ts.map +1 -1
- package/dist/src/acl/VariableInjector.js +4 -16
- package/dist/src/acl/VariableInjector.js.map +1 -1
- package/dist/src/acl/VariableUtils.d.ts +2 -13
- package/dist/src/acl/VariableUtils.d.ts.map +1 -1
- package/dist/src/acl/VariableUtils.js +6 -23
- package/dist/src/acl/VariableUtils.js.map +1 -1
- package/dist/src/input-validation/EntityRulesResolver.js +3 -3
- package/dist/src/input-validation/EntityRulesResolver.js.map +1 -1
- package/dist/src/input-validation/ValidationContext.d.ts +2 -2
- package/dist/src/input-validation/ValidationContext.d.ts.map +1 -1
- package/dist/src/input-validation/ValidationContext.js.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.d.ts +2 -0
- package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.js +38 -0
- package/dist/tests/cases/integration/graphQlDb/insert/insertSequence.test.js.map +1 -0
- package/dist/tests/cases/integration/graphQlRequests/delete/aclDelete.test.js +1 -6
- package/dist/tests/cases/integration/graphQlRequests/delete/aclDelete.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/insert/acl/setField.test.js +2 -12
- package/dist/tests/cases/integration/graphQlRequests/insert/acl/setField.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/insert/aclInsert.test.js +1 -6
- package/dist/tests/cases/integration/graphQlRequests/insert/aclInsert.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.js +4 -24
- package/dist/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.js +1 -6
- package/dist/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js +4 -24
- package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js.map +1 -1
- package/dist/tests/cases/unit/aclVariablesFactory.test.js +4 -32
- package/dist/tests/cases/unit/aclVariablesFactory.test.js.map +1 -1
- package/dist/tests/cases/unit/orderbyHelper.test.js +1 -0
- package/dist/tests/cases/unit/orderbyHelper.test.js.map +1 -1
- package/dist/tests/cases/unit/predicatesInjector.test.js +1 -6
- package/dist/tests/cases/unit/predicatesInjector.test.js.map +1 -1
- package/dist/tests/cases/unit/variableInjector.test.js +2 -13
- package/dist/tests/cases/unit/variableInjector.test.js.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/acl/VariableInjector.ts +2 -17
- package/src/acl/VariableUtils.ts +7 -28
- package/src/input-validation/EntityRulesResolver.ts +3 -3
- package/src/input-validation/ValidationContext.ts +2 -2
- package/tests/cases/integration/graphQlDb/insert/insertSequence.test.ts +34 -0
- package/tests/cases/integration/graphQlRequests/delete/aclDelete.test.ts +1 -6
- package/tests/cases/integration/graphQlRequests/insert/acl/setField.test.ts +2 -12
- package/tests/cases/integration/graphQlRequests/insert/aclInsert.test.ts +1 -6
- package/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.ts +4 -24
- package/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.ts +1 -6
- package/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.ts +5 -25
- package/tests/cases/unit/aclVariablesFactory.test.ts +5 -34
- package/tests/cases/unit/orderbyHelper.test.ts +1 -0
- package/tests/cases/unit/predicatesInjector.test.ts +1 -6
- package/tests/cases/unit/variableInjector.test.ts +2 -13
|
@@ -4,6 +4,5 @@ export declare class VariableInjector {
|
|
|
4
4
|
private readonly variables;
|
|
5
5
|
constructor(schema: Model.Schema, variables: Acl.VariablesMap);
|
|
6
6
|
inject(entity: Model.Entity, where: Acl.PredicateDefinition): Input.Where;
|
|
7
|
-
private createCondition;
|
|
8
7
|
}
|
|
9
8
|
//# sourceMappingURL=VariableInjector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableInjector.d.ts","sourceRoot":"","sources":["../../../src/acl/VariableInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGrD,qBAAa,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAgB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAhD,MAAM,EAAE,KAAK,CAAC,MAAM,EAAmB,SAAS,EAAE,GAAG,CAAC,YAAY;IAExF,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,mBAAmB,GAAG,KAAK,CAAC,KAAK;
|
|
1
|
+
{"version":3,"file":"VariableInjector.d.ts","sourceRoot":"","sources":["../../../src/acl/VariableInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGrD,qBAAa,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAgB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAhD,MAAM,EAAE,KAAK,CAAC,MAAM,EAAmB,SAAS,EAAE,GAAG,CAAC,YAAY;IAExF,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,mBAAmB,GAAG,KAAK,CAAC,KAAK;CAkBhF"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.VariableInjector = void 0;
|
|
4
|
-
const schema_1 = require("@contember/schema");
|
|
5
4
|
const schema_utils_1 = require("@contember/schema-utils");
|
|
6
5
|
class VariableInjector {
|
|
7
6
|
constructor(schema, variables) {
|
|
@@ -12,32 +11,21 @@ class VariableInjector {
|
|
|
12
11
|
const predicateDefinitionProcessor = new schema_utils_1.PredicateDefinitionProcessor(this.schema);
|
|
13
12
|
return predicateDefinitionProcessor.process(entity, where, {
|
|
14
13
|
handleColumn: ({ value }) => {
|
|
14
|
+
var _a;
|
|
15
15
|
if (typeof value === 'string') {
|
|
16
|
-
return
|
|
16
|
+
return (_a = this.variables[value]) !== null && _a !== void 0 ? _a : { never: true };
|
|
17
17
|
}
|
|
18
18
|
return value;
|
|
19
19
|
},
|
|
20
20
|
handleRelation: ({ value, targetEntity }) => {
|
|
21
|
+
var _a;
|
|
21
22
|
if (typeof value === 'string') {
|
|
22
|
-
return { [targetEntity.primary]:
|
|
23
|
+
return { [targetEntity.primary]: (_a = this.variables[value]) !== null && _a !== void 0 ? _a : { never: true } };
|
|
23
24
|
}
|
|
24
25
|
return value;
|
|
25
26
|
},
|
|
26
27
|
});
|
|
27
28
|
}
|
|
28
|
-
createCondition(variable) {
|
|
29
|
-
if (variable === undefined || variable.value.length === 0) {
|
|
30
|
-
return { never: true };
|
|
31
|
-
}
|
|
32
|
-
const { value, definition } = variable;
|
|
33
|
-
if (definition.type === schema_1.Acl.VariableType.condition) {
|
|
34
|
-
if (value.length === 1) {
|
|
35
|
-
return value[0];
|
|
36
|
-
}
|
|
37
|
-
return { or: value };
|
|
38
|
-
}
|
|
39
|
-
return { in: value };
|
|
40
|
-
}
|
|
41
29
|
}
|
|
42
30
|
exports.VariableInjector = VariableInjector;
|
|
43
31
|
//# sourceMappingURL=VariableInjector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableInjector.js","sourceRoot":"","sources":["../../../src/acl/VariableInjector.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"VariableInjector.js","sourceRoot":"","sources":["../../../src/acl/VariableInjector.ts"],"names":[],"mappings":";;;AACA,0DAAsE;AAEtE,MAAa,gBAAgB;IAC5B,YAA6B,MAAoB,EAAmB,SAA2B;QAAlE,WAAM,GAAN,MAAM,CAAc;QAAmB,cAAS,GAAT,SAAS,CAAkB;IAAG,CAAC;IAE5F,MAAM,CAAC,MAAoB,EAAE,KAA8B;QACjE,MAAM,4BAA4B,GAAG,IAAI,2CAA4B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAElF,OAAO,4BAA4B,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE;YAC1D,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;gBAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC9B,OAAO,MAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,mCAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;iBAC/C;gBACD,OAAO,KAAwB,CAAA;YAChC,CAAC;YACD,cAAc,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE;;gBAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC9B,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,MAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,mCAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAA;iBAC3E;gBACD,OAAO,KAAK,CAAA;YACb,CAAC;SACD,CAAC,CAAA;IACH,CAAC;CACD;AArBD,4CAqBC"}
|
|
@@ -1,16 +1,5 @@
|
|
|
1
1
|
import { Acl } from '@contember/schema';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
variables: readonly {
|
|
5
|
-
name: string;
|
|
6
|
-
values: readonly string[];
|
|
7
|
-
}[];
|
|
8
|
-
}[];
|
|
9
|
-
export declare const createAclVariables: (aclSchema: Acl.Schema, identity: {
|
|
10
|
-
identityId: string;
|
|
11
|
-
personId: string | null;
|
|
12
|
-
memberships: Memberships;
|
|
13
|
-
}) => Acl.VariablesMap;
|
|
2
|
+
import { ParsedMembership } from '@contember/schema-utils';
|
|
3
|
+
export declare const createAclVariables: (aclSchema: Acl.Schema, memberships: readonly ParsedMembership[]) => Acl.VariablesMap;
|
|
14
4
|
export declare const prefixVariable: (role: string, variableName: string) => string;
|
|
15
|
-
export {};
|
|
16
5
|
//# sourceMappingURL=VariableUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableUtils.d.ts","sourceRoot":"","sources":["../../../src/acl/VariableUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"VariableUtils.d.ts","sourceRoot":"","sources":["../../../src/acl/VariableUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAS,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAoB,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAG5E,eAAO,MAAM,kBAAkB,cACnB,IAAI,MAAM,eACR,SAAS,gBAAgB,EAAE,KACtC,IAAI,YAeN,CAAA;AAED,eAAO,MAAM,cAAc,SAAU,MAAM,gBAAgB,MAAM,WAA+B,CAAA"}
|
|
@@ -1,32 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.prefixVariable = exports.createAclVariables = void 0;
|
|
4
|
-
const schema_1 = require("@contember/schema");
|
|
5
4
|
const schema_utils_1 = require("@contember/schema-utils");
|
|
6
|
-
const createAclVariables = (aclSchema,
|
|
7
|
-
const variablesEntries =
|
|
5
|
+
const createAclVariables = (aclSchema, memberships) => {
|
|
6
|
+
const variablesEntries = memberships.flatMap(membership => {
|
|
8
7
|
const roleVariables = (0, schema_utils_1.getRoleVariables)(membership.role, aclSchema);
|
|
9
|
-
const membershipVariablesMap = Object.fromEntries(membership.variables.map(it => [it.name, it.
|
|
10
|
-
return Object.
|
|
8
|
+
const membershipVariablesMap = Object.fromEntries(membership.variables.map(it => [it.name, it.condition]));
|
|
9
|
+
return Object.keys(roleVariables).map((name) => {
|
|
10
|
+
var _a;
|
|
11
11
|
const prefixed = (0, exports.prefixVariable)(membership.role, name);
|
|
12
|
-
|
|
13
|
-
var _a, _b;
|
|
14
|
-
switch (def.type) {
|
|
15
|
-
case schema_1.Acl.VariableType.entity:
|
|
16
|
-
return (_a = membershipVariablesMap[name]) !== null && _a !== void 0 ? _a : [];
|
|
17
|
-
case schema_1.Acl.VariableType.predefined:
|
|
18
|
-
switch (def.value) {
|
|
19
|
-
case 'identityID':
|
|
20
|
-
return [identity.identityId];
|
|
21
|
-
case 'personID':
|
|
22
|
-
return identity.personId ? [identity.personId] : [];
|
|
23
|
-
}
|
|
24
|
-
throw new Error(`Unknown predefined variable ${def.value}`);
|
|
25
|
-
case schema_1.Acl.VariableType.condition:
|
|
26
|
-
return ((_b = membershipVariablesMap[name]) !== null && _b !== void 0 ? _b : []).map(it => JSON.parse(it));
|
|
27
|
-
}
|
|
28
|
-
})();
|
|
29
|
-
return [prefixed, { value: value, definition: def }];
|
|
12
|
+
return [prefixed, (_a = membershipVariablesMap[name]) !== null && _a !== void 0 ? _a : { never: true }];
|
|
30
13
|
});
|
|
31
14
|
});
|
|
32
15
|
return Object.fromEntries(variablesEntries);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariableUtils.js","sourceRoot":"","sources":["../../../src/acl/VariableUtils.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"VariableUtils.js","sourceRoot":"","sources":["../../../src/acl/VariableUtils.ts"],"names":[],"mappings":";;;AACA,0DAA4E;AAGrE,MAAM,kBAAkB,GAAG,CACjC,SAAqB,EACrB,WAAwC,EACrB,EAAE;IAErB,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAC3C,UAAU,CAAC,EAAE;QACZ,MAAM,aAAa,GAAG,IAAA,+BAAgB,EAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QAClE,MAAM,sBAAsB,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAE1G,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAA6B,EAAE;;YACzE,MAAM,QAAQ,GAAG,IAAA,sBAAc,EAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACtD,OAAO,CAAC,QAAQ,EAAE,MAAA,sBAAsB,CAAC,IAAI,CAAC,mCAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACnE,CAAC,CAAC,CAAA;IACH,CAAC,CACD,CAAA;IAED,OAAO,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAA;AAC5C,CAAC,CAAA;AAlBY,QAAA,kBAAkB,sBAkB9B;AAEM,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,YAAoB,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,YAAY,EAAE,CAAA;AAAnF,QAAA,cAAc,kBAAqE"}
|
|
@@ -37,7 +37,7 @@ class EntityRulesResolver {
|
|
|
37
37
|
}
|
|
38
38
|
getEntityRules(entityName) {
|
|
39
39
|
const definedRules = this.validationSchema[entityName] || {};
|
|
40
|
-
const fieldsNotNullFlag = (0, schema_utils_1.acceptEveryFieldVisitor)(this.model, entityName, new
|
|
40
|
+
const fieldsNotNullFlag = (0, schema_utils_1.acceptEveryFieldVisitor)(this.model, entityName, new RequiredFieldsVisitor());
|
|
41
41
|
const notNullFields = Object.keys((0, utils_1.filterObject)(fieldsNotNullFlag, (field, val) => val));
|
|
42
42
|
return notNullFields.reduce((entityRules, field) => ({
|
|
43
43
|
...entityRules,
|
|
@@ -49,9 +49,9 @@ class EntityRulesResolver {
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
exports.EntityRulesResolver = EntityRulesResolver;
|
|
52
|
-
class
|
|
52
|
+
class RequiredFieldsVisitor {
|
|
53
53
|
visitColumn(entity, column) {
|
|
54
|
-
return !column.nullable;
|
|
54
|
+
return !column.nullable && typeof column.default === 'undefined' && !column.sequence;
|
|
55
55
|
}
|
|
56
56
|
visitManyHasManyInverse() {
|
|
57
57
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityRulesResolver.js","sourceRoot":"","sources":["../../../src/input-validation/EntityRulesResolver.ts"],"names":[],"mappings":";;;AAAA,oCAAkD;AAElD,0DAAqF;AACrF,oEAA8D;AAC9D,iDAAoD;AACpD,6CAAgD;AAEhD,MAAa,mBAAmB;IAC/B,YAA6B,gBAAmC,EAAmB,KAAmB;QAAzE,qBAAgB,GAAhB,gBAAgB,CAAmB;QAAmB,UAAK,GAAL,KAAK,CAAc;IAAG,CAAC;IAEnG,cAAc,CAAC,UAAkB;QACvC,OAAO,IAAA,iBAAS,EAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAClE,IAAA,iCAAkB,EAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;gBACjD,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI;gBACvB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI;gBACvB,YAAY,EAAE,GAAG,EAAE;oBAClB,MAAM,IAAI,8BAAiB,CAAC,0DAA0D,CAAC,CAAA;gBACxF,CAAC;aACD,CAAC,CAAA;YACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACzB,MAAM,YAAY,GAAG,kCAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAChE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;oBAC5C,MAAM,UAAU,GAAG,IAAA,iCAAkB,EAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE;wBAClE,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;wBACxB,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI;qBACzB,CAAC,CAAA;oBACF,IAAI,UAAU,EAAE;wBACf,MAAM,IAAI,8BAAiB,CAAC,2DAA2D,CAAC,CAAA;qBACxF;iBACD;aACD;YACD,OAAO,KAAK,CAAA;QACb,CAAC,CAAC,CAAA;IACH,CAAC;IAEM,cAAc,CAAC,UAAkB;QACvC,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;QAC5D,MAAM,iBAAiB,GAAG,IAAA,sCAAuB,EAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"EntityRulesResolver.js","sourceRoot":"","sources":["../../../src/input-validation/EntityRulesResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ declare namespace ValidationContext {
|
|
|
6
6
|
type: Type;
|
|
7
7
|
}
|
|
8
8
|
export type NodeType = Value.Object;
|
|
9
|
-
export type ValueType = Value.FieldValue;
|
|
9
|
+
export type ValueType = Value.FieldValue | undefined;
|
|
10
10
|
export enum NodeContextType {
|
|
11
11
|
value = "value",
|
|
12
12
|
node = "node",
|
|
@@ -32,7 +32,7 @@ declare namespace ValidationContext {
|
|
|
32
32
|
export const createValueContext: (root: NodeContext, node: NodeType, value: ValueType) => ValueContext;
|
|
33
33
|
export const createNodeListContext: (root: NodeContext, nodes: (NodeContext | ValueContext)[]) => NodeListContext;
|
|
34
34
|
export const createRootContext: (node: NodeType) => NodeContext;
|
|
35
|
-
export const createSingleNodeContext: (parent: NodeContext | ValueContext, value:
|
|
35
|
+
export const createSingleNodeContext: (parent: NodeContext | ValueContext, value: ValueType) => NodeContext | ValueContext;
|
|
36
36
|
export const createContext: (context: AnyContext, part: string) => AnyContext;
|
|
37
37
|
export const changeContext: (context: AnyContext, path: Validation.ContextPath) => AnyContext;
|
|
38
38
|
export interface ContextVisitor<R> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationContext.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGrD,kBAAU,iBAAiB,CAAC;IAC3B,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,eAAe,GAAG,oBAAoB,CAAA;IAE5F,UAAU,iBAAiB,CAAC,IAAI,SAAS,eAAe;QACvD,IAAI,EAAE,WAAW,CAAA;QACjB,IAAI,EAAE,IAAI,CAAA;KACV;IAED,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAA;IACnC,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"ValidationContext.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGrD,kBAAU,iBAAiB,CAAC;IAC3B,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,eAAe,GAAG,oBAAoB,CAAA;IAE5F,UAAU,iBAAiB,CAAC,IAAI,SAAS,eAAe;QACvD,IAAI,EAAE,WAAW,CAAA;QACjB,IAAI,EAAE,IAAI,CAAA;KACV;IAED,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAA;IACnC,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,GAAG,SAAS,CAAA;IAEpD,MAAM,MAAM,eAAe;QAC1B,KAAK,UAAU;QACf,IAAI,SAAS;QACb,QAAQ,aAAa;QACrB,SAAS,cAAc;KACvB;IAED,MAAM,WAAW,eAAe;QAC/B,IAAI,EAAE,QAAQ,CAAA;KACd;IAED,MAAM,WAAW,WAAY,SAAQ,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,eAAe;KAAG;IAEhG,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB,CAAC,eAAe,CAAC,SAAS,CAAC;KAAG;IAE7F,MAAM,WAAW,YAAa,SAAQ,iBAAiB,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,eAAe;QAC9F,KAAK,EAAE,SAAS,CAAA;KAChB;IAED,MAAM,WAAW,eAAgB,SAAQ,iBAAiB,CAAC,eAAe,CAAC,QAAQ,CAAC;QACnF,KAAK,EAAE,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,CAAA;KACrC;IAED,MAAM,CAAC,MAAM,qBAAqB,YAAa,UAAU,KAAG,eAI3D,CAAA;IAED,MAAM,CAAC,MAAM,iBAAiB,SAAU,WAAW,QAAQ,QAAQ,KAAG,WAIpE,CAAA;IACF,MAAM,CAAC,MAAM,0BAA0B,SAAU,WAAW,KAAG,oBAG7D,CAAA;IACF,MAAM,CAAC,MAAM,kBAAkB,SAAU,WAAW,QAAQ,QAAQ,SAAS,SAAS,KAAG,YAKvF,CAAA;IACF,MAAM,CAAC,MAAM,qBAAqB,SAAU,WAAW,SAAS,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,KAAG,eAI/F,CAAA;IACF,MAAM,CAAC,MAAM,iBAAiB,SAAU,QAAQ,KAAG,WAIlD,CAAA;IAED,MAAM,CAAC,MAAM,uBAAuB,WAC3B,WAAW,GAAG,YAAY,SAC3B,SAAS,KACd,WAAW,GAAG,YAQhB,CAAA;IAED,MAAM,CAAC,MAAM,aAAa,YAAa,UAAU,QAAQ,MAAM,KAAG,UA6BjE,CAAA;IAED,MAAM,CAAC,MAAM,aAAa,YAAa,UAAU,mCAAiC,UAIjF,CAAA;IAED,MAAM,WAAW,cAAc,CAAC,CAAC;QAChC,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG,CAAC,CAAA;QACjD,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,CAAA;QACzC,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,CAAC,CAAA;QAC3C,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,GAAG,CAAC,CAAA;KACvD;IAED,MAAM,CAAC,MAAM,oBAAoB,eAAgB,UAAU,kCAa1D,CAAA;;CACD;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationContext.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":";;;AACA,oCAAsC;AAEtC,IAAU,iBAAiB,CAyI1B;AAzID,WAAU,iBAAiB;IAW1B,IAAY,eAKX;IALD,WAAY,eAAe;QAC1B,kCAAe,CAAA;QACf,gCAAa,CAAA;QACb,wCAAqB,CAAA;QACrB,0CAAuB,CAAA;IACxB,CAAC,EALW,eAAe,GAAf,iCAAe,KAAf,iCAAe,QAK1B;IAkBY,uCAAqB,GAAG,CAAC,OAAmB,EAAmB,EAAE;QAC7E,OAAO,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ;YAC/C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,kBAAA,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IACpG,CAAC,CAAA;IAEY,mCAAiB,GAAG,CAAC,IAAiB,EAAE,IAAc,EAAe,EAAE,CAAC,CAAC;QACrF,IAAI;QACJ,IAAI;QACJ,IAAI,EAAE,eAAe,CAAC,IAAI;KAC1B,CAAC,CAAA;IACW,4CAA0B,GAAG,CAAC,IAAiB,EAAwB,EAAE,CAAC,CAAC;QACvF,IAAI;QACJ,IAAI,EAAE,eAAe,CAAC,SAAS;KAC/B,CAAC,CAAA;IACW,oCAAkB,GAAG,CAAC,IAAiB,EAAE,IAAc,EAAE,KAAgB,EAAgB,EAAE,CAAC,CAAC;QACzG,IAAI;QACJ,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,eAAe,CAAC,KAAK;KAC3B,CAAC,CAAA;IACW,uCAAqB,GAAG,CAAC,IAAiB,EAAE,KAAqC,EAAmB,EAAE,CAAC,CAAC;QACpH,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,eAAe,CAAC,QAAQ;KAC9B,CAAC,CAAA;IACW,mCAAiB,GAAG,CAAC,IAAc,EAAe,EAAE;QAChE,MAAM,OAAO,GAAQ,EAAE,IAAI,EAAE,CAAA;QAC7B,OAAO,CAAC,IAAI,GAAG,OAAO,CAAA;QACtB,OAAO,OAAO,CAAA;IACf,CAAC,CAAA;IAEY,yCAAuB,GAAG,CACtC,MAAkC,EAClC,
|
|
1
|
+
{"version":3,"file":"ValidationContext.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationContext.ts"],"names":[],"mappings":";;;AACA,oCAAsC;AAEtC,IAAU,iBAAiB,CAyI1B;AAzID,WAAU,iBAAiB;IAW1B,IAAY,eAKX;IALD,WAAY,eAAe;QAC1B,kCAAe,CAAA;QACf,gCAAa,CAAA;QACb,wCAAqB,CAAA;QACrB,0CAAuB,CAAA;IACxB,CAAC,EALW,eAAe,GAAf,iCAAe,KAAf,iCAAe,QAK1B;IAkBY,uCAAqB,GAAG,CAAC,OAAmB,EAAmB,EAAE;QAC7E,OAAO,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ;YAC/C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,kBAAA,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IACpG,CAAC,CAAA;IAEY,mCAAiB,GAAG,CAAC,IAAiB,EAAE,IAAc,EAAe,EAAE,CAAC,CAAC;QACrF,IAAI;QACJ,IAAI;QACJ,IAAI,EAAE,eAAe,CAAC,IAAI;KAC1B,CAAC,CAAA;IACW,4CAA0B,GAAG,CAAC,IAAiB,EAAwB,EAAE,CAAC,CAAC;QACvF,IAAI;QACJ,IAAI,EAAE,eAAe,CAAC,SAAS;KAC/B,CAAC,CAAA;IACW,oCAAkB,GAAG,CAAC,IAAiB,EAAE,IAAc,EAAE,KAAgB,EAAgB,EAAE,CAAC,CAAC;QACzG,IAAI;QACJ,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,eAAe,CAAC,KAAK;KAC3B,CAAC,CAAA;IACW,uCAAqB,GAAG,CAAC,IAAiB,EAAE,KAAqC,EAAmB,EAAE,CAAC,CAAC;QACpH,IAAI;QACJ,KAAK;QACL,IAAI,EAAE,eAAe,CAAC,QAAQ;KAC9B,CAAC,CAAA;IACW,mCAAiB,GAAG,CAAC,IAAc,EAAe,EAAE;QAChE,MAAM,OAAO,GAAQ,EAAE,IAAI,EAAE,CAAA;QAC7B,OAAO,CAAC,IAAI,GAAG,OAAO,CAAA;QACtB,OAAO,OAAO,CAAA;IACf,CAAC,CAAA;IAEY,yCAAuB,GAAG,CACtC,MAAkC,EAClC,KAAgB,EACa,EAAE;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;SAChD;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;YAChD,OAAO,kBAAA,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,KAAiB,CAAC,CAAA;SACxD;QACD,OAAO,kBAAA,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC3D,CAAC,CAAA;IAEY,+BAAa,GAAG,CAAC,OAAmB,EAAE,IAAY,EAAc,EAAE;QAC9E,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ,EAAE;YAC9C,MAAM,YAAY,GAAoB;gBACrC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,eAAe,CAAC,QAAQ;aAC9B,CAAA;YACD,OAAO,OAAO,CAAC,KAAK;iBAClB,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAA,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;iBAClC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAA,qBAAqB,CAAC,EAAE,CAAC,CAAC;iBACpC,MAAM,CACN,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,kBAAA,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EACnF,YAAY,CACZ,CAAA;SACF;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,EAAE;YAC/C,OAAO,OAAO,CAAA;SACd;QACD,IAAI,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,WAAW,EAAE;YAC9C,OAAO,kBAAA,0BAA0B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SAC/C;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,kBAAA,qBAAqB,CAC3B,OAAO,CAAC,IAAI,EACZ,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAA,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CACrD,CAAA;SACD;QACD,OAAO,kBAAA,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAA;IAEY,+BAAa,GAAG,CAAC,OAAmB,EAAE,IAA4B,EAAc,EAAE;QAC9F,OAAO,IAAI,CAAC,MAAM,CAAa,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YAC/C,OAAO,kBAAA,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACnC,CAAC,EAAE,OAAO,CAAC,CAAA;IACZ,CAAC,CAAA;IASY,sCAAoB,GAAG,CAAI,OAAmB,EAAE,OAA0B,EAAK,EAAE;QAC7F,QAAQ,OAAO,CAAC,IAAI,EAAE;YACrB,KAAK,iBAAiB,CAAC,eAAe,CAAC,IAAI;gBAC1C,OAAO,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;YACzC,KAAK,iBAAiB,CAAC,eAAe,CAAC,QAAQ;gBAC9C,OAAO,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;YAC7C,KAAK,iBAAiB,CAAC,eAAe,CAAC,KAAK;gBAC3C,OAAO,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;YAC1C,KAAK,iBAAiB,CAAC,eAAe,CAAC,SAAS;gBAC/C,OAAO,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YAC9C;gBACC,IAAA,mBAAW,EAAC,OAAO,CAAC,CAAA;SACrB;IACF,CAAC,CAAA;AACF,CAAC,EAzIS,iBAAiB,KAAjB,iBAAiB,QAyI1B;AAEQ,8CAAiB"}
|