@gennext/lb-infra 0.1.5 → 0.2.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 +264 -135
- package/dist/drizzle.config.d.ts +3 -0
- package/dist/drizzle.config.d.ts.map +1 -0
- package/dist/drizzle.config.js +17 -0
- package/dist/drizzle.config.js.map +1 -0
- package/dist/src/base/applications/base.application.d.ts +62 -0
- package/dist/src/base/applications/base.application.d.ts.map +1 -0
- package/dist/src/base/applications/base.application.js +54 -0
- package/dist/src/base/applications/base.application.js.map +1 -0
- package/dist/src/base/applications/index.d.ts +2 -0
- package/dist/src/base/applications/index.d.ts.map +1 -0
- package/dist/src/base/applications/index.js +18 -0
- package/dist/src/base/applications/index.js.map +1 -0
- package/dist/{base → src/base}/base.helper.d.ts +1 -1
- package/dist/src/base/base.helper.d.ts.map +1 -0
- package/dist/{base → src/base}/base.helper.js +1 -1
- package/dist/src/base/base.helper.js.map +1 -0
- package/dist/src/base/controllers/base.controller.d.ts +23 -0
- package/dist/src/base/controllers/base.controller.d.ts.map +1 -0
- package/dist/src/base/controllers/base.controller.js +24 -0
- package/dist/src/base/controllers/base.controller.js.map +1 -0
- package/dist/src/base/controllers/decorators.d.ts +4 -0
- package/dist/src/base/controllers/decorators.d.ts.map +1 -0
- package/dist/src/base/controllers/decorators.js +9 -0
- package/dist/src/base/controllers/decorators.js.map +1 -0
- package/dist/src/base/controllers/index.d.ts +3 -0
- package/dist/src/base/controllers/index.d.ts.map +1 -0
- package/dist/src/base/controllers/index.js +19 -0
- package/dist/src/base/controllers/index.js.map +1 -0
- package/dist/src/base/datasources/base.datasource.d.ts +28 -0
- package/dist/src/base/datasources/base.datasource.d.ts.map +1 -0
- package/dist/src/base/datasources/base.datasource.js +20 -0
- package/dist/src/base/datasources/base.datasource.js.map +1 -0
- package/dist/src/base/datasources/index.d.ts.map +1 -0
- package/dist/src/base/datasources/index.js.map +1 -0
- package/dist/src/base/datasources/types.d.ts.map +1 -0
- package/dist/{datasources/redis → src/base/datasources}/types.js.map +1 -1
- package/dist/src/base/drizzle/index.d.ts +3 -0
- package/dist/src/base/drizzle/index.d.ts.map +1 -0
- package/dist/src/base/drizzle/index.js +18 -0
- package/dist/src/base/drizzle/index.js.map +1 -0
- package/dist/src/base/drizzle/pg.d.ts +5 -0
- package/dist/src/base/drizzle/pg.d.ts.map +1 -0
- package/dist/src/base/drizzle/pg.js +19 -0
- package/dist/src/base/drizzle/pg.js.map +1 -0
- package/dist/src/base/hono/index.d.ts +3 -0
- package/dist/src/base/hono/index.d.ts.map +1 -0
- package/dist/{helpers/logger/common → src/base/hono}/index.js +1 -1
- package/dist/src/base/hono/index.js.map +1 -0
- package/dist/src/base/hono/zod-openapi.d.ts +3 -0
- package/dist/src/base/hono/zod-openapi.d.ts.map +1 -0
- package/dist/src/base/hono/zod-openapi.js +18 -0
- package/dist/src/base/hono/zod-openapi.js.map +1 -0
- package/dist/src/base/http/index.d.ts +4 -0
- package/dist/src/base/http/index.d.ts.map +1 -0
- package/dist/src/base/http/index.js +20 -0
- package/dist/src/base/http/index.js.map +1 -0
- package/dist/src/base/http/openapi.helpers.d.ts +30 -0
- package/dist/src/base/http/openapi.helpers.d.ts.map +1 -0
- package/dist/src/base/http/openapi.helpers.js +22 -0
- package/dist/src/base/http/openapi.helpers.js.map +1 -0
- package/dist/src/base/http/server.d.ts +14 -0
- package/dist/src/base/http/server.d.ts.map +1 -0
- package/dist/src/base/http/server.js +27 -0
- package/dist/src/base/http/server.js.map +1 -0
- package/dist/src/base/http/types.d.ts +27 -0
- package/dist/src/base/http/types.d.ts.map +1 -0
- package/dist/{helpers/redis → src/base/http}/types.js.map +1 -1
- package/dist/src/base/index.d.ts +10 -0
- package/dist/src/base/index.d.ts.map +1 -0
- package/dist/src/base/index.js +53 -0
- package/dist/src/base/index.js.map +1 -0
- package/dist/src/base/loopback/@lb/auth/index.d.ts.map +1 -0
- package/dist/src/base/loopback/@lb/auth/index.js.map +1 -0
- package/dist/src/base/loopback/@lb/core/index.d.ts.map +1 -0
- package/dist/src/base/loopback/@lb/core/index.js.map +1 -0
- package/dist/src/base/loopback/@lb/repository/index.d.ts.map +1 -0
- package/dist/src/base/loopback/@lb/repository/index.js.map +1 -0
- package/dist/src/base/loopback/@lb/rest/index.d.ts.map +1 -0
- package/dist/src/base/loopback/@lb/rest/index.js.map +1 -0
- package/dist/src/base/loopback/authentication/index.d.ts.map +1 -0
- package/dist/src/base/loopback/authentication/index.js.map +1 -0
- package/dist/src/base/loopback/authorization/index.d.ts.map +1 -0
- package/dist/src/base/loopback/authorization/index.js.map +1 -0
- package/dist/src/base/loopback/boot/index.d.ts.map +1 -0
- package/dist/src/base/loopback/boot/index.js.map +1 -0
- package/dist/src/base/loopback/core/index.d.ts.map +1 -0
- package/dist/src/base/loopback/core/index.js.map +1 -0
- package/dist/src/base/loopback/filter/index.d.ts.map +1 -0
- package/dist/src/base/loopback/filter/index.js.map +1 -0
- package/dist/src/base/loopback/health-check/index.d.ts.map +1 -0
- package/dist/src/base/loopback/health-check/index.js.map +1 -0
- package/dist/src/base/loopback/http-server/index.d.ts.map +1 -0
- package/dist/src/base/loopback/http-server/index.js.map +1 -0
- package/dist/src/base/loopback/metadata/index.d.ts.map +1 -0
- package/dist/src/base/loopback/metadata/index.js.map +1 -0
- package/dist/src/base/loopback/openapi-v3/index.d.ts.map +1 -0
- package/dist/src/base/loopback/openapi-v3/index.js.map +1 -0
- package/dist/src/base/loopback/repository/index.d.ts.map +1 -0
- package/dist/src/base/loopback/repository/index.js.map +1 -0
- package/dist/src/base/loopback/rest/index.d.ts.map +1 -0
- package/dist/src/base/loopback/rest/index.js.map +1 -0
- package/dist/src/base/loopback/security/index.d.ts.map +1 -0
- package/dist/src/base/loopback/security/index.js.map +1 -0
- package/dist/src/base/loopback/service-proxy/index.d.ts.map +1 -0
- package/dist/src/base/loopback/service-proxy/index.js.map +1 -0
- package/dist/src/base/models/base.model.d.ts +11 -0
- package/dist/src/base/models/base.model.d.ts.map +1 -0
- package/dist/src/base/models/base.model.js +11 -0
- package/dist/src/base/models/base.model.js.map +1 -0
- package/dist/src/base/models/column-defs.d.ts +37 -0
- package/dist/src/base/models/column-defs.d.ts.map +1 -0
- package/dist/src/base/models/column-defs.js +52 -0
- package/dist/src/base/models/column-defs.js.map +1 -0
- package/dist/src/base/models/drizzle.types.d.ts +6 -0
- package/dist/src/base/models/drizzle.types.d.ts.map +1 -0
- package/dist/src/base/models/drizzle.types.js +3 -0
- package/dist/src/base/models/drizzle.types.js.map +1 -0
- package/dist/src/base/models/index.d.ts +5 -0
- package/dist/src/base/models/index.d.ts.map +1 -0
- package/dist/{base → src/base}/models/index.js +2 -1
- package/dist/src/base/models/index.js.map +1 -0
- package/dist/src/base/pg/index.d.ts +3 -0
- package/dist/src/base/pg/index.d.ts.map +1 -0
- package/dist/src/base/pg/index.js +12 -0
- package/dist/src/base/pg/index.js.map +1 -0
- package/dist/src/base/repository/default-crud.repository.d.ts +12 -0
- package/dist/src/base/repository/default-crud.repository.d.ts.map +1 -0
- package/dist/src/base/repository/default-crud.repository.js +61 -0
- package/dist/src/base/repository/default-crud.repository.js.map +1 -0
- package/dist/src/base/repository/index.d.ts +4 -0
- package/dist/src/base/repository/index.d.ts.map +1 -0
- package/dist/src/base/repository/index.js +20 -0
- package/dist/src/base/repository/index.js.map +1 -0
- package/dist/src/base/repository/readable.repository.d.ts +23 -0
- package/dist/src/base/repository/readable.repository.d.ts.map +1 -0
- package/dist/src/base/repository/readable.repository.js +55 -0
- package/dist/src/base/repository/readable.repository.js.map +1 -0
- package/dist/src/base/repository/soft-deletable.repository.d.ts +27 -0
- package/dist/src/base/repository/soft-deletable.repository.d.ts.map +1 -0
- package/dist/src/base/repository/soft-deletable.repository.js +79 -0
- package/dist/src/base/repository/soft-deletable.repository.js.map +1 -0
- package/dist/{base → src/base}/repository/soft-delete.repository.d.ts +8 -0
- package/dist/src/base/repository/soft-delete.repository.d.ts.map +1 -0
- package/dist/{base → src/base}/repository/soft-delete.repository.js +13 -0
- package/dist/src/base/repository/soft-delete.repository.js.map +1 -0
- package/dist/src/base/services/base.service.d.ts +8 -0
- package/dist/src/base/services/base.service.d.ts.map +1 -0
- package/dist/src/base/services/base.service.js +11 -0
- package/dist/src/base/services/base.service.js.map +1 -0
- package/dist/src/base/services/index.d.ts +2 -0
- package/dist/src/base/services/index.d.ts.map +1 -0
- package/dist/src/base/services/index.js +18 -0
- package/dist/src/base/services/index.js.map +1 -0
- package/dist/src/boot/base/base-artifact-booter.d.ts +9 -0
- package/dist/src/boot/base/base-artifact-booter.d.ts.map +1 -0
- package/dist/src/boot/base/base-artifact-booter.js +11 -0
- package/dist/src/boot/base/base-artifact-booter.js.map +1 -0
- package/dist/src/boot/boot.mixin.d.ts +7 -0
- package/dist/src/boot/boot.mixin.d.ts.map +1 -0
- package/dist/src/boot/boot.mixin.js +14 -0
- package/dist/src/boot/boot.mixin.js.map +1 -0
- package/dist/src/boot/booters/controller.booter.d.ts +8 -0
- package/dist/src/boot/booters/controller.booter.d.ts.map +1 -0
- package/dist/src/boot/booters/controller.booter.js +15 -0
- package/dist/src/boot/booters/controller.booter.js.map +1 -0
- package/dist/src/boot/booters/datasource.booter.d.ts +8 -0
- package/dist/src/boot/booters/datasource.booter.d.ts.map +1 -0
- package/dist/src/boot/booters/datasource.booter.js +15 -0
- package/dist/src/boot/booters/datasource.booter.js.map +1 -0
- package/dist/src/boot/booters/index.d.ts +5 -0
- package/dist/src/boot/booters/index.d.ts.map +1 -0
- package/dist/src/boot/booters/index.js +21 -0
- package/dist/src/boot/booters/index.js.map +1 -0
- package/dist/src/boot/booters/repository.booter.d.ts +8 -0
- package/dist/src/boot/booters/repository.booter.d.ts.map +1 -0
- package/dist/src/boot/booters/repository.booter.js +15 -0
- package/dist/src/boot/booters/repository.booter.js.map +1 -0
- package/dist/src/boot/booters/service.booter.d.ts +8 -0
- package/dist/src/boot/booters/service.booter.d.ts.map +1 -0
- package/dist/src/boot/booters/service.booter.js +15 -0
- package/dist/src/boot/booters/service.booter.js.map +1 -0
- package/dist/src/boot/boots-trapper.d.ts +3 -0
- package/dist/src/boot/boots-trapper.d.ts.map +1 -0
- package/dist/src/boot/boots-trapper.js +9 -0
- package/dist/src/boot/boots-trapper.js.map +1 -0
- package/dist/src/boot/index.d.ts +5 -0
- package/dist/src/boot/index.d.ts.map +1 -0
- package/dist/src/boot/index.js +21 -0
- package/dist/src/boot/index.js.map +1 -0
- package/dist/src/common/bindings.d.ts +17 -0
- package/dist/src/common/bindings.d.ts.map +1 -0
- package/dist/src/common/bindings.js +22 -0
- package/dist/src/common/bindings.js.map +1 -0
- package/dist/src/common/constants.d.ts.map +1 -0
- package/dist/src/common/constants.js.map +1 -0
- package/dist/{common → src/common}/index.d.ts +1 -0
- package/dist/src/common/index.d.ts.map +1 -0
- package/dist/{common → src/common}/index.js +1 -0
- package/dist/src/common/index.js.map +1 -0
- package/dist/src/common/result-codes.d.ts.map +1 -0
- package/dist/src/common/result-codes.js.map +1 -0
- package/dist/{common → src/common}/types.d.ts +10 -13
- package/dist/src/common/types.d.ts.map +1 -0
- package/dist/{common → src/common}/types.js.map +1 -1
- package/dist/src/components/auth/authenticate/common/constants.d.ts +12 -0
- package/dist/src/components/auth/authenticate/common/constants.d.ts.map +1 -0
- package/dist/src/components/auth/authenticate/common/constants.js +17 -0
- package/dist/src/components/auth/authenticate/common/constants.js.map +1 -0
- package/dist/src/components/auth/authenticate/component.d.ts +3 -0
- package/dist/src/components/auth/authenticate/component.d.ts.map +1 -0
- package/dist/src/components/auth/authenticate/component.js +7 -0
- package/dist/src/components/auth/authenticate/component.js.map +1 -0
- package/dist/src/components/auth/authenticate/middlewares/authenticate.middleware.d.ts +3 -0
- package/dist/src/components/auth/authenticate/middlewares/authenticate.middleware.d.ts.map +1 -0
- package/dist/src/components/auth/authenticate/middlewares/authenticate.middleware.js +8 -0
- package/dist/src/components/auth/authenticate/middlewares/authenticate.middleware.js.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/base.strategy.d.ts +10 -0
- package/dist/src/components/auth/authenticate/strategies/base.strategy.d.ts.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/base.strategy.js +3 -0
- package/dist/src/components/auth/authenticate/strategies/base.strategy.js.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/basic.strategy.d.ts +7 -0
- package/dist/src/components/auth/authenticate/strategies/basic.strategy.d.ts.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/basic.strategy.js +14 -0
- package/dist/src/components/auth/authenticate/strategies/basic.strategy.js.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/jwt.strategy.d.ts +7 -0
- package/dist/src/components/auth/authenticate/strategies/jwt.strategy.d.ts.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/jwt.strategy.js +14 -0
- package/dist/src/components/auth/authenticate/strategies/jwt.strategy.js.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/strategy-registry.d.ts +8 -0
- package/dist/src/components/auth/authenticate/strategies/strategy-registry.d.ts.map +1 -0
- package/dist/src/components/auth/authenticate/strategies/strategy-registry.js +17 -0
- package/dist/src/components/auth/authenticate/strategies/strategy-registry.js.map +1 -0
- package/dist/src/components/auth/authorize/adapters/drizzle-casbin.d.ts +7 -0
- package/dist/src/components/auth/authorize/adapters/drizzle-casbin.d.ts.map +1 -0
- package/dist/src/components/auth/authorize/adapters/drizzle-casbin.js +11 -0
- package/dist/src/components/auth/authorize/adapters/drizzle-casbin.js.map +1 -0
- package/dist/src/components/auth/authorize/component.d.ts +8 -0
- package/dist/src/components/auth/authorize/component.d.ts.map +1 -0
- package/dist/src/components/auth/authorize/component.js +13 -0
- package/dist/src/components/auth/authorize/component.js.map +1 -0
- package/dist/src/components/auth/authorize/enforcers/casbin.enforcer.d.ts +8 -0
- package/dist/src/components/auth/authorize/enforcers/casbin.enforcer.d.ts.map +1 -0
- package/dist/src/components/auth/authorize/enforcers/casbin.enforcer.js +22 -0
- package/dist/src/components/auth/authorize/enforcers/casbin.enforcer.js.map +1 -0
- package/dist/src/components/auth/authorize/index.d.ts +5 -0
- package/dist/src/components/auth/authorize/index.d.ts.map +1 -0
- package/dist/{base → src/components/auth/authorize}/index.js +4 -5
- package/dist/src/components/auth/authorize/index.js.map +1 -0
- package/dist/src/components/auth/authorize/middlewares/authorize.middleware.d.ts +3 -0
- package/dist/src/components/auth/authorize/middlewares/authorize.middleware.d.ts.map +1 -0
- package/dist/src/components/auth/authorize/middlewares/authorize.middleware.js +8 -0
- package/dist/src/components/auth/authorize/middlewares/authorize.middleware.js.map +1 -0
- package/dist/src/components/auth/index.d.ts +9 -0
- package/dist/src/components/auth/index.d.ts.map +1 -0
- package/dist/src/components/auth/index.js +25 -0
- package/dist/src/components/auth/index.js.map +1 -0
- package/dist/src/components/grpc/base/abstract.d.ts +10 -0
- package/dist/src/components/grpc/base/abstract.d.ts.map +1 -0
- package/dist/src/components/grpc/base/abstract.js +11 -0
- package/dist/src/components/grpc/base/abstract.js.map +1 -0
- package/dist/src/components/grpc/component.d.ts +3 -0
- package/dist/src/components/grpc/component.d.ts.map +1 -0
- package/dist/src/components/grpc/component.js +7 -0
- package/dist/src/components/grpc/component.js.map +1 -0
- package/dist/src/components/grpc/decorators.d.ts +4 -0
- package/dist/src/components/grpc/decorators.d.ts.map +1 -0
- package/dist/src/components/grpc/decorators.js +9 -0
- package/dist/src/components/grpc/decorators.js.map +1 -0
- package/dist/src/components/grpc/index.d.ts +4 -0
- package/dist/src/components/grpc/index.d.ts.map +1 -0
- package/dist/src/components/grpc/index.js +20 -0
- package/dist/src/components/grpc/index.js.map +1 -0
- package/dist/src/components/health-check/index.d.ts +9 -0
- package/dist/src/components/health-check/index.d.ts.map +1 -0
- package/dist/src/components/health-check/index.js +8 -0
- package/dist/src/components/health-check/index.js.map +1 -0
- package/dist/src/components/socket-io/component.d.ts +7 -0
- package/dist/src/components/socket-io/component.d.ts.map +1 -0
- package/dist/src/components/socket-io/component.js +12 -0
- package/dist/src/components/socket-io/component.js.map +1 -0
- package/dist/src/components/socket-io/helpers/server.helper.d.ts +33 -0
- package/dist/src/components/socket-io/helpers/server.helper.d.ts.map +1 -0
- package/dist/src/components/socket-io/helpers/server.helper.js +22 -0
- package/dist/src/components/socket-io/helpers/server.helper.js.map +1 -0
- package/dist/src/components/socket-io/index.d.ts +3 -0
- package/dist/src/components/socket-io/index.d.ts.map +1 -0
- package/dist/src/components/socket-io/index.js +19 -0
- package/dist/src/components/socket-io/index.js.map +1 -0
- package/dist/src/components/swagger/index.d.ts +26 -0
- package/dist/src/components/swagger/index.d.ts.map +1 -0
- package/dist/src/components/swagger/index.js +8 -0
- package/dist/src/components/swagger/index.js.map +1 -0
- package/dist/src/datasources/index.d.ts.map +1 -0
- package/dist/src/datasources/index.js.map +1 -0
- package/dist/src/datasources/postgres/datasource.d.ts +12 -0
- package/dist/src/datasources/postgres/datasource.d.ts.map +1 -0
- package/dist/{datasources → src/datasources}/postgres/datasource.js +27 -18
- package/dist/src/datasources/postgres/datasource.js.map +1 -0
- package/dist/src/datasources/postgres/index.d.ts.map +1 -0
- package/dist/src/datasources/postgres/index.js.map +1 -0
- package/dist/{datasources → src/datasources}/postgres/types.d.ts +1 -1
- package/dist/src/datasources/postgres/types.d.ts.map +1 -0
- package/dist/src/datasources/postgres/types.js.map +1 -0
- package/dist/{datasources → src/datasources}/redis/connector.d.ts +2 -2
- package/dist/src/datasources/redis/connector.d.ts.map +1 -0
- package/dist/{datasources → src/datasources}/redis/connector.js +22 -16
- package/dist/src/datasources/redis/connector.js.map +1 -0
- package/dist/{datasources → src/datasources}/redis/datasource.d.ts +4 -2
- package/dist/src/datasources/redis/datasource.d.ts.map +1 -0
- package/dist/{datasources → src/datasources}/redis/datasource.js +6 -2
- package/dist/src/datasources/redis/datasource.js.map +1 -0
- package/dist/{datasources → src/datasources}/redis/index.d.ts +1 -1
- package/dist/src/datasources/redis/index.d.ts.map +1 -0
- package/dist/{datasources → src/datasources}/redis/index.js +1 -1
- package/dist/src/datasources/redis/index.js.map +1 -0
- package/dist/{datasources → src/datasources}/redis/types.d.ts +2 -2
- package/dist/src/datasources/redis/types.d.ts.map +1 -0
- package/dist/src/datasources/redis/types.js.map +1 -0
- package/dist/src/helpers/index.d.ts +3 -0
- package/dist/src/helpers/index.d.ts.map +1 -0
- package/dist/{helpers → src/helpers}/index.js +0 -1
- package/dist/src/helpers/index.js.map +1 -0
- package/dist/src/helpers/logger/config.d.ts +49 -0
- package/dist/src/helpers/logger/config.d.ts.map +1 -0
- package/dist/src/helpers/logger/config.js +171 -0
- package/dist/src/helpers/logger/config.js.map +1 -0
- package/dist/src/helpers/logger/factory.d.ts +20 -0
- package/dist/src/helpers/logger/factory.d.ts.map +1 -0
- package/dist/src/helpers/logger/factory.js +58 -0
- package/dist/src/helpers/logger/factory.js.map +1 -0
- package/dist/src/helpers/logger/http.d.ts +38 -0
- package/dist/src/helpers/logger/http.d.ts.map +1 -0
- package/dist/src/helpers/logger/http.js +217 -0
- package/dist/src/helpers/logger/http.js.map +1 -0
- package/dist/src/helpers/logger/index.d.ts +7 -0
- package/dist/src/helpers/logger/index.d.ts.map +1 -0
- package/dist/src/helpers/logger/index.js +23 -0
- package/dist/src/helpers/logger/index.js.map +1 -0
- package/dist/src/helpers/logger/logger.d.ts +28 -0
- package/dist/src/helpers/logger/logger.d.ts.map +1 -0
- package/dist/src/helpers/logger/logger.js +84 -0
- package/dist/src/helpers/logger/logger.js.map +1 -0
- package/dist/{helpers/logger/transports/dgram.transport.d.ts → src/helpers/logger/transport.d.ts} +3 -3
- package/dist/src/helpers/logger/transport.d.ts.map +1 -0
- package/dist/{helpers/logger/transports/dgram.transport.js → src/helpers/logger/transport.js} +20 -21
- package/dist/src/helpers/logger/transport.js.map +1 -0
- package/dist/{helpers/logger/http → src/helpers/logger}/types.d.ts +32 -21
- package/dist/src/helpers/logger/types.d.ts.map +1 -0
- package/dist/{helpers/logger/common → src/helpers/logger}/types.js +4 -10
- package/dist/src/helpers/logger/types.js.map +1 -0
- package/dist/{helpers → src/helpers}/redis/default.helper.d.ts +2 -2
- package/dist/src/helpers/redis/default.helper.d.ts.map +1 -0
- package/dist/{helpers → src/helpers}/redis/default.helper.js +5 -6
- package/dist/src/helpers/redis/default.helper.js.map +1 -0
- package/dist/{helpers → src/helpers}/redis/index.d.ts +1 -1
- package/dist/src/helpers/redis/index.d.ts.map +1 -0
- package/dist/{helpers → src/helpers}/redis/index.js +1 -1
- package/dist/src/helpers/redis/index.js.map +1 -0
- package/dist/{helpers → src/helpers}/redis/redis-cluster.helper.d.ts +1 -1
- package/dist/src/helpers/redis/redis-cluster.helper.d.ts.map +1 -0
- package/dist/{helpers → src/helpers}/redis/redis-cluster.helper.js +1 -1
- package/dist/src/helpers/redis/redis-cluster.helper.js.map +1 -0
- package/dist/{helpers → src/helpers}/redis/redis.helper.d.ts +1 -1
- package/dist/src/helpers/redis/redis.helper.d.ts.map +1 -0
- package/dist/{helpers → src/helpers}/redis/redis.helper.js +1 -1
- package/dist/src/helpers/redis/redis.helper.js.map +1 -0
- package/dist/{helpers → src/helpers}/redis/types.d.ts +1 -1
- package/dist/src/helpers/redis/types.d.ts.map +1 -0
- package/dist/{base/datasources → src/helpers/redis}/types.js.map +1 -1
- package/dist/src/index.d.ts +15 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/{index.js → src/index.js} +15 -5
- package/dist/src/index.js.map +1 -0
- package/dist/{utilities → src/utilities}/axios.utility.d.ts +1 -0
- package/dist/src/utilities/axios.utility.d.ts.map +1 -0
- package/dist/src/utilities/axios.utility.js.map +1 -0
- package/dist/src/utilities/crypto.utility.d.ts.map +1 -0
- package/dist/src/utilities/crypto.utility.js.map +1 -0
- package/dist/src/utilities/date.utility.d.ts.map +1 -0
- package/dist/src/utilities/date.utility.js.map +1 -0
- package/dist/src/utilities/error.utility.d.ts.map +1 -0
- package/dist/src/utilities/error.utility.js.map +1 -0
- package/dist/{utilities → src/utilities}/index.d.ts +6 -3
- package/dist/src/utilities/index.d.ts.map +1 -0
- package/dist/src/utilities/index.js +61 -0
- package/dist/src/utilities/index.js.map +1 -0
- package/dist/src/utilities/lb-filter.utility.d.ts.map +1 -0
- package/dist/src/utilities/lb-filter.utility.js.map +1 -0
- package/dist/src/utilities/lodash.utility.d.ts +37 -0
- package/dist/src/utilities/lodash.utility.d.ts.map +1 -0
- package/dist/src/utilities/lodash.utility.js +79 -0
- package/dist/src/utilities/lodash.utility.js.map +1 -0
- package/dist/src/utilities/migration.utility.d.ts.map +1 -0
- package/dist/{utilities → src/utilities}/migration.utility.js +2 -2
- package/dist/src/utilities/migration.utility.js.map +1 -0
- package/dist/{utilities → src/utilities}/model.utility.d.ts +1 -1
- package/dist/src/utilities/model.utility.d.ts.map +1 -0
- package/dist/{utilities → src/utilities}/model.utility.js +1 -1
- package/dist/src/utilities/model.utility.js.map +1 -0
- package/dist/src/utilities/module.utility.d.ts.map +1 -0
- package/dist/{utilities → src/utilities}/module.utility.js +1 -1
- package/dist/src/utilities/module.utility.js.map +1 -0
- package/dist/src/utilities/parse.utility.d.ts.map +1 -0
- package/dist/{utilities → src/utilities}/parse.utility.js +3 -7
- package/dist/src/utilities/parse.utility.js.map +1 -0
- package/dist/src/utilities/performance.utility.d.ts.map +1 -0
- package/dist/src/utilities/performance.utility.js.map +1 -0
- package/dist/{utilities → src/utilities}/promise.utility.d.ts +1 -1
- package/dist/src/utilities/promise.utility.d.ts.map +1 -0
- package/dist/src/utilities/promise.utility.js.map +1 -0
- package/dist/{utilities → src/utilities}/query.utility.d.ts +4 -5
- package/dist/src/utilities/query.utility.d.ts.map +1 -0
- package/dist/{utilities → src/utilities}/query.utility.js +12 -16
- package/dist/src/utilities/query.utility.js.map +1 -0
- package/dist/{utilities → src/utilities}/request.utility.d.ts +2 -2
- package/dist/src/utilities/request.utility.d.ts.map +1 -0
- package/dist/src/utilities/request.utility.js.map +1 -0
- package/dist/src/utilities/url.utility.d.ts.map +1 -0
- package/dist/src/utilities/url.utility.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +47 -7
- package/dist/base/base.helper.d.ts.map +0 -1
- package/dist/base/base.helper.js.map +0 -1
- package/dist/base/datasources/base.datasource.d.ts +0 -14
- package/dist/base/datasources/base.datasource.d.ts.map +0 -1
- package/dist/base/datasources/base.datasource.js +0 -24
- package/dist/base/datasources/base.datasource.js.map +0 -1
- package/dist/base/datasources/index.d.ts.map +0 -1
- package/dist/base/datasources/index.js.map +0 -1
- package/dist/base/datasources/types.d.ts.map +0 -1
- package/dist/base/index.d.ts +0 -6
- package/dist/base/index.d.ts.map +0 -1
- package/dist/base/index.js.map +0 -1
- package/dist/base/loopback/@lb/auth/index.d.ts.map +0 -1
- package/dist/base/loopback/@lb/auth/index.js.map +0 -1
- package/dist/base/loopback/@lb/core/index.d.ts.map +0 -1
- package/dist/base/loopback/@lb/core/index.js.map +0 -1
- package/dist/base/loopback/@lb/repository/index.d.ts.map +0 -1
- package/dist/base/loopback/@lb/repository/index.js.map +0 -1
- package/dist/base/loopback/@lb/rest/index.d.ts.map +0 -1
- package/dist/base/loopback/@lb/rest/index.js.map +0 -1
- package/dist/base/loopback/authentication/index.d.ts.map +0 -1
- package/dist/base/loopback/authentication/index.js.map +0 -1
- package/dist/base/loopback/authorization/index.d.ts.map +0 -1
- package/dist/base/loopback/authorization/index.js.map +0 -1
- package/dist/base/loopback/boot/index.d.ts.map +0 -1
- package/dist/base/loopback/boot/index.js.map +0 -1
- package/dist/base/loopback/core/index.d.ts.map +0 -1
- package/dist/base/loopback/core/index.js.map +0 -1
- package/dist/base/loopback/filter/index.d.ts.map +0 -1
- package/dist/base/loopback/filter/index.js.map +0 -1
- package/dist/base/loopback/health-check/index.d.ts.map +0 -1
- package/dist/base/loopback/health-check/index.js.map +0 -1
- package/dist/base/loopback/http-server/index.d.ts.map +0 -1
- package/dist/base/loopback/http-server/index.js.map +0 -1
- package/dist/base/loopback/metadata/index.d.ts.map +0 -1
- package/dist/base/loopback/metadata/index.js.map +0 -1
- package/dist/base/loopback/openapi-v3/index.d.ts.map +0 -1
- package/dist/base/loopback/openapi-v3/index.js.map +0 -1
- package/dist/base/loopback/repository/index.d.ts.map +0 -1
- package/dist/base/loopback/repository/index.js.map +0 -1
- package/dist/base/loopback/rest/index.d.ts.map +0 -1
- package/dist/base/loopback/rest/index.js.map +0 -1
- package/dist/base/loopback/security/index.d.ts.map +0 -1
- package/dist/base/loopback/security/index.js.map +0 -1
- package/dist/base/loopback/service-proxy/index.d.ts.map +0 -1
- package/dist/base/loopback/service-proxy/index.js.map +0 -1
- package/dist/base/migration/index.d.ts +0 -3
- package/dist/base/migration/index.d.ts.map +0 -1
- package/dist/base/migration/index.js +0 -19
- package/dist/base/migration/index.js.map +0 -1
- package/dist/base/migration/migration.interface.d.ts +0 -5
- package/dist/base/migration/migration.interface.d.ts.map +0 -1
- package/dist/base/migration/migration.interface.js +0 -3
- package/dist/base/migration/migration.interface.js.map +0 -1
- package/dist/base/migration/migration.service.d.ts +0 -9
- package/dist/base/migration/migration.service.d.ts.map +0 -1
- package/dist/base/migration/migration.service.js +0 -146
- package/dist/base/migration/migration.service.js.map +0 -1
- package/dist/base/models/base.model.d.ts +0 -32
- package/dist/base/models/base.model.d.ts.map +0 -1
- package/dist/base/models/base.model.js +0 -55
- package/dist/base/models/base.model.js.map +0 -1
- package/dist/base/models/index.d.ts +0 -3
- package/dist/base/models/index.d.ts.map +0 -1
- package/dist/base/models/index.js.map +0 -1
- package/dist/base/models/migration.model.d.ts +0 -11
- package/dist/base/models/migration.model.d.ts.map +0 -1
- package/dist/base/models/migration.model.js +0 -38
- package/dist/base/models/migration.model.js.map +0 -1
- package/dist/base/repository/index.d.ts +0 -3
- package/dist/base/repository/index.d.ts.map +0 -1
- package/dist/base/repository/index.js +0 -19
- package/dist/base/repository/index.js.map +0 -1
- package/dist/base/repository/migration.repository.d.ts +0 -6
- package/dist/base/repository/migration.repository.d.ts.map +0 -1
- package/dist/base/repository/migration.repository.js +0 -29
- package/dist/base/repository/migration.repository.js.map +0 -1
- package/dist/base/repository/soft-delete.repository.d.ts.map +0 -1
- package/dist/base/repository/soft-delete.repository.js.map +0 -1
- package/dist/common/constants.d.ts.map +0 -1
- package/dist/common/constants.js.map +0 -1
- package/dist/common/index.d.ts.map +0 -1
- package/dist/common/index.js.map +0 -1
- package/dist/common/result-codes.d.ts.map +0 -1
- package/dist/common/result-codes.js.map +0 -1
- package/dist/common/types.d.ts.map +0 -1
- package/dist/datasources/index.d.ts.map +0 -1
- package/dist/datasources/index.js.map +0 -1
- package/dist/datasources/postgres/datasource.d.ts +0 -8
- package/dist/datasources/postgres/datasource.d.ts.map +0 -1
- package/dist/datasources/postgres/datasource.js.map +0 -1
- package/dist/datasources/postgres/index.d.ts.map +0 -1
- package/dist/datasources/postgres/index.js.map +0 -1
- package/dist/datasources/postgres/types.d.ts.map +0 -1
- package/dist/datasources/postgres/types.js.map +0 -1
- package/dist/datasources/redis/connector.d.ts.map +0 -1
- package/dist/datasources/redis/connector.js.map +0 -1
- package/dist/datasources/redis/datasource.d.ts.map +0 -1
- package/dist/datasources/redis/datasource.js.map +0 -1
- package/dist/datasources/redis/index.d.ts.map +0 -1
- package/dist/datasources/redis/index.js.map +0 -1
- package/dist/datasources/redis/types.d.ts.map +0 -1
- package/dist/helpers/index.d.ts +0 -4
- package/dist/helpers/index.d.ts.map +0 -1
- package/dist/helpers/index.js.map +0 -1
- package/dist/helpers/logger/application-logger.d.ts +0 -19
- package/dist/helpers/logger/application-logger.d.ts.map +0 -1
- package/dist/helpers/logger/application-logger.js +0 -69
- package/dist/helpers/logger/application-logger.js.map +0 -1
- package/dist/helpers/logger/common/index.d.ts +0 -2
- package/dist/helpers/logger/common/index.d.ts.map +0 -1
- package/dist/helpers/logger/common/index.js.map +0 -1
- package/dist/helpers/logger/common/types.d.ts +0 -24
- package/dist/helpers/logger/common/types.d.ts.map +0 -1
- package/dist/helpers/logger/common/types.js.map +0 -1
- package/dist/helpers/logger/config-merger.d.ts +0 -27
- package/dist/helpers/logger/config-merger.d.ts.map +0 -1
- package/dist/helpers/logger/config-merger.js +0 -55
- package/dist/helpers/logger/config-merger.js.map +0 -1
- package/dist/helpers/logger/config.d.ts +0 -32
- package/dist/helpers/logger/config.d.ts.map +0 -1
- package/dist/helpers/logger/config.js +0 -59
- package/dist/helpers/logger/config.js.map +0 -1
- package/dist/helpers/logger/default-logger.d.ts +0 -34
- package/dist/helpers/logger/default-logger.d.ts.map +0 -1
- package/dist/helpers/logger/default-logger.js +0 -120
- package/dist/helpers/logger/default-logger.js.map +0 -1
- package/dist/helpers/logger/enhanced-factory.d.ts +0 -14
- package/dist/helpers/logger/enhanced-factory.d.ts.map +0 -1
- package/dist/helpers/logger/enhanced-factory.js +0 -43
- package/dist/helpers/logger/enhanced-factory.js.map +0 -1
- package/dist/helpers/logger/factory.d.ts +0 -13
- package/dist/helpers/logger/factory.d.ts.map +0 -1
- package/dist/helpers/logger/factory.js +0 -38
- package/dist/helpers/logger/factory.js.map +0 -1
- package/dist/helpers/logger/http/access-logger.d.ts +0 -44
- package/dist/helpers/logger/http/access-logger.d.ts.map +0 -1
- package/dist/helpers/logger/http/access-logger.js +0 -298
- package/dist/helpers/logger/http/access-logger.js.map +0 -1
- package/dist/helpers/logger/http/client-ip.d.ts +0 -8
- package/dist/helpers/logger/http/client-ip.d.ts.map +0 -1
- package/dist/helpers/logger/http/client-ip.js +0 -55
- package/dist/helpers/logger/http/client-ip.js.map +0 -1
- package/dist/helpers/logger/http/index.d.ts +0 -6
- package/dist/helpers/logger/http/index.d.ts.map +0 -1
- package/dist/helpers/logger/http/index.js +0 -22
- package/dist/helpers/logger/http/index.js.map +0 -1
- package/dist/helpers/logger/http/request-context.d.ts +0 -19
- package/dist/helpers/logger/http/request-context.d.ts.map +0 -1
- package/dist/helpers/logger/http/request-context.js +0 -55
- package/dist/helpers/logger/http/request-context.js.map +0 -1
- package/dist/helpers/logger/http/request-id-manager.d.ts +0 -22
- package/dist/helpers/logger/http/request-id-manager.d.ts.map +0 -1
- package/dist/helpers/logger/http/request-id-manager.js +0 -52
- package/dist/helpers/logger/http/request-id-manager.js.map +0 -1
- package/dist/helpers/logger/http/types.d.ts.map +0 -1
- package/dist/helpers/logger/http/types.js.map +0 -1
- package/dist/helpers/logger/index.d.ts +0 -9
- package/dist/helpers/logger/index.d.ts.map +0 -1
- package/dist/helpers/logger/index.js +0 -25
- package/dist/helpers/logger/index.js.map +0 -1
- package/dist/helpers/logger/transports/dgram.transport.d.ts.map +0 -1
- package/dist/helpers/logger/transports/dgram.transport.js.map +0 -1
- package/dist/helpers/logger/transports/index.d.ts +0 -2
- package/dist/helpers/logger/transports/index.d.ts.map +0 -1
- package/dist/helpers/logger/transports/index.js +0 -18
- package/dist/helpers/logger/transports/index.js.map +0 -1
- package/dist/helpers/migrate/index.d.ts +0 -4
- package/dist/helpers/migrate/index.d.ts.map +0 -1
- package/dist/helpers/migrate/index.js +0 -20
- package/dist/helpers/migrate/index.js.map +0 -1
- package/dist/helpers/migrate/migrate-helper.d.ts +0 -10
- package/dist/helpers/migrate/migrate-helper.d.ts.map +0 -1
- package/dist/helpers/migrate/migrate-helper.js +0 -40
- package/dist/helpers/migrate/migrate-helper.js.map +0 -1
- package/dist/helpers/migrate/migration-engine.d.ts +0 -8
- package/dist/helpers/migrate/migration-engine.d.ts.map +0 -1
- package/dist/helpers/migrate/migration-engine.js +0 -40
- package/dist/helpers/migrate/migration-engine.js.map +0 -1
- package/dist/helpers/migrate/type.d.ts +0 -10
- package/dist/helpers/migrate/type.d.ts.map +0 -1
- package/dist/helpers/migrate/type.js +0 -3
- package/dist/helpers/migrate/type.js.map +0 -1
- package/dist/helpers/redis/default.helper.d.ts.map +0 -1
- package/dist/helpers/redis/default.helper.js.map +0 -1
- package/dist/helpers/redis/index.d.ts.map +0 -1
- package/dist/helpers/redis/index.js.map +0 -1
- package/dist/helpers/redis/redis-cluster.helper.d.ts.map +0 -1
- package/dist/helpers/redis/redis-cluster.helper.js.map +0 -1
- package/dist/helpers/redis/redis.helper.d.ts.map +0 -1
- package/dist/helpers/redis/redis.helper.js.map +0 -1
- package/dist/helpers/redis/types.d.ts.map +0 -1
- package/dist/index.d.ts +0 -11
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/utilities/axios.utility.d.ts.map +0 -1
- package/dist/utilities/axios.utility.js.map +0 -1
- package/dist/utilities/crypto.utility.d.ts.map +0 -1
- package/dist/utilities/crypto.utility.js.map +0 -1
- package/dist/utilities/date.utility.d.ts.map +0 -1
- package/dist/utilities/date.utility.js.map +0 -1
- package/dist/utilities/error.utility.d.ts.map +0 -1
- package/dist/utilities/error.utility.js.map +0 -1
- package/dist/utilities/index.d.ts.map +0 -1
- package/dist/utilities/index.js +0 -31
- package/dist/utilities/index.js.map +0 -1
- package/dist/utilities/lb-filter.utility.d.ts.map +0 -1
- package/dist/utilities/lb-filter.utility.js.map +0 -1
- package/dist/utilities/lodash.utility.d.ts +0 -4
- package/dist/utilities/lodash.utility.d.ts.map +0 -1
- package/dist/utilities/lodash.utility.js +0 -13
- package/dist/utilities/lodash.utility.js.map +0 -1
- package/dist/utilities/migration.utility.d.ts.map +0 -1
- package/dist/utilities/migration.utility.js.map +0 -1
- package/dist/utilities/model.utility.d.ts.map +0 -1
- package/dist/utilities/model.utility.js.map +0 -1
- package/dist/utilities/module.utility.d.ts.map +0 -1
- package/dist/utilities/module.utility.js.map +0 -1
- package/dist/utilities/parse.utility.d.ts.map +0 -1
- package/dist/utilities/parse.utility.js.map +0 -1
- package/dist/utilities/performance.utility.d.ts.map +0 -1
- package/dist/utilities/performance.utility.js.map +0 -1
- package/dist/utilities/promise.utility.d.ts.map +0 -1
- package/dist/utilities/promise.utility.js.map +0 -1
- package/dist/utilities/query.utility.d.ts.map +0 -1
- package/dist/utilities/query.utility.js.map +0 -1
- package/dist/utilities/request.utility.d.ts.map +0 -1
- package/dist/utilities/request.utility.js.map +0 -1
- package/dist/utilities/url.utility.d.ts.map +0 -1
- package/dist/utilities/url.utility.js.map +0 -1
- package/dist/validators/base.schema.d.ts +0 -56
- package/dist/validators/base.schema.d.ts.map +0 -1
- package/dist/validators/base.schema.js +0 -84
- package/dist/validators/base.schema.js.map +0 -1
- package/dist/validators/common.schema.d.ts +0 -50
- package/dist/validators/common.schema.d.ts.map +0 -1
- package/dist/validators/common.schema.js +0 -51
- package/dist/validators/common.schema.js.map +0 -1
- package/dist/validators/index.d.ts +0 -15
- package/dist/validators/index.d.ts.map +0 -1
- package/dist/validators/index.js +0 -36
- package/dist/validators/index.js.map +0 -1
- package/dist/validators/with-zod.d.ts +0 -66
- package/dist/validators/with-zod.d.ts.map +0 -1
- package/dist/validators/with-zod.js +0 -117
- package/dist/validators/with-zod.js.map +0 -1
- /package/dist/{base → src/base}/datasources/index.d.ts +0 -0
- /package/dist/{base → src/base}/datasources/index.js +0 -0
- /package/dist/{base → src/base}/datasources/types.d.ts +0 -0
- /package/dist/{base → src/base}/datasources/types.js +0 -0
- /package/dist/{common → src/base/http}/types.js +0 -0
- /package/dist/{base → src/base}/loopback/@lb/auth/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/@lb/auth/index.js +0 -0
- /package/dist/{base → src/base}/loopback/@lb/core/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/@lb/core/index.js +0 -0
- /package/dist/{base → src/base}/loopback/@lb/repository/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/@lb/repository/index.js +0 -0
- /package/dist/{base → src/base}/loopback/@lb/rest/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/@lb/rest/index.js +0 -0
- /package/dist/{base → src/base}/loopback/authentication/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/authentication/index.js +0 -0
- /package/dist/{base → src/base}/loopback/authorization/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/authorization/index.js +0 -0
- /package/dist/{base → src/base}/loopback/boot/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/boot/index.js +0 -0
- /package/dist/{base → src/base}/loopback/core/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/core/index.js +0 -0
- /package/dist/{base → src/base}/loopback/filter/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/filter/index.js +0 -0
- /package/dist/{base → src/base}/loopback/health-check/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/health-check/index.js +0 -0
- /package/dist/{base → src/base}/loopback/http-server/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/http-server/index.js +0 -0
- /package/dist/{base → src/base}/loopback/metadata/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/metadata/index.js +0 -0
- /package/dist/{base → src/base}/loopback/openapi-v3/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/openapi-v3/index.js +0 -0
- /package/dist/{base → src/base}/loopback/repository/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/repository/index.js +0 -0
- /package/dist/{base → src/base}/loopback/rest/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/rest/index.js +0 -0
- /package/dist/{base → src/base}/loopback/security/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/security/index.js +0 -0
- /package/dist/{base → src/base}/loopback/service-proxy/index.d.ts +0 -0
- /package/dist/{base → src/base}/loopback/service-proxy/index.js +0 -0
- /package/dist/{common → src/common}/constants.d.ts +0 -0
- /package/dist/{common → src/common}/constants.js +0 -0
- /package/dist/{common → src/common}/result-codes.d.ts +0 -0
- /package/dist/{common → src/common}/result-codes.js +0 -0
- /package/dist/{datasources/postgres → src/common}/types.js +0 -0
- /package/dist/{datasources → src/datasources}/index.d.ts +0 -0
- /package/dist/{datasources → src/datasources}/index.js +0 -0
- /package/dist/{datasources → src/datasources}/postgres/index.d.ts +0 -0
- /package/dist/{datasources → src/datasources}/postgres/index.js +0 -0
- /package/dist/{datasources/redis → src/datasources/postgres}/types.js +0 -0
- /package/dist/{helpers/logger/http → src/datasources/redis}/types.js +0 -0
- /package/dist/{helpers → src/helpers}/redis/types.js +0 -0
- /package/dist/{utilities → src/utilities}/axios.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/crypto.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/crypto.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/date.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/date.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/error.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/error.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/lb-filter.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/lb-filter.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/migration.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/module.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/parse.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/performance.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/performance.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/promise.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/request.utility.js +0 -0
- /package/dist/{utilities → src/utilities}/url.utility.d.ts +0 -0
- /package/dist/{utilities → src/utilities}/url.utility.js +0 -0
package/README.md
CHANGED
|
@@ -1,211 +1,340 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @gennext/lb-infra
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Hệ thống thư viện hạ tầng (infrastructure) backend dựa trên TypeScript, tối ưu cho hiệu năng và tính chuẩn hóa.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## 1. Giới thiệu
|
|
6
|
+
`@gennext/lb-infra` là nền tảng xây dựng backend hiện đại tại Gennex, kết hợp các công nghệ:
|
|
7
|
+
- **Hono**: Web framework siêu nhẹ, hỗ trợ TypeScript và OpenAPI native.
|
|
8
|
+
- **Drizzle ORM**: ORM thế hệ mới, type-safe tuyệt đối cho PostgreSQL.
|
|
9
|
+
- **Zod**: Thư viện validation và định nghĩa schema mạnh mẽ.
|
|
10
|
+
- **Winston**: Hệ thống logging đa kênh (Console, File, UDP).
|
|
11
|
+
|
|
12
|
+
**Khi nào nên dùng:** Phù hợp cho các dự án yêu cầu tốc độ phản hồi cao, cấu trúc mã nguồn tường minh (Controller-Service-Repository) và tự động hóa tài liệu API (Swagger/OpenAPI).
|
|
6
13
|
|
|
7
14
|
---
|
|
8
15
|
|
|
9
|
-
##
|
|
10
|
-
Hệ thống logger được thiết kế sẵn để ghi log ra console và tự động xoay vòng file log (Daily Rotate File).
|
|
16
|
+
## 2. Cài đặt
|
|
11
17
|
|
|
12
|
-
|
|
13
|
-
|
|
18
|
+
Cài đặt package chính:
|
|
19
|
+
```bash
|
|
20
|
+
bun add @gennext/lb-infra
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Các peer dependency cần thiết:
|
|
24
|
+
```bash
|
|
25
|
+
bun add hono @hono/zod-openapi zod drizzle-orm pg winston
|
|
26
|
+
# Nếu dùng Auth/Authorization
|
|
27
|
+
bun add jose casbin
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 3. Khởi tạo ứng dụng
|
|
33
|
+
Sử dụng `BaseApplication` kết hợp với `bootMixin` để tự động quét và đăng ký các thành phần.
|
|
14
34
|
|
|
15
35
|
```typescript
|
|
16
|
-
import {
|
|
36
|
+
import { BaseApplication, bootMixin, bootStrapApplication, IApplicationConfigs } from '@gennext/lb-infra';
|
|
37
|
+
|
|
38
|
+
class OrderApplication extends bootMixin(BaseApplication) {
|
|
39
|
+
getAppInfo() {
|
|
40
|
+
return {
|
|
41
|
+
name: 'Order Service',
|
|
42
|
+
version: '1.0.0',
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
17
46
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
47
|
+
const configs: IApplicationConfigs = {
|
|
48
|
+
port: Number(process.env.PORT) || 3000,
|
|
49
|
+
path: { base: '/api' }
|
|
50
|
+
};
|
|
21
51
|
|
|
22
|
-
|
|
23
|
-
logger.info('User login successful', { userId: 123 });
|
|
24
|
-
logger.debug('Debugging details: %j', someObject);
|
|
25
|
-
logger.warn('Rate limit warning for IP: %s', ipAddress);
|
|
26
|
-
logger.error('Database connection failed | Error: %s', error.message);
|
|
52
|
+
bootStrapApplication(OrderApplication, configs);
|
|
27
53
|
```
|
|
28
54
|
|
|
29
55
|
---
|
|
30
56
|
|
|
31
|
-
##
|
|
32
|
-
|
|
57
|
+
## 4. Data layer
|
|
58
|
+
Sử dụng Drizzle để định nghĩa schema và các Repository để thao tác dữ liệu.
|
|
33
59
|
|
|
34
|
-
###
|
|
35
|
-
|
|
60
|
+
### Khai báo Drizzle Schema
|
|
61
|
+
Sử dụng các helper trong `column-defs.ts` để chuẩn hóa cấu trúc bảng.
|
|
36
62
|
|
|
37
63
|
```typescript
|
|
38
|
-
import {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}),
|
|
48
|
-
onConnected: () => console.log('Redis connected!'),
|
|
64
|
+
import { pgTable, text, integer } from 'drizzle-orm/pg-core';
|
|
65
|
+
import { generateIdColumnDefs, generateSoftDeleteColumnDefs, generateTzColumnDefs } from '@gennext/lb-infra';
|
|
66
|
+
|
|
67
|
+
export const orders = pgTable('orders', {
|
|
68
|
+
...generateIdColumnDefs({ id: { dataType: 'string' } }),
|
|
69
|
+
orderNumber: text('order_number').notNull(),
|
|
70
|
+
amount: integer('amount'),
|
|
71
|
+
...generateTzColumnDefs(),
|
|
72
|
+
...generateSoftDeleteColumnDefs(),
|
|
49
73
|
});
|
|
50
74
|
```
|
|
51
75
|
|
|
52
|
-
###
|
|
53
|
-
|
|
54
|
-
const redis = RedisManager.getInstance('default'); // Lấy instance tên 'default'
|
|
55
|
-
|
|
56
|
-
// 1. Thao tác chuỗi (String)
|
|
57
|
-
await redis.set({ key: 'user:1', value: { name: 'John' }, options: { log: true } });
|
|
58
|
-
const user = await redis.getObject({ key: 'user:1' });
|
|
59
|
-
|
|
60
|
-
// 2. Thao tác hàng loạt (MGET, MSET) cực nhanh (O(N))
|
|
61
|
-
await redis.mset({
|
|
62
|
-
payload: [
|
|
63
|
-
{ key: 'user:1', value: { name: 'A' } },
|
|
64
|
-
{ key: 'user:2', value: { name: 'B' } }
|
|
65
|
-
]
|
|
66
|
-
});
|
|
67
|
-
const users = await redis.getObjects({ keys: ['user:1', 'user:2'] });
|
|
76
|
+
### Repositories
|
|
77
|
+
Sử dụng `DefaultCrudRepository` hoặc `SoftDeletableRepository` để có sẵn các hàm CRUD.
|
|
68
78
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
payload: { action: 'RELOAD_CONFIG' },
|
|
73
|
-
useCompress: true // Tự động nén zlib để tối ưu băng thông
|
|
74
|
-
});
|
|
79
|
+
```typescript
|
|
80
|
+
import { SoftDeletableRepository } from '@gennext/lb-infra';
|
|
81
|
+
import { orders } from '../models/order.schema';
|
|
75
82
|
|
|
76
|
-
|
|
83
|
+
export class OrderRepository extends SoftDeletableRepository<typeof orders> {
|
|
84
|
+
constructor() {
|
|
85
|
+
super(orders);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
77
88
|
```
|
|
78
89
|
|
|
79
90
|
---
|
|
80
91
|
|
|
81
|
-
##
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
### Cấu hình & Sử dụng
|
|
85
|
-
Trong file `migrate.ts` của project:
|
|
92
|
+
## 5. Service layer
|
|
93
|
+
Các service kế thừa `BaseService` và sử dụng `this.logger` (HFLogger pattern) để ghi log theo phương thức.
|
|
86
94
|
|
|
87
95
|
```typescript
|
|
88
|
-
import {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
// Logic
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
fn: async (app) => {
|
|
101
|
-
// Logic migration chính
|
|
102
|
-
const repo = await app.getRepository(UserRepository);
|
|
103
|
-
await repo.create({ username: 'admin', role: 'ADMIN' });
|
|
96
|
+
import { BaseService } from '@gennext/lb-infra';
|
|
97
|
+
|
|
98
|
+
export class OrderService extends BaseService {
|
|
99
|
+
async processOrder(orderId: string) {
|
|
100
|
+
const logger = this.logger.for('processOrder');
|
|
101
|
+
logger.info('Starting process', { orderId });
|
|
102
|
+
|
|
103
|
+
try {
|
|
104
|
+
// Logic xử lý đơn hàng...
|
|
105
|
+
} catch (error) {
|
|
106
|
+
logger.error('Failed to process', error);
|
|
107
|
+
throw error;
|
|
104
108
|
}
|
|
105
109
|
}
|
|
106
|
-
|
|
110
|
+
}
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
---
|
|
107
114
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
115
|
+
## 6. Controller & Routing
|
|
116
|
+
Controller quản lý các route và tích hợp Zod để tự động tạo tài liệu OpenAPI qua `defineRoute` hoặc `bindRoute`.
|
|
117
|
+
|
|
118
|
+
```typescript
|
|
119
|
+
import { BaseController, controller } from '@gennext/lb-infra';
|
|
120
|
+
import { z } from 'zod';
|
|
121
|
+
|
|
122
|
+
const OrderSchema = z.object({
|
|
123
|
+
id: z.string().uuid(),
|
|
124
|
+
amount: z.number().min(1)
|
|
112
125
|
});
|
|
126
|
+
|
|
127
|
+
@controller({ path: '/orders' })
|
|
128
|
+
export class OrderController extends BaseController {
|
|
129
|
+
async binding() {
|
|
130
|
+
this.bindRoute({
|
|
131
|
+
configs: {
|
|
132
|
+
path: '/',
|
|
133
|
+
method: 'post',
|
|
134
|
+
request: {
|
|
135
|
+
body: { content: { 'application/json': { schema: OrderSchema } } }
|
|
136
|
+
},
|
|
137
|
+
responses: {
|
|
138
|
+
200: {
|
|
139
|
+
description: 'Order created',
|
|
140
|
+
content: { 'application/json': { schema: OrderSchema } }
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}).to({
|
|
145
|
+
handler: async (c) => {
|
|
146
|
+
const body = await c.req.json();
|
|
147
|
+
return c.json(body);
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
}
|
|
113
152
|
```
|
|
114
153
|
|
|
115
154
|
---
|
|
116
155
|
|
|
117
|
-
##
|
|
118
|
-
|
|
156
|
+
## 7. DataSources
|
|
157
|
+
Cấu hình kết nối cơ sở dữ liệu qua các class kế thừa.
|
|
119
158
|
|
|
120
|
-
### Sử dụng
|
|
121
159
|
```typescript
|
|
122
|
-
import {
|
|
123
|
-
import axios from 'axios';
|
|
160
|
+
import { PostgresDataSource, RedisDataSource } from '@gennext/lb-infra/datasources';
|
|
124
161
|
|
|
125
|
-
|
|
162
|
+
export class DbDataSource extends PostgresDataSource {
|
|
163
|
+
static dataSourceName = 'db';
|
|
164
|
+
}
|
|
126
165
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
const response = await post(client, '/users', { name: 'John' });
|
|
130
|
-
console.log(response.data);
|
|
131
|
-
} catch (error) {
|
|
132
|
-
// error ở đây đã được trích xuất (error.response.data.error)
|
|
166
|
+
export class CacheDataSource extends RedisDataSource {
|
|
167
|
+
static dataSourceName = 'redis';
|
|
133
168
|
}
|
|
134
169
|
```
|
|
135
170
|
|
|
136
171
|
---
|
|
137
172
|
|
|
138
|
-
##
|
|
139
|
-
|
|
173
|
+
## 8. Logger helper
|
|
174
|
+
Hệ thống log mạnh mẽ hỗ trợ `RequestContext` để theo vết Request ID xuyên suốt các layer.
|
|
140
175
|
|
|
141
|
-
### 5.1. Xử lý Lỗi (`error.utility`)
|
|
142
|
-
Chuẩn hóa lỗi bắn ra cho client.
|
|
143
176
|
```typescript
|
|
144
|
-
import {
|
|
177
|
+
import { LoggerFactory, RequestContext } from '@gennext/lb-infra';
|
|
178
|
+
|
|
179
|
+
const logger = LoggerFactory.getLogger(['OrderModule']);
|
|
145
180
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
name: 'ValidationError'
|
|
181
|
+
// Sử dụng RequestContext để gắn ID tự động
|
|
182
|
+
RequestContext.run({ requestId: 'req-123' }, () => {
|
|
183
|
+
logger.info('User action log'); // Log sẽ có prefix [req-123]
|
|
150
184
|
});
|
|
151
185
|
```
|
|
152
186
|
|
|
153
|
-
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## 9. Redis helper
|
|
190
|
+
Bộ công cụ hỗ trợ Redis String, Hash, JSON và Pub/Sub.
|
|
191
|
+
|
|
154
192
|
```typescript
|
|
155
|
-
import {
|
|
193
|
+
import { RedisHelper } from '@gennext/lb-infra/helpers/redis';
|
|
156
194
|
|
|
157
|
-
|
|
158
|
-
const signature = hash('my-text', { algorithm: 'SHA256', outputType: 'hex' });
|
|
195
|
+
const redis = new RedisHelper({ host: 'localhost', port: 6379 });
|
|
159
196
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
197
|
+
await redis.set({ key: 'config', value: { theme: 'dark' } });
|
|
198
|
+
|
|
199
|
+
// Thao tác với RedisJSON
|
|
200
|
+
await redis.jSet({
|
|
201
|
+
key: 'user:data',
|
|
202
|
+
path: '$',
|
|
203
|
+
value: { settings: { lang: 'vi' } }
|
|
204
|
+
});
|
|
205
|
+
|
|
206
|
+
const lang = await redis.jGet({ key: 'user:data', path: '$.settings.lang' });
|
|
163
207
|
```
|
|
164
208
|
|
|
165
|
-
|
|
166
|
-
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## 10. Authentication
|
|
212
|
+
Tích hợp sẵn các chiến lược xác thực phổ biến.
|
|
213
|
+
|
|
214
|
+
```typescript
|
|
215
|
+
import { AuthenticateComponent, JwtStrategy } from '@gennext/lb-infra';
|
|
216
|
+
|
|
217
|
+
// Trong BaseApplication
|
|
218
|
+
this.component(AuthenticateComponent);
|
|
219
|
+
this.bind('authentication.strategies.jwt').toClass(JwtStrategy);
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
## 11. Authorization
|
|
225
|
+
Phân quyền dựa trên thuộc tính (RBAC/ABAC) sử dụng Casbin.
|
|
226
|
+
|
|
167
227
|
```typescript
|
|
168
|
-
import {
|
|
228
|
+
import { AuthorizeComponent, DrizzleCasbinAdapter } from '@gennext/lb-infra';
|
|
169
229
|
|
|
170
|
-
|
|
171
|
-
|
|
230
|
+
this.component(AuthorizeComponent);
|
|
231
|
+
// Dùng DrizzleCasbinAdapter để lưu policy vào PostgreSQL
|
|
172
232
|
```
|
|
173
233
|
|
|
174
|
-
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## 12. Components tùy chọn
|
|
237
|
+
|
|
238
|
+
### gRPC
|
|
175
239
|
```typescript
|
|
176
|
-
import {
|
|
240
|
+
import { BaseGrpcController } from '@gennext/lb-infra/components/grpc';
|
|
177
241
|
|
|
178
|
-
|
|
242
|
+
export class UserGrpcController extends BaseGrpcController {
|
|
243
|
+
// Implement gRPC methods defined in proto
|
|
244
|
+
}
|
|
179
245
|
```
|
|
180
246
|
|
|
247
|
+
### Socket.IO
|
|
248
|
+
Sử dụng `SocketIOServerHelper` để quản lý kết nối thời gian thực.
|
|
249
|
+
|
|
250
|
+
### Health Check
|
|
251
|
+
Tích hợp sẵn endpoint `/health` để monitor trạng thái hệ thống.
|
|
252
|
+
|
|
181
253
|
---
|
|
182
254
|
|
|
183
|
-
##
|
|
184
|
-
|
|
255
|
+
## 13. Utilities
|
|
256
|
+
Các hàm tiện ích tối ưu trong `src/utilities`:
|
|
257
|
+
|
|
258
|
+
- `getError(opts)`: Tạo error object chuẩn kèm `statusCode`.
|
|
259
|
+
- `hash(text, opts)`: Hỗ trợ MD5, SHA256...
|
|
260
|
+
- `safeParseJson(str)`: Parse JSON không lo crash.
|
|
261
|
+
- `executePromiseWithLimit({ tasks, limit })`: Chạy batch tasks có giới hạn số lượng chạy song song.
|
|
262
|
+
- `getDateTz()`: Lấy thời gian hiện tại theo múi giờ cấu hình.
|
|
263
|
+
- `buildBatchUpdateQuery(table, data)`: Helper tạo câu lệnh cập nhật hàng loạt cho Drizzle.
|
|
264
|
+
|
|
265
|
+
---
|
|
185
266
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
267
|
+
## 14. Base classes
|
|
268
|
+
|
|
269
|
+
| Class | Thuộc tính/Phương thức có sẵn |
|
|
270
|
+
| :--- | :--- |
|
|
271
|
+
| `BaseHelper` | `this.logger` |
|
|
272
|
+
| `BaseService` | `this.logger` (HFLogger), `this.get(key)` (DI) |
|
|
273
|
+
| `BaseController` | `this.logger`, `this.bindRoute()`, `this.defineRoute()` |
|
|
274
|
+
| `BaseDataSource` | `this.name`, `this.connector` |
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## 15. Biến môi trường
|
|
279
|
+
|
|
280
|
+
| Tên biến | Mô tả | Giá trị mặc định |
|
|
281
|
+
| :--- | :--- | :--- |
|
|
282
|
+
| `APP_ENV_APPLICATION_NAME` | Tên ứng dụng xuất hiện trong log | `APP` |
|
|
283
|
+
| `APP_ENV_POSTGRES_HOST` | Địa chỉ PostgreSQL | `localhost` |
|
|
284
|
+
| `APP_ENV_POSTGRES_PORT` | Cổng PostgreSQL | `5432` |
|
|
285
|
+
| `APP_ENV_POSTGRES_USERNAME` | Username DB | `postgres` |
|
|
286
|
+
| `APP_ENV_POSTGRES_PASSWORD` | Password DB | `password` |
|
|
287
|
+
| `APP_ENV_POSTGRES_DATABASE` | Tên Database | `postgres` |
|
|
288
|
+
| `APP_ENV_REDIS_DATASOURCE_HOST` | Địa chỉ Redis | `0.0.0.0` |
|
|
289
|
+
| `APP_ENV_REDIS_DATASOURCE_PORT` | Cổng Redis | `6379` |
|
|
290
|
+
| `APP_ENV_LOGGER_FOLDER_PATH` | Đường dẫn lưu file log | `./logs` |
|
|
291
|
+
| `DEBUG` | Kích hoạt log debug | `false` |
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
## 16. Ví dụ end-to-end: Order Service
|
|
189
296
|
|
|
190
297
|
```typescript
|
|
191
|
-
|
|
298
|
+
// --- 1. Model (order.schema.ts) ---
|
|
299
|
+
export const orders = pgTable('orders', {
|
|
300
|
+
...generateIdColumnDefs({ id: { dataType: 'string' } }),
|
|
301
|
+
item: text('item').notNull(),
|
|
302
|
+
...generateTzColumnDefs()
|
|
303
|
+
});
|
|
192
304
|
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
305
|
+
// --- 2. Repository (order.repository.ts) ---
|
|
306
|
+
export class OrderRepository extends DefaultCrudRepository<typeof orders> {
|
|
307
|
+
constructor() { super(orders); }
|
|
308
|
+
}
|
|
197
309
|
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
310
|
+
// --- 3. Service (order.service.ts) ---
|
|
311
|
+
export class OrderService extends BaseService {
|
|
312
|
+
async create(item: string) {
|
|
313
|
+
const repo = this.get<OrderRepository>('repositories.OrderRepository');
|
|
314
|
+
return repo.create({ item });
|
|
201
315
|
}
|
|
202
316
|
}
|
|
203
|
-
```
|
|
204
317
|
|
|
205
|
-
---
|
|
318
|
+
// --- 4. Controller (order.controller.ts) ---
|
|
319
|
+
@controller({ path: '/orders' })
|
|
320
|
+
export class OrderController extends BaseController {
|
|
321
|
+
async binding() {
|
|
322
|
+
this.bindRoute({
|
|
323
|
+
path: '/', method: 'post',
|
|
324
|
+
responses: { 200: { description: 'Success' } }
|
|
325
|
+
}).to({
|
|
326
|
+
handler: async (c) => {
|
|
327
|
+
const service = this.get<OrderService>('services.OrderService');
|
|
328
|
+
return c.json(await service.create('Product A'));
|
|
329
|
+
}
|
|
330
|
+
});
|
|
331
|
+
}
|
|
332
|
+
}
|
|
206
333
|
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
334
|
+
// --- 5. Application (main.ts) ---
|
|
335
|
+
class OrderApp extends bootMixin(BaseApplication) {
|
|
336
|
+
getAppInfo() { return { name: 'OrderAPI', version: '1.0' }; }
|
|
337
|
+
}
|
|
210
338
|
|
|
211
|
-
|
|
339
|
+
bootStrapApplication(OrderApp, { port: 8080 });
|
|
340
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drizzle.config.d.ts","sourceRoot":"","sources":["../drizzle.config.ts"],"names":[],"mappings":";AAEA,wBAYG"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const drizzle_kit_1 = require("drizzle-kit");
|
|
4
|
+
exports.default = (0, drizzle_kit_1.defineConfig)({
|
|
5
|
+
dialect: 'postgresql',
|
|
6
|
+
schema: './src/**/*.schema.ts',
|
|
7
|
+
out: './migration',
|
|
8
|
+
dbCredentials: {
|
|
9
|
+
host: process.env.APP_ENV_POSTGRES_HOST,
|
|
10
|
+
port: Number(process.env.APP_ENV_POSTGRES_PORT),
|
|
11
|
+
user: process.env.APP_ENV_POSTGRES_USERNAME,
|
|
12
|
+
password: process.env.APP_ENV_POSTGRES_PASSWORD,
|
|
13
|
+
database: process.env.APP_ENV_POSTGRES_DATABASE,
|
|
14
|
+
ssl: false,
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=drizzle.config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drizzle.config.js","sourceRoot":"","sources":["../drizzle.config.ts"],"names":[],"mappings":";;AAAA,6CAA2C;AAE3C,kBAAe,IAAA,0BAAY,EAAC;IAC1B,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,sBAAsB;IAC9B,GAAG,EAAE,aAAa;IAClB,aAAa,EAAE;QACb,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAsB;QACxC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAsB,CAAC;QAChD,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,yBAA0B;QAC5C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,yBAA0B;QAChD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,yBAA0B;QAChD,GAAG,EAAE,KAAK;KACX;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { OpenAPIHono } from '@hono/zod-openapi';
|
|
2
|
+
import type { Logger } from '../../helpers';
|
|
3
|
+
import type { ValueOrPromise } from '../../common';
|
|
4
|
+
import type { ClassType } from '../../common/types';
|
|
5
|
+
export interface IApplicationConfigs {
|
|
6
|
+
host?: string;
|
|
7
|
+
port: number;
|
|
8
|
+
path?: {
|
|
9
|
+
base: string;
|
|
10
|
+
isStrict?: boolean;
|
|
11
|
+
};
|
|
12
|
+
debug?: {
|
|
13
|
+
shouldShowRoutes?: boolean;
|
|
14
|
+
};
|
|
15
|
+
error?: {
|
|
16
|
+
rootKey?: string;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export interface IApplicationInfo {
|
|
20
|
+
name: string;
|
|
21
|
+
version: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface IMiddlewareConfigs {
|
|
25
|
+
[key: string]: any;
|
|
26
|
+
}
|
|
27
|
+
export declare abstract class BaseApplication {
|
|
28
|
+
protected logger: Logger;
|
|
29
|
+
protected server: OpenAPIHono;
|
|
30
|
+
protected bindings: Map<string, any>;
|
|
31
|
+
protected configs: IApplicationConfigs;
|
|
32
|
+
constructor(configs: IApplicationConfigs);
|
|
33
|
+
abstract getAppInfo(): ValueOrPromise<IApplicationInfo>;
|
|
34
|
+
staticConfigure(): void;
|
|
35
|
+
preConfigure(): ValueOrPromise<void>;
|
|
36
|
+
setupMiddlewares(): Promise<void>;
|
|
37
|
+
postConfigure(): ValueOrPromise<void>;
|
|
38
|
+
controller(_ControllerClass: new (...args: any[]) => any): void;
|
|
39
|
+
repository(_RepositoryClass: new (...args: any[]) => any): void;
|
|
40
|
+
dataSource(_DataSourceClass: new (...args: any[]) => any): void;
|
|
41
|
+
service(_ServiceClass: new (...args: any[]) => any): void;
|
|
42
|
+
component(_ComponentClass: new (...args: any[]) => any): void;
|
|
43
|
+
bind<T>(opts: {
|
|
44
|
+
key: string;
|
|
45
|
+
}): {
|
|
46
|
+
toValue: (v: T) => void;
|
|
47
|
+
toClass: (c: ClassType<T>) => void;
|
|
48
|
+
};
|
|
49
|
+
get<T>(opts: {
|
|
50
|
+
key: string;
|
|
51
|
+
isOptional?: boolean;
|
|
52
|
+
}): T;
|
|
53
|
+
getServer(): OpenAPIHono;
|
|
54
|
+
start(): Promise<void>;
|
|
55
|
+
stop(): Promise<void>;
|
|
56
|
+
static(_opts: {
|
|
57
|
+
folderPath: string;
|
|
58
|
+
mountPath?: string;
|
|
59
|
+
}): void;
|
|
60
|
+
protected applyMiddlewares(_configs: IMiddlewareConfigs): Promise<void>;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=base.application.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.application.d.ts","sourceRoot":"","sources":["../../../../src/base/applications/base.application.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5C,KAAK,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACvC,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,8BAAsB,eAAe;IACnC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBAE3B,OAAO,EAAE,mBAAmB;IAQxC,QAAQ,CAAC,UAAU,IAAI,cAAc,CAAC,gBAAgB,CAAC;IAEvD,eAAe,IAAI,IAAI;IACvB,YAAY,IAAI,cAAc,CAAC,IAAI,CAAC;IAC9B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IACvC,aAAa,IAAI,cAAc,CAAC,IAAI,CAAC;IAErC,UAAU,CAAC,gBAAgB,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI;IAC/D,UAAU,CAAC,gBAAgB,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI;IAC/D,UAAU,CAAC,gBAAgB,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI;IAC/D,OAAO,CAAC,aAAa,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI;IACzD,SAAS,CAAC,eAAe,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI;IAE7D,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE;qBAEZ,CAAC;qBAGD,SAAS,CAAC,CAAC,CAAC;;IAM7B,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,CAAC;IAOtD,SAAS,IAAI,WAAW;IAIlB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAE3B,MAAM,CAAC,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;cAE/C,gBAAgB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;CAC9E"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseApplication = void 0;
|
|
4
|
+
const helpers_1 = require("../../helpers");
|
|
5
|
+
class BaseApplication {
|
|
6
|
+
constructor(configs) {
|
|
7
|
+
this.configs = configs;
|
|
8
|
+
this.logger = helpers_1.LoggerFactory.getLogger(['Application']);
|
|
9
|
+
this.bindings = new Map();
|
|
10
|
+
const { OpenAPIHono } = require('@hono/zod-openapi');
|
|
11
|
+
this.server = new OpenAPIHono();
|
|
12
|
+
}
|
|
13
|
+
staticConfigure() { }
|
|
14
|
+
preConfigure() { }
|
|
15
|
+
async setupMiddlewares() { }
|
|
16
|
+
postConfigure() { }
|
|
17
|
+
controller(_ControllerClass) { }
|
|
18
|
+
repository(_RepositoryClass) { }
|
|
19
|
+
dataSource(_DataSourceClass) { }
|
|
20
|
+
service(_ServiceClass) { }
|
|
21
|
+
component(_ComponentClass) { }
|
|
22
|
+
bind(opts) {
|
|
23
|
+
return {
|
|
24
|
+
toValue: (v) => {
|
|
25
|
+
this.bindings.set(opts.key, v);
|
|
26
|
+
},
|
|
27
|
+
toClass: (c) => {
|
|
28
|
+
this.bindings.set(opts.key, new c());
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
get(opts) {
|
|
33
|
+
if (!this.bindings.has(opts.key) && !opts.isOptional) {
|
|
34
|
+
throw new Error(`Binding not found: ${opts.key}`);
|
|
35
|
+
}
|
|
36
|
+
return this.bindings.get(opts.key);
|
|
37
|
+
}
|
|
38
|
+
getServer() {
|
|
39
|
+
return this.server;
|
|
40
|
+
}
|
|
41
|
+
async start() {
|
|
42
|
+
await this.preConfigure();
|
|
43
|
+
await this.setupMiddlewares();
|
|
44
|
+
if (typeof this.boot === 'function') {
|
|
45
|
+
await this.boot();
|
|
46
|
+
}
|
|
47
|
+
await this.postConfigure();
|
|
48
|
+
}
|
|
49
|
+
async stop() { }
|
|
50
|
+
static(_opts) { }
|
|
51
|
+
async applyMiddlewares(_configs) { }
|
|
52
|
+
}
|
|
53
|
+
exports.BaseApplication = BaseApplication;
|
|
54
|
+
//# sourceMappingURL=base.application.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.application.js","sourceRoot":"","sources":["../../../../src/base/applications/base.application.ts"],"names":[],"mappings":";;;AAEA,2CAA8C;AAsB9C,MAAsB,eAAe;IAMnC,YAAY,OAA4B;QACtC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,uBAAa,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1B,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,CAAC;IAID,eAAe,KAAU,CAAC;IAC1B,YAAY,KAA0B,CAAC;IACvC,KAAK,CAAC,gBAAgB,KAAmB,CAAC;IAC1C,aAAa,KAA0B,CAAC;IAExC,UAAU,CAAC,gBAA6C,IAAS,CAAC;IAClE,UAAU,CAAC,gBAA6C,IAAS,CAAC;IAClE,UAAU,CAAC,gBAA6C,IAAS,CAAC;IAClE,OAAO,CAAC,aAA0C,IAAS,CAAC;IAC5D,SAAS,CAAC,eAA4C,IAAS,CAAC;IAEhE,IAAI,CAAI,IAAqB;QAC3B,OAAO;YACL,OAAO,EAAE,CAAC,CAAI,EAAE,EAAE;gBAChB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,EAAE,CAAC,CAAe,EAAE,EAAE;gBAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACvC,CAAC;SACF,CAAC;IACJ,CAAC;IAED,GAAG,CAAI,IAA2C;QAChD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAM,CAAC;IAC1C,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9B,IAAI,OAAQ,IAAY,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7C,MAAO,IAAY,CAAC,IAAI,EAAE,CAAC;QAC7B,CAAC;QACD,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAI,KAAmB,CAAC;IAE9B,MAAM,CAAC,KAAiD,IAAS,CAAC;IAExD,KAAK,CAAC,gBAAgB,CAAC,QAA4B,IAAkB,CAAC;CACjF;AA/DD,0CA+DC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/applications/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|