@loopback/docs 4.0.3 → 5.1.0
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/CHANGELOG.md +40 -0
- package/CODE_OF_CONDUCT.md +53 -3
- package/LICENSE +2 -2
- package/package.json +8 -8
- package/site/CHANGELOG.md +1 -0
- package/site/Copyright-generator.md +8 -7
- package/site/Discovering-models.md +5 -0
- package/site/MONOREPO.md +1 -0
- package/site/Polymorphic-relation.md +123 -0
- package/site/ReferencesMany-relation.md +379 -0
- package/site/Relation-generator.md +1 -0
- package/site/Relations.md +1 -0
- package/site/Rest-Crud-generator.md +7 -1
- package/site/apidocs/apiconnect.apiconnectspecenhancer._constructor_.md +1 -1
- package/site/apidocs/authentication-jwt.myuserservice.md +1 -1
- package/site/apidocs/authentication-jwt.refreshtoken._constructor_.md +1 -1
- package/site/apidocs/authentication-jwt.refreshtokenrepository.md +1 -1
- package/site/apidocs/authentication-jwt.user._constructor_.md +1 -1
- package/site/apidocs/authentication-jwt.usercredentials._constructor_.md +1 -1
- package/site/apidocs/authentication-jwt.usercredentialsrepository.md +1 -1
- package/site/apidocs/authentication-jwt.userrepository.md +1 -1
- package/site/apidocs/authentication-passport.strategyadapter._constructor_.md +1 -1
- package/site/apidocs/authentication-passport.strategyadapter.authenticate.md +1 -1
- package/site/apidocs/authentication.authenticateactionprovider._constructor_.md +1 -1
- package/site/apidocs/authentication.authenticateactionprovider.md +1 -1
- package/site/apidocs/authentication.authenticationmiddlewareprovider.md +1 -1
- package/site/apidocs/authentication.authenticationstrategyprovider._constructor_.md +1 -1
- package/site/apidocs/authentication.authenticationstrategyprovider.md +1 -1
- package/site/apidocs/authentication.authmetadataprovider._constructor_.md +1 -1
- package/site/apidocs/authentication.authmetadataprovider.md +1 -1
- package/site/apidocs/authorization.authorizationinterceptor._constructor_.md +1 -1
- package/site/apidocs/authorization.authorizationinterceptor.md +1 -1
- package/site/apidocs/authorization.authorizemethoddecoratorfactory.md +1 -1
- package/site/apidocs/authorization.authorizemethoddecoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/boot.bootmixin.md +44 -44
- package/site/apidocs/boot.bootstrapper._constructor_.md +1 -1
- package/site/apidocs/boot.bootstrapper.boot.md +2 -2
- package/site/apidocs/boot.controllerbooter._constructor_.md +1 -1
- package/site/apidocs/boot.createbooterforcomponentapplication.md +1 -1
- package/site/apidocs/boot.createcomponentapplicationbooterbinding.md +1 -1
- package/site/apidocs/boot.datasourcebooter._constructor_.md +1 -1
- package/site/apidocs/boot.interceptorproviderbooter._constructor_.md +1 -1
- package/site/apidocs/boot.lifecycleobserverbooter._constructor_.md +1 -1
- package/site/apidocs/boot.modelapibooter._constructor_.md +1 -1
- package/site/apidocs/boot.modelbooter._constructor_.md +1 -1
- package/site/apidocs/boot.repositorybooter._constructor_.md +1 -1
- package/site/apidocs/boot.servicebooter._constructor_.md +1 -1
- package/site/apidocs/context-explorer.contextexplorercomponent._constructor_.md +1 -1
- package/site/apidocs/context-explorer.contextgraph._constructor_.md +1 -1
- package/site/apidocs/context-explorer.rendergraph.md +1 -1
- package/site/apidocs/context.asglobalinterceptor.md +1 -1
- package/site/apidocs/context.asresolutionoptions.md +1 -1
- package/site/apidocs/context.asserttargettype.md +1 -1
- package/site/apidocs/context.binding._constructor_.md +1 -1
- package/site/apidocs/context.binding.getvalue.md +1 -1
- package/site/apidocs/context.binding.getvalue_1.md +1 -1
- package/site/apidocs/context.binding.inspect.md +1 -1
- package/site/apidocs/context.bindingkey.buildkeyforconfig.md +1 -1
- package/site/apidocs/context.bindingkey.create.md +1 -1
- package/site/apidocs/context.bindingkey.generate.md +1 -1
- package/site/apidocs/context.bindingtemplatefor.md +1 -1
- package/site/apidocs/context.comparebindingsbytag.md +2 -2
- package/site/apidocs/context.comparebyorder.md +1 -1
- package/site/apidocs/context.config.getter.md +1 -1
- package/site/apidocs/context.config.view.md +1 -1
- package/site/apidocs/context.configbindingkeyfor.md +1 -1
- package/site/apidocs/context.configurationresolver.getconfigasvalueorpromise.md +2 -2
- package/site/apidocs/context.context._constructor_.md +2 -2
- package/site/apidocs/context.context._mergewithparent.md +1 -1
- package/site/apidocs/context.context.configure.md +1 -1
- package/site/apidocs/context.context.createview.md +2 -2
- package/site/apidocs/context.context.find.md +1 -1
- package/site/apidocs/context.context.findorcreatebinding.md +1 -1
- package/site/apidocs/context.context.get.md +1 -1
- package/site/apidocs/context.context.getbinding_1.md +1 -1
- package/site/apidocs/context.context.getconfig.md +2 -2
- package/site/apidocs/context.context.getconfigasvalueorpromise.md +2 -2
- package/site/apidocs/context.context.getconfigsync.md +2 -2
- package/site/apidocs/context.context.getsync.md +1 -1
- package/site/apidocs/context.context.getsync_1.md +1 -1
- package/site/apidocs/context.context.inspect.md +1 -1
- package/site/apidocs/context.contextsubscriptionmanager.notifyobservers.md +1 -1
- package/site/apidocs/context.contextsubscriptionmanager.waituntilpendingnotificationsdone.md +1 -1
- package/site/apidocs/context.contextview._constructor_.md +2 -2
- package/site/apidocs/context.contextview.asgetter.md +1 -1
- package/site/apidocs/context.contextview.resolve.md +1 -1
- package/site/apidocs/context.contextview.singlevalue.md +1 -1
- package/site/apidocs/context.contextview.values.md +1 -1
- package/site/apidocs/context.createbindingfromclass.md +1 -1
- package/site/apidocs/context.createproxywithinterceptors.md +3 -3
- package/site/apidocs/context.createviewgetter.md +1 -1
- package/site/apidocs/context.createviewgetter_1.md +2 -2
- package/site/apidocs/context.defaultconfigurationresolver.getconfigasvalueorpromise.md +2 -2
- package/site/apidocs/context.describeinjectedarguments.md +1 -1
- package/site/apidocs/context.filterbykey.md +1 -1
- package/site/apidocs/context.genericinterceptorchain._constructor__1.md +1 -1
- package/site/apidocs/context.genericinterceptorchain.invokeinterceptors.md +1 -1
- package/site/apidocs/context.globalinterceptor.md +1 -1
- package/site/apidocs/context.inject.binding.md +1 -1
- package/site/apidocs/context.inject.getter.md +1 -1
- package/site/apidocs/context.inject.setter.md +1 -1
- package/site/apidocs/context.inject.tag.md +1 -1
- package/site/apidocs/context.inject.view.md +1 -1
- package/site/apidocs/context.injectionmetadata.md +1 -1
- package/site/apidocs/context.instantiateclass.md +2 -2
- package/site/apidocs/context.intercept.md +2 -2
- package/site/apidocs/context.interceptionhandler._constructor_.md +3 -3
- package/site/apidocs/context.interceptionhandler.md +1 -1
- package/site/apidocs/context.interceptor.md +1 -1
- package/site/apidocs/context.invocationcontext._constructor_.md +1 -1
- package/site/apidocs/context.invocationcontext.invoketargetmethod.md +1 -1
- package/site/apidocs/context.invokemethod.md +2 -2
- package/site/apidocs/context.invokemethodwithinterceptors.md +1 -1
- package/site/apidocs/context.isbindingtagfilter.md +1 -1
- package/site/apidocs/context.jsonarray.md +1 -1
- package/site/apidocs/context.jsonobject.md +1 -1
- package/site/apidocs/context.proxysource.md +1 -1
- package/site/apidocs/context.registerinterceptor.md +1 -1
- package/site/apidocs/context.resolutionsession.fork.md +1 -1
- package/site/apidocs/context.resolutionsession.runwithbinding.md +1 -1
- package/site/apidocs/context.resolutionsession.runwithinjection.md +1 -1
- package/site/apidocs/context.resolveinjectedarguments.md +2 -2
- package/site/apidocs/context.resolveinjectedproperties.md +1 -1
- package/site/apidocs/context.sortbindingsbyphase.md +2 -2
- package/site/apidocs/context.trycatchfinally.md +2 -2
- package/site/apidocs/core.addextension.md +1 -1
- package/site/apidocs/core.application._constructor__1.md +2 -2
- package/site/apidocs/core.application.component.md +1 -1
- package/site/apidocs/core.application.controller.md +1 -1
- package/site/apidocs/core.application.interceptor.md +1 -1
- package/site/apidocs/core.application.lifecycleobserver.md +1 -1
- package/site/apidocs/core.application.server.md +1 -1
- package/site/apidocs/core.application.service.md +1 -1
- package/site/apidocs/core.createservicebinding.md +1 -1
- package/site/apidocs/core.extensions.list.md +2 -2
- package/site/apidocs/core.extensions.view.md +2 -2
- package/site/apidocs/core.lifecycleobserverregistry._constructor_.md +1 -1
- package/site/apidocs/core.lifecycleobserverregistry.notifygroups.md +1 -1
- package/site/apidocs/core.service.md +2 -2
- package/site/apidocs/express.asmiddleware.md +1 -1
- package/site/apidocs/express.buildname.md +2 -2
- package/site/apidocs/express.createinterceptor.md +1 -1
- package/site/apidocs/express.createmiddleware.md +1 -1
- package/site/apidocs/express.createmiddlewarebinding.md +1 -1
- package/site/apidocs/express.createmiddlewareinterceptorbinding.md +1 -1
- package/site/apidocs/express.defineinterceptorprovider.md +2 -2
- package/site/apidocs/express.expressapplication._constructor_.md +1 -1
- package/site/apidocs/express.expressmiddlewareinterceptorprovider._constructor_.md +1 -1
- package/site/apidocs/express.expressmiddlewareinterceptorprovider.md +1 -1
- package/site/apidocs/express.expressserver._constructor_.md +2 -2
- package/site/apidocs/express.getmiddlewarecontext.md +1 -1
- package/site/apidocs/express.invokemiddlewareprovider.action.md +1 -1
- package/site/apidocs/express.invokemiddlewareprovider.value.md +1 -1
- package/site/apidocs/express.middleware.md +1 -1
- package/site/apidocs/express.middlewarebindingoptions.md +1 -1
- package/site/apidocs/express.middlewarechain.md +1 -1
- package/site/apidocs/express.middlewarecontext._constructor_.md +2 -2
- package/site/apidocs/express.middlewareinterceptorbindingoptions.md +1 -1
- package/site/apidocs/express.middlewaremixin.md +28 -28
- package/site/apidocs/express.middlewareregistry.expressmiddleware.md +1 -1
- package/site/apidocs/express.middlewareregistry.expressmiddleware_1.md +2 -2
- package/site/apidocs/express.middlewareregistry.middleware.md +1 -1
- package/site/apidocs/express.middlewareview._constructor_.md +1 -1
- package/site/apidocs/express.registerexpressmiddleware.md +2 -2
- package/site/apidocs/express.registerexpressmiddlewareinterceptor.md +2 -2
- package/site/apidocs/filter.filterbuilder._constructor_.md +1 -1
- package/site/apidocs/filter.inclusion.md +1 -0
- package/site/apidocs/filter.inclusion.targettype.md +21 -0
- package/site/apidocs/filter.wherebuilder._constructor_.md +1 -1
- package/site/apidocs/filter.wherebuilder.exists.md +1 -1
- package/site/apidocs/graphql.graphqlserver._constructor_.md +2 -2
- package/site/apidocs/graphql.graphqlserver.exportgraphqlschema.md +2 -2
- package/site/apidocs/graphql.graphqlserver.resolver.md +1 -1
- package/site/apidocs/graphql.registerresolver.md +1 -1
- package/site/apidocs/health.healthcomponent._constructor_.md +1 -1
- package/site/apidocs/http-server.basehttpoptions.md +1 -1
- package/site/apidocs/http-server.httpserver._constructor_.md +1 -1
- package/site/apidocs/logging.winstonloggerprovider._constructor_.md +1 -1
- package/site/apidocs/logging.winstonloggerprovider.md +1 -1
- package/site/apidocs/metadata.classdecoratorfactory.createdecorator.md +1 -1
- package/site/apidocs/metadata.classdecoratorfactory.md +1 -1
- package/site/apidocs/metadata.classdecoratorfactory.mergewithinherited.md +2 -2
- package/site/apidocs/metadata.classdecoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/metadata.decoratorfactory._constructor_.md +1 -1
- package/site/apidocs/metadata.decoratorfactory._createdecorator.md +1 -1
- package/site/apidocs/metadata.decoratorfactory.decorate.md +2 -2
- package/site/apidocs/metadata.decoratorfactory.duplicatedecorationerror.md +2 -2
- package/site/apidocs/metadata.decoratorfactory.getnumberofparameters.md +1 -1
- package/site/apidocs/metadata.decoratorfactory.gettargetname.md +2 -2
- package/site/apidocs/metadata.decoratorfactory.mergewithinherited.md +2 -2
- package/site/apidocs/metadata.decoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/metadata.metadatainspector.definemetadata.md +1 -1
- package/site/apidocs/metadata.metadatainspector.getallmethodmetadata.md +1 -1
- package/site/apidocs/metadata.metadatainspector.getallparametermetadata.md +2 -2
- package/site/apidocs/metadata.metadatainspector.getallpropertymetadata.md +1 -1
- package/site/apidocs/metadata.metadatainspector.getclassmetadata.md +1 -1
- package/site/apidocs/metadata.metadatainspector.getmethodmetadata.md +2 -2
- package/site/apidocs/metadata.metadatainspector.getparametermetadata.md +1 -1
- package/site/apidocs/metadata.metadatainspector.getpropertymetadata.md +1 -1
- package/site/apidocs/metadata.methoddecoratorfactory.createdecorator.md +1 -1
- package/site/apidocs/metadata.methoddecoratorfactory.md +1 -1
- package/site/apidocs/metadata.methoddecoratorfactory.mergewithinherited.md +2 -2
- package/site/apidocs/metadata.methoddecoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/metadata.methodmultidecoratorfactory.md +1 -1
- package/site/apidocs/metadata.methodmultidecoratorfactory.mergewithinherited.md +1 -1
- package/site/apidocs/metadata.methodmultidecoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/metadata.methodparameterdecoratorfactory.createdecorator.md +1 -1
- package/site/apidocs/metadata.methodparameterdecoratorfactory.md +1 -1
- package/site/apidocs/metadata.methodparameterdecoratorfactory.mergewithinherited.md +2 -2
- package/site/apidocs/metadata.methodparameterdecoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/metadata.namespacedreflect._constructor_.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.decorate.md +2 -2
- package/site/apidocs/metadata.namespacedreflect.definemetadata.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.deletemetadata.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.getmetadata.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.getmetadatakeys.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.getownmetadata.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.getownmetadatakeys.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.hasmetadata.md +1 -1
- package/site/apidocs/metadata.namespacedreflect.hasownmetadata.md +1 -1
- package/site/apidocs/metadata.parameterdecoratorfactory.createdecorator.md +1 -1
- package/site/apidocs/metadata.parameterdecoratorfactory.md +1 -1
- package/site/apidocs/metadata.parameterdecoratorfactory.mergewithinherited.md +2 -2
- package/site/apidocs/metadata.parameterdecoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/metadata.propertydecoratorfactory.createdecorator.md +1 -1
- package/site/apidocs/metadata.propertydecoratorfactory.md +1 -1
- package/site/apidocs/metadata.propertydecoratorfactory.mergewithinherited.md +2 -2
- package/site/apidocs/metadata.propertydecoratorfactory.mergewithown.md +2 -2
- package/site/apidocs/metrics.metricscomponent._constructor_.md +1 -1
- package/site/apidocs/openapi-spec-builder.componentsspecbuilder.md +1 -1
- package/site/apidocs/openapi-spec-builder.openapispecbuilder.md +1 -1
- package/site/apidocs/openapi-spec-builder.openapispecbuilder.withoperationreturningstring.md +1 -1
- package/site/apidocs/openapi-spec-builder.operationspecbuilder.md +1 -1
- package/site/apidocs/openapi-spec-builder.operationspecbuilder.withstringresponse.md +1 -1
- package/site/apidocs/openapi-v3.del.md +1 -1
- package/site/apidocs/openapi-v3.deprecated.md +3 -3
- package/site/apidocs/openapi-v3.get.md +1 -1
- package/site/apidocs/openapi-v3.getfilterschemafor.md +1 -1
- package/site/apidocs/openapi-v3.getmodelschemaref.md +1 -1
- package/site/apidocs/openapi-v3.jsontoschemaobject.md +1 -1
- package/site/apidocs/openapi-v3.oasenhancerservice._constructor_.md +1 -1
- package/site/apidocs/openapi-v3.oasenhancerservice.applyallenhancers.md +1 -1
- package/site/apidocs/openapi-v3.operation.md +1 -1
- package/site/apidocs/openapi-v3.param.filter.md +1 -1
- package/site/apidocs/openapi-v3.param.query.md +1 -1
- package/site/apidocs/openapi-v3.param.where.md +1 -1
- package/site/apidocs/openapi-v3.patch.md +1 -1
- package/site/apidocs/openapi-v3.post.md +1 -1
- package/site/apidocs/openapi-v3.put.md +1 -1
- package/site/apidocs/openapi-v3.requestbody.array.md +3 -3
- package/site/apidocs/openapi-v3.requestbody.file.md +3 -3
- package/site/apidocs/openapi-v3.tags.md +2 -2
- package/site/apidocs/openapi-v3.visibility.md +2 -2
- package/site/apidocs/pooling.getpooledvalue.md +1 -1
- package/site/apidocs/pooling.poolfactory.md +1 -1
- package/site/apidocs/pooling.poolingservice.acquire.md +1 -1
- package/site/apidocs/pooling.poolingservice.run.md +1 -1
- package/site/apidocs/repository-json-schema.getfieldsjsonschemafor.md +1 -1
- package/site/apidocs/repository-json-schema.getfilterjsonschemafor.md +1 -1
- package/site/apidocs/repository-json-schema.getjsonschema.md +1 -1
- package/site/apidocs/repository-json-schema.getjsonschemaref.md +1 -1
- package/site/apidocs/repository-json-schema.getscopefilterjsonschemafor.md +1 -1
- package/site/apidocs/repository-json-schema.getwherejsonschemafor.md +1 -1
- package/site/apidocs/repository-json-schema.modeltojsonschema.md +1 -1
- package/site/apidocs/repository.anytype.md +1 -1
- package/site/apidocs/repository.applicationwithrepositories.component.md +1 -1
- package/site/apidocs/repository.applicationwithrepositories.datasource.md +1 -1
- package/site/apidocs/repository.applicationwithrepositories.migrateschema.md +1 -1
- package/site/apidocs/repository.applicationwithrepositories.repository.md +1 -1
- package/site/apidocs/repository.arraytype.md +1 -1
- package/site/apidocs/repository.belongsto.md +2 -2
- package/site/apidocs/repository.belongstodefinition.md +1 -0
- package/site/apidocs/repository.belongstodefinition.polymorphic.md +25 -0
- package/site/apidocs/repository.belongstorepository.get.md +4 -2
- package/site/apidocs/repository.booleantype.md +1 -1
- package/site/apidocs/repository.buffertype.coerce.md +1 -1
- package/site/apidocs/repository.buffertype.md +1 -1
- package/site/apidocs/repository.buffertype.serialize.md +1 -1
- package/site/apidocs/repository.buildmodeldefinition.md +1 -1
- package/site/apidocs/repository.connector.execute.md +1 -1
- package/site/apidocs/repository.createbelongstoaccessor.md +5 -3
- package/site/apidocs/repository.createbelongstoinclusionresolver.md +4 -2
- package/site/apidocs/repository.createhasmanythroughrepositoryfactory.md +4 -2
- package/site/apidocs/repository.createhasonerepositoryfactory.md +6 -2
- package/site/apidocs/repository.createreferencesmanyaccessor.md +36 -0
- package/site/apidocs/repository.createreferencesmanyinclusionresolver.md +37 -0
- package/site/apidocs/repository.crudconnector.count.md +2 -2
- package/site/apidocs/repository.crudconnector.create.md +1 -1
- package/site/apidocs/repository.crudconnector.createall.md +1 -1
- package/site/apidocs/repository.crudconnector.delete.md +1 -1
- package/site/apidocs/repository.crudconnector.deleteall.md +2 -2
- package/site/apidocs/repository.crudconnector.deletebyid.md +1 -1
- package/site/apidocs/repository.crudconnector.exists.md +1 -1
- package/site/apidocs/repository.crudconnector.find.md +2 -2
- package/site/apidocs/repository.crudconnector.findbyid.md +1 -1
- package/site/apidocs/repository.crudconnector.replacebyid.md +1 -1
- package/site/apidocs/repository.crudconnector.save.md +1 -1
- package/site/apidocs/repository.crudconnector.update.md +1 -1
- package/site/apidocs/repository.crudconnector.updateall.md +2 -2
- package/site/apidocs/repository.crudconnector.updatebyid.md +1 -1
- package/site/apidocs/repository.crudrepository.count.md +2 -2
- package/site/apidocs/repository.crudrepository.create.md +1 -1
- package/site/apidocs/repository.crudrepository.createall.md +1 -1
- package/site/apidocs/repository.crudrepository.deleteall.md +2 -2
- package/site/apidocs/repository.crudrepository.find.md +2 -2
- package/site/apidocs/repository.crudrepository.md +1 -1
- package/site/apidocs/repository.crudrepository.updateall.md +2 -2
- package/site/apidocs/repository.crudrepositoryimpl.count.md +2 -2
- package/site/apidocs/repository.crudrepositoryimpl.create.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.createall.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.delete.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.deleteall.md +2 -2
- package/site/apidocs/repository.crudrepositoryimpl.deletebyid.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.execute.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.exists.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.find.md +2 -2
- package/site/apidocs/repository.crudrepositoryimpl.findbyid.md +2 -2
- package/site/apidocs/repository.crudrepositoryimpl.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.replacebyid.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.save.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.update.md +1 -1
- package/site/apidocs/repository.crudrepositoryimpl.updateall.md +2 -2
- package/site/apidocs/repository.crudrepositoryimpl.updatebyid.md +1 -1
- package/site/apidocs/repository.datetype.md +1 -1
- package/site/apidocs/repository.defaultbelongstorepository._constructor_.md +5 -2
- package/site/apidocs/repository.defaultbelongstorepository.get.md +4 -2
- package/site/apidocs/repository.defaultbelongstorepository.gettargetrepository.md +3 -1
- package/site/apidocs/repository.defaultbelongstorepository.gettargetrepositorydict.md +23 -0
- package/site/apidocs/repository.defaultbelongstorepository.md +5 -3
- package/site/apidocs/repository.defaultbelongstorepository.targetresolver.md +21 -0
- package/site/apidocs/repository.defaultcrudrepository._createbelongstoaccessorfor.md +4 -2
- package/site/apidocs/repository.defaultcrudrepository._createhasmanyrepositoryfactoryfor.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository._createhasonerepositoryfactoryfor.md +4 -2
- package/site/apidocs/repository.defaultcrudrepository._createreferencesmanyaccessorfor.md +40 -0
- package/site/apidocs/repository.defaultcrudrepository.count.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.create.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.createall.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.createbelongstoaccessorfor.md +4 -2
- package/site/apidocs/repository.defaultcrudrepository.createhasmanyrepositoryfactoryfor.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.createhasmanythroughrepositoryfactoryfor.md +5 -3
- package/site/apidocs/repository.defaultcrudrepository.createhasonerepositoryfactoryfor.md +4 -2
- package/site/apidocs/repository.defaultcrudrepository.createreferencesmanyaccessorfor.md +35 -0
- package/site/apidocs/repository.defaultcrudrepository.delete.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.deleteall.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.deletebyid.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.ensurepersistable.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.entitytodata.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.execute.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.exists.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.find.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.findbyid.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.findone.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.includerelatedmodels.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.md +10 -8
- package/site/apidocs/repository.defaultcrudrepository.normalizefilter.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.replacebyid.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.save.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.update.md +1 -1
- package/site/apidocs/repository.defaultcrudrepository.updateall.md +2 -2
- package/site/apidocs/repository.defaultcrudrepository.updatebyid.md +1 -1
- package/site/apidocs/repository.defaulthasmanyrepository.create.md +1 -1
- package/site/apidocs/repository.defaulthasmanyrepository.delete.md +2 -2
- package/site/apidocs/repository.defaulthasmanyrepository.find.md +2 -2
- package/site/apidocs/repository.defaulthasmanyrepository.md +1 -1
- package/site/apidocs/repository.defaulthasmanyrepository.patch.md +2 -2
- package/site/apidocs/repository.defaulthasmanythroughrepository._constructor_.md +6 -2
- package/site/apidocs/repository.defaulthasmanythroughrepository.create.md +3 -1
- package/site/apidocs/repository.defaulthasmanythroughrepository.delete.md +7 -3
- package/site/apidocs/repository.defaulthasmanythroughrepository.find.md +7 -3
- package/site/apidocs/repository.defaulthasmanythroughrepository.gettargetrepository.md +3 -1
- package/site/apidocs/repository.defaulthasmanythroughrepository.gettargetrepositorydict.md +23 -0
- package/site/apidocs/repository.defaulthasmanythroughrepository.link.md +1 -1
- package/site/apidocs/repository.defaulthasmanythroughrepository.md +6 -3
- package/site/apidocs/repository.defaulthasmanythroughrepository.patch.md +11 -5
- package/site/apidocs/repository.defaulthasmanythroughrepository.targetresolver.md +21 -0
- package/site/apidocs/repository.defaulthasmanythroughrepository.throughresolver.md +21 -0
- package/site/apidocs/repository.defaulthasmanythroughrepository.unlink.md +1 -1
- package/site/apidocs/repository.defaulthasmanythroughrepository.unlinkall.md +1 -1
- package/site/apidocs/repository.defaulthasonerepository._constructor_.md +5 -2
- package/site/apidocs/repository.defaulthasonerepository.create.md +4 -2
- package/site/apidocs/repository.defaulthasonerepository.delete.md +4 -2
- package/site/apidocs/repository.defaulthasonerepository.get.md +5 -3
- package/site/apidocs/repository.defaulthasonerepository.gettargetrepository.md +3 -1
- package/site/apidocs/repository.defaulthasonerepository.gettargetrepositorydict.md +23 -0
- package/site/apidocs/repository.defaulthasonerepository.md +5 -3
- package/site/apidocs/repository.defaulthasonerepository.patch.md +7 -3
- package/site/apidocs/repository.defaulthasonerepository.targetresolver.md +21 -0
- package/site/apidocs/repository.defaultkeyvaluerepository.delete.md +1 -1
- package/site/apidocs/repository.defaultkeyvaluerepository.deleteall.md +1 -1
- package/site/apidocs/repository.defaultkeyvaluerepository.expire.md +1 -1
- package/site/apidocs/repository.defaultkeyvaluerepository.get.md +1 -1
- package/site/apidocs/repository.defaultkeyvaluerepository.keys.md +2 -2
- package/site/apidocs/repository.defaultkeyvaluerepository.md +1 -1
- package/site/apidocs/repository.defaultkeyvaluerepository.set.md +1 -1
- package/site/apidocs/repository.defaultkeyvaluerepository.ttl.md +1 -1
- package/site/apidocs/repository.defaultreferencesmanyrepository._constructor_.md +31 -0
- package/site/apidocs/repository.defaultreferencesmanyrepository.constraint.md +21 -0
- package/site/apidocs/repository.defaultreferencesmanyrepository.get.md +32 -0
- package/site/apidocs/repository.defaultreferencesmanyrepository.gettargetrepository.md +21 -0
- package/site/apidocs/repository.defaultreferencesmanyrepository.md +42 -0
- package/site/apidocs/repository.defaulttransactionalrepository.begintransaction.md +1 -1
- package/site/apidocs/repository.defaulttransactionalrepository.md +2 -2
- package/site/apidocs/repository.embedsmany.md +1 -1
- package/site/apidocs/repository.embedsone.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.delete.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.deletebyid.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.exists.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.findbyid.md +2 -2
- package/site/apidocs/repository.entitycrudrepository.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.replacebyid.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.save.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.update.md +1 -1
- package/site/apidocs/repository.entitycrudrepository.updatebyid.md +1 -1
- package/site/apidocs/repository.entitynotfounderror._constructor_.md +1 -1
- package/site/apidocs/repository.entityrepository.md +1 -1
- package/site/apidocs/repository.executablerepository.execute.md +1 -1
- package/site/apidocs/repository.executablerepository.md +1 -1
- package/site/apidocs/repository.findbyforeignkeys.md +2 -2
- package/site/apidocs/repository.hasmany.md +1 -1
- package/site/apidocs/repository.hasmanydefinition.md +1 -1
- package/site/apidocs/repository.hasmanydefinition.through.md +3 -0
- package/site/apidocs/repository.hasmanyrepository.create.md +1 -1
- package/site/apidocs/repository.hasmanyrepository.delete.md +2 -2
- package/site/apidocs/repository.hasmanyrepository.find.md +2 -2
- package/site/apidocs/repository.hasmanyrepository.patch.md +2 -2
- package/site/apidocs/repository.hasmanythroughrepository.create.md +3 -1
- package/site/apidocs/repository.hasmanythroughrepository.delete.md +7 -3
- package/site/apidocs/repository.hasmanythroughrepository.find.md +7 -3
- package/site/apidocs/repository.hasmanythroughrepository.link.md +1 -1
- package/site/apidocs/repository.hasmanythroughrepository.patch.md +11 -5
- package/site/apidocs/repository.hasmanythroughrepository.unlink.md +1 -1
- package/site/apidocs/repository.hasmanythroughrepository.unlinkall.md +1 -1
- package/site/apidocs/repository.hasone.md +1 -1
- package/site/apidocs/repository.hasonedefinition.md +1 -0
- package/site/apidocs/repository.hasonedefinition.polymorphic.md +25 -0
- package/site/apidocs/repository.hasonerepository.create.md +4 -2
- package/site/apidocs/repository.hasonerepository.delete.md +4 -2
- package/site/apidocs/repository.hasonerepository.get.md +5 -3
- package/site/apidocs/repository.hasonerepository.patch.md +7 -3
- package/site/apidocs/repository.includefieldifnot.md +33 -0
- package/site/apidocs/repository.includerelatedmodels.md +2 -2
- package/site/apidocs/repository.invalidpolymorphismerror._constructor_.md +32 -0
- package/site/apidocs/repository.invalidpolymorphismerror.code.md +21 -0
- package/site/apidocs/repository.invalidpolymorphismerror.md +35 -0
- package/site/apidocs/repository.invalidrelationerror._constructor_.md +1 -1
- package/site/apidocs/repository.isinvalidpolymorphismerror.md +32 -0
- package/site/apidocs/repository.keyvaluerepository.delete.md +1 -1
- package/site/apidocs/repository.keyvaluerepository.deleteall.md +1 -1
- package/site/apidocs/repository.keyvaluerepository.expire.md +1 -1
- package/site/apidocs/repository.keyvaluerepository.get.md +1 -1
- package/site/apidocs/repository.keyvaluerepository.keys.md +2 -2
- package/site/apidocs/repository.keyvaluerepository.md +1 -1
- package/site/apidocs/repository.keyvaluerepository.set.md +1 -1
- package/site/apidocs/repository.keyvaluerepository.ttl.md +1 -1
- package/site/apidocs/repository.kvconnector.delete.md +1 -1
- package/site/apidocs/repository.kvconnector.deleteall.md +1 -1
- package/site/apidocs/repository.kvconnector.expire.md +1 -1
- package/site/apidocs/repository.kvconnector.get.md +1 -1
- package/site/apidocs/repository.kvconnector.iteratekeys.md +2 -2
- package/site/apidocs/repository.kvconnector.keys.md +1 -1
- package/site/apidocs/repository.kvconnector.set.md +1 -1
- package/site/apidocs/repository.kvconnector.ttl.md +1 -1
- package/site/apidocs/repository.md +13 -4
- package/site/apidocs/repository.model._constructor_.md +1 -1
- package/site/apidocs/repository.model.md +1 -1
- package/site/apidocs/repository.model.toobject.md +1 -1
- package/site/apidocs/repository.modeldefinition.md +1 -0
- package/site/apidocs/repository.modeldefinition.referencesmany.md +35 -0
- package/site/apidocs/repository.modelmetadatahelper.getmodelmetadata.md +1 -1
- package/site/apidocs/repository.modeltype.md +1 -1
- package/site/apidocs/repository.nulltype.md +1 -1
- package/site/apidocs/repository.numbertype.md +1 -1
- package/site/apidocs/repository.objecttype.md +1 -1
- package/site/apidocs/repository.property.array.md +1 -1
- package/site/apidocs/repository.referencesmany.md +5 -3
- package/site/apidocs/repository.referencesmanyaccessor.inclusionresolver.md +23 -0
- package/site/apidocs/repository.referencesmanyaccessor.md +28 -0
- package/site/apidocs/repository.referencesmanydefinition.keyfrom.md +21 -0
- package/site/apidocs/repository.referencesmanydefinition.keyto.md +25 -0
- package/site/apidocs/repository.referencesmanydefinition.md +32 -0
- package/site/apidocs/repository.referencesmanydefinition.targetsmany.md +21 -0
- package/site/apidocs/repository.referencesmanydefinition.type.md +21 -0
- package/site/apidocs/repository.referencesmanyrepository.get.md +36 -0
- package/site/apidocs/repository.referencesmanyrepository.md +30 -0
- package/site/apidocs/repository.referencesone.md +1 -1
- package/site/apidocs/repository.relation.md +1 -1
- package/site/apidocs/repository.relationmetadata.md +2 -2
- package/site/apidocs/repository.repositorymetadata._constructor_.md +1 -1
- package/site/apidocs/repository.repositorymixin.md +50 -50
- package/site/apidocs/repository.repositorymixindoc.datasource.md +1 -1
- package/site/apidocs/repository.repositorymixindoc.migrateschema.md +1 -1
- package/site/apidocs/repository.stringtype.md +1 -1
- package/site/apidocs/repository.transactionalrepository.begintransaction.md +1 -1
- package/site/apidocs/repository.transactionalrepository.md +1 -1
- package/site/apidocs/repository.type.coerce.md +1 -1
- package/site/apidocs/repository.type.iscoercible.md +1 -1
- package/site/apidocs/repository.type.serialize.md +1 -1
- package/site/apidocs/repository.uniontype.md +1 -1
- package/site/apidocs/{rest-crud.crudrestcontroller.create.md → rest-crud.crudrestcontroller.find.md} +8 -8
- package/site/apidocs/rest-crud.crudrestcontroller.md +1 -1
- package/site/apidocs/rest-crud.crudrestcontrolleroptions.md +1 -0
- package/site/apidocs/rest-crud.crudrestcontrolleroptions.readonly.md +23 -0
- package/site/apidocs/rest-crud.modelcrudrestapiconfig.md +1 -0
- package/site/apidocs/rest-crud.modelcrudrestapiconfig.readonly.md +23 -0
- package/site/apidocs/rest-explorer.restexplorercomponent._constructor_.md +1 -1
- package/site/apidocs/rest-msgpack.msgpackbodyparser._constructor_.md +1 -1
- package/site/apidocs/rest-msgpack.msgpackbodyparsercomponent._constructor_.md +1 -1
- package/site/apidocs/rest.controllerroute._constructor_.md +2 -2
- package/site/apidocs/rest.createbodyparserbinding.md +1 -1
- package/site/apidocs/rest.createroutesforcontroller.md +1 -1
- package/site/apidocs/rest.findroutemiddlewareprovider.md +1 -1
- package/site/apidocs/rest.httphandler._constructor_.md +1 -1
- package/site/apidocs/rest.httphandler.registercontroller.md +1 -1
- package/site/apidocs/rest.infospecenhancer._constructor_.md +1 -1
- package/site/apidocs/rest.invokemethodmiddlewareprovider.md +1 -1
- package/site/apidocs/rest.jsonbodyparser._constructor_.md +1 -1
- package/site/apidocs/rest.middlewaresequence._constructor_.md +1 -1
- package/site/apidocs/rest.parsejson.md +2 -2
- package/site/apidocs/rest.parseoperationargs.md +2 -2
- package/site/apidocs/rest.parseparamsmiddlewareprovider.md +1 -1
- package/site/apidocs/rest.rawbodyparser._constructor_.md +1 -1
- package/site/apidocs/rest.redirectroute._constructor_.md +1 -1
- package/site/apidocs/rest.regexprouter._constructor_.md +1 -1
- package/site/apidocs/rest.rejectprovider.value.md +1 -1
- package/site/apidocs/rest.requestbodyparser._constructor_.md +2 -2
- package/site/apidocs/rest.requestcontext._constructor_.md +1 -1
- package/site/apidocs/rest.restapplication._constructor__1.md +2 -2
- package/site/apidocs/rest.restapplication.basepath.md +1 -1
- package/site/apidocs/rest.restapplication.bodyparser.md +1 -1
- package/site/apidocs/rest.restapplication.exportopenapispec.md +2 -2
- package/site/apidocs/rest.restapplication.expressmiddleware.md +1 -1
- package/site/apidocs/rest.restapplication.expressmiddleware_1.md +2 -2
- package/site/apidocs/rest.restapplication.middleware.md +1 -1
- package/site/apidocs/rest.restapplication.mountexpressrouter.md +1 -1
- package/site/apidocs/rest.restapplication.redirect.md +1 -1
- package/site/apidocs/rest.restapplication.server.md +1 -1
- package/site/apidocs/rest.restapplication.static.md +1 -1
- package/site/apidocs/rest.restcomponent._constructor_.md +1 -1
- package/site/apidocs/rest.resthttperrors.invaliddata.md +1 -1
- package/site/apidocs/rest.resthttperrors.unsupportedmediatype.md +1 -1
- package/site/apidocs/rest.restserver._constructor_.md +1 -1
- package/site/apidocs/rest.restserver.addopenapispecendpoint.md +1 -1
- package/site/apidocs/rest.restserver.basepath.md +1 -1
- package/site/apidocs/rest.restserver.bodyparser.md +1 -1
- package/site/apidocs/rest.restserver.exportopenapispec.md +2 -2
- package/site/apidocs/rest.restserver.getapispec.md +1 -1
- package/site/apidocs/rest.restserver.mountexpressrouter.md +1 -1
- package/site/apidocs/rest.restserver.redirect.md +1 -1
- package/site/apidocs/rest.restserver.static.md +1 -1
- package/site/apidocs/rest.routesource.md +1 -1
- package/site/apidocs/rest.routingtable._constructor_.md +2 -2
- package/site/apidocs/rest.routingtable.registercontroller.md +1 -1
- package/site/apidocs/rest.sanitizejsonparse.md +2 -2
- package/site/apidocs/rest.sendresponsemiddlewareprovider.md +1 -1
- package/site/apidocs/rest.textbodyparser._constructor_.md +1 -1
- package/site/apidocs/rest.trierouter._constructor_.md +1 -1
- package/site/apidocs/rest.urlencodedbodyparser._constructor_.md +1 -1
- package/site/apidocs/rest.validateapipath.md +1 -1
- package/site/apidocs/rest.validaterequestbody.md +3 -3
- package/site/apidocs/rest.validatevalueagainstschema.md +2 -2
- package/site/apidocs/service-proxy.applicationwithservices.component.md +1 -1
- package/site/apidocs/service-proxy.applicationwithservices.serviceprovider.md +1 -1
- package/site/apidocs/service-proxy.servicemixin.md +43 -43
- package/site/apidocs/service-proxy.serviceproxy.md +2 -2
- package/site/apidocs/socketio.socketioapplication._constructor_.md +1 -1
- package/site/apidocs/socketio.socketioapplication.server.md +1 -1
- package/site/apidocs/socketio.socketioinvokemethodprovider.md +1 -1
- package/site/apidocs/socketio.socketiorejectprovider.md +1 -1
- package/site/apidocs/socketio.socketiosendprovider.md +1 -1
- package/site/apidocs/socketio.socketioserver._constructor_.md +1 -1
- package/site/apidocs/socketio.socketioserver.route.md +1 -1
- package/site/apidocs/testlab.createunexpectedhttperrorlogger.md +1 -1
- package/site/apidocs/testlab.givenhttpserverconfig.md +1 -1
- package/site/apidocs/testlab.httpgetasync.md +1 -1
- package/site/apidocs/testlab.httpsgetasync.md +1 -1
- package/site/apidocs/testlab.stubexpresscontext.md +1 -1
- package/site/apidocs/testlab.stubhandlercontext.md +1 -1
- package/site/apidocs/testlab.testsandbox._constructor_.md +1 -1
- package/site/apidocs/testlab.testsandbox.copyfile.md +2 -2
- package/site/apidocs/tsdocs.getpackages.md +1 -1
- package/site/apidocs/tsdocs.getpackageswithtsdocs.md +1 -1
- package/site/apidocs/tsdocs.runextractorformonorepo.md +1 -1
- package/site/apidocs/tsdocs.runextractorforpackage.md +2 -2
- package/site/apidocs/tsdocs.updateapidocs.md +1 -1
- package/site/apidocs/typeorm.getmodelschema.md +1 -1
- package/site/apidocs/typeorm.typeorm.repository.md +1 -1
- package/site/apidocs/typeorm.typeormcomponent._constructor_.md +1 -1
- package/site/apidocs/typeorm.typeormconnectionbooter._constructor_.md +1 -1
- package/site/apidocs/typeorm.typeormmixin.md +61 -61
- package/site/changelogs/bodyparsers/rest-msgpack/CHANGELOG.md +30 -0
- package/site/changelogs/examples/access-control-migration/CHANGELOG.md +30 -0
- package/site/changelogs/examples/binding-resolution/CHANGELOG.md +30 -0
- package/site/changelogs/examples/context/CHANGELOG.md +30 -0
- package/site/changelogs/examples/express-composition/CHANGELOG.md +30 -0
- package/site/changelogs/examples/file-transfer/CHANGELOG.md +30 -0
- package/site/changelogs/examples/graphql/CHANGELOG.md +30 -0
- package/site/changelogs/examples/greeter-extension/CHANGELOG.md +30 -0
- package/site/changelogs/examples/greeting-app/CHANGELOG.md +30 -0
- package/site/changelogs/examples/hello-world/CHANGELOG.md +30 -0
- package/site/changelogs/examples/lb3-application/CHANGELOG.md +30 -0
- package/site/changelogs/examples/log-extension/CHANGELOG.md +30 -0
- package/site/changelogs/examples/metrics-prometheus/CHANGELOG.md +30 -0
- package/site/changelogs/examples/multi-tenancy/CHANGELOG.md +30 -0
- package/site/changelogs/examples/passport-login/CHANGELOG.md +30 -0
- package/site/changelogs/examples/references-many/CHANGELOG.md +28 -0
- package/site/changelogs/examples/rest-crud/CHANGELOG.md +30 -0
- package/site/changelogs/examples/rpc-server/CHANGELOG.md +30 -0
- package/site/changelogs/examples/soap-calculator/CHANGELOG.md +30 -0
- package/site/changelogs/examples/socketio/CHANGELOG.md +30 -0
- package/site/changelogs/examples/todo/CHANGELOG.md +30 -0
- package/site/changelogs/examples/todo-jwt/CHANGELOG.md +30 -0
- package/site/changelogs/examples/todo-list/CHANGELOG.md +30 -0
- package/site/changelogs/examples/validation-app/CHANGELOG.md +30 -0
- package/site/changelogs/examples/webpack/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/apiconnect/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/authentication-jwt/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/authentication-passport/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/context-explorer/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/cron/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/graphql/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/health/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/logging/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/metrics/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/pooling/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/socketio/CHANGELOG.md +30 -0
- package/site/changelogs/extensions/typeorm/CHANGELOG.md +32 -0
- package/site/changelogs/fixtures/mock-oauth2-provider/CHANGELOG.md +22 -0
- package/site/changelogs/packages/authentication/CHANGELOG.md +30 -0
- package/site/changelogs/packages/authorization/CHANGELOG.md +30 -0
- package/site/changelogs/packages/boot/CHANGELOG.md +30 -0
- package/site/changelogs/packages/booter-lb3app/CHANGELOG.md +30 -0
- package/site/changelogs/packages/build/CHANGELOG.md +30 -0
- package/site/changelogs/packages/cli/CHANGELOG.md +39 -0
- package/site/changelogs/packages/context/CHANGELOG.md +30 -0
- package/site/changelogs/packages/core/CHANGELOG.md +33 -0
- package/site/changelogs/packages/eslint-config/CHANGELOG.md +42 -0
- package/site/changelogs/packages/express/CHANGELOG.md +30 -0
- package/site/changelogs/packages/filter/CHANGELOG.md +39 -0
- package/site/changelogs/packages/http-caching-proxy/CHANGELOG.md +30 -0
- package/site/changelogs/packages/http-server/CHANGELOG.md +35 -0
- package/site/changelogs/packages/metadata/CHANGELOG.md +30 -0
- package/site/changelogs/packages/model-api-builder/CHANGELOG.md +30 -0
- package/site/changelogs/packages/monorepo/CHANGELOG.md +30 -0
- package/site/changelogs/packages/openapi-spec-builder/CHANGELOG.md +30 -0
- package/site/changelogs/packages/openapi-v3/CHANGELOG.md +36 -0
- package/site/changelogs/packages/repository/CHANGELOG.md +32 -0
- package/site/changelogs/packages/repository-json-schema/CHANGELOG.md +30 -0
- package/site/changelogs/packages/repository-tests/CHANGELOG.md +31 -0
- package/site/changelogs/packages/rest/CHANGELOG.md +30 -0
- package/site/changelogs/packages/rest-crud/CHANGELOG.md +30 -0
- package/site/changelogs/packages/rest-explorer/CHANGELOG.md +30 -0
- package/site/changelogs/packages/security/CHANGELOG.md +30 -0
- package/site/changelogs/packages/service-proxy/CHANGELOG.md +30 -0
- package/site/changelogs/packages/testlab/CHANGELOG.md +30 -0
- package/site/changelogs/packages/tsdocs/CHANGELOG.md +30 -0
- package/site/decorators/Decorators_repository.md +25 -0
- package/site/migration/models/relations.md +1 -2
- package/site/migration/overview.md +1 -1
- package/site/readmes/loopback-next/examples/references-many/README.md +49 -0
- package/site/readmes/loopback-next/packages/rest-crud/README.md +2 -1
- package/site/sidebars/lb4_sidebar.yml +8 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,46 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [5.1.0](https://github.com/loopbackio/loopback-next/compare/@loopback/docs@5.0.0...@loopback/docs@5.1.0) (2022-06-13)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **cli:** add option to create relations in cli discover command ([37a5f73](https://github.com/loopbackio/loopback-next/commit/37a5f73ada12b64035ef32b01411c28d72058887))
|
|
12
|
+
* **cli:** add option to mark id field as not required in discover command ([497b21d](https://github.com/loopbackio/loopback-next/commit/497b21d84d970a8dcc714d059108cabdf99d46e0))
|
|
13
|
+
* **rest-crud:** add option to create readonly rest-crud apis ([6ae1423](https://github.com/loopbackio/loopback-next/commit/6ae142302ca61363a357559ba42243bdaf4f7256))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## [5.0.0](https://github.com/loopbackio/loopback-next/compare/@loopback/docs@4.0.4...@loopback/docs@5.0.0) (2022-05-05)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### ⚠ BREAKING CHANGES
|
|
23
|
+
|
|
24
|
+
* remove node v12 support
|
|
25
|
+
|
|
26
|
+
### Features
|
|
27
|
+
|
|
28
|
+
* add polymorphic relations ([f4b8158](https://github.com/loopbackio/loopback-next/commit/f4b8158387222ec64fe7ef6971da8151f2016dda)), closes [#2487](https://github.com/loopbackio/loopback-next/issues/2487)
|
|
29
|
+
* add support for node v18 ([ccb4c61](https://github.com/loopbackio/loopback-next/commit/ccb4c61307d94ab7bb07a19c547dfc4fa7d388a8))
|
|
30
|
+
* remove node v12 support ([5f66e5b](https://github.com/loopbackio/loopback-next/commit/5f66e5bd288ba806b3aa6550fc29c5009de8b60d))
|
|
31
|
+
* **repository:** support `ReferencesMany` relation ([371a6dc](https://github.com/loopbackio/loopback-next/commit/371a6dcdf32d1a9a674f22528160b775f6639364))
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
## [4.0.4](https://github.com/loopbackio/loopback-next/compare/@loopback/docs@4.0.3...@loopback/docs@4.0.4) (2022-03-29)
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
### Bug Fixes
|
|
39
|
+
|
|
40
|
+
* **docs:** update 'Migrating datasources' dead link ([1a314c9](https://github.com/loopbackio/loopback-next/commit/1a314c92ee82a9698739549007f24995047749f9))
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
6
46
|
## [4.0.3](https://github.com/loopbackio/loopback-next/compare/@loopback/docs@4.0.2...@loopback/docs@4.0.3) (2022-02-28)
|
|
7
47
|
|
|
8
48
|
**Note:** Version bump only for package @loopback/docs
|
package/CODE_OF_CONDUCT.md
CHANGED
|
@@ -1,4 +1,54 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Code of Conduct
|
|
2
|
+
|
|
3
|
+
LoopBack, as member project of the OpenJS Foundation, use
|
|
4
|
+
[Contributor Covenant v2.0](https://contributor-covenant.org/version/2/0/code_of_conduct)
|
|
5
|
+
as their code of conduct. The full text is included
|
|
6
|
+
[below](#contributor-covenant-code-of-conduct-v2.0) in English, and translations
|
|
7
|
+
are available from the Contributor Covenant organisation:
|
|
8
|
+
|
|
9
|
+
- [contributor-covenant.org/translations](https://www.contributor-covenant.org/translations)
|
|
10
|
+
- [github.com/ContributorCovenant](https://github.com/ContributorCovenant/contributor_covenant/tree/release/content/version/2/0)
|
|
11
|
+
|
|
12
|
+
Refer to the sections on reporting and escalation in this document for the
|
|
13
|
+
specific emails that can be used to report and escalate issues.
|
|
14
|
+
|
|
15
|
+
## Reporting
|
|
16
|
+
|
|
17
|
+
### Project Spaces
|
|
18
|
+
|
|
19
|
+
For reporting issues in spaces related to LoopBack, please use the email
|
|
20
|
+
`tsc@loopback.io`. The LoopBack Technical Steering Committee (TSC) handles CoC
|
|
21
|
+
issues related to the spaces that it maintains. The project TSC commits to:
|
|
22
|
+
|
|
23
|
+
- maintain the confidentiality with regard to the reporter of an incident
|
|
24
|
+
- to participate in the path for escalation as outlined in the section on
|
|
25
|
+
Escalation when required.
|
|
26
|
+
|
|
27
|
+
### Foundation Spaces
|
|
28
|
+
|
|
29
|
+
For reporting issues in spaces managed by the OpenJS Foundation, for example,
|
|
30
|
+
repositories within the OpenJS organization, use the email
|
|
31
|
+
`report@lists.openjsf.org`. The Cross Project Council (CPC) is responsible for
|
|
32
|
+
managing these reports and commits to:
|
|
33
|
+
|
|
34
|
+
- maintain the confidentiality with regard to the reporter of an incident
|
|
35
|
+
- to participate in the path for escalation as outlined in the section on
|
|
36
|
+
Escalation when required.
|
|
37
|
+
|
|
38
|
+
## Escalation
|
|
39
|
+
|
|
40
|
+
The OpenJS Foundation maintains a Code of Conduct Panel (CoCP). This is a
|
|
41
|
+
foundation-wide team established to manage escalation when a reporter believes
|
|
42
|
+
that a report to a member project or the CPC has not been properly handled. In
|
|
43
|
+
order to escalate to the CoCP send an email to
|
|
44
|
+
`coc-escalation@lists.openjsf.org`.
|
|
45
|
+
|
|
46
|
+
For more information, refer to the full
|
|
47
|
+
[Code of Conduct governance document](https://github.com/openjs-foundation/cross-project-council/blob/HEAD/CODE_OF_CONDUCT.md).
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Contributor Covenant Code of Conduct v2.0
|
|
2
52
|
|
|
3
53
|
## Our Pledge
|
|
4
54
|
|
|
@@ -60,8 +110,8 @@ representative at an online or offline event.
|
|
|
60
110
|
|
|
61
111
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
|
62
112
|
reported to the community leaders responsible for enforcement at
|
|
63
|
-
[
|
|
64
|
-
|
|
113
|
+
[tsc@loopback.io](mailto:tsc@loopback.io). All complaints will be reviewed and
|
|
114
|
+
investigated promptly and fairly.
|
|
65
115
|
|
|
66
116
|
All community leaders are obligated to respect the privacy and security of the
|
|
67
117
|
reporter of any incident.
|
package/LICENSE
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Copyright (c) IBM Corp. 2017,2020.
|
|
1
|
+
Copyright (c) IBM Corp. and LoopBack contributors 2017,2020.
|
|
2
2
|
Node module: @loopback/docs
|
|
3
3
|
This project is licensed under the MIT License, full text below.
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ This project is licensed under the MIT License, full text below.
|
|
|
6
6
|
|
|
7
7
|
MIT License
|
|
8
8
|
|
|
9
|
-
MIT License Copyright (c) IBM Corp. 2017,2020
|
|
9
|
+
MIT License Copyright (c) IBM Corp. and LoopBack contributors 2017,2020
|
|
10
10
|
|
|
11
11
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
12
12
|
this software and associated documentation files (the "Software"), to deal in
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loopback/docs",
|
|
3
3
|
"description": "Documentation files rendered at [https://loopback.io](https://loopback.io)",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "5.1.0",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"LoopBack",
|
|
7
7
|
"docs"
|
|
8
8
|
],
|
|
9
9
|
"license": "MIT",
|
|
10
|
-
"author": "IBM Corp.",
|
|
11
|
-
"copyright.owner": "IBM Corp.",
|
|
10
|
+
"author": "IBM Corp. and LoopBack contributors",
|
|
11
|
+
"copyright.owner": "IBM Corp. and LoopBack contributors",
|
|
12
12
|
"homepage": "https://github.com/loopbackio/loopback-next/tree/master/docs",
|
|
13
13
|
"repository": {
|
|
14
14
|
"type": "git",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"directory": "docs"
|
|
17
17
|
},
|
|
18
18
|
"engines": {
|
|
19
|
-
"node": "
|
|
19
|
+
"node": "14 || 16 || 17 || 18"
|
|
20
20
|
},
|
|
21
21
|
"scripts": {
|
|
22
22
|
"version": "node ./bin/copy-readmes.js && node ./bin/copy-changelogs.js && cd .. && npm run tsdocs",
|
|
@@ -32,11 +32,11 @@
|
|
|
32
32
|
"site/"
|
|
33
33
|
],
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"fs-extra": "^10.0
|
|
36
|
-
"tslib": "^2.
|
|
35
|
+
"fs-extra": "^10.1.0",
|
|
36
|
+
"tslib": "^2.4.0"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@loopback/build": "^
|
|
39
|
+
"@loopback/build": "^9.0.1"
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "ccf7863d0639de966d6c6129b4aa94ba1dce2c33"
|
|
42
42
|
}
|
package/site/CHANGELOG.md
CHANGED
|
@@ -74,6 +74,7 @@ permalink: /doc/en/lb4/changelog.index.html
|
|
|
74
74
|
- [@loopback/example-metrics-prometheus](changelogs/examples/metrics-prometheus/CHANGELOG.md)
|
|
75
75
|
- [@loopback/example-multi-tenancy](changelogs/examples/multi-tenancy/CHANGELOG.md)
|
|
76
76
|
- [@loopback/example-passport-login](changelogs/examples/passport-login/CHANGELOG.md)
|
|
77
|
+
- [@loopback/example-references-many](changelogs/examples/references-many/CHANGELOG.md)
|
|
77
78
|
- [@loopback/example-rest-crud](changelogs/examples/rest-crud/CHANGELOG.md)
|
|
78
79
|
- [@loopback/example-rpc-server](changelogs/examples/rpc-server/CHANGELOG.md)
|
|
79
80
|
- [@loopback/example-soap-calculator](changelogs/examples/soap-calculator/CHANGELOG.md)
|
|
@@ -22,7 +22,7 @@ lb4 copyright [options]
|
|
|
22
22
|
The following is an example of such headers.
|
|
23
23
|
|
|
24
24
|
```js
|
|
25
|
-
// Copyright IBM Corp. 2020. All Rights Reserved.
|
|
25
|
+
// Copyright IBM Corp. and LoopBack contributors 2020. All Rights Reserved.
|
|
26
26
|
// Node module: @loopback/cli
|
|
27
27
|
// This file is licensed under the MIT License.
|
|
28
28
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -35,7 +35,8 @@ Please note the command expects `git` is installed.
|
|
|
35
35
|
|
|
36
36
|
### Options
|
|
37
37
|
|
|
38
|
-
`--owner` : _(Optional)_ The owner of the copyright, such as
|
|
38
|
+
`--owner` : _(Optional)_ The owner of the copyright, such as
|
|
39
|
+
`IBM Corp. and LoopBack contributors`.
|
|
39
40
|
|
|
40
41
|
`--license` : _(Optional)_ The name of the license, such as `MIT`.
|
|
41
42
|
|
|
@@ -74,15 +75,15 @@ The command prompts you for:
|
|
|
74
75
|
directory of your package, its content will be read as the license header
|
|
75
76
|
template without prompting.
|
|
76
77
|
|
|
77
|
-
The default owner is `IBM Corp
|
|
78
|
-
`package.json`.
|
|
78
|
+
The default owner is `IBM Corp. and LoopBack contributors` and license is `MIT`
|
|
79
|
+
with the following `package.json`.
|
|
79
80
|
|
|
80
81
|
```json
|
|
81
82
|
{
|
|
82
83
|
"name": "@loopback/boot",
|
|
83
84
|
"version": "2.0.2",
|
|
84
|
-
"author": "IBM Corp.",
|
|
85
|
-
"copyright.owner": "IBM Corp.",
|
|
85
|
+
"author": "IBM Corp. and LoopBack contributors",
|
|
86
|
+
"copyright.owner": "IBM Corp. and LoopBack contributors",
|
|
86
87
|
"license": "MIT"
|
|
87
88
|
}
|
|
88
89
|
```
|
|
@@ -93,7 +94,7 @@ The following output is captured when `lb4 copyright` is run against
|
|
|
93
94
|
[`loopback4-example-shopping`](https://github.com/loopbackio/loopback4-example-shopping).
|
|
94
95
|
|
|
95
96
|
```
|
|
96
|
-
? Copyright owner: IBM Corp.
|
|
97
|
+
? Copyright owner: IBM Corp. and LoopBack contributors
|
|
97
98
|
? License name: (Use arrow keys or type to search)
|
|
98
99
|
❯ MIT (MIT License)
|
|
99
100
|
ISC (ISC License)
|
|
@@ -39,6 +39,8 @@ Models can be discovered from a supported datasource by running the
|
|
|
39
39
|
|
|
40
40
|
`--views`: Choose whether to discover views. Default is true
|
|
41
41
|
|
|
42
|
+
`--relations`: Choose whether to create relations. Default is false
|
|
43
|
+
|
|
42
44
|
`--all`: Skips the model prompt and discovers all of them
|
|
43
45
|
|
|
44
46
|
`--outDir`: Specify the directory into which the `model.model.ts` files will be
|
|
@@ -47,6 +49,9 @@ placed. Default is `src/models`
|
|
|
47
49
|
`--schema`: Specify the schema which the datasource will find the models to
|
|
48
50
|
discover
|
|
49
51
|
|
|
52
|
+
`--optionalId`: Specify if the Id property of generated models will be marked as
|
|
53
|
+
not required
|
|
54
|
+
|
|
50
55
|
### Interactive Prompts
|
|
51
56
|
|
|
52
57
|
Based on the option, the tool may prompt you for:
|
package/site/MONOREPO.md
CHANGED
|
@@ -40,6 +40,7 @@ one in the monorepo: `npm run update-monorepo-file`
|
|
|
40
40
|
| [examples/todo-jwt](https://github.com/loopbackio/loopback-next/tree/master/examples/todo-jwt) | @loopback/example-todo-jwt | A modified Todo tutorial how to build an application with JWT authentication and LoopBack 4 |
|
|
41
41
|
| [examples/todo-list](https://github.com/loopbackio/loopback-next/tree/master/examples/todo-list) | @loopback/example-todo-list | Continuation of the todo example using relations in LoopBack 4. |
|
|
42
42
|
| [examples/validation-app](https://github.com/loopbackio/loopback-next/tree/master/examples/validation-app) | @loopback/example-validation-app | An example demonstrating how to add validation in a LoopBack 4 application |
|
|
43
|
+
| [examples/references-many](https://github.com/loopbackio/loopback-next/tree/master/examples/references-many) | @loopback/example-references-many | An example of references many relation in a LoopBack 4 |
|
|
43
44
|
| [examples/webpack](https://github.com/loopbackio/loopback-next/tree/master/examples/webpack) | @loopback/example-webpack | An example to bundle @loopback/core using webpack |
|
|
44
45
|
| [extensions/apiconnect](https://github.com/loopbackio/loopback-next/tree/master/extensions/apiconnect) | @loopback/apiconnect | An extension for IBM API Connect |
|
|
45
46
|
| [extensions/authentication-jwt](https://github.com/loopbackio/loopback-next/tree/master/extensions/authentication-jwt) | @loopback/authentication-jwt | Extension for the prototype of JWT authentication |
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
---
|
|
2
|
+
lang: en
|
|
3
|
+
title: 'Polymorphic Relation'
|
|
4
|
+
keywords: LoopBack 4.0, LoopBack 4, Node.js, TypeScript, OpenAPI, Model Relation
|
|
5
|
+
sidebar: lb4_sidebar
|
|
6
|
+
permalink: /doc/en/lb4/Polymorphic-relation.html
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
LoopBack supports _polymorphic relations_ in which a model can belong to more
|
|
12
|
+
than one other model, on a single association.
|
|
13
|
+
|
|
14
|
+
The examples below use the following example models: `Delivery`, `Letter`,
|
|
15
|
+
`Parcel`, where a `Delivery` may contain a `Deliverable` - either a `Letter` or
|
|
16
|
+
a `Parcel`.
|
|
17
|
+
|
|
18
|
+
## Model definition
|
|
19
|
+
|
|
20
|
+
We first define `Deliverable`s:
|
|
21
|
+
|
|
22
|
+
```javascript
|
|
23
|
+
class Deliverable extends Entity {
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
class Letter extends Deliverable {
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
class Parcel extends Deliverable {
|
|
30
|
+
}
|
|
31
|
+
...
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
The relation between the `Delivery` and `Deliverable`s is: `Delivery` `hasOne`
|
|
35
|
+
`Deliverable`; the relation is polymorphic.
|
|
36
|
+
|
|
37
|
+
```javascript
|
|
38
|
+
class Delivery extends Entity {
|
|
39
|
+
@hasOne(() => Deliverable, {polymorphic: true})
|
|
40
|
+
deliverable: Deliverable;
|
|
41
|
+
|
|
42
|
+
deliverableType: string;
|
|
43
|
+
}
|
|
44
|
+
...
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
A customized discriminator can be specified. The discriminator parameter
|
|
48
|
+
specifies the name of a field in the model indicating the actual type of the
|
|
49
|
+
`Deliverable`.
|
|
50
|
+
|
|
51
|
+
```javascript
|
|
52
|
+
class Delivery extends Entity {
|
|
53
|
+
@hasOne(() => Deliverable, {polymorphic: {discriminator: "deliverable_type"}})
|
|
54
|
+
deliverable: Deliverable;
|
|
55
|
+
|
|
56
|
+
deliverable_type: string;
|
|
57
|
+
}
|
|
58
|
+
...
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Setting up repository
|
|
62
|
+
|
|
63
|
+
The only difference on the repository class is that instead of having a single
|
|
64
|
+
repository getter, a dictionary of subclass repository getters is passed into
|
|
65
|
+
the repository factory creater.
|
|
66
|
+
|
|
67
|
+
```javascript
|
|
68
|
+
export class DeliveryRepository extends DefaultCrudRepository {
|
|
69
|
+
public readonly deliverable: HasOneRepositoryFactory<Deliverable, typeof Delivery.prototype.id>;
|
|
70
|
+
|
|
71
|
+
constructor(
|
|
72
|
+
dataSource: juggler.DataSource,
|
|
73
|
+
@repository.getter('LetterRepository')
|
|
74
|
+
protected letterRepositoryGetter: Getter<EntityCrudRepository<Deliverable, typeof Deliverable.prototype.id, DeliverableRelations>>,
|
|
75
|
+
@repository.getter('ParcelRepository')
|
|
76
|
+
protected parcelRepositoryGetter: Getter<EntityCrudRepository<Deliverable, typeof Deliverable.prototype.id, DeliverableRelations>>,
|
|
77
|
+
) {
|
|
78
|
+
super(Delivery, dataSource);
|
|
79
|
+
this.deliverable = this.createHasOneRepositoryFactoryFor(
|
|
80
|
+
'deliverable',
|
|
81
|
+
// use a dictionary of repoGetters instead of a single repoGetter instance
|
|
82
|
+
{Letter: letterRepositoryGetter, Parcel: parcelRepositoryGetter},
|
|
83
|
+
);
|
|
84
|
+
this.registerInclusionResolver('deliverable', this.deliverable.inclusionResolver);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
...
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Operations
|
|
91
|
+
|
|
92
|
+
The polymorphic relation supports queries with inclusions
|
|
93
|
+
|
|
94
|
+
```javascript
|
|
95
|
+
const result = await deliveryRepo.findById(delivery1.id, {
|
|
96
|
+
include: ['deliverable'],
|
|
97
|
+
});
|
|
98
|
+
...
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
The instances of polymorphic relations can be created through repository
|
|
102
|
+
operations
|
|
103
|
+
|
|
104
|
+
```javascript
|
|
105
|
+
deliveryRepo
|
|
106
|
+
.deliverable(deliveryId)
|
|
107
|
+
.create(letter1Data, {polymorphicType: "Letter"});
|
|
108
|
+
...
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## belongsTo, hasMany, hasManyThrough relations
|
|
112
|
+
|
|
113
|
+
Polymorphic relation on `belongsTo` is similar to `hasOne`.
|
|
114
|
+
|
|
115
|
+
Polymorphic relation is not supported on `hasMany` relations. However, there is
|
|
116
|
+
an easy workaround: having a `hasMany` relation on a non-polymorphic concrete
|
|
117
|
+
type which `hasOne` polymorphic relation with an abstract polymorphic type. For
|
|
118
|
+
example, `Delivery` `hasMany` `DeliveryDeliverablePair` and
|
|
119
|
+
`DeliveryDeliverablePair` `hasOne` `Deliverable`.
|
|
120
|
+
|
|
121
|
+
The polymorphic relation on `hasManyThrough` relation is on the target model,
|
|
122
|
+
not the through model. The discriminator is defined on the through model, and
|
|
123
|
+
the target model is polymorphic.
|