@sentzunhat/zacatl 0.0.14 → 0.0.20
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 +280 -211
- package/build/architecture/index.d.ts +2 -0
- package/build/architecture/index.d.ts.map +1 -0
- package/build/architecture/index.js +2 -0
- package/build/architecture/index.js.map +1 -0
- package/build/configuration/app-config.d.ts +10 -0
- package/build/configuration/app-config.d.ts.map +1 -0
- package/build/configuration/app-config.js +5 -0
- package/build/configuration/app-config.js.map +1 -0
- package/build/configuration/index.d.ts +7 -0
- package/build/configuration/index.d.ts.map +1 -0
- package/build/configuration/index.js +6 -0
- package/build/configuration/index.js.map +1 -0
- package/build/configuration/legacy.d.ts +10 -0
- package/build/configuration/legacy.d.ts.map +1 -0
- package/build/configuration/legacy.js +5 -0
- package/build/configuration/legacy.js.map +1 -0
- package/build/configuration/loader-factory.d.ts +2 -0
- package/build/configuration/loader-factory.d.ts.map +1 -0
- package/build/configuration/loader-factory.js +2 -0
- package/build/configuration/loader-factory.js.map +1 -0
- package/build/configuration/loader.d.ts +9 -0
- package/build/configuration/loader.d.ts.map +1 -0
- package/build/configuration/loader.js +38 -0
- package/build/configuration/loader.js.map +1 -0
- package/build/configuration/loaders/index.d.ts +3 -0
- package/build/configuration/loaders/index.d.ts.map +1 -0
- package/build/configuration/loaders/index.js +3 -0
- package/build/configuration/loaders/index.js.map +1 -0
- package/build/configuration/loaders/json-loader.d.ts +8 -0
- package/build/configuration/loaders/json-loader.d.ts.map +1 -0
- package/build/configuration/loaders/json-loader.js +18 -0
- package/build/configuration/loaders/json-loader.js.map +1 -0
- package/build/configuration/loaders/yaml-loader.d.ts +8 -0
- package/build/configuration/loaders/yaml-loader.d.ts.map +1 -0
- package/build/configuration/loaders/yaml-loader.js +20 -0
- package/build/configuration/loaders/yaml-loader.js.map +1 -0
- package/build/configuration/types.d.ts +12 -0
- package/build/configuration/types.d.ts.map +1 -0
- package/build/configuration/types.js +2 -0
- package/build/configuration/types.js.map +1 -0
- package/build/configuration/validation.d.ts +14 -0
- package/build/configuration/validation.d.ts.map +1 -0
- package/build/configuration/validation.js +22 -0
- package/build/configuration/validation.js.map +1 -0
- package/build/configuration.d.ts +2 -0
- package/build/configuration.d.ts.map +1 -0
- package/build/configuration.js +2 -0
- package/build/configuration.js.map +1 -0
- package/build/dependency-injection/container.d.ts +9 -0
- package/build/dependency-injection/container.d.ts.map +1 -0
- package/build/dependency-injection/container.js +22 -0
- package/build/dependency-injection/container.js.map +1 -0
- package/build/dependency-injection/index.d.ts +2 -0
- package/build/dependency-injection/index.d.ts.map +1 -0
- package/build/dependency-injection/index.js +2 -0
- package/build/dependency-injection/index.js.map +1 -0
- package/build/error/bad-request.d.ts +7 -0
- package/build/error/bad-request.d.ts.map +1 -0
- package/build/error/bad-request.js +13 -0
- package/build/error/bad-request.js.map +1 -0
- package/build/error/bad-resource.d.ts +7 -0
- package/build/error/bad-resource.d.ts.map +1 -0
- package/build/error/bad-resource.js +13 -0
- package/build/error/bad-resource.js.map +1 -0
- package/build/error/custom.d.ts +49 -0
- package/build/error/custom.d.ts.map +1 -0
- package/build/error/custom.js +65 -0
- package/build/error/custom.js.map +1 -0
- package/build/error/forbidden.d.ts +7 -0
- package/build/error/forbidden.d.ts.map +1 -0
- package/build/error/forbidden.js +13 -0
- package/build/error/forbidden.js.map +1 -0
- package/build/error/index.d.ts +9 -0
- package/build/error/index.d.ts.map +1 -0
- package/build/error/index.js +9 -0
- package/build/error/index.js.map +1 -0
- package/build/error/internal-server.d.ts +7 -0
- package/build/error/internal-server.d.ts.map +1 -0
- package/build/error/internal-server.js +13 -0
- package/build/error/internal-server.js.map +1 -0
- package/build/error/not-found.d.ts +7 -0
- package/build/error/not-found.d.ts.map +1 -0
- package/build/error/not-found.js +13 -0
- package/build/error/not-found.js.map +1 -0
- package/build/error/unauthorized.d.ts +7 -0
- package/build/error/unauthorized.d.ts.map +1 -0
- package/build/error/unauthorized.js +13 -0
- package/build/error/unauthorized.js.map +1 -0
- package/build/error/validation.d.ts +7 -0
- package/build/error/validation.d.ts.map +1 -0
- package/build/error/validation.js +13 -0
- package/build/error/validation.js.map +1 -0
- package/build/examples/index.d.ts +3 -0
- package/build/examples/index.d.ts.map +1 -0
- package/build/examples/index.js +3 -0
- package/build/examples/index.js.map +1 -0
- package/build/examples/providers/file-system-provider.d.ts +13 -0
- package/build/examples/providers/file-system-provider.d.ts.map +1 -0
- package/build/examples/providers/file-system-provider.js +82 -0
- package/build/examples/providers/file-system-provider.js.map +1 -0
- package/build/examples/providers/filesystem-provider.d.ts +15 -0
- package/build/examples/providers/filesystem-provider.d.ts.map +1 -0
- package/build/examples/providers/filesystem-provider.js +139 -0
- package/build/examples/providers/filesystem-provider.js.map +1 -0
- package/build/examples/providers/index.d.ts +6 -0
- package/build/examples/providers/index.d.ts.map +1 -0
- package/build/examples/providers/index.js +4 -0
- package/build/examples/providers/index.js.map +1 -0
- package/build/examples/providers/process-provider.d.ts +19 -0
- package/build/examples/providers/process-provider.d.ts.map +1 -0
- package/build/examples/providers/process-provider.js +101 -0
- package/build/examples/providers/process-provider.js.map +1 -0
- package/build/examples/repositories/index.d.ts +3 -0
- package/build/examples/repositories/index.d.ts.map +1 -0
- package/build/examples/repositories/index.js +3 -0
- package/build/examples/repositories/index.js.map +1 -0
- package/build/examples/repositories/sqlite-repository.d.ts +14 -0
- package/build/examples/repositories/sqlite-repository.d.ts.map +1 -0
- package/build/examples/repositories/sqlite-repository.js +111 -0
- package/build/examples/repositories/sqlite-repository.js.map +1 -0
- package/build/i18n/adapters/index.d.ts +15 -0
- package/build/i18n/adapters/index.d.ts.map +1 -0
- package/build/i18n/adapters/index.js +46 -0
- package/build/i18n/adapters/index.js.map +1 -0
- package/build/i18n/i18n.d.ts +6 -0
- package/build/i18n/i18n.d.ts.map +1 -0
- package/build/i18n/i18n.js +118 -0
- package/build/i18n/i18n.js.map +1 -0
- package/build/i18n/index.d.ts +5 -0
- package/build/i18n/index.d.ts.map +1 -0
- package/build/i18n/index.js +4 -0
- package/build/i18n/index.js.map +1 -0
- package/build/i18n/types.d.ts +22 -0
- package/build/i18n/types.d.ts.map +1 -0
- package/build/i18n/types.js +2 -0
- package/build/i18n/types.js.map +1 -0
- package/build/i18n/validation.d.ts +16 -0
- package/build/i18n/validation.d.ts.map +1 -0
- package/build/i18n/validation.js +23 -0
- package/build/i18n/validation.js.map +1 -0
- package/build/index.d.ts +19 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +15 -0
- package/build/index.js.map +1 -0
- package/build/intl/adapters/index.d.ts +15 -0
- package/build/intl/adapters/index.d.ts.map +1 -0
- package/build/intl/adapters/index.js +46 -0
- package/build/intl/adapters/index.js.map +1 -0
- package/build/intl/index.d.ts +5 -0
- package/build/intl/index.d.ts.map +1 -0
- package/build/intl/index.js +4 -0
- package/build/intl/index.js.map +1 -0
- package/build/intl/intl.d.ts +6 -0
- package/build/intl/intl.d.ts.map +1 -0
- package/build/intl/intl.js +118 -0
- package/build/intl/intl.js.map +1 -0
- package/build/intl/types.d.ts +22 -0
- package/build/intl/types.d.ts.map +1 -0
- package/build/intl/types.js +2 -0
- package/build/intl/types.js.map +1 -0
- package/build/intl/validation.d.ts +16 -0
- package/build/intl/validation.d.ts.map +1 -0
- package/build/intl/validation.js +23 -0
- package/build/intl/validation.js.map +1 -0
- package/build/localization/adapters/index.d.ts +15 -0
- package/build/localization/adapters/index.d.ts.map +1 -0
- package/build/localization/adapters/index.js +46 -0
- package/build/localization/adapters/index.js.map +1 -0
- package/build/localization/i18n.d.ts +6 -0
- package/build/localization/i18n.d.ts.map +1 -0
- package/build/localization/i18n.js +118 -0
- package/build/localization/i18n.js.map +1 -0
- package/build/localization/index.d.ts +5 -0
- package/build/localization/index.d.ts.map +1 -0
- package/build/localization/index.js +4 -0
- package/build/localization/index.js.map +1 -0
- package/build/localization/intl.d.ts +6 -0
- package/build/localization/intl.d.ts.map +1 -0
- package/build/localization/intl.js +120 -0
- package/build/localization/intl.js.map +1 -0
- package/build/localization/localization.d.ts +6 -0
- package/build/localization/localization.d.ts.map +1 -0
- package/build/localization/localization.js +120 -0
- package/build/localization/localization.js.map +1 -0
- package/build/localization/types.d.ts +22 -0
- package/build/localization/types.d.ts.map +1 -0
- package/build/localization/types.js +2 -0
- package/build/localization/types.js.map +1 -0
- package/build/localization/validation.d.ts +16 -0
- package/build/localization/validation.d.ts.map +1 -0
- package/build/localization/validation.js +23 -0
- package/build/localization/validation.js.map +1 -0
- package/build/logs/adapters/console-adapter.d.ts +18 -0
- package/build/logs/adapters/console-adapter.d.ts.map +1 -0
- package/build/logs/adapters/console-adapter.js +65 -0
- package/build/logs/adapters/console-adapter.js.map +1 -0
- package/build/logs/adapters/pino-adapter.d.ts +14 -0
- package/build/logs/adapters/pino-adapter.d.ts.map +1 -0
- package/build/logs/adapters/pino-adapter.js +30 -0
- package/build/logs/adapters/pino-adapter.js.map +1 -0
- package/build/logs/config.d.ts +9 -0
- package/build/logs/config.d.ts.map +1 -0
- package/build/logs/config.js +34 -0
- package/build/logs/config.js.map +1 -0
- package/build/logs/index.d.ts +6 -0
- package/build/logs/index.d.ts.map +1 -0
- package/build/logs/index.js +5 -0
- package/build/logs/index.js.map +1 -0
- package/build/logs/logger.d.ts +4 -0
- package/build/logs/logger.d.ts.map +1 -0
- package/build/logs/logger.js +14 -0
- package/build/logs/logger.js.map +1 -0
- package/build/logs/types.d.ts +23 -0
- package/build/logs/types.d.ts.map +1 -0
- package/build/logs/types.js +2 -0
- package/build/logs/types.js.map +1 -0
- package/build/logs.d.ts +4 -0
- package/build/logs.d.ts.map +1 -0
- package/build/logs.js +3 -0
- package/build/logs.js.map +1 -0
- package/build/micro-service/architecture/application/application.d.ts +22 -0
- package/build/micro-service/architecture/application/application.d.ts.map +1 -0
- package/build/micro-service/architecture/application/application.js +25 -0
- package/build/micro-service/architecture/application/application.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/index.d.ts +2 -0
- package/build/micro-service/architecture/application/entry-points/index.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/index.js +2 -0
- package/build/micro-service/architecture/application/entry-points/index.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/handler.d.ts +4 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/handler.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/handler.js +2 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/handler.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/index.d.ts +3 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/index.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/index.js +3 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/index.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/request.d.ts +9 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/request.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/request.js +2 -0
- package/build/micro-service/architecture/application/entry-points/rest/common/request.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/hook-handler.d.ts +7 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/hook-handler.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/hook-handler.js +2 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/hook-handler.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/index.d.ts +2 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/index.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/index.js +2 -0
- package/build/micro-service/architecture/application/entry-points/rest/hook-handlers/index.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/index.d.ts +4 -0
- package/build/micro-service/architecture/application/entry-points/rest/index.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/index.js +4 -0
- package/build/micro-service/architecture/application/entry-points/rest/index.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/abstract.d.ts +26 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/abstract.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/abstract.js +21 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/abstract.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/generics.d.ts +8 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/generics.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/generics.js +10 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/generics.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/get-route-handler.d.ts +10 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/get-route-handler.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/get-route-handler.js +11 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/get-route-handler.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/index.d.ts +6 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/index.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/index.js +6 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/index.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/post-route-handler.d.ts +10 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/post-route-handler.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/post-route-handler.js +11 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/post-route-handler.js.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/route-handler.d.ts +9 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/route-handler.d.ts.map +1 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/route-handler.js +2 -0
- package/build/micro-service/architecture/application/entry-points/rest/route-handlers/route-handler.js.map +1 -0
- package/build/micro-service/architecture/application/index.d.ts +3 -0
- package/build/micro-service/architecture/application/index.d.ts.map +1 -0
- package/build/micro-service/architecture/application/index.js +3 -0
- package/build/micro-service/architecture/application/index.js.map +1 -0
- package/build/micro-service/architecture/architecture.d.ts +11 -0
- package/build/micro-service/architecture/architecture.d.ts.map +1 -0
- package/build/micro-service/architecture/architecture.js +20 -0
- package/build/micro-service/architecture/architecture.js.map +1 -0
- package/build/micro-service/architecture/domain/domain.d.ts +11 -0
- package/build/micro-service/architecture/domain/domain.d.ts.map +1 -0
- package/build/micro-service/architecture/domain/domain.js +25 -0
- package/build/micro-service/architecture/domain/domain.js.map +1 -0
- package/build/micro-service/architecture/domain/index.d.ts +3 -0
- package/build/micro-service/architecture/domain/index.d.ts.map +1 -0
- package/build/micro-service/architecture/domain/index.js +3 -0
- package/build/micro-service/architecture/domain/index.js.map +1 -0
- package/build/micro-service/architecture/domain/provider.d.ts +6 -0
- package/build/micro-service/architecture/domain/provider.d.ts.map +1 -0
- package/build/micro-service/architecture/domain/provider.js +7 -0
- package/build/micro-service/architecture/domain/provider.js.map +1 -0
- package/build/micro-service/architecture/index.d.ts +6 -0
- package/build/micro-service/architecture/index.d.ts.map +1 -0
- package/build/micro-service/architecture/index.js +6 -0
- package/build/micro-service/architecture/index.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/index.d.ts +3 -0
- package/build/micro-service/architecture/infrastructure/index.d.ts.map +1 -0
- package/{src/micro-service/architecture/infrastructure/index.ts → build/micro-service/architecture/infrastructure/index.js} +1 -0
- package/build/micro-service/architecture/infrastructure/index.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/infrastructure.d.ts +10 -0
- package/build/micro-service/architecture/infrastructure/infrastructure.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/infrastructure.js +12 -0
- package/build/micro-service/architecture/infrastructure/infrastructure.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/mongoose-adapter.d.ts +13 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/mongoose-adapter.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/mongoose-adapter.js +92 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/mongoose-adapter.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/sequelize-adapter.d.ts +12 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/sequelize-adapter.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/sequelize-adapter.js +49 -0
- package/build/micro-service/architecture/infrastructure/orm/adapters/sequelize-adapter.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/orm/index.d.ts +3 -0
- package/build/micro-service/architecture/infrastructure/orm/index.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/orm/index.js +3 -0
- package/build/micro-service/architecture/infrastructure/orm/index.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/abstract.d.ts +19 -0
- package/build/micro-service/architecture/infrastructure/repositories/abstract.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/abstract.js +64 -0
- package/build/micro-service/architecture/infrastructure/repositories/abstract.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/index.d.ts +2 -0
- package/build/micro-service/architecture/infrastructure/repositories/index.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/index.js +2 -0
- package/build/micro-service/architecture/infrastructure/repositories/index.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/mongoose.d.ts +13 -0
- package/build/micro-service/architecture/infrastructure/repositories/mongoose.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/mongoose.js +92 -0
- package/build/micro-service/architecture/infrastructure/repositories/mongoose.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/sequelize.d.ts +12 -0
- package/build/micro-service/architecture/infrastructure/repositories/sequelize.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/sequelize.js +49 -0
- package/build/micro-service/architecture/infrastructure/repositories/sequelize.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/types.d.ts +43 -0
- package/build/micro-service/architecture/infrastructure/repositories/types.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/repositories/types.js +2 -0
- package/build/micro-service/architecture/infrastructure/repositories/types.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/repository-interface.d.ts +9 -0
- package/build/micro-service/architecture/infrastructure/repository-interface.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/repository-interface.js +2 -0
- package/build/micro-service/architecture/infrastructure/repository-interface.js.map +1 -0
- package/build/micro-service/architecture/infrastructure/repository.d.ts +9 -0
- package/build/micro-service/architecture/infrastructure/repository.d.ts.map +1 -0
- package/build/micro-service/architecture/infrastructure/repository.js +2 -0
- package/build/micro-service/architecture/infrastructure/repository.js.map +1 -0
- package/build/micro-service/architecture/platform/index.d.ts +6 -0
- package/build/micro-service/architecture/platform/index.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/index.js +5 -0
- package/build/micro-service/architecture/platform/index.js.map +1 -0
- package/build/micro-service/architecture/platform/micro-service.d.ts +24 -0
- package/build/micro-service/architecture/platform/micro-service.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/micro-service.js +40 -0
- package/build/micro-service/architecture/platform/micro-service.js.map +1 -0
- package/build/micro-service/architecture/platform/page/index.d.ts +2 -0
- package/build/micro-service/architecture/platform/page/index.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/page/index.js +2 -0
- package/build/micro-service/architecture/platform/page/index.js.map +1 -0
- package/build/micro-service/architecture/platform/page/page.d.ts +16 -0
- package/build/micro-service/architecture/platform/page/page.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/page/page.js +38 -0
- package/build/micro-service/architecture/platform/page/page.js.map +1 -0
- package/build/micro-service/architecture/platform/server/adapters/express-adapter.d.ts +15 -0
- package/build/micro-service/architecture/platform/server/adapters/express-adapter.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/server/adapters/express-adapter.js +91 -0
- package/build/micro-service/architecture/platform/server/adapters/express-adapter.js.map +1 -0
- package/build/micro-service/architecture/platform/server/adapters/fastify-adapter.d.ts +15 -0
- package/build/micro-service/architecture/platform/server/adapters/fastify-adapter.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/server/adapters/fastify-adapter.js +54 -0
- package/build/micro-service/architecture/platform/server/adapters/fastify-adapter.js.map +1 -0
- package/build/micro-service/architecture/platform/server/adapters/index.d.ts +3 -0
- package/build/micro-service/architecture/platform/server/adapters/index.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/server/adapters/index.js +3 -0
- package/build/micro-service/architecture/platform/server/adapters/index.js.map +1 -0
- package/build/micro-service/architecture/platform/server/index.d.ts +2 -0
- package/build/micro-service/architecture/platform/server/index.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/server/index.js +2 -0
- package/build/micro-service/architecture/platform/server/index.js.map +1 -0
- package/build/micro-service/architecture/platform/server/server-adapter.d.ts +21 -0
- package/build/micro-service/architecture/platform/server/server-adapter.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/server/server-adapter.js +2 -0
- package/build/micro-service/architecture/platform/server/server-adapter.js.map +1 -0
- package/build/micro-service/architecture/platform/server/server.d.ts +97 -0
- package/build/micro-service/architecture/platform/server/server.d.ts.map +1 -0
- package/build/micro-service/architecture/platform/server/server.js +219 -0
- package/build/micro-service/architecture/platform/server/server.js.map +1 -0
- package/build/micro-service/index.d.ts +2 -0
- package/build/micro-service/index.d.ts.map +1 -0
- package/build/micro-service/index.js +2 -0
- package/build/micro-service/index.js.map +1 -0
- package/build/optionals.d.ts +4 -0
- package/build/optionals.d.ts.map +1 -0
- package/build/optionals.js +2 -0
- package/build/optionals.js.map +1 -0
- package/build/runtime/detector.d.ts +7 -0
- package/build/runtime/detector.d.ts.map +1 -0
- package/build/runtime/detector.js +28 -0
- package/build/runtime/detector.js.map +1 -0
- package/build/runtime/index.d.ts +3 -0
- package/build/runtime/index.d.ts.map +1 -0
- package/build/runtime/index.js +3 -0
- package/build/runtime/index.js.map +1 -0
- package/build/runtime/types.d.ts +8 -0
- package/build/runtime/types.d.ts.map +1 -0
- package/build/runtime/types.js +2 -0
- package/build/runtime/types.js.map +1 -0
- package/build/service/architecture/application/application.d.ts +22 -0
- package/build/service/architecture/application/application.d.ts.map +1 -0
- package/build/service/architecture/application/application.js +25 -0
- package/build/service/architecture/application/application.js.map +1 -0
- package/build/service/architecture/application/entry-points/index.d.ts +2 -0
- package/build/service/architecture/application/entry-points/index.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/index.js +2 -0
- package/build/service/architecture/application/entry-points/index.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/common/handler.d.ts +4 -0
- package/build/service/architecture/application/entry-points/rest/common/handler.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/common/handler.js +2 -0
- package/build/service/architecture/application/entry-points/rest/common/handler.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/common/index.d.ts +3 -0
- package/build/service/architecture/application/entry-points/rest/common/index.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/common/index.js +3 -0
- package/build/service/architecture/application/entry-points/rest/common/index.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/common/request.d.ts +9 -0
- package/build/service/architecture/application/entry-points/rest/common/request.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/common/request.js +2 -0
- package/build/service/architecture/application/entry-points/rest/common/request.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/hook-handler.d.ts +7 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/hook-handler.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/hook-handler.js +2 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/hook-handler.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/index.d.ts +2 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/index.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/index.js +2 -0
- package/build/service/architecture/application/entry-points/rest/hook-handlers/index.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/index.d.ts +4 -0
- package/build/service/architecture/application/entry-points/rest/index.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/index.js +4 -0
- package/build/service/architecture/application/entry-points/rest/index.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/abstract.d.ts +27 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/abstract.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/abstract.js +21 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/abstract.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/generics.d.ts +8 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/generics.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/generics.js +10 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/generics.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/get-route-handler.d.ts +10 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/get-route-handler.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/get-route-handler.js +11 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/get-route-handler.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/index.d.ts +6 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/index.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/index.js +6 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/index.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/post-route-handler.d.ts +11 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/post-route-handler.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/post-route-handler.js +11 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/post-route-handler.js.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/route-handler.d.ts +9 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/route-handler.d.ts.map +1 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/route-handler.js +2 -0
- package/build/service/architecture/application/entry-points/rest/route-handlers/route-handler.js.map +1 -0
- package/build/service/architecture/application/index.d.ts +3 -0
- package/build/service/architecture/application/index.d.ts.map +1 -0
- package/build/service/architecture/application/index.js +3 -0
- package/build/service/architecture/application/index.js.map +1 -0
- package/build/service/architecture/architecture.d.ts +11 -0
- package/build/service/architecture/architecture.d.ts.map +1 -0
- package/build/service/architecture/architecture.js +20 -0
- package/build/service/architecture/architecture.js.map +1 -0
- package/build/service/architecture/domain/domain.d.ts +11 -0
- package/build/service/architecture/domain/domain.d.ts.map +1 -0
- package/build/service/architecture/domain/domain.js +25 -0
- package/build/service/architecture/domain/domain.js.map +1 -0
- package/build/service/architecture/domain/index.d.ts +3 -0
- package/build/service/architecture/domain/index.d.ts.map +1 -0
- package/build/service/architecture/domain/index.js +3 -0
- package/build/service/architecture/domain/index.js.map +1 -0
- package/build/service/architecture/domain/provider.d.ts +6 -0
- package/build/service/architecture/domain/provider.d.ts.map +1 -0
- package/build/service/architecture/domain/provider.js +7 -0
- package/build/service/architecture/domain/provider.js.map +1 -0
- package/build/service/architecture/index.d.ts +6 -0
- package/build/service/architecture/index.d.ts.map +1 -0
- package/build/service/architecture/index.js +6 -0
- package/build/service/architecture/index.js.map +1 -0
- package/build/service/architecture/infrastructure/index.d.ts +7 -0
- package/build/service/architecture/infrastructure/index.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/index.js +5 -0
- package/build/service/architecture/infrastructure/index.js.map +1 -0
- package/build/service/architecture/infrastructure/infrastructure.d.ts +10 -0
- package/build/service/architecture/infrastructure/infrastructure.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/infrastructure.js +12 -0
- package/build/service/architecture/infrastructure/infrastructure.js.map +1 -0
- package/build/service/architecture/infrastructure/orm/adapters/mongoose-adapter.d.ts +13 -0
- package/build/service/architecture/infrastructure/orm/adapters/mongoose-adapter.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/orm/adapters/mongoose-adapter.js +92 -0
- package/build/service/architecture/infrastructure/orm/adapters/mongoose-adapter.js.map +1 -0
- package/build/service/architecture/infrastructure/orm/adapters/sequelize-adapter.d.ts +12 -0
- package/build/service/architecture/infrastructure/orm/adapters/sequelize-adapter.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/orm/adapters/sequelize-adapter.js +49 -0
- package/build/service/architecture/infrastructure/orm/adapters/sequelize-adapter.js.map +1 -0
- package/build/service/architecture/infrastructure/orm/index.d.ts +3 -0
- package/build/service/architecture/infrastructure/orm/index.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/orm/index.js +3 -0
- package/build/service/architecture/infrastructure/orm/index.js.map +1 -0
- package/build/service/architecture/infrastructure/repositories/abstract.d.ts +19 -0
- package/build/service/architecture/infrastructure/repositories/abstract.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/repositories/abstract.js +62 -0
- package/build/service/architecture/infrastructure/repositories/abstract.js.map +1 -0
- package/build/service/architecture/infrastructure/repositories/index.d.ts +2 -0
- package/build/service/architecture/infrastructure/repositories/index.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/repositories/index.js +2 -0
- package/build/service/architecture/infrastructure/repositories/index.js.map +1 -0
- package/build/service/architecture/infrastructure/repositories/mongoose.d.ts +13 -0
- package/build/service/architecture/infrastructure/repositories/mongoose.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/repositories/mongoose.js +92 -0
- package/build/service/architecture/infrastructure/repositories/mongoose.js.map +1 -0
- package/build/service/architecture/infrastructure/repositories/sequelize.d.ts +12 -0
- package/build/service/architecture/infrastructure/repositories/sequelize.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/repositories/sequelize.js +49 -0
- package/build/service/architecture/infrastructure/repositories/sequelize.js.map +1 -0
- package/build/service/architecture/infrastructure/repositories/types.d.ts +47 -0
- package/build/service/architecture/infrastructure/repositories/types.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/repositories/types.js +6 -0
- package/build/service/architecture/infrastructure/repositories/types.js.map +1 -0
- package/build/service/architecture/infrastructure/repository-interface.d.ts +9 -0
- package/build/service/architecture/infrastructure/repository-interface.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/repository-interface.js +2 -0
- package/build/service/architecture/infrastructure/repository-interface.js.map +1 -0
- package/build/service/architecture/infrastructure/repository.d.ts +9 -0
- package/build/service/architecture/infrastructure/repository.d.ts.map +1 -0
- package/build/service/architecture/infrastructure/repository.js +2 -0
- package/build/service/architecture/infrastructure/repository.js.map +1 -0
- package/build/service/architecture/platform/index.d.ts +6 -0
- package/build/service/architecture/platform/index.d.ts.map +1 -0
- package/build/service/architecture/platform/index.js +5 -0
- package/build/service/architecture/platform/index.js.map +1 -0
- package/build/service/architecture/platform/page/index.d.ts +2 -0
- package/build/service/architecture/platform/page/index.d.ts.map +1 -0
- package/build/service/architecture/platform/page/index.js +2 -0
- package/build/service/architecture/platform/page/index.js.map +1 -0
- package/build/service/architecture/platform/page/page.d.ts +16 -0
- package/build/service/architecture/platform/page/page.d.ts.map +1 -0
- package/build/service/architecture/platform/page/page.js +38 -0
- package/build/service/architecture/platform/page/page.js.map +1 -0
- package/build/service/architecture/platform/server/adapters/express-adapter.d.ts +15 -0
- package/build/service/architecture/platform/server/adapters/express-adapter.d.ts.map +1 -0
- package/build/service/architecture/platform/server/adapters/express-adapter.js +91 -0
- package/build/service/architecture/platform/server/adapters/express-adapter.js.map +1 -0
- package/build/service/architecture/platform/server/adapters/fastify-adapter.d.ts +15 -0
- package/build/service/architecture/platform/server/adapters/fastify-adapter.d.ts.map +1 -0
- package/build/service/architecture/platform/server/adapters/fastify-adapter.js +54 -0
- package/build/service/architecture/platform/server/adapters/fastify-adapter.js.map +1 -0
- package/build/service/architecture/platform/server/adapters/index.d.ts +3 -0
- package/build/service/architecture/platform/server/adapters/index.d.ts.map +1 -0
- package/build/service/architecture/platform/server/adapters/index.js +3 -0
- package/build/service/architecture/platform/server/adapters/index.js.map +1 -0
- package/build/service/architecture/platform/server/index.d.ts +2 -0
- package/build/service/architecture/platform/server/index.d.ts.map +1 -0
- package/build/service/architecture/platform/server/index.js +2 -0
- package/build/service/architecture/platform/server/index.js.map +1 -0
- package/build/service/architecture/platform/server/server-adapter.d.ts +21 -0
- package/build/service/architecture/platform/server/server-adapter.d.ts.map +1 -0
- package/build/service/architecture/platform/server/server-adapter.js +2 -0
- package/build/service/architecture/platform/server/server-adapter.js.map +1 -0
- package/build/service/architecture/platform/server/server.d.ts +97 -0
- package/build/service/architecture/platform/server/server.d.ts.map +1 -0
- package/build/service/architecture/platform/server/server.js +219 -0
- package/build/service/architecture/platform/server/server.js.map +1 -0
- package/build/service/architecture/platform/service.d.ts +24 -0
- package/build/service/architecture/platform/service.d.ts.map +1 -0
- package/build/service/architecture/platform/service.js +40 -0
- package/build/service/architecture/platform/service.js.map +1 -0
- package/build/service/index.d.ts +2 -0
- package/build/service/index.d.ts.map +1 -0
- package/build/service/index.js +2 -0
- package/build/service/index.js.map +1 -0
- package/build/test/tsconfig.tsbuildinfo +1 -0
- package/build/utils/base64.d.ts +3 -0
- package/build/utils/base64.d.ts.map +1 -0
- package/build/utils/base64.js +7 -0
- package/build/utils/base64.js.map +1 -0
- package/build/utils/hmac.d.ts +2 -0
- package/build/utils/hmac.d.ts.map +1 -0
- package/build/utils/hmac.js +7 -0
- package/build/utils/hmac.js.map +1 -0
- package/build/utils/index.d.ts +3 -0
- package/build/utils/index.d.ts.map +1 -0
- package/build/utils/index.js +3 -0
- package/build/utils/index.js.map +1 -0
- package/package.json +66 -26
- package/src/configuration/app-config.ts +24 -0
- package/src/configuration/index.ts +20 -0
- package/src/configuration/loader-factory.ts +1 -0
- package/src/configuration/loader.ts +70 -0
- package/src/configuration/loaders/index.ts +2 -0
- package/src/configuration/loaders/json-loader.ts +32 -0
- package/src/configuration/loaders/yaml-loader.ts +32 -0
- package/src/configuration/types.ts +32 -0
- package/src/configuration/validation.ts +50 -0
- package/src/dependency-injection/container.ts +92 -0
- package/src/dependency-injection/index.ts +1 -0
- package/src/error/custom.ts +52 -1
- package/src/examples/index.ts +2 -0
- package/src/examples/providers/filesystem-provider.ts +198 -0
- package/src/examples/providers/index.ts +6 -0
- package/src/examples/providers/process-provider.ts +150 -0
- package/src/examples/repositories/index.ts +3 -0
- package/src/examples/repositories/sqlite-repository.ts +170 -0
- package/src/index.ts +29 -2
- package/src/locales/en.json +1 -9
- package/src/locales/fr.json +1 -9
- package/src/localization/adapters/index.ts +90 -0
- package/src/localization/index.ts +16 -0
- package/src/localization/locales/en.json +9 -0
- package/src/localization/locales/es.json +9 -0
- package/src/localization/localization.ts +222 -0
- package/src/localization/types.ts +110 -0
- package/src/localization/validation.ts +43 -0
- package/src/logs/adapters/console-adapter.ts +90 -0
- package/src/logs/adapters/pino-adapter.ts +65 -0
- package/src/logs/config.ts +53 -0
- package/src/logs/index.ts +16 -0
- package/src/logs/logger.ts +66 -0
- package/src/logs/types.ts +44 -0
- package/src/runtime/detector.ts +61 -0
- package/src/runtime/index.ts +2 -0
- package/src/runtime/types.ts +18 -0
- package/src/{micro-service → service}/architecture/application/entry-points/rest/route-handlers/abstract.ts +8 -7
- package/src/{micro-service → service}/architecture/application/entry-points/rest/route-handlers/post-route-handler.ts +3 -1
- package/src/service/architecture/domain/domain.ts +36 -0
- package/src/service/architecture/domain/index.ts +2 -0
- package/src/service/architecture/domain/provider.ts +9 -0
- package/src/service/architecture/infrastructure/index.ts +48 -0
- package/src/service/architecture/infrastructure/orm/adapters/mongoose-adapter.ts +134 -0
- package/src/service/architecture/infrastructure/orm/adapters/sequelize-adapter.ts +75 -0
- package/src/service/architecture/infrastructure/orm/index.ts +2 -0
- package/src/service/architecture/infrastructure/repositories/abstract.ts +105 -0
- package/src/service/architecture/infrastructure/repositories/types.ts +125 -0
- package/src/service/architecture/infrastructure/repository-interface.ts +35 -0
- package/src/service/architecture/infrastructure/repository.ts +75 -0
- package/src/service/architecture/platform/index.ts +5 -0
- package/src/service/architecture/platform/page/index.ts +1 -0
- package/src/service/architecture/platform/page/page.ts +52 -0
- package/src/service/architecture/platform/server/adapters/express-adapter.ts +112 -0
- package/src/service/architecture/platform/server/adapters/fastify-adapter.ts +61 -0
- package/src/service/architecture/platform/server/adapters/index.ts +2 -0
- package/src/service/architecture/platform/server/index.ts +1 -0
- package/src/service/architecture/platform/server/server-adapter.ts +23 -0
- package/src/{micro-service/architecture/platform/service/service.ts → service/architecture/platform/server/server.ts} +73 -90
- package/src/service/architecture/platform/service.ts +63 -0
- package/context.yaml +0 -151
- package/eslint.config.mjs +0 -59
- package/guidelines.yaml +0 -74
- package/mongodb.yaml +0 -29
- package/patterns.yaml +0 -55
- package/src/configuration.ts +0 -13
- package/src/logs.ts +0 -77
- package/src/micro-service/architecture/domain/domain.ts +0 -19
- package/src/micro-service/architecture/domain/index.ts +0 -1
- package/src/micro-service/architecture/infrastructure/repositories/abstract.ts +0 -90
- package/src/micro-service/architecture/infrastructure/repositories/mongoose.ts +0 -124
- package/src/micro-service/architecture/infrastructure/repositories/sequelize.ts +0 -70
- package/src/micro-service/architecture/infrastructure/repositories/types.ts +0 -69
- package/src/micro-service/architecture/platform/index.ts +0 -2
- package/src/micro-service/architecture/platform/micro-service.ts +0 -53
- package/src/micro-service/architecture/platform/service/index.ts +0 -1
- package/start.md +0 -34
- package/test/tsconfig.json +0 -9
- package/test/unit/helpers/common/common.ts +0 -32
- package/test/unit/helpers/common/logger.ts +0 -8
- package/test/unit/helpers/database/mongo.ts +0 -77
- package/test/unit/lib/global-setup.ts +0 -79
- package/test/unit/lib/setup-files.ts +0 -16
- package/test/unit/micro-service/architecture/application/application.test.ts +0 -60
- package/test/unit/micro-service/architecture/application/entry-points/rest/route-handlers/abstract.test.ts +0 -62
- package/test/unit/micro-service/architecture/application/entry-points/rest/route-handlers/get-route-handler.test.ts +0 -38
- package/test/unit/micro-service/architecture/application/entry-points/rest/route-handlers/post-route-handler.test.ts +0 -45
- package/test/unit/micro-service/architecture/architecture.test.ts +0 -64
- package/test/unit/micro-service/architecture/domain/domain.test.ts +0 -35
- package/test/unit/micro-service/architecture/infrastructure/infrastructure.test.ts +0 -33
- package/test/unit/micro-service/architecture/infrastructure/repositories/abstract.test.ts +0 -86
- package/test/unit/micro-service/architecture/platform/micro-service.test.ts +0 -86
- package/test/unit/micro-service/architecture/platform/service/service.test.ts +0 -200
- package/tsconfig.json +0 -63
- package/vite.config.mjs +0 -44
- /package/src/{micro-service → service}/architecture/application/application.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/index.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/common/handler.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/common/index.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/common/request.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/hook-handlers/hook-handler.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/hook-handlers/index.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/index.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/route-handlers/generics.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/route-handlers/get-route-handler.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/route-handlers/index.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/entry-points/rest/route-handlers/route-handler.ts +0 -0
- /package/src/{micro-service → service}/architecture/application/index.ts +0 -0
- /package/src/{micro-service → service}/architecture/architecture.ts +0 -0
- /package/src/{micro-service → service}/architecture/index.ts +0 -0
- /package/src/{micro-service → service}/architecture/infrastructure/infrastructure.ts +0 -0
- /package/src/{micro-service → service}/architecture/infrastructure/repositories/index.ts +0 -0
- /package/src/{micro-service → service}/index.ts +0 -0
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { MongoMemoryServer } from "mongodb-memory-server";
|
|
2
|
-
import { connect, Connection, Mongoose } from "mongoose";
|
|
3
|
-
import { container } from "tsyringe";
|
|
4
|
-
|
|
5
|
-
const dbName = "sentzunhat-zacatl";
|
|
6
|
-
const dbVersion = "8.0.0";
|
|
7
|
-
const dbStorageEngine = "wiredTiger";
|
|
8
|
-
|
|
9
|
-
let mongoDBMemoryServer: MongoMemoryServer | null = null;
|
|
10
|
-
|
|
11
|
-
let dbConnection: Connection | null = null;
|
|
12
|
-
|
|
13
|
-
export const startMongoServerAndSetEnvConnectionString =
|
|
14
|
-
async (): Promise<void> => {
|
|
15
|
-
if (mongoDBMemoryServer) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
try {
|
|
20
|
-
mongoDBMemoryServer = await MongoMemoryServer.create({
|
|
21
|
-
instance: {
|
|
22
|
-
dbName,
|
|
23
|
-
storageEngine: dbStorageEngine,
|
|
24
|
-
},
|
|
25
|
-
binary: {
|
|
26
|
-
version: dbVersion,
|
|
27
|
-
},
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
const mongoDBUri = mongoDBMemoryServer.getUri();
|
|
31
|
-
const connectionString = `${mongoDBUri}${dbName}`;
|
|
32
|
-
|
|
33
|
-
process.env["MONGO_DB_CONNECTION_STRING"] = connectionString;
|
|
34
|
-
// console.info(
|
|
35
|
-
// `MongoDB memory server started. Connection string set to: ${connectionString}`
|
|
36
|
-
// );
|
|
37
|
-
} catch (error) {
|
|
38
|
-
// console.error("Failed to start MongoDB memory server:", error);
|
|
39
|
-
throw error;
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
export const connectToMongoServerAndRegisterDependency = async () => {
|
|
44
|
-
const connectionString = process.env["MONGO_DB_CONNECTION_STRING"] ?? "";
|
|
45
|
-
const dbName = "sentzunhat-zacatl";
|
|
46
|
-
|
|
47
|
-
try {
|
|
48
|
-
const conn = await connect(connectionString, {
|
|
49
|
-
dbName,
|
|
50
|
-
autoCreate: true,
|
|
51
|
-
autoIndex: true,
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
dbConnection = conn.connection;
|
|
55
|
-
|
|
56
|
-
container.register<Mongoose>(Mongoose, {
|
|
57
|
-
useValue: conn,
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
// logger.info("Mongo DB memory server connected");
|
|
61
|
-
} catch (error) {
|
|
62
|
-
// logger.error("Mongo DB memory server connection error");
|
|
63
|
-
// console.error(error);
|
|
64
|
-
throw error;
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
export const mongoTeardown = async (): Promise<void> => {
|
|
69
|
-
if (dbConnection) {
|
|
70
|
-
await dbConnection?.db?.dropDatabase();
|
|
71
|
-
await dbConnection.close();
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
if (mongoDBMemoryServer) {
|
|
75
|
-
await mongoDBMemoryServer.stop();
|
|
76
|
-
}
|
|
77
|
-
};
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import "reflect-metadata";
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
mongoTeardown,
|
|
5
|
-
startMongoServerAndSetEnvConnectionString,
|
|
6
|
-
} from "../helpers/database/mongo";
|
|
7
|
-
import { logger } from "../helpers/common/logger";
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* @remarks
|
|
11
|
-
* https://vitest.dev/config/#globalsetup
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
const formatMemoryUsage = (bytes: number): string =>
|
|
15
|
-
`${(bytes / 1024 / 1024).toFixed(2)} MB`;
|
|
16
|
-
|
|
17
|
-
export const setup = async (): Promise<void> => {
|
|
18
|
-
logger.log({
|
|
19
|
-
level: "info",
|
|
20
|
-
action: "setup",
|
|
21
|
-
msg: "starting",
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
const start = performance.now();
|
|
25
|
-
const { heapTotal, heapUsed } = process.memoryUsage();
|
|
26
|
-
|
|
27
|
-
logger.log({
|
|
28
|
-
level: "info",
|
|
29
|
-
action: "setup",
|
|
30
|
-
msg: `heapTotal memory usage before: ${formatMemoryUsage(heapTotal)}`,
|
|
31
|
-
});
|
|
32
|
-
logger.log({
|
|
33
|
-
level: "info",
|
|
34
|
-
action: "setup",
|
|
35
|
-
msg: `heapUsed memory usage before: ${formatMemoryUsage(heapUsed)}`,
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
await startMongoServerAndSetEnvConnectionString();
|
|
39
|
-
|
|
40
|
-
const end = performance.now();
|
|
41
|
-
|
|
42
|
-
logger.log({
|
|
43
|
-
level: "info",
|
|
44
|
-
action: "setup",
|
|
45
|
-
msg: `completed in ${(end - start).toFixed(2)} ms - ⏱️`,
|
|
46
|
-
});
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
export const teardown = async (): Promise<void> => {
|
|
50
|
-
logger.log({
|
|
51
|
-
level: "info",
|
|
52
|
-
action: "teardown",
|
|
53
|
-
msg: "starting",
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
const start = performance.now();
|
|
57
|
-
const { heapTotal, heapUsed } = process.memoryUsage();
|
|
58
|
-
|
|
59
|
-
logger.log({
|
|
60
|
-
level: "info",
|
|
61
|
-
action: "teardown",
|
|
62
|
-
msg: `heapTotal memory usage after: ${formatMemoryUsage(heapTotal)}`,
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
logger.log({
|
|
66
|
-
level: "info",
|
|
67
|
-
action: "teardown",
|
|
68
|
-
msg: `heapUsed memory usage after: ${formatMemoryUsage(heapUsed)}`,
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
await mongoTeardown();
|
|
72
|
-
|
|
73
|
-
const end = performance.now();
|
|
74
|
-
logger.log({
|
|
75
|
-
level: "info",
|
|
76
|
-
action: "teardown",
|
|
77
|
-
msg: `completed in ${(end - start).toFixed(2)} ms - ⏱️`,
|
|
78
|
-
});
|
|
79
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import "reflect-metadata";
|
|
2
|
-
|
|
3
|
-
import { afterEach, beforeEach, vi } from "vitest";
|
|
4
|
-
|
|
5
|
-
// /**
|
|
6
|
-
// * @remarks
|
|
7
|
-
// * https://vitest.dev/config/#setupfiles
|
|
8
|
-
// */
|
|
9
|
-
|
|
10
|
-
beforeEach(() => {
|
|
11
|
-
vi.clearAllMocks();
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
afterEach(() => {
|
|
15
|
-
vi.restoreAllMocks();
|
|
16
|
-
});
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
|
2
|
-
import { FastifyRequest } from "fastify";
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
AbstractRouteHandler,
|
|
6
|
-
Application,
|
|
7
|
-
ConfigApplication,
|
|
8
|
-
HookHandler,
|
|
9
|
-
HookHandlerName,
|
|
10
|
-
Request,
|
|
11
|
-
} from "../../../../../src/micro-service/architecture/application";
|
|
12
|
-
|
|
13
|
-
class DummyHookHandler implements HookHandler {
|
|
14
|
-
public name: HookHandlerName = "onRequest";
|
|
15
|
-
|
|
16
|
-
async execute(_: FastifyRequest): Promise<void> {}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
import { FastifyReply } from "fastify";
|
|
20
|
-
|
|
21
|
-
class DummyRouteHandler extends AbstractRouteHandler {
|
|
22
|
-
constructor() {
|
|
23
|
-
super({
|
|
24
|
-
url: "/",
|
|
25
|
-
schema: {},
|
|
26
|
-
method: "GET",
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
handler(_: Request, __: FastifyReply): void | Promise<void> {
|
|
31
|
-
// Dummy implementation
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
const fakeConfig: ConfigApplication = {
|
|
37
|
-
entryPoints: {
|
|
38
|
-
rest: {
|
|
39
|
-
hookHandlers: [DummyHookHandler],
|
|
40
|
-
routeHandlers: [DummyRouteHandler],
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
describe("Application", () => {
|
|
46
|
-
it("should register hook and route handlers on start", () => {
|
|
47
|
-
const app = new Application(fakeConfig);
|
|
48
|
-
|
|
49
|
-
expect(app.hookHandlers).toHaveLength(0);
|
|
50
|
-
expect(app.routeHandlers).toHaveLength(0);
|
|
51
|
-
|
|
52
|
-
app.start();
|
|
53
|
-
|
|
54
|
-
expect(app.hookHandlers).toHaveLength(1);
|
|
55
|
-
expect(app.routeHandlers).toHaveLength(1);
|
|
56
|
-
|
|
57
|
-
expect(app.hookHandlers[0]).toBeInstanceOf(DummyHookHandler);
|
|
58
|
-
expect(app.routeHandlers[0]).toBeInstanceOf(DummyRouteHandler);
|
|
59
|
-
});
|
|
60
|
-
});
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi } from "vitest";
|
|
2
|
-
import i18n from "i18n";
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
createFakeFastifyReply,
|
|
6
|
-
createFakeFastifyRequest,
|
|
7
|
-
} from "../../../../../../helpers/common/common";
|
|
8
|
-
import {
|
|
9
|
-
AbstractRouteHandler,
|
|
10
|
-
Request,
|
|
11
|
-
} from "../../../../../../../../src/micro-service/architecture/application";
|
|
12
|
-
|
|
13
|
-
class TestRouteHandler extends AbstractRouteHandler<
|
|
14
|
-
void, // Body
|
|
15
|
-
Record<string, string>, // Querystring
|
|
16
|
-
void, // Params
|
|
17
|
-
void // Response
|
|
18
|
-
> {
|
|
19
|
-
constructor() {
|
|
20
|
-
super({
|
|
21
|
-
url: "/",
|
|
22
|
-
schema: {},
|
|
23
|
-
method: "GET",
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
handler(
|
|
28
|
-
_: Request<
|
|
29
|
-
void, // Body
|
|
30
|
-
Record<string, string>, // Querystring
|
|
31
|
-
void // Params
|
|
32
|
-
>
|
|
33
|
-
): void | Promise<void> {
|
|
34
|
-
// Dummy implementation
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
describe("AbstractRouteHandler", () => {
|
|
40
|
-
it("executes the handler and sends the proper response", async () => {
|
|
41
|
-
vi.spyOn(i18n, "__").mockReturnValue("Default success");
|
|
42
|
-
|
|
43
|
-
const fakeRequest = createFakeFastifyRequest() as Request<
|
|
44
|
-
void, // Body
|
|
45
|
-
Record<string, string>, // Querystring
|
|
46
|
-
void // Params
|
|
47
|
-
>;
|
|
48
|
-
|
|
49
|
-
const fakeReply: any = createFakeFastifyReply();
|
|
50
|
-
|
|
51
|
-
const testHandler = new TestRouteHandler();
|
|
52
|
-
|
|
53
|
-
await testHandler.execute(fakeRequest, fakeReply);
|
|
54
|
-
|
|
55
|
-
expect(fakeReply.code).toHaveBeenCalledWith(200);
|
|
56
|
-
expect(fakeReply.send).toHaveBeenCalledWith({
|
|
57
|
-
ok: true,
|
|
58
|
-
message: "Default success",
|
|
59
|
-
data: undefined,
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
});
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi } from "vitest";
|
|
2
|
-
import i18n from "i18n";
|
|
3
|
-
|
|
4
|
-
import { GetRouteHandler } from "../../../../../../../../src/micro-service/architecture/application";
|
|
5
|
-
import {
|
|
6
|
-
createFakeFastifyReply,
|
|
7
|
-
createFakeFastifyRequest,
|
|
8
|
-
} from "../../../../../../helpers/common/common";
|
|
9
|
-
import { Request } from "../../../../../../../../src/micro-service/architecture/application";
|
|
10
|
-
|
|
11
|
-
class TestGetRouteHandler extends GetRouteHandler<unknown, string, unknown> {
|
|
12
|
-
async handler(_: unknown, __: unknown): Promise<string> {
|
|
13
|
-
return "Test GET response";
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
describe("GetRouteHandler", () => {
|
|
18
|
-
it("executes GET handler and sends proper response", async () => {
|
|
19
|
-
vi.spyOn(i18n, "__").mockReturnValue("Default success GET");
|
|
20
|
-
|
|
21
|
-
const testHandler = new TestGetRouteHandler({
|
|
22
|
-
url: "/get-test",
|
|
23
|
-
schema: {}, // Use an empty schema for test purposes.
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
const fakeRequest = createFakeFastifyRequest() as Request<unknown, string>;
|
|
27
|
-
const fakeReply = createFakeFastifyReply();
|
|
28
|
-
|
|
29
|
-
await testHandler.execute(fakeRequest, fakeReply);
|
|
30
|
-
|
|
31
|
-
expect(fakeReply.code).toHaveBeenCalledWith(200);
|
|
32
|
-
expect(fakeReply.send).toHaveBeenCalledWith({
|
|
33
|
-
ok: true,
|
|
34
|
-
message: "Default success GET",
|
|
35
|
-
data: "Test GET response",
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
});
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi } from "vitest";
|
|
2
|
-
import i18n from "i18n";
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
PostRouteHandler,
|
|
6
|
-
Request,
|
|
7
|
-
} from "../../../../../../../../src/micro-service/architecture/application";
|
|
8
|
-
import {
|
|
9
|
-
createFakeFastifyReply,
|
|
10
|
-
createFakeFastifyRequest,
|
|
11
|
-
} from "../../../../../../helpers/common/common";
|
|
12
|
-
|
|
13
|
-
class TestPostRouteHandler extends PostRouteHandler<{}, {}, {}, {}> {
|
|
14
|
-
constructor() {
|
|
15
|
-
super({
|
|
16
|
-
url: "/post-test",
|
|
17
|
-
schema: {}, // Use an empty schema for test purposes.
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
handler(_: Request<{}, {}, {}>): {} | Promise<{}> {
|
|
22
|
-
// Dummy implementation
|
|
23
|
-
return {};
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
describe("PostRouteHandler", () => {
|
|
28
|
-
it("executes POST handler and sends proper response", async () => {
|
|
29
|
-
vi.spyOn(i18n, "__").mockReturnValue("Default success POST");
|
|
30
|
-
|
|
31
|
-
const testHandler = new TestPostRouteHandler();
|
|
32
|
-
|
|
33
|
-
const fakeRequest = createFakeFastifyRequest() as Request<{}, {}, {}>;
|
|
34
|
-
const fakeReply = createFakeFastifyReply();
|
|
35
|
-
|
|
36
|
-
await testHandler.execute(fakeRequest, fakeReply);
|
|
37
|
-
|
|
38
|
-
expect(fakeReply.code).toHaveBeenCalledWith(200);
|
|
39
|
-
expect(fakeReply.send).toHaveBeenCalledWith({
|
|
40
|
-
ok: true,
|
|
41
|
-
message: "Default success POST",
|
|
42
|
-
data: {},
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
});
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { container } from "tsyringe";
|
|
2
|
-
|
|
3
|
-
import { AbstractArchitecture } from "../../../../src/micro-service/architecture";
|
|
4
|
-
|
|
5
|
-
class TestArchitecture extends AbstractArchitecture {
|
|
6
|
-
public start(): void {}
|
|
7
|
-
|
|
8
|
-
public testRegisterDependencies<T>(dependencies: Array<new () => T>): void {
|
|
9
|
-
this.registerDependencies(dependencies);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
public testRegisterAndStoreDependencies<T>(
|
|
13
|
-
dependencies: Array<new () => T>,
|
|
14
|
-
storage: Array<T>
|
|
15
|
-
): void {
|
|
16
|
-
this.registerAndStoreDependencies(dependencies, storage);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
class DummyDependency {
|
|
21
|
-
public value = "dummy";
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
describe("AbstractArchitecture", () => {
|
|
25
|
-
const testArch: TestArchitecture = new TestArchitecture();
|
|
26
|
-
|
|
27
|
-
describe("registerDependencies", () => {
|
|
28
|
-
it("should register each dependency with the container", () => {
|
|
29
|
-
const spyFunction = vi.spyOn(container, "register");
|
|
30
|
-
|
|
31
|
-
testArch.testRegisterDependencies([DummyDependency]);
|
|
32
|
-
|
|
33
|
-
expect(spyFunction).toHaveBeenCalledTimes(1);
|
|
34
|
-
expect(spyFunction).toHaveBeenCalledWith(DummyDependency.name, {
|
|
35
|
-
useClass: DummyDependency,
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
|
|
40
|
-
describe("registerAndStoreDependencies", () => {
|
|
41
|
-
it("should register each dependency and store the resolved instance", () => {
|
|
42
|
-
const storage: DummyDependency[] = [];
|
|
43
|
-
|
|
44
|
-
const spyResolveFunction = vi.spyOn(container, "resolve");
|
|
45
|
-
const spyRegisterFunction = vi.spyOn(container, "register");
|
|
46
|
-
|
|
47
|
-
const dummyInstance = new DummyDependency();
|
|
48
|
-
|
|
49
|
-
spyResolveFunction.mockReturnValue(dummyInstance);
|
|
50
|
-
|
|
51
|
-
testArch.testRegisterAndStoreDependencies([DummyDependency], storage);
|
|
52
|
-
|
|
53
|
-
expect(spyRegisterFunction).toHaveBeenCalledTimes(1);
|
|
54
|
-
expect(spyRegisterFunction).toHaveBeenCalledWith(DummyDependency.name, {
|
|
55
|
-
useClass: DummyDependency,
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
expect(spyResolveFunction).toHaveBeenCalledTimes(1);
|
|
59
|
-
expect(spyResolveFunction).toHaveBeenCalledWith(DummyDependency.name);
|
|
60
|
-
expect(storage).toHaveLength(1);
|
|
61
|
-
expect(storage[0]).toBe(dummyInstance);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
});
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
|
2
|
-
import { container } from "tsyringe";
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
Domain,
|
|
6
|
-
ConfigDomain,
|
|
7
|
-
} from "../../../../../src/micro-service/architecture/domain";
|
|
8
|
-
|
|
9
|
-
class DummyProvider {
|
|
10
|
-
public value = "dummy";
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
class AnotherDummyProvider {
|
|
14
|
-
public name = "AnotherDummy";
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
describe("Domain", () => {
|
|
18
|
-
it("should register the provided domain providers in the DI container", () => {
|
|
19
|
-
const config: ConfigDomain = {
|
|
20
|
-
providers: [DummyProvider, AnotherDummyProvider],
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
const domain = new Domain(config);
|
|
24
|
-
|
|
25
|
-
domain.start();
|
|
26
|
-
|
|
27
|
-
const resolvedDummy = container.resolve(DummyProvider);
|
|
28
|
-
const resolvedAnother = container.resolve(AnotherDummyProvider);
|
|
29
|
-
|
|
30
|
-
expect(resolvedDummy).toBeInstanceOf(DummyProvider);
|
|
31
|
-
expect(resolvedAnother).toBeInstanceOf(AnotherDummyProvider);
|
|
32
|
-
expect(resolvedDummy.value).toBe("dummy");
|
|
33
|
-
expect(resolvedAnother.name).toBe("AnotherDummy");
|
|
34
|
-
});
|
|
35
|
-
});
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ConfigInfrastructure,
|
|
3
|
-
Infrastructure,
|
|
4
|
-
} from "../../../../../src/micro-service/architecture/infrastructure";
|
|
5
|
-
|
|
6
|
-
class DummyRepository {}
|
|
7
|
-
|
|
8
|
-
const config: ConfigInfrastructure = {
|
|
9
|
-
repositories: [DummyRepository],
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
describe("Infrastructure", () => {
|
|
13
|
-
let infrastructure: Infrastructure;
|
|
14
|
-
|
|
15
|
-
beforeEach(() => {
|
|
16
|
-
infrastructure = new Infrastructure(config);
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it("should store the configuration passed in the constructor", () => {
|
|
20
|
-
expect(infrastructure["config"]).toEqual(config);
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it("should call registerDependencies with provided repositories when start() is called", () => {
|
|
24
|
-
const registerSpy = vi.spyOn(
|
|
25
|
-
Object.getPrototypeOf(infrastructure),
|
|
26
|
-
"registerDependencies"
|
|
27
|
-
);
|
|
28
|
-
|
|
29
|
-
infrastructure.start();
|
|
30
|
-
|
|
31
|
-
expect(registerSpy).toHaveBeenCalledWith(config.repositories);
|
|
32
|
-
});
|
|
33
|
-
});
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { Schema } from "mongoose";
|
|
2
|
-
import { singleton } from "tsyringe";
|
|
3
|
-
|
|
4
|
-
import { BaseRepository } from "../../../../../../src/micro-service/architecture/infrastructure";
|
|
5
|
-
import { connectToMongoServerAndRegisterDependency } from "../../../../helpers/database/mongo";
|
|
6
|
-
|
|
7
|
-
interface UserTest {
|
|
8
|
-
name: string;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
const schemaUserTest = new Schema<UserTest>({
|
|
12
|
-
name: { type: String, required: true },
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
@singleton()
|
|
16
|
-
class UserRepository extends BaseRepository<UserTest, UserTest> {
|
|
17
|
-
constructor() {
|
|
18
|
-
super({ type: "mongoose", name: "User", schema: schemaUserTest });
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
describe("BaseRepository", () => {
|
|
23
|
-
let repository: UserRepository;
|
|
24
|
-
|
|
25
|
-
beforeAll(async () => {
|
|
26
|
-
await connectToMongoServerAndRegisterDependency();
|
|
27
|
-
|
|
28
|
-
repository = new UserRepository();
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
it("should create a model using the provided name and schema", async () => {
|
|
32
|
-
expect(repository.getMongooseModel().modelName).toBe("User");
|
|
33
|
-
expect(repository.getMongooseModel().schema).toBe(schemaUserTest);
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
it("should call create() and return the created user document", async () => {
|
|
37
|
-
const user = { name: "Alice" };
|
|
38
|
-
|
|
39
|
-
const spyFunction = vi.spyOn(repository.getMongooseModel(), "create");
|
|
40
|
-
|
|
41
|
-
const result = await repository.create(user);
|
|
42
|
-
|
|
43
|
-
expect(spyFunction).toHaveBeenNthCalledWith(1, user);
|
|
44
|
-
expect(result).toEqual(expect.objectContaining(user));
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
it("should call findById() and return the user document", async () => {
|
|
48
|
-
const user = await repository.create({ name: "Alice" });
|
|
49
|
-
const spyFunction = vi.spyOn(repository.getMongooseModel(), "findById");
|
|
50
|
-
const result = await repository.findById(user.id);
|
|
51
|
-
expect(spyFunction).toHaveBeenNthCalledWith(1, user.id);
|
|
52
|
-
expect(result).toMatchObject({ name: user.name });
|
|
53
|
-
expect(result?.id).toBe(user.id);
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
it("should call update() and return the updated user document", async () => {
|
|
57
|
-
const user = await repository.create({ name: "Alice" });
|
|
58
|
-
|
|
59
|
-
const update = { name: "Alice Updated" };
|
|
60
|
-
|
|
61
|
-
const spyFunction = vi.spyOn(
|
|
62
|
-
repository.getMongooseModel(),
|
|
63
|
-
"findByIdAndUpdate"
|
|
64
|
-
);
|
|
65
|
-
|
|
66
|
-
const result = await repository.update(user.id, update);
|
|
67
|
-
|
|
68
|
-
expect(spyFunction).toHaveBeenNthCalledWith(1, user.id, update, {
|
|
69
|
-
new: true,
|
|
70
|
-
});
|
|
71
|
-
expect(result).toEqual(expect.objectContaining(update));
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
it("should call delete() and return the deleted user document", async () => {
|
|
75
|
-
const user = await repository.create({ name: "Alice" });
|
|
76
|
-
const spyFunction = vi.spyOn(
|
|
77
|
-
repository.getMongooseModel(),
|
|
78
|
-
"findByIdAndDelete"
|
|
79
|
-
);
|
|
80
|
-
const result = await repository.delete(user.id);
|
|
81
|
-
expect(spyFunction).toHaveBeenNthCalledWith(1, user.id);
|
|
82
|
-
// Patch: allow for id only (ignore _id)
|
|
83
|
-
expect(result).toMatchObject({ name: user.name });
|
|
84
|
-
expect(result?.id).toBe(user.id);
|
|
85
|
-
});
|
|
86
|
-
});
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, beforeEach, vi } from "vitest";
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
ConfigMicroService,
|
|
5
|
-
MicroService,
|
|
6
|
-
} from "../../../../../src/micro-service/architecture/platform/micro-service";
|
|
7
|
-
import { Application } from "../../../../../src/micro-service/architecture/application";
|
|
8
|
-
import { Infrastructure } from "../../../../../src/micro-service/architecture/infrastructure";
|
|
9
|
-
import {
|
|
10
|
-
Service,
|
|
11
|
-
HandlersType,
|
|
12
|
-
} from "../../../../../src/micro-service/architecture/platform/service/service";
|
|
13
|
-
import { Domain } from "../../../../../src/micro-service/architecture/domain";
|
|
14
|
-
|
|
15
|
-
describe("MicroService", () => {
|
|
16
|
-
let config: ConfigMicroService;
|
|
17
|
-
let microService: MicroService;
|
|
18
|
-
|
|
19
|
-
const port = 3000;
|
|
20
|
-
|
|
21
|
-
// We’ll use a minimal config—since MicroService just passes these objects to the constructors,
|
|
22
|
-
// we can use empty objects or simple stubs as necessary.
|
|
23
|
-
beforeEach(() => {
|
|
24
|
-
config = {
|
|
25
|
-
architecture: {
|
|
26
|
-
application: {} as any,
|
|
27
|
-
domain: {} as any,
|
|
28
|
-
infrastructure: {} as any,
|
|
29
|
-
service: {} as any,
|
|
30
|
-
},
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
// Create a MicroService instance using the config.
|
|
34
|
-
microService = new MicroService(config);
|
|
35
|
-
|
|
36
|
-
// For our test we want the application instance to have defined route and hook handlers.
|
|
37
|
-
// Since MicroService calls:
|
|
38
|
-
// service.registerHandlers({ handlers: this.application.routeHandlers, ... })
|
|
39
|
-
// we assign dummy values.
|
|
40
|
-
(microService as any).application.routeHandlers = ["dummyRouteHandler"];
|
|
41
|
-
(microService as any).application.hookHandlers = ["dummyHookHandler"];
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
it("should start the micro service by starting application, domain, infrastructure and service", async () => {
|
|
45
|
-
// Arrange: create spies on the start and register methods of the dependencies.
|
|
46
|
-
// Spying on the prototype methods works because the MicroService instance calls these methods.
|
|
47
|
-
const appStartSpy = vi
|
|
48
|
-
.spyOn(Application.prototype, "start")
|
|
49
|
-
.mockImplementation(() => {});
|
|
50
|
-
const domainStartSpy = vi
|
|
51
|
-
.spyOn(Domain.prototype, "start")
|
|
52
|
-
.mockImplementation(() => {});
|
|
53
|
-
const infrastructureStartSpy = vi
|
|
54
|
-
.spyOn(Infrastructure.prototype, "start")
|
|
55
|
-
.mockImplementation(() => {});
|
|
56
|
-
const serviceRegisterHandlersSpy = vi
|
|
57
|
-
.spyOn(Service.prototype, "registerHandlers")
|
|
58
|
-
.mockImplementation(() => Promise.resolve());
|
|
59
|
-
const serviceStartSpy = vi
|
|
60
|
-
.spyOn(Service.prototype, "start")
|
|
61
|
-
.mockImplementation(() => Promise.resolve());
|
|
62
|
-
|
|
63
|
-
// Act: Call MicroService.start().
|
|
64
|
-
await microService.start({ port });
|
|
65
|
-
|
|
66
|
-
// Assert: Verify that the underlying dependencies were started as expected.
|
|
67
|
-
expect(appStartSpy).toHaveBeenCalled();
|
|
68
|
-
expect(domainStartSpy).toHaveBeenCalled();
|
|
69
|
-
expect(infrastructureStartSpy).toHaveBeenCalled();
|
|
70
|
-
|
|
71
|
-
// Assert registerHandlers was called twice:
|
|
72
|
-
// First for route handlers...
|
|
73
|
-
expect(serviceRegisterHandlersSpy).toHaveBeenNthCalledWith(1, {
|
|
74
|
-
handlers: (microService as any).application.routeHandlers,
|
|
75
|
-
handlersType: HandlersType.ROUTE,
|
|
76
|
-
});
|
|
77
|
-
// ...and second for hook handlers.
|
|
78
|
-
expect(serviceRegisterHandlersSpy).toHaveBeenNthCalledWith(2, {
|
|
79
|
-
handlers: (microService as any).application.hookHandlers,
|
|
80
|
-
handlersType: HandlersType.HOOK,
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
// Assert that service.start was called with the expected port.
|
|
84
|
-
expect(serviceStartSpy).toHaveBeenCalledWith({ port });
|
|
85
|
-
});
|
|
86
|
-
});
|