@contember/engine-content-api 1.2.0-alpha.1 → 1.2.0-alpha.12
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 +9 -0
- package/dist/src/acl/EvaluatedPredicateReplacer.d.ts.map +1 -0
- package/dist/src/acl/EvaluatedPredicateReplacer.js +31 -0
- package/dist/src/acl/EvaluatedPredicateReplacer.js.map +1 -0
- package/dist/src/acl/PermissionFactory.d.ts.map +1 -1
- package/dist/src/acl/PermissionFactory.js +15 -11
- package/dist/src/acl/PermissionFactory.js.map +1 -1
- 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 +17 -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 +16 -19
- 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 -14
- 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 +5 -16
- package/dist/src/acl/VariableUtils.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 +29 -20
- 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 +29 -20
- 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 +7 -7
- 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/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/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/introspection/content-schema.types.d.ts +19 -223
- package/dist/src/introspection/content-schema.types.d.ts.map +1 -1
- package/dist/src/introspection/content-schema.types.js +2 -2
- package/dist/src/introspection/content-schema.types.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 +7 -4
- 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 +32 -5
- package/dist/src/mapper/select/RelationFetcher.d.ts.map +1 -1
- package/dist/src/mapper/select/RelationFetcher.js +37 -15
- 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 +8 -3
- package/dist/src/mapper/select/WhereBuilder.d.ts.map +1 -1
- package/dist/src/mapper/select/WhereBuilder.js +71 -25
- 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 +45 -24
- 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 +5 -0
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.d.ts.map +1 -0
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.js +39 -0
- package/dist/src/mapper/select/optimizer/ConditionOptimizer.js.map +1 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts +15 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.d.ts.map +1 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.js +118 -0
- package/dist/src/mapper/select/optimizer/WhereOptimizer.js.map +1 -0
- package/dist/src/mapper/select/optimizer/WhereReplacer.d.ts +6 -0
- package/dist/src/mapper/select/optimizer/WhereReplacer.d.ts.map +1 -0
- package/dist/src/mapper/select/optimizer/WhereReplacer.js +28 -0
- package/dist/src/mapper/select/optimizer/WhereReplacer.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 +72 -0
- package/dist/src/mapper/select/optimizer/helpers.js.map +1 -0
- 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/GraphQlQueryAstFactory.js +2 -2
- package/dist/src/resolvers/GraphQlQueryAstFactory.js.map +1 -1
- package/dist/src/resolvers/MutationResolver.js +15 -15
- package/dist/src/resolvers/MutationResolver.js.map +1 -1
- package/dist/src/resolvers/ReadHelpers.js +10 -10
- 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/MutationProvider.js +4 -4
- package/dist/src/schema/MutationProvider.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/QueryProvider.js +3 -3
- package/dist/src/schema/QueryProvider.js.map +1 -1
- package/dist/src/schema/ResultSchemaTypeProvider.d.ts +2 -2
- package/dist/src/schema/ResultSchemaTypeProvider.d.ts.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 +7 -7
- 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/object.d.ts.map +1 -1
- package/dist/src/utils/object.js +3 -4
- package/dist/src/utils/object.js.map +1 -1
- package/dist/src/utils/uniqueWhereFields.js +3 -3
- package/dist/src/utils/uniqueWhereFields.js.map +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 -1
- 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 -2
- 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 -1
- 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 -6
- 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 -1
- 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 -6
- package/dist/tests/cases/integration/graphQlRequests/update/acl/aclUpdate.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlSchema/graphQlSchemaBuilder.test.js +6 -3
- package/dist/tests/cases/integration/graphQlSchema/graphQlSchemaBuilder.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlSchema/model.js.map +1 -1
- package/dist/tests/cases/unit/aclVariablesFactory.test.js +7 -33
- 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 +118 -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/permissionMerger.test.js +2 -0
- package/dist/tests/cases/unit/permissionMerger.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 +109 -0
- package/dist/tests/cases/unit/predicatesFactory.test.js.map +1 -0
- package/dist/tests/cases/unit/predicatesInjector.test.js +88 -14
- package/dist/tests/cases/unit/predicatesInjector.test.js.map +1 -1
- package/dist/tests/cases/unit/variableInjector.test.js +4 -3
- package/dist/tests/cases/unit/variableInjector.test.js.map +1 -1
- package/dist/tests/cases/unit/whereBuilder.test.d.ts +2 -0
- package/dist/tests/cases/unit/whereBuilder.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/whereBuilder.test.js +75 -0
- package/dist/tests/cases/unit/whereBuilder.test.js.map +1 -0
- 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 +265 -0
- package/dist/tests/cases/unit/whereOptimizer.test.js.map +1 -0
- package/dist/tests/src/testGraphql.d.ts.map +1 -1
- package/dist/tests/src/testGraphql.js +10 -2
- package/dist/tests/src/testGraphql.js.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/graphql.codegen.yml +0 -3
- package/package.json +16 -16
- package/src/acl/EvaluatedPredicateReplacer.ts +32 -0
- package/src/acl/PermissionFactory.ts +18 -13
- package/src/acl/PredicateFactory.ts +32 -8
- package/src/acl/PredicatesInjector.ts +25 -17
- package/src/acl/VariableInjector.ts +2 -15
- package/src/acl/VariableUtils.ts +7 -23
- package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducerExecutionHandler.ts +17 -24
- package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.ts +1 -6
- package/src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts +26 -46
- package/src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.ts +6 -3
- package/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.ts +4 -22
- package/src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts +26 -49
- package/src/input-validation/ColumnValueResolver.ts +2 -3
- package/src/input-validation/EntityRulesResolver.ts +7 -7
- package/src/input-validation/QueryAstFactory.ts +1 -1
- package/src/input-validation/ValidationContext.ts +2 -2
- package/src/input-validation/ValidationDataSelector.ts +2 -2
- 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/introspection/content-schema.types.ts +19 -286
- package/src/mapper/Mapper.ts +37 -30
- package/src/mapper/MapperContainer.ts +10 -5
- 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 +101 -41
- 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 +95 -34
- package/src/mapper/select/handlers/FieldsVisitor.ts +47 -57
- package/src/mapper/select/handlers/FieldsVisitorFactory.ts +1 -0
- package/src/mapper/select/optimizer/ConditionOptimizer.ts +41 -0
- package/src/mapper/select/optimizer/WhereOptimizer.ts +138 -0
- package/src/mapper/select/optimizer/WhereReplacer.ts +27 -0
- package/src/mapper/select/optimizer/helpers.ts +58 -0
- package/src/mapper/update/SqlUpdateInputProcessor.ts +1 -1
- package/src/mapper/update/UpdateBuilder.ts +3 -3
- package/src/resolvers/GraphQlQueryAstFactory.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/object.ts +6 -6
- package/src/utils/uniqueWhereFields.ts +3 -3
- package/tests/cases/integration/graphQlDb/insert/insertSequence.test.ts +34 -0
- package/tests/cases/integration/graphQlRequests/delete/aclDelete.test.ts +2 -2
- package/tests/cases/integration/graphQlRequests/insert/acl/setField.test.ts +3 -3
- package/tests/cases/integration/graphQlRequests/insert/aclInsert.test.ts +2 -2
- package/tests/cases/integration/graphQlRequests/query/acl/fieldRestrictedByLocale.test.ts +7 -6
- package/tests/cases/integration/graphQlRequests/query/acl/nestedPredicate.test.ts +1 -1
- 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 -7
- package/tests/cases/integration/graphQlSchema/graphQlSchemaBuilder.test.ts +5 -5
- package/tests/cases/unit/aclVariablesFactory.test.ts +8 -35
- package/tests/cases/unit/conditionOptimizer.test.ts +135 -0
- package/tests/cases/unit/orderbyHelper.test.ts +1 -0
- package/tests/cases/unit/permissionMerger.test.ts +2 -0
- package/tests/cases/unit/predicatesFactory.test.ts +103 -0
- package/tests/cases/unit/predicatesInjector.test.ts +78 -16
- package/tests/cases/unit/variableInjector.test.ts +6 -5
- package/tests/cases/unit/whereBuilder.test.ts +84 -0
- package/tests/cases/unit/whereOptimizer.test.ts +289 -0
- package/tests/src/testGraphql.ts +9 -2
- 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
|
@@ -6,10 +6,11 @@ export declare class PaginatedHasManyCountVisitor implements Model.ColumnVisitor
|
|
|
6
6
|
private readonly objectNode;
|
|
7
7
|
private readonly relationFetcher;
|
|
8
8
|
private readonly mapper;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
private readonly relationPath;
|
|
10
|
+
constructor(ids: Input.PrimaryValue[], objectNode: ObjectNode<Input.PaginationQueryInput>, relationFetcher: RelationFetcher, mapper: Mapper, relationPath: Model.AnyRelationContext[]);
|
|
11
|
+
visitOneHasMany(relationContext: Model.OneHasManyContext): Promise<GroupedCounts>;
|
|
12
|
+
visitManyHasManyOwning(relationContext: Model.ManyHasManyOwningContext): Promise<GroupedCounts>;
|
|
13
|
+
visitManyHasManyInverse(relationContext: Model.ManyHasManyInverseContext): Promise<GroupedCounts>;
|
|
13
14
|
visitColumn(): never;
|
|
14
15
|
visitManyHasOne(): never;
|
|
15
16
|
visitOneHasOneInverse(): never;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyCountVisitor.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyCountVisitor.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,qBAAa,4BAA6B,YACzC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAC3C,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAGlD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAJZ,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,EACzB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAClD,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,KAAK,CAAC,kBAAkB,EAAE;IAGpD,eAAe,CAAC,eAAe,EAAE,KAAK,CAAC,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAYjF,sBAAsB,CAAC,eAAe,EAAE,KAAK,CAAC,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC;IAY/F,uBAAuB,CAAC,eAAe,EAAE,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC;IAYvG,WAAW,IAAI,KAAK;IAIpB,eAAe,IAAI,KAAK;IAIxB,qBAAqB,IAAI,KAAK;IAI9B,oBAAoB,IAAI,KAAK;CAG7B"}
|
|
@@ -2,30 +2,39 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PaginatedHasManyCountVisitor = void 0;
|
|
4
4
|
class PaginatedHasManyCountVisitor {
|
|
5
|
-
constructor(ids, objectNode, relationFetcher, mapper) {
|
|
5
|
+
constructor(ids, objectNode, relationFetcher, mapper, relationPath) {
|
|
6
6
|
this.ids = ids;
|
|
7
7
|
this.objectNode = objectNode;
|
|
8
8
|
this.relationFetcher = relationFetcher;
|
|
9
9
|
this.mapper = mapper;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
10
|
+
this.relationPath = relationPath;
|
|
11
|
+
}
|
|
12
|
+
async visitOneHasMany(relationContext) {
|
|
13
|
+
return await this.relationFetcher.countOneHasManyGroups({
|
|
14
|
+
mapper: this.mapper,
|
|
15
|
+
filter: this.objectNode.args.filter,
|
|
16
|
+
relationContext,
|
|
17
|
+
relationPath: this.relationPath,
|
|
18
|
+
ids: this.ids,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async visitManyHasManyOwning(relationContext) {
|
|
22
|
+
return await this.relationFetcher.countManyHasManyGroups({
|
|
23
|
+
mapper: this.mapper,
|
|
24
|
+
filter: this.objectNode.args.filter,
|
|
25
|
+
relationContext,
|
|
26
|
+
relationPath: this.relationPath,
|
|
27
|
+
ids: this.ids,
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
async visitManyHasManyInverse(relationContext) {
|
|
31
|
+
return await this.relationFetcher.countManyHasManyGroups({
|
|
32
|
+
mapper: this.mapper,
|
|
33
|
+
filter: this.objectNode.args.filter,
|
|
34
|
+
relationContext,
|
|
35
|
+
relationPath: this.relationPath,
|
|
36
|
+
ids: this.ids,
|
|
37
|
+
});
|
|
29
38
|
}
|
|
30
39
|
visitColumn() {
|
|
31
40
|
throw new Error();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyCountVisitor.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts"],"names":[],"mappings":";;;AAIA,MAAa,4BAA4B;IAIxC,YACkB,GAAyB,EACzB,UAAkD,EAClD,eAAgC,EAChC,MAAc;
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyCountVisitor.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyCountVisitor.ts"],"names":[],"mappings":";;;AAIA,MAAa,4BAA4B;IAIxC,YACkB,GAAyB,EACzB,UAAkD,EAClD,eAAgC,EAChC,MAAc,EACd,YAAwC;QAJxC,QAAG,GAAH,GAAG,CAAsB;QACzB,eAAU,GAAV,UAAU,CAAwC;QAClD,oBAAe,GAAf,eAAe,CAAiB;QAChC,WAAM,GAAN,MAAM,CAAQ;QACd,iBAAY,GAAZ,YAAY,CAA4B;IACvD,CAAC;IAEJ,KAAK,CAAC,eAAe,CAAC,eAAwC;QAC7D,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,qBAAqB,CACtD;YACC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM;YACnC,eAAe;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CACD,CAAA;IACF,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,eAA+C;QAC3E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,sBAAsB,CACvD;YACC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM;YACnC,eAAe;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CACD,CAAA;IACF,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,eAAgD;QAC7E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,sBAAsB,CACvD;YACC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM;YACnC,eAAe;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CACD,CAAA;IACF,CAAC;IAED,WAAW;QACV,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,eAAe;QACd,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,qBAAqB;QACpB,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,oBAAoB;QACnB,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;CACD;AA/DD,oEA+DC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyExecutionHandler.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAA;AACrG,OAAO,EAAE,sCAAsC,EAAE,MAAM,iCAAiC,CAAA;AAMxF,qBAAa,gCAAiC,YAAW,sBAAsB,CAAC,KAAK,CAAC,oBAAoB,EAAE,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyExecutionHandler.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAA;AACrG,OAAO,EAAE,sCAAsC,EAAE,MAAM,iCAAiC,CAAA;AAMxF,qBAAa,gCAAiC,YAAW,sBAAsB,CAAC,KAAK,CAAC,oBAAoB,EAAE,sCAAsC,CAAC;IAEjJ,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBADf,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,eAAe,EAAE,eAAe;IAGlD,OAAO,CACN,OAAO,EAAE,6BAA6B,CAAC,KAAK,CAAC,oBAAoB,EAAE,sCAAsC,CAAC,GACxG,IAAI;CAmCP"}
|
|
@@ -19,10 +19,10 @@ class PaginatedHasManyExecutionHandler {
|
|
|
19
19
|
addData(context.entity.primary, async (ids) => {
|
|
20
20
|
var _a, _b;
|
|
21
21
|
const counts = pagination.requiresTotalCount
|
|
22
|
-
? await (0, schema_utils_1.acceptFieldVisitor)(this.schema, entity, objectNode.extensions.relationName, new PaginatedHasManyCountVisitor_1.PaginatedHasManyCountVisitor(ids, objectNode, this.relationFetcher, mapper))
|
|
22
|
+
? await (0, schema_utils_1.acceptFieldVisitor)(this.schema, entity, objectNode.extensions.relationName, new PaginatedHasManyCountVisitor_1.PaginatedHasManyCountVisitor(ids, objectNode, this.relationFetcher, mapper, context.relationPath))
|
|
23
23
|
: {};
|
|
24
24
|
const nodes = pagination.nodeField
|
|
25
|
-
? await (0, schema_utils_1.acceptFieldVisitor)(this.schema, entity, objectNode.extensions.relationName, new PaginatedHasManyNodesVisitor_1.PaginatedHasManyNodesVisitor(ids, pagination.nodeField, this.relationFetcher, mapper))
|
|
25
|
+
? await (0, schema_utils_1.acceptFieldVisitor)(this.schema, entity, objectNode.extensions.relationName, new PaginatedHasManyNodesVisitor_1.PaginatedHasManyNodesVisitor(ids, pagination.nodeField, this.relationFetcher, mapper, context.relationPath))
|
|
26
26
|
: undefined;
|
|
27
27
|
const result = new Map();
|
|
28
28
|
for (const id of ids) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyExecutionHandler.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.ts"],"names":[],"mappings":";;;AAGA,0DAA4D;AAC5D,uCAAoD;AACpD,iFAA6E;AAC7E,iFAA6E;AAE7E,MAAa,gCAAgC;IAC5C,
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyExecutionHandler.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyExecutionHandler.ts"],"names":[],"mappings":";;;AAGA,0DAA4D;AAC5D,uCAAoD;AACpD,iFAA6E;AAC7E,iFAA6E;AAE7E,MAAa,gCAAgC;IAC5C,YACkB,MAAoB,EACpB,eAAgC;QADhC,WAAM,GAAN,MAAM,CAAc;QACpB,oBAAe,GAAf,eAAe,CAAiB;IAC/C,CAAC;IAEJ,OAAO,CACN,OAA0G;QAE1G,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;QACvD,IAAI,CAAC,UAAU,EAAE;YAChB,MAAM,IAAI,KAAK,EAAE,CAAA;SACjB;QACD,MAAM,UAAU,GAAG,IAAA,8BAAsB,EAAC,UAAU,CAAC,CAAA;QACrD,OAAO,CACN,OAAO,CAAC,MAAM,CAAC,OAAO,EACtB,KAAK,EAAC,GAAG,EAAC,EAAE;;YACX,MAAM,MAAM,GAAG,UAAU,CAAC,kBAAkB;gBAC3C,CAAC,CAAC,MAAM,IAAA,iCAAkB,EACzB,IAAI,CAAC,MAAM,EACX,MAAM,EACN,UAAU,CAAC,UAAU,CAAC,YAAY,EAClC,IAAI,2DAA4B,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CACnG;gBACH,CAAC,CAAC,EAAE,CAAA;YAEL,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS;gBACjC,CAAC,CAAC,MAAM,IAAA,iCAAkB,EACzB,IAAI,CAAC,MAAM,EACX,MAAM,EACN,UAAU,CAAC,UAAU,CAAC,YAAY,EAClC,IAAI,2DAA4B,CAAC,GAAG,EAAE,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAC7G;gBACH,CAAC,CAAC,SAAS,CAAA;YACZ,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAA;YACjD,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;gBACrB,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,cAAc,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,EAAE,CAAC,mCAAI,CAAC,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,EAAE,CAAC,mCAAI,EAAE,CAAC,CAAC,CAAA;aAC/E;YACD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAClC,CAAC,EACD,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAChC,CAAA;IACF,CAAC;CACD;AA3CD,4EA2CC"}
|
|
@@ -5,9 +5,9 @@ import { PaginatedFieldConfigFactory } from '../../schema/PaginatedFieldConfigFa
|
|
|
5
5
|
export declare class PaginatedHasManyFieldProviderVisitor implements Model.ColumnVisitor<FieldMap<PaginatedHasManyFieldProviderExtension>>, Model.RelationByTypeVisitor<FieldMap<PaginatedHasManyFieldProviderExtension>> {
|
|
6
6
|
private readonly paginatedFieldFactory;
|
|
7
7
|
constructor(paginatedFieldFactory: PaginatedFieldConfigFactory);
|
|
8
|
-
visitOneHasMany(
|
|
9
|
-
visitManyHasManyOwning(
|
|
10
|
-
visitManyHasManyInverse(
|
|
8
|
+
visitOneHasMany({ targetEntity, relation }: Model.OneHasManyContext): FieldMap<PaginatedHasManyFieldProviderExtension>;
|
|
9
|
+
visitManyHasManyOwning({ targetEntity, relation }: Model.ManyHasManyOwningContext): FieldMap<PaginatedHasManyFieldProviderExtension>;
|
|
10
|
+
visitManyHasManyInverse({ targetEntity, relation }: Model.ManyHasManyInverseContext): FieldMap<PaginatedHasManyFieldProviderExtension>;
|
|
11
11
|
private createField;
|
|
12
12
|
visitColumn(): {};
|
|
13
13
|
visitManyHasOne(): {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyFieldProviderVisitor.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,sCAAsC,EAAE,MAAM,iCAAiC,CAAA;AAExF,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAA;AAGtF,qBAAa,oCAAqC,YACjD,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC,EACrE,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC;IAEjE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,2BAA2B;IAE/E,eAAe,
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyFieldProviderVisitor.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,sCAAsC,EAAE,MAAM,iCAAiC,CAAA;AAExF,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAA;AAGtF,qBAAa,oCAAqC,YACjD,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC,EACrE,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC;IAEjE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,2BAA2B;IAE/E,eAAe,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,iBAAiB;IAInE,sBAAsB,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,wBAAwB;IAIjF,uBAAuB,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,yBAAyB;IAInF,OAAO,CAAC,WAAW;IAYnB,WAAW;IAIX,eAAe;IAIf,qBAAqB;IAIrB,oBAAoB;CAGpB"}
|
|
@@ -7,13 +7,13 @@ class PaginatedHasManyFieldProviderVisitor {
|
|
|
7
7
|
constructor(paginatedFieldFactory) {
|
|
8
8
|
this.paginatedFieldFactory = paginatedFieldFactory;
|
|
9
9
|
}
|
|
10
|
-
visitOneHasMany(
|
|
10
|
+
visitOneHasMany({ targetEntity, relation }) {
|
|
11
11
|
return this.createField(targetEntity, relation);
|
|
12
12
|
}
|
|
13
|
-
visitManyHasManyOwning(
|
|
13
|
+
visitManyHasManyOwning({ targetEntity, relation }) {
|
|
14
14
|
return this.createField(targetEntity, relation);
|
|
15
15
|
}
|
|
16
|
-
visitManyHasManyInverse(
|
|
16
|
+
visitManyHasManyInverse({ targetEntity, relation }) {
|
|
17
17
|
return this.createField(targetEntity, relation);
|
|
18
18
|
}
|
|
19
19
|
createField(entity, relation) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyFieldProviderVisitor.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.ts"],"names":[],"mappings":";;;AAGA,uCAAmD;AAEnD,yCAAiD;AAEjD,MAAa,oCAAoC;IAIhD,YAA6B,qBAAkD;QAAlD,0BAAqB,GAArB,qBAAqB,CAA6B;IAAG,CAAC;IAEnF,eAAe,
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyFieldProviderVisitor.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.ts"],"names":[],"mappings":";;;AAGA,uCAAmD;AAEnD,yCAAiD;AAEjD,MAAa,oCAAoC;IAIhD,YAA6B,qBAAkD;QAAlD,0BAAqB,GAArB,qBAAqB,CAA6B;IAAG,CAAC;IAEnF,eAAe,CAAC,EAAE,YAAY,EAAE,QAAQ,EAA2B;QAClE,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;IAED,sBAAsB,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAkC;QAChF,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;IAED,uBAAuB,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAmC;QAClF,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;IAEO,WAAW,CAAC,MAAoB,EAAE,QAAwB;QACjE,OAAO;YACN,CAAC,WAAW,IAAA,6BAAqB,EAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBACpD,GAAG,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,MAAM,CAAC;gBACvD,UAAU,EAAE;oBACX,YAAY,EAAE,QAAQ,CAAC,IAAI;iBAC3B;gBACD,OAAO,EAAE,2BAAkB;aAC3B;SACD,CAAA;IACF,CAAC;IAED,WAAW;QACV,OAAO,EAAE,CAAA;IACV,CAAC;IAED,eAAe;QACd,OAAO,EAAE,CAAA;IACV,CAAC;IAED,qBAAqB;QACpB,OAAO,EAAE,CAAA;IACV,CAAC;IAED,oBAAoB;QACnB,OAAO,EAAE,CAAA;IACV,CAAC;CACD;AA7CD,oFA6CC"}
|
|
@@ -6,10 +6,11 @@ export declare class PaginatedHasManyNodesVisitor implements Model.ColumnVisitor
|
|
|
6
6
|
private readonly objectNode;
|
|
7
7
|
private readonly relationFetcher;
|
|
8
8
|
private readonly mapper;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
private readonly relationPath;
|
|
10
|
+
constructor(ids: Input.PrimaryValue[], objectNode: ObjectNode<Input.PaginationQueryInput>, relationFetcher: RelationFetcher, mapper: Mapper, relationPath: Model.AnyRelationContext[]);
|
|
11
|
+
visitOneHasMany(relationContext: Model.OneHasManyContext): Promise<SelectGroupedObjects>;
|
|
12
|
+
visitManyHasManyOwning(relationContext: Model.ManyHasManyOwningContext): Promise<SelectGroupedObjects>;
|
|
13
|
+
visitManyHasManyInverse(relationContext: Model.ManyHasManyInverseContext): Promise<SelectGroupedObjects>;
|
|
13
14
|
visitColumn(): never;
|
|
14
15
|
visitManyHasOne(): never;
|
|
15
16
|
visitOneHasOneInverse(): never;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyNodesVisitor.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyNodesVisitor.d.ts","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,qBAAa,4BAA6B,YACzC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,EAClD,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAGzD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAJZ,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,EACzB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAClD,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,KAAK,CAAC,kBAAkB,EAAE;IAGpD,eAAe,CAAC,eAAe,EAAE,KAAK,CAAC,iBAAiB;IAYxD,sBAAsB,CAAC,eAAe,EAAE,KAAK,CAAC,wBAAwB;IAYtE,uBAAuB,CAAC,eAAe,EAAE,KAAK,CAAC,yBAAyB;IAY9E,WAAW,IAAI,KAAK;IAIpB,eAAe,IAAI,KAAK;IAIxB,qBAAqB,IAAI,KAAK;IAI9B,oBAAoB,IAAI,KAAK;CAG7B"}
|
|
@@ -2,30 +2,39 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PaginatedHasManyNodesVisitor = void 0;
|
|
4
4
|
class PaginatedHasManyNodesVisitor {
|
|
5
|
-
constructor(ids, objectNode, relationFetcher, mapper) {
|
|
5
|
+
constructor(ids, objectNode, relationFetcher, mapper, relationPath) {
|
|
6
6
|
this.ids = ids;
|
|
7
7
|
this.objectNode = objectNode;
|
|
8
8
|
this.relationFetcher = relationFetcher;
|
|
9
9
|
this.mapper = mapper;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
10
|
+
this.relationPath = relationPath;
|
|
11
|
+
}
|
|
12
|
+
async visitOneHasMany(relationContext) {
|
|
13
|
+
return await this.relationFetcher.fetchOneHasManyGroups({
|
|
14
|
+
mapper: this.mapper,
|
|
15
|
+
objectNode: this.objectNode,
|
|
16
|
+
relationContext,
|
|
17
|
+
relationPath: this.relationPath,
|
|
18
|
+
ids: this.ids,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async visitManyHasManyOwning(relationContext) {
|
|
22
|
+
return await this.relationFetcher.fetchManyHasManyGroups({
|
|
23
|
+
mapper: this.mapper,
|
|
24
|
+
field: this.objectNode,
|
|
25
|
+
relationContext,
|
|
26
|
+
relationPath: this.relationPath,
|
|
27
|
+
ids: this.ids,
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
async visitManyHasManyInverse(relationContext) {
|
|
31
|
+
return await this.relationFetcher.fetchManyHasManyGroups({
|
|
32
|
+
mapper: this.mapper,
|
|
33
|
+
field: this.objectNode,
|
|
34
|
+
relationContext,
|
|
35
|
+
relationPath: this.relationPath,
|
|
36
|
+
ids: this.ids,
|
|
37
|
+
});
|
|
29
38
|
}
|
|
30
39
|
visitColumn() {
|
|
31
40
|
throw new Error();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedHasManyNodesVisitor.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts"],"names":[],"mappings":";;;AAIA,MAAa,4BAA4B;IAIxC,YACkB,GAAyB,EACzB,UAAkD,EAClD,eAAgC,EAChC,MAAc;
|
|
1
|
+
{"version":3,"file":"PaginatedHasManyNodesVisitor.js","sourceRoot":"","sources":["../../../../src/extensions/paginatedHasMany/PaginatedHasManyNodesVisitor.ts"],"names":[],"mappings":";;;AAIA,MAAa,4BAA4B;IAIxC,YACkB,GAAyB,EACzB,UAAkD,EAClD,eAAgC,EAChC,MAAc,EACd,YAAwC;QAJxC,QAAG,GAAH,GAAG,CAAsB;QACzB,eAAU,GAAV,UAAU,CAAwC;QAClD,oBAAe,GAAf,eAAe,CAAiB;QAChC,WAAM,GAAN,MAAM,CAAQ;QACd,iBAAY,GAAZ,YAAY,CAA4B;IACvD,CAAC;IAEJ,KAAK,CAAC,eAAe,CAAC,eAAwC;QAC7D,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,qBAAqB,CACtD;YACC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,eAAe;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CACD,CAAA;IACF,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,eAA+C;QAC3E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,sBAAsB,CACvD;YACC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,eAAe;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CACD,CAAA;IACF,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,eAAgD;QAC7E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,sBAAsB,CACvD;YACC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,eAAe;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;SACb,CACD,CAAA;IACF,CAAC;IAED,WAAW;QACV,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,eAAe;QACd,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,qBAAqB;QACpB,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;IAED,oBAAoB;QACnB,MAAM,IAAI,KAAK,EAAE,CAAA;IAClB,CAAC;CACD;AA/DD,oEA+DC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Providers } from '@contember/schema-utils';
|
|
2
|
-
import
|
|
3
|
-
import { Value } from '@contember/schema';
|
|
2
|
+
import { Model, Value } from '@contember/schema';
|
|
4
3
|
export declare class ColumnValueResolver {
|
|
5
4
|
private readonly providers;
|
|
6
5
|
constructor(providers: Providers);
|
|
7
|
-
getDefaultValidationValue(context:
|
|
6
|
+
getDefaultValidationValue(context: Model.ColumnContext & {
|
|
7
|
+
input: Value.FieldValue | undefined;
|
|
8
|
+
}): Value.AtomicValue | undefined;
|
|
8
9
|
}
|
|
9
10
|
//# sourceMappingURL=ColumnValueResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnValueResolver.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ColumnValueResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAsB,MAAM,yBAAyB,CAAA;AACpF,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"ColumnValueResolver.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ColumnValueResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAsB,MAAM,yBAAyB,CAAA;AACpF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEhD,qBAAa,mBAAmB;IACnB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,SAAS;IAEjD,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC,UAAU,GAAG,SAAS,CAAA;KAAE,GAAG,KAAK,CAAC,WAAW,GAAG,SAAS;CAahI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnValueResolver.js","sourceRoot":"","sources":["../../../src/input-validation/ColumnValueResolver.ts"],"names":[],"mappings":";;;AAAA,0DAAoF;
|
|
1
|
+
{"version":3,"file":"ColumnValueResolver.js","sourceRoot":"","sources":["../../../src/input-validation/ColumnValueResolver.ts"],"names":[],"mappings":";;;AAAA,0DAAoF;AAGpF,MAAa,mBAAmB;IAC/B,YAA6B,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAG,CAAC;IAErD,yBAAyB,CAAC,OAAsE;QAC/F,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE;YACnD,OAAO,sCAAsC,CAAA;SAC7C;QACD,IAAI;YACH,OAAO,IAAA,iCAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;SAClD;QAAC,OAAO,CAAC,EAAE;YACX,IAAI,CAAC,YAAY,0BAAW,EAAE;gBAC7B,OAAO,SAAS,CAAA;aAChB;YACD,MAAM,CAAC,CAAA;SACP;IACF,CAAC;CACD;AAhBD,kDAgBC"}
|
|
@@ -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
|
|
53
|
-
visitColumn(
|
|
54
|
-
return !column.nullable;
|
|
52
|
+
class RequiredFieldsVisitor {
|
|
53
|
+
visitColumn({ column }) {
|
|
54
|
+
return !column.nullable && typeof column.default === 'undefined' && !column.sequence;
|
|
55
55
|
}
|
|
56
56
|
visitManyHasManyInverse() {
|
|
57
57
|
return false;
|
|
@@ -59,16 +59,16 @@ class NotNullFieldsVisitor {
|
|
|
59
59
|
visitManyHasManyOwning() {
|
|
60
60
|
return false;
|
|
61
61
|
}
|
|
62
|
-
visitManyHasOne(
|
|
62
|
+
visitManyHasOne({ relation }) {
|
|
63
63
|
return !relation.nullable;
|
|
64
64
|
}
|
|
65
65
|
visitOneHasMany() {
|
|
66
66
|
return false;
|
|
67
67
|
}
|
|
68
|
-
visitOneHasOneInverse(
|
|
68
|
+
visitOneHasOneInverse({ targetEntity, relation }) {
|
|
69
69
|
return !relation.nullable && !targetEntity.view;
|
|
70
70
|
}
|
|
71
|
-
visitOneHasOneOwning(
|
|
71
|
+
visitOneHasOneOwning({ relation }) {
|
|
72
72
|
return !relation.nullable;
|
|
73
73
|
}
|
|
74
74
|
}
|
|
@@ -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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"}
|
|
@@ -18,7 +18,7 @@ class QueryAstFactory {
|
|
|
18
18
|
createField(entity, fieldName, dependency) {
|
|
19
19
|
let [targetEntity, newField] = (0, schema_utils_1.acceptFieldVisitor)(this.model, entity, fieldName, {
|
|
20
20
|
visitColumn: () => [null, new inputProcessing_1.FieldNode(fieldName, fieldName, {})],
|
|
21
|
-
visitRelation: ({
|
|
21
|
+
visitRelation: ({ targetEntity }) => [
|
|
22
22
|
targetEntity,
|
|
23
23
|
new inputProcessing_1.ObjectNode(fieldName, fieldName, [], {}, {}, []).withField(new inputProcessing_1.FieldNode(targetEntity.primary, targetEntity.primary, {})),
|
|
24
24
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryAstFactory.js","sourceRoot":"","sources":["../../../src/input-validation/QueryAstFactory.ts"],"names":[],"mappings":";;;AAAA,0DAAuE;AAGvE,wDAA0D;AAE1D,MAAa,eAAe;IAC3B,YAA6B,KAAmB;QAAnB,UAAK,GAAL,KAAK,CAAc;IAAG,CAAC;IAEpD,MAAM,CAAC,UAAkB,EAAE,YAA0B;QACpD,MAAM,MAAM,GAAG,IAAA,wBAAS,EAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QAChD,IAAI,IAAI,GAAG,IAAI,4BAAU,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QACjE,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAC7D,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAA;SAChE;QACD,OAAO,IAAI,CAAA;IACZ,CAAC;IAEO,WAAW,CAAC,MAAoB,EAAE,SAAiB,EAAE,UAAwB;QACpF,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG,IAAA,iCAAkB,EAChD,IAAI,CAAC,KAAK,EACV,MAAM,EACN,SAAS,EACT;YACC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,2BAAS,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAClE,aAAa,EAAE,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"QueryAstFactory.js","sourceRoot":"","sources":["../../../src/input-validation/QueryAstFactory.ts"],"names":[],"mappings":";;;AAAA,0DAAuE;AAGvE,wDAA0D;AAE1D,MAAa,eAAe;IAC3B,YAA6B,KAAmB;QAAnB,UAAK,GAAL,KAAK,CAAc;IAAG,CAAC;IAEpD,MAAM,CAAC,UAAkB,EAAE,YAA0B;QACpD,MAAM,MAAM,GAAG,IAAA,wBAAS,EAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QAChD,IAAI,IAAI,GAAG,IAAI,4BAAU,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QACjE,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAC7D,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAA;SAChE;QACD,OAAO,IAAI,CAAA;IACZ,CAAC;IAEO,WAAW,CAAC,MAAoB,EAAE,SAAiB,EAAE,UAAwB;QACpF,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG,IAAA,iCAAkB,EAChD,IAAI,CAAC,KAAK,EACV,MAAM,EACN,SAAS,EACT;YACC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,2BAAS,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAClE,aAAa,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;gBACpC,YAAY;gBACZ,IAAI,4BAAU,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAC7D,IAAI,2BAAS,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAC7D;aACD;SACD,CACD,CAAA;QACD,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QACpD,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,IAAI,CAAC,CAAC,QAAQ,YAAY,4BAAU,CAAC,IAAI,CAAC,YAAY,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;aACjF;YACD,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,iBAAiB,EAAE;gBAClD,QAAQ,GAAI,QAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAA;aAC9F;SACD;QACD,OAAO,QAAQ,CAAA;IAChB,CAAC;CACD;AAtCD,0CAsCC"}
|
|
@@ -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":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationDataSelector.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"ValidationDataSelector.d.ts","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEvD,qBAAa,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAArD,KAAK,EAAE,KAAK,CAAC,MAAM,EAAmB,eAAe,EAAE,eAAe;IAEtF,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW;IAI9E,MAAM,CAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,KAAK,EAAE,KAAK,CAAC,WAAW,EACxB,YAAY,EAAE,YAAY,GACxB,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;CAY/B"}
|
|
@@ -14,7 +14,7 @@ class ValidationDataSelector {
|
|
|
14
14
|
return {};
|
|
15
15
|
}
|
|
16
16
|
const queryAst = this.queryAstFactory.create(entity.name, dependencies).withArg('by', where);
|
|
17
|
-
const node = await mapper.selectUnique(entity, queryAst);
|
|
17
|
+
const node = await mapper.selectUnique(entity, queryAst, []);
|
|
18
18
|
if (!node) {
|
|
19
19
|
return null;
|
|
20
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationDataSelector.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":";;;AAKA,MAAa,sBAAsB;IAClC,YAA6B,KAAmB,EAAmB,eAAgC;QAAtE,UAAK,GAAL,KAAK,CAAc;QAAmB,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAEhG,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,MAAoB,EAAE,KAAwB;QAC1F,OAAO,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAEM,KAAK,CAAC,MAAM,CAClB,MAAc,EACd,MAAoB,EACpB,KAAwB,EACxB,YAA0B;QAE1B,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3C,OAAO,EAAE,CAAA;SACT;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5F,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"ValidationDataSelector.js","sourceRoot":"","sources":["../../../src/input-validation/ValidationDataSelector.ts"],"names":[],"mappings":";;;AAKA,MAAa,sBAAsB;IAClC,YAA6B,KAAmB,EAAmB,eAAgC;QAAtE,UAAK,GAAL,KAAK,CAAc;QAAmB,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAEhG,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,MAAoB,EAAE,KAAwB;QAC1F,OAAO,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAEM,KAAK,CAAC,MAAM,CAClB,MAAc,EACd,MAAoB,EACpB,KAAwB,EACxB,YAA0B;QAE1B,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3C,OAAO,EAAE,CAAA;SACT;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5F,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;QAC5D,IAAI,CAAC,IAAI,EAAE;YACV,OAAO,IAAI,CAAA;SACX;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;CACD;AAxBD,wDAwBC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { CreateInputProcessor } from '../../inputProcessing';
|
|
2
|
-
import * as Context from '../../inputProcessing';
|
|
3
2
|
import { Input, Model } from '@contember/schema';
|
|
4
3
|
import { ValidationPath } from '../ValidationPath';
|
|
5
4
|
import { Mapper } from '../../mapper';
|
|
@@ -10,12 +9,12 @@ export declare class CreateInputPreValidationProcessor implements CreateInputPro
|
|
|
10
9
|
private readonly path;
|
|
11
10
|
private readonly mapper;
|
|
12
11
|
constructor(inputValidator: InputPreValidator, path: ValidationPath, mapper: Mapper);
|
|
13
|
-
manyHasManyInverse: CreateInputProcessor.HasManyRelationProcessor<
|
|
14
|
-
manyHasManyOwning: CreateInputProcessor.HasManyRelationProcessor<
|
|
15
|
-
manyHasOne: CreateInputProcessor.HasOneRelationProcessor<
|
|
16
|
-
oneHasMany: CreateInputProcessor.HasManyRelationProcessor<
|
|
17
|
-
oneHasOneInverse: CreateInputProcessor.HasOneRelationProcessor<
|
|
18
|
-
oneHasOneOwning: CreateInputProcessor.HasOneRelationProcessor<
|
|
12
|
+
manyHasManyInverse: CreateInputProcessor.HasManyRelationProcessor<Model.ManyHasManyInverseContext, Result>;
|
|
13
|
+
manyHasManyOwning: CreateInputProcessor.HasManyRelationProcessor<Model.ManyHasManyOwningContext, Result>;
|
|
14
|
+
manyHasOne: CreateInputProcessor.HasOneRelationProcessor<Model.ManyHasOneContext, Result>;
|
|
15
|
+
oneHasMany: CreateInputProcessor.HasManyRelationProcessor<Model.OneHasManyContext, Result>;
|
|
16
|
+
oneHasOneInverse: CreateInputProcessor.HasOneRelationProcessor<Model.OneHasOneInverseContext, Result>;
|
|
17
|
+
oneHasOneOwning: CreateInputProcessor.HasOneRelationProcessor<Model.OneHasOneOwningContext, Result>;
|
|
19
18
|
validateCreate(context: {
|
|
20
19
|
targetEntity: Model.Entity;
|
|
21
20
|
relation: Model.AnyRelation;
|
|
@@ -24,7 +23,7 @@ export declare class CreateInputPreValidationProcessor implements CreateInputPro
|
|
|
24
23
|
index?: number;
|
|
25
24
|
alias?: string;
|
|
26
25
|
}): Promise<import("..").ValidationResult>;
|
|
27
|
-
column(context:
|
|
26
|
+
column(context: Model.ColumnContext): Promise<Result>;
|
|
28
27
|
}
|
|
29
28
|
export {};
|
|
30
29
|
//# sourceMappingURL=CreateInputPreValidationProcessor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateInputPreValidationProcessor.d.ts","sourceRoot":"","sources":["../../../../src/input-validation/preValidation/CreateInputPreValidationProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,
|
|
1
|
+
{"version":3,"file":"CreateInputPreValidationProcessor.d.ts","sourceRoot":"","sources":["../../../../src/input-validation/preValidation/CreateInputPreValidationProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAwB,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,aAAK,MAAM,GAAG,GAAG,CAAA;AAGjB,qBAAa,iCAAkC,YAAW,oBAAoB,CAAC,MAAM,CAAC;IAEpF,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAFN,cAAc,EAAE,iBAAiB,EACjC,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,MAAM;IAGhC,kBAAkB,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,KAAK,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAGzG;IAED,iBAAiB,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,KAAK,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAGvG;IAED,UAAU,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAGxF;IAED,UAAU,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAGzF;IACD,gBAAgB,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAGpG;IACD,eAAe,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAGlG;IAEK,cAAc,CAAC,OAAO,EAAE;QAC7B,YAAY,EAAE,KAAK,CAAC,MAAM,CAAA;QAC1B,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAA;QAC3B,KAAK,EAAE,KAAK,CAAC,eAAe,CAAA;QAC5B,cAAc,EAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAA;QACxC,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,KAAK,CAAC,EAAE,MAAM,CAAA;KACd;IAWK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAG3D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateInputPreValidationProcessor.js","sourceRoot":"","sources":["../../../../src/input-validation/preValidation/CreateInputPreValidationProcessor.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"CreateInputPreValidationProcessor.js","sourceRoot":"","sources":["../../../../src/input-validation/preValidation/CreateInputPreValidationProcessor.ts"],"names":[],"mappings":";;;AAEA,sDAAwE;AAKxE,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AAE1C,MAAa,iCAAiC;IAC7C,YACkB,cAAiC,EACjC,IAAoB,EACpB,MAAc;QAFd,mBAAc,GAAd,cAAc,CAAmB;QACjC,SAAI,GAAJ,IAAI,CAAgB;QACpB,WAAM,GAAN,MAAM,CAAQ;QAGhC,uBAAkB,GAA2F;YAC5G,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;SAC/C,CAAA;QAED,sBAAiB,GAA0F;YAC1G,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;SAC/C,CAAA;QAED,eAAU,GAAkF;YAC3F,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;SAC/C,CAAA;QAED,eAAU,GAAmF;YAC5F,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;SAC/C,CAAA;QACD,qBAAgB,GAAwF;YACvG,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;SAC/C,CAAA;QACD,oBAAe,GAAuF;YACrG,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;SAC/C,CAAA;IA5BE,CAAC;IA8BJ,KAAK,CAAC,cAAc,CAAC,OAOpB;QACA,MAAM,OAAO,GAAG,IAAA,qCAAoB,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC/E,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,OAAO,CAAC,YAAY;YAC5B,IAAI,EAAE,OAAO,CAAC,KAAK;YACnB,IAAI,EAAE,OAAO;YACb,YAAY,EAAE,OAAO,CAAC,cAAc;SACpC,CAAC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA4B;QACxC,OAAO,EAAE,CAAA;IACV,CAAC;CACD;AAxDD,8EAwDC"}
|
|
@@ -48,12 +48,12 @@ class InputPreValidator {
|
|
|
48
48
|
}
|
|
49
49
|
createContextForCreate(entity, data) {
|
|
50
50
|
const nodeData = (0, schema_utils_1.acceptEveryFieldVisitor)(this.model, entity, {
|
|
51
|
-
visitColumn: (entity, column) => {
|
|
51
|
+
visitColumn: ({ entity, column }) => {
|
|
52
52
|
const value = data[column.name];
|
|
53
53
|
const validationValue = this.columnValueResolver.getDefaultValidationValue({ entity, column, input: value });
|
|
54
54
|
return validationValue === undefined ? null : validationValue;
|
|
55
55
|
},
|
|
56
|
-
visitHasOne: (
|
|
56
|
+
visitHasOne: ({ relation }) => {
|
|
57
57
|
const value = data[relation.name];
|
|
58
58
|
return value ? true : null;
|
|
59
59
|
},
|
|
@@ -64,10 +64,10 @@ class InputPreValidator {
|
|
|
64
64
|
}
|
|
65
65
|
async createContextForUpdate(mapper, entity, where, data, dependencies) {
|
|
66
66
|
const inputNodeData = (0, schema_utils_1.acceptEveryFieldVisitor)(this.model, entity, {
|
|
67
|
-
visitColumn: (
|
|
67
|
+
visitColumn: ({ column }) => {
|
|
68
68
|
return data[column.name];
|
|
69
69
|
},
|
|
70
|
-
visitHasOne: (
|
|
70
|
+
visitHasOne: ({ relation }) => {
|
|
71
71
|
const value = data[relation.name];
|
|
72
72
|
if (value === undefined || value === null) {
|
|
73
73
|
return undefined;
|