@contember/engine-content-api 1.2.0-alpha.3 → 1.2.0-alpha.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/dist/src/acl/EvaluatedPredicateReplacer.d.ts +10 -0
- package/dist/src/acl/EvaluatedPredicateReplacer.d.ts.map +1 -0
- package/dist/src/acl/EvaluatedPredicateReplacer.js +40 -0
- package/dist/src/acl/EvaluatedPredicateReplacer.js.map +1 -0
- package/dist/src/acl/PredicateFactory.d.ts +4 -2
- package/dist/src/acl/PredicateFactory.d.ts.map +1 -1
- package/dist/src/acl/PredicateFactory.js +24 -6
- package/dist/src/acl/PredicateFactory.js.map +1 -1
- package/dist/src/acl/PredicatesInjector.d.ts +1 -1
- package/dist/src/acl/PredicatesInjector.d.ts.map +1 -1
- package/dist/src/acl/PredicatesInjector.js +14 -11
- package/dist/src/acl/PredicatesInjector.js.map +1 -1
- 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/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js +25 -13
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js +26 -13
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.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/input-validation/ValidationDataSelector.d.ts.map +1 -1
- package/dist/src/input-validation/ValidationDataSelector.js +1 -1
- package/dist/src/input-validation/ValidationDataSelector.js.map +1 -1
- package/dist/src/mapper/Mapper.d.ts +4 -4
- package/dist/src/mapper/Mapper.d.ts.map +1 -1
- package/dist/src/mapper/Mapper.js +7 -7
- package/dist/src/mapper/Mapper.js.map +1 -1
- package/dist/src/mapper/MapperContainer.d.ts.map +1 -1
- package/dist/src/mapper/MapperContainer.js +5 -2
- package/dist/src/mapper/MapperContainer.js.map +1 -1
- package/dist/src/mapper/select/RelationFetcher.d.ts +40 -5
- package/dist/src/mapper/select/RelationFetcher.d.ts.map +1 -1
- package/dist/src/mapper/select/RelationFetcher.js +19 -6
- package/dist/src/mapper/select/RelationFetcher.js.map +1 -1
- package/dist/src/mapper/select/WhereBuilder.d.ts +3 -1
- package/dist/src/mapper/select/WhereBuilder.d.ts.map +1 -1
- package/dist/src/mapper/select/WhereBuilder.js +4 -2
- package/dist/src/mapper/select/WhereBuilder.js.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts +2 -2
- package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitor.js +31 -18
- package/dist/src/mapper/select/handlers/FieldsVisitor.js.map +1 -1
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.d.ts +5 -0
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.d.ts.map +1 -0
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.js +33 -0
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.js.map +1 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts +11 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts.map +1 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.js +57 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -0
- package/dist/src/mapper/select/optimizer/helpers.d.ts +10 -0
- package/dist/src/mapper/select/optimizer/helpers.d.ts.map +1 -0
- package/dist/src/mapper/select/optimizer/helpers.js +65 -0
- package/dist/src/mapper/select/optimizer/helpers.js.map +1 -0
- package/dist/src/resolvers/MutationResolver.js +1 -1
- package/dist/src/resolvers/MutationResolver.js.map +1 -1
- package/dist/src/resolvers/ReadHelpers.js +3 -3
- package/dist/src/resolvers/ReadHelpers.js.map +1 -1
- package/dist/src/resolvers/ReadResolver.js +2 -2
- package/dist/src/resolvers/ReadResolver.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 +7 -26
- 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/query/acl/predicateElimination.test.d.ts +2 -0
- package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.js +137 -0
- package/dist/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.js.map +1 -0
- package/dist/tests/cases/integration/graphQlRequests/query/filter/complexCondition.test.js +1 -1
- package/dist/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.js +1 -1
- package/dist/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.js +73 -0
- package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.js +73 -0
- package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js +6 -26
- 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/conditionOptimizer.test.d.ts +2 -0
- package/dist/tests/cases/unit/conditionOptimizer.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/conditionOptimizer.test.js +113 -0
- package/dist/tests/cases/unit/conditionOptimizer.test.js.map +1 -0
- 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/predicatesFactory.test.d.ts +2 -0
- package/dist/tests/cases/unit/predicatesFactory.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/predicatesFactory.test.js +103 -0
- package/dist/tests/cases/unit/predicatesFactory.test.js.map +1 -0
- package/dist/tests/cases/unit/predicatesInjector.test.js +9 -18
- 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/cases/unit/whereOptimizer.test.d.ts +2 -0
- package/dist/tests/cases/unit/whereOptimizer.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/whereOptimizer.test.js +81 -0
- package/dist/tests/cases/unit/whereOptimizer.test.js.map +1 -0
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/acl/EvaluatedPredicateReplacer.ts +38 -0
- package/src/acl/PredicateFactory.ts +30 -7
- package/src/acl/PredicatesInjector.ts +18 -10
- package/src/acl/VariableInjector.ts +2 -17
- package/src/acl/VariableUtils.ts +7 -28
- package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.ts +3 -3
- package/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts +26 -28
- package/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts +27 -31
- package/src/input-validation/EntityRulesResolver.ts +3 -3
- package/src/input-validation/ValidationContext.ts +2 -2
- package/src/input-validation/ValidationDataSelector.ts +2 -2
- package/src/mapper/Mapper.ts +10 -6
- package/src/mapper/MapperContainer.ts +7 -3
- package/src/mapper/select/RelationFetcher.ts +95 -34
- package/src/mapper/select/WhereBuilder.ts +5 -2
- package/src/mapper/select/handlers/FieldsVisitor.ts +31 -24
- package/src/mapper/select/optimizer/ConditionOptimizer.ts +35 -0
- package/src/mapper/select/optimizer/WhereOptimizer.ts +67 -0
- package/src/mapper/select/optimizer/helpers.ts +54 -0
- package/src/resolvers/MutationResolver.ts +1 -1
- package/src/resolvers/ReadHelpers.ts +3 -3
- package/src/resolvers/ReadResolver.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 +7 -26
- package/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.ts +1 -6
- package/tests/cases/integration/graphQlRequests/query/acl/predicateElimination.test.ts +130 -0
- package/tests/cases/integration/graphQlRequests/query/filter/complexCondition.test.ts +1 -1
- package/tests/cases/integration/graphQlRequests/query/filter/composedFilter.test.ts +1 -1
- package/tests/cases/integration/graphQlRequests/query/relations/manyHasManyInverse.test.ts +74 -0
- package/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.ts +77 -0
- package/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.ts +7 -27
- package/tests/cases/unit/aclVariablesFactory.test.ts +5 -34
- package/tests/cases/unit/conditionOptimizer.test.ts +129 -0
- package/tests/cases/unit/orderbyHelper.test.ts +1 -0
- package/tests/cases/unit/predicatesFactory.test.ts +97 -0
- package/tests/cases/unit/predicatesInjector.test.ts +9 -18
- package/tests/cases/unit/variableInjector.test.ts +2 -13
- package/tests/cases/unit/whereOptimizer.test.ts +77 -0
package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.js
CHANGED
|
@@ -5,6 +5,79 @@ const test_1 = require("../../../../../src/test");
|
|
|
5
5
|
const schema_definition_1 = require("@contember/schema-definition");
|
|
6
6
|
const tags_1 = require("../../../../../src/tags");
|
|
7
7
|
const testUuid_1 = require("../../../../../src/testUuid");
|
|
8
|
+
(0, vitest_1.test)('Posts with filtered tags', async () => {
|
|
9
|
+
await (0, test_1.execute)({
|
|
10
|
+
schema: new schema_definition_1.SchemaBuilder()
|
|
11
|
+
.entity('Post', entity => entity.manyHasMany('tags', relation => relation.target('Tag')))
|
|
12
|
+
.entity('Tag', entity => entity.column('name'))
|
|
13
|
+
.buildSchema(),
|
|
14
|
+
query: (0, tags_1.GQL) `
|
|
15
|
+
query {
|
|
16
|
+
listPost {
|
|
17
|
+
id
|
|
18
|
+
tags(filter: {name: {eq: "Foo"}}) {
|
|
19
|
+
name
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
`,
|
|
24
|
+
executes: [
|
|
25
|
+
{
|
|
26
|
+
sql: (0, tags_1.SQL) `select "root_"."id" as "root_id",
|
|
27
|
+
"root_"."id" as "root_id"
|
|
28
|
+
from "public"."post" as "root_"`,
|
|
29
|
+
response: {
|
|
30
|
+
rows: [{ root_id: (0, testUuid_1.testUuid)(1) }, { root_id: (0, testUuid_1.testUuid)(2) }],
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
sql: (0, tags_1.SQL) `select "junction_"."tag_id", "junction_"."post_id" from "public"."post_tags" as "junction_" inner join "public"."tag" as "root_" on "junction_"."tag_id" = "root_"."id" where "junction_"."post_id" in (?, ?) and "root_"."name" = ?`,
|
|
35
|
+
parameters: [(0, testUuid_1.testUuid)(1), (0, testUuid_1.testUuid)(2), 'Foo'],
|
|
36
|
+
response: {
|
|
37
|
+
rows: [
|
|
38
|
+
{ post_id: (0, testUuid_1.testUuid)(1), tag_id: (0, testUuid_1.testUuid)(3) },
|
|
39
|
+
{ post_id: (0, testUuid_1.testUuid)(2), tag_id: (0, testUuid_1.testUuid)(3) },
|
|
40
|
+
],
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
sql: (0, tags_1.SQL) `
|
|
45
|
+
select "root_"."name" as "root_name",
|
|
46
|
+
"root_"."id" as "root_id"
|
|
47
|
+
from "public"."tag" as "root_"
|
|
48
|
+
where "root_"."id" in (?)`,
|
|
49
|
+
parameters: [(0, testUuid_1.testUuid)(3)],
|
|
50
|
+
response: {
|
|
51
|
+
rows: [
|
|
52
|
+
{ root_id: (0, testUuid_1.testUuid)(3), root_name: 'foo' },
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
],
|
|
57
|
+
return: {
|
|
58
|
+
data: {
|
|
59
|
+
listPost: [
|
|
60
|
+
{
|
|
61
|
+
id: (0, testUuid_1.testUuid)(1),
|
|
62
|
+
tags: [
|
|
63
|
+
{
|
|
64
|
+
name: 'foo',
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
id: (0, testUuid_1.testUuid)(2),
|
|
70
|
+
tags: [
|
|
71
|
+
{
|
|
72
|
+
name: 'foo',
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
},
|
|
76
|
+
],
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
});
|
|
80
|
+
});
|
|
8
81
|
(0, vitest_1.test)('Posts with paginated tags (many has many owning)', async () => {
|
|
9
82
|
await (0, test_1.execute)({
|
|
10
83
|
schema: new schema_definition_1.SchemaBuilder()
|
package/dist/tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manyHasManyOwning.test.js","sourceRoot":"","sources":["../../../../../../../tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.ts"],"names":[],"mappings":";;AAAA,mCAA6B;AAC7B,kDAAiD;AACjD,oEAA4D;AAC5D,kDAAkD;AAClD,0DAAsD;
|
|
1
|
+
{"version":3,"file":"manyHasManyOwning.test.js","sourceRoot":"","sources":["../../../../../../../tests/cases/integration/graphQlRequests/query/relations/manyHasManyOwning.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,12 +36,7 @@ const testUuid_1 = require("../../../../../src/testUuid");
|
|
|
36
36
|
},
|
|
37
37
|
},
|
|
38
38
|
variables: {
|
|
39
|
-
name_variable: {
|
|
40
|
-
definition: {
|
|
41
|
-
type: schema_1.Acl.VariableType.condition,
|
|
42
|
-
},
|
|
43
|
-
value: [{ in: ['John', 'Jack'] }],
|
|
44
|
-
},
|
|
39
|
+
name_variable: { in: ['John', 'Jack'] },
|
|
45
40
|
},
|
|
46
41
|
executes: [
|
|
47
42
|
...(0, test_1.sqlTransaction)([
|
|
@@ -103,12 +98,7 @@ const testUuid_1 = require("../../../../../src/testUuid");
|
|
|
103
98
|
},
|
|
104
99
|
},
|
|
105
100
|
variables: {
|
|
106
|
-
name_variable: {
|
|
107
|
-
definition: {
|
|
108
|
-
type: schema_1.Acl.VariableType.condition,
|
|
109
|
-
},
|
|
110
|
-
value: [{ in: ['John', 'Jack'] }],
|
|
111
|
-
},
|
|
101
|
+
name_variable: { in: ['John', 'Jack'] },
|
|
112
102
|
},
|
|
113
103
|
executes: [
|
|
114
104
|
...(0, test_1.failedTransaction)([
|
|
@@ -123,10 +113,10 @@ const testUuid_1 = require("../../../../../src/testUuid");
|
|
|
123
113
|
? :: text as "name",
|
|
124
114
|
"root_"."id"
|
|
125
115
|
from "public"."author" as "root_"
|
|
126
|
-
where
|
|
116
|
+
where false) update "public"."author"
|
|
127
117
|
set "name" = "newData_"."name" from "newData_"
|
|
128
118
|
where "author"."id" = "newData_"."id" and false`,
|
|
129
|
-
parameters: ['John'
|
|
119
|
+
parameters: ['John'],
|
|
130
120
|
response: 0,
|
|
131
121
|
},
|
|
132
122
|
]),
|
|
@@ -181,18 +171,8 @@ const testUuid_1 = require("../../../../../src/testUuid");
|
|
|
181
171
|
},
|
|
182
172
|
},
|
|
183
173
|
variables: {
|
|
184
|
-
post_name_variable: {
|
|
185
|
-
|
|
186
|
-
type: schema_1.Acl.VariableType.condition,
|
|
187
|
-
},
|
|
188
|
-
value: [{ in: ['Lorem ipsum', 'Dolor sit'] }],
|
|
189
|
-
},
|
|
190
|
-
category_name_variable: {
|
|
191
|
-
definition: {
|
|
192
|
-
type: schema_1.Acl.VariableType.condition,
|
|
193
|
-
},
|
|
194
|
-
value: [{ in: ['foo', 'bar'] }],
|
|
195
|
-
},
|
|
174
|
+
post_name_variable: { in: ['Lorem ipsum', 'Dolor sit'] },
|
|
175
|
+
category_name_variable: { in: ['foo', 'bar'] },
|
|
196
176
|
},
|
|
197
177
|
query: (0, tags_1.GQL) `mutation {
|
|
198
178
|
updatePost(by: {id: "${(0, testUuid_1.testUuid)(1)}"}, data: {categories: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aclUpdate.test.js","sourceRoot":"","sources":["../../../../../../../tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.ts"],"names":[],"mappings":";;AAAA,mCAA6B;AAC7B,kDAAoF;AACpF,oEAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"aclUpdate.test.js","sourceRoot":"","sources":["../../../../../../../tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,12 +17,8 @@ const engine_api_tester_1 = require("@contember/engine-api-tester");
|
|
|
17
17
|
entities: {},
|
|
18
18
|
},
|
|
19
19
|
},
|
|
20
|
-
}, {
|
|
21
|
-
|
|
22
|
-
personId: null,
|
|
23
|
-
memberships: [{ role: 'author', variables: [{ name: 'authorID', values: [(0, engine_api_tester_1.testUuid)(2)] }] }],
|
|
24
|
-
}), {
|
|
25
|
-
author__authorID: { definition, value: [(0, engine_api_tester_1.testUuid)(2)] },
|
|
20
|
+
}, [{ role: 'author', variables: [{ name: 'authorID', condition: { in: [(0, engine_api_tester_1.testUuid)(2)] } }] }]), {
|
|
21
|
+
author__authorID: { in: [(0, engine_api_tester_1.testUuid)(2)] },
|
|
26
22
|
});
|
|
27
23
|
});
|
|
28
24
|
(0, vitest_1.it)('undefined variable', () => {
|
|
@@ -36,32 +32,8 @@ const engine_api_tester_1 = require("@contember/engine-api-tester");
|
|
|
36
32
|
entities: {},
|
|
37
33
|
},
|
|
38
34
|
},
|
|
39
|
-
}, {
|
|
40
|
-
|
|
41
|
-
personId: null,
|
|
42
|
-
memberships: [{ role: 'author', variables: [] }],
|
|
43
|
-
}), {
|
|
44
|
-
author__authorID: { definition, value: [] },
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
(0, vitest_1.it)('predefined', () => {
|
|
48
|
-
const definition = { type: schema_1.Acl.VariableType.predefined, value: 'identityID' };
|
|
49
|
-
vitest_1.assert.deepStrictEqual((0, src_1.createAclVariables)({
|
|
50
|
-
roles: {
|
|
51
|
-
author: {
|
|
52
|
-
stages: '*',
|
|
53
|
-
variables: {
|
|
54
|
-
authorIdentity: definition,
|
|
55
|
-
},
|
|
56
|
-
entities: {},
|
|
57
|
-
},
|
|
58
|
-
},
|
|
59
|
-
}, {
|
|
60
|
-
identityId: (0, engine_api_tester_1.testUuid)(1),
|
|
61
|
-
personId: null,
|
|
62
|
-
memberships: [{ role: 'author', variables: [] }],
|
|
63
|
-
}), {
|
|
64
|
-
author__authorIdentity: { definition, value: [(0, engine_api_tester_1.testUuid)(1)] },
|
|
35
|
+
}, [{ role: 'author', variables: [] }]), {
|
|
36
|
+
author__authorID: { never: true },
|
|
65
37
|
});
|
|
66
38
|
});
|
|
67
39
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aclVariablesFactory.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/aclVariablesFactory.test.ts"],"names":[],"mappings":";;AAAA,mCAA6C;AAC7C,sCAAiD;AACjD,8CAAuC;AACvC,oEAAuD;AAEvD,IAAA,iBAAQ,EAAC,sBAAsB,EAAE,GAAG,EAAE;IAErC,MAAM,UAAU,GAAuB,EAAE,IAAI,EAAE,YAAG,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAA;IAC9F,IAAA,WAAE,EAAC,yBAAyB,EAAE,GAAG,EAAE;QAClC,eAAM,CAAC,eAAe,CAAC,IAAA,wBAAkB,EAAC;YACzC,KAAK,EAAE;gBACN,MAAM,EAAE;oBACP,MAAM,EAAE,GAAG;oBACX,SAAS,EAAE;wBACV,QAAQ,EAAE,UAAU;qBACpB;oBACD,QAAQ,EAAE,EACT;iBACD;aACD;SACD,EAAE
|
|
1
|
+
{"version":3,"file":"aclVariablesFactory.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/aclVariablesFactory.test.ts"],"names":[],"mappings":";;AAAA,mCAA6C;AAC7C,sCAAiD;AACjD,8CAAuC;AACvC,oEAAuD;AAEvD,IAAA,iBAAQ,EAAC,sBAAsB,EAAE,GAAG,EAAE;IAErC,MAAM,UAAU,GAAuB,EAAE,IAAI,EAAE,YAAG,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAA;IAC9F,IAAA,WAAE,EAAC,yBAAyB,EAAE,GAAG,EAAE;QAClC,eAAM,CAAC,eAAe,CAAC,IAAA,wBAAkB,EAAC;YACzC,KAAK,EAAE;gBACN,MAAM,EAAE;oBACP,MAAM,EAAE,GAAG;oBACX,SAAS,EAAE;wBACV,QAAQ,EAAE,UAAU;qBACpB;oBACD,QAAQ,EAAE,EACT;iBACD;aACD;SACD,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,IAAA,4BAAQ,EAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE;YAC9F,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,IAAA,4BAAQ,EAAC,CAAC,CAAC,CAAC,EAAE;SACvC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAGF,IAAA,WAAE,EAAC,oBAAoB,EAAE,GAAG,EAAE;QAC7B,eAAM,CAAC,eAAe,CAAC,IAAA,wBAAkB,EAAC;YACzC,KAAK,EAAE;gBACN,MAAM,EAAE;oBACP,MAAM,EAAE,GAAG;oBACX,SAAS,EAAE;wBACV,QAAQ,EAAE,UAAU;qBACpB;oBACD,QAAQ,EAAE,EAAE;iBACZ;aACD;SACD,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CACrC,EAAE;YACF,gBAAgB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;SACjC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditionOptimizer.test.d.ts","sourceRoot":"","sources":["../../../../tests/cases/unit/conditionOptimizer.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const ConditionOptimizer_1 = require("../../../src/mapper/select/optimizer/ConditionOptimizer");
|
|
5
|
+
(0, vitest_1.describe)('condition optimizer', () => {
|
|
6
|
+
const optimizer = new ConditionOptimizer_1.ConditionOptimizer();
|
|
7
|
+
(0, vitest_1.it)('remove OR when only 1', () => {
|
|
8
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
9
|
+
or: [{ eq: 1 }],
|
|
10
|
+
}), { eq: 1 });
|
|
11
|
+
});
|
|
12
|
+
(0, vitest_1.it)('keep OR when > 1', () => {
|
|
13
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
14
|
+
or: [{ eq: 1 }, { eq: 2 }],
|
|
15
|
+
}), {
|
|
16
|
+
or: [{ eq: 1 }, { eq: 2 }],
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
(0, vitest_1.it)('optimizes OR with never', () => {
|
|
20
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
21
|
+
or: [{ eq: 1 }, { never: true }],
|
|
22
|
+
}), { eq: 1 });
|
|
23
|
+
});
|
|
24
|
+
(0, vitest_1.it)('optimizes OR with always', () => {
|
|
25
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
26
|
+
or: [{ eq: 1 }, { always: true }],
|
|
27
|
+
}), true);
|
|
28
|
+
});
|
|
29
|
+
(0, vitest_1.it)('optimizes AND with never', () => {
|
|
30
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
31
|
+
and: [{ eq: 1 }, { never: true }],
|
|
32
|
+
}), false);
|
|
33
|
+
});
|
|
34
|
+
(0, vitest_1.it)('optimizes AND with always', () => {
|
|
35
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
36
|
+
and: [{ eq: 1 }, { always: true }],
|
|
37
|
+
}), { eq: 1 });
|
|
38
|
+
});
|
|
39
|
+
(0, vitest_1.it)('optimizes NOT with never', () => {
|
|
40
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
41
|
+
not: { never: true },
|
|
42
|
+
}), true);
|
|
43
|
+
});
|
|
44
|
+
(0, vitest_1.it)('optimizes NOT with always', () => {
|
|
45
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
46
|
+
not: { always: true },
|
|
47
|
+
}), false);
|
|
48
|
+
});
|
|
49
|
+
(0, vitest_1.it)('optimizes empty AND', () => {
|
|
50
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
51
|
+
and: [],
|
|
52
|
+
}), {});
|
|
53
|
+
});
|
|
54
|
+
(0, vitest_1.it)('optimizes empty OR', () => {
|
|
55
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
56
|
+
or: [],
|
|
57
|
+
}), {});
|
|
58
|
+
});
|
|
59
|
+
(0, vitest_1.it)('flattens AND', () => {
|
|
60
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
61
|
+
eq: 0,
|
|
62
|
+
and: [
|
|
63
|
+
{ eq: 1 },
|
|
64
|
+
{
|
|
65
|
+
eq: 2,
|
|
66
|
+
and: [
|
|
67
|
+
{ eq: 3 },
|
|
68
|
+
{
|
|
69
|
+
eq: 4,
|
|
70
|
+
and: [{ eq: 5 }, { eq: 6 }],
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
}), { and: [{ eq: 0 }, { eq: 1 }, { eq: 2 }, { eq: 3 }, { eq: 4 }, { eq: 5 }, { eq: 6 }] });
|
|
76
|
+
});
|
|
77
|
+
(0, vitest_1.it)('flattens OR', () => {
|
|
78
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
79
|
+
or: [
|
|
80
|
+
{ eq: 1 },
|
|
81
|
+
{
|
|
82
|
+
or: [
|
|
83
|
+
{ eq: 2 },
|
|
84
|
+
{ or: [{ eq: 3 }, { eq: 4 }] },
|
|
85
|
+
],
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
}), { or: [{ eq: 1 }, { eq: 2 }, { eq: 3 }, { eq: 4 }] });
|
|
89
|
+
});
|
|
90
|
+
(0, vitest_1.it)('flattens NOT', () => {
|
|
91
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
92
|
+
not: { not: { not: { eq: 1 } } },
|
|
93
|
+
}), { not: { eq: 1 } });
|
|
94
|
+
});
|
|
95
|
+
(0, vitest_1.it)('combine AND and OR', () => {
|
|
96
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({
|
|
97
|
+
or: [
|
|
98
|
+
{ and: [{ eq: 1 }, { eq: 2 }] },
|
|
99
|
+
{ and: [{ eq: 3 }, { eq: 4 }], eq: 5 },
|
|
100
|
+
],
|
|
101
|
+
}), { or: [
|
|
102
|
+
{ and: [{ eq: 1 }, { eq: 2 }] },
|
|
103
|
+
{ and: [{ eq: 3 }, { eq: 4 }, { eq: 5 }] },
|
|
104
|
+
] });
|
|
105
|
+
});
|
|
106
|
+
(0, vitest_1.it)('remove conditions with null value', () => {
|
|
107
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({ eq: null }), {});
|
|
108
|
+
});
|
|
109
|
+
(0, vitest_1.it)('remove conditions with undefined value', () => {
|
|
110
|
+
vitest_1.assert.deepStrictEqual(optimizer.optimize({ eq: undefined }), {});
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
//# sourceMappingURL=conditionOptimizer.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditionOptimizer.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/conditionOptimizer.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orderbyHelper.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/orderbyHelper.test.ts"],"names":[],"mappings":";;AAAA,8CAAgD;AAChD,gDAAmD;AACnD,kEAAyD;AACzD,mCAA6C;AAE7C,MAAM,MAAM,GAAiB;IAC5B,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,KAAK;IAChB,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"orderbyHelper.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/orderbyHelper.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"predicatesFactory.test.d.ts","sourceRoot":"","sources":["../../../../tests/cases/unit/predicatesFactory.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const acl_1 = require("../../../src/acl");
|
|
4
|
+
const schema_definition_1 = require("@contember/schema-definition");
|
|
5
|
+
const schema_1 = require("@contember/schema");
|
|
6
|
+
const vitest_1 = require("vitest");
|
|
7
|
+
var TestModel;
|
|
8
|
+
(function (TestModel) {
|
|
9
|
+
class Author {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.name = schema_definition_1.SchemaDefinition.stringColumn();
|
|
12
|
+
this.isPublic = schema_definition_1.SchemaDefinition.boolColumn().notNull();
|
|
13
|
+
this.image = schema_definition_1.SchemaDefinition.manyHasOne(Image, 'authors');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
TestModel.Author = Author;
|
|
17
|
+
class Article {
|
|
18
|
+
constructor() {
|
|
19
|
+
this.title = schema_definition_1.SchemaDefinition.stringColumn();
|
|
20
|
+
this.isPublic = schema_definition_1.SchemaDefinition.boolColumn().notNull();
|
|
21
|
+
this.image = schema_definition_1.SchemaDefinition.manyHasOne(Image, 'articles');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
TestModel.Article = Article;
|
|
25
|
+
class Image {
|
|
26
|
+
constructor() {
|
|
27
|
+
this.url = schema_definition_1.SchemaDefinition.stringColumn().notNull();
|
|
28
|
+
this.articles = schema_definition_1.SchemaDefinition.oneHasMany(Article, 'image');
|
|
29
|
+
this.authors = schema_definition_1.SchemaDefinition.oneHasMany(Author, 'image');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
TestModel.Image = Image;
|
|
33
|
+
})(TestModel || (TestModel = {}));
|
|
34
|
+
const permissions = {
|
|
35
|
+
Author: {
|
|
36
|
+
predicates: {
|
|
37
|
+
authorPredicate: {
|
|
38
|
+
isPublic: { eq: true },
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
operations: {
|
|
42
|
+
read: {
|
|
43
|
+
id: 'authorPredicate',
|
|
44
|
+
name: 'authorPredicate',
|
|
45
|
+
image: 'authorPredicate',
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
Article: {
|
|
50
|
+
predicates: {
|
|
51
|
+
articlePredicate: {
|
|
52
|
+
isPublic: { eq: true },
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
operations: {
|
|
56
|
+
read: {
|
|
57
|
+
id: 'articlePredicate',
|
|
58
|
+
title: 'articlePredicate',
|
|
59
|
+
image: 'articlePredicate',
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
Image: {
|
|
64
|
+
predicates: {
|
|
65
|
+
imagePredicate: {
|
|
66
|
+
or: [
|
|
67
|
+
{ authors: { isPublic: { eq: true } } },
|
|
68
|
+
{ articles: { isPublic: { eq: true } } },
|
|
69
|
+
],
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
operations: {
|
|
73
|
+
read: {
|
|
74
|
+
id: 'imagePredicate',
|
|
75
|
+
url: 'imagePredicate',
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
(0, vitest_1.describe)('Predicates factory', () => {
|
|
81
|
+
const schema = schema_definition_1.SchemaDefinition.createModel(TestModel);
|
|
82
|
+
(0, vitest_1.it)('eliminates a predicate', () => {
|
|
83
|
+
const predicateFactory = new acl_1.PredicateFactory(permissions, schema, new acl_1.VariableInjector(schema, {}));
|
|
84
|
+
const image = schema.entities['Image'];
|
|
85
|
+
const authorRelation = image.fields['authors'];
|
|
86
|
+
const predicate = predicateFactory.create(image, schema_1.Acl.Operation.read, undefined, authorRelation);
|
|
87
|
+
vitest_1.assert.deepStrictEqual(predicate, {
|
|
88
|
+
or: [
|
|
89
|
+
{
|
|
90
|
+
authors: {
|
|
91
|
+
id: { always: true },
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
articles: {
|
|
96
|
+
isPublic: { eq: true },
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
//# sourceMappingURL=predicatesFactory.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"predicatesFactory.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/predicatesFactory.test.ts"],"names":[],"mappings":";;AAAA,0CAAqE;AACrE,oEAAsE;AACtE,8CAA8C;AAC9C,mCAA6C;AAE7C,IAAU,SAAS,CAmBlB;AAnBD,WAAU,SAAS;IAClB,MAAa,MAAM;QAAnB;YACC,SAAI,GAAG,oCAAG,CAAC,YAAY,EAAE,CAAA;YACzB,aAAQ,GAAG,oCAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAA;YACrC,UAAK,GAAG,oCAAG,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QACzC,CAAC;KAAA;IAJY,gBAAM,SAIlB,CAAA;IAED,MAAa,OAAO;QAApB;YACC,UAAK,GAAG,oCAAG,CAAC,YAAY,EAAE,CAAA;YAC1B,aAAQ,GAAG,oCAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAA;YACrC,UAAK,GAAG,oCAAG,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QAC1C,CAAC;KAAA;IAJY,iBAAO,UAInB,CAAA;IAED,MAAa,KAAK;QAAlB;YACC,QAAG,GAAG,oCAAG,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAA;YAElC,aAAQ,GAAG,oCAAG,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3C,YAAO,GAAG,oCAAG,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC1C,CAAC;KAAA;IALY,eAAK,QAKjB,CAAA;AACF,CAAC,EAnBS,SAAS,KAAT,SAAS,QAmBlB;AACD,MAAM,WAAW,GAAoB;IACpC,MAAM,EAAE;QACP,UAAU,EAAE;YACX,eAAe,EAAE;gBAChB,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;aACtB;SACD;QACD,UAAU,EAAE;YACX,IAAI,EAAE;gBACL,EAAE,EAAE,iBAAiB;gBACrB,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,iBAAiB;aACxB;SACD;KACD;IACD,OAAO,EAAE;QACR,UAAU,EAAE;YACX,gBAAgB,EAAE;gBACjB,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;aACtB;SACD;QACD,UAAU,EAAE;YACX,IAAI,EAAE;gBACL,EAAE,EAAE,kBAAkB;gBACtB,KAAK,EAAE,kBAAkB;gBACzB,KAAK,EAAE,kBAAkB;aACzB;SACD;KACD;IACD,KAAK,EAAE;QACN,UAAU,EAAE;YACX,cAAc,EAAE;gBACf,EAAE,EAAE;oBACH,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;oBACvC,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;iBACxC;aACD;SACD;QACD,UAAU,EAAE;YACX,IAAI,EAAE;gBACL,EAAE,EAAE,gBAAgB;gBACpB,GAAG,EAAE,gBAAgB;aACrB;SACD;KACD;CACD,CAAA;AAED,IAAA,iBAAQ,EAAC,oBAAoB,EAAE,GAAG,EAAE;IACnC,MAAM,MAAM,GAAG,oCAAG,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;IAEzC,IAAA,WAAE,EAAC,wBAAwB,EAAE,GAAG,EAAE;QACjC,MAAM,gBAAgB,GAAG,IAAI,sBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,sBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;QACpG,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtC,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAsB,CAAA;QACnE,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,YAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAA;QAC/F,eAAM,CAAC,eAAe,CAAC,SAAS,EAAE;YACjC,EAAE,EAAE;gBACH;oBACC,OAAO,EAAE;wBACR,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;qBACpB;iBACD;gBACD;oBACC,QAAQ,EAAE;wBACT,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;qBACtB;iBACD;aACD;SACD,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
@@ -27,11 +27,14 @@ const permissions = {
|
|
|
27
27
|
localePredicate: {
|
|
28
28
|
locale: 'localeVariable',
|
|
29
29
|
},
|
|
30
|
+
localePredicate2: {
|
|
31
|
+
locale: 'localeVariable',
|
|
32
|
+
},
|
|
30
33
|
},
|
|
31
34
|
operations: {
|
|
32
35
|
read: {
|
|
33
36
|
id: 'localePredicate',
|
|
34
|
-
title: '
|
|
37
|
+
title: 'localePredicate2',
|
|
35
38
|
content: 'localePredicate',
|
|
36
39
|
},
|
|
37
40
|
},
|
|
@@ -39,34 +42,22 @@ const permissions = {
|
|
|
39
42
|
};
|
|
40
43
|
(0, vitest_1.describe)('Predicates injector', () => {
|
|
41
44
|
const variables = {
|
|
42
|
-
localeVariable: {
|
|
43
|
-
definition: {
|
|
44
|
-
type: schema_1.Acl.VariableType.condition,
|
|
45
|
-
},
|
|
46
|
-
value: [{ in: ['cs'] }],
|
|
47
|
-
},
|
|
45
|
+
localeVariable: { in: ['cs'] },
|
|
48
46
|
};
|
|
49
47
|
(0, vitest_1.it)('injects predicate', () => {
|
|
50
|
-
const injector = new acl_1.PredicatesInjector(schema, new acl_1.PredicateFactory(permissions, new acl_1.VariableInjector(schema, variables)));
|
|
48
|
+
const injector = new acl_1.PredicatesInjector(schema, new acl_1.PredicateFactory(permissions, schema, new acl_1.VariableInjector(schema, variables)));
|
|
51
49
|
const result = injector.inject(schema.entities['PostLocale'], {});
|
|
52
50
|
vitest_1.assert.deepStrictEqual(result, {
|
|
53
51
|
locale: { in: ['cs'] },
|
|
54
52
|
});
|
|
55
53
|
});
|
|
56
54
|
(0, vitest_1.it)('merges predicate with explicit where', () => {
|
|
57
|
-
const injector = new acl_1.PredicatesInjector(schema, new acl_1.PredicateFactory(permissions, new acl_1.VariableInjector(schema, variables)));
|
|
55
|
+
const injector = new acl_1.PredicatesInjector(schema, new acl_1.PredicateFactory(permissions, schema, new acl_1.VariableInjector(schema, variables)));
|
|
58
56
|
const result = injector.inject(schema.entities['PostLocale'], { id: { in: [1, 2] } });
|
|
59
57
|
vitest_1.assert.deepStrictEqual(result, {
|
|
60
58
|
and: [
|
|
61
59
|
{
|
|
62
|
-
|
|
63
|
-
{
|
|
64
|
-
id: { in: [1, 2] },
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
locale: { in: ['cs'] },
|
|
68
|
-
},
|
|
69
|
-
],
|
|
60
|
+
id: { in: [1, 2] },
|
|
70
61
|
},
|
|
71
62
|
{
|
|
72
63
|
locale: { in: ['cs'] },
|
|
@@ -75,7 +66,7 @@ const permissions = {
|
|
|
75
66
|
});
|
|
76
67
|
});
|
|
77
68
|
(0, vitest_1.it)('injects predicate to where', () => {
|
|
78
|
-
const injector = new acl_1.PredicatesInjector(schema, new acl_1.PredicateFactory(permissions, new acl_1.VariableInjector(schema, variables)));
|
|
69
|
+
const injector = new acl_1.PredicatesInjector(schema, new acl_1.PredicateFactory(permissions, schema, new acl_1.VariableInjector(schema, variables)));
|
|
79
70
|
const result = injector.inject(schema.entities['PostLocale'], { title: { eq: 'abc' } });
|
|
80
71
|
vitest_1.assert.deepStrictEqual(result, {
|
|
81
72
|
and: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predicatesInjector.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/predicatesInjector.test.ts"],"names":[],"mappings":";;AAAA,0CAAyF;AACzF,oEAA4D;AAC5D,8CAA8C;AAC9C,mCAA6C;AAI7C,MAAM,MAAM,GAAG,IAAI,iCAAa,EAAE;KAChC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC5B,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;KACjG,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAC9B,MAAM;KACJ,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;KAC/D,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;KACjE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CACxF;KACA,WAAW,EAAE,CAAA;AAEf,MAAM,WAAW,GAAoB;IACpC,IAAI,EAAE;QACL,UAAU,EAAE,EAAE;QACd,UAAU,EAAE;YACX,IAAI,EAAE;gBACL,EAAE,EAAE,IAAI;gBACR,OAAO,EAAE,IAAI;aACb;SACD;KACD;IACD,UAAU,EAAE;QACX,UAAU,EAAE;YACX,eAAe,EAAE;gBAChB,MAAM,EAAE,gBAAgB;aACxB;SACD;QACD,UAAU,EAAE;YACX,IAAI,EAAE;gBACL,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"predicatesInjector.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/predicatesInjector.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,19 +16,8 @@ const vitest_1 = require("vitest");
|
|
|
16
16
|
.buildSchema();
|
|
17
17
|
const ids = ['91528a5c-839b-4114-9952-d661914a607f', '1e2f3937-a0b1-4105-8aae-6da8ac9fc146'];
|
|
18
18
|
const injector = new acl_1.VariableInjector(schema, {
|
|
19
|
-
site: {
|
|
20
|
-
|
|
21
|
-
type: schema_1.Acl.VariableType.entity,
|
|
22
|
-
entityName: 'Site',
|
|
23
|
-
},
|
|
24
|
-
value: ids,
|
|
25
|
-
},
|
|
26
|
-
locale: {
|
|
27
|
-
definition: {
|
|
28
|
-
type: schema_1.Acl.VariableType.condition,
|
|
29
|
-
},
|
|
30
|
-
value: [{ eq: 'cs' }],
|
|
31
|
-
},
|
|
19
|
+
site: { in: ids },
|
|
20
|
+
locale: { eq: 'cs' },
|
|
32
21
|
});
|
|
33
22
|
const result = injector.inject(schema.entities['PostLocale'], {
|
|
34
23
|
or: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variableInjector.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/variableInjector.test.ts"],"names":[],"mappings":";;AAAA,0CAAmD;AACnD,oEAA4D;AAC5D,8CAA8C;AAC9C,mCAA6C;AAE7C,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;IAElC,IAAA,WAAE,EAAC,kBAAkB,EAAE,GAAG,EAAE;QAC3B,MAAM,MAAM,GAAG,IAAI,iCAAa,EAAE;aAChC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aAC5B,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,CACzB,CAAC;aACC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;aAC5E,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aACnD,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;aACpD,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrG;aACA,WAAW,EAAE,CAAA;QAEf,MAAM,GAAG,GAAG,CAAC,sCAAsC,EAAE,sCAAsC,CAAC,CAAA;QAC5F,MAAM,QAAQ,GAAG,IAAI,sBAAgB,CAAC,MAAM,EAAE;YAC7C,IAAI,EAAE
|
|
1
|
+
{"version":3,"file":"variableInjector.test.js","sourceRoot":"","sources":["../../../../tests/cases/unit/variableInjector.test.ts"],"names":[],"mappings":";;AAAA,0CAAmD;AACnD,oEAA4D;AAC5D,8CAA8C;AAC9C,mCAA6C;AAE7C,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;IAElC,IAAA,WAAE,EAAC,kBAAkB,EAAE,GAAG,EAAE;QAC3B,MAAM,MAAM,GAAG,IAAI,iCAAa,EAAE;aAChC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aAC5B,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,CACzB,CAAC;aACC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;aAC5E,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aACnD,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;aACpD,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrG;aACA,WAAW,EAAE,CAAA;QAEf,MAAM,GAAG,GAAG,CAAC,sCAAsC,EAAE,sCAAsC,CAAC,CAAA;QAC5F,MAAM,QAAQ,GAAG,IAAI,sBAAgB,CAAC,MAAM,EAAE;YAC7C,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;YACjB,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;SACpB,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC7D,EAAE,EAAE;gBACH;oBACC,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;iBACpB;gBACD;oBACC,GAAG,EAAE;wBACJ;4BACC,IAAI,EAAE;gCACL,IAAI,EAAE,MAAM;6BACZ;yBACD;wBACD;4BACC,MAAM,EAAE,QAAQ;yBAChB;wBACD;4BACC,GAAG,EAAE,KAAK;yBACV;qBACD;iBACD;aACD;SACD,CAAC,CAAA;QAEF,eAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC9B,EAAE,EAAE;gBACH;oBACC,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;iBACpB;gBACD;oBACC,GAAG,EAAE;wBACJ;4BACC,IAAI,EAAE;gCACL,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE;6BACzB;yBACD;wBACD;4BACC,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;yBACpB;wBACD;4BACC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;yBACpB;qBACD;iBACD;aACD;SACD,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AAEH,CAAC,CAAC,CAAA"}
|