@contember/engine-content-api 1.2.0-alpha.10 → 1.2.0-alpha.11
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/PredicateFactory.d.ts +1 -1
- package/dist/src/acl/PredicateFactory.d.ts.map +1 -1
- package/dist/src/acl/PredicateFactory.js +6 -13
- 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 +13 -20
- package/dist/src/acl/PredicatesInjector.js.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.d.ts +0 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.d.ts.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js +14 -15
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.js.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.d.ts +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.d.ts.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.d.ts +5 -4
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js +11 -14
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.js +2 -2
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.d.ts +3 -3
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js +3 -3
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.d.ts +5 -4
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js +11 -15
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.js.map +1 -1
- package/dist/src/input-validation/ColumnValueResolver.d.ts +4 -3
- package/dist/src/input-validation/ColumnValueResolver.d.ts.map +1 -1
- package/dist/src/input-validation/ColumnValueResolver.js.map +1 -1
- package/dist/src/input-validation/EntityRulesResolver.js +4 -4
- package/dist/src/input-validation/EntityRulesResolver.js.map +1 -1
- package/dist/src/input-validation/QueryAstFactory.js +1 -1
- package/dist/src/input-validation/QueryAstFactory.js.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/input-validation/preValidation/CreateInputPreValidationProcessor.d.ts +7 -8
- package/dist/src/input-validation/preValidation/CreateInputPreValidationProcessor.d.ts.map +1 -1
- package/dist/src/input-validation/preValidation/CreateInputPreValidationProcessor.js.map +1 -1
- package/dist/src/input-validation/preValidation/InputPreValidator.js +4 -4
- package/dist/src/input-validation/preValidation/InputPreValidator.js.map +1 -1
- package/dist/src/input-validation/preValidation/UpdateInputPreValidationProcessor.d.ts +7 -8
- package/dist/src/input-validation/preValidation/UpdateInputPreValidationProcessor.d.ts.map +1 -1
- package/dist/src/input-validation/preValidation/UpdateInputPreValidationProcessor.js.map +1 -1
- package/dist/src/inputProcessing/CreateInputProcessor.d.ts +8 -9
- package/dist/src/inputProcessing/CreateInputProcessor.d.ts.map +1 -1
- package/dist/src/inputProcessing/CreateInputVisitor.d.ts +7 -7
- package/dist/src/inputProcessing/CreateInputVisitor.d.ts.map +1 -1
- package/dist/src/inputProcessing/CreateInputVisitor.js +15 -46
- package/dist/src/inputProcessing/CreateInputVisitor.js.map +1 -1
- package/dist/src/inputProcessing/UpdateInputProcessor.d.ts +8 -9
- package/dist/src/inputProcessing/UpdateInputProcessor.d.ts.map +1 -1
- package/dist/src/inputProcessing/UpdateInputVisitor.d.ts +7 -7
- package/dist/src/inputProcessing/UpdateInputVisitor.d.ts.map +1 -1
- package/dist/src/inputProcessing/UpdateInputVisitor.js +13 -28
- package/dist/src/inputProcessing/UpdateInputVisitor.js.map +1 -1
- package/dist/src/inputProcessing/index.d.ts +0 -1
- package/dist/src/inputProcessing/index.d.ts.map +1 -1
- package/dist/src/inputProcessing/index.js +0 -1
- package/dist/src/inputProcessing/index.js.map +1 -1
- package/dist/src/introspection/IntrospectionSchemaFactory.js +7 -7
- package/dist/src/introspection/IntrospectionSchemaFactory.js.map +1 -1
- package/dist/src/mapper/Mapper.d.ts +6 -6
- package/dist/src/mapper/Mapper.d.ts.map +1 -1
- package/dist/src/mapper/Mapper.js +28 -23
- 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 +2 -2
- package/dist/src/mapper/MapperContainer.js.map +1 -1
- package/dist/src/mapper/delete/DeleteExecutor.js +3 -3
- package/dist/src/mapper/delete/DeleteExecutor.js.map +1 -1
- package/dist/src/mapper/insert/SqlCreateInputProcessor.d.ts +4 -2
- package/dist/src/mapper/insert/SqlCreateInputProcessor.d.ts.map +1 -1
- package/dist/src/mapper/insert/SqlCreateInputProcessor.js.map +1 -1
- package/dist/src/mapper/select/JoinVisitor.d.ts +6 -6
- package/dist/src/mapper/select/JoinVisitor.d.ts.map +1 -1
- package/dist/src/mapper/select/JoinVisitor.js +6 -6
- package/dist/src/mapper/select/JoinVisitor.js.map +1 -1
- package/dist/src/mapper/select/RelationFetcher.d.ts +11 -19
- package/dist/src/mapper/select/RelationFetcher.d.ts.map +1 -1
- package/dist/src/mapper/select/RelationFetcher.js +34 -25
- package/dist/src/mapper/select/RelationFetcher.js.map +1 -1
- package/dist/src/mapper/select/SelectBuilder.d.ts +2 -1
- package/dist/src/mapper/select/SelectBuilder.d.ts.map +1 -1
- package/dist/src/mapper/select/SelectBuilder.js +4 -2
- package/dist/src/mapper/select/SelectBuilder.js.map +1 -1
- package/dist/src/mapper/select/SelectBuilderFactory.d.ts +2 -1
- package/dist/src/mapper/select/SelectBuilderFactory.d.ts.map +1 -1
- package/dist/src/mapper/select/SelectExecutionHandler.d.ts +1 -0
- package/dist/src/mapper/select/SelectExecutionHandler.d.ts.map +1 -1
- package/dist/src/mapper/select/WhereBuilder.d.ts +3 -2
- package/dist/src/mapper/select/WhereBuilder.d.ts.map +1 -1
- package/dist/src/mapper/select/WhereBuilder.js +29 -24
- package/dist/src/mapper/select/WhereBuilder.js.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts +9 -8
- package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitor.js +33 -25
- package/dist/src/mapper/select/handlers/FieldsVisitor.js.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitorFactory.d.ts.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitorFactory.js +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitorFactory.js.map +1 -1
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.d.ts.map +1 -1
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.js +6 -0
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.js.map +1 -1
- package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts +2 -1
- package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts.map +1 -1
- package/dist/src/mapper/select/optimizer/WhereOptimizer.js +52 -20
- package/dist/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -1
- package/dist/src/mapper/select/optimizer/WhereReplacer.d.ts +4 -1
- package/dist/src/mapper/select/optimizer/WhereReplacer.d.ts.map +1 -1
- package/dist/src/mapper/select/optimizer/WhereReplacer.js +4 -3
- package/dist/src/mapper/select/optimizer/WhereReplacer.js.map +1 -1
- package/dist/src/mapper/update/SqlUpdateInputProcessor.d.ts +2 -3
- package/dist/src/mapper/update/SqlUpdateInputProcessor.d.ts.map +1 -1
- package/dist/src/mapper/update/SqlUpdateInputProcessor.js.map +1 -1
- package/dist/src/mapper/update/UpdateBuilder.js +3 -3
- package/dist/src/mapper/update/UpdateBuilder.js.map +1 -1
- 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/schema/FieldAccessVisitor.d.ts +2 -2
- package/dist/src/schema/FieldAccessVisitor.d.ts.map +1 -1
- package/dist/src/schema/FieldAccessVisitor.js +2 -2
- package/dist/src/schema/FieldAccessVisitor.js.map +1 -1
- package/dist/src/schema/OrderByTypeProvider.js +1 -1
- package/dist/src/schema/OrderByTypeProvider.js.map +1 -1
- package/dist/src/schema/WhereTypeProvider.js +4 -4
- package/dist/src/schema/WhereTypeProvider.js.map +1 -1
- package/dist/src/schema/entities/FieldArgsVisitor.d.ts +3 -3
- package/dist/src/schema/entities/FieldArgsVisitor.d.ts.map +1 -1
- package/dist/src/schema/entities/FieldArgsVisitor.js +3 -3
- package/dist/src/schema/entities/FieldArgsVisitor.js.map +1 -1
- package/dist/src/schema/entities/FieldTypeVisitor.d.ts +3 -3
- package/dist/src/schema/entities/FieldTypeVisitor.d.ts.map +1 -1
- package/dist/src/schema/entities/FieldTypeVisitor.js +3 -3
- package/dist/src/schema/entities/FieldTypeVisitor.js.map +1 -1
- package/dist/src/schema/mutations/CreateEntityInputFieldVisitor.d.ts +3 -3
- package/dist/src/schema/mutations/CreateEntityInputFieldVisitor.d.ts.map +1 -1
- package/dist/src/schema/mutations/CreateEntityInputFieldVisitor.js +3 -3
- package/dist/src/schema/mutations/CreateEntityInputFieldVisitor.js.map +1 -1
- package/dist/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.d.ts +6 -6
- package/dist/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.d.ts.map +1 -1
- package/dist/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.js +6 -6
- package/dist/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.js.map +1 -1
- package/dist/src/schema/mutations/CreateEntityRelationInputFieldVisitor.d.ts +3 -3
- package/dist/src/schema/mutations/CreateEntityRelationInputFieldVisitor.d.ts.map +1 -1
- package/dist/src/schema/mutations/CreateEntityRelationInputFieldVisitor.js +5 -5
- package/dist/src/schema/mutations/CreateEntityRelationInputFieldVisitor.js.map +1 -1
- package/dist/src/schema/mutations/UpdateEntityInputFieldVisitor.d.ts +10 -4
- package/dist/src/schema/mutations/UpdateEntityInputFieldVisitor.d.ts.map +1 -1
- package/dist/src/schema/mutations/UpdateEntityInputFieldVisitor.js +3 -3
- package/dist/src/schema/mutations/UpdateEntityInputFieldVisitor.js.map +1 -1
- package/dist/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.d.ts +6 -6
- package/dist/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.d.ts.map +1 -1
- package/dist/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.js +6 -6
- package/dist/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.js.map +1 -1
- package/dist/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.d.ts +2 -2
- package/dist/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.d.ts.map +1 -1
- package/dist/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.js +2 -2
- package/dist/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.js.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/src/utils/uniqueWhereFields.js +3 -3
- package/dist/src/utils/uniqueWhereFields.js.map +1 -1
- package/dist/tests/cases/unit/predicatesFactory.test.js +7 -1
- package/dist/tests/cases/unit/predicatesFactory.test.js.map +1 -1
- package/dist/tests/cases/unit/whereOptimizer.test.js +82 -0
- package/dist/tests/cases/unit/whereOptimizer.test.js.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/acl/PredicateFactory.ts +7 -14
- package/src/acl/PredicatesInjector.ts +13 -18
- package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.ts +17 -24
- package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.ts +1 -6
- package/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts +10 -28
- package/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.ts +6 -3
- package/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.ts +4 -22
- package/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts +10 -29
- package/src/input-validation/ColumnValueResolver.ts +2 -3
- package/src/input-validation/EntityRulesResolver.ts +4 -4
- package/src/input-validation/QueryAstFactory.ts +1 -1
- package/src/input-validation/ValidationDataSelector.ts +1 -1
- package/src/input-validation/preValidation/CreateInputPreValidationProcessor.ts +7 -8
- package/src/input-validation/preValidation/InputPreValidator.ts +4 -4
- package/src/input-validation/preValidation/UpdateInputPreValidationProcessor.ts +7 -8
- package/src/inputProcessing/CreateInputProcessor.ts +8 -9
- package/src/inputProcessing/CreateInputVisitor.ts +27 -89
- package/src/inputProcessing/UpdateInputProcessor.ts +8 -9
- package/src/inputProcessing/UpdateInputVisitor.ts +25 -71
- package/src/inputProcessing/index.ts +0 -1
- package/src/introspection/IntrospectionSchemaFactory.ts +7 -7
- package/src/mapper/Mapper.ts +36 -33
- package/src/mapper/MapperContainer.ts +3 -2
- package/src/mapper/delete/DeleteExecutor.ts +3 -3
- package/src/mapper/insert/SqlCreateInputProcessor.ts +3 -3
- package/src/mapper/select/JoinVisitor.ts +6 -33
- package/src/mapper/select/RelationFetcher.ts +49 -50
- package/src/mapper/select/SelectBuilder.ts +3 -1
- package/src/mapper/select/SelectBuilderFactory.ts +2 -1
- package/src/mapper/select/SelectExecutionHandler.ts +1 -0
- package/src/mapper/select/WhereBuilder.ts +45 -34
- package/src/mapper/select/handlers/FieldsVisitor.ts +32 -49
- package/src/mapper/select/handlers/FieldsVisitorFactory.ts +1 -0
- package/src/mapper/select/optimizer/ConditionOptimizer.ts +6 -0
- package/src/mapper/select/optimizer/WhereOptimizer.ts +58 -20
- package/src/mapper/select/optimizer/WhereReplacer.ts +8 -3
- package/src/mapper/update/SqlUpdateInputProcessor.ts +1 -1
- package/src/mapper/update/UpdateBuilder.ts +3 -3
- package/src/resolvers/MutationResolver.ts +1 -1
- package/src/resolvers/ReadHelpers.ts +3 -3
- package/src/resolvers/ReadResolver.ts +2 -2
- package/src/schema/FieldAccessVisitor.ts +2 -2
- package/src/schema/OrderByTypeProvider.ts +1 -1
- package/src/schema/WhereTypeProvider.ts +4 -4
- package/src/schema/entities/FieldArgsVisitor.ts +3 -3
- package/src/schema/entities/FieldTypeVisitor.ts +3 -3
- package/src/schema/mutations/CreateEntityInputFieldVisitor.ts +3 -6
- package/src/schema/mutations/CreateEntityRelationAllowedOperationsVisitor.ts +6 -20
- package/src/schema/mutations/CreateEntityRelationInputFieldVisitor.ts +5 -18
- package/src/schema/mutations/UpdateEntityInputFieldVisitor.ts +3 -6
- package/src/schema/mutations/UpdateEntityRelationAllowedOperationsVisitor.ts +6 -20
- package/src/schema/mutations/UpdateEntityRelationInputFieldVisitor.ts +2 -12
- package/src/utils/uniqueWhereFields.ts +3 -3
- package/tests/cases/unit/predicatesFactory.test.ts +8 -2
- package/tests/cases/unit/whereOptimizer.test.ts +94 -0
- package/dist/src/inputProcessing/InputContext.d.ts +0 -43
- package/dist/src/inputProcessing/InputContext.d.ts.map +0 -1
- package/dist/src/inputProcessing/InputContext.js +0 -3
- package/dist/src/inputProcessing/InputContext.js.map +0 -1
- package/src/inputProcessing/InputContext.ts +0 -49
|
@@ -3,15 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FieldsVisitor = void 0;
|
|
4
4
|
const schema_1 = require("@contember/schema");
|
|
5
5
|
class FieldsVisitor {
|
|
6
|
-
constructor(schema, relationFetcher, predicateFactory, whereBuilder, mapper, executionContext) {
|
|
6
|
+
constructor(schema, relationFetcher, predicateFactory, whereBuilder, mapper, executionContext, relationPath) {
|
|
7
7
|
this.schema = schema;
|
|
8
8
|
this.relationFetcher = relationFetcher;
|
|
9
9
|
this.predicateFactory = predicateFactory;
|
|
10
10
|
this.whereBuilder = whereBuilder;
|
|
11
11
|
this.mapper = mapper;
|
|
12
12
|
this.executionContext = executionContext;
|
|
13
|
+
this.relationPath = relationPath;
|
|
13
14
|
}
|
|
14
|
-
visitColumn(entity, column) {
|
|
15
|
+
visitColumn({ entity, column }) {
|
|
15
16
|
const columnPath = this.executionContext.path;
|
|
16
17
|
this.executionContext.addColumn(qb => {
|
|
17
18
|
const tableAlias = columnPath.back().alias;
|
|
@@ -27,51 +28,47 @@ class FieldsVisitor {
|
|
|
27
28
|
.else(elseExpr => elseExpr.raw('null'))), columnAlias));
|
|
28
29
|
});
|
|
29
30
|
}
|
|
30
|
-
visitManyHasManyInverse(
|
|
31
|
+
visitManyHasManyInverse(relationContext) {
|
|
31
32
|
const field = this.executionContext.objectNode;
|
|
32
33
|
if (!field) {
|
|
33
34
|
throw new Error();
|
|
34
35
|
}
|
|
35
|
-
this.executionContext.addData(entity.primary, async (ids) => this.relationFetcher.fetchManyHasManyGroups({
|
|
36
|
+
this.executionContext.addData(relationContext.entity.primary, async (ids) => this.relationFetcher.fetchManyHasManyGroups({
|
|
36
37
|
mapper: this.mapper,
|
|
37
38
|
field: field,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
targetRelation,
|
|
41
|
-
directionFrom: 'inverse',
|
|
39
|
+
relationContext,
|
|
40
|
+
relationPath: this.relationPath,
|
|
42
41
|
ids: ids,
|
|
43
42
|
}), []);
|
|
44
43
|
}
|
|
45
|
-
visitManyHasManyOwning(
|
|
44
|
+
visitManyHasManyOwning(relationContext) {
|
|
46
45
|
const field = this.executionContext.objectNode;
|
|
47
46
|
if (!field) {
|
|
48
47
|
throw new Error();
|
|
49
48
|
}
|
|
50
|
-
this.executionContext.addData(entity.primary, async (ids) => this.relationFetcher.fetchManyHasManyGroups({
|
|
49
|
+
this.executionContext.addData(relationContext.entity.primary, async (ids) => this.relationFetcher.fetchManyHasManyGroups({
|
|
51
50
|
mapper: this.mapper,
|
|
52
51
|
field: field,
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
targetRelation,
|
|
56
|
-
directionFrom: 'owning',
|
|
52
|
+
relationContext,
|
|
53
|
+
relationPath: this.relationPath,
|
|
57
54
|
ids: ids,
|
|
58
55
|
}), []);
|
|
59
56
|
}
|
|
60
|
-
visitOneHasMany(
|
|
57
|
+
visitOneHasMany(relationContext) {
|
|
61
58
|
const field = this.executionContext.objectNode;
|
|
62
59
|
if (!field) {
|
|
63
60
|
throw new Error();
|
|
64
61
|
}
|
|
65
|
-
this.executionContext.addData(entity.primary, async (ids) => this.relationFetcher.fetchOneHasManyGroups({
|
|
62
|
+
this.executionContext.addData(relationContext.entity.primary, async (ids) => this.relationFetcher.fetchOneHasManyGroups({
|
|
66
63
|
mapper: this.mapper,
|
|
67
64
|
objectNode: field,
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
targetRelation: targetRelation,
|
|
65
|
+
relationContext,
|
|
66
|
+
relationPath: this.relationPath,
|
|
71
67
|
ids: ids,
|
|
72
68
|
}), []);
|
|
73
69
|
}
|
|
74
|
-
visitOneHasOneInverse(
|
|
70
|
+
visitOneHasOneInverse(relationContext) {
|
|
71
|
+
const { entity, targetRelation, targetEntity } = relationContext;
|
|
75
72
|
this.executionContext.addData(entity.primary, async (ids) => {
|
|
76
73
|
const idsWhere = {
|
|
77
74
|
[targetRelation.name]: {
|
|
@@ -88,10 +85,14 @@ class FieldsVisitor {
|
|
|
88
85
|
and: [idsWhere, field.args.filter].filter((it) => it !== undefined),
|
|
89
86
|
};
|
|
90
87
|
const objectWithWhere = field.withArg('filter', where);
|
|
91
|
-
return this.mapper.
|
|
88
|
+
return this.mapper.selectAssoc(targetEntity, objectWithWhere, [
|
|
89
|
+
...this.relationPath,
|
|
90
|
+
relationContext,
|
|
91
|
+
], targetRelation.name);
|
|
92
92
|
}, null);
|
|
93
93
|
}
|
|
94
|
-
visitOneHasOneOwning(
|
|
94
|
+
visitOneHasOneOwning(relationContext) {
|
|
95
|
+
const { relation, targetEntity } = relationContext;
|
|
95
96
|
this.executionContext.addData(relation.name, async (ids) => {
|
|
96
97
|
const idsWhere = {
|
|
97
98
|
[targetEntity.primary]: {
|
|
@@ -106,10 +107,14 @@ class FieldsVisitor {
|
|
|
106
107
|
and: [idsWhere, objectNode.args.filter].filter((it) => it !== undefined),
|
|
107
108
|
};
|
|
108
109
|
const objectWithWhere = objectNode.withArg('filter', where);
|
|
109
|
-
return this.mapper.
|
|
110
|
+
return this.mapper.selectAssoc(targetEntity, objectWithWhere, [
|
|
111
|
+
...this.relationPath,
|
|
112
|
+
relationContext,
|
|
113
|
+
], targetEntity.primary);
|
|
110
114
|
}, null);
|
|
111
115
|
}
|
|
112
|
-
visitManyHasOne(
|
|
116
|
+
visitManyHasOne(relationContext) {
|
|
117
|
+
const { relation, targetEntity } = relationContext;
|
|
113
118
|
this.executionContext.addData(relation.name, async (ids) => {
|
|
114
119
|
const idsWhere = {
|
|
115
120
|
[targetEntity.primary]: {
|
|
@@ -124,7 +129,10 @@ class FieldsVisitor {
|
|
|
124
129
|
and: [idsWhere, objectNode.args.filter].filter((it) => it !== undefined),
|
|
125
130
|
};
|
|
126
131
|
const objectWithWhere = objectNode.withArg('filter', where);
|
|
127
|
-
return this.mapper.
|
|
132
|
+
return this.mapper.selectAssoc(targetEntity, objectWithWhere, [
|
|
133
|
+
...this.relationPath,
|
|
134
|
+
relationContext,
|
|
135
|
+
], targetEntity.primary);
|
|
128
136
|
}, null);
|
|
129
137
|
}
|
|
130
138
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldsVisitor.js","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitor.ts"],"names":[],"mappings":";;;AAAA,8CAAqD;AAOrD,MAAa,aAAa;IACzB,YACkB,MAAoB,EACpB,eAAgC,EAChC,gBAAkC,EAClC,YAA0B,EAC1B,MAAc,EACd,gBAA+C
|
|
1
|
+
{"version":3,"file":"FieldsVisitor.js","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldsVisitorFactory.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitorFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAE9C,qBAAa,oBAAoB;IAE/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAHZ,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY;IAG5C,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,6BAA6B,GAAG,aAAa;
|
|
1
|
+
{"version":3,"file":"FieldsVisitorFactory.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitorFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAE9C,qBAAa,oBAAoB;IAE/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAHZ,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY;IAG5C,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,6BAA6B,GAAG,aAAa;CAW7E"}
|
|
@@ -10,7 +10,7 @@ class FieldsVisitorFactory {
|
|
|
10
10
|
this.whereBuilder = whereBuilder;
|
|
11
11
|
}
|
|
12
12
|
create(mapper, context) {
|
|
13
|
-
return new FieldsVisitor_1.FieldsVisitor(this.schema, this.relationFetcher, this.predicateFactory, this.whereBuilder, mapper, context);
|
|
13
|
+
return new FieldsVisitor_1.FieldsVisitor(this.schema, this.relationFetcher, this.predicateFactory, this.whereBuilder, mapper, context, context.relationPath);
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
exports.FieldsVisitorFactory = FieldsVisitorFactory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldsVisitorFactory.js","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitorFactory.ts"],"names":[],"mappings":";;;AAAA,mDAA+C;AAQ/C,MAAa,oBAAoB;IAChC,YACkB,MAAoB,EACpB,eAAgC,EAChC,gBAAkC,EAClC,YAA0B;QAH1B,WAAM,GAAN,MAAM,CAAc;QACpB,oBAAe,GAAf,eAAe,CAAiB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,iBAAY,GAAZ,YAAY,CAAc;IACzC,CAAC;IAEJ,MAAM,CAAC,MAAc,EAAE,OAAsC;QAC5D,OAAO,IAAI,6BAAa,CACvB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,YAAY,EACjB,MAAM,EACN,OAAO,
|
|
1
|
+
{"version":3,"file":"FieldsVisitorFactory.js","sourceRoot":"","sources":["../../../../../src/mapper/select/handlers/FieldsVisitorFactory.ts"],"names":[],"mappings":";;;AAAA,mDAA+C;AAQ/C,MAAa,oBAAoB;IAChC,YACkB,MAAoB,EACpB,eAAgC,EAChC,gBAAkC,EAClC,YAA0B;QAH1B,WAAM,GAAN,MAAM,CAAc;QACpB,oBAAe,GAAf,eAAe,CAAiB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,iBAAY,GAAZ,YAAY,CAAc;IACzC,CAAC;IAEJ,MAAM,CAAC,MAAc,EAAE,OAAsC;QAC5D,OAAO,IAAI,6BAAa,CACvB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,YAAY,EACjB,MAAM,EACN,OAAO,EACP,OAAO,CAAC,YAAY,CACpB,CAAA;IACF,CAAC;CACD;AAnBD,oDAmBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionOptimizer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/ConditionOptimizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAKzC,qBAAa,kBAAkB;IACvB,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,OAAO;
|
|
1
|
+
{"version":3,"file":"ConditionOptimizer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/ConditionOptimizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAKzC,qBAAa,kBAAkB;IACvB,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,OAAO;CAkChG"}
|
|
@@ -20,6 +20,12 @@ class ConditionOptimizer {
|
|
|
20
20
|
else if (key === 'or') {
|
|
21
21
|
return (0, helpers_1.optimizeOr)(value.map(it => this.optimize(it)));
|
|
22
22
|
}
|
|
23
|
+
else if (key === 'in' && value.length === 0) {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
else if (key === 'notIn' && value.length === 0) {
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
23
29
|
else if (key === 'not') {
|
|
24
30
|
return (0, helpers_1.optimizeNot)(this.optimize(value));
|
|
25
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionOptimizer.js","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/ConditionOptimizer.ts"],"names":[],"mappings":";;;AACA,uCAAgE;AAIhE,MAAa,kBAAkB;IACvB,QAAQ,CAAC,SAA0B;QACzC,IAAI,SAAS,CAAC,KAAK,EAAE;YACpB,OAAO,KAAK,CAAA;SACZ;QAED,OAAO,IAAA,qBAAW,EAChB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAqC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACnF,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;gBAC1C,OAAO,SAAS,CAAA;aAEhB;iBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE;gBAC5B,OAAO,IAAI,CAAA;aAEX;iBAAM,IAAI,GAAG,KAAK,KAAK,EAAE;gBACzB,OAAO,IAAA,qBAAW,EAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;aAEtD;iBAAM,IAAI,GAAG,KAAK,IAAI,EAAE;gBACxB,OAAO,IAAA,oBAAU,EAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;aAErD;iBAAM,IAAI,GAAG,KAAK,KAAK,EAAE;gBACzB,OAAO,IAAA,qBAAW,EAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;aAExC;iBAAM;gBACN,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAA;aACvB;QACF,CAAC,CAAC,CACF,CAAA;IACF,CAAC;CACD;
|
|
1
|
+
{"version":3,"file":"ConditionOptimizer.js","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/ConditionOptimizer.ts"],"names":[],"mappings":";;;AACA,uCAAgE;AAIhE,MAAa,kBAAkB;IACvB,QAAQ,CAAC,SAA0B;QACzC,IAAI,SAAS,CAAC,KAAK,EAAE;YACpB,OAAO,KAAK,CAAA;SACZ;QAED,OAAO,IAAA,qBAAW,EAChB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAqC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACnF,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;gBAC1C,OAAO,SAAS,CAAA;aAEhB;iBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE;gBAC5B,OAAO,IAAI,CAAA;aAEX;iBAAM,IAAI,GAAG,KAAK,KAAK,EAAE;gBACzB,OAAO,IAAA,qBAAW,EAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;aAEtD;iBAAM,IAAI,GAAG,KAAK,IAAI,EAAE;gBACxB,OAAO,IAAA,oBAAU,EAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;aAErD;iBAAM,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC9C,OAAO,KAAK,CAAA;aAEZ;iBAAM,IAAI,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACjD,OAAO,IAAI,CAAA;aAEX;iBAAM,IAAI,GAAG,KAAK,KAAK,EAAE;gBACzB,OAAO,IAAA,qBAAW,EAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;aAExC;iBAAM;gBACN,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAA;aACvB;QACF,CAAC,CAAC,CACF,CAAA;IACF,CAAC;CACD;AAnCD,gDAmCC"}
|
|
@@ -3,8 +3,9 @@ import { ConditionOptimizer } from './ConditionOptimizer';
|
|
|
3
3
|
export declare class WhereOptimizer {
|
|
4
4
|
private readonly model;
|
|
5
5
|
private readonly conditionOptimizer;
|
|
6
|
+
private static eliminableRelations;
|
|
6
7
|
constructor(model: Model.Schema, conditionOptimizer: ConditionOptimizer);
|
|
7
|
-
optimize(where: Input.OptionalWhere, entity: Model.Entity): Input.Where;
|
|
8
|
+
optimize(where: Input.OptionalWhere, entity: Model.Entity, relationPath?: Model.AnyRelationContext[]): Input.Where;
|
|
8
9
|
private optimizeWhere;
|
|
9
10
|
private optimizeOr;
|
|
10
11
|
private optimizeAnd;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhereOptimizer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereOptimizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"WhereOptimizer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereOptimizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAYzD,qBAAa,cAAc;IAIzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAJpC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAmG;gBAGnH,KAAK,EAAE,KAAK,CAAC,MAAM,EACnB,kBAAkB,EAAE,kBAAkB;IAIjD,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,YAAY,GAAE,KAAK,CAAC,kBAAkB,EAAO,GAAG,KAAK,CAAC,KAAK;IAoB7H,OAAO,CAAC,aAAa;IAwBrB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,iBAAiB;CAoCzB"}
|
|
@@ -9,61 +9,76 @@ class WhereOptimizer {
|
|
|
9
9
|
this.model = model;
|
|
10
10
|
this.conditionOptimizer = conditionOptimizer;
|
|
11
11
|
}
|
|
12
|
-
optimize(where, entity) {
|
|
13
|
-
|
|
12
|
+
optimize(where, entity, relationPath = []) {
|
|
13
|
+
let processedRelationPath = [];
|
|
14
|
+
for (const i in relationPath) {
|
|
15
|
+
const el = relationPath[i];
|
|
16
|
+
if (!WhereOptimizer.eliminableRelations.has(el.type)) {
|
|
17
|
+
processedRelationPath = [];
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
processedRelationPath.push({ ...el, canEliminate: true, isLast: Number(i) === relationPath.length });
|
|
21
|
+
}
|
|
22
|
+
processedRelationPath.push({ ...el, canEliminate: true, isLast: Number(i) === relationPath.length });
|
|
23
|
+
}
|
|
24
|
+
const result = this.optimizeWhere(where, entity, processedRelationPath);
|
|
14
25
|
if (typeof result === 'boolean') {
|
|
15
26
|
return { [entity.primary]: { [result ? 'always' : 'never']: true } };
|
|
16
27
|
}
|
|
17
28
|
return result;
|
|
18
29
|
}
|
|
19
|
-
optimizeWhere(where, entity) {
|
|
30
|
+
optimizeWhere(where, entity, relationPath) {
|
|
20
31
|
return this.optimizeAnd(Object.entries(where).map(([key, value]) => {
|
|
21
32
|
if (value === undefined || value === null) {
|
|
22
33
|
return undefined;
|
|
23
34
|
}
|
|
24
35
|
else if (key === 'and') {
|
|
25
|
-
return this.optimizeAnd(value.map(it => this.optimizeWhere(it, entity)), entity);
|
|
36
|
+
return this.optimizeAnd(value.map(it => this.optimizeWhere(it, entity, relationPath)), entity, relationPath);
|
|
26
37
|
}
|
|
27
38
|
else if (key === 'or') {
|
|
28
|
-
return this.optimizeOr(value.map(it => this.optimizeWhere(it, entity)), entity);
|
|
39
|
+
return this.optimizeOr(value.map(it => this.optimizeWhere(it, entity, relationPath)), entity, relationPath);
|
|
29
40
|
}
|
|
30
41
|
else if (key === 'not') {
|
|
31
|
-
return (0, helpers_1.optimizeNot)(this.optimizeWhere(value, entity));
|
|
42
|
+
return (0, helpers_1.optimizeNot)(this.optimizeWhere(value, entity, relationPath));
|
|
32
43
|
}
|
|
33
44
|
else {
|
|
34
|
-
return this.resolveFieldValue(entity, key, value);
|
|
45
|
+
return this.resolveFieldValue(entity, key, value, relationPath);
|
|
35
46
|
}
|
|
36
|
-
}), entity);
|
|
47
|
+
}), entity, relationPath);
|
|
37
48
|
}
|
|
38
|
-
optimizeOr(operands, entity) {
|
|
49
|
+
optimizeOr(operands, entity, relationPath) {
|
|
39
50
|
const optimized = (0, helpers_1.optimizeOr)(operands);
|
|
40
51
|
if (typeof optimized === 'boolean' || !Array.isArray(optimized.or)) {
|
|
41
52
|
return optimized;
|
|
42
53
|
}
|
|
43
|
-
const result = this.crossOptimize(optimized.or, entity, { never: true });
|
|
44
|
-
return (0, helpers_1.optimizeOr)(result
|
|
54
|
+
const result = this.crossOptimize(optimized.or, entity, { never: true }, relationPath);
|
|
55
|
+
return (0, helpers_1.optimizeOr)(result);
|
|
45
56
|
}
|
|
46
|
-
optimizeAnd(operands, entity) {
|
|
57
|
+
optimizeAnd(operands, entity, relationPath) {
|
|
47
58
|
const optimized = (0, helpers_1.optimizeAnd)(operands);
|
|
48
59
|
if (typeof optimized === 'boolean' || !Array.isArray(optimized.and)) {
|
|
49
60
|
return optimized;
|
|
50
61
|
}
|
|
51
|
-
const result = this.crossOptimize(optimized.and, entity, { always: true });
|
|
52
|
-
return (0, helpers_1.optimizeAnd)(result
|
|
62
|
+
const result = this.crossOptimize(optimized.and, entity, { always: true }, relationPath);
|
|
63
|
+
return (0, helpers_1.optimizeAnd)(result);
|
|
53
64
|
}
|
|
54
|
-
crossOptimize(operands, entity, replacement) {
|
|
65
|
+
crossOptimize(operands, entity, replacement, relationPath) {
|
|
55
66
|
const result = [...operands];
|
|
56
67
|
const count = result.length;
|
|
57
68
|
for (let i = 0; i < count; i++) {
|
|
58
69
|
for (let j = 0; j < count; j++) {
|
|
59
|
-
|
|
60
|
-
|
|
70
|
+
const a = result[j];
|
|
71
|
+
const b = result[i];
|
|
72
|
+
if (i !== j && typeof a !== 'boolean' && typeof b !== 'boolean') {
|
|
73
|
+
const tracker = { count: 0 };
|
|
74
|
+
const elResult = (0, WhereReplacer_1.replaceWhere)(a, b, { [entity.primary]: replacement }, tracker);
|
|
75
|
+
result[j] = tracker.count > 0 ? this.optimizeWhere(elResult, entity, relationPath) : elResult;
|
|
61
76
|
}
|
|
62
77
|
}
|
|
63
78
|
}
|
|
64
79
|
return result;
|
|
65
80
|
}
|
|
66
|
-
resolveFieldValue(entity, key, value) {
|
|
81
|
+
resolveFieldValue(entity, key, value, relationPath) {
|
|
67
82
|
return (0, schema_utils_1.acceptFieldVisitor)(this.model, entity, key, {
|
|
68
83
|
visitColumn: () => {
|
|
69
84
|
const optimizedCondition = this.conditionOptimizer.optimize(value);
|
|
@@ -72,8 +87,24 @@ class WhereOptimizer {
|
|
|
72
87
|
}
|
|
73
88
|
return { [key]: optimizedCondition };
|
|
74
89
|
},
|
|
75
|
-
visitRelation:
|
|
76
|
-
|
|
90
|
+
visitRelation: context => {
|
|
91
|
+
var _a;
|
|
92
|
+
const { targetEntity, relation } = context;
|
|
93
|
+
let where = value;
|
|
94
|
+
const newRelationPath = [...relationPath];
|
|
95
|
+
if (relationPath.length && ((_a = relationPath[relationPath.length - 1].targetRelation) === null || _a === void 0 ? void 0 : _a.name) === relation.name) {
|
|
96
|
+
const item = newRelationPath.pop();
|
|
97
|
+
if ((item === null || item === void 0 ? void 0 : item.canEliminate) && (item.type === 'oneHasMany' || item.type === 'oneHasOneOwning' || item.type === 'oneHasOneInverse')) {
|
|
98
|
+
where = (0, WhereReplacer_1.replaceWhere)(where, { [targetEntity.primary]: { isNull: true } }, { [targetEntity.primary]: { never: true } });
|
|
99
|
+
where = (0, WhereReplacer_1.replaceWhere)(where, { [targetEntity.primary]: { isNull: false } }, { [targetEntity.primary]: { always: true } });
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
// first level relation - we are sure root exists
|
|
104
|
+
const canEliminate = relationPath.length === 0 || relationPath[relationPath.length - 1].isLast;
|
|
105
|
+
newRelationPath.push({ ...context, isLast: false, canEliminate });
|
|
106
|
+
}
|
|
107
|
+
const optimizedWhere = this.optimizeWhere(where, targetEntity, newRelationPath);
|
|
77
108
|
if (typeof optimizedWhere === 'boolean') {
|
|
78
109
|
return optimizedWhere;
|
|
79
110
|
}
|
|
@@ -83,4 +114,5 @@ class WhereOptimizer {
|
|
|
83
114
|
}
|
|
84
115
|
}
|
|
85
116
|
exports.WhereOptimizer = WhereOptimizer;
|
|
117
|
+
WhereOptimizer.eliminableRelations = new Set(['oneHasMany', 'oneHasOneInverse', 'oneHasOneOwning']);
|
|
86
118
|
//# sourceMappingURL=WhereOptimizer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhereOptimizer.js","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereOptimizer.ts"],"names":[],"mappings":";;;AAEA,0DAA4D;AAC5D,uCAAgE;AAChE,mDAA8C;
|
|
1
|
+
{"version":3,"file":"WhereOptimizer.js","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereOptimizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import { Input } from '@contember/schema';
|
|
2
|
-
export
|
|
2
|
+
export interface ReplaceWhereResult {
|
|
3
|
+
count: number;
|
|
4
|
+
}
|
|
5
|
+
export declare const replaceWhere: (subject: Input.Where, find: Input.Where, replace: Input.Where, resultTracker?: ReplaceWhereResult) => Input.Where;
|
|
3
6
|
//# sourceMappingURL=WhereReplacer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhereReplacer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereReplacer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,mBAAmB,CAAA;AAGnD,eAAO,MAAM,YAAY,YAAa,MAAM,KAAK,QAAQ,MAAM,KAAK,WAAW,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"WhereReplacer.d.ts","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereReplacer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,mBAAmB,CAAA;AAGnD,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAA;CACb;AAED,eAAO,MAAM,YAAY,YAAa,MAAM,KAAK,QAAQ,MAAM,KAAK,WAAW,MAAM,KAAK,kBAAiB,kBAAkB,KAAkB,MAAM,KAmBpJ,CAAA"}
|
|
@@ -5,17 +5,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.replaceWhere = void 0;
|
|
7
7
|
const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
|
|
8
|
-
const replaceWhere = (subject, find, replace) => {
|
|
8
|
+
const replaceWhere = (subject, find, replace, resultTracker = { count: 0 }) => {
|
|
9
9
|
if ((0, fast_deep_equal_1.default)(subject, find)) {
|
|
10
|
+
resultTracker.count++;
|
|
10
11
|
return replace;
|
|
11
12
|
}
|
|
12
13
|
const result = {};
|
|
13
14
|
for (const [key, value] of Object.entries(subject)) {
|
|
14
15
|
if (key === 'not') {
|
|
15
|
-
result['not'] = (0, exports.replaceWhere)(value, find, replace);
|
|
16
|
+
result['not'] = (0, exports.replaceWhere)(value, find, replace, resultTracker);
|
|
16
17
|
}
|
|
17
18
|
else if (key === 'and' || key === 'or') {
|
|
18
|
-
result[key] = value.map(it => (0, exports.replaceWhere)(it, find, replace));
|
|
19
|
+
result[key] = value.map(it => (0, exports.replaceWhere)(it, find, replace, resultTracker));
|
|
19
20
|
}
|
|
20
21
|
else {
|
|
21
22
|
result[key] = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhereReplacer.js","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereReplacer.ts"],"names":[],"mappings":";;;;;;AACA,sEAAuC;
|
|
1
|
+
{"version":3,"file":"WhereReplacer.js","sourceRoot":"","sources":["../../../../../src/mapper/select/optimizer/WhereReplacer.ts"],"names":[],"mappings":";;;;;;AACA,sEAAuC;AAMhC,MAAM,YAAY,GAAG,CAAC,OAAoB,EAAE,IAAiB,EAAE,OAAoB,EAAE,gBAAoC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAe,EAAE;IAC5J,IAAI,IAAA,yBAAS,EAAC,OAAO,EAAE,IAAI,CAAC,EAAE;QAC7B,aAAa,CAAC,KAAK,EAAE,CAAA;QACrB,OAAO,OAAO,CAAA;KACd;IACD,MAAM,MAAM,GAA0B,EAAE,CAAA;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACnD,IAAI,GAAG,KAAK,KAAK,EAAE;YAClB,MAAM,CAAC,KAAK,CAAC,GAAG,IAAA,oBAAY,EAAC,KAAoB,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;SAEhF;aAAM,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,IAAI,EAAE;YACzC,MAAM,CAAC,GAAG,CAAC,GAAI,KAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAA,oBAAY,EAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAA;SAEhG;aAAM;YACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;SACnB;KAED;IACD,OAAO,MAAM,CAAA;AACd,CAAC,CAAA;AAnBY,QAAA,YAAY,gBAmBxB"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { Input } from '@contember/schema';
|
|
1
|
+
import { Input, Model } from '@contember/schema';
|
|
2
2
|
import { Mapper } from '../Mapper';
|
|
3
3
|
import { UpdateBuilder } from './UpdateBuilder';
|
|
4
4
|
import { UpdateInputProcessor } from '../../inputProcessing';
|
|
5
|
-
import * as Context from '../../inputProcessing';
|
|
6
5
|
import { MutationResultList } from '../Result';
|
|
7
6
|
export declare class SqlUpdateInputProcessor implements UpdateInputProcessor<MutationResultList> {
|
|
8
7
|
private readonly primaryValue;
|
|
@@ -10,7 +9,7 @@ export declare class SqlUpdateInputProcessor implements UpdateInputProcessor<Mut
|
|
|
10
9
|
private readonly updateBuilder;
|
|
11
10
|
private readonly mapper;
|
|
12
11
|
constructor(primaryValue: Input.PrimaryValue, data: Input.UpdateDataInput, updateBuilder: UpdateBuilder, mapper: Mapper);
|
|
13
|
-
column({ entity, column }:
|
|
12
|
+
column({ entity, column }: Model.ColumnContext): Promise<never[]>;
|
|
14
13
|
manyHasManyInverse: UpdateInputProcessor<MutationResultList>['manyHasManyInverse'];
|
|
15
14
|
manyHasManyOwning: UpdateInputProcessor<MutationResultList>['manyHasManyOwning'];
|
|
16
15
|
manyHasOne: UpdateInputProcessor<MutationResultList>['manyHasOne'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqlUpdateInputProcessor.d.ts","sourceRoot":"","sources":["../../../../src/mapper/update/SqlUpdateInputProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"SqlUpdateInputProcessor.d.ts","sourceRoot":"","sources":["../../../../src/mapper/update/SqlUpdateInputProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAS,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAE5D,OAAO,EAMN,kBAAkB,EAGlB,MAAM,WAAW,CAAA;AAMlB,qBAAa,uBAAwB,YAAW,oBAAoB,CAAC,kBAAkB,CAAC;IAEtF,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHN,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,IAAI,EAAE,KAAK,CAAC,eAAe,EAC3B,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM;IAGzB,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,aAAa;IAOrD,kBAAkB,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,oBAAoB,CAAC,CAgEjF;IAED,iBAAiB,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,mBAAmB,CAAC,CAyD/E;IAED,UAAU,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,CA2FjE;IAED,UAAU,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,CAoDjE;IAED,gBAAgB,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CA0D7E;IAED,eAAe,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,iBAAiB,CAAC,CA+J3E;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqlUpdateInputProcessor.js","sourceRoot":"","sources":["../../../../src/mapper/update/SqlUpdateInputProcessor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SqlUpdateInputProcessor.js","sourceRoot":"","sources":["../../../../src/mapper/update/SqlUpdateInputProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,9 +51,9 @@ class UpdateBuilder {
|
|
|
51
51
|
qb = resolvedData.reduce((qb, value) => qb.select(expr => expr.selectValue(value.resolvedValue, value.columnType), value.columnName), qb);
|
|
52
52
|
const columns = new Set(resolvedData.map(it => it.columnName));
|
|
53
53
|
const allColumns = Object.values((0, schema_utils_1.acceptEveryFieldVisitor)(this.schema, this.entity, {
|
|
54
|
-
visitColumn: (
|
|
55
|
-
visitManyHasOne: (
|
|
56
|
-
visitOneHasOneOwning: (
|
|
54
|
+
visitColumn: ({ column }) => column.columnName,
|
|
55
|
+
visitManyHasOne: ({ relation }) => relation.joiningColumn.columnName,
|
|
56
|
+
visitOneHasOneOwning: ({ relation }) => relation.joiningColumn.columnName,
|
|
57
57
|
visitManyHasManyInverse: () => null,
|
|
58
58
|
visitManyHasManyOwning: () => null,
|
|
59
59
|
visitOneHasOneInverse: () => null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateBuilder.js","sourceRoot":"","sources":["../../../../src/mapper/update/UpdateBuilder.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"UpdateBuilder.js","sourceRoot":"","sources":["../../../../src/mapper/update/UpdateBuilder.ts"],"names":[],"mappings":"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"}
|