@xeno-js/shared 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +15 -0
- package/README.md +274 -0
- package/dist/application/cqrs/command/command.d.ts +8 -0
- package/dist/application/cqrs/command/command.d.ts.map +1 -0
- package/dist/application/cqrs/command/command.js +9 -0
- package/dist/application/cqrs/command/command.js.map +1 -0
- package/dist/application/cqrs/command/index.d.ts +2 -0
- package/dist/application/cqrs/command/index.d.ts.map +1 -0
- package/dist/application/cqrs/command/index.js +2 -0
- package/dist/application/cqrs/command/index.js.map +1 -0
- package/dist/application/cqrs/index.d.ts +3 -0
- package/dist/application/cqrs/index.d.ts.map +1 -0
- package/dist/application/cqrs/index.js +3 -0
- package/dist/application/cqrs/index.js.map +1 -0
- package/dist/application/cqrs/query/index.d.ts +2 -0
- package/dist/application/cqrs/query/index.d.ts.map +1 -0
- package/dist/application/cqrs/query/index.js +2 -0
- package/dist/application/cqrs/query/index.js.map +1 -0
- package/dist/application/cqrs/query/query.d.ts +9 -0
- package/dist/application/cqrs/query/query.d.ts.map +1 -0
- package/dist/application/cqrs/query/query.js +11 -0
- package/dist/application/cqrs/query/query.js.map +1 -0
- package/dist/application/index.d.ts +3 -0
- package/dist/application/index.d.ts.map +1 -0
- package/dist/application/index.js +3 -0
- package/dist/application/index.js.map +1 -0
- package/dist/application/loggers/__tests__/base.logger.test.d.ts +2 -0
- package/dist/application/loggers/__tests__/base.logger.test.d.ts.map +1 -0
- package/dist/application/loggers/__tests__/base.logger.test.js +132 -0
- package/dist/application/loggers/__tests__/base.logger.test.js.map +1 -0
- package/dist/application/loggers/base.logger.d.ts +48 -0
- package/dist/application/loggers/base.logger.d.ts.map +1 -0
- package/dist/application/loggers/base.logger.js +68 -0
- package/dist/application/loggers/base.logger.js.map +1 -0
- package/dist/application/loggers/index.d.ts +2 -0
- package/dist/application/loggers/index.d.ts.map +1 -0
- package/dist/application/loggers/index.js +2 -0
- package/dist/application/loggers/index.js.map +1 -0
- package/dist/domain/config/auth.config.d.ts +14 -0
- package/dist/domain/config/auth.config.d.ts.map +1 -0
- package/dist/domain/config/auth.config.js +2 -0
- package/dist/domain/config/auth.config.js.map +1 -0
- package/dist/domain/config/cache.config.d.ts +92 -0
- package/dist/domain/config/cache.config.d.ts.map +1 -0
- package/dist/domain/config/cache.config.js +2 -0
- package/dist/domain/config/cache.config.js.map +1 -0
- package/dist/domain/config/db.config.d.ts +29 -0
- package/dist/domain/config/db.config.d.ts.map +1 -0
- package/dist/domain/config/db.config.js +2 -0
- package/dist/domain/config/db.config.js.map +1 -0
- package/dist/domain/config/http.config.d.ts +148 -0
- package/dist/domain/config/http.config.d.ts.map +1 -0
- package/dist/domain/config/http.config.js +2 -0
- package/dist/domain/config/http.config.js.map +1 -0
- package/dist/domain/config/index.d.ts +5 -0
- package/dist/domain/config/index.d.ts.map +1 -0
- package/dist/domain/config/index.js +2 -0
- package/dist/domain/config/index.js.map +1 -0
- package/dist/domain/config/resilience.config.d.ts +94 -0
- package/dist/domain/config/resilience.config.d.ts.map +1 -0
- package/dist/domain/config/resilience.config.js +2 -0
- package/dist/domain/config/resilience.config.js.map +1 -0
- package/dist/domain/contracts/cache/icache.contracts.d.ts +93 -0
- package/dist/domain/contracts/cache/icache.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/cache/icache.contracts.js +2 -0
- package/dist/domain/contracts/cache/icache.contracts.js.map +1 -0
- package/dist/domain/contracts/cache/ikey-builder.contracts.d.ts +34 -0
- package/dist/domain/contracts/cache/ikey-builder.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/cache/ikey-builder.contracts.js +2 -0
- package/dist/domain/contracts/cache/ikey-builder.contracts.js.map +1 -0
- package/dist/domain/contracts/cache/index.d.ts +3 -0
- package/dist/domain/contracts/cache/index.d.ts.map +1 -0
- package/dist/domain/contracts/cache/index.js +2 -0
- package/dist/domain/contracts/cache/index.js.map +1 -0
- package/dist/domain/contracts/configuration/iconfiguration.contracts.d.ts +61 -0
- package/dist/domain/contracts/configuration/iconfiguration.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/configuration/iconfiguration.contracts.js +2 -0
- package/dist/domain/contracts/configuration/iconfiguration.contracts.js.map +1 -0
- package/dist/domain/contracts/configuration/index.d.ts +2 -0
- package/dist/domain/contracts/configuration/index.d.ts.map +1 -0
- package/dist/domain/contracts/configuration/index.js +2 -0
- package/dist/domain/contracts/configuration/index.js.map +1 -0
- package/dist/domain/contracts/context/context_types/identity-context.types.d.ts +63 -0
- package/dist/domain/contracts/context/context_types/identity-context.types.d.ts.map +1 -0
- package/dist/domain/contracts/context/context_types/identity-context.types.js +2 -0
- package/dist/domain/contracts/context/context_types/identity-context.types.js.map +1 -0
- package/dist/domain/contracts/context/context_types/index.d.ts +6 -0
- package/dist/domain/contracts/context/context_types/index.d.ts.map +1 -0
- package/dist/domain/contracts/context/context_types/index.js +2 -0
- package/dist/domain/contracts/context/context_types/index.js.map +1 -0
- package/dist/domain/contracts/context/context_types/messaging-context.types.d.ts +70 -0
- package/dist/domain/contracts/context/context_types/messaging-context.types.d.ts.map +1 -0
- package/dist/domain/contracts/context/context_types/messaging-context.types.js +2 -0
- package/dist/domain/contracts/context/context_types/messaging-context.types.js.map +1 -0
- package/dist/domain/contracts/context/context_types/network-context.types.d.ts +82 -0
- package/dist/domain/contracts/context/context_types/network-context.types.d.ts.map +1 -0
- package/dist/domain/contracts/context/context_types/network-context.types.js +2 -0
- package/dist/domain/contracts/context/context_types/network-context.types.js.map +1 -0
- package/dist/domain/contracts/context/context_types/request-context.types.d.ts +48 -0
- package/dist/domain/contracts/context/context_types/request-context.types.d.ts.map +1 -0
- package/dist/domain/contracts/context/context_types/request-context.types.js +2 -0
- package/dist/domain/contracts/context/context_types/request-context.types.js.map +1 -0
- package/dist/domain/contracts/context/context_types/tracing-context.types.d.ts +54 -0
- package/dist/domain/contracts/context/context_types/tracing-context.types.d.ts.map +1 -0
- package/dist/domain/contracts/context/context_types/tracing-context.types.js +2 -0
- package/dist/domain/contracts/context/context_types/tracing-context.types.js.map +1 -0
- package/dist/domain/contracts/context/index.d.ts +3 -0
- package/dist/domain/contracts/context/index.d.ts.map +1 -0
- package/dist/domain/contracts/context/index.js +2 -0
- package/dist/domain/contracts/context/index.js.map +1 -0
- package/dist/domain/contracts/context/irequest-context.contracts.d.ts +68 -0
- package/dist/domain/contracts/context/irequest-context.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/context/irequest-context.contracts.js +2 -0
- package/dist/domain/contracts/context/irequest-context.contracts.js.map +1 -0
- package/dist/domain/contracts/controllers/icontroller.contracts.d.ts +25 -0
- package/dist/domain/contracts/controllers/icontroller.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/controllers/icontroller.contracts.js +2 -0
- package/dist/domain/contracts/controllers/icontroller.contracts.js.map +1 -0
- package/dist/domain/contracts/controllers/index.d.ts +2 -0
- package/dist/domain/contracts/controllers/index.d.ts.map +1 -0
- package/dist/domain/contracts/controllers/index.js +2 -0
- package/dist/domain/contracts/controllers/index.js.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/icommand.types.d.ts +30 -0
- package/dist/domain/contracts/cqrs/cqrs_types/icommand.types.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/icommand.types.js +2 -0
- package/dist/domain/contracts/cqrs/cqrs_types/icommand.types.js.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/index.d.ts +4 -0
- package/dist/domain/contracts/cqrs/cqrs_types/index.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/index.js +2 -0
- package/dist/domain/contracts/cqrs/cqrs_types/index.js.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/iquery.types.d.ts +32 -0
- package/dist/domain/contracts/cqrs/cqrs_types/iquery.types.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/iquery.types.js +2 -0
- package/dist/domain/contracts/cqrs/cqrs_types/iquery.types.js.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/irequest.types.d.ts +30 -0
- package/dist/domain/contracts/cqrs/cqrs_types/irequest.types.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/cqrs_types/irequest.types.js +2 -0
- package/dist/domain/contracts/cqrs/cqrs_types/irequest.types.js.map +1 -0
- package/dist/domain/contracts/cqrs/ihandler.contracts.d.ts +30 -0
- package/dist/domain/contracts/cqrs/ihandler.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/ihandler.contracts.js +2 -0
- package/dist/domain/contracts/cqrs/ihandler.contracts.js.map +1 -0
- package/dist/domain/contracts/cqrs/imediator.contracts.d.ts +41 -0
- package/dist/domain/contracts/cqrs/imediator.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/imediator.contracts.js +2 -0
- package/dist/domain/contracts/cqrs/imediator.contracts.js.map +1 -0
- package/dist/domain/contracts/cqrs/index.d.ts +5 -0
- package/dist/domain/contracts/cqrs/index.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/index.js +2 -0
- package/dist/domain/contracts/cqrs/index.js.map +1 -0
- package/dist/domain/contracts/cqrs/ipipeline-behavior.contracts.d.ts +42 -0
- package/dist/domain/contracts/cqrs/ipipeline-behavior.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/cqrs/ipipeline-behavior.contracts.js +2 -0
- package/dist/domain/contracts/cqrs/ipipeline-behavior.contracts.js.map +1 -0
- package/dist/domain/contracts/datasources/index.d.ts +4 -0
- package/dist/domain/contracts/datasources/index.d.ts.map +1 -0
- package/dist/domain/contracts/datasources/index.js +2 -0
- package/dist/domain/contracts/datasources/index.js.map +1 -0
- package/dist/domain/contracts/datasources/iread-datasource.contracts.d.ts +41 -0
- package/dist/domain/contracts/datasources/iread-datasource.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/datasources/iread-datasource.contracts.js +2 -0
- package/dist/domain/contracts/datasources/iread-datasource.contracts.js.map +1 -0
- package/dist/domain/contracts/datasources/iremote-datasource.contracts.d.ts +73 -0
- package/dist/domain/contracts/datasources/iremote-datasource.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/datasources/iremote-datasource.contracts.js +2 -0
- package/dist/domain/contracts/datasources/iremote-datasource.contracts.js.map +1 -0
- package/dist/domain/contracts/datasources/iwrite-datasource.contracts.d.ts +82 -0
- package/dist/domain/contracts/datasources/iwrite-datasource.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/datasources/iwrite-datasource.contracts.js +2 -0
- package/dist/domain/contracts/datasources/iwrite-datasource.contracts.js.map +1 -0
- package/dist/domain/contracts/disposables/idisposable.contracts.d.ts +23 -0
- package/dist/domain/contracts/disposables/idisposable.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/disposables/idisposable.contracts.js +6 -0
- package/dist/domain/contracts/disposables/idisposable.contracts.js.map +1 -0
- package/dist/domain/contracts/disposables/index.d.ts +2 -0
- package/dist/domain/contracts/disposables/index.d.ts.map +1 -0
- package/dist/domain/contracts/disposables/index.js +2 -0
- package/dist/domain/contracts/disposables/index.js.map +1 -0
- package/dist/domain/contracts/factories/ifactory.contracts.d.ts +29 -0
- package/dist/domain/contracts/factories/ifactory.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/factories/ifactory.contracts.js +2 -0
- package/dist/domain/contracts/factories/ifactory.contracts.js.map +1 -0
- package/dist/domain/contracts/factories/index.d.ts +2 -0
- package/dist/domain/contracts/factories/index.d.ts.map +1 -0
- package/dist/domain/contracts/factories/index.js +2 -0
- package/dist/domain/contracts/factories/index.js.map +1 -0
- package/dist/domain/contracts/gate_keepers/igate-keeper.contracts.d.ts +27 -0
- package/dist/domain/contracts/gate_keepers/igate-keeper.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/gate_keepers/igate-keeper.contracts.js +2 -0
- package/dist/domain/contracts/gate_keepers/igate-keeper.contracts.js.map +1 -0
- package/dist/domain/contracts/gate_keepers/index.d.ts +2 -0
- package/dist/domain/contracts/gate_keepers/index.d.ts.map +1 -0
- package/dist/domain/contracts/gate_keepers/index.js +2 -0
- package/dist/domain/contracts/gate_keepers/index.js.map +1 -0
- package/dist/domain/contracts/http/iallow-origin.contracts.d.ts +1 -0
- package/dist/domain/contracts/http/iallow-origin.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/http/iallow-origin.contracts.js +2 -0
- package/dist/domain/contracts/http/iallow-origin.contracts.js.map +1 -0
- package/dist/domain/contracts/http/ihttp-client.contracts.d.ts +81 -0
- package/dist/domain/contracts/http/ihttp-client.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/http/ihttp-client.contracts.js +2 -0
- package/dist/domain/contracts/http/ihttp-client.contracts.js.map +1 -0
- package/dist/domain/contracts/http/index.d.ts +2 -0
- package/dist/domain/contracts/http/index.d.ts.map +1 -0
- package/dist/domain/contracts/http/index.js +2 -0
- package/dist/domain/contracts/http/index.js.map +1 -0
- package/dist/domain/contracts/idempotency/idempotency-store.contracts.d.ts +71 -0
- package/dist/domain/contracts/idempotency/idempotency-store.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/idempotency/idempotency-store.contracts.js +2 -0
- package/dist/domain/contracts/idempotency/idempotency-store.contracts.js.map +1 -0
- package/dist/domain/contracts/idempotency/index.d.ts +2 -0
- package/dist/domain/contracts/idempotency/index.d.ts.map +1 -0
- package/dist/domain/contracts/idempotency/index.js +2 -0
- package/dist/domain/contracts/idempotency/index.js.map +1 -0
- package/dist/domain/contracts/index.d.ts +22 -0
- package/dist/domain/contracts/index.d.ts.map +1 -0
- package/dist/domain/contracts/index.js +2 -0
- package/dist/domain/contracts/index.js.map +1 -0
- package/dist/domain/contracts/loggers/ilogger-client.contracts.d.ts +27 -0
- package/dist/domain/contracts/loggers/ilogger-client.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/loggers/ilogger-client.contracts.js +2 -0
- package/dist/domain/contracts/loggers/ilogger-client.contracts.js.map +1 -0
- package/dist/domain/contracts/loggers/ilogger.contracts.d.ts +62 -0
- package/dist/domain/contracts/loggers/ilogger.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/loggers/ilogger.contracts.js +2 -0
- package/dist/domain/contracts/loggers/ilogger.contracts.js.map +1 -0
- package/dist/domain/contracts/loggers/index.d.ts +3 -0
- package/dist/domain/contracts/loggers/index.d.ts.map +1 -0
- package/dist/domain/contracts/loggers/index.js +2 -0
- package/dist/domain/contracts/loggers/index.js.map +1 -0
- package/dist/domain/contracts/mappers/ibase-mapper.contracts.d.ts +33 -0
- package/dist/domain/contracts/mappers/ibase-mapper.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/mappers/ibase-mapper.contracts.js +2 -0
- package/dist/domain/contracts/mappers/ibase-mapper.contracts.js.map +1 -0
- package/dist/domain/contracts/mappers/imapper.contracts.d.ts +53 -0
- package/dist/domain/contracts/mappers/imapper.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/mappers/imapper.contracts.js +2 -0
- package/dist/domain/contracts/mappers/imapper.contracts.js.map +1 -0
- package/dist/domain/contracts/mappers/index.d.ts +3 -0
- package/dist/domain/contracts/mappers/index.d.ts.map +1 -0
- package/dist/domain/contracts/mappers/index.js +2 -0
- package/dist/domain/contracts/mappers/index.js.map +1 -0
- package/dist/domain/contracts/middlewares/imiddleware.contracts.d.ts +34 -0
- package/dist/domain/contracts/middlewares/imiddleware.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/middlewares/imiddleware.contracts.js +2 -0
- package/dist/domain/contracts/middlewares/imiddleware.contracts.js.map +1 -0
- package/dist/domain/contracts/middlewares/index.d.ts +2 -0
- package/dist/domain/contracts/middlewares/index.d.ts.map +1 -0
- package/dist/domain/contracts/middlewares/index.js +2 -0
- package/dist/domain/contracts/middlewares/index.js.map +1 -0
- package/dist/domain/contracts/policies/index.d.ts +2 -0
- package/dist/domain/contracts/policies/index.d.ts.map +1 -0
- package/dist/domain/contracts/policies/index.js +2 -0
- package/dist/domain/contracts/policies/index.js.map +1 -0
- package/dist/domain/contracts/policies/ipolicy-registry.contracts.d.ts +38 -0
- package/dist/domain/contracts/policies/ipolicy-registry.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/policies/ipolicy-registry.contracts.js +2 -0
- package/dist/domain/contracts/policies/ipolicy-registry.contracts.js.map +1 -0
- package/dist/domain/contracts/repositories/index.d.ts +3 -0
- package/dist/domain/contracts/repositories/index.d.ts.map +1 -0
- package/dist/domain/contracts/repositories/index.js +2 -0
- package/dist/domain/contracts/repositories/index.js.map +1 -0
- package/dist/domain/contracts/repositories/iread-dao.contracts.d.ts +41 -0
- package/dist/domain/contracts/repositories/iread-dao.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/repositories/iread-dao.contracts.js +2 -0
- package/dist/domain/contracts/repositories/iread-dao.contracts.js.map +1 -0
- package/dist/domain/contracts/repositories/irepository.contracts.d.ts +95 -0
- package/dist/domain/contracts/repositories/irepository.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/repositories/irepository.contracts.js +2 -0
- package/dist/domain/contracts/repositories/irepository.contracts.js.map +1 -0
- package/dist/domain/contracts/services/auth/iauth-service.contracts.d.ts +71 -0
- package/dist/domain/contracts/services/auth/iauth-service.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/services/auth/iauth-service.contracts.js +2 -0
- package/dist/domain/contracts/services/auth/iauth-service.contracts.js.map +1 -0
- package/dist/domain/contracts/services/auth/index.d.ts +2 -0
- package/dist/domain/contracts/services/auth/index.d.ts.map +1 -0
- package/dist/domain/contracts/services/auth/index.js +2 -0
- package/dist/domain/contracts/services/auth/index.js.map +1 -0
- package/dist/domain/contracts/services/concurrency/concurrency-service.contracts.d.ts +25 -0
- package/dist/domain/contracts/services/concurrency/concurrency-service.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/services/concurrency/concurrency-service.contracts.js +2 -0
- package/dist/domain/contracts/services/concurrency/concurrency-service.contracts.js.map +1 -0
- package/dist/domain/contracts/services/concurrency/index.d.ts +2 -0
- package/dist/domain/contracts/services/concurrency/index.d.ts.map +1 -0
- package/dist/domain/contracts/services/concurrency/index.js +2 -0
- package/dist/domain/contracts/services/concurrency/index.js.map +1 -0
- package/dist/domain/contracts/services/extractors/iextractor-service.contracts.d.ts +24 -0
- package/dist/domain/contracts/services/extractors/iextractor-service.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/services/extractors/iextractor-service.contracts.js +2 -0
- package/dist/domain/contracts/services/extractors/iextractor-service.contracts.js.map +1 -0
- package/dist/domain/contracts/services/extractors/index.d.ts +2 -0
- package/dist/domain/contracts/services/extractors/index.d.ts.map +1 -0
- package/dist/domain/contracts/services/extractors/index.js +2 -0
- package/dist/domain/contracts/services/extractors/index.js.map +1 -0
- package/dist/domain/contracts/services/index.d.ts +6 -0
- package/dist/domain/contracts/services/index.d.ts.map +1 -0
- package/dist/domain/contracts/services/index.js +2 -0
- package/dist/domain/contracts/services/index.js.map +1 -0
- package/dist/domain/contracts/services/resiliences/index.d.ts +2 -0
- package/dist/domain/contracts/services/resiliences/index.d.ts.map +1 -0
- package/dist/domain/contracts/services/resiliences/index.js +2 -0
- package/dist/domain/contracts/services/resiliences/index.js.map +1 -0
- package/dist/domain/contracts/services/resiliences/iresilience-service.contracts.d.ts +26 -0
- package/dist/domain/contracts/services/resiliences/iresilience-service.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/services/resiliences/iresilience-service.contracts.js +2 -0
- package/dist/domain/contracts/services/resiliences/iresilience-service.contracts.js.map +1 -0
- package/dist/domain/contracts/services/validators/index.d.ts +2 -0
- package/dist/domain/contracts/services/validators/index.d.ts.map +1 -0
- package/dist/domain/contracts/services/validators/index.js +2 -0
- package/dist/domain/contracts/services/validators/index.js.map +1 -0
- package/dist/domain/contracts/services/validators/ivalidator-service.contracts.d.ts +38 -0
- package/dist/domain/contracts/services/validators/ivalidator-service.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/services/validators/ivalidator-service.contracts.js +2 -0
- package/dist/domain/contracts/services/validators/ivalidator-service.contracts.js.map +1 -0
- package/dist/domain/contracts/specifications/index.d.ts +2 -0
- package/dist/domain/contracts/specifications/index.d.ts.map +1 -0
- package/dist/domain/contracts/specifications/index.js +2 -0
- package/dist/domain/contracts/specifications/index.js.map +1 -0
- package/dist/domain/contracts/specifications/ispecification.contracts.d.ts +58 -0
- package/dist/domain/contracts/specifications/ispecification.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/specifications/ispecification.contracts.js +2 -0
- package/dist/domain/contracts/specifications/ispecification.contracts.js.map +1 -0
- package/dist/domain/contracts/storage/index.d.ts +2 -0
- package/dist/domain/contracts/storage/index.d.ts.map +1 -0
- package/dist/domain/contracts/storage/index.js +2 -0
- package/dist/domain/contracts/storage/index.js.map +1 -0
- package/dist/domain/contracts/storage/istorage.contracts.d.ts +6 -0
- package/dist/domain/contracts/storage/istorage.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/storage/istorage.contracts.js +2 -0
- package/dist/domain/contracts/storage/istorage.contracts.js.map +1 -0
- package/dist/domain/contracts/strategies/index.d.ts +2 -0
- package/dist/domain/contracts/strategies/index.d.ts.map +1 -0
- package/dist/domain/contracts/strategies/index.js +2 -0
- package/dist/domain/contracts/strategies/index.js.map +1 -0
- package/dist/domain/contracts/strategies/istrategy.contracts.d.ts +25 -0
- package/dist/domain/contracts/strategies/istrategy.contracts.d.ts.map +1 -0
- package/dist/domain/contracts/strategies/istrategy.contracts.js +2 -0
- package/dist/domain/contracts/strategies/istrategy.contracts.js.map +1 -0
- package/dist/domain/contracts/transaction/index.d.ts +3 -0
- package/dist/domain/contracts/transaction/index.d.ts.map +1 -0
- package/dist/domain/contracts/transaction/index.js +2 -0
- package/dist/domain/contracts/transaction/index.js.map +1 -0
- package/dist/domain/contracts/transaction/itransaction-state.types.d.ts +44 -0
- package/dist/domain/contracts/transaction/itransaction-state.types.d.ts.map +1 -0
- package/dist/domain/contracts/transaction/itransaction-state.types.js +2 -0
- package/dist/domain/contracts/transaction/itransaction-state.types.js.map +1 -0
- package/dist/domain/contracts/transaction/iunit-of-work.types.d.ts +25 -0
- package/dist/domain/contracts/transaction/iunit-of-work.types.d.ts.map +1 -0
- package/dist/domain/contracts/transaction/iunit-of-work.types.js +2 -0
- package/dist/domain/contracts/transaction/iunit-of-work.types.js.map +1 -0
- package/dist/domain/entities/__tests__/entity.test.d.ts +2 -0
- package/dist/domain/entities/__tests__/entity.test.d.ts.map +1 -0
- package/dist/domain/entities/__tests__/entity.test.js +53 -0
- package/dist/domain/entities/__tests__/entity.test.js.map +1 -0
- package/dist/domain/entities/entity.d.ts +43 -0
- package/dist/domain/entities/entity.d.ts.map +1 -0
- package/dist/domain/entities/entity.js +55 -0
- package/dist/domain/entities/entity.js.map +1 -0
- package/dist/domain/entities/ientity.contracts.d.ts +43 -0
- package/dist/domain/entities/ientity.contracts.d.ts.map +1 -0
- package/dist/domain/entities/ientity.contracts.js +2 -0
- package/dist/domain/entities/ientity.contracts.js.map +1 -0
- package/dist/domain/entities/index.d.ts +3 -0
- package/dist/domain/entities/index.d.ts.map +1 -0
- package/dist/domain/entities/index.js +2 -0
- package/dist/domain/entities/index.js.map +1 -0
- package/dist/domain/errors/__tests__/app-error.test.d.ts +2 -0
- package/dist/domain/errors/__tests__/app-error.test.d.ts.map +1 -0
- package/dist/domain/errors/__tests__/app-error.test.js +94 -0
- package/dist/domain/errors/__tests__/app-error.test.js.map +1 -0
- package/dist/domain/errors/app-error.d.ts +243 -0
- package/dist/domain/errors/app-error.d.ts.map +1 -0
- package/dist/domain/errors/app-error.js +259 -0
- package/dist/domain/errors/app-error.js.map +1 -0
- package/dist/domain/errors/index.d.ts +2 -0
- package/dist/domain/errors/index.d.ts.map +1 -0
- package/dist/domain/errors/index.js +2 -0
- package/dist/domain/errors/index.js.map +1 -0
- package/dist/domain/index.d.ts +8 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +6 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/results/__tests__/result.test.d.ts +2 -0
- package/dist/domain/results/__tests__/result.test.d.ts.map +1 -0
- package/dist/domain/results/__tests__/result.test.js +109 -0
- package/dist/domain/results/__tests__/result.test.js.map +1 -0
- package/dist/domain/results/index.d.ts +3 -0
- package/dist/domain/results/index.d.ts.map +1 -0
- package/dist/domain/results/index.js +2 -0
- package/dist/domain/results/index.js.map +1 -0
- package/dist/domain/results/result.d.ts +125 -0
- package/dist/domain/results/result.d.ts.map +1 -0
- package/dist/domain/results/result.js +144 -0
- package/dist/domain/results/result.js.map +1 -0
- package/dist/domain/results/result.types.d.ts +15 -0
- package/dist/domain/results/result.types.d.ts.map +1 -0
- package/dist/domain/results/result.types.js +2 -0
- package/dist/domain/results/result.types.js.map +1 -0
- package/dist/domain/unique_id/__tests__/unique-id.test.d.ts +2 -0
- package/dist/domain/unique_id/__tests__/unique-id.test.d.ts.map +1 -0
- package/dist/domain/unique_id/__tests__/unique-id.test.js +29 -0
- package/dist/domain/unique_id/__tests__/unique-id.test.js.map +1 -0
- package/dist/domain/unique_id/index.d.ts +2 -0
- package/dist/domain/unique_id/index.d.ts.map +1 -0
- package/dist/domain/unique_id/index.js +2 -0
- package/dist/domain/unique_id/index.js.map +1 -0
- package/dist/domain/unique_id/unique-id.d.ts +72 -0
- package/dist/domain/unique_id/unique-id.d.ts.map +1 -0
- package/dist/domain/unique_id/unique-id.js +87 -0
- package/dist/domain/unique_id/unique-id.js.map +1 -0
- package/dist/domain/value_objects/__tests__/value-object.test.d.ts +2 -0
- package/dist/domain/value_objects/__tests__/value-object.test.d.ts.map +1 -0
- package/dist/domain/value_objects/__tests__/value-object.test.js +43 -0
- package/dist/domain/value_objects/__tests__/value-object.test.js.map +1 -0
- package/dist/domain/value_objects/index.d.ts +3 -0
- package/dist/domain/value_objects/index.d.ts.map +1 -0
- package/dist/domain/value_objects/index.js +2 -0
- package/dist/domain/value_objects/index.js.map +1 -0
- package/dist/domain/value_objects/ivalue-object.contracts.d.ts +46 -0
- package/dist/domain/value_objects/ivalue-object.contracts.d.ts.map +1 -0
- package/dist/domain/value_objects/ivalue-object.contracts.js +2 -0
- package/dist/domain/value_objects/ivalue-object.contracts.js.map +1 -0
- package/dist/domain/value_objects/value-object.d.ts +26 -0
- package/dist/domain/value_objects/value-object.d.ts.map +1 -0
- package/dist/domain/value_objects/value-object.js +37 -0
- package/dist/domain/value_objects/value-object.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/infrastructure/auth/__tests__/supabase-auth.service.test.d.ts +2 -0
- package/dist/infrastructure/auth/__tests__/supabase-auth.service.test.d.ts.map +1 -0
- package/dist/infrastructure/auth/__tests__/supabase-auth.service.test.js +128 -0
- package/dist/infrastructure/auth/__tests__/supabase-auth.service.test.js.map +1 -0
- package/dist/infrastructure/auth/index.d.ts +3 -0
- package/dist/infrastructure/auth/index.d.ts.map +1 -0
- package/dist/infrastructure/auth/index.js +3 -0
- package/dist/infrastructure/auth/index.js.map +1 -0
- package/dist/infrastructure/auth/storage/cookie.storage.d.ts +4 -0
- package/dist/infrastructure/auth/storage/cookie.storage.d.ts.map +1 -0
- package/dist/infrastructure/auth/storage/cookie.storage.js +31 -0
- package/dist/infrastructure/auth/storage/cookie.storage.js.map +1 -0
- package/dist/infrastructure/auth/storage/index.d.ts +4 -0
- package/dist/infrastructure/auth/storage/index.d.ts.map +1 -0
- package/dist/infrastructure/auth/storage/index.js +4 -0
- package/dist/infrastructure/auth/storage/index.js.map +1 -0
- package/dist/infrastructure/auth/storage/memory.storage.d.ts +3 -0
- package/dist/infrastructure/auth/storage/memory.storage.d.ts.map +1 -0
- package/dist/infrastructure/auth/storage/memory.storage.js +14 -0
- package/dist/infrastructure/auth/storage/memory.storage.js.map +1 -0
- package/dist/infrastructure/auth/storage/storage.utils.d.ts +10 -0
- package/dist/infrastructure/auth/storage/storage.utils.d.ts.map +1 -0
- package/dist/infrastructure/auth/storage/storage.utils.js +22 -0
- package/dist/infrastructure/auth/storage/storage.utils.js.map +1 -0
- package/dist/infrastructure/auth/supabase-auth.service.d.ts +31 -0
- package/dist/infrastructure/auth/supabase-auth.service.d.ts.map +1 -0
- package/dist/infrastructure/auth/supabase-auth.service.js +90 -0
- package/dist/infrastructure/auth/supabase-auth.service.js.map +1 -0
- package/dist/infrastructure/cache/__tests__/in-memory.cache.test.d.ts +2 -0
- package/dist/infrastructure/cache/__tests__/in-memory.cache.test.d.ts.map +1 -0
- package/dist/infrastructure/cache/__tests__/in-memory.cache.test.js +69 -0
- package/dist/infrastructure/cache/__tests__/in-memory.cache.test.js.map +1 -0
- package/dist/infrastructure/cache/in-memory.cache.d.ts +34 -0
- package/dist/infrastructure/cache/in-memory.cache.d.ts.map +1 -0
- package/dist/infrastructure/cache/in-memory.cache.js +66 -0
- package/dist/infrastructure/cache/in-memory.cache.js.map +1 -0
- package/dist/infrastructure/cache/index.d.ts +3 -0
- package/dist/infrastructure/cache/index.d.ts.map +1 -0
- package/dist/infrastructure/cache/index.js +3 -0
- package/dist/infrastructure/cache/index.js.map +1 -0
- package/dist/infrastructure/cache/key-builder.cache.d.ts +25 -0
- package/dist/infrastructure/cache/key-builder.cache.d.ts.map +1 -0
- package/dist/infrastructure/cache/key-builder.cache.js +39 -0
- package/dist/infrastructure/cache/key-builder.cache.js.map +1 -0
- package/dist/infrastructure/datasources/__tests__/remote.datasource.test.d.ts +2 -0
- package/dist/infrastructure/datasources/__tests__/remote.datasource.test.d.ts.map +1 -0
- package/dist/infrastructure/datasources/__tests__/remote.datasource.test.js +176 -0
- package/dist/infrastructure/datasources/__tests__/remote.datasource.test.js.map +1 -0
- package/dist/infrastructure/datasources/index.d.ts +2 -0
- package/dist/infrastructure/datasources/index.d.ts.map +1 -0
- package/dist/infrastructure/datasources/index.js +2 -0
- package/dist/infrastructure/datasources/index.js.map +1 -0
- package/dist/infrastructure/datasources/remote.datasource.d.ts +43 -0
- package/dist/infrastructure/datasources/remote.datasource.d.ts.map +1 -0
- package/dist/infrastructure/datasources/remote.datasource.js +111 -0
- package/dist/infrastructure/datasources/remote.datasource.js.map +1 -0
- package/dist/infrastructure/factories/axios.factory.d.ts +15 -0
- package/dist/infrastructure/factories/axios.factory.d.ts.map +1 -0
- package/dist/infrastructure/factories/axios.factory.js +26 -0
- package/dist/infrastructure/factories/axios.factory.js.map +1 -0
- package/dist/infrastructure/factories/cockatiel-resilience.factory.d.ts +16 -0
- package/dist/infrastructure/factories/cockatiel-resilience.factory.d.ts.map +1 -0
- package/dist/infrastructure/factories/cockatiel-resilience.factory.js +114 -0
- package/dist/infrastructure/factories/cockatiel-resilience.factory.js.map +1 -0
- package/dist/infrastructure/factories/index.d.ts +2 -0
- package/dist/infrastructure/factories/index.d.ts.map +1 -0
- package/dist/infrastructure/factories/index.js +2 -0
- package/dist/infrastructure/factories/index.js.map +1 -0
- package/dist/infrastructure/http/__tests__/axios.http.test.d.ts +2 -0
- package/dist/infrastructure/http/__tests__/axios.http.test.d.ts.map +1 -0
- package/dist/infrastructure/http/__tests__/axios.http.test.js +196 -0
- package/dist/infrastructure/http/__tests__/axios.http.test.js.map +1 -0
- package/dist/infrastructure/http/allow-origin.http.d.ts +8 -0
- package/dist/infrastructure/http/allow-origin.http.d.ts.map +1 -0
- package/dist/infrastructure/http/allow-origin.http.js +13 -0
- package/dist/infrastructure/http/allow-origin.http.js.map +1 -0
- package/dist/infrastructure/http/axios.http.d.ts +17 -0
- package/dist/infrastructure/http/axios.http.d.ts.map +1 -0
- package/dist/infrastructure/http/axios.http.js +89 -0
- package/dist/infrastructure/http/axios.http.js.map +1 -0
- package/dist/infrastructure/http/index.d.ts +2 -0
- package/dist/infrastructure/http/index.d.ts.map +1 -0
- package/dist/infrastructure/http/index.js +2 -0
- package/dist/infrastructure/http/index.js.map +1 -0
- package/dist/infrastructure/index.d.ts +7 -0
- package/dist/infrastructure/index.d.ts.map +1 -0
- package/dist/infrastructure/index.js +7 -0
- package/dist/infrastructure/index.js.map +1 -0
- package/dist/infrastructure/mappers/index.d.ts +3 -0
- package/dist/infrastructure/mappers/index.d.ts.map +1 -0
- package/dist/infrastructure/mappers/index.js +3 -0
- package/dist/infrastructure/mappers/index.js.map +1 -0
- package/dist/infrastructure/mappers/supabase-claims.mapper.d.ts +15 -0
- package/dist/infrastructure/mappers/supabase-claims.mapper.d.ts.map +1 -0
- package/dist/infrastructure/mappers/supabase-claims.mapper.js +30 -0
- package/dist/infrastructure/mappers/supabase-claims.mapper.js.map +1 -0
- package/dist/infrastructure/mappers/supabase-session.mapper.d.ts +8 -0
- package/dist/infrastructure/mappers/supabase-session.mapper.d.ts.map +1 -0
- package/dist/infrastructure/mappers/supabase-session.mapper.js +16 -0
- package/dist/infrastructure/mappers/supabase-session.mapper.js.map +1 -0
- package/dist/infrastructure/resiliences/__tests__/resilience.service.test.d.ts +2 -0
- package/dist/infrastructure/resiliences/__tests__/resilience.service.test.d.ts.map +1 -0
- package/dist/infrastructure/resiliences/__tests__/resilience.service.test.js +47 -0
- package/dist/infrastructure/resiliences/__tests__/resilience.service.test.js.map +1 -0
- package/dist/infrastructure/resiliences/index.d.ts +2 -0
- package/dist/infrastructure/resiliences/index.d.ts.map +1 -0
- package/dist/infrastructure/resiliences/index.js +2 -0
- package/dist/infrastructure/resiliences/index.js.map +1 -0
- package/dist/infrastructure/resiliences/resilience.service.d.ts +18 -0
- package/dist/infrastructure/resiliences/resilience.service.d.ts.map +1 -0
- package/dist/infrastructure/resiliences/resilience.service.js +21 -0
- package/dist/infrastructure/resiliences/resilience.service.js.map +1 -0
- package/dist/infrastructure/validators/__tests__/schema-zod.utils.test.d.ts +2 -0
- package/dist/infrastructure/validators/__tests__/schema-zod.utils.test.d.ts.map +1 -0
- package/dist/infrastructure/validators/__tests__/schema-zod.utils.test.js +68 -0
- package/dist/infrastructure/validators/__tests__/schema-zod.utils.test.js.map +1 -0
- package/dist/infrastructure/validators/__tests__/zod.validator.test.d.ts +2 -0
- package/dist/infrastructure/validators/__tests__/zod.validator.test.d.ts.map +1 -0
- package/dist/infrastructure/validators/__tests__/zod.validator.test.js +72 -0
- package/dist/infrastructure/validators/__tests__/zod.validator.test.js.map +1 -0
- package/dist/infrastructure/validators/base-schema.constant.d.ts +30 -0
- package/dist/infrastructure/validators/base-schema.constant.d.ts.map +1 -0
- package/dist/infrastructure/validators/base-schema.constant.js +41 -0
- package/dist/infrastructure/validators/base-schema.constant.js.map +1 -0
- package/dist/infrastructure/validators/constants/zod.constant.d.ts +24 -0
- package/dist/infrastructure/validators/constants/zod.constant.d.ts.map +1 -0
- package/dist/infrastructure/validators/constants/zod.constant.js +23 -0
- package/dist/infrastructure/validators/constants/zod.constant.js.map +1 -0
- package/dist/infrastructure/validators/index.d.ts +3 -0
- package/dist/infrastructure/validators/index.d.ts.map +1 -0
- package/dist/infrastructure/validators/index.js +3 -0
- package/dist/infrastructure/validators/index.js.map +1 -0
- package/dist/infrastructure/validators/schema-zod.utils.d.ts +27 -0
- package/dist/infrastructure/validators/schema-zod.utils.d.ts.map +1 -0
- package/dist/infrastructure/validators/schema-zod.utils.js +27 -0
- package/dist/infrastructure/validators/schema-zod.utils.js.map +1 -0
- package/dist/infrastructure/validators/zod.validator.d.ts +31 -0
- package/dist/infrastructure/validators/zod.validator.d.ts.map +1 -0
- package/dist/infrastructure/validators/zod.validator.js +53 -0
- package/dist/infrastructure/validators/zod.validator.js.map +1 -0
- package/dist/shared/constants/concurrency.constants.d.ts +42 -0
- package/dist/shared/constants/concurrency.constants.d.ts.map +1 -0
- package/dist/shared/constants/concurrency.constants.js +42 -0
- package/dist/shared/constants/concurrency.constants.js.map +1 -0
- package/dist/shared/constants/error.constants.d.ts +272 -0
- package/dist/shared/constants/error.constants.d.ts.map +1 -0
- package/dist/shared/constants/error.constants.js +278 -0
- package/dist/shared/constants/error.constants.js.map +1 -0
- package/dist/shared/constants/guest.constants.d.ts +52 -0
- package/dist/shared/constants/guest.constants.d.ts.map +1 -0
- package/dist/shared/constants/guest.constants.js +53 -0
- package/dist/shared/constants/guest.constants.js.map +1 -0
- package/dist/shared/constants/idempotency.constants.d.ts +72 -0
- package/dist/shared/constants/idempotency.constants.d.ts.map +1 -0
- package/dist/shared/constants/idempotency.constants.js +72 -0
- package/dist/shared/constants/idempotency.constants.js.map +1 -0
- package/dist/shared/constants/index.d.ts +11 -0
- package/dist/shared/constants/index.d.ts.map +1 -0
- package/dist/shared/constants/index.js +11 -0
- package/dist/shared/constants/index.js.map +1 -0
- package/dist/shared/constants/log-level.constants.d.ts +64 -0
- package/dist/shared/constants/log-level.constants.d.ts.map +1 -0
- package/dist/shared/constants/log-level.constants.js +89 -0
- package/dist/shared/constants/log-level.constants.js.map +1 -0
- package/dist/shared/constants/pagination.constants.d.ts +70 -0
- package/dist/shared/constants/pagination.constants.d.ts.map +1 -0
- package/dist/shared/constants/pagination.constants.js +88 -0
- package/dist/shared/constants/pagination.constants.js.map +1 -0
- package/dist/shared/constants/request.constants.d.ts +34 -0
- package/dist/shared/constants/request.constants.d.ts.map +1 -0
- package/dist/shared/constants/request.constants.js +26 -0
- package/dist/shared/constants/request.constants.js.map +1 -0
- package/dist/shared/constants/resilience.constants.d.ts +89 -0
- package/dist/shared/constants/resilience.constants.d.ts.map +1 -0
- package/dist/shared/constants/resilience.constants.js +89 -0
- package/dist/shared/constants/resilience.constants.js.map +1 -0
- package/dist/shared/constants/roles.constants.d.ts +84 -0
- package/dist/shared/constants/roles.constants.d.ts.map +1 -0
- package/dist/shared/constants/roles.constants.js +68 -0
- package/dist/shared/constants/roles.constants.js.map +1 -0
- package/dist/shared/constants/tokens.constants.d.ts +373 -0
- package/dist/shared/constants/tokens.constants.d.ts.map +1 -0
- package/dist/shared/constants/tokens.constants.js +373 -0
- package/dist/shared/constants/tokens.constants.js.map +1 -0
- package/dist/shared/index.d.ts +4 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +3 -0
- package/dist/shared/index.js.map +1 -0
- package/dist/shared/types/api-response.types.d.ts +185 -0
- package/dist/shared/types/api-response.types.d.ts.map +1 -0
- package/dist/shared/types/api-response.types.js +2 -0
- package/dist/shared/types/api-response.types.js.map +1 -0
- package/dist/shared/types/auth-policy.types.d.ts +48 -0
- package/dist/shared/types/auth-policy.types.d.ts.map +1 -0
- package/dist/shared/types/auth-policy.types.js +2 -0
- package/dist/shared/types/auth-policy.types.js.map +1 -0
- package/dist/shared/types/auth.types.d.ts +106 -0
- package/dist/shared/types/auth.types.d.ts.map +1 -0
- package/dist/shared/types/auth.types.js +2 -0
- package/dist/shared/types/auth.types.js.map +1 -0
- package/dist/shared/types/cache.types.d.ts +64 -0
- package/dist/shared/types/cache.types.d.ts.map +1 -0
- package/dist/shared/types/cache.types.js +2 -0
- package/dist/shared/types/cache.types.js.map +1 -0
- package/dist/shared/types/common.types.d.ts +213 -0
- package/dist/shared/types/common.types.d.ts.map +1 -0
- package/dist/shared/types/common.types.js +3 -0
- package/dist/shared/types/common.types.js.map +1 -0
- package/dist/shared/types/http.types.d.ts +188 -0
- package/dist/shared/types/http.types.d.ts.map +1 -0
- package/dist/shared/types/http.types.js +2 -0
- package/dist/shared/types/http.types.js.map +1 -0
- package/dist/shared/types/index.d.ts +10 -0
- package/dist/shared/types/index.d.ts.map +1 -0
- package/dist/shared/types/index.js +2 -0
- package/dist/shared/types/index.js.map +1 -0
- package/dist/shared/types/injection-token.types.d.ts +38 -0
- package/dist/shared/types/injection-token.types.d.ts.map +1 -0
- package/dist/shared/types/injection-token.types.js +2 -0
- package/dist/shared/types/injection-token.types.js.map +1 -0
- package/dist/shared/types/metadata.types.d.ts +150 -0
- package/dist/shared/types/metadata.types.d.ts.map +1 -0
- package/dist/shared/types/metadata.types.js +2 -0
- package/dist/shared/types/metadata.types.js.map +1 -0
- package/dist/shared/types/pagination.types.d.ts +88 -0
- package/dist/shared/types/pagination.types.d.ts.map +1 -0
- package/dist/shared/types/pagination.types.js +3 -0
- package/dist/shared/types/pagination.types.js.map +1 -0
- package/dist/shared/utils/__tests__/date.utils.test.d.ts +2 -0
- package/dist/shared/utils/__tests__/date.utils.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/date.utils.test.js +97 -0
- package/dist/shared/utils/__tests__/date.utils.test.js.map +1 -0
- package/dist/shared/utils/__tests__/guards.utils.test.d.ts +2 -0
- package/dist/shared/utils/__tests__/guards.utils.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/guards.utils.test.js +324 -0
- package/dist/shared/utils/__tests__/guards.utils.test.js.map +1 -0
- package/dist/shared/utils/__tests__/guid.utils.test.d.ts +2 -0
- package/dist/shared/utils/__tests__/guid.utils.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/guid.utils.test.js +97 -0
- package/dist/shared/utils/__tests__/guid.utils.test.js.map +1 -0
- package/dist/shared/utils/__tests__/http.utils.test.d.ts +2 -0
- package/dist/shared/utils/__tests__/http.utils.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/http.utils.test.js +230 -0
- package/dist/shared/utils/__tests__/http.utils.test.js.map +1 -0
- package/dist/shared/utils/__tests__/math.utils.test.d.ts +2 -0
- package/dist/shared/utils/__tests__/math.utils.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/math.utils.test.js +93 -0
- package/dist/shared/utils/__tests__/math.utils.test.js.map +1 -0
- package/dist/shared/utils/__tests__/promise.utils.test.d.ts +2 -0
- package/dist/shared/utils/__tests__/promise.utils.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/promise.utils.test.js +101 -0
- package/dist/shared/utils/__tests__/promise.utils.test.js.map +1 -0
- package/dist/shared/utils/__tests__/string.utils.test.d.ts +2 -0
- package/dist/shared/utils/__tests__/string.utils.test.d.ts.map +1 -0
- package/dist/shared/utils/__tests__/string.utils.test.js +153 -0
- package/dist/shared/utils/__tests__/string.utils.test.js.map +1 -0
- package/dist/shared/utils/abort.utils.d.ts +34 -0
- package/dist/shared/utils/abort.utils.d.ts.map +1 -0
- package/dist/shared/utils/abort.utils.js +55 -0
- package/dist/shared/utils/abort.utils.js.map +1 -0
- package/dist/shared/utils/date.utils.d.ts +75 -0
- package/dist/shared/utils/date.utils.d.ts.map +1 -0
- package/dist/shared/utils/date.utils.js +88 -0
- package/dist/shared/utils/date.utils.js.map +1 -0
- package/dist/shared/utils/enumerable.utils.d.ts +43 -0
- package/dist/shared/utils/enumerable.utils.d.ts.map +1 -0
- package/dist/shared/utils/enumerable.utils.js +52 -0
- package/dist/shared/utils/enumerable.utils.js.map +1 -0
- package/dist/shared/utils/guards.utils.d.ts +245 -0
- package/dist/shared/utils/guards.utils.d.ts.map +1 -0
- package/dist/shared/utils/guards.utils.js +308 -0
- package/dist/shared/utils/guards.utils.js.map +1 -0
- package/dist/shared/utils/guid.utils.d.ts +73 -0
- package/dist/shared/utils/guid.utils.d.ts.map +1 -0
- package/dist/shared/utils/guid.utils.js +89 -0
- package/dist/shared/utils/guid.utils.js.map +1 -0
- package/dist/shared/utils/http.utils.d.ts +75 -0
- package/dist/shared/utils/http.utils.d.ts.map +1 -0
- package/dist/shared/utils/http.utils.js +144 -0
- package/dist/shared/utils/http.utils.js.map +1 -0
- package/dist/shared/utils/index.d.ts +11 -0
- package/dist/shared/utils/index.d.ts.map +1 -0
- package/dist/shared/utils/index.js +11 -0
- package/dist/shared/utils/index.js.map +1 -0
- package/dist/shared/utils/math.utils.d.ts +79 -0
- package/dist/shared/utils/math.utils.d.ts.map +1 -0
- package/dist/shared/utils/math.utils.js +97 -0
- package/dist/shared/utils/math.utils.js.map +1 -0
- package/dist/shared/utils/promise.utils.d.ts +40 -0
- package/dist/shared/utils/promise.utils.d.ts.map +1 -0
- package/dist/shared/utils/promise.utils.js +45 -0
- package/dist/shared/utils/promise.utils.js.map +1 -0
- package/dist/shared/utils/sanitize.utils.d.ts +39 -0
- package/dist/shared/utils/sanitize.utils.d.ts.map +1 -0
- package/dist/shared/utils/sanitize.utils.js +67 -0
- package/dist/shared/utils/sanitize.utils.js.map +1 -0
- package/dist/shared/utils/string.utils.d.ts +102 -0
- package/dist/shared/utils/string.utils.d.ts.map +1 -0
- package/dist/shared/utils/string.utils.js +157 -0
- package/dist/shared/utils/string.utils.js.map +1 -0
- package/package.json +111 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
ISC License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Xeno
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
7
|
+
copyright notice and this permission notice appear in all copies.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
10
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
11
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
12
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
13
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
14
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
15
|
+
PERFORMANCE OF THIS SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<img src="logo/logo.png" alt="Xeno Shared Logo" width="140" />
|
|
3
|
+
|
|
4
|
+
<h1>Xeno Shared</h1>
|
|
5
|
+
|
|
6
|
+
<p><em>Enterprise-grade primitive types, constants, and utilities for the Xeno ecosystem</em></p>
|
|
7
|
+
|
|
8
|
+
<p>
|
|
9
|
+
<a href="https://github.com/xeno-js/xeno-js">
|
|
10
|
+
<img src="https://img.shields.io/badge/Powered%20by-Xeno-blueviolet?style=flat-square" alt="Powered by Xeno" />
|
|
11
|
+
</a>
|
|
12
|
+
<a href="https://github.com/xeno-js/xeno-shared/blob/main/LICENSE">
|
|
13
|
+
<img src="https://img.shields.io/npm/l/@xeno-js/shared?style=flat-square" alt="License: ISC" />
|
|
14
|
+
</a>
|
|
15
|
+
<a href="https://www.npmjs.com/package/@xeno-js/shared">
|
|
16
|
+
<img src="https://img.shields.io/npm/v/@xeno-js/shared?style=flat-square" alt="NPM Version" />
|
|
17
|
+
</a>
|
|
18
|
+
<a href="https://buymeacoffee.com/xenojs">
|
|
19
|
+
<img src="https://img.shields.io/badge/Buy%20Me%20A%20Coffee-Support-FFdd00?style=flat-square&logo=buy-me-a-coffee&logoColor=black" alt="Buy Me A Coffee" />
|
|
20
|
+
</a>
|
|
21
|
+
</p>
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## What is Xeno Shared?
|
|
27
|
+
|
|
28
|
+
**Xeno Shared** (`@xeno-js/shared`) is the foundational package for the entire
|
|
29
|
+
Xeno framework ecosystem. It acts as the core dependency bridging both the
|
|
30
|
+
backend (`@xeno-js/core`) and frontend (`@xeno-js/vue`) implementations.
|
|
31
|
+
|
|
32
|
+
This package is meticulously designed to provide zero-dependency (where
|
|
33
|
+
possible), highly optimized primitives, enforcing structural consistency, type
|
|
34
|
+
safety, and architectural boundaries across all Xeno modules. It guarantees that
|
|
35
|
+
constants, interfaces, and utilities behave identically whether executed in a
|
|
36
|
+
Node.js server or a browser environment.
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 💡 Key Features & Offerings
|
|
41
|
+
|
|
42
|
+
- **Universal Type Definitions**: Centralizes critical `TypeScript` interfaces
|
|
43
|
+
and types (`ResponseDto`, `IPaginatedResult`, `ICommand`, `IQuery`,
|
|
44
|
+
`InjectionToken`) to ensure a unified contract between the client and server.
|
|
45
|
+
- **Agnostic Constants**: Exports canonical constants (`STATUS_CODES`,
|
|
46
|
+
`ERROR_CODES`, `LOG_LEVEL`, `REQUEST_TYPE`) preventing magic strings/numbers
|
|
47
|
+
and maintaining unified semantics across the infrastructure.
|
|
48
|
+
- **Validation & Guards**: Provides the `Guards` utility object for robust,
|
|
49
|
+
zero-magic runtime type checking and validation (e.g., `isDefined`,
|
|
50
|
+
`isNullOrEmpty`, `isDate`).
|
|
51
|
+
- **Resiliency & Async Utilities**: Includes `PromiseHelper` for advanced async
|
|
52
|
+
timing logic (delays, jitter for mitigating thundering herds) and constants
|
|
53
|
+
for `Cockatiel` resilience policies (`RESILIENCE_DEFAULTS`).
|
|
54
|
+
- **Security Primitives**: Features `SanitizeHelper` to enforce OWASP guidelines
|
|
55
|
+
against Log Injection (CWE-117) and unsafe URIs.
|
|
56
|
+
- **Shared Infrastructural Adapters**: Includes base infrastructural classes and
|
|
57
|
+
mappers (e.g., `ReadDao`, `Repository`, `ConsoleLogger`, `AxiosHttpClient`,
|
|
58
|
+
`SupabaseClaimsMapper`) allowing downstream packages to extend them.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## 📦 Installation
|
|
63
|
+
|
|
64
|
+
This package is typically installed automatically as a dependency of
|
|
65
|
+
`@xeno-js/core` or `@xeno-js/vue`. If you need to install it directly for shared
|
|
66
|
+
domain logic in a monorepo:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
npm install @xeno-js/shared
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Xeno uses **Optional Peer Dependencies**. You only install the external
|
|
74
|
+
libraries you actually need.
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Example: Install tools only if you enable them
|
|
78
|
+
npm install axios cockatiel zod @supabase/supabase-js
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## 📖 Core Usage Examples
|
|
85
|
+
|
|
86
|
+
### 1. Unified API Responses
|
|
87
|
+
|
|
88
|
+
Use `HttpHelper` to generate standardized success and error payloads.
|
|
89
|
+
|
|
90
|
+
```typescript
|
|
91
|
+
import { HttpHelper, STATUS_CODES, ERROR_CODES } from '@xeno-js/shared'
|
|
92
|
+
|
|
93
|
+
// Success Response
|
|
94
|
+
const response = HttpHelper.success(
|
|
95
|
+
{ id: 1, name: 'Xeno' },
|
|
96
|
+
STATUS_CODES.CREATED,
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
// Error Response
|
|
100
|
+
const errorResponse = HttpHelper.error(
|
|
101
|
+
{
|
|
102
|
+
success: false,
|
|
103
|
+
error: {
|
|
104
|
+
code: ERROR_CODES.VALIDATION_FAILED,
|
|
105
|
+
message: 'Invalid input provided',
|
|
106
|
+
},
|
|
107
|
+
correlationId: '...',
|
|
108
|
+
requestId: '...',
|
|
109
|
+
spanId: '...',
|
|
110
|
+
timestamp: new Date().toISOString(),
|
|
111
|
+
},
|
|
112
|
+
STATUS_CODES.BAD_REQUEST,
|
|
113
|
+
)
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### 2. Runtime Type Guards
|
|
117
|
+
|
|
118
|
+
Use the `Guards` namespace to ensure bulletproof runtime checks.
|
|
119
|
+
|
|
120
|
+
```typescript
|
|
121
|
+
import { Guards } from '@xeno-js/shared'
|
|
122
|
+
|
|
123
|
+
function processData(payload: unknown) {
|
|
124
|
+
if (Guards.isNullOrEmpty(payload)) {
|
|
125
|
+
throw new Error('Payload cannot be empty')
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
if (Guards.isString(payload)) {
|
|
129
|
+
console.log(payload.toUpperCase())
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### 3. Asynchronous Jitter
|
|
135
|
+
|
|
136
|
+
Use `PromiseHelper` to stagger requests and avoid network congestion.
|
|
137
|
+
|
|
138
|
+
```typescript
|
|
139
|
+
import { PromiseHelper } from '@xeno-js/shared'
|
|
140
|
+
|
|
141
|
+
async function fetchWithRetry() {
|
|
142
|
+
const BASE_DELAY = 100
|
|
143
|
+
const MAX_JITTER = 50
|
|
144
|
+
|
|
145
|
+
// Wait for 100ms + a random value up to 50ms
|
|
146
|
+
await PromiseHelper.delayWithJitter(BASE_DELAY, MAX_JITTER)
|
|
147
|
+
return performNetworkCall()
|
|
148
|
+
}
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## 🤝 For Contributors
|
|
154
|
+
|
|
155
|
+
We welcome contributions to Xeno! To maintain the highest code quality and
|
|
156
|
+
stability of the core framework, **direct pushes to the `main` and `develop`
|
|
157
|
+
branches are strictly prohibited.** Please follow this Git Flow to contribute:
|
|
158
|
+
|
|
159
|
+
1. **Branch off from `develop**`: Create a new branch for your feature or
|
|
160
|
+
bugfix.
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
git checkout develop
|
|
164
|
+
git pull origin develop
|
|
165
|
+
git checkout -b feat/your-awesome-feature
|
|
166
|
+
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
2. **Make your changes**: Write your code and ensure it passes all local checks
|
|
170
|
+
(linting, types, and tests).
|
|
171
|
+
|
|
172
|
+
```bash
|
|
173
|
+
npm run check
|
|
174
|
+
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
3. **Commit your changes**: We enforce
|
|
178
|
+
[Conventional Commits](https://www.conventionalcommits.org/?utm_source=gemini).
|
|
179
|
+
Husky will verify your commit message format.
|
|
180
|
+
|
|
181
|
+
4. **Commit Format:**
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
feat(scope): add new feature
|
|
185
|
+
fix(scope): resolve bug
|
|
186
|
+
chore(scope): update dependencies
|
|
187
|
+
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
5. **Submit a Pull Request (PR)**: Push your branch to GitHub and open a Pull
|
|
191
|
+
Request targeting the **`develop`** branch.
|
|
192
|
+
6. **Review**: The repository owner will review your code, run pipeline tests,
|
|
193
|
+
and merge it into `develop`.
|
|
194
|
+
|
|
195
|
+
_Note: The `main` branch is strictly reserved for production releases. Code
|
|
196
|
+
flows from feature branches ➡️ `develop` ➡️ `main`._
|
|
197
|
+
|
|
198
|
+
### Scripts
|
|
199
|
+
|
|
200
|
+
| Command | Description |
|
|
201
|
+
| ------------------- | -------------------------------------------------- |
|
|
202
|
+
| `npm run build` | Builds the TypeScript source code into `dist/`<br> |
|
|
203
|
+
| `npm run typecheck` | Checks types without emitting files |
|
|
204
|
+
|
|
205
|
+
| | `npm run lint` | Runs ESLint
|
|
206
|
+
|
|
207
|
+
| | `npm run format` | Formats code with Prettier
|
|
208
|
+
|
|
209
|
+
| | `npm run test` | Runs the Vitest test suite
|
|
210
|
+
|
|
211
|
+
| | `npm run test:coverage` | Runs tests and generates a coverage report
|
|
212
|
+
|
|
213
|
+
|
|
|
214
|
+
|
|
215
|
+
### Code Quality (Husky & Git Hooks)
|
|
216
|
+
|
|
217
|
+
This project strictly enforces code quality rules before pushing to the
|
|
218
|
+
repository:
|
|
219
|
+
|
|
220
|
+
- **`pre-commit`**: Runs `lint-staged` on staged files (ESLint + Prettier).
|
|
221
|
+
|
|
222
|
+
- **`commit-msg`**: Checks commit messages with `commitlint` (we use
|
|
223
|
+
Conventional Commits).
|
|
224
|
+
|
|
225
|
+
- **`pre-push`**: Runs type checking, linting, and testing before code leaves
|
|
226
|
+
your machine.
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## 🌱 Support & Appreciation
|
|
231
|
+
|
|
232
|
+
Building, benchmarking, and maintaining a progressive, enterprise-ready
|
|
233
|
+
open-source framework requires a massive amount of continuous dedication and
|
|
234
|
+
architectural engineering.
|
|
235
|
+
|
|
236
|
+
If Xeno has brought value to your development workflows, helped decouple your
|
|
237
|
+
core business logic, or simplified your system infrastructure layout, consider
|
|
238
|
+
supporting its open-source lifecycle. Your backing directly accelerates our
|
|
239
|
+
strategic roadmap.
|
|
240
|
+
|
|
241
|
+
**[Read our support guidelines and find out how to help](https://www.xeno-js.it/support-us)**
|
|
242
|
+
|
|
243
|
+
Thank you for being part of this decoupled open-source journey!
|
|
244
|
+
|
|
245
|
+
<amp-bounce>
|
|
246
|
+
</amp-bounce>
|
|
247
|
+
<a href="https://www.buymeacoffee.com/xenojs" target="_blank">
|
|
248
|
+
<img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" height="42" style="height: 42px !important;" />
|
|
249
|
+
</a>
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## 🛡️ Powered by Xeno
|
|
254
|
+
|
|
255
|
+
If you are using Xeno in your project, let the world know! Add this badge to
|
|
256
|
+
your README:
|
|
257
|
+
|
|
258
|
+
```html
|
|
259
|
+
<a
|
|
260
|
+
href="[https://github.com/xeno-js/xeno-js](https://github.com/xeno-js/xeno-js)"
|
|
261
|
+
target="_blank"
|
|
262
|
+
>
|
|
263
|
+
<img
|
|
264
|
+
src="[https://img.shields.io/badge/Powered%20by-Xeno-black?style=flat-square](https://img.shields.io/badge/Powered%20by-Xeno-black?style=flat-square)"
|
|
265
|
+
alt="Powered by Xeno"
|
|
266
|
+
height="20"
|
|
267
|
+
/>
|
|
268
|
+
</a>
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
## 📄 License
|
|
272
|
+
|
|
273
|
+
Copyright (c) 2026 Xeno. Licensed under the
|
|
274
|
+
[ISC License](https://www.google.com/search?q=LICENSE&utm_source=gemini).
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ICommand } from '../../../domain';
|
|
2
|
+
import type { RequestType } from '../../../shared';
|
|
3
|
+
export declare abstract class Command<TResponse = unknown> implements ICommand<TResponse> {
|
|
4
|
+
readonly intent: string;
|
|
5
|
+
readonly type: RequestType;
|
|
6
|
+
constructor(intent: string);
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/application/cqrs/command/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAG3C,8BAAsB,OAAO,CAAC,SAAS,GAAG,OAAO,CAAE,YAAW,QAAQ,CAAC,SAAS,CAAC;IAGnE,QAAQ,CAAC,MAAM,EAAE,MAAM;IAFnC,SAAgB,IAAI,EAAE,WAAW,CAAuB;gBAEnC,MAAM,EAAE,MAAM;CACpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../../../src/application/cqrs/command/command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,OAAgB,OAAO;IAGN;IAFL,IAAI,GAAgB,YAAY,CAAC,OAAO,CAAA;IAExD,YAAqB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;CACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/application/cqrs/command/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/application/cqrs/command/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/application/cqrs/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/application/cqrs/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/application/cqrs/query/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/application/cqrs/query/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IQuery } from '../../../domain';
|
|
2
|
+
import type { ICacheableOptions, RequestType } from '../../../shared';
|
|
3
|
+
export declare abstract class Query<TResponse = unknown> implements IQuery<TResponse> {
|
|
4
|
+
readonly intent: string;
|
|
5
|
+
readonly cacheOptions: ICacheableOptions;
|
|
6
|
+
readonly type: RequestType;
|
|
7
|
+
constructor(intent: string, cacheOptions: ICacheableOptions);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/application/cqrs/query/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAG9D,8BAAsB,KAAK,CAAC,SAAS,GAAG,OAAO,CAAE,YAAW,MAAM,CAAC,SAAS,CAAC;IAIzE,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,YAAY,EAAE,iBAAiB;IAJ1C,SAAgB,IAAI,EAAE,WAAW,CAAqB;gBAG3C,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,iBAAiB;CAE3C"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { REQUEST_TYPE } from '../../../shared';
|
|
2
|
+
export class Query {
|
|
3
|
+
intent;
|
|
4
|
+
cacheOptions;
|
|
5
|
+
type = REQUEST_TYPE.QUERY;
|
|
6
|
+
constructor(intent, cacheOptions) {
|
|
7
|
+
this.intent = intent;
|
|
8
|
+
this.cacheOptions = cacheOptions;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../src/application/cqrs/query/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,OAAgB,KAAK;IAId;IACA;IAJK,IAAI,GAAgB,YAAY,CAAC,KAAK,CAAA;IAEtD,YACW,MAAc,EACd,YAA+B;QAD/B,WAAM,GAAN,MAAM,CAAQ;QACd,iBAAY,GAAZ,YAAY,CAAmB;IACvC,CAAC;CACL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.logger.test.d.ts","sourceRoot":"","sources":["../../../../src/application/loggers/__tests__/base.logger.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
2
|
+
import { LOG_LEVEL, LOG_LEVEL_NAMES } from '../../../shared';
|
|
3
|
+
import { BaseLogger } from '../base.logger';
|
|
4
|
+
const makeRequestContext = (executionContext) => ({
|
|
5
|
+
getContext: vi.fn().mockReturnValue(executionContext),
|
|
6
|
+
});
|
|
7
|
+
const makeExecutionContext = () => ({
|
|
8
|
+
identity: {
|
|
9
|
+
userId: '123',
|
|
10
|
+
email: 'admin@example.com',
|
|
11
|
+
name: 'admin',
|
|
12
|
+
tenantId: '456',
|
|
13
|
+
roles: ['admin'],
|
|
14
|
+
permissions: ['read'],
|
|
15
|
+
},
|
|
16
|
+
network: {
|
|
17
|
+
requestId: '789',
|
|
18
|
+
clientIp: '127.0.0.1',
|
|
19
|
+
userAgent: 'Mozilla/5.0',
|
|
20
|
+
formatIndicator: 'json',
|
|
21
|
+
path: '/api/test',
|
|
22
|
+
transport: {
|
|
23
|
+
res: '',
|
|
24
|
+
req: '',
|
|
25
|
+
},
|
|
26
|
+
csrf: undefined,
|
|
27
|
+
origin: 'http://localhost:3000',
|
|
28
|
+
},
|
|
29
|
+
tracing: {
|
|
30
|
+
correlationId: 'req-1',
|
|
31
|
+
startTime: Date.now(),
|
|
32
|
+
spanId: 'span-1',
|
|
33
|
+
parentSpanId: 'parent-span-1',
|
|
34
|
+
},
|
|
35
|
+
messaging: undefined,
|
|
36
|
+
});
|
|
37
|
+
describe('BaseLogger', () => {
|
|
38
|
+
let trackMock;
|
|
39
|
+
let requestContext;
|
|
40
|
+
let executionContext;
|
|
41
|
+
beforeEach(() => {
|
|
42
|
+
trackMock = vi.fn();
|
|
43
|
+
executionContext = makeExecutionContext();
|
|
44
|
+
requestContext = makeRequestContext(executionContext);
|
|
45
|
+
});
|
|
46
|
+
describe('info()', () => {
|
|
47
|
+
it('forwards an INFO message to the client when minLevel is INFO', () => {
|
|
48
|
+
const client = { track: trackMock };
|
|
49
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.INFO, [client]);
|
|
50
|
+
logger.info('hello');
|
|
51
|
+
expect(trackMock).toHaveBeenCalledOnce();
|
|
52
|
+
expect(trackMock).toHaveBeenCalledWith(LOG_LEVEL.INFO, `[${LOG_LEVEL_NAMES[LOG_LEVEL.INFO]}] hello`, executionContext, undefined);
|
|
53
|
+
});
|
|
54
|
+
it('does NOT forward when INFO is below minLevel WARN', () => {
|
|
55
|
+
const client = { track: trackMock };
|
|
56
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.WARN, [client]);
|
|
57
|
+
logger.info('silent');
|
|
58
|
+
expect(trackMock).not.toHaveBeenCalled();
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
describe('warn()', () => {
|
|
62
|
+
it('forwards a WARN message to the client when minLevel is INFO', () => {
|
|
63
|
+
const client = { track: trackMock };
|
|
64
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.INFO, [client]);
|
|
65
|
+
logger.warn('careful');
|
|
66
|
+
expect(trackMock).toHaveBeenCalledOnce();
|
|
67
|
+
expect(trackMock).toHaveBeenCalledWith(LOG_LEVEL.WARN, `[${LOG_LEVEL_NAMES[LOG_LEVEL.WARN]}] careful`, executionContext, undefined);
|
|
68
|
+
});
|
|
69
|
+
it('does NOT forward when WARN is below minLevel ERROR', () => {
|
|
70
|
+
const client = { track: trackMock };
|
|
71
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.ERROR, [client]);
|
|
72
|
+
logger.warn('silent');
|
|
73
|
+
expect(trackMock).not.toHaveBeenCalled();
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
describe('debug()', () => {
|
|
77
|
+
it('forwards a DEBUG message when minLevel is DEBUG', () => {
|
|
78
|
+
const client = { track: trackMock };
|
|
79
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.DEBUG, [client]);
|
|
80
|
+
logger.debug('verbose');
|
|
81
|
+
expect(trackMock).toHaveBeenCalledOnce();
|
|
82
|
+
expect(trackMock).toHaveBeenCalledWith(LOG_LEVEL.DEBUG, `[${LOG_LEVEL_NAMES[LOG_LEVEL.DEBUG]}] verbose`, executionContext, undefined);
|
|
83
|
+
});
|
|
84
|
+
it('does NOT forward DEBUG when minLevel is INFO', () => {
|
|
85
|
+
const client = { track: trackMock };
|
|
86
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.INFO, [client]);
|
|
87
|
+
logger.debug('silent');
|
|
88
|
+
expect(trackMock).not.toHaveBeenCalled();
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
describe('error()', () => {
|
|
92
|
+
it('forwards an ERROR message with error object', () => {
|
|
93
|
+
const client = { track: trackMock };
|
|
94
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.INFO, [client]);
|
|
95
|
+
const err = new Error('boom');
|
|
96
|
+
logger.error('something went wrong', err);
|
|
97
|
+
expect(trackMock).toHaveBeenCalledOnce();
|
|
98
|
+
expect(trackMock).toHaveBeenCalledWith(LOG_LEVEL.ERROR, `[${LOG_LEVEL_NAMES[LOG_LEVEL.ERROR]}] something went wrong`, executionContext, err);
|
|
99
|
+
});
|
|
100
|
+
it('does NOT forward ERROR when minLevel is above ERROR (impossible in practice but tests boundary)', () => {
|
|
101
|
+
const client = { track: trackMock };
|
|
102
|
+
const logger = new BaseLogger(requestContext, (LOG_LEVEL.ERROR + 1), [client]);
|
|
103
|
+
logger.error('silent', new Error('x'));
|
|
104
|
+
expect(trackMock).not.toHaveBeenCalled();
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
describe('broadcast — context handling', () => {
|
|
108
|
+
it('passes undefined context when getContext() returns undefined', () => {
|
|
109
|
+
const ctxWithoutData = makeRequestContext(undefined);
|
|
110
|
+
const client = { track: trackMock };
|
|
111
|
+
const logger = new BaseLogger(ctxWithoutData, LOG_LEVEL.INFO, [client]);
|
|
112
|
+
logger.info('no context');
|
|
113
|
+
expect(trackMock).toHaveBeenCalledWith(LOG_LEVEL.INFO, `[${LOG_LEVEL_NAMES[LOG_LEVEL.INFO]}] no context`, undefined, undefined);
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
describe('broadcast — multiple clients', () => {
|
|
117
|
+
it('forwards the message to every registered client', () => {
|
|
118
|
+
const trackMock2 = vi.fn();
|
|
119
|
+
const client1 = { track: trackMock };
|
|
120
|
+
const client2 = { track: trackMock2 };
|
|
121
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.INFO, [client1, client2]);
|
|
122
|
+
logger.info('broadcast');
|
|
123
|
+
expect(trackMock).toHaveBeenCalledOnce();
|
|
124
|
+
expect(trackMock2).toHaveBeenCalledOnce();
|
|
125
|
+
});
|
|
126
|
+
it('does nothing when the clients array is empty', () => {
|
|
127
|
+
const logger = new BaseLogger(requestContext, LOG_LEVEL.INFO, []);
|
|
128
|
+
expect(() => logger.info('no clients')).not.toThrow();
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
//# sourceMappingURL=base.logger.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.logger.test.js","sourceRoot":"","sources":["../../../../src/application/loggers/__tests__/base.logger.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { IContextAccessor, ILogger, ILoggerClient, RequestContext } from '../../domain';
|
|
2
|
+
import type { LogLevel } from '../../shared';
|
|
3
|
+
/**
|
|
4
|
+
* @description Concrete implementation of the ILogger interface that serves as a central logging service within the application. This class is designed to broadcast log messages to multiple logging clients (implementations of ILoggerClient) that are injected via the constructor. The BaseLogger class provides methods for logging messages at different levels (info, warn, debug, error) and ensures that only messages that meet or exceed the specified minimum log level are forwarded to the registered logging clients. This design allows for flexibility in logging, enabling the use of various logging providers (e.g., Sentry, Pino) without coupling the application code to specific logging frameworks.
|
|
5
|
+
|
|
6
|
+
*
|
|
7
|
+
* @author Xeno
|
|
8
|
+
* @version 1.0.0
|
|
9
|
+
* @since 2025-09-30
|
|
10
|
+
* @link https://github.com/xeno-js/xeno-js
|
|
11
|
+
*/
|
|
12
|
+
export declare class BaseLogger implements ILogger {
|
|
13
|
+
private readonly _requestContext;
|
|
14
|
+
private readonly _minLevel;
|
|
15
|
+
private readonly _loggers;
|
|
16
|
+
/**
|
|
17
|
+
* @description Constructs a new instance of the BaseLogger class, which takes an array of ILoggerClient instances and an optional minimum log level. The ILoggerClient instances represent the various logging providers that will receive log messages from this logger. The minimum log level determines the threshold for logging messages, where messages with a log level below the specified minimum will not be forwarded to the logging clients. This allows for efficient logging by filtering out less critical log messages based on the configured log level.
|
|
18
|
+
* @param _requestContext The request context that provides contextual information for log messages, such as request-specific data or metadata.
|
|
19
|
+
* @param config The minimum log level for this logger instance. Only messages with a log level equal to or higher than this level will be processed and forwarded to the logging clients.
|
|
20
|
+
* @param loggers An array of ILoggerClient instances that will receive log messages from this logger. Each ILoggerClient represents a different logging provider or destination (e.g., console, file, external service).
|
|
21
|
+
|
|
22
|
+
*
|
|
23
|
+
* @author Xeno
|
|
24
|
+
* @version 1.0.0
|
|
25
|
+
* @since 2025-09-30
|
|
26
|
+
* @link https://github.com/xeno-js/xeno-js
|
|
27
|
+
*/
|
|
28
|
+
constructor(_requestContext: IContextAccessor<RequestContext>, config: LogLevel, loggers: ILoggerClient[]);
|
|
29
|
+
info(message: string): void;
|
|
30
|
+
warn(message: string): void;
|
|
31
|
+
debug(message: string): void;
|
|
32
|
+
error(message: string, error: unknown): void;
|
|
33
|
+
/**
|
|
34
|
+
* @description Private method to broadcast log messages to all registered ILoggerClient instances. This method checks if the log level of the message meets or exceeds the configured minimum log level before forwarding the message to the logging clients. It iterates through the array of ILoggerClient instances and calls their track method with the appropriate parameters (log level, message, context, and error if applicable). This design allows for efficient logging by ensuring that only relevant log messages are processed and forwarded to the logging clients based on the configured log level.
|
|
35
|
+
* @param level The log level of the message.
|
|
36
|
+
* @param message The log message.
|
|
37
|
+
* @param context Optional context information to include with the log message.
|
|
38
|
+
* @param error Optional error object to include with the log message.
|
|
39
|
+
|
|
40
|
+
*
|
|
41
|
+
* @author Xeno
|
|
42
|
+
* @version 1.0.0
|
|
43
|
+
* @since 2025-09-30
|
|
44
|
+
* @link https://github.com/xeno-js/xeno-js
|
|
45
|
+
*/
|
|
46
|
+
private broadcast;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=base.logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.logger.d.ts","sourceRoot":"","sources":["../../../src/application/loggers/base.logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACxF,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,UAAU,CAAA;AAGlD;;;;;;;;KAQK;AACL,qBAAa,UAAW,YAAW,OAAO;IAkBtC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAhBlC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAE1C;;;;;;;;;;;OAWG;gBAEgB,eAAe,EAAE,gBAAgB,CAAC,cAAc,CAAC,EAClE,MAAM,EAAE,QAAQ,EAChB,OAAO,EAAE,aAAa,EAAE;IAMnB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI5B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAInD;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,SAAS;CASlB"}
|