@elsikora/nestjs-crud-automator 1.2.2 → 1.4.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/README.md +322 -0
- package/dist/class/api/index.d.ts +1 -1
- package/dist/class/api/index.js +1 -1
- package/dist/class/api/index.js.map +1 -1
- package/dist/class/api/service-base.class.d.ts +11 -0
- package/dist/class/api/{base-service.class.js → service-base.class.js} +14 -13
- package/dist/class/api/service-base.class.js.map +1 -0
- package/dist/class/metadata-storage.class.d.ts +7 -3
- package/dist/class/metadata-storage.class.js +4 -2
- package/dist/class/metadata-storage.class.js.map +1 -1
- package/dist/class/utility/dto/property/factory/boolean.class.d.ts +2 -2
- package/dist/class/utility/dto/property/factory/boolean.class.js.map +1 -1
- package/dist/class/utility/dto/property/factory/date.class.d.ts +2 -2
- package/dist/class/utility/dto/property/factory/date.class.js.map +1 -1
- package/dist/class/utility/dto/property/factory/number.class.d.ts +2 -2
- package/dist/class/utility/dto/property/factory/number.class.js.map +1 -1
- package/dist/class/utility/dto/property/factory/object.class.d.ts +2 -2
- package/dist/class/utility/dto/property/factory/object.class.js.map +1 -1
- package/dist/class/utility/dto/property/factory/relation.class.d.ts +4 -2
- package/dist/class/utility/dto/property/factory/relation.class.js +10 -2
- package/dist/class/utility/dto/property/factory/relation.class.js.map +1 -1
- package/dist/class/utility/dto/property/factory/string.class.d.ts +2 -2
- package/dist/class/utility/dto/property/factory/string.class.js.map +1 -1
- package/dist/class/utility/dto/property/factory/uuid.class.d.ts +2 -2
- package/dist/class/utility/dto/property/factory/uuid.class.js.map +1 -1
- package/dist/constant/decorator/api/property-describe.constant.d.ts +1 -1
- package/dist/constant/decorator/api/property-describe.constant.js.map +1 -1
- package/dist/constant/dto/transformer-value.constant.d.ts +7 -0
- package/dist/constant/dto/transformer-value.constant.js +16 -0
- package/dist/constant/dto/transformer-value.constant.js.map +1 -0
- package/dist/constant/utility/dto/constant.d.ts +1 -1
- package/dist/constant/utility/dto/constant.js +2 -2
- package/dist/constant/utility/dto/constant.js.map +1 -1
- package/dist/decorator/api/controller.decorator.d.ts +1 -2
- package/dist/decorator/api/controller.decorator.js.map +1 -1
- package/dist/decorator/api/function/create.decorator.d.ts +2 -2
- package/dist/decorator/api/function/create.decorator.js +1 -16
- package/dist/decorator/api/function/create.decorator.js.map +1 -1
- package/dist/decorator/api/function/decorator.js +10 -5
- package/dist/decorator/api/function/decorator.js.map +1 -1
- package/dist/decorator/api/function/delete.decorator.d.ts +2 -4
- package/dist/decorator/api/function/delete.decorator.js +15 -11
- package/dist/decorator/api/function/delete.decorator.js.map +1 -1
- package/dist/decorator/api/function/get-list.decorator.d.ts +2 -4
- package/dist/decorator/api/function/get-list.decorator.js +6 -88
- package/dist/decorator/api/function/get-list.decorator.js.map +1 -1
- package/dist/decorator/api/function/get-many.decorator.d.ts +2 -0
- package/dist/decorator/api/function/get-many.decorator.js +41 -0
- package/dist/decorator/api/function/get-many.decorator.js.map +1 -0
- package/dist/decorator/api/function/get.decorator.d.ts +2 -4
- package/dist/decorator/api/function/get.decorator.js +11 -25
- package/dist/decorator/api/function/get.decorator.js.map +1 -1
- package/dist/decorator/api/function/index.d.ts +5 -0
- package/dist/decorator/api/function/index.js +5 -0
- package/dist/decorator/api/function/index.js.map +1 -1
- package/dist/decorator/api/function/update.decorator.d.ts +2 -4
- package/dist/decorator/api/function/update.decorator.js +23 -13
- package/dist/decorator/api/function/update.decorator.js.map +1 -1
- package/dist/decorator/api/method.decorator.js +3 -7
- package/dist/decorator/api/method.decorator.js.map +1 -1
- package/dist/decorator/api/property/boolean.decorator.js +2 -5
- package/dist/decorator/api/property/boolean.decorator.js.map +1 -1
- package/dist/decorator/api/property/date.decorator.js +2 -2
- package/dist/decorator/api/property/date.decorator.js.map +1 -1
- package/dist/decorator/api/property/number.decorator.js +1 -4
- package/dist/decorator/api/property/number.decorator.js.map +1 -1
- package/dist/decorator/api/property/object.decorator.js +1 -0
- package/dist/decorator/api/property/object.decorator.js.map +1 -1
- package/dist/decorator/api/property/string.decorator.js +0 -3
- package/dist/decorator/api/property/string.decorator.js.map +1 -1
- package/dist/decorator/api/service.decorator.d.ts +1 -1
- package/dist/decorator/api/service.decorator.js +27 -7
- package/dist/decorator/api/service.decorator.js.map +1 -1
- package/dist/enum/decorator/api/controller/index.d.ts +2 -1
- package/dist/enum/decorator/api/controller/index.js +16 -0
- package/dist/enum/decorator/api/controller/index.js.map +1 -1
- package/dist/enum/decorator/api/controller/load-relations-strategy.enum.d.ts +4 -0
- package/dist/enum/decorator/api/controller/load-relations-strategy.enum.js +9 -0
- package/dist/enum/decorator/api/controller/load-relations-strategy.enum.js.map +1 -0
- package/dist/enum/decorator/api/controller/request-transformer-type.enum.d.ts +4 -0
- package/dist/enum/decorator/api/controller/request-transformer-type.enum.js +9 -0
- package/dist/enum/decorator/api/controller/request-transformer-type.enum.js.map +1 -0
- package/dist/enum/decorator/api/function/type.enum.d.ts +1 -3
- package/dist/enum/decorator/api/function/type.enum.js +1 -3
- package/dist/enum/decorator/api/function/type.enum.js.map +1 -1
- package/dist/enum/decorator/api/property/date-type.enum.d.ts +2 -2
- package/dist/enum/decorator/api/property/date-type.enum.js +2 -2
- package/dist/enum/decorator/api/property/date-type.enum.js.map +1 -1
- package/dist/enum/decorator/api/property/desribe-type.enum.d.ts +2 -2
- package/dist/enum/decorator/api/property/desribe-type.enum.js +1 -1
- package/dist/enum/decorator/api/property/desribe-type.enum.js.map +1 -1
- package/dist/enum/utility/error-string-action.enum.d.ts +4 -0
- package/dist/enum/utility/error-string-action.enum.js +4 -0
- package/dist/enum/utility/error-string-action.enum.js.map +1 -1
- package/dist/factory/api/controller.factory.d.ts +10 -20
- package/dist/factory/api/controller.factory.js +110 -175
- package/dist/factory/api/controller.factory.js.map +1 -1
- package/dist/interface/api-authentication-request.interface.d.ts +4 -0
- package/dist/interface/api-authentication-request.interface.js +3 -0
- package/dist/interface/api-authentication-request.interface.js.map +1 -0
- package/dist/interface/api-dto-validator.interface.d.ts +4 -0
- package/dist/interface/{decorator/api/function/create-properties.interface.js → api-dto-validator.interface.js} +1 -1
- package/dist/interface/api-dto-validator.interface.js.map +1 -0
- package/dist/interface/api-request-validator.interface.d.ts +7 -0
- package/dist/interface/{decorator/api/controller-properties.interface.js → api-request-validator.interface.js} +1 -1
- package/dist/interface/api-request-validator.interface.js.map +1 -0
- package/dist/interface/class/index.d.ts +1 -0
- package/dist/interface/class/index.js +1 -0
- package/dist/interface/class/index.js.map +1 -1
- package/dist/interface/class/metadata-entry.interface.d.ts +5 -0
- package/dist/{type/decorator/api/function/delete/executor-properties.type.js → interface/class/metadata-entry.interface.js} +1 -1
- package/dist/interface/class/metadata-entry.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/base.interface.d.ts +4 -0
- package/dist/{type/decorator/api/function/get/properties.type.js → interface/decorator/api/controller/base.interface.js} +1 -1
- package/dist/interface/decorator/api/controller/base.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/index.d.ts +3 -0
- package/dist/interface/decorator/api/controller/index.js +20 -0
- package/dist/interface/decorator/api/controller/index.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/index.d.ts +1 -0
- package/dist/{type/decorator/api/function/delete → interface/decorator/api/controller/properties}/index.js +1 -1
- package/dist/interface/decorator/api/controller/properties/index.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/authentication.interface.d.ts +9 -0
- package/dist/{type/decorator/api/function/create/executor-properties.type.js → interface/decorator/api/controller/properties/route/authentication.interface.js} +1 -1
- package/dist/interface/decorator/api/controller/properties/route/authentication.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/auto-dto-config.interface.d.ts +4 -0
- package/dist/interface/decorator/api/{base-controller.interface.js → controller/properties/route/auto-dto-config.interface.js} +1 -1
- package/dist/interface/decorator/api/controller/properties/route/auto-dto-config.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/base-request.interface.d.ts +8 -0
- package/dist/interface/decorator/api/controller/properties/route/base-request.interface.js +3 -0
- package/dist/interface/decorator/api/controller/properties/route/base-request.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/base-response.interface.d.ts +7 -0
- package/dist/interface/decorator/api/controller/properties/route/base-response.interface.js +3 -0
- package/dist/interface/decorator/api/controller/properties/route/base-response.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/base.interface.d.ts +11 -0
- package/dist/{type/decorator/api/function/get-list/properties.type.js → interface/decorator/api/controller/properties/route/base.interface.js} +1 -1
- package/dist/interface/decorator/api/controller/properties/route/base.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/index.d.ts +7 -0
- package/dist/interface/decorator/api/controller/properties/route/index.js +24 -0
- package/dist/interface/decorator/api/controller/properties/route/index.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/with-auto-dto.interface.d.ts +9 -0
- package/dist/interface/decorator/api/controller/properties/route/with-auto-dto.interface.js +3 -0
- package/dist/interface/decorator/api/controller/properties/route/with-auto-dto.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties/route/with-dto.interface.d.ts +9 -0
- package/dist/interface/{service.interface.js → decorator/api/controller/properties/route/with-dto.interface.js} +1 -1
- package/dist/interface/decorator/api/controller/properties/route/with-dto.interface.js.map +1 -0
- package/dist/interface/decorator/api/controller/properties.interface.d.ts +11 -0
- package/dist/{type/decorator/api/function/get-list/base-properties.type.js → interface/decorator/api/controller/properties.interface.js} +1 -1
- package/dist/interface/decorator/api/controller/properties.interface.js.map +1 -0
- package/dist/{type/decorator/api/function/create/executor-properties.type.d.ts → interface/decorator/api/function/create-executor-properties.interface.d.ts} +2 -2
- package/dist/interface/decorator/api/function/create-executor-properties.interface.js +3 -0
- package/dist/interface/decorator/api/function/create-executor-properties.interface.js.map +1 -0
- package/dist/interface/decorator/api/function/delete-executor-properties.type.d.ts +9 -0
- package/dist/interface/decorator/api/function/delete-executor-properties.type.js +3 -0
- package/dist/interface/decorator/api/function/delete-executor-properties.type.js.map +1 -0
- package/dist/interface/decorator/api/function/get-executor-properties.interface.d.ts +8 -0
- package/dist/interface/decorator/api/function/get-executor-properties.interface.js +3 -0
- package/dist/interface/decorator/api/function/get-executor-properties.interface.js.map +1 -0
- package/dist/interface/decorator/api/function/get-list-executor-properties.type.d.ts +8 -0
- package/dist/interface/decorator/api/function/get-list-executor-properties.type.js +3 -0
- package/dist/interface/decorator/api/function/get-list-executor-properties.type.js.map +1 -0
- package/dist/interface/decorator/api/function/get-many-executor-properties.interface.d.ts +8 -0
- package/dist/interface/decorator/api/function/get-many-executor-properties.interface.js +3 -0
- package/dist/interface/decorator/api/function/get-many-executor-properties.interface.js.map +1 -0
- package/dist/interface/decorator/api/function/index.d.ts +5 -1
- package/dist/interface/decorator/api/function/index.js +19 -0
- package/dist/interface/decorator/api/function/index.js.map +1 -1
- package/dist/interface/decorator/api/function/{create-properties.interface.d.ts → properties.interface.d.ts} +1 -1
- package/dist/interface/decorator/api/function/properties.interface.js +3 -0
- package/dist/interface/decorator/api/function/properties.interface.js.map +1 -0
- package/dist/interface/decorator/api/function/update-executor-properties.type.d.ts +10 -0
- package/dist/interface/decorator/api/function/update-executor-properties.type.js +3 -0
- package/dist/interface/decorator/api/function/update-executor-properties.type.js.map +1 -0
- package/dist/interface/decorator/api/index.d.ts +1 -2
- package/dist/interface/decorator/api/index.js +1 -2
- package/dist/interface/decorator/api/index.js.map +1 -1
- package/dist/interface/decorator/api/method/properties.interface.d.ts +1 -1
- package/dist/interface/decorator/api/method/properties.interface.js.map +1 -1
- package/dist/interface/decorator/api/property/object-properties.interface.d.ts +1 -1
- package/dist/interface/decorator/api/property/object-properties.interface.js.map +1 -1
- package/dist/interface/dto-generate-factory.interface.d.ts +3 -2
- package/dist/interface/dto-generate-factory.interface.js.map +1 -1
- package/dist/interface/entity/column.interface.d.ts +2 -2
- package/dist/interface/entity/column.interface.js.map +1 -1
- package/dist/interface/entity/interface.d.ts +3 -3
- package/dist/interface/entity/interface.js.map +1 -1
- package/dist/interface/index.d.ts +2 -1
- package/dist/interface/index.js +2 -1
- package/dist/interface/index.js.map +1 -1
- package/dist/interface/utility/api/controller/index.d.ts +1 -0
- package/dist/{type/decorator/api/function/get → interface/utility/api/controller}/index.js +1 -2
- package/dist/interface/utility/api/controller/index.js.map +1 -0
- package/dist/interface/utility/api/controller/primary-column.interface.d.ts +4 -0
- package/dist/interface/utility/api/controller/primary-column.interface.js +3 -0
- package/dist/interface/utility/api/controller/primary-column.interface.js.map +1 -0
- package/dist/interface/utility/api/index.d.ts +1 -0
- package/dist/{type/decorator/api/function/update → interface/utility/api}/index.js +1 -2
- package/dist/interface/utility/api/index.js.map +1 -0
- package/dist/interface/utility/get-entity-columns-properties.interface.d.ts +1 -0
- package/dist/interface/utility/get-entity-columns-properties.interface.js.map +1 -1
- package/dist/interface/utility/index.d.ts +1 -0
- package/dist/interface/utility/index.js +1 -0
- package/dist/interface/utility/index.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/type/api-request-transformer.type.d.ts +15 -0
- package/dist/type/api-request-transformer.type.js +3 -0
- package/dist/type/api-request-transformer.type.js.map +1 -0
- package/dist/type/class/api-exception.type.d.ts +2 -0
- package/dist/type/class/api-exception.type.js +3 -0
- package/dist/type/class/api-exception.type.js.map +1 -0
- package/dist/type/class/controller/index.d.ts +1 -0
- package/dist/type/class/controller/index.js +18 -0
- package/dist/type/class/controller/index.js.map +1 -0
- package/dist/type/class/controller/method.type.d.ts +5 -0
- package/dist/type/{decorator/api/function/update/properties.type.js → class/controller/method.type.js} +1 -1
- package/dist/type/class/controller/method.type.js.map +1 -0
- package/dist/type/class/index.d.ts +3 -0
- package/dist/type/class/index.js +20 -0
- package/dist/type/class/index.js.map +1 -0
- package/dist/type/class/metadata.type.d.ts +2 -0
- package/dist/type/class/metadata.type.js +3 -0
- package/dist/type/class/metadata.type.js.map +1 -0
- package/dist/type/decorator/api/controller/constructor.type.d.ts +2 -2
- package/dist/type/decorator/api/controller/constructor.type.js.map +1 -1
- package/dist/type/decorator/api/controller/get-list-query.type.d.ts +11 -0
- package/dist/type/decorator/api/controller/get-list-query.type.js +3 -0
- package/dist/type/decorator/api/controller/get-list-query.type.js.map +1 -0
- package/dist/type/decorator/api/controller/index.d.ts +4 -0
- package/dist/type/decorator/api/controller/index.js +4 -0
- package/dist/type/decorator/api/controller/index.js.map +1 -1
- package/dist/type/decorator/api/controller/properties/index.d.ts +1 -0
- package/dist/type/decorator/api/controller/properties/index.js +18 -0
- package/dist/type/decorator/api/controller/properties/index.js.map +1 -0
- package/dist/type/decorator/api/controller/properties/route/base-request-relations.type.d.ts +18 -0
- package/dist/type/decorator/api/controller/properties/route/base-request-relations.type.js +3 -0
- package/dist/type/decorator/api/controller/properties/route/base-request-relations.type.js.map +1 -0
- package/dist/type/decorator/api/controller/properties/route/base-request-transformers.type.d.ts +10 -0
- package/dist/type/decorator/api/controller/properties/route/base-request-transformers.type.js +3 -0
- package/dist/type/decorator/api/controller/properties/route/base-request-transformers.type.js.map +1 -0
- package/dist/type/decorator/api/controller/properties/route/base-response-transformers.type.d.ts +10 -0
- package/dist/type/decorator/api/controller/properties/route/base-response-transformers.type.js +3 -0
- package/dist/type/decorator/api/controller/properties/route/base-response-transformers.type.js.map +1 -0
- package/dist/type/decorator/api/controller/properties/route/index.d.ts +3 -0
- package/dist/type/decorator/api/{function/get-list → controller/properties/route}/index.js +3 -3
- package/dist/type/decorator/api/controller/properties/route/index.js.map +1 -0
- package/dist/type/decorator/api/controller/properties-route.type.d.ts +3 -0
- package/dist/type/decorator/api/controller/properties-route.type.js +3 -0
- package/dist/type/decorator/api/controller/properties-route.type.js.map +1 -0
- package/dist/type/decorator/api/controller/transformer-config.type.d.ts +8 -0
- package/dist/type/decorator/api/controller/transformer-config.type.js +3 -0
- package/dist/type/decorator/api/controller/transformer-config.type.js.map +1 -0
- package/dist/type/decorator/api/function/create-properties.type.d.ts +2 -0
- package/dist/type/decorator/api/function/create-properties.type.js +3 -0
- package/dist/type/decorator/api/function/create-properties.type.js.map +1 -0
- package/dist/type/decorator/api/function/delete-criteria.type.d.ts +2 -0
- package/dist/type/decorator/api/function/delete-criteria.type.js +3 -0
- package/dist/type/decorator/api/function/delete-criteria.type.js.map +1 -0
- package/dist/type/decorator/api/function/get-list-properties.type.d.ts +5 -0
- package/dist/type/decorator/api/function/get-list-properties.type.js +3 -0
- package/dist/type/decorator/api/function/get-list-properties.type.js.map +1 -0
- package/dist/type/decorator/api/function/get-many.properties.d.ts +2 -0
- package/dist/type/decorator/api/function/get-many.properties.js +3 -0
- package/dist/type/decorator/api/function/get-many.properties.js.map +1 -0
- package/dist/type/decorator/api/function/get-properties.type.d.ts +2 -0
- package/dist/type/decorator/api/function/get-properties.type.js +3 -0
- package/dist/type/decorator/api/function/get-properties.type.js.map +1 -0
- package/dist/type/decorator/api/function/index.d.ts +7 -5
- package/dist/type/decorator/api/function/index.js +7 -5
- package/dist/type/decorator/api/function/index.js.map +1 -1
- package/dist/type/decorator/api/function/update-criteria.type.d.ts +2 -0
- package/dist/type/decorator/api/function/update-criteria.type.js +3 -0
- package/dist/type/decorator/api/function/update-criteria.type.js.map +1 -0
- package/dist/type/decorator/api/function/update-properties.type.d.ts +2 -0
- package/dist/type/decorator/api/function/update-properties.type.js +3 -0
- package/dist/type/decorator/api/function/update-properties.type.js.map +1 -0
- package/dist/type/decorator/api/index.d.ts +1 -0
- package/dist/type/decorator/api/index.js +1 -0
- package/dist/type/decorator/api/index.js.map +1 -1
- package/dist/type/decorator/api/property/describe/dto/guard-properties.type.d.ts +6 -0
- package/dist/type/decorator/api/property/describe/dto/guard-properties.type.js +3 -0
- package/dist/type/decorator/api/property/describe/dto/guard-properties.type.js.map +1 -0
- package/dist/type/decorator/api/property/describe/dto/properties.type.d.ts +2 -0
- package/dist/type/decorator/api/property/describe/dto/properties.type.js.map +1 -1
- package/dist/type/decorator/api/property/describe/object-properties.type.d.ts +1 -1
- package/dist/type/decorator/api/property/describe/object-properties.type.js.map +1 -1
- package/dist/type/decorator/api/property/describe/properties.type.d.ts +2 -2
- package/dist/type/decorator/api/property/describe/properties.type.js.map +1 -1
- package/dist/type/decorator/api/property/describe/relation-properties.type.js.map +1 -1
- package/dist/type/decorator/api/service/index.d.ts +2 -0
- package/dist/type/decorator/api/{function/create → service}/index.js +1 -1
- package/dist/type/decorator/api/service/index.js.map +1 -0
- package/dist/type/decorator/api/service/keys.type.d.ts +4 -0
- package/dist/type/decorator/api/service/keys.type.js +3 -0
- package/dist/type/decorator/api/service/keys.type.js.map +1 -0
- package/dist/type/decorator/api/service/properties.type.js.map +1 -0
- package/dist/type/factory/api/controller/index.d.ts +3 -0
- package/dist/type/factory/api/controller/index.js +3 -0
- package/dist/type/factory/api/controller/index.js.map +1 -1
- package/dist/type/factory/api/controller/method-map.type.d.ts +12 -0
- package/dist/type/factory/api/controller/method-map.type.js +3 -0
- package/dist/type/factory/api/controller/method-map.type.js.map +1 -0
- package/dist/type/factory/api/controller/method-name-map.type.d.ts +5 -0
- package/dist/type/factory/api/controller/method-name-map.type.js +3 -0
- package/dist/type/factory/api/controller/method-name-map.type.js.map +1 -0
- package/dist/type/factory/api/controller/method-name.type.d.ts +4 -0
- package/dist/type/factory/api/controller/method-name.type.js +3 -0
- package/dist/type/factory/api/controller/method-name.type.js.map +1 -0
- package/dist/type/factory/api/controller/target-methods.type.d.ts +9 -1
- package/dist/type/factory/api/controller/target-methods.type.js.map +1 -1
- package/dist/type/index.d.ts +2 -0
- package/dist/type/index.js +2 -0
- package/dist/type/index.js.map +1 -1
- package/dist/type/utility/capitalize-string.type.d.ts +1 -0
- package/dist/type/utility/capitalize-string.type.js +3 -0
- package/dist/type/utility/capitalize-string.type.js.map +1 -0
- package/dist/type/utility/index.d.ts +1 -0
- package/dist/type/utility/index.js +1 -0
- package/dist/type/utility/index.js.map +1 -1
- package/dist/utility/api/controller/apply-decorators.utility.d.ts +4 -0
- package/dist/utility/api/controller/apply-decorators.utility.js +68 -0
- package/dist/utility/api/controller/apply-decorators.utility.js.map +1 -0
- package/dist/utility/api/controller/apply-metadata.utility.d.ts +4 -0
- package/dist/utility/api/controller/apply-metadata.utility.js +46 -0
- package/dist/utility/api/controller/apply-metadata.utility.js.map +1 -0
- package/dist/utility/api/controller/get-primary-column.utility.d.ts +3 -0
- package/dist/utility/api/controller/get-primary-column.utility.js +14 -0
- package/dist/utility/api/controller/get-primary-column.utility.js.map +1 -0
- package/dist/utility/api/controller/handle-request-relations.utility.d.ts +4 -0
- package/dist/utility/api/controller/handle-request-relations.utility.js +59 -0
- package/dist/utility/api/controller/handle-request-relations.utility.js.map +1 -0
- package/dist/utility/api/controller/index.d.ts +5 -0
- package/dist/utility/api/controller/index.js +5 -0
- package/dist/utility/api/controller/index.js.map +1 -1
- package/dist/utility/api/controller/transform-request.utility.d.ts +17 -0
- package/dist/utility/api/controller/transform-request.utility.js +129 -0
- package/dist/utility/api/controller/transform-request.utility.js.map +1 -0
- package/dist/utility/api/controller/validate-request.utility.d.ts +3 -0
- package/dist/utility/api/controller/validate-request.utility.js +16 -0
- package/dist/utility/api/controller/validate-request.utility.js.map +1 -0
- package/dist/utility/api/controller/write-dto-swagger.utility.d.ts +4 -0
- package/dist/utility/api/controller/write-dto-swagger.utility.js +45 -0
- package/dist/utility/api/controller/write-dto-swagger.utility.js.map +1 -0
- package/dist/utility/api/controller/write-method.utility.d.ts +2 -2
- package/dist/utility/api/controller/write-method.utility.js +2 -2
- package/dist/utility/api/controller/write-method.utility.js.map +1 -1
- package/dist/utility/api/filter-order-by-from-entity.utility.d.ts +1 -1
- package/dist/utility/api/filter-order-by-from-entity.utility.js.map +1 -1
- package/dist/utility/dto/build-decorator.utility.d.ts +3 -1
- package/dist/utility/dto/build-decorator.utility.js +14 -10
- package/dist/utility/dto/build-decorator.utility.js.map +1 -1
- package/dist/utility/dto/generate-decorator.utility.d.ts +2 -1
- package/dist/utility/dto/generate-decorator.utility.js +5 -6
- package/dist/utility/dto/generate-decorator.utility.js.map +1 -1
- package/dist/utility/dto/generate-exception.utility.js.map +1 -1
- package/dist/utility/dto/generate-relation-response.utility.d.ts +4 -0
- package/dist/utility/dto/generate-relation-response.utility.js +26 -0
- package/dist/utility/dto/generate-relation-response.utility.js.map +1 -0
- package/dist/utility/dto/generate.utility.d.ts +3 -2
- package/dist/utility/dto/generate.utility.js +33 -37
- package/dist/utility/dto/generate.utility.js.map +1 -1
- package/dist/utility/dto/get-base-class.utility.d.ts +1 -1
- package/dist/utility/dto/get-base-class.utility.js.map +1 -1
- package/dist/utility/dto/handle-date-property.utility.js +3 -2
- package/dist/utility/dto/handle-date-property.utility.js.map +1 -1
- package/dist/utility/dto/index.d.ts +2 -0
- package/dist/utility/dto/index.js +2 -0
- package/dist/utility/dto/index.js.map +1 -1
- package/dist/utility/dto/is-property-exposed-for-guard.utility.d.ts +5 -0
- package/dist/utility/dto/is-property-exposed-for-guard.utility.js +16 -0
- package/dist/utility/dto/is-property-exposed-for-guard.utility.js.map +1 -0
- package/dist/utility/dto/is-property-should-be-marked.utility.d.ts +5 -0
- package/dist/utility/dto/{is-property-should-be-enabled.utility.js → is-property-should-be-marked.utility.js} +13 -7
- package/dist/utility/dto/is-property-should-be-marked.utility.js.map +1 -0
- package/dist/utility/generate-entity-information.utility.d.ts +1 -1
- package/dist/utility/generate-entity-information.utility.js.map +1 -1
- package/dist/utility/get-entity-columns.utility.d.ts +1 -2
- package/dist/utility/get-entity-columns.utility.js +12 -2
- package/dist/utility/get-entity-columns.utility.js.map +1 -1
- package/dist/validator/only-one-of-listed-properties.validator.js.map +1 -1
- package/package.json +53 -55
- package/dist/class/api/base-service.class.d.ts +0 -10
- package/dist/class/api/base-service.class.js.map +0 -1
- package/dist/interface/decorator/api/base-controller.interface.d.ts +0 -4
- package/dist/interface/decorator/api/base-controller.interface.js.map +0 -1
- package/dist/interface/decorator/api/controller-properties.interface.d.ts +0 -26
- package/dist/interface/decorator/api/controller-properties.interface.js.map +0 -1
- package/dist/interface/decorator/api/function/create-properties.interface.js.map +0 -1
- package/dist/interface/service.interface.d.ts +0 -1
- package/dist/interface/service.interface.js.map +0 -1
- package/dist/type/decorator/api/function/create/executor-properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/create/index.d.ts +0 -2
- package/dist/type/decorator/api/function/create/index.js.map +0 -1
- package/dist/type/decorator/api/function/create/properties.type.d.ts +0 -1
- package/dist/type/decorator/api/function/create/properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/delete/executor-properties.type.d.ts +0 -9
- package/dist/type/decorator/api/function/delete/executor-properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/delete/index.d.ts +0 -1
- package/dist/type/decorator/api/function/delete/index.js.map +0 -1
- package/dist/type/decorator/api/function/get/executor-properties.type.d.ts +0 -7
- package/dist/type/decorator/api/function/get/executor-properties.type.js +0 -3
- package/dist/type/decorator/api/function/get/executor-properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/get/index.d.ts +0 -2
- package/dist/type/decorator/api/function/get/index.js.map +0 -1
- package/dist/type/decorator/api/function/get/properties.type.d.ts +0 -6
- package/dist/type/decorator/api/function/get/properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/get-list/base-properties.type.d.ts +0 -16
- package/dist/type/decorator/api/function/get-list/base-properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/get-list/executor-properties.type.d.ts +0 -9
- package/dist/type/decorator/api/function/get-list/executor-properties.type.js +0 -3
- package/dist/type/decorator/api/function/get-list/executor-properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/get-list/index.d.ts +0 -3
- package/dist/type/decorator/api/function/get-list/index.js.map +0 -1
- package/dist/type/decorator/api/function/get-list/properties.type.d.ts +0 -9
- package/dist/type/decorator/api/function/get-list/properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/update/executor-properties.type.d.ts +0 -11
- package/dist/type/decorator/api/function/update/executor-properties.type.js +0 -3
- package/dist/type/decorator/api/function/update/executor-properties.type.js.map +0 -1
- package/dist/type/decorator/api/function/update/index.d.ts +0 -2
- package/dist/type/decorator/api/function/update/index.js.map +0 -1
- package/dist/type/decorator/api/function/update/properties.type.d.ts +0 -1
- package/dist/type/decorator/api/function/update/properties.type.js.map +0 -1
- package/dist/type/decorator/api/service-properties.type.js +0 -3
- package/dist/type/decorator/api/service-properties.type.js.map +0 -1
- package/dist/utility/dto/is-property-should-be-enabled.utility.d.ts +0 -3
- package/dist/utility/dto/is-property-should-be-enabled.utility.js.map +0 -1
- /package/dist/type/decorator/api/{service-properties.type.d.ts → service/properties.type.d.ts} +0 -0
- /package/dist/type/decorator/api/{function/create → service}/properties.type.js +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
# API Controller Configuration Documentation
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
The API Controller configuration is a TypeScript-based configuration system that provides a comprehensive way to define API endpoints with authentication, request/response handling, validation, and data transformation capabilities.
|
|
5
|
+
|
|
6
|
+
## Table of Contents
|
|
7
|
+
- [Basic Configuration Structure](#basic-configuration-structure)
|
|
8
|
+
- [Route Configuration](#route-configuration)
|
|
9
|
+
- [Authentication](#authentication)
|
|
10
|
+
- [Request Handling](#request-handling)
|
|
11
|
+
- [Response Handling](#response-handling)
|
|
12
|
+
- [Data Transformation](#data-transformation)
|
|
13
|
+
- [Validation](#validation)
|
|
14
|
+
- [Relations Management](#relations-management)
|
|
15
|
+
- [Auto DTO Configuration](#auto-dto-configuration)
|
|
16
|
+
|
|
17
|
+
## Basic Configuration Structure
|
|
18
|
+
|
|
19
|
+
The base configuration object follows this interface:
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
interface IApiControllerProperties<E> {
|
|
23
|
+
entity: IApiBaseEntity;
|
|
24
|
+
name?: string;
|
|
25
|
+
path?: string;
|
|
26
|
+
routes: {
|
|
27
|
+
[R in EApiRouteType]?: TApiControllerPropertiesRoute<E, R>;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### Properties:
|
|
33
|
+
- `entity`: The base entity class for the controller
|
|
34
|
+
- `name`: Optional name for the controller
|
|
35
|
+
- `path`: Optional URL path for the controller
|
|
36
|
+
- `routes`: Object containing route configurations
|
|
37
|
+
|
|
38
|
+
## Route Configuration
|
|
39
|
+
|
|
40
|
+
Routes are defined using the `EApiRouteType` enum, which includes:
|
|
41
|
+
- CREATE
|
|
42
|
+
- GET
|
|
43
|
+
- GET_LIST
|
|
44
|
+
- UPDATE
|
|
45
|
+
- PARTIAL_UPDATE
|
|
46
|
+
- DELETE
|
|
47
|
+
|
|
48
|
+
Each route can be configured with:
|
|
49
|
+
- Authentication settings
|
|
50
|
+
- Request handling
|
|
51
|
+
- Response handling
|
|
52
|
+
- Data transformations
|
|
53
|
+
- Validation rules
|
|
54
|
+
|
|
55
|
+
Example:
|
|
56
|
+
```typescript
|
|
57
|
+
{
|
|
58
|
+
[EApiRouteType.CREATE]: {
|
|
59
|
+
authentication: {...},
|
|
60
|
+
request: {...},
|
|
61
|
+
response: {...}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Authentication
|
|
67
|
+
|
|
68
|
+
Authentication configuration allows you to specify:
|
|
69
|
+
- Bearer token strategies
|
|
70
|
+
- Security strategies
|
|
71
|
+
- Authentication guards
|
|
72
|
+
- Authentication type
|
|
73
|
+
|
|
74
|
+
```typescript
|
|
75
|
+
interface IApiControllerPropertiesRouteAuthentication {
|
|
76
|
+
bearerStrategies?: Array<string>;
|
|
77
|
+
guard: Type<IAuthGuard>;
|
|
78
|
+
securityStrategies?: Array<string>;
|
|
79
|
+
type: EApiAuthenticationType;
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Example:
|
|
84
|
+
```typescript
|
|
85
|
+
authentication: {
|
|
86
|
+
bearerStrategies: ["accountAuthorization"],
|
|
87
|
+
guard: AccountGuard,
|
|
88
|
+
securityStrategies: ["accountRequestSignature", "accountRequestTimestamp"],
|
|
89
|
+
type: EApiAuthenticationType.ACCOUNT
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## Request Handling
|
|
94
|
+
|
|
95
|
+
Request configuration includes:
|
|
96
|
+
- Relations loading
|
|
97
|
+
- Data transformation
|
|
98
|
+
- Request validation
|
|
99
|
+
|
|
100
|
+
```typescript
|
|
101
|
+
interface IApiControllerPropertiesRouteBaseRequest<E, R> {
|
|
102
|
+
relations?: TApiControllerPropertiesRouteBaseRequestRelations<E>;
|
|
103
|
+
transformers?: TApiControllerPropertiesRouteBaseRequestTransformers<E, R>;
|
|
104
|
+
validators?: Array<IApiRequestValidator<E>>;
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Relations Loading Strategies
|
|
109
|
+
|
|
110
|
+
Two strategies are available:
|
|
111
|
+
1. **AUTO**: Automatically loads relations
|
|
112
|
+
2. **MANUAL**: Manually specify relations to load
|
|
113
|
+
|
|
114
|
+
```typescript
|
|
115
|
+
relations: {
|
|
116
|
+
loadRelations: true,
|
|
117
|
+
relationsLoadStrategy: EApiControllerLoadRelationsStrategy.MANUAL,
|
|
118
|
+
relationsToLoad: ["bank"],
|
|
119
|
+
servicesLoadStrategy: EApiControllerLoadRelationsStrategy.MANUAL,
|
|
120
|
+
relationsServices: {
|
|
121
|
+
bank: "bankService"
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Response Handling
|
|
127
|
+
|
|
128
|
+
Response configuration allows you to:
|
|
129
|
+
- Specify relations to include
|
|
130
|
+
- Transform response data
|
|
131
|
+
|
|
132
|
+
```typescript
|
|
133
|
+
interface IApiControllerPropertiesRouteBaseResponse<E, R> {
|
|
134
|
+
relations?: FindOptionsRelations<E>;
|
|
135
|
+
transformers?: TApiControllerPropertiesRouteBaseResponseTransformers<E, R>;
|
|
136
|
+
}
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
Example:
|
|
140
|
+
```typescript
|
|
141
|
+
response: {
|
|
142
|
+
relations: {
|
|
143
|
+
bank: true,
|
|
144
|
+
currency: true
|
|
145
|
+
},
|
|
146
|
+
transformers: {
|
|
147
|
+
[EApiDtoType.RESPONSE]: [
|
|
148
|
+
{
|
|
149
|
+
key: "user",
|
|
150
|
+
type: EApiControllerRequestTransformerType.DYNAMIC,
|
|
151
|
+
value: TRANSFORMER_VALUE_DTO_CONSTANT.REQUEST_IP
|
|
152
|
+
}
|
|
153
|
+
]
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## Data Transformation
|
|
159
|
+
|
|
160
|
+
Transformers can be configured for different DTO types:
|
|
161
|
+
- BODY
|
|
162
|
+
- QUERY
|
|
163
|
+
- REQUEST
|
|
164
|
+
- RESPONSE
|
|
165
|
+
|
|
166
|
+
Two types of transformers are available:
|
|
167
|
+
1. **DYNAMIC**: Uses predefined constants
|
|
168
|
+
2. **STATIC**: Uses static values
|
|
169
|
+
|
|
170
|
+
```typescript
|
|
171
|
+
type TApiRequestTransformer<E> = {
|
|
172
|
+
key: keyof IApiGetListResponseResult<E> | keyof Partial<E> | keyof TApiFunctionGetListProperties<E>;
|
|
173
|
+
} & (
|
|
174
|
+
| {
|
|
175
|
+
type: EApiControllerRequestTransformerType.DYNAMIC;
|
|
176
|
+
value: (typeof TRANSFORMER_VALUE_DTO_CONSTANT)[keyof typeof TRANSFORMER_VALUE_DTO_CONSTANT];
|
|
177
|
+
}
|
|
178
|
+
| {
|
|
179
|
+
type: EApiControllerRequestTransformerType.STATIC;
|
|
180
|
+
value: string;
|
|
181
|
+
}
|
|
182
|
+
);
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
## Validation
|
|
186
|
+
|
|
187
|
+
Validators can be configured for requests with:
|
|
188
|
+
- Error type
|
|
189
|
+
- Exception class
|
|
190
|
+
- Validation function
|
|
191
|
+
|
|
192
|
+
```typescript
|
|
193
|
+
interface IApiRequestValidator<E> {
|
|
194
|
+
errorType: EErrorStringAction;
|
|
195
|
+
exception: TApiException;
|
|
196
|
+
validationFunction: (entity: DeepPartial<E> | Partial<E> | TApiFunctionGetListProperties<E>) => boolean | Promise<boolean>;
|
|
197
|
+
}
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
Example:
|
|
201
|
+
```typescript
|
|
202
|
+
validators: [
|
|
203
|
+
{
|
|
204
|
+
errorType: EErrorStringAction.ADDRESS_NOT_MATCH_PATTERN,
|
|
205
|
+
exception: BadRequestException,
|
|
206
|
+
validationFunction: (account: Partial<Account>): boolean =>
|
|
207
|
+
(account.id?.includes("7") ? account.id.includes("AAAA") : true)
|
|
208
|
+
}
|
|
209
|
+
]
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
## Auto DTO Configuration
|
|
213
|
+
|
|
214
|
+
Auto DTO allows automatic Data Transfer Object configuration:
|
|
215
|
+
|
|
216
|
+
```typescript
|
|
217
|
+
autoDto?: {
|
|
218
|
+
[key in EApiDtoType]?: IApiControllerPropertiesRouteAutoDtoConfig;
|
|
219
|
+
};
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
Example:
|
|
223
|
+
```typescript
|
|
224
|
+
autoDto: {
|
|
225
|
+
[EApiDtoType.REQUEST]: {
|
|
226
|
+
validators: [
|
|
227
|
+
{
|
|
228
|
+
constraintClass: HasAtLeastOneOfListedProperties,
|
|
229
|
+
options: ["hybrid", "currencyId"]
|
|
230
|
+
}
|
|
231
|
+
]
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
## Usage Example
|
|
237
|
+
|
|
238
|
+
Here's a complete example of a route configuration:
|
|
239
|
+
|
|
240
|
+
```typescript
|
|
241
|
+
[EApiRouteType.CREATE]: {
|
|
242
|
+
authentication: {
|
|
243
|
+
bearerStrategies: ["accountAuthorization"],
|
|
244
|
+
guard: AccountGuard,
|
|
245
|
+
securityStrategies: ["accountRequestSignature", "accountRequestTimestamp"],
|
|
246
|
+
type: EApiAuthenticationType.ACCOUNT
|
|
247
|
+
},
|
|
248
|
+
request: {
|
|
249
|
+
relations: {
|
|
250
|
+
loadRelations: true,
|
|
251
|
+
relationsLoadStrategy: EApiControllerLoadRelationsStrategy.MANUAL,
|
|
252
|
+
relationsServices: {
|
|
253
|
+
bank: "bankService"
|
|
254
|
+
},
|
|
255
|
+
relationsToLoad: ["bank"],
|
|
256
|
+
servicesLoadStrategy: EApiControllerLoadRelationsStrategy.MANUAL
|
|
257
|
+
},
|
|
258
|
+
transformers: {
|
|
259
|
+
[EApiDtoType.BODY]: [
|
|
260
|
+
{
|
|
261
|
+
key: "user",
|
|
262
|
+
type: EApiControllerRequestTransformerType.DYNAMIC,
|
|
263
|
+
value: TRANSFORMER_VALUE_DTO_CONSTANT.AUTHORIZED_ENTITY
|
|
264
|
+
}
|
|
265
|
+
]
|
|
266
|
+
},
|
|
267
|
+
validators: [
|
|
268
|
+
{
|
|
269
|
+
errorType: EErrorStringAction.ADDRESS_NOT_MATCH_PATTERN,
|
|
270
|
+
exception: BadRequestException,
|
|
271
|
+
validationFunction: (account: Partial<Account>): boolean =>
|
|
272
|
+
(account.id?.includes("7") ? account.id.includes("AAAA") : true)
|
|
273
|
+
}
|
|
274
|
+
]
|
|
275
|
+
},
|
|
276
|
+
response: {
|
|
277
|
+
relations: {
|
|
278
|
+
bank: true,
|
|
279
|
+
currency: true
|
|
280
|
+
},
|
|
281
|
+
transformers: {
|
|
282
|
+
[EApiDtoType.RESPONSE]: [
|
|
283
|
+
{
|
|
284
|
+
key: "user",
|
|
285
|
+
type: EApiControllerRequestTransformerType.DYNAMIC,
|
|
286
|
+
value: TRANSFORMER_VALUE_DTO_CONSTANT.REQUEST_IP
|
|
287
|
+
}
|
|
288
|
+
]
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
## Best Practices
|
|
295
|
+
|
|
296
|
+
1. **Authentication**
|
|
297
|
+
- Always specify appropriate bearer and security strategies
|
|
298
|
+
- Use proper guards for route protection
|
|
299
|
+
- Choose the correct authentication type
|
|
300
|
+
|
|
301
|
+
2. **Relations**
|
|
302
|
+
- Use MANUAL strategy when you need precise control over relation loading
|
|
303
|
+
- Use AUTO strategy for simpler cases
|
|
304
|
+
- Always specify required services when using MANUAL strategy
|
|
305
|
+
|
|
306
|
+
3. **Validation**
|
|
307
|
+
- Implement comprehensive validation rules
|
|
308
|
+
- Use appropriate error types and exceptions
|
|
309
|
+
- Consider both sync and async validation functions
|
|
310
|
+
|
|
311
|
+
4. **Transformation**
|
|
312
|
+
- Use DYNAMIC transformers for runtime values
|
|
313
|
+
- Use STATIC transformers for constant values
|
|
314
|
+
- Consider the DTO type when applying transformations
|
|
315
|
+
|
|
316
|
+
## Notes
|
|
317
|
+
|
|
318
|
+
- All configurations are type-safe with TypeScript
|
|
319
|
+
- Relations loading can be controlled at a granular level
|
|
320
|
+
- Transformers can be applied at multiple stages of request/response handling
|
|
321
|
+
- Validation can be both synchronous and asynchronous
|
|
322
|
+
- Auto DTO configuration provides a simplified way to handle data transfer objects
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "./base
|
|
1
|
+
export * from "./service-base.class";
|
package/dist/class/api/index.js
CHANGED
|
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./base
|
|
17
|
+
__exportStar(require("./service-base.class"), exports);
|
|
18
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["class/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC","sourcesContent":["export * from \"./base
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["class/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC","sourcesContent":["export * from \"./service-base.class\";\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { IApiGetListResponseResult } from "../../interface";
|
|
2
|
+
import type { TApiFunctionGetManyProperties, TApiFunctionUpdateCriteria } from "../../type";
|
|
3
|
+
import type { TApiFunctionCreateProperties, TApiFunctionDeleteCriteria, TApiFunctionGetListProperties, TApiFunctionGetProperties, TApiFunctionUpdateProperties } from "../../type";
|
|
4
|
+
export declare class ApiServiceBase<E> {
|
|
5
|
+
create(properties: TApiFunctionCreateProperties<E>): Promise<E>;
|
|
6
|
+
delete(criteria: TApiFunctionDeleteCriteria<E>): Promise<void>;
|
|
7
|
+
get(properties: TApiFunctionGetProperties<E>): Promise<E>;
|
|
8
|
+
getList(properties: TApiFunctionGetListProperties<E>): Promise<IApiGetListResponseResult<E>>;
|
|
9
|
+
getMany(properties: TApiFunctionGetManyProperties<E>): Promise<Array<E>>;
|
|
10
|
+
update(criteria: TApiFunctionUpdateCriteria<E>, properties: TApiFunctionUpdateProperties<E>): Promise<E>;
|
|
11
|
+
}
|
|
@@ -1,31 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
class
|
|
3
|
+
exports.ApiServiceBase = void 0;
|
|
4
|
+
class ApiServiceBase {
|
|
5
5
|
create(properties) {
|
|
6
6
|
void properties;
|
|
7
7
|
return Promise.resolve({});
|
|
8
8
|
}
|
|
9
|
-
delete(
|
|
10
|
-
void
|
|
9
|
+
delete(criteria) {
|
|
10
|
+
void criteria;
|
|
11
11
|
return Promise.resolve();
|
|
12
12
|
}
|
|
13
|
-
get(
|
|
14
|
-
void id;
|
|
13
|
+
get(properties) {
|
|
15
14
|
void properties;
|
|
16
|
-
void relations;
|
|
17
15
|
return Promise.resolve({});
|
|
18
16
|
}
|
|
19
|
-
getList(properties
|
|
17
|
+
getList(properties) {
|
|
20
18
|
void properties;
|
|
21
|
-
void relations;
|
|
22
19
|
return Promise.resolve({ items: [], total: 0 });
|
|
23
20
|
}
|
|
24
|
-
|
|
25
|
-
void
|
|
21
|
+
getMany(properties) {
|
|
22
|
+
void properties;
|
|
23
|
+
return Promise.resolve([]);
|
|
24
|
+
}
|
|
25
|
+
update(criteria, properties) {
|
|
26
|
+
void criteria;
|
|
26
27
|
void properties;
|
|
27
28
|
return Promise.resolve({});
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
|
-
exports.
|
|
31
|
-
//# sourceMappingURL=base
|
|
31
|
+
exports.ApiServiceBase = ApiServiceBase;
|
|
32
|
+
//# sourceMappingURL=service-base.class.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-base.class.js","sourceRoot":"/","sources":["class/api/service-base.class.ts"],"names":[],"mappings":";;;AAKA,MAAa,cAAc;IAC1B,MAAM,CAAC,UAA2C;QACjD,KAAK,UAAU,CAAC;QAEhB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAO,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,QAAuC;QAC7C,KAAK,QAAQ,CAAC;QAEd,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,GAAG,CAAC,UAAwC;QAC3C,KAAK,UAAU,CAAC;QAEhB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAO,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,CAAC,UAA4C;QACnD,KAAK,UAAU,CAAC;QAEhB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAA6C,CAAC,CAAC;IAC5F,CAAC;IAED,OAAO,CAAC,UAA4C;QACnD,KAAK,UAAU,CAAC;QAEhB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,QAAuC,EAAE,UAA2C;QAC1F,KAAK,QAAQ,CAAC;QACd,KAAK,UAAU,CAAC;QAEhB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAO,CAAC,CAAC;IACjC,CAAC;CACD;AArCD,wCAqCC","sourcesContent":["import type { IApiGetListResponseResult } from \"../../interface\";\nimport type { TApiFunctionGetManyProperties, TApiFunctionUpdateCriteria } from \"../../type\";\n\nimport type { TApiFunctionCreateProperties, TApiFunctionDeleteCriteria, TApiFunctionGetListProperties, TApiFunctionGetProperties, TApiFunctionUpdateProperties } from \"../../type\";\n\nexport class ApiServiceBase<E> {\n\tcreate(properties: TApiFunctionCreateProperties<E>): Promise<E> {\n\t\tvoid properties;\n\n\t\treturn Promise.resolve({} as E);\n\t}\n\n\tdelete(criteria: TApiFunctionDeleteCriteria<E>): Promise<void> {\n\t\tvoid criteria;\n\n\t\treturn Promise.resolve();\n\t}\n\n\tget(properties: TApiFunctionGetProperties<E>): Promise<E> {\n\t\tvoid properties;\n\n\t\treturn Promise.resolve({} as E);\n\t}\n\n\tgetList(properties: TApiFunctionGetListProperties<E>): Promise<IApiGetListResponseResult<E>> {\n\t\tvoid properties;\n\n\t\treturn Promise.resolve({ items: [], total: 0 } as unknown as IApiGetListResponseResult<E>);\n\t}\n\n\tgetMany(properties: TApiFunctionGetManyProperties<E>): Promise<Array<E>> {\n\t\tvoid properties;\n\n\t\treturn Promise.resolve([]);\n\t}\n\n\tupdate(criteria: TApiFunctionUpdateCriteria<E>, properties: TApiFunctionUpdateProperties<E>): Promise<E> {\n\t\tvoid criteria;\n\t\tvoid properties;\n\n\t\treturn Promise.resolve({} as E);\n\t}\n}\n"]}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
import type { IMetadataEntry } from "../interface";
|
|
2
|
+
import type { TMetadata } from "../type";
|
|
1
3
|
export declare class MetadataStorage {
|
|
2
4
|
private static instance;
|
|
3
5
|
private readonly STORAGE;
|
|
4
6
|
static getInstance(): MetadataStorage;
|
|
5
|
-
getAllEntitiesMetadata(): Record<string,
|
|
6
|
-
getMetadata(entityName: string
|
|
7
|
-
|
|
7
|
+
getAllEntitiesMetadata(): Record<string, TMetadata>;
|
|
8
|
+
getMetadata(entityName: string): TMetadata | undefined;
|
|
9
|
+
getMetadata(entityName: string, propertyName: string): IMetadataEntry | undefined;
|
|
10
|
+
getMetadata<K extends keyof IMetadataEntry>(entityName: string, propertyName: string, key: K): IMetadataEntry[K] | undefined;
|
|
11
|
+
setMetadata<K extends keyof IMetadataEntry>(entityName: string, propertyName: string, key: K, value: IMetadataEntry[K]): void;
|
|
8
12
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MetadataStorage = void 0;
|
|
4
|
+
const constant_1 = require("../constant");
|
|
4
5
|
class MetadataStorage {
|
|
5
6
|
static instance;
|
|
6
7
|
STORAGE = new Map();
|
|
@@ -36,9 +37,10 @@ class MetadataStorage {
|
|
|
36
37
|
}
|
|
37
38
|
const entityMetadata = this.STORAGE.get(entityName);
|
|
38
39
|
if (!entityMetadata.has(propertyName)) {
|
|
39
|
-
entityMetadata.set(propertyName, {});
|
|
40
|
+
entityMetadata.set(propertyName, { [constant_1.PROPERTY_DESCRIBE_DECORATOR_API_CONSTANT.METADATA_PROPERTY_NAME]: {} });
|
|
40
41
|
}
|
|
41
|
-
entityMetadata.get(propertyName)
|
|
42
|
+
const propertyMetadata = entityMetadata.get(propertyName);
|
|
43
|
+
propertyMetadata[key] = value;
|
|
42
44
|
}
|
|
43
45
|
}
|
|
44
46
|
exports.MetadataStorage = MetadataStorage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-storage.class.js","sourceRoot":"/","sources":["class/metadata-storage.class.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IACnB,MAAM,CAAC,QAAQ,CAAkB;IAExB,OAAO,
|
|
1
|
+
{"version":3,"file":"metadata-storage.class.js","sourceRoot":"/","sources":["class/metadata-storage.class.ts"],"names":[],"mappings":";;;AAAA,0CAAuE;AAMvE,MAAa,eAAe;IACnB,MAAM,CAAC,QAAQ,CAAkB;IAExB,OAAO,GAA6C,IAAI,GAAG,EAAuC,CAAC;IAE7G,MAAM,CAAC,WAAW;QACxB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC/B,eAAe,CAAC,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;QAClD,CAAC;QAED,OAAO,eAAe,CAAC,QAAQ,CAAC;IACjC,CAAC;IAEM,sBAAsB;QAC5B,MAAM,MAAM,GAA8B,EAAE,CAAC;QAE7C,KAAK,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YACnE,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAKM,WAAW,CAAC,UAAkB,EAAE,YAAqB,EAAE,GAA0B;QACvF,MAAM,cAAc,GAA4C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE7F,IAAI,CAAC,cAAc;YAAE,OAAO,SAAS,CAAC;QAEtC,IAAI,CAAC,YAAY;YAAE,OAAO,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,gBAAgB,GAA+B,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEtF,IAAI,CAAC,gBAAgB;YAAE,OAAO,SAAS,CAAC;QAExC,IAAI,CAAC,GAAG;YAAE,OAAO,gBAAgB,CAAC;QAElC,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAEM,WAAW,CAAiC,UAAkB,EAAE,YAAoB,EAAE,GAAM,EAAE,KAAwB;QAC5H,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,cAAc,GAAgC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QAElF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACvC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,mDAAwC,CAAC,sBAAsB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7G,CAAC;QAED,MAAM,gBAAgB,GAAmB,cAAc,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;QAC3E,gBAAgB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC/B,CAAC;CACD;AAtDD,0CAsDC","sourcesContent":["import { PROPERTY_DESCRIBE_DECORATOR_API_CONSTANT } from \"../constant\";\n\nimport type { IMetadataEntry } from \"../interface\";\n\nimport type { TMetadata } from \"../type\";\n\nexport class MetadataStorage {\n\tprivate static instance: MetadataStorage;\n\n\tprivate readonly STORAGE: Map<string, Map<string, IMetadataEntry>> = new Map<string, Map<string, IMetadataEntry>>();\n\n\tpublic static getInstance(): MetadataStorage {\n\t\tif (!MetadataStorage.instance) {\n\t\t\tMetadataStorage.instance = new MetadataStorage();\n\t\t}\n\n\t\treturn MetadataStorage.instance;\n\t}\n\n\tpublic getAllEntitiesMetadata(): Record<string, TMetadata> {\n\t\tconst result: Record<string, TMetadata> = {};\n\n\t\tfor (const [entityName, entityMetadata] of this.STORAGE.entries()) {\n\t\t\tresult[entityName] = Object.fromEntries(entityMetadata);\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tpublic getMetadata(entityName: string): TMetadata | undefined;\n\tpublic getMetadata(entityName: string, propertyName: string): IMetadataEntry | undefined;\n\tpublic getMetadata<K extends keyof IMetadataEntry>(entityName: string, propertyName: string, key: K): IMetadataEntry[K] | undefined;\n\tpublic getMetadata(entityName: string, propertyName?: string, key?: keyof IMetadataEntry): IMetadataEntry | IMetadataEntry[keyof IMetadataEntry] | TMetadata | undefined {\n\t\tconst entityMetadata: Map<string, IMetadataEntry> | undefined = this.STORAGE.get(entityName);\n\n\t\tif (!entityMetadata) return undefined;\n\n\t\tif (!propertyName) return Object.fromEntries(entityMetadata);\n\t\tconst propertyMetadata: IMetadataEntry | undefined = entityMetadata.get(propertyName);\n\n\t\tif (!propertyMetadata) return undefined;\n\n\t\tif (!key) return propertyMetadata;\n\n\t\treturn propertyMetadata[key];\n\t}\n\n\tpublic setMetadata<K extends keyof IMetadataEntry>(entityName: string, propertyName: string, key: K, value: IMetadataEntry[K]): void {\n\t\tif (!this.STORAGE.has(entityName)) {\n\t\t\tthis.STORAGE.set(entityName, new Map());\n\t\t}\n\t\tconst entityMetadata: Map<string, IMetadataEntry> = this.STORAGE.get(entityName)!;\n\n\t\tif (!entityMetadata.has(propertyName)) {\n\t\t\tentityMetadata.set(propertyName, { [PROPERTY_DESCRIBE_DECORATOR_API_CONSTANT.METADATA_PROPERTY_NAME]: {} });\n\t\t}\n\n\t\tconst propertyMetadata: IMetadataEntry = entityMetadata.get(propertyName)!;\n\t\tpropertyMetadata[key] = value;\n\t}\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IApiEntity, IDtoGenerateFactory } from "../../../../../interface";
|
|
2
2
|
import type { TApiPropertyDescribeBooleanProperties, TApiPropertyDescribeDtoProperties } from "../../../../../type";
|
|
3
|
-
export declare class DtoPropertyFactoryBoolean implements IDtoGenerateFactory {
|
|
4
|
-
create(metadata: TApiPropertyDescribeBooleanProperties, entity: IApiEntity
|
|
3
|
+
export declare class DtoPropertyFactoryBoolean<E> implements IDtoGenerateFactory<E> {
|
|
4
|
+
create(metadata: TApiPropertyDescribeBooleanProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boolean.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/boolean.class.ts"],"names":[],"mappings":";;;AAAA,wDAA8D;AAK9D,MAAa,yBAAyB;IACrC,MAAM,CAAC,QAA+C,EAAE,
|
|
1
|
+
{"version":3,"file":"boolean.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/boolean.class.ts"],"names":[],"mappings":";;;AAAA,wDAA8D;AAK9D,MAAa,yBAAyB;IACrC,MAAM,CAAC,QAA+C,EAAE,MAAqB,EAAE,MAAyC;QACvH,OAAO,IAAA,8BAAkB,EAAC;YACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,MAAM;YACN,GAAG,MAAM;SACT,CAAC,CAAC;IACJ,CAAC;CACD;AARD,8DAQC","sourcesContent":["import { ApiPropertyBoolean } from \"../../../../../decorator\";\n\nimport type { IApiEntity, IDtoGenerateFactory } from \"../../../../../interface\";\nimport type { TApiPropertyDescribeBooleanProperties, TApiPropertyDescribeDtoProperties } from \"../../../../../type\";\n\nexport class DtoPropertyFactoryBoolean<E> implements IDtoGenerateFactory<E> {\n\tcreate(metadata: TApiPropertyDescribeBooleanProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator {\n\t\treturn ApiPropertyBoolean({\n\t\t\tdescription: metadata.description,\n\t\t\tentity,\n\t\t\t...config,\n\t\t});\n\t}\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IApiEntity, IDtoGenerateFactory } from "../../../../../interface";
|
|
2
2
|
import type { TApiPropertyDescribeDateProperties, TApiPropertyDescribeDtoProperties } from "../../../../../type";
|
|
3
|
-
export declare class DtoPropertyFactoryDate implements IDtoGenerateFactory {
|
|
4
|
-
create(metadata: TApiPropertyDescribeDateProperties, entity: IApiEntity
|
|
3
|
+
export declare class DtoPropertyFactoryDate<E> implements IDtoGenerateFactory<E> {
|
|
4
|
+
create(metadata: TApiPropertyDescribeDateProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/date.class.ts"],"names":[],"mappings":";;;AAAA,wDAA2D;AAK3D,MAAa,sBAAsB;IAClC,MAAM,CAAC,QAA4C,EAAE,
|
|
1
|
+
{"version":3,"file":"date.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/date.class.ts"],"names":[],"mappings":";;;AAAA,wDAA2D;AAK3D,MAAa,sBAAsB;IAClC,MAAM,CAAC,QAA4C,EAAE,MAAqB,EAAE,MAAyC;QACpH,OAAO,IAAA,2BAAe,EAAC;YACtB,MAAM;YACN,GAAG,MAAM;YACT,IAAI,EAAE,QAAQ,CAAC,QAAQ;SACvB,CAAC,CAAC;IACJ,CAAC;CACD;AARD,wDAQC","sourcesContent":["import { ApiPropertyDate } from \"../../../../../decorator\";\n\nimport type { IApiEntity, IDtoGenerateFactory } from \"../../../../../interface\";\nimport type { TApiPropertyDescribeDateProperties, TApiPropertyDescribeDtoProperties } from \"../../../../../type\";\n\nexport class DtoPropertyFactoryDate<E> implements IDtoGenerateFactory<E> {\n\tcreate(metadata: TApiPropertyDescribeDateProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator {\n\t\treturn ApiPropertyDate({\n\t\t\tentity,\n\t\t\t...config,\n\t\t\ttype: metadata.dataType,\n\t\t});\n\t}\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IApiEntity, IDtoGenerateFactory } from "src/interface";
|
|
2
2
|
import type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeNumberProperties } from "src/type";
|
|
3
|
-
export declare class DtoPropertyFactoryNumber implements IDtoGenerateFactory {
|
|
4
|
-
create(metadata: TApiPropertyDescribeNumberProperties, entity: IApiEntity
|
|
3
|
+
export declare class DtoPropertyFactoryNumber<E> implements IDtoGenerateFactory<E> {
|
|
4
|
+
create(metadata: TApiPropertyDescribeNumberProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/number.class.ts"],"names":[],"mappings":";;;AAAA,wDAA6D;AAK7D,MAAa,wBAAwB;IACpC,MAAM,CAAC,QAA8C,EAAE,
|
|
1
|
+
{"version":3,"file":"number.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/number.class.ts"],"names":[],"mappings":";;;AAAA,wDAA6D;AAK7D,MAAa,wBAAwB;IACpC,MAAM,CAAC,QAA8C,EAAE,MAAqB,EAAE,MAAyC;QACtH,OAAO,IAAA,6BAAiB,EAAC;YACxB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,MAAM;YACN,GAAG,MAAM;YACT,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,IAAI,EAAE,QAAQ,CAAC,QAAQ;SACvB,CAAC,CAAC;IACJ,CAAC;CACD;AAZD,4DAYC","sourcesContent":["import { ApiPropertyNumber } from \"../../../../../decorator\";\n\nimport type { IApiEntity, IDtoGenerateFactory } from \"src/interface\";\nimport type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeNumberProperties } from \"src/type\";\n\nexport class DtoPropertyFactoryNumber<E> implements IDtoGenerateFactory<E> {\n\tcreate(metadata: TApiPropertyDescribeNumberProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator {\n\t\treturn ApiPropertyNumber({\n\t\t\tdescription: metadata.description,\n\t\t\tentity,\n\t\t\t...config,\n\t\t\tmaximum: metadata.maximum,\n\t\t\tminimum: metadata.minimum,\n\t\t\tmultipleOf: metadata.multipleOf,\n\t\t\ttype: metadata.dataType,\n\t\t});\n\t}\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IApiEntity, IDtoGenerateFactory } from "../../../../../interface";
|
|
2
2
|
import type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeObjectProperties } from "../../../../../type";
|
|
3
|
-
export declare class DtoPropertyFactoryObject implements IDtoGenerateFactory {
|
|
4
|
-
create(metadata: TApiPropertyDescribeObjectProperties, entity: IApiEntity
|
|
3
|
+
export declare class DtoPropertyFactoryObject<E> implements IDtoGenerateFactory<E> {
|
|
4
|
+
create(metadata: TApiPropertyDescribeObjectProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/object.class.ts"],"names":[],"mappings":";;;AAAA,wDAA6D;AAK7D,MAAa,wBAAwB;IACpC,MAAM,CAAC,QAA8C,EAAE,
|
|
1
|
+
{"version":3,"file":"object.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/object.class.ts"],"names":[],"mappings":";;;AAAA,wDAA6D;AAK7D,MAAa,wBAAwB;IACpC,MAAM,CAAC,QAA8C,EAAE,MAAqB,EAAE,MAAyC;QACtH,OAAO,IAAA,6BAAiB,EAAC;YACxB,MAAM;YACN,GAAG,MAAM;YACT,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,GAAG,QAAQ;YACX,IAAI,EAAE,QAAQ,CAAC,QAAQ;SACvB,CAAC,CAAC;IACJ,CAAC;CACD;AAVD,4DAUC","sourcesContent":["import { ApiPropertyObject } from \"../../../../../decorator\";\n\nimport type { IApiEntity, IDtoGenerateFactory } from \"../../../../../interface\";\nimport type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeObjectProperties } from \"../../../../../type\";\n\nexport class DtoPropertyFactoryObject<E> implements IDtoGenerateFactory<E> {\n\tcreate(metadata: TApiPropertyDescribeObjectProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator {\n\t\treturn ApiPropertyObject({\n\t\t\tentity,\n\t\t\t...config,\n\t\t\tenum: metadata.enum,\n\t\t\t...metadata,\n\t\t\ttype: metadata.dataType,\n\t\t});\n\t}\n}\n"]}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { EApiDtoType } from "../../../../../enum";
|
|
2
|
+
import type { EApiRouteType } from "../../../../../enum";
|
|
1
3
|
import type { IApiEntity, IDtoGenerateFactory } from "../../../../../interface";
|
|
2
4
|
import type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeUuidProperties } from "../../../../../type";
|
|
3
|
-
export declare class DtoPropertyFactoryRelation implements IDtoGenerateFactory {
|
|
4
|
-
create(metadata: TApiPropertyDescribeUuidProperties, entity: IApiEntity
|
|
5
|
+
export declare class DtoPropertyFactoryRelation<E> implements IDtoGenerateFactory<E> {
|
|
6
|
+
create(metadata: TApiPropertyDescribeUuidProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties, method: EApiRouteType, dtoType: EApiDtoType, propertyName: string): PropertyDecorator;
|
|
5
7
|
}
|
|
@@ -2,9 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DtoPropertyFactoryRelation = void 0;
|
|
4
4
|
const decorator_1 = require("../../../../../decorator");
|
|
5
|
+
const enum_1 = require("../../../../../enum");
|
|
6
|
+
const utility_1 = require("../../../../../utility");
|
|
5
7
|
class DtoPropertyFactoryRelation {
|
|
6
|
-
create(metadata, entity, config) {
|
|
7
|
-
|
|
8
|
+
create(metadata, entity, config, method, dtoType, propertyName) {
|
|
9
|
+
if (dtoType === enum_1.EApiDtoType.RESPONSE) {
|
|
10
|
+
console.log("PIDOR CONFIG", { description: metadata.description, entity, type: (0, utility_1.DtoGenerateRelationResponse)(entity, method, dtoType, propertyName), ...config });
|
|
11
|
+
return (0, decorator_1.ApiPropertyObject)({ description: metadata.description, entity, type: (0, utility_1.DtoGenerateRelationResponse)(entity, method, dtoType, propertyName), ...config });
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
return (0, decorator_1.ApiPropertyUUID)({ description: metadata.description, entity, ...config });
|
|
15
|
+
}
|
|
8
16
|
}
|
|
9
17
|
}
|
|
10
18
|
exports.DtoPropertyFactoryRelation = DtoPropertyFactoryRelation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/relation.class.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"relation.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/relation.class.ts"],"names":[],"mappings":";;;AAAA,wDAA8E;AAE9E,8CAAkD;AAElD,oDAAqE;AAMrE,MAAa,0BAA0B;IACtC,MAAM,CAAC,QAA4C,EAAE,MAAqB,EAAE,MAAyC,EAAE,MAAqB,EAAE,OAAoB,EAAE,YAAoB;QACvL,IAAI,OAAO,KAAK,kBAAW,CAAC,QAAQ,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,IAAA,qCAA2B,EAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YAEhK,OAAO,IAAA,6BAAiB,EAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,IAAA,qCAA2B,EAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QAC9J,CAAC;aAAM,CAAC;YACP,OAAO,IAAA,2BAAe,EAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QAClF,CAAC;IACF,CAAC;CACD;AAVD,gEAUC","sourcesContent":["import { ApiPropertyObject, ApiPropertyUUID } from \"../../../../../decorator\";\n\nimport { EApiDtoType } from \"../../../../../enum\";\n\nimport { DtoGenerateRelationResponse } from \"../../../../../utility\";\n\nimport type { EApiRouteType } from \"../../../../../enum\";\nimport type { IApiEntity, IDtoGenerateFactory } from \"../../../../../interface\";\nimport type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeUuidProperties } from \"../../../../../type\";\n\nexport class DtoPropertyFactoryRelation<E> implements IDtoGenerateFactory<E> {\n\tcreate(metadata: TApiPropertyDescribeUuidProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties, method: EApiRouteType, dtoType: EApiDtoType, propertyName: string): PropertyDecorator {\n\t\tif (dtoType === EApiDtoType.RESPONSE) {\n\t\t\tconsole.log(\"PIDOR CONFIG\", { description: metadata.description, entity, type: DtoGenerateRelationResponse(entity, method, dtoType, propertyName), ...config });\n\n\t\t\treturn ApiPropertyObject({ description: metadata.description, entity, type: DtoGenerateRelationResponse(entity, method, dtoType, propertyName), ...config });\n\t\t} else {\n\t\t\treturn ApiPropertyUUID({ description: metadata.description, entity, ...config });\n\t\t}\n\t}\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IApiEntity, IDtoGenerateFactory } from "../../../../../interface";
|
|
2
2
|
import type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeStringProperties } from "../../../../../type";
|
|
3
|
-
export declare class DtoPropertyFactoryString implements IDtoGenerateFactory {
|
|
4
|
-
create(metadata: TApiPropertyDescribeStringProperties, entity: IApiEntity
|
|
3
|
+
export declare class DtoPropertyFactoryString<E> implements IDtoGenerateFactory<E> {
|
|
4
|
+
create(metadata: TApiPropertyDescribeStringProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/string.class.ts"],"names":[],"mappings":";;;AAAA,wDAA6D;AAK7D,MAAa,wBAAwB;IACpC,MAAM,CAAC,QAA8C,EAAE,
|
|
1
|
+
{"version":3,"file":"string.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/string.class.ts"],"names":[],"mappings":";;;AAAA,wDAA6D;AAK7D,MAAa,wBAAwB;IACpC,MAAM,CAAC,QAA8C,EAAE,MAAqB,EAAE,MAAyC;QACtH,OAAO,IAAA,6BAAiB,EAAC;YACxB,MAAM;YACN,GAAG,MAAM;YACT,GAAG,QAAQ;SAC+C,CAAC,CAAC;IAC9D,CAAC;CACD;AARD,4DAQC","sourcesContent":["import { ApiPropertyString } from \"../../../../../decorator\";\n\nimport type { IApiEntity, IApiPropertyStringProperties, IDtoGenerateFactory } from \"../../../../../interface\";\nimport type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeStringProperties } from \"../../../../../type\";\n\nexport class DtoPropertyFactoryString<E> implements IDtoGenerateFactory<E> {\n\tcreate(metadata: TApiPropertyDescribeStringProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator {\n\t\treturn ApiPropertyString({\n\t\t\tentity,\n\t\t\t...config,\n\t\t\t...metadata,\n\t\t} as unknown as IApiPropertyStringProperties<typeof entity>);\n\t}\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IApiEntity, IDtoGenerateFactory } from "../../../../../interface";
|
|
2
2
|
import type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeUuidProperties } from "../../../../../type";
|
|
3
|
-
export declare class DtoPropertyFactoryUuid implements IDtoGenerateFactory {
|
|
4
|
-
create(metadata: TApiPropertyDescribeUuidProperties, entity: IApiEntity
|
|
3
|
+
export declare class DtoPropertyFactoryUuid<E> implements IDtoGenerateFactory<E> {
|
|
4
|
+
create(metadata: TApiPropertyDescribeUuidProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uuid.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/uuid.class.ts"],"names":[],"mappings":";;;AAAA,wDAA2D;AAK3D,MAAa,sBAAsB;IAClC,MAAM,CAAC,QAA4C,EAAE,
|
|
1
|
+
{"version":3,"file":"uuid.class.js","sourceRoot":"/","sources":["class/utility/dto/property/factory/uuid.class.ts"],"names":[],"mappings":";;;AAAA,wDAA2D;AAK3D,MAAa,sBAAsB;IAClC,MAAM,CAAC,QAA4C,EAAE,MAAqB,EAAE,MAAyC;QACpH,OAAO,IAAA,2BAAe,EAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;IAClF,CAAC;CACD;AAJD,wDAIC","sourcesContent":["import { ApiPropertyUUID } from \"../../../../../decorator\";\n\nimport type { IApiEntity, IDtoGenerateFactory } from \"../../../../../interface\";\nimport type { TApiPropertyDescribeDtoProperties, TApiPropertyDescribeUuidProperties } from \"../../../../../type\";\n\nexport class DtoPropertyFactoryUuid<E> implements IDtoGenerateFactory<E> {\n\tcreate(metadata: TApiPropertyDescribeUuidProperties, entity: IApiEntity<E>, config: TApiPropertyDescribeDtoProperties): PropertyDecorator {\n\t\treturn ApiPropertyUUID({ description: metadata.description, entity, ...config });\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"property-describe.constant.js","sourceRoot":"/","sources":["constant/decorator/api/property-describe.constant.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"property-describe.constant.js","sourceRoot":"/","sources":["constant/decorator/api/property-describe.constant.ts"],"names":[],"mappings":";;;AACA,MAAM,sBAAsB,GAA4B,uBAAgC,CAAC;AAE5E,QAAA,wCAAwC,GAAiE;IACrH,sBAAsB;CACb,CAAC","sourcesContent":["// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\nconst METADATA_PROPERTY_NAME: \"API_PROPERTY_DESCRIBE\" = \"API_PROPERTY_DESCRIBE\" as const;\n\nexport const PROPERTY_DESCRIBE_DECORATOR_API_CONSTANT: { readonly METADATA_PROPERTY_NAME: \"API_PROPERTY_DESCRIBE\" } = {\n\tMETADATA_PROPERTY_NAME,\n} as const;\n"]}
|